Алгоритм пид регулирования на си. Корректная реализация разностной схемы пид регулятора

Алгоритм пид регулирования на си. Корректная реализация разностной схемы пид регулятора

Лекция 30. Реализация ПИД-регулятора и цифровой фильтрации в контроллерах

Микропроцессорные контроллеры позволяют реализовать как дискретные, так и аналоговые регуляторы, а также нелинейные и самонастраивающиеся регуляторы. Главная проблема цифрового управления – найти соответствующую структуру регулятора и его параметры. Программная реализация алгоритмов управления по этим параметрам обычно является сравнительно простой задачей.

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

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

Линейные регуляторы с одним входом/выходом можно представить в обобщенном виде

где u – это выход регулятора (управляющая переменная),u с – заданное значение, ау – выходной сигнал процесса (управляемая переменная). Параметрп представляет собой порядок регулятора.

Обычный ПИД-регулятор может рассматриваться как частный случай обобщенного дискретного регулятора при п = 2.

Рассмотрим регулятор, состоящий из двух частей: контура обратной связи (feedback)G FB (s ), отрабатывающего ошибкуE , и контура упреждения (feedforward)G FF (s ), контролирующего изменения задающего воздействия и прибавляющего к управляющему сигналу поправочный член, с тем чтобы система реагировала более оперативно на изменения задания. Для этого регулятора управляющее воздействиеU (s ) представляет собой сумму двух сигналов

Это выражение можно переписать в виде

где U F 1 (s ) – упреждающий сигнал по опорному значению (задающему воздействию),aU F 2 (s ) – сигнал обратной связи.


Рис.30.1. Регулятор, содержащий контур упреждающего управления по опорному значению (заданию) и контур обратной связи по выходу процесс а

Регулятор имеет два входных сигнала U c (s ) иY (s ) и, следовательно, может быть описан двумя передаточными функциямиG F 1 (s ) иG R (s ).


Поскольку регулятор с ПФ (30.3) имеет за счет G F 1 (s ) больше настраиваемых коэффициентов, чем обычный регулятор, то замкнутая СУ имеет лучшие характеристики.

Положение полюсов системы с обратной связью можно изменить с помощью регулятора G R (s ), а упреждающий регуляторG F 1 (s ) добавляет системе новые нули. Потому СУ может быстро реагировать на изменения сигнала задания, еслиG F 1 (s ) выбрана правильно.


Рис.30.2. Структура линейного регулятора с упреждающим управлением и обратной связью

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

Если числитель и знаменатель ПФ G R (s ), иG F 1 (s ) в (23.3) выразить полиномами отs , то описание регулятора после преобразований можно представить в следующем виде

г



де

r i ,s i ,t i параметры полиномов ПФ,s оператор Лапласа.

Регулятор, соответствующий уравнению (30.4), можно представить в виде обобщенного регулятора (generalcontroller)

ПФ процесса можно выразить так


Рис.30.3. Структура линейного регулятора с упреждающим управлением и обратной связью в виде ПФ

Если R (s ),S (s ) иT (s ) имеют достаточно высокий порядок, т. е. достаточное количество "ручек настройки", ПФ замкнутой системы можно изменять в широких пределах. Порядок регуляторап должен быть таким же, как и у исходного процесса. Так, подбираяR (s ) иS (s ), можно произвольно менять знаменатель ПФ замкнутой системы. Теоретически это означает, что полюса замкнутой системы можно сдвинуть в любое место комплексной плоскости. (На практике максимальные амплитуда и скорость изменения управляющего сигнала ограничивают свободу перемещения полюсов.)

В результате, неустойчивую систему, имеющую полюс с положительной вещественной частью, можно стабилизировать с помощью СУ.

30.1. Реализация ПИД-регулятора

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

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

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

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

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

e (k ) = u c (k ) y (k ) .

При этом интервал выборки t s считается постоянным, а любые изменения сигнала, которые могли подойти в течение интервала выборки, не учитываются.

Существует два типа алгоритма ПИД-регулятора – позиционный и приращений

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

u (k ) = u 0 + u P (k ) + u I (k ) + u D (k ).

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

Даже при нулевой ошибке управления выходной сигнал отличен от нуля и определяется смещением u 0 .

Пропорциональная часть регулятора имеет вид

u P (k ) = K e (k ).

Интегральная часть аппроксимируется конечными разностями

u I (k ) = u I (k 1) + K (t s / T i ) ∙ e (k )= u I (k 1) + K a e (k ).

Величина второго слагаемого при малых t s и большихT i может стать очень маленькой, поэтому нужно обеспечить нужную точность его машинного представления.

Дифференциальная часть ПИД-регулятора аппроксимируется разностью назад

u D (k ) =b u D (k 1)K (T d / t s ) ∙ (1b )∙ [y (k )y (k 1)],


Величина T d / N = T f – это нормализованная (вN раз) постоянная времени фильтра в аппроксимации дифференциальной составляющей закона регулирования апериодическим звеном первого порядка. ЧислоN берется в пределах от 5 до 10. Величинаb находится в пределах от 0 до 1.

Алгоритм приращений. В нем вычисляется лишь изменение его выходного сигнала. Алгоритм приращений (incremental form ) ПИД-регулятора удобно применять, если ИМ представляет собой разновидность интегратора, например шаговый двигатель. Другой пример такого ИМ – клапан, открытие и закрытие которого управляется импульсами и который сохраняет свое положение при отсутствии входных сигналов.

В алгоритме приращений рассматриваются только изменения управляющего выходного сигнала от момента времени (k 1) до моментаk . Алгоритм регулятора записывается в виде

Δu I (k ) = u (k )u (k 1) =Δu P (k ) + Δu I (k ) + Δu D (k ).

Пропорциональная часть алгоритма приращений вычисляется из уравнения

Δ u P (k ) = u P (k )u P (k 1) =K [e (k )e (k 1)] = K Δ e (k ).

Интегральная часть – из уравнения

Δ u I (k ) = u I (k )u I (k 1) =K a e (k ).

Дифференциальная часть – из уравнения

Δ u D (k ) =b Δ u D (k 1)K (T d / t s )∙(1b )∙ y (k )Δ y (k 1),

Δ y (k ) =y (k )y (k 1).

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

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

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

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

С другой стороны, слишком высокая частота выборки ведет к повышенной загрузке ЭВМ и износу ИМ.

Таким образом, определение частоты выборки представляет собой компромисс между требованиями динамики процесса и доступной производительностью ЭВМ и технологических механизмов. Стандартные цифровые регуляторы, работающие с небольшим числом контуров управления (от 8 до 16), используют фиксированную частоту выборки порядка долей секунды.

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

Считают, что адекватная частота выборки связана с полосой пропускания или временем установления замкнутой СУ. Эмпирические правила рекомендуют, чтобы частота выборки была в б-10 раз выше, чем полоса пропускания, или чтобы время установления соответствовало, по крайней мере, пяти интервалам выборки.

В случае если допустимо дополнительное отставание по фазе на 5-15°, справедливо следующее правило

t s · ω с = 0,15 – 0,5 ,

где ω с – ширина полосы пропускания системы (по уровню 3 дБ),t s – период квантования, или интервал выборки. (Такой подход используется во многих промышленных цифровых одно- и многоконтурных ПИД-регуляторах.)

Ограничение управляющего сигнала . Для ограничения управляющего сигнала существуют две предпосылки:

1) амплитуда выходного сигнала не может превышать диапазон ЦАП на выходе компьютера;

2) рабочий диапазон ИМ тоже всегда ограничен. Клапан не открыть больше, чем на 100 %; на двигатель нельзя подать неограниченный ток и напряжение.

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

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

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

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

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

Так как интегральная часть становится равной нулю лишь некоторое время спустя после того, как значение ошибки изменило знак, интегральное насыщение может привести к большому перерегулированию (over-shoot). Интегральное насыщение является результатом нелинейностей в системе, связанных с ограничением выходного управляющего сигнала, и может никогда не наблюдаться в линейной системе.

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

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

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

Управляющий сигнал сначала вычисляется с помощью алгоритма ПИ-регулятора, а затем проверяется, превышает ли он установленные пределы:

u = u min , если u d < u min ;

u = u d , если u min u d < u max ;

u = u max , если u d u max ;

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

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

(*инициализация*) c1:=K*taus/Ti;

(*регулятор*)

Ipart:= Ipart + c1*e;

ud:=K*e+Ipart; (*вычисление сигнала управления*)

if(ud

else if (ud < umax) then u:= ud

Ipart:=u-K*e; (* "антинасыщающая" поправка интегральной части *)

Иллюстрация проблемы интегрального насыщения для привода позиционирования с ПИ-регулятором далее на рис. 30.4.

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

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

Возможны две ситуации: а) переход с ручного на автоматический режим или наоборот; б) изменение параметров регулятора.

Плавный переход в случае а) для аналогового регулятора достигается за счет приведения процесса вручную к состоянию, в котором измеренное значение выходной величины равно опорному.

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

Другой метод состоит в медленном доведении опорного значения до необходимой конечной величины.

Вначале опорное значение устанавливается равным текущему измерению, а затем постепенно вручную доводится до желаемого.

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

Ограничение скорости изменения управляющего сигнала . Во многих СУ необходимо ограничивать как амплитуду, так и скорость изменения управляющего сигнала. Для этого используют специальные схемы защиты, подключаемые после канала ручного ввода опорного значенияu c (t ) и передающие регулятору отфильтрованный сигналu L (t ), как это показано на рис. 30.5.

В результате процесс «видит» этот управляющий сигнал вместо введенного вручную. Такой способ обычно применяют при регулировании электроприводов. Ограничение скорости изменения сигнала можно получить с помощью простой цепи обратной связи.

Сигнал ручного управления u c (t ), выступающий в качестве опорного, сравнивается с допустимым управляющим сигналомu L (t ). Сначала их разность ограничивается пределамиue min иu е m ах .

Затем полученное значение интегрируется, причем интеграл аппроксимируется конечной суммой.

Алгоритм ограничения скорости изменения таков:

if (uе < uemin) then uelim:= uemin (*функция ограничения*) else if (ue < uemax) then uelim:= ue

else uelim:= uemax;

uL = uL_old + taus*uelim;

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

Для регулятора с защитой от насыщения интегральная часть можно вычислить заранее с помощью разностей вперед

u I (k + 1) = u I (k ) + c 1 · e (k ) + c 2 · [u (k ) – u d (k ) ] ,

где u – ограниченное значениеu d ;

T t – коэффициент, который называется постоянной времени слежения.

Дифференциальная часть выглядит как

c 3 = (1 b ) ·K ·T d /t s ;

x (k – 1) = b · u D (k – 1) + c 3 · y (k – 1).

Переменную x можно обновить сразу после момента времениk

x (k ) = b · x (k – 1) + c 3 · (1 b ) · y (k ).

Таким образом, u D (k + 1) удается вычислить из (24.2), как только получен результат измеренияy (k + 1).

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

Алгоритм ПИД-регулятора . Пример программы ПИД-регулятора на языкеPascal. Вычисление коэффициентовc 1 ,c 2 иc 3 нужно производить лишь в случае изменения параметров регулятораK , T i , T d иT f . Алгоритм регулятора выполняется в момент каждой выборки. Программа имеет защиту от насыщения интегральный составляющей.

(*Предварительное вычисление коэффициентов*)

c1:=K*taus/ Ti; (* уравнение 23.7 *)

с2:= taus/ Tt; (* уравнение 24.1 *)

beta:=Td/ (Td+taus*N); (* уравнение 24.1 *)

сЗ:= K*Td*(l-beta)/ taus; (* уравнение 24.2 *)

с4:= сЗ*(1 - beta); (* локальная константа*)

(* Алгоритм управления *)

uc:=ADinput(ch1); (* ввод опорного значения, аналоговый вход *)

у:= AD_input(ch2); (* ввод измерения, аналоговый вход *)

е:= uc- у; (* вычисление ошибки управления *)

ppart:= К*е; (* пропорциональная часть *)

dpart:= х - (сЗ*у); (* дифференциальная часть, *)

ud:=uO+ppart+ipart+dpart; (* выход регулятора до ограничения сигнала*)if(ud

Простой дискретный алгоритм ПИД регулятора

Поддерживается всеми микроконтроллерами AVR

ПИД функция использует 534 байта flash памяти и 877 циклов процессора (IAR - low size оптимизация)

1 Введение

Это руководство описывает простую реализацию дискретного пропорционально-интегрально-дифференциального (ПИД) контроллера.

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


В течение долгого времени в области управления использовались многие решения, но ПИД-регуляторы могут стать "промышленным стандартом" из-за своей простоты и хорошей производительности.

Для получения дополнительной информации о ПИД-регуляторах и их применении читатель должен обратиться к другим источникам, например, PID Controllers by K. J. Astrom & T. Hagglund (1995)

Рисунок 1-1. Типичные отклик ПИД-регулятора на ступенчатое изменение опорного сигнала

2. ПИД регулятор

На рисунке 2-1 показана схема системы с ПИД-регулятором. ПИД-регулятор сравнивает измеренное значение процесса Y с заданным опорным значением Y0. Затем разница, или ошибка, E, обрабатывается для расчета нового входного процесса U. Этот новый входной процесс будет пытаться приблизить значение измеряемого процесса к заданному значению.

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

Рисунок 2-1. Управляющая система с замкнутым контуром на основе ПИД-регулятора


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

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

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

Рисунок 2-2. Схема ПИД-регулятора


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

Пропорциональная составляющая (П) дает управляющий сигнал пропорционально вычисленной ошибке. Использование только одного пропорционального управления дает стационарную ошибку всегда, кроме случаев, когда управляющий сигнал равен нулю, а значение системного процесса равно требуемой величине. На рис. 2-3 стационарная ошибка в значении системного процесса появляется после изменения опорного сигнала (ref). Использование слишком большого П-члена даст неустойчивую систему.

Рисунок 2-3. Отклик П контроллера на ступенчатое изменение опорного сигнала


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

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

Рисунок 2-4. Отклик И- и ПИ-контроллера на ступенчатое изменение контролируемой величины


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

Дифференциальная составляющая (Д) представляет собой скорость изменения ошибки. Добавление этой составляющей улучшает отклик системы на внезапное изменение ее состояния. Дифференциальная составляющая Д обычно используется с П или ПИ алгоритмами, как ПД или ПИД контроллеры. Большая дифференциальная составляющая Д обычно дает неустойчивую систему. Рисунок 2-5 показывает отклики Д и ПД- контроллера. Отклик ПД-контроллера дает быстрый рост значения процесса, чем П контроллер. Обратите внимание, что дифференциальная составляющая Д ведет себя по существу как фильтр верхних частот для сигнала ошибки и, таким образом легко делает систему нестабильной и более чувствительной к шуму.

Рисунок 2-5. Отклик Д- и ПД-контроллера на ступенчатое изменение опорного сигнала


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

Рисунок 2-6. Отклик П-, ПИ- и ПИД-регулятора на ступенчатое изменение опорного сигнала


2.4. Настройка параметров

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

Существуют некоторые методы для настройки ПИД-регулятора. Выбор метода будет зависеть в значительной степени от того, может ли быть процесс автономным для настройки или нет. Метод Циглера-Николса это известный не автономная метод настройки. Первым шагом в этом методе является установка И и Д коэффициентов усиления в нуль, увеличивая усиление П до устойчивого и стабильного колебаний (как можно ближе). Тогда критический коэффициент усиления Кс и период колебаний Pc записывается и П, И и Д значения корректируются с использованием Таблицы 2-1.

Таблица 2-1. Расчет параметров по методу Циглера-Николса


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

2.5. Дискретный ПИД-регулятор

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

2.5.1. Описание алгоритма

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

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

Передаточная функция системы, изображенной на рисунке 2-2 имеет вид:

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

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


3. Реализация ПИД-регулятора на Си

К этому документу прилагается рабочее приложение, реализованное на C. Полную описание исходного кода и информации о компиляции можно найти в файле "readme.html".

Рисунок 3-1. Блок-схема демонстрационного приложения


На рисунке 3-1 показана упрощенная схема демо приложения.

ПИД-регулятор использует структуру для хранения своего статуса и параметров. Эта структура инициализируется функцией main, и только указатель на него передается функциям Init_PID() и PID().

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

Для повышения точности p_factor, i_factor и d_factor увеличиваются в 128 раз. Результат ПИД алгоритма позже уменьшается путем деления на 128. Значение 128 используется для обеспечения оптимизации при компиляции.

Кроме того, влияние Ifactor и Dfactor будет зависеть от времени T.

3.1. Integral windup

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

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

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

4. Дальнейшее развитие

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

В расчете Ifactor и Dfactor время выборки T это часть уравнения. Если время выборки Т использоваться намного меньше или больше чем на 1 секунду, точность либо Ifactor или Dfactor будет недостаточной. Можно переписать алгоритм ПИД и масштабирования, чтобы точность интегральной и диффиренциальной составляющих сохранилась.

5. Справочная литература

K. J. Astrom & T. Hagglund, 1995: PID Controllers: Theory, Design, and Tuning.
International Society for Measurement and Con.

6. Файлы

AVR221.rar

Перевел Кирилл Владимиров по просьбе

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.

Размещено на http://www.allbest.ru

Министерство образования и науки Российской Федерации

Федеральное государственное бюджетное образовательное учреждение

высшего профессионального образования

«КУБАНСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ»

(ФГБОУ ВПО «КубГУ»)

ВЫПУСКНАЯ КВАЛИФИКАЦИОННАЯ РАБОТА БАКАЛАВРА

Разработка и проектирование ПИД-регуляторов

Работу выполнил Роман Валерьевич Пресняков

Научный руководитель

д-р. физ.-мат. наук, профессор

Е.Н. Тумаев

Нормоконтролёр

канд. физ.-мат. наук, доцент А. А. Мартынов

Краснодар 2015

Выпускная квалификационная работа 83 с., 29 рис., 42 источника.

ПИД-РЕГУЛИРОВАНИЕ, ВСТРАИВАЕМЫЕ СИСТЕМЫ, МИКРОКОНТРОЛЛЕРЫ, ПРОГРАММНЫЕ МОДУЛИ, MSP430, ПРЕРЫВАНИЯ

Объектом исследования выпускной квалификационной работы является изучение общих принципов построения пропорционально-интегрально-дифференциальных технологических регуляторов и проектирование алгоритма регуляторов температуры на базе дешевых микроконтроллеров MSP430 (Texas Instruments). В работе осуществлен обзор средств современных микроконтроллеров и принципы их работы.

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

Обозначения и сокращения

Введение

2. Функции чувствительности. Уравнение цифрового пид-регулятора

2.2 Дискретная форма регулятора. Уравнение цифрового ПИД-регулятора

3. Качество регулирования

3.1 Ослабление влияния внешних возмущений. Критерии качества

4. Настройка параметров регулятора. основные принципы

4.1 Выбор параметров регулятора. Ручная и Автоматическая настройки

5. Программирование встраиваемых систем

5.1 Общие принципы разработки встраиваемых систем

5.2 Этапы создания ПО для встраиваемых систем

5.3 Иерархия исполняемого кода во встраиваемых системах

6. Алгоритм работы созданного ПО

6.1 Описание алгоритма работы ПИД-регулятора температуры на базе микроконтроллера MSP430F149

Заключение

Список использованных источников

Обозначения и сокращения

регулятор температура микроконтроллер

микроконтроллер

ПИД-алгоритм

Пропорционально-интегрально-дифференциальный алгоритм

hardware abstraction layer (уровень аппаратной абстракции)

Integrated development environment (интегрированная среда разработки)

широтно-импульсная модуляция

программируемый логический контроллер

supervisory control and data acquisition (диспетчерское управление и сбор данных)

serial peripheral interface (последовательный периферийный интерфейс)

application programming interface (интерфейс программирования приложений)

автоматизированное рабочее место

программное обеспечение

ВВЕДЕНИЕ

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

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

При создании температурного ПИД-регулятора был использован программируемый микропроцессорный технологический измеритель-регулятор Ф0303.2 на базе микроконтроллера MSP430F149, программатор MSP-FET430UIF, компаратор напряжений Р3003 с диапазоном выдачи напряжений от 10 нВ до 11,111110 В и классом точности 0,0005. Программа микроконтроллера создавалась в интегрированной среде разработки IAR Embedded Workbench for MSP430 6. Техническая документация была получена на сайте производителя микроконтроллера .

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

Подсистема измерения

Подсистема обработки ПИД-алгоритма

Подсистема пользовательского интерфейса управления

Подсистема выдачи регулирующего воздействия

1. Принципы создания ПИД-регуляторов

1.1 Общие вопросы реализации ПИД-регуляторов

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

Конечный динамический диапазон изменений физических переменных в системе (например, ограниченная мощность нагревателя, ограниченная пропускная способность клапана);

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

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

Наличие практически во всех системах типовых нелинейностей: насыщение (ограничение динамического диапазона изменения переменных), ограничение скорости нарастания, гистерезис и люфт;

Технологический разброс и случайные вариации параметров регулятора и объекта;

Дискретная реализация регулятора;

Необходимость плавного (безударного) переключения режимов регулирования;

1.2 Дифференциальный узел ПИД-регулятора

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

В частности, если на вход дифференциатора поступает синусоидальный сигнал A*sin(щt), то на выходе получим A*щ*cos(щt), то есть с ростом частоты щ увеличивается амплитуда сигнала на выходе дифференциатора. Иначе говоря, дифференциатор усиливает высокочастотные помехи, короткие выбросы и шум.

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

то есть передаточная функция полученного дифференциатора D(s) может быть представлена в виде произведения передаточной функции идеального дифференциатора и передаточной функции фильтра первого порядка:

где коэффициент N задаёт граничную частоту фильтра и обычно выбирается равным 2…20;

T/N -- постоянная времени фильтра;

s -- комплексная частота.

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

Постоянную времени фильтра выбирают равной TF = Ti/N, где N = 2…20, Ti -- постоянная интегрирования ПИД-регулятора. Граничную частоту фильтра желательно не выбирать ниже частоты 1/Ti, так как это усложняет расчёт параметров регулятора и запас устойчивости.

Рисунок 1 - Структурная реализация дифференциального члена ПИД-регулятора

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

Поскольку объект управления обычно является низкочастотным фильтром, шумы измерений редко проникают по контуру регулирования на выход системы. Однако они увеличивают погрешность измерений y(t) и снижают точность регулирования.

В ПИД-регуляторах различают шум со спектром в области низких частот, вызванный внешними воздействиями на объект управления, и высокочастотный шум, связанный с электромагнитными наводками, помехами по шинам питания и земли, с дискретизацией измеряемого сигнала и другими причинами. Низкочастотный шум моделируют как внешнее возмущение d(s), высокочастотный -- как шумы измерений n(s).

1.3 Интегральный узел ПИД-регулятора. Интегральное насыщение

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

Наиболее типовым проявлением режима ограничения является так называемое «интегральное насыщение», которое возникает в процессе выхода системы на режим в регуляторах с ненулевой постоянной интегрирования Ti ? 0. Интегральное насыщение приводит к затягиванию переходного процесса (рисунки 2 и 3). Аналогичный эффект возникает вследствие ограничения пропорционального и интегрального члена ПИД-регулятора (рисунки 4 и 5). Однако часто под интегральным насыщением понимают совокупность эффектов, связанных с нелинейностью типа «ограничение».

T 1= 0,1 с; T2 =0,05 с; L = 0,02 с; K = 2; Ti = 0,06 с; Td = 0

Рисунок 2 - Реакция выходной переменной y(t) на скачок входного воздействия r(t) для ПИ-регулятора при условии ограничения мощности на входе объекта u(t) и без ограничения (объект второго порядка)

T1 = 0,1 с; T2 = 0,05 с; L = 0,02 с; K = 2; Ti = 0,06 с; Td = 0

Рисунок 3 - Сигнал на входе объекта u(t) при условии ограничения мощности и без (объект второго порядка)

K = 10; Ti = 0,014 с; Td = 0,3 с; T1 = 0,1 с; T2 = 0,05 с; L = 0,02 с

Рисунок 4 - Реакция выходной переменной y(t) на скачок входного воздействия r(t) для ПИД-регулятора при условии ограничения мощности на входе объекта u(t) и без ограничения (объект второго порядка)

T1 = 0,1 с; T2 = 0,05 с; L = 0,02 с; K = 10; Ti = 0,014 с; Td = 0,3 с

Рисунок 5 - Сигнал на входе объекта u(t) в контуре с ПИД-регулятором при условии ограничения мощности и без (объект второго порядка)

и второго порядка

где Kp - коэффициент передачи в установившемся режиме;

T, T1, T2 -постоянные времени;

L - транспортная задержка.

Суть проблемы интегрального насыщения состоит в том, что если сигнал на входе объекта управления u(t) вошёл в зону насыщения (ограничения), а сигнал рассогласования r(t) - y(t) не равен нулю, интегратор продолжает интегрировать, то есть сигнал на его выходе растёт, но этот сигнал не участвует в процессе регулирования и не воздействует на объект вследствие эффекта насыщения. Система управления в этом случае становится эквивалентной разомкнутой системе, сигнал на входе которой равен уровню насыщения управляющего сигнала u(t).

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

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

Ограничение скорости нарастания входного воздействия. Поскольку максимальное значение входного воздействия на объект управления u(t) снижается с уменьшением разности r(t) - y(t), то для устранения эффекта ограничения можно просто снизить скорость нарастания сигнала уставки r(t), например с помощью фильтра. Недостатком такого способа является снижение быстродействия системы, а также невозможность устранить интегральное насыщение, вызванное внешними возмущениями, а не сигналом уставки.

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

Компенсация насыщения с помощью дополнительной обратной связи. Эффект интегрального насыщения можно ослабить, отслеживая состояние исполнительного устройства, входящего в насыщение, и компенсируя сигнал, подаваемый на вход интегратора. Структура системы с таким компенсатором показана на рисунке 6.

Рисунок 6 - Компенсация эффекта интегрального насыщения с помощью дополнительной обратной связи для передачи сигнала ошибки es на вход интегратора

Принцип её работы состоит в следующем. В системе вырабатывается сигнал рассогласования между входом и выходом исполнительного устройства es = u - v. Сигнал на выходе исполнительного устройства либо измеряют, либо вычисляют, используя математическую модель (рисунок 6). Если es = 0, это эквивалентно отсутствию компенсатора и получаем обычный ПИД-регулятор. Если же исполнительное устройство входит в насыщение, то v > u и es < 0. При этом сигнал на входе интегратора уменьшается на величину ошибки es, что приводит к замедлению роста сигнала на выходе интегратора, уменьшению сигнала рассогласования и величины выброса на переходной характеристике системы (рисунки 7 и 8). Постоянная времени Ts определяет степень компенсации сигнала рассогласования.

Рисунок 7 - Отклик системы на единичный скачок r(t) при различных значениях постоянной времени Ts

K = 7; Ti = 0,01 с; Td = 0,1 с;T1 = 0,1 с; T2 = 0,05 с; L = 0,01 с

Рисунок 8 - Отклик системы на сигнал рассогласования es (объект второго порядка, параметры регулятора:

В некоторых регуляторах вход u устройства сравнения es выделяют как отдельный вход -- «вход слежения», что бывает удобно при построении сложных систем управления и при каскадном соединении нескольких регуляторов.

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

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

На рисунке 9 показан пример переходного процесса в системе с отключением интегратора при достижении выходной величиной y(t) заданного значения (y = 0, y = 0,2, y = 0,8).

Рисунок 9 - Отклик на единичный скачок r(t) системы с насыщением исполнительного устройства при различных уровнях отключения интегратора y

Интегратор с ограничением. В был представлен вариант реализации ПИ-регулятора с помощью интегратора в цепи обратной связи. Если эту схему дополнить ограничителем (рисунок 10), то сигнал u на выходе никогда не выйдет за границы, установленные порогами ограничителя, что уменьшает выброс на переходной характеристике системы (рисунок 12). На рисунке 11 представлена модификация такого ограничителя.

Модель эффекта ограничения можно улучшить, если после превышения уровня, при котором наступает ограничение, уменьшить сигнал на выходе модели (рисунок 13). Это ускоряет выход системы из режима насыщения.

Рисунок 10 - Модификация интегратора с ограничителем (параллельно)

Рисунок 11 - Модификация интегратора с ограничителем (последовательно)

Рисунок 12 - Отклик на единичный скачок r(t) системы, содержащей

интегратор с ограничением сверху Uверх

Рисунок 13 - Улучшенная передаточная функция модели эффекта ограничения

1.4 Запас устойчивости системы. Критерий Найквиста

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

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

после прекращения их воздействия система возвращается в положение равновесия, то она считается устойчивой. При анализе устойчивости ПИД-регуляторов обычно ограничиваются исследованием реакции системы на ступенчатое изменение уставки r(t), шум измерений n(t) и внешние возмущения d(t). Потеря устойчивости проявляется как неограниченное возрастание управляемой переменной объекта или как её колебание с нарастающей амплитудой.

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

Наиболее полную информацию о запасе устойчивости системы можно получить, решив дифференциальное уравнение, описывающее замкнутую систему при внешних возмущениях. Однако этот процесс слишком трудоёмок, поэтому для линейных систем используют упрощённые методы, позволяющие дать оценку запаса устойчивости без решения уравнений. Мы рассмотрим два метода оценки: с помощью годографа комплексной частотной характеристики разомкнутого контура (критерий Найквиста) и с помощью логарифмических АЧХ и ФЧХ (диаграмм Боде).

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

Критерий Найквиста. Рассмотрим систему, состоящую из контроллера R и объекта управления P (рисунок 14), которая получена путём исключения цепи сигнала уставки из классической системы с ПИД-регулятором. Будем считать, что обратная связь разомкнута, а для её замыкания достаточно соединить точки x и y. Предположим теперь, что на вход x подан сигнал

Тогда, пройдя через регулятор и объект управления, этот сигнал появится на выходе y с изменённой амплитудой и фазой в виде:

y(t) = ? |G(jщ0)|sin(щ0t + ?), (4)

где G(jщ) = R(jщ)P(jщ) - комплексная частотная характеристика (КЧХ) системы, ? = arg(G(jщ0)) - аргумент КЧХ, |G(jщ0)| - модуль КЧХ на частоте щ0. Таким образом, при прохождении через регулятор и объект амплитуда сигнала изменится пропорционально модулю, а фаза - на величину аргумента КЧХ.

Рисунок 14 - Структура разомкнутой системы управления с ПИД-регулятором для анализа устойчивости

Если теперь замкнуть точки x и y, то сигнал будет циркулировать по замкнутому контуру, причём будет выполняться условие y(t) = x(t). Если при этом |G(jщ0)| ? 1 и? = 180°, то есть после прохождения по контуру сигнал попадает на вход регулятора в той же фазе, что и на предыдущем цикле, то после каждого прохождения по контуру амплитуда синусоидального сигнала будет возрастать, пока не достигнет границы диапазона линейности системы, после чего форма колебаний станет отличаться от синусоидальной. В этом случае для анализа устойчивости можно использовать метод гармонической линеаризации, когда рассматривают только первую гармонику искажённого сигнала. В установившемся режиме после наступления ограничения амплитуды колебаний в силу равенства y(t) = x(t) будет выполняться условие:

|G(jщ0)|=1, то есть G(jщ0)= - 1 (5)

Решив уравнение G(jщ0) = -1, можно найти частоту колебаний щ0 в замкнутой системе.

Комплексную частотную характеристику G(jщ) графически изображают в виде годографа (диаграммы Найквиста) - графика в координатах Re и Im (рисунок 15). Стрелка на линии годографа указывает направление движения «карандаша» при возрастании частоты. Точка G(jщ0) = -1, которая соответствует условию существования незатухающих колебаний в системе, на этом графике имеет координаты Re = -1 и Im = 0. Поэтому критерий устойчивости Найквиста формулируется следующим образом: контур, устойчивый в разомкнутом состоянии, сохранит устойчивость и после его замыкания, если его КЧХ в разомкнутом состоянии не охватывает точку с координатами [-1, j0]. Более строго, при движении вдоль траектории годографа в направлении увеличения частоты точка[-1, j0] должна оставаться слева, чтобы замкнутый контур был устойчив.

K = 6 ; T1 = T2 = 0,1 с; L = 0,01 с

Рисунок 15 - Три годографа КЧХ разомкнутой системы G(jщ) для объекта второго порядка

На рисунке 16 показаны реакции замкнутой системы с тремя различными годографами (рисунок 15) на единичный скачок уставки. Во всех трёх случаях система устойчива, однако скорость затухания колебаний и форма переходного

процесса у них различная. Интуитивно понятно, что система с параметрами Ti = 0,01 с, Td = 0,1 с наиболее близка к тому, чтобы перейти в состояние незатухающих колебаний при небольшом изменении её параметров. Поэтому

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

Запас устойчивости оценивают как степень удалённости КЧХ от критической точки [-1, j0]. Если |G(jщ0)| < 1, то можно найти, во сколько раз осталось увеличить передаточную функцию, чтобы результирующее усиление вывело систему в колебательный режим: gm|G(jщ0)| = 1, откуда

Запасом по усилению gm называется величина, на которую нужно умножить передаточную функцию разомкнутой системы G(jщ180), чтобы её модуль на частоте сдвига фаз 180°(щ180) стал равен 1.Если на частоте щ180 коэффициент усиления разомкнутого контура равен G(jщ180) = -1/gm (рис. 15), то дополнительное усиление величиной gm переведёт систему в точку [-1, j0], поскольку (-1/gm) gm = -1. Аналогично вводится понятие запаса по фазе: это минимальная величина m, на которую нужно увеличить фазовый сдвиг в разомкнутой системе arg(G(jщ)), чтобы суммарный фазовый сдвиг достиг 180°, то есть

Знак «+» перед arg(G(jщ1)) стоит потому, что arg(G(jщ1)) < 0. Для оценки запаса устойчивости используют также минимальное расстояние sm от кривой годографа до точки [-1, j0] (рисунок 15).

На практике считаются приемлемыми значения gm = 2...5,m = 30…60°, sm = 0,5...0,8 .Для графика на рисунке 15 эти критерии имеют следующие значения:

Gm1 = 12,1; m1 = 15°; sm1 = 0,303 (для случая Ti = 0,01 с,

Gm2 = 11,8; m2 = 47,6°; sm2 = 0,663 (для случая Ti = 0,05 с,

Gm3 = 1,5; m3 = 35,2°; sm3 = 0,251 (для случая Ti = 0,05 с,

Если кривая годографа пересекает действительную ось в нескольких точках, то для оценки запаса устойчивости берут ту из них, которая наиболее близка к точке [-1, j0]. При более сложном годографе может быть использована оценка запаса устойчивости как запас по задержке . Запас по задержке - это минимальная задержка, при добавлении которой в контур он теряет устойчивость. Наиболее часто этот критерий используется для оценки запаса устойчивости систем с предиктором Смита.

Частотный критерий устойчивости.Для графического представления передаточной функции разомкнутой системы и оценки запаса устойчивости могут быть использованы логарифмические АЧХ и ФЧХ (рисунок 17). Для оценки запаса по фазе сначала с помощью АЧХ находят частоту щ1 (частота среза, или частота единичного усиления), при которой G(jщ1) = 1, затем по ФЧХ находят соответствующий запас по фазе. Для оценки запаса по усилению сначала с помощью ФЧХ находят частоту щ180, на которой фазовый сдвиг равен 180°, затем по АЧХ находят запас по усилению. На рисунке 17 приведены примеры графических построений для оценки запаса по усилению и фазе для системы, годографы которой показаны на рисунке 15.

Если запас по фазе разомкнутого контура равен 0° или запас по усилению равен 1, после замыкания контура обратной связи система окажется неустойчивой.

Рисунок 16 - Переходная характеристика замкнутой системы, которая

имеет годографы, показанные на рисунке 15

2. Функции чувствительности. уравнение цифрового ПИД-регулятора

2.1 Функции чувствительности. Робастность. Безударное переключение режимов регулирования

Передаточная функция реального объекта P(s) может изменяться в процессе функционирования на величину ДP(s),например, вследствие изменения нагрузки на валу двигателя, числа яиц в инкубаторе, уровня или состава жидкости в автоклаве, вследствие старения и износа материала, появления люфта, изменения смазки и т.п. Правильно спроектированная система автоматического регулирования должна сохранять свои показатели качества не только в идеальных условиях, но и при наличии перечисленных вредных факторов. Для оценки влияния относительного изменения передаточной функции объекта ДP/P на передаточную функцию замкнутой системы Gcl

y(s) = r(s), Gcl(s) = (8)

найдём дифференциал dGcl:

Поделив обе части этого равенства на Gcl и подставив в правую часть Gcl = PR/(1+PR), получим:

Рисунок 17 - Оценка запаса по усилению и фазе для системы с годографом, показанным на рисунке 15

Из (10) виден смысл коэффициента S - он характеризует степень влияния относительного изменения передаточной функции объекта на относительное изменение передаточной функции замкнутого контура, то есть S является коэффициентом чувствительности замкнутого контура к вариации передаточной функции объекта. Поскольку коэффициент S = S(jщ) является частотно-зависимым, его называют функцией чувствительности .

Как следует из (10),

Введём обозначение:

Величина T называется комплементарной (дополнительной) функцией чувствительности , поскольку S + T = 1. Функция чувствительности позволяет оценить изменение свойств системы после замыкания обратной связи. Поскольку передаточная функция разомкнутой системы равна G = PR, а замкнутой Gcl = PR/(1+PR), то их отношение Gcl/G = S. Аналогично для разомкнутой системы передаточная функция от входа возмущений d на выход замкнутой системы равна (см. ) P(s)/(1 + P(s)R(s)), а разомкнутой - P(s), следовательно, их отношение также равно S. Для передаточной функции от входа шума измерений n на выход системы можно получить то же отношение S.

Таким образом, зная вид функции S(jщ) (например, рисунок 18), можно сказать, как изменится подавление внешних воздействий на систему для разных частот после замыкания цепи обратной связи. Очевидно, шумы, лежащие в диапазоне частот, в котором |S(jщ)| > 1, после замыкания обратной связи будут усиливаться, а шумы с частотами, на которых |S(jщ)| < 1, после замыкания обратной связи будут ослаблены.

Наихудший случай (наибольшее усиление внешних воздействий) будет наблюдаться на частоте максимума Ms модуля функции чувствительности (рисунок 18):

Максимум функции чувствительности можно связать с запасом устойчивости sm (рисунок 15). Для этого обратим внимание на то, что |1 + G(jщ)| представляет собой расстояние от точки [-1, j0] до текущей точки на годографе функции G(jщ). Следовательно, минимальное расстояние от точки [-1, j0] до

функции G(jщ) равно:

Сопоставляя (13) и (14), можно заключить, что sm = 1/Ms. Если с ростом частоты модуль G(jщ) уменьшается, то, как видно из рисунка 15, (1- sm) ? 1/gm. Подставляя сюда соотношение sm = 1/Ms, получим оценку запаса по усилению, выраженную через максимум функции чувствительности:

Аналогично, но с более грубыми допущениями можно записать оценку запаса по фазе через максимум функции чувствительности :

Например, при Ms = 2 получим gm ? 2 и? 29°.

Рисунок 18 - Функции чувствительности для системы с годографами, показанными на рисунке 13

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

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

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

P = P0 + ДP, (17)

где P0 - расчётная передаточная функция, ДP - величина отклонения от P0, которая должна быть устойчивой передаточной функцией. Тогда петлевое усиление разомкнутой системы можно представить в виде G = RP0 + RДP = G0 + RДP. Поскольку расстояние от точки [-1, j0] до текущей точки A на годографе невозмущённой системы (для которой ДP = 0) равно |1 + G0| (рисунок 19), условие устойчивости системы с отклонением петлевого усиления RДP можно представить в виде:

|RДP| < |1+G0|,

где T - дополнительная функция чувствительности (12). Окончательно можно записать соотношение:

которое должно выполняться, чтобы система сохраняла устойчивость при изменении параметров процесса на величину ДP(jщ).

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

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

Рисунок 19 - Пояснение к выводу соотношения (18)

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

Безударное переключение режимов регулирования. В ПИД-регуляторах могут существовать режимы, когда их параметры изменяются скачком. Например, когда в работающей системе требуется изменить постоянную интегрирования или когда после ручного управления системой необходимо перейти на автоматический режим. В описанных случаях могут появиться нежелательные выбросы регулируемой величины, если не принять специальных мер. Поэтому возникает задача плавного («безударного») переключения режимов работы или параметров регулятора. Основной метод решения проблемы заключается в построении такой структуры регулятора, когда изменение параметра выполнятся до этапа интегрирования. Например, при изменяющемся параметре Ti = Ti (t) интегральный член можно записать в двух формах:

I(t) = или I(t) = .

В первом случае при скачкообразном изменении Ti (t) интегральный член будет меняться скачком, во втором случае - плавно, поскольку Ti (t) находится под знаком интеграла, значение которого не может изменяться скачком.

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

2.2 Дискретная форма регулятора Уравнение цифрового ПИД-регулятора

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

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

Основным эффектом, который появляется при дискретизации и который часто «открывают заново», является появление алиасных частот в спектре квантованного сигнала в случае, когда частота квантования недостаточно высока.

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

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

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

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

Продифференцировав обе части по времени, получим

Заменяя дифференциалы в этом выражении конечными разностями (левыми разностями), получим

где индекс i обозначает, что данная величина взята в момент времени ti (обратим внимание, что здесь и далее индекс i в Ti обозначает не номер временного шага, а интегральный коэффициент ПИД-регулятора). Из последнего выражения получим:

Таким образом, очередное значение интеграла можно вычислить, зная предыдущее и значение ошибки в предыдущий момент времени. Однако такая формула имеет свойство накапливать ошибку вычислений с течением времени, если отношение Дt/Ti недостаточно мало. Более устойчива другая формула интегрирования - с правыми разностями, когда значение ошибки берётся в тот же момент времени, что и вычисляемый интеграл:

Рассмотрим дифференциальный член ПИД-регулятора с фильтром:

Переходя в этой формуле от изображений к оригиналам, получим:

Заменяя дифференциалы конечными приращениями, получим разностное уравнение:

Отметим, что для сходимости итерационного процесса (21) необходимо, чтобы

При Дt > Td/N итерационный процесс (21) становится колебательным, что недопустимо для ПИД-регулятора. Лучшими характеристиками обладает разностное уравнение, полученное при использовании правых разностей:

Здесь условие сходимости выполняется для всех Дt, и ни при каких значениях параметров не возникает колебаний. Кроме того, последняя формула позволяет «отключить» дифференциальную составляющую в ПИД-регуляторе путём назначения Td = 0, чего нельзя сделать в выражении (21), поскольку при этом возникает деление на ноль. Можно использовать ещё более точные формулы численного дифференцирования и интегрирования, известные из курса численных методов решения уравнений. Величина такта квантования Дt выбирается как можно меньше, это улучшает качество регулирования. Для обеспечения хорошего качества регулирования он не должен быть больше чем 1/15...1/6 от времени установления переходной характеристики объекта по уровню 0,95 или 1/4...1/6 от величины транспортной задержки . Однако при увеличении частоты квантования более чем в 2 раза по сравнению с верхней частотой спектра возмущающих сигналов (по теореме Котельникова) дальнейшего улучшения качества регулирования не происходит.

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

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

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

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

где i - номер временного такта.

Для начала работы алгоритма выбирают обычно uD0 = 0, I0 = 0, e0 = 0, однако могут быть и другие начальные условия, в зависимости от смысла конкретной задачи регулирования.

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

конечными разностями и конечными суммами

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

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

Инкрементная форма ПИД-регулятора получается путём дифференцирования уравнения (25):

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

Рисунок 20 - Инкрементная форма ПИД-регулятора

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

где Дui+1 = ui+1 - ui;

Дei = ei - ei-1.

Более устойчивое и точное разностное уравнение можно получить, подставив в формулу Дui+1 = ui+1 - ui выражения для ui+1 и ui из (24).

Инкрементная форма регулятора удобна для применения в микроконтроллерах, поскольку в ней основная часть вычислений выполняется с приращениями, для представления которых можно использовать слово с малым количеством двоичных разрядов. Для получения значения управляющей величины можно выполнить накопительное суммирование на финальной стадии вычислений: ui+1 = ui + Дui+1.

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

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

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

3. Качество регулирования

3.1 Критерии качества Ослабление влияния внешних возмущений

Выбор критерия качества регулирования зависит от цели, для которой используется регулятор. Целью может быть:

Поддержание постоянного значения параметра (например, температуры);

Слежение за изменением уставки или программное управление;

Управление демпфером в резервуаре с жидкостью и т.д.

Для той или иной задачи наиболее важным фактором может быть:

Форма отклика на внешние возмущения (время установления,пере-регулирование, время отклика и др.);

Форма отклика на шумы измерений;

Форма отклика на сигнал уставки;

Робастность по отношению к разбросу параметров объекта управления;

Экономия энергии в управляемой системе;

Минимизация шумов измерений.

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

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

Как было показано в подразделе, обратная связь ослабляет влияние внешних возмущений в |S(jщ)| раз за исключением тех частот, на которых |S(jщ)|. Внешние возмущения могут быть приложены к объекту в самых разных его частях, однако, когда конкретное место неизвестно, считают, что возмущение воздействует на вход объекта. В этом случае отклик системы на внешние возмущения определяется передаточной функцией со входа внешних возмущений на выход системы:

Поскольку внешние возмущения обычно лежат в низкочастотной части спектра, где |S(jщ)| и, следовательно, T, то выражение (28) можно упростить:

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

Во временной области реакцию на внешние возмущения оценивают по отклику на единичный скачок d(t). Ослабление влияния шумов измерений: Передаточная функция от точки приложения шума на выход системы имеет вид:

Благодаря спаду АЧХ объекта на высоких частотах функция чувствительности стремится к 1 (рисунок 18). Поэтому ослабить влияние шумов измерений с помощью обратной связи невозможно. Однако эти шумы легко устраняются применением фильтров нижних частот, а также правильным экранированием и заземлением .

Замкнутая система остаётся устойчивой при изменении параметров объекта на величину ДP(jщ), если выполняется условие (18).

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

Максимум ошибки регулирования

и момент времени Tmax, при котором ошибка достигает этого максимума;

Интегрированная абсолютная ошибка

Интеграл от квадрата ошибки

Декремент затухания d (это отношение первого максимума ко второму, типовое значение d=4 и более)

отметим, что в литературе встречаются и другие определения декремента затухания, в частности, как или как b/a коэффициент в показателе степени экспоненты, описывающей огибающую затухающих колебаний;

Статическая ошибка e0 (это постоянная ошибка в равновесном, то есть в установившемся, или статическом, режиме системы);

Время установления Te с заданной погрешностью es (это время, по истечении которого погрешность регулирования не превышает заданного значения es; обычно es = 1%, реже 2% или 5% - соответственно время установления обозначают T0,01, T0,02, T0,05);

Перерегулирование emax (это превышение первого выброса над установившимся значением переменной, обычно выражается в процентах от установившегося значения);

Время нарастания Tr (это интервал времени, в течение которого выходная переменная нарастает от 10 до 90% от своего установившегося значения);

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

Рисунок 21 - Критерии качества регулирования во временной области

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

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

Частотные критерии качества. В частотной области обычно используются следующие критерии, получаемые из графика амплитудно-частотной характеристики замкнутой системы y(щ) (рисунок 22):

Полоса пропускания щ-3дБ (или щ0,7) по уровню -3 дБ (или по уровню 1/ = 0,7) - полоса частот от 0 до щ-3дБ = щ0,7, в пределах которой кривая АЧХ снижается не более чем на 3 дБ относительно её значения на нулевой частоте y(0);

Колебательность М - отношение максимального (пикового) значения АЧХ ymax к её значению на нулевой частоте y(0), то есть в установившемся режиме

типовыми значениями являются М = 1,5...1,6;

Резонансная частота системы щp - частота, на которой АЧХ достигает максимума ymax = y(щp).

Частотные критерии у реальных регуляторов не могут быть однозначно связаны с временными критериями из-за нелинейностей (обычно это нелинейности типа «ограничение») и алгоритмов устранения эффекта интегрального насыщения. Однако приближённо можно установить следующие зависимости между критериями в частотной и временной областях:

Частота максимума передаточной характеристики замкнутой системы приблизительно соответствует периоду затухающих колебаний отклика на ступенчатое входное воздействие - з;

Чем медленнее затухают колебания, тем больше показатель колебательности М.

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

Подобные документы

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

    дипломная работа , добавлен 26.04.2014

    Знакомство с этапами расчета настроек типовых регуляторов в одноконтурной автоматической системе реагирования. Особенности выбора типа промышленного регулятора. Способы построения области устойчивости в плоскости настроечных параметров регулятора.

    дипломная работа , добавлен 17.06.2013

    Анализ свойств объекта управления, типовых регуляторов и выбор типа регулятора. Расчёт оптимальных параметров настроек регуляторов. Зависимость регулирующего воздействия от отклонения регулируемой величины. Интегральный и пропорциональный регуляторы.

    курсовая работа , добавлен 11.02.2014

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

    курсовая работа , добавлен 26.12.2013

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

    курсовая работа , добавлен 24.06.2012

    Расчёт комплексной частотной характеристики объекта в требуемом диапазоне частот. Определение запаса устойчивости замкнутой автоматической системы регулирования. Оценка качества управления при использовании ПИ и ПИД регуляторов и выбор лучшего и них.

    курсовая работа , добавлен 12.04.2014

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

    курсовая работа , добавлен 22.10.2012

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

    курсовая работа , добавлен 06.08.2013

    Расчет параметров настройки ПИ-регулятора для объекта второго порядка. Аналитический расчет и реализация программы в среде MatLab, которая определяет параметры регулятора и переходного процесса. Критерии качества переходного процесса замкнутой системы.

    лабораторная работа , добавлен 29.09.2016

    Классификация электромагнитных подвесов. Построение математической модели стенда. Программная реализация пропорционально-интегрально-дифференциального регулятора. Описание микроконтроллера ATmega 328 и платы Arduino. Сборка и ввод стенда в эксплуатацию.

  • Tutorial

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

Несмотря на свою простоту как физического смысла, так и математической записи:

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

Причем проверить качество реализации ПИД регулятора крайне легко.

Рассмотрим простейший пример: терморегулятор. Для проверки его качестве лучше всего подходит быстрый, малоинерциальный, маломощный объект. Классика жанра: обычная лампочка на 100Вт с прикрученной к ней тонкой термопарой (ХА). И первое, на чем следует проверять ПИД регулятор - деградация ПИД до просто П-регулятора. То есть коэффициенты интегральной и дифференциальной ставим в ноль, а пропорциональную ставим в максимум.

Включаем регулятор, проверяем: текущая температура 22 градуса, уставка 16 градусов. Лампочка не горит. Начинаем начинаем увеличивать уставку: 16.1, 16.3, 16.7, 18… 19… лампочка загорелась. Как?! Откуда?! Останавливаемся - выключилась. Итак, мы встретились с первой классической ошибкой реализации ПИД регулятора.

Небольшое математическое отступление: вспомним еще раз интегральную запись указанную выше. Мы реализуем её програмно, а значит - дискретно. То есть с завидной регулярностью производим измерение входной величины, сравниваем её с уставкой, вычисляем воздействие, выдаём, повторить. А значит, надо из интегральной формы перейти в конечно-разностную схему. При переходе обычно используется переход «в лоб»:

где E(n) = X(n) - X0(n) - то есть величина рассогласования между текущим и заданным значением регулируемого параметра.

Использование прямой формулы потребует во-1х считать и хранить интеграл рассогласований за большой период, во-2х требует работы с плавающей точкой высокой точности (так как интегральный коэффициент Ki всегда < 1), либо операции деления (представляя коэффициент в форме 1/Ki) большой разрядности. Всё это требует вычислительных ресурсов, коих в embedded как правило сильно ограничено… Поэтому, вместо реализации прямой схемы, реализуют рекуррентную формулу:

использование рекуррентной формулы позволяет сократить объём вычислений и разрядность промежуточных значений.

Итак, вернёмся к нашему регулятору. Итак, есть регулируемый объект: лампочка. Для управления подаваемой на неё мощностью, используют простой подход: сеть питания (220В 50Гц) подаётся через симистор на нагрузку. Симистор в момент перехода полуволны через ноль выключается, и остаётся выключен до тех пор, пока не будет подан сигнал на управляющий электрод. Таким образом, чем раньше после начала полуволны мы подадим управляющий сигнал, тем больше энергии от этой полуволны достигнет управляемого объекта. Правильно расчитав время для линейности площади части полуволны с момента времени X до конца полуволны, мы получаем возможность выдавать мощность от 0 до 100% с точностью, с которой расчитали таблицу линеаризации.

Итак, мы можем выдавать мощность от 0 до 100%. В реальных объектах, часто нельзя выдавать 100% мощности - например, это черевато перегоранием нагревательного элемента. Поэтому, все приборы имеют настройку минимальной и максимальной выдаваемой мощности на объект.

Итак, после вычисления U(n) по вышестоящей формуле, добавляется еще ограничение результата:
if Un < Umin then Un:= Umin; if Un>Umax then Un:= Umax;
После чего, вычисленное Un и есть требуемая выходная мощность на текущий момент. Та-дам! Именно вот эта реализация и создаёт ошибку, о которой написано выше.

Причина банальна: в момент перехода от дикретной к конечно-разностной схеме, мы «выносим за скобки» операцию вычисления интеграла, и на каждом шаге мы прибавляем производную к накопленной сумме U(n-1) . Наложив же на неё ограничение, мы весь вычисленный интеграл фактически обнуляем. (Ну не сколько обнуляем, сколько приводим к диапазону 0-100, что в данном случае несущественно). Таким образом, мы дифференциурем ПИД регулятор, и остаётся дифференциально-ускорительный. Что в реальности выглядит как просто дифференциальный регулятор - мощность при этом подаётся пропорционально изменению уставки или регулируемой величины, а не пропорционально разности между уставкой и регулируемой величиной.

Вывод №1 : вычисление U(n) нельзя ограничивать. Для ограничения мощности подаваемой на выходное устройство следует заводить отдельную переменную.

Теперь, когда мы завели Urn, для ограниченной мощности, перезаливаем, продолжаем тестировать.
Включаем регулятор, проверяем: текущая температура 22 градуса, уставка 16 градусов. Лампочка не горит.
Начинаем прибавлять уставку: 16.1, 16.4, 17, 18, 20, 22, 24 (опа! засветилось! ура!), 28, 30, 40, 60… Красота! Работает!
Наблюдаем за процессом - вышло примерно на 60, болтается чуток туда-сюда, но держит. Вроде, всё красиво. Выдыхаем, проверяем управление с ПК: задаём 600 градусов. И… Лампочка выключается. Как так? Уставка 600, текущая 60, а лампочка не горит?

Пока ждём и медленно осознаём, что мы явно напоролись на какой-то «Классический Косяк №2» ™ лампочка медленно разгорается, выходит на 100% мощности, и так и остаётся - 600-то градусов она выдать ну никак не может.

Возвращаемся снова к нашей разностной схеме. U(n) = U(n-1) + Kp*(dE + ...) . К текущему расчетному значению воздействия прибавляется разность невязки помноженная на коэффициент пропорциональности. У нас была уставка 60, температура 60, то есть невязка нулевая. Выходная мощность так же была нулевая. И тут разом, скачком, уставку увеличили до 600 градусов. невязка резко стала 540 градусов, помножили еще и на коэффициент пропорциональности… и вылетели за разрядность хранения U(n). Не смейтесь, использование математики с фиксированной точки, вместо плавающей точки. При разнице в 540 градусов и работе через 1/16, при коэффициенте пропорциональности 20, получаем… 540*20*16=172800, а если у нас 16тиразрядный U(n), да еще и знаковый, то фактически, в результате вычисления мы получили A300h = −8960. Опачки. Вместо большого плюса - ощутимый такой минус.

Вывод №2 : вычисления должны проводиться с корректной поддержкой переполнения. Переполнилось? Ограничь предельным числом, уж никак не заворачивать.

Итак, нарастили разрядность U(n), перетранслировали, зашили, запускаем. Лампочка еще не совсем остыла, там 80 градусов, уставка всё те же 600. Лампочка зажигается… и тухнет. Зажигается и тухнет. Как так? Уставка 600, лампочка 80 - и поддерживает вполне себе свои 80! Как так-то?! Явно у нас вылез Жучок №3 .

И снова лирически-математическое отступление. Итак, есть наша разностная схема: U(n) = G(U(n-1), dE(n)) . Еще раз: новое значение воздействия есть сумма прошлого воздействия и некого воздействия, зависящего от разности невязки в текущий момент и предыдущий. А что такое предыдущий момент? А какой момент предыдущий у предыдущего? Ну-ка, вспомнили школу. Доказательство по индукции. Если можно построить доказательство для K+1, считая что доказательство для K верно, И доказать отдельно что верно для K=0, тогда доказательство истинно. Итак, а как мы считаем U(0)?

Часто встречающееся решение: всё обнуляем, уставку считываем из флешпамяи уставки, ждём 1 цикл опроса, и считываем X(0). Вот, ноль готов, теперь работаем. И… И не правильно. Почему? Потому что рекурентная формула отталкивается от изменений в невязке. А проинициализировав нулём и загрузив текущие значения мы потеряли стартовые условия. Всё - вместо поддержания абсолютного значения температуры на уровне равном абсолютной уставке регулятор начинает держать температуру равную стартовой плюс разнице уставки. То есть было 80 градусов и уставка 200, включили прибор - он держет 80. Сменили уставку на 240 - он начал держать 120.

Правильная инициализация разностной схемы: обнулить _вообще всё_. То есть
X(0) = 0, X0(0) = 0. U(0) = 0. E(0)=X(0)-X0(0)=0.
И на первом же цикле вычислений у нас как бы скачком появляются уставке и текущее значение:
X(1) = 80. X0(1)=200. U(1) = U(0)+Kp*(E(1)-E(0)) = U(0)+Kp*(X(1)-X0(1)-E(0)) = 0 + 20*(200 - 80 - 0) = 2400
Вот теперь схема работает правильно.

Вывод №3 : корректно инициализируй стартовые условия.

Правильно ли? Hу-ка, ну-ка… Еще раз… Ставим уставку 20. Ждём охлаждения… Выключаем. Включаем. Итак, красота: текущая 20, уставка 20. Ставим скачком 600. Поехало греться. 100, 120… ставим уставку 20. Отключилось, пошло охлаждаться. Ждём чуток (120… 110… 100… 90… 80...) и ставим уставку 100. Поехало греться… 105 градусов, отключилось. Стоп. А почему оно держит 105? У нас же сейчас работает только пропорциональная составляющая. При правильной реализации из физического смысла процесса колебательный процесс не может держать уставку выше чем задано. Строго ниже. А держит на 5 градусов больше чем попросили. Это наблюдается Прикол №4 .

Итак, вспоминаем что у нас было выше: Вывод№2: U(n) нельзя ограничивать. И Вывод№3: при переполнении ограничить всё-таки придётся. Да-да. Иначе «рабочая точка» смещается на ограниченный момент. Что же делать? Увеличить разрядость? Хорошо, если хватает вычислительной мощности. А надо ли? Собственно, что плохого, что у нас U(n) = 9999.99, а не 29999.99? В общем-то только то, что мы потеряли 20000. Но сейчас-то для работы нам так и так надо вваливать просто 100% мощности, правильно? Правильно. Значит, проблемы с ограничением в полку нет, до тех пор, пока мы не отходим от предела. Таким образом, в случае переполнения надо ставить флаг, и по достижении, например, половины диапазона (то есть как U(n) после 9999.9 опустилось ниже 5000.00), заново реинициализировать схему. То есть отбрасывать историю, сказать что n=0 и см. выше Вывод №3. Пытливый ум уже сообразил, что в случае полной схемы, когда все три компоненты не равны нулю, обнуляя в процессе итеративный процесс, мы в том числе обнуляем накопленный интеграл интегральной составляющей. Однако, в связи с тем, что обнуляем мы значительно заранее, он успеет подкопиться за время довырабатывания остатка. Да и не совсем корректно копить интеграл на «больших» перегонах, так как цель интегральной составляющей - «выбрать» невязку, которую не может отработать пропорциональная составляющая отдельно.

Вывод №4 : если по какой-то причине U(n) было ограничено, схему следует переинициализировать как только создалось впечатление, что схема вернулась в нормальное состояние.

В следующем выпуске : а так ли надо реализовывать разностную схему? Подробная реализация прямой дискретной схемы, обладающей простыми и понятными настраиваемыми коэффициентами, с прямым физическим смыслом, которая без проблем вычисляет управляющее воздействие с частотой 25Гц на процессоре ADuC847 (быстрый 8-битный контроллер, с ядром 8051), оставляя еще море процессорного времени для других процессов.

(Картинки с изображением формул взяты из статьи