Instrukcja do ćwiczenia laboratoryjnego

Transkrypt

Instrukcja do ćwiczenia laboratoryjnego
Unowocześnienie i rozszerzenie oferty edukacyjnej na kierunku
Automatyka i Robotyka na Wydziale Automatyki, Elektroniki
i Informatyki Politechniki Śląskiej –
otwarcie specjalności i przygotowanie kadr
Nr projektu: POKL.04.01.01-00-270.08
Materiały dydaktyczne dla przedmiotu
„PODSTAWY AUTOMATYKI”,
kierunek Automatyka i Robotyka,
specjalność „Technologie informacyjne w
automatyce i robotyce”
Instrukcja do ćwiczenia laboratoryjnego
Publikacja współfinansowana przez Unię Europejską ze środków
Europejskiego Funduszu Społecznego
Publikacja dystrybuowana bezpłatnie
PODSTAWY AUTOMATYKI
Laboratorium
Ćw. 1. Elementy komputerowego wspomagania projektowania UR
Matlab/Simulink
A. MATLAB
Dla obiektu ciągłego o transmitancji K ( s) =
k
( T1 < T2 , k>1):
(1 + sT1 )(1 + sT2 )
Analiza układu otwartego:
1. Wprowadzić transmitancję K(s). (tf)
2. Przedstawić K(s) w różnych postaciach zapisu. (zpk, zpkdata, pzmap, tfdata, ss, tf2ss)
3. Wykreślić przebieg odpowiedzi skokowej (step), opisać i skonfigurować rysunek
(figure, title, xlabel, ylabel, grid ).
4. Narysować charakterystyki częstotliwościowe (w osobnych oknach):
a) amplitudowo-fazową (nyquist)
b) logarytmiczną amplitudy oraz fazy (bode, bodemag)
Analiza układu zamkniętego (regulator P + obiekt + ujemne sprzężenie zwrotne):
5. Wyznaczyć przebieg linii pierwiastkowych (rlocus)
6. Wyznaczyć warunki stabilności (wzmocnienie graniczne kgr)
Dla wzmocnienia regulatora kr = 0,5 kgr:
7. Wyznaczyć zapas amplitudy oraz fazy. (margin)
8. Wyznaczyć transmitancję główną oraz uchybową. (minreal)
9. Wykreślić na jednym rysunku przebiegi odpowiedzi skokowych układu zamkniętego:
y(t) i e(t). (hold)
10. Narysować przebieg wskaźnika nadążania oraz wskaźnika regulacji:
M (ω ) =
K o ( jω )
1
, q (ω ) =
.
1 + K o ( jω )
1 + K o ( jω )
(bodemag)
B. SIMULINK
I.
Układ otwarty
Zamodelować w SIMULINKU równanie różniczkowe opisujące zbiornik z Rys. 1.
Założyć, że przepływ wyjściowy jest burzliwy q12 = c1 h1 . Wykreślić przebiegi czasowe
h ( t ) , h ( t ) dla zerowych oraz niezerowych warunków początkowych przy wymuszeniu
1
1
q1 ( t ) = 1 ( t ) .
q1(t)
r1
h1(t)
c1
Rys. 1. Zbiornik.
q12(t)
Równanie różniczkowe opisujące zmianę poziomu cieczy w zbiorniku ma postać:
dh ( t )
a1 1
+ c1 h1 ( t ) − q1 ( t ) = 0
dt
gdzie a1 = π r12 - pole podstawy walca
Równanie różniczkowe można przekształcić do postaci:
dh1 ( t ) 1
=
−c1 h1 ( t ) + q1 ( t ) .
dt
a1
i zamodelować w środowisku Simulink jak na Rys. 2.
(
)
(1)
(2)
Rys. 2. Schemat blokowy równania (1).
•
W bloku Integrator należy wprowadzić warunek początkowy h1 ( 0 ) = h10 (opcja
•
Integrator Parameters).
W parametrach bloku To Workspace należy podać nazwę zmiennej (Level1 i Flow)
dostępnej w przestrzeni roboczej Matlaba oraz jej typ (Save format: Array).
Na schemacie z Rys. 2 przedstawiony jest bloczek Subsystem. Otrzymuje się go
zaznaczając odpowiedni obszar schematu blokowego i wybierając z menu podręcznego
Create subsystem.
Aby wykreślić przebiegi czasowe zamodelowanego układu należy przeprowadzić
symulację z odpowiednio ustawionymi parametrami w Simulation/Configuration
Parameters/:
− w zakładce Solver:
• Stop time – horyzont symulacji,
• wybrać ustalony1 krok całkowania Fixed step size (np. 0.001),
• wybrać odpowiednią metodę całkowania numerycznego (np. ode4),
− w zakładce Data Import/Export:
• Wyłączyć opcję Limit data points to last,
Dodatkowo należy wyłączyć opcję Limit data points to last w parametrach elementu Scope.
Następnie można wykreślić przebiegi czasowe wprowadzając komendy z linii poleceń
Matlaba:
>> plot(tout,Flow); grid;
>> figure, plot(tout,Level1); grid;
II.
Układ zamknięty – na przykładzie układu regulacji dyskretnej w czasie
Zaprojektować układ regulacji dyskretnej w czasie (Rys. 3a)). W tym celu należy
utworzyć nowy ciągły obiekt regulacji (Rys. 3b)), umieszczając na wyjściu h1(t) równania (2)
element dynamiczny opisany transmitancją K(s) z części A instrukcji. Przyjąć okres
próbkowania h=0,5*T2. Ustawić okres próbkowania (Sample time = h) w elementach ZeroOrder-Hold i Discrete Transfer Fcn. Dobrać wzmocnienie regulatora k, tak aby zamknięty
dyskretny układ regulacji był stabilny.
a)
k
Step
Gain
y(t)
u(t)
e(ih)
In1 Out1
Zero-Order
Hold
Subsystem
Discrete
NOWY OBIEKT Transfer Fcn
1
y(t), y(ih)
1
y(ih)
b)
c)
Discrete
Transfer Fcn
1
1
Rys. 3. Schemat dyskretnego układu regulacji oraz elementy dodatkowe
1
Można także zostawić zmienny krok całkowania (Variable-step). Należy jednak wówczas ustawić Max step
size – maksymalny krok całkowania (np.: 0.001)
Wykreślić przykładowe przebiegi czasowe: y(t), y(ih), w(ih) i u(t) – Rys. 4. Aby
wykreślić przebiegi czasowe zamodelowanego układu, należy prawidłowo ustawić
parametry symulacji. W szczególności należy ustawić w zakładce
Simulation/Configuration Parameters/Solver opcję Tasking mode for periodic sample
time na SingleTasking.
6
1.4
u(ih)
u(t)
y(t)
y(ih)
5
1.2
4
1
3
0.8
2
0.6
1
0.4
0
0.2
0
-1
0
1
2
3
4
5
6
7
8
9
10
-2
0
1
2
3
Rys. 4. Przykładowe przebiegi y i u
4
5
6
7
8
9
10