В мастерской скопилось несколько камер, принесённых коллегами для сборки дронов. Каждая из них выглядит по-своему, но объединяет их одно: короткий проводок с тремя жилами и полная неопределённость относительно работоспособности. Раньше проверка такой камеры превращалась в сборку половины борта на столе — видеопередатчик, приёмник, монитор, провода, питание. Всё это занимало время и создавало лишнюю путаницу. Постепенно пришло понимание, что нужен более простой инструмент, позволяющий за несколько минут оценить состояние камеры до того, как она отправится в полёт.
Почему аналоговые камеры до сих пор актуальны
Разбираясь с аналоговыми камерами, я всё больше убеждаюсь, что их рано списывать со счетов. Технология CVBS, знакомая многим по видеомагнитофонам девяностых, продолжает работать в FPV-индустрии. Принцип её действия подкупает простотой: изображение превращается в аналоговый сигнал, который строка за строкой передаётся по одному проводу. Никаких цифровых протоколов, рукопожатий и проблем совместимости версий. Сигнал есть — картинка появилась. Сигнала нет — экран остаётся пустым.
Задержка при таком подходе минимальна. Кадр не нужно кодировать, сжимать и паковать в цифровой поток. Сигнал с сенсора сразу уходит в эфир. В скоростных полётах это критично: десятки миллисекунд задержки на цифровом тракте ощущаются как потеря контроля. Аналоговая камера реагирует мгновенно, и именно поэтому гоночные квады до сих пор летают на CVBS.
Есть и нюансы, о которых стоит помнить. Стандартов два — PAL и NTSC. Первый распространён в Европе и Азии, второй — в Америке. Разница в разрешении и частоте кадров: PAL выдаёт 720 на 576 точек при 25 кадрах в секунду, NTSC — 720 на 480 при 30 кадрах. Большинство современных камер умеют переключаться автоматически, но иногда требуется ручная настройка. Если камера и приёмник работают в разных стандартах, картинка либо ползёт, либо исчезает совсем.
Отдельная история — заявленное разрешение. Цифры 720 на 576 звучат внушительно, однако реальная детализация скромнее. Часть строк уходит на служебные нужды, и типичная FPV-камера различает порядка 480–600 ТВ-линий по горизонтали. Дерево за двести метров видно отлично, а вот номер дома прочитать не получится. Для пилота важнее стабильность картинки, а не мелкие детали.
Опасность, которая подстерегает новичков, связана с питанием. Пигтейл камеры чаще всего рассчитан на 5 вольт, но рядом на борту нередко болтается 12 вольт. Одно неверное подключение — и камера умирает с лёгким дымком. Перед проверкой обязательно уточняю напряжение, чтобы не пополнить коллекцию сгоревших модулей.
Карта захвата как универсальный инструмент проверки
Самым доступным способом увидеть картинку с CVBS-камеры оказалась карта захвата. Это компактное устройство, напоминающее брелок. С одной стороны у него композитный вход, с другой — USB-разъём. Внутри карта оцифровывает аналоговый сигнал и передаёт его компьютеру как обычную веб-камеру. Никаких дополнительных устройств не требуется.
Практический совет, который сэкономил мне немало денег: карта должна быть UVC-совместимой. Это стандарт, позволяющий операционной системе распознавать устройство без установки драйверов. Большинство современных карт на чипах MS2109 работают именно так. Старые модели на UTV007 или STK1160 часто требуют драйверов из сомнительных источников, а на Mac не заводятся вовсе. При покупке ищу в описании аббревиатуру UVC и поддержку PAL.
Поскольку разъёмы на разных камерах отличаются, я изготовил универсальный провод. К карте захвата припаял несколько типов разъёмов, чтобы подключать любую камеру без переходников и лишних манипуляций.
Теперь к карте можно подсоединить камеру с любым распространённым разъёмом. Это значительно ускоряет проверку, особенно когда через руки проходит несколько устройств подряд.
Проверка на Windows и Mac
На Windows всё решается штатными средствами. Подключаю карту, открываю встроенное приложение «Камера» и выбираю её в списке источников. Картинка появляется на экране без установки дополнительного софта. Если стандартное приложение капризничает, на помощь приходит OBS Studio — бесплатная программа, которую ценят стримеры. Добавляю источник «Устройство захвата видео», выбираю карту, и изображение отображается в окне программы. Заодно можно сразу записать видео для дальнейшего анализа.
На Mac подход ещё элегантнее. Любая UVC-карта захвата определяется системой как обычная камера, поэтому её видят все приложения, работающие с видео. Открываю FaceTime, захожу в меню «Видео» и выбираю карту захвата из списка. Или запускаю Photo Booth, если нужно окно побольше. Картинка с аналоговой камеры появляется на экране MacBook без единой установленной программы.
За пять минут такой проверки удаётся отсеять большую часть брака. Видно, живая камера или мёртвая, сыпет ли изображение шумом на статичной сцене, не перевёрнута ли картинка и не обрезается ли по краям. При выключении света камера с ИК-подсветкой должна перейти в ночной режим, а не ослепнуть. Главный тест для борта — лёгкое покачивание пигтейла. Если картинка мигает, значит, контакт на сигнальной жиле ненадёжный. На столе это выглядит как редкое подёргивание, а в полёте превращается в полное пропадание изображения на кочках.
Интеграция с бортовым компьютером
Система, о которой я уже рассказывал ранее, получила название АРГУС. Это бортовой компьютер на Raspberry Pi 5, который принимает картинку с камеры, накладывает поверх телеметрию с полётного контроллера и раздаёт поток на пульт или телефон по Ethernet. Изначально штатной камерой была термокамера, и вся работа строилась вокруг неё.
Вопросы от подписчиков заставили задуматься: а что если камера обычная аналоговая? Или от другого аппарата? Или вообще вебкамера? Поймёт ли их система? Ответ оказался положительным после доработки. В настройках появился переключатель типа источника. Теперь можно выбрать карту захвата, указать устройство из списка, нажать «Применить» — и в окне предпросмотра появится картинка с аналоговой камеры. Система сама определяет формат: PAL или NTSC, 25 или 30 кадров в секунду, 576 или 480 строк. Пилоту об этом думать не нужно.
Третий вариант в переключателе — камеры MJPEG. Это цифровые USB-камеры, отдающие сжатый поток. Типичный пример — вебкамеры: максимальное разрешение 1080p доступно только в этом формате, а несжатое видео идёт лишь на низких разрешениях. Система теперь принимает и такие камеры, распаковывает поток и пропускает его через тот же тракт с телеметрией поверх. Стоит учитывать, что 1080p на Raspberry Pi 5 кодируется программно и заметно нагружает процессор.
Где такая система применима
Размышляя о практическом применении, я выделил несколько направлений. Первое — тяжёлые мультикоптеры. На таких машинах уже есть полётный контроллер с телеметрией, Ethernet-кабель до air unit и мощная батарея. Бортовой компьютер вписывается как готовый видеотракт: тепловой канал, обычная камера, телеметрия поверх картинки и прицел для оператора. Частый вопрос в комментариях — как реализовать OSD на тяжёлом дроне. Это и есть готовое решение.
Второе направление — наземные робототехнические комплексы. Для них мультикамерность ценнее, чем в воздухе: обзор вперёд, обзор назад, тепловой канал для ночи. Система принимает все источники и объединяет их в один поток с телеметрией. Оператор, находящийся в нескольких километрах, получает картинку с оверлеем, которая становится основным органом зрения.
Третье направление — учебные стенды. Инженеры, впервые берущие в руки дрон и аналоговую камеру, получают большой дисплей с телеметрией, на котором видны все ошибки.
Дополнительные возможности системы
В процессе доработки появились две полезные функции. Первая называется «Порты FC». В настройках есть вкладка, где система опрашивает полётный контроллер и рисует таблицу: какой последовательный порт чем занят, на какой скорости работает и насколько корректно всё настроено. Тем, кто хоть раз пытался разобраться в кубе с восемью портами и восемью скоростями, эта вкладка сэкономит целый вечер.
Вторая функция — живой мониторинг приёмника GPS. На стенде установлен Mosaic-X5, геодезический приёмник. Система отображает его состояние прямо в браузере: радар с положением спутников, уровни сигналов, скорости портов и таблицу настроек с пометками о том, какие параметры хранятся только в памяти, а какие зашиты надолго.
Для отладки навигации это незаменимый инструмент. Раньше внутренний мир GPS-модулей был скрыт за консолью, а теперь открывается в удобном окне. Пока функция работает с приёмником Mosaic-X5, но это уже большой шаг вперёд.
Система развивается в направлениях, которые изначально не были очевидны. Начиналось всё с поддержки одной термокамеры, а теперь подключается любая камера, работающая по USB. Дальнейшее развитие зависит от обратной связи: запись видео с метками телеметрии, ночной режим с автопереключением источников, второй независимый канал для камеры-обозревателя, поддержка панорамы из нескольких CVBS на наземных комплексах. Самые частые запросы лягут в план следующих доработок, как это уже произошло с поддержкой аналоговых камер.