Stanowisko laboratoryjne do symulacji obiektow na sterowniku
Transkrypt
Stanowisko laboratoryjne do symulacji obiektow na sterowniku
Politechnika Śląska Wydział Automatyki , Elektroniki i Informatyki Praca dyplomowa Temat : „Stanowisko laboratoryjne do symulacji obiektów na sterowniku SLC500.” Promotor : Dr inż. J.Kasprzyk Student : Tomasz Matuszczyk Cel pracy Celem pracy było stworzenie biblioteki programów dla sterownika SLC 500 firmy Allen Bradley umożliwiających symulację wybranych obiektów sterowania oraz wizualizację w pakiecie Fix32. Obiekty można tworzyć poprzez dobór : • współczynników wielomianu mianownika i licznika transmitancji K(s) obiektu, • dodatkowego różniczkowania lub całkowania, • opóźnienia, • nieliniowości typu strefa nieczułości lub nasycenie. Istnieje także możliwość symulacji obiektu typu zbiornik. Idea stanowiska laboratoryjnego Stanowisko laboratoryjne powinno składać się z dwóch sterowników. Jednym z nich jest SLC 500 firmy Allen – Bradley wyposażony w procesor wersji 5/03 lub wyższej oraz moduł analogowy 1746 – NIO4V. Sterownik ten ma za zadanie symulację obiektów. Drugi sterownik (może być innej firmy) wykorzystany jest jako regulator. Jedyne stawiane mu wymaganie, to posiadanie napięciowego (zakres -10 ÷ 10 V) modułu analogowego z jednym wyjściem i jednym wejściem. W celu wizualizacji otrzymywanych wyników potrzebny jest komputer PC o parametrach pozwalających uruchomić system Fix 32 v. 6.15. Możliwe jest także przeprowadzenie symulacji wraz z regulacją za pomocą tylko jednego sterownika. Należy wtedy wybrać sygnał wejściowy z modułu danego sterownika. Regulator PID znajduje się w sterowniku wykonującym symulację obiektów. Aby układ taki mógł działać, należy połączyć w module analogowym 1746 – NIO4V wejście IN 0+ z wyjściem OUT 1 oraz wejście IN 1+ z wyjściem OUT 0. Wejście do regulatora i jego wyjście jest specjalnie w tym przypadku przesyłane przez moduł analogowy, w celu uzyskania takiego samego efektu, jak przy połączeniu dwóch identycznych sterowników SLC 500. Stanowisko laboratoryjne z dwoma sterownikami Komputer PC z uruchomioną aplikacją systemu Fix Łącze szeregowe RS 232 Wejście analogowe IN 0+ Wyjście analogowe OUT 0 Sterownik SLC 500 wykonujący symulację obiektu Sterownik działający jako regulator Wyjście analogowe -10 ÷ 10 V Wejście analogowe -10 ÷ 10 V Stanowisko laboratoryjne z jednym sterownikiem Komputer PC z uruchomioną aplikacją systemu Fix Łącze szeregowe RS 232 OBIEKT Wejście analogowe IN 0+ Sterownik SLC 500 wykonujący symulację obiektu oraz regulację Wyjście analogowe OUT 0 REGULATOR Sterownik SLC 500 wykonujący symulację obiektu oraz regulację Wyjście analogowe OUT 1 Wejście analogowe IN 1+ Dlaczego symulacja z wykorzystaniem sterownika ? Symulację obiektów można wykonać przy pomocy Matlaba, jednak takie rozwiązanie ma wady. Odpowiedź obiektu na zadane wymuszenie nie jest otrzymywana w czasie rzeczywistym, wejście obiektu pochodzi z pliku, a wyjście jest tylko liczbą przedstawioną na wykresie. Przy zastosowaniu sterownika symulacja odbywa się w czasie rzeczywistym. Wyjście obiektu podawane jest na moduł analogowy, wejście obiektu jest odczytywane z końcówki modułu wejściowego. Rozwiązanie z wykorzystaniem sterownika jest lepsze dla celów dydaktycznych, a także pozwala na testowanie układów regulacji, które są bliższe rzeczywistości. Wybór dostępnych obiektów : I rząd : K (s) = K (s) = K ( s) = k 1 + a1M * s k *s 1 + a1M * s k s * (1 + a1M * s ) II rząd : K (s) = K (s) = K (s) = k * (1 + a1L * s ) 1 + a1M * s + a 2 M * s 2 k *s 1 + a1M * s + a 2 M * s 2 k * (1 + a1L * s ) s * (1 + a1M * s + a 2 M * s 2 ) III rząd : K (s) = K (s) = K (s) = k * (1 + a1L * s ) 1 + a1M * s + a 2 M * s 2 + a3M * s 3 k *s 1 + a1M * s + a 2 M * s 2 + a3M * s 3 k * (1 + a1L * s ) s * (1 + a1M * s + a 2 M * s 2 + a3M * s 3 ) Zbiornik Zbiornik ma kształt stożka obciętego z dołu. Jego wysokość od podstawy jest stała i wynosi 10 m. Zmianę pojemności uzyskuje się przez modyfikację parametrów : A , Hp. Przepływ q1 przyjmuje wartości większe od zera, nie ma możliwości wyssania cieczy ze zbiornika. Przepływ q2 może być traktowany jako zakłócenie w przypadku pracy w pętli zamkniętej z sprzężeniem zwrotnym. Sterownik Allen Bradley SLC500 Biblioteka programów umożliwiających symulację obiektów została napisana w języku drabinkowym przy pomocy oprogramowania RSLogic 500. Charakterystyczną cechą sterowników firmy Allen-Bradley jest plikowa organizacja programów i danych. Dlatego też stworzony program posiada jeden plik główny, z którego następują skoki do podprogramów. Działanie aplikacji w czasie rzeczywistym Dla tego typu sterownika nie ma możliwości ustalenia stałego okresu skanowania, niezależnie od długości programu. Pierwszą próbą zapewnienia działania aplikacji w czasie rzeczywistym było wykorzystanie do tego celu czasomierza typu TON (Timer On delay). Minimalna podstawa czasu dla tego bloku wynosi 0.01 sekundy. Czasomierz po odliczeniu do ustalonej wartości wystawiał na wyjście DN jedynkę, po czym był w następnym cyklu resetowany i zliczanie zaczynało się od nowa. Wartość jeden na wyjściu DN była warunkiem koniecznym do wykonania obliczeń, po których następowało wystawienie nowej wartości odpowiedzi obiektu na zadane wymuszenie. Rozwiązanie z czasomierzem nie sprawdziło się. Sterownik zawsze spóźniał się w stosunku do czasu rzeczywistego. Satysfakcjonujące wyniki zostały uzyskane po zastosowaniu przerwań czasowych STI (Selectable Timed Interrupts). Polega to na tym, że co określony okres czasu sterownik przerywa wykonywanie głównego programu i wykonuje skok do wybranego podprogramu. Komunikacja na drodze sterownik ⇔ komputer PC Procesor sterownika ma wbudowany kanał komunikacji RS 232. Dzięki temu do połączenia go z komputerem PC nie trzeba używać dodatkowych modułów komunikacyjnych. System Fix komunikuje się z sterownikiem przy pomocy drivera ABH. Minimalny czas przekazywania danych wynosi 0.1 sekundy, czyli teoretycznie obraz powinien być uaktualniany z częstotliwością 10 Hz. W praktyce można przyjąć, że odświeżanie następuje z częstotliwością 3 Hz. Fully Integrated Control System Sterownik nie posiada interfejsu użytkownika, dlatego należało wykonać wizualizację przy pomocy innego oprogramowania. Wybrany został system Fix 32 v. 6.15, ponieważ posiada on grafikę czasu rzeczywistego oraz bibliotekę drajwerów WE/WY dla sterowników firmy Allen Bradley. Inną jego zaletą jest możliwość pracy bez klucza (w trybie Demo przez okres dwóch godzin). Wszystkie opcje konfiguracji są dostępne z poziomu aplikacji Fix–a. Obliczenia numeryczne Do rozwiązywania równań różniczkowych zwyczajnych, opisujących wybrane obiekty została wykorzystana metoda Rungego-Kutty. Rząd metody – czwarty zapewnia satysfakcjonującą dokładność obliczeń. Procesor sterownika radzi sobie z nakładem obliczeniowym. Czas wykonania cyklu waha się od 5 ms do 11 ms. Biorąc pod uwagę czasy przekazywania danych pomiędzy sterownikiem a komputerem PC oraz możliwości systemu wizualizacji Fix 32 można stwierdzić, że obliczenia numeryczne nie przerastają możliwości sterownika. Szybsze wypracowanie wyników obliczeń nie jest w tym przypadku konieczne, lepszy procesor nie zostałby wykorzystany. Oprócz numerycznego rozwiązywania równań różniczkowych zwyczajnych w pracy zaistniała potrzeba zastosowania różniczkowania oraz całkowania numerycznego. Różniczkowanie numeryczne odbywa się z wykorzystaniem operatora różnicy wstecznej ∇, suma skończona D≈ 1 1 (∇ + * ∇ 2 ) . h 2 Przy całkowaniu numerycznym został wykorzystany wzór trapezów.