Uniwersalny regulator mikroprocesorowy LB-600 - informacje rozszerzone
- 1. Algorytmy regulacji
- 2. Regulacja predykcyjna
- 3. Regulacja pogodowa
- 4. Funkcja "BACKUP"
- 5. Dobór nastaw PID
- 5.1. Automatyczny dobór nastaw PID
- 5.2. Warunki poprawnego przeprowadzenia eksperymentu samostrojenia
- 5.3. Opis procedury samostrojenia
- 6. Regulacja obiektów nieliniowych
- 6.1. Algorytm PID FUZZY w regulatorze LB-600
- 7. Program dwustrefowy
- 8. Program czasowy (regulacja programowa)
- 9. W dodatku
Oprócz przyrządów przedstawionych w poprzedniej części opracowania, firma LAB-EL oferuje regulatory cyfrowe do zastosowań również w automatyce przemysłowej. Regulatory te, to: LB-600 i LB-625. Regulatory umożliwiają tworzenie własnych struktur sterowania i regulacji, co czyni je przydatnymi w wielu aplikacjach przemysłowych i nie tylko przemysłowych. W niniejszym dodatku przedstawione zostaną pewne specyficzne algorytmy, wybór których zależny jest od wiedzy użytkownika odnośnie dynamiki i specyfiki sterowanego procesu. Wszystkie przedstawione algorytmy stanowią podzbiór funkcji regulatora LB-600, nie wszystkie są dostępne w regulatorze LB-625.
Podstawowym algorytmem regulacji jest PID, realizacja, którego przy odpowiednim doborze nastaw jest skuteczna w większości przypadków.
Struktura algorytmu PID zawiera 3 składowe działania dynamicznego: proporcjonalną P (związaną ze współczynnikiem wzmocnienia proporcjonalnego kp ), całkową I (związaną ze współczynnikiem całkowania - czasem zdwojenia Ti) i różniczkową D (związaną ze współczynnikiem różniczkowania - czasem wyprzedzenia Td). Poszczególne składowe mogą być wyłączone przy odpowiednich nastawach i w ten sposób otrzymuje się uproszczone wersje algorytmu PID np. P, PI czy też PD. Istnieją dwie możliwości realizacji działania dynamicznego regulatora: wszystkie 3 składowe działania dynamicznego P, I, D są realizowane na sygnale odchyłki regulacji (uchybu regulacji):
jest to algorytm A - na sygnale odchyłki regulacji zrealizowana została jedynie składowa działania I, a pozostałe składowe P i D realizowane są na zmiennej procesowej X1:
jest to algorytm B gdzie: x1- zmienna
procesowa (wartość regulowana), uchyb (odchyłka) regulacji (
), SP - wartość zadana, Y - wartość sterowania,
k p - współczynnik wzmocnienia
regulatora, Ti - stała
czasowa zdwojenia (stała całkowania), Td
- stała czasowa wyprzedzenia (stała różniczkowania), 1/a-
współczynnik wzmocnienia różniczkowania 1/a=8.
Regulacja stałowartościowa,
gdzie wartość zadana SP jest ustawiana w regulatorze, stanowi podstawę
większości przypadków sterowania. Występuje jednak często konieczność
regulacji
stosunku dwóch wielkości np. stosunek gazu do powietrza w regulacji
temperatury
w wannach szklarskich.
Występują przypadki,
kiedy zmiana uchybu regulacji poza pewne granice może spowodować
wyjście
sterowania poza strefę stabilności. W takich przypadkach stosuje się
regulacje
PID z tzw. działaniem przełącznym.
Specyfika pewnych
procesów technologicznych wymaga niekiedy stosowania specjalnych
algorytmów
sterowania. Przedstawiony poniżej algorytm "feed forward" polega na
dodaniu
do sygnału sterujacego, sygnału z zewnętrznego źródła (w domniemaniu z
innej zmiennej procesu).
Wiele procesów regulacji szczególnie o charakterystyce nieliniowej wymaga stosowania algorytmów dynamicznych tzn. takich gdzie w funkcji zmian uchybu regulacji zmieniaja się parametry PID regulatora. Regulatory LB-600 i LB-625, posiadają w swoich bibliotekach dwa algorytmy tego typy. Algorytmy te to PID NL1, gdzie: oraz PID NL2, gdzie . Na rys. 6 przedstawione zostały charakterystyki obu algorytmów.
Do regulacji obiektów z opóźnieniami (spotykane zawsze, gdy ma się do czynienia z transportem mas np. wszelkiego rodzaju przepływy, regulacje parametrów fizykochemicznych (pH)) klasyczna regulacja PID daje wyniki nie zawsze zadawalające. W takich przypadkach często stosowane są korektory opóźniajace fazę o transmitancji:
Innym rozwiązaniem jest zastosowanie metody predyktora Smith'a, która polega na sztucznym zlikwidowaniu opóźnienia w pętli regulacyjnej. W rzeczywistości można zrealizować algorytm wg poniższego schematu (rys. 7) o transmitancji:
Rys.7. Schemat blokowy predyktora Smith'a |
Regulator predykcyjny ma w rzeczywistości strukturę bardziej praktyczną znaną pod nazwą PIR (PI Retard [opóźniać, zwalniać], w której występują tylko cztery parametry: k p,TI, tR oraz A.
Zakładając, że transmitancja G(s) obiektu została zidentyfikowana jako funkcja:
Widać zatem, że jeżeli przyjmie się: T I=T; tR=t; kp=1/k; to transmitancja obiektu regulowanego za pomocą regulatora PIR będzie miała postać:
tak więc, przy nastawach TI , tR, kp za pomocą wzmocnienia A można odpowiednio nastroić czas odpowiedzi układu regulacji.
Rys.8. Schemat blokowy algorytmu PIR |
Regulację zrealizowano w oparciu o podstawy teoretyczne. Teoretyczna temperatura zasilania i powrotu w zależności od temperatury zewnętrznej:
gdzie: j - względne obciążenie cieplne budynków,
jest to współczynnik mocy cieplnej,
wp - iloczyn wybranych współczynników;
w (w1, w2, w3) i p (p1,
p2, p3).
Do obliczeń przyjęto następujące wartości:
- temperatura wewnętrzna tw = 20°C
- temperatura zewnętrzna tzw = 20°C
- temperatura zasilania tz =90°C
- w1 wietrzność duża 1,000
- w2 wietrzność umiarkowana 0,925
- w3 wietrzność mała (cisza) 0,850
- p1 pochmurno1,000
- p2 zachmurzenie zmienne0,950
- p3 słonecznie 0,900
- tp temperatura powrotu 70°C
- parametr grzejników m 0,33
Do regulacji wykorzystano regulator LB-600, w którym: w torze 1 mierzona jest temperatura zewnętrzna tz, w torze 2 temperatura zasilania , w torze 3 temperatura powrotu tp.
Do obliczeń współczynników K1 i K2 wykorzystano krzywą grzania przedstawioną w tablicy 1. Do obliczeń wartości współczynników K1 i K2 wykorzystano zaznaczoną krzywą grzania powstałą z obliczeń uwzględniających współczynniki wietrzności i zachmurzenia. Do obliczeń wykorzystano metodę analizy regresji liniowej. W regulatorze wykorzystano równanie:
Y=K2+(K1*X1+X2)/(K1+1)
gdzie: X1 - temperatura zewnętrzna w skali znormalizowanej, X2 = 0.00
Obliczone współczynniki to:
K1= - 0,577; K2=0,969
Wartości funkcji Y przedstawiono w przedostatniej (zaznaczonej kolumnie tablicy). Wartość funkcji rzutowana na skalę rzeczywistą daje wartość zadaną dla regulacji kaskadowej nadążnej. Poniżej na rys.9 przedstawiono zestaw krzywych wg. Danfossa. Najbardziej zbliżona do obliczonej jest krzywa 1.4).
Obliczone wartości współczynników K1 i K2 odwzorowują funkcję grzania z dokładnością satysfakcjonującą użytkownika (w skrajnym przypadku odchyłka maksymalna wynosi 1,76°C). Przy wykorzystaniu dodatkowych funktorów warstw 3, 4, 5, 6 lub utworzenia (na zdefiniowane życzenie użytkownika) specjalnych funkcji ciepłowniczych (np. zapisywanie całych tablic grzania do pamięci regulatora) można uzyskać jeszcze większą dokładność regulacji.
Tablica 1. Tablica współczynników grzania
Rys. 9. Krzywe grzania Danfossa
Istota funkcji "Awaryjne przełączanie sygnału sterującego - BACKUP"
Opisywana funkcja "Awaryjne przełączanie sygnału sterującego" jest stosowana w układach automatyki w celu bezuderzeniowego przełączania sygnału sterującego w przypadku wystąpienia awarii jednego z urządzeń sterujących. Funkcja ta jest znana w automatyce pod nazwą "BACKUP" i ta nazwa (z racji braku jednowyrazowego odpowiednika w języku polskim) będzie występowała w dalszej części tekstu. Funkcja "BACKUP" w regulatorze LB-600 ma za zadanie realizację bezuderzeniowego przełączenia sygnałów sterujących pochodzących z dwóch urządzeń np. z regulatoraLB-600 i/lub systemu komputerowego, sterownika, stacyjki operacyjnej itp. Istotną cechą omawianej funkcji jest wzajemne śledzenie przez oba urządzenia sygnałów sterujących, aby w momencie przełączenia nie nastąpił w wielu przypadkach niekorzystny dla sterowanego procesu skok sygnału sterującego. Przełączenie sygnałów może być realizowane:
- poprzez przełączenie bezwarunkowe przez operatora z pulpitu operatorskiego regulatora,
- poprzez wymuszenie zmiany trybu pracy regulatora przez stację operatorską (poprzez łącze transmisji szeregowej),
- sygnałem awarii generowanym przez urządzenie współpracujące,
-
stan lokalny
(M, A i/lub K) w którym regulator LB-600 jest urządzeniem sterującym, a
więc sygnał sterujący pochodzi właśnie z niego,
stan zewnętrzny (C), w którym regulator mierzy
i śledzi sygnał zewnętrzny (np. ze sterownika), natomiast jest
nieaktywny
w sensie sterowania.
Tablica 2. Tablica stanów logicznych funkcji "BACKUP"
Poniższy rysunek
przedstawia schemat blokowy realizacji funkcji "BACKUP". Schemat ten
przedstawia
ideologię przełączania funkcji "BACKUP" przez regulator LB-600 w
przypadku
wykorzystania sygnału awarii urządzenia redundowanego. Sama jednakże
funkcja
jest bardziej złożona i wymaga znajomości
w zakresie strukturyzacji i parametryzacji regulatora LB-600.
Rys.10. Schemat blokowy realizacji funkcji "BACKUP" |
Dobór nastaw regulatora zależy od:
- własności statycznych i dynamicznych układu regulacji,
- wymagań stawianych przed układem regulacji,
- wybranego typu regulatora.
- uruchomić układ regulacji z regulatorem odziałaniu P, tzn. wyłączyć działanie całkujace i różniczkujące, T i=TiMAX, Td = 0
- zwiększać współczynnik wzmocnienia Kp ,aż do wystąpienia w przebiegu wielkości regulowanej oscylacji o stałej amplitudzie; stan ten oznacza osiągnięcie granicy stabilności, współczynnik wzmocnienia ma wartość krytyczną k pkr,
- odczytać z przebiegu wielkości regulowanej okres oscylacji Tosc [s],
- obliczyć nastawy regulacyjne regulatora wg formuł:
P Kp=0,5
Kpkr,
PI Kp
=0,45
Kpkr, Ti = 0,85 Tosc,
PID Kp= 0,6 Kpkr
, Ti = 0,5 Tosc,
Td= 0,12 Tosc,
W zależności od typu regulatora dobór nastaw obejmuje następujące parametry:
- regulator o wyjściu ciągłym "ANALOG" Kp, (Kpp), Ti, (Tip), T d, (Tdp), SP, ewentualnie R i B,
- regulator dwustawny "2P" Kp, (Kpp ), Ti,(Tip), Td, (Tdp), SP, ewentualnie R i B, oraz parametry: T2P - okres generowanego na wyjściu regulatora sygnału dwustawnego, T wł.2P - czas określający nieczułość regulatora. T 2P i Twł.2P dobierać eksperymentalnie w zależności od rodzaju i wielkości urządzenia wykonawczego, tak aby nie dopuścić do zbyt dużej częstości załączeń.
Rys.11 Sygnały wyjściowe regulatorów typu 2P o algorytmach P, PI, PID |
- regulator trójstawny 3P; nastawy dla wyjścia "grzanie": Kp+, Ti+ , Td+ nastawy dla wyjścia "chłodzenie": Kp-, Ti-, Td-, SP i ewentualnie R i B oraz dla każdego wyjścia niezależnie okres generowanego sygnału dwustawnego T3P+, T3P-,
Rys.12. Przykładowy przebieg sygnału wyjściowego regulatora 3P |
- regulator trójstawny ze sprzężeniem zewnętrznym 3P sprz. zew.; Kp,(Kpp ), Ti, (Tip),Td, (Tdp), SP i ewentualnie R i B oraz parametry:
- T3Psz - czas pełnego przestawienia siłownika,
- S3Psz - strefa nieczułości regulatoraw % sygnału wyjściowego,
- Twył.min.- minimalny czas wyłączenia siłownika,
- Sdp - strefa dokładnego pozycjonowania.
- regulator trójstawny ze sprzężeniem wewnętrznym 3P sprz. wew.(krokowy) Kp,(K pp), Ti,(Tip), Td, (Tdp ), SP i ewentualnie R i B oraz parametry:
- T3Psw - czas pełnego przestawienia siłownika,
- Twł.min.- minimalny czas włączenia siłownika,
- Twył.min. - minimalny czas wyłączenia siłownika przy zmianie kierunku działania.
Parametry Twł.min.
, Twył.min.
należy dobrać
odpowiednio w celu zabezpieczenia silnika elektrycznego o zmiennym
kierunku
obrotów przed uszkodzeniem.
5.1. Automatyczny dobór nastaw PID
Regulator mikroprocesorowy LB-600 posiada możliwości realizacji funkcji samostrojenia (automatyczny dobór nastaw PID w punkcie pracy) wg.:
- metody Cohena-Coona,
- wyboru jednego z trzech kryteriów jakości regulacji: (5% przeregulowania, 20% przeregulowania, minimum całki z kwadratu uchybu regulacji),
- zasady Zieglera-Nicholsa,
- własności statycznych i dynamicznych układu regulacji,
- wymagań stawianych przed układem regulacji,
- wybranego typu regulatora.
Po udanym eksperymencie identyfikacyjnym użytkownik otrzymuje obliczony zestaw nastaw PID, które automatycznie albo po uprzedniej akceptacji zapisywane są do tablic struktury regulatora. W regulatorze LB-600 po udanym eksperymencie identyfikacyjnym uzyskuje się nie nastawy regulatora, lecz parametry identyfikacyjne regulowanego obiektu (procesu):
- T - stała czasowa obiektu,
- ko - wzmocnienie obiektu,
- To - czas opóźnienia obiektu
Na podstawie parametrów identyfikacyjnych oraz wyboru odpowiedniego kryterium jakościowego użytkownik współdecyduje o nastawach PID, jakie zostaną wprowadzone do struktury regulacyjnej.
Tablica 3.
Tablica przedstawiająca zależności matematyczne pomiędzy parametrami identyfikacyjnymi obiektu, a nastawami PID obliczonymi dla danego algorytmu regulacji.
T - stała czasowa obiektu, ko
-
wzmocnienie obiektu, To - czas
opóźnienia obiektu,
kp - wzmocnienie regulatora, Ti - czas
zdwojenia regulatora, Td - czas wyprzedzenia regulatora, tr
- czas regulacji, x - współczynnik przeregulowania
5.2. Warunki poprawnego przeprowadzenia eksperymentu samostrojenia
Procedura automatycznego doboru nastaw optymalnych polega na określeniu pewnych niezbędnych parametrów regulowanego procesu na podstawie przeprowadzonego eksperymentu. Na podstawie tych parametrów procedura dobiera nastawy kp, T i oraz Td regulatora (wg wybranego kryterium jakości regulacji w tym również wg zasad Zieglera-Nicholsa) dla regulacji ciągłej PI lub PID. Procedura ta popularnie zwana samostrojeniem, wspomagana jest przez użytkownika, który musi podać pewne uwarunkowania, jakie muszą być spełnione w celu zapewnienia optymalnych warunków eksperymentu.
Samostrojenie przeznaczone jest przede wszystkim dla obiektów statycznych, dla których spełniony jest warunek:
Stosunek opóźnienia
obiektu do jego zastępczej stałej czasowej mieści się w granicach od
0,1
do 0,6. Samostrojenia nie należy stosować dla obiektów o stałych
czasowych
mniejszych od kilkunastu sekund. Samostrojenie przeprowadza się w
układzie
zamkniętym tak jak na rys. 13
Rys.13.
Schemat blokowy podstawowego układu regulacji; SP - wartość zadana, |
Z uwagi na konieczność blokowania możliwości włączania procedury przez osoby nieuprawnione, oprócz ogólnie obowiązującego hasła, wprowadzono indywidualną blokadę w poszczególnych kanałach regulatora. Aby odblokować włączenie samostrojenia w danym kanale należy wpisać pod odpowiedni adres, odpowiednią wartość parametru (patrz tablice konfiguracyjne). Ponadto wskazane jest zablokowanie możliwości zmiany wartości zadanej (SP) w czasie samostrojenia.
Nie jest to warunek konieczny, jednakże aby zapobiec dokonywaniu zmian SP w trakcie eksperymentu (układ musi być w stanie równowagi) zaleca się na czas trwania eksperymentu dokonanie blokady.
Ponieważ amplituda sygnału mierzonego zależy nie tylko od amplitudy sygnału sterującego, ale także od właściwości obiektu, zaleca się, aby użytkownik pierwszy eksperyment dla każdego obiektu przeprowadził przy małej amplitudzie sygnału sterującego. Amplituda sygnału mierzonego jest proporcjonalna do amplitudy sygnału sterującego; np.zwiększenie amplitudy sygnału sterującego o 50% spowoduje zwiększenie amplitudy sygnału mierzonego także o 50%. Właściwość ta pozwala użytkownikowi oszacować jaką maksymalnie wartość amplitudy sygnału sterującego może ustawić.
Użytkownik ma wtedy możliwość oceny nowych
nastaw przed ich wprowadzeniem. Jeżeli eksperyment zakończy się
niepowodzeniem,
zaleca się jego powtórzenie przy innych wartościach parametrów (gdy
jest
to możliwe). Szczególną uwagę należy zwrócić na zapewnienie
dokładniejszej
stabilizacji i zwiększenie amplitudy wymuszenia. W przypadku dużych
zakłóceń
pomiarowych zaleca się włączenie filtracji
o wartości takiej, aby tylko nieznacznie wpływała na właściwości
obiektu
(filtracja nie powinna być większa od 0,1 zastępczej stałej czasowej
obiektu).
5.3. Opis przebiegu samostrojenia
Eksperyment samostrojenia polega na wprowadzeniu do sygnału sterującego (CV) okresowego zaburzenia o określonej amplitudzie. W trakcie eksperymentu sygnał sterujący będzie generowany symetrycznie wokół punktu pracy. Na podstawie zmian w sygnale regulowanym (PV), wywołanych zaburzeniem, algorytm samostrojenia ustala nowe nastawy. Warunkiem przeprowadzenia eksperymentu samostrojenia jest doprowadzenie obiektu do stanu równowagi wokół punktu pracy, tzn. różnica PV-SP musi być mniejsza od ustalonej wartości.
Doprowadzenie do stanu równowagi może być dokonane automatycznie (przy pomocy dotychczasowych nastaw) lub ręcznie. Procedura samostrojenia może być uruchomiona zarówno w trybie "M" jak i w trybie "A".
Samostrojenie składa się z trzech etapów:
- doprowadzenie do stanu równowagi,
- pomiaru poziomu zakłóceń,
- właściwego eksperymentu.
W przypadku stwierdzenia przez procedurę niemożliwości dobrania nastaw, algorytm się wyłącza i sygnalizuje odpowiednim kodem błędu. Eksperyment samostrojenia można wyłączyć w dowolnym momencie:
Regulator przejdzie wtedy w tryb "A" i podejmie regulację z wcześniej ustawionymi nastawami PID. W przypadku pomyślnego zakończenia eksperymentu na wyświetlaczu można podejrzeć nowe nastawy.
Jeśli eksperyment zakończy się niepowodzeniem, pojawi się napis Err, a zamiast wartości nowych nastaw będą wyświetlone numery błędów. Numery te poprzedzone znakiem ujemnym przyjmują wartości od 1 do 4.
Jeśli samostrojenie zakończy się niepowodzeniem, to regulator przechodzi do trybu " A" i podejmuje regulację z wcześniej ustalonymi nastawami PID.
Algorytm samostrojenia w doborze nastaw uwzględnia także wartość stałej czasowej filtracji oraz parametry innych bloków przetwarzających sygnał przed wejściem do bloku regulatora jako parametry obiektu.
Z praktycznego doświadczenia wynika, że najłatwiej uruchomić eksperyment doboru nastaw przełączając dany kanał w tryb pracy "M" i ustawić wartość sterującą zapewniającą osiągnięcie przez obiekt punktu pracy i następnie uruchomić procedurę. Można także uruchomić procedurę, a następnie ręcznie doprowadzićdo stanu równowagi. W obu przypadkach nie jest wymagane dobieranie wstępnych nastaw regulatora.
Jeśli użytkownik używa nastaw (nawet, gdy nie są optymalne) umożliwiających regulację, może w dowolnym momencie niezależnie od wartości sygnału regulowanego uruchomić eksperyment w trybie "A" i uzyskać nastawy nowe optymalne nastawy obliczone wg wybranego kryterium jakości regulacji w tym również wg zasady Zieglera-Nicholsa.
6. Regulacja obiektów nieliniowych
W automatyce przemysłowej mamy do czynienia z wieloma różnorodnymi procesami, które w dużej mierze wykazują charakter nieliniowy. Jeżeli nieliniowości obiektów regulacji, a także amplitudy sygnałów występujących w układach regulacji są niewielkie, to zwykłe (konwencjonalne) regulatory PID na ogół dobrze spełniają swoje zadanie. Jeśli jednak na układy regulacji oddziałują silne zakłócenia lub, gdy w procesie regulacji należy wprowadzić duże zmiany wartości zadanych, nieliniowości obiektu mogą powodować złą jakość przebiegów przejściowych, a nawet niestabilność układów regulacji.W takich przypadkach najczęściej stosuje się tzw. "ostrożne" nastawy regulatorów. Tak więc nastawia się zmniejszony współczynnik wzmocnienia regulatora lub zwiększony czas całkowania. Owe "ostrożne" nastawy regulatora w wielu przypadkach stabilizują układ regulacji, jednakże z reguły spowalniają działanie regulatora, wyraźnie pogarszając jakość regulacji.
Nieliniowości obiektu regulacji najczęściej zależą od wartości wielkości regulowanej y .Znacznie rzadziej nieliniowości te zależą także od innych sygnałów, jak na przykład prędkości zmian dy/dt wielkości regulowanej głównego zakłócenia itp. Dążąc do kompromisu między obszarem zastosowań regulatora, a prostotą jego strojenia i użytkowania, konstruktorzy regulatora LB-600 celowo wprowadzili pewne modyfikacje realizacji jego funkcji. Przyjęto więc, że nieliniowości obiektu zależą wyłącznie od amplitudy sygnału y wielkości regulowanej. Warto przy tym ponownie podkreślić, że obiekty nieliniowe o tej właściwości należą do najczęściej spotykanych, a więc są najważniejsze ze względów praktycznych. Regulator LB-600, w każdym kroku sterowania wyznacza sygnał sterujący w oparciu o odpowiednio przeliczone nastawy regulatora, uwzględniające "lokalne" właściwości dynamiczne obiektu regulacji. Ta modyfikacja algorytmu PID sprawia, że odpowiednio dostrojony regulator nie tylko zapewnia stabilność układu regulacji, dla bardzo szerokiego zakresu zmian wartości zadanej, lecz także powoduje polepszenie jakości regulacji.
Sygnał sterujący jest wyliczany w oparciu o algorytm PID
(1)gdzie: e(t) - uchyb regulacji.
Cechą szczególną rozwiązania przyjętego
w regulatorze LB-600 jest jednak to, że parametry algorytmu kp,ki,
kd nie pozostają stałe, lecz
w każdym kroku sterowania są uzależnione od wartości sygnału y
wielkości
regulowanej. Można więc napisać, że:
przy czym f(..) oznacza symbol zależności
funkcyjnej, a indeks k oznacza k-ty krok sterowania. Oznaczając (kp)k,
itd., uwypuklono zmienność w czasie parametrów algorytmu.
Przypuśćmy więc, że dla małych odchyleń
wielkości regulowanej y od wartości yA
układ regulacji działa poprawnie, jeśli w równaniu (1) regulatora
współczynnik
k p= kpA. Podobnie,
dla małych odchyleń y od yB powinien
w równaniu regulatora występować współczynnik kp= kpB
. Na pytanie, jak wyznaczyć wartości współczynników k
pAi kpB, odpowiemy później.
Jeśli w kolejnym kroku sterowania wielkość regulowana przyjmuje wartość
y leżącą między punktami yA i yB
, to intuicyjnie jest zrozumiałe, że najbardziej odpowiednia wartość
współczynnika
k p nie będzie równa k
pAani kpB, lecz będzie
jakaś pośrednia, zawarta między kpA i kpB.
W regulatorze LB-600 przyjęto, że bieżący
sygnały wielkości regulowanej wyznacza dwa współczynniki
pozwalające obliczyć "kompromisowe" wartości parametrów kp, ki, kd .Jest więc:
(4)W algorytmie zastosowanym w regulatorze LB-600 wykorzystano trójkątne funkcje przynależności często stosowane w logice rozmytej (ang. fuzzy logic), a liczby n1i n2są po prostu odpowiednimi współczynnikami przynależności.
Regulator LB-600 jest pewną odmianą tzw.regulatora rozmytego (ang. fuzzy logic controller ).Wiadomo, iż regulatory rozmyte mogą bardzo skutecznie regulować nieliniowe obiekty regulacji, jednakże pod warunkiem, że są właściwie dostrojone. Z kolei, dobór parametrów regulatorów rozmytych nie jest łatwy. Przede wszystkim klasyczne, rozmyte algorytmy regulacji (regulatory Mamdaniego) wymagają algorytmukomputerowego, wspomagającego dobór parametrów . W przypadku regulatora LB-600, dobór parametrów algorytmu regulacji jest bardzo prosty.Jest to jedna z niezmiernie ważnych zalet algorytmu, bowiem skuteczność algorytmu w sensie jakości regulacji i prostota jego dostrojenia, decydują o przydatności praktycznej regulatora.
Aby lepiej ocenić łatwość dostrojenia omawianego regulatora przypuśćmy, że nieliniowy obiekt regulacji jest regulowany za pomocą regulatora dwustawnego (przekaźnikowego), przy czym wartość zadana regulatora przekaźnikowego jest równa y = y A.W wyniku regulacji przekaźnikowej uzyskuje się prostokątny sygnał sterujący ui w przybliżeniu sinusoidalne oscylacje wielkości regulowanej y wokół wartości zadanej yA . Okazuje się, że z amplitud tych okresowych sygnałów i z okresu ich oscylacji można stosunkowo dokładnie wyznaczyć tzw. wzmocnienie krytyczne i częstotliwość krytyczną. Obie te wielkości wystarczają, aby za pomocą znanej metody Zieglera-Nicholsa, móc wyznaczyć nastawy analogowego regulatora PID. Uwzględniając okres próbkowania, nastawy analogowe odpowiednio przelicza się na parametry algorytmu cyfrowego. Tak więc, wykonanie regulacji dwustawnej dla wartości zadanej y A pozwala dobrać "lokalne" nastawy regulatora PID obowiązujące w otoczeniu punktu yA . Powtórzenie identyfikacji przekaźnikowej w punkcie y=y B, pozwala dobrać "lokalne" nastawy w punkcie yB, itd. Regulator LB-600 posiada sześć kanałów regulacyjnych, przy czym w każdym kanale można zapamiętać do piętnastu zestawów nastaw "lokalnych" regulatorów PID.
Identyfikację "lokalnych" nastaw potrzebnych
dla uruchomienia algorytmu PID FUZZY regulatora LB-600, można wykonać,
na przykład, posługując się jego własnym algorytmem samonastrajalnym.
6.1. Algorytm PID FUZZY w regulatorze LB-600
Regulator LB-600 powinien znaleźć zastosowanie tam gdzie regulowany proces posiada znaczne nieliniowości, a użytkownik potrafi je określić w sensie ich opisania parametrami PID. W regulatorze zdefiniowana jest tablica (dla każdego z szeciu kanałów regulacji), gdzie należy wpisać zestawy nastaw PID dla poszczególnych punktów pracy regulatora. Każdy zestaw nastaw PID zawiera:
- wartość zadaną SP n (określającą punkt pracy "n";),
- współczynnik wzmocnienia kpn (dla punktu pracy "n";),
- czas zdwojenia (całkowanie) Tin (dla punktu pracy "n";),
- czas wyprzedzenia(różniczkowanie) Tdn (dla punktu pracy "n";),
Podstawową cechą charakterystyczną regulatora LB-600 (jak już wspomniano) jest możliwość stabilnej i dokładnej regulacji PID procesów nieliniowych, których właściwości dynamiczne silnie zależą od ustawionej wartości zadanej SP. W przypadku wymienionych powyżej nieliniowych procesów, jeśli zmiany wartości zadanych SP lub zakłóceń mają duże wartości, konwencjonalne algorytmy PID nie zapewniają dokładnej regulacji, a nawet stabilności układów. Z tego właśnie powodu w regulatorze LB-600 zastosowano nowy algorytm PID typu fuzzy logic(nazywany dalej: PID Fuzzy), który samoczynnie korygujeparametry algorytmu, w celu zapewnienia stabilnej i dokładnej regulacji.
Jeśli właściwości dynamiczne nieliniowego procesu zależą od ustawionej wartości zadanej SP, wówczas dla scharakteryzowania dynamiki regulowanego, nieliniowego obiektu można posłużyć się zbiorem kilku lub kilkunastu zestawów (kp, T i, Td) nastaw tzw. lokalnych regulatorów PID, przy czym każdy zestaw nastaw powinien zapewniać odpowiednią regulację w małym otoczeniu danej wartości zadanej SP (w otoczeniu danego punktu pracy). Te zestawy nastaw lokalnych regulatorów PID, nazwane zestawem parametrów identyfikacyjnych, należy określić dla różnych wartości zadanych SP.Wybór wartości zadanych SP zostanie dalej dokładniej opisany. Regulator LB-600 umożliwia wygodny zapis i zapamiętanie łącznie aż 90 zestawów lokalnych nastaw PID, przy czym w każdym z 6 kanałów regulacyjnych można zapamiętaćdo 15 zestawów.
Na rys. 1 zamieszczono przykładową charakterystykę nieliniowego obiektu regulacji, w którym współczynnik wzmocnienia obiektu Kob silnie zależy od przyjętej wartości zadanej SP. Przypuśćmy, że dla małych odchyleń wielkości regulowanej od wartości SP1 uzyskano zbiór nastaw (kp(1),Ti(1), Td (1)) lokalnego regulatora PID. Podobnie, dla wartości zadanej SP2 uzyskano zbiór nastaw (k p(2), Ti(2),Td(2) ), itd. Terminy "zestaw nastaw" lub "zbiór parametrów identyfikacyjnych" oznaczają tablicę liczb:
kp(1), kp(2)
,............,kp(15)
Ti(1), Ti(2),............,T
i(15)
Td(1),Td(2),............,T
d(15)
lokalnych regulatorów PID, jak to wyjaśniono powyżej. Zestaw nastaw (zbiór parametrów identyfikacyjnych) może być wpisany do regulatora:
przez użytkownika znającego "swój"; proces(doświadczenie, wcześniejsze działania identyfikacyjne np. wg procedur Zieglera-Nicholsa itp.); z pulpitu operatorskiego,
przez użytkownika wykorzystującego np. algorytm samostrojenia regulatora LB-600 pełniącego funkcję identyfikatora, dzięki któremu można zebrać nastawy PID dla różnych punktów pracy, a następnie przepisać je do pamięci regulatora LB-600 lub do pamięci komputera tworząc tzw. bibliotekę zestawów nastaw, przepisując zestaw nastaw z biblioteki nastaw korzystając z komputera np. PC (poprzez konwerter RS232/RS485).
dla regulacji PID: Td=0,25*T i (Wpidx=1),- dla regulacji PI: Td=0,000 (W PIDx=0).
Należy zauważyć, że na rys. 14 punkty SP1,SP2,..., SP15 nie są rozłożone równomiernie.Są one zagęszczone w obszarze, w którym nieliniowa zależność kob=f(SP) wykazuje większy stosunek przyrostów dk ob/dSP. Tak właśnie należy postępować przy wyborze lokalnych punktów pracy SP1,SP2 ,....., dla których wyznacza się nastawy lokalnych regulatorów PID. W tym sensie właściwości dynamiczne rozpatrywanego, nieliniowego obiektu mogą być scharakteryzowane nie tylko za pomocą zbioru stałych czasowych, współczynników wzmocnień, itp., lecz również za pomocą zbioru nastaw lokalnych regulatorów PID, jak to wyjaśniono powyżej.
Sposób obliczeń parametrów wyjaśniono na rys. 15, na którym przedstawiono tzw. funkcje przynależności odpowiadające zakresowi wartości zadanych SP z rys. 1. Jeśli więc chwilowa wartość sygnału wyjściowego obiektu jest równa PVx wówczas z rys. 15. wynika że:
n1=(SP3-PVx)/(SP3-SP2 )
n2=1-n1
kpx(fuzzy)=n1*kp2 +n2*kp3
Tix(fuzzy)=1/kpx(fuzzy)*(k p2*n1*Ti2+kp3*n2*T i3)
Tdx(fuzzy)=WPID*0,25*T ix(fuzzy)
gdzie: SP3, SP2 - są to wartości zadane dla punktów pracy P3 i P 2 ; PVx - rzeczywista wartość regulowana w punkcie pracy Px ; kp2, kp3 współczynniki wzmocnienia w punktach pracy P3 i P2 ; kpx(fuzzy) - współczynnik wzmocnienia w rzeczywistym punkcie pracy P x ;Ti2,Ti(3) - czasy zdwojenia w punktach pracy P3 i P2; Tix(fuzzy) - czas zdwojenia w rzeczywistym punkcie pracy Px ;Tdx(fuzzy) - czas wyprzedzenia w rzeczywistym punkcie pracy Px ; W PID - współczynnik określający: WPID = 0 => regulacja PI, W PID =1 => regulacja PID
W danym (zdefiniowanym) punkcie pracy regulator pobiera odpowiedni zestaw nastaw (identyfikatorem punktu pracy jest wartość zadana SP) i reguluje wg pobranych nastaw PID. W przypadku kiedy rzeczywisty punkt pracy znajduje się pomiędzy punktami zdefiniowanymi, algorytm dokonuje korekty nastaw w oparciu o logikę rozmytą "fuzzy logic".
Model obiektu regulacji, z którym w czasie
badań współpracował regulator LB-600, musiał odwzorowywać niebanalną
skalę
trudności rozmaitych obiektów spotykanych w praktyce przemysłowej,
zarówno
pod względem nieliniowych charakterystyk statycznych jak i dynamiki.
Uznano,
że dla celów badawczych wystarczającą różnorodność i skalę trudności
problemu
są w stanie zapewnić obiekty o charakterystyce statycznej kwadratowej
oraz
charakterystyce o dużym wzmocnieniu w środkowej części zakresu
regulacji.
Za miarę skali komplikacji obiektu uznawano różnice wartości
współczynnika
wzmocnienia regulatora w różnych punktach pracy, wyznaczanego według
tych
samych zasad np. w opisanej wyżej procedurze. Parametry procedury
samostrojenia
raz dobrane nie były zmieniane w czasie trwania eksperymentu, przez co
w różnych punktach pracy tolerancje nastaw regulatora, będących
wynikiem
działania tej procedury, były zbliżone.
Jako dostatecznie trudny przypadek dynamiki
obiektu uznaje się zwykle obecność członu nie minimalno-fazowego, co
zostało
wykorzystane w badaniach regulatora.
Testem regulatora LB-600, przekonującym
potencjalnych nabywców aparatu o jego walorach, jest jego poprawna
praca
w takich warunkach, w których konwencjonalny regulator zapewnia
zadowalającą
jakość regulacji tylko lokalnie wokół punktu pracy i nie jest w stanie
poprawnie działać przy zmianach wartości zadanej w szerszym zakresie.
W celu wprowadzenia do układu złożonych
nieliniowości pozwalających uwypuklić właściwości algorytmu PID FUZZY
regulatora,
wykorzystano dodatkowy (zewnętrzny) układ elektroniczny o przestrajanej
charakterystyce oraz nieliniowe procedury warstwy 1 regulatora LB-600.
Dobór parametrów charakterystyk nieliniowych był dokonywany
eksperymentalnie
tak, aby osiągnąć wymaganą, opisaną
wyżej skalę trudności z punktu widzenia algorytmu regulatora LB-600.
Program dwustrefowy realizowany jest przez regulator w oparciu o kalendarz i przełączanie wartości zadanych w dwóch strefach każdego dnia roku, zgodnie z programem.
Rys.16. Sposób wprowadzania wartości do programu dwustrefowego |
Numer dnia roku ustawia się w zakresie1÷366. Każdy rok należy traktować jako przestępny, dlatego w latach zwykłych od 1 marca do każdego dnia należy dodawać 1.
Czas T1 włączenia wartości zadanej SP1
należy ustawiać zawsze większy od czasu T2 włączenia wartości zadanej
SP2,
tzn. T1 > T2.
W każdym dniu objętym PROGRAMEM DWUSTREFOWYM
należy ustawić wartość wszystkich czterech parametrów.
Funkcja PROGRAM DWUSTREFOWY jest realizowana
w oparciu o zegar czasu rzeczywistego ustawiany w parametrach
generalnych
(warstwa 0). Wyliczony na podstawie zegara "numer dnia" umożliwia
wykorzystanie
podanych w tablicy funkcji wartości parametrów: T1, T2, SP1, SP2 dla
wybranego
dnia. Przykład realizacji funkcji PROGRAM DWUSTREFOWY
W dniu np. nr 19 określono parametry: T2=6,00;T1=14,00; SP1=50%; SP2=60%. Przebieg czasowy przedstawiono na rysunku.
Rys.17. Przykład realizacji funkcji dwustrefowej dla np. 19 dnia roku |
Podczas realizacji algorytmu dwustrefowego regulator pracuje w trybie K (kaskada). Operator może zmieniać reżim pracy M => A. Przejście do reżimu A (Automatyka) oznacza, że regulator wykorzystuje jako wartość zadaną SP1 lub SP2 w zależności od tego czy wg zegara i ustawionych parametrów T1 i T2 jest to strefa włączenia czy wyłączenia.
8. Program czasowy (regulacja programowa)
Program czasowy realizowany jest w oparciu o algorytm zmiany wartości zadanej w kolejnych krokach, których ilość może wynosić do 366. W każdym kroku podaje się długość trwania kroku i wartość zadaną. W przypadku gdy w kroku "k" wartość zadana SPk jest różna od SPk+1, zaprogramowany czas tk realizuje narastanie/opadanie liniowe wartości zadanej SPk+1 w tym czasie. W przypadku gdy SPk=SPk+1, zaprogramowany czas tk stanowi okres trwania wartości zadanej.
Rys.18. Sposób wprowadzania wartości do programu czasowego | |
Rys.19. Przykład realizacji algorytmu PROGRAM CZASOWY |
W każdym kroku użytym w funkcji PROGRAM CZASOWY należy ustawić wartości wszystkich trzech parametrów.
Uruchomienie funkcji PROGRAM CZASOWY następuje w przypadkach:
- przełączenia przez operatora w regulatorze reżimu pracy A => K, po uprzednim ustawieniu na dolnym wyświetlaczu numeru kroku, od którego ma się rozpocząć PROGRAM CZASOWY,
- od alarmu technologicznego AL lub AH, ustawianegow warstwie 1, załączającego funkcję na podstawie deklaracji w parametrach generalnych,
- od stanu sygnału podanego na wejście dyskretne użyte do załączania funkcji,
- od funkcji sygnalizowania (alarmowania) nastawionej daty i czasu, gdy sygnał wyprowadzono na określone wyjście dyskretne.
Zatrzymywanie funkcji PROGRAM CZASOWY następuje, gdy:
-
zrealizowano
wpisaną liczbę kroków i nie zaprogramowano repetycji funkcji oraz
sygnały
dyskretne uruchamiające start funkcji są w stanie nieaktywnym.
następuje
wówczas samoczynne przełączenie reżimu pracy K=>
A z wartością zadaną SP=SPk(SPk - końcowa wartość zadana w ostatnim
kroku),
przełączenie reżimu pracy K =>A dokonuje operator.
Następuje wówczas przejście na regulację stałowartościową z wartością
zadaną
równą wartości wypracowanej w realizowanym kroku w momencie przerwania.
Regulator LB-600 dzięki przyjętej filozofii adresowania modułów wejściowo- wyjściowych posiada możliwość konfiguracji przyrządu do realizacji wielu funkcji.
- klasyczny regulator PID: 2 kanały regulacji ciągłej, 2 trójstawnej lub 4dwustawnej, 2 alarmy - dostęp do pozostałych kanałów pomiarowych poprzez łącze transmisyjne,
- 20 wejściowy przyrząd pomiarowy z możliwością regulacji ciągłej w 2 kanałach + 2 alarmy - dostęp do pozostałych kanałów pomiarowych poprzez łącze transmisyjne,
- 20 wejściowy przyrząd pomiarowy z możliwością regulacji trójstawnej w 2 kanałach lub dwustawnej w 4 kanałach, 2 alarmy - dostęp do pozostałych kanałów pomiarowych poprzez łącze transmisyjne,
- 10 wejściowy przyrząd pomiarowy, regulacja trójstawna w 4 kanałach lub dwustawna w 8 kanałach, 4 alarmy - dostęp do pozostałych kanałów pomiarowych poprzez łącze transmisyjne,
- 10 wejść analogowych, regulacja ciągła w 4 kanałach - dostęp do pozostałych kanałów pomiarowych poprzez łącze transmisyjne,
- sterownik realizujący funkcje czasowo-logiczne, bogata biblioteka algorytmów w tym sekwencyjnych, dwa wyjścia analogowe do zadawania sygnału programowego-dostęp do wszystkich parametrów poprzez łącze transmisyjne,
- 30 wejściowy przyrząd pomiarowy - dostęp do kanałów pomiarowych poprzez łącze transmisyjne,
- 24 wejściowy i 18 wyjściowy sterownik binarny realizujący funkcje czasowo-logiczne, bogata biblioteka algorytmów w tym sekwencyjnych - dostęp do wszystkich parametrów poprzez łącze transmisyjne.
Programowanie struktury regulatora może odbywać się różnorako:
- bezpośrednio z klawiatury regulatora poprzez wpisywanie adresu parametru, a następnie jego wartości, na podstawie tablic konfiguracyjnych,
- zapis wartości poprzez rejestry zmiennych (specjalny program do zapisu pojedynczych rejestrów), programowanie odbywa się z komputera PC poprzez konwerter RS232/RS485,
- programowanie przy pomocy komputera jak w powyższym przykładzie, jednakże wykorzystując specjalny program SYMULATOR-KONFIGURATOR (rys. 20),
- programowanie struktury regulatora jak w powyższym przykładzie, wzbogacone o program DIAGRAM (rys. 21), umożliwiający rysowanie struktury regulacji pobierając bloki funkcjonalne z biblioteki funktorów i łączenie ich między sobą liniami. W efekcie końcowym generowany jest automatycznie kod wynikowy, który przesyła się do regulatora. Program umożliwia tworzenie dokumentacji w postaci graficznej oraz tabelarycznej.
Rys. 20 Ekran programu SYMULATOR-KONFIGURATOR
Rys. 21 Ekran programu DIAGRAM
Krótki opis niektórych zaledwie możliwości regulatora LB-600 przedstawiony w niniejszym artykule, stanowi swojego rodzaju łącznik pomiędzy wzmianką w książce K. Kostyrko i A. Łobzowskiego, a planowaną na przełom stycznia i lutego 2003, osobną książką poświeconą w całości regulatorowi LB-600, jego umiejscowieniu w procesach nie tylko przemysłowych, zawierającą elementy teoretyczne regulacji, identyfikacji dynamiki obiektów sterowania, elementy logiki rozmytej w tym specjalny algorytm PID FUZZY, itp.