Teoria sterowania, laboratorium
Transkrypt
Teoria sterowania, laboratorium
Teoria sterowania, laboratorium zadania powtórkowe – przykładowe rozwiązania ad 1. rown.m – skrypt definiujący równanie różnicowe function dy=rown_roz(t,y) dy=zeros(2,1); dy(1)=y(2); dy(2)=-y(1)-y(2); wykres.m – skrypt rozwiązujący równanie i generujący wykres [T,Y] = ode45(@rown_roz,[0 5],[0 1]); plot(T,Y(:,1)); axis([0 5 -0.75 0.75]); Wykres rozwiązania y(t). 0.6 0.4 y(t)-> 0.2 0 -0.2 -0.4 -0.6 0 1 2 3 4 5 t-> ad 2. wykr_tab.m – skrypt generujący tablicę wykresów t=0:0.05:10; t=0:0.05:10; a=[0 pi/2 pi]; b=[1 2]; for k=1:3 for l=1:2 y=b(l).*exp(-0.5.*t).*sin(2.*t-a(k)); n=(k-1)*2+l; subplot(3,2,n); plot(t,y); axis([0 10 -2.5 2.5]); end end J. W. Kłos 1z5 Tablica wykresów. 2 2 0 0 -2 -2 0 5 10 2 2 0 0 -2 0 5 10 0 5 10 0 5 10 -2 0 5 10 2 2 0 0 -2 -2 0 5 10 ad 3. Schemat maszynowy układu odpowiadający podanym równaniom stanu i wyjścia. u Sine Wave 1 s x1 Integrator y Scope 1 s x2 Integrator1 2 Gain ad 4. Równania stanu i równanie wyjścia odpowiadające podanemu schematowi maszynowemu. x&1 = Kx1 + x 2 x& 2 = 2Tx2 + u y = Tx1 + x 2 J. W. Kłos 2z5 ad 5. Odpowiedz skokowa (żółta krzywa) dla zadanego układu. ad 6. ch_amp_faz.m – skrypt generujący charakterystykę amplitudowo fazową w=0.1:0.01:100; g=1./(i.*w+2).^2; x=real(g); y=imag(g); plot(x,y); grid on; xlabel('P-->'); ylabel('Q-->'); Charakterystyka amplitudowo fazowa. 0 -0.02 -0.04 Q--> -0.06 -0.08 -0.1 -0.12 -0.14 -0.16 -0.18 -0.05 J. W. Kłos 0 0.05 0.1 0.15 P--> 0.2 0.25 0.3 3z5 ad 7. ch_bode.m – skrypt generujący charakterystyki Bodego w=0.1:0.01:100; g=1./(i.*w+2).^2; a=abs(g); f=angle(g); subplot(2,1,1); loglog(w,a); xlabel('w->'); ylabel('A [dB]') subplot(2,1,2); semilogx(w,f); xlabel('w->'); ylabel('phase->') Charakterystyki Bodego. 0 A [dB] 10 -2 10 -4 10 -1 10 0 1 10 10 2 10 w-> phase-> 0 -2 -4 -1 10 0 1 10 10 2 10 w-> Układ jest filtrem dolnoprzepustowym. Dla dużych częstotliwości przesunięcie fazowe między odpowiedzią a sterowaniem jest bliskie π. ad 8. feedback_trans.m – skrypt zawierający funkcję wyznaczającą transmitancję pętli ujemnego strzeżenia zwrotnego dla funkcji F i G (G- zamyka pętlę). function funh=feedback_trans(F,G) global f g; g=G; f=F; funh=@fun; function res=fun(s) global f g res=feval(f,s)./(1+feval(f,s).*feval(g,s)); J. W. Kłos 4z5 ad 9. Odpowiedź impulsowa dla podanego układu. Rozpatrywany układ jest niestabilny, gdyż jego odpowiedź impulsowa nie dąży do 0 dla t → ∞ . ad 10. Odpowiedź układu (żółta krzywa) w nieobecności regulatora. Odpowiedź układu dla parametrów regulatora: P=10, I=0.75, D=15. J. W. Kłos 5z5