iNav и боль. Боль и iNav.

В этом посте постараюсь обобщить опыт, накопленный за несколько месяцев адской траханины с этим автопилотом применительно к коптерам и частично к самолетам (в части спонтанных дизармов в основном) 😃 Теперь о приколах этой прошивки я знаю кажется почти все 😃 Кому-то этот опыт - уверен - поможет сберечь аппарат, тем более, что не все читают профильные ветки форума.

Итак. Запаситесь терпением, писанины будет много.

1) Дизармы в воздухе во время RTH или фейлсейфа.

Происходят они чаще всего потому, что разработчиками (на прошивках 1.8.х - 1.9.х как минимум, дальше возможно пофиксят) ряд критичных параметров оставлен в такие значения по умолчанию, что дизарм во время возврата домой по потере связи или RTH неизбежен, и это нормальное и ожидаемое поведение. В полном соответствии с буквой мануала. Чтобы это не происходило, надо зайти в CLI и написать:


set failsafe_throttle_low_delay = 0
set failsafe_off_delay = 0
set failsafe_throttle = сюда надо вписать значение канала газа в микросекундах, при котором ваш аппарат мягко садится/планирует. Т.е если висим при 1350 мксек газа, то вписываем скажем 1200. По умлч здесь стоит 1000, при таком газе коптер камнем упадет вниз
set failsafe_procedure = RTH //строго говоря, предыдущие три параметра относятся к процедуре фейлсейфа SET-THR, но есть подозрение, что они имеют влияние на спонтанные дизармы даже если выбрана процедура RTH, поэтому на мой взгляд лучше подстраховаться
set nav_emerg_landing_speed = 200 //это значение скорости снижения в см/сек на случай, если во время выполнения процедуры фейлсейфа отказал GPS или прочие необходимые сенсоры, посадка выполняется под контролем барометра. Кстати, вопрос, какая процедура будет применена, если в процессе экстременной посадки отказывает барометр, остается, по-моему, открытым))
disarm_kill_switch = OFF

Потом не забыть выполнить команду save для применения настроек. Еще есть сообщения о произвольных дизармах в воздухе просто в полете, не во время RTH или фейлсейфа. Очень похоже, что связаны они с глюком чтения SBUS, когда аппарат как бы выполняет команду на дизарм килл свичем на соотв. канале, хотя такой команды ему никто не давал. Именно поэтому мы и отключаем дизарм килл свитч. Арминг/дизарминг лучше производить только командой левого стика. Да, failsafe_throttle устанвливайте только тогда, когда будете ТОЧНО знать, при каком значение канала газа в мксек у вас висит коптер. При первых подлетах я сдуру решил, что он у меня висит ровно в середине газа, т.е при 1500, и поставил 1350 мксек, а коптер был сильно недогружен и висел при 1280 примерно. В результате конечно я поймал фейлсейф, и коптер подорвался в небо)) Пока я метался по земле и соображал, что делать, высота уже была 500 метров. Пришлось его дизармить там. Итог - красивые дрова 😃 Не повторяйте моих ошибок!😁

2) Настройка режима ALTHOLD и проблемы с ним связанные.

Обнаружил, что для нормального удержания высоты все-таки удобнее включить настройку nav_use_midthr_for_althold = ON, при котором удержание высоты будет происходит при среднем положении стика газа, при этом в переменной nav_mc_hover_thr указать значение канала газа в мксек при котором коптер висит в режиме ANGLE. (это можно выяснить по логам блэкбокса, или пересчитать процент газа видимый в OSD, куда его можно вывести, в микросекунды вручную) Это всего лишь подсказка для полетника, если указать не очень точно, при включении ALTHOLD коптер будет проваливаться или подрываться вверх. Если газ висения указан корректно, а коптер все же проваливается/подрывается вверх, нужно увеличить ПИД nav_mc_vel_z_i. По дефолту он 50, поставить для начала 60 и посмотреть. Если не хватает и провалы/подскоки все еще есть, еще немного добавить.

В переменной thr_mid нужно указать газ висения в процентах, если висим при 40%, пишем


set thr_mid = 40
save

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

3) Баг с автоматическим определением магнитного склонения.

Обнаружил, что автоматическое определение магнитного склонения в прошивках 1.8-2.1.0 работает некорректно (upd. в прошивке 2.2 этот баг должен быть поправлен), в результате чего коптер летит не по прямой, а забирает около 10 градусов левее по яву (в Москве). Если у вас наблюдается такое, выполните следующие команды:


set inav_auto_mag_decl = OFF
set mag_declination = 1020
save

1020 - это 10.2 градуса для Москвы (для вашей страны/города значение будет другим!), формат записи в CLI именно такой. Чтобы ничего не напутать, можно указать склонение в GUI прямо в градусах. Т.е вписать 10.2 в соотв. поле.

4) Если у вас не гоночный мини-коптер, не включайте AIRMODE! (upd. в прошивке 2.2 этот баг должен быть поправлен)

На аппаратах с ЖПС летающих блинчиком от него особенного толку нет, а вот если у вас коптер изначально очень легкий, т.е сильно недогружен для выбранной ВМГ и напряжения питания, а ПИДы высоковаты (даже стоковые могут оказаться слишком большими в некоторых ситуациях), то вы рискуете столкнуться с ситуацией, в которой оказался я. Осциллируя по всем осям и поддавая газу, мой недогруженный аппарат резвенько пошел в небо с явным намерением в нем скрыться. Пришлось дизармиться и падать, на этот раз всего лишь с высоты 10 метров. Дрова были еще красивее, чем в первый раз 😃 Причина такого поведения: клиппинг показаний акселорометра при слишком высоких вибрациях, вызванных дисбалансами или неисправностью ВМГ, или перепидовкой, как в моем случае.

5) На сладкое - слова про настройку ПИДОВ. Тема, которая волнует многих))

Итак. Для 450-го коптера весом около 1.2-1.3 кг с моторами 900 кв и пропами 9 дюймов (ВМГ от моего старого доброго Дискавери), летающего на 4S вполне подойдут дефолтные пиды, останется лишь немного их донастроить. Все настройки ПИДов должны происходить в режиме ANGLE без включенного ALTHOLD и без подключенного GPS и компаса.

Полезные хинты:

  • если аппарат вяловато реагирует на команды по питчу и роллу, увеличивайте соответствующие P. Если при резком подрыве стиком газа коптера вверх начинаются осцилляции, соответствующие P нужно будет чуть уменьшить. Обычно их увеличивают именно до момента начала осцилляций просто в висении, потом уменьшают на 10-15%. Однако мне кажется, что если у вас коптер для спокойных полетов “блинчиком”, так остро настраивать нет нужды.
  • если при висении в спокойном воздухе аппарат немного покачивается с частотой 0.3-1 гц (т.е медленно), то скорее всего дело в недостатке P, и надо его поднимать.
  • набрав высоту с запасом, стиком газа “роняете” коптер вниз. Если началась болтанка при прохождении через возмущенный пропами воздух, нужно поднимать I до момента, пока эта болтанка или не пропадет совсем или не станет приемлемой. На коптерах с большими пропами полностью от нее не удастся избавиться, имейте в виду.
  • подвесив коптер на комфортном расстоянии от себя, резким движением правого стика “дергаете” его по соответствующей оси, по роллу например, и сразу же бросаете стик. Если коптер выравнивается не в одно движение, а совершает несколько затухающих колебаний, нужно поднимать соответствующий D, до тех пор, пока возврат в горизонт не будет происходит в ОДНО движение.

6) Настройка пидов навигации

Наконец в голове появилась ясность и в этом вопросе 😃 Делюсь. В мануале эта тема практически не освещена, описания параметров ясности не вносят, поэтому опишу простыми словами полученный опыт, который привел к тому, что сейчас в режиме удержания позиции POSHOLD и режиме реакции на стики CRUISE (когда правый стик контролирует не пространственное положение коптера, как в ANGLE, а скорость перемещения в соотв. направлении). В режиме реакции на стики ATTITUDE все просто, т.к в нем при горизонтальных пролетах коптер не удерживает позицию и не контролирует вектор перемещения, а просто на время отключает удержание позиции. Мне было интересно настроить адекватную реакцию именно в режиме КРУИЗ, т.к в нем коптер летает как НАЗА, а она в режиме жпс летает близко к идеалу, плавно и предсказуемо 😃

Рассуждать буду в терминах POS и POSR - т.е так, как соотв пиды (nav_mc_pos_xy и nav_mc_vel_xy) называются в OSD. Итак.

Логика пида POS P такова: это скорость (сила, если хотите) с которой коптер пытается исправить ошибку в своем положении в пространстве. Ошибка бывает двух видов: от внешних воздействий, например когда коптер сдувает ветром и когда пилот дает команду двигаться куда-либо. В этом случае коптер просчитывает новое положение, а затем начинает стремиться к нему с “резвостью”, определяемой этим пидом. Т.е проще говоря, это скорость реакции на команды правым стиком. Если у вас коптер резковато реагирует на такие команды, то этот пид надо уменьшать. Имейте в виду, если реакция на команды правым стиком слишком резкая, то этот пид нужно уменьшать. Он же влияет на поведение коптера в навигационных авто-режимах, т.е например при возврате домой. Если во время RTH коптер устремляется домой слишком резво, и вдобавок еще перелетает точку дома, а потом начинает ее судорожно “искать”, циллируя вокруг нужного положения, то опять же нужно уменьшать этот пид. Значения около 15-30 чаще всего оказываются приемлемыми. У меня он сейчас установлен в 15.

Теперь о логике пида POSR P. Что бы там ни было написано в мануале, но на самом деле этот пид отвечает за скорость и устойчивость остановки после команд правым стиком. Многие жаловались, что коптер не сразу останавливается, если “бросить” правый стик, а некоторое время летит в обратную сторону. Или наоборот, начинает осциллировать вокруг нужного положения. Если у вас такое происходит, то нужно настраивать этот пид. Причем сначала настройкой (скорее всего сильным уменьшением от значений по умолчанию) пида POS P надо добиться нормальной, плавной реакции на стики, а потом уже настраивать торможение после отпускания правого стика при помощи настройки пида POSR. В мануале указаны значения по умолчанию: 180, 15, 100 для P,I,D соответственно. (для версии 1.8, в 1.9 и выше значение P надо делить на 5.) После настройки у меня получилось 80, 15, 95. Возможно POSR P надо уменьшать еще. Но самое главное, что уже при таких значениях коптер наконец полетел нормально. Исчезли “дергания” по питчу и роллу во время горизонтальных пролетов на большой скорости, а остановка при отпускании правого стика стала происходить сразу же, без возвращений и осцилляций.

Т.е, резюмируя, на текущий момент для коптера 450 размера более-менее правильные навигационные пиды для прошивки 1.8 выглядят так:

POS P = 1
POS I = 80
POSR P = 80
POSR I = 15
POSR D = 95

При таких пидах коптер в посхолде летает стабильно, предсказуемо, и без дерганий.

upd. 03/08/2018 - указанные пиды неплохо работают с GPS модулем от назы, для более современных модулей они скорее всего не подойдут. Поэтому прилагаю обновленный вариант навигационных пидов для прошивок от 1.9 - 2.0 и выше, подходящих для современных модулей типа Radiolink TS100 mini или BN-880. С этими пидами вполне нормально летают коптеры с пропами от 9" до 15-16 (проверял лично). Для бОльших или меньших аппаратов они скорее всего тоже подойдут в качестве отправной точки, по крайней мере адовых фортелей при активации посхолда быть не должно 😃

Обновленные навигационные пиды:

POS P = 15
POS I = 100
POSR P = 25
POSR I = 20
POSR D = 40

upd. 23/05/2019 Разработчки айнава подтвердили наличие бага с автоматическим определением магнитного склонения. На текущей прошивке 2.1.0 он все еще есть, в следующих должны поправить. И я по-прежнему уверен, что режим POSHOLD CRUISE у коптеров забагован донельзя. Проблемы следующие: 1) неконтролируемое поведение коптера после разворотов по яву на 180 градусов. 2) этакие клевки или раскачка по питчу (и немного по роллу) при полете прямо. 3) Ощущение, что аппарат плохо контролируется командами правого стика аппы. Все эти проблемы не удается победить настройкой навигационных пидов. Наличие этих проблем подтверждено уже из нескольких источников, но обратной связи от разработчиков пока нет по опубликованным баг репортам. Будем ждать. Пока же не рекомендую летать в этом режиме.

  • 117503
Comments
Siarzhuk

Александр, Вы писали, что была ещё болтанка ± несколько метров в Althold во время остановки после движения. Как вы её победили? И ещё, заметил неточность. Исходя из Selects the failsafe procedure. Valid procedures are DROP, SET-THR, RTH and NONE. Выбрать нужно
set failsafe_procedure = RTH, а не SET-THR.

DiscoMan

Спасибо, поправил. Насчет болтанки. Сейчас болтанки нет при остановке после движения. Есть болтанка при других, не менее странных обстоятельствах. Например, если коптер в альтхолде был высоко, мы его “роняем” стиком газа, а потом “ловим” на несколько метров ниже. Если висит он у меня при 50% газа, то падение останавливается уже при 40%. И вот если в этот момент газ не вернуть ровно в 50%, после чего он еще наберет пару метров от высоты, где я остановил снижение, а оставить газ на тех же 40 процентах, то коптер будет мотыляться туда-сюда по высоте, как бы в поисках нужного положения. С чем это связано, я пока не понял, разбираюсь.

ctakah

Очень полезно, спасибо за труд, многие знают,а вот написать или лень или просто надо уметь)))

Siarzhuk

Я бы сюда добавил ещё такие изменения:

  1. Поменять small_angle с 25 на 180. Это позволит армиться с любого положения коптера. Например, зависнув на дереве.
  2. Поменять gps_min_sats с 6 на 5. Это даст возможность использовать GPS в полёте при ухудшении приёма до 5 спутников. А взлетать, просто подождав большего их числа.
  3. Поменять nav_wp_radius со 100 на 200. Это позволит при подлёте к “дому” во время исполнения RTH, в случае сильного ветра или неточных навигационных PID, не целится коптеру с точностью до 100см, а только потом начинать снижение. Точности 200см вполне достаточно. Снижаясь, коптер успеет подкорректировать позицию. Если нужна точность для полёта по точкам, тогда этот параметр лучше не трогать.
DiscoMan
Siarzhuk;bt159202

Я бы сюда добавил ещё такие изменения

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

Кстати, сегодня успел подлетнуть, исправив board alignment по роллу (У меня там стояло -0.8 - сам дурак). Ушли абсолютно все глюки с потерей высоты при скольжении влево по роллу, ушли “мотыляния” вверх-вниз в альтхолде. Аппарат летает идеально “по рельсам”, как на Назе)) Осталось немного подкрутить навигационные пиды, т.к по время быстрых пролетов в посхолде (режим круиз), коптер немного потряхивает даже в спокойном воздухе. Отсюда вывод: не ставьте в эти поля никаких произвольных значений, не кратных 90 градусов, да и то только в том случае, если закрепили полетник как-то иначе, не стрелкой вперед. Я эти 0.8 градуса поставил потому, что полетник стоял чуть-чуть не в горизонт относительно рамы. Думал таким образом скомпенсировать эту неточность установки. В итоге получил кучу всевозможных глюков, но и бесценный опыт 😃

tamerlan

Всем привет! По поводу пункта один. Этот пункт относится чисто к фейлсейву. Что будет происходить после включения фейлсейфа вы задаете в настройках. Мои исследования (спасибо за Ваш пост он подвиг на исследования)на данную тему закончились следующим: Перед тем как сработает фейлсейф контроллер коптера получает кучу непонятных команд - ну и как следствие пытается их выполнять. Причем эти команды - хаотичны (слава богу что коптер в режиме стабилизации). Коптер дергается как ума лишенный - это длится секунду (может меньше) но на видео это видно - после наступает фэйлсейф и дальше коптер отрабатывает программу по фейлсейфу. Но именно в эти доли секунды коптер может получить команду по отдельному каналу на дизарминг он свитч. Это все видно в логах, очень жаль что в логи пишутся только четыре канала. Чей баг INAV или FrSky - хз. Но на сайте inav пишут о подобных проблемах - github.com/iNavFlight/inav/issues/2981 - и говорят проблемы с моторами и чтением ibus и введением нового параметра switch_disarm_delay

invis

Недавно еле воскресил свой коптер, пролежал в болоте 1.5 суток.
Был настроен на RTH, спускался с большой высоты с выкл. газом. Происходил файлсейф, потом хлоп и дизарм бай ФС.
Смонтировал видос, посмотрите кому интересно. Дизарм на 4:45 примерно.

cfitymrf

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

SergDoc

Простите, а багрепорты никто писать не умеет? Проект, на сколько мне известно, бесплатный и держится на интузиазме. Тем более, что разработчики русскоговорящие - вообще проблем нет в общении и идут на контакт… А так получается в дневнике написали - вылили, потом он свалился в ленту и забылся, а “осадок” нехороший о проекте у прочитавших останется(

DiscoMan

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

tamerlan

Ребята в Inav - работают над ошибками они переработали модуль который читает с IBUS. Добавили параметр не сразу дизармить - witch_disarm_delay. Вопрос когда мы это увидим в прошивках. Тут сами выбираем или дешево и сердито или дорого и стабильно

extrasensi
invis;bt159234

Недавно еле воскресил свой коптер, пролежал в болоте 1.5 суток.
Был настроен на RTH, спускался с большой высоты с выкл. газом. Происходил файлсейф, потом хлоп и дизарм бай ФС.
Смонтировал видос, посмотрите кому интересно. Дизарм на 4:45 примерно.

Падение квадрокоптера с высоты 2км

он падал 10000 серий. Мисс Марпл в роли Мисс Мапрл:lol:

chuma

У меня есть 4 контроллера на айнаве и 2 на назе, айнав долго настраивать, наза летает хорошо, но иногда глючит страшно.Так что все таки лучше коптер на inav или на наза??

vadimip
chuma;bt159262

У меня есть 4 контроллера на айнаве и 2 на назе, айнав долго настраивать, наза летает хорошо, но иногда глючит страшно.Так что все таки лучше коптер на inav или на наза??

А какие глюки у назы?

chuma
vadimip;bt159287

А какие глюки у назы?

Моя наза влетела в машину при этом светодиод моргал красным. Иногда был глюк , что при взлете коптер тянуло в сторону ( приходилось сажать и питание переподключать и все становилось нормально). У меня 2 назы и есть к ним граундстейшен для полета по точкам и мне хочется это использовать. С айнавом проблемы появились с модулем блютуз, сначало он работал, а потом перестал, хотя настройки не менял, модуль рабочий. Вот меня интересует существует ли беспроблемный сетап назы или айнава, есть ли дальнолетчики которые летают на наза (dji) ??

DiscoMan
chuma;bt159262

У меня есть 4 контроллера на айнаве и 2 на назе, айнав долго настраивать, наза летает хорошо, но иногда глючит страшно.Так что все таки лучше коптер на inav или на наза??

Айнав имеет больше функций и настроек, выдает телеметрию на приемники, умеет летать по точкам. Полетники, на которые можно установить айнав, чаще всего представляют из себя решения “все-в-одном”, что сильно экономит вес. Наза + отдельный ОСД будет весить значительно больше.

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

Что касается глюков назы, причины только две: глюки компаса и вибрации ВМГ, которые сводят мозги назы с ума. Много копий было сломано на эту тему, но в итоге пришли к тому, что если вмг избавить от вибраций, то наза летает как по рельсам, с полной уверенностью, и падений или глюков на десятки и сотни вылетов нет ни одного.

В айнаве тоже есть баги, глюки, и все такое прочее. Разработчики стараются оперативно их исправлять, но идеал все еще не так близок, как хотелось бы 😃

DiscoMan

Добавил слова о настройке пидов навигации 😃

Ivan4

Подскажите, как сейчас эти пиды называются POS P = 15 POS I = 100 POSR P = 25 POSR I = 20 POSR D = 40

У меня рама 45, INAV/MATEKF405 2.6.1 , в ALTHOLD летает вниз вверх метров на 15, бъется об землю и опять взлетает. Если газ увеличить, набирает высоту понемногу.
В конфигураторе в разделе сенсор вижу как отрабатывает барометр и рядом синяя линяя ALT творит чудеса.

Результат diff: # profile profile 1

set mc_p_pitch = 44 set mc_i_pitch = 60 set mc_d_pitch = 25 set mc_i_roll = 50 set mc_d_roll = 25 set mc_p_yaw = 45 set mc_i_yaw = 70 set dterm_lpf_hz = 60 set dterm_lpf_type = PT1 set dterm_lpf2_type = PT1 set yaw_lpf_hz = 30 set heading_hold_rate_limit = 30 set mc_iterm_relax = RPY set d_boost_factor = 1.500 set d_boost_max_at_acceleration = 5000.000 set d_boost_gyro_delta_lpf_hz = 50 set antigravity_gain = 2.000 set antigravity_accelerator = 5.000 set setpoint_kalman_enabled = ON set setpoint_kalman_q = 200 set rc_yaw_expo = 70 set roll_rate = 70 set pitch_rate = 70 set yaw_rate = 60

vadimip
DiscoMan;bt159317

Добавил слова о настройке пидов навигации 😃

Спасибо! Александр, а на каком железе летаете? (я в плане ПК)

DiscoMan
vadimip;bt159319

Спасибо! Александр, а на каком железе летаете? (я в плане ПК)

Китайский клон Omnibus F4 Pro V2. Черная плата такая. Несмотря на все аппаратные проблемы с ним, о которых пишут (сгорание чего-нибудь на плате при одновременном подключении USB и 4S), пока не выявилось чего-либо подобного. А все косяки с тем, как он летает, были моих рук делом 😃

ant0n_r59
invis;bt159234

Недавно еле воскресил свой коптер, пролежал в болоте 1.5 суток.
Был настроен на RTH, спускался с большой высоты с выкл. газом. Происходил файлсейф, потом хлоп и дизарм бай ФС.
Смонтировал видос, посмотрите кому интересно. Дизарм на 4:45 примерно.

Падение квадрокоптера с высоты 2км

можете подробнее объяснить чайнику что произошло и как от этого избавиться (что бы не повторялось)?

Правильно ли я понял, что например я вдруг решил спуститься с небес на землю в свободном падении, убрав стик газа до нуля, и если в это время коптер словит ФС то произойдет дизарм?!

Верно ли я понимаю что вышеперечисленные в девнике установки убирают дизарм по положению стика газа в нуле?

п.с. параллельно летаю на крыле под inav (1.5 кажется), и один раз при подлете к дому я поймал ФС и дизарм by фс. Обычно я возвращаюсь в планировании без газа. Это я словил дизарм по ФС при нулевом газе?
Какие конкретно команды это отключают?

invis

Да, получается при 0 газе, если случится кратковременный FS, дальше проходит 10 сек (set failsafe_throttle_low_delay = 100) и писец. По теории изменение этих параметров должно решить проблему. Я на практике еще не проверял. Но мне было совсем не весело, ощущать что мой квадрик (20т.р. + моя работа по его сброке, бесплатная) упал Х3 где по причине кривого ПО. Большое счастье, что я его нашел. Если, я бы не имел опыта в сфере ремонта техники, из полезного осталась бы только рама, все остальное было дохлым. Даже у GPS, который не был в воде сдох 3,3В стабилизатор. На экшн камере пришлось перекатывать проц и менять мелочевку.
Зато погулял с товарищем по болоту) словил клеща (вроде обошлось, не заразный был)

ipz

POS P = 1
POS I = 80
POSR P = 80
POSR I = 15
POSR D = 95
На таких настройках навигации квадр летает плавно, но практически перестает сопротивляться ветру.
У меня Robocat270 с двигателями на 1500kv и винтами на 6’. Может на 450 квадре эти настойки нормально работают, попробуйте полетать во время ветра.

fpv_mutant

Александр,а что отвечает за удержание точки,если нет реакции на стики? - дело в том,что GPS/comp поднял аж на 25см,переколебровывал компас ,а все равно уносит в стороны.Что увеличивать в разделе навигации - D?
Какой смысл заложен в регулировку Surface,раздела навигации?
Какие у Вас значения PID для Baro?

DiscoMan
ipz;bt159385

POS P = 1
POS I = 80
POSR P = 80
POSR I = 15
POSR D = 95
На таких настройках навигации квадр летает плавно, но практически перестает сопротивляться ветру.
У меня Robocat270 с двигателями на 1500kv и винтами на 6’. Может на 450 квадре эти настойки нормально работают, попробуйте полетать во время ветра.

Игорь, тогда POS P можно попробовать поднять до 10 или более. В настройках айнава многое взаимосвязано, и я обнаружил, что дерготня в жпс режиме связана не только с навигационными пидами, но и с другими параметрами, например, рейтами (roll_rate и pitch_rate). Для плавности их нужно уменьшить, основная дерготня у меня была из-за них, не только из-за настроек навигации. (POS P я сам сейчас поднял до 10, при 1 коптер в режиме RTH летел домой со скоростью 3 кмч))) ) И поиграться с параметром rate_accel_limit_roll_pitch в сторону его уменьшения. Начать с 8000-10000 dps^2 и уменьшать. У меня на большом коптере к примеру в прошлом полете стояло 1200, так коптер вообще так величаво наклонялся, следуя командам РУ))

DiscoMan
fpv mutant;bt159433

Александр,а что отвечает за удержание точки,если нет реакции на стики? - дело в том,что GPS/comp поднял аж на 25см,переколебровывал компас ,а все равно уносит в стороны.Что увеличивать в разделе навигации - D?
Какой смысл заложен в регулировку Surface,раздела навигации?
Какие у Вас значения PID для Baro?

Что у вас отвечает за удержание позиции, я уже понял)) Провод RX от GPSа все-таки не надо было отключать 😃 В остальном - недостаточность навигационных пидов. Надо увеличивать все последовательно. Увеличиваем POS P, появляется дерганная реакция на стики, уменьшаем рейты и лимит ускорений, как я писал в предыдущем ответе. Видим, что увеличение POS P не особенно помогает держать точку, добавляем к POSR P и, понемногу, к POSR I. Начинается раскачка по горизонтальному положению, пролеты нужной точки или возврат сильно в обратном направлении при отпускании стиков, увеличиваем POSR D. Как-то так.

Acvil

Собрал 2 летающих аппарата на Inav, 1.9.1.

Первый- квадрокоптер на 275 раме, второй- гекса на 500 мм. В обоих случаях полётник Matek F405-CTR.

После общей настройки (калибровки акселерометра, включения AIR мода, настройки аппаратуры, увеличения угла наклонов и скорости движения в навигационных режимах) в пидах слегка уменьшил Р, чуть увеличил I и D. Всё. Пиды навигации не трогал вообще.

На 275 мм раме уже 7 раз летал вверх, на максимальную дальность пока 5.1 км. Вдаль особо не летаю, неинтересно.

На гексе (собрал только неделю назад) пока летаю рядом, 100-200 метров.

Смысл в чём- всё работает! Никаких глюков, болтанок, унитазинга, самопроизвольного дизарма… Правда, газ в ноль при спуске ни разу в ноль не опускал- обычно 10-15% газа, скорость снижения 18-20м\сек, выше крыши. Так что…может я что то не так делаю?

DiscoMan

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

В любом случае, я бы не стал писать посты в стиле: “я д’Артаньян, #авывсездеськриворукиедебилыимаетесьфигней”, а задумался бы о том, что если люди пишут о проблемах и публикуют багрепорты на гитхабе - значит проблемы есть, просто вас они пока миновали по вышеуказанным причинам.

dvd-media
Acvil;bt159728

Смысл в чём- всё работает! Никаких глюков, болтанок, унитазинга, самопроизвольного дизарма…

Поддержу. Хотя глюки всё же бывали, и настраивать пиды навигации (до степени мне необходимой) мне пришлось долго и нудно, однако большинство параметров менял всегда через закладки конфигуратора. В кли только углы наклона (ранее небыло в конфигураторе этого) менял и дазарм после посадки. Летаю на айНАВ около 2 лет, с 1.3 или 1.4 версии и остановился на 1.8 (сейчас матек цтр, а начинал с спрф3 ево и далее омнибусы).
Никаких дизармов незапланированных небыло (не считая моих ошибок). К автору статьи никаких претензий. Постарался, собрал, расписал. Но… выводить некий стандарт пидов я бы не стал. Да и 90% указанных в статье параметров меняются просто из закладок. Почему я “против” использования кли, особенно новичкам… т.к. результат может быть плачевный. Сколько было криков по поводу взлётов непроизвольных, унитаза и т.п. потом начинают везде советовать команды из кли… Блин, да сначала бы научились конфигуратором пользоваться (хотя для меня много параметров остаются загадкой, т.к. нда, чёткого описания нет на русском)…

Заголовок “Если у вас не гоночный мини-коптер, не включайте AIRMODE!” может как-то помягче? У меня коптер 450мм, вес 1,0-1,3(с камерой если) и всегда включен аирмод… не заметил косяков.

Ещё возник вопрос по данной фразе в начале повествования:

При первых подлетах я сдуру решил, что он у меня висит ровно в середине газа, т.е при 1500, и поставил 1350 мксек, а коптер был сильно недогружен и висел при 1280 примерно. В результате конечно я поймал фейлсейф, и коптер подорвался в небо)) Пока я метался по земле и соображал, что делать, высота уже была 500 метров. Пришлось его дизармить там.

ФС был по потере связи или какая причина? Если потеря, то каким образом дизармить в режиме ФС?

PavelKa

Здорово! Отличная статья! Спасибо DiscoMan! В одном месте я узнал много нового и полезного. Особенно полезно про ПИДы GPS. Нигде не мог найти про это. Только поиском про PID GPS нашел вашу статью. И в комментариях под статьей полезные советы.

PavelKa
invis;bt159234

Недавно еле воскресил свой коптер, пролежал в болоте 1.5 суток.
Был настроен на RTH, спускался с большой высоты с выкл. газом. Происходил файлсейф, потом хлоп и дизарм бай ФС.
Смонтировал видос, посмотрите кому интересно. Дизарм на 4:45 примерно.

Интересно! А почему во время падения не смог заармится?

dvd-media
PavelKa;bt159900

Интересно! А почему во время падения не смог заармится?

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

PavelKa

😦

dvd-media;bt159904

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

Так на видео он вроде и не наклонялся. Как задизармился, так и падал блинчиком до земли. Лишь немного вращался по Yaw. Может, причина в чем-то другом?😦

dvd-media
PavelKa;bt159905

😦
Может, причина в чем-то другом?😦

Я видео не смотрел…
А задизармить можно было так же и самому, например я дважды крашил коптер, когда по неопытности пытался быстро опуститься с высоты в режиме альтхолд(!), естественно коптер опускался с заданной скоростью, а стик был практически в нуле, в это время я начинал “делать обзор”, разворачиваясь по ЯВ, естественно дизармил стиком и падал. После этого забил себе в голову, что в ноль ставить не нужно, а чтобы быстро опустить коптер режим альтхолд не используют, только и всего.

п.с. для защиты от этого конечно пригодится команда, указанная в статье про запрет дизарма в нулевом положении стика, но когда уже есть опыт полётов, это не обязательно. Так же как разрешение на АРМ без 3Дфикса у меня активно, но я никогда не полечу, пока он не пропикает о 3дфиксе и светодиоды не покажут, что можно (т.к. печальный опыт тоже присутствует).

Polle

Добрый день. Подскажите кто знает,- собрал дрон всё работает кроме одного при потери связи садиться, а должен возвращаться домой. Прошивка INAV 1.9.1, в настройках конфигуратора всё правильно, с пульта FS работает нормально.

dvd-media
Polle;bt159924

в настройках конфигуратора всё правильно

Вот это под вопросом.

PavelKa

set failsafe_off_delay = 0 - эта команда работает только в режиме FailSafe Land.
В режиме FailSafe RTH эта команда не имеет значение, какая там переменная.
Я правильно понимаю?

DiscoMan
dvd-media;bt159897

Но… выводить некий стандарт пидов я бы не стал.

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

dvd-media;bt159897

Заголовок “Если у вас не гоночный мини-коптер, не включайте AIRMODE!” может как-то помягче? У меня коптер 450мм, вес 1,0-1,3(с камерой если) и всегда включен аирмод… не заметил косяков

Тут речь о том, что включенный эйрмод ОПАСЕН на плохо настроенных и недогруженных аппаратах. Первые тестовые подлеты я выполнял со стоковыми пидами и батарейкой, намного меньшей по весу, чем та, на которой планировал в итоге летать, и под которую рассчитывал аппарат. В итоге ПИДы оказались слишком высокими, а аппарат легким. В итоге с осцилляциями он взвился в небо и исчез за облаками, будучи ВООБЩЕ никак не управляемым)) Поэтому я и советую не включать эйрмод. Это можно будет сделать потом, когда будет уверенность в правильной загрузки аппаратах и подобранных под нее ПИДах.

librol

Подскажите как быть.
Matek 405 CTR.
C inav не работает шина i2c. Барометр не работает, пробовал разные прошивки. С бетафлай, бутерфлай барометр работает.

DiscoMan

Что-то еще висит на этой шине? По идее компас висит. Если да, то искать проблемы с подключением. И попробовать понизить частоту шины через CLI, командой i2c_speed

librol

Висит компас. Я отключал компас не помогло.

YraY

Поставил 2.2.0RC1 - дерганья в круизе не уменьшились, я бы даже сказал что увеличились

DiscoMan
YraY;bt161070

Поставил 2.2.0RC1 - дерганья в круизе не уменьшились, я бы даже сказал что увеличились

На данный момент этот режим использовать на коптерах нельзя. Для чего его вообще релизнули в настолько косячном виде, для меня большая загадка. И еще большая загадка - поведение разработчиков, НАПРОЧЬ игнорирующих соответствующие баг-репорты, типа, у нас все зашибись, а у вас just a tuning issue. Сегодня ради полноты картины проверил жпс круиз еще и с BN-880. Только убедился в своих выводах.

Однако, к чести разработчиков стоит заметить, что они исправили accelerometer saturation bug при включенном airmode. Наконец-то. К релизу 2.2. Суть бага описана в этом посте, но вкратце повторюсь: если включен эйрмод и коптер по каким-либо причинам сильно вибрирует (перепидовка, дисбалансы ВМГ и т.д), то коптер бесконтрольно, свечой пойдет в небо из-за клиппинга показаний акселерометра, и вернуть его оттуда можно будет только дизармом, если успеете его сделать. Если еще и фейлсейф будет не настроен или будет настроен неправильно, а аппарат успеет выйти за пределы радиуса действия аппы (что легко может быть, т.к пойдет он вверх на полном газу), то можно будет смело ему “прости и прощай”.

Альбертос

Подскажите пожалуйста. Собрал новый коптер на Inav 2.1.0. Хочу проверить дома работу коптера. После запуска коптер при нулевом газе немного проработав дизармится с надписью Disarmed by timeout. Что делать? Где в настройках копать?

DiscoMan

Не изучал вопрос, но я бы поискал в мануале по CLI переменные содержащие или disarm или timeout. Или всё, что на это похоже 😃 Но вообще это нормальная логика поведения аппарата при нулевом газе. Если пилот не собирается взлетать, и держит газ в нуле, то для безопасности логичнее задизармиться.

IrinFenyx

С удовольствием прочитал. Кое-что понял, что раньше было туманно. Так вы и сейчас круиз не рекомендуете? Ставить в attitude? Я пока только учусь летать, мне бы не угрохаться раньше времени…

vzhik5
PavelKa;bt159905

😦
Так на видео он вроде и не наклонялся. Как задизармился, так и падал блинчиком до земли. Лишь немного вращался по Yaw. Может, причина в чем-то другом?😦

На будущее - у айнава есть аварийный арм в обход всех блокировок. Просто зажимаете газ в ноль и в быстром темпе дергаете свич арма - раз 6-7, и он заармится. Сначала конечно лучше на земле потренироваться. Если спутники есть- потом включаете режим стабилизации и коптер зависает.

DiscoMan
IrinFenyx;bt161783

С удовольствием прочитал. Кое-что понял, что раньше было туманно. Так вы и сейчас круиз не рекомендуете? Ставить в attitude? Я пока только учусь летать, мне бы не угрохаться раньше времени…

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

DiscoMan
Альбертос;bt161124

Подскажите пожалуйста. Собрал новый коптер на Inav 2.1.0. Хочу проверить дома работу коптера. После запуска коптер при нулевом газе немного проработав дизармится с надписью Disarmed by timeout. Что делать? Где в настройках копать?

При нулевом газе коптер ессессно сам задизармится через какое-то время. Это сделано в целях безопасности и не отключается. Работу коптера дома рекомендую проверять, привязав коптер к какому-то основанию за все 4 луча, чтобы он в принципе не мог оторваться или перевернуться. Далее включаете режим акро (не angle и тем более альтхолд/посхолд) и гоняете моторы с пропами стиком газа. Можно и нужно резко газовать и сбрасывать газ в ноль. Так вы выявите 90% проблем с ВМГ: десинки регулей, перезагрузку полетника из-за помех от регулей и т.д. Выявили любые косяки - не летаем, а разбираемся с ними до полного устранения.