Выбираем OSD для коптера. OSD для ArduPilot Mega - система наложения данных телеметрии на полетное видео Не работает osd

Betaflight OSD (информация на экране) это интегрированная информация с различных датчиков в поток видео через полетный контроллер. Обычно OSD представляет из себя дополнительно устанавливаемую плату, либо уже интегрированный чип в полетном контроллере. OSD передает на экран шлема или очков такую информацию как вольтаж аккумулятора, горизонт, высоту и многое другое.

Вы также можете использовать меню OSD для изменения PID квадрокоптера, фильтры и других настроек. В этой статье я расскажу, что такое Betaflight OSD, что оно делает и как его настроить.

Betaflight OSD против MinimOSD (MWOSD)

Betaflight OSD проще и лучше, чем MinimOSD:

  • Первое — это уже интегрированный чип в полетный контроллер, не надо ничего паять и соединять, в то время как MinimOSD это отдельная плата, к которой нужно припаивать все компоненты квадрокоптера, такие как ПК, камера, видеопередатчик и так далее, смотря какие датчики вы будете использовать еще. Кроме того, нужен программатор, чтобы прошить этот модуль через компьютер.
  • Преимущества Betaflight OSD: простая настройка, так как все уже интегрировано. Настройка происходит в графическом интерфейсе Betaflight. Не нужно ничего припаивать, прошивать, не нужен программатор и сторонние прошивки модуля.
  • Betaflight OSD не занимает порт UART, так как обычно подключен к SPI BUS.

Хотя сейчас MinimOSD уже довольно хорошо развит и тоже имеет графическую оболочку и схожие характеристики.

Какие полетные контроллеры поддерживают Betaflight OSD

Не все полетные контроллеры с интегрированным OSD поддерживают Betaflight OSD, на некоторых требуется дополнительно ПО для настройки OSD.

На сегодня, Betaflight OSD поддерживают такие полетники: Matek F405, DYS F4 Pro, Kakute F4, Omnibus F4 и Betaflight F3.

Настройка Betaflight OSD

Сначала убедитесь, что у вас последняя прошивка у контроллера полета, так как OSD поддерживается в прошивках Betaflight V3.1 и новее.

Если в вашем полетнике уже интегрирован OSD чип, просто подсоедините камеру и видеопередатчик в соответствующие порты.

Ниже пример, как подсоединить камеру и передатчик к полетному контроллеру DYS F4 Pro FC, камера коннектится к «Vin», а передатчик к «Vout»:

Теперь подсоединитесь к Betaflight Configurator, перейдите во вкладку Configuration и включите OSD:

После этого перейдите во вкладку OSD, чтобы приступить к настройке:

Что может быть проще этого интерфейса? Просто включайте и выключайте нужные для отображения данные.

Video Format — выберите PAL или NTSC, в зависимости от того, в каком режиме работает ваше FPV камера. Если вы не знаете, в каком режиме работает камера, поставьте AUTO, программа сама выберет нужный формат для работы камеры.

Важная информация : если экран предварительного просмотра в режиме PAL или AUTO, а ваша камера работает в NTSC, данные которые показываются внизу экрана, будут обрезаться, это особенность данного формата, у него более короткий кадр. При использовании формата AUTO, лучше располагать нужные вам данные на середине экрана.

В блоке «Alarm» можно настроить значения RSSI, емкость аккумулятора, время предварительного полета (секундомер) и высоту. Как только данные начнут соответствовать этим цифрам, они начнут мигать на экране шлема или очков.

В окне пред.просмотра можно перетаскивать отображаемые данные как угодно, но не ставьте их слишком близко к краям, потому что они потом могут обрезаться.

  • Отображение напряжения аккумулятора
  • Время полета (секундомер)
  • Имя (своё))
  • Значения газа
  • Сколько дрон потребляет тока
  • Сколько тратится емкости аккумулятора mAh

Чтобы активировать меню OSD в очках или шлеме, нужно комбинацию движений стиками на пульте:

  • газ по центру
  • yaw (рыскание, кручение по оси) влево
  • pitch (тангаж, наклон) вперед

Газ должен находиться на середине все время настройки!

Чтобы двигать по меню, используйте правый стик на пульте. Чтобы листать — стик вверх или низ, чтобы выбрать пункт меню — стик влево/вправо.

Здесь можно менять PID’ы, фильтры, профили и так далее. Большая часть этих настроек не требует объяснений, если вы уже производили настройки в Betaflight через графический интерфейс вкладки OSD. Но здесь все равно не все есть пункты, некоторые доступны только в самом конфигураторе. После того, как внесете настройки, перейдите в главное меню и нажмите «Save * Reboot «.

Как поменять шрифт в Betaflight OSD

Если вам не нравится шрифт, который показывается на экране, его легко можно поменять в Betaflight Configurator, для этого перейдите во вкладку OSD и там будет внизу кнопка Font Manager:

После выбора нового шрифта, в окне пред.просмотра все равно будет показываться дефолтный шрифт, но в очках и шлеме у вас будет тот, который выбрали, так что не волнуйтесь.

Часто задаваемые вопросы

Почему у меня не отображаются данные с OSD в шлеме?

Проверьте, правильно ли вы указали формат видео, PAL или NTSC, попробуйте поменять местами. Если все равно не работает, проверьте проводку и качество пайки от камеры и передатчика до модуля OSD.

Как поменять имя?

В Betaflight, вкладка Конфигурация, прокрутите вниз, там будет текстовое поле «Craft name», вот туда можете вписывать другое имя.

В этом руководстве мы рассмотрим обе версии: обычную и Micro, разберемся как настраивать и использовать прошивку MW-OSD, а также, как подключать к Naze32 и приемнику.

Что такое MinimOSD и Micro MinimOSD

Несмотря на то, что настройка значительно сложнее чем прочие OSD, типа Super Simple OSD или E-OSD, которые вставил и они сразу работают, MinimOSD имеет множество преимуществ, а внешний вид экрана полностью настраивается.

Наиболее полезные функции: отображение координат GPS, настраиваемые стили и шрифты, используя экранное меню можно менять коэффициенты ПИД регуляторов, рейты и т.д. Пример того что можно отобразить на экране.

Настройка ПИД коэффициентов через меню:

Размеры, вес, распиновка, пайка для уменьшения габаритов

Полноразмерная версия MinimOSD

Эта OSD существует уже много лет. Плюс этой версии (MinimOSD с KV Mod), в том, что у нее сбоку есть контакты для подключения датчика тока, RSSI, датчика напряжения и т.д. Раньше, мы должны были сами очень аккуратно припаивать провода прямо к ножками чипа и это было очень сложно. Эта версия сильно облегчила жизнь. Я себе купил одну такую плату (версия 2)

Размеры MinimOSD с KV Mod V2: ширина 21mm, длина: 43mm, вес: 5.5g (включая разъемы).

Micro MinimOSD

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

Микро версия примерно 1/3 полной по весу и размеру.

Паяем разъемы

Припаять разъемы к полноразмерной версии MinimOSD было легко и просто, но что касается микро версии, мне не нравятся способы которыми народ обычно припаивает их

Мой креатив: нужно использовать угловые разъемы вместо прямых, так что у меня появляется дополнительное свободное место при установке внутри коптера.

В самом конце упаковываем в термоусадку для защиты пайки и проводов.

Подключаем к Naze32, аккумулятору, приемнику, камере, видео передатчику

Сборка моего коптера очень простая. Тут на схеме все что должно быть соединено: Naze32, LiPo, приемник, FPV камера и видео передатчик.

Схема соединения обычной MinimOSD с Naze32, камерой, приемником, видео передатчиком, аккумулятором.

Как подключить микро версию:

Часто задаваемый вопрос 1. Некоторые жалуются на то, что текст пропадает при увеличении газа. Решение: подключить всю электронику — камеру, OSD, видео передатчик к общей земле.

Часто задаваемый вопрос 2. OSD не отображается, только картинка с камеры. Решение: попробуйте поменять стандарт PAL/NTSC в настройках OSD.

Контакт VBAT1 подключается к основному литиевому аккумулятору, чтобы показывать напряжение. Контакт RSSI подключается к приемнику управления, чтобы отображать уровень сигнала (в случае если приемник это FrSky D4R-II, в режиме CPPM, тогда Pin1 — это PPM сигнал, PIN2 — выход RSSI).

Подключение к Naze32 через последовательный порт (TX и RX) позволит Naze32 передавать полетные данные на экран (GPS, направление по компасу и т.д.), а OSD сможет менять ПИД коэффициенты полетного контроллера, при помощи пульта управления.

Будьте внимательны! Подключение к компьютеру использует тот же самый последовательный порт, это значит, что если вы хотите использовать Baseflight или Cleanflight configurator, то вы должны вначале отключить TX и RX от OSD.

Без подключения к последовательному порту MinimOSD будет работать самостоятельно отображая RSSI и напряжение.

Если вы используете Taranis в режиме PPM, прочтите эту статью: как получить RSSI на отдельном канале (без дополнительных проводов), англ.

Вот так это выглядит внутри моего мини квадрика.

Настраиваем при помощи MW-OSD GUI

Существует довольно много прошивок для MinimOSD, моя любимая Multiwii-OSD (mwosd). Текущая версия 1.3., ее конфигуратор — очень удобная программа. Экранное меню понятное, прошивка обновляется, имеется поддержка Cleanflight и Baseflight. Еще она позволяет настраивать ПИД коэффициенты прямо через экранное меню.

Подключаем MinimOSD к FTDI программатору

Как для настройки так и для прошивки требуется FTDI адаптер. Подключение идет по 5 проводам: DTR (GRN), TX, RX, 5V и GND.


Настраиваем MinimOSD при помощи MW-OSD GUI

Через графический интерфейс можно настроить отображение любых полетных данных. Т.к. я летаю на миникоптере, все что мне нужно — это напряжение аккумулятора, RSSI и таймер. Я использую литиевые аккумуляторы 4S, и предупреждение о низком заряде установлено на 13.6В (3.4В на ячейку, хотя я должен поставить порог повыше). Для конфигурации 3S, напряжение при котором появляется предупреждение можно поставить на 11В. Я использую FPV в формате PAL

Единственная вещь о которой стоит побеспокоиться, это напряжение аккумулятора. Значение по умолчанию далеко от идеала, так что вы должны поиграться с настройками, чтобы получить корректное значение. Как я это делаю:

Значение по умолчанию для «voltage adjust» = 200, и напряжение показываемое OSD было 21.0В. Я взял мультиметр, замерил напряжение на аккумуляторе, и получил 11.1В (вместо мультиметра можно использовать сирену с вольтметром, типа такой, прим. перев.)

Теперь уменьшим значение «voltage adjust «до 110, теперь на экране OSD у меня отображается 11.5В. Чтобы избежать постоянных изменений параметра туда-обратно, мы должны посчитать точное значение при помощи математики и информации которая у нас уже есть 🙂 Мы должны вычислить сколько вольт дает 1 значение параметра «voltage adjust».

(21.0-11.5)/(200-110) = 9.5/90 = 0.1056

Мы знаем что правильное значение на экране должно быть 11.1В, так что значение «voltage adjust » должно быть:

110 — (11.5-11.1)/0.1056 = 106.21 (106 подойдет)

Значение «voltage adjust » можно поменять не только в конфигураторе, но и через экранное меню, так что не нужно подключать MinimOSD к компьютеру и использовать конфигуратор.

Arduino в качестве программатора для MinimOSD?

Я пробовал использовать мою Arduino UNO в качестве FTDI программатора (англ.), как я это делал ранее для других устройств. У меня получилось менять параметры OSD через программу MW-OSD GUI. Однако я столкнулся с проблемой при перепрошивке MinimOSD, сообщение об ошибке было:

avrdude: stk500_getsync(): not in sync: resp=0x00.

Похоже какая-то проблема с синхронизацией данных, но я убедился что правильно подключил DTR к RESET на плате Arduino, не знаю что еще можно сделать, так что я использовал свой FTDI программатор для перепрошивки MinimOSD.

OSD Меню: настраиваем ПИДы, Rate, напряжение, RSSI

Меню OSD (OSD Menu) это моя самая любимая фишка, и в основном поэтому я отказался от SuperSimple OSD. Есть очень много параметров, которые Вы можете изменить без подключения к компьютеру. Например, я могу менять значения ПИД коэффициентов прямо в поле, используя свой пульт, без bluetooth и компьютера! Однако нельзя поменять параметры roll rate и pitch rate по отдельности в Cleanflight (англ.), в настоящий момент они связаны (можно менять только сразу оба, прим. перев.) В новой версии эти параметры будут независимыми.

Чтобы попасть в меню MW-OSD вначале нужно дизармить коптер, затем:

  • газ в середину
  • рысканье (yaw) — вправо
  • тангаж (pitch) — вперед.

Чтобы перемещаться по меню:

  • Крен/тангаж (pitch/roll) — для перемещения по меню
  • Рысканье (yaw) — для изменения значений
  • PID Config (Roll/Pitch/Yaw PID для различных полетных режимов)
  • RC Tuning (RC Rate, RC Expo, Pitch/Roll Rate, Yaw Rate, TPA (Throttle PID Att)
  • Voltage (показывать или нет напряжение, значения «Adjust Voltage», «Voltage alarm», «Cells»)
  • RSSI (показывать или нет)
  • Current (показывать потребляемый ток или нет, его настройка)
  • Advanced (единицы измерения: метры/дюймы, сигнал: Pal или NTSC, компас)
  • Display (переключатели, газ, GPS координаты, датчики, подвес и т.д.)
  • Статистика (расстояние, макс. высота, макс скорость, время полета)

Перепрошивка

Некоторые продавцы MinimOSD сами прошивают последнюю версию, так что вам не нужно мучатся с перепрошивкой. Но может быть потом вам захочется обновить прошивку или попробовать другую, чтобы проверить версию прошивки включите OSD на коптере, и посмотрите надпись на экране загрузки.

У каждой прошивки в инструкции детально описано как прошивать. Это краткое содержание:

  • Скачать файлы прошивки.
  • Скачать Arduino IDE
  • Открыть файлы прошивки в Arduino IDE
  • Поменять настройки, если нужно
    • Я менял не много, только тип платы (WitespyV1.1) и прошивку полетного контроллера (Cleanflight)

  • Подключить FTDI адаптер (программатор) к MinimOSD / Micro MinimOSD
  • Нажать Compile и Upload

OSD — это полезное вспомогательное устройство для полетов по камере. В этой статье мы рассмотрим что такое OSD, как оно подключается к нашему FPV оборудованию, и, в заключении, обзор возможностей разных OSD.

Если у вас есть какие-то вопросы — дайте мне знать в комментариях.

Что такое OSD и какие у него преимущества

OSD значит On Screen Display — т.е. дисплей на экране или меню на экране (т.е. поверх основной картинки, как правило с камеры, отображается какая-то дополнительная информация, в основном текстовая). В нашем хобби OSD — это маленькая печатная плата, которая показывает полетные параметры поверх картинки с вашей камеры. Это позволяет следить за состоянием квадрокоптера прямо во время полета по камере.

Если у вас есть соответствующие датчики и OSD, то вы сможете увидеть полетные данные прямо в видео очках или на мониторе, например напряжение аккумулятора, какой ток потребляют моторы и другая электроника, вашу высоту, координаты GPS и т.д.

Это делает полет по камере более безопасным, потому что вы видите уровень заряда аккумулятора, знаете когда нужно приземляться, какую дистанцию уже пролетели и в каком направлении нужно возвращаться.

OSD не обязательна для полетов по камере, но как вы можете видеть, оно чрезвычайно полезно. Большинство людей покупают как минимум SimpleOSD, чтобы видеть напряжение на аккумуляторе, это нужно для того, чтобы избежать переразряда (если вы летите далеко, то пищалку-сирену сигнализирующую о низком заряде батареи не слышно).

Типы данных которые можно отобразить при помощи OSD

На картинке показан наиболее частоиспользуемый набор данных при полетах по камере.

Таймер

В зависимости от типа вашего OSD, это может быть время полета (считая от момента взлета) или время работы (начиная с момента включения квадрокоптера). Некоторые OSD позволяют отображать несколько видов таймеров.

Напряжение аккумулятора

Практически все OSD позволяют показывать напряжение. Это наиболее важная информация при полете по камере, так что вы знаете когда нужно приземляться (я обычно приземляюсь, когда напряжение падает до 3.5В на ячейку)

Потребляемый ток

Если у вас есть датчик тока, тогда можно отслеживать какой ток потребляют моторы и какая емкость в мАч вашего аккумулятора уже потрачена.

RSSI

RSSI — это индикация силы сигнала вашего передатчика, обычно показывается в виде процентов. Чем дальше вы улетаете, тем слабее будет сигнал, эта информация поможет узнать в какой момент вам следует повернуть назад.

RSSI — это выход с вашего приемника управления, обычно в формате PWM, так что возможно потребуется цифро аналоговый преобразователь и фильтр нижних частот.

Предупреждения

Некоторые OSD могут показывать разные сигналы тревоги, предупреждения, для этого вы как пользователь должны задать пороговые значения параметров, например напряжение аккумулятора, значение RSSI, и т.д.

Режим полета

Показывает текущий режим полета вашего коптера. Эта информация будет полезна, если вы часто переключаетесь между разными режимами, типа Loiter (зависание на месте), ручной режим, режим самовыравнивания, так что у вас не возникнет вопрос, в каком режиме сейчас коптер. Для этого придется подключить полетный контроллер к OSD.

GPS

Используя GPS вы получаете не только координаты дрона, но еще и его высоту (хотя она будет более точной, чем при использовании барометра или сонара). Благодаря хитрым вычислениям, мы сможете увидеть скорость относительно земли, расстояние до точки старта и ее координаты (графическое отображение направления в сторону точки старта — очень полезная штука, особенно если вы немного потерялись).

Горизонт

Виртуальный горизонт, поможет понять как дрон наклонен в пространстве.

Подключение OSD в камере, видео передатчику и полетному контроллеру

Я бы разделил все OSD на 3 типа:

  • Автономные OSD
  • OSD зависимые от полетного контроллера
  • Гибридные

Автономные OSD подключаются только к камере и видеопередатчику, и не общаются с полетным контроллером. Иногда их можно подключить напрямую к GPS или другим датчикам, чтобы иметь доступ к их показаниям. Хороший пример этого типа — Skylark OSD (+GPS и датчик тока) и Super Simple OSD.

OSD зависимые от контроллера полагаются на данные только с полетного контроллера, обычно они приходят через последовательный порт (RX/TX). Само по себе OSD не делает ничего кроме отображения этих данных. MinimOSD с Hobbyking — это хороший пример такого типа OSD (если версия без модификаций, типа KV mod). Преимущество этого типа в том, что OSD использует данные полученные от датчиков контроллера, а значит эти данные использует и сам контроллер для упрощения управления и контроля. К то время как в случае автономных OSD, данные с датчиков подключенных к OSD не могут быть использованы полетным контроллером.

Гибридный тип OSD может использоваться как автономное OSD (с ограниченной функциональностью), а также может быть подключен к контроллеру для увеличения набора отображаемых полетных данных. MinimOSD с KV mod — отличный пример такого типа OSD: если используется как автономное, то можно увидеть только RSSI и напряжение, но когда оно подключено к контроллеру с GPS, тогда увидите текущий полетный режим, GPS координаты, высоту и т.д.

Простейшее подключение — автономное OSD

Как пример — подключение Hobbyking Super Simple OSD к FPV камере, видео передатчику и литиевому аккумулятору 3S.

Теоретически вы можете отслеживать напряжение на втором аккумуляторе используя порт Bat2.

Подключение гибридных OSD

Замечу, что в этом случае OSD самостоятельно измеряет напряжение аккумулятора и уровень RSSI (хотя есть возможность подключить их к контроллеру и передавать данные через его последовательный порт, оба варианта прекрасно работают).

Если необходимо отобразить координаты, направление на точку старта и расстояние до нее, то нужно подключить GPS к Naze32.

OSD которые я уже использовал

MinimOSD с KV Team Mod

В настоящее время MinimOSD — это мое любимое OSD, и именно его я и использую. При загрузке соответствующей прошивки MinimOSD можно использовать с платами Naze32, CC3D, Multiwii, APM и PixHawk. Это очень хорошая плата, которая может отображать абсолютно любую полетную информацию, которая доступна с датчиков.

MinimOSD может отображать любую информацию доступную с датчиков

Hobbyking и Banggood продают MinimOSD, но у них оригинальная версия, у которой нет дополнительных контактов с боку для RSSI, напряжения аккумулятора и т.п. Я бы не стал с ними связываться, если есть возможность купить MinimOSD KV Mod.

MinimOSD Micro

Точно такое же OSD, как и описано выше, разница — меньший размер. Кроме того, на ней нет преобразователя 12В -> 5В, но это не важно, т.к. все равно никто этот преобразователь не использует из-за перегрева платы.

BrainFPV

Эта плата также показывает все что угодно, при наличии соответствующих датчиков.

В статье рассмотрим подключение, прошивку и настройку MinimOSD. А так же ответим на вопрос, что делать — если что-то пошло не так, и что делать — чтобы не кончилось всё печально.

«Петька — приборы!?!? -Триста!!! -Что триста??? -А что приборы?»

MinimOSD. Дешевая и очень полезная платка. Позволяет видеть что происходит сейчас с коптером — текущий вольтаж, сколько истрачено ампер, сколько захвачено спутников глобального позиционирования, а так же не даст «заблудиться» в небе. Заблудиться в небе невозможно, скажете? А вот и очень даже возможно. Начиная от элементарного «взлетел, ой а сверху всё по-другому… ой, а где я сам нахожусь?», заканчивая сложными полетными условиями, например полеты в темноте или в осадки или случайно в облако залетел, как на видео ниже:

На четвертой минуте только спасительная стрелка «домой» указывала, куда лететь.

Ладно-ладно, хватит лирики, даешь практику!

ПОДГОТОВКА.

Итак, вы заказали себе MinimOSD. На бангуде или на Хоббикинге или на РЦТаймере — да неважно где, и получили что-то навроде этого:

Руки так и чешутся подключить её к АРМ, и посмотреть — чего она показывает. Но этого как раз делать сразу и не надо! Чревато заказом новой ОСД — а это потерянное время (что главное) и конечно потерянные деньги.

На платке есть два больших чипа: ATMEGA328P и MAX7456. Первая микросхема (микроконтроллер, если точнее) — отвечает за коммуникацию с полетным контроллером («цифровая часть» платы). А вторая — одноканальный монохромный OSD (OnScreenDisplay — меню на экране) фирмы Maxim, назовем её «аналоговая часть» платы. Так вот, эта MAX7456 — достаточно капризная микросхема. Она не любит перегрева, не любит резких скачков между «цифровой» землей и «аналоговой» — короче горит легко. А как назло, ленивые китайцы НИКОГДА не пропаивают штатный теплоотвод микросхемы (на «пузике»). Если использовать платку в том виде, как она пришла — МАХ сгорит — гарантия 80%. Чтобы этого не случилось пропаиваем три дырки, отмеченные на фото ниже.

Для этого вставляем тонкий припой (диаметром 1 мм, желательно чтобы он был сразу с флюсом) в дырочку и греем паяльником:

И вот результат (пайка не очень, но как умею — у вас получится лучше!)

Теперь об особенностях подключения. Внимательные обратили внимание, что я пропаял перемычку сверху. Есть несколько способов подключения MinimOSD, и много копий сломано, который лучше или правильнее или дает меньше помех. Я использую способ подключения с объединением цифровой и аналоговой земель и запиткой от 5 вольт со стороны «цифровой» части. Так как minimOSD потребляет достаточно много, то лучше запитать плату от отдельного источника питания. Это выглядит почти вот так:

То есть вверху я запаял перемычку, объединив тем самым земли. И ещё нужно одну перемычку капнуть, на «лицевой» стороне платы.

ПОДКЛЮЧЕНИЕ И НАСТРОЙКА

Ну вот, все распаяли, теперь наша платка готова к подключению к компу. Для этого нам потребуется FTDI адаптер (например на , или любой другой USB-UART TTL - адаптер).

Подключаем с помощью 5 проводков, схема подключения следующая: 1. GRN, 2. Tx, 3. Rx, 4. +5V, 5. GND (со стороны ОСД) — соединяем их с FTDI адаптером 1. DTR, 2. Rxi, 3. Txo, 4. VCC, 5. GND. Вот фотка, как это соединено у меня:

Если непонятно, смотрим вот это видео, особенно внимательно на 1:03

Теперь, что качать и чем настраивать. Для начала скажу, что для коптеров и для самолетов прошивки отличаются. Так же есть прошивка для Мультивии (kvTeam), и так же есть отдельные моды — от самостоятельной работы (без полетного контроллера), до подключения даже к Назе.

Но здесь мы рассматриваем «классический» случай — коптер на контроллере АРМ. официальная страничка проекта. страничка загрузки (для коптера под АРМ надо грузить ExtraCopter). Но это старые версии, люди с тех пор достаточно много модифицировали. Современные прошивки лежат вот в . На момент написания статьи, это прошивка R800, лежит (пользователь MinimOSD_Extra, пароль Top_Secret), на Я.Диск.

В архиве лежит сама прошивка (HEX — файл), файл с шрифтами (mcm — файл), и сама программа (OSD_Config.exe).

Для начала зайдем в диспетчер устройств и проверим скорость порта FTDI (поставим 115200):

Запускаем программу OSD_Config.exe, выбираем порт, нажимаем кнопочку «Read From OSD», дожно быть сообщение о успешном чтении. Так как с завода залита неизвестно какая прошивка, чтобы не иметь проблем в будущем, зальем свеженькую. Для этого нажимаем меню Optios>Update Firmware

выберем файл и загрузим её.

Получим сообщение об успешной прошивке

Потом контроллер проинициализируется и загрузит настройки в программу, о чем сообщит

Пришла пора загрузить файл с шрифтами, который соответствует прошивке (если этого не сделать, внешний вид ОСД может оказаться очень смешным или вообще нечитаемым). Нажимаем меню Option>Update Charset,

выбираем MCM файл и заливаем его

Дожидаемся готовности

После заливки контроллер опять инициализируется.

Немного поясню:

RSSI channel — перевод RSSI в проценты. Где 5 вольт — это 255 (максимум в восьмиричной системе). А у приемника FRsky максимум сигнала — 3.3 вольта. Если поставить галочку RSSI enable RAW — то на экране FPV мы увидим «сырые» данные. Именно их мы можем и вбить в настройки. А можете просто вбить мои значения.

Еще одна тонкость — переключение экранов OSD . Как вы заметили, есть две панели для данных. Мы можем переключаться в три варианта отображения — экран1 (Panel1), экран2 (Panel2), чистый экран без данных (Disabled). Для этого нужно сначала определиться, как именно мы будем переключаться между экранами. Например, если мы будем переключаться между экранами с помощью крутилки или трёхпозиционного тумблера — тогда у нас будут три диапазона значений по каналам (Panel1: 0-1233, Panel2: 1233-1467, Disabled: 1467-1701). В этом случае крыжик Rotation Switching нужно выключать. А если мы будем переключаться простым двухпозиционным тумблером, тогда имеет смысл Rotation Switching включить. При этом, когда включен тумблер, у нас будут по очереди переключаться экраны (Panel1 -> Panel2 -> Disabled -> Panel1 ……), стоит тумблер выключить — переключение между экранами остановится. Какой именно канал будет переключать экраны — определяется в раскрывающемся списке, озаглавленном OSD Toggle Channel. Я повесил на канал номер 6. И есть ещё одна засада, которая некоторых (включая меня) поначалу сбивает с толку — Warning Auto Panel Switch. В этом списке определяется, на какой из экранов переключаться в случае возникновения какого-нибудь из определенных ранее предупреждений. Казалось бы, всё ясно. Летишь себе, что-нибудь в полете случилось, ОСД переключилось на тот экран, который задал. Но вот вопрос — мы задали переключение между экранами, как правило это настраивается дома, коптер не летает, хотим проверить — экраны не переключаются! А потому, что дома как правило нет GPS Fix’а — короче сработало предупреждение! Вот и «не работает» переключение между экранами… 🙂

Не знаю, нуждаются ли в пояснениях остальные параметры, возможно потом дополню статью.

Скажу только, что при настройке основного скрина не стоит пихать туда сразу всё. Лучше сначала всё выключить (в столбике слева), а уж потом включать только то что надо и сразу размещать в нужную часть экрана. Рекомендую оставить пустое место по краям экрана, может обрезаться монитором или DVR писалкой или очками.

Далее, ещё один важный момент — настройка OSD в Mission Planner . Предположим, вы подключили всё как надо, но вместо веселых циферок и авиагоризонта — видим скучную надпись «No Mavlink Data». Это означает, что ОСД работает, она рада бы что-то вам показать, но не получает данных. То есть на пин Rx никаких данных от АРМ не приходит. Первая возможная причина — перепутаны провода при подключении. Проверьте чтобы Rx от ОСД был соединен с Tx порта на АРМ. Вторая возможная причина — сам контроллер не настроен, чтобы слать данные в СОМ-порт. Для этого в простом случае на вкладке INITIAL SETUP > Optional Hardware > OSD — надо тыкнуть кнопку Enable Telemetry. При этом МП автоматически настраивает ряд параметров, которые позволяют посылать данные на ОСД. Если эта волшебная кнопочка не помогла, тогда придется настраивать всё рученьками. Для этого идем в вкладку CONFIG/TUNING > Full Parameter List, листаем до буквы S, и проверяем (или исправляем) значения параметров:

  • SR0_EXT_STAT = 2
  • SR0_EXTRA1 = 5
  • SR0_EXTRA2 = 2
  • SR0_EXTRA3 = 3
  • SR0_POSITION = 2
  • SR0_RAW_SENS = 2
  • SR0_RC_CHAN = 5

Если же данные всё ещё не идут, и мы по-прежнему наблюдаем унылую надпись «No Mavlink Data», тогда надо проверять в тот ли порт подключена ОСД (в статье говорится про UART0), возможно вам пригодятся параметры SR1 (те же, как описаны выше, только для порта UART1). Возможно так же, что у вас не работает ОСД вместе с модемом телеметрии — в этом случае возможно придется подключить или наоборот отключить провод Tx на ОСД. Есть ещё глюк, что ОСД не работает, когда подключен USB провод к компьютеру. А возможно у вас просто перепутаны провода…

Ещё поделюсь одной фоткой. На моем контроллере из-за краша перестал работать основной порт под телеметрию, я просто подпаялся на UART0. А потом мне понравилось такое подключение.

Здесь я запитал напрямую от контроллера. Но надо ОБЯЗАТЕЛЬНО проверить, что осталось от 5 вольт самому контроллеру. В моем случае запитка самого контроллера идет от приемника, и там настроено чуть выше 5 вольт, чтобы с учетом приемника и minimOSD, для самого APM было строго 5 вольт.

Нужно коснуться ещё одного момента. Если неправильно прошить OSD, может возникнуть ошибка «failed to talk to bootloader ». Эта ошибка дословно переводится как «ошибка разговора с загрузчиком». Она может возникнуть либо в случае перепутанных проводов, либо при слёте загрузчика. Если в случае с проводами всё понятно (смотрим выше, как подключать правильно), то в случае с загрузчиком — нужна процедура восстановления микроконтроллера.

Восстанавливаем Bootloader.

Для этого нам понадобится как минимум программатор. Удобнее пользоваться USBasp.

возможно вам понравится вот этот переходничок (ISP10<>ISP6)

или вот этот кабель (есть на )

В общем, так или иначе, подключаемся к ATMega328P с помощью программатора.

Распиновка разъема ISP на плате OSD соответствует общепринятой. Обычно первый контакт квадратный. Если не так, то лучше убедиться, проследив Vcc и GND.

На программаторе обычно пины подписаны, если нет, то обычно это выглядит так:

Для этого сначала выбираем тип программатора

Потом выбираем тип платы

И тип микроконтроллера

и ждем порядка минуты, пока зальется загрузчик (смотрим на зеленую строку состояния в нижней части)

Пока не появится сообщение об успешной прошивке загрузчика

(на ошибки внизу не обращаем внимания, надо обновить прошивку программатора)

Далее — идем в OSD_Config.exe, заливаем прошивку и шрифты, как было уже описано. Возможно, прошивку придется заливать дважды (один лишний раз нужен для правильной инициализации контроллера после заливки бутлоадера).

Ну вот вроде и всё. Вдруг кто не знает, есть ещё . Если что не понятно тут, можно «вживую» посмотреть там.

Успехов вам в деле установки ОСД на ваш коптер!

Всегда ваш, Ганиев Тимур - 5yoda5 .

5yoda5 # apmcopter

Update 11/11/2015: «Ну вот, все распаяли, теперь наша платка готова к подключению к компу. Для этого нам потребуется FTDI адаптер (например на РЦТаймере, или любой другой USB-UART TTL - адаптер).».

Update 11/03/2016: Добавлены изображения распиновки ISP.

Если вы нашли ошибку на странице, то нажмите Shift + Enter или , чтобы уведомить нас.

Для пользователей контроллеров APM для наложения данных телеметрии разработано специальное устройство - Minim OSD. Абривеатура OSD происходит от английского On Screen Display, которое обозначает отображение дополнительной информации на экране оператора.

Китайские производители делают как полетные контроллеры - HKPliot Mega, ArduFlyer, так и OSD-контроллеры - , MAVLink-OSD .

Внешне Minim OSD мало чем отличается от MAVLink-OSD, это как бы зеркальная копия платы, где основной чип повернут на 45 градусов. Также у MAVLink-OSD отсутствуют перемычки для выбора типа видеосигнала и объединения питания цифровой и аналоговой части.
У Minim OSD v1.0 были проблемы с перегревом при использовании питания камеры от 12 вольт, данная проблема была решена в версии v1.1.

В связи с тем, что у HK в конце 2013 года были проблемы с доставкой, то я заказал c RCTimer-а MAVLink-OSD.


Для программирования обязательно понадобится FTDI адаптер. Поэтому сразу вместе с MAVLink-OSD я взял и адаптер FTDI Tool V1.0 http://www.rctimer.com/product_684.html .

Чтобы выполнять настройку и прошивку устройства потребуется специальное программное обеспечение, называется оно ArduCam-OSD. Скачать последнюю версию программного обеспечения ArduCam-OSD и прошивку можно тут http://code.google.com/p/arducam-osd/downloads/list . На данный момент актуальная версия 2.0.

Также можно установить и альтернативную прошивку, проект называется minimosd-extra. Информация располагается тут https://code.google.com/p/minimosd-extra/ . Для прошивки потребуется своя утилита - MinimOSD-Extra Config Tool. Как правило, в архиве находится утилита и прошивка. Скачать можно тут https://code.google.com/p/minimosd-extra/downloads/list . Глаза разбегаются от количества версий.

Плату и адаптер обтянул в термоусадочную пленку.

У контроллера разъем для подключения очень неудобный, шести пиновый, без защиты «от дурака». Для программирования используются все контакты, а для подключения к полетному контроллеру только 4 контакта.

Для программирования остается найти кабель мини-USB.


Что касается четырех пинового разъема, то тут все сложнее. Если перепутать и подключить неправильно, то может пойти дым.
Подключается OSD к полетному контроллеру в разъем телеметрии. Провод к OSD нужно подсоединить к центральным контактам: GND, VCC, RX, TX.
Если используем радиомодем, то подключаем параллельно ему. Таким образом мне пришлось спаять Y-кабель.

На фото приведен провод для контроллера AIOP, у которого к одному разъему подключается еще и GPS.

Убирать провод, идущий к TX моей OSD, я не стал, чтобы он был универсальным, мало ли где буду этот провод еще использовать.

Следует заметить, что если не подать 5 вольт на аналоговую часть платы, то плата будет молчать.

На некоторых ресурсах предлагают, переделать плату и запитать аналоговую часть от цифровой, но я не стал этого делать, так как есть мнение, что могут появиться помехи.
Для тех кто решит подключить от одного источника питания, схема будет как приведено на фото.

У меня на данный момент аналоговая часть запитана от видео-передатчика, о котором я уже рассказывал в своей предыдущей статье .

ArduCAM OSD Config

Начнем с родной утилиты ArduCAM OSD Config. На данный момент актуальная версия 2.1.2.0.
Из основных элементов следует выделить меню программы, а также три закладки, переключающие между следующими экранами: Config, Panel 1, Panel 2.

Config, тут все предельно понятно.
Первым делом выбираем номер порта и жмем кнопку Read From OSD.


Следует заметить, что тип видеосигнала NTSC - PAL переключается через меню программы Video Mode. Пункт меню File позволяет сохранить и загрузить свои настройки, или перейти к настройкам по умолчанию. В меню Options можно включить режим сетки для Panel1 и 2, обновить прошивку, выбрать изображение подложки, использовать лог для настройки, добавить свои шрифты.


Panel 1 служит для настройки выводимой информации поверх видео для первого экрана. Переключение каналов настраивается на свободный канал радиоуправления OSD Toggle Channel.


Соответственно для второго экрана настраиваем Panel 2.


Обновление прошивки производится с помощью этой же утилиты.

MinimOSD-Extra Config Tool

Когда открываем программу MinimOSD-Extra Config Tool, кажется что перепутали папки и опять запустили ArduCAM OSD Config. Это первое впечатление, на самом деле очень похоже, но тут настроек больше.
Рассмотрим основные отличия.
Первым пунктом идет выбор типа модели: Plane, Copter.
Добавлена опция при возникновении предупреждения происходит автоматическое переключение экрана на заданный в ниспадающем меню (Warnings Auto Panel Switch). Нужно это когда, например, на втором экране убрана вся информация, чтобы взгляду ничего не мешало.
Для батареи можно выбрать отображение в процентах или в мА.
И еще один блок Show sign before value, который отвечает за отображение значков перед значениями.

Первый экран

Второй экран

Результаты

Сначала я установил прошивку через ArduCAM OSD Config.


Все в принципе было нормально, но беспокоил один нюанс, который выражался в следующем.

После подключения устройства, на экране заметил, что часть информации слева оказалась подрезана. Значки перед значениями параметров отсутствуют наполовину. Решил попробовать изменить тип сигнала на PAL, в итоге стало еще хуже, подрезало верхнюю и нижнюю часть экрана, поэтому вернул обратно NTSC. Пусть будет только с одной стороны, а не с трех, тем более, что слева можно попробовать подправить этот недостаток.


Перенес информационные блоки на один символ вправо.


Операция прошла безболезненно, места оказалось достаточно для этого.


В итоге все получилось, значки теперь видны полностью, информация прекрасно читается на экране.

А вот MinimOSD-Extra прошивка 2.4 R726 установилась, но на экран стала выдавать какое-то безобразие.


Изображение стало не читаемым, информация перепуталась на всем экране.


Скачал более раннюю версию 2.2.


С данной версией прошивки информация стала отображаться без искажений.

Выводы

Компактное и недорогое устройство. Достаточно универсальное, используется как с оригинальными платами ArduPilot Mega (APM), так и ее клонами HKPILOT Mega, ArduFlyer, а также с контроллерами серии AIO (All-In-One) с прошивками MPNG или MultyWii. На форумах есть информация о подключении к контроллерам DJI Naza, но для этого требуется поработать с паяльником в руках.

Единственный минус заключается в шести-пиновом разъеме на плате, в который подключаем кабель с четырех-пиновым разъемом. Вариаций может быть много, если ошибетесь можно сжечь плату, так как защиты нет никакой.

Также нужно не забывать запитывать цифровую и аналоговую части платы, иначе работать не будет. Какой способ питания выбрать, тут кому как удобнее будет.

Больше конечно понравилась MinimOSD-Extra, так как она позволяет выполнять дополнительные настройки, которых нет в ArduCam OSD Config. Но как выяснилось, еще нужно найти стабильную версию. Я столкнулся с тем, что с некоторыми прошивками нарушается вывод информации поверх видео. Мне удалось найти рабочую версию не с первого раза. Поэтому некоторые опции MinimOSD-Extra остались мне не доступными. К сожалению это минус многих открытых проектов.

Поэтому стоит отметить, что ArduCam-OSD Config является более стабильной и проверенной.

Контроллер выполняет качественное наложение информации на видео, текст выглядит довольно четко и легко читается на небольшом экране. Подтормаживаний по отображению информации мною не замечено.