PIXHAWK PX4 Autopilot еще одна летающая железка

Cold_Play
SergDoc:

нет прошивка io проца находится сразу во флеши fmu, но иногда не обновляется pixhawk.org/users/flash_px4io

Интересно. По описанию процедура понятна, но непонятно как дальше себя вести после захождения в режим бутлодера. Или он сам автоматом поправить иошку должен?

Кстати вот еще вопрос назрел, в настройках (список всех настроек) есть настройка ESC, так просто и называется, в поиске ищется только там и нет описания, по умолчанию установлен 0. Может знаете?

alexeykozin

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

когда тестил прошивы традиционного вертолета (а там рц спид вопрос ключевой) обнаружил что на тот момент в прошиве 3.1.4 рц спид имел эффект на формат выходов а 3.1.5 и в какомто пререлизе 3.2 изменение рц спид не отражалось на частоте выходных импульсов

ua0ldk
alexeykozin:

все идет сюда
github.com/…/798cc36e64e399ee2dab166786ad9a688922a…
попробуйте у компаса 0 отключить использование для яв Compass, _use_for_yaw = 0

Чтобы отключить внутренний компас в прошивке 3.3, нужно найти в списке параметров COMPASS_USE2 (по умолчанию =1) и установить его в 0.
Сам столкнулся с проблемами взаимодействия двух компасов, особенно при взлете с металлической палубы 😃

Cold_Play
ua0ldk:

Чтобы отключить внутренний компас в прошивке 3.3, нужно найти в списке параметров COMPASS_USE2 (по умолчанию =1) и установить его в 0.

А как быть с тем что на 3.3 внешний компас при его непосредственном повороте по yaw в МП это никак не отрабатывается?

ua0ldk

Вы отключили внутренний компас?

Cold_Play
ua0ldk:

Вы отключили внутренний компас?

я сейчас откатился уже на 3 2 1 версию. Помню все возможные комбинации с компасами перепробовал, и скорее всего эту опцию тоже отключал. Но нет внешний в МП не отрабатывал. Что интересно - при калибровке МП реагировал на движения внешнего компаса. Ну и на 3.2.1 версии всё отрабатывает как надо, проблема только в 3.3. Еще вспомнил был трабл - данный компасов не сходились, также менял ориентации - пофигу. Следственно ошибка error compass ariance.

ua0ldk

Отключение внутреннего компаса убирает ошибки компаса, компас ведет себя нормально, в преарме у меня оставлена проверка компаса, и она проходит теперь в любых условиях. Что еще нужно? Остается (для меня) проблема включения квадрика на подвижной платформе. Часто вылезают ошибки гир, и горизонт - не горизонт. Но вроде в версии 3.4 это будет решено.

Cold_Play
ua0ldk:

Отключение внутреннего компаса убирает ошибки компаса

Не согласен. Тестирован с внутренним без внешнего и с внешним - в логах совершенно разные показания отклонения компаса из за магнитного поля.

alexeykozin
ua0ldk:

Но вроде в версии 3.4 это будет решено.

интересно как это предполагается делать.
исключить предполетную калибровку в коде несложно.
проблема в том что нельзя однажды сохранив офсеты гир в памяти стартовать без калибровок. при разных температурах результаты калибровок разные.
таблицу температура-офсеты в памяти держать?
как ее сформировать?

какой характер колебаний “подвижной платформы”? четкие гармонические колебания или хаотические?

ua0ldk
alexeykozin:

интересно как это предполагается делать.

какой характер колебаний “подвижной платформы”? четкие гармонические колебания или хаотические?

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

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

SergejK
alexeykozin:

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

А зачем вообще калибровать оффсеты гир при старте моторов еще раз? Насколько я понимаю, алгоритмы вычисления положения должны делать это постоянно после включения и начальной калибровки.

skydiver
alexeykozin:

таблицу температура-офсеты в памяти держать?
как ее сформировать?

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

SergejK
skydiver:

Так как это сделано в автокваде.

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

alexeykozin
ua0ldk:

Вот, вспомнил, где видел github.com/diydrones/ardupilot/issues/1361

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

ua0ldk
alexeykozin:

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

Ну да, и эта надежда опирается на новый алгоритм подстройки гир на лету, как-то так. Бета уже лежит, и народ уже пробует.

alexeykozin
ua0ldk:

Ну да, и эта надежда опирается на новый алгоритм подстройки гир на лету, как-то так. Бета уже лежит, и народ уже пробует.

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

лично мне ближе два варианта

  • таблица температурной компенсации офсетов
  • параллельный стабилизатор напряжения charge pump (21-25V) mpu6000. может если застабилизировать точно и офсеты перестанут плавать
ua0ldk

А что, проблема только в температуре и стабильном питании гир? Застабилизировать и то и другое технически несложно. Видимо, есть еще другие факторы ухода нулей.

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

alexeykozin
ua0ldk:

Застабилизировать

тоже как вариант для водного старта, поместить контроллер в корпус в котором поддерживать стабильную температуру. скажем 45 градусов (для жаркого климата) и использовать сохраненные офсеты вместо предполетной калибровки