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

Dikoy
Панкратов_Сергей:

Неверно Вы излагаете цифры. 0.03 и 0.01 - это величины,связанные с разрядностью. Точность же 0.5 град. в неочень широком диапазоне температур(комнатные), а для мед 0,1 град и только при температурах человеческого тела.

Панкратов_Сергей:

А собственно Вам точность измерения истинной температуры важна, или способность отслеживать разницу?

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

foxfly:

тут мне не понятно, каким образом цифровые датчики у Dikoy могут быть скомпенсированы

Элементарно - термометр корпуса внутрях. Его показания заведены в алгоритм обработки, и их также можно получить внаружу.

Панкратов_Сергей:

Я написал здесь лишь потому чтоб заострить внимание, что далеко не все датчики подойдут.

Ну если самолёт летает с этими датчиками, то они подходят или нет? 😃

Artie
V_Labanauskas:

Esli (купить !?) to pokupai USB programator, na LPT daze nesmotri 😃

“Ваше мнение хорошее, но неправильное !” 😁

Существенный минус программатора на LPT-порт - только требование наличия этого самого порта (у меня, например, на одном из ноутбуков его нет)…
Во всем же остальном у него есть изрядное количество плюсов: кроме цены и возможности собрать на коленке полным чайником, им (с соответствующим софтом), например, можно одним программатором через один разъем программирования шить два кристалла в одной системе (как у меня, например).

Могу порекомендовать AvReal от Саши Редчука - вместе со слегка модифицированным Altera ByteBlaster’ом…

Панкратов_Сергей
Dikoy:

Вы сами себе противоречите.😃

Неправильно истолковываете.
Не я Вам противоречу -а Вы даташиту.
Где четко указана точность. И она на границах указана 3 процента.
И это написано в ответ тому, что Вы сравнили 2,5 процента термометра с какими-то 0,03процентами.ВЫ СРАВНИВАЛИ НЕСРАВНИВАЕМЫЕ ЦИФРЫ.
Точность у обоих пирометрах одинакова. Возможно что это один и тот же датчик.
Нужно внимательней оперировать цифрами.

Панкратов_Сергей
foxfly:

Извините, что вмешиваюсь.
Просто года 4 назад пришлось досконально разбираться с работой FMA Co-Pilot
и выяснилось следующее: у автора этого агрегата получилось очень изящное по простоте решение за счёт того, что он использовал датчики (thermopile detektor) фирмы Dexter http://www.dexterresearch.com/product-finder/products/st60-dual без всякого внутреннего усилителя!
У американца же- две термобатарейки включены встречно- последовательно на вход операционника с малым дрейфом, за счёт чего убивается множество зайцев: полная автоматическая термокомпенсация при любой температуре, ибо греются- остывают они синхронно, (тут мне не понятно, каким образом цифровые датчики у Dikoy могут быть скомпенсированы?), далее- отпадает нужда в попарном подборе датчиков.
.

Да простейшее и высокоэффективное решение.Применение цифровых добавив кучу проблем однозначно снизит точность. Нужно будет индивидуально каждый сенсор калибровать . И ради чего?

PigTail

А зачем ? Они уже откалиброваны на заводе, не надо усилителя и борьбы с помехами при таких высоких КУ. С чего точности снижаться?

Панкратов_Сергей

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

PigTail:

А зачем ? Они уже откалиброваны на заводе,?

А хрен его знает зачем Дикой их калибрует

Пирометры я калибрую - сую в одинаковые условия и в цифре калибрую. Быстро и какчественно.

serj

Сами себе ответили: в первом случае будет точнее если разница термохарактеристик датчиков , меньше чем точность снятия тех же характеристик “внешними” элементами .

Если Сергей много датчиков откалибровал, он по разнице может сказать- сильно ли у них плавает термохарактеистика от датчика к датчику.

От себя могу сказать, что, например, у микроэлектромеханики, например, даже знаки могут различаться.

PigTail

Это одни предположения, не факт, что и спектральная чуствительность и ее температурная зависимость у двух датчиков совершенно одинаковы, в то время как цифровые по идее должны быть откалиброваны на заводе. Кстати у Dikoy в файле с результатами температура корпуса у датчиков разная, интересно это разница от показаний внутреннего датчика температуры иль она в реалии разная?
Пардон, пока шлепал serj практически ответил, в общем при имеющихся данныхпо приемникам остается практически гадать, а что кстати есть микроэлектромеханика?

Панкратов_Сергей

На самом деле предположения, а не факт.Мои предположения.
Но при датчиках из ОДНОЙ КОРОБКИ мне представляется что так должно быть.
К тем сомнениям могу еще добавить.
Несколько ранее Дикой очень отстаивал то, что нехер загружать микроконтроллер и по возможности лучше операцию (модуляция) поручить внешнему спец контроллеру.
Теперь ситуация с применением цифровых датчиков вместо аналоговых-
С цифровыми придется задействовать два входа микропроцессора, осуществлять обработку этих сигналов, производить вычитание.
С аналоговой схемой - один вход и практически никакой обработки -на входе то уже дельта.
С аналогом получается много проще и нужно меньше ресурсов.

PigTail

Ну тоже все не так просто:

smalltim:

… Только платки пирометров придется, наверное, переделывать… Ибо коэффициент усиления на платках ровно 1000, и на ноуте явственно виден 50-герцовый фон с размахом 0.3-0.5% от VCC.
ФСС на 16 пачек очень мощно всё это давит, но добавляет инерционности 😦
… надо еще будет попробовать экранированным проводом соединение с платой сделать…

Панкратов_Сергей

Не совсем грамотно выполнено и все.
Некоторые проблемы могут возникнуть только в случае разноса парных датчиков .Допустим на концы крыльев
Но и то проблема решаема. Посмотрите примеры из медицины - кардиограф и прочее.

lodeworx
smalltim:

Гугл говорит, видео недоступно 😦
Сейчас же мне надо будет из-через-под коленку себя за ж*пу укусить, чтоб это влезло в код. Сейчас 99.7% места в атмеге занято. Потому я так нешустро реализовываю все новые фичи. Попробую утоптать код еще немного, но не гарантирую, что влезет.

Во! Блин! Нада же-е-е-е-е?! А быстрей не будет работать??? Градус в секунду?😉
Выложу графику ИЛС на МеГе- полный отстой получился! Ну не тянет она…

Панкратов_Сергей:

Не совсем грамотно выполнено и все.
Но и то проблема решаема. Посмотрите примеры из медицины - кардиограф и прочее.

Вам бы ребята вольтметры строить! (и пожарные сигнализации!!!)😁
Шутка!
Если в приборах нельзя определить “TREND!”, то используйте их на трамваях, а не в авиации…

Dikoy
Панкратов_Сергей:

С аналоговой схемой - один вход и практически никакой обработки -на входе то уже дельта.

Так может говорить только человек с малым опытом проектирования аналоговых измерительных устройств.

Панкратов_Сергей:

Несколько ранее Дикой очень отстаивал то, что нехер загружать
микроконтроллер и по возможности лучше операцию (модуляция) поручить внешнему спец контроллеру. Теперь ситуация с применением цифровых датчиков вместо аналоговых-

Не надо путать тёплое с мягким. Чтение датчиков у меня занимает 2,5 мС, вычисление угла 800 мкС. “Лишнее вычитание” занимает десяток тиков МК, а это единицы микросекунд. Я бы не сравнивал это с модуляцией FSK.

Панкратов_Сергей:

Но при датчиках из ОДНОЙ КОРОБКИ мне представляется что так должно быть.

Да нихрена. Мои датчики тоже из одной коробки, причём цифровые и калиброванные. А всё равно показания расходятся.

PigTail:

Кстати у Dikoy в файле с результатами температура корпуса у датчиков разная, интересно это разница от показаний внутреннего датчика температуры иль она в реалии разная?

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

Панкратов_Сергей:

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

Вот только параметры датчиков не могут быть одинаковыми. Это НЕВОЗМОЖНО.

Панкратов_Сергей:

А хрен его знает зачем Дикой их калибрует

Затем, чтобы получить относительную точность равную разрядности.
Я уже писал и вполне внятно, что пирогоризонт работает тем хуже, чем меньше дельта зенит/земля. В солнечную погоду с дельтой 30 градусов точности 0,5 градуса хватит за глаза. А в туман дельта 1 градус, и что мы будем делать?.. Могу выложить видео, как работает пиропилот в туман. Только ужать надо - 170 метров 😦

Панкратов_Сергей

Цитата:
Сообщение от Pank
С аналоговой схемой - один вход и практически никакой обработки -на входе то уже дельта.

Так может говорить только человек с малым опытом проектирования аналоговых измерительных устройств.

А расшифровать можно, в чем я ошибаюсь?

Не надо путать тёплое с мягким. Чтение датчиков у меня занимает 2,5 мС, вычисление угла 800 мкС. “Лишнее вычитание” занимает десяток тиков МК, а это единицы микросекунд.

На два датчика - 2,5 мс
А на одну дельту? Экономия существенна

Вот только параметры датчиков не могут быть одинаковыми. Это НЕВОЗМОЖНО.

Это относится и к цифровым

Посмотрим , выйдет ли у Вас с вашими цифровыми лучше чем у FMA с аналоговыми. Подождем.

Dikoy
Панкратов_Сергей:

На два датчика - 2,5 мс

На все 4 датчика 2.5 мС. Это при полностью софтварном интерфейсе. Софтварный опрос АЦП займёт столько же. Если я посажу датчики на полноценный I2C опрос не будет занимать вообще ничего, т.к. будет проходить аппаратно в одном единственном прерывании.

Панкратов_Сергей:

А расшифровать можно, в чем я ошибаюсь?

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

Панкратов_Сергей:

Посмотрим , выйдет ли у Вас с вашими цифровыми лучше чем у FMA с аналоговыми.

Как будем оценивать “лучшесть”? 😃

Панкратов_Сергей:

Это относится и к цифровым

Да. Но с цифрой проще и у неё нет целой кучи недостатков аналога.

Панкратов_Сергей

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

foxfly
Панкратов_Сергей:

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

Тут, думается дело не в дрейфах…😃
А в синдроме велоизобретения.
С одной стороны- есть проверенное, продающееся тысячами экземпляров (и успешно) устройство (FMA).
И если цель- сделать на его основе проект, то нет смысла ничего “улучшать”- оно и так отлично работает.
А если цель- сам процесс изобретения, тогда мы имеем эту вот дискуссию 😍
Проблема из разряда :“а давайте откажемся от Windows”, чтобы забить баки проклятому Гейтсу…
В отечественном фольклоре: “докажу своей маме- отморожу себе нос…”

smalltim

Сделал систему определения ориентации по 3 парам пирометров, работает в любом произвольном положении аппарата.

Следующий шаг - коррекция показаний компаса по углам ориентации аппарата, полученным с пирометров, опрос GPS, ПИД алгоритм приведения аппарата к нужной ориентации.

Artie
smalltim:

Сделал систему определения ориентации по 3 парам пирометров, работает в любом произвольном положении аппарата.

В смысле, в результате мы получаем два угла - крен и тангаж - с приемлемой (ну, скажем, до 5 градусов) точностью ? Без муторных предполетных калибровок (над асфальтом не стой, в траву не смотри… 😉) ?

Если да, то поделитесь, pls, рабочим алгоритмом; - давно хочу добавить на экран линеечку авиагоризонта…

smalltim
Artie:

В смысле, в результате мы получаем два угла - крен и тангаж - с приемлемой (ну, скажем, до 5 градусов) точностью ? Без муторных предполетных калибровок (над асфальтом не стой, в траву не смотри… 😉) ?

Если да, то поделитесь, pls, рабочим алгоритмом; - давно хочу добавить на экран линеечку авиагоризонта…

Да, 2 угла, крен и тангаж. Калибровка автоматом непрерывно в полете. С приемлемой точностью - это зависит от Ваших пирометров. Мне пришлось апроксимировать функцию чувствительности датчиков от угла падения на них света (задана в доке на датчики), построить функцию завистмости выхода датчика от затенения землей сегмента поля зрения (от 0 до 100%), найти обратную функцию, апроксимировать ее чем-нибудь несложным и ввести поправочные коэффициенты в обсчет.

Если без коэффициентов, то всё просто как мычание.
Берете 3 выхода с пар пирометров и рассматриваете их как проекции вектора нормали к плоскости самика на систему координат, привязанную к земле.
Система координат по курсу вращается вместе с самиком, а по крену и тангажу не вращается, т.е. привязана к земле.
Нормирование этого вектора (n=sqrt(x*x+y*y+z*z); x/=n;y/=n;z/=n) дает непрерывную автокалибровку в полете.

Зная компоненты этого вектора после нормирования, находите углы тангажа и крена как арксинусы, арккосинусы или арктангенсы, как уж Вам удобнее.

Теперь поправочные коэффициенты. Зная функцию зависимости угла от выхода с пары пиромеров, домножаете компоненты этого вектора на значение этой функции перед нормировкой. Еще проще - из-за того, что чувствительность датчиков нелинейна в зависимости от угла падения на них света, у меня при выходе с пары датчиков в районе, близком к нулю посчитанный угол в 1.36 раза больше, чем реальный. Дальше, при дальнейшем увеличении угла крена-тангажа или всего вместе до 45% погрешность уменьшается, и в 45% становится математически строго 0, кстати, при любых типах датчиков. Еще дальше вклад пар датчиков, бывших горизонтальными, в погрешность, стремится к 0 и при приближении к 90 градусам начинают опять играть поправочные коэффициенты, но уже на другой(их) паре(ах) датчиков.

Все расчеты проводились в маткаде при следующих приближениях: излучение от Земли равномерное по полусфере, А (может меняться во время полета), излучение от неба равномерное по полусфере, В (может меняться во время полета), земля - бесконечная плоскость, система пирометров находится строго на границе земли и неба, т.е. полсферы-земля, полсферы - небо. Думаю, с достаточной для нас точностью проканает.

Да, кстати, всё это подразумевает то, что железка знает, какое напряжение с пироголовы соответствует 0 градусов. Для этого я вывел со своих голов VCC/2, который, как все знают, не всегда строго VCC2, и подал на отдельные входы АЦП. В итоге калибровка по значению 0 мне просто не требуется, ибо я всегда знаю, где у меня 0, а калибровка по размаху выхода идет автоматом при нормировании вектора. Разумеется , с двумя парами пирометров это не проканает, нужно 3.