Nhóm lệnh về chuyển đổi mô hình (Model conversion)

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] = Adx[n] + Bdu[n] thừa nhận ngõ vào điều khiển là bất biến từng đoạn bên ngoà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:  
.
(t) = Ax(t) + Bu(t - )  
x
y(t) = Cx(t)  
thành hệ gián đoạn:  
x[n+1] = Adx[n] + Bdu[n]  
y[n] = Cdx[n] + Ddu[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)/(s2 + 4s +5)  
Với Td=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ả:  
Transfer function:  
s - 1  
exp(-0.35*s) * -------------  
s^2 + 4 s + 5  
Khảo sát ứng dụng MATLAB trong điều khiển tự động  
» 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’)  
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:  
x
   
1
x
   
1
1
1
1
   
u
   
   
   
x2  
2 1 x2  
0
     
   
x
   
1
y   
2 4  
1 u  
   
x2  
   
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];  
Khảo sát ứng dụng MATLAB trong điều khiển tự động  
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  
Đáp ứng gián đoạn  
Đáp ứng liên tục  
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:  
Khảo sát ứng dụng MATLAB trong điều khiển tự động  
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  
x
c
c
.
x Ac x Bcu  
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:  
[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:  
11 4  
6
   
D 15;  
C  
28 12;  
A   
;
B   
;
   
8
3
4
   
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’)  
Khảo sát ứng dụng MATLAB trong điều khiển tự động  
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 =  
2
4
dc = 1  
Đáp ứng gián đoạn  
Đáp ứng liên tục  
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:  
.  
x Ax Bu  
y Cx Du  
thành dạng hàm truyền:  
Khảo sát ứng dụng MATLAB trong điều khiển tự động  
NUM (s)  
H(s) =  
= C(sI – A)-1 B + D  
den(s)  
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 =  
00  
den =  
1.0000  
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:  
.
= Ax + Bu  
x
y = Cx + Du  
được cho bởi hàm truyền:  
NUM(s)  
H(s)   
C(sI- A)-1 B D  
den(s)  
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:  
2s3  
s 2s1  
s 0.4s1  
2
H(s)  
2
Để 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 =  
c =  
1
0
2.0000 3.0000  
Khảo sát ứng dụng MATLAB trong điều khiển tự động  
1.0000 2.0000  
d =  
0
1
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: (s2+7s +2) / (s3+9s2+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
1
0
0
B =  
1
0
0
C =  
1
7
2
D =  
0
7. Lệnh SS2ZP  
a) Công dụ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ố.  
Khảo sát ứng dụng MATLAB trong điều khiển tự động  
Z(s)  
p(s)  
(sZ(1)(sZ(2)).....(sZ(m))  
(sp(1)(sp(2)).....(sp(n))  
H(s)   
k  
của hệ thống:  
.
x Ax Bu  
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:  
2s 3  
s2 0.4s 1  
H(s)   
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 =  
p =  
-1.5000  
-0.2000 + 0.9798i  
-0.2000 – 0.9798I  
2.0000  
k =  
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:  
.
x Ax Bu  
y = Cx + Du  
của hệ SIMO được cho bởi hàm truyền:  
Z(s)  
p(s)  
(s Z(1)(s Z(2)).....(s Z(m))  
(s p(1)(s p(2)).....(s p(n))  
H(s)   
k  
Khảo sát ứng dụng MATLAB trong điều khiển tự động  
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:  
Z(s)  
p(s)  
(s Z(1)(s Z(2)).....(s Z(m))  
(s p(1)(s p(2)).....(s p(n))  
H(s)   
k  
được cho bởi hàm truyền:  
NUM(s) NUM(1)s nn1 .....NUM(nn1)sNUM(nn)  
den(1)s nd 1 .....den(nd 1)sden(nd)  
den(s)  
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:  
2s 3  
s2 0.4s 1  
H(s)   
num = [2  
den = [1  
3];  
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ỉ:  
Khảo sát ứng dụng MATLAB trong điều khiển tự động  
NUM(s) NUM(1)s nn1 .....NUM(nn1)sNUM(nn)  
den(1)s nd 1 .....den(nd 1)sden(nd)  
den(s)  
được cho bởi hàm truyền dạng:  
Z(s)  
(s Z(1)(s Z(2)).....(s Z(m))  
(s p(1)(s p(2)).....(s p(n))  
H(s)   
k  
p(s)  
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  
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 =  
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:  
b1 b2 s1 b3 s2 .....b m1 s m  
a1 a2 s1 a 3 s2 .....a n1 s n  
a(s)  
b(s)  
[b,a]= residue(r,p,k) chuyển dạng khai triển phân số từng phần:  
r
r2  
a(s) s p1 s p1  
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  
rn  
b(s)  
1
......   
k(s)  
s pn  
Xác định thành phần tối giản của hàm truyền: F(s)= (2s3+9s+1)/(s3+s2+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 =  
2
1
0
1
9
4
1
4
a =  
Khảo sát ứng dụng MATLAB trong điều khiển tự động  
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/(s2+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:  
[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  
.
z TAT 1 z TBu  
y = CT-1z+Du  
d) Ví dụ:  
Cho hệ không gian trạng thái:  
.   
1 1  
x
1
      
1
x1  
   
u
.   
      
2 1 x2  
0
      
x2  
   
x
   
1
x2  
   
y = [2 4]  
+ [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.  
Khảo sát ứng dụng MATLAB trong điều khiển tự động  
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:  
.
x Ax Bu  
y = Cx + Du  
Thành dạng chính tắc.  
+ '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à:  
0
0
0
0
0
1
A =  
0    
0
0
0
0
2  
[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:  
sn + a1sn-1 + ….. + an-1s + an  
thì ma trận A tương ứng là:  
0 0 0 ....... a  
n   
1 0 0 .......  
A =  
0 0 0 ....... a  
3   
a2  
0    
1
a1  
Nếu thêm vào một đối số ở ngõ ra thì:  
Khảo sát ứng dụng MATLAB trong điều khiển tự động  
[ab,bb,cb,db,T]= canon(a,b,c,d,'type') tạo ra vector chuyển đổi T với z= Tx  
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)  
Khảo sát ứng dụng MATLAB trong điều khiển tự động  
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
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 =  
Khảo sát ứng dụng MATLAB trong điều khiển tự động  
6 11 12  
1
Nghiem va zero cua ham truyen la:  
z =  
-2  
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.73e+000  
-1.00e+000 + 1.41e+000i 5.77e-001  
Khảo sát ứng dụng MATLAB trong điều khiển tự động  
-1.00e+000 - 1.41e+000i 5.77e-001 1.73e+000  
-4.00e+000 1.00e+000 4.00e+000  
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
1
0
0
B =  
1
0
0
C =  
0
6 12  
D =  
0
A =  
-6 -11 -12  
1
0
0
1
0
0
Khảo sát ứng dụng MATLAB trong điều khiển tự động  
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  
-1.00e+000 + 1.41e+000i 1.73e+000  
-1.00e+000 - 1.41e+000i 1.73e+000  
4.00e+000  
-4.04e-001  
3.43e+001  
2.25e+001  
2.25e+001  
-2.44e-001  
-2.44e-001  
pdf 18 trang myanh 26880 Free
Bạn đang xem tài liệu "Nhóm lệnh về chuyển đổi mô hình (Model conversion)", để tải tài liệu gốc về máy hãy click vào nút Download ở trên

File đính kèm:

  • pdfnhom_lenh_ve_chuyen_doi_mo_hinh_model_conversion.pdf