Телеметрия (часть 1)

Artie
smalltim:

Еще один минус - если пакет по дороге побъется и хэш мусора совпадет с нужным хэшем. Так что я пока по старинке. 3 чтения из памяти и 3 сравнения - знаете ли, не так уж много.

Не-а, не побъется. Негде ему биться. 😁
Я даже чексам не проверяю, бо на единицах (а даже и на десятках) сантиметров длины и единицах килобод скорости для возникновения битовой ошибки нужна ТАКАЯ помеха, от которой будет уже не до точности ОМП; - модель бы спасти…
С другой стороны, если не контролировать валидность извлеченных из строки данных, то куда бы ни попал этот гипотетический сбой - в заголовок, или в поле данных, - результат будет строго одинаковым.

Впрочем, я ведь никого не уговариваю… Просто поделился технологией.

Dikoy
Artie:

Не-а, не побъется. Негде ему биться. 😁
Я даже чексам не проверяю,

+1
Тем более, что чексам там хреновая и нормальной защиты всё равно не обеспечивает…

ReGet

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

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

maloii
ReGet:

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

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

Сегодня и вчера облётывал OSD. Вобщем помехи фигня не понятная 😃 ,но в целом помехи с OSD увеличелись, но ненамного. Всётаки наводки какие то есть, но с разнесёным приёмником их стало существенно мало. Отлетаю также далеко 1 - 1,5 км вроди нармуль, но с OSD порой подёргивает самолёт, терпимо, но подёргивает. Думою если заэкронировать то будет все ок.

Думою основная проблема от AV передатчика, сильное поле от него, нужно приёмник покруче покупать и подальще от пердатчика ставить.

ReGet

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

В воскресенье попробую полетать в других местах, если ветра не будет.

maloii:

Думою основная проблема от AV передатчика, сильное поле от него, нужно приёмник покруче покупать и подальще от пердатчика ставить.

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

smalltim

Меня вчера-позавчера тоже немного потряхивало, но я никаких экранирований не делал, никаких блокировочных конденсаторов тоже, и плата телеметрии у меня в 10 сантиметрах от приемника. Видеопередатчик - в 15 сантиметрах.

smalltim

Вот, наделал скриншотов с видео. Видео пока не обрабатывал, больно много получилось.
Трясти начинало порывами по доле секунды раз в минуту-две на высотах больше 400м. Но иногда случалось и прямо под носом, на высоте 50 и удалении в 100 метров. Впрочем, я не напрягаюсь по этому поводу. Если в 100 метрах от полетов идет 3 охрененных ЛЭП, от которых даже в сухую погоду идет 50-герцовый треск, а в 5 километрах - военная РЛС московского округа ПВО, то лучше не жаловаться на помехи 😃

Летал без вида из камеры - у ноутбука днем плохо виден экран, а очков у меня пока нет. 600 метров - максимум, что смогли выдержать глаза, дальше просто нереально, самолета просто не видно. Можно было бы полетать и выше, ориентируясь по картинке с ноутбука, но местность не очень знакомая, а единственнный GPS модуль, который можно было подключить к телеметрии, оказался мертвеньким 😦

smalltim

>Отключил физически провода от ходовой батареи и от приемника, лишился указателя заряда батареи и качества сигнала. Но на земле помехи пропали.
>Полетел в небо до 370 метров от земли - тоже без проблем

Та-а-ак… Вот это уже интересно.

Стало быть, вариант с помехой от кварца и прочей метафизикой отбрасываем. Никуда эта гипотетическая помеха от кварца не делась при отключении от ходовой батареи, однако у Вас всё стало замечательно.
Что остается? Питание и/или связь с батареей.

Гуру, выручайте, пожалуйста! Соединение с батареей сделано следующим образом: Земля и 3 входа, каждый через резисторный делитель 2кОм/1кОм идет на свой вход АЦП, при этом последний вход, то есть, с последней банки, то есть, 3.6*3 В, идет на линейный стабилизатор 5В для питания платы телеметрии.
Нужно ли ставить конденсаторы со входов резисторных делителей на землю?
В части питания, я так понимаю, нужно сделать длину проводника (и соответствующей земли) от батареи к стабилизатору питания минимальной, и поставить правильных конденсаторов, поскольку потребление платы телеметрии _сильно неравномерно_ - часть кадра процессор спит, часть активно считает.

Кстати, чисто по питанию, помимо помехи с частотой 50 Гц, вызванной частотой следования кадров, плата телеметрии теоретически может генерировать помехи с частотой 15.625 кГц ( частота строчной развертки PAL), поскольку в течение строчного интервала гашения процессор спит, а во время отрисовки строки - не спит.
Как именно можно загасить такие помехи, если, как у ReGet, они влияют на качество приема?

ReGet
smalltim:

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

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

smalltim:

Соединение с батареей сделано следующим образом: Земля и 3 входа, каждый через резисторный делитель 2кОм/1кОм идет на свой вход АЦП, при этом последний вход, то есть, с последней банки, то есть, 3.6*3 В, идет на линейный стабилизатор 5В для питания платы телеметрии.

Замечу, что у меня питание видео-части (и телеметрии в часности) сделано от отдельной батареи. То есть с ходовой батареей связаны только земля напрямую и плюс через делитель на вход АЦП.

Я не спец в электронике, но на уровне предположений мне кажется, что в момент включения-выключения вывода PD7 (выдает уровень белого в видео) идет какая-то просадка по питанию и оно “шумит”. В итоге при подключении к ходовой батарее даже одного провода земли начинаются заметные помехи 😵
Может и вправду какой конденсатор спасительный можно попробовать?

maloii

Давайте перечислим приёмники и видео передатчики и как питаем все, вобщем для полноты картины.

У меня.
Приёмник rc: Multiplex Rx-7
Передатчик AV: 2,4 GHz 1 ват
Питание приёмника и видео раздельно.

smalltim

У меня

  • приемник Hitec Electron 6 на 35 МГц
  • передатчик 2.4 ГГц 700мВт
  • питание телеметрии, камеры и передатчика от ходовой батареи
ReGet

У меня

  • приемник Hitec Electron 6 на 35 МГц
  • передатчик 2.4 ГГц 1-2 Вт, точно не помню. Кушает 300 мА от 12 вольт
  • питание телеметрии, камеры и передатчика отдельно от ходовой батареи
smalltim

>В итоге при подключении к ходовой батарее даже одного провода земли начинаются заметные помехи

Значит, он работает как антенна.

maloii

Сегодня игрался c ICP на отстойном приёмнике, который дрожить по всякому поводу и заметил следующее, подключаю плату к приёмнику через ICP, тишина, потом AV соединяю с телеметрией и серва начинает дрожать, питание к телеметрии не подсоединино! Вобщем наводки от PAL сигнала.

Dikoy
smalltim:

Значит, он работает как антенна.

Скорее как петля… Возникакт петлевой ток.
А почему такие маленькие номиналы на входе АЦП? У вас на этих резисторах расходуется мощьности больше, чем ест мега 😃 Попробуйте поставить 100к и 47к или такой порядок номиналов. От входа АЦП к земле капацитор на 0,01 мкФ.

Корее всего ReGet прав - у меги пины до 20 мА тянут. Создать ими помеху можно запросто. Скорее всего происходит следующее - сигнал с камеры просаживается до уровня белого лапкой меги. А куда он просаживается? Правильно - через транзистор пина идёт на землю кристалла и далее - по земле платы телеметрии к земле её источника питания, а далее от туда к земле источника питания видеопередатчика и камеры.
Ещё раз повторю - вся аппаратура, которая так или иначе между собой дружит, должна быть подключена к ОДНОМУ источнику питания РАЗНЫМИ проводами. Если надо измерять напряжения других аккумов - измерительный провод тянем к аккуму, а землю того аккума подводим отдельным проводом к земле питающего телеметрию аккума. Соединение звездой. И будет всё хорошо 😃

Насчёт пульсаций потребления меги - не смешите… Пульсация 1…20 мА даже близко не приблизится к просадкам от работы ОДНОЙ сервы, не говоря про ЭД. Скорее всего где-то создаётся петля, причём эта петля захватывает аппаратуру управления. Нужно её найти и убить (петлю, а не аппаратуру).

Помехи от кварца вещь реальная и частовылезающая. Но обычно от неё сдыхает сама тактируемая плата в первую очередь, а тут плата работает, а мрут все вокруг…

ПС. А ещё можно между лапкой меги и видеосигналом поставить резюк на 50-75 ом. Что тогда получается?

smalltim

Резисторы в делителе на АЦП - да, надо переделать. Там 5-6мА в сумме набегает. Мелочь, но неприятно. И конденсаторы на входах АЦП поставлю.
А вот питание у меня изначально звездой сделано, поэтоу, наверное, и помех таких нет. У меня от балансирного разъема ходовой батареи питаются телеметрия, камера и передатчик, каждый девайс своим проводом, земля питания камеры и передатчика идет _не по оплетке_ экранированного кабеля.

>А ещё можно между лапкой меги и видеосигналом поставить резюк на 50-75 ом. Что тогда получается?

Блин. В схеме уже стоит, если правильно помню, что-то в районе 200 Ом.

Dikoy
smalltim:

Резисторы в делителе на АЦП - да, надо переделать. Там 5-6мА в сумме набегает. Мелочь, но неприятно. И конденсаторы на входах АЦП поставлю.
А вот питание у меня изначально звездой сделано, поэтоу, наверное, и помех таких нет. У меня от балансирного разъема ходовой батареи питаются телеметрия, камера и передатчик, каждый девайс своим проводом, земля питания камеры и передатчика идет _не по оплетке_ экранированного кабеля.

>А ещё можно между лапкой меги и видеосигналом поставить резюк на 50-75 ом. Что тогда получается?

Блин. В схеме уже стоит, если правильно помню, что-то в районе 200 Ом.

Вот и я о том же - звезда спасёт всех 😃

200 ом неправильно. Стандартное волновое сопротивление кабелей и, что немаловажо, выдеовыходов, это 50 или 75 ом. Для согласования нужен аналогичныё резюк. Посмотрите, к примеру, как устроены разветвители видеосигнала коллективных антенн в домах. Звезда из резисторов по 75 ом - в центр кабель, в стороны потребители.
Хотя, это только предположение… 😃

smalltim
ReGet:

Видео с телеметрией fpv flight 13.06.2008

Класс. Термодатчик не впаян? - 61 градус - сурово. Надо будет, как с напряжениями, отрубать вывод, если датчик не обнаружен 😃

Пара интересных моментов:

  1. Высота за 14 минут полета “уползла” на 3 метра в плюс. Жаль, но ничего с этим не поделать.
  2. Вариометр малоинформативен. В текущем варианте с GPS (пока до сих пор не облетанном) вариометра уже нет.
  3. Вход ICP лучше соединить с землей, если не используется мониторинг качества приема RC сигнала. А то процессор ловит какие-то пнаводки на входе ICP и выводит иконку антенны. Но поскольку на входе “мусор”, никаких “палочек” на индикаторе качества приема, конечно, не появляется.
ReGet
smalltim:

Класс. Термодатчик не впаян? - 61 градус - сурово. Надо будет, как с напряжениями, отрубать вывод, если датчик не обнаружен 😃

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

smalltim:
  1. Высота за 14 минут полета “уползла” на 3 метра в плюс. Жаль, но ничего с этим не поделать.

Там небольшое возвышение, поэтому может и не уползла. Да и не нужно высоту по метрам у земли ловить, для информации разрешения и в 20 метров достаточно.

smalltim:
  1. Вариометр малоинформативен. В текущем варианте с GPS (пока до сих пор не облетанном) вариометра уже нет.

Это точно, шумит сильно. Наверное чтоб его сделать точным, нужно обрабатывать датчик многобитным АЦП.

smalltim:
  1. Вход ICP лучше соединить с землей, если не используется мониторинг качества приема RC сигнала. А то процессор ловит какие-то пнаводки на входе ICP и выводит иконку антенны. Но поскольку на входе “мусор”, никаких “палочек” на индикаторе качества приема, конечно, не появляется.

Я все-таки хочу победить помехи, соединить телеметрию с приемником и мониторить качество сигнала 😃

С нетерпением жду вариант с GPS!

smalltim
ReGet:

С нетерпением жду вариант с GPS!

А держите:

При подключении исправного GPS модуля с TTL интерфейсом на скорости 4800 ко входу USART (RX пин Атмеги) по центру должна высветиться “миникарта”, и по мере старта GPS модуля при накоплении 20 NMEA строк, в которых данные позиционирования актуальны, будет запомнена начальная позиция и высота. Во время запоминания начальной позиции справа внизу от карты будет мигать иконка “базы”, ни с чем не спутаете. Ну а дальше - полет 😃

Если GPS модуль не подключен, всё остается как прежде, но с некоторыми важными исправлениями:

  1. Обработка внешних прерываний с LM 1881 переведена со спадающего фронта импульса на восходящий фронт импульса от LM1881. Это дает бОльшую стабильность положения OSD на экране, и меньшую чувствительность к времязадающим номиналам на LM1881, температуре, влажности и т.д.

  2. Сильно оптимизирован код

  3. Убран вариометр

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

  5. Немного всяких разных багфиксов

На 600 метров (пока - мой рекорд 😉 я летал именно с этой самой новой прошивкой.
Кстати, если правильно помню, до сих пор не убрана одна корявость с использованием 16-битной математики в части обработки данных с датчика высоты. После набора высоты больше 620 с чем-то метров телеметрия начинает показывать с нуля, то есть, на 720 метрах будет показано 100 😉
Пока не актуально, но буду прихорашивать GPS - обязательно это поправлю 😃