Thread Content
Важность PID не требует дополнительных пояснений — она находит широкое применение в области автоматического управления. Джейсон демонстрирует принцип работы классического алгоритма PID, показывая, как Сяомин наливает воду в ведро; таким образом он предоставляет начинающим ещё один способ понимания принципов работы PID. Джейсон хочет с помощью наглядных примеров объяснить следующие пять концепций: 1. Краткое описание того, что такое PID, зачем он нужен и какую функцию выполняет. 2. Понимание роли компонента P (пропорциональный элемент): основной пропорциональный элемент. Недостаток: возникновение постоянной ошибки. Вопросы: Что такое ошибка устойчивого состояния? Почему возникает ошибка устойчивого состояния? 3. Понимание функции I (этап интегрирования): устранение постоянных ошибок. Недостатки: увеличение перегрузки. Вопрос: почему интегрирование способно устранять ошибку установившегося состояния? 4. Понимание функции D (дифференциального звена): ускоряет скорость реакции инерции, снижает тенденцию к перегрузке. Вопрос: почему это снижает перегрузку? 5. Понимание функции каждого коэффициента пропорциональности: http://yunrun.com.cn/upload/201908/20/201908200109200498.png Теперь перейдем к основной теме. 1. Что такое PID и зачем он нужен? Ниже приведена общая схема управления по принципу PID. Описание процесса: задается целевое значение выхода, система обратной связи передает значение выхода; если оно не совпадает с целевым значением, возникает ошибка. PID корректирует значение входных данных на основе этой ошибки, пока значение выхода не достигнет заданного уровня. http://yunrun.com.cn/upload/201908/20/201908200211063978.png Вопрос: Тогда зачем нам нужен PID? Например, я контролирую температуру, но не могу отслеживать её значение. Нужно ли останавливаться, как только достигнуто это значение? Сначала необходимо определить нашу цель, ведь вся наша задача заключается в том, чтобы добиться желаемого результата. То есть, если мы установили определенное значение температуры, то каким должно быть изменение температуры? Например, если установить целевую температуру в 30°C, то цель заключается в достижении результата, показанного на рисунке 1: необходимо, чтобы температура быстро и без колебаний достигла значения 30°C. http://yunrun.com.cn/upload/201908/20/201908200221422995.png Рисунок 1. Цель ответа системы управления PID. Теперь, наверное, все понимают: если использовать метод остановки при достижении определенной температуры, то, конечно, это может сработать в случае низких требований. Однако такой подход, безусловно, не позволит достичь параметров, указанных на рисунке 1. Ведь даже после достижения заданной температуры остаточное тепло продолжает повышать её, к тому же сама температура теряется за счет рассеивания через воздух. Вывод: причина, по которой нам нужен PID, заключается в том, что обычные методы управления не позволяют быстро и стабильно довести выходные показатели до заданного значения. Если у вас всё ещё есть сомнения, мы рассмотрим это на простом примере. 2. Чтобы понять принцип работы PID, рассмотрим пример с тем, как Сяомин наливает воду в ведро: yunrun.com.cn/tech/2683.html. Прежде чем начать, нам нужно взглянуть на формулу: на первый взгляд она кажется довольно сложной. На самом деле, чтобы это понять, достаточно знать основные определения дифференцирования и интегрирования. К тому же в конечном итоге все наши усилия направлены на то, чтобы понять эту формулу; в противном случае даже самые изящные аналогии не помогут вам по-настоящему её понять и использовать. Здесь мы дискретизируем её (если этот шаг покажется слишком быстрым, объяснение к нему будет дано позже): в формуле Kp — это коэффициент пропорциональности, Ki = (Kp×T)/Ti — коэффициент интегрирования, а Kd = (Kp×Td)/T — коэффициент дифференцирования. Далее Джейсон на конкретном примере покажет, как работает эта формула. ①У Сяомина есть задание: у него есть ведро, уровень воды в котором должен постоянно составлять 1 метр. В настоящее время в ведре имеется 0,2 метра воды. Поэтому Сяомин использует метод P (пропорциональности): он каждый раз измеряет отклонение уровня воды от значения 1 метра и добавляет такое количество воды, которое пропорционально этому отклонению. Например, если Kp = 0,5, то при первом добавлении воды ошибка составляет 1 – 0,2 = 0,8 м. Следовательно, количество воды, которое необходимо добавить, равно Kp × 0,8 = 0,4 м ; При втором добавлении воды погрешность составляет 1–0,4 = 0,6 м. Следовательно, количество добавляемой воды равно Kp×0,6 = 0,3 м ; ...... http://yunrun.com.cn/upload/201908/20/201908200252454737.png http://yunrun.com.cn/upload/201908/20/201908200252553253.png Мы считаем, что это идеально — таким образом проблема со спирали решается без проблем. Но подождите, прежде чем делать вывод, давайте посмотрим на новое задание Сяомина. ② Новое задание Сяомина: у него есть ведро, но в дне ведра есть дыра; при этом необходимо сохранять высоту воды на уровне 1 м. В настоящее время в ведре находится 0,2 м воды, но каждый раз, когда добавляется вода, 0,1 м воды вытекает наружу. Этот пример близок к примерам из нашей практической инженерии, таким как сопротивление трения двигателя и его потери. Давайте всё же решим проблему Сяо Миня. Первый вариант — это использование метода пропорционального управления U=Kp×e; значение Kp остаётся равным 0,5. Следовательно, U=0,5×e. L (конечный уровень воды) = текущее значение U плюс уровень воды от предыдущего раза. Первая добавка воды: погрешность составляет 1–0,2 = 0,8 м, следовательно, объем добавляемой воды равен Kp×0,8 = 0,4 м. Конечный уровень воды будет равен 0,4 + 0,2 – 0,1 = 0,5 м. Второе доливание воды: ошибка составляет 1–0,5 = 0,5 м. Следовательно, объем воды, который необходимо добавить, равен Kp×0,5 = 0,25 м. Итоговый уровень воды будет равен 0,5 + 0,25 – 0,1 = 0,65 м... Однако мы обнаружили проблему: уровень воды в итоге стабилизировался на уровне 0,8 м. Это тоже легко объяснимо – когда ошибка составляет 0,2 м, объем воды, который необходимо добавить, также равен 0,1 м; таким образом, количество добавляемой воды точно соответствует количеству воды, которая утекает. Здесь вводится понятие постоянной ошибки: постоянная ошибка — это разница между значением в системе при достижении устойчивого состояния и желаемым значением. Итак, если увеличить Kp, мы обнаруживаем, что ошибка снижается ; Тогда давайте продолжим увеличивать, и мы обнаружим, что система начинает колебаться. Здесь используется линейный график в Excel; можно настраивать параметры, чтобы наблюдать за изменениями. Вывод: использование пропорционального управления приводит к появлению постоянной погрешности, которую невозможно устранить. Увеличение значения пропорциональной константы может снизить эту погрешность, однако при слишком больших значениях возникают колебания в системе, что приводит к её нестабильности. Для устранения постоянной погрешности: вариант два — добавить к пропорциональному управлению элемент интеграции, используя PI-управление (пропорционально-интегральное управление). При интегральном управлении все прошлые погрешности суммируются и умножаются на константу интеграции. Что означает это уравнение? Почему оно позволяет устранить ошибку устойчивого состояния? Давайте сначала положим Kp=0,5, Ki=0,3 (эти значения я выбрал произвольно). При первом добавлении воды ошибка составила 0,8; часть, связанная с пропорциональным коэффициентом, равна Kp×0,8=0,4 м, а часть, связанная с интегральным коэффициентом, — Ki×0,8=0,24 м. Следовательно, количество добавленной воды составляет 0,4+0,24=0,64 м. Конечный уровень воды будет равен 0,2+0,64–0,1=0,74 м. При втором добавлении воды ошибка составила 0,26; часть, связанная с пропорциональным коэффициентом, равна Kp×0,26=0,13 м, а часть, связанная с интегральным коэффициентом, — Ki×0,26=0,318 м. Следовательно, количество добавленной воды составляет 0,13+0,318=0,448 м. Конечный уровень воды: 0,74 + 0,448 – 0,1 = 1,088 м. http://yunrun.com.cn/upload/201908/20/201908201410588056.png Мы видим, что, несмотря на сложности в процессе, в конечном итоге уровень воды может стабилизироваться на заданном значении. Что, если увеличить Ki? Здесь используется линейный график в Excel; можно настраивать параметры, чтобы наблюдать за изменениями. Вывод: ① Пока существует отклонение, интеграл продолжает накапливаться до тех пор, пока ошибка не станет равной 0. После этого интегральный член больше не накапливается и превращается в константу, которая может компенсировать постоянную ошибку. Как видно из таблицы 2, после стабилизации системы значение интегрального члена составляет примерно 0,1. ②Введение интеграла позволяет устранить ошибку установившегося состояния, но это приводит к увеличению перебора; кроме того, с увеличением значения Ki увеличивается и величина перебора. Чтобы устранить перерегулирование, мы вводим дифференциальное действие. Теперь формула выглядит так: сначала положим Kp=0,5, Ki=0,5, Kd=0,3. При первом добавлении воды ошибка составляет 0,8 м; часть, связанная с пропорциональным коэффициентом, равна Kp×0,8=0,4 м; часть, связанная с интегральным коэффициентом, равна Ki×0,24 м; часть, связанная с дифференциальным коэффициентом, равна 0 (поскольку разница уровней воды до добавления воды уже составляла 0,8 м). Общее количество добавленной воды равно 0,4+0,4=0,8 м; итоговый уровень воды составляет 0,2+0,8-0,1=0,9 м. При втором добавлении воды ошибка снижается до 0,1 м; часть, связанная с пропорциональным коэффициентом, равна Kp×0,1=0,5 м; часть, связанная с интегральным коэффициентом, равна Ki×0,45 м; часть, связанная с дифференциальным коэффициентом, равна Kd×(-0,21) м. Общее количество добавленной воды равно 0,5+0,45-0,21=0,29 м; итоговый уровень воды составляет 0,9+0,29-0,1=1,09 м. http://yunrun.com.cn/upload/201908/20/201908201501401752.png Если сравнивать этот график с предыдущим, где Kp=0,5, Ki=0,5, то можно заметить, что колебания на этом графике уменьшились. Это происходит благодаря действию дифференциального коэффициента. Как видно из таблицы 3, при второй ошибке в 0,1 м, а предыдущая ошибка составляла 0,8 м, значение дифференциального коэффициента является отрицательным, что способствует снижению быстрых изменений уровня воды. Вывод: дифференцирование способно снизить тенденцию к перестроению. Но эта волна все равно колеблется. Да, не забывайте: это значение я установил произвольно. Мы не можем рассчитывать на то, что простое установление какого-то значения позволит системе PID работать идеально. Если вы сами попробуете симулировать это в Excel, вы обнаружите, что при более высоких значениях Ki и Kd система будет сильно колебаться. Поэтому нам необходимо настроить Kp, Ki, Kd, то есть попробовать найти такие значения, чтобы выходной сигнал соответствовал требованиям, указанным на рисунке 1. Конечно, в этом примере можно воспользоваться PI, но мы рассматриваем это здесь для того, чтобы понять принцип его действия. Умение профессионально настраивать параметры PID и переводить автоматические контрольные системы в автоматический режим свидетельствует о уровне навыков инженеров в области автоматизации. Однако многие люди на самом деле не владеют навыками управления с помощью метода PID и настройки его параметров. На странице продукта «Регуляторы PID» на сайте Changhui Instruments бесплатно предоставляется книга инженера Бай Чжигана «Анализ автоматических регулирующих систем и настройка параметров PID». В книге нет сложных теоретических формул — только практически полезные советы. Понимая суть изложенного в книге, специалисты с средним образованием также смогут настроить параметры PID и полностью овладеть принципами его использования! Это будет полезно для вас, к тому же это бесплатно. Срочно заходите на страницу продуктов на сайте Changhui Instruments и бесплатно скачайте эту книгу! http://yunrun.com.cn/upload/201908/19/201908192101476884.png