Przeglądaj wersję html pliku:

Modelowanie i Symulacja, Wykorzystanie nakładki SIMULINK do budowy i symulacji modeli dynamicznych


Laboratorium Modelowania i symulacji

2008 r.

Wydział Elektryczny Zespół Automatyki (ZTMAiPC) ZERiA

LABORATORIUM MODELOWANIA I SYMULACJI
Ćwiczenie 6

Wykorzystanie nakładki SIMULINK do budowy i symulacji modeli dynamicznych.

1. Cel ćwiczenia.
Celem ćwiczenia jest zapoznanie się z nakładką SIMULINK oraz zdobycie praktycznych umiejętności tworzenia i symulowania modeli z wykorzystaniem tej nakładki.

2. Wstęp teoretyczny.
Biblioteka Simulink dołączana do pakietu Matlab jest graficznie zorientowanym środowiskiem projektowym wyposaŜonym w funkcje: • Konstrukcji modeli dynamicznych • Analizy działania modeli dynamicznych przy róŜnych wymuszeniach • Prezentacji wyników symulacji
W pełni interaktywne środowisko pracy Simulink umoŜliwia budowę modeli dynamicznych na bazie predefiniowanych bloków funkcjonalnych dołączanych wraz z pakietem. Funkcje edycyjne ułatwiają szybkie tworzenie modeli oraz ich modyfikację. W celu umoŜliwienia symulacji nakładkę Simulink wyposaŜono w zestaw bloków modelujących sygnały wejściowe. Podstawowe to: step, const, ramp. MoŜliwa jest teŜ symulacja dla bardziej złoŜonych wymuszeń, w tym zdefiniowanych przez uŜytkownika. Symulacji układów sterowania moŜna dokonywać dla róŜnych metod całkowania, zadanych parametrów (krok, rząd metody, czas symulacji, solver i in.). Prezentacja wyników symulacji w nakładce Simulink jest moŜliwa dzięki bogatej bibliotece bloków wyjściowych. Najprostsze z nich to: display, scope, to workspace i in.). Dzięki temu wyniki symulacji mogą być przesłane np. do przestrzeni roboczej Matlab’a i tam poddane dalszemu przetwarzaniu. MoŜliwości nakładki Simulink mogą zostać rozszerzone przez dodatkowe biblioteki bloków funkcjonalnych (blocksetsi). Przykładowe biblioteki to: Nonlinear Control Design Blockset – wspomaganie projektowania nieliniowych układów sterowania, Power System Blockset – wspomaganie projektowania układów sterowania systemami maszyn i napędów duŜych mocy. DSP Blockset – wspomaganie projektowania systemów wykorzystujących cyfrowe przetwarzanie sygnałów.

3. Program ćwiczenia.
3.1 Model zaleŜności statycznej. Przedmiotem modelowania będzie zaleŜność umoŜliwiającą zamianę wartości temperatur wyraŜonych w stopniach Celsjusza na wartości wyraŜone w stopniach Fahrenheita: TF = 9/5*(TC) + 32, Elementy nakładki SIMULINK wykorzystane do budowy modelu: Blok Ramp (wymuszenie prędkościowe) z biblioteki Sources, (wejście) Blok Const (wartość stała) z biblioteki Sources, (wartość stała równa 32) Blok Gain (wzmocnienie) z biblioteki Math, (mnoŜenie) Blok Sum (sumator) z biblioteki Math, (dodawanie) Blok Scope (oscyloskop) z biblioteki Sinks, ) (wyniki symulacji) (1)

Ćwiczenie 4 – Wykorzystanie nakładki Simulink do budowy i symulacji ...

-1-

Laboratorium Modelowania i symulacji

2008 r.

Zadania do wykonania: a) Przeciągnąć wymienione elementy (bloki) do okna modelu:

b) Przypisać wartości parametrom bloków. Dwukrotne kliknięcie – edycja wartości parametrów, wprowadzenie wartości, przycisk Close – zamknięcie okna edycji. Wartości parametrów: Ramp: Initial Output = 0 Gain: 9/5 Constant: 32 c) Połączyć bloki zgodnie z kierunkiem przepływu sygnału:

d) Zapisać model w pliku C2F.mdl. e) W bloku Scope ustawić następujące parametry

f) g) h) i)

Zapoznać się z opcjami symulacji nakładki Simulink (menu Simulation|Parameters). Zasymulować działanie modelu (polecenie Start z menu Simulation) dla czasu symulacji 10s. Zasymulować działanie modelu (polecenie Start z menu Simulation) dla czasu symulacji 50s. Z kaŜdej symulacji skopiować charakterystykę otrzymaną w wyniku wykonania polecenia: >> plot(dane.time, dane.signals.values) >> title(‘Przelicznik stopni Celsjusza na Fahrenheita’)

Ćwiczenie 4 – Wykorzystanie nakładki Simulink do budowy i symulacji ...

-2-

Laboratorium Modelowania i symulacji

2008 r.

3.2 Model równania róŜniczkowego Przedmiotem modelowania będzie równanie róŜniczkowe postaci: x’(t) = -2*x(t) + u(t), (2) gdzie u(t) jest falą prostokątną o amplitudzie równej 1 i częstotliwości równej 1 rad/sec. W modelu równania do wyznaczenia x(t) na podstawie x’(t) wykorzystano blok integratora. Inne niezbędne bloki to Gain (mnoŜenie) oraz Sum (sumator). Dodatkowo zastosowano blok Signal Generator (biblioteka Sources) do wygenerowania zadanego przebiegu funkcji u(t). Zadania do wykonania: a) Przeciągnąć bloki do okna modelu. b) Połączyć bloki zgodnie ze schematem:

Węzeł zaczepowy tworzy się przez przeciąganie linii z wciśniętym prawym przyciskiem myszy. W celu odwrócenia bloku Gain naleŜy wywołać menu kontekstowe (klikając prawym przyciskiem myszy na bloku) i wykonać polecenie Flip Block. Zapoznać się z opcja mi menu kontekstowego. c) Zapisać model w pliku rr.mdl. d) Przeprowadzić symulację działania stworzonego modelu dla dwóch róŜnych metod całkowania – jednokrokowej (Fixed-step) i wielokrokowej (Variable-step) (metody zmienia się w menu Simulations|Parameters|Solver options). e) Z kaŜdej symulacji skopiować otrzymaną charakterystykę (podobnie jak w pkt. 3.1i).

3.3 Postać transmitancyjna. Zakładając zerowe warunki początkowe, do równania (2) stosuje się obustronne przekształcenie Laplace’a, co prowadzi do równania: sX(s)= -2*X(s)+U(s) (3) Traktując U(s) jako transformatę wymuszenia, oraz X(s) jako transformatę odpowiedzi, po prostych przekształceniach uzyskuje się następującą transmitancję modelu:
G( s) = 1 s+2

(4)

Zadania do wykonania: a) Przeciągnąć do okna modelu bloki: Signal Generator (biblioteka Sources), Transfer Fcn, (biblioteka Continous) b) Połączyć bloki zgodnie ze schematem:

Ćwiczenie 4 – Wykorzystanie nakładki Simulink do budowy i symulacji ...

-3-

Laboratorium Modelowania i symulacji

2008 r.

c) Ustawić parametry bloku Signal Generator: Wave Form: square Amplitude: 1 Frequency: 1 Units: rad/sec d) Zapisać model w pliku trans.mdl. e) Przeprowadzić symulację działania stworzonego modelu dla dwóch róŜnych metod całkowania – jednokrokowej (Fixed-step) i wielokrokowej (Variable-step) (metody zmienia się w menu Simulations|Parameters|Solver options). f) Z kaŜdej symulacji skopiować otrzymaną charakterystykę (podobnie jak w pkt. 3.1i). 3.4 Model silnika prądu stałego. Na rys. poniŜej przedstawiono model silnika prądu stałego wraz z obciąŜeniem.

Wejściem modelu jest napięcie vapp, wyjściem – prędkość kątowa. Sterowanie modelem polega na takiej zmianie napięcia, która wywoła Ŝądaną zmianę prędkości. Model opisują następujące zaleŜności: 1. Moment τ, widziany od strony wału, jest proporcjonalny do prądu indukowanego przez przyłoŜone napięcie vapp: τ(t) = Km*i(t), gdzie: Km – stała uzwojenia silnika, związana z jego właściwościami fizycznymi. 2. Indukowana w silniku siła elektromotoryczna vemf, jest proporcjonalna do prędkości kątowej ω(t). Kb, jest pewną stała zaleŜną równieŜ od własności silnika. Vemf(t) = Kb*ω(t) (6) Równania (4,5) są związane z przepływem prądu w uzwojeniach silnika. Stosując dodatkowo prawa mechaniki Newtona, moŜna zapisać równanie równowagi momentów (J – moment bezwładności obciąŜenia):
J dω = dt

(5)

∑τ
i

i

= − K f ω (t ) + K m i (t )

(7)

Ćwiczenie 4 – Wykorzystanie nakładki Simulink do budowy i symulacji ...

-4-

Laboratorium Modelowania i symulacji

2008 r.

Uwzględniając równania (5) i (6) część elektryczną modelu silnika moŜna opisać równaniem:
v app (t) - v emf (t ) = L di (t ) + Ri(t ) dt

(8)

Uwzględniając (6) równanie przekształca się do postaci:
K di(t ) R 1 = − i(t ) − b ω (t ) + v app (t ) dt L L L

(9)

Przekształcając (7) moŜna wyprowadzić 2 równanie opisujące silnik:
dω (t ) 1 1 = − K f ω (t ) + K m i (t ) dt J J

(10)

Równania (9, 10) moŜna przedstawić w postaci macierzowej, jako równania stanu:

 R Kb  − − 1 i   L d  L  i    = + L ⋅v , ⋅ K f  ω    app dt ω   K m     0    J − J   
oraz równanie wyjścia:
i  y (t ) = [0 1] ⋅   + [0] ⋅ v app (t ) ω 

(11)

(12)

Zadania do wykonania: a) W środowisku Matlab utworzyć skrypt ustalający wartości parametrów silnika oraz tworzący jego model w postaci przestrzeni stanów:
% Inicjacja wartości parametrów R= 2.0 % Omów L= 0.5 % Henrów Km = .015 % stała momentu Kb = .015 % stała siły elektromotorycznej Kf = 0.2 % Nms J= 0.02 % kg.m^2/s^2 % Konstrukcja modelu w postaci równań stanu % poprzez zbudowanie macierzy i wywołanie funkcji ss() A = [-R/L -Kb/L; Km/J -Kf/J] B = [1/L; 0]; C = [0 1]; D = [0]; dc_ss = ss(A,B,C,D)

Skrypt naleŜy zapisać w pliku model_dc.m. b) Uruchomić utworzony skrypt poleceniem model_dc. c) Zmienić postać modelu z równań stanu na transmitancję (wejście – vapp(t), wyjście - ω(t)):
dc_tf = tf(dc_ss).

d) Wyznaczyć charakterystyki częstotliwościowe (Bodego) modelu:
bode(dc_tf).

e) Przejść do nakładki SIMULINK i utworzyć nowy model poleceniem File|New Model f) Korzystając z bloku Transfer Fcn (biblioteka Continous), Step (biblioteka Sources), oraz Scope (Sinks), wyznaczyć odpowiedź czasową modelu transmitancyjnego. Postać transmitancji w bloku Transfer Fcn odpowiada transmitancji wyznaczonej w punkcie a. Układ zamodelować jak na schemacie:

Ćwiczenie 4 – Wykorzystanie nakładki Simulink do budowy i symulacji ...

-5-

Laboratorium Modelowania i symulacji

2008 r.

1 .5 s2 +1 4 s+4 0 .0 2 S te p T ra n sfe r Fcn S co p e

g) h) i) j) k)

Przeciągnąć do okna modelu blok wymuszenia liniowo narastającego Ramp (biblioteka Sources). Podłączyć blok Ramp do wejścia modelu. Zapisać utworzony model w pliku dc.mdl Symulację przeprowadzić naleŜy dla czasu 5s. Przeprowadzić symulację dla następujących parametrów bloku Ramp: prędkość narastania napięcia (slope = 10 V/s.), start time = 0. Czas symulacji równy 10s.

l) Z symulacji skopiować otrzymaną charakterystykę (podobnie jak w pkt. 3.1i).

Ćwiczenie 4 – Wykorzystanie nakładki Simulink do budowy i symulacji ...

-6-

 
statystyka