Łukasz Skrodzki, gr. I6Y3S1
Warszawa, dn. 9.01.2008r.
Wojskowa Akademia Techniczna
im. Jarosława Dąbrowskiego
w Warszawie
Laboratorium przedmiotu
'Wprowadzenie do automatyki'
zajęcia 5
Temat:”Modelowanie liniowych układów dynamicznych w środowisku MATLAB”
Słuchacz: Łukasz Skrodzki
grupa: I6Y3S1
rok akademicki: 2007/2008
semsetr: III
prowadzący: mgr inż. Małgorzata Rudnicka – Schmidt
data przeprowadzenia ćwiczenia: 9.01.2008r.
Treść zadania:
Utworzyć w środowisku MATLAB modele podstawowych członów dynamicznych o podanych transmitancjach Laplace’a:
- całkującego
- inercyjnego
- oscylacyjnego
Wyświetlić odpowiedzi skokowe powyższych układów.
Wyznaczyć transmitancję szeregowego połączenia transmitancji
Hc(s) i Hi(s).
Wyznaczyć transmitancję równoległego połączenia transmitancji
Hi(s) i Ho(s).
Wyznaczyć transmitancję układu zamkniętego z rys. 5
Rys. 5
Wyświetlić odpowiedzi skokowe układów (z pkt 2, 3, 4).
Dany jest układ opisany równaniami
- stanu:
- wyjścia:
- warunki początkowe:
a/ zamodelować powyższy układ w środowisku MATLAB
b/ wyznaczyć transmitancję Laplace’a
c/ wyznaczyć transmitancję Laplace’a w postaci zero - biegunowej
d/ wyznaczyć zera i bieguny układu
e/ wyświetlić wykres odpowiedzi skokowej korzystając z funkcji step
f/ obliczyć odpowiedź skokową
uwaga: w tym celu należy:
- wyznaczyć transformatę sygnału wyjściowego ,
- rozłożyć ją na ułamki proste (funkcja residue),
- utworzyć wektor czasu, np. za pomocą funkcji linspace:
t=linspace(0,tk,lp);
funkcja linspace generuje wektor długości lp wartości z przedziału [0,tk]
rozłożonych równomiernie,
- wyznaczyć odpowiedź ze wzoru:
g/ narysować odpowiedź za pomocą funkcji plot
h/ opisać osie, nanieść tytuł, nanieść siatkę
i/ porównać wykresy z punktów e i g
Rozwiązanie:
AD 1.
k = 2.500 T = 0.100 ksi = 0.200
a)Transmitancja:
Odpowiedź skokowa:
b)Transmitancja:
Odpowiedź skokowa:
Transmitancja:
Ad 2:
Transmitancja:
Odpowiedź skokowa:
Ad 3:
Transmitancja:
Odpowiedź
skokowa:
Ad 4:
k = 8, kk = 5, T1 = 0.3 T2 = 0.15, Ti = 0.052
Transmitancja:
Odpowiedź skokowa:
Ad 5:
b0 = 250.000 a0 = 100.000, a1 = 4.000, a2 = 1.000
Opis w postaci wektorowo-macierzowej:
Transmitancja Laplace'a:
Transmitancja w postaci zero-biegunowej:
Układ nie ma zer, natomiast bieguny układu to:
Wykres odpowiedzi skokowej układu:
Aby wyznaczyć odpowiedź skokową posłużyłem się następującą sekwencją komend:
>>[l m] = tfdata(H, 'v'); %pobranie licznika i mianownika transmitancji w postaci wektorów
>>[r, p, k] = residue(l, m); %rozkład na ułamki proste
>>t = linspace(0,5,100); %utworzenie 100 elementowego wektora czasu z przedziału <0;5>
>>for i=1:100 %pętla licząca y(t) według podanego
>>y(i)= r(1)*exp(p(1)*t(i))+r(2)*exp(p(2)*t(i)); %wcześniej wzoru
>>end
>>plot(t, y) %narysowanie wykresu odpowiedzi
W wyniku wykonania powyższego fragmentu kodu uzyskałem następujący wykres:
Wykresy obu odpowiedzi są takie same.