Instrukcja do ćwiczenia nr 3 z Laboratorium Automatyki
Ćwiczenie 3.
Struktury regulatora cyfrowego PID – sterownik cRIO
1
1
Instrukcja do ćwiczenia nr 3 z Laboratorium Automatyki
1. Cel ćwiczenia
Celem ćwiczenia jest:
•
zapoznanie się z regulatorem cRIO9014 oraz pakietem LabView
•
zapoznanie się ze sposobami realizacji cyfrowych regulatorów PID
•
zbadanie wpływu nastaw regulatora i czasu próbkowania na przebiegi wielkości regulowanej
•
poznanie metody Zieglera-Nicholsa doboru nastaw regulatora.
2. Regulator cyfrowy PID
Regulatory cyfrowe dzięki powszechnemu zastosowaniu sterowników mikroprocesorowych i komputerów we
współczesnych układach automatyki, są najczęściej spotykanym obecnie przykładem sterowania dyskretnego.
Przykładowy schemat układu regulacji z regulatorem cyfrowym jest pokazany na rys. 1. W podanym
przykładzie w skład układu wchodzą:
•
układ pomiarowy, dokonujący pomiaru ciągłego sygnału wejściowego y(t) obiektu regulacji i
wytwarzający dyskretną postać tego sygnału y(k);
•
węzeł sumacyjny wytwarzający dyskretny sygnał uchybu regulacji, stanowiący różnicę między pewną
wartością zadaną sygnału wyjściowego obiektu a wartością zmierzoną e(k)=yzad(k)-y(k);
•
dyskretny algorytm regulacji, który na podstawie dyskretnych wartości uchybu regulacji e(k)
wypracowuje dyskretne wartości sygnału sterującego u(k);
•
układ wykonawczy, który na podstawie dyskretnych wartości sygnału sterującego u(k), obliczonych
przez algorytm regulacji, pozwala uzyskać sygnał sterujący u(t) stanowiący funkcję czasu zdolną do
fizykalnego oddziaływania na obiekt regulacji.
Rys. 1. Układ regulacji z regulatorem cyfrowym.
3. Struktury cyfrowych regulatorów PID
Uniwersalnym algorytmem regulatorów o działaniu ciągłym jest algorytm PID, określany jako działanie
proporcjonalno – całkująco – różniczkujące opisywany równaniem.
2
2
Instrukcja do ćwiczenia nr 3 z Laboratorium Automatyki
+
+
=
∫
t
D
I
p
dt
t
de
T
d
e
T
t
e
k
t
u
0
)
(
)
(
1
)
(
)
(
τ
τ
(1)
Dyskretyzacja tego algorytmu polega na zastąpieniu sygnałów ciągłych ich wartościami dyskretnymi
wyznaczonymi dla chwil t=kT
p
, gdzie T
p
jest okresem próbkowania
)
(
)
(
k
u
t
u
p
kT
t
=
=
)
(
)
(
k
e
t
e
p
kT
t
=
=
∑
∫
=
=
≈
k
i
p
kT
t
t
T
i
e
d
e
p
0
0
)
(
)
(
τ
τ
(2)
p
kT
t
T
k
e
k
e
dt
t
de
p
)
1
(
)
(
)
(
−
−
≈
=
Wynika stąd następująca postać tego algorytmu, nadająca się do zastosowania w układach cyfrowego
przetwarzania informacji:
(
)
−
−
+
+
=
∑
=
k
i
p
D
I
p
p
k
e
k
e
T
T
i
e
T
T
k
e
k
k
u
0
)
1
(
)
(
)
(
)
(
)
(
(3)
Algorytm dyskretnego regulatora PID może być realizowany w dwóch różnych strukturach: równoległej i
szeregowej.
3.1. Struktura równoległa
Strukturę równoległa regulatora PID buduje się w następujący sposób. Wprowadza się oznaczenie
∑
−
=
=
−
1
0
)
(
)
1
(
k
i
I
p
p
i
e
T
T
k
k
S
(4)
Wówczas
)
(
)
1
(
)
(
k
e
T
T
k
k
S
k
S
I
p
p
+
−
=
(5)
i algorytm można zapisać jako
3
3
Instrukcja do ćwiczenia nr 3 z Laboratorium Automatyki
(
)
=
+
−
−
+
=
=
+
−
−
+
=
=
+
−
−
+
=
)
(
)
1
(
1
)
(
)
(
)
1
(
)
(
)
(
)
(
)
1
(
)
(
)
(
)
(
k
S
k
e
T
T
k
T
T
k
e
k
k
S
k
e
T
T
k
k
e
T
T
k
k
e
k
k
S
k
e
k
e
T
T
k
e
k
k
u
p
D
p
p
D
p
p
D
p
p
D
p
p
p
D
p
(6)
Na podstawie zależności (6) można narysować schemat blokowy dyskretnego algorytmu regulatora PID
zrealizowanego w strukturze równoległej (rys. 2).
Rys. 2. Struktura równoległa dyskretnego regulatora PID.
W praktycznych realizacjach algorytmu regulatora należy uwzględnić jeszcze ograniczenia sygnału
wyjściowego. Nie wystarczy w tym celu zastosowanie zwykłego „obcięcia” sygnału wyjściowego o wartości
granicznych, bo swobodne działanie części całkującej regulatora może w takiej sytuacji doprowadzić do
nadmiernego wzrostu wewnętrznego sygnału, uniemożliwiając prawidłowy powrót sygnału wyjściowego do
strefy działania między wartościami ograniczającymi. Jest to tzw. efekt windup (nakręcania się).
Przeciwdziałanie efektowi windup polega na wprowadzeniu układu anti-windup, modyfikującego odpowiednio
akcję całkującą regulatora w czasie, gdy jego sygnał wyjściowy osiąga wartości ograniczenia. Schemat blokowy
dyskretnego algorytmu regulatora PID zrealizowanego w strukturze równoległej z układem anti-windup
pokazany został na rys. 3.
4
4
Instrukcja do ćwiczenia nr 3 z Laboratorium Automatyki
Rys. 3. Struktura równoległa dyskretnego regulatora PID z układem anti-windup.
3.2. Struktura szeregowa
Strukturę szeregową algorytmu dyskretnego regulatora PID buduje się w następujący sposób. Po wprowadzeniu
oznaczenia
∑
=
=
k
i
i
e
k
S
1
)
(
)
(
(7)
można zapisać
)
1
(
)
(
)
(
−
−
=
k
S
k
S
k
e
(8)
Wzór (3) zapisuje się dwukrotnie – dla chwili k oraz chwili k-1
(
)
−
−
+
+
=
)
1
(
)
(
)
(
)
(
)
(
k
e
k
e
T
T
k
S
T
T
k
e
k
k
u
p
D
I
p
p
(9)
(
)
−
−
−
+
−
+
−
=
−
)
2
(
)
1
(
)
1
(
)
1
(
)
1
(
k
e
k
e
T
T
k
S
T
T
k
e
k
k
u
p
D
I
p
p
(10)
Po odjęciu wyrażeń (9) i (10) stronami od siebie otrzymuje się wyrażenie określające przyrost sygnału
sterującego (wyjściowego regulatora)
)
2
(
)
1
(
)
(
)
2
(
)
1
(
2
1
)
(
1
)
1
(
)
(
)
(
2
1
0
−
+
−
−
=
=
−
+
−
+
−
+
+
=
=
−
−
=
∆
k
e
q
k
e
q
k
e
q
k
e
T
T
k
e
T
T
k
e
T
T
T
T
k
k
u
k
u
k
u
p
D
p
D
p
D
I
p
p
(11)
gdzie:
5
5
Instrukcja do ćwiczenia nr 3 z Laboratorium Automatyki
p
D
p
p
D
p
p
D
I
p
p
T
T
k
q
T
T
k
q
T
T
T
T
k
q
=
+
−
=
+
+
=
2
2
1
1
1
0
(12)
Na podstawie zależności można narysować schemat blokowy dyskretnego regulatora PID zrealizowanego w
strukturze szeregowej (rys. 4).
Rys. 4. Struktura szeregowa dyskretnego regulatora PID.
Ponieważ algorytm ma charakter przyrostowy i nie występuje w nim człon obdarzony pamięcią, więc realizacja
układu anti-windup jest bardzo prosta, gdyż polega na powstrzymaniu sumowania przyrostów w sytuacji, gdy
sygnał wyjściowy osiąga ograniczenie. Schemat blokowy dyskretnego algorytmu regulatora PID zrealizowanego
w strukturze równoległej z układem anti-windup pokazany został na rys. 5.
Rys. 5. Struktura szeregowa dyskretnego regulatora PID z układem anti-windup.
4. Nastawy regulatora, interakcja
Typowy regulator cyfrowy PID charakteryzują następujące wielkości:
T
p
– okres próbkowania – określający równoodległe chwile czasowe t=kT
p
dla których określone są wartości
dyskretne wszystkich sygnałów
6
6
Instrukcja do ćwiczenia nr 3 z Laboratorium Automatyki
k
p
– współczynnik wzmocnienia. Jest on ilorazem wartości zmiany sygnału wyjściowego, do zmiany sygnału
wejściowego. Stałą tą wyraża się także za pomocą zakresu proporcjonalności określonego wzorem
[%]
100
1
⋅
=
p
p
k
x
(13)
oznaczającego procentową w stosunku do pełnego zakresu, zmianę wielkości e potrzebną do wywołania pełnej
zmiany wielkości wyjściowej regulatora.
T
i
– czas zdwojenia. Jest to czas potrzebny na to, aby sygnał będący rezultatem działania członu całkującego
zrównał się z działaniem części proporcjonalnej, po podaniu na wejście regulatora PI sygnału skokowego
(Rys.6).
T
d
– czas wyprzedzenia który charakteryzuje intensywność działania członu różniczkującego. Można go określić
podając na wejście regulatora PD sygnał narastający liniowo. W chwili czasowej T
d
sygnał będący wynikiem
działania części proporcjonalnej zrówna się z działaniem członu różniczkującego (Rys. 7).
Rys. 6. Odpowiedź skokowa regulatora PI
na sygnał skokowy
Rys. 7. Odpowiedź regulatora PD
na sygnał linowy
Struktury przedstawione na w punkcie 2 niniejszej instrukcji powstały w wyniku dyskretnej realizacji regulatora
o działaniu proporcjonalno – całkująco – różniczkującym, opisanego równaniem (1), przedstawionego na rys. 8.
Rys. 8. Regulator PID bez interakcji
Rys. 9. Regulator PID z interakcją
7
7
czas
e, u
składowa P
składowa I
u
(wyjście)
jako
e (wejście)
T
i
czas
e, u
składowa D
składowa P
u
(wyjście)
jako
e (wejście)
T
d
Instrukcja do ćwiczenia nr 3 z Laboratorium Automatyki
Istnieją jeszcze inne możliwości zrealizowania regulatorów PID. Przykład pokazany został na rys. 9. ilustruje
równanie
∫
+
+
=
t
D
I
dt
t
de
T
d
e
T
t
Ke
t
u
0
)
(
)
(
1
)
(
)
(
τ
τ
(14)
które po dyskretyzacji przyjmie postać
(
)
∑
=
−
−
+
+
=
k
i
p
D
I
p
k
e
k
e
T
T
i
e
T
T
k
Ke
k
u
0
)
1
(
)
(
)
(
)
(
)
(
(15)
w którym współczynnik K jest parametrem odpowiadającym za wzmocnienie składowej proporcjonalnej.
Chcąc przejść do postaci (3) otrzymamy
(
)
(
)
(
)
−
−
+
+
=
=
−
−
+
+
=
=
−
−
+
+
=
∑
∑
∑
=
=
=
k
i
p
D
I
p
p
k
i
p
D
I
p
k
i
p
D
I
p
k
e
k
e
T
T
i
e
T
T
k
e
k
k
e
k
e
KT
T
i
e
KT
T
k
e
K
k
e
k
e
T
T
i
e
T
T
k
Ke
k
u
0
0
0
)
1
(
)
(
'
)
(
'
)
(
)
1
(
)
(
)
(
)
(
)
1
(
)
(
)
(
)
(
)
(
(16)
gdzie
K
T
T
KT
T
K
k
D
D
I
I
p
=
=
=
'
'
'
(17)
Zgodnie z powyższym wyprowadzeniem zmiana parametru k
p
’ regulatora możliwa jest za pomocą zmiany
parametru K. Ponadto zmiana ta pociąga także za sobą zmianę pozostałych parametrów regulatora T
I
’ oraz T
D
’.
Zjawisko polegające na tym, że zmiana wartości elementu mającego wpływ na pewną nastawę powoduje
jednocześnie niepożądaną zmianę innej nastawy to interakcja. Schemat blokowy dyskretnego algorytmu
regulatora PID zrealizowanego w strukturze równoległej z interakcją pokazany został na (rys. 10).
Rys. 10. Struktura równoległa dyskretnego regulatora PID z interakcją.
5. Regulator cRIO
8
8
Instrukcja do ćwiczenia nr 3 z Laboratorium Automatyki
Regulator cRIO jest urządzeniem programowanym za pomocą graficznego środowiska Lab-View. Jest on
wyposażony w procesor 400MHz, 128MB DRAM, złącze USB, Ethernet 10/100Mb/s oraz RS232.
Program/algorytm sterowania może być wykonywany równocześnie na procesorze sterownika jak i w układzie
programowalnym FPGA o złożoności 3 miliona bramek logicznych. Rozszerzenie sterownika o dodatkowe
moduły sprawiło, że sterownik posiada dodatkowo m.in.
•
8 równoczesnych samplowanych wejść analogowych o szybkości 100kS/s i rozdzielczości 16 bitów
•
4 równocześnie uaktualniane wyjścia analogowe o zakresie prądowym 0-20mA, szybkości 100kS/s i
rozdzielczości 16 bitów
•
8 kanałowy, dwukierunkowy port wejść/wyjść cyfrowych o szybkości 100ns, 5V/TTL pracujący w
trybie sinking/sourcing
Rys. 11. Regulator cRIO firmy Natonal Instruments.
Zarządzanie regulatorem odbywa się z poprzez połączenie typu ethernet, za pomocą komputera PC pełniącego
rolę hosta. Oprócz budowy układu regulacji oraz zmiany parametrów regulatora, komputer ten można także
wykorzystać do zapisywania danych.
6. LabView
LabView (Laboratory Virtual Instrument Engineering Workbench) jest graficznym środowiskiem
programistycznym stworzonym przez National Instruments. Program LabVIEW jest nazywany przyrządem
wirtualnym (virtual instrument) lub krótko programem VI. Każda aplikacja VI używa elementy nastawcze, które
wprowadzają dane z interfejsu użytkownika lub innych źródeł oraz elementy prezentacyjne, które wyświetlają
dane wyjściowe na pulpicie interfejsu użytkownika lub wyprowadzają je do innych odbiorców. Program VI
składa się z dwóch komponentów: pulpitu i diagramu.
Pulpit (rys. 12) jest graficzną formą interfejsu użytkownika. Buduje się go za pomocą elementów kontrolnych i
prezentacyjnych, które stanowią odpowiednio końcówki wejściowe i wyjściowe programu VI. Elementami
kontrolnymi są pokrętła nastawcze, przyciski, przełączniki itp. Symulują one elementy nastawcze fizycznych
urządzeń i dostarczają danych wejściowych do diagramu VI. Do elementów prezentacyjnych zalicza się
9
9
Instrukcja do ćwiczenia nr 3 z Laboratorium Automatyki
wyświetlacze numeryczne, alfanumeryczne, LED-y, wyświetlacze graficzne (wykresy), tabele itp. Symulują one
elementy prezentacyjne fizycznych urządzeń i wyświetlają dane dostarczane przez diagram.
Diagram (rys. 13) jest zapisem kodu programu w języku graficznym G. Do zapisu programu wykorzystuje się
końcówki, węzły, przewody oraz konstrukcje sterujące:
Rys. 12. Pulpit programu VI
Rys. 13. Diagram programu VI
7. Obiekt
Pierwszy z dwóch komputerów PC składających się na stanowisko laboratoryjne pełni rolę „wirtualnego
zbiornika”. Wirtualne stanowisko składa się z głównego zbiornika magazynującego ciecz. Dopływ cieczy Q do
zbiornika za pomocą instalacji hydraulicznej zapewnia pompa wirnikowa P. Pompa oraz instalacja wprowadzają
łączne opóźnienie równe T
o
. Wypływ cieczy Q
1
zależny jest od położenia zaworu kulowego (parametr a) oraz
aktualnej wysokości h. Układ został wyposażony w przystawkę do pomiaru przepływu cieczy Q oraz
przetwornik poziomu h.
Przyrost objętości cieczy w chwili czasowej t określa równanie
)
(
)
(
)
(
1
t
Q
T
t
Q
dt
t
dV
o
−
−
=
,
(18)
w którym prędkość wypływu cieczy ze zbiornika Q
1
spełnia zależność
)
(
)
(
1
t
h
a
t
Q
⋅
=
,
(19)
Biorąc to pod uwagę, oraz uwzględniając objętoś cieczy w walcowy zbiorniku
)
(
)
(
2
t
h
r
t
V
⋅
=
π
(20)
otrzymamy równanie obiektu
)
(
)
(
)
(
2
o
T
t
Q
t
h
a
dt
t
h
r
−
=
⋅
+
⋅
π
,
(21)
w którym:
Q – wydajność pompy [m
3
/s]
T
o
– opóźnienie pompy i instalacji doprowadzającej ciecz [s]
r – promień zbiornika [m]
h – poziom cieczy [m]
10
10
Instrukcja do ćwiczenia nr 3 z Laboratorium Automatyki
a – opory wypływu, zależne m.in. od rodzaju cieczy i przekroju wypływu [m
2,5
/s]
ys.17. Schemat części obiektowej stanowiska regulacji poziomu cieczy.
Rys. 14. Schemat obiektu
Obiekt połączony jest z regulatorem poprzez kartę pomiarową NI PCI-6024E.
8. Stanowisko
Podstawowe komponenty układu regulacji zostały pokazane na rys. 15.
W składu układu regulacji wchodzą:
•
komputer PC – obiekt
•
regulator cRIO-9014
•
komputer PC – host
11
11
sterowanie
(wejście)
Q(t-To)
Q
1
(t)
zakłócenie
a
wypływ
h
r
wyjście
P
Q(t)
instalacja wprowadzająca opóźnienie To
Instrukcja do ćwiczenia nr 3 z Laboratorium Automatyki
Rys. 15. Schemat układu regulacji
Kolor czerwony - wirtualny obiekt sterowania, kolor niebieski – część sterująca
9. Program ćwiczenia
Ćwiczenie można podzielić na dwie części.
•
Badanie cyfrowego regulatora PID w skład której wchodzią: implementacja regulatora o strukturze
szeregowej i równoległej w środowisku LabVIEW, badanie odpowiedzi jednostkowej i odpowiedzi na
sygnał narastający liniowo, wpływ czasu próbkowania na przebiegi regulatora.
•
Praca regulatora w układzie regulacji w skład czego wchodzi: zbudowanie interfejsu graficznego
układu regulacji, implementacja regulatora cyfrowego PID na sterowniku cRIO, zbadanie wpływu
nastaw regulatora na przebiegi sygnału regulowanego, ręczny dobór nastaw regulatora, dobór nastaw
regulatora w oparciu o metodę Zieglera-Nicholsa i metodę przekaźnikową.
9.1. Badanie cyfrowego regulatora PID
12
12
Instrukcja do ćwiczenia nr 3 z Laboratorium Automatyki
Przy pomocy pakietu LabView i sterownika cRIO będą badane trzy struktury regulatora cyfrowego PID:
•
struktura równoległa dyskretnego regulatora PID – rys.2.
•
struktura szeregowa dyskretnego regulatora PID – rys.4.
•
struktura równoległa dyskretnego regulatora PID z interakcją – rys. 10.
Każdą z wymienionych struktur należy samodzielnie zbudować przy pomocy programu LabView. Opis
kolejnych czynności dla regulatora o strukturze równoległej został podany na końcu instrukcji.
Uruchomić aplikację Badanie regulatora
9.1.1. Regulator P
•
Zrealizować regulator typu P, zaobserwować odpowiedź regulatora dla wymuszenia skokowego i
wymuszenia narastającego liniowo. Odpowiedzieć na pytanie jak wyznaczyć wzmocnienie regulatora w
obu przypadkach. Eksperyment powtórzyć dla stałej próbkowania T
p
=0.1s.
9.1.2. Regulator PI
•
Zrealizować regulator PI o nastawach podanych przez prowadzącego np. k
p
i T
I
=5s, T
p
=0,1s. Ustawić
czas zapisu na 6s, zanotować odpowiedz regulatora na skok o wartości np. 15%. W oparciu o wykres
wyznaczyć wzmocnienie regulatora i stałą zdwojenia T
I
. Badanie powtórzyć dla czasu próbkowania
regulatora T
s
=0.01s.
•
Ustawić k
p
=1, T
i
=5s, T
p
=0.05s (wariant A). Podwoić wzmocnienie regulatora i wyznaczyć w oparciu o
wykres stałą T
i
. Czy w którymś z układów wystąpiła interakcja?
9.1.3. Regulator PD
•
Zrealizować regulator PD o nastawach np. k
p
=1, T
D
=5s, T
p
=0.2s, zanotować odpowiedzi regulatora na
sygnał skokowy i narastający liniowo o szybkości narastania np. 10%/s. W oparciu o otrzymane wyniki
wyznaczyć wzmocnienie regulatora oraz stałą wyprzedzenia T
D
. Zmienić czas próbkowania regulatora
na Ts=0.02s, wyznaczyć nastawy regulatora raz jeszcze.
•
Ustawić k
p
=1, T
D
=1s, T
p
=0.02s. Podwoić wzmocnienie regulatora i wyznaczyć w oparciu o wykres stałą
T
d
. Czy w którymś z układów wystąpiła interakcja?
•
Jak kształtują się odpowiedzi regulatora PD dla dziesięciokrotnie większego czasu próbkowania Ts.
9.1.4. Regulator PID
•
Zanotować odpowiedzi regulatora na sygnały skokowy oraz narastający liniowo, wytłumaczyć kształty
tych odpowiedzi.
13
13
Instrukcja do ćwiczenia nr 4 z Laboratorium Automatyki i Sterowania
9.2. Praca regulatora w układzie regulacji
Zamknąć aplikację Badanie regulatora.
Uruchomić aplikację Zbiorniki.
9.2.1. Ręczny dobór nastaw regulatora
Efektem działania regulatora proporcjonalnego (P) jest zmniejszenie czasu narastania i zmniejszenie (nie
eliminacja!) uchybu ustalonego. Eliminacji uchybu ustalonego można dokonać poprzez zastosowanie regulatora
z członem całkującym (I), niestety może wpływać niekorzystnie na przebiegi przejściowe. Na polepszenie
przebiegów przejściowych, a także zwiększenie zapasu stabilności oraz zmniejszenie przeregulowania może
mieć wpływ część różniczkująca (D). Wpływ zwiększania intensywności działania poszczególnych członów
regulatora pokazany został w tabeli 1. Zaznaczyć trzeba, że zależności te mogą być niedokładne, z tego powodu,
że zmiana jednaj z nastaw może zmienić efekt dwóch pozostałych.
W ramach ćwiczenia należy
•
sprawdzić wpływ nastaw na jakość przebiegów wielkości regulowanej
•
dobrać nastawy regulatora zapewniające przeregulowanie 5% oraz najszybszy czas narastania.
Tab.1. Wpływ nastaw regulatora PID na jakość regulacji.
intensywność członu
czas narastania
przeregulowanie
czas regulacji
uchyb ustalony
P
zmniejszy się
zwiększy się
mały wpływ
zmniejszy się
I
zmniejszy się
zwiększy się
zwiększy się
eliminuje
D
mały wpływ
zmniejszy się
zmniejszy się
mały wpływ
! co to jest przeregulowanie, uchyb ustalony,
9.2.2. Dobór nastaw wg reguł ZIEGLERA-NICHOLSA
W zamkniętym układzie regulacji należy przeprowadzić następujący eksperyment:
1.
Ustawić nastawy regulatora: k
p
=0, T
i
=∞, T
d
=0.
2. Ustawić wartość sygnału zadanego jako 50% wysokości zbiornika.
3.
Zwiększyć wartość nastawy k
p
.
4. Zaobserwować przebiegi,
•
jeżeli występują oscylacje gasnące - zwiększyć k
p
,
•
jeżeli występują oscylację niegasnące, a układ pracuje na ograniczeniu (wydajność pompy
przyjmuje wartość maksymalną lub minimalną) - zmniejszyć k
p
,
•
jeżeli amplituda oscylacji pozostaje stała – przejść do p. 5.
5.
Zmierzyć okres oscylacji (T
osc
).
14
14
Instrukcja do ćwiczenia nr 4 z Laboratorium Automatyki i Sterowania
6.
Zanotować wartość krytyczną wzmocnienia k
kr
=k
p
.
7. Obliczyć nastawy regulatora wg tabeli:
Tab.2. Dobór nastaw regulatora wg Zieglera Nicholsa.
Typ regulatora
k
p
=
T
i=
T
d=
P
0.5·k
kr
-------
------
PI
0.45·k
kr
0.85·T
osc
------
PID
0.6·k
kr
0.5·T
osc
0.125·T
osc
Zarejestrować odpowiedzi skokowe dla sygnały zadanego na poziomie 40% wysokości zbiornika. Zakręcając
zawór wypływu do połowy i odkręcając go ponownie, sprawdzić wpływ zakłóceń na jakość regulacji.
9.2.3. Dobór nastaw regulatora za pomocą metody przekaźnikowej.
W poprzedniej części instrukcji doprowadzaliśmy układ do stanu drgań ustalonych. Miało to na celu
wyznaczenie wzmocnienia krytycznego i okresu oscylacji, w oparciu o które określaliśmy nastawy regulatora.
Istnieje jednak inna metoda wyznaczenia wartości k
kr
i T
osc
, nie wprowadzająca tak dużych wahań wartości
wielkości regulowanej. W celu ustalenia wartości okresu drgań krytycznych T
osc
i wzmocnienia krytycznego k
kr
w układzie regulacji okresowo wyłączany jest moduł algorytmu PID, a przyłączany jest przekaźnik dwustanowy
(zał/wył), wymuszający oscylacje wartości zmiennej wyjściowej układu sterowania. Wspomniane dwie
wielkości opisują zachowanie się sterowanego procesu i wystarczają do obliczenia odpowiednich nastaw
parametrów pracy regulatora PID.
Rys. 16. Układ regulatora PID ze strojeniem za pomocą metody przekaźnikowej
15
15
Instrukcja do ćwiczenia nr 4 z Laboratorium Automatyki i Sterowania
D
H
u
ε
0
100%
H
Rys. 17. Charakterystyka statyczna przekaźnika dwupołożeniowego bez histerezy
Obliczenie wzmocnienia krytycznego k
kr
odbywa się zgodnie ze wzorem
a
b
k
kr
π
4
=
(22)
w którym b jest amplitudą wymuszającego przebiegu (wyjście przekaźnika), a jest amplitudą drgań wartości
sygnału wyjściowego, wokół wartości zadanej. Czas oscylacji T
osc
może być wyznaczony bezpośrednio z
wykresu sygnału wyjściowego, bądź sygnału sterującego.
W ramach eksperymentu należy:
1. Zastąpić regulator PID przekaźnikiem dwupołożeniowym o charakterystyce statycznej jak na rys. 17.
Sygnał zadany ustawić jako 50% wysokości zbiornika.
2.
Parametr D przekaźnika dwupołożeniowego należy ustawić tak, aby sygnał wyjściowy układu (poziom
cieczy) pokrył się ze wartością zadaną.
3.
Dobrać wartość parametru H przekaźnika tak, aby możliwe było w względnie określenie amplitud
drgań a i b oraz czasu oscylacji T
osc
(rys. 18 i 19).
4.
W oparciu o podany wzór wyznaczyć k
kr
.
5.
Wyznaczyć nastawy regulatora PID zgodnie z tabelą 2. zamieszczoną w punkcie 9.2.2. Zarejestrować
przebiegi.
6.
Wyznaczyć nastawy regulatora PID zgodnie z tabelą 3. zamieszczoną w punkcie. Zarejestrować
przebiegi.
Tab. 3. Nastawy zapewniające zapas amplitudy ΔA=0.5. i zapas fazy Δφ=45
o
.
Typ regulatora
k
p
=
T
i=
T
d=
16
16
Instrukcja do ćwiczenia nr 4 z Laboratorium Automatyki i Sterowania
PID
0.35·k
kr
0.76·T
osc
0.192·T
osc
Rys. 18. Drgania poziomu w zbiorniku podczas próby przekaźnikowej
Rys. 19. Sygnał sterujący – jego amplituda i okres
10. Pytania kontrolne
Układ regulacji z regulatorem cyfrowym (rozdział 2 + rys. 1)
Struktura równoległa cyfrowego regulatora PID (rys. 2)
Co to jest antiwindup i jak się go eliminuje (rozdział 3.1 + rys. 3)
Struktura szeregowa cyfrowego regulatora PID (rys. 4)
17
17
Instrukcja do ćwiczenia nr 4 z Laboratorium Automatyki i Sterowania
Nastawy (k
p
, T
D
, T
I
, T
p
) regulatora PID (rozdział 5 + rys. 6 i 7)
Dobór nastaw regulatora PID według reguł Zieglera-Nicholsa (rozdział 9.2.2)
Dobór nastaw regulatora PID w oparciu o metodę przekaźnikową (rozdział 9.2.3)
11. Literatura
[1]
Andrzej Dębowski „Automatyka. Podstawy teorii” WNT 2008
[2]
Andrzej Dębowski, „Procedury regulacyjne sterowników programowalnych”, Archiwum Process
Control Club (2001)
[3]
Bogdan Kasprzak „Podstawy programowania aplikacji w środowisku graficznym LabView”
http://kmeif2.kmeif.pwr.wroc.pl/elektron/interfejsy/labview/labv1a.htm
[4]
Janusz Kwaśniewski, „Praktyczna realizacja regulatora PID w sterownikach przemysłowych”,
Archiwum Process Control Club (2002)
[5]
Andrzej Ożadowicz, „Automatyczny dobór nastaw regulatora PID metodą Zieglera-Nicholsa”, www
[6]
H. Rasmussen, „Automatic tuning of PID-regulators” Aalborg University, Denmark, 2002
[7]
Łukasz Stec, „Regulatory PID (proporcjonalno-całkująco - różniczkujące) w sterownikach PLC”,
Biuletyn Automatyki nr 8 (2/1996)
18
18
Instrukcja do ćwiczenia nr 4 z Laboratorium Automatyki i Sterowania
Dodatek.
Implementacja cyfrowego regulatora PID (struktura szeregowa) na cRIO.
1. Uruchomić program LabVIEW poprzez skrót dostępny na pulpicie.
2. Utworzyć nowy projekt (Empty Project) i zapisać go stworzonym przez siebie katalogu.
W oknie eksploratora projektu widoczne są wszystkie przypisane do projektu urządzenia. Aktualnie jest tam tylko
Komputer-Host widniejący pod nazwą "My Computer"
3. Dodać do projektu regulator cRIO
Sygnał wejściowy regulatora podawany będzie na Moduł 2. (NI 9215 - Wejścia analogowe +-10V). Sygnał
wyjściowy regulatora pobierany będzie z modułu 4 (NI 9263 - wyjścia analogowe +-10V). Wszystkie moduły, w
19
19
Instrukcja do ćwiczenia nr 4 z Laboratorium Automatyki i Sterowania
tym oba wymienione przetworniki AC i CA są połączone i sterowane poprzez programowalny układ FPGA, który
trzeba odpowiednio zaprogramować. W tym celu należy:
4. Stworzyć nowy program vi, który będzie wykonywany na układzie FPGA. Zapisać program w tym samym
katalogu np. pod nazwą fpga_file.
5. Na pulpicie aplikacji (Front Panel - szare okno) umieścić elementy Numeric Control i Numeric Indicator. Są
one dostępne po naciśnięciu prawego klawisza w bibliotece Moldern/Numeric.
6. W oknie diagramu aplikacji (Block diagram - białe okno) stworzyć pętlę While Loop, w której należy umieścić
bloki wejścia i wyjścia - FPGA I/O Node. Wspomniane elementy znajdują się w bibliotece
Programing/Structures oraz Programing/FPGA IO i są dostępne po naciśnięciu prawego klawisza.
20
20
Instrukcja do ćwiczenia nr 4 z Laboratorium Automatyki i Sterowania
7. Skonfigurować bloki FPGA I/O Node (różowe) przypisując zgodnie z poniższym rysunkiem. Zmienić nazwy
bloków Numeric i Numeric2 (niebieskie) na Wejście i Wyście. Klikając prawym klawiszem myszki na bloku
Loop Condition (czerwony znak stopu w dolnej prawej części pętli While Loop), odpowiedzialnym za
przerwanie wykonywania pętli, wybrać opcję Create Constant. Powinna powstać i zmienna typu logicznego
mający wartość False (F).
8. Przy pomocy opcji Properties (po kliknięciu prawnym klawiszem myszki na bloku) zmienić typy
zmiennych bloków Wejście i Wyjście z Intiger na Fixed Point (stałoprzecinkowe).
21
21
Instrukcja do ćwiczenia nr 4 z Laboratorium Automatyki i Sterowania
9. Skompilować utworzony program, poprzez naciśnięcie białej strzałki (Run) w górnej części okna. Odczekać
5minut.
Korzystając z pulpitu aplikacji i programu "Badanie Regulatora" na drugim komputerze, sprawdzić poprawność
działania wejścia i wyjścia.
Kolejnym etapem będzie zaprogramowanie procesora sterownika. W tym celu należy:
10. Stworzyć nowy program vi, który będzie wykonywany przez procesor sterownika i zapisać go w tym samym
katalogu np. pod nazwą crio_file.
11. Korzystając z bloków umieszczonych w bibliotece Programing, Numeric i Timing stworzyć w diagramie
program zgodny z rysunkiem. Blok Waveform Chart jest dostępny w bibliotece Modern pulpitu aplikacji.
22
22
Instrukcja do ćwiczenia nr 4 z Laboratorium Automatyki i Sterowania
Należy sprawdzić poprawność działania regulatora. W tym celu należy uruchomić aplikację (biała strzałka) i
przeanalizować otrzymaną odpowiedz jednostkową.
Wejście i wyjście regulatora skojarzyć z wejściem i wyjściem fizycznym, skonfigurowanymi w punktach
poprzednich. W tym celu należy.
12. Umieścić na diagram bloczki Open FPGA VI Reference oraz Read/Write Control znajdujące się w bibliotece
23
23
Instrukcja do ćwiczenia nr 4 z Laboratorium Automatyki i Sterowania
FPGA Interface.
13. Skonfigurować blok Open FPGA VI Reference poprzez dwukrotne kliknięcie na nim lewym klawiszem
myszki i przypisanie aktualnie załadowanego do układu pliku.
14. Połączyć bloki i skonfigurować jak na rysunku.
24
24
Instrukcja do ćwiczenia nr 4 z Laboratorium Automatyki i Sterowania
15. Aplikację zapisać i uruchomić. Sprawdzić poprawność działania korzystając z programu Badanie regulatora.
Zwróćmy uwagę, że za każdym razem, gdy chcemy zmienić nastawy regulatora, konieczna jest zmiana w
diagramie oraz ponowne przekompilowanie programu. Kolejną czynnością będzie stworzenie panelu
operatorskiego, przy wykorzystaniu ekranu dotykowego. W tym celu należy:
16. Dołączy do projektu kolejne urządzenie, którym będzie TouchPanel NI TPC-2106T
17. Utworzyć nowy vi, który będzie wykonywany na Touch Panelu.
25
25
Instrukcja do ćwiczenia nr 4 z Laboratorium Automatyki i Sterowania
18. Z okna powstałego diagramu usuną pętlę Case oraz przycisk RUN
19. Na pulpicie aplikacji umieścić 4 kontrolki Numeric Control z biblioteki Modern/Control oraz Wykres
Waveform Chart z biblioteki Modern/Graph.
Wartości zmiennych kp, Ti, Td oraz Tp są na bieżąco przesyłane do regulatora cRIo poprzez siec Ethernet. Aby
było to możliwe należy wprowadzić tzw zmienne sieciowe. Zmienne te zostaną także wykorzystane do przesyłania
sygnałów wejściowego i wyjściowego regulatora.
20. W obrębie cRIO utworzy nową bibliotekę zmiennych i zapisać ją jako np. Nastawy.lvlib
21. W bibliotece tej stworzyć 4 zmienne sieciowe, nadając im nazwy kp, Ti, Td, Tp.
26
26
Instrukcja do ćwiczenia nr 4 z Laboratorium Automatyki i Sterowania
22. Zmienne te przeciągnąć myszką z okna eksploratora projektu do diagramu i zmienić ich tryb pracy na Write
oraz połączyć z odpowiednimi kontrolkami.
23. Utworzyć nową bibliotekę zmiennych o nazwie Sygnaly, następnie utworzy w nich zmienne o nazwach wej i
wyj oraz przeciągnąć ja do okna diagramu.
24. Za pomocą bloczku Bundle znajdującego się w bibliotece Programing/Cluster&Variant połączyć zmienne
sieciowe wej oraz wyj z blokiem Waveform Chart. Poprzez opcje Properties ustawić możliwość wyświetlania
dwóch wykresów (pierwsza zakładka, opcja 2 Plots shown).
27
27
Instrukcja do ćwiczenia nr 4 z Laboratorium Automatyki i Sterowania
25. Za pomocą eksploratora projektu otworzyć program vi przypisany do regulatora cRIO (crio_file.vi).
26. W miejsce wpisanych na stałe wartości Td, Tp, Ti, Td wstawić (przeciągnąć myszką z eksploratora projektu)
zmienne sieciowe z biblioteki Nastawy.
27. Usunąć blok Waveform Chart.
28. Podłączyć w odpowiednie miejsca zmienne z biblioteki Sygnaly.
29. W eksploratorze projektu należy skonfigurować połączenie z sterownika z Touch Panelem. W tym celu w
oknie eksploratora projektu naciskamy prawym klawiszem myszki na urządzeniu Ni TPC-2106T Device,
wybieramy opcję Properties, w zakładce General, w polu Connection wybieramy Service TCP/IP i podajemy
adres IP urządzenia.
Jeżeli wszystko zostało skonfigurowane poprawnie, po naciśnięciu przycisku Test powinniśmy zobaczyć
komunikat Service is running. Version 1.0.0.
30. Uruchomić obydwie aplikacje (crio_file i program TouchPanela), radośnie potwierdzając wszystkie
komunikaty.
W ramach sprawdzenia nabytych umiejętności należy samodzielnie zrealizować funkcje kasowania całki za
pomocą przycisku.
28
28