Smalltim OSD and autopilot (часть 1)

Dareck

а она через АП шьётся а если нет пилота то и перешивать необязательно

delfin000

А что слышно о времени появления автопилотов? Когда ожидается массовая продажа. А то ждать… устал в общем. Даже и не знаю… Появляется желание перейти на Eagle Tree Video OSD Expander. Или кто может помочь с приобретением тимовского автопилота с программатором в придачу

Dareck

НЕ НУЖЕН пилоту программатор он сам себя программирует

delfin000

Не держал в руках и посему не знаю. 😦

Dareck

😁скоро уже всем достанетца вот вот уже😁

baychi
delfin000:

А где можно взять USB программатор для плата телеметрии мини. Плата телеметрии есть, а программатора нет.

Программатро нужен, если планируется использовать телеметрию без АП.
Готовый программатор можно приобрести у Тимофея. Или использовать любой другой, поддерживающий Мегу 8: разъем подключения программатора описан в документации.

smalltim:

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

Версия эта весьма правдоподбна. По крайней мере она объясняет все чудеса прошлого сезона, когда в стабилизации все было идеально, а включение АП начинало раскачку (наверное, режим АП потребляет больше выч. ресурсов?), а так-же поведение в последнее время.

Я на всякий случай заосциллограффировал сигналы на вых приемника: на первом рисунке каналы 1 и 2; на втором - 1 и 4. Период следования импульсов 16-17 мс.
А также снял скриншот КП в режиме ручного полета и со включенным АП (Впрочем, они не отличаются).
Возможно тебе, Тимофей, это чем-то поможет. Хотя я, признаться, не вижу здесь отличий от других приемников.

baychi

Опять нарвался на заморозку. На сей раз дома, без подключения к ПК.
Никаких особенных действий не делеал, проверял заменённый регулятор движка. Заметил, что на экране, горизонт заморозился. Подключил КП и снял скриншоты с АЦП платы пилота (показания на экране не менялись). Возможно это поможет.
Судя по картинкам - проблема в прекращении прерываний от АЦП меги пилота.

Dronavt

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

PS При развороте на посадке боковой ветер, провода и отсечка регуля,- адреналинчика отведал…

smalltim

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

На новом АП стоят резисторы 1к в линиях от датчиков ко всем входам АЦП. Это защита от КЗ, прочих неприятностей, в общем, в правилах хорошего тона.
В старом (зеленом) АП такого не было, поэтому проблема не проявлялась.

Итак, проблема: в чипе по умолчанию, с завода, включен JTAG интерфейс, который использует те же ноги, что и АЦП, причем, половину, т.е. 4 из 8 ног.
Так вот: даже если JTAG не используется по прямому назначению, и входы эти сконфигурированы как аналоговые, резисторы подтяжки на этих ногах всё равно остаются. На новом АП эти резисторы образуют делитель, подвешенный к 5В, и по 4 из 8 входов АЦП показания оказываются искаженными где-то на 5%. Этого хватает, чтобы горизонт, особенно в плохих погодных условиях, начал работать некорректно.
Убил JTAG специально прямо в коде, не трогая fuse биты, и всё вернулось к норме.

Вторая новость. Иногда при подключении всех 8 входных каналов ППМ к приемнику и подключенном USB автопилот не четко детектировал наличие телеметрии на старте. Примерно в 1-2 разах из 10 он считал, что телеметрия не подключена.
Проблема былла из-за того, что синхронизация по времени с телеметрией была сделана не оптимальным образом. Подправил код, теперь детект телеметрии на старте работает в 100% случаев, а по ходу работы АП на синхронизацию с телеметрией теперь тратится в 10 раз меньше времени.

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

delfin000, пожалуйста, напишите в почту smalltim собака mail.ru. Небольшую пачку пилотов, пока я был в отпуске, сделали, так что передам полный комплект прямо из рук в руки.

baychi
Dronavt:

Попробовал сегодня АП в условиях сильно переменной облачности и не слабого порывистого ветра.

Любопытное видео, Андрей! Ветер был метров 7 в среднем, так? И это растягивало эллипс кружения вокруг базы до 400 м от центра. Причем недоворот за счет ветра не превышал 50-70 градусов. Если бы рулил человек, достаточно было чуть резче доворачивать при небольших углах отклонения, а у АП логика пропорциональная, чем ближе к 0, тем меньше угол. Интересно, как на настоящих АП это сделано, ведь большие самолеты держат курс +/- пару градусов?
И еще, по тактике пилотирования, я заметил, что ты почти всегда идешь на моторе. Даже при посадке - 3-5 А тока. Свалится не боишся? Просто на малых оборотах винт превращается в тормоз.

kulikof
smalltim:

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

а телеметрии когда будут то?

Dronavt
baychi:

Любопытное видео, Андрей! Ветер был метров 7 в среднем, так? И это растягивало эллипс кружения вокруг базы до 400 м от центра…

В штиль диаметр круга составляет примерно 200м, причем точка возврата находится в центре этого круга. Т.е. расстояние до модели около 100м.
В сильный ветер при развороте над базой Изика тут же уносило по ветру и к моменту разворота удаление было уже существенным. В итоге при возврате он успевал прицелиться именно на точку возврата и так по кругу. В итоге, получился сильно вытянутый эллипс. С наветренной стороны самик разворачивался фактически над точкой старта, а по ветру - как хватало рулей. В лево он у меня всегда идет неохотно. Лечится, скорее всего, предоставлением бОльшей свободы АП по рулям.
Зато, когда он снижался правым виражем над базой с 500 метров до 150 целевых, спиралька получалась “тугая” и компактная. Причем порадовали “ступеньки для отдыха”. При включении АП опасался, что будет резкое снижение и может крылышки сложить. Ан нет! Спустился очень деликатно, с остановочками.

baychi:

И еще, по тактике пилотирования, я заметил, что ты почти всегда идешь на моторе. Даже при посадке - 3-5 А тока. Свалится не боишся? Просто на малых оборотах винт превращается в тормоз.

Спасибо за подсказку, попробую подкрректировать себя.
При планировании всегда проскакивал место посадки, поэтому и приспособился к такой кривой методе. Прижимать Изика досрочно и потом дотягивать на моторе. В этот раз из-за этого чуть не собрал провода на столбе…

sptry

Вернулся с вечерних полётов. Очень доволен результатами!!! Пилот пилотирует, стабилизация стабилизирует!!!😃 И самое главное - без раскачки!
При включении пилота, ровными кругами набирает высоту. Без телеметрии не могу проверить соответствие высоты набранной, высоте заданной (100м), но вроде близко к этому.
Видеоотчёт с борта готовлю. К сожалению пока опять без телеметрии:(.

Тимофею: моя информация, что видеосигнал через плату телеметрии проходит, оказалась не верна… До замены АТМЕГИ проходил, а сейчас уже нет. Где, что прозвонить - померить?

smalltim

Сергей, новая Атмега точно не с поворотом на 90 градусов впаяна?

Прозвонить в первую очередь питание, например, идущее на любой внешний датчик - должно быть 5 вольт.

Dareck

Тимофей! Вопрос по установке и калибровке датчиков пирогоризонта. Как правильно установить и калибровку производить на поле или допустимо дома?

smalltim

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

Устанавливать - так, чтобы детали самика минимально закрывали обзор датчиков, обзор у них - конус с углом раскрытия ~90 градусов.

Dareck

По поводу установки датчиков я наверно не правельно сформулировал вопрос. двух осевой можно установить в 4х вариациях вращая по кругу 1 осевой в 2х вариациях как будет правильно например относительно шлейфов? или особого значения не имеет и они сами определятся после калибровки?

smalltim

Калибровки пироголов нет, оно само калибруется.
4-датчиковая плата ставится микросхемой вверх, шлейфом к хвосту самолета.

smalltim

Переписал работу с АЦП, теперь всё замечательно, быстро, просто и точно. По дороге переписал подсчет дифференциального компонента ПИД по тангажу и крену, теперь он считается гораздо точнее и вообще правильнее.
До кучи прикрутил примитивный шумодав на этот компонент. В общем, теперь реально советую поэкспериментировать с дифференциальными коэффициентами (Упреждение по тангажу и крену) в пределах от 20 до 100% или даже 150%, одновременно на треть или даже на половину повышая от привычных значений чувствительность по крену и тангажу. Поведение самика, даже у тех, кто доволен своими настройками АП, должно стать гораздо четче. Ну, это с новой прошивкой, разумеется. Сейчас диф. компоненты считаются близко к правде, но не ахти.

Сильно сэкономить на времени синхронизации с телеметрией таки не удалось. Ну да ладно, там и так теперь тратится не много времени.

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

Коллеги, взявшиеся за адаптацию АП под вертолеты, радуют: говорят, на днях полетел вертоль с АП. Пока только в режиме стабилизации, но всё равно радует. Сам я вертолеты не люблю 😉

baychi
smalltim:

Переписал работу с АЦП, теперь всё замечательно,

Тебе удалось воспроизвести глюк с “замораживанием” горизонта? И проверить, что он исчез в новом варианте алгоритма?