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

belkinnn

Мужики нужна помощь, собрал вашу схемку работает отлично но хотелось бы самому написать прогу только на С так как я не знаток асма.
Так вот все бы хорошо только не получается выводить данные, подскажите как осуществляется вывод символов.Буду благадарен.

Artie
belkinnn:

Мужики нужна помощь, собрал вашу схемку работает отлично но хотелось бы самому написать прогу только на С так как я не знаток асма.
Так вот все бы хорошо только не получается выводить данные, подскажите как осуществляется вывод символов.Буду благадарен.

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

belkinnn
Artie:

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

Теория понятна.Линии да квадраты получаются но как только начинаю работать с символами все растягивается как будто опирация присвоения выполняется милисикунд 10.

serj
Artie:

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

Ну почему ж не получится- надо просто представлять во что компилируется написаннаяя тобой инструкция, и все… есть много успешных проектов, сделанных на С… в данной ветке ссылки на них давались. Ваш покорный слуга сделал это в 2000г на AT90S4433 кристалле.
Если не успеваете программно, делайте аппаратно, например SPI используя…

Dikoy
Vad64:

Не смешите. Питание и 2 аналоговых выхода
paparazzi.enac.fr/wiki/…/Other_Infrared_Sensors

И того 43$ за модуль с аналоговым выходом, у которого ещё резюки надо перепаивать под себя или 25*4 баксов за 4 полностью цифровых калиброваных сенсора, выдающих уже температуру (причём видимую и воздуха) с возможностью ифровой выставки. Я лично радикальной разницы не вижу 😃

всем
В выходные игрался с EZ0. Странный он… В цифре я его так и не запустил ( история любви тут: forum.ixbt.com/topic.cgi?id=48:7924-5#152 ), пришлось оценивать работу по вольтметру, подключённому к аналоговому выходу.

Во-первых, очень широкий угол обзора. Если держать его на вытянутой руке, он всё равно чувствует тело и из-за этого завирает. Приходится ещё чуть отклонять от себя. Но тут другой косяк - при наклонах выше ~15 градусов сонар теряет землю и показывает бесконечность…
Ещё непрятная особенность - он достаточно тормозной. Если резко водить вверх/вниз, начинает бесится. Если направлять на быстро подходящего человека, не успевает сообразить что происходит - стрелка вольтметра начинает истерично метаться. Если человек подходит медленно, всё ок.

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

Artie
serj:

Ну почему ж не получится- надо просто представлять во что компилируется написаннаяя тобой инструкция, и все… есть много успешных проектов, сделанных на С… в данной ветке ссылки на них давались. Ваш покорный слуга сделал это в 2000г на AT90S4433 кристалле.
Если не успеваете программно, делайте аппаратно, например SPI используя…

Может, конечно, я чего не понимаю, но:

  1. Разговор о конкретном проекте, в котором SPI не используется. А на программную реализацию скорости - в обрез.
  2. Человек сказал, что ассемблера не знает. Как при этом можно “представлять” результаты компилляции - не представляю.
  3. Посмотрите на то, как Тимофей свернул развернутый прежде цикл вывода строки (в данном конкретном проекте). - Если Вам удастся написать на сях конструкцию, дающую в результате код, сравнимый по времни выполнения, - обязуюсь всю оставшуюся жизнь называть Вас сишным гуру ! 😃

То, что все то же самое можно сделать на других языках, кристаллах, и иных аппаратных решениях - сомнению, разумеется, не подлежит. Но вот именно в эту крынку си “нэ лэзет”. - В смысле, не успевает.

belkinnn:

Теория понятна.Линии да квадраты получаются но как только начинаю работать с символами все растягивается как будто опирация присвоения выполняется милисикунд 10.

Не видя Вашего кода, сказать что-то о причинах оного - затруднительно.
Общий ответ: “Вероятно, где-то ошибка”. 😎

На самом деле, у атмела достаточно удачный ассемблер (хоть и не без кривостей), так что при общем понимании “физики процесса” много времени на его изучение у Вас не уйдет; - за пару-тройку дней освоитесь.

Dikoy
Artie:
  1. Посмотрите на то, как Тимофей свернул развернутый прежде цикл вывода строки (в данном конкретном проекте). - Если Вам удастся написать на сях конструкцию, дающую в результате код, сравнимый по времни выполнения, - обязуюсь всю оставшуюся жизнь называть Вас сишным гуру ! 😃

Я если я вставлю в си ассемблерную втавку мне дадут удостоверение гуру? Хотя бы синенькое… 😃

На самом деле, можно и на Си сделать. Зависит от компилятора и камня. Ничто не мешает работать в Си побитно, сводя математику к двоичной логике. Трактуемый компилятором код будет мало отличаться от рукописного асма, но переносимость сохранится. Просто мне частенько раньше приходилось писать на Си “быстрые” прерывания. Уверяю, это возможно 😉 Просто нужно хорошо знать компилятор.

Artie
Dikoy:

Я если я вставлю в си ассемблерную втавку мне дадут удостоверение гуру? Хотя бы синенькое… 😃

Найн. Ни, беленького, ни серенького. 😛
Задача была озвучена, как “написать прогу только на С так как я не знаток асма”.

На самом деле, можно и на Си сделать. Зависит от компилятора и камня. Ничто не мешает работать в Си побитно, сводя математику к двоичной логике. Трактуемый компилятором код будет мало отличаться от рукописного асма, но переносимость сохранится.

ДЫк, корочки гуры ждут своего владельца 😉. Цикл был опубликован в этой же ветке чуть ранее (где-то в конце мая)

serj
Artie:

Может, конечно, я чего не понимаю, но:

  1. Разговор о конкретном проекте, в котором SPI не используется. А на программную реализацию скорости - в обрез.
  2. Человек сказал, что ассемблера не знает. Как при этом можно “представлять” результаты компилляции - не представляю.
  3. Посмотрите на то, как Тимофей свернул развернутый прежде цикл вывода строки (в данном конкретном проекте). - Если Вам удастся написать на сях конструкцию, дающую в результате код, сравнимый по времни выполнения, - обязуюсь всю оставшуюся жизнь называть Вас сишным гуру ! 😃

То, что все то же самое можно сделать на других языках, кристаллах, и иных аппаратных решениях - сомнению, разумеется, не подлежит. Но вот именно в эту крынку си “нэ лэзет”. - В смысле, не успевает.

Я не имел в виду именно то, что я написал… повторить один в один-нереально, но и не нужно…
Вообще , имхо, обычно быстрее написать свою программу, чем разбираться досконально в чужой- из нее полезно взять идею 😃

На гуру даже претендовать не буду, пускай этим Dikoy занимается- он все пытается с другими чем-нибудь померяться 😁
в 8 кб впихнуть можно много, а не влезет- взять такой же по ногам кристалл с большей памятью…
Кстати, мой первый вариант видеотелеметрии был написан с асемблерными вставками, потом я их заменил сями:)

smalltim

Чипыдип угрюмый ацтой. Взяли еще 3 дня на обработку заказа по термодатчикам. А деньги уже уплочены 😦

Кстстаи, господа, можете помочь советом?
Я пока всё-таки больше склоняюсь к отслеживанию горизонта, нежели к гироскопам/акселерометрам. И математика проще, и цена значительно ниже.
Что если вместо пирометров взять ИК фотодиоды, только, разумеется, на нужный диапазон ИК? Что скажете, жизнеспособный вариант?

smalltim

Уфф. Я уж было испугался - думал, не бывает гнезд с шагом 2.54 на плату.
Вот они: www.chip-dip.ru/catalog/show/1342.aspx?st=1&mode=p…

Такие гнезда будут стоять на второй плате для соединения с первой и для механической прочности бутерброда из двух плат. Детальки на второй плате - вовнутрь бутерброда.
Соединение - по разъемам SPI, питания, GPS, PPM. Как раз по углам, кстати 😃

belkinnn

Да вы были правы асемблер не такой уж и замудреный как кажется с первого взгляда.Я вроде практически разобрался с исходником.И написал на си только через isp miso.А как на ваш взгляда в чем плюсы и минусы этих двух методов.Как мне кажется порт miso на контроллере всеравно свободен, почему бы его не использовать?

Artie
belkinnn:

Я вроде практически разобрался с исходником.И написал на си только через isp miso.А как на ваш взгляда в чем плюсы и минусы этих двух методов.Как мне кажется порт miso на контроллере всеравно свободен, почему бы его не использовать?

Не знаю у кого как, а лично у меня сейчас по spi обмениваются данными “вычислятель” с “отображателем”.
У Тимофея по тому же интерфейсу будет подключаться автопилот…

Если Вам этого не нужно, то ничто не мешает генерить каритнку через spi, но [на первый взгляд] я существенной выгоды от этого не вижу, так как в обсуждаемой конфигурации ничего серьезного во время вывода строки делать все равно не успеваешь. Ну и ради чего тогда терять лишний аппартный интерфейс ? - Только для возможности отказаться от ассемблерных вставок ?

Artie
smalltim:

Что если вместо пирометров взять ИК фотодиоды, только, разумеется, на нужный диапазон ИК? Что скажете, жизнеспособный вариант?

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

  • Совсем не подарю, но “на ответственное хранение” 😉 - отдам.
Vad64

Насчет ИК фотодиодов. Нужен диапазон дальнего ИК излучения 8-14 мкм. В ближнем ИК солнце все будет портить. Фотодиодов и фоторезисторов (без охлаждения), работающих в дальнем ИК, насколько мне известно, не существует. Есть пирометры, болометры, термопары.

Насчет гироскопов. По моим данным, даже на относительно хороших датчиках (ADIS16100) следует ожидать дрейфа 1-2 градуса в минуту. Для системы стабилизации (автогоризонта) это многовато. Придется как-то компенсировать дрейф за счет использования акселерометров или еще как-то. Я лично пока отчетливо не представляю, как это делать. Система автопилота меня тоже интересует, но я все более склоняюсь к использованию головы от FMA direct, тем более что ее цена уже вполне адекватная, по-моему.

smalltim

Поискал всяческие thermopile датчики. Кто их только не делает, блин. Hahamatsu, Perkin Elmer, Heimann, Dexter, Melexis, HLPlanar, наших закрытых заводов штуки три. И цены - зачастую просто смешные. Но как купить всё это здесь, без ожидания в 3 недели и без доставки из-за бугра - жопа. 😦
В общем, готовые модули от FMA рулят, но это неспортивно и доставка опять же 😦
И по маркировке, кстати, видно, что FMA используют нифига не Melexis, это и по цене видно.
Буду бомбить Сеть дальше.

Dikoy
Artie:

ДЫк, корочки гуры ждут своего владельца 😉. Цикл был опубликован в этой же ветке чуть ранее (где-то в конце мая)

Ыыы… А можно ссылку? Не могу найти. Код Тимофея открыл и закрыл. Не такой я знаток асма, чтобы с наскоку переварить 8 кубов… 😃 Можно мне скопипастить тот кусок, за который дают корочку? 😃

serj:

он все пытается с другими чем-нибудь померяться 😁

Вы меня ни с кем не спутали? Ссылки можно?

smalltim:

Я пока всё-таки больше склоняюсь к отслеживанию горизонта, нежели к гироскопам/акселерометрам. И математика проще, и цена значительно ниже.
Что если вместо пирометров взять ИК фотодиоды, только, разумеется, на нужный диапазон ИК? Что скажете, жизнеспособный вариант?

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

Vad64:

Насчет гироскопов. По моим данным, даже на относительно хороших датчиках (ADIS16100) следует ожидать дрейфа 1-2 градуса в минуту. Для системы стабилизации (автогоризонта) это многовато. Придется как-то компенсировать дрейф за счет использования акселерометров или еще как-то. Я лично пока отчетливо не представляю, как это делать. Система автопилота меня тоже интересует, но я все более склоняюсь к использованию головы от FMA direct, тем более что ее цена уже вполне адекватная, по-моему.

Так и есть. Маятниковая коррекция - вещь в себе. При любом манёвре должна отключаться. У нас сейчас адук впыривает на обслуживание 3 осевой БСО с диким алгоритмом коррекции и мало что получается… Минут на 10 хватает, потом запредельный уход 😦 А это уже вторая БСО, созданая на кафедре Гироскопии и навигации.

smalltim:

Но как купить всё это здесь, без ожидания в 3 недели и без доставки из-за бугра - жопа. 😦

Вооот. По этому я и решил, что уж раз заказывать, то цифру.

Кстати, у нас на работе куча газовых сенсоров дохлых. Там стоят пирометры. Эмиссия СО2 близка к рабочей зоне требуемых пиродатчиков. Что там за пирометры я не знаю… И цоколёвку не знаю. Но можно попробовать разобраться…

Psw

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

Dikoy:

А можно ссылку? Не могу найти <> тот кусок, за который дают корочку?

Легко. Сообщение №609 от May 29 2008, 01:30.
Арти этот кусок запомнил быть может потому что ход мысли видимо действительно не обычный и Арти на этой почве чуть ниже занялся само бичеванием слегка.
P.S.
А вот мне интересно - что скажут опытные на затею дублирования капризного ГПС - будет толк (ну кроме цены - цена двух дополнительных ГПС как одна хорошая серва и кроме недостатка аппаратных UART в обычных однокристалках ) ?
Ну то есть ставим на модельке ТРИ к примеру GPS приёмничка на вершинах равно стороннего треугольника со стороной кратной пол волны от 1500 МГц и углами антенн как у треугольной пирамиды равносторонней. В голове усредняем “эротические фантазии” трёх независимых ГПС вычислителей, у которых вполне возможен разный набор принимаемых спутников и соответственно разные вычисления/разные итоговые координаты.
Как минимум должны иметь простор для фильтрации в голове, которая знает, что все три ГПС находятся рядышком и вполне могет хотя бы точность этого “рядышком” оценить.