Универсальный ИК-пульт для камеры Canon

Часть первая: приемник для дешифровки ИК-сигнала


ИК-управление фотокамерой

Идею этой статьи подсказала «инструкция» на сайте instructables по изготовлению ИК-передатчика сигнала для управления цифровой камерой с помощью iPhone, iPod и прочих «качественных» мобильных устройств воспроизведения звука. Владельцы «яблочных» портативных устройств могут приобрести готовый ИК-передатчик и программу DSLR.Bot для дистанционного управления камерой (и еще с массой других полезных функций) за деньги меньшие, чем стоит самый простой специализированный ИК-пульт управления. Так как у меня смартфон другой марки, я попробовал реализовать идею для него.

Суть идеи в том, что хороший проигрыватель звуковых файлов может генерировать сигнал с частотой в 16—19 кГц. И если пустить «навстречу» (со сдвигом фазы на половину периода) два таких сигнала, то получится несущая для ИК-канала управления, в котором обычно используются частоты 32—38 кГц. Такой звуковой сигнал 16—19 кГц и его модуляцию несложно сгенерировать в звуковом редакторе. Для проигрывания подойдет мобильный плеер, поддерживающий WAV/MP3-файлы (MP3, как показывает практика, для хранения управляющих ИК-сигналов менее пригоден). В качестве передатчика нужно использовать ИК-светодиоды, подключив их к выходу наушников проигрывателя, к левому и правому каналам, «навстречу» друг другу. Светодиоды будут открываться с основной несущей частотой 16—19 кГц, а так как сигнал в двух каналах стерео сдвинут на полпериода, «суммарная» несущая мерцаний будет 32—38 кГц.

ИК-передатчик
Схема подключения ИК-светодиодов к стереоразъему. Мой смартфон распознаёт наушники автоматически и не делает этого, если на массе «ничего нет», поэтому я дополнительно добавил к схеме два сопротивления по 4,7 кОм (с бо́льшим сопротивлением смартфон перестает видеть наушники, а мне нужно было максимально возможное сопротивление, чтобы обеспечить минимальный ток «утечки» из основного для светодиодов канала стереосигнала «левый-правый»).

Создание ИК-передатчика — лишь первый этап реализации дистанционного управления камерой. Еще нужно сгенерировать сигнал и придумать алгоритм управления. В моем случае зеркальных камер Canon сигнал должен имитировать сигналы пульта Canon RC-1.

Canon RC-1
Пульт Canon RC-1. Имеет переключатель режимов работы. В первом положении — обычный спуск, во втором — с предварительной двухсекундной задержкой.

Описание ИК-сигнала пульта Canon RC-1, которое я обнаружил в Сети, не помогло сделать устойчиво работающий пульт на ИК-светодиодах. Ни смартфон, ни мультимедийные проигрыватели, которыми я пользуюсь, камеру не запускали. А вот с компьютера управлять камерой было возможно. Разобраться, почему так, не имея возможности наблюдать ИК-сигнал, крайне сложно. Определить, что ИК-светодиоды в принципе работают, можно с помощью цифровой камеры, которая, в отличие от человеческого глаза, сигнал ИК видит.

Canon RC-1
Цифровая камера «делает» ИК-сигнал видимым, ошибочно транслируя сигнал из невидимой области спектра в видимую (отчасти поэтому снимки многих цифровых камер, особенно компактов, неверно воспроизводят цвета и яркости).

Однако без «инструментов» определить, почему светодиод, который светит, камеру все же не запускает, невозможно, а осциллографа, регистрирующего сигнал частотой 30—40 кГц, у меня не оказалось. Пришлось воспользовался идеей, описанной в статье «Звуковая карта как элемент оптико-электронного измерительного прибора», подключив в качестве приемника ИК-датчик.

Звуковая карта не позволяет регистрировать сигнал в диапазоне 30—40 кГц, а только его модуляции. Известно, что заполняющий сигнал в ИК-канале системы управления камерой Canon лежит в диапазоне 30—40 кГц, что позволяет звуковой карте различать модуляции этого сигнала с большой точностью (порядка периода несущей). Незнание точных параметров несущей не является большой проблемой. В конце концов, можно сделать запускающий сигнал с несущей 30, 32, 34, 36… кГц и выбрать подходящий. Вариантов будет не так-то и много.

Чтобы принимать ИК-сигнал на звуковую карту, нужен специальный датчик. Я приспособил для этого датчик ИК-пульта дистанционного управления от старого ТВ-тюнера:

ИК-система управления

ИК-приемник подключается к компьютеру (карте расширения ТВ-тюнера) через стандартный стереоразъем. Но это не значит, что его можно просто вставить в звуковую карту и записывать с него сигнал. Внутри приемника простенькая схема из ИК-датчика, конденсатора и резистора (подобная той, что приведена далее в тексте). ИК-датчик приемника имеет три вывода: два питания и сигнал. Чтобы приемник работал, его нужно запитать, подав на соответствующие клеммы напряжение. Питание возьмем с USB-порта компьютера:

Стенд, ИК-приемник и компьютер

Ради «универсальности» статьи я собрал ИК-приемник на основе вполне распространенного ИК-датчика TSOP 1736 (две последние цифры в маркировке — оптимальная для датчика несущая частота в кГц; вероятно, подойдет и другой датчик из серии TSOP 1730—1740). Схема подключения такая:

ИК-приемник
Стандартная схема подключения ИК-приемника. На схеме датчик IR IN подключен к стереоразъему (для подключения к микрофонному входу звуковой карты) и питанию от USB. Пунктиром показана в общем необязательная при подключении к одному компьютеру шина массы. Емкость полярного конденсатора 4,7 мкФ, напряжение 5 В. В цепь питания для ограничения тока можно поставить сопротивление в 50—100 Ом.

ИК-приемник TSOP
Для проверки пригодности электронных компонентов простой ИК-приемник можно собрать и без пайки. Однако в такой версии передаваемый в регистратор сигнал может не быть достаточно чистым, что затруднит расшифровку. Поэтому после опробования на макете компоненты лучше аккуратно спаять.

ИК-приемник не обязательно использовать в паре с компьютером. ИК-сигнал для последующей расшифровки запишет и более-менее качественный диктофон. Я использовал Alesis PalmTrack, который, согласно спецификации, поддерживает в режиме записи файлы 48 кГц WAV. Этот недорогой диктофон обладает высокими (заявленными) характеристиками и нередко в различных обзорах рекомендуется в качестве устройства для записи при съемке фильмов цифровыми зеркалками. Я пока не оценил его как очень качественный, но и цена диктофона действительно невысока (при доставке из-за границы).

Alesis

Alesis ИК-приемник
Подключение ИК-приемника к диктофону. Сигнальный вывод ИК-приемника нужно подключить к одному из каналов записи диктофона, а питание взять с батарей питания (предварительно я проверил, что «0» питания и масса на стереоразъеме подключены к общей шине).

Для обработки сигнала подходит свободно (лицензия GNU General Public License (GPL)) распространяемая программа Audacity. Она может получать сигнал со звуковой карты и тут же его оцифровывать или работать с записанными отдельно звуковыми файлами. У меня программа не всегда видела ИК-приемник, подключенный к звуковой карте. Чтобы обойти эту особенность, можно запустить программу с подключенным нормальным микрофоном, а затем подключить вместо него ИК-приемник. Для оцифровки лучше выбрать максимальную поддерживаемую частоту выборки (96 кГц).

Audacity ИК-сигнал Canon
Так выглядят последовательно записанные с помощью Audacity ИК-сигналы пульта Canon RC-1. Первый сигнал из двух более широко расположенных пиков — обычный спуск затвора, второй — спуск затвора с предварительной двухсекундной паузой.

Audacity ИК-сигнал Canon
При увеличении масштаба временной шкалы можно увидеть более-менее точное «описание» модуляции сигнала. Он состоит из двух последовательных импульсов и паузы. Длительность паузы примерно равна 7 мс. Точнее определить длительность импульсов и пауз можно по количеству семплов и частоте семплирования.

Alesis ИК-сигнал Canon
«Расшифровка» сигнала ИК-пульта Canon, записанная с помощью Alesis PalmTrack. Зная заранее, как примерно устроен сигнал, можно и с помощью диктофона получить необходимые данные для его расшифровки.

С использованием имеющегося оборудования для моего пульта Canon RC-1 я получил следующие данные о структуре его сигналов (на основе нескольких последовательных записей). Обычный спуск затвора: импульс 64—72 семпла (при оцифровке 96 кГц) — пауза 670—680 семплов — импульс 64—72. Спуск затвора с предварительной паузой в 2 секунды: импульс 64—72 семпла — пауза 480—490 семплов — импульс 64—72. В пересчете на секунды получаем для обычного спуска затвора: ≈0,7 мс — 7 мс — 0,7 мс. Для спуска с задержкой: ≈0,7 мс — 5 мс — 0,7 мс.

В следующей части будет описано, как генерировать сигнал и «подгонять» его под устройство воспроизведения.




Дополнительно

iXBT BRAND 2016

«iXBT Brand 2016» — Выбор читателей в номинации «Процессоры (CPU)»:
Подробнее с условиями участия в розыгрыше можно ознакомиться здесь. Текущие результаты опроса доступны тут.

Нашли ошибку на сайте? Выделите текст и нажмите Shift+Enter

Код для блога бета

Выделите HTML-код в поле, скопируйте его в буфер и вставьте в свой блог.