Что такое пид-регулятор

Настраиваем контроллер

Настройка параметров регулятора осуществляется с помощью инструмента PID Tuner, который доступен непосредственно в окне параметров блока PID Controller.

Приложение запускается нажатием на кнопку Tune…, расположенную на панели Automated tuning. Стоит отметить, что до выполнения этапа настройки параметров контроллера необходимо выбрать его вид (П, ПИ, ПД и др.), а также его тип (аналоговый или дискретный).

Поскольку одним из требований является ограничение его выходной координаты (напряжения на обмотке двигателя), то следует задать допустимый диапазон напряжений. Для этого:

  1. Переходим во вкладку Output Saturation.
  2. Нажимаем на флаговую кнопку Limit output, в результате чего активируются поля для задания верхней (Upper limit) и нижней (Lower limit) границы диапазона выходной величины.
  3. Устанавливаем границы диапазона.

Корректная работа блока регулятора в составе системы предполагает использования методов, направленных на борьбу с интегральным насыщением. В блоке реализованы два метода: back-calculation и clamping. Подробная информация о данных методах располагается здесь. Выпадающее меню выбора метода расположено на панели Anti-windup.

В рассматриваемом случае запишем значения 24 и -24 в поля Upper limit и Lower limit соответственно, а также используем метод clamping для исключения интегрального насыщения.

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

Далее, приняв все изменения нажатием кнопки Apply, возвращаемся во вкладку Main и нажимаем кнопку Tune…, в результате чего откроется новое окно приложения PIDTuner.

В графической области окна отображаются два переходных процесса: при текущих параметрах регулятора, т.е. для ненастроенного регулятора, и при значениях, подобранных автоматически. Новые значения параметров можно посмотреть, нажав на кнопку Show Parameters, расположенную на панели инструментов. При нажатии на кнопку появятся две таблицы: подобранные параметры регулятора (Controller Parameters) и произведенные оценки характеристик переходного процесса при подобранных параметрах (Performance and Robustness).

Как видно из значений второй таблицы, автоматически рассчитанные коэффициенты регулятора удовлетворяют всем требованиям.

Настройка регулятора завершается нажатием на кнопку с зеленым треугольником, расположенной справа от кнопки Show Parameters, после чего новые значения параметров автоматически изменятся в соответствующих полях в окне настройки параметров блока PID Controller.

Результаты моделирования системы с настроенным регулятором для нескольких входных сигналов показаны ниже. При больших уровнях входных сигналов (голубая линия) система будет работать в режиме с насыщением по напряжению.

Отметим, что инструмент PID Tuner подбирает коэффициенты регулятора по линеаризованной модели, поэтому при переходе к нелинейной модели требуется уточнять его параметры. В этом случае можно воспользоваться приложением Response Optimizer.

Литература

  1. Handbook of PI and PID Controller Tuning Rules. Aidan O’Dwyer
  2. PID Control System Design and Automatic Tuning using MATLAB, Simulink. Wang L.
  3. ПИД-управление в нестрогом изложении. Карпов В.Э.
  4. ПИД-регуляторы. Вопросы реализации. Части 1, 2. Денисенко В.

Как добавлять PIDы в Torque

Теперь надо разобраться как редактировать, просматривать и добавлять дополнительные PIDы в программу Torque. Возможно вам еще понадобятся строки инициализации ELM327.

Нужно найти и скачать на смартфон набор ПИДов в формате «csv», подходящий для вашего автомобиля. Некоторые из них можно найти в данной статье выше по тексту.
Скачанный набор PIDов помещаем в папку «.torque/extendedpids». Папка «.torque» находится в корне карты памяти или памяти телефона

Обращаем внимание, что эта папка является скрытой и чтобы получить к ней доступ необходимо включить отображение скрытых папок. На скриншотах все действия с файлами производятся файловом менеджере «ES проводник», у вас может быть установлен другой.

Написать «csv» файл проще, чем прописывать дополнительные ПИДы в ручную в программе

Можно воспользоваться блокнотом или любым текстовым редактором, Microsoft Excel вносит ошибки при сохранении файла, лучше пользоваться редактором notepad++.

В файле «csv» первой строчкой идет шапка, вторая и последующие строки — это создаваемые ПИДы, структура записи которых аналогична шапке.

Кто использовал файл в Linux

Узнать процесс, который сейчас занимает файл, достаточно просто. Но как узнать, какой процесс обращается к файлу не надолго, например, выполняет его как программу или читает оттуда данные? Эта задача уже труднее, но вполне решаема с помощью подсистемы ядра auditd. В CentOS набор программ для работы с этой подсистемой поставляется по умолчанию, в Ubuntu же его придётся установить командой:

Теперь создаём правило для мониторинга. Например, отследим, кто запускает утилиту who:

Здесь -w — адрес файла, который мы будем отслеживать, -p — действие, которое нужно отслеживать, -k — произвольное имя для правила. В качестве действия могут использоваться такие варианты:

  • x — выполнение;
  • w — запись;
  • r — чтение;
  • a — изменение атрибутов.

Теперь выполним один раз who и посмотрим, что происходит в логе с помощью команды ausearch:

Здесь в секции SYSCALL есть PID процесса, под которым была запущена программа, а также PPID — программа, которая запустила нашу who. Копируем этот PID и смотрим информацию о нём с помощью ps:

Становиться понятно, что это bash.

ТРМ210: Функциональная схема прибора

Краткий экскурс в теорию закончен, вернёмся к практике и рассмотрим прибор ТРМ210, реализующий данный алгоритм.

Вот его функциональная схема:

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

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

Управляющее воздействие регулятора может быть импульсным или аналоговым. В первом случае управляющее воздействие регулятора заключается в изменении ширины генерируемых на выходе импульсов. Во втором случае регулятор выдаёт сигнал унифицированного напряжения в диапазоне 0…10 В или тока в диапазоне 4…20 мА. С помощью этих сигналов можно управлять практически любым устройством.

В ТРМ210 предусмотрен блок сигнализации, который сообщает о выходе физической величины за заданные пределы, замыкая дискретный выход, который, например, может «зажигать» лампу «Авария».

Также в приборе имеется блок регистратора, который может передавать измеренное значение физической величины любому другому прибору или устройству с помощью токового сигнала 4…20 мА.

В дополнение ко всему выше перечисленному регулятор имеет «на борту» интерфейс RS-485, который позволяет читать с прибора значения измеряемой величины, выходной мощности регулятора и любых конфигурируемых параметров. Это может пригодиться, если нужно передавать информацию о работе прибора в диспетчерский пункт.

Пример применения ПИД-регулятора в частотно-регулируемом приводе насоса

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

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

Преобразователь изменяет производительность насоса путем увеличения или снижения частоты питающего напряжения электродвигателя до тех пор, пока давление в системе не достигнет заданного значения. Таким образом, давление в системе не зависит от расхода.

Приведенная схема сильно упрощена. Частотные преобразователи с ПИД-регулятором могут управлять производительностью по нескольким параметрам. Например, насосы в отопительных системах могут регулироваться по температуре теплоносителя и тепловому режиму на улице и в помещении и давлению.

Преобразователи частоты с функциями ПИД-регулятора применяют также в сложных системах регулирования тягодутьевых систем и других АСУТП.

Настройки ПИД-регулятора

Наладка ПИД-регулятора сводится к определению коэффициентов Kp, Ki, Kd. Компоненты определяются из формулы:

По ним определяются передаточные функции системы автоматического регулирования и вычисляются ее параметры:

  • Точность.
  • Скорость регулирования.
  • Форма графиков переходных процессов.
  • Инерционность.
  • Другие величины и функции.

Математическая модель САР не может дать полного представления о работе системы. Расчеты выполняются для «идеального регулятора». Нелинейность контролируемых параметров, внешние возмущения, помехи на объекте управления не позволяют применять данные расчетов для построения системы автоматического регулирования на практике. Результаты математических расчетов используют как вспомогательные данные.

При разработке ПИД-регуляторов и САР используют оборудование, имитирующее изменение контролируемых характеристик, измерительные приборы и ПК. Устройства позволяют определить и анализировать реакцию системы на воздействия и более точно подобрать коэффициенты.

На практике применяется опытный подбор коэффициентов. ПИД-регуляторы устанавливают на объекте, вводят коэффициенты, полученные при расчете или стендовых испытаниях, настраивают параметры на месте.

Как настроить PID по шагам

Убедитесь, что двигатели сбалансированы и у квадрокоптера нет вибрации настолько, насколько есть возможность ее снизить. Попытка настроить PID без «чистого» гироскопа (балансировка и снижение вибрации делается для того, чтобы гироскоп работал без помех) — это все равно, что строить дом без хорошего фундамента. Это видео расскажет вам о простом способе проверки вибрации. Отрегулируйте настройки низкочастотного фильтра (lowpass filter) по мере необходимости, чтобы достигнуть «чистого» сигнала гироскопа

Важно, чтобы этот шаг выполнялся в режиме Акро, даже если вы всегда летаете в режиме стабилизации/горизонта. Режимы Angle\Horizont имеют свои значения и мешают настройке PID

Пример параметров PID ниже соответствует Rewrite PID (PID controller #1). При выполнении этой первоначальной настройки установите значение TPA равным 0. При необходимости TPA может быть добавлен позже. Начинать настройки нужного с маленьких изменений настроек по умолчанию. и начинать нужно с коэффициента Р. Значение Р на Pitch и Roll равное 4.0 будет хорошей отправной точкой.Также, следует снизить I и D у Pitch и Roll для настройки Р с минимальными помехами. Поэтому рекомендуется установить для I — 20, а для D — 5. Для Yaw целесообразно взять значение по умолчанию и разделить на 2. и немного уменьшить значение I, чтобы исключить эту ось в качестве источника колебаний. Yaw настраивается последним. Во время тестовых полетов, увеличивайте параметр Р по оси Roll до тех пор пока не увидите колебания при приближении к полному газу, а также не услышите видимые и слышимые колебания. Затем установите значение параметра Р равным примерно 70% от значения вызвавшего колебания. Теперь думаю понятно, почему без опыта полетов на конкретном квадрокоптере у вас не получится настроить его PID’ы? Повторите шаг 4 для оси Pitch. Проверьте, держит ли квадрокоптер нужный угол наклона Roll и не дрейфует ли он при крене (roll), а затем несколько раз дайте резкий газ вверх и резко отпустите его в 0
Вот тут обратите внимание — угол крена который вы сделали до игры газом не должен существенно меняться. Если угол отклонения кажется вам сильно отклонившимся (дрон начал дрейфовать), увеличьте параметр I
Если все ок и дрейфа нет, не меняйте I. Вы можете поменять «ощущение» своего дрона, подняв или опустив параметр I после достижения хороших настроек PID, так как I не влияет на конечные значения P и D. Повторите шаг 6 для оси Pitch. Параметр D следует увеличивать на каждой оси ТОЛЬКО до такой степени, чтобы он помогал уменьшить отдачу после флипов и роллов (флип — переворот вбок, ролл — переворот «вверх ногами»), а также после колебаний после свободного падения, когда вы делаете газ в 0 и дрон падает, затем запускаете двигатели газом и они начинают как бы проваливаться в воздухе и в этот момент дрон начинает мотать из стороны в сторону. Когда такие проблемы пропадут благодаря увеличению параметра D, снизьте этот параметр до уровня 80-90% от этого уровня. Часто настройка Yaw не нужна, либо она будет минимальной, так как все равно может вызывать колебания, если ничего не делать. Начните с Yaw P и проверьте дрон на вибрации как в первом шаге, а также убедитесь, что нет вибраций, если вы дадите резкий и длинный газ или быстрый пролет вперед Начните увеличивать Yaw Р с шагом 5 до тех пор, пока не увидите вибрации в видео с камеры при полете вперед или полном газе. После этого немного уменьшите значение. Теперь нужно посмотреть данные в blackbox. Возможно, Yaw P будет немного колебаться, поэтому попробуйте увеличить Yaw gyro, чтобы посмотреть, действительно ли колебания доходят до гироскопа. Если Yaw gyro выглядит более менее ровным, то все в порядке.
Теперь нужно настроить соотношение между P и I, то есть, будет ли квадрокоптер при резких поворотах сопротивляться или наоборот проваливаться в эти повороты. Очень низкие значения I приводят к смещению оси через некоторое время. Низкие значения I по оси также позволяют свободно менять положение, но при этом сохранять это положение. Более высокие значения по оси I будут хорошо держать позицию дрона, но могут иметь тенденцию сопротивляться движению + добавляется небольшое движение по инерции. Очень высокие значения приводят к «роботизированным» движениям дрона и создают колебания. После завершения настройки в режиме Акро, можно переходить к настройкам других режимов, например, Horizon (горизонт).

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

Тип регулируемого параметра

Существуют универсальные регуляторы — им на вход можно подать любой тип сигнала. С их помощью можно делать системы регулирования любых технологических параметров. Однако часто тип регулируемого параметра жестко ограничен: регулятор давления, регулятор температуры, регулятор уровня, регулятор расхода и т.п. Это связано с тем, что для измерения различных типов сигналов могут использоваться различные алгоритмы обработки. Так регулятор температуры предполагает при получении сигналов от термопар компенсацию температуры холодных спаев и преобразование величины контролируемой термо ЭДС в значение температуры. В регуляторе расхода часто надо уточнить величину измеренного расхода по значению давления и температуры контролируемой среды. Поэтому, чтобы упростить программу, зашитую в регулятор, и удешевить изделие производители разделяют их по назначению.

Составляющие сигнала ПИД-регулятора

Управляющий сигнал, формируемый ПИД-регулятором, сумма трех составляющих:

  • Пропорциональной.
  • Интегральной.
  • Дифференциальной.

Пропорциональная составляющая формируется исходя из разницы заданной величины параметра и его фактического значения. Чем больше отклонение характеристики, тем выше уровень пропорционального сигнала. Устройства, управляющие системой, только по пропорциональному закону называются П-регуляторы.

Основной недостаток такого регулирования – статическая ошибка, которая указывает на величину остаточного отклонения параметра. Пропорциональные регуляторы имеют ограниченную точность.

Для ее устранения введена интегральная составляющая. Она пропорциональна интегралу по времени от отклонения величины контролируемой характеристики.

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

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

Для увеличения быстродействия в конструкцию регулятора введена дифференциальная составляющая. Она увеличивается и уменьшается пропорционально скорости изменения контролируемого параметра.

Таким образом, результирующий сигнал на выходе ПИД-регулятора можно определить из выражения:

где Kp, Ki, Kd – пропорциональный, интегральный, дифференциальный коэффициенты соответственно, e(t) – ошибка рассогласования.

Общие сведения

Пропорциональная составляющая

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

Однако при использовании только пропорционального регулятора значение регулируемой величины никогда не стабилизируется на заданном значении. Существует так называемая статическая ошибка, которая равна такому отклонению регулируемой величины, которое обеспечивает выходной сигнал, стабилизирующий выходную величину именно на этом значении. Например, в регуляторе температуры выходной сигнал (мощность нагревателя) постепенно уменьшается при приближении температуры к заданной, и система стабилизируется при мощности, равной тепловым потерям. Температура не может достичь заданного значения, так как в этом случае мощность нагревателя станет равна нулю, и он начнёт остывать.

Чем больше коэффициент пропорциональности между входным и выходным сигналом (коэффициент усиления), тем меньше статическая ошибка, однако при слишком большом коэффициенте усиления при наличии задержек (запаздывания) в системе могут начаться автоколебания, а при дальнейшем увеличении коэффициента система может потерять устойчивость.

Интегрирующая составляющая

Интегрирующая составляющая пропорциональна интегралу по времени от отклонения регулируемой величины. Её используют для устранения статической ошибки. Она позволяет регулятору со временем учесть статическую ошибку.

Если система не испытывает внешних возмущений, то через некоторое время регулируемая величина стабилизируется на заданном значении, сигнал пропорциональной составляющей будет равен нулю, а выходной сигнал будет полностью обеспечиваться интегрирующей составляющей. Тем не менее, интегрирующая составляющая также может приводить к автоколебаниям при неправильном выборе её коэффициента.

Дифференцирующая составляющая

Дифференцирующая составляющая пропорциональна темпу изменения отклонения регулируемой величины и предназначена для противодействия отклонениям от целевого значения, которые прогнозируются в будущем. Отклонения могут быть вызваны внешними возмущениями или запаздыванием воздействия регулятора на систему.

Теория и практика использования ПИД-устройств

ПИД-регулятор температуры способен поддерживать заданное значение какой-то величины на протяжении определенного промежутка времени. С этой целью используется изменение напряжения и других величин, которые можно рассчитать по специальным формулам. При этом учитывается величина уставки и заданного значения, а также разница или рассогласование.

1.

2.

В идеальном варианте напряжение u задается с помощью формулы 1. В ней хорошо просматриваются коэффициенты пропорциональности ПИД-регулятора, предусмотренные для каждого компонента. На практике используется другая формула 2 с коэффициентом усиления, подходящим к любому из трех составляющих.

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

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

Величина, образуемая с помощью программного алгоритма управления, имеет специфические особенности. Например, для нормальной регулировки температуры может потребоваться вместо одного сразу два прибора: один будет управлять нагревом, а другой – охлаждением. В первом случае осуществляется подача разогретого теплоносителя, а во втором – хладагента. Самым современным прибором считается цифровой ПИД-регулятор, воплотивший в своей конструкции все варианты практических регулировочных решений.

Настройка ПИД регулятора

Реле-регулятор напряжения: принцип действия

Регулятор тока

Регулятор мощности

Как подключить выключатель с регулятором яркости

Регулятор скорости вентилятора

Настраивание ПИД-регулятора

Для моторной управляемости системы настраивание ПИД-регулятора бывает сложным процессом. Расскажем, какие шаги для настройки могут сделать проще эту процедуру.

  1. Определите значение дифференциальной и интегральной равной нулю. Определите наибольшую скорость и контролируйте системную реакцию.
  2. Повышайте составляющую прямопропорционально и выполните первый пункт. Продолжайте действия до момента начала процесса с автоматическими колебаниями возле точки определения скорости.
  3. Снижайте пропорциональную величину, пока система не стабилизируется. Волны колебаний начнут затухать.
  4. Определите пропорциональную величину около 15% меньше этого постоянного пункта.
  5. Определяйте наибольшую скорость прерывисто, повышайте суммирующую составляющую до начала уменьшения колебаний скорости перед стабильным состоянием системы. Снижайте суммирующую составляющую до достижения системой определенной скорости без ошибки и колебаний.
  6. Во многих системах настраивание составляющей дифференциального вида не нужно. Если нужно быстродействие системы больше, то можно достигнуть этого путем настройки составляющей дифференциального вида. Устанавливайте скорость по интервалам, повышайте составляющую дифференциального вида, пока не стабилизируется система с наименьшим временем действия (повышайте медленно, избегая состояния нестабильности). Система станет оптимальной при одном перерегулировании.
  7. Контролируйте стабильность системы, устанавливая значения скорости с интервалами и периодами для гарантированной стабильности системы при плохом исполнении задания.

Метод Циглера-Никольса.

  • Для начала обнуляем все коэффициенты регулятора (пропорциональный, интегральный и дифференциальный)
  • Постепенно начинаем увеличивать пропорциональный коэффициент и следим за реакцией системы. При определенном значении возникнут незатухающие колебания регулируемой величины.
  • Фиксируем коэффициент  K, при котором это произошло. Кроме того, замеряем период колебаний системы T.

Собственно, на этом практическая часть метода заканчивается. Из полученного коэффициента K рассчитываем пропорциональный коэффициент ПИД-регулятора:

K_п = 0.6\cdot K

А из него получаем и остальные:

K_и = (2\cdot K_п)\medspace/\medspace T
K_д = (K_п\cdot T)\medspace/\medspace 8

Метод довольно прост, но применить его можно далеко не всегда. Если честно, мне еще ни разу не приходилось настраивать регулятор таким образом. Но тем не менее, этот метод является основным и, по большому счету, единственным широко известным. Просто подходит не всем и не всегда.

Что же делать, если метод Циглера-Никольса не сработал? Тут придет на помощь “аналитический” метод настройки

Опять же обнуляем все коэффициенты и начинаем увеличивать пропорциональный. Но теперь не ждем появления колебаний, а просто фиксируем поведение системы для каждого значения коэффициента (отличным вариантом будет построение графика величины, которую необходимо стабилизировать, для каждого значения коэффициента). Если видим, что, например, система очень медленно выходит на нужное значение, увеличиваем пропорциональный коэффициент. Система начинает сильно колебаться относительно нужной величины? Значит, коэффициент слишком велик, уменьшаем и переходим к настройке других составляющих.

Понимая, как работает ПИД-регулятор в целом, и представляя, как должна работать настраиваемая система, можно довольно-таки быстро и точно настроить коэффициенты регулятора. Особенно, если есть возможность построить графические зависимости и визуально следить за поведением системы.

Вот некоторые правила, которые могут помочь при настройке ПИД-регулятора:

  • Увеличение пропорционального коэффициента приводит к увеличению быстродействия, но снижение устойчивости системы.
  • Увеличение дифференциальной составляющей также приводит к значительному увеличению быстродействия.
  • Дифференциальная составляющая призвана устранить затухающие колебания, возникающие при использовании только пропорциональной составляющей.
  • Интегральная составляющая должна устранять остаточное рассогласование системы при настроенных пропорциональной и дифференциальной составляющих.

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

На этом на сегодня все, возможно, как-нибудь рассмотрим практическую реализацию ПИД-регулятора!

Оцените статью
Рейтинг автора
5
Материал подготовил
Андрей Измаилов
Наш эксперт
Написано статей
116
Добавить комментарий