122
MATLAB VÀ ĐIU KHIN T Đ NG
§1.
CÁC
V N
Đ
CHUNG
1.
Các
d
ng
hình
h
th
ng
:
Đ
xây
d
ng
hình
c
a
h
thng,
MATLAB
cung
c
p
m t
s
l nh.
hình
h
th ng
t
bng
hàm
truy n
đượ
c
xây
d
ng
nh
l nh
tf(ts,ms)
v
i
ts
đa
th
c
t
s
ms
đa
th
c
mu
s
.
Hàm
zpk(z,
p,
k)
v
i
z
vec
tơ
đi m
không,
p
vec
tơ
đi m
c
c
k
h
s
khuyếch
đi
t
o
nên
hình
đi m
khôngđi m
c
c.
Hàm
ss(a,
b,
c
ʹ,
d)
v
i
a,
b,
c, d
các
ma
trn
t
o
nên
hình
không
giantrng
thái.
d
:
Ta
t
o
ra
m t
s
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)
(s1)^2
‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐
(s+5)
(s1)
a
=
x1 x2
x1 1 2
x2 3 4
b
=
u1 u2
x1 1 1
x2 0 1
123
c
=
x1 x2
y1 0 1
y2 1 2
y3 3 1
d
=
u1 u2
y1 0 0
y2 0 0
y3 0 0
Continuoustime
model.
2.
Đim
c
c
đim
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
h
s
khuếch
đi
dùng
hàm
tf2zp.
Ta
c
ũng
th
dùng
hàm
pole(sys)
đ
tìm
đi m
c
c c
a
h
th ng
sys
dung
hàm
zero(sys)
đ
tìm
đi m
không
c
a
h
th ng
sys
d
:
Cho
hàm
truy n:
H(s)  s 3  11s 2 30s
s 4  9s 3  45s 2  87s  50
Ta c n tìm các đi m cc p, đi m zero z 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:
H(s)  s(s  5)(s  6)
(s  1)(s  2)(s  3  4 j)(s  3  4 j)s(s  5)(s  6)
(s  1)(s  2)(s2  6s  25)
Khi có các đi m cc, đ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;34*i;2;1];
[ts,ms]
=
zp2tf(z,p,k)
ts
=
ms
=
0 1 11 30 0
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 đ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 th khai tri 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
ph n nguyên k.
d
: Cho hàm truy n:
3
H(s)
2s
9s
1
s3
s2
4s
4
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.2
5i
n
2.0
p
=
0.0
+
2.0i
0.0
2.0i
1.0
k
=
2
Như v y:
H(s)
2
2
0.25 j
0.25 j
2
2
1
s
1 s
2 j s
2 j s
1 s2
4
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.00.25*i;
0+0.25*i;
2];
p
=
[0+2*i;02*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
giantr
ng
thái
: Cho ph ng ươ trình vi
phân:
a d y
a dn 1 y
a d y
a y
u(t)
n dxnn 1 dxn 1 1 dx 0
Đ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 th bi nế đ i v
không giantr ng thái b ng l nh
tf2ss
.
d
: Cho hàm truy n :
2
H(s)
s
7s
2