Ограничения ПИД-регулятора
Хотя ПИД-регуляторы применимы к большинству задач управления, они могут быть плохими в других приложениях. ПИД-регуляторы, используемые отдельно, могут давать плохую производительность, когда коэффициент усиления ПИД-регулятора необходимо уменьшить, чтобы он не отключался или не колебался выше заданного значения . Производительность системы управления может быть улучшена за счет объединения замкнутого контура ПИД-регулятора с разомкнутым контуром. Знание системы (например, необходимое ускорение или инерция ) может быть активировано и объединено с выходным сигналом ПИД-регулятора для повышения конечной производительности системы. Только авансовое значение(или Control Feedforward) может обеспечить наибольшую часть выходных данных контроллера. ПИД-регулятор может использоваться в первую очередь для реагирования на любые различия или «ошибки», которые остаются между заданным значением и фактическим значением процесса. Поскольку на выходной сигнал контура прямой связи не влияет обратная связь процесса , он никогда не может вызвать колебания системы, повышая производительность, скорость отклика и стабильность системы.
Например, в большинстве систем управления движением для ускорения механической нагрузки требуется большее усилие (или крутящий момент ) двигателя. Если ПИД-контур используется для управления скоростью нагрузки и создания необходимой силы или крутящего момента для двигателя, может быть полезно взять желаемое мгновенное значение ускорения для нагрузки и добавить его к выходному сигналу ПИД-регулятора. Это означает, что независимо от того, ускоряется или замедляется нагрузка, пропорциональная силауправляется двигателем в дополнение к значению обратной связи ПИД-регулятора. ПИД-контур в этой ситуации использует информацию обратной связи для увеличения или уменьшения разницы между уставкой и первым значением. Работая вместе, комбинация прямой и обратной связи обеспечивает более надежную и стабильную систему.
Другая проблема с PID заключается в том, что он линейный . В основном производительность ПИД-регуляторов в нелинейных системах является переменной. Еще одна распространенная проблема ПИД-регулятора заключается в том, что в производной части шум может влиять на систему , в результате чего эти небольшие вариации приводят к очень большим изменениям на выходе. Обычно фильтр нижних частот помогает, поскольку он удаляет высокочастотные компоненты шума. Однако FPB и производное управление могут привести к тому, что они нейтрализуют друг друга. В качестве альтернативы производное управление может быть удалено в некоторых системах без значительной потери контроля. Это эквивалентно использованию ПИД-регулятора, такого как только ПИ.
Задача настройки
Настройка регулятора производится с одной единственной целью: подобрать его коэффициенты для данной задачи таким образом, чтобы регулятор поддерживал величину физического параметра на заданном уровне. В нашем примере физическая величина — это температура.
Допустим текущая температура в помещении 10 °С, а мы хотим, чтобы было 25°С. Мы включаем регулятор и он начинает управлять мощностью обогревателя таким образом, чтобы температура достигла требуемого уровня. Посмотрим как это может выглядеть.
На данном рисунке красным цветом показана идеальная кривая изменения температуры в помещении при работе регулятора. Физическая величина плавно, без скачков, но в тоже время достаточно быстро подходит к заданному значению. Оптимальное время, за которое температура может достигнуть заданной отметки, определить довольно сложно. Оно зависит от многих параметров: размеров комнаты, мощности обогревателя и др. В теории это время можно рассчитать, но на практике чаще всего это определяется экспериментально.
Чёрным цветом показан график изменения температуры в том случае, если коэффициенты подобраны совсем плохо. Система теряет устойчивость. Регулятор при этом идёт «в разнос» и температура «уходит» от заданного значения.
Рассмотрим более благоприятные случаи.
На этом рисунке показаны графики, далёкие от идеального. В первом случае наблюдается сильное перерегулирование: температура слишком долго «скачет» относительно уставки, прежде чем достичь её. Во втором случае регулирование происходит плавно, но слишком медленно.
А вот и приемлемые кривые:
Данные кривые тоже не идеальны, но могут быть сочтены за удовлетворительные.
В процессе настройки регулятора, пользователю необходимо стремиться получить кривую, близкую к идеальной. Однако, в реальных условиях сделать это не так-то просто — приходится долго и мучительно подбирать коэффициенты. Поэтому зачастую останавливаются на «приемлемой» кривой регулирования. Например, в нашем примере нас могли бы устроить коэффициенты регулятора, при которых заданная температура достигалась бы за 15-20 минут с максимальным перерегулированием (максимальными «скачками» температуры) 2 °С. А вот время достижение уставки более часа и максимальные «скачки» температуры 5 °С — нас бы не устроили.
Далее поговорим о том, как подобрать коэффициенты для достижения оптимального регулирования. Рекомендуется настраивать коэффициенты в том же порядке, в котором это описано.
Как работают значения PID, их изменение
Как правило, изменение значений ПИД (усиления) оказывает влияние на поведение квадрокоптера:
Усиление P
P определяет, насколько жестко контроллер полета исправляет погрешности, чтобы достичь желаемой траектории полета. Этот параметр регулирует чувствительность и отзывчивость на изменения положения стиков. Чем выше это число, тем выше чувствительность и отзывчивость.
Более высокий коэффициент Р, означает более четкое управление, в то время как низкий Р — более мягкое и плавное управление. Но если это значение слишком большое, дрон станет слишком чувствительным и начнет сам себя корректировать, а также начнутся колебания значений положения стиков.
Можно снизить P, чтобы уменьшить колебания, но тогда дрон будет нечетко выполнять ваши команды, поэтому нужно будет поиграть с I и D, чтобы это компенсировать.
Усиление I
Значение I определяет, насколько сильно он будет поддерживать квадрокоптер при воздействии внешних факторов, таких как ветер и смещение центра тяжести, например.
Это настройка жесткости при поворотах квадрокоптера.
Обычно, настройки по умолчанию вполне хорошо справляются с этим, но если вы заметили некоторый дрейф дрона без вашей команды, то увеличьте немного значение I. Если значение будет слишком низкое, вам часто придется исправлять траекторию полета дроном, особенно, если вы часто меняете уровень газа.
Если значение I будет слишком высокое, то поведение квадрокоптера будет «деревянным», он будет слабо реагировать на ваши изменения положения стика на пульте. Никакие регуляторы оборотов, двигатели и пропеллеры не одинаковы, каждый на какую-то часть, но работает по-своему, поэтому когда вы даете резкий газ, а потом резко опускаете стик газа, один двигатель будет останавливаться быстрее другого и наоборот, все это вызывает провалы в положении квадрокоптера в воздухе, один двигатель еще имеет тягу, а другой уже нет.
Таким образом, I используется для исправления таких мелких проблем.
Усиление D
D работает как демпфер (глушитель, гаситель) и уменьшает чрезмерную коррекцию и регулирование коэффициента P. Увеличивая значение D, вы смягчаете воздействие Р, как бы добавляя «пружину» и также минимизирует вибрацию пропеллеров.
Если D будет слишком маленьким, то дрон будет как бы «отскакивать» назад в конце флипов и кренов, а также у вас будет сильная вибрация, вызванная вертикальным снижением.
Слишком большое значение тоже приводит к вибрациям. В попытке стабилизировать квадркоптер, полетный контроллер будет командовать регуляторам оборотов, чтобы те то прибавляли обороты двигателям, то уменьшали с такой скоростью (в смысле быстрее-медленнее), что из-за этого двигатели перегреются и сгорят. Вибрация также будет действовать на контроллер полета и со временем ситуация будет ухудшаться.
Еще одним побочным эффектом от D является то, что квадрокоптер становится «мягким», то есть реакция на команды слишком вялая.
Настройка ПИД-параметров
Целью настройки параметров ПИД-регулятора является обеспечение того, чтобы контур управления корректировал влияние возмущений эффективно и за минимальное время; должен быть достигнут минимальный интеграл ошибки. Если параметры ПИД-регулятора (коэффициент усиления пропорционального, интегрального и производного) выбраны неправильно, управляемый процесс может быть неустойчивым, например, его выходной сигнал изменяется с колебаниями или без них и ограничивается только насыщением . или механический разрыв. Отрегулируйте контур управленияэто означает настройку параметров системы управления на оптимальные значения для желаемой реакции системы управления. Оптимальное поведение перед изменением процесса или изменением “уставки” варьируется в зависимости от приложения. Как правило, перед реакцией контроллера требуется стабильность, и она не должна колебаться перед любой комбинацией условий процесса и изменением «уставок». Некоторые процессы имеют определенную степень нелинейности, а некоторые параметры, которые хорошо работают в условиях полной нагрузки, плохо работают, когда процесс находится в состоянии «без нагрузки». Существует несколько способов настройки ПИД-контура. Наиболее эффективный метод обычно требует разработки модели процесса в той или иной форме, а затем выбора P, I и D на основе параметров динамической модели.Ручные методы настройки могут быть очень неэффективными. Выбор метода будет зависеть от того, можно ли «отключить» шлейф для регулировки, и от времени отклика системы. Если систему можно отключить, лучшим методом настройки часто является настройка входа, измерение выхода как функции времени и использование этого отклика для определения параметров управления. Теперь опишем, как выполнить ручную настройку.Теперь опишем, как выполнить ручную настройку.Теперь опишем, как выполнить ручную настройку.
ручная регулировка
Если система должна оставаться «в сети» , один из методов настройки заключается в том, чтобы сначала установить значения I и D на ноль. Затем увеличивайте P до тех пор, пока выход цикла не начнет колебаться. Затем установите P примерно на половину ранее установленного значения. Затем увеличивайте I до тех пор, пока процесс не уложится в требуемое время (хотя слишком большое увеличение I может вызвать нестабильность). Наконец, увеличивайте D, если это необходимо, пока контур не станет достаточно быстрым, чтобы достичь исходного значения после внезапного изменения нагрузки.
Очень быстрый контур ПИД-регулятора быстро достигает заданного значения , а не очень быстрый контур ПИД-регулирования достигает заданного значения не так быстро. Некоторые системы не способны воспринять этот внезапный триггер; В этих случаях требуется еще один контур с P менее половины P предыдущей системы управления.
Метод Циглера-Николса
Метод Циглера-Николса позволяет провести испытание управляемой системы, и на основе этого испытания рассчитываются необходимые параметры ПИД-регулятора для достижения хорошего быстрого отклика с небольшим перерегулированием.
Три коэффициента ПИД регулятора и принцип работы
Работа ПИД-регулятора заключается в подаче выходного сигнала о силе мощности, необходимой для поддержания регулируемого параметра на заданном уровне. Для вычисления показателя используют сложную математическую формулу, в составе которой есть 3 коэффициента — пропорциональный, интегральный, дифференциальный.
Возьмем в качестве объекта регулирования ёмкость с водой, в которой необходимо поддерживать температуру на заданном уровне с помощью регулирования степени открытия клапана с паром.
Пропорциональная составляющая появляется в момент рассогласования с вводными данными. Простыми словами это звучит так — берется разница между фактической температурой и желаемой, умножается на настраиваемый коэффициент и получается выходной сигнал, который должен подаваться на клапан. Т.е. как только градусы упали, запускается процесс нагрева, поднялись выше желаемой отметки — происходит выключение или даже охлаждение.
Дальше вступает интегральная составляющая, которая предназначена для того, чтобы компенсировать воздействие окружающей среды или других возмущающих воздействий на поддержание нашей температуры на заданном уровне. Поскольку всегда присутствуют дополнительные факторы, влияющие на управляемые приборы, в момент поступления данных для вычисления пропорциональной составляющей, цифра уже меняется. И чем больше внешнее воздействие, тем сильнее происходят колебания показателя. Происходят скачки подаваемой мощности.
Интегральная составляющая пытается на основе прошлых значений температуры, вернуть её значение, если оно поменялось. Подробнее процесс описан в видео ниже.
А дальше выходной сигнал регулятора, согласно коэффициенту, подается для повышения или понижения температуры. Со временем подбирается та величина, которая компенсирует внешние факторы, и скачки исчезают.
Интеграл используется для исключения ошибок путем расчета статической погрешности. Главное в этом процессе — подобрать правильный коэффициент, иначе ошибка (рассогласование) будет влиять и на интегральную составляющую.
Смотрите это видео на YouTube
Третий компонент ПИД — дифференцирующий. Он предназначен для компенсации влияния задержек, возникающих между воздействием на систему и обратной реакцией. Пропорциональный регулятор подает мощность до тех пор, пока температура не достигнет нужной отметки, но при прохождении информации к прибору, особенно при больших значениях, ошибки всегда возникают. Это может привести к перегреву. Дифференциал прогнозирует отклонения, вызванные задержками или воздействием внешней среды, и снижает подаваемую мощность заранее.
Настраивание ПИД-регулятора общего вида
Для такого поддержания давления существует прибор, который называется регулятором задания. Давление в трубах на датчике идет в сравнение с параметром заданного давления. Регулятор сравнивает системное давление с давлением задания, определяет задачу скорости для двигателя для изменения ошибки. Простой вид регулятора применяет план действий ПИД-регулирования. В нем применяются три составляющие типа регуляторов для удаления ошибки: дифференциальный, интегральный и пропорциональный регулятор.
Регулятор пропорционального типа
Такой регулятор – главный, скорость задается в прямой зависимости от ошибки. При применении пропорционального регулятора система будет иметь ошибку. Малые значения коэффициента регулятора пропорционального типа дают вялость системы, а высокие параметры к колебаниям и нестабильности системы.
Регулятор интегрального типа
Такой регулятор применяется для удаления ошибки. Скорость увеличится до удаления ошибки (снизится при негативной ошибке). Небольшие значения суммирующей составляющей слишком оказывают влияние на деятельность регулятора в общем. При установлении больших значений происходит промахивание системы, она функционирует с перерегулированием.
Регулятор дифференциального типа
Такой регулятор измеряет скорость корректировки ошибки, применяет для повышения системного быстродействия, увеличивает регуляторное быстродействие в общем. Во время увеличения быстродействия регулятора повышается перерегулирование. Это обуславливает к системной нестабильности. Во многих случаях составляющая дифференциальная становится равной нулю или близкой к наименьшему значению для того, чтобы предотвратить это состояние. Она бывает полезной в позиционирующей системе.
Назначение ПИД регулятора
ПИД регулятор предназначен для поддержания на требуемом уровне некой величины — температуры, давления, уровня в резервуаре, расхода в трубопроводе, концентрации чего-либо и т.д., изменением управляющего воздействия на исполнительные механизмы, такие как автоматические регулирующие клапана, используя для этого пропорциональную, интегрирующую, дифференцирующую величины для своей настройки.
Целью использования является получение точного управляющего сигнала, который способен контролировать большие производства и даже реакторы электростанций.
Пример схемы регулирования температуры
Часто ПИД регуляторы используются при регулировке температуры, давайте на простом примере подогрева воды в ёмкости рассмотрим данный автоматический процесс.
В емкости налита жидкость, которую нужно подогреть до нужной температуры и поддерживать её на заданном уровне. Внутри бака установлен датчик измерения температуры — термопара или термометр сопротивления и напрямую связан с ПИД-регулятором.
Для подогрева жидкости будем подавать пар, как показано ниже на рисунке, с клапаном автоматического регулирования. Сам клапан получает сигнал от регулятора. Оператор вводит значение температурной уставки в ПИД-регуляторе, которую необходимо поддерживать в ёмкости.
Если настройки коэффициентов регулятора неверны, будут происходить скачки температуры воды, при этом клапан будет то полностью открыт, то полностью закрыт. В этом случае необходимо рассчитать коэффициенты ПИД регулятора и ввести их заново. Если все сделано правильно, через небольшой промежуток времени система выровняет процесс и температура в ёмкости будет поддерживаться на заданной отметке, при этом степень открытия регулирующего клапана будет находиться в среднем положении.
Для чего нужен диммер, что это такое, схема подключения диммера и принцип его работы
Виды терморегуляторов для теплого пола
Что такое соленоидный электромагнитный клапан, назначение, устройство и принцип действия
Что такое термостат и какой у него принцип работы
Что такое резистор и для чего он нужен?
Что такое аттенюатор, принцип его работы и где применяется
Что такое электромагнитное реле, их виды и принцип работы
История и приложения
Первые ПИД-регуляторы начались с разработки ограничителей скорости. Позже ПИД-регуляторы использовались для автоматического управления судами. Один из первых примеров ПИД-регулятора был разработан Элмером Сперри в 1911 году, а первый теоретический анализ ПИД-регулятора был опубликован русским американским инженером Николасом Минорским в 1922 году. состояния и проводил его анализы, наблюдая за рулевым, и, таким образом, отметив, что рулевой управлял кораблем не только по текущей ошибке, но также на основе прошлых ошибок и текущей скорости изменения, что побудило Минорского разработать для этого математическую модель. Его целью была стабильность, а не общий контроль, что значительно упрощало задачу. В то время как пропорциональное управление обеспечивает устойчивость к небольшим возмущениям, его недостаточно для борьбы с постоянными возмущениями, такими как сильный шторм, который требует интегрального члена. Наконец, для улучшения контроля был добавлен производный термин.
Испытания контроллера проводились на USS New Mexico (BB-40) , где он отвечал за управление угловой скоростью руля направления. ПИ-регулятор продолжал вращаться с погрешностью ±2°. Добавление элемента D привело к ошибке ± 1/6 °, что намного лучше, чем у рулевого.
В конечном итоге из-за сопротивления личного состава ВМФ не принял эту систему на вооружение. Аналогичная работа была проведена и опубликована в 1930-х годах.
Благодаря большей точности, чем пропорциональные , пропорционально-дифференциальные и пропорционально-интегральные регуляторы, он используется в более важных приложениях, таких как управление давлением , расходом , силой , скоростью , во многих химических приложениях и другими переменными . Кроме того, он используется в автомобильных регуляторах скорости (круиз-контроль или круиз – контроль ) и контроле остаточного озона в контактных баках.
Очень простой пример, иллюстрирующий основные функции PID, — это когда человек входит в душ. Сначала вы включаете кран с горячей водой, чтобы поднять температуру до приемлемого значения (также называемого заданным значением ). Проблема в том, что может наступить момент, когда температура воды превысит это значение, и человеку придется приоткрыть кран холодной воды, чтобы нейтрализовать жару и сохранить равновесие. Холодная вода регулируется до тех пор, пока не достигнет желаемой температуры. В этом случае человек — это тот, кто осуществляет контроль над контуром управления и тот, кто принимает решения об открытии или закрытии любого из ключей; Но разве не было бы идеально, если бы вместо нас решения принимала машина и поддерживала нужную нам температуру?
По этой причине были изобретены ПИД-регуляторы: чтобы упростить задачи операторов и лучше контролировать операции. Некоторые из наиболее распространенных приложений:
- Температурные контуры (кондиционеры, обогреватели, холодильники и т. д.)
- Контуры уровня (уровень в резервуарах с жидкостью, таких как вода, молочные продукты, смеси, сырая нефть и т. д.)
- Напорные контуры (для поддержания заданного давления в резервуарах, трубах, сосудах и т. д.)
- Петли потока (держитесь в пределах линии потока или трубы)
Составляющие ПИД-регулятора
В стандартном ПИД-регуляторе есть три составляющие и каждая из них по своему воздействует на управление.
Пропорциональная — P (t) = Kp * e (t)
Учитывает величину рассогласования заданного значения и фактического. Чем больше отклонения значения, тем больше будет выходной сигнал, то есть пропорциональная составляющая пытается компенсировать эту разницу.
Однако пропорциональный регулятор не способен компенсировать полностью ошибку рассогласования. Всегда будет присутствовать так называемая статическая ошибка, которая равна такому отклонению регулируемой величины, которое обеспечивает выходной сигнал, стабилизирующий выходную величину именно на этом значении. При увеличении коэффициента пропорциональности Kp статическая ошибка уменьшается, но могут возникнуть автоколебания и снижение устойчивости системы.
Интегральная – I (t) = Ki ∫e (t) dt
Интегральная составляющая используется для устранения статической ошибки. Она складывает значение предыдущих ошибок рассогласования и компенсирует их, можно сказать, что учится на предыдущих ошибках. То есть ошибка рассогласования умножается на коэффициент интегрирования и прибавляется к предыдущему значению интегрирующего звена. При выходе системы на заданный режим, интегральная составляющая перестает изменяться и не оказывает какого-либо серьезного воздействия на систему. Физически интегральная составляющая представляет задержку реакции регулятора на изменение величины рассогласования, внося в систему некоторую инерционность, что может быть полезно для управления объектами c большой чувствительностью.
Дифференциальная – D (t) = Kd de (t)/dt
Дифференциальная составляющая учитывает скорость изменения регулируемой величины, противодействуя предполагаемым отклонениям, вызванными возмущениями системы или запаздыванием. И чем больше будет величина отклоняться от заданной, тем сильнее будет противодействие, оказываемое дифференциальной составляющей. То есть она предугадывает поведение системы в будущем. При достижении величины рассогласования постоянного значения дифференциальная составляющая перестает оказывать воздействие на управляющий сигнал.
На практике какая-либо из составляющих может не использоваться (чаще всего Д-дифференциальная) и тогда мы получаем П-регулятор, ПИ-регулятор.
Три составляющих рабочего процесса ПИД-регулятора
Формирование выходного сигнала осуществляет пропорциональная составляющая. Данный сигнал удерживает входную величину, подлежащую регулировке, на нужном уровне и не дает ей отклоняться. С повышением этого отклонения возрастает и уровень сигнала.
Если на входе регулируемая величина сравняется с заданным значением, то уровень выходного сигнала будет равен нулю. Однако на практике невозможно отрегулировать нужную величину с помощью лишь одной пропорциональной составляющей и стабилизировать ее на определенном уровне. Всегда существует вероятность статической ошибки, равной величине отклонения, поэтому стабилизация выходного сигнала останавливается на этом значении.
Данная проблема решается за счет использования второго, интегрирующего компонента. Его основным элементом является интеграл по времени, взятый от общей величины рассогласования. То есть, интегральная составляющая находится в пропорции с этим интегралом. Данный компонент способен ликвидировать статическую ошибку, так как регулятор постепенно накапливает учет статической погрешности.
Таким образом, при отсутствии внешних воздействий, через определенный период времени регулируемая величина будет приведена в стабильное состояние на отметке правильного значения. В этом случае величина пропорциональной составляющей будет нулевой, а интегрирующая полностью обеспечивает точность выходных данных. Однако и она может вызвать неточности, требующие исправления, в случае неправильного выбора коэффициента.
Эти отклонения устраняются за счет третьих – дифференциальных составляющих, пропорциональных с темпом изменяющегося отклонения величины. Она препятствует отклонениям, возможным в перспективе под влиянием задержек или внешних воздействий. Все три компонента дискретно связаны между собой.
Формула ПИД-регулятора
Как я и обещал, формул тут не будет… ну, почти не будет. И этот раздел – как раз и будет формулой. Обещаю – больше формул не будет! Так что потерпите!
Итак, формула ПИД-регулятора:
(навеяно Википедией)
Тут у нас следующие буковки (разъясним чуть ниже):
- u (t) — наша Функция;
- P — пропорциональная составляющая;
- I — интегральная составляющая;
- D — дифференциальная составляющая;
- e (t) – текущая ошибка;
- Kp — пропорциональный коэффициент;
- Ki — интегральный коэффициент;
- Kd — дифференциальный коэффициент;
Все, расслабились – больше эта формула нам в работе не понадобится, она для пояснения сути.
А суть тут такая.
У нас есть воздействие, наша Функция (u (t) ). Она состоит из трех составляющих – Пропорциональной, Интегральной и Дифференциальной (отсюда и ПИД-регулятор).
Формула в вышеприведенном виде хороша для изучения, но неудобна для расчетов (хотя бы потому, что в вычислительной технике надо переходить к численным методам). В программной реализации, если верить этой статье, переходят к дискретной реализации:
u(t) = P (t) + I (t) + D (t);
P (t) = Kp * e (t);
I (t) = I (t — 1) + Ki * e (t);
D (t) = Kd * {e (t) — e (t — 1)};
Вот это уже выглядит куда реальнее и понятнее! Мы вычисляем сумму трех составляющих. Каждая из них определяется своими коэффициентами. Если данный коэффициент нулевой, то составляющая в вычислении не участвует. С этой формулой мы и будем работать далее, ее я и реализую.
Впрочем, есть еще и другая, рекуррентная реализация:
u(t) = u(t — 1) + P (t) + I (t) + D (t);
P (t) = Kp * {e (t) — e (t — 1)};
I (t) = I * e (t);
D (t) = Kd * {e (t) — 2 * e (t — 1) + e (t — 2)};
Какая из них лучше/правильней? Математика, в общем-то, одинаковая. Коэффициенты тоже
Говорят, что есть разные подводные булыжники при реализации.
Обратите внимание! Коэффициенты тут – обязательно дробные числа! В языке программирования Си – как минимум float, а лучше бы и double.
Вся магия ПИД-регуляторов – именно в этих коэффициентах. Как их подбирать – посмотрим в конце
А сейчас переведем дух от математики и поедем к изучению поведения этой формулы.
Все расчеты и моделирование я проводил на модели в Excel. Он – файл – приложен внизу, с ним можно поиграться самостоятельно. Модель – сугубо для ознакомления с идеей! Т. е. не надо ее стараться привести к какому-то реальному процессу, искать в ней научный смысл и т. п. Там все цифры слегка «отфонарные». Но зато и файл простенький и несложный. И моделируется быстро. И дает возможность понять суть ПИД-регулятора. Пару слов по файлу я дам в конце.
Не все проблемы из-за плохих настроек PID
Перед настройкой PID, вы должны изучить и другие данные:
Вибрация
Не все колебания вызваны высоким значением P. Перед настройкой PID вам необходимо максимально устранить источники вибрации на вашем дроне. Например, балансировка двигателей и пропеллеров, жесткость рамы и т. д.
Центр тяжести (CG)
Центр тяжести должен быть ровно посередине, между всеми 4-мя двигателями. Плохая центровка приведет к тому, что одни двигатели будут работать больше, чем другие, отсюда перегрев моторов и плохая стабильность полета. Например, аккумулятор находится в задней части, вместо расположение по-середине и поэтому задние моторы будут работать на 100%, а передние на 80%. Вся масса на квадрокоптере должна быть отцентрована и расположена равномерно. По этой причине Х-образные рамы самые популярные.
Настраивание ПИД-регулятора
Для моторной управляемости системы настраивание ПИД-регулятора бывает сложным процессом. Расскажем, какие шаги для настройки могут сделать проще эту процедуру.
- Определите значение дифференциальной и интегральной равной нулю. Определите наибольшую скорость и контролируйте системную реакцию.
- Повышайте составляющую прямопропорционально и выполните первый пункт. Продолжайте действия до момента начала процесса с автоматическими колебаниями возле точки определения скорости.
- Снижайте пропорциональную величину, пока система не стабилизируется. Волны колебаний начнут затухать.
- Определите пропорциональную величину около 15% меньше этого постоянного пункта.
- Определяйте наибольшую скорость прерывисто, повышайте суммирующую составляющую до начала уменьшения колебаний скорости перед стабильным состоянием системы. Снижайте суммирующую составляющую до достижения системой определенной скорости без ошибки и колебаний.
- Во многих системах настраивание составляющей дифференциального вида не нужно. Если нужно быстродействие системы больше, то можно достигнуть этого путем настройки составляющей дифференциального вида. Устанавливайте скорость по интервалам, повышайте составляющую дифференциального вида, пока не стабилизируется система с наименьшим временем действия (повышайте медленно, избегая состояния нестабильности). Система станет оптимальной при одном перерегулировании.
- Контролируйте стабильность системы, устанавливая значения скорости с интервалами и периодами для гарантированной стабильности системы при плохом исполнении задания.
Метод Циглера-Никольса.
- Для начала обнуляем все коэффициенты регулятора (пропорциональный, интегральный и дифференциальный)
- Постепенно начинаем увеличивать пропорциональный коэффициент и следим за реакцией системы. При определенном значении возникнут незатухающие колебания регулируемой величины.
- Фиксируем коэффициент K, при котором это произошло. Кроме того, замеряем период колебаний системы T.
Собственно, на этом практическая часть метода заканчивается. Из полученного коэффициента K рассчитываем пропорциональный коэффициент ПИД-регулятора:
K_п = 0.6\cdot K
А из него получаем и остальные:
K_и = (2\cdot K_п)\medspace/\medspace T
K_д = (K_п\cdot T)\medspace/\medspace 8
Метод довольно прост, но применить его можно далеко не всегда. Мне еще ни разу не приходилось на практике настраивать регулятор таким образом. Но тем не менее, этот метод является основным и, по большому счету, единственным широко известным. Просто подходит не всем и не всегда.
Что же делать, если метод Циглера-Никольса не сработал? Тут придет на помощь “аналитический” метод настройки
Опять же обнуляем все коэффициенты и начинаем увеличивать пропорциональный. Но теперь не ждем появления колебаний, а просто фиксируем поведение системы для каждого значения коэффициента (отличным вариантом будет построение графика величины, которую необходимо стабилизировать, для каждого значения коэффициента). Если видим, что, например, система очень медленно выходит на нужное значение, увеличиваем пропорциональный коэффициент. Система начинает сильно колебаться относительно нужной величины? Значит, коэффициент слишком велик, уменьшаем и переходим к настройке других составляющих.
Понимая, как работает ПИД-регулятор в целом, и представляя, как должна работать настраиваемая система, можно довольно-таки быстро и точно настроить коэффициенты регулятора. Особенно, если есть возможность построить графические зависимости и визуально следить за поведением системы.
Вот некоторые правила, которые могут помочь при настройке ПИД-регулятора:
- Увеличение пропорционального коэффициента приводит к увеличению быстродействия, но снижению устойчивости системы.
- Увеличение дифференциальной составляющей также приводит к значительному увеличению быстродействия.
- Дифференциальная составляющая призвана устранить затухающие колебания, возникающие при использовании только пропорциональной составляющей.
- Интегральная составляющая должна устранять остаточное рассогласование системы при настроенных пропорциональной и дифференциальной составляющих.
Кстати, стоит добавить, что не всегда необходимо использовать все три составляющие ПИД-регулятора, порой хватает пропорциональной и дифференциальной, например. В общем и целом, все сводится к тому, что для каждой системы необходим свой собственный подход при настройке и использовании ПИД-регулятора.
На этом на сегодня все, возможно, как-нибудь рассмотрим практическую реализацию вышеописанного
Назначение ПИД регулятора
ПИД-регулятор предназначен для поддержания определенного значения на требуемом уровне: температуры, давления, уровня в резервуаре, расхода в трубопроводе, концентрации чего-либо и так далее, путем изменения управляющего воздействия на исполнительные механизмы, такие как автоматический клапан управление с помощью пропорционального интеграла, дифференцирующего значения для его регулирования.
Целью использования является получение точного управляющего сигнала, который может управлять крупными производствами и даже реакторами электростанций.
Пример схемы регулирования температуры
Часто ПИД-регуляторы используются при регулировании температуры, давайте рассмотрим этот автоматический процесс на простом примере нагрева воды в резервуаре.
В емкость наливается жидкость, которую необходимо нагреть до нужной температуры и поддерживать на определенном уровне. Внутри емкости установлен датчик измерения температуры – термопара или термометр сопротивления и подключается непосредственно к ПИД-регулятору.
Чтобы нагреть жидкость, мы подадим пар, как показано на рисунке ниже, с автоматическим регулирующим клапаном. Сам клапан получает сигнал от регулятора. Оператор вводит значение уставки температуры в ПИД-регулятор, которое должно поддерживаться в резервуаре.
При неправильной настройке коэффициентов регулятора будут скачки температуры воды, при этом клапан будет полностью открыт, а затем полностью закрыт. В этом случае необходимо рассчитать коэффициенты ПИД-регулятора и ввести их заново. Если все было сделано правильно, через короткий промежуток времени система выровняет процесс, и температура в резервуаре будет поддерживаться на заданном уровне, а степень открытия регулирующего клапана будет в центральном положении.