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

foxfly
Юрий_68:

40 000 разделить на 360 получается 111.1111(в периоде) 😃 но мысль интересная 😃

Звиняйте, Дядько- это я про минуту (угловую) говорил: то есть это вот 111,11111…
надо разделить еще на 60! Тогда то МИЛЯ и получится:)а ежели еще на 60-тут уж угловая секунда (т.е. ее длина на местности)

Жарко,однако: пока доскачешь от кондея дома до кондея в машине- голова вскипает, думает плохо 😦

smalltim

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

Пока поправка у меня не реализована, сделаю сразу после интегрирования показаний датчиков высоты и скорости по времени (1 сек). Сейчас аналоговые входы опрашиваются 64 раза подряд и результаты усредняются (при 64 измерениях 64 10-битных числа в сумме дают 2-байтное число, с которым очень удобно дальше работать). Измерения повторяются в каждом кадре: в кадре N 64 раза опрашивается нулевой вход, в N+1 опрашивается первый, в N+2 опрашивается второй и т.д. В итоге получается так, что данные по каналам обновляются примерно 50/6~8 раз в секунду. Уровень шумов такой, что для входов напряжения и температуры вообще ничего не надо делать, шумят 3й и 2й знаки после запятой соответственно, а для высоты и скорости надо бы еще бы поусреднять. Шумит 2й-3й знак после запятой, если считать разницу давлений в килопаскалях.
Для датчиков давления и температуры хочу накапливать по 10 результатов в отдельном буфере, где усреднять их значения для дальнейшего использования. В итоге как раз и получится временнОе усреднение высоты и скорости в пределах 1.2 секунды, но с непрерывным обновлением (8 раз в секунду) результата.

Debian

У меня есть настояший цифрофой альтиметр с самотела (размер как 2 пачки сигарет) там датчик давления обычный Motorola MPXA11…и как-то там, если вам надо могу сделать фоток и если будет время схемку срисовать, я думаю на пром агрегате все продуманно вплане датчиков
есдинственое это к датчику нужее прицезионный источник питания 😦

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

smalltim
Debian:

У меня есть настояший цифрофой альтиметр с самотела (размер как 2 пачки сигарет) там датчик давления обычный Motorola MPXA11…и как-то там, если вам надо могу сделать фоток и если будет время схемку срисовать, я думаю на пром агрегате все продуманно вплане датчиков
есдинственое это к датчику нужее прицезионный источник питания 😦

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

прорисовка построчно, как ловлю кадровые импульсы - ЛМка всё делает, чем отличается - понятия не имею, ЛМка всё делает. Ссылки на схемы были в этой теме или где-то рядом.

smalltim

Сделал интегрирование по времени, теперь датчики давления опрашиваются аж в 16 пачек по 64 изменения. Шума - 5-6 единиц в младшем десятичном разряде числа от 0 до 65535, т.е. 0.01%. Красотища 😃
При каждом включении борта начальные показания датчиков давления и температуры собираются, усредняются, и далее используются как базовые.
Приделываю коррекцию по температуре. Буду делать корявенько, полагая, что температура в момент старта всегда, скажем, 273К, а разница между текущей
температурой и температурой в момент старта будет прибавляться к 273. (Ну очень уж неохота заставлять AVRку делить произвольное 32-битное число на произвольное 16-битное). Коэффициент коррекции соответственно (273+dT)/273. Процентные величины ошибок сейчас лень считать, но очевидно что даже такая корявенькая поправка на температуру вполне себе позволит спокойно жить не глядя на уползание температуры.

foxfly

[quote=smalltim;577918]
Сделал интегрирование по времени, теперь датчики давления опрашиваются аж в 16 пачек по 64 изменения. Шума - 5-6 единиц в младшем десятичном разряде числа от 0 до 65535, т.е. 0.01%. Красотища 😃

Хотел спросить: с черными хвостами после букв разобрался?
И где собака в них порылась?

smalltim
foxfly:

Хотел спросить: с черными хвостами после букв разобрался?
И где собака в них порылась?

Просто плохонький видеокабель.

foxfly
smalltim:

Просто плохонький видеокабель.

Ну, батенька- с телевидением “авось” не проходит. ТщательнЕе надо с кабелем то!

smalltim

Довел до ума датчик скорости. Поскольку скорость это грубо корень из разницы давлений, шаг скорости нелинейный, вблизи нуля очень большой. С нуля сразу прыгает до 4 км/ч, дальше 5, а еще дальше шаг уже меньше 1 км/ч. Загрубил отображение до 1 кмч, отбрасывая дробную часть, поскольку точности в 1 кмч уже выше крыши. Предел измерения - 320 кмч. Усреднение - плавающее окно в пределах 2 сек. Если подуть резко и коротко, скорость плавно всплеснет до какого-то уровня и плавно спадет до нуля.

Датчик запросто реагирует, если просто легонько подуть на трубку пито. Устроил на работе соревнования, кто самую большую скорость надует 😃
Сейчас домашние улягутся спать, выложу фотки устройства и то, что получается на видео

serj

Давно не смотрел форум… наконец-то кто-то сделал похожую вещь, респект! 😃

2 smalltim: а у вас вывод символов сделан программно или “полупаппаратно” - то есть (через SPI… )

Я в в свое время здорово повозился - тогда был 2333 и 8мгц, это было (7 января 2001г 😃 )…

ради снижения веса ССИ был ( да и теперь остался) на 2-х транзисторах 😃

smalltim
serj:

Давно не смотрел форум… наконец-то кто-то сделал похожую вещь, респект! 😃

2 smalltim: а у вас вывод символов сделан программно или “полупаппаратно” - то есть (через SPI… )

Я в в свое время здорово повозился - тогда был 2333 и 8мгц, это было (7 января 2001г 😃 )…

ради снижения веса ССИ был ( да и теперь остался) на 2-х транзисторах 😃

вывод символов сделан программно, AVRкой

Вот первый режим OSD, отладочный:

Вот рабочий режим OSD:

Ваша печатная плата - решпект. У меня всё на макетке, сейчас сделаю фото, не пугайтесь 😃

smalltim

Вот оно:



теперь надо это аккуратненько вырезать и упаковать в корпусочек, я уже присмотрел хороший в Чип-и-Дип’е.
А пока этот вариант летает, можно спокойно рисовать нормальную плату для нормального варианта.

serj

ну дык это это уже серийный образец 😃 там 2 камеры, вариометр, детектор файлсейфа, линк к автопилоту (данные отображает верхняя строчка)

про spi я имел в виду кто управляет выводом символа- каждую точку программно ( тогда ограничено число ровно выводимых символов в строке) или через вывод spi (еще c uart можно поэкспериментировать) тогда вывод делается почти аппаратно, толко скармливай регистру сдвига данные…

я бы еще рекомендовал цифры покрупнее и поярче сделать- при приеме с помехами лучше видно будет

smalltim

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

>там две камеры
это как?
есть где почитать про эту разработку вообще?

>я бы еще рекомендовал цифры покрупнее и поярче сделать- при приеме с помехами лучше видно будет
я делаю девайсик под себя, мне картинка важнее чем маячущие на пол-экрана цифры. Но и без OSD тоже плохо. В общем, полетаю, посмотрю, переделать букифки - не вопрос. А пока оно даже еще не летало…

serj

Про вывод- понятно. кстати видно в отладочном режиме что разрушается реалтайм вывода- обрабока прерываний? 😃

почитать- есть " внутренняя" документация…
Разработка- то уже 6-ти летней давности 😃 пишите на почту, пришлю… не хотелось бы здесь выкладывать… оборудование беспилотников все-таки…

smalltim
serj:

Про вывод- понятно. кстати видно в отладочном режиме что разрушается реалтайм вывода- обрабока прерываний? 😃

почитать- есть " внутренняя" документация…
Разработка- то уже 6-ти летней давности 😃 пишите на почту, пришлю… не хотелось бы здесь выкладывать… оборудование беспилотников все-таки…

Эээ… мм… не, я лучше спокойней буду спать, спасибо, документации не надо 😃

Не угадали, в отладочном режиме просто выход подсвечивается и тут же гасится при готовности АЦП отдавать данные. Получается штришок на экране. Дальше данные читаются и в самом конце идет собственно обработка этих данных. Т. е., кстати, прямо по картинке видно, что я в каждом кадре опрашиваю АЦП 64 раза. На время всей этой возни с АЦП прерывания вообще отключены, а АЦП молотит во free-run режиме.

serj

Да не подметил что штришки-то одинаковые 😃 у меня картинка “рассыпалась” когда буфер данных не помещался целиком в РОН. Происходил сдвиг, ну и еще когда усиление детектора КСИ слишком велико- свидеосигнал лез 😃

А две камеры- это переключатель с плановой на курсовую камеру.

smalltim

Сегодня полетал.
Самолетику зачет, мой EasyStar уже облетан, но с камерой до сегодняшнего дня не летал.

Мне низачот 😃

  1. Букифки надо убрать в низ экрана. На фоне неба, особенно вечером, видно плохо.
  2. К датчику альтиметра приделать удобную оттыкалку-затыкалку.
  3. Разобраться с помехами: включаешь видеопередатчик, начинают дрожать сервы. Есть предположение, что DC-DC конвертер по питанию гадит.
  4. Ну и, наконец, исправить ошибку в коде, из-за которой текущие высота и скорость обнуляются не только при включении борта, а ежеминутно 😃
foxfly
smalltim:

Сегодня полетал.
Самолетику зачет, мой EasyStar уже облетан, но с камерой до сегодняшнего дня не летал.

Мне низачот 😃

  1. Букифки надо убрать в низ экрана. На фоне неба, особенно вечером, видно плохо.
  2. К датчику альтиметра приделать удобную оттыкалку-затыкалку.
  3. Разобраться с помехами: включаешь видеопередатчик, начинают дрожать сервы. Есть предположение, что DC-DC конвертер по питанию гадит.
  4. Ну и, наконец, исправить ошибку в коде, из-за которой текущие высота и скорость обнуляются не только при включении борта, а ежеминутно 😃

Буквовки надо положить на темную подложку.
Камеру поставить так, чтобы она при ровном “киле” небо ВООБЩЕ не видела -писАл уже где-то: 45 градусов вперед-вниз.
Ну а программные “плюшки”- это святое, они еще долго вылезать будут: судя по всему, питание у тебя одно? Т.е. силовой аккумулятор? Так в нем может, и собака порылась: там же тоже DC/DC стоит (ВЕС) они друг с другом запросто могут конфликтовать вися на одном проводе.

tumbzik
foxfly:

…там же тоже DC/DC стоит (ВЕС) они друг с другом запросто могут конфликтовать вися на одном проводе.

Чет сильно сомневаюсь. Линейник импульснику не будет мешать, а вот у передатчика импульсник будет гадить в линию и еще как. По возможности нада прямо от акб разделить земли и линии питания и на линию питания проца поставить небольшой фильтр. Не пробовал осциллом смотреть на столе, че там творится?

deNick
tumbzik:

Чет сильно сомневаюсь. Линейник импульснику не будет мешать, а вот у передатчика импульсник будет гадить в линию и еще как. По возможности нада прямо от акб разделить земли и линии питания и на линию питания проца поставить небольшой фильтр. Не пробовал осциллом смотреть на столе, че там творится?

Споткнулся на такой же фигне. Питание видеопередатчика и камеры- от отдельной липольки на 11,1 В.

Проблема решилась убиранием проводки (видеокамера-видеопередатчик-липолька) на 3-5 см от сервомашинок (пустил в обход). Дергаться сервы перестали.

PS Down-step конвертер (импульсник) в цепи питания видеопередатчика не использовал- от отдельного полипа все и так работает замечательно.