Tải bản đầy đủ (.doc) (22 trang)

Khảo sát ứng dụng MATLAB trong điều khiển tự động - NHÓM LỆNH VỀ CHUYỂN ĐỔI MÔ HÌNH docx

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 (169.79 KB, 22 trang )

Khảo sát ứng dụng MATLAB trong điều khiển tự động
NHĨM L NH V CHUY N I MƠ HÌNHỆ Ề Ể ĐỔ
(Model Conversion)
1. L nh C2D, C2DTệ
a) Cơng d ngụ :
Chuy n đ i mơ hình t liên t c sang gián đo n.ể ổ ừ ụ ạ
b) Cú pháp:
[ad,bd] = c2d(a,b,Ts)
c) Gi i thíchả :
c2d và c2dt chuy n mơ hình khơng gian tr ng thái t liên t c sang gián đo n th a nh n khâuể ạ ừ ụ ạ ừ ậ
gi b c 0 ng vào. c2dt c ng có kho ng th i gian tr ngõ vào.ữ ậ ở ỏ ũ ả ờ ễ ở
[ad, bd] = c2d(a,b,Ts) chuy n h khơng tr ng thái liên t c x = Ax + Bu thành h gián đo n:ể ệ ạ ụ ệ ạ
x[n+1] = A
d
x[n] + B
d
u[n] th a nh n ngõ vào đi u khi n là b t bi n t ng đo n bên ngồi th i gianừ ậ ề ể ấ ế ừ ạ ờ
l y m u Ts.ấ ẫ
[ad,bd,cd,dd] = c2dt(a,b,c,Ts,lambda) chuy n h khơng gian tr ng thái liên t c v i th iể ệ ạ ụ ớ ờ
gian tr thu n túy ễ ầ λ ngõ vào:ở
.
x
(t) = Ax(t) + Bu(t - λ)
y(t) = Cx(t)
thành h gián đo n:ệ ạ
x[n+1] = A
d
x[n] + B
d
u[n]
y[n] = C


d
x[n] + D
d
u[n]
Ts là th i gian l y m u và lambda là th i gian tr ngõ vào. ờ ấ ẫ ờ ễ ở λ ph i n m trong kho ng –ả ằ ả
Ts < λ < ∞.
d) Ví d : (Trích t trang 11-24 sách ‘ụ ừ Control System Toolbox’)
Cho h th ng: H(s) = (s –1)/(sệ ố
2
+ 4s +5)
V i Tớ
d
=0,35, th i gian l y m u Ts=0,1ờ ấ ẫ
» num=[1 -1];
» den=[1 4 5];
» H=tf(num,den,'inputdelay',0.35)
K t qu : ế ả
Thực hiện: PHẠM QUỐC TRƯỜNG - 1 - GVHD: PHẠM QUANG HUY
Khảo sát ứng dụng MATLAB trong điều khiển tự động
Transfer function:
s - 1
exp(-0.35*s) *
s^2 + 4 s + 5

» Hd=c2d(H,0.1,'foh')

Transfer function:
0.0115 z^3 + 0.0456 z^2 - 0.0562 z - 0.009104
z^(-3) *
z^3 - 1.629 z^2 + 0.6703 z


Sampling time: 0.1
2. L nh C2DMệ
a) Cơng d ng:ụ
Chuy n đ i h liên t c sang gián đo n.ể ổ ệ ụ ạ
b) Cú pháp:
[ad,bd,cd,dd] = c2dm(a,b,c,d,Ts,’method’)
[numd,dend] = c2dm(num,den,Ts,’method’).
c) Gi i thíchả :
[ad,bd,cd,dd] = c2dm(a,b,c,d,Ts,’method’) chuy n đ i t h khơng gian tr ng thái liên t c ể ổ ừ ệ ạ ụ
(a,b,c,d) sang gián đo n s d ng ph ng pháp khai báo trong ‘method’. ‘method’ có th là:ạ ử ụ ươ ể
+ ‘zoh’: chuy n sang h gián đo n th a nh n m t khâu gi b c 0 ngõ vào, các ngõ vào đi uể ệ ạ ừ ậ ộ ữ ậ ở ề
khi n đ c xem nh b t bi n t ng đo n trong kho ng th i gian l y m u Ts.ể ượ ư ấ ế ừ ạ ả ờ ấ ẫ
+ ‘foh’: chuy n sang h gián đo n th a nh n m t khâu gi b c 1 ngõ vào.ể ệ ạ ừ ậ ộ ữ ậ ở
+ ‘tustin’: chuy n sang h gián đo n s d ng pháp g n đúng song tuy n tính (Tusin) đ iể ệ ạ ử ụ ầ ế ố
v i đ o hàm.ớ ạ
+ ‘prewarp’: chuy n sang h gián đo n s d ng pháp g n đúng song tuy n tính (Tusin)ể ệ ạ ử ụ ầ ế
v i t n s l ch tr c. N u thêm vào tham s Wc thì l nh s ch ra t n s t i h n.ớ ầ ố ệ ướ ế ố ệ ẽ ỉ ầ ố ớ ạ
Ví d nh c2dm(a,b,c,d,Ts,prewarp,Wc).ụ ư
+ ‘matched’: chuy n h SISO sang gián đo n s d ng ph ng pháp c c zero hàm truy nể ệ ạ ử ụ ươ ự ề
phù h p.ợ
[numd, dend] = c2dm(num,den,Ts,’method’) chuy n t hàm truy n đa th c liên t c G(s) =ể ừ ề ứ ụ
num(s)/den(s) sang gián đo n G(z) = num(z)/den(z) s d ng ph ng pháp đ c khai báo trongạ ử ụ ươ ượ
’method’.
N u b qua các đ i s bên trái thì:ế ỏ ố ố
c2dm(a,b,c,d,Ts,’method’)
c2dm(num,den,Ts,’method’)
Thực hiện: PHẠM QUỐC TRƯỜNG - 2 - GVHD: PHẠM QUANG HUY
Khảo sát ứng dụng MATLAB trong điều khiển tự động
s v ra 2 đ th c a 2 đáp ng v i đ ng li n nét là đáp ng liên t c còn đ ng đ t đo n là đápẽ ẽ ồ ị ủ ứ ớ ườ ề ứ ụ ườ ứ ạ

ng gián đo n.ứ ạ
d) Ví du:
Chuy n h khơng gian tr ng thái liên t c:ể ệ ạ ụ
thành h gián đo n dùng ph ng pháp ‘Tustin’, v 2 đ th đáp ng so sánh.ệ ạ ươ ẽ ồ ị ứ
a = [1 1; 2 -1];
b = [1; 0];
c = [2 4];
d = 1;
Ts = 1;
[ad,bd,cd,dd] = c2dm(a,b,c,d,Ts,’tustin’)
c2dm(a,b,c,d,Ts,’ tustin’) %v đ th so sánhẽ ồ ị
title (‘Do thi so sanh 2 dap ung lien tuc va gian doan’)
grid on
ta đ c đ th và các giá tr nh sau:ượ ồ ị ị ư
ad =
11 4
8 3
bd =
6
4
cd =
28 12
dd =
15
Thực hiện: PHẠM QUỐC TRƯỜNG - 3 - GVHD: PHẠM QUANG HUY
[ ] [ ]
u142y
u
0
1

12
11
2
1
2
1
2
1
+






=






+














=






x
x
x
x
x
x
Khảo sát ứng dụng MATLAB trong điều khiển tự động

3. L nh D2Cệ
a) Cơng d ngụ :
Chuy n đ i mơ hình t gián đo n sang liên t c.ể ổ ừ ạ ụ
b) Cú pháp:
[ad,bd] = c2d(a,b,Ts).
c) Gi i thíchả :
d2c chuy n mơ hình khơng gian tr ng thái t gián đo n sang liên t c th a nh n khâu gi b cể ạ ừ ạ ụ ừ ậ ữ ậ
0 ngõ vào. C2DT c ng có m t kho ng th i gian tr ngõ vào.ở ũ ộ ả ờ ễ ở
[ad,bd] = c2d (a,b,Ts) chuy n h khơng gian tr ng thái gián đo n:ể ệ ạ ạ

x[n+1] = Ax[n] + Bu[n]
thành h liên t cệ ụ
uBxAx
cc
+=
.
xem các ngõ vào đi u khi n là b t bi n t ng đo n trong kho ng th i gian l y m u Ts.ề ể ấ ế ừ ạ ả ờ ấ ẩ
4. L nh D2CMệ
a) Cơng d ngụ :
Chuy n đ i mơ hình khơng gian tr ng thái t gián đo n sang liên t c.ể ổ ạ ừ ạ ụ
b) Cú pháp:
[ac,bc,cc,dc] = d2cm(a,b,c,d,Ts,’method’)
[numc,denc] = d2cm(num,den,Ts,’method’).
c) Gi i thíchả :
Thực hiện: PHẠM QUỐC TRƯỜNG - 4 - GVHD: PHẠM QUANG HUY
uBxAx
cc
+=
áp ng gián đo nĐ ứ ạ
áp ng liên t cĐ ứ ụ
Khảo sát ứng dụng MATLAB trong điều khiển tự động
[ac,bc,cc,dc] = d2cm(a,b,c,d,Ts,’method’) chuy n đ i h khơng gian tr ng thái t gián đo nể ổ ệ ạ ừ ạ
sang liên t c s d ng ph ng pháp đ c khai báo trong ‘method’. ‘method’ có th là:ụ ử ụ ươ ượ ể
+ ‘zoh’: chuy n sang h liên t c th a nh n m t khâu gi b c 0 ngõ vào, các ngõ vào đi uể ệ ụ ừ ậ ộ ữ ậ ở ề
khi n đ c xem nh b t bi n t ng đo n trong kho ng th i gian l y m u Ts.ể ượ ư ấ ế ừ ạ ả ờ ấ ẫ
+ ‘tustin’: chuy n sang h liên t c s d ng ph ng pháp g n đúng song tuy n tính (Tusin)ể ệ ụ ử ụ ươ ầ ế
đ i v i đ o hàm.ố ớ ạ
+ ‘prewarp’: chuy n sang h liên t c s d ng pháp g n đúng song tuy n tính (Tusin) v iể ệ ụ ử ụ ầ ế ớ
t n s l ch tr c. N u thêm vào tham s Wc thì l nh s ch ra t n s t i h n.ầ ố ệ ướ ế ố ệ ẽ ỉ ầ ố ớ ạ
Ví d nh d2cm (a,b,c,d,Ts,prewarp,Wc).ụ ư

+ ‘matched’: chuy n h SISO sang liên t c s d ng ph ng pháp c c zero hàm truy n phùể ệ ụ ử ụ ươ ự ề
h p.ợ
[numc,denc] = d2cm(num,den,Ts,’method’) chuy n t hàm truy n đa th c gián đo n G(z)ể ừ ề ứ ạ
= num(z)/den(z) sang liên t c G(s) = num(s)/den(s) s d ng ph ng pháp đ c khai báoụ ử ụ ươ ượ
trong ’method’.
N u b qua các đ i s bên trái thì:ế ỏ ố ố
d2cm(a,b,c,d,Ts,’method’)
d2cm(num,den,Ts,’method’)
s v ra 2 đ th c a 2 đáp ng v i đ ng li n nét là đáp ng gián đo n còn đ ng đ t đo n là đápẽ ẽ ồ ị ủ ứ ớ ườ ề ứ ạ ườ ứ ạ
ng liên t c.ứ ụ
d) Ví dụ:
Chuy n h khơng gian tr ng thái gián đo n:ể ệ ạ ạ
x[n+1] = Ax[n] + Bu[n]
y[n] = Cx[n] + Du[n]
v i:ớ
A = [11 4; 8 3];
B = [6; 4];
C = [28 12];
D = 15;
Ts = 1;
[ac,bc,cc,dc] = d2cm(a,b,c,d,Ts,’tustin’)
d2cm(a,b,c,d,Ts,’ tustin’) % v đ th so sánhẽ ồ ị
title (‘Do thi so sanh 2 dap ung lien tuc va gian doan’)
ta đ c đ th và các tham s nh sau:ượ ồ ị ố ư
ac =
1 1
2 –1
bc =
1
0

cc =
Thực hiện: PHẠM QUỐC TRƯỜNG - 5 - GVHD: PHẠM QUANG HUY
;
38
411
A






=
;
4
6
B






=
[ ]
;1228C =
15;D =
Khảo sát ứng dụng MATLAB trong điều khiển tự động
2 4
dc = 1


5. L nh SS2TFệ
a) Cơng d ngụ :
Chuy n h th ng t d ng khơng gian tr ng thái thành d ng hàm truy n.ể ệ ố ừ ạ ạ ạ ề
b) Cú pháp:
[num,den] = ss2tf(a,b,c,d,iu).
c) Gi i thíchả :
[num,den] = ss2tf(a,b,c,d,iu) chuy n h th ng khơng gian tr ng thái:ể ệ ố ạ





+=
+=
DuCxy
BuAxx
.
thành d ng hàm truy n:ạ ề
H(s) =
)(
)(
sden
sNUM
= C(sI – A)
-1
B + D
t ngõ vào th iu. Vector den ch a các h s c a m u s theo chi u gi m d n s m c aừ ứ ứ ệ ố ủ ẫ ố ề ả ầ ố ũ ủ
s. Ma tr n NUM ch a các h s t s v i s hàng là s ngõ ra.ậ ứ ệ ố ử ố ớ ố ố
d) Ví dụ:

Hàm truy n c a h th ng đ c xác đ nh b ng l nh:ề ủ ệ ố ượ ị ằ ệ
[num,den] = ss2tf (a,b,c,d,1)
ta đ c:ượ
num =
Thực hiện: PHẠM QUỐC TRƯỜNG - 6 - GVHD: PHẠM QUANG HUY
áp ng gián đo nĐ ứ ạ
áp ng liên t cĐ ứ ụ
Khảo sát ứng dụng MATLAB trong điều khiển tự động
0 0 1.0000
den =
1.0000 0.4000 1.0000
6. L nh TF2SSệ
a) Cơng d ngụ :
Chuy n h th ng t d ng khơng gian hàm truy n thành d ng tr ng thái.ể ệ ố ừ ạ ề ạ ạ
b) Cú pháp:
[a,b,c,d] = tf2ss(num,den)
c) Gi i thíchả :
[a,b,c,d] = tf2ss(num,den) tìm h ph ng trình tr ng thái c a h SISO:ệ ươ ạ ủ ệ
.
x
= Ax + Bu
y = Cx + Du
đ c cho b i hàm truy n:ượ ở ề
t ngõ vào duy nh t. Vector den ch a các h s m u s hàm truy n theo chi u gi m d n sừ ấ ứ ệ ố ẫ ố ề ề ả ầ ố
m s a s. Ma tr n NUM ch a các h s c a t s v i s hàng là s ngõ ra y. Các ma tr n a, b,ũ ủ ậ ứ ệ ố ủ ử ố ớ ố ố ậ
c, c tr thành d ng chính t t.ở ạ ắ
* Ví d 1ụ :
Xét h th ng có hàm truy n:ệ ố ề
chuy n h th ng thành d ng khơng gian tr ng thái ta th c hi n các l nh:Để ể ệ ố ạ ạ ự ệ ệ
Num = [0 2 3

1 2 3];
den = [1 0.4 1];
[a,b,c,d] = tf2ss (num,den);
ta đ c k t qu :ượ ế ả
a =
-0.4000 -1.0000
1.0000 0
b =
1
0
c =
2.0000 3.0000
1.0000 2.0000
d =
0
1
Thực hiện: PHẠM QUỐC TRƯỜNG - 7 - GVHD: PHẠM QUANG HUY
DBA)-C(sI
den(s)
NUM(s)
H(s)
1-
+==
1s4.0s
12ss
32s
H(s)
2
2
++







++
+
=
Khảo sát ứng dụng MATLAB trong điều khiển tự động
Ví d 2: Trích t sách ‘ụ ừ ng d ng MATLAB trong i u khi n t ng’ Ứ ụ đ ề ể ự độ tác gi Nguy n ả ễ
V n Giáp.ă
Cho hàm truy n: (sề
2
+7s +2) / (s
3
+9s
2
+26s+24)
» num=[1 7 2];
» den=[1 9 26 24];
» [A,B,C,D]=tf2ss(num,den)
K t qu :ế ả
A =
-9 -26 -24
1 0 0
0 1 0
B =
1
0

0
C =
1 7 2
D =
0
7. L nh SS2ZPệ
a) Cơng d ngụ :
Thực hiện: PHẠM QUỐC TRƯỜNG - 8 - GVHD: PHẠM QUANG HUY
Khảo sát ứng dụng MATLAB trong điều khiển tự động
Chuy n h th ng khơng gian sang tr ng thái đ l i c c-zero (zero pole-gain) ể ệ ố ạ ộ ợ ự
b) Cú pháp:
[z,p,k] = ss2zp(a,b,c,d,iu)
c) Gi i thích: ả
ss2zp tìm các zero, c c và đ l i khơng gian tr ng thái.ự ộ ợ ạ
[z,p,k] = ss2zp(a,b,c,d,iu) tìm hàm truy n d i d ng th a s .ề ướ ạ ừ ố
))(( ))2(()1((
))(( ))2(()1((
)(
)(
)(
npspsps
mZsZsZs
k
sp
sZ
sH
−−−
−−−
==
c a h th ng: ủ ệ ố

BuAxx +=
.
y = Cx + Du
t ngõ vào th iu. Vector c t p ch a các c c m u s hàm truy n. Các zero c a t s n mừ ứ ộ ứ ự ẫ ố ề ủ ử ố ằ
trong các c t c a ma tr n z v i s c t là s ngõ ra y. l i c a t s hàm truy n n m trong cácộ ủ ậ ớ ố ộ ố Độ ợ ủ ử ố ề ằ
c t vector k.ộ
d) Ví dụ:
Xét h th ng có hàm truy n: ệ ố ề
14.0
32
)(
2
++
+
=
ss
s
sH
num = [2 3];
den = [1 0.4 1];
Có 2 cách đ tìm các zero, c c và đ l i c a h th ng này:ể ự ộ ợ ủ ệ ố
+ Cách 1:
[z,p,k] = tf2zp(num, den)
+ Cách 2:
[a,b,c,d] = tf2ss(num, den);
[z,p,k] = ss2zp(a,b,c,d,1)
và ta đ c cùng m t k t qu nh sau:ượ ộ ế ả ư
z = -1.5000
p = -0.2000 + 0.9798i
-0.2000 – 0.9798I

k = 2.0000
Thực hiện: PHẠM QUỐC TRƯỜNG - 9 - GVHD: PHẠM QUANG HUY
Khảo sát ứng dụng MATLAB trong điều khiển tự động
8. L nh ZP2SSệ :
a) Cơng d ngụ :
Chuy n t đ c c l i zero sang h khơng gian tr ng thái.ể ừ ộ ự ợ ệ ạ
b) Cú pháp:
[a,b,c,d] = zp2ss(z,p,k)
c) Gi i thích:ả
zp2ss hình thành mơ hình khơng gian tr ng thái t các zero, c c và đ l i c a h th ng d iạ ừ ự ộ ợ ủ ệ ố ướ
d ng hàm truy n. ạ ề
[a,b,c,d] = zp2ss(z,k,p) tìm h khơng gian tr nng thái:ệ ạ
BuAxx
+=
.
y = Cx + Du
c a h SIMO đ c cho b i hàm truy n:ủ ệ ượ ở ề
))(( ))2(()1((
))(( ))2(()1((
)(
)(
)(
npspsps
mZsZsZs
k
sp
sZ
sH
−−−
−−−

==
Vector c t p ch a các c c và ma tr n z ch a các zero v i s c t là s ngõ ra. Vector k ch a cácộ ứ ự ậ ứ ớ ố ộ ố ứ
h s đ l i.Các ma tr n a,b,c,d tr v d ng chính t c. ệ ố ộ ợ ậ ở ề ạ ắ
9. L nh TF2ZP ệ
a) Cơng d ngụ :
Chuy n h th ng t d ng hàm truy n sang d ng đ l i c c-zero.ể ệ ố ừ ạ ề ạ ộ ợ ự
b) Cú pháp:
[z,p,k] = tf2zp (NUM,den)
c) Gi i thíchả :
tf2ss tìm các zero, c c và đ l i c a h th ng đ c bi u di n d i d ng hàm truy n. ự ộ ợ ủ ệ ố ượ ể ễ ướ ạ ề

[z,p,k]= tf2zp (NUM,den) tìm hàm truy n c a h SIMO d ng:ề ủ ệ ạ
))(( ))2(()1((
))(( ))2(()1((
)(
)(
)(
npspsps
mZsZsZs
k
sp
sZ
sH
−−−
−−−
==
đ c cho b i hàm truy n:ượ ở ề
)()1( )1(
)()1( )1(
)(

)(
1
1
nddensnddensden
nnNUMsnnNUMsNUM
sden
sNUM
nd
nn
+−++
+−++
=


Thực hiện: PHẠM QUỐC TRƯỜNG - 10 - GVHD: PHẠM QUANG HUY
Khảo sát ứng dụng MATLAB trong điều khiển tự động
Vector den ch a các h s c a m u s theo chi u gi m d n s m c a s. Ma tr n NUMứ ệ ố ủ ẫ ố ề ả ầ ố ũ ủ ậ
ch a các h s t s v i s hàng là s ngõ ra. Ma tr n z ch a các zero, vector c t p ch a các c c vàứ ệ ố ử ố ớ ố ố ậ ứ ộ ứ ự
vector k ch a các h s đ l i c a hàm truy n.ứ ệ ố ộ ợ ủ ề
b) Ví dụ:
Tìm các zero và c c c a h th ng có hàm truy n:ự ủ ệ ố ề
14.0
32
)(
2
++
+
=
ss
s

sH

num = [2 3];
den = [1 0.4 1];
[z,p,k] = tft2zp (num,den)
ta đ c:ượ
z = -1.5000
p = -0.2000 + 0.9798i
-0.2000 – 0.9798i
k = 2
10. L nh ZP2TFệ
a) Cơng d ngụ :
Chuy n đ i h th ng t d ng đ l i c c zero sang d ng hàm truy nể ổ ệ ố ừ ạ ộ ợ ự ạ ề
b) Cú pháp:
[num,den] = zp2tf (z,p,k)
c) Gi i thíchả :
zp2tf t o ra hàm truy n đa th c t các zero, c c và đ l i c a h th ng.ạ ề ứ ừ ự ộ ợ ủ ệ ố
[num,den] = zp2tf (z,p,k) tìm hàm truy n h u t :ề ữ ỉ
)()1( )1(
)()1( )1(
)(
)(
1
1
nddensnddensden
nnNUMsnnNUMsNUM
sden
sNUM
nd
nn

+−++
+−++
=


đ c cho b i hàm truy n d ng:ượ ở ề ạ
))(( ))2(()1((
))(( ))2(()1((
)(
)(
)(
npspsps
mZsZsZs
k
sp
sZ
sH
−−−
−−−
==
Vector c t p ch a các c c, ma tr n z ch a các zero v i s c t là s ngõ ra, đ l i c a t sộ ứ ự ậ ứ ớ ố ộ ố ộ ợ ủ ử ố
hàm truy n n m trong vector k. Các h m u s đa th c n m trong vector hàng den, các h s tề ằ ệ ẫ ố ứ ằ ệ ố ử
s n m trong ma tr n num s hàng b ng v i s c t c a z.ố ằ ậ ố ằ ớ ố ộ ủ
11. L nh POLYệ
Thực hiện: PHẠM QUỐC TRƯỜNG - 11 - GVHD: PHẠM QUANG HUY
Khảo sát ứng dụng MATLAB trong điều khiển tự động
a) Cơng d ngụ :
T o ra đa th c t các nghi m đ c ch đ nh.ạ ứ ừ ệ ượ ỉ ị
b) Cú pháp:
p = poly(A)

p = poly(r)
c) Gi i thíchả :
p = poly(A), trong đó A là ma tr n nxn v i các ph n t là các h s c a đa th c đ c tr ng detậ ớ ầ ử ệ ố ủ ứ ặ ư
(sI-A), t o ra vector hàng có n+1 ph n t x p theo th t gi m d n s m c a s.ạ ầ ử ế ứ ự ả ầ ố ũ ủ
p = poly(r), t o ra vector hàngv i các ph n t là các h s c a đa th c có nghi m là các ph n tạ ớ ầ ử ệ ố ủ ứ ệ ầ ử
c a vector ngõ ra.ủ
d) Ví d 1ụ :
Cho ma tr nậ
A =
1 2 3
4 5 6
7 8 0
p = poly (A)
p =
1 -6 -72 -27
Ví d 2: Trích t ụ ừ Ví d 2.5 ụ sách c a tác gi Nguy n V n Giápủ ả ễ ă
%Vídu2.m
%tim nghiem cua da thuc:
% s^6+9s^5+31.25s^4+61.25s^3+67.75s^2+14.75s+15
P=[1 9 31.25 61.25 67.75 14.75 15]
R=roots(P)
K t qu :ế ả
»
P =
1.0000 9.0000 31.2500 61.2500 67.7500 14.7500 15.0000
R =
Thực hiện: PHẠM QUỐC TRƯỜNG - 12 - GVHD: PHẠM QUANG HUY
Khảo sát ứng dụng MATLAB trong điều khiển tự động
-4.0000
-3.0000

-1.0000 + 2.0000i
-1.0000 - 2.0000i
0.0000 + 0.5000i
0.0000 - 0.5000i
12. L nh RESIDUEệ
a) Cơng d ngụ :
Chuy n đ i gi a d ng khai tri n phân s t ng ph n và d ng đa th c.ể ổ ữ ạ ể ố ừ ầ ạ ứ
b) Cú pháp:
[r,p,k]= residue(b,a)
[b,a]= residue(r,p,k)
c) Gi i thíchả :
[r,p,k]= residue(b,a) tìm giá tr th ng d , các c c, và các s h ng khai tri n phân s t ng ph nị ặ ư ự ố ạ ể ố ừ ầ
c a 2 đa th c b(s) và a(s) d ng:ủ ứ ạ
n
n
m
m
sasasaa
sbsbsbb
sa
sb

+
−−

+
−−
++++
++++
=

1
2
3
1
21
1
2
3
1
21


)(
)(
[b,a]= residue(r,p,k) chuy n d ng khai tri n phân s t ng ph n:ể ạ ể ố ừ ầ
)(
)(
)(
1
2
1
1
sk
ps
r
ps
r
ps
r
sa

sb
n
n
+

++

+

=
v d ng đa th c v i các h s trong vector a và b.ề ạ ứ ớ ệ ố
d) Ví d : Trích t ụ ừ Ví d 2.9 ụ sách c a tác gi Nguy n V n Giápủ ả ễ ă
Xác đ nh thành ph n t i gi n c a hàm truy n: F(s)= (2sị ầ ố ả ủ ề
3
+9s+1)/(s
3
+s
2
+4s+4)
%vidu.m
%xac dinh cac thanh phan toi gian cua ham truyen:
% (2s^3+9s+1)
% H(s)=
% (s^3+s^2+4s+4)
b=[2 0 9 1]
a=[1 1 4 4]
[r,p,k]=residue(b,a)
K t qu :ế ả
»
b =

Thực hiện: PHẠM QUỐC TRƯỜNG - 13 - GVHD: PHẠM QUANG HUY
Khảo sát ứng dụng MATLAB trong điều khiển tự động
2 0 9 1
a =
1 1 4 4
r =
0.0000 - 0.2500i
0.0000 + 0.2500i
-2.0000
p =
-0.0000 + 2.0000i
-0.0000 - 2.0000i
-1.0000
k =
2
T đó hàm truy n t i gi n là:ừ ề ố ả
2 + (-2/(s+1)) + (0,25i/(s -j2)) + (-0,25i/(s -j2)) = 2 + (-2/(s+1))+ 1/(s
2
+4)
13. L nh SS2SSệ
a) Cơng d ng:ụ
Bi n đ i t ng đ ng h khơng gian tr ng thái.ế ổ ươ ươ ệ ạ
b) Cú pháp:
Thực hiện: PHẠM QUỐC TRƯỜNG - 14 - GVHD: PHẠM QUANG HUY
Khảo sát ứng dụng MATLAB trong điều khiển tự động
[at,bt,ct,dt]= ss2ss (a,b,c,d,T)
c) Gi i thíchả :
[at,bt,ct,dt]= ss2ss (a,b,c,d,T) th c hi n bi n đ i t ng đ ng: z= Txự ệ ế ổ ươ ươ
Cu i cùng ta đ c h khơng gian tr ng thái nh sauố ượ ệ ạ ư
TBuzTATz

+=

1
.
y = CT
-1
z+Du
d) Ví dụ:
Cho h khơng gian tr ng thái:ệ ạ
u
x
x
x
x






+














=








0
1
12
11
2
1
2
.
1
.
y = [2 4]







2
1
x
x
+ [1]u
Th c hi n bi n đ i t ng đ ngđ c i ti n đi u ki n c a ma tr n A.ự ệ ế ổ ươ ươ ể ả ế ề ệ ủ ậ
a = [1 1;2 -1];
b = [1;0];
c = [2 4];
d = [1];
T= balance(a);
[at,bt,ct,dt] = ss2ss(a,b,c,d,inv(T))
14. L nh CANONệ
a) Cơng d ngụ :
Chuy n h khơng gian tr ng thái v d ng chính t c.ể ệ ạ ề ạ ắ
b) Cú pháp:
[ab,bb,cb,db] = canon(a,b,c,d,'type')
c) Gi i thíchả :
L nh canon chuy n h khơng gian tr ng thái liên t c:ệ ể ệ ạ ụ
BuAxx
+=
.
y = Cx + Du
Thành d ng chính t c.ạ ắ
Thực hiện: PHẠM QUỐC TRƯỜNG - 15 - GVHD: PHẠM QUANG HUY
Khảo sát ứng dụng MATLAB trong điều khiển tự động
+ 'type' là 'moddal': chuy n thành d ng chính t c 'hình thái' (modal).ể ạ ắ
+ 'type' là 'companion': chuy n thành d ng chínnh t c 'kèm theo' (companion)ể ạ ắ
N u 'type' khơng đ c ch đ nh thì giá tr m c nhiên là 'modal'.ế ượ ỉ ị ị ặ
H th ng đã chuy n đ i có cùng quan h vào ra (cùng hàm truy n) nh ng các tr ng thái thì khácệ ố ể ổ ệ ề ư ạ

nhau.
[ab,bb,cb,db]= canon (a,b,c,d,'type') chuy n h khơng gian tr ng thái thành d ng 'hình thái'ể ệ ạ ạ
trong đó có giá tr riêng th c n m trên đ ng chéo c a ma tr n Avà các giá tr riêng ph c n m kh iị ự ằ ườ ủ ậ ị ứ ằ ở ố
2x2 trên đ ng chéo c a ma tr n A. Gi s h th ng có các giá tr riêng ( ), ma tr n A s là:ườ ủ ậ ả ử ệ ố ị ậ ẽ
A =













2
1
000
00
00
000
λ
σω
ωσ
λ
[ab,bb,cb,db]= canon (a,b,c,d,'companion') chuy n h khơng gian tr ng thái thành d ngể ệ ạ ạ
chính t c 'kèm theo' trong đó đa thh c đ c tr ng c a h th ng n m c t bên ph i ma tr n A.ắ ứ ặ ư ủ ệ ố ằ ở ộ ả ậ

N u m t h th ng có đa th c đ c tr ng:ế ộ ệ ố ứ ặ ư
s
n
+ a
1
s
n-1
+ … + a
n-1
s + a
n
thì ma tr n A t ng ng là:ậ ươ ứ
A =





















1
2
3
10
000
001
000
a
a
a
a
n



N u thêm vào m t đ i s ngõ ra thì:ế ộ ố ố ở
[ab,bb,cb,db,T]= canon(a,b,c,d,'type') t o ra vector chuy n đ i T v i z= Txạ ể ổ ớ
Thực hiện: PHẠM QUỐC TRƯỜNG - 16 - GVHD: PHẠM QUANG HUY
Khảo sát ứng dụng MATLAB trong điều khiển tự động
CÁC BÀI T PẬ
Bài 1: c vi t d i d ng m_file Đượ ế ướ ạ
%Bai tap tinh toan tong quat cua ham truyen
tu1=input('nhap (vi du: tu1=[3]), tu1= ');
mau1=input('nhap (vi du mau1=[1 4]), mau1= ');
tu2=input('nhap (tu2=[2 4]), tu2= ');
mau2=input('nhap (mau2=[1 2 3]), mau2= ');
%ket qua tu3=[0 0 2 12]; mau2=[1 6 11 12]

disp('Ket noi 2 he thong noi tiep la:');
[tu3,mau3]=series(tu1,mau1,tu2,mau2)
pause
chon=input('Ban muon khao sat ham nao 1,2,3: ');
if (chon==1)
num=tu1;
den=mau1;
end
if (chon==2)
num=tu2;
den=mau2;
end
if (chon==3)
num=tu3;
den=mau3;
end
if (chon~=1)&(chon~=2)&(chon~=3)
break
end
num
den
pause

disp('Nghiem va zero cua ham truyen la:');
[z,p,k] = tf2zp(num,den)
pause
disp('Thanh phan toi gian cua ham truyen la:');
[r,p,k] = residue(num,den)
pause
disp('In ra ham truyen o dang ty so cua hai da thuc:');

printsys(num,den,'s')
pause
disp('Tinh va hien thi tan so tu nhien va he so suy giam cua HT lien tuc
la:');
damp(den)
pause
disp('He so khuyech dai cua he thong:');
k=dcgain(num,den)
pause
disp('He so khuyech dai cua he thong kin voi he so suy giam:');
k=rlocfind(num,den)
pause
disp('Bien doi HAM TRUYEN thanh MO HINH BIEN TRANG THAI');
[A,B,C,D]=tf2ss(num,den)
A
Thực hiện: PHẠM QUỐC TRƯỜNG - 17 - GVHD: PHẠM QUANG HUY
Khảo sát ứng dụng MATLAB trong điều khiển tự động
B
C
B
disp('Bien doi ham truyen lien tuc sang roi rac la;');
Ts=input('nhap thoi gian lay mau(vi du: Ts=0.1), Ts= ');
[numd,dend]=c2dm(num,den,Ts,'zoh')
pause
disp('Gia tri rieng,bien do,tan so');
disp('va he so suy giam tuong duong cua ham truyen cua he thong roi rac');
disp('thoi gian lay mau Ts la:');
ddamp(den,Ts)
Sau khi ch y ch ng trình:ạ ươ
» Bài1.m

nhap (vi du: tu1=[3]), tu1= 3
nhap (vi du mau1=[1 4]), mau1= [1 4]
nhap (tu2=[2 4]), tu2= [2 4]
nhap (mau2=[1 2 3]), mau2= [1 2 3]
Ket noi 2 he thong noi tiep la:
tu3 =
0 0 6 12
mau3 =
1 6 11 12
Ban muon khao sat ham nao 1,2,3: 3
num =
0 0 6 12
den =
1 6 11 12
Nghiem va zero cua ham truyen la:
z =
-2
Thực hiện: PHẠM QUỐC TRƯỜNG - 18 - GVHD: PHẠM QUANG HUY
Khảo sát ứng dụng MATLAB trong điều khiển tự động
p =
-4.0000
-1.0000 + 1.4142i
-1.0000 - 1.4142i
k =
6
Thanh phan toi gian cua ham truyen la:
r =
-1.0909
0.5455 - 0.9642i
0.5455 + 0.9642i

p =
-4.0000
-1.0000 + 1.4142i
-1.0000 - 1.4142i
k =
[]
In ra ham truyen o dang ty so cua hai da thuc:
num/den =

6 s + 12

s^3 + 6 s^2 + 11 s + 12
Tinh va hien thi tan so tu nhien va he so suy giam cua HT lien tuc la:
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
-4.00e+000 1.00e+000 4.00e+000

Thực hiện: PHẠM QUỐC TRƯỜNG - 19 - GVHD: PHẠM QUANG HUY
Khảo sát ứng dụng MATLAB trong điều khiển tự động
He so khuyech dai cua he thong:
k =
1
He so khuyech dai cua he thong kin voi he so suy giam:Select a point in the graphics window
selected_point =
0.1267 + 0.1842i
k =
1.0521
Bien doi HAM TRUYEN thanh MO HINH BIEN TRANG THAI

A =
-6 -11 -12
1 0 0
0 1 0
B =
1
0
0
C =
0 6 12
D =
0
A =
Thực hiện: PHẠM QUỐC TRƯỜNG - 20 - GVHD: PHẠM QUANG HUY
Khảo sát ứng dụng MATLAB trong điều khiển tự động
-6 -11 -12
1 0 0
0 1 0
B =
1
0
0
C =
0 6 12
B =
1
0
0
Bien doi ham truyen lien tuc sang roi rac la;
nhap thoi gian lay mau(vi du: Ts=0.1), Ts= 0.1

numd =
0 0.0263 0.0015 -0.0189
dend =
1.0000 -2.4619 2.0197 -0.5488
Gia tri rieng,bien do,tan so
va he so suy giam tuong duong cua ham truyen cua he thong roi rac
thoi gian lay mau Ts la:

Eigenvalue Magnitude Equiv. Damping Equiv. Freq. (rad/s)

-4.00e+000 4.00e+000 -4.04e-001 3.43e+001
-1.00e+000 + 1.41e+000i 1.73e+000 -2.44e-001 2.25e+001
Thực hiện: PHẠM QUỐC TRƯỜNG - 21 - GVHD: PHẠM QUANG HUY
Khảo sát ứng dụng MATLAB trong điều khiển tự động
-1.00e+000 - 1.41e+000i 1.73e+000 -2.44e-001 2.25e+001
Thực hiện: PHẠM QUỐC TRƯỜNG - 22 - GVHD: PHẠM QUANG HUY

×