Настройки Pid и что означают PId для Arducopter (перевод из wiki arducopter)

Это неполный перевод статьи из вики Ардукоптера АС_2 Tweaks .
Перевел как мог. Сам полез разбираться с настройками Пидов, и после сломанной пары винтов решил найти инструкцию. Долго не искал - переводил и разбирался пару часов. Перевод помог в первую очередь мне самому разложить все по полочкам а не тыкаться вслепую и чегото менять, чтобы заставить ЭТО полететь.

Настройка параметров Ардукоптера

Если Вы истпользуете раму, отличную от официального ArduCopter kit (набора) , Вам понадобится изменять некоторые PID параметры
(PID означает Proportional-Integral-Derivative Пропорционально-Интегральная производная. Вы можете прочесть об этом больше здесь)

Полное описание PID ниже:

Вы можете регулировать ПИДы в Mission Planner

Помните две вещи :

  • Начните с использования Stabilize режима для настроек. Если ЭТО не полетит корректно в Stabilize ОНО НЕ ПОЛЕТИТ нормально ни в одном другом режиме
  • Сначала начните с дефолтных настроев (настройки по умолчанию). Вы не должны сразу сильно менять настройки от дефолтных .

Для нормального полета , есть действительно только один параметр , о котором бы должны “позаботиться” - это Rate Roll P setting (Rate Pitch по умолчанию связан с ним , если нажата галочка “Lock Pitch and Roll Values” смотрите картинку выше)
Повышая это значение делаете коптер более “агрессивним” в полете . Понижая это значение Вы получаете более "мягкий " отклик.

Вот пример: по умолчанию значение Rate Roll P - 0.14. Это значение оптимально для стандартного Jdrones/3DR квадрокоптера с 850 моторами и 10" (10 дюймовыми) пропеллерами.
Однако если Вы используете большие чем 850 моторы и 12 дюймовые пропеллеры , которые более мощные, то такие значения Rate Roll P будут слишком агрессивные и Ваш квадрик будет казаться довольно неустойчивым. Так в этом случае понизьте ваши значения Rate Roll P до 0.1 или 0.09, и вы должны увидеть более стабильный полет.
То же самое верно и для удержания высоты - Altitude hold. Throttle Rate P нуждается в корректировке, чтобы получить оптимальную производительность по высоте.

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

Мой коптер раскачивается медленно (большие движения) когда стабилизировался : понизьте значение в Stabilize Roll P.

Мой коптер раскачивается быстро (мелкие движения) когда стабилизировался : понизьте значение Rate Roll P.

Мой коптер становится шатким при быстрой посадке . Поднимите значение Rate Roll P. Не всегда получается - зависит от пропов.

Мой коптер слишком вялый : Понимите значение Stabilize Roll P. Это значение заставляет коптер быстрее реагировать на угловые ошибки.

Мой вертолет крутит вправо или влево на 15 °, когда я взлетаю: Ваши моторы установлены не прямо или Регули не откалиброваны.

пока пропущено…

За что отвечают Пиды .

Что означает…

STABILIZE_P: скорость поворачивания (реагирования) , с которой Вы хотите, чтобы реагировал коптер. Чем выше тем быстрее коптер будет пытаться достичь желаемой позиции.
STABILIZE_I: Используется для учета изменений CG (кто знает что это такое), слабые двигатели или постоянные внешние силы.
STABILIZE_Imax: Максимальное количество, что коптер может компенсировать эти несбалансированные силы.

RATE_P: самый важный параметр! Его значение контролирует, сколько тяги нужно выводить для достижения желаемой скорости вращения.
Большая тяга (мощные двигатели) или большой вес коптеров потребуется меньшее значение RATE_P, меньшая тяга / вес потребует более высокое значение.
Слишком высокие значения будут вызывать колебания около 5-10Гц. Вам нужно, чтобы это значение было несколько ниже, чем значение, котороя вызывает колебание.
Агрессивный тюнинг можно получить вернув ровно на 1 от значения перерегулирования . Используйте CH6 настройки для регулировки в воздухе для лучшей производительности.
RATE_I: Используется, чтобы помочь коптеру достичь желаемого крена . Не используйте значение по умолчанию, как это может быть очень трудно настроиться должным образом и может ввести в заблуждение.
Если вы только начинаете, установить этот параметр в 0.
RATE_IMAX: максимальное количество Rate_I, которые могут накапливаться. Также не используйте по умолчанию. Имея в 0 IMAX сделает Rate_I совершенно неэффективными, независимо от того, насколько высок Rate_I .

YAW используется для положения под определенным углом рыскания. Если ваш коптер хочет крутиться, естественно, вы не сможете задать точное направление.
Вы будете дрифтовать, а не поворачивать на несколько градусов, пока P получится значительно высоким, чтобы остановить вращение.

STABILIZE_YAW_P: Заданная скорость, с которой вертолет повернется к нужному направлению. Если он слишком высокой, это может вызвать колебания.
STABILIZE_YAW_I: Действует как триммирование для преодоления плохого баланса коптера. Определяет время, необходимое для достижения максимального значения. Выше = быстрее.
RATE_YAW_P: Используется в качестве контролирующего органа AC2 можно использовать для достижения нулевой скорости рыскания. Если он слишком низкий, вы никогда не будете в состоянии остановить вращение. Если он слишком высокий, вызовет колебания рыскания.
RATE_YAW_I: не используется

…пропущено…

Throttle Rate используется чтобы ослабить коптер и контролировать скорость подъема.
Throttle Rate P : количество газа на выходе используется для изменения скорости подъема.
THROTTLE_I: компенсирует ошибки в достижении желаемой скорости подъема (ноль по умолчанию. мы используем Alt hold делать большую часть работы.).
THROTTLE_IMAX: Количество Throttle_I мы можем добавить или убрать для достижения желаемой скороподъемности.

  • 20300
Comments
Triumpher

Отлично! Только про D-параметр ни слова, там еще инфа есть.

atumis

но я пока не взлетел…

Triumpher

Сначала надо крутить Rate_P, добится того значения, чтобы его не колбасило (лучше в руках, но осторожно) при этом чтоб rate_D был где то 0.0025, а Rate_I был в 0. А уж потом крутить в Stabilize_P, I, D.

У меня например двигатели 1000 kV, пропы 10х4.5, рама 450 мм, взлетный вес 720.
Пиды: Rate_P = 0.065 Rate_I = 0, Rate_D = 0.002
Stab_P = 3.5 Stab_I = 0.009 Stab_D = 0.009

AndroNNNio

Дополню чуть с того места, где “пока пропущено” ))

Мой вертолет не остается неподвижным в воздухе.

Откалибруйте уровень на плоской поверхности (разоружаться в течение 15 секунд). Вы можете также полететь в AUTO-TRIM в безветрие (важно!). Любой ветер вызовет изменения, которые Вы вносите, чтобы работать против Вас, когда коптер вращает 180°. Вы можете использовать триммеры продольного и поперечного крена, но не забыть отцентровать их, когда будете заново конфигурировать радио. Использование триммеров может иметь отрицательный эффект в SIMPLE MODE, отклоняясь от курса. Никогда не триммируйте YAW, Ваш вертолет может начать самостоятельно вращаться.

В LOITER мой вертолет постоянно промахивается.
Попытайтесь увеличить Nav_P. Вы можете также понизить I, потому что в некоторых случаях Nav_I или Loiter_I могут причины промахиваться. Сделайте I равным 0 в безветрие – это лучший способ настроить Nav_P.

Мой вертолет все более и более качается вверх и вниз в ALT HOLD.
Ваш THROTTLE_P слишком высок или низок. Вы не нуждаетесь в высоком P, чтобы удерживать высоту. Думайте, сколько Вы перемещаете дроссель, чтобы держать высоту отлично. Не очень много! Это – то, что Вы нуждаетесь в P, чтобы сделать. I будет расти, поскольку Ваша батарея понижается, чтобы составить различие.

Коптер вращается ПО или ПРОТИВ ЧАСОВОЙ СТРЕЛКИ.
Настройте магнитное склонение компаса, пока коптер не прекратит кружиться.

atumis

Спасибо .

SkyAK

А где менять склонение компаса?

atumis

Почитай здесь quadro-copter.info/wiki/soft/apm-planner
пункт 7
пункт 11

SkyAK

с аппой не могу до сих пор разобраться, не реагирует на все стики кроме газа.
пробовал отключать SERIAL_PPM в APM_Config.h, не помогает
(кстати она и так закоментирована: //#define SERIAL_PPM ENABLED)

pilot222

Всем доброго дня. У меня коптер 55-го размера, моторы 4225 610кв на 14-ых пропах. С двумя аккумуляторами 4s 10A газ висения 43%. Я замучился с ПИДами. Коптер висит ровно, но при посадке раскачивается и падает. Так же не устойчив и при поворотах. С пидами я уже запутался, хотя начинал по инструкции. Может кто то поможет мне этими цифрами с помощью фото от похожего коптера? Я хотя бы взял бы их за основу для дальнейшей подстройки.

R0K

CG ЦТ центр тяжести

pilot222

Причина обнаружилась и она банальна: один маунт, который казался жестким на ощупь, оказался подвижным при работе. Это была основная причина. Так же цифровые регули теряли ход при 3,7в на банку и коптер терял устойчивость. После их настройки через спец программу, что лично мне далось не просто, коптер залетал как по рельсам до аж 2,8 в на банку. Устойчивость невероятная при висени и полете по точкам в любой ветер. Но при посадке больше 2,5м/сек все-таки его качает и это устранить хотя бы до 3м/сек не удалось.