CHNG6:MATLABVÀĐIUKHINTĐNG
§1.CÁCVNĐCHUNG
1.Cácdngmôhìnhhthng:Đxâydngmôhìnhcahthng,MATLAB
cung cp mt s lnh. Mô hình h thng mô t bng hàm truynđc xây
dngnh
lnhtf(ts,ms)vitslàđathctsvàmslàđathcmus.Hàm
zpk(z, p, k) vi z là vec t đim không, p là vec t đim cc và k là h s
khuychđi
tonênmôhìnhđimkhôngđimcc.Hàmss(a,b,c,d)via,b,
c,dlàcácmatrntonênmôhìnhkhônggiantrngthái.
Ví d: Ta to ra mt s mô
hình nh các lnh MATLAB sau(lu trong
ct6_1.m):
clc
ts=[12];
ms=[154];
sys1=tf(ts,ms)
sys2=zpk([611],[51],3)
sys3=ss([12;34],[11;01],[01;12;31],0)
Ktqulà:
Transfer
function:
s+2
s^2+5s+4
Zero/pole/gain:
3(s+6)(s1)^2
(s+5)(s1)
a=
x1x2
x112
x234
b=
u1u2
x111
x201
122
c=
x1x2
y101
y212
y331
d=
u1u2
y100
y200
y300
Continuoustimemodel.
2.Đimccvàđimzerocahàmtruyn:Đbin
đihthngchobihàm
truynthànhhchobiđimcc,đimzerovàhskhuchđidùnghàm
tf2zp.Tacũngcóthdùnghàmpole(sys)đtìmđimcccahthngsys
và
dunghàmzero(sys)đtìmđimkhôngcahthngsys
Víd:Chohàmtruyn:
50s87s45s9s
s30s11s
)s(H
234
23
++++
++
=
Tacntìmcácđimccp,đimzerozvàhskhuchđikcanó.Tadùng
cáclnhMATLABsau(lutrongct6_2.m):
ts=[111300];
ms=[19458750];
[z,p,k]=tf2zp(ts,ms)
z=
0
6
5
p=
3.0+4.0i
3.04.0i
2.0
1.0
k=
1
Nhvy:
123
)25s6s)(2s)(1s(
)6s)(5s(s
)j43s)(j43s)(2s)(1s(
)6s)(5s(s
)s(H
2
++++
++
=
−+++++
++
=
Khicócácđimcc,đimzerovàhskhuchđitacóthtìmlihàm
truynbnglnhzp2tf.TadùngcáclnhMATLABsau(lutrongct6_3.m):
z=[6;5;0];
k=1;
p=[3+4*i;34*i;2;1];
[ts,ms]=zp2tf(z,p,k)
ts=
0111300
ms=
19458750
Đthyđcsphânbđimkhôngvàđimcccahthngtrênmt
phng phc ta dùng hàm pzmap. Trc cađthiđc chia li bng lnh
sgrid.Cácđimkhôngbiuthbngvòngtrònvàđimccbiuthbngdu
×
.TaxétcáclnhMATLABsau(lutrongct6_4.m):
clc
sys=zpk([611],[51],3)
axisequal
pzmap(sys)
sgrid
3. Khai trin hàm truyn thành tng các phân thcđn gin: Cho hàm
truyn,ta cóthkhaitrinnóthànhtngcácphân thcđnginbnglnh
residue.Hàmresiduechovectctcácphndr,vectctcácđimccpvà
phnnguyênk.
Víd:Chohàmtruyn:
4s4ss
1s9s2
)s(H
23
3
+++
++
=
TakhaitrinhbngcáclnhMATLABsau(lutrongct6_5.m):
ts=[2091];
ms=[1144];
[r,p,k]=residue(ts,ms)
r=
0.00.25i
0.0+0.25i
124
2.0
p=
0.0+2.0i
0.02.0i
1.0
k=
2
Nhvy:
4s
1
1s
2
2
j2s
j25.0
j2s
j25.0
1s
2
2)s(H
2
+
+
+
−=
−
−
+
+
+
+
−
+=
Ngcli,cór,p,ktacóthtìmhàmtruynbngcáclnhMATLABsau(lu
trongct6_6.m):
r=[0.00.25*i;0+0.25*i;2];
p=[0+2*i;02*i;1];
k=2;
[ts,ms]=residue(r,p,k)
ts=
2091
ms=
1144
4. Binđihàm truyn thành không giantrng thái
: Cho phng trình vi
phân:
)t(uya
dx
yd
a
dx
yd
a
dx
yd
a
01
1n
1n
1n
n
n
n
=++++
−
−
−
L
Đtx1=y;x2=y′;x3=y′′v.vtacóhphngtrìnhtrngthái:
x′=Ax+Bu
y=Cx+Du
gilàphngtrìnhkhônggiantrngthái
Numthđiukhintđngchobihàmtruyntacóthbinđiv
khônggiantrngtháibnglnh
tf2ss.
Víd:Chohàmtruyn:
24s26s9s
2s7s
)s(H
23
2
+++
++
=
Ta bin h v dng không giantrng thái bng các lnh MATLAB sau(lu
trongct6_7m):
125
ts=[172];
ms=[192624];
[a,b,c,d]=tf2ss(ts,ms)
a=
92624
100
010
b=
1
0
0
c=
172
d=
0
5.Binđikhônggiantrngtháithànhhàmtruyn:Đbinđihchodi
dngkhônggiantrng thái thànhhàmtruyn tadùnglnh ss2tf.Ta xétcác
lnhsau(lutrongct6_8.m)
a=[010;001;123];
b=[10;0;0];
c=[100];
d=[0];
[ts,ms]=ss2tf(a,b,c,d,1)
ts=
010.0030.0020.00
ms=
1.003.002.001.00
Nhvyhàmtruynlà:
1s2s3s
)2s3s(10
)s(G
23
2
+++
++
=
6. Nghim ca phng trình trng thái:Đtìm nghim ca phng trình
trngtháitadùnglnhlsim.
Víd:Chophngtrìnhtrngtháicamthtuyntính
126