Знакомство с замкнутой системой управления

09/10/2011 - 09:51

   Введение

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

   Замкнутая система управления

   Системы управления, использующие обратную связь, называются замкнутыми. В таких системах обратная связь используется для изменения управляющего сигнала с целью достижения управляемым объектом требуемого состояния.  
   Для сравнения, разомкнутая система управления (open-loop control) не имеет обратной связи или не использует ее.  

 
Рисунок 1. Система управления по замкнутому циклу
 
   Простейшая замкнутая система управления показана на рис. 1. Этот рисунок характеризует множество существующих систем управления, включая, например, систему управления лифтом, термостат и круиз-контроль.
 
   Замкнутая система управления обычно работает с фиксированной частотой. Частота изменений управляющего сигнала обычно меньше или равна частоте выборки состояния управляющего объекта. Во всяком случае, никак не больше. 
   После получения от датчика каждого нового значения данных, программное обеспечение управляющей системы реагирует на изменившееся состояние объекта, выполняя перерасчет и задавая требуемое значение управляющего сигнала. Объект откликается на эти изменения, производится следующая выборка и цикл повторяется. В конечном счете, управляемый объект должен достигнуть требуемого состояния и тогда программное обеспечение перестанет изменять управляющий сигнал.

   Релейное управление

   Зададимся вопросом, а как программное обеспечение должно менять управляющий сигнал? Один из вариантов состоит в установке управляющего сигнала на минимальное значение, когда мы хотим уменьшить интенсивность работы объекта и на максимальное значение, когда хотим увеличить. Такое управление называется релейным (on-off control) или двухпозиционным (bang-bang control). На таком принципе, например, построены многие  термостаты.
 
 
Рисунок 2. Пример релейного управления.
 
   Релейное управление легко реализовать, но оно подходит не для всех систем. При использовании релейного управления могут возникать такие явления как перерегулирование и пульсации. 
   Перерегулирование представляет собой отклонение параметра управляемого объекта от заданного значения в ту или иную сторону. А пульсации – это явление многократного перерегулирования. 
   Это может быть не страшно для термостата, но, например, в системах управления лифтами совершенно не допустимо. 

   Пропорциональное управление

   В качестве альтернативы релейному управлению существует пропорциональное управление. Системы пропорционального управления вычисляют разницу между текущим параметром объекта и заданным и пропорционально этой величине (текущей погрешности) изменяют управляющий сигнал.
 
где Р – постоянный коэффициента передачи пропорционального регулятора
 
   Например, в качестве управляющего сигнала использует ШИМ сигнал. Он может принять любое значение от 0% до 100% рабочего цикла. Если управляющий сигнал равен 20% рабочего цикла и текущая погрешность мала, нам может потребоваться изменить его лишь на 1% или 2% для достижения требуемого результата. 
 
   Если коэффициент передачи пропорционального регулятора подобран верно, то время, за которое параметр управляемого объекта достигнет нового заданного значения, окажется минимально возможным, с минимальным перерегулированием (или недорегулированием) и пульсацией.
 
   К сожалению, не во всех системах можно обойтись пропорциональным управлением. Одно, или несколько требований к скорости реагирования, перерегулированию и   пульсации, может быть невыполнимым при любом коэффициенте передачи пропорционального регулятора.

   Дифференциальное управление

  У вас могут возникнуть проблемы с пропорциональным управлением, если вы хотите достичь нового значения параметра управляемого объекта быстро, избежать перерегулирование и минимизировать пульсацию. Быстрая реакция предполагает большой коэффициент передачи, а минимизация перерегулирования и пульсации предполагает маленький. Достижение обоих требований в одно и то же время может быть возможным не во всех системах.
 
   К счастью, мы обычно можем получить информацию о скорости изменения какого-либо параметра объекта. Если он изменяется быстро, мы можем столкнуться с перерегулированием или недорегулированием. В этом случае мы можем уменьшить величину изменения, предложенного пропорциональным регулятором. 
 
   Скорость изменения сигнала представляет собой производную. Производная в текущий момент времени - это просто разность текущего и предыдущего значения сигнала. Помножив производную на коэффициент передачи, получим дифференциальную составляющую.
 
где D  - коэффициент передачи дифференциального регулятора. 
 
   Естественно, в этом случае нам нужно сохранять предыдущую выборку сигнала в памяти системы.
 
   На практике пропорционально-дифференциальные (ПД) контроллеры работают превосходно. У них более медленное время реагирования, но перерегулирование и пульсации меньше, чем в случае с одним пропорциональным регулятором.

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

   ПД-регулятор не всегда будет устанавливать требуемое значение параметра объекта. На самом деле, в зависимости от коэффициента передачи, такой регулятор будет устанавливать значение параметра, отличающееся от необходимого.
 
   Проблема возникает в том случае, когда каждая элементарная погрешность остается ниже пороговой величины и пропорциональная составляющая перестает влиять на управляемый объект. Например, погрешность равна 3, коэффициент передачи P = 1/8 и используется математика целых чисел. В этом случае от пропорциональной  составляющей не будет толку, пока состояние объекта не изменится.
   Для подведения объекта к заданному состоянию нужно кое-что еще. Этим кое-чем является интегральная составляющая. 
 
   Интеграл – это сумма выборок сигнала за отрезок времени. Применительно к нашему случаю – это сумма всех прошлых ошибок в выходных данных объекта:
 
 
   Несмотря на то, что коэффициент передачи интегрального регулятора, I, как правило, мал, непрерывно появляющаяся ошибка, в результате суммирования накопится и  интегральная составляющая повлияет на изменение в управляющем сигнале. На практике накопленная ошибка обычно ограничена максимальными и минимальными значениями.

   Заключение

   Итак, релейное и пропорциональное управление  – это два основных метода управления с обратной связью. Однако производные и/или интегральные составляющие иногда добавляются к пропорциональным регуляторам для улучшения их характеристик. Объединив все три составляющие вместе, мы получим пропорционально-интегрально-дифференциальный регулятор. Или просто ПИД-регулятор.
 
Barr, Michael. "Closed-Loop Control," Embedded Systems Programming, August 2002 
 
Вольный перевод ChipEnable.Ru

Comments   

# ANTI 2011-10-09 15:50
Ох уж это ТАУ....
# Mih 2011-10-10 15:20
Не гоните та ТАУ, вокруг него вертится мир :lol:
# ANTI 2011-10-10 18:05
Я не гоню!)
# Валентин 2011-12-15 07:37
АЦП, вокруг него все крутиться!
# Вячеслав 2012-01-29 11:23
2 года в универе втыкали это ТАУ, но нигде ни слова, ни один профессор, не мог объяснить как это применить на практике на современной элементной базе. А благодаря Вашей статье, понял как замкнуть систему и настроить регуляторы.
Спасибо, Pashgan.
# AnopT 2012-02-29 13:13
Quoting Вячеслав:
2 года в универе втыкали это ТАУ, но нигде ни слова, ни один профессор, не мог объяснить как это применить на практике на современной элементной базе. А благодаря Вашей статье, понял как замкнуть систему и настроить регуляторы.
Спасибо, Pashgan.


Ужас... вот потом приезжаешь на завод, АЭС и т.п., а там такие "инженегры" сидят... гнать таких профессоров с универов. или студентов не желающих знать будущую профессию :-)
# OneTech 2014-01-02 16:22
Поздно попал на эту замечательную статейку. :) Как раз на прошлой неделе закончил реализацию инкубатора на базе ПИ-регулятора.

У вас недостаточно прав для комментирования.