SrgM
Разные заметки по квадрокоптеру 250-280

Все о PID настройке для CC3D
D это дереватив или производная от P, без P не бывает D. Если P равно нулю, D тоже равна нулю, физически в прошивке Бориса если посмотреть код D считается как три разницы между первым и последующим замером и в коде это называется дельта, в мозг подается ( в коде прошивке) три дельты деленных на три, то есть если первый замер показал 2 второй 4 третий 6 то в мозг идет 2+4+6 деленная на три. Теперь смысл того что я написал выше, когда вы отрегулировали P и далее D, D вносит свой плюс в суммарный PID. Если вы посмотрите Блекбокс там выводится эта кривая, получается когда вы сначала выводите на предельные значения P потом добавляете D, суммарная составляющая может превысить предельно допустимое значение, поэтому вы повторно проверяете и подстраиваете P, задача I загнать затухающую ошибку в допустимые границы, за время Te, это одна из составляющих того что делает Борисю Так понятней ? И это чуть вбок, Борис применил в своем коде программную хитрость, он вернулся к старому контроллеру PI который работает быстро и надежно, параметр D в его прошивке вступает в работу только когда вы тронули стик.
Вот картинка которую одобрил автор прошивки это картинка суть его прошивки
Задача D одна, замерять крутизну P. Без P D не бывает. Представьте себе что вы поднимаетесь в гору, задача определить сколько высоты вы наберете за 1 минуту. Если это 2 метра склон пологий, если 20м крутой. Это работа D другой нет. При крутом подъеме P параметр D тоже задирается потому что дельта с положительным знаком и чем круче поднимается P, тем больше положительная дельта и она принимает участие в суммарном PID, она ( дельта) может быть с минусом и помогает суммарному PID резче падать ( что есть хорошо ), сам он ( D ) ничего не делает, он только стучить мозгу как себя ведет P чтобы контроллер принимал решение. Жизненный пример это как указка которую вы держите в руке и ее нужно опустить вниз на 60 градусов, тут все понятно и легко, а если это кувалда ? Вот D это параметр который сам ничего не делает, но дает мозгу понять что маневр очень быстрый и мозг понимает что остановить вращение нужно левые движки на стоп, а правые на максимал или ноге будет больно или маневр будет с ошибкой. Отсюда понятно почему так важно уменьшить loop, чем чаще замер, тем мозгу понятнее картина, иначе он увидит как вы начали подъем в гору и второе это вы уже внизу, он даже не узнает что вы поднимались, дошли до вершины , а потом опускались.
избыток P – это крупные осцилляции,
избыток I – это мелкие осцилляции,
избыток D - видно как отскок, то есть крутите бочку (ролл), останавливаете и как будто о батут ударились, отскок в другую сторону, это признак понизить D.
Инструкция для определения Roll и Pitch UOV для калькулятора:
forums.openpilot.org/topic/3...builds-optune/
PID калькулятор
optune.opng.org
Вот примерный алгоритм:

This site will not work without javascript!
This site will not work if cookies are completely disabled.
Site is offline