Politechnika Świętokrzyska Wydział Mechatroniki i Budowy Maszyn Centrum Laserowych Technologii Metali PŚk i PAN Zakład Informatyki i Robotyki Przedmiot:Podstawy Automatyzacji - laboratorium, rok I, sem. II, Specjalność: SUM - Inżynieria Produkcji, studia uzupełniające, 2002 2003. Ćwiczenie nr 3. Dobór parametrów regulatora - symulacja komputerowa 1. Wstęp Najprostszy układ automatycznej regulacji można przedstawić za pomocą schematu blokowego podanego na rys. 1.1. Na schemacie tym występują dwa bloki podstawowe, a mianowicie obiekt regulacji i regulator, które są podstawowymi elementami najprostszego układu regulacji. Pod pojęciem obiektu regulacji rozumiemy tę część układu automatycznej regulacji, na której własności nie mamy wpływu, gdyż jest narzucona. Regulatorem zaś jest pozostała część układu automatycznej regulacji o własnościach tak dobranych, aby zestawiony układ posiadał wymagane własności. W obiekcie jednowymiarowym wyróżniamy następujące sygnały, sygnał regulowany y, sygnał regulujący x, sygnały zakłócające z 1, z 2,..., z n. Rys 1.1 Schemat blokowy typowego układu automatycznej regulacji Sygnał regulowany lub sygnał wyjściowy y jest to ten sygnał, który mimo zmieniających się warunków pracy obiektu, czyli jak mówimy mimo przychodzących sygnałów zakłócających ma być utrzymywany stały w czasie lub zmieniać się według określonej funkcji wyznaczonej sygnałem x o, zwanym sygnałem sterującym lub sygnałem zadanym. Porównania sygnału regulowanego i sygnału sterującego dokonuje 1
się wtzw.węźle sumacyjnym. Otrzymana w tym węźle różnica x o y,czylitzw.sygnał błędu lub sygnał uchybu e, zostaje wprowadzona na wejście elementu zwanego regulatorem. Zadaniem regulatora jest taka zmiana sygnału regulującego lub sygnału wyjściowego x, aby sygnał błędu e był jak najmniejszy, czyli aby sygnał regulowany y różnił się jak najmniej od sygnału sterującego x o.nawyjściu obiektu znajduje się tzw. węzeł informacyjny umożliwiający pobranie z wyjścia obiektu sygnału regulowanego y potrzebnego do doprowadzenia tzw. pętlą sprzężenia zwrotnego do węzła sumacyjnego. Układ automatycznej regulacji tworzy więc tzw. układ zamknięty, przy czym chodzi w tym przypadku o jego zamknięcie wspomnianą pętlą sprzężenia zwrotnego. W przypadku gdy obiekt jest elementem wielowymiarowym, a więc o wielu sygnałach wejściowych i wyjściowych, regulator musi być również wielowymiarowy. Schemat blokowy układu automatycznej regulacji dla tego przypadku jest pokazany na rys 1.2. Klasyfikację układów automatycznej regulacji można przeprowadzić biorąc pod uwagę różne kryteria. Najczęściej spotyka się podziały dokonane ze względu na: zadanie, jakie spełnia dany układ, rodzaj występujących w nich elementów, sposób pomiaru wielkości regulowanej. Rys 1.2 Schemat blokowy wielowymiarowego układu automatycznej regulacji Podział układów regulacji automatycznej, ze względu na zadania jakie spełniają, można przeprowadzić rozpatrując charakter sygnału sterującego. W tej grupie można wyróżnić następujące typy układów: - układy stabilizacji automatycznej, Wukładach stabilizacji automatycznej sygnał sterujący ma stałą, raz nastawioną 2
wartość x o =const. W procesie regulacji układ ma za zadanie utrzymywać stałą wartość sygnału regulowanego y równą x o.przykładami takich układów mogą być: układ regulacji automatycznej prędkości obrotowej turbiny, napięcia generatora, temperatury pary i inne. - układy nadążne, Wukładach nadążnych sygnał sterujący x o jest nieznaną funkcją czasu. Zmiany sygnału sterującego x o nie zależą od procesu zachodzącego wewnątrz układu automatycznej regulacji, ale są wywołane zjawiskami występującymi poza układem regulacji. Przykładem takiego układu może być radarowy układ nadążny, układ wspomagający ruch kierownicy w samochodzie i inne. - układy regulacji programowej, Układ regulacji programowej jest szczególnym przypadkiem układu nadążnego. Z regulacją programową mamy do czynienia wtedy, gdy sygnał sterujący zmienia się według pewnego programu, określonego zadaną z góry funkcją czasu. - układy regulacji ekstremalnej, Regulację ekstremalną stosuje się wtedy, gdy przy zmianie wielkości regulującej w pewnym momencie wielkość regulowana osiąga ekstremum. Zazwyczaj położenie tego ekstremum nie jest stałe, lecz ulega przesuwaniu, spowodowanemu obecnością sygnałów zakłócających. Zadaniem układów regulacji ekstremalnej jest w takim przypadku utrzymywanie wielkości regulowanej możliwie blisko wartości ekstremalnej. 2. Regulator liniowy PID Regulator, to urządzenie w układzie automatycznej regulacji, które na podstawie wejściowego sygnału błędu e t (rys. 1.1) kształtuje sygnał wejściowy układu x t, by osiągnąć żądany efekt regulacji. Sygnał błędu nazywamy również uchybem regulacji. Jest on wyznaczany poprzez porównanie wartości zadanej x o t z sygnałem wyjściowym y t. Praktyczne zastosowanie w przemysłowych systemach regulacji znalazł regulator PID. Posiada on ciągłe wyjście i składa się z trzech różnych funkcjonalnie bloków: 3
proporcjonalnego (P), całkującego (I), różniczkującego (D). Poniżej przedstawiono transmitancję operatorową regulatora PID idealnego (2.1) i rzeczywistego (2.2): K PID s =k p 1 T i s T d s (2.1) K PID s =k p 1 T i s T d s s T 1 (2.2) gdzie: k p T i T d - wzmocnienie, - czas zdwojenia (stała czasowa akcji całkującej), - czas wyprzedzenia (stała czasowa akcji różniczkującej), T - stała czasowa. Regulator PID cechuje prosta konstrukcja oraz duża uniwersalność zastosowań. Przez lata dopracowano się również dużej niezawodności układu. Znajduje on zastosowanie głownie do stałowartościowej regulacji przepływu, temperatury, położenia, prędkości, ciśnienia, napięcia i innych. Podczas pracy regulator PID dąży do utrzymania zadanej wartości sygnału regulowanego, zależnie od wartości nastaw parametrów trzech bloków funkcjonalnych. Każdy z tych bloków kształtuje sygnał wyjściowy przy użyciu ściśle określonej funkcji mówimy, że regulator ma określoną akcję. Parametry regulatora nazywamy również nastawami. 3. Dobór nastaw regulatora liniowego PID Optymalizacja nastaw regulatora dla określonego układu regulacji bywa trudna i uciążliwa. Dużym ułatwieniem jest posługiwanie się charakterystykami logarytmicznymi obiektu oraz regulatora. Właściwy dobór nastaw pozwala otrzymać żądane wartości: statycznego błędu regulacji C ur, przeregulowania C mr, czasu regulacji t rr. 4
Rys.3.1 Sygnał wymuszający i odpowiedzi układu r 1 t - sygnał zadany, c 1 t - odpowiedź układu, ± - dopuszczalne odchylenie regulacji. W wyniku zastosowania w regulatorze wyłącznie akcji proporcjonalnej otrzymujemy regulator P. Wykorzystanie go nie eliminuje błędu statycznego, który zależy od wielkości wzmocnienia. Wielkość wzmocnienia wpływa również na szybkość działania oraz amplitudę sygnału wyjściowego. Większy parametr k p oznacza skrócenie czasu regulacji i wzrost amplitudy przebiegu wyjściowego. Regulator I otrzymujemy stosując wyłącznie akcję całkującą. Regulator ten reaguje na wszelkie odchyłki wolnozmiennego sygnału regulowanego. Likwiduje do zera błąd statyczny regulacji. Czas regulacji ulega wydłużeniu. Zwiększenie wzmocnienia z jednoczesnym zmniejszeniem wartości stałej zdwojenia powoduje wzrost akcji całkującej regulatora. Regulator D reaguje na każdą zmianę sygnału regulowanego. Skraca czas regulacji. Zmniejsza przeregulowanie. 5
Jak wcześniej wspomniano do doboru nastaw potrzebna jest znajomość charakterystyk obiektu i regulatora. Niestety w wielu przypadkach może stanowić to dużą trudność. Wzwiązku z tym opracowano metody przybliżone, które nie wymagają znajomości charakterystyk, a jedynie przeprowadzenia prostego doświadczenia. Sposób ten zwany jest metodą Zieglera-Nicholsa lub metodą inżynierską. Polega on na podłączeniu do obiektu regulatora nastawionego wyłącznie na akcję proporcjonalną z minimalną wartością wzmocnienia k p ( T i i T d 0 ). Następnie należy stopniowo zwiększać współczynnik wzmocnienia do wystąpienia w układzie oscylacji niegasnących. Współczynnik wzmocnienia dla oscylacji niegasnących określa się współczynnikiem wzmocnienia krytycznego k pkr, a okres oscylacji niegasnących okresem drgań niegasnących T osc. Po dokonaniu pomiaru współczynnika k pkr i okresu T osc można wyznaczyć wartości nastaw dla poszczególnych regulatorów: regulator P: k p =0.5 k pkr ; regulator PI: k p =0.45 k pkr, T i =0.85 T osc ; regulator PID: k p =0.6 k pkr, T i =0.5 T osc, T d =0.12 T osc ; Reguła Zieglera-Nicholsa ma znaczenie pomocnicze. Może stanowić bazę do wyprowadzenia doświadczalnego właściwych nastaw regulatora w układzie rzeczywistego obiektu. 4. Wyznaczanie odpowiedzi układu: obiekt - regulator PID na wymuszenie jednostkowe Przykład 4.1 -->s=poly(0,'s'); -->dom='c'; -->s=poly(0,'s'); -->str='[(s-1)/(s^2+5*s+1)]'; -->rep=x_dialog('obiekt regulowany',str); -->if rep==[] then return,end -->Plant=evstr(rep); -->Plant=syslin('c',Plant); -->P22=tf2ss(Plant); 6
-->[ny,nu,nx]=size(p22); -->defv=['-1.2','1','0.1']; -->while %t -->mode(1) -->if dom=='c' then -->title='parametry regulatora PID K(s)=Kp*(1+Ti/s+Ts*s)'; -->defv=x_mdialog(title,['kp=';'ti=';'ts='],defv); -->if defv==[] then warning('symulacja zatrzymana!');return; end -->Kp=evstr(defv(1));T0=evstr(defv(2));T1=evstr(defv(3)); -->if dom=='c' then -->Kpid=tf2ss(Kp*(1+T0/s+T1*s)); -->W=[1, -P22; Kpid,1]; -->Winv=inv(W); -->disp(spec(winv(2)),'pętla sprzężenia zwrotnego'); -->if maxi(real(spec(winv(2)))) > 0 then -->x_message('układ niestabilny!!!'); -->else -->x_message('układ stabilny!!!'); -->break; -->mode(-1) -->[Spid,Rpid,Tpid]=sensi(P22,Kpid); -->Tpid(5)=clean(Tpid(5)); -->disp(clean(ss2tf(spid)),'funkcja wrażliwości'); -->disp(clean(ss2tf(tpid)),'dopełnieniowa funkcja wrażliwości'); -->resp=['charakterystyka częstotliwościowa'; 'Charakterystyka czasowa']; -->while %t do -->n=x_choose(resp,'wybierz charakterystykę'); -->if degree(tpid(5))>0 then -->warning('niepoprawna funkcja przejścia!') 7
-->Tpid(5)=coeff(Tpid(5),0); -->Tpid(5)=coeff(Tpid(5)); -->select n; -->case 0 -->break -->case 1 -->mode(1) -->xbasc(1);xset("window",1);xselect();bode(tpid); -->mode(-1) -->case 2 -->if Plant(4)=='c' then -->mode(1) -->defv=['0.1','50']; -->title='wprowadź okres próbkowania i czas symulacji'; -->rep=x_mdialog(title,['okres próbkowania?';'czas symulacji? '],defv); -->if rep==[] then break,end -->dttmax=evstr(rep); -->dt=evstr(dttmax(1));tmax=evstr(dttmax(2)); -->t=0:dt/5:tmax; -->n1=x_choose(['charakterystyka skokowa?';'charakterystyka impulsowa?'],'symulacja:'); -->if n1==0 then -->warning('zatrzymano program!');return; -->if n1==1 then -->xbasc(1);xset("window",1);xselect(); -->plot2d([t',t'],[(csim('step',t,tpid))',ones(t')]) -->break -->if n1==2 then -->xbasc(1);xset("window",1);xselect(); -->plot2d([t',t'],[(csim('impul',t,tpid))',0*t']) -->break 8
-->mode(-1) 5.Przebieg ćwiczenia. Wyznacz odpowiedzi dowolnych układów na wymuszenie jednostkowe. Podaj wpływ parametrów k p, T i, T d na przeregulowanie, błąd statyczny i czas regulacji. 9