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

arb
karadjia:

Правильный - это устройство для балансировки двигателей с помощью резонансного стенда . Энтузиаст, сори не помню его имени, собрал устройство на основе ардуины и по типу балансировочного для автоколес. Там и прога есть. Типа запускаем, определяемся и прога коворит где и сколько повесить. Но сейчас, на всех мне известных ресурсах, схему и прогу убрали из свободного доступа. А жаль - повторить такое и горе не знать при балансировке ВМГ.

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

karadjia:

Всплески, их три по моему, это следствие посадок.

По графикам так и есть.

TIGISS

Всем привет, есть пару возможно “глупых” вопросов:

  1. Кто летает на разных батареях 3S,4S появились какие-либо варианты в новых прошивках для быстрого переключения, чтобы не перестраивать fail safe и тд?
  2. При переходе с 3S на 4S стоит ли перенастраивать ПИДы?
  3. можно ли ограничить максимальную мощность ВМГ (уровень газа например) на уровне контроллера PIXHAWK?
schs
TIGISS:

можно ли ограничить максимальную мощность ВМГ (уровень газа например) на уровне контроллера PIXHAWK?

Можно и мощность:
ardupilot.org/…/parameters-Copter-stable-V4.0.5.ht…
BATT_WATT_MAX: Maximum allowed power (Watts)

Note: This parameter is for advanced users

If battery wattage (voltage * current) exceeds this value then the system will reduce max throttle (THR_MAX, TKOFF_THR_MAX and THR_MIN for reverse thrust) to satisfy this limit. This helps limit high current to low C rated batteries regardless of battery voltage. The max throttle will slowly grow back to THR_MAX (or TKOFF_THR_MAX ) and THR_MIN if demanding the current max and under the watt max. Use 0 to disable.

Можно и уровень газа:
MOT_SPIN_MAX: Motor Spin maximum

Note: This parameter is for advanced users

Point at which the thrust saturates expressed as a number from 0 to 1 in the entire output range

Посмотрите ещё параметры:
MOT_BAT_VOLT_MAX: Battery voltage compensation maximum voltage

Note: This parameter is for advanced users

Battery voltage compensation maximum voltage (voltage above this will have no additional scaling effect on thrust). Recommend 4.4 * cell count, 0 = Disabled
Range Units 6 - 35 volt
MOT_BAT_VOLT_MIN: Battery voltage compensation minimum voltage

Note: This parameter is for advanced users

Battery voltage compensation minimum voltage (voltage below this will have no additional scaling effect on thrust). Recommend 3.5 * cell count, 0 = Disabled
Range Units 6 - 35 volt

MOT_BAT_CURR_MAX: Motor Current Max

Note: This parameter is for advanced users

Maximum current over which maximum throttle is limited (0 = Disabled)

karadjia
TIGISS:

Кто летает на разных батареях 3S,4S появились какие-либо варианты в новых прошивках для быстрого переключения, чтобы не перестраивать fail safe и тд?

Я конечно может и не прав, но летать на разных, по напряжению, акб это как на машине ездить на бензине ВСЕХ марок. Конечно можно, можно и придумать что-то среднее по регулировкам но все равно - будет среднее. А перестраивать (хорошо) каждый раз после заливки - дело долгое и хлопотное. Вот и получаете - ТАКОЕ. И чуть что не так будем кричать - машина гуано, двигло в топку.
2. При переходе с 3S на 4S стоит ли перенастраивать ПИДы?
Думаю что да. Двигатель получает совсем другое напряжение и имеет больше запаса по мощности чем на напруге меньшего акб. Пробуйте сами - устроит тогда летайте на здоровье

Donkrat

Просто нужно сделать два пид профиля, через осд 3 сек переключить

egunak95
Donkrat:

Просто нужно сделать два пид профиля, через осд 3 сек переключить

Я знаю что на INAV можно переключать профили настроек ПИД через ОСД, однако как на Арду это сделать, можно поподробнее описать на MinimOSD как это сделать?

Роман1971

В Пиксе так не сделать вроде. А пиды обязательно менять, т к при использовании одной и той же ВМГ придется и пропеллеры менять для большей эффективности.

egunak95
Роман1971:

В Пиксе так не сделать вроде. А пиды обязательно менять, т к при использовании одной и той же ВМГ придется и пропеллеры менять для большей эффективности.

Я тоже так думаю что менять ПИДы т.е. переключать профили на Пиксе не предусмотрели. Вот, например, был задан вопрос на форуме Ардукоптер discuss.ardupilot.org/t/…/63796 знаю эту проблему от автора вопроса, Илья меня спрашивал как автоматически менять ПИДы когда квадр сбрасывает груз, я посоветовал написать в Ардукоптер, так ответа нет, молчат как рыба об лёд.

schs
egunak95:

Я тоже так думаю что менять ПИДы т.е. переключать профили на Пиксе не предусмотрели.

Штатного способа нет.
Можно попробовать через костыль с lua скриптами, там вроде можно читать RC канал и менять параметры. Лично не делал.
ardupilot.org/copter/…/common-lua-scripts.html

karadjia

Продолжаю спрашивать. Сегодня полетал. В общем коптер ведет себя нормально, адекватно и предсказуемо по управлению. Но вылезла куча косяков. А именно косяки “по морозу”.
Теперь по порядку. Ну улице -5. Железо коптера соответственно тоже -5.
При арме выдает следующее.

  1. Gyros not healthy (похоже проблема с гирой по холоду). Решение вроде бы есть - паять резистор 220 ом. Буду делать.
  2. EKF primary changed:1 (похоже екф переключился на иму2) . По форумам ничего толкового не нашел. Народ до меня уже таким озадачивался, даже разработчики на дидроносе точно сказать не могут по этой проблеме (и проблема ли это) без логов.
  3. AHRS not healthy толком никто ничего не определяет. Народ ранее спрашивал - везде совет вырубить екф 2.
  4. IMU1: titl aligment C - вообще ничего не понял.
  5. После первого полета в 15 мин. перерыв 4 мин. Потом снова подал питание и началось. Регули при активации сейв кнопки не инициализируются (продолжают прерывисто пищать). Передергиванием питания удалось иногда запустить инициалазацию, но работают только 2 а другие 2 инициализацию не проходят, соответственно при арме стартуют только прошедшие 2 а другие 2 молчат.
  6. Постоянно отваливается телеметрия. Подключена на 1 порт телеметрии. миним осд, вроде бы да - боится низких температур, Но она “утеплена” поролоном и по идее проблема в порте.
    В теплое время (летал при +4) такого вообще не было. Ничего по железу и программно не делалось. Единственное поменян акб с 3s на 4s2p. Ну и соответственно изменены значения в фаилсейве и батеру1. регули перекалибровывал заново.
    Вот собственно и вопрос. Что еще кроме резистора 220 ом нужно делать в пиксе. Буду вскрывать все равно - паять резистор. Хочется сделать все за один раз и не лазить в плату еще. Пикс на плате 2.4.7 (черная с ионистором). А то неохота как-то летать только летом и по теплу.
    Всем спасибо за помощь.
    ПС. Если нужны логи то выложу позже.
Роман1971

Пикс в этой версии боится мороза. У меня подобных косяков не было, но отваливалась телеметрия на отдельных портах. Года 2 назад, я целую зиму мучался с этим. Но, повторю, подобного не было. С отвалом телеметрии можно бороться - просто переключится на другой порт. Как выход на Serial 4. Там даже фишку перепиновывать не надо. Просто в настройках прописать протокол Mavlink

karadjia

По порту телеметрии спасибо, ибо хотел просто перебросить во 2 теле порт.
По сообщению Gyros not healthy (в связке с сообщением IMU1: titl alignment C, да и сообщение AHRS not healthy тоже похоже оттуда) - это иму орет что значения калибровок изменились из-за изменения внешней температуры. Пока нашел рекомендации, у буржуев, что нужно корректировать значение BRD_IMU_TARGTEMP (подогрев иму) под свой климат, прибавив к средней текущей температуре +20. У меня, дефолт на 4.0.5 прошивке, BRD_IMU_TARGTEMP стояло на -1 (вообще без подогрева). Поставил 20 - буду проверять. Пока выставил на балкон, там -4. Посмотрим что покажет часа через три. По остальному попробую разобраться по очереди.

karadjia

Пока предварительный результат (без полетушек)
Коптер стоял на балконе при -4 1 час. Запуск нормально. Инициализация - нормально. Телеметрии порт не менял - порт1. Телеметрия (5 мин). стоял в арме на средних оборотах не отвалилась. Раньше начинала глючить-моргать через минуту и примерно через три - отваливалась совсем. Остался еще один бок - если задизармить и выключить сафети свитч а потом через минуту включить свитч - регули опять часто пищат как при сбое калибровок. Попытаться армить - ACCEL HEALTH. Выкл и вкл акб, опять все ОК - армится, не кричит. Похоже еще все таки придется допаивать резистор на сброс. Буду дальше “воевать с морозом”. Радует что хоть какой-то прогресс уже есть.
ПС. Почему думаю про резистор. При “холдном старте” при подключении акб была надпись - иму0 ресет. А вот при повпорном арме с уже подключенной акб этой надписи не было. Передернул каб - иму0 ресет и “полет нормальный”.
Кто -что думает по этому поводу?

egunak95

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

Опция Temp Regulation - Y

karadjia

Сейчас точно не помню где нашел, по моему на дидроносах где-то в ветках. Копал ночью и, как обычно, закладку не сохранил. Ну и утверждать что это именно для пикса 2.4.7 не буду. Помню что искал в ветках по 2.4.6-2.4.8 по “Gyros not healthy” но это пересекается с “BAD ACCEL HEALTH” в некоторых ресурсах. Да - было там и про кубы и то что блек точно поддерживает. Что “вроде бы работает” у меня то это то что после изменения параметра BRD_IMU_TARGTEMP с -1 на 20 сообщение Gyros not healthy при арме пропало. Последняя калибровка гиры была в квартире при +22 еще неделю назад при настройках. Отсюда и значение поставил пока 20. Пробовал раз десять в течении дня. Квадр целый день на балконе,в квартиру и тепло не заносил, с утра было -4 сейчас -1. Для чистоты опыта каждый раз при проверках крутил его, квадр, для смены статики горизонта. Буду ждать более сильных морозов и проверять - все равно вариантов как бороться с IMU1: titl aligment C пока нет.
По инициализации регулей есть мысль что питание пиксу мало или мой модуль на лм+крен5 чудит. В тепле выставлен на 5.06 в. а что при минусах выдает пока руки не дошли посмотреть - разбирать нужно. Почему так думаю - активация слишком интерестно проходит. То есть при подключении акб регули пищат с интервалом 1 сек. (бычное поведение, на моем пиксе, для не нажатой кнопки свитч). При тепле активация (свитч) - четыре писка (акб 4S) и тишина. При минусе после нажатия кнопки начинают пищать с интервалом 3-4 раза в сек. и если так подождать примерно минуту то интервал писков уменьшается и совсем пропадает. После этого можно спокойно армить - движки запускаются все и синхронно. Если не дождаться и армить - запускаются или 1 или 1 и 2 движок а остальные молчат. Регули везде вернул одинаковые (поменял все таки разнобой) типа симонк 30А. Это, вариант арминга при минусе, пока раздражает но не настолько что бы лезть разбираться с питанием разбирая пол квадра. Тем более что если бы это было действительно точной причиной а не просто предположением. Вот и спрашивал выше - может у кого уже было подобное.
ПС. Если все выше написанное ошибочное решение вопроса то тогда буду искать решение. Чего-то мало верится мне что народ на пиксах 2.4.7 летает только по плюсовой температуре.

egunak95

Мой Holybro Pixhawk 4 как декларирует производитель работает при температурах -40 ~ 85°С , а это как раз рабочая температура Accel/Gyro: ICM-20689 и BMI055. Однако при минусах погоды нет желания полёты устраивать, но попробую свой ПК выставить за окно для проверки высотности, на сколько можно доверять ПК если мой планер поднимется на большую высоту, у нас летать высоко нельзя, планер из карбона его видят из Пулково уже был случай.

Можаефф
karadjia:

Что “вроде бы работает” у меня то это то что после изменения параметра BRD_IMU_TARGTEMP с -1 на 20 сообщение Gyros not healthy при арме пропало. Последняя калибровка гиры была в квартире при +22 еще неделю назад при настройках. Отсюда и значение поставил пока 20.

Не вижу ни одной причины, как это может быть связано. Там однозначно указанно - параметр нагревает термоэлемент до указанной температуры. Там где он есть, разумеется.
Может у этого параметра есть еще назадокументированные функции? )))

The Cube User Manual
IMU Temperature Control
IMUs in The Cube are temperature-controlled by onboard heating resistors. Target temperature can be set
by changing BRD_IMU_TARGTEMP in Full Parameter List.

BRD_IMU_TARGTEMP: Target IMU temperature
Note: This parameter is for advanced users

This sets the target IMU temperature for boards with controllable IMU heating units. A value of -1 disables heating.
Range: -1 80
Units: degC

karadjia

В том то и дело что ХЗ. В этой ветке я , по моему, первый поднимаю такой вопрос за почти 190 страниц текста. По гуглю параметр-сообщение “Gyros not healthy” поднимался-поднимается редко и в основном все обсуждения скатываются к параллельному решению вопроса по BAD ACCEL HEALTH и проблеме со сбросом иму из-за аппаратного недочета. А вот сообщение “IMU1: titl (title) alignment C” еще реже по гуглю ищется. Пока вроде бы убрал проблему, но это пока. Мороз в -8 или -15 покажет точно так это или нет. Сейчас больше волнует вопрос запуска-инициализации регулей при арме. Логов пока не выложил ибо там чехарда полная и я точно не помню какие по времени логи нужны конкретно. Завтра почищу логи и попробую записать только сам процес “холодного старта” при около минусовой температуре (обещают +1). Тогда может поможете определить причину такого поведения коптерного железа.

=Vlad

Мы прошлой зимой преспокойно летали до -20С на PixHack v3 (у этой версии термостатирования нет)
Регули tmotor air.
Единственно что нужно было - перекалибровывать гиро уже остывшим, иначе отказывается армиться так как гиро уплывает на морозе.

Можаефф
karadjia:

по моему, первый поднимаю такой вопрос за почти 190 страниц текста

Думаю, и последний. Если это никто не обсуждает, значит 2.4.7 ни у кого не осталось.

karadjia
Можаефф:

Думаю, и последний.

Может и так, типа динозавр… но зато склюзив и меня уже начал устраивать.
Теперь по теме. Вопросы поднятые мной выше можно закрыть - решено.

  1. Gyros not healthy и IMU1: tilt alignment C решены параметром BRD_IMU_TARGTEMP. Хотя многие здесь говорят что это на подобных пиксах не поддерживается но факт: ставим параметр - сообщений нет, убираем параметр - есть. Может это (параметр) маскирует или отключает эти предупреждения - не знаю. Без параметра преарм… с параметром запрета нет - армится и горизонт, в моем случае, работает нормально и меня это устраивает. Естественно впредь буду перекалибровывать при значительных колебаниях внешней температуры.
  2. BAD ACCEL HEALTH - убрал доп. резистором 220 ом параллельно кондерам в цепи питания иму (С506). Факт известен давно- благодаря энтузиастам. Но программный ресет реализованный в прошивке не всегда работает корректно из-за недочета аппаратного проэктирования. В частности для моей ревизии.
    3.EKF primary changed:1 после двух верхних исправлений пока не высвечивается. Будем посмотреть подольше. И тогда принимать решения.
  3. Инициализация регулей по морозу - банально просто оказалось. Питание на самодельном модуле (классика LM+крен) было выставлено еще для АРМ (5.06V) при температуре окружающей в 22*С и не менялось при переустановке пикса. При минусовых температурах при старте сборка выдает 5.028V при -1*С (а для -5 думаю еще меньше) с постепенным увеличением (прогрев) до 5.06V. После превышения порога в 5.04 регули инициализируются нормально. Поставил другой модуль (на старом крен не регулируется по выходу), выставил 5.4v и все ОК. Хотя вроде бы по мануалу питание пикса возможно от 5.0 до 5.6 В моем случае низкое питание было проблемой.
  4. Телеметрию пока не перекидывал. После игр с питанием не пропадает и работает. Но и морозы уменьшились. Буду смотреть и думать.
    Всем спасибо. Вопросы поднятые мной выше можно закрыть.