Rõ ràng làđ nh y theo b tăng nhanh bên ngoài ωB.
Trang 1ms = [1 2*z*wn wn^2];
sys = tf(ts,ms);
t = 0:0.02:4;
c = step(sys,t);
plot(t,c)
T s đ kh i ta có:
d s ) 1 de ( s
d )
s ( R
) s ( C
=
Ph ng trìnhđ c tính là:
s2 + (de + 1)s + d = s2+ 2ωnζs + 2
n ω
V i 2= wn = 0.28 và z = ζ = 4.0906 ta có d = 16.733 và e = 0.077
n
ω
Khi có m t hàm truy n ta có th xác đ nh h s t t ζ và t n s t nhiên ωnb ng
l nh damp.
Ví d : Cho h có hàm truy n:
3 s 2 s
1 s 5 s 2 ) s (
2
+ +
+ +
= Tìm h s t t ζ và t n s t nhiên ωn Các l nh MATLAB (l u trong ct6_22.m)
nh sau:
h = tf([2 5 1],[1 2 3]);
damp(h)
Eigenvalue Damping Freq (rad/s)
1.00e+000 + 1.41e+000i 5.77e 001 1.73e+000
1.00e+000 1.41e+000i 5.77e 001 1.73e+000
2 Đáp ng trong mi n th i gian c a h th ng:
khi không có kích thích d u vào nh ng t n t i các giá tr ban đ u c a vec t
c a m t h th ng (l u trong ct6_23.m)nh sau:
clc
a = [ 0.5572 0.7814;0.7814 0];
c = [1.9691 6.4493];
x0 = [1 ; 0]
sys = ss(a,[],c,[]);
initial(sys,x0)
Trang 2b Đáp ng xung Dirac: Ta tìm đáp ng c a h th ng v i xung nh hàm
impulse Các l nh MATLAB (l u trongct6_24.m)nh sau:
clc
a = [ 0.5572 0.7814;0.7814 0];
b = [1 1;0 2];
c = [1.9691 6.4493];
sys = ss(a,b,c,0);
impulse(sys)
kênh th 2
c Đáp ng đ i v i hàm b c nh y: Đ tìm đáp ng c a h th ng đ i v i
nh sau:
clc
a = [ 0.5572 0.7814;0.7814 0];
b = [1 1;0 2];
c = [1.9691 6.4493];
sys = ss(a,b,c,0);
step(sys)
kênh th 2
d Đáp ng v i tín hi u b t k : Đ tìm đáp ng c a h th ng đ i v i hàm
b t kì ta dùng hàmlsim Các l nh MATLAB (l u trong ct6_26.m) nh sau:
clc
[u,t] = gensig( square ,4,10,0.1);
H = [tf([2 5 1],[1 2 3]) ; tf([1 1],[1 1 5])]
lsim(H,u,t)
sau 0.1s trong 10 chu k
3 Đáp ng trong mi n t n s c a h th ng: Cho m t hàm truy n c a m t h
ng v i giá tr max c a G(ω) g i là ωrvà có tr s là:
2 n
r =ω 1−2ζ ω
Đ v đ c tính t n biên pha c a m t h th ng ta dùng l nh freqs.
Trang 3Ví d : Cho hàm truy n c a m t h th ng là:
4 s 2 s
4 )
s (
+ +
= Tìm đ c tính t n biên pha c a h th ng b ng các l nh MATLAB(l u trong
ct6_27.m):
w = 0:0.01:3;
ms = [1 2 4];
ts = [4];
freqs(ts,ms,w);
Ta cũng có th t o đ th nh sau(l u trong ct6_28.m):
ts = [4];
ms = [1 2 4];
w = 0:0.01:3;
g = freqs(ts,ms,w);
mag = abs(g);
pha = angle(g);
subplot(2,1,1);
loglog(w,mag);
grid on;
subplot(2,1,2);
semilogx(w,pha);
grid on
Ng c l i khi có đ c tính t n biên pha ta có th tìm l i đ c hàm truy n b ng
l nh invfreqs.
Ví d : Tìm hàm truy n c a h th ng(l u trong ct6_29.m):
ts = [1 2 3 2 1 4];
ms = [1 2 3 2 3];
[h,w] = freqz(b,a,64);
[tsm,msm] = invfreqz(h,w,4,5)
Ta cũng có th xây d ng đ c tính t n th c o
Ví d : Cho hàm truy n :
10 s 9 s 5 4 s
10 )
s (
+ + +
= Tìmđ c tính t n th c o c a h b ng các l nh MATLAB (l u trong ct6_30.m):
ts = [10];
ms = [1 4.5 9 10];
w = [1:0.01:3];
Trang 4h = freqs(ts,ms,w);
t = real(h);
a = imag(h);
subplot(2,1,1);
plot(w,t)
subplot(2,1,2);
plot(w,a)
Đ v đ th Bode c a h th ng ta dùng hàm bode Đ th th nh t nh t
là đ c tính biên t n logarit, đ c chia theo dB Đ th th hai là đ c tính pha
t n logarit chia theo đ
Các d ng c a l nh bode g m:
bode(sys)
bode(sys,w)
[bien, pha, w] = bode(sys)
Đ v đ th Bode c a m t h th ng ta dùng các l nh MATLAB(l u trong
ct6_31.m) nh sau:
clc
g = tf([1 0.1 7.5],[1 0.12 9 0 0]);
figure(1)
bode(g)
figure(2)
bode(g,{0.1 , 100})
gd = c2d(g,0.5)
figure(3)
bode(g, r ,gd, b )
Hàm margin cho bi t d tr n đ nh c a h th ng D tr biên gm là h s khuy ch đ i Fr mà n u ta thêm vào hàm truy n đ t c a h h thì h kín v a
đ t đ c gi i h n n đ nh D tr pha pm đ c đ nh nghĩa là kho ng cách góc pha ϕr t i 180° Hàm cho bi t gm t i t n s đ o pha wcg và pm t i t n s c t
pha wcp Hàm allmargin có tác d ng r ng h n hàm margin Các k t qu tr v
c a allmargin g m:
GMFrequency: giá tr t n s mà t i đó đ th pha c t đ ng th ng n m ngang 180°
GainMargin: d tr biên giá tr đ o c a biên đ t i t n s GMFrequency
PMFrequency: giá tr t n s mà t i đó đ th biên c t đ ng th ng n m ngang 0 dB( ng v i h s khuy chđ i 1)
Trang 5PhaseMargin: d tr pha kho ng cách góc (> 0) t v trí PMFrequency
đ n 180°
DelayMargin: d tr th i gian tr giá tr th i gian tr mà n u v t quá,
h th ng s m t nđ nh
DMFrequency: giá tr t n s ng v i DelayMargin
Stable: =1 khi mach vòng kín nđ nh; b ng 0 trong các tr ng h p khác Cácđ i l ng này có th đ c đ c t đ th t o b i margin Đ xác đ nh
d tr n đ nh c a m t h th ng c th ta dùng các l nh MATLAB(l u trong
ct6_32.m) nh sau:
clc
sys = zpk([],[ 1 1 1],4)
margin(sys)
allmargin(sys)
K t qu h th ng n đ nh Nó có DelayMargin = 0.3s Bây gi ta gán cho sys
m t kho ng th i gian tr là stabil.DelayMargin + 0.01, nghĩa là v t quá th i gian tr n đ nh 0.01s K t qu tính toan m i c a allmargin s thông báo tính
không n đ nh c a h th ng Các l nh MATLAB (l u trong ct6_33.m) nh sau:
clc
sys = zpk([],[ 1 1 1],4)
margin(sys)
stabil = allmargin(sys)
sys.ioDelay = stabil.DelayMargin + 0.01;
newstabil = allmargin(sys)
M t kh năng khác đ mô t đ c tính t n s là đ th Nyquist Nó bi u
di n các giá tr th c và o thu c hàm truy n đ t ph c c a m ch vòng h F0(jω) trong d i t n s ω = 0 ÷ ∞ trên h to đ ph c Đ ng cong do các đi m t o thành đ c g i là qu đ o biên pha F0(jω) Trên c s tiêu chu n n đ nh Nyquist ta có th rút ra k t lu n v tính n đ nh c a h kín(có ph n h i đ n v âm) t đ th Nyquist Đ v đ th Nyquist ta dùng hàm Nyquist Ta có các
l nh MATLAB(l u trong ct6_34.m) nh sau:
clc
H = tf([2 5 1],[1 2 3])
nyquist(H)
Trang 6§3 Đ C TÍNH C A H TH NG ĐI U KHI N
1 Tính n đ nh: Tiêu chu n n đ nh nói r ng h s n đ nh n u các nghi m
c a ph ng trình đ c tính có ph n th c âm Ph ng trình đ c tính là đa th c
m u s c a hàm truy n Do v y ch c n tính nghi m c a đa th c đ c tính b ng
l nh roots là ta có th xác d nh h nđ nh hay không
Ví d : Xét tính n đ nh c a h có ph ng trình đ c tính là:
s4 + 10 s3+ 35s2+ 50s + 24
Các l nh MATLAB là:
a = [1 10 35 50 24];
roots(a)
ans =
4.0000
3.0000
2.0000
1.0000
Nh v y h nđ nh
2 Đ nh y: Đ nh y c a h th ng đ c đo b ng t s ph n trăm s thay đ i
c a hàm truy n theo s thay đ i ph n trăm c a thông s b Ví d đ nh y c a hàm truy n T(s) theo b đ c xác đ nh b ng:
b
) s ( T b
) s ( T b
/ b
) s ( T / s ( T
STb
∆
∆
=
∆
∆
= Khi ∆b g n đ n 0 ta có:
) s ( T
b b
) s ( T
STb
∂
∂
=
Đ nh y tĩnh là giá tr c a S khi t→0 Đ nh y đ ng đ c tính b ng cách thay s
b ng jω và v đ ng S theo ω Biên đ c a S(jω) đo sai s c a h th ng
Ví d : Kh o sát h đi u khi n nh hình v sau:
K
Thi t b
B bù
) 1 s (
b +
Sensor h
-
Trang 7Trong đó b có tr đ nh m c là 4 và h có tr đ nh m c là 0,5 Tìm đ nh y T(s) theo b, v modul hàm đ nh y theo ω v i hai giá tr bù là K = 2 và K = 0.5 Tìm
đ nh y T(s) theo h, v modul c a hàm đ nh y theo h v i K = 2 và K = 0.5 Hàm truy n c a h th ng là:
Kbh 1
s
Kb )
Ts
+ +
=
V i b = 4 và h = 0.5 ta có ωB= 1 + 2K
Đ nh y c a T(s) theo b khi b = 4 và h = 0.5 là:
K 2 1 s
1 s Kbh
1 s
1 s )
s ( T
b b
) s ( T
STb
+ +
+
= +
+
+
=
∂
∂
=
K 2 1 s
K 2 Kbh
1 s
Kbh )
s ( T
h b
) s ( T
STh
+ +
−
= +
+
−
=
∂
∂
=
Các l nh MATLAB (l u trong ct6_35.m) nh sau:
k1 = 1;
k2 = 0.5;
ts = [1 1];
ms1 = [1 1+2*k1];
ms2 = [1 1+2*k2];
w = 0:0.01:15;
stb1 = abs(freqs(ts,ms1,w));
stb2 = abs(freqs(ts,ms2,w));
subplot(2,1,1);
plot(w,stb1,w,stb2);
title( Do nhay cua T theo b );
ts1 = 2*k1;
ts2 = 2*k2;
stb1 = abs(freqs(ts1,ms1,w));
stb2 = abs(freqs(ts2,ms2,w));
subplot(212);
plot(w,stb1,w,stb2);
title( Do nhay cua T theo h );
Hình trênđ ng có ng v i K = 0.5 và hình d i đ ng cao ng v i K = 2
T hình v ta th y r ng đ nh y c a h th ng theo b gi m khi h s khu ch đ i c a vòng h K tăng trong khi đ nh y theo h tăng khi K tăng Rõ ràng làđ nh y theo b tăng nhanh bên ngoài ωB
3 Sai s xác l p: Kh o sát h nh hình v :
Trang 8H(s)
G(s)
Hàm truy n c a h kín là:
) s ( G ) s ( H 1
) s ( G )
s ( R
) s ( C
+
=
Sai s c a h kín là:
E(s) = R(s) – H(s)C(s) =
) s ( G ) s ( H 1
) s ( R +
S d ng đ nh lí giá tr cu i ta có:
) s ( H ) s ( G 1
) s ( sR lim
e s
ss = → ∞ +
Đ u vào b c nh y đ n v :
p s
ss
K 1
1 )
s ( H ) s ( G lim 1
1 e
+
= +
=
∞
→
Đ u vào tăng tuy n tính đ n v :
v s
ss
K
1 ) s ( H ) s ( sG lim 1
1
+
=
→∞
Đ u vào parabol đ n v :
a 2
s
ss
K
1 ) s ( H ) s ( G s lim 1
1
+
=
→∞
Ta có th dùng Symbolic Math đ tính các gi i h n trên
§4 PHÂN TÍCH VÀ THI T K QU Đ O NGHI M
Ph ng pháp kinh đi n đ tham s hoá khâu đi u khi n c a vòng đi u
h nh là ph ng pháp qu đ o nghi m Qu đ o nghi m là qu đ o đi m c c,
h p thành b i các đi u c c c a h th ng, ph thu c vào h s khuy ch đ i
ph n h i k va đ c bi u di trên m t ph ng ph c v i ph n th c Re(λ) = σ trên
tr c hoành x và ph n o Im(λ) = ω trên tr c tung y Đ v đ c qu đ o
nghi m c a h th ng ta dung hàm rlocus Ta xét h th ng sau:
c G
k
0
G
M
G
Trang 9
Cú pháp c a rlocus là
rlocus(sys[,k])
[r, k] = rlocus(sys)
r = rlocus(sys, k)
Mô hình sys trong l nh trên là hàm truy n đ t c a h th ng h GoGcGM
đ c xác đ nh b ng l nh MATLAB:
sys = sysM*sysO*sysC
báo riêng Đi u đó có nghĩa là sys đ c ghép n i b i các mô hình riêng l Khi
dùng rlocus v qu đ o đi m c c ta tìm các giá tr liên quan đ n đi m c c b t
kì năm tên qu đ o b ng cách nh p chu t vào m t đi m trên qu đ o Lúc đó
clc
sys = zpk([],[ 0.1 1 j 1+j ], 1)
rlocus(sys)
[r, k] = rlocus(sys)
sgrid
Đ tr c quan ta có th dùng công c thi t k b ng cách nhâp l nh