Падения на свежих прошивках


До сих пор проблема падения не понятна и наблюдается на свежих прошивках 3.1.3 и 3.1.4. В 3.1.2 разработчики проблему признали, но видимо исправить не получилось.

Описание проблемы тут:

Warning #1: BUG found in stability patch of AC3.1.2 (now fixed in AC3.1.3) which can cause all motors to go to minimum if there are simultaneously very high throttle, roll and pitch commands.  This is fixed in AC3.1.3 (now the official version available through the Mission Planner).

 

Алексей Козин пытается разобраться и вот что пишет:

в последнее время извел кучу времени на анализ логов крешей на прошивках старше 3.0.1 (версию 3.1.2 не берем в расчет)
и анализе кода управления моторами
пока напрашивается вывод такой :
изучены логи квадрокоптеров с рамой икс (на плюсе скорее всего никто не летает, а гексы возможно чуть стабильнее себя ведут подергиваются но не кувыркаются), обычное развитие ситуации
по некоторым причинам случается крен статистически чаще всего на передний левый мотор.
причина неизвестна — но возможно тупо срыв синхры регулятора оборотов или стечение резонанса удержания позиции, турбулентных потоков и команды с пульта
к этому моменту в логе растет crate (что значит этот параметр хз), контроллер дает высокий thr_out — суммарная тяга которую надо добавить моторам
когда коптер достигает критического угла полетный контроллер убирает газ в ноль. — в принципе логично но
судя по коду управления моторами когда газ в ноле то выключается и стабилизация — коптер перестает бороться с креном, было бы логично оставить в автоматических режимах хотябы 20% газа в ситуации даже перевернутого полета с тем чтобы выровнять положение. даже в случае установки спин армед — это вращение всегда постоянно и моторы не стабилизируют полет это не спасет ситуацию.

-чаще всего кувырки случаются одновременно с детектором глитч жпс
-у всех куврыкнувшихся стоит жпс юблокс (возможно ошибка в коде драйвера)
-у всех кувыркнувшихся ahrs_gps_gain =1 (это значение нужно самолетам, для мультироторов кроме случаев с акробатическим пилотированием это значение должно быть 0 но по дефолту ошибочно стоит 1)

пока для тех кто не хочет глубоко погружаться в код но хочет летать рекомендация такая — если замечаете в режимах с автоматическим удержанием высоты (auto loiter althold rtl итд) попытку кувыркнуться — срочно переходите в стаб и кратковременно поддайте газку чтобы предотвратить развитие большой скорости снижения, а затем неспешно сажайте в режиме стабилизации.

по прежнему очень интересуют логи кувырков с включенным логированием моторов и IMU (свежие прошивки кроме 3.1.2)

Алексей Козин:

стабильности ради имеет смысл добавлять параметр THR_MIN (по умолчанию 130) что значит что если газ включен то минимальный уровень газа 13%
до 150 -200 в зависимости от тяги моторов, до уровня когда у моторов имеется хотябы 5% тяги от значения в удержании
дело в том что на низких оборотах есть диапазон когда тяга нулевая, а с определенного уже идет почти пропорциональный рост,
тоесть к примеру
13% тяга 1гр
14% 2гр
15% 50гр
за счет увеличения этого параметра можно минимизировать расколбас в быстром снижении у квадры


 
 

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *