Определяне на коефициентите pi на закона за управление. Пропорционално-интегрален диференциал (PID) - закон за регулиране

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

PID управление

Можете значително да подобрите точността на регулиране, като приложите закона за PID (закон за пропорционално-интегрално-диференциално регулиране).
За прилагане на PID закона се използват три основни променливи:
P – пропорционална зона, %;
I – време на интегриране, s;
D е времето на диференциация, s.
Ръчната настройка на PID регулатора (определяне на стойностите на параметрите P, I, D), която осигурява необходимото качество на регулиране, е доста сложна и рядко се използва на практика. PID контролерите от серията UT/UP осигуряват автоматична настройка на PID параметрите за конкретен контролен процес, като същевременно запазват възможността за ръчна настройка.

Пропорционална
В пропорционалната лента, определена от коефициента P, управляващият сигнал ще се променя пропорционално на разликата между зададената и действителната стойност на параметъра (несъответствие):

управляващ сигнал = 100/P E,

където E е несъответствието.
Коефициентът на пропорционалност (усилване) K е обратно пропорционален на P:

Пропорционалната лента се определя по отношение на зададената контролна работна точка и в рамките на тази лента управляващият сигнал се променя от 0 до 100%, т.е. ако действителната стойност и зададената точка са равни, изходният сигнал ще има стойност от 50%.

където P е пропорционалната зона;
ST - зададена точка на регулиране.
Например:
диапазон на измерване 0…1000 °С;
контролна задание ST = 500 °С;
пропорционална зона P = 5%, което е 50 °C (5% от 1000 °C);
при температурна стойност от 475 °C и по-ниска, контролният сигнал ще има стойност от 100%; при 525 °C и повече - 0%. В диапазона от 475…525 °C (в пропорционалната лента) управляващият сигнал ще се променя пропорционално на стойността на несъответствието с коефициент на усилване K = 100/P = 20.
Намаляването на стойността на пропорционалната лента P увеличава реакцията на контролера при несъответствие, т.е. малко несъответствие ще съответства на по-голяма стойност на управляващия сигнал. Но в същото време, поради голямото усилване, процесът придобива осцилационен характер около зададената стойност и не може да се постигне прецизен контрол. При прекомерно увеличаване на пропорционалната лента контролерът ще реагира твърде бавно на полученото несъответствие и няма да може да следи динамиката на процеса. За да се компенсират тези недостатъци на пропорционалното управление, се въвежда допълнителна времева характеристика - интегралната съставка.

интегрален компонент
Определя се от времеконстантата на интегриране I, функция е на времето и осигурява промяна в усилването (изместване на пропорционалната лента) за даден период от време.

управляващ сигнал = 100/P E + 1/I ∫ E dt.

Както може да се види от фигурата, ако пропорционалният компонент на закона за управление не осигурява намаляване на несъответствието, тогава интегралният компонент започва постепенно да увеличава печалбата през периода от време I. След период от време I този процес се повтаря. Ако несъответствието е малко (или бързо намалява), тогава усилването не се увеличава и, ако стойността на параметъра е равна на определената настройка, приема някаква минимална стойност. В тази връзка интегралният компонент се нарича функция за автоматично изключване на управлението. В случай на PID управление, стъпковата реакция на процеса ще бъде флуктуации, които постепенно намаляват към зададената точка.

Производен термин
Много управляващи обекти са доста инерционни, т.е. имат забавяне в отговор на приложеното действие (мъртво време) и продължават да реагират след премахване на управляващото действие (време на забавяне). PID регулаторите на такива обекти винаги ще закъсняват с включването/изключването на управляващия сигнал. За да се елиминира този ефект, се въвежда диференциална съставка, която се определя от времеконстантата на диференциране D, и се осигурява пълно прилагане на закона за PID управление. Диференциалният компонент е времевата производна на несъответствието, т.е. той е функция на скоростта на промяна на контролния параметър. В случай, че несъответствието стане постоянна стойност, диференциалният компонент престава да влияе на управляващия сигнал.

управляващ сигнал = 100/P E + 1/I ∫ E dt + D d/dt E.

С въвеждането на диференциалния компонент контролерът започва да отчита мъртвото време и времето на забавяне, променяйки управляващия сигнал предварително. Това прави възможно значително намаляване на колебанията на процеса около зададената стойност и постигане на по-бързо завършване на преходния процес.
По този начин, когато генерират управляващ сигнал, PID регулаторите вземат предвид характеристиките на самия обект на управление, т.е. анализирайте несъответствието за величината, продължителността и скоростта на промяната. С други думи, ПИД регулаторът "предвижда" реакцията на регулирания обект на управляващия сигнал и започва да променя управляващото действие не при достигане на зададената стойност, а предварително.

При създаването на различни устройства за автоматизация задачата често е да се осигури дадена скорост на въртене на вала на двигателя, независимо от текущото натоварване.

Не е трудно да се види, че скоростта на въртене на вала на двигателя зависи не само от напрежението на двигателя, но и от външни неизвестни влияния върху двигателя, като променлива сила на триене, променящо се натоварване, температура, качество на смазване и други фактори. Следователно задачата за осигуряване на дадена скорост на въртене на вала на двигателя се свежда до задачата за генериране на такова напрежение на двигателя, което да осигури дадена скорост на въртене на двигателя, независимо от влиянието на външни случайни фактори.

Решаване на този проблем без теория автоматично управлениеневъзможен. Решението на проблема се състои в изчисляване и внедряване PID регулатор на скоростта. Специалистите на Dean-Soft имат опит в решаването на подобни проблеми.


PID регулаторът осигурява зададена скорост на задвижващия механизъм (двигателя), независимо от постоянното или бавно променящото се натоварване, действащо върху него.


PID регулаторът е пропорционално-интегрално-диференциален регулатор. PID регулаторът се състои съответно от пропорционални ( K p ), интеграл ( К и / с ) и диференциал ( K d с ) връзка, всеки от тях има собствено усилване (фиг. 1).

Ориз. 1. Структурна схема на система за управление с ПИД регулатор.

Тук: с е операторът на Лаплас (понякога наричан стр ). Ако се абстрахираме от трансформациите на Лаплас, тогава записите K p, K и / с И K d с трябва да се приема само като обозначение на съответната връзка, а не като математически израз. И определено не трябва да търсите смисъл с , тъй като, както вече беше казано, това е оператор, а не променлива.


В PID система, действителната скорост V(t)двигателят се измерва с помощта на сензор.

На входа на систематазададената скорост пристига V дупе(T)в същите единици като действителната скорост.

Добавител за обратна връзкаизважда от референтния сигнал за скорост V дупе (T)сигнал за действителна скорост V(t)и генерира сигнал за грешка e (t) на изхода:

Сигналът за грешка се изпраща до пропорционален, интегралнаИ диференциалвръзки на PID контролера.

пропорционална връзкаумножава сигнала за грешка e с коефициент K pи генерира изходен сигнал y p.

интегрална връзкаинтегрира сигнала e (t) във времето, умножава по коефициент К ии генерира изходен сигнал y и.

диференциална връзкадиференцира сигнала за грешка по отношение на времето e (t), умножавайки резултата по числото K dи формиране на изходния сигнал y d.


Акумулатор на ПИД контролерасумира сигналите y p(T), y и(T)И y d(T)и генерира изходен сигнал y(t):

ШИМ и ключ за захранванепроектиран да предава изчисления изходен сигнал към двигателя y(t).

Изчисляване на коефициентите на PID регулатора

Не е трудно да се види, че PID регулаторът се характеризира с три коефициента K p, К иИ K d. За да се изчислят тези коефициенти, е необходимо да се знаят параметрите на обекта на управление, в случая двигателят.


Структура и параметри на обекта на управление

От гледна точка на теорията на автоматичното управление двигателят постоянен токприблизително описан от: две апериодични връзки с електрическа времеконстанта T eи механична времева константа T m. Общо моторно усилване К мотор(фиг. 2). Всъщност, структурна схемадвигателят е много по-сложен, но това не е толкова важно за нас в случая.





Ориз. 2. Структурна схема на двигателя от гледна точка на теорията на автоматичното управление.

Трансферна функция на двигателя, написана чрез оператора на Лаплас с, следното:

Усилване на двигателяК мотор определя пропорционалността между скоростта на въртене на вала на двигателя на празен ход и напрежението, приложено към входа. Просто казано, съотношението е равно на съотношението на празен ход V xxи номиналното напрежение на двигателя U n.

Напрежението на двигателя в микропроцесорната технология се задава в условни единици за напрежение, а скоростта се приема в условни единици за скорост.

Ако се използва 7-битова ШИМ за генериране на напрежението на двигателя (вижте по-долу), тогава за изчисляване К моторстойността на номиналното напрежение е 128 условни единици напрежение.

празен ход w xx, посочени в паспортните данни на двигателя, трябва да се преразчетат в конвенционални единици за скорост Vxxсе определя от начина, по който е внедрен сензорът за скорост.


Да предположим например, че се използва инкрементален енкодер за измерване на скоростта, разположен на вала на двигателя и имащ 512 марки на оборот. Нека скоростта в условни единици се измерва като брой марки за цикъл на изчисление D T. Нека изчислителният цикъл, получен чрез оценка на производителността на алгоритъма, е равен на 0,001 сек. Оставете двигателя да работи на празен ход w xx=5000 оборота в минута.

Нека преведем скоростта на двигателя в сензорни марки, получаваме: 5000x512 = 2560000 марки / мин. Нека преобразуваме минутите в цикли на изчисление:

Ако параметрите на двигателя са неизвестни, тогава скоростта на празен ход се определя експериментално. За да направите това, на празен ход се прилага максимално напрежение към двигателя и се вземат показания от сензора за скорост V xx.


Механична времеконстанта T m зависи от инерционния момент на вала на двигателя, скоростната кутия, инерцията изпълнително устройство. Обикновено не е възможно да се изчисли стойността му аналитично. Затова се измерва експериментално.

За да направите това, максималното напрежение се прилага рязко към двигателя при номиналния му товар и преходният процес на промяна на скоростта се премахва V(t).


Скоростта се взема от сензора за скорост в отделни моменти, записва се в RAM паметта на микропроцесора и след това се прехвърля към персонален компютър. Персоналният компютър реконструира графиката за промяна на скоростта V(t)(фиг. 3).




Ориз. 3. Преходен процес в постояннотоков двигател.

Според преходната графика е възможно да се определи, първо, скоростта на празен ход V xx, и второ, регулираното време t p. Контролното време се определя от крайното време на преходния процес (времето, когато кривата на преходния процес се различава с по-малко от 1% от стойността в стационарно състояние).


Ако пренебрегнем малкото влияние на електрическата времеконстанта T e, обикновено с порядък по-малък от механичната времева константа T m, тогава преходният процес в DC двигател може да се счита за апериодичен с константа T m.


Известно е, че времето на един апериодичен преходен процес е пет пъти по-дълго от неговата времеконстанта. Тези.:

Следователно за нашия случай получаваме:

В нашия случай контролното време t p, съдейки по графиката, е равно на 1,5 сек. След това механичната времева константа T m= 1,5/5 = 0,3 сек.

По този начин, след като начертахме графиката на преходния процес, намираме механичната времева константа T m.


Електрическа времеконстантаT e определя инерцията на намагнитването на котвата на двигателя и е равна на отношението на индуктивността на котвата на двигателя към съпротивлението на неговата намотка:

На практика параметрите на индуктивността на котвата са трудни за измерване и след това те вземат електрическата времева константа с порядък по-малък от механичната времева константа:

Това важи за повечето двигатели.

Изчисляване на коефициентите на PID регулатора.

За да се изчислят коефициентите на PID регулатора, трябва да се реши обратната задача на динамиката. За да направим това, ние се абстрахираме от PID контролера. Ще приемем, че структурата на контролера, т.е. неговата трансферна функция W p(s) , ни е непознат. За това е известна предавателната функция на контролния обект Удв(с)(фиг. 4).


Ориз. 4. Първоначална схема за изчисляване на контролера за постояннотоков двигател.

Записваме предавателната функция на затворената система W s (с):


Нека да определим какъв преходен процес в системата ще ни подхожда? Ние сме доста доволни от апериодичния преходен процес в системата. Ето как системата трябва да реагира на промените в скоростта и натоварването.

Нека желаната времеконстанта на преходния процес Tще бъдат приблизително равни T m. Тези. предавателна функция на желаната система w(с) е равно на:

Нека приравним трансферната функция на затворената система към трансферната функция на желаната система:

Чрез прости математически трансформации, ние изразяваме от тук израза за предавателната функция на регулатора W p(с):

Заместете стойността W двигател(с):




Нека въведем коефициентите:

Получаваме:

Не е трудно да се види, че току-що получихме коефициента ° С 1 , коефициент пред интегралната връзка СЪС 2 и коефициента пред диференциалното звено ° С 3 . Тези. получихме класическата структура на PID контролера с параметри K p=СЪС 1 , К и=° С 2 и K d=° С 3 :

Реализация на ПИД регулатор на цифров микропроцесор

Системите с PID контролери в момента се изпълняват само цифрово, а изчисляването на законите за управление се извършва от евтини микропроцесори от серията AVR или MCS -51. Имайте предвид, че микропроцесорите са цели числа и не поддържат операции с плаваща запетая. Това изисква програмистът да адаптира съответно алгоритмите.


В PID система скоростта на двигателя се измерва с помощта на сензор. Реалната скорост се измерва в цели числа условни единици скорост. Обикновено конвенционалните единици за скорост се избират по такъв начин, че скоростта в c.u. се променя в диапазона от -127 до 127 (един байт), в екстремни случаи от -15 до 15 (скоростта се взема с резерв). Но във всеки случай броят на увеличенията на скоростта не трябва да бъде по-малък от необходимия брой скорости.


Скоростта може да се измерва от следните сензори:

Посочената скорост се въвежда в систематав същите условни единици като реалната скорост. Зададената скорост обикновено се предава от контролен процесор от по-високо ниво или персонален компютър и се съхранява в съответните клетки на паметта на микропроцесора.


Добавител за обратна връзкаизважда от зададената скорост V дупереална скорост Vи получава така наречения сигнал за грешка д:

Като се има предвид, че скоростта V дупеИ Vса цели числа в диапазона от -127 до 127, тази операция се изпълнява доста просто на микропроцесор с цели числа. Трябва да се гарантира, че резултатът. Ако e<-127 , то e =127, а если e >12 7, тогава e = 127.


Сигнал за грешка двлиза на входа на ПИД регулатора, т.е. на пропорционална връзка, интеграл и диференциал.


пропорционална връзкагенерира изходен сигнал y pчрез умножаване на моментния сигнал за грешка с коефициент K p.

Коефициент K pобикновено представлява нецялочислена стойност между 0,5 и 2. Следователно, за да умножите цяло число с един байт дза този коефициент използвайте таблицата К П,аз, който се изчислява предварително:

За аз =-127...127

Освен това числата в таблицата отчитат ограничението за резултата, което също трябва да се окаже еднобайтово, без да надвишава стойността 127. Тоест, ако резултатът от умножението е по-голям от 127, тогава го вземете равен на 127 и ако е по-малко от -127, тогава го приемете равно на -127 .

Програмистите трябва да разберат, че процесорът счита числото със знак азкато неподписан индекс на таблица, така че елементите на таблицата с индекси от -128 до -1 всъщност ще бъдат в диапазона на индекса от 128 до 255.

След това умножете по коефициента K pзаменен от избор на елемент от таблицата К П,азс индекс д:

Таблицата обикновено се изчислява на персонален компютър и се въвежда в паметта на микропроцесора.


интегрална връзкагенерира изходен сигнал y ичрез интегриране на сигнала за грешка дпо време и умножение по коефициент К и.

Тук: T- време от започване на работа.

Цифровият микропроцесор изчислява интеграла чрез поетапно интегриране със стъпка, равна на тактовия цикъл на таймера D T. Така за дискретния случай формулата се заменя с:

Тук k е броят на циклите на изчисление, които са изминали от началото на работата.

Помислете за сбора на всички дк. По принцип това е просто сбор от всички стойности д,получени при всеки цикъл. Тази сума се нарича интегрална сума. С (да не се бърка с с - операторът на Лаплас). Интегралната сума се прилага като глобална променлива и се увеличава при всеки цикъл с текущата стойност на сигнала за грешка д:

При изчисляване на PID регулатора, коеф К иобикновено между 0,05 и 2. Цикъл на изчисление D Tварира от 0,0001 до 0,002 сек. По този начин коефициентът К ид Tе от 5·10 -6 до 4·10 -3 . защото този коефициент е много по-малък от 1, тогава възниква проблемът с целочисленото умножение по него, тъй като след умножението винаги ще бъде нула.

За да разрешим този проблем, нека се опитаме да умножим коефициента К ид Tза някакво голямо число А , и разделете интегралната сума на същото число:

Обозначете продукта К ид T · А чрез коефициента б :

Да изберем число А , кратно на 256 хкъм съотношението б беше в диапазона от 0,05 до 5.


За да се изчисли съотношението S/A , разширете знака на числото С :

    прилагане на 16-битово изчисление С, Ако А =256;

    прилагане на 24-битово изчисление С, Ако А =256 2 ;

    прилагане на 32-битово изчисление С, Ако А =256 3 .

Не е трудно да се приложи добавяне към 16, 24 или 32-битово подписано число С подписано 8-битово число д. Не забравяйте, че ако дАко е положителен, тогава знаковото разширение ще запълни битовете от висок ред с нули, а ако е отрицателно, тогава битовете от висок ред ще бъдат запълнени с единици. За да ограничим натрупването на интегралната сума, прилагаме горна и долна граница. Това обикновено се прави по следния начин: ако най-значимият (знаков) бит не е равен на предпоследния бит, тогава нарастването на интегралната сума трябва да бъде спряно.


Спомнете си, че делението на всяко число на числото 256 хе еквивалентно на изместване надясно с хбайта вдясно. Нека използваме това правило. Вземете само старшия байт на интегралната сума С : в случай на 16-битово броене това е еквивалентно на изместване с един байт, в случай на 24-битово броене - с два байта, в случай на 32-битово броене - с три байта.

По този начин:

Където: С Старши- старши байт на числото С .

Умножение с множител б реализират под формата на таблица б аз, подобно на изчисляването на коефициента на пропорционалната връзка:


диференциална връзка

Производната схема изчислява изходния сигнал y d - e 0 реализираме под формата на таблица ° С аз, както при изчисляването на пропорционалната връзка:

Акумулатор на ПИД контролера

Суматорът след PID контролера добавя моментните стойности на сигналите y p, y иИ y dи генерира изходен сигнал г:

Когато сумирате, трябва да се уверите, че резултатът е в диапазона от -127 до +127, като приложите например 16-битово сумиране. Ако резултатът е по-голям от 127, той трябва да се приеме равен на 127, а ако е по-малък от -127, тогава равен на -127.

PWM сигналът се генерира автоматично от AVR микропроцесорите. Един микропроцесор може да генерира до 3 хардуерни PWM сигнала. В допълнение, PWM сигналът може да бъде генериран програмно от таймер.

Удобно е да се формира 7-битова ШИМ. В този случай превключвателят на захранването за управление може да бъде свързан съгласно схемата, показана на фиг. 4.




Ориз. 4. Начинът за свързване на превключвателя на захранването към изхода PWM.

Висок (знаков) бит на резултата гсе извежда през всеки I / O щифт към един от входовете на превключвателя на захранването, а останалите 7 бита (последният бит е настроен на нула) без никакво преобразуване могат да бъдат заредени в регистъра за формиране на прекъсване на PWM.

Нека го докажем.

Q.E.D.

Можете значително да подобрите точността на регулиране, като приложите закона за PID (закон за пропорционално-интегрално-диференциално регулиране).
За прилагане на PID закона се използват три основни променливи:
P – пропорционална зона, %;
I – време на интегриране, s;
D е времето на диференциация, s.
Ръчната настройка на PID регулатора (определяне на стойностите на параметрите P, I, D), която осигурява необходимото качество на регулиране, е доста сложна и рядко се използва на практика. PID контролерите от серията UT/UP осигуряват автоматична настройка на PID параметрите за конкретен контролен процес, като същевременно запазват възможността за ръчна настройка.

Пропорционална
В пропорционалната лента, определена от коефициента P, управляващият сигнал ще се променя пропорционално на разликата между зададената и действителната стойност на параметъра (несъответствие):

управляващ сигнал = 100/P E,

където E е несъответствието.
Коефициентът на пропорционалност (усилване) K е обратно пропорционален на P:

Пропорционалната лента се определя по отношение на зададената контролна работна точка и в рамките на тази лента управляващият сигнал се променя от 0 до 100%, т.е. ако действителната стойност и зададената точка са равни, изходният сигнал ще има стойност от 50%.

където P е пропорционалната зона;
ST - зададена точка на регулиране.
Например:
диапазон на измерване 0…1000 °С;
контролна задание ST = 500 °С;
пропорционална зона P = 5%, което е 50 °C (5% от 1000 °C);
при температурна стойност от 475 °C и по-ниска, контролният сигнал ще има стойност от 100%; при 525 °C и повече - 0%. В диапазона от 475…525 °C (в пропорционалната лента) управляващият сигнал ще се променя пропорционално на стойността на несъответствието с коефициент на усилване K = 100/P = 20.
Намаляването на стойността на пропорционалната лента P увеличава реакцията на контролера при несъответствие, т.е. малко несъответствие ще съответства на по-голяма стойност на управляващия сигнал. Но в същото време, поради голямото усилване, процесът придобива осцилационен характер около зададената стойност и не може да се постигне прецизен контрол. При прекомерно увеличаване на пропорционалната лента контролерът ще реагира твърде бавно на полученото несъответствие и няма да може да следи динамиката на процеса. За да се компенсират тези недостатъци на пропорционалното управление, се въвежда допълнителна времева характеристика - интегралната съставка.

интегрален компонент
Определя се от времеконстантата на интегриране I, функция е на времето и осигурява промяна в усилването (изместване на пропорционалната лента) за даден период от време.


управляващ сигнал = 100/P E + 1/I ∫ E dt.

Както може да се види от фигурата, ако пропорционалният компонент на закона за управление не осигурява намаляване на несъответствието, тогава интегралният компонент започва постепенно да увеличава печалбата през периода от време I. След период от време I този процес се повтаря. Ако несъответствието е малко (или бързо намалява), тогава усилването не се увеличава и, ако стойността на параметъра е равна на определената настройка, приема някаква минимална стойност. В тази връзка интегралният компонент се нарича функция за автоматично изключване на управлението. В случай на PID управление, стъпковата реакция на процеса ще бъде флуктуации, които постепенно намаляват към зададената точка.

Производен термин
Много управляващи обекти са доста инерционни, т.е. имат забавяне в отговор на приложеното действие (мъртво време) и продължават да реагират след премахване на управляващото действие (време на забавяне). PID регулаторите на такива обекти винаги ще закъсняват с включването/изключването на управляващия сигнал. За да се елиминира този ефект, се въвежда диференциална съставка, която се определя от времеконстантата на диференциране D, и се осигурява пълно прилагане на закона за PID управление. Диференциалният компонент е времевата производна на несъответствието, т.е. той е функция на скоростта на промяна на контролния параметър. В случай, че несъответствието стане постоянна стойност, диференциалната компонента престава да влияе на управляващия сигнал.

управляващ сигнал = 100/P E + 1/I ∫ E dt + D d/dt E.

С въвеждането на диференциалния компонент контролерът започва да отчита мъртвото време и времето на забавяне, променяйки управляващия сигнал предварително. Това прави възможно значително намаляване на колебанията на процеса около зададената стойност и постигане на по-бързо завършване на преходния процес.
По този начин, когато генерират управляващ сигнал, PID регулаторите вземат предвид характеристиките на самия обект на управление, т.е. анализирайте несъответствието за величината, продължителността и скоростта на промяната. С други думи, ПИД регулаторът "предвижда" реакцията на регулирания обект на управляващия сигнал и започва да променя управляващото действие не при достигане на зададената стойност, а предварително.

5. Трансферната функция на коя връзка е представена: K (p) \u003d K / Tr