Realizacje algorytmów regulacji ciągłej na platformach softPLC
| TechnikaUkłady sterowania bazujące na PLC są od wielu lat podstawowymi systemami stosowanymi w praktyce przemysłowej. W przypadku niektórych aplikacji rozwiązania tego typu mają jednak wady, które wiążą się z niewystarczającymi możliwościami obliczeniowymi i szybkością działania jednostki centralnej. Dotyczy to w szczególności sterowania procesami krytycznymi pod względem czasowym, dlatego alternatywą może tutaj być wykorzystanie rozwiązań softPLC.
Systemy tego typu bazuje na środowisku komputerowym i wykorzystuje interfejs procesowy z klasycznego sterownika PLC. Jako platformę sprzętową dla systemu można wykorzystać zarówno komputer klasy PC w wersji biurowej lub przemysłowej oraz inne urządzenia pracujące pod kontrolą np. systemu Windows, w tym panele wielofunkcyjne. W artykule porównano realizacje specjalnych algorytmów regulacji ciągłej – predyktora Smitha, regulatora redukcyjnego i kompensatora dynamicznego, które zostały wykonane na dwóch wymienionych platformach sprzętowych softPLC.
Obiekt regulacji
W ramach symulacji wykorzystywany jest laboratoryjny obiekt cieplny, którego główną częścią jest pręt miedziany długości 260mm i średnicy 2mm ogrzewany na jednym końcu elektrycznym elementem grzejnym w postaci spirali grzejnej nawiniętej na pręt poprzez izolator ceramiczny. Pręt nie jest izolowany cieplnie na bokach i wymiana ciepła zachodzi wzdłuż całej jego długości. Element grzejny sterowany jest sygnałem prądowym 0÷1,5A, 24VDC ze wzmacniacza mocy, na wejście którego podawany jest znormalizowany sygnał z zakresu 0÷5mA. Temperatura pręta jest odczytywana czujnikiem rezystancyjnym nawiniętym w połowie długości pręta. Zmiana rezystancji czujnika odczytywana jest w układzie mostkowym, przy czym napięcie z przekątnej mostka (0÷4mV) przetwarzane jest na sygnał prądowy z zakresu 0÷5mA z wykorzystaniem przetwornika APU-11.
W rozważanym przypadku obiektu regulacji sygnały wejściowy i wyjściowy mają charakter elektryczny. Niemniej procesy fizyczne zachodzące w nim stanowią dobry przykład kilku klas rzeczywistych procesów przemysłowych, które podlegają sterowaniu. Pierwszą z nich są procesy cieplne, a inną – procesy z opóźnieniem.
Opis układu w przestrzeni stanu
Podstawowym modelem matematycznym procesów zachodzących w rozważanym obiekcie jest równanie przewodnictwa cieplnego. Przyjmując założenie, że punkt zamocowania czujnika temperatury jest stały, równanie to może być zapisane w postaci równania równoważnego, którego skończenie wymiarowa aproksymacja może być zastosowana do modelowania rozważanego obiektu - np. w środowisku Matlab. Dokonując dyskretyzacji modelu ciągłego, otrzymuje się równoważny model dyskretny o następującej postaci:
gdzie: Q(i) oznacza temperaturę w chwili czasu i oraz w punkcie zamocowania czujnika, A+ jest macierzą stanu systemu, B+ jest macierzą sterowań i C+ jest macierzą wyjść systemu. W rozważanym wypadku dobrą aproksymację rzeczywistego obiektu zapewnia przyjęcie wymiaru równania stanu równego: N=25. Wartości liczbowe parametrów z jego macierzy mogą być wyznaczone numerycznie z użyciem metody najmniejszych kwadratów. W rozważanym przypadku liczbowe wartości parametrów macierzy A+ , B+ i C+ podane są w tabeli 1.
Modele transmitancyjne
Równoważnym pod względem funkcjonalnym, a znacznie prostszym modelem rozważanego obiektu jest postać transmitancji zastępczej, której parametry mogą być wyznaczone na podstawie odpowiedzi skokowej obiektu. Klasyczne przykłady modeli transmitancyjnych to model Kupfmuellera z opóźnieniem i model Strejca bez opóźnienia. Model zastępczy Kupfmuellera w postaci transmitancji obiektu inercyjnego I i II rzędu z opóźnieniem jest opisany następująco:
Natomiast model Strejca w postaci transmitancji n-tego rzędu bez opóźnienia to:
Wartości liczbowe współczynników transmitancji zależą w rozważanym wypadku od lokalizacji i wymiarów elementu grzejnego oraz czujnika pomiarowego. Mogą one być wyznaczone na podstawie odpowiedzi skokowej rzeczywistego obiektu z wykorzystaniem metody najmniejszych kwadratów. Dla rozważanego przypadku są one podane w tabeli 2. Zarówno równanie stanu, jak i model transmitancyjny stosowane są do budowy rozważanych specjalnych algorytmów sterowania.
Testowane algorytmy specjalne
W ramach badań przeprowadzono analizę trzech algorytmów specjalnych. Pierwszym z nich był kompensator dyskretny, którego zasadniczą ideą działania jest kompensacja najsłabiej tłumionej – czyli leżącej najbliżej brzegu okręgu jednostkowego - wartości własnej systemu dyskretnego. Innymi słowy wartości własne zamkniętego układu regulacji zawierającego kompensator i obiekt leżą w większej odległości od okręgu o promieniu 1, czyli dalej od granicy stabilności układu dyskretnego. Powoduje to radykalną poprawę jakości regulacji w układzie. Otrzymuje się krótki czas regulacji przy jednoczesnym braku przeregulowania przy zmianie wartości zadanej na wejściu układu. Algorytm regulacyjny jest opisany następującym dyskretnym równaniem stanu.
gdzie:
Gdzie y(i) oznacza wyjście obiektu, r – wartość zadaną, w(i) – dyskretny wektor stanu kompensatora, natomiast u(t) oznacza sterowanie wyznaczane przez kompensator i podawane na obiekt. Parametry równania stanu kompensatora wyznaczane są na podstawie dyskretnego równania stanu obiektu, przy czym przedstawione równanie może też być użyte do realizacji cyfrowej kompensatora na platformie PLC.
Drugim zastosowanym algorytmem jest predyktor Smitha. Jest on jednym z najczęściej stosowanych algorytmów specjalnych w praktyce przemysłowej. Ma postać dodatkowego, wewnętrznego sprzężenia zwrotnego, którym objęty jest regulator konwencjonalny, taki jak np. PID. Do budowy omawianego predyktora wykorzystuje się model zastępczy w postaci transmitancji z opóźnieniem (omawiana w poprzednim rozdziale), która zapisana jest w postaci dyskretnej. Sprzężenie zwrotne jest tak zaprojektowane, aby regulator mógł przewidywać zachowanie się układu – rozwiązania to jednak powoduje duże trudności implementacyjne w przypadku realizacji omawianego układu na platformie PLC. Wynika to z interpretacji programu dla PLC, który jest zawsze wykonywany sekwencyjnie.
Ideą działania trzeciego z algorytmów – regulatora redukcyjnego – jest kompensacja transmitancji obiektu regulacji lub jego najsłabiej tłumionej części. Główną trudność podczas praktycznej realizacji regulatora redukcyjnego stanowi możliwość wykonania fizycznej realizacji transmitancji regulatora. Trudność ta została ominięta w algorytmie zaproponowanym przez R. Góreckiego i zmodyfikowanym przez autora pod kątem realizacji na PLC. Do budowy tego algorytmu wykorzystuje się model zastępczy Strejca bez opóźnienia opisany w poprzednim rozdziale.
W wersji zaproponowanej przez autora, algorytm ten jest realizowany jako szeregowe połączenie dwóch bloków – regulatora PI oraz korektora, które opisane są następującymi równaniami dyskretnymi:
W tym przypadku e(n) oznacza dyskretny uchyb regulacji w chwili n, natomiast u(n) – sterowanie w chwili n, z kolei a oraz b są współczynnikami określonymi jako:
W powyższych relacjach η oznacza współczynnik redukcji dynamiki obiektu. Przy założeniu dokładnej znajomości modelu obiektu w postaci transmitancji zastępczej bez opóźnienia stała czasowa transmitancji wymuszeniowej całego układu regulacji zawierającego obiekt i regulator jest równa ηTn.
Platformy sprzętowo-programowe do realizacji sterowania
Architektura systemu sterowania softPLC zrealizowanego na komputerze osobistym pokazana została na rys. 1. Zasadnicza różnica pomiędzy nią a systemami hardPLC polega na tym, że procesor sterownika jest symulowany na komputerze PC. W obydwu przypadkach moduły sygnałowe są takie samem choć w przypadku softPLC komputer musi być wyposażony w kartę komunikacyjną umożliwiającą komunikację z nimi. Wykorzystanie softPCL pozwala na radykalne zwiększenie możliwości obliczeniowych sterownika w stosunku do systemu hardPLC, gdyż wirtualny procesor ma pełny dostęp do wszystkich zasobów systemu, łatwiejsze jest także stworzenie systemu SCADA, który jest zintegrowany z CPU na jednej platformie sprzętowej.
Schemat logiczny komunikacji w obrębie rozważanego systemu softPLC podany jest na rys. 2. Najważniejszą cechą rozważanego układu jest mechanizm wymiany danych Softbus. Zasadnicza jego idea polega na tym, że poszczególne komponenty układu sterowania są połączone ze sobą z wykorzystaniem sieci Profibus, która jest częściowo fizyczna a częściowo wirtualna. Fragment wirtualny łączy komponenty systemu sterowania zlokalizowane w obrębie platformy sprzętowej PC, jednak z punktu widzenia komunikacji nie ma rozróżnienia pomiędzy nim a rzeczywistą częścią sieci.
Do realizacji systemu wykorzystano oprogramowanie konfiguracyjne i narzędziowe Step7 5.4 Professional. System SCADA zrealizowano z wykorzystaniem oprogramowania ProTool/Pro, a wirtualną jednostkę obliczeniową zrealizowano z użyciem oprogramowania WinLC 4.0 w wersji demonstracyjnej. Komunikacja pomiędzy Simatic Manager i WinLC odbywa się za pomocą programowego interfejsu MPI, natomiast pomiędzy pozostałymi komponentami systemu z wykorzystaniem sieci Profibus i omawianego mechanizmu Softbus. Podczas budowy systemu program dla sterownika jest zintegrowany w obrębie jednego projektu z systemem SCADA.
System bazujący na multipanelu
Drugą platformą sprzętową na której zrealizowano sterowanie softPLC, był system wykorzystujący multipanel (rys. 3). Do realizacji układu wykorzystano urządzenie Siemens MP 370 Touch oraz interfejs procesowy, którego konfiguracja podana jest w tab. 3. Zasadnicza różnica w stosunku do systemu softPLC jest taka, że jednostka obliczeniowa sterownika oraz system SCADA pracują na multipanelu pod nadzorem środowiska Windows CE, natomiast komputer pełni tutaj wyłącznie konfiguracyjną i diagnostyczną. Interfejs procesowy jest taki sam, jak w przypadku systemu bazującego na PC, a komunikacja pomiędzy nim a panelem odbywa się z wykorzystaniem sieci Profibus. Z kolei do komunikacji komputer-panel wykorzystywana jest sieć Profibus i dodatkowo łącze szeregowe RS232.
Oprogramowanie realizujące algorytmy
Istotną cechą omówionych powyżej rozwiązań jest fakt, że w obydwu przypadkach wykorzystuje się takie samo środowisko programowe, jak w przypadku systemu hardPLC. Przeniesienie aplikacji napisanej wcześniej dla systemu hardPLC do dowolnego systemu softPLC jest proste i wymaga tylko przedefiniowania konfiguracji sprzętu i ewentualnej zmiany adresów wejść i wyjść sterownika. Stwarza to duże możliwości stosunkowo łatwej rekonfiguracji platformy sprzętowej bez konieczności dużej ingerencji w oprogramowanie.
W ramach opracowywania oprogramowania dla omawianych konfiguracji przewidziano następujące funkcje systemu SCADA:
- monitorowanie i nadzór działania systemu poprzez wyświetlanie wartości i trendów wielkości regulowanej, uchybu regulacji, sterowania i wartości zadanej,
- wzbudzanie alarmów w przypadku przekroczenia dopuszczalnych wartości przez zmienne procesowe,
- ustawianie wartości zadanej i parametrów liczbowych algorytmów,
- sterowanie pracą algorytmów poprzez przełączanie trybu pracy, zatrzymywanie i uruchamianie aplikacji sterującej, uruchamianie i zatrzymywanie archiwizacji.
Do wymiany danych pomiędzy elementami programu wykorzystano zmienne reprezentowane bezpośrednio, czyli takie których nazwy są adresami komórek pamięci wewnętrznej sterownika. Są wykorzystywane do realizacji jednego z opisanych w normie IEC 1131-3 mechanizmów wymiany danych w obrębie programu PLC. Definicje funkcji i bloków funkcyjnych zostały napisane z użyciem języka strukturalnego wysokiego poziomu Step7 SCL, natomiast bloki organizacyjne OB1 i OB35 zostały oprogramowane w języku drabinkowym LD. Wcześniejsze badania autora wykazały, że Step7 SCL dobrze spełnia wymagania pracy w czasie rzeczywistym, gdyż elementy napisane z jego wykorzystaniem są zawsze kompilowane do postaci Listy Instrukcji. Z kolei język drabinkowy LD charakteryzuje się jednoznaczną i przejrzystą interpretacją oraz dobrze zdefiniowaną obsługą błędów, co pozwala na łatwą realizację sekwencyjnego wykonywania programu zgodnie z tab. 5. {tab5}
Wymagania czasu rzeczywistego
Jako miarę spełnienia wymagań czasu rzeczywistego podczas realizacji rozważanych specjalnych algorytmów sterowania przyjęto wartość czasu cyklu wirtualnej jednostki obliczeniowej. Należy zwrócić uwagę, że nie jest to czas każdego cyklu programowego, gdyż algorytm wykonywany z założonym stałym okresem próbkowania nie jest realizowany w każdym cyklu. Pomiary czasu cyklu wykonano metodą programową opracowaną przez autora.
Testy czasu cyklu rozważanego systemu softPLC przeprowadzono przy kilku założeniach. Na panelu i komputerze PC działały tylko dwie aplikacje: softPLC oraz system SCADA do zbierania wyników. W przypadku realizacji eksperymentu na komputerze PC jest możliwość zdefiniowania priorytetu sterownika w systemie Windows. Eksperymenty wykonano dla trzech priorytetów sterownika: niskiego (wynoszącego 1), standardowego zalecanego przez producenta (równego 8) oraz wysokiego (25). W przypadku realizacji eksperymentu na komputerze osobistym przyjęto domyślną wartość parametru sleep time (czas spoczynku) procesora równą 10ms, natomiast okres próbkowania podczas realizacji każdego algorytmu wynosił 1s. Pomiary przeprowadzono podczas normalnej pracy aplikacji w stanie ustalonym wielkości regulowanej. Priorytety przerwań zegarowych sterownika związanych z uaktywnieniem bloku OB 35 i obsługą wejść i wyjść ustawiono na wartości domyślne. Do pomiarów wykorzystano wewnętrzny zegar czasu rzeczywistego sterownika, wykonując 1000 pomiarów. Zmierzone wartości czasu cyklu dla rozważanych algorytmów specjalnych realizowanych na multipanelu podane są w tabeli 6, natomiast zrealizowane na PC – w tabeli 7.
Podsumowanie
Analizując wyniki w tabelach 6 i 7 można stwierdzić, że w przypadku komputera osobistego najkrótszy maksymalny czas cyklu i najmniejszy rozrzut wartości minimalnej i maksymalnej osiągnięto dla wysokiego priorytetu zadania. Jednakże był to również najwyższy możliwy do ustawienia priorytet, który nie zaburzałby poprawnej pracy całego komputera. W przypadku panelu maksymalny czas cyklu jest analogiczny do minimalnego czasu cyklu dla komputera, a rozrzut wartości minimalnej i maksymalnej nieco większy, niż dla systemu na PC wykorzystującego najwyższy priorytet. Z kolei w przypadku zdefiniowania standardowego lub niższego priorytetu zadania w systemie bazującym na PC, maksymalne wartości czasów cyklu oraz rozrzuty wartości są znacznie większe, niż dla systemu bazującego na panelu lub systemu na PC z wysokim priorytetem.
Na obu testowanych platformach sprzętowych najdłuższy maksymalny czas cyklu zaobserwowano dla kompensatora dynamicznego. Najczęściej powtarzająca się wartość czasu cyklu nie zależy od typu algorytmu, ale tylko i wyłącznie od platformy sprzętowej na jakiej algorytmy są realizowane.
Można podsumować, że:
- platforma softPLC bazująca na PC zapewnia warunki czasu rzeczywistego porównywalne z panelem, ale tylko w przypadku ustawienia wysokiego priorytetu zadania,
- biurowy komputer osobisty stanowi bardziej zawodną, choć tańszą alternatywę do realizacji omawianego typu sterowania,
- system wykonany z wykorzystaniem panelu ma cechy systemu czasu rzeczywistego i może być droższy w realizacji. Jego cechą jest jednak znacznie wyższa niezawodności działania w przypadku wykorzystania w warunkach przemysłowych, niż dla biurowy komputer osobisty,
- wykorzystanie multipanelu pozwala na realizację na jednej platformie sprzętowej panelu operatorskiego dla procesu, systemu SCADA i CPU sterownika; jjednocześnie moc obliczeniowa jednostki centralnej takiego systemu jest znacznie większa, niż procesora systemu hardPLC, choć też zazwyczaj mniejsza, niż typowego PC.
W każdym z badanych przypadków, niezależnie od typu systemu i wszystkich pozostałych czynników, najdłuższy zmierzony czas cyklu był około 10 razy krótszy niż przyjęty okres próbkowania algorytmu. W związku z tym każdy z testowanych systemów sprzętowo-programowych softPLC stanowi stabilną platformę spełniającą wymogi czasu rzeczywistego do realizacji sterowania procesem ciągłym z użyciem algorytmu specjalnego.
Dr inż. Krzysztof Oprzędkiewicz
Katedra Automatyki AGH
Tabele
|