MATEMATYCZNY OPIS UKŁADÓW DYNAMICZNYCH
1. Postać ogólna modelu dynamicznego ciągłego
Obiekty dynamiczne, będące jednowejściowymi i jednowyjściowymi układami liniowymi (rys. 1), o parametrach skupionych i niezależnych od czasu, opisuje się za pomocą liniowych równań różniczkowych o stałych współczynnikach (1):
u(t) y(t)
Rys. 1. Schemat blokowy układu dynamicznego
u b u b u b u b y a y a y a y a m m m m n n n n 0 ) 1 ( 1 ) 1 ( 1 ) ( 0 ) 1 ( 1 ) 1 ( 1 ) ( ... ...+ + = + + + + + + − − − − , (1) czyli:
∑
∑
= = = n i m l l l l i i i dt t u d b dt t y d a 0 0 ) ( ) ( , (2)gdzie: y(t) – wielkość wyjściowa, u(t) – wielkość wejściowa,
i i i dt y d y() = dla (0,1,...,n), j j j dt u d u( )= dla (0,1, ...m), n≥m.
1.1. Modelowanie układu za pomocą schematu operacyjnego
Jedną z podstawowych metod rozwiązywania równań różniczkowych zwyczajnych lub ich układów dowolnego rzędu, liniowych, jak również nieliniowych jest metoda ogólna Kelvina.
Przy tworzeniu schematu operacyjnego dla równania n-tego rzędu (3)
ku y a dt dy a dt y d a dt y d a n o n n n n n + − + + + = − − 1 1 1 1 ... , (3)
metodą Kelvina postępujemy w następujący sposób:
- Po stronie lewej równania pozostawiamy jedynie pochodną najwyższego rzędu funkcji niewiadomej, przenosząc na stronę prawą równania różniczkowego wszystkie pozostałe wyrazy (4) y a a dt dy a a dt y d a a u a k dt y d n o n n n n n n n n − − − − = − − − 1 1 1 1 ... . (4)
- Wartość funkcji niewiadomej y wyznaczamy całkując n krotnie równanie (3). Realizujemy to łącząc szeregowo n integratorów (elementów całkujących), przy czym na wejście pierwszego integratora podajemy sygnał n-tej pochodnej y. Wtedy na wyjściu ostatniego integratora otrzymujemy sygnał y (rys. 2).
∫
∫
∫
. . .
n n dt y d 1 1 − − n n dt y d 2 2 − − n n dt y d dt dy yRys. 2. Szeregowe połączenie n integratorów
- Dysponując wyjściami integratorów oraz funkcją wymuszającąx tworzymy prawą stronę równania (4), otrzymując pochodną n-tego rzędu funkcji y.
∑
+
-.
n n dt y d y 2 2 − − n n dt y d 1 1 − − n n dt y d.
u k n a a0 n a n a n a n-1 a.
n-2 aRys. 3. Graficzne przedstawienie równania 4
- Łączymy wyjście układu z rys. 3 z wejściem układu z rys. 2, otrzymując pełny schemat operacyjny równania różniczkowego n-tego rzędu (rys. 4).
∫
∫
∫
. . . n n dt y d 1 1 − − n n dt y d 2 2 − − n n dt y d dt dy y∑
+ -n a k n a a0 u n-1 a . . . n a n-2 a n aRys. 4. Pełny schemat operacyjny równania różniczkowego n-tego rzędu
- Ustalamy warunki początkowe funkcji y(0) i jej pochodnych, i przypisujemy je
1.2. Opis układu za pomocą wektora stanu
Rozpatrując dynamikę układu można powiedzieć, że układ w dowolnym momencie
przyjmuje jakiś stan. Na przykład, rozpatrując samochód w ruchu można opisać jego stan za pomocą położenia i prędkości. Zmienne te nazywamy zmiennymi stanu układu. Zmienne stanu układu:
- powinny opisywać zmagazynowaną energię elementów układu (potencjalną lub
kinetyczną),
- muszą być niezależne,
- powinny całkowicie opisywać elementy układu.
Najmniejszą liczbę zmiennych stanu x1(t), ..., xn(t), która wystarcza do określenia stanu
układu, nazywamy wektorem stanu układu i oznaczamy:
= ) ( ) ( ) ( ) ( 2 1 t x t x t x t n M x . (5)
Dla układu o r wejściach i m wyjściach tworzymy wektory wejść u(t) i wyjść y(t):
- wektor wejść = ) ( ) ( ) ( ) ( 2 1 t u t u t u t r M u , (6) - wektor wyjść = ) ( ) ( ) ( ) ( 2 1 t y t y t y t m M y . (7)
Po określeniu zmiennych stanu należy układ opisać za pomocą równań różniczkowych pierwszego rzędu. Jeżeli rząd obiektu jest równy n, to uzyskamy n równań pierwszego rzędu. Ogólna postać równań zmiennych stanu i wyjść układu jest następująca:
) ( ) ( ) ( t t dt t d Bu Ax x + = , (8) ) ( ) ( ) (t Cx t Du t y = + , (9)
gdzie: x(t) – wektor zmiennych stanu,
y(t) – wektor wielkości wyjściowych,
A – macierz kwadratowa (n x n) wymiarowa, B – macierz (n x r) wymiarowa,
C – macierz (m x n) wymiarowa,
D – macierz (m x r) wymiarowa.
2. Transmitancja operatorowa
Transmitancja operatorowa K(s) jest to stosunek transformaty Laplace’a Y(s) sygnału
wyjściowego y(t) do transformaty Laplace’a U(s) sygnału wejściowego u(t), przy zerowych warunkach początkowych (funkcji y(t) i u(t)):
∑
∑
= = = = n i i i m l l l s a s b s U s Y s K 0 0 ) ( ) ( ) ( . (10)Związek pomiędzy wielkością wejściową i wyjściową obiektu, przedstawiony w postaci operatorowej, otrzymujemy po dokonaniu przekształcenia Laplace’a równania (2) oraz
zastosowaniu twierdzenia o różniczkowaniu ( () sF(s) f(0)
dt t df → − ). U(s) Y(s) K(s)
Przebieg ćwiczenia laboratoryjnego
1. Zapoznanie się z podstawowymi blokami symulacyjnymi stosowanymi w programie
SIMULINK.
2. Dla podanego modelu układu liniowego, należy przedstawić: - model wyznaczony na podstawie schematu operacyjnego, - model wyznaczony na podstawie transmitancji operatorowej,
- model wyznaczony na podstawie równań stanu.
3. Przeprowadzić badania symulacyjne dla różnych parametrów układu.
4. W sprawozdaniu zamieścić otrzymane wyniki i przedstawić wnioski.
Przykład ćwiczenia laboratoryjnego
Modelowanie i symulacja silnika obcowzbudnego prądu stałego
Na rys. 1.1. przedstawiono uproszczony schemat silnika obcowzbudnego prądu stałego. W układzie tym sterujemy prędkością kątowa w(t) za pomocą napięcia twornika U(t). Zależność wiążącą te wielkości można wyznaczyć korzystając z równań opisujących obwód elektryczny i mechaniczny maszyny.
Uw =const ω U i e R,L J f
Rys. 1.1. Silnik obcowzbudny prądu stałego
Siła elektromotoryczna jest równa:
ϕω
c
e= (1.1)
gdzie: c – stała konstrukcyjna maszyny,
φ – strumień wzbudzenia, ω – prędkość obrotowa silnika.
Ponieważ napięcie Uw w obwodzie wzbudzenia jest stałe, stały jest także strumień
wzbudzenia φ . Możemy zatem napisać: ω e
k
e= (1.2)
gdzie ke – stała elektromechaniczna maszyny
dt di L iR k U = ωe + + (1.3)
Równanie równowagi momentów na wale silnika (przy pominięciu tarcia) ma postać: o e M M dt d J ω = − (1.4)
gdzie: J – całkowity moment bezwładności,
Me – moment elektromagnetyczny silnika,
Mo – moment obciążenia
Zachodzi także zależność (1.5)
Me =cmφi =k im (1.5)
gdzie: km – stała mechaniczna.
Wobec tego równania stanu (opisujące model dynamiczny silnika) mają postać :
− = + − − = o m e M J i J k dt d U L L k i L R dt di 1 1 ω ω (1.6)
Model wyznaczony za pomocą schematu operacyjnego przedstawiono na rys. 1.2.
Rys. 1.3. Model układu wyznaczony za pomocą równań stanu
W modelu wykorzystano blok równań stanu (State-Space) dwoma sygnałami wejściowymi
(wymuszenie U i zakłócenie Mo) oraz dwoma sygnałami wyjściowymi (prąd i oraz prędkość
obrotowa omega). Zgodnie z (1.6) otrzymujemy dla poszczególnych macierzy:
− − = 0 J km L ke L R A − = J L B 1 0 0 1 = 1 0 0 1 C = 0 0 0 0 D
Transmitancje operatorowe wyznaczamy z równań (1.6). Dla prędkości obrotowej
otrzymujemy: ) ( ) ( ) ( 2 2 Mo s kekm JRs JLs R Ls s U kekm JRs JLs km s + + + − + + = Ω ) ( ) ( ) ( 2 2 Mo s kekm JRs JLs L s U kekm JRs JLs Js s I + + + + + =
Rys. 1.4. Model układu wyznaczony za pomocą transmitancji operatorowych
%Przykladowy plik wykonawczy MATLAB-a % silnik obcowzbudny pradu stalego R= 1; % rezystancja twornika L=0.02; % indukcyjnosc twornika J=0.003; % moment bezwladnosci km=0.5; ke=0.0764; % stałe maszyny U=24; % napiecie twornika
Mo=1; % Moment obciazenia sim('nazwa_pliku_sim',10); subplot(4,1,1); plot(t,U); grid; ylabel(‘U’); subplot(4,1,2); plot(t,Mo); grid; ylabel(‘Mo’); subplot(4,1,3); plot(t,i); grid; ylabel(‘i’); subplot(4,1,3); plot(t,omega); grid; ylabel(‘omega’); xlabel(‘t’);
Przykład modelowania układu nieliniowego
Schemat ideowy układu dwóch zbiorników przedstawiono na rys. 2.1. W układzie tym do zbiornika pierwszego o powierzchni A1 dostarczana jest ciecz o natężeniu dopływu Q(t). Poziom cieczy w zbiorniku jest zmienny i wynosi h1(t). Do zbiornika drugiego ciecz przepływa poprzez otwór o regulowanej powierzchni a1(t) z natężeniem q12. Powierzchnia drugiego zbiornika wynosi A2, a poziom cieczy wynosi h2(t). Ciecz z drugiego zbiornika jest odprowadzana za pomocą otworu o powierzchni a2(t) z natężeniem wypływu q2(t). Przepływ (wypływ) cieczy jest realizowany hydrostatycznie.
q12 h2 Q q2 A1 h1 A2
Rys. 2.1. Schemat ideowy układu dwóch zbiorników
Model matematyczny układu dwóch zbiorników przepływowych
Równania opisujące rozpatrywany układ:
Dla pierwszego zbiornika równanie bilansu przepływu ma postać
A dh dt Q q 1 1 12 = − (2.1) gdzie: q12 =c1 h1 −h2 sgn(h1 −h2) c1 =a1 2g g- przyspieszenie ziemskie
Dla drugiego zbiornika możemy napisać podobne równanie:
A dh dt q q 2 2 12 2 = − (2.2) gdzie: q2 =c2 h2 c2 =a2 2g
Jednym z najczęściej stosowanych sposobów analizy układów wielowymiarowych jest symulacja komputerowa. Symulacja polega na odwzorowaniu badanego układu fizycznego na modelu opisanym tymi samymi równaniami matematycznymi co rzeczywisty układ. Istota modelowania polega na tym, że statykę i dynamikę złożonego układu fizycznego możemy poznać na modelu. Tym samym model, poprzez określenie właściwości regulacyjnych układu, umożliwia dobór struktury i parametrów regulatora.
W celu zamodelowania omawianego układu należy równania (2.1) i (2.2) opisujące proces przekształcić do postaci dh dt A Q c h h h h 1 1 1 1 2 1 2 1 = ( − − sgn( − )) (2.3) dh dt A c h h h h c h 2 2 1 2 2 1 2 2 2 1 = ( − sgn( − )− ) (2.4)
Postać równań (2.3) i (2.4) przedstawia opis (w przestrzeni stanu) rozpatrywanego nieliniowego układu i jest wygodna do zamodelowania na maszynie cyfrowej lub analogowej.
Na rys. 2.2 przedstawiono schemat blokowy modelu układu zrealizowany za pomocą
programu SIMULINK w środowisku MATLAB-a.
c2 wzm 3 1/A2 wzm 2 c1 wzm 1 1/A1 wzm h2-h1 s 1 h2' h2 h2 s 1 h1' h1 h1 c2 c1 Znak(h2-h1) Znak(h2) Sum 2 Sum Q Product1 Product sqrt Pi erw(|h2|) sqrt Pi erw(|h2-h1|) |u| M od|h2| |u| M od|h2-h1|
Rys. 2.2 Schemat blokowy modelu układu dwóch zbiorników przepływowych zrealizowany w programie SIMULINK