Обратная разработка аналоговой видеокамеры
Ранее на хабре я публиковал статьи, связанные с системой аналогового видеонаблюдения. В частности, были статьи, связанные с изучением файловой системы HDD видеорегистратора (DVR). В данной статье речь пойдёт про обзор навороченной аналоговой видеокамеры модели Evidence EVR-Y2022F с точки зрения пользователя и подробное изучение её устройства с инженерной точки зрения.
В настоящее время чаще применяется современная система видеонаблюдения на базе сетевых IP камер и соответствующего видеорегистратора. Однако, прежде всего, за счёт невысокой цены, аналоговая система видеонаблюдения всё ещё остаётся актуальной. Существует множество аналоговых видеокамер. Помимо характеристик качества изображения, есть ряд других характеристик, в частности, наличие интерфейса PTZ. Данный интерфейс позволяет управлять видеокамерой по линии RS-485 по протоколу PELCO-D с помощью DVR. Это, как правило, купольные камеры, которые можно вращать, изменяя ракурс видео. Реже встречаются камеры с интерфейсом PTZ, которые поддерживают управление оптическим зумом и фокусировкой (фокусом). Именно о такой камере пойдёт речь в данной статье.
Общий вид данной видеокамеры представлен как на обложке, так и на фотографии ниже (рис. 1). У неё удобный простой корпус и большой объектив, что привлекает внимание. Сзади расположены кнопки и разъёмы (рис. 2).
Рис. 1. Вид видеокамеры спереди.
Рис. 2. Вид видеокамеры сзади.
Как видно из рисунка, имеется разъём питания 12В, выход видео, RS-485 (A+, B-), и ещё какой-то ZFCM. Кроме этого, имеется контрольный светодиод питания и пять кнопок. Исходя из названия кнопок, очевидно, камера имеет экранное меню настроек и ручное управление зумом и фокусом. Сразу хочу отметить, что полноценного руководства по эксплуатации не существовало, и я его в Интернете также не нашёл. В упаковке был вложен только один листик с техническими характеристиками камеры. Меня очень сильно интересовал интерфейс ZFCM. В Интернете внушительной информации по этому поводу я не нашёл также, но интуитивно догадывался, что он служит для удалённого управления кнопками камеры.
При подаче напряжения на камеру на экране телевизора (или монитора), к которому она подключена, кратковременно высвечивается белая крупная надпись «HELLO» на синем фоне. Одновременно с этим слышно, как внутри камеры вращаются моторчики, перемещающие линзы. Затем появляется изображение. Направляя камеру на различные по расстоянию объекты, по изображению на экране становится понятно, что камера способна фокусироваться автоматически. Кнопками «TELE/WIDE» можно менять зум, то есть, приближать или отдалять. При этом каждый раз происходит автофокусировка. При нажатии на кнопки «NEAR/FAR» автофокусировка отключается, и фокус можно подстраивать вручную. Эта функциональная особенность очень интересна и полезна. Её можно встретить, разве что, в профессиональной фото или видеокамере. Дело в том, что алгоритм автоматический фокусировки в некоторых случаях работает не всегда эффективно. Например, тонкая ветка дерева перед камерой на фоне очень далёких объектов не будет захвачена автофокусом. Ручной фокус позволяет подстроиться на любой объект перед объективом. Кроме того, камера имеет довольно хороший зум (заявлено 22Х). На рисунках 3 и 4 продемонстрированы максимальный зум на удалённый объект и различные конфигурации ручной фокусировки при фиксированном зуме. Все изображения с камеры (стоп-кадры) в этой статье я создавал с помощью устройства видеозахвата, затем уменьшил масштаб вдвое. Ещё стоит отметить, что на экране с ЭЛТ видео с данной камеры отображается качественнее, чем на плоском ЖК мониторе.
Рис. 3. Минимальный и максимальный зум.
Рис. 4. Различные дистанции фокусировки.
При нажатии на кнопку «MENU» вызывается экранное меню белыми буквами на фоне видеоизображения. Меню состоит из разделов. Главная страница меню имеет следующий вид.
Рис. 5. Главная страница меню («MAIN»).
Методом тыка нетрудно догадаться, как управлять этим меню. Выбор пункта меню осуществляется кнопками управления зума (они же — «вверх/вниз»), а активация и конфигурирование выбранного пункта — кнопками управления фокуса (они же — «влево/вправо»). Выход из меню — повторное нажатие кнопки «MENU», причём из любого места. Для перехода на главную страницу из раздела нужно активировать последний пункт «BACK». Активация последнего пункта главной страницы «EXIT» также приводит к выходу из меню. Признаком выбранного пункта меню служит мигание параметра (если это параметр) или стрелочка справа (если это раздел меню). На рисунке выше я уже выбрал второй пункт меню на главной странице.
Первый пункт меню главной страницы — адрес камеры для протокола PELCO-D. Последний пункт (не считая EXIT) — сброс на заводские настройки. Рассмотрим остальные пункты — 6 разделов меню. На страницах разделов последний пункт «BACK» для перехода на главное меню уже подсвечен стрелочкой, а признак активации данного пункта — мигающая стрелочка. Ещё стоит отметить, что над пунктами посередине экрана высвечивается слово «MAIN» на главной странице меню и название раздела меню на страницах раздела.
Рис. 6. Раздел меню «FOCUS».
С помощью первого пункта раздела «FOCUS» (рис. 6) можно выбрать принудительно автофокусировку, принудительно ручную фокусировку, или режим по нажатию. Последнее означает, что нажатие кнопок фокуса отключает автофокусировку, а нажатие кнопок зума (смена характеристики приближения) — включает её. Второй пункт позволяет ограничить ближнюю дистанцию фокусировки. Третий пункт — принудительная инициализация зума и фокуса, как при включении камеры. Четвёртый и пятый — ограничение зума.
Рис. 7. Раздел меню «WB MODE».
Второй раздел (рис. 7) посвящён настройке баланса белого. Первый пункт данного раздела позволяет выбрать один из предустановленных режимов, а также автоматический или пользовательский режим. Последний настраивается с помощью второго и третьего пунктов раздела, где можно установить уровни сигналов синего и красного цветов.
Рис. 8. Раздел меню «AE MODE».
Третий раздел (рис. 8) посвящён настройке экспозиции. Первый пункт данного раздела позволяет выбрать автоматический или ручной режим экспозиции. При ручной экспозиции доступны три следующие пункта (2, 3, 4). С помощью второго пункта раздела настраивается значение характеристики АРУ (автоматической регулировки усиления). С помощью третьего — значение яркости (но там есть ещё значение «AUTO»). С помощью четвёртого — значение затвора. Оно также влияет на усиление и яркость изображения.
Рис. 9. Раздел меню «GENERAL» с активным параметром «MIRROR».
Четвёртый раздел (рис. 9) посвящён другим отдельным настройкам. Первый пункт — режим зеркального изображения (отображение слева направо). В данном случае, как видно из рисунка, он активен, и изображение на заднем фоне зеркально развёрнуто. Это я сделал специально, чтобы продемонстрировать данный режим. Второй пункт — компенсация заднего света. Третий пункт — режим день/ночь. Можно выбрать дневной режим, ночной режим или автоматическое определение. В ночном режиме камера выдаёт чёрно-белое изображение. Четвёртый пункт — выбор скорости передачи данных RS-485 для протокола управления. Наконец, пятый пункт данного раздела — выбор протокола. Кроме «PELCOD», другие варианты здесь отсутствуют.
Рис. 10. Раздел меню «OSD DIS».
В пятом разделе (рис. 10) настраиваются параметры отображения на экран той или иной информации при работе камеры. Первый пункт позволяет выбрать режим отображения: отображать всегда, никогда не отображать, или, как выбрано по умолчанию, отображать несколько секунд при изменении фокуса/зума. Второй пункт разрешает отображение номера камеры, точнее, адреса в RS-485. Он отображается в верхнем левом углу. Третий пункт разрешает отображение режима фокусировки. Четвёртый пункт разрешает отображение значения зума. Оба параметра отображаются в нижнем правом углу (в обычном режиме, когда меню не активно). На одном из шести изображений с камеры на рис. 4 можно заметить отображение данной информации, которое ещё не успело исчезнуть.
Рис. 11. Раздел меню «IR LIGHT».
Последний шестой (рис. 11) раздел посвящён настройке управления инфракрасной подсветкой. В данной камере подсветка или её интерфейс отсутствуют, следовательно, данный раздел меню носит бесполезный характер. Но, видимо, прошивка универсальная, поэтому это предусмотрено. Как я понимаю, можно настроить включение одной из трёх подсветок на том или ином интервале положения зума. Первый пункт — включение или отключение всего этого функционала. Второй пункт — выбор номера подсветки (1, 2, 3). Следующие три пункта — настройка параметров для каждой подсветки в отдельности. То есть, третий пункт — включение или отключение данного функционала для текущей выбранной подсветки. Четвёртый пункт — значение зума для включения подсветки (левая граница интервала). Пятый пункт — значение зума для отключения подсветки (правая граница интервала).
Вот я и закончил рассмотрение настроек меню. Стоит отметить, что навигация по меню неудобна, и имеются небольшие задержки. Несмотря на то, что конфигурация камеры с помощью меню происходит один раз или очень редко, всё равно это напрягает. Точнее, отсутствует возможность «быстро бегать» по меню опытному пользователю. А одногерцовое мерцание символа или параметра, как признак выбора текущего пункта, вовсе непривычно. Даже в процессе захвата изображений меню для иллюстраций я не всегда успевал поймать тот момент, чтобы активный мигающий параметр был на экране. Короче говоря, реакция на нажатие кнопки не мгновенна, следовательно, очень быстрые нажатия не обрабатываются. Я вспоминаю кнопочные телефоны середины двухтысячных, в частности, Nokia или Siemens, где нажатия на кнопки обрабатывались мгновенно. Современные дешёвые кнопочные телефоны не обладают такой возможностью. Нечто похожее наблюдается и в случае с навигацией по меню в описываемой камере.
Теперь приступим к разборке камеры. На это дело меня побудил не только технический интерес, но и более банальная причина: через несколько месяцев эксплуатации камеры она «приказала долго жить». Причина выхода из строя была предположительно очевидна: сдохла прошивка. Тем не менее, я решил заглянуть во внутрь камеры, надеясь на удачный исход ремонта.
Визуально камера состоит из трёх печатных плат. Я сразу же начал подробно рассматривать первую плату, на которой расположены кнопки с разъёмами. Отсоединив плату от гибкого шлейфа и перевернув на другую сторону, я увидел, главным образом, пять оптронов, микросхему преобразователя UART в RS-485 и её линейный регулятор на 5В (кренку). Решил зарисовать схему этой платы, вызванивая все дорожки и контакты тестером. Получилась такая схема.
Рис. 12. Схема первой платы.
В процессе зарисовки схемы сразу стало понятно, как пользоваться интерфейсом ZFCM, но обо всём по порядку. Пять имеющихся кнопок подключены к цепочке последовательно соединённых резисторов. То есть, контроллер обрабатывает нажатия кнопок за счёт АЦП всего по одному пину. Каждой нажатой кнопке соответствует определённое напряжение на нём за счёт резистивного делителя, а нажатия нескольких кнопок не обрабатываются. Ну, с этим всё понятно, это классика. Теперь по поводу оптронов. А они как раз и нужны для ZFCM! К каждой кнопке параллельно приделан транзисторный оптрон своей выходной частью, а входные светодиодные части оптронов (в дальнейшем — анод и катод) хитро соединены с клеммами ZFCM. Срабатывание каждого оптрона эквивалентно нажатию на соответствующую ему кнопку. Анод оптрона, соответствующему кнопке «MENU», идёт на клемму «M» (Menu), а катод — на клемму «C» Светодиодные части оптронов, соответствующие двум кнопкам зума, соединены между собой встречно-параллельно, и эти два конца идут на клеммы «C» и «Z» (Zoom). Такая же история и с оптронами кнопок фокуса, только клеммы — «C» и «F» (Focus). Таким образом, получается, клемма «С» — общая (Common). В цепи оптронов стоят ограничительные резисторы по 2.2 КОм, предположительно для того, чтобы оптроны зажигать от напряжения 12В. То есть, для удалённого нажатия на кнопку «MENU» нужно подать -12В на клемму «C» и +12В на клемму «M». С кнопками зума и фокуса посложнее. Для удалённого нажатия, например, на кнопку «WIDE» (она же — кнопка «вниз») нужно подать +12В на клемму «Z» и -12В на клемму «C». А для эмуляции кнопки «TELE» (она же — кнопка «вверх») нужно просто сменить полярность. Аналогичная операция будет и для оставшихся двух кнопок, то есть для фокуса, только вместо клеммы «Z» будет участвовать клемма «F». Пульт управления для реализации ZFCM можно выполнить, например, так.
Рис. 13. Реализация пульта управления для ZFCM.
Схема требует двухполярного источника питания, но можно поставить две батарейки по 12В, и даже «Кроны». Резисторы по 620 Ом (такие попались мне под руку) предотвращают короткое замыкание при одновременном нажатии парных кнопок зума или фокуса и, в целом, негативно на работу не сказываются. В целом, схема первой платы простая, в дополнительных комментариях не нуждается. Ещё могу отметить, что в целях помехоустойчивости «земля» видеосигнала приходит отдельно от общей «земли». А ещё, приёмопередатчик MAX485 (в схеме — его китайский аналог) работает только на приём информации, так как 2 и 3 выводы его соединены с GND. И это несмотря на то, что его вывод «DI» выведен на разъём J302 и подключен к МК.
После изучения первой я поверхностно рассмотрел остальные платы, а именно — все большие микросхемы, входящие в их состав. Платы двухсторонние, и обе стороны набиты компонентами одинаково плотно. На самой большой плате расположен «мозговой центр» — контроллер FBS101 неизвестного происхождения, а также куча микросхем, транзисторов и других мелочей. На третьей плате, которая поменьше (расположена за первой) находится куча микросхем фирмы SONY, в частности, ПЗС (то есть видеоглазок), плотно соединённый с оптической частью камеры, а также куча других мелочей. Судя по нумерации компонентов, третья плата на самом деле не третья, а вторая, а вторая — третья. Но я с самого начала условился считать наоборот. Первая и третья платы соединены со второй (главной) двумя гибкими шлейфами. Также со второй платой соединён шлейф, на котором смонтированы два моторчика (для зума и фокуса) и два соответствующие им концевика. Они не видны и размещены внутри оптической части. Забегая вперёд, сразу отмечу, что концевики (концевые выключатели) на самом деле служат датчиками нулевого положения и стоят не на концах, а посередине.
Я нашёл даташит на самую большую микросхему третьей платы (видеопроцессор CXD3142R). Затем — даташиты на остальные микросхемы той же платы. В частности, одна из микросхем, как я выяснил, служит так называемым знакогенератором (PD6464A). Через неё проходит сформированный видеопроцессором аналоговый видеосигнал на видеовыход, и она отвечает за наложение символов на видео. Именно она формирует надписи на экране, в частности, меню. Микросхема популярная, даташит на неё достаточно простой. Данная микросхема (или аналогичные ей) применялась в видеомагнитофонах и VHS камерах из девяностых.
После беглого прочтения всех даташитов у меня возникла идея разработать прошивку на камеру самостоятельно. А в связи с тем, что штатный контроллер оказался неведомым, я задумал запилить в камеру отдельную плату с какой-нибудь Атмегой. На третьей плате ключевую роль играют две микросхемы: видеопроцессор и знакогенератор. Остальные — это периферия видеопроцессора (ПЗС — в частности). Именно эти две основные микросхемы принимают информацию с главного контроллера (на второй плате) по SPI. Следовательно, нужно изучить, прежде всего, только два даташита.
Для общего развития и для облегчения представления я решил полностью перерисовать схемы оставшихся двух плат. Точнее говоря, схему основной (второй) платы изучать пришлось бы по-любому, если стоит задача написать прошивку. Но перерисовка схемы второй платы напрашивает за собой сделать аналогичную процедуру с третьей платой. Для облегчения рисования схемы третьей платы пришлось кратко изучать даташиты на все микросхемы периферии видеопроцессора. Здесь схема менее централизована, чем схема основной платы, несмотря на то, что основная плата больше размером. Поэтому рисовать её методом вызванивания тестером было сложнее, чем схему основной платы. Плюс ко всему, главным критерием сложности выступал тот факт, что платы не только двухсторонние, но ещё и многослойные! Схемы я рисовал кусочками на черновиках, прежде чем всё оформить на компьютере. Схему первой платы я уже приводил выше, остальные схемы приведу позже.
На рисунках ниже показана камера в разобранном виде и виды плат с другой стороны. Можно видеть также шлейф с моторчиками и концевиками. Тот моторчик, вал которого меньше длиной — это моторчик фокуса.
Рис. 14. Видеокамера в разобранном виде.
Рис. 15. Виды печатных плат с обратной стороны.
Рис. 16. Видеокамера в полуразобранном виде.
Рассмотрим структурную схему камеры, которую я составил после долгого процесса перерисовки схем всех плат. Она представлена на рисунке ниже.
Рис. 17. Структурная схема видеокамеры.
Самый большой «прямоугольничек» — это главный микроконтроллер (МК) U501 на основной плате. Кстати, маркировки всех компонентов написаны на платах рядом с компонентами, что очень удобно. Внутри МК на рисунке много пустого места, поэтому я решил прямо там поместить таблицу с описанием сигнальных выводов. Видеопроцессор U201 связан с МК не только SPI интерфейсом (выводы 20 (XCK), 26 (CLK), 27 (DATA_IN), 28 (DATA_OUT)), но и дополнительными сигналами. Прежде всего, это параллельная 8-битная шина цифрового видеосигнала. А также — синхронизирующие импульсы строк (38), кадров (39) и каждого элемента изображения (29). Благодаря подсчёту этих импульсов контроллер знает, о каком пикселе какого поля или кадра приходит информация по шине цифрового видеосигнала. Через вывод RST (19) МК осуществляет сброс видеопроцессора при старте. А через вывод AGC (80) МК знает о состоянии значения АРУ, поступающего с одной из периферийных микросхем видеопроцессора. Как я уже писал, аналоговый видеосигнал проходит на выход «сквозь» знакогенератор U402. На него от МК идёт SPI интерфейс параллельно SPI интерфейсу видеопроцессора, за исключением строб-сигнала (выбор чипа) — вывод (21) МК. Видеопроцессор способен выдавать видеосигнал, как в аналоговой форме, так и в цифровой. Цифровой сигнал, приходящий на МК, нужен, очевидно, для функции автофокусировки. Именно МК и осуществляет управление моторчиками зума и фокуса. Моторчики являются обычными биполярными шаговыми двигателями (ШД). На каждый двигатель МК выделено по 4 вывода. Для зума — (44, 46, 54, 55), а для фокуса — (45, 47, 50, 51). Драйверы ШД, о которых я напишу позже, устроены так, что сигналы подаются на них уже в дешифрованном виде. Вообще, для управления механическим узлом при помощи ШД или другого привода с позиционированием достаточно одного концевика, который будет являться ноль-меткой, а за конечными положениями узла можно следить программно, считая шаги ШД. В таком случае при включении системы нужно произвести «инициализацию», то есть, «доехать» до ноль-метки и вернуться обратно, при этом запомнить, сколько шагов проехали. В нашем случае так оно и реализовано, и данный алгоритм инициализации происходит каждый раз при включении камеры. Сигнал с концевика ноль-метки фокуса приходит на вывод (4) МК, а зума — на вывод (5). Концевиками служат открытые оптопары, и по выводу (18) МК происходит включение светодиодных частей обоих концевиков. Однако, забегая вперёд, на протяжении всего времени работы камеры данный сигнал всегда активен. На вывод (1) МК приходит аналоговый сигнал с кнопок, а на вывод (42) (UART-RX) — информация с интерфейса RS-485. Таким образом, МК управляет видеопроцессором, знакогенератором (что печатает на экране буквы и цифры), обрабатывает команды с кнопок и PELCO-D, управляет оптическим зумом и фокусом. Но самая ключевая и сложная фишка МК — обработка и анализ видеосигнала, приходящего по цифровой шине, для реализации автофокусировки.
Что ещё интересного на основной плате? Есть два неизвестных и незапаянных разъёма (места для них). Один из них J503 — 12-пиновый — я расшифровал, когда нарисовал схему. Уже изначально я догадывался, что этот разъём служит для перепрошивки. Так оно и получилось. Назначение второго разъёма J505 (5-пинового) я разгадал гораздо позже. К нему цепляется та самая инфракрасная подсветка (точнее, три), о которой шла речь при описании последнего раздела меню. Рядом с разъёмом J503 расположена микросхема U503 SPI EEPROM. Я сразу не понял её назначение, так как её маркировка не так просто пробивалась в Интернете. Сначала я думал, что это I2C EEPROM. Под ней, на другой стороне платы, расположена ещё одна микросхема U502 с маркировкой HA125. Это 4-канальный повторитель, похожий на популярную микросхему 74HC244. Каждый канал можно открыть или закрыть логическим сигналом. Один канал работает на схему сброса МК, как повторитель. А через оставшиеся три канала определённым образом проходит линия SPI между МК, третьей платой, и EEPROM. Данная связь изображена на схематическом рисунке ниже (рис. 18). Это нужно для работы с программатором. При подключении программатора в разъём J503 осуществляется деактивация трёх каналов повторителя U502, тем самым, отсоединяя МК от SPI EEPROM.
Рис. 18. Структурная схема организации SPI и периферии.
По рисунку видны назначения каждого вывода разъёма J503. Остальные выводы — питание и «земли», которые я не отметил. Разъём J502 — выходной разъём к третьей плате с видеопроцессором. Через разъём программирования J503 можно не только работать с EEPROM U503 (по выводам разъёма 7, 9, 11, 5), но и обмениваться данными с видеопроцессором (выводы разъёма 5, 10, 8, 12). Возможно, на той третьей плате тоже можно что-то перепрошивать. А вообще, можно вести отладку всего видеотракта внешним SPI устройством. Ещё рядом с U502 имеется мелкая микросхема U504, которая, видимо, служит активным сумматором сигналов MISO интерфейсов SPI, приходящих с EEPROM и с видеопроцессора. Видимо, EEPROM работает только на этапе загрузки прошивки при включении камеры. В дальнейшем она не отправляет свои данные по SPI в сторону МК. В процессе работы камеры данные по SPI будут приходить только от видеопроцессора (если вообще будут). То есть, перемешивания входящих в сторону МК SPI сигналов не происходит.
Схема организации электропитания оказалась не очень простая. Её компоненты занимают, чуть ли не половину всей платы: куча DC-DC преобразователей, линейных регуляторов и стабилитроны. Чтобы было более понятно, я нарисовал структурную схему.
Рис. 19. Структурная схема организации электропитания.
На первой плате всё просто. Элемент U201 служит для питания U202 MAX485, он вырабатывает 5В. На второй плате всё гораздо сложнее. Элементы U803 и U805 вырабатывают напряжения соответственно 3.3В и 1.8В для питания МК, U801 — для питания ШД (5.5В). Элемент U804 вырабатывает 5В, в основном, для третьей платы. На текущей плате он используется только в одном месте, и то, в незначительном. Элемент U802 вырабатывает вспомогательное напряжение 3.6В, которое является входным для U803 и U805. Оно же ещё поступает на элемент U207 третьей платы, который вырабатывает 3.3В. Отсюда же, совместно с Q801 и Q802 непонятно каким образом рождаются напряжения -8В (отрицательное) и 18В. Я в это дело особо не вникал. Они поступают сразу на третью плату. Там отрицательное напряжение -8В с помощью стабилитрона D201 превращается в -5.1В, а 18В с помощью U205 преобразуется в 12В. Отрицательное напряжение требует ПЗС исходя из физических особенностей преобразования «свет-сигнал».
При изучении схемы основной платы я выявил присутствие драйвера ещё одного моторчика, который в данной камере отсутствует. Прослеживая шлейф с ШД и концевиками от соответствующих выводов разъёма, можно заметить, что соответствующие дорожки на нём заворачивают в сторону объектива, и в этом месте шлейф обрывается. Вероятнее всего эта часть шлейфа, как и лишний драйвер на плате, предназначена для двигателя диафрагмы, который не предусмотрен в данной модели камеры. Ещё на шлейфе есть лишние дорожки, соответствующие выводы разъёма которых вовсе не задействованы. Возможно, они предназначены для концевиков диафрагмы. Или же, часть неиспользуемых дорожек шлейфа имеют отношение к механическому затвору (та самая «защёлка» на многих моделях видеокамер). Возможно, неиспользуемый драйвер на плате как раз для него и предназначен. На рисунке ниже приведены для удобства типовые схемы драйверов, применяемые в камере. Первая схема — одна из двух одинаковых схем управления ШД. Вторая схема — неиспользуемый драйвер, судя по всему, для защёлки. Он же может служить драйвером для управления обычным DC моторчиком, но для привода диафрагмы логичнее было бы ставить ШД.
Рис. 20. Типовые схемы драйверов для механизмов оптики.
Схемы классические, поэтому в подробных комментариях могут не нуждаться, но я всё же напишу кратко. Первая схема работает следующим образом. При подаче логической »1» на «упр.1» и »0» на «упр.3» работает одна (верхняя) обмотка ШД в прямой полярности. Если поменять »0» и »1» местами — полярность на обмотке меняется. Если подать оба »0», то напряжение на обмотке пропадает. Обе »1» являются запрещённой комбинацией (можно догадаться, что будет). Аналогично — для нижней обмотки («упр.2» и «упр.4»). Таким образом, если подавать »1» по очереди в нужном порядке на эти четыре входа управления, то ШД будет вращаться в ту или иную сторону. Вторая схема работает похожим образом, как одна из двух половинок первой схемы. Если в качестве моторчика будет стоять обычный DC мотор, то логические комбинации »0–1» и »1–0» на управляющих входах реализуют его прямое и обратное вращение соответственно, а одноимённые комбинации »0–0» и »1–1» реализуют его остановку. Если вместо моторчика будет стоять электромагнитная защёлка, то есть механический затвор, то логические комбинации »0–1» и »1–0» будут реализовывать его открытие и закрытие. Диоды на приведённых схемах, включенные встречно с нагрузкой, служат для гашения обратной ЭДС.
Пришла пора представить полные схемы второй и третьей плат.
Рис. 21. Схема второй платы (основная плата).
Рис. 22. Схема третьей платы (плата с ПЗС и видеопроцессором).
Вокруг микроконтроллера напаяно много резисторов и конденсаторов, которые занимают половину всех выводов. Ещё на платах присутствует множество диодных сборок (маркировка «A7»), стоящие в защитных целях, а в драйверах ШД — сдвоенные транзисторные сборки. Кварц МК Y501 имеет частоту 12 МГц. Не отражённые на схеме «нулевые» резисторы R645, R646, R647, R648 нарисованы в стороне. Они были обнаружены довольно поздно, когда все схемы были уже оформлены. Для минимизации линий и предания схеме хоть какой-нибудь наглядности, я применил шинный принцип, а линии питания раскидал входящими и выходящими стрелками внутри которых написаны имена значений напряжений (переменные Vcc1…Vcc5, их значения отображены в углу схемы). Схема третьей платы получилась запутаннее. Номинал кварца видеопроцессора Y201 в 18.9375 МГц выбран исходя из параметров видеосигнала для заявленной системы цветности PAL. Одна из периферийных микросхем — 8-канальный ЦАП U204, служит для формирования опорных нужных напряжений, значения которых можно изменять через SPI видеопроцессора. Напряжение с одного из свободных каналов ЦАП (AO7) поступает на 23 вывод знакогенератора. По даташиту, туда подаётся опорное напряжение для задания уровня выходного видеосигнала с этой микросхемы. Это сделано для возможности программного изменения значения этого опорного напряжения через видеопроцессор по определённой команде через SPI.
Кроме схем, я нарисовал эскизы печатных плат с обеих сторон в масштабе 2:1, где изображены все компоненты с их маркировками (рис. 23). Сравнивая перечни компонентов схем и эскизов, я делал работу над ошибками по упущенным компонентам. Именно на этом этапе я обнаружил отсутствие тех самых четырёх перемычек, решив дорисовать их в стороне.
Рис. 23. Эскизы печатных плат.
В заключение этой части статьи приведу схему разводки шлейфа с ШД и концевиками.
Рис. 24. Схема разводки шлейфа с ШД и концевиками.
Затем я приступил к более детальному исследованию каждого узла, предварительно отпаяв МК U501 и EEPROM U503.
Концевики расположены примерно посередине траекторий, по которым перемещаются линзы зума и фокуса. Перемещения происходят за счёт вращения винта на осях ШД. Их можно демонтировать, чтобы перемещать узлы вручную, при этом они очень легко перемещаются, даже под собственным весом. Именно таким образом я установил, в каком месте срабатывают концевики, при этом зафиксировал направления переходов сигналов с концевиков из »0» в »1». Данное направление я условился считать положительным. Возникла идея ввести систему целочисленных координат F (Z) для наглядности и облегчения моделирования. За ноль условился считать ту точку, в которой срабатывают концевики. В качестве значений координат взял целые числа — шаги ШД, так как положения вала ШД, а, следовательно, и положение линз, дискретны. Осталось только определить пределы (границы) по зуму и фокусу. Их я определял эмпирически, сделав тестовую прошивку на отладочной плате и припаяв 8 проводочков к драйверам ШД. Удобнее всего припаивать к резисторам, которые стоят в цепях баз после соответствующих выводов МК. Передвигая вручную зацепления (узлы), я обнаружил интересную особенность данной механической системы. Если узел фокуса отодвинуть полностью влево до конца, а узел зума плавно перемещать из среднего положения вправо, то перед самой крайней правой границей (не доходя примерно 10% всей длины) он начинает тянуть за собой узел фокуса. Это особенность механики оптики, которая закрыта и недоступна (я её не разбирал). То есть, получается, нельзя одновременно отодвинуть узел фокуса до упора влево и узел зума до упора вправо. Эту особенность я также принял во внимание. Эмпирически я установил значение координаты зума, при которой начинает происходить эта особенность. Если сделать зарисовку на плоскости, в роли абсциссы взять зум, а в роли ординат — фокус, то получится примерно такая картинка.
Рис. 25. Область ограничения регулировок зума и фокуса.
Жирной линией на координатной плоскости изображена почти прямоугольная область, ограничивающая допустимые координаты, точнее, возможные положения узлов зума и фокуса. Почему почти? Потому что, исходя из особенностей хитрости механики, о чём я написал выше, нижний правый угол прямоугольной области исключается. По горизонтали прямоугольник больше примерно вдвое, чем по вертикали. Это связано с тем, что по линейным размерам длина перемещения зума больше, чем фокуса, о чём я уже писал ранее. А винты, передаточные числа и ШД — одинаковые. Как видно из рисунка, зум изменяется от -600 до 600, то есть ноль-метка расположена ровно посередине. Для фокуса этот интервал составляет от -340 до 280, ноль-метка немножко смещена. Вообще, теоретически, ноль-метку (концевик) можно располагать в любом месте. Относительные координаты среза нижнего правого угла составляют -100 на -100. То есть, когда фокус находится в крайнем отрицательном положении, а зум увеличивается в плюс, то, когда он дойдёт до 500, он механически потянет за собой фокус. Напомню, что числа (значения координат) — это шаги ШД. Пунктирные линии за пределами рабочей пятиугольной области — это границы области «с натяжкой», когда механика ещё простит ошибки. Хотя, при исследовании я ошибался не раз, и ШД с треском прокручивались сквозь зацепления, которые упирались в край. Не знаю, какая реально рабочая обл