Sterowanie procesami dyskretnymi 2010lato, Studia

[ Pobierz całość w formacie PDF ]
Politechnika Białostocka
Wydział Mechaniczny
Instrukcja do zajęć projektowych
Temat projektu
: Modelowanie i badanie układów sterowanych zdarzeniami
Zajęcia projektowe z przedmiotu:
Sterowanie procesami dyskretnymi
Kod:
Opracował:
Dr inż. Arkadiusz Mystkowski
2011
1/14
ZADANIE PROJEKTOWE NR 1
Projektowanie układu sterowania o skończonej liczbie stanów z wykorzystaniem
modułu Stateflow środowiska Matlab/Simulink
1.
Wprowadzenie
1.1.
Układy sterowane zdarzeniami dyskretnymi
Układy sterowane zdarzeniami (ang.
event-driven systems
) zwane są układami
reaktywnymi lub układami o skończonej liczbie przełączanych stanów (ang.
finite state
machines
, FSM). Układ sterowany zdarzeniami jest reprezentowany poprzez skończony zbiór
stanów. W układach tych przejście z jednego stanu do drugiego odbywa się w odpowiedzi na
występujące zdarzenie i po spełnieniu postawionego warunku. Istnieje wiele przykładów
fizycznych urządzeń i systemów wykorzystujących sterowanie zdarzeniami, np: sterowanie
grzałką, wentylatorem, pompą, skrzynią biegów, układy sterowania PLC oraz automaty.
1.2.
Charakterystyka modułu Stateflow
Moduł Stateflow zaimplementowany do pakietu Matlab/Simulink stanowi graficzny
interaktywny interfejs do modelowania i symulacji układów sterowanych zdarzeniami.
Zazwyczaj symulowany układ sterowany zdarzeniami posiada zmienne określające dane
wejściowe i wyjściowe, zbiór zdarzeń i przerwań oraz zdefiniowane warunki opisujące
przejście pomiędzy stanami. Przybornik Stateflow dzięki wbudowanemu generatorowi kodu
C (ang.
Stateflow Coder
) można wykorzystać do zbudowania aplikacji sterowania w czasie
rzeczywistym. Algorytm sterowania w kodzie C może zostać zaimplementowany w
sterowniku rzeczywistym połączonym z obiektem fizycznym. Jest to możliwe dlatego, że
moduł Stateflow współpracuje z modułem
Real-Time Workshop
oraz z zwykłymi blokami
bibliotek środowiska Simulink.
Projektowanie układu sterowania zdarzeniami często opiera się na wykorzystaniu tablicy
prawdy (ang.
truth table
) definiującej zależności logiczne pomiędzy sygnałami we/wy oraz
stanami FSM. W przypadku występowania niewielkiej liczby stanów, modelowanie układu
sterowanego zdarzeniami można zrealizować poprzez zdefiniowanie stanów i warunków
przejść między nimi. Zastosowanie znajduje tutaj teoria grafów, a graficzna reprezentacja
systemu opiera się na diagramie przejść między stanami (ang.
sequential-transistion
diagram
).
2.
Przykład sterowania podgrzewaczem wody
Zadanie
układu
sterowania
podgrzewaczem
wody
polega
na
utrzymaniu
stałej
temperatury wody w zbiorniku na poziomie 70
i jest
traktowana jako stała wartość zakłócenia. Transmitancja operatorowa modelu zbiornika z
°
. Temperatura otoczenia wynosi 18
°
-
s
e
G s
( )
=
grzałką jest następująca:
. Podgrzewacz jest wyposażony w dwie grzałki
100
s
+
1
załączane okresowo. Jeżeli temperatura wody spadnie poniżej 40
obie grzałki są załączane w
innym przypadku działa tylko jedna. Układ sterowania jest reprezentowany przez trzy stany:
żadna grzałka nie pracuje, pracuje jedna grzałka, pracuję dwie grzałki. W takich układach nie
jest konieczne dokładne utrzymywanie uchybu regulacji na poziomie zero. Wystarczy jedynie
podtrzymywanie temperatury w pewnym zakresie. Dlatego też, regulator dyskretny sterujący
podgrzewaniem wody jest uruchamiany okresowo sygnałem np. z okresem 300 sekund.
°
2/14
W celu realizacji układu sterowania należy zamodelować obiekt w programie Simulink.
Następnie należy powiązać sygnały wejściowe i wyjściowe obiektu z projektowanym
modelem regulatora dyskretnego, patrz rys. 1.
Rys. 1. Model obiektu sterowania
Następnie model obiektu należy zgrupować i podłączyć wartość stałą temperatury
otoczenia, patrz rys. 2.
Rys. 2. Zgrupowany model obiektu
W dalszej części zadania należy zaprojektować sygnały sterujące regulatorem
podgrzewacza. Z biblioteki
Simulink/Sources
należy wybrać blok
Signal
Builder
. Sygnał włączający lub wyłączający grzałki o nazwie
SWITCH
dodajemy poprzez
zakładkę
Signal/New/Square
. Parametry sygnału
SWITCH
to: częstotliwość 1/300 Hz,
amplituda 1, offset 0, wypełnienie okresu 50%, długość sygnału: 600 sekund. Sygnał
SWITCH
powinien zaczynać się od wartości zero, można to zmienić poprzez przeciągnięcie
myszką. W podobny sposób dodajemy sygnał taktujący przełączanie pomiędzy stanami
regulatora o nazwie
CLOCK
. Parametry sygnału
CLOCK
to: częstotliwość 1 Hz, amplituda 2,
offset 0 i wypełnienie okresu 50%. Ograniczenia sygnału
CLOCK
(prawy klawisz myszy) y:
od 0 do 2, x: od -inf do inf. Po zbudowaniu sygnałów okno bloku
Signal Builder
przedstawiono na rys. 3.
3/14
Rys. 3. Sygnały referencyjne
Realizacja opisu zadania dotyczy wersji Stateflow nr 7.1, R2008a. W celu uruchomienia
Stateflow należy otworzyć bibliotekę modułu Stateflow z linii komend Matlab poleceniem
>>stateflow
.
N
astępnie należy metodą „drag and drop” przekopiować diagram
chart
do wcześniej utworzonego okna z modelem obiektu. Po wykonaniu opisanych działań, model
układu sterowania wygląda tak jak na rys. 4.
Rys. 4. Układ sterowania zdarzeniami
Okno wywołanego diagramu chart będącego graficznym edytorem Stateflow przedstawiono
na rys. 5.
4/14
Rys. 5. Okno interfejsu graficznego Stateflow
Do zrealizowania włączenia/wyłączenia podgrzewacza potrzebujemy dwóch stanów. Za
pomocą przycisku
state
wybieramy dwukrotnie stany i nadajemy im nazwy:
PowerOn
i
PowerOff
, patrz rys. 6. Następnie za pomocą myszki tworzymy dwa połączenia między
tymi stanami o nazwie
SWITCH
. Stan
PowerOn
definuje pracę dwóch grzałek, dlatego
kopiujemy dodatkowe dwa stany o nazwach np.
Heater1
i
Heater2
, które mogą być
uruchamiane jednocześnie (równolegle) i będą reprezentować poszczególne grzałki. W tym
celu w obszarze diagramu
PowerOn
klikamy prawym klawiszem myszy i wybieramy opcję
Decomposition/Parallel (AND)
. Ramki oznaczone liną przerywaną mogą być
jednocześnie aktywne (
Parallel, AND
). Ramki ciągłe oznaczają stany wzajemnie
wykluczające się (
Exclusive OR
), patrz rys. 7.
Rys. 6. Stany w polu edycji
5/14
[ Pobierz całość w formacie PDF ]

  • zanotowane.pl
  • doc.pisz.pl
  • pdf.pisz.pl
  • monka.htw.pl