OSD на ATmega1281

ubd

Свои человеко-часы тоже надо считать,

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

msv
ubd:

поставить резистор 75 на землю

В теории это снизит размах видео на выходе OSD почти в два раза от номинального (1Vp-p)… Тут надо разбираться…

ubd

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

msv
ubd:

В случае когда это хобби…

Про то и речь… Виталий много говорил, что взялся из-за ограниченного бюджета. Есть куча способов за то время, которое неизбежно будет потрачено на сборку-отладку, заработать на готовый MQ-1 Predator… 😃

alezalez
ubd:

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

Подтверждаю!
С удовольствием собирал плату АП при поддержке Константина (dollop) лично и Сергея (msv) на форуме. За это время мог заработать на заводской АП, но… собранное своими руками предполагает более полное понимание работы девайса! Да и вообще - это здорово - собрать и запустить свой АП!!!

BlackVetal

OffTop!!!

Когда я был еще не такой “взрослый” как сейчас 😉 (это было лет пять назад) -я приобрел автомобиль.
И очень было интересно, что в нем происходит, сколько льется бензина, какие температуры всякие и кислородные датчики.
И зачем-то я решил сделать бортовой компьютер. В то время, товарищ подогнал мне несколько atmega16 в корпусе DIP40.
Ну и собрал я на макетке, нечто с двухстрочным цифровым экраном, и мегой16. И начало “это” измерять длительность впрыска прямо с форсунки (перводя это в бензин), и напряжения с датчиков. Потом, по мере “развития проекта” 😉 потребовалось внедрить в систему кнопки. Но куда приколохозить кнопки в панель автомобиля - вопрос сложный. Поэтому к девайсу был приделан IR-приемник, и кнопки оказались на пульте. И вид не портит, и мобильно. Но помимо кнопок, двухстрочного экрана, мне показалось мало, да и мелко, да и опять же, куда его встраивать в панель авто!? Поэтому, было решено выводить инфу на телевизор.
Для этого, была взята вторая мега16. Но чернобелый вариант “видеоадаптера” меня не сильно устраивал, и в схему для цвета добавилась CXA1145. Не помню точно почему (возможно как и у msv из за размера пикселя и времени выполнения команд процессора), но мегу16 пришлось разогнать до 20Мгц (это при том что Atmega была 16L - т.е. на 8Мгц). При этом, заводиться от штатной схемы с кварцевым резонатором, мега отказалась. Точнее она заводилась, но глючила безбожно. Поэтому, на макетке появился внешний генератор на (угадайте) 155ла3+кварц. В общем в итоге, получился полноценный видеоадаптер в текстовом виде, с таблицей символов, и цветной. Самое страшное для меня было написать “видео”. Я проклял тех кто придумал черезстрочную развертку, и чета долго не мог допереть в чем разница в синхре с точки зрения четных и нечетных кадров. К тому же до того момента я никогда не программировал под avr (ранее, было несколько проектов на PIC) и приходилось находу изучать асемблер, потому что на бейсике (а на нем начинался проект и был реализован “верхний уровень”) видео чета не получалось.

Ну короче, к чему весь этот офтоп.
Я прекрасно понимаю msv, как разработчика. Правда я на его месте запилил бы “верхний уровень” на отдельном МК, но понимаю что это вопрос спорный, и можно конечно говорить что и так “просторно” и достаточно времени на обработку всего кроме видео.

Я также понимаю высказывания о “бюджетности” проекта, и о человеко-часах и все эти факторы осознаю.
Но почему-то выбираю “геморный” вариант. 😃

Ребята - я с Вами!!!

ubd

Когда я был еще не такой “взрослый” как сейчас 😉 (это было лет пять назад) -я приобрел автомобиль.
И очень было интересно, что в нем происходит, сколько льется бензина, какие температуры всякие и кислородные датчики.
И зачем-то я решил сделать бортовой компьютер. В то время, товарищ подогнал мне несколько atmega16 в корпусе DIP40.
Ну и собрал я на макетке, нечто с двухстрочным цифровым экраном, и мегой16. И начало “это” измерять длительность впрыска прямо с форсунки (перводя это в бензин), и напряжения с датчиков. Потом, по мере “развития проекта” 😉 потребовалось внедрить в систему кнопки. Но куда приколохозить кнопки в панель автомобиля - вопрос сложный. Поэтому к девайсу был приделан IR-приемник, и кнопки оказались на пульте. И вид не портит, и мобильно. Но помимо кнопок, двухстрочного экрана, мне показалось мало, да и мелко, да и опять же, куда его встраивать в панель авто!? Поэтому, было решено выводить инфу на телевизор.
Для этого, была взята вторая мега16. Но чернобелый вариант “видеоадаптера” меня не сильно устраивал, и в схему для цвета добавилась CXA1145. Не помню точно почему (возможно как и у msv из за размера пикселя и времени выполнения команд процессора), но мегу16 пришлось разогнать до 20Мгц (это при том что Atmega была 16L - т.е. на 8Мгц). При этом, заводиться от штатной схемы с кварцевым резонатором, мега отказалась. Точнее она заводилась, но глючила безбожно. Поэтому, на макетке появился внешний генератор на (угадайте) 155ла3+кварц. В общем в итоге, получился полноценный видеоадаптер в текстовом виде, с таблицей символов, и цветной. Самое страшное для меня было написать “видео”. Я проклял тех кто придумал черезстрочную развертку, и чета долго не мог допереть в чем разница в синхре с точки зрения четных и нечетных кадров. К тому же до того момента я никогда не программировал под avr (ранее, было несколько проектов на PIC) и приходилось находу изучать асемблер, потому что на бейсике (а на нем начинался проект и был реализован “верхний уровень”) видео чета не получалось.

Вы хотите сказать, что это все зря?

ubd

Сделал фото-сессию АП.
(Белое на плате, это силиконовый герметик, автомобильный который НЕ воняет уксусом (нейтральный) Все лежащие кондёры на него приклеены.)

msv

Уж очень велика mainboard… Раза в два можно бы уменьшить…

ubd

Пофиг. Лишь бы работало и было надежно. Ну и на мелкие самолёты на рассчитывалась просто.
Потом если буду делать следующую версию на заводе, то по меньше сделаю. ВЕС справа можно по меньше сделать.

Вахтанг

dollop:

Итак.
2. Датик скорости отсюда. Альтернатив по цене нет.

А вот еще опровержение:
Просто достал детали из шкафа и спаял 😁

alezalez
Вахтанг:

А вот еще опровержение: Просто достал детали из шкафа и спаял

Ну не у всех есть такой волшебный шкаф 😃

11 days later
ubd

На днях полетали душевно! Все работает класс! Только одна проблема осталась - вибрация от винта. На HD камере плывет все, на определённых оборотах. Жду когда придёт 3-х лопастный винт, отпишусь по испытаниям.

И с Сергеем msv решили мою проблему по поводу перемодуляции видео сигналом с камеры. Оказалось там по входу OSD, нужно было ёмкость не 100 мк, а 2,2мкф поставить, и на выходе можно по больше не 100мкф, а 470мкф. По выходу, не так критично, а по входу 2,2 сделали, и все ОГОНЬ заработало! Трекер заработал как нужно, и изображение не плывет.

В общем, по видео входу на плате OSD меняйте, кондёр вместо 100 мк, на 2,2 мк. Сергей говорит можно 1 мк, и можно керамику, в общем то лучше керамику, от 1 до 2 мк.

А ещё я плату новую развел. Точнее отредактировал существующую. Сделал по компактнее. Если на заводе в следующий раз буду заказ делать, то такие платы пойдут.

OSD_2.10 (2).rar

msv

Уточню. Как оказалось у пиксим выход “закрытый”, без привязки по постоянке. Примитивная схема привязки в OSD-модуляторе недостаточно хорошо работает ( с уменьшенным входным кондером еще более-менее ). Радикальное решение - поставить на входе какую-нибудь MAX/OPA, качественно привязывающий сигнал по ПТ без подрезания синхроимпульсов.

ubd

т.е. МАХ4090 прилепить?
Там ещё помнишь мы говорили, сделать правильную подтяжку на + через транзистор, вместо диода. Я правильно нарисовал?
Вот так:

Модулятор_MAX4090.rar

BlackVetal
msv:

Радикальное решение - поставить на входе какую-нибудь MAX/OPA,

Радикальным решением было бы использовать MAX7456
Простите если баян, но таким образом разгрузили бы ЦП, исключили бы из схемы модулятор и детектор синхроимпульсов. Кроме этого, отказались бы от нетрадиционной Atmega.
Сергей (msv), Вы рассматривали этот вариант?

ubd

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

BlackVetal
ubd:

Там написано что это для черно белого изображения.

Ну не очень то и для черно-белого, а как раз таки для цветного. А вносимая графика, да - черно-белая.
Вот ведь!

ubd:

И потом, эта мокруха выдает готовые символы, у нас графический экран.

Ну в этой микросхеме можно символы залить какие тебе хочется.
Вот.

ubd:

И отказываться от атмеги никто не будет.

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

ubd:

Все и так хорошо работает.

Осталось только МАХ4090 приделать. 😉

Да я ведь и не настаиваю. Просто интересно было мнение Сергея, а он чего-то пока молчит.

А еще ссылочку приложу со списком микросхем OSD. Может интересно будет кому.

ubd

Ну в этой микросхеме можно символы залить какие тебе хочется.

Так это получиться символьная псевдо-графика, как в MS-DOS. Это будет типа как у Смалтима старого, или как у китайских автопилотов, все привязано к знакоместу. У нас же графика пиксельная, больше пространство для творчества. Единственный минус, у нас, это нет теней перед пикселем, а только после пикселя. Но в общем то, я сколько летаю, проблем с чтением OSD, ощущаю. Так что смыла нет, делать новую разработку, для того что бы сделать тени нормальные. Сергей конечно об этом мечтает, может будет делать, но не вижу смысла, все будет то же самое, только графика измениться и все. Самое ценное в автопилоте, это алгоритмы управления, всякие фишки, типа полёта по точкам, автоматический взлёт - посадка, на это все качество вывода OSD на экран не влияет, по этому делать упор на графику OSD, как то не рентабельно что ли, т.е. сил потратишь много, а автоматическая посадка как работала криво так и будет работать. Я считаю, важнее алгоритмы управления довести до ума.

Осталось только МАХ4090 приделать. 😉

Это не обязательно конечно. Просто если я буду заказывать новые платы на заводе, то там разведу MAX4090. Пока и без него, все работает идеально, как кондёры поменяли. На прошлых выходных летал, картинка у меня просто шикарная идёт. Все очень нравиться. Цвета правда блеклые, но это по ходу карта видео-захвата что то подрезает, это не так важно. Сейчас у меня Pixom - трава зелёная, небо голубое, с прошлой камерой, трава была серая, небо непонятно какое.

Да я ведь и не настаиваю. Просто интересно было мнение Сергея, а он чего-то пока молчит.

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

msv
ubd:

Я правильно нарисовал?

Привязка на транзисторе по сути правильно, пара неточностей… Но этот вариант будет неизбежно “подъедать” синхроимпульсы из-за несимметричной нагрузки (как собственно и старый диодный вариант…). Не страшно, но АРУ приемника (железки видео-захвата) будет завышать яркость и, соответственно, занижать цветовую насыщенность.

ubd:

т.е. МАХ4090 прилепить?

Там много вариантов и у максим, и у texas instruments. Твой вариант на схеме может и рабочий, но это забивание гвоздей микроскопом… 😃 Сигнал уже привязан по постоянке (для этого и ставим микросхему), а ты его опять на емкость… Правильнее присобачить выход видеоусилителя к моей последней схеме.

BlackVetal:

Радикальным решением было бы использовать MAX7456

То что МАХ4090 и MAX7456 начинаются на MAX, не означают именения одного порядка… 😃
Безусловно 7456 интересный чип, делающий красивые обводки символов, встроенный фильтр обеспечивает гладкое наложение картинки (почти без разрывов поднесущей цвета), возможность интернальной генерации синхры при отсутствии внешней…
Но изначально проект был начат из интереса попробовать сделать графический OSD на доступном на тот момент 8-ми разрядном МК… Сейчас при засилии и чуть ли не демпинговым ценам на STM32 наверное этот выбор кажется странным, но напомню, первые вылеты с этим проектом начались больше 4-лет назад…
А автор всего год до старта проекта узнал о существовании фирмы Atmel (про какие-то пики правда слышал…)… 😃

ubd

Не страшно, но АРУ приемника (железки видео-захвата) будет завышать яркость и, соответственно, занижать цветовую насыщенность.

Что у меня и происходит. Как избавиться?

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

У меня нет твоей последней схемы модулятора. Вышлешь?
Хочу попробовать разные варианты. На проводках, сделаю маленькую плату, и к этой плате АП подпаяю сверху.