Телеметрия (часть 1)
Мужики спасибо.Мне както даже стыдно в сложных расчетах разобрался а на простых завис.
Теперь мой простенький автопилот работает.
А подробнее можно? Что и где в момент включения есть ноль?
Текущее положение есть ноль. Его автопилот и поддерживает дальше.
Вот ссылочка на соответсвующий документ: www.atmel.com/dyn/resources/…/doc7769.pdf.
На странице 12, п. 7 FAQs, читаем 3-ий вопрос-ответ:
Да, я нашёл уже.
В принципе, так и есть - бутлодер работает внутри чипа, а запись фьюзов из приложения невозможна.
Мой программер работает через ISP, посему ему пофиг.
Впрочем, кроме делителя на 8, который можно подправить из софта, и маленького периода вачдога, котрый от туда же правится, претензий к фьюзам нет.
Коллеги, на плате автопилота не предполагается делать какое-то меню настроек, кнопки и т.д. Все настройки - с компука, через USB.
Это приемлемо?
Сейчас еще есть время подумать и решить, надо ли настройки кнопками на плате и экранное меню поверх видеосигнала, или не надо.
И еще вопрос: а где лучше хранить собственно пользовательские настройки автопилота, телеметрии и т.д.? В EEPROM Атмеги или во внешней памяти?
С одной стороны заманчиво подстраивать автопилот пямо в поле кнопками, поглядывая через очки в меню. А с другой стороны, не усложнит ли это конструкцию?
У меня вот другое немного предложение: а не замутить ли простенькую систему автослежения для патч антенки приемника, как пан-титл у камеры? Чтоб антенка сама доворачивалась по максимуму сигнала.
С одной стороны заманчиво подстраивать автопилот пямо в поле кнопками, поглядывая через очки в меню. А с другой стороны, не усложнит ли это конструкцию?
Как программист могу сказать точно - написать код, отвечающий за отрисовку и функционал меню (меню сразу должно подразумевать многоуровневость) очень просто.
Т.е. сейчас меню - функция желательная, но не обязательная (а через пол-года год вполне может стать очень и очень нужной).
Если здесь демократия и можно голосовать, 😃 то я “за” меню.
У меня вот другое немного предложение: а не замутить ли простенькую систему автослежения для патч антенки приемника, как пан-титл у камеры? Чтоб антенка сама доворачивалась по максимуму сигнала.
Если по максимуму сигнала, то антенна должна непрерывно “мотать головой”, чтобы этот самый максимум искать…
Такую систему делал еще год назад какой-то гаврик на rc-groups (точную ссылку навскидку не дам, но найти несложно). Однако, насколько я помню, для нормальной работы этой системы ему пришлось добавалять детектор корректности принимаемой синхры, потому как “максимум rss” и “лучшая картинка” - это не всегда одно и то же.
Я же собирался делать антенный привод, ориентирующийся по координатам (благо gps все равно летает, а значит есть и стартовая позиция и текущая, и высота), так что, единственное, что нужно сделать - это передать “вниз” текущие координаты в цифре… Нашел открытый проект подходящего радиомодема и даже прикупил под азимутальный привод недорогую “яхтенную” 360-градусную серву, но вот времени на реализацию пока не хватает.
Коллеги, на плате автопилота не предполагается делать какое-то меню настроек, кнопки и т.д. Все настройки - с компука, через USB.
Это приемлемо?
Да, но тогда необходимо таскать с собой комп обязательно.
Сейчас еще есть время подумать и решить, надо ли настройки кнопками на плате и экранное меню поверх видеосигнала, или не надо.
Меню - это звучит вкусно. И комп не надо таскать с собой. Вместо кнопок предлагаю использовать квадратурный энкодер с интегрированной кнопкой. Очень удобная штука для навигации по меню (для подключения необходима одна ножка с внешним прерыванием по перепаду и одна без оного + одна на кнопку). Но, может быть, навигацию по меню попробовать осуществить при помощи передатчика? (аналогично переключению размеров шрифта).
И еще вопрос: а где лучше хранить собственно пользовательские настройки автопилота, телеметрии и т.д.? В EEPROM Атмеги или во внешней памяти?
Если на данный момент памяти достаточно и есть, например, двукратный запас по объёму (“на вырост”), то, имхо, в меге. В противном же случае - во внешней.
И еще вопрос: а где лучше хранить собственно пользовательские настройки автопилота, телеметрии и т.д.? В EEPROM Атмеги или во внешней памяти?
Епрома меги хватит за глаза.
Коллеги, на плате автопилота не предполагается делать какое-то меню настроек, кнопки и т.д. Все настройки - с компука, через USB.
Это приемлемо?
Я за меню через очки. Джойстик на кее есть, купить такой же для будующей платы элементарно.
Просто ноутбук есть не у всех, а памяти в меге просто валом. У меня меню, писаное под 51-й, занимает 2 кб, причём в проге только интерпретатор, а само меню находится во внешней епромке.
Там массив структур. Первые 8 байт - коды сегментов (у меня там дисплей). 9-й байт - способ отображения (сколько сегментов высвечивать тупо, сколько засвечивать преобразоваными числами и т.д., перебирается свитчем). Ну и далее по 2 байта на кнопку. Action и NextItem. То бишь что сделать и куда потом пойти по нажатию этой кнопки. Action аналогично выбирается свитчем из нескольких вариантов (инкрементировать переменную по адрезу Х, декрементировать, сбросить или ничего не делать…).
Очень удобно - один интерпретатор, а туда можно забивать сколько угодно итемов и хранить их где угодно. Это стандарт для МКашного применения, так ещё на Z80 писали, где память внешняя была. Могу скинуть свои и немецкие менюшки для примера, но они под Кейл 51-х.
Честно говоря, не хочется кнопки на плате городить.
Как думаете, с RC передатчика удобно будет рулить меню?
Вправо-влево-вверх-вниз - элеронами/РВ, нажать ОК - газом.
Всё руление будет, конечно, до полета. В полете - фигушки. Только включение гиро и автопилота.
Следующая партия печатных плат пришла из Резонита, теперь не 1.6мм, а 1мм толщиной. Недостающие датчики и GPS модули забираю завтра. Обращайтесь 😃
Документация по модулю телеметрии почти готова, скоро выложу.
А где вы покупали свой кей?
В Терраэлектронике
Здесь www.fourwalledcubicle.com/MyUSB.php USB-библиотека для AVRок. С кучей реально работающих примеров (для USBKEY’я в том числе) в качестве host’a и device’a. И писано всё под avr-gcc.
Бугага! Я завёл MLX90614!!! 😃
Жутко нестандпртная скотина, но красная армия всех победит.
На неделе хочу записать показания датчиков на землю и небо, суток за пять. Станет многое понятно.
Сейчас бегаю с ним по комнате и всё измеряю 😲 Похоже на правду. Тока паяльник упорно кажет как 90 градусов… Видимо, надо прям в сенсор жало тыкнуть 😃
В общем, если кому интересно, пишите в мыло, поделюсь кодами для кея (используется аппаратный TWI).
Поздравляю 😃
А я, наконец-то, добил документацию к модулю телеметрии:
Коллеги, только что я имел разговор с героическим коллегой maloii по поводу телеметрии.
Надеюсь, он сам расскажет и покажет на видео, что случилось, но я лучше еще раз напишу то, что написано в документации:
Датчик тока калибруется в момент старта телеметрии (15 секунд после подачи питания), поэтому то, что потребляется от батареи в эти 15 секунд, будет принято за нулевой ток. И в последующем, в полете, модуль телеметрии будет показывать заниженный ток и заниженный расход заряда батареи.
Не стоит считать, что видеосистема потребляет мало, и вроде как бы можно пустить ее мимо датчика тока и не принимать во внимание то, что она съедает от батареи.
Самый надежный способ гарантировать, что расход батареи будет посчитан правильно - сделать так, чтобы все существенные потребители тока (камера, передатчик, регулятор мотора) в полете были подключены через датчик тока, а во время старта телеметрии - мимо датчика тока. Сам модуль телеметрии при этом отключать от питания нельзя, потому что он сбросится.
Всё это можно сделать подтыканием датчика тока в цепь только после инициализации телеметрии (тогда нулевой ток действительно будет нулевым), или, еще проще, без перетыканий - 15 секунд после подачи питания держать токовые контакты датчика тока замкнутыми любой кнопкой, переключателем, или, на худой конец, отверткой.
В таком случае на старте телеметрии первые 15 секунд на датчике тока будет действительно нулевой ток, а после отжимания кнопки - убирания ответртки весь ток пойдет через датчик.
Я сейчас в документации сделаю соответствующие правки, чтоб даже героям было понятно, что делать с датчиком тока 😃
Maloii, даешь видео и историю из первых рук!!!
Датчик тока калибруется в момент старта телеметрии (15 секунд после подачи питания), поэтому то, что потребляется от батареи в эти 15 секунд, будет принято за нулевой ток.
Тимофей, ну не пожалейте одной ноги однокристаллки, - сделайте кнопку “preset” !
Истинно говорю Вам, - и не по вредности сугубой, а токмо из собственного опыта многотрудного исходя, - что кноповка сия - зело удобна и на многие дела вельми полезна ! 😉
Да не вопрос сделать такую кнопку. Только что она сделает в моем случае? Всё ж и так калибруется само без лишних телодвижений.
Отключит-подключит нагрузку к датчику тока?
Так проще такую кнопку как раз к датчику тока и прилепить.