27 декабря 2016

HUBOSD - почему пропадает видео?

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

На квадрике использовалась PDB HUBOSD. Квадрик имеет возможность передавать телеметрию на пульт. В том числе и напряжение на приемнике, то есть на всей шине 5 вольт, так как приемник питается от BEC на 5 вольт, расположенного на плате PDB. При резкой подаче газа, пульт изредка попискивал, сигнализируя о низком напряжении на шине 5 вольт. В эти моменты у квадрика пропадало видео. Пилоту на короткое время был виден просто черный экран.

Стал анализировать ситуацию. Если виден только черный экран, а не помехи, значит передатчик работает исправно. Так как с отключенной камерой видно так же черный экран. Если бы были проблемы с камерой, то был бы виден черный экран с данными OSD, но данных не было. Значит камера не причем, а видео пропадает на выходе с OSD.

Хорошо, виновник установлен - это блок OSD. Большинство современных OSD построены на микросхеме MAX7456. Это и популярная платка micro MinimOSD, и PDB HUBOSD, и другие платы PDB и полетные контроллеры со встроенным OSD. Отличается только полетный контроллер BrainFPV RE1, у него вывод OSD реализован мощностями процессора STM32F446RET6.


Посмотрев характеристики микросхемы MAX7456, обнаружил, что у нее очень узкий диапазон рабочего напряжения 4.75-5.25 вольта. То есть при резкой подаче газа, напряжение на шине 5 вольт проседало ниже 4.75 вольта и OSD просто отключалось! Стал выяснять, почему так происходит.

Для начала измерил напряжение на шине 5 вольт у трех различных плат HUBOSD. На одной из них было напряжение 5.13, на второй 4.90, а на третьей 4.95 вольт. Нормальный такой разброс! Так вот, на квадриках стояли только две платы с крайними значениями. У квадрика с напряжением 5.13 вольт никаких исчезновений видео не было, даже при самой жестокой нагрузке на аккумулятор (там стоят двигатели DYS SE2205 2300kV). А у квадрика с напряжением 4.90 видео пропадало даже при резком развороте!

Импульсный стабилизатор напряжения на 5 вольт у большинства популярных плат PDB, типа Matek PDB и HUBOSD, построен на микросхеме MP2315. По документации, микросхема способна выдерживать ток до 3А. Так что вряд ли полетный контроллер, приемник, OSD, светодиоды, пищалка и камера, висящие на шине 5 вольт, вместе могут потреблять больше трех ампер.


То есть провал напряжения обусловлен не большой нагрузкой на шину 5 вольт, а особенностями работы стабилизатора MP2315. Может он не успевает среагировать на изменение внешнего напряжения, может еще что - не вникал. Для себя просто сделал вывод, что надо поднять напряжение на шине 5 вольт чуть выше, до 5.10-5.15 вольт, тогда, как показала практика, видео пропадать не будет.

Можно еще использовать костыль в виде дополнительного большого конденсатора на шине 5 вольт. Частично это решит проблему - проверено. Но если квадрик будет совершать какой-либо длительный силовой маневр, то при его завершении вас будет ждать сюрприз - исчезновение видео:) Да, конденсатор необходим, но он не решит проблему радикально.

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


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


Резисторы были промаркированы: RT - 30C, R1 - 54C, R2 - 682. Обратившись к таблице кодов, узнал номиналы резисторов: RT - 20кОм, R1 - 35.7кОм, R2 - 6.8кОм. Попробую рассчитать выходное напряжение для этого набора резисторов, используя формулу из документации MP2315, которую привел выше, приведя ее к соответствующему виду:

V = 0.8*((R1/R2) + 1)
V = 0.8*((35700/6800) +1) = 5В

Да, в теории номиналы резисторов подобраны правильно, расчетное напряжение получается 5 вольт. Но не учитываются такие факторы, как разброс значений при производстве резисторов:) Не все резисторы, промаркированные одинаково, будут иметь одинаковое сопротивление. Из-за этого и происходит разброс значений напряжения у одинаковых плат. Нет вины производителя, нет вины проектировщика платы, проблема исключительно в разбросе значений сопротивления компонентов. Так что, кому-то достанется плата с напряжением на шине 5 вольт в 5.13, а кому-то может и с напряжением в 4.90. Как повезет.

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

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

R2 = R1/((V/0.8) - 1)
R2 = 35700/((5.15/0.8) - 1) = 6565Ом

Сопротивление с таким номиналом найти будет крайне трудно, поэтому пойду по другому пути. Вспомнив курс электротехники, решил просто подобрать дополнительное сопротивление и припаять его сверху к резистору R2, который на 6.8кОм. При параллельном соединении резисторов значение результирующего сопротивления вычисляется по формуле:

R = 1/(1/R1 + 1/R2)

Поскольку результат-то уже известен, то есть R = 6565Ом, надо вычислить величину дополнительного сопротивления. Пусть дополнительное сопротивление будет R1, а известное нам R2 = 6.8кОм:

R1 = 1/(1/R - 1/R2)
R1 = 1(1/6565 - 1/6800) = 189965Ом

Да уж, резистор и с таким номиналом будет не найти:) Но тут уже допустимы приблизительные величины. Просто надо найти резистор на 180кОм - это возможно. Перерыв весь свой хлам, я нашел резистор! Он промаркирован цифрой 184. Попробую вычислить величину итогового сопротивления:

R = 1/(1/R1 + 1/R2)
R = 1/(1/180000 + 1/6800) = 6552Ом

Подставлю результат в формулу расчета выходного напряжения, где R2 = 6552Ом:

V = 0.8*((R1/R2) + 1)
V = 0.8*((35700/6552) +1) = 5.15В

Ну вот, все вполне подходит! Смело припаиваю резистор на 180кОм поверх резистора на 6,8кОм и проверяю результат.


Как и ожидалось, напряжение на шине 5 вольт немного поднялось и составило 5,10 вольт. Немного меньше расчетного, но вполне достаточное, чтобы микросхема MAX7456 перестала отключаться. Хотя на этой плате напряжение и было 4.95, а поднялось до 5.10, то есть вполне расчетно и с учетом погрешности:) На второй плате, уже установленной на квадрик, с помощью резистора на 150кОм удалось поднять напряжение с 4.90 до 5.12 вольт.

Экспериментальным путем выяснил, что напряжения в 5.10 вольт недостаточно, видео все равно пропадает при резком сбросе газа и напряжение просаживается до 5.01-5.02 вольта. Надо поднимать еще выше, до 5.15 вольта.

Таким способом можно регулировать выходное напряжение на любом импульсном BEC с микросхемой MP2315, да и с большинством других, если найти их документацию.

При неправильных расчетах и неверно подобранном резисторе можно легко и непринужденно спалить микросхему MAX7456. Так что снимаю с себя всю ответственность:) Если кто-нибудь будет повторять сей эксперимент, то будет делать это на свой страх и риск!

Теория подтвердилась практикой. Видео больше не пропадает при любых нагрузках! Напряжение на шине 5 вольт так же больше не просаживается ниже пяти вольт:) Не нужны никакие дополнительные конденсаторы. Проблема решена навсегда!



Подведу итог. Если вы используете OSD на микросхеме MAX7456 и у вас при резкой нагрузке пропадает видео на квадрике, то обеспечьте надежное питание микросхеме в 5 вольт и следите за тем, чтобы напряжение не опускалось ниже порогового значения в 4.75 вольта. Вот и все, удачных полетов!

34 комментария :

  1. Ну вот наконец-то разобрался умный человек! Спасибо!
    Конечно, пора бы самим производителям начать контролировать качество своей продукции.

    ОтветитьУдалить
  2. Отличная статья, спасибо. Что за прошивка на devo10 и какой приёмник?

    ОтветитьУдалить
  3. Супер! Вот молодец! Надо бы обратить внимание на напряжение на своей плате!
    Вопрос - достаточно будет посмотреть значение напряжения с телеметрии приемника? Приемник тоже Orange rx620x! И еще вопрос - как вы сделали, чтобы передавал приемник напряжение батареи? Знаю, что есть выход на приемнике. К чему на HUBOSD вы подключили этот выход? И еще такая проблема- аппа спектрум dx6i, приемник оранж 620, теряется связь примерно на 80 метрах. Антенны расположены вертикально под 90 буквой V. Почему теряет связь?

    ОтветитьУдалить
    Ответы
    1. Да можно и тестером посмотреть - без разницы. На приемнике есть разъем, к которому можно подвести просто два проводка напрямую от аккумулятора. В статье по сборке квадрика их видно. Небольшой разъем, подпаянный к VBAT на полетнике и затем вставленный в единственный разъем сбоку на приемнике.

      Удалить
    2. Т.е. телеметрия на аппаратуре точно показывает напряжение 5-тивольтовой линии?

      Удалить
    3. Вполне точно. По крайней мере на этом экземпляре приемника:)

      Удалить
    4. А про антенны (потерю связи) что можете посоветовать?

      Удалить
    5. Тут только с другим пультом если попробовать, чтобы выявить виновника. Антенны точно не повреждены? К сожалению пульт DX6i видел только на картинках:)

      Удалить
  4. Aaaa скиньте пожалуйстотпрошивку сам фаил под деву буду оченьблогодарен!!!

    ОтветитьУдалить
  5. Пришла платка, но благодаря статье был во всеоружии ))
    Замерил 4.9В, буду лечить.
    Подскажите размер резистора - 0603?

    ОтветитьУдалить
  6. Припаял резюк, поднял напряжение с 4.95 до 5.12в - один фиг при резком газе ОСД начинает жить своей жизнью. Причем интересно, что иногда, в середине полета, хлоп и нормальные показания двет (причем видно что отсчет ведет от старта). Но в основном пропадает таймер и счетчик mah

    ОтветитьУдалить
    Ответы
    1. А видео не пропадает, только с данными проблема? Может прошивку поновее попробовать поставить. Я ставил 3.3.
      Кстати, сегодня обнаружил еще одну проблему. Оказывается видео пропадает не только при низком напряжении, но и при высоком. Поставил себе напряжение на 5.18. Пока газ топишь в пол - все нормально. Если резко сбросил - видео пропало. Буду понижать.

      Удалить
    2. Высоким напряжением можно и спалить микруху. У меня проблема только с данными. Прошивку обновил, еще не проверял. Стояла 3.2, но думаю дело не в ней. Наверное надо еще кондер припаять. Кстати, тут выясняется, что проблемы в основном у квадратной версии ПДБ, и это похоже на правду. Прямоугольная у меня тоже есть, и она глючит только когда на нее вода попадает, а так работает без нареканий.

      Удалить
    3. Ничего себе, это все таки не из-за высокого напряжения у меня сегодня видео пропадало, а наоборот! Это у меня телеметрия врет, показывает 5.18, а на деле тестер показывает 5.08, а в полете просаживалось до 5.11, то есть с учетом погрешности телеметрии до 5.01. Буду еще поднимать напряжение.

      Удалить
    4. Поднял напряжение до 5.11 резистором на 150кОм и видео больше не пропадает. То есть напряжения в 5.08 еще мало, надо больше поднимать.

      Удалить
    5. Не, все равно в полете сегодня стало пропадать. Дома в руках не пропадало. 5.11 - мало. Разозлился и поднял до 5.19! Если и после этого будет пропадать - ну я уж не знаю...

      Удалить
  7. Я припаял 150кОм и у меня поднялось с 4,95 до 5,2. Не многовато ли?

    ОтветитьУдалить
    Ответы
    1. Если все работает, то нормально. Я тоже себе поднял до 5.19, а то на морозе стало пропадать.

      Удалить
    2. Только что с мороза прилетел, вообще беда.

      Удалить
  8. Откуда вы береты эти резисторы? И какой они мощности? Там есть разные! 2вт, 0.25 вт, а так какой выбрать то? Покажите какой именно вы припаивали? Спасибо)

    ОтветитьУдалить
    Ответы
    1. Да любой мощности, лишь бы по размеру подошел. Резисторы выпаивал со старых плат от разного компьютерного железа: CD-приводы, звуковые- сетевые- видео-карты, материнские платы, роутеры, прочее... Так на последней фотографии видно, где два резистора стопочкой стоят, где R2 обозначен. Верхний и припаивал.

      Удалить
    2. как на старой плате(приводы, роутеры и тд.) понять где резистор и какое у него сопротивление?

      Удалить
    3. Они черные и подписаны цифрами. Например на 150кОм будет подписан цифрой 154, на 180 - 184, на 120 - 124.

      Удалить
  9. Где резистор такой купить? я правильно понял что в итоге на 150кОм нужно паять? Блин если бы знал, что такая фигня с этой платой будет не стал бы брать. Такие мелкие штуки еще паять не доводилось.

    ОтветитьУдалить
    Ответы
    1. Нет, не на 150кОм. Для каждой платы нужно подбирать индивидуально в диапазоне 120-180кОм в зависимости от текущего напряжения. Резисторы есть в Чипе-и-Дипе или на радио-рынке. У одной платы может вылечиться поднятием напряжения до 5.1, а у другой до 5.2 будет в самый раз.

      Удалить
    2. Этот комментарий был удален автором.

      Удалить
    3. Выше в статье есть расчет. 6565Ом для поднятия напряжения с 5.0 до 5.15 при идеальных значениях компонентов.

      Удалить
  10. Так что по тестам? Какое напряжение оптимальное?

    ОтветитьУдалить
    Ответы
    1. По разному. У друга хватило поднять до 5.09. А мне повезло, перестало пропадать только при 5.19. Оптимально сделать 5.15, а там уже смотреть, как оно будет.

      Удалить
  11. припоял 150 кОм, вместо 5 вольт выдал 6.8, отпаял. припоял 188 кОм. все к чертям закоротило(где 5 вольт должно быть там земля и + пищат на прозвон) у меня контроллер бы припаян, сгорел. Не удачно в общем вышло. Не понимаю как. Я когда 150 кОм от донора отпаивал он к пояльники прилип не надолго, может его оперегрело и свойства изменились. Вообще мелкие штучки жутко. Я даже не видел насколько хорошо припой лег, пришлось фоткать на телефон и увеличивать.

    ОтветитьУдалить
  12. Разброс значений сопротивлений - это в электронике не проблема.
    Проблема в том, что в цепях стабилизатора китайцы используют недостаточно точные резисторы, похоже вплоть до 5%, хотя надо 1%, а лучше 0,25 или 0,1 - но они дороже аж на 0,02$

    ОтветитьУдалить