Tải bản đầy đủ (.pdf) (12 trang)

Chương 6: Matlab và điều khiển tự động

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (252.83 KB, 12 trang )

CHNG6:MATLABVÀĐIUKHINTĐNG

§1.CÁCVNĐCHUNG
1.Cácdngmôhìnhhthng:Đxâydngmôhìnhcahthng,MATLAB
cung cp mt s lnh. Mô hình h thng mô t bng hàm truynđc xây
dngnh
lnhtf(ts,ms)vitslàđathctsvàmslàđathcmus.Hàm
zpk(z, p, k) vi z là vec t đim không, p là vec t đim cc và k là h s
khuychđi
tonênmôhìnhđimkhôngđimcc.Hàmss(a,b,c,d)via,b,
c,dlàcácmatrntonênmôhìnhkhônggiantrngthái.
Ví d: Ta to ra mt s mô
hình nh các lnh MATLAB sau(lu trong
ct6_1.m):
clc
ts=[12];
ms=[154];
sys1=tf(ts,ms)

sys2=zpk([611],[51],3)

sys3=ss([12;34],[11;01],[01;12;31],0)
Ktqulà:
Transfer
function:
 s+2

s^2+5s+4
Zero/pole/gain:
3(s+6)(s1)^2



(s+5)(s1)
 a=
x1x2
x112
x234
b=
u1u2
x111
x201

122
 c=
x1x2
y101
y212
y331
d=
u1u2
y100
y200
y300
Continuoustimemodel.

2.Đimccvàđimzerocahàmtruyn:Đbin
đihthngchobihàm
truynthànhhchobiđimcc,đimzerovàhskhuchđidùnghàm
tf2zp.Tacũngcóthdùnghàmpole(sys)đtìmđimcccahthngsys
và
dunghàmzero(sys)đtìmđimkhôngcahthngsys
Víd:Chohàmtruyn:


50s87s45s9s
s30s11s
)s(H
234
23
++++
++
= 
Tacntìmcácđimccp,đimzerozvàhskhuchđikcanó.Tadùng
cáclnhMATLABsau(lutrongct6_2.m):
ts=[111300];
ms=[19458750];
[z,p,k]=tf2zp(ts,ms)
z=
0
6
5
p=
3.0+4.0i
3.04.0i
2.0
1.0
k=
1

Nhvy:

123


)25s6s)(2s)(1s(
)6s)(5s(s
)j43s)(j43s)(2s)(1s(
)6s)(5s(s
)s(H
2
++++
++
=
−+++++
++
= 
Khicócácđimcc,đimzerovàhskhuchđitacóthtìmlihàm
truynbnglnhzp2tf.TadùngcáclnhMATLABsau(lutrongct6_3.m):
z=[6;5;0];
k=1;
p=[3+4*i;34*i;2;1];
[ts,ms]=zp2tf(z,p,k)

ts=
  0111300
ms=
  19458750
Đthyđcsphânbđimkhôngvàđimcccahthngtrênmt
phng phc ta dùng hàm pzmap. Trc cađthiđc chia li bng lnh
sgrid.Cácđimkhôngbiuthbngvòngtrònvàđimccbiuthbngdu
×
.TaxétcáclnhMATLABsau(lutrongct6_4.m):
 clc
sys=zpk([611],[51],3)

axisequal
pzmap(sys)
sgrid

3. Khai trin hàm truyn thành tng các phân thcđn gin: Cho hàm
truyn,ta cóthkhaitrinnóthànhtngcácphân thcđnginbnglnh
residue.Hàmresiduechovectctcácphndr,vectctcácđimccpvà
phnnguyênk.
Víd:Chohàmtruyn:

4s4ss
1s9s2
)s(H
23
3
+++
++
=

TakhaitrinhbngcáclnhMATLABsau(lutrongct6_5.m):
ts=[2091];
ms=[1144];
[r,p,k]=residue(ts,ms)
r=
0.00.25i
0.0+0.25i

124
2.0
p=

0.0+2.0i
0.02.0i
1.0
k=
2
Nhvy:

4s
1
1s
2
2
j2s
j25.0
j2s
j25.0
1s
2
2)s(H
2
+
+
+
−=


+
+
+
+


+=

Ngcli,cór,p,ktacóthtìmhàmtruynbngcáclnhMATLABsau(lu
trongct6_6.m):
r=[0.00.25*i;0+0.25*i;2];
p=[0+2*i;02*i;1];
k=2;
[ts,ms]=residue(r,p,k)

ts=
2091
ms=
1144

4. Binđihàm truyn thành không giantrng thái
: Cho phng trình vi
phân:

)t(uya
dx
yd
a
dx
yd
a
dx
yd
a
01

1n
1n
1n
n
n
n
=++++



L 
Đtx1=y;x2=y′;x3=y′′v.vtacóhphngtrìnhtrngthái:

x′=Ax+Bu

y=Cx+Du
gilàphngtrìnhkhônggiantrngthái
Numthđiukhintđngchobihàmtruyntacóthbinđiv
khônggiantrngtháibnglnh
tf2ss.
Víd:Chohàmtruyn:

24s26s9s
2s7s
)s(H
23
2
+++
++
= 

Ta bin h v dng không giantrng thái bng các lnh MATLAB sau(lu
trongct6_7m):

125
ts=[172];
ms=[192624];
[a,b,c,d]=tf2ss(ts,ms)
a=
92624
100
010
b=
1
0
0
c=
172
d=
0

5.Binđikhônggiantrngtháithànhhàmtruyn:Đbinđihchodi
dngkhônggiantrng thái thànhhàmtruyn tadùnglnh ss2tf.Ta xétcác
lnhsau(lutrongct6_8.m)
a=[010;001;123];
b=[10;0;0];
c=[100];
d=[0];
[ts,ms]=ss2tf(a,b,c,d,1)

ts=

010.0030.0020.00

ms=
1.003.002.001.00

Nhvyhàmtruynlà:

1s2s3s
)2s3s(10
)s(G
23
2
+++
++
=


6. Nghim ca phng trình trng thái:Đtìm nghim ca phng trình
trngtháitadùnglnhlsim.
Víd:Chophngtrìnhtrngtháicamthtuyntính

126

×