Smalltim OSD and autopilot (часть 1)
Не держал в руках и посему не знаю. 😦
😁скоро уже всем достанетца вот вот уже😁
А где можно взять USB программатор для плата телеметрии мини. Плата телеметрии есть, а программатора нет.
Программатро нужен, если планируется использовать телеметрию без АП.
Готовый программатор можно приобрести у Тимофея. Или использовать любой другой, поддерживающий Мегу 8: разъем подключения программатора описан в документации.
Похоже, твой приемник выдает ППМ на той же частоте, что и частота прихода прерываний от АЦП, и бедному обработчику прерываний АЦП просто не удается вовремя принять и обработать данные - у приема ППМ наивысший приоритет. Код написан так, что такие вещи нигде не вызывают коллизий, но как раз АЦПшные дела еще и на внутренний таймер завязаны.
Версия эта весьма правдоподбна. По крайней мере она объясняет все чудеса прошлого сезона, когда в стабилизации все было идеально, а включение АП начинало раскачку (наверное, режим АП потребляет больше выч. ресурсов?), а так-же поведение в последнее время.
Я на всякий случай заосциллограффировал сигналы на вых приемника: на первом рисунке каналы 1 и 2; на втором - 1 и 4. Период следования импульсов 16-17 мс.
А также снял скриншот КП в режиме ручного полета и со включенным АП (Впрочем, они не отличаются).
Возможно тебе, Тимофей, это чем-то поможет. Хотя я, признаться, не вижу здесь отличий от других приемников.
Опять нарвался на заморозку. На сей раз дома, без подключения к ПК.
Никаких особенных действий не делеал, проверял заменённый регулятор движка. Заметил, что на экране, горизонт заморозился. Подключил КП и снял скриншоты с АЦП платы пилота (показания на экране не менялись). Возможно это поможет.
Судя по картинкам - проблема в прекращении прерываний от АЦП меги пилота.
Попробовал сегодня АП в условиях сильно переменной облачности и не слабого порывистого ветра.
Пирогоризнт слегка путался, но не на столько, чтобы не справится с Изиком.
Техническое видео прилагаю.
PS При развороте на посадке боковой ветер, провода и отсечка регуля,- адреналинчика отведал…
Нашел причину неадекватности пирогоризонта с новым АП, проявляющейся в плохую погоду или при некоторых особенностях установки.
На новом АП стоят резисторы 1к в линиях от датчиков ко всем входам АЦП. Это защита от КЗ, прочих неприятностей, в общем, в правилах хорошего тона.
В старом (зеленом) АП такого не было, поэтому проблема не проявлялась.
Итак, проблема: в чипе по умолчанию, с завода, включен JTAG интерфейс, который использует те же ноги, что и АЦП, причем, половину, т.е. 4 из 8 ног.
Так вот: даже если JTAG не используется по прямому назначению, и входы эти сконфигурированы как аналоговые, резисторы подтяжки на этих ногах всё равно остаются. На новом АП эти резисторы образуют делитель, подвешенный к 5В, и по 4 из 8 входов АЦП показания оказываются искаженными где-то на 5%. Этого хватает, чтобы горизонт, особенно в плохих погодных условиях, начал работать некорректно.
Убил JTAG специально прямо в коде, не трогая fuse биты, и всё вернулось к норме.
Вторая новость. Иногда при подключении всех 8 входных каналов ППМ к приемнику и подключенном USB автопилот не четко детектировал наличие телеметрии на старте. Примерно в 1-2 разах из 10 он считал, что телеметрия не подключена.
Проблема былла из-за того, что синхронизация по времени с телеметрией была сделана не оптимальным образом. Подправил код, теперь детект телеметрии на старте работает в 100% случаев, а по ходу работы АП на синхронизацию с телеметрией теперь тратится в 10 раз меньше времени.
Пофикшу “замерзание” пирогоризонта и добавлю возможность отключения форсирования газа в круге определенного радиуса над базой, выбор размаха отображаемых на экране углов тангажа, и будет свежая прошивка. По пути, кстати, еще в 2 раза повысится скорость отработки пиродатчиков и отображения горизонта.
delfin000, пожалуйста, напишите в почту smalltim собака mail.ru. Небольшую пачку пилотов, пока я был в отпуске, сделали, так что передам полный комплект прямо из рук в руки.
Попробовал сегодня АП в условиях сильно переменной облачности и не слабого порывистого ветра.
Любопытное видео, Андрей! Ветер был метров 7 в среднем, так? И это растягивало эллипс кружения вокруг базы до 400 м от центра. Причем недоворот за счет ветра не превышал 50-70 градусов. Если бы рулил человек, достаточно было чуть резче доворачивать при небольших углах отклонения, а у АП логика пропорциональная, чем ближе к 0, тем меньше угол. Интересно, как на настоящих АП это сделано, ведь большие самолеты держат курс +/- пару градусов?
И еще, по тактике пилотирования, я заметил, что ты почти всегда идешь на моторе. Даже при посадке - 3-5 А тока. Свалится не боишся? Просто на малых оборотах винт превращается в тормоз.
Небольшую пачку пилотов, пока я был в отпуске, сделали, так что передам полный комплект прямо из рук в руки.
а телеметрии когда будут то?
Любопытное видео, Андрей! Ветер был метров 7 в среднем, так? И это растягивало эллипс кружения вокруг базы до 400 м от центра…
В штиль диаметр круга составляет примерно 200м, причем точка возврата находится в центре этого круга. Т.е. расстояние до модели около 100м.
В сильный ветер при развороте над базой Изика тут же уносило по ветру и к моменту разворота удаление было уже существенным. В итоге при возврате он успевал прицелиться именно на точку возврата и так по кругу. В итоге, получился сильно вытянутый эллипс. С наветренной стороны самик разворачивался фактически над точкой старта, а по ветру - как хватало рулей. В лево он у меня всегда идет неохотно. Лечится, скорее всего, предоставлением бОльшей свободы АП по рулям.
Зато, когда он снижался правым виражем над базой с 500 метров до 150 целевых, спиралька получалась “тугая” и компактная. Причем порадовали “ступеньки для отдыха”. При включении АП опасался, что будет резкое снижение и может крылышки сложить. Ан нет! Спустился очень деликатно, с остановочками.
И еще, по тактике пилотирования, я заметил, что ты почти всегда идешь на моторе. Даже при посадке - 3-5 А тока. Свалится не боишся? Просто на малых оборотах винт превращается в тормоз.
Спасибо за подсказку, попробую подкрректировать себя.
При планировании всегда проскакивал место посадки, поэтому и приспособился к такой кривой методе. Прижимать Изика досрочно и потом дотягивать на моторе. В этот раз из-за этого чуть не собрал провода на столбе…
Вернулся с вечерних полётов. Очень доволен результатами!!! Пилот пилотирует, стабилизация стабилизирует!!!😃 И самое главное - без раскачки!
При включении пилота, ровными кругами набирает высоту. Без телеметрии не могу проверить соответствие высоты набранной, высоте заданной (100м), но вроде близко к этому.
Видеоотчёт с борта готовлю. К сожалению пока опять без телеметрии:(.
Тимофею: моя информация, что видеосигнал через плату телеметрии проходит, оказалась не верна… До замены АТМЕГИ проходил, а сейчас уже нет. Где, что прозвонить - померить?
Включение АП: 1.16 - 1.45; 2.20 - 3.18
Сергей, новая Атмега точно не с поворотом на 90 градусов впаяна?
Прозвонить в первую очередь питание, например, идущее на любой внешний датчик - должно быть 5 вольт.
Тимофей! Вопрос по установке и калибровке датчиков пирогоризонта. Как правильно установить и калибровку производить на поле или допустимо дома?
Дома нет особого смысла, градиент температур в квартире невысокий.
Можно в целом грубо оценить корректность установки пиродатчиков руками: одну руку под вертикальный датчик, имитируя теплую землю, вторую справа-слева-спереди-сзади от горизонтальной головы, имитируя теплую землю. И смотреть на приблизительную адекватность углов крена-тангажа на экране телеметрии или в Контрольной Панели.
Устанавливать - так, чтобы детали самика минимально закрывали обзор датчиков, обзор у них - конус с углом раскрытия ~90 градусов.
По поводу установки датчиков я наверно не правельно сформулировал вопрос. двух осевой можно установить в 4х вариациях вращая по кругу 1 осевой в 2х вариациях как будет правильно например относительно шлейфов? или особого значения не имеет и они сами определятся после калибровки?
Калибровки пироголов нет, оно само калибруется.
4-датчиковая плата ставится микросхемой вверх, шлейфом к хвосту самолета.
Переписал работу с АЦП, теперь всё замечательно, быстро, просто и точно. По дороге переписал подсчет дифференциального компонента ПИД по тангажу и крену, теперь он считается гораздо точнее и вообще правильнее.
До кучи прикрутил примитивный шумодав на этот компонент. В общем, теперь реально советую поэкспериментировать с дифференциальными коэффициентами (Упреждение по тангажу и крену) в пределах от 20 до 100% или даже 150%, одновременно на треть или даже на половину повышая от привычных значений чувствительность по крену и тангажу. Поведение самика, даже у тех, кто доволен своими настройками АП, должно стать гораздо четче. Ну, это с новой прошивкой, разумеется. Сейчас диф. компоненты считаются близко к правде, но не ахти.
Сильно сэкономить на времени синхронизации с телеметрией таки не удалось. Ну да ладно, там и так теперь тратится не много времени.
Придумаю, в какое место Контрольной Панели пихнуть выбор диапазона тангажа для горизонта, и придумаю, куда рисовать тангаж циферками при выходе за пределы установленного для отображения диапазона - выложу прошивку 0.9.1 и новую Панель.
А может быть, выложу и без этого, а выбор диапазона отображаемого тангажа - в следующую, 0.9.2.
Коллеги, взявшиеся за адаптацию АП под вертолеты, радуют: говорят, на днях полетел вертоль с АП. Пока только в режиме стабилизации, но всё равно радует. Сам я вертолеты не люблю 😉
Переписал работу с АЦП, теперь всё замечательно,
Тебе удалось воспроизвести глюк с “замораживанием” горизонта? И проверить, что он исчез в новом варианте алгоритма?
Сергей, новая Атмега точно не с поворотом на 90 градусов впаяна?
Тимофей, я дико извиняюсь, но видеотракт работает (перепутал вход с выходом).
Атмега стоит точкой в сторону разъёма датчика тока и скорости.
На всех разъёмах датчиков есть 5в, на сигнальном контакте разъёма АD7 тоже 5в.
Позвольте уважаемой “малой команде” задать дилетантский вопрос. Учтено ли в софте АП, что самолет в грубом приближении является колебательным звеном? Другими словами - не является ли замеченные колебания в работе автопилота следствием того, что называют “режимом звонка”. Автопилот выдает управляющее воздействие до тех пор пока рассогласование не будет выбрано, но самолет в силу своей инерционности проскакивает нулевое положение и автопилоту приходится менять знак воздействия на обратный, и так до бесконечности. Этого можно избежать, если ввести в логику АП грубую мат. модель самолета, как колебательного звена. Может эти соображения помогут победить раскачку.
Коллеги, взявшиеся за адаптацию АП под вертолеты, радуют: говорят, на днях полетел вертоль с АП. Пока только в режиме стабилизации, но всё равно радует. Сам я вертолеты не люблю 😉
Увы!
Коллег должен огорчить: что касательно “режима стабилизации”- так это “родной” Co-Pilot делал ещё 6 лет назад и сам по себе…
Что прямо в его описании так и нарисовано 😵
А вот по поводу “летания вертолёта с АП” - тут всё гораздо хуже обстоит: купленные для МЧС в январе французские вертолётные БПЛА висеть- висят, а вот летают почему то- только “вручную”.
Несмотря на цену- больше 500000у.е.