OSD Платы.
Спасибо, попробую!
Переделал схемку. RSSI показывает. 0 при выкл. пульте 100% при вкл. Промежуточные значения буду тестить в поле.
А вот отображение батареи не победил. Упорно мигает нулем.
???
если столько танцев, может все же проще подать pwm rssi прямо на osd (т.е. минуя АИОП)?
upd: сорри… прочел прошлую страничку… кажется pwm rssi также не работает по отзывам… надо добраться осциллографом потыркать…
После этого решил попробовать второй способ чтения rssi самой осд. Выяснил неприятную особенность, как только в гуи осд выставляю PWM RSSI и жмакаю запись светодиод начанает моргать с интервалом 1.5-2с. Такое чувство что сбивается делитель тактового генератора. При включении осд на экране светится заставка, дождаться появления рабочего режима я не смог. Подключал сигнал с приемника на осд и на “Miso Pin” как в коде указано, и на вывод А3 меги как нарисованно в вики на осд, через RC фильтр и напрямую. Оказалось что при подключении напрямую на пин miso осд оживает, светодиод на ней приходит к прежней скорости мигания и на экране бодро меняется картинка в соответствии с ситуацией, правда rssi по нулям. Пробовал завести проц касаясь пальцем вывода miso, безрезультатно. На всякий случай 2 раза чистил память и перезаливал прошивку с шрифтами. Кто-нибудь пробовал этот PWM RSSI? И вообще у кого нибудь заработало адекватно отображение качества сигнала хоть каким способом?
code.google.com/p/rush-osd-development/…/detail?na…
* NOTE: * do not select PWM RSSI without RX signal connected. Digital pin input can be configured on config.h
Может в этом дело?
Может в этом дело?
вот свежий коммент от разработчика www.multiwii.com/forum/viewtopic.php?f=8&t=2918&st…
пишет:
- что pwm rssi в тест моде пока
- pwm rssi пин должен быть законнекчен до выбора опции (pwm rssi) в ОСД ГУИ
- pwm rssi удобно вешать на ADC3 пин (т.е. А3 либо 26-й пин 328й меги), т.к. он во многих minimOSD клонах висит на неиспользуемом PAL джампере (т.е. удобно подпаивать, но тут надо помнить что один из контактов джампера - земля!)
Пробовал подключать и к выводу miso на isp разъеме, как в config.h, и к А3 на ноге контроллера т.к. на плате с рцтаймера нет перемычки pal. Так же в конфиге менял вход для pwm rssi с 12 на А3. Вывод RSSI подключен был до подачи питания. Ничего не поменялось, то показывает 0 то сильно затормаживается. Еще заметил что когда в рабочем режиме отключаю вывод RSSI с экрана пропадает значек и 0, подключаю снова и они появляются.
Пробовал подать сигнал PWM на вход канала тротл предварительно перешив мозги на не CPPM сигнал, т.е. каждый канал отдельно, для оценки работоспособности сигнала. Думал что там такой же стандартный сигнал 1000-2000. При таком подключении мозги вообще с ума сходят и не стартуют, ГУИ вообще не подключается. Снимаю перемычку с 3-4 выхода приемника для перевода в обычный режим и цепляю в первый канал тротл мозгов и они нормально стартуют и реагируют на стик. В связи с этим вопрос, что из себя должен представлять PWM RSSI с приемника D8R-II+ перешитого в D8R-XP. Пробовал цеплять светодиод в 2 канал приемника, при наличии сигнала с аппы светодиод светится, при выключении аппы затухает как будто там конденсатор стоит (хотя скорее всего это реализовано программно, иначе не работал бы обычный ppm), при включении аппы мгновенно загорается. Может есть у кого возможность тыкнуть осцилографом в него?
* NOTE: * do not select PWM RSSI without RX signal connected. Digital pin input can be configured on config.h
т.е. осд д.б. подключена к гуи и на нее должен приходить RSSI? так тоже пробовал, бесполезно. Думал что надо при стандартном включении с мозгами переключать на PWM RSSI из меню осд на экране, но не нашел такого пункта.
Вчера тоже досиделся допоздна, пока хоть что то раскопал. Если коротко, то разработчик либо не ту версию выложил, либо вообще не дописал код. В основной функции чтение PWM RSSI происходит в локальную переменную, НО далее не пишется как результат в переменную rssi:
void calculateRssi(void)
{
float aa=0;
if (Settings[S_PWMRSSI]){
//Digital read Pin
aa = pulseIn(PwmRssiPin, HIGH);
aa = ((aa-Settings[S_RSSIMIN]) *101)/((Settings[S_RSSIMAX]*4)-Settings[S_RSSIMIN]) ;
}
else {
if (Settings[S_MWRSSI]) {
aa = MwRssi;
}
else {
aa=rssiADC; // actual RSSI analogic signal received
}
aa = ((aa-Settings[S_RSSIMIN]) *101)/(Settings[S_RSSIMAX]-Settings[S_RSSIMIN]) ; // Percentage of signal strength
rssi_Int += ( ( (signed int)((aa*rssiSample) - rssi_Int )) / rssiSample ); // Smoothing the readings
rssi = rssi_Int / rssiSample ;
if(rssi<0) rssi=0;
if(rssi>100) rssi=100;
}
}
по аналогии добавил для PWM RSSI и после калибровки min/max rssi на 0/~80, увидел по видео 100% и 0%, но на промежуточных %-х все равно как то криво и не соот-т показаниям аппы:
void calculateRssi(void)
{
float aa=0;
if (Settings[S_PWMRSSI]){
//Digital read Pin
aa = pulseIn(PwmRssiPin, HIGH);
//aa = ((aa-Settings[S_RSSIMIN]) *101)/((Settings[S_RSSIMAX]*4)-Settings[S_RSSIMIN]) ;
aa = ((aa-Settings[S_RSSIMIN]) *202)/(Settings[S_RSSIMAX]-Settings[S_RSSIMIN]) ; // Percentage of signal strength
rssi_Int += ( ( (signed int)((aa*rssiSample) - rssi_Int )) / rssiSample ); // Smoothing the readings
rssi = rssi_Int / rssiSample ;
if(rssi<0) rssi=0;
if(rssi>100) rssi=100;
}
else {
if (Settings[S_MWRSSI]) {
aa = MwRssi;
}
else {
aa=rssiADC; // actual RSSI analogic signal received
}
aa = ((aa-Settings[S_RSSIMIN]) *101)/(Settings[S_RSSIMAX]-Settings[S_RSSIMIN]) ; // Percentage of signal strength
rssi_Int += ( ( (signed int)((aa*rssiSample) - rssi_Int )) / rssiSample ); // Smoothing the readings
rssi = rssi_Int / rssiSample ;
if(rssi<0) rssi=0;
if(rssi>100) rssi=100;
}
}
Во вложении правленая версия…
Вообще использование pulseIn() функции в системах с замкнутым циклом это немного кривой подход, т.к. функция ждет импульса и это как раз причина почему осд подвисал когда PWM rssi отключен. Т.е. если нет импульса, то система/цикл стоит в точке на pulseIn()… тут надо на прерываниях делать…
Вердикт: пока PWM rssi лучше не пользовать, а подключать через RC фильтр по аналогу… вот тут человек прошел все шаги по сути:
rcopen.com/forum/f123/topic283798/3547
rcopen.com/forum/f123/topic283798/3621
rcopen.com/forum/f123/topic283798/3625
Далее пытался блин посмотреть что же фриска выдает на выходе PWM rssi. Но компьютерный осциллограф толком ничего не показал, т.к. не смог синхронизировать картинку. Но увидел, что это вроде как не стандартный PWM с периодом 2мс, а что-то “иное” на 20-30мс 😃 Возможно это пачка импульсов с дискретом 10% от rssi. Т.е. Т.е. если 50%, то 5 миандриков/импульсов в пачке… Но тогда это уже будет не PWM по определению, однако через RC фильтр будет тоже давать правильный результат. Впрочем это все размышлизмы и надо что кто нить пощупал осциллографом…
Спасибо Александр, Вы хотябы понимаете код) а я смотрю на него как баран на новые ворота) Сейчас в отпуске, через неделю смогу потыкать осцилом.
Не получается получить сигнал с платы FBOSD (мануал).
При подключении 5V и камеры - серый экран.
Может быть есть у кого такая плата? готов подъехать и за пиво проверить работоспособность своей платы в Москве и МО
В дневнике у {gorbln} появилась запись о прошивке приемыша D8R-II+, там есть и осциллограммы. Правда я вообще ничего не понял по алгоритму работы.
Не получается получить сигнал с платы FBOSD (мануал).
При подключении 5V и камеры - серый экран.
Может быть есть у кого такая плата? готов подъехать и за пиво проверить работоспособность своей платы в Москве и МО
подключал недавно к назе fbosd ghost. работало. но проблема была только с подключением к компу и конфигурацией. в результате пришлось вернуть обратно. слишком сырой софт. так и не поборол ничего и ничьи советы на форуме rcgroup не помогли.
Господа, кто-то знает как реализовать измерение потребляемого тока (и, соответственно, индикацию остатка батареи) на плате minim OSD ? Полетник Multiwii Pro
Если делать OSD в “рукопашную” какой проект выбрать “MobiDroneOSD” или CL-OSD (G-OSD)?
Есть проблема с minimosd. С прошивкой для ардупилота видео выводит нормально без пилотного контроллера. Прошил его для мультивия KV_Team_OSD и ничего не показывает. С конфигуратором не связывается. С мультивием тоже не работает. TX и RX выходы исправны. Насколько я понял что в связке с мультивием осд шлет запросы в мультивий и потом принимает от него ответы. Получается, что если осд даже ни к чему не подключенный должен формировать запросы. У меня такого не происходит. Уже всю башку сломал. Пробывал и 345 и 370 релиз. Ничего не помогает. И еще вопрос по конфигуратору осд. Там написано что есть эмулятор мультивия. Насколько я понимаю, то он подключается к осд и осд с ним начинает работать. Но почему тогда сам эмулятор начинает формировать запросы в плату ? Ничего не понятно. Заранее благодарю за помощь.
Но почему тогда сам эмулятор начинает формировать запросы в плату ?
Что это значит? Там есть симулятор, я не знаю как в принципе работает ОСД, шлет ли запросы к мультивию или просто принимает поток данных от него, но симулятор просто выдает данные которые якобы идут от мультивия, а ОСД пофиг откуда данные, главное что они есть и она их отображает на видео в соответствии со своими настройками. У Вас видео с камеры проходит через ОСД, т.е. картинка на выходе есть?
Сам спросил, сам и отвечаю. Проблема была в том что в еепром были ff , а нужно было очистить нулями. Плата запускается и работает без видеосигнала и без мультивия. Как я и предполагал - плата осд опрашивает мультивий и потом выводит это на экран. Вопрос снят.
Продолжаю воевать с минимосд. Всё работает нормально , но есть одно но. Появляются за выводимыми символами артефакты(тонкие линии и зигзаги). Такое впечатление, что проц в это время чтото пишет как раз в это время и в это место где они появляются. Остановил процик - глюки исчезли. Глюки хорошо видно на заставке осд. Вывод - что то в прошивке не в порядке- информация в видеобуфер заливается не во время обратного хода развертки. Залил ардупилотовскую прошивки - глюков не наблюдается. Посмотрите плиз. кто может у себя. Может это у меня только такие глюки или у всех. Хочется получить четкую статичную картинку. До этого использовал мобидроне осд - не понравилась из за того, что появлялись периодические подергивания символов осд. Причем само изображение камеры было стабильным.
PS. Заказал ещё одну минимосд для проверки и про запас.
У меня два minim osd с прошивкой KV team, артефактов нет, однако проблема с мониторингом напряжения, сделал как на их сайте, напряжение показывает от 0 до 15в на 3 банках причём постоянно прыгает туда-сюда. подключал так:
Все выяснил-артефакты есть. Вы их просто не замечаете. Посмотрите внимательно видео на страничке разработчика .
Там они четко просматриваются.
Вот видео с сайта разработчика
Кто нибудь смог разобраться с отображение текущего тока с платы с rctimer - MAVLink-OSD в Multiwii? Расход показывает, но софтовый, а текущий по нулям. Информация на плату AIOP поступает с www.rctimer.com/product_861.html. Напряжение показывает правильно.
И второй вопрос. Как правильно в minimOSD управлять с пульта? Смог только зайти на страницы и переключать их.
Спасибо.
У меня два minim osd с прошивкой KV team, артефактов нет, однако проблема с мониторингом напряжения, сделал как на их сайте, напряжение показывает от 0 до 15в на 3 банках причём постоянно прыгает туда-сюда. подключал так:
Вылечил, забыл минусовой провод от батареи, появилась другая проблема, напряжение неправильно отображается 18.5 в вместо 11.5, любое изменение divider кроме 100 приводит к тому что отображается 0, а прошив на последнюю версию (370) вообще всегда по нулям, что напряжеие батареи, что пин напряжение видео. Упоминания в описании прошивки никакого не нашёл.