SlideShare a Scribd company logo
1 of 23
Download to read offline
1
BÀI THÍ NGHIỆM
Môn: Lý thuyết điều khiển tự động
Mục đích:
Matlab là chữ viết tắt của Matrix Laboratory. Đây là một thư viện các công
cụ làm toán trên ma trận. Matlab được tích hợp sẵn một họ các lời giải cho
các ứng dụng chuyên dụng và được gọi là các Toolbox, đó chính là thư viện
cho các hàm để hỗ trợ Matlab giải quyết các cụm công việc trong các lĩnh
vực chuyên môn khác nhau. Các bài thí nghiệm này sẽ đề cập chủ yếu đến
các vấn đề trong “Control System Toolbox”. Qua các buổi thí nghiệm, sinh
viên có thể sử dụng thành thạo phần mềm Matlab về các vấn đề thuộc môn
học “Lý thuyết điều khiển tự động” và qua đó, củng cố các kiến thức liên
quan đến môn học đã được giáo viên truyền đạt trên lớp. Cuối mỗi bài sẽ có
bài tập giúp cho sinh viên nắm được bài đã học.
Yêu cầu:
- Sinh viên nắm vững các kiến thức đã được học trên lớp
- Đã học qua môn học "Lý thuyết mạch"
Bài 1:
- Giới thiệu phần mềm Matlab, các lệnh cơ bản và cách tạo hàm trong
Matlab.
- Giới thiệu “Control System Toolbox”, bộ công cụ của Matlab dành cho
điều khiển hệ thống.
- Bài tập
- Tạo hàm truyền đạt
- Biến đổi hàm truyền đạt thành các dạng khác nhau (liên tục, rời rạc, điểm
cực – không, mô hình không gian trạng thái).
- Các lệnh đồ họa Simulink Toolbox và cách xây dựng hệ thống trên
Simulink.
- Bài tập
Bài 2:
- Tính điểm cực, điểm không
2
- Tạo hàm truyền đạt từ các điểm cực – không từ hàm truyền đạt
- Tính và vẽ đáp ứng thời gian từ các điểm cực – không
- Vẽ đáp ứng thời gian của hệ phi tuyến trên Simulink
- Bài tập
Bài 3:
- Vẽ đáp ứng của hệ thống trong miền thời gian và miền tần số (đồ thị
Bode, đáp ứng xung đơn vị, đặc tính tần số biên – pha…)
- Tính điều khiển được, tính quan sát được của hệ thống
- Bài tập
- Khảo sát hệ thống trong không gian trạng thái
- Bài tập
3
BÀI 1. Matlab với môn học Lý thuyết điều khiển tự động
Mục đích:
Giúp cho sinh viên làm quen với phần mềm Matlab – một công cụ tính toán
mạch được sử dụng rộng rãi trong nhiều ngành kỹ thuật, trong đó có lĩnh
vực điều khiển hệ thống. Nội dung trình bày bao gồm các tập lệnh cơ bản,
cách tạo hàm và bộ công cụ Control System.
Yêu cầu:
- Sinh viên nắm vững các kiến thức toán học cơ bản liên quan đến các phép
toán ma trận, vector, đa thức…
- Có kỹ năng sử dụng máy vi tính.
Nội dung:
1 Cửa sổ lệnh
Khi dùng Matlab trên cửa sổ lệnh thì trang màn hình sẽ giống như tờ giấy nháp
để người sử dụng có thể giải toán và thử các vấn đề liên quan đến hệ thống được
khảo sát. Có thể thực hiện các phép toán thông thường, vào các đa thức, các hàm
truyền đạt… Trong cửa sổ lệnh đã được mặc định biến ans để trả về giá trị:
>> 2
ans =
2
2 Cách biểu diễn ma trận trong Matlab:
* Cách tạo ma trận:
Ví dụ: Muốn tạo ma trận
1 3 4
5 7 2
-1 3 5
0 0 3
>> A=[1 3 4; 5 7 2;-1 3 5; 0 0 3]
* Có thể tạo ma trận với các biến phức:
4
>>B=[2+6i 1-3i;3+8i 2-2i]
Chú ý: không có dấu cách khi viết số phức. Matlab có thể chấp nhận biến i hoặc
j khi viết số phức và để tránh nhầm lẫn, có thể định nghĩa ii=sqrt(-1)
* Tạo ma trận có kích thước n*n gồm các số 0 và 1 ngẫu nhiên:
>>rand(n)
* Tạo ma trận có kích thước n*m gồm các số 0 và 1 ngẫu nhiên:
>>rand(n,m)
* Tìm hiểu các câu lệnh:
magic, hilb, ones, zeros, eye, diag, triu, tril, sqrtm, det, rank
*Có thể tạo ma trận 5*5 theo cách sau:
>>[A, zeros(3,2);zeros(2,3) eye(2)]
* Kích thước ma trận:
>> sizeA=size(A)
sizeA =
3 3
* Thực hiện các phép toán về ma trận:
Cộng ma trận: >> A+B
Trừ ma trận: >> A-B
Nhân ma trận: >> A*B
Chuyển vị ma trận: >> A'
Nghịch đảo ma trận: >> inv(A)
Chia trái >>AB
Chia phải >>A/B
Câu hỏi: Tìm sự khác nhau giữa phép chia trái và phép chia phải?
* Tính giá trị riêng
>>[X,D]=eig(A)
A phải là ma trận vuông. Các phần tử đường chéo của D chính là các giá trị
riêng: A.X=X.D
3 Vector
>> v=[sin(pi) 0.4 -0.3]
Các phép toán về vector cũng tương tự như các phép toán về ma trận.
* Các tạo các vector khi biết điểm đầu, điểm cuối và số phần tử
>> v=1:1:10;
A, B cùng kích thước
Số cột ma trận A bằng số hàng ma trận B
A là ma trận vuông
5
* Tìm hiểu các lệnh:
max, min, sort, sum, prod, mean, any, all
4 Đa thức
Trong Matlab, đa thức được biểu diễn dưới dạng vector có các phần tử bằng các
hệ số của đa thức theo thứ tự số mũ giảm dần.
>> a= [1 5 6]
>> b=[2 3 8]
Cộng: >> a+b
Nhân: >> conv(a,b)
Chia: >>[q,r]=deconv(a,b)
Trong đó: q là đa thức chia
r là đa thức dư
* Muốn tìm giá trị của đa thức tại một giá trị xác định (n) của biến:
>> polyval(a,n)
* Tính nghiệm của đa thức:
>> r=roots(a)
* Xác định đa thức khi biết nghiệm của nó:.
>> a=poly(r)
5 Các lệnh for, while và if
* Lập trình trên Matlab thực chất là tạo ra các hàm mới của riêng người sử dụng
và đưa vào thư viện chung của Matlab. Thủ tục để tạo ra một hàm mới để
Matlab hiểu và đưa vào thư viện của nó như sau:
Dùng từ khóa function
Khai báo biến đầu ra, tên hàm và các biến đầu vào của hàm đó.
Chú ý: Đặt dấu ";" ở cuối mỗi câu lệnh
Tên hàm phải trùng với tên file.
* Mở script file bằng cách vào “File”, chọn “New”, chọn “M file”
6
* Lệnh for: So sánh hai đoạn lệnh sau với n cho trước:
x=[];
for i=1:n
x=[x,i^2];
end
hay x=[]; for i=1:n, x=[x,i^2], end
và
x=[];
for i=n:-1:1
x=[x,i^2];
end
- Giải thích kết quả của đoạn lệnh sau
for i=1:n
for j=1:m
H(i,j)=1/(i+j-1);
end
end
H
- Giải thích kết quả của đoạn lệnh sau
s=0;
for c=A
s=s+sum(s);
end
So sánh với sum(sum(A))
* Lệnh while:
Cú pháp:
while relation
statements
end
Ví dụ: Với a đã cho
n=0;
while 2^n<a
n=n+1;
end
n
* Lệnh if:
Cú pháp:
7
if relation
statements
end
Ví dụ:
if n<0
parity=0;
elseif rem(n,2)==0
parity=2;
else
parity=1;
end
Các toán tử relation trong Matlab:
> Lớn hơn
< Nhỏ hơn
>= Lớn hơn hoặc bằng
<= Nhỏ hơn hoặc bằng
== Bằng
~= Không bằng
Chú ý: “=” được sử dụng trong câu lệnh gán còn while“==” được sử dụng trong
1 relation
Các relation có thể được nối với nhau bằng các toán tử & (and), | (or), ~ (not).
8
6 Công cụ Control System Toolbox
Tên hàm Chức năng
Các mô hình LTI
ss Tạo mô hình không gian trạng thái
tf Tạo hàm truyền đạt
zpk Tạo mô hình điểm cực - không
Các đặc tính của mô hình
size Biểu diễn kích thước của đầu vào/đầu ra/ma trận
Chuyển đổi mô hình
c2d Chuyển từ mô hình liên tục sang dạng rời rạc theo thời gian
d2c Chuyển từ mô hình rời rạc theo thời gian sang dạng liên tục
d2d Tạo mô hình rời rạc theo thời gian với thời gian lấy mẫu mới
Các phép toán trong không gian trạng thái
ctrb Tạo ma trận điều khiển được
obsv Tạo ma trận quan sát được
Các chức năng của mô hình
pzmap Vẽ toạ độ điểm cực - không của mô hình LTI
Kết nối mô hình
feedback Nối phản hồi hai mô hình
parallel Mắc song song các mô hình
series Mắc nối tiếp các mô hình
Đáp ứng thời gian
impulse Tính và vẽ đáp ứng xung
Lsim Mô phỏng đáp ứng của mô hình LTI với các đầu vào bất kỳ
Step Tính đáp ứng xung đơn vị
Đáp ứng tần số
Bode Tính và vẽ đáp ứng Bode
bodemag Tính và vẽ biên độ của đáp ứng Bode
nichols Vẽ đáp ứng Nichols
nyquist Vẽ đáp ứng Nyquist
9
7 Các xây dựng hàm truyền đạt
Ví dụ: Biểu diễn hàm truyền đạt sau:
 
 
 
 
   
Y s 5 s 20
G s
U s s 15 s 25 s 0.4

 
  
>> s=tf('s');
>> sys_tf=5*(s+20)/((s+15)*(s+25)*(s-0.4))
hoặc có thể tạo một M_file trong Matlab để mô tả hàm truyền đạt của hệ thống
này.
%G(s)=5(s+20)/(s+15)(s+25)(s-0.4)
num=5*[1 20];
den=conv(conv([1 15],[1 25]),[1 -0.4]);
printsys(num,den,'s')
8 Cách xây dựng mô hình không gian trạng thái
x Ax Bu
y Cx Du
 

 

Ví dụ: Biểu diễn phương trình không gian trạng thái sau:
 
1 2 1
x x u
3 4 2
y 1 3 x
    
     
    
  

>> A=[1 2;3 4];
>> B=[1;2];
>> C=[-1 3];
>> D=0;
>> sys_ss=ss(A,B,C,D)
hoặc có thể tạo một M_file trong Matlab để mô tả phương trình không gian
trạng thái này.
A=[1 2;3 4]; B=[1;2];
C=[-1 3];D=0;
printsys(A,B,C,D)
10
9 Chuyển từ hàm truyền đạt về không gian trạng thái.
Câu lệnh: >>[A,B,C,D]=tf2ss(num,den)
Trong đó: A, B, C, D l à các ma trận trạng thái
num, den là tử số và mẫu số của hàm truyền đạt
Ví dụ:
>> num=[1.5];
>> den=[1 14 40.02];
>> [A,B,C,D]=tf2ss(num,den)
10 Chuyển từ không gian trạng thái về hàm truyền đạt
>>[num,den]=ss2tf(A,B,C,D,1)
11 Chuyển từ hàm liên tục sang hàm rời rạc theo thời gian và ngược lại
sysd = c2d(sysc,Ts) % Chuyển từ hàm liên tục sang dạng rời rạc với
thời gian lấy mẫu Ts
sysc = d2c(sysd) % Chuyển từ hàm rời rạc sang dạng liên tục
sysd1= d2d(sysd,Ts) % Thay đổi thời gian lấy mẫu của hàm rời rạc
>> sysc=tf(num,den)
>> Ts=0.05;
>> sysd=c2d(sysc,0.05)
12 Xây dựng mô hình điểm cực - không
Ví dụ: Xây dựng mô hình điểm cực - không sau:
 
  
1.5
G s
s 9.996 s 4.004

 
sys_zpk = zpk([],[-9.996 -4.004], 1.5)
This is the resulting zero/pole/gain representation.
13 Mắc song song hai khâu
sys1 + sys2 hoÆc parallel(sys1,sys2)
11
14 Mắc nối tiếp hai khâu
sys1 * sys2 hoÆc series(sys2,sys1)
15 Mắc hồi tiếp
feedback(sys1,sys2,sign)
16 Mắc hồi tiếp
feedback(sys1,sys2,sign)
BÀI TẬP
Bài 1.
Cho:
5 1 0
A 0 2 1
0 0 1
 
   
  
,
0
b 0
1
 
   
  
,  c 1 1 0 
a. Giả sử A*x b . Tìm x
b. Giả sử y*A c . Tìm y
c.    
1
G s c sI A b

  . Tìm  G 0 và  G 1
d. Định nghĩa 2
MC b Ab A b    . Tìm hạng của MC .
Bài 2.
Lập trình tính giai thừa của một số bất kỳ theo các cách sử dụng câu lệnh while,
for và if
Bài 3.
Biểu diễn hệ thống sau dưới dạng hàm truyền đạt và không gian trạng thái .
sys2 sys4
sys6
sys1
sys3
+
+
sys5
12
trong đó:
 p1p
3p
1sys



2sys được biểu diễn dưới dạng không gian trạng thái:
 
















 





 

u2x21y
u
2
1
x
41
32
23
11
x
2
p 1
sys3
p 3p 5


 
2
3
p p 2
sys4
p 1
 


p
1p
5sys


6sys được biểu diễn dưới dạng không gian trạng thái:
 

















 

u2x31y
u
1
1
x
41
32
x
13
BÀI 2. Vẽ hàm truyền đạt, xây dựng đáp ứng thời gian của các khâu cơ bản
trên Simulink. Khảo sát tính ổn định của hệ thống
Mục đích:
- Giúp cho sinh viên cách tính các điểm cực - không.
- Vẽ đáp ứng thời gian của hệ thống trên Simulink
- Khảo sát tính ổn định của hệ thống
Yêu cầu:
Sinh viên nắm vững các kiến thức liên quan đến hàm truyền đạt và đáp ứng
thời gian của hệ thống
Nội dung:
1 Xác định điểm cực và điểm không của hàm truyền đạt
>> [z,p,k]=tf2zp(num,den)
Ví dụ: Cho
 
3p6p2p3p
6p2p
pW 234
23



Xác định các điểm cực, điểm không của hệ thống?
>> num=[1 2 0 6];
>> den=[1 3 2 6 3];
>> [z,p,k]=tf2zp(num,den)
2 Xác định hàm truyyền đạt khi biết điểm cực và điểm không của hệ thống
>>[num,den]=zp2tf(z,p,k)
Ví dụ:
    
    i43pi43p3p2p
5p4pp
pW



Xác định hàm truyền đạt của hệ thống?
14
>> k=1;
>> z=[0;-4;-5];
>> i=sqrt(-1);
>> p=[2;-3;-3+4*i;-3-4*i];
>> [num,den]=zp2tf(z,p,k)
3 Khai triển hàm truyền đạt về dạng phân thức tối giản
>>[r,p,k]=residue(num,den)
Cho hàm truyền đạt:
 
3
3
2
2
1
1
23
23
ap
C
ap
C
ap
C
5p4p3p
1p9p3p2
pW









>> num=[2 3 9 1];
>> den=[1 3 4 5];
>> [r,p,k]=residue(num,den)
Trong đó: k là phần thương chia hết của phân thức
p là nghiệm của phân thức
r là hệ số mở rộng phân thức từng phần
Ngược lại: >> [num,den]=residue(r,p,k)
4 Cách vẽ đồ thị
* Chế độ đồ họa trong Matlab
Vẽ đồ thị hàm số
   2x2,xsiny
>> x=-2*pi:0.05:2*pi;
>> y=sin(x);
>> plot(x,y)
>> axis([-2*pi 2*pi -1 1]);
>> xlabel('Radial');
>> ylabel('Amplitude');
>> title('y=sin(x)');
>> grid;
15
* Vẽ trong không gian hai chiều
* Vẽ nhiều đồ thị khác nhau trên một hình:
h = tf([4 8.4 30.8 60],[1 4.12 17.4 30.8 60]);
subplot(221)
bode(h)
subplot(222)
step(h)
subplot(223)
pzmap(h)
subplot(224)
plot(rand(1, 100)) % Any data can go here
title('Some noise')
Bode Diagram
Frequency (rad/sec)
Phase(deg)Magnitude(dB)
-50
0
50
10
-1
10
0
10
1
10
2
-90
0
90
Step Response
Time (sec)
Amplitude
0 5 10
0
0.5
1
1.5
Pole-Zero Map
Real Axis
ImagAxis
-2 -1.5 -1 -0.5 0
-4
-2
0
2
4
0 50 100
0
0.2
0.4
0.6
0.8
1
Some noise
* Ví dụ vẽ đáp ứng thời gian từ điểm cực và điểm không:
clf
[num,den]=zp2tf([-2],[-1 -0.2+10*i -0.2-10*i],100);
t=[0:.1:20];
u=exp(-t);
subplot(2,1,1)
lsim(num,den,u,t)
hold on
16
plot(t,u,'m--')
title('Dap ung voi dau vao exp(-t)')
hold off
unew=exp(-0.2*t).*sin(10*t);
subplot(2,1,2)
lsim(num,den,unew,t)
hold on
plot(t,unew,'m--')
title('Dap ung voi dau vao exp(-0.2*t)sin(10t)')
hold off
Linear Simulation Results
Time (sec)
Amplitude
0 2 4 6 8 10 12 14 16 18 20
-0.5
0
0.5
1
1.5
2
Linear Simulation Results
Time (sec)
Amplitude
0 2 4 6 8 10 12 14 16 18 20
-10
-5
0
5
10
b. Vẽ trong không gian ba chiều
Matlab có thể biểu diễn trong không gian 3 chiều theo 3 cách: vẽ đường viền, vẽ
lưới và vẽ các đường trong không gian 3 chiều.
Ví dụ: Vẽ đường viền của một hàm bậc bốn đơn giản ở bên trái màn hình và vẽ
lưới 3D của hàm đó ở bên phải màn hình.
clf
>> x=[-1:0.1:1];
>> y=[-2:0.1:2];
>> [X,Y]=meshgrid(x,y);
>> z=X.^4+(Y/2).^4;
>> subplot(1,2,1), contour(z)
>> subplot(1,2,2), mesh(z)
17
5 10 15 20
5
10
15
20
25
30
35
40
0
10
20
30
0
20
40
60
0
0.5
1
1.5
2
5 Vẽ đáp ứng trên Simulink
Vẽ đáp ứng thời gian của các khâu cơ bản đã học trong Simulink bằng cách:
- Cho đầu vào là hàm  1 t và  t .
- Xây dựng hàm truyền đạt của khâu
- Quan sát đầu ra trên scope
- So sánh với các kết quả lý thuyết
10(s+10)(s+10)
(s+1)(s+0.3-i)(s+0.3+i)
Zero-PoleStep ScopeSaturation
18
BÀI TẬP
Bài 1.
Lập trình trong M-file để vẽ đồ thị của các hàm sau trên một hình:
 
   
1
2
2
3
4
y sin(2pi*t) 2
y
y t 2t 3
y c sin t
exp -3t
os 2t
 

  
 
Bài 2.
Xây dựng chương trình xét tính ổn định của hệ thống theo tiêu chuẩn Routh.
Bài 3.
Cho hệ thống có hàm truyền đạt:
apap2p
1ap3pp
W 35
34



Với giá trị nào của a thì hệ thống quan sát được và điều khiển được hoàn toàn.
Bài 4.
Xây dựng trên Simulink để khảo sát hệ thống được mô tả bằng phương trình vi
phân sau:
x 2x u  
Bài 5.
Xây dựng trên Simulink để giải phương trình phi tuyến Val der Pol:
 2
x x 1 x x 0    
19
BÀI 3. Xét tính điều khiển được, quan sát được. Xây dựng hệ thống trên
Simulink
Mục đích:
- Giúp cho sinh viên biểu diễn được các loại đáp ứng tần số của hệ thống.
- Cách xét tính điều khiển được, quan sát được của hệ thống.
- Cách xây dựng hệ thống trên Simulink
Yêu cầu:
Sinh viên nắm vững các kiến thức liên quan đến đáp ứng của hệ thống, tính
điều khiển được và quan sát được của nó.
Nội dung:
1. Biểu diễn các dạng đáp ứng của hệ thống
Step, xung, Bode (biên độ và pha), Nichols, Nyquist, điểm cực-không
2. Lập ma trận điều khiển được
>>ctrb(A,B)
Hệ thống điều khiển được nếu hạng của ctrb(A,B) bằng n.
3. Lập ma trận quan sát được
>>obsv(A,C)
Hệ thống quan sát được nếu hạng của obsv(A,C)) bằng n.
4. X ây dựng hệ thống trên Simulink
10(s+10)(s+10)
(s+1)(s+0.3-i)(s+0.3+i)
Zero-PoleStep ScopeSaturation
20
5. Kh¶o s¸t tÝnh æn ®Þnh
>> A=[-8 -16 -6; 1 0 0;0 1 0]
A =
-8 -16 -6
1 0 0
0 1 0
>> P=poly(A)
P =
1.0000 8.0000 16.0000 6.0000
>> roots(P)
ans =
-5.0861
-2.4280
-0.4859
KÕt luËn: Mäi nghiÖm cña ph­¬ng tr×nh ®Æc tr­ng ®Òu cã phÇn thùc ©m nªn hÖ
thèng ®· cho æn ®Þnh.
C©u hái: P ë ®©y ®­îc tÝnh theo c«ng thøc nµo?
6. Kh¶o s¸t ®Æc tÝnh thêi gian:
Khi ®· biÕt ma trËn A, B, C, D cña hÖ thèng, ta cã thÓ kh¶o s¸t ®Æc tÝnh qu¸ ®é
h(t) cña hÖ thèng b»ng hµm step vµ kh¶o s¸t hµm träng l­îng cña hÖ thèng
b»ng hµm impulse. NÕu tÝn hiÖu vµo u(t) cã d¹ng bÊt kú th× ta dïng hµm lsim
®Ó kh¶o s¸t ®Çu ra cña hÖ thèng.
VÝ dô 1: Kh¶o s¸t ®Æc tÝnh qu¸ ®é vµ hµm träng l­îng cña hÖ thèng cã m« t¶
to¸n häc trong kh«ng gian tr¹ng th¸i nh­ sau:
21
>> A=[0 1 0 0;0 0 1 0; 0 0 0 1; -15 -150 -50 -15];
>> B=[0;0;0;1];
>> C=[15 150 0 0];
>> D=0;
>> t=[0: 0.01:10];
>> [y1,x,t]=step(A,B,C,D,1,t);
>> [y2,x,t]=impulse(A,B,C,D,1,t);
>> subplot(211),plot(t,y1,'r-'),grid on
>> xlabel('Time[sec]'), ylabel ('Dap ung qua do')
>> subplot(212),plot(t,y2,'r-'),grid on
>> xlabel('Time[sec]'), ylabel ('Ham trong luong')
VÝ dô 2: Kh¶o s¸t ®¸p øng ®Çu ra cña hÖ thèng cã m« t¶ to¸n häc nh­ sau:
>> A=[0 -2;1 -3];
>> B=[2;0];
>> C=[1 0];
>> D=0;
>> x0=[1 1];
>> t=[0:0.01:10];
>> u=0*t;
>> [y,x]=lsim(A,B,C,D,u,t,x0);
>> subplot(211),plot(t,x(:,1),'r-'), grid on
>> xlabel('Time[sec]'), ylabel('x1'),
>> subplot(212),plot(t,x(:,2),'r-'), grid on
>> xlabel('Time[sec]'), ylabel('x2'),
BÀI TẬP
Bài1.
Cho hệ thống điều khiển như hình vẽ.
sys2 sys4
sys6
sys1
sys3
+
+
sys5
22
trong đó:
 
p 1
sys1
p p 1



2sys được biểu diễn dưới dạng không gian trạng thái:
 
















 





 

u2x21y
u
2
1
x
41
32
23
11
x
2
p 2
sys3
p 3p 5


 
2
3 2
p p 2
sys4
p p p 2
 

  
p
1p
5sys


6sys được biểu diễn dưới dạng không gian trạng thái:
 

















 

u2x31y
u
1
1
x
41
32
x
a. Hệ thống có điều khiển được, quan sát được không?
b. Vẽ đáp ứng Step, Bode, Nyquist, điểm cực - không của hệ thống
Bài 2.
Xây dựng hệ thống như phần 4 với hàm truyền đạt được thay bằng
     2
G s s 1 / s 5s 6    , khâu phi tuyến bão hòa được thay bằng khâu tích phân
và chèn thêm một khâu khuếch đại cho hệ số khuếch đại bằng 10 vào sau khâu
tích phân.
Bài 3.
Một hệ thống được mô tả bởi hàm truyền đạt:
  4 3 2
53 10 10 4
p a
W p
p p p p


   
23
Xác định giá trị của a để hệ thống không điều khiển được và không quan sát
được?
Bài 4.
Một hệ thống tuyến tính được mô tả bằng phương trình X AX Bu  với
0 1 0
0 0 1
1 2
A
K
 
   
    
a. Xác định phương trình đặc trưng của hệ thống?
b. Tìm miền giá trị của K để hệ thống ổn định?
c. Với một giá trị K cụ thể trong miền tìm được của phần b, hãy xác định các
nghiệm của phương trình đặc trưng?
Bài 5.
Xây dựng chương trình trong Matlab để tìm hàm truyền đạt của hệ thống tuyến
tính có mô tả toán học như sau:
 
1 1 0 0
0 2 0 ; 0 ; 1 1 1 ; 0
0 0 3 1
A B C D
   
          
      
Bài 6.
Xây dựng một sơ đồ hệ thống điều khiển tuyến tính trên trong Simulink rồi dùng
công cụ của Matlab tính ra hàm truyền đạt của hệ thống đó. So sánh kết quả
nhận được với kết quả tính ra nhờ biến đổi sơ đồ cấu trúc?

More Related Content

What's hot

Các lệnh-cơ-bản-của-giải-tích-1
Các lệnh-cơ-bản-của-giải-tích-1Các lệnh-cơ-bản-của-giải-tích-1
Các lệnh-cơ-bản-của-giải-tích-1
thaicuia
 
Matlab cho sv_tbd-dt_8-2007
Matlab cho sv_tbd-dt_8-2007Matlab cho sv_tbd-dt_8-2007
Matlab cho sv_tbd-dt_8-2007
Xuantham Nguyen
 
Tính toán khoa học - Chương 1: Nhập môn Matlab
Tính toán khoa học - Chương 1: Nhập môn MatlabTính toán khoa học - Chương 1: Nhập môn Matlab
Tính toán khoa học - Chương 1: Nhập môn Matlab
Chien Dang
 
Lttt matlab chuong 2
Lttt matlab chuong 2Lttt matlab chuong 2
Lttt matlab chuong 2
Hoa Cỏ May
 
Khao sat-ung-dung-matlab-trong-dieu-khien-tu-dong
Khao sat-ung-dung-matlab-trong-dieu-khien-tu-dongKhao sat-ung-dung-matlab-trong-dieu-khien-tu-dong
Khao sat-ung-dung-matlab-trong-dieu-khien-tu-dong
Khoa Pham
 
B%c3%a1o%20c%c3%a1o%20gi%e1%ba%a3i%20t%c3%a dch%202
B%c3%a1o%20c%c3%a1o%20gi%e1%ba%a3i%20t%c3%a dch%202B%c3%a1o%20c%c3%a1o%20gi%e1%ba%a3i%20t%c3%a dch%202
B%c3%a1o%20c%c3%a1o%20gi%e1%ba%a3i%20t%c3%a dch%202
Tran Anh
 
Lttt matlab chuong 4
Lttt matlab chuong 4Lttt matlab chuong 4
Lttt matlab chuong 4
Hoa Cỏ May
 
Lttt matlab chuong 5
Lttt matlab chuong 5Lttt matlab chuong 5
Lttt matlab chuong 5
Hoa Cỏ May
 
Images compression using huffman algorithm matlab
Images compression using huffman algorithm matlabImages compression using huffman algorithm matlab
Images compression using huffman algorithm matlab
Tan Hoang Luu
 
Tai lieu huong_dan_hoc_matlab_danh_cho_mon_xu_ly_anh_rat_hay_2264_7433
Tai lieu huong_dan_hoc_matlab_danh_cho_mon_xu_ly_anh_rat_hay_2264_7433Tai lieu huong_dan_hoc_matlab_danh_cho_mon_xu_ly_anh_rat_hay_2264_7433
Tai lieu huong_dan_hoc_matlab_danh_cho_mon_xu_ly_anh_rat_hay_2264_7433
Muoivy Wm
 

What's hot (18)

Các lệnh-cơ-bản-của-giải-tích-1
Các lệnh-cơ-bản-của-giải-tích-1Các lệnh-cơ-bản-của-giải-tích-1
Các lệnh-cơ-bản-của-giải-tích-1
 
Lttt matlab bt1
Lttt matlab bt1Lttt matlab bt1
Lttt matlab bt1
 
Đồ Thị Matlab
Đồ Thị Matlab Đồ Thị Matlab
Đồ Thị Matlab
 
Matlab cho sv_tbd-dt_8-2007
Matlab cho sv_tbd-dt_8-2007Matlab cho sv_tbd-dt_8-2007
Matlab cho sv_tbd-dt_8-2007
 
Tính toán khoa học - Chương 1: Nhập môn Matlab
Tính toán khoa học - Chương 1: Nhập môn MatlabTính toán khoa học - Chương 1: Nhập môn Matlab
Tính toán khoa học - Chương 1: Nhập môn Matlab
 
Lttt matlab chuong 2
Lttt matlab chuong 2Lttt matlab chuong 2
Lttt matlab chuong 2
 
bai giang Matlab
bai giang Matlabbai giang Matlab
bai giang Matlab
 
Huong danmatlab simulink
Huong danmatlab simulinkHuong danmatlab simulink
Huong danmatlab simulink
 
Matlab intro
Matlab introMatlab intro
Matlab intro
 
Tailieu.vncty.com 06 matlab-osadq3_j2qu_20130412090644_577
Tailieu.vncty.com   06 matlab-osadq3_j2qu_20130412090644_577Tailieu.vncty.com   06 matlab-osadq3_j2qu_20130412090644_577
Tailieu.vncty.com 06 matlab-osadq3_j2qu_20130412090644_577
 
Co ban ve_matlab
Co ban ve_matlabCo ban ve_matlab
Co ban ve_matlab
 
Khao sat-ung-dung-matlab-trong-dieu-khien-tu-dong
Khao sat-ung-dung-matlab-trong-dieu-khien-tu-dongKhao sat-ung-dung-matlab-trong-dieu-khien-tu-dong
Khao sat-ung-dung-matlab-trong-dieu-khien-tu-dong
 
B%c3%a1o%20c%c3%a1o%20gi%e1%ba%a3i%20t%c3%a dch%202
B%c3%a1o%20c%c3%a1o%20gi%e1%ba%a3i%20t%c3%a dch%202B%c3%a1o%20c%c3%a1o%20gi%e1%ba%a3i%20t%c3%a dch%202
B%c3%a1o%20c%c3%a1o%20gi%e1%ba%a3i%20t%c3%a dch%202
 
Lttt matlab chuong 4
Lttt matlab chuong 4Lttt matlab chuong 4
Lttt matlab chuong 4
 
Dieukhientuyentin hmoi
Dieukhientuyentin hmoiDieukhientuyentin hmoi
Dieukhientuyentin hmoi
 
Lttt matlab chuong 5
Lttt matlab chuong 5Lttt matlab chuong 5
Lttt matlab chuong 5
 
Images compression using huffman algorithm matlab
Images compression using huffman algorithm matlabImages compression using huffman algorithm matlab
Images compression using huffman algorithm matlab
 
Tai lieu huong_dan_hoc_matlab_danh_cho_mon_xu_ly_anh_rat_hay_2264_7433
Tai lieu huong_dan_hoc_matlab_danh_cho_mon_xu_ly_anh_rat_hay_2264_7433Tai lieu huong_dan_hoc_matlab_danh_cho_mon_xu_ly_anh_rat_hay_2264_7433
Tai lieu huong_dan_hoc_matlab_danh_cho_mon_xu_ly_anh_rat_hay_2264_7433
 

Similar to Bai thi Nghiem ky thuat dien tu

Khao sat-ung-dung-matlab-trong-dieu-khien-tu-dong
Khao sat-ung-dung-matlab-trong-dieu-khien-tu-dongKhao sat-ung-dung-matlab-trong-dieu-khien-tu-dong
Khao sat-ung-dung-matlab-trong-dieu-khien-tu-dong
Tuấn Anh Phạm
 
2 matlab ly-thuyet_laptrinh_hamtoanhoc_
2 matlab ly-thuyet_laptrinh_hamtoanhoc_2 matlab ly-thuyet_laptrinh_hamtoanhoc_
2 matlab ly-thuyet_laptrinh_hamtoanhoc_
LeeRyuRyu
 
Tai lieu thi nghiem mon ly thuyet dieu khien tu dong 1
Tai lieu thi nghiem mon ly thuyet dieu khien tu dong 1Tai lieu thi nghiem mon ly thuyet dieu khien tu dong 1
Tai lieu thi nghiem mon ly thuyet dieu khien tu dong 1
TUNG0908
 
300 BÀI CODE THIẾU NIÊN.pdf
300 BÀI CODE THIẾU NIÊN.pdf300 BÀI CODE THIẾU NIÊN.pdf
300 BÀI CODE THIẾU NIÊN.pdf
HuyPhc9
 
Local sakainame 501127 ktl_trình hlmt1 a01 fall 2013 _ modules
Local sakainame   501127 ktl_trình hlmt1 a01 fall 2013 _ modulesLocal sakainame   501127 ktl_trình hlmt1 a01 fall 2013 _ modules
Local sakainame 501127 ktl_trình hlmt1 a01 fall 2013 _ modules
Trần Văn Nam
 
Nmlt C01 Cac Khai Niem Co Ban Ve Lap Trinh
Nmlt C01 Cac Khai Niem Co Ban Ve Lap TrinhNmlt C01 Cac Khai Niem Co Ban Ve Lap Trinh
Nmlt C01 Cac Khai Niem Co Ban Ve Lap Trinh
Cuong
 

Similar to Bai thi Nghiem ky thuat dien tu (20)

matlab co ban
matlab co banmatlab co ban
matlab co ban
 
Chuong 1 Matlab co ban.pdf
Chuong 1 Matlab co ban.pdfChuong 1 Matlab co ban.pdf
Chuong 1 Matlab co ban.pdf
 
Chuong 1 Matlab co ban.pdf
Chuong 1 Matlab co ban.pdfChuong 1 Matlab co ban.pdf
Chuong 1 Matlab co ban.pdf
 
Mo phong bang Matlab-Simulinhk_P1.ppt
Mo phong bang Matlab-Simulinhk_P1.pptMo phong bang Matlab-Simulinhk_P1.ppt
Mo phong bang Matlab-Simulinhk_P1.ppt
 
Khao sat-ung-dung-matlab-trong-dieu-khien-tu-dong
Khao sat-ung-dung-matlab-trong-dieu-khien-tu-dongKhao sat-ung-dung-matlab-trong-dieu-khien-tu-dong
Khao sat-ung-dung-matlab-trong-dieu-khien-tu-dong
 
2 matlab ly-thuyet_laptrinh_hamtoanhoc_
2 matlab ly-thuyet_laptrinh_hamtoanhoc_2 matlab ly-thuyet_laptrinh_hamtoanhoc_
2 matlab ly-thuyet_laptrinh_hamtoanhoc_
 
2 matlab ly-thuyet_laptrinh_hamtoanhoc_
2 matlab ly-thuyet_laptrinh_hamtoanhoc_2 matlab ly-thuyet_laptrinh_hamtoanhoc_
2 matlab ly-thuyet_laptrinh_hamtoanhoc_
 
Nhom lenh co ban
Nhom lenh co banNhom lenh co ban
Nhom lenh co ban
 
Tai lieu thi nghiem mon ly thuyet dieu khien tu dong 1
Tai lieu thi nghiem mon ly thuyet dieu khien tu dong 1Tai lieu thi nghiem mon ly thuyet dieu khien tu dong 1
Tai lieu thi nghiem mon ly thuyet dieu khien tu dong 1
 
Xây dựng mô hình gián đoạn của động cơ một chiều kích từ độc lập
Xây dựng mô hình gián đoạn của động cơ một chiều kích từ độc lậpXây dựng mô hình gián đoạn của động cơ một chiều kích từ độc lập
Xây dựng mô hình gián đoạn của động cơ một chiều kích từ độc lập
 
Chuong1
Chuong1Chuong1
Chuong1
 
Huong danthuchanhmang
Huong danthuchanhmangHuong danthuchanhmang
Huong danthuchanhmang
 
300 BÀI CODE THIẾU NIÊN.pdf
300 BÀI CODE THIẾU NIÊN.pdf300 BÀI CODE THIẾU NIÊN.pdf
300 BÀI CODE THIẾU NIÊN.pdf
 
Local sakainame 501127 ktl_trình hlmt1 a01 fall 2013 _ modules
Local sakainame   501127 ktl_trình hlmt1 a01 fall 2013 _ modulesLocal sakainame   501127 ktl_trình hlmt1 a01 fall 2013 _ modules
Local sakainame 501127 ktl_trình hlmt1 a01 fall 2013 _ modules
 
Gt de quy_2
Gt de quy_2Gt de quy_2
Gt de quy_2
 
Gt de quy
Gt de quyGt de quy
Gt de quy
 
Nmlt C01 Cac Khai Niem Co Ban Ve Lap Trinh
Nmlt C01 Cac Khai Niem Co Ban Ve Lap TrinhNmlt C01 Cac Khai Niem Co Ban Ve Lap Trinh
Nmlt C01 Cac Khai Niem Co Ban Ve Lap Trinh
 
Ngôn ngữ lập trình ứng dụng
Ngôn ngữ lập trình ứng dụngNgôn ngữ lập trình ứng dụng
Ngôn ngữ lập trình ứng dụng
 
Tai lieuthuchanh lab_book
Tai lieuthuchanh lab_bookTai lieuthuchanh lab_book
Tai lieuthuchanh lab_book
 
huong dan_su_dung_maple
huong dan_su_dung_maplehuong dan_su_dung_maple
huong dan_su_dung_maple
 

More from Brand Xanh

Những nguyên lý quản trị bất biến mọi thời đại
Những nguyên lý quản trị bất biến mọi thời đạiNhững nguyên lý quản trị bất biến mọi thời đại
Những nguyên lý quản trị bất biến mọi thời đại
Brand Xanh
 

More from Brand Xanh (20)

tai_lieu_Fintech_Marketing_afflefintechreport_v03_vi.pdf
tai_lieu_Fintech_Marketing_afflefintechreport_v03_vi.pdftai_lieu_Fintech_Marketing_afflefintechreport_v03_vi.pdf
tai_lieu_Fintech_Marketing_afflefintechreport_v03_vi.pdf
 
Báo cáo thương mai điện tử 2021
Báo cáo thương mai điện tử 2021Báo cáo thương mai điện tử 2021
Báo cáo thương mai điện tử 2021
 
Hỗ trợ quyết toán thuế - kê khai thuế - thuế thu nhập doanh nghiệp 2021 - qtt...
Hỗ trợ quyết toán thuế - kê khai thuế - thuế thu nhập doanh nghiệp 2021 - qtt...Hỗ trợ quyết toán thuế - kê khai thuế - thuế thu nhập doanh nghiệp 2021 - qtt...
Hỗ trợ quyết toán thuế - kê khai thuế - thuế thu nhập doanh nghiệp 2021 - qtt...
 
Hướng dẫn mở tài khoản bán hàng quốc tế trên sàn thương mại điện tử Amazon - ...
Hướng dẫn mở tài khoản bán hàng quốc tế trên sàn thương mại điện tử Amazon - ...Hướng dẫn mở tài khoản bán hàng quốc tế trên sàn thương mại điện tử Amazon - ...
Hướng dẫn mở tài khoản bán hàng quốc tế trên sàn thương mại điện tử Amazon - ...
 
Bao cao phan tich nghien cuu thi truong hanh vi tim kiem khach hang online tr...
Bao cao phan tich nghien cuu thi truong hanh vi tim kiem khach hang online tr...Bao cao phan tich nghien cuu thi truong hanh vi tim kiem khach hang online tr...
Bao cao phan tich nghien cuu thi truong hanh vi tim kiem khach hang online tr...
 
He thong hoa kich thuoc chuan de thiet ke hinh anh tren fanpage facebook
He thong hoa kich thuoc chuan de thiet ke hinh anh tren fanpage facebookHe thong hoa kich thuoc chuan de thiet ke hinh anh tren fanpage facebook
He thong hoa kich thuoc chuan de thiet ke hinh anh tren fanpage facebook
 
Mau landingpage giao duc tuyen sinh dai hoc thuong mai
Mau landingpage giao duc tuyen sinh dai hoc thuong maiMau landingpage giao duc tuyen sinh dai hoc thuong mai
Mau landingpage giao duc tuyen sinh dai hoc thuong mai
 
Huong dan su dung va dat lenh chung khoan phai sinh mbs
Huong dan su dung va dat lenh chung khoan phai sinh mbsHuong dan su dung va dat lenh chung khoan phai sinh mbs
Huong dan su dung va dat lenh chung khoan phai sinh mbs
 
Ảnh hưởng của covid 19 lên hành vi của người tiêu dùng [Tài liệu nghiên cứu t...
Ảnh hưởng của covid 19 lên hành vi của người tiêu dùng [Tài liệu nghiên cứu t...Ảnh hưởng của covid 19 lên hành vi của người tiêu dùng [Tài liệu nghiên cứu t...
Ảnh hưởng của covid 19 lên hành vi của người tiêu dùng [Tài liệu nghiên cứu t...
 
File mẫu xây dựng kế hoạch marketing bản đầy đủ tiếng Việt - Vietnamese Marke...
File mẫu xây dựng kế hoạch marketing bản đầy đủ tiếng Việt - Vietnamese Marke...File mẫu xây dựng kế hoạch marketing bản đầy đủ tiếng Việt - Vietnamese Marke...
File mẫu xây dựng kế hoạch marketing bản đầy đủ tiếng Việt - Vietnamese Marke...
 
Giải pháp cửa nhôm Hopo không cầu cách nhiệt đồng bộ hệ 65
Giải pháp cửa nhôm Hopo không cầu cách nhiệt đồng bộ hệ 65Giải pháp cửa nhôm Hopo không cầu cách nhiệt đồng bộ hệ 65
Giải pháp cửa nhôm Hopo không cầu cách nhiệt đồng bộ hệ 65
 
Vina zip aiti_aptech_audiostream
Vina zip aiti_aptech_audiostreamVina zip aiti_aptech_audiostream
Vina zip aiti_aptech_audiostream
 
31500234 smartax ma5600 configuration guide (v300r003-64)
31500234 smartax ma5600 configuration guide (v300r003-64)31500234 smartax ma5600 configuration guide (v300r003-64)
31500234 smartax ma5600 configuration guide (v300r003-64)
 
Seo and soccer
Seo and soccerSeo and soccer
Seo and soccer
 
Bao cao full
Bao cao fullBao cao full
Bao cao full
 
Những nguyên lý quản trị bất biến mọi thời đại
Những nguyên lý quản trị bất biến mọi thời đạiNhững nguyên lý quản trị bất biến mọi thời đại
Những nguyên lý quản trị bất biến mọi thời đại
 
Mẫu phiếu đăng ký tham dự cuộc thi khởi nghiệp 2013
Mẫu phiếu đăng ký tham dự cuộc thi khởi nghiệp 2013Mẫu phiếu đăng ký tham dự cuộc thi khởi nghiệp 2013
Mẫu phiếu đăng ký tham dự cuộc thi khởi nghiệp 2013
 
Cấu trúc của một bản kế hoạch khởi nghiệp
Cấu trúc của một bản kế hoạch khởi nghiệpCấu trúc của một bản kế hoạch khởi nghiệp
Cấu trúc của một bản kế hoạch khởi nghiệp
 
Svmc brochure
Svmc brochureSvmc brochure
Svmc brochure
 
Recruiting information vn
Recruiting information vnRecruiting information vn
Recruiting information vn
 

Bai thi Nghiem ky thuat dien tu

  • 1. 1 BÀI THÍ NGHIỆM Môn: Lý thuyết điều khiển tự động Mục đích: Matlab là chữ viết tắt của Matrix Laboratory. Đây là một thư viện các công cụ làm toán trên ma trận. Matlab được tích hợp sẵn một họ các lời giải cho các ứng dụng chuyên dụng và được gọi là các Toolbox, đó chính là thư viện cho các hàm để hỗ trợ Matlab giải quyết các cụm công việc trong các lĩnh vực chuyên môn khác nhau. Các bài thí nghiệm này sẽ đề cập chủ yếu đến các vấn đề trong “Control System Toolbox”. Qua các buổi thí nghiệm, sinh viên có thể sử dụng thành thạo phần mềm Matlab về các vấn đề thuộc môn học “Lý thuyết điều khiển tự động” và qua đó, củng cố các kiến thức liên quan đến môn học đã được giáo viên truyền đạt trên lớp. Cuối mỗi bài sẽ có bài tập giúp cho sinh viên nắm được bài đã học. Yêu cầu: - Sinh viên nắm vững các kiến thức đã được học trên lớp - Đã học qua môn học "Lý thuyết mạch" Bài 1: - Giới thiệu phần mềm Matlab, các lệnh cơ bản và cách tạo hàm trong Matlab. - Giới thiệu “Control System Toolbox”, bộ công cụ của Matlab dành cho điều khiển hệ thống. - Bài tập - Tạo hàm truyền đạt - Biến đổi hàm truyền đạt thành các dạng khác nhau (liên tục, rời rạc, điểm cực – không, mô hình không gian trạng thái). - Các lệnh đồ họa Simulink Toolbox và cách xây dựng hệ thống trên Simulink. - Bài tập Bài 2: - Tính điểm cực, điểm không
  • 2. 2 - Tạo hàm truyền đạt từ các điểm cực – không từ hàm truyền đạt - Tính và vẽ đáp ứng thời gian từ các điểm cực – không - Vẽ đáp ứng thời gian của hệ phi tuyến trên Simulink - Bài tập Bài 3: - Vẽ đáp ứng của hệ thống trong miền thời gian và miền tần số (đồ thị Bode, đáp ứng xung đơn vị, đặc tính tần số biên – pha…) - Tính điều khiển được, tính quan sát được của hệ thống - Bài tập - Khảo sát hệ thống trong không gian trạng thái - Bài tập
  • 3. 3 BÀI 1. Matlab với môn học Lý thuyết điều khiển tự động Mục đích: Giúp cho sinh viên làm quen với phần mềm Matlab – một công cụ tính toán mạch được sử dụng rộng rãi trong nhiều ngành kỹ thuật, trong đó có lĩnh vực điều khiển hệ thống. Nội dung trình bày bao gồm các tập lệnh cơ bản, cách tạo hàm và bộ công cụ Control System. Yêu cầu: - Sinh viên nắm vững các kiến thức toán học cơ bản liên quan đến các phép toán ma trận, vector, đa thức… - Có kỹ năng sử dụng máy vi tính. Nội dung: 1 Cửa sổ lệnh Khi dùng Matlab trên cửa sổ lệnh thì trang màn hình sẽ giống như tờ giấy nháp để người sử dụng có thể giải toán và thử các vấn đề liên quan đến hệ thống được khảo sát. Có thể thực hiện các phép toán thông thường, vào các đa thức, các hàm truyền đạt… Trong cửa sổ lệnh đã được mặc định biến ans để trả về giá trị: >> 2 ans = 2 2 Cách biểu diễn ma trận trong Matlab: * Cách tạo ma trận: Ví dụ: Muốn tạo ma trận 1 3 4 5 7 2 -1 3 5 0 0 3 >> A=[1 3 4; 5 7 2;-1 3 5; 0 0 3] * Có thể tạo ma trận với các biến phức:
  • 4. 4 >>B=[2+6i 1-3i;3+8i 2-2i] Chú ý: không có dấu cách khi viết số phức. Matlab có thể chấp nhận biến i hoặc j khi viết số phức và để tránh nhầm lẫn, có thể định nghĩa ii=sqrt(-1) * Tạo ma trận có kích thước n*n gồm các số 0 và 1 ngẫu nhiên: >>rand(n) * Tạo ma trận có kích thước n*m gồm các số 0 và 1 ngẫu nhiên: >>rand(n,m) * Tìm hiểu các câu lệnh: magic, hilb, ones, zeros, eye, diag, triu, tril, sqrtm, det, rank *Có thể tạo ma trận 5*5 theo cách sau: >>[A, zeros(3,2);zeros(2,3) eye(2)] * Kích thước ma trận: >> sizeA=size(A) sizeA = 3 3 * Thực hiện các phép toán về ma trận: Cộng ma trận: >> A+B Trừ ma trận: >> A-B Nhân ma trận: >> A*B Chuyển vị ma trận: >> A' Nghịch đảo ma trận: >> inv(A) Chia trái >>AB Chia phải >>A/B Câu hỏi: Tìm sự khác nhau giữa phép chia trái và phép chia phải? * Tính giá trị riêng >>[X,D]=eig(A) A phải là ma trận vuông. Các phần tử đường chéo của D chính là các giá trị riêng: A.X=X.D 3 Vector >> v=[sin(pi) 0.4 -0.3] Các phép toán về vector cũng tương tự như các phép toán về ma trận. * Các tạo các vector khi biết điểm đầu, điểm cuối và số phần tử >> v=1:1:10; A, B cùng kích thước Số cột ma trận A bằng số hàng ma trận B A là ma trận vuông
  • 5. 5 * Tìm hiểu các lệnh: max, min, sort, sum, prod, mean, any, all 4 Đa thức Trong Matlab, đa thức được biểu diễn dưới dạng vector có các phần tử bằng các hệ số của đa thức theo thứ tự số mũ giảm dần. >> a= [1 5 6] >> b=[2 3 8] Cộng: >> a+b Nhân: >> conv(a,b) Chia: >>[q,r]=deconv(a,b) Trong đó: q là đa thức chia r là đa thức dư * Muốn tìm giá trị của đa thức tại một giá trị xác định (n) của biến: >> polyval(a,n) * Tính nghiệm của đa thức: >> r=roots(a) * Xác định đa thức khi biết nghiệm của nó:. >> a=poly(r) 5 Các lệnh for, while và if * Lập trình trên Matlab thực chất là tạo ra các hàm mới của riêng người sử dụng và đưa vào thư viện chung của Matlab. Thủ tục để tạo ra một hàm mới để Matlab hiểu và đưa vào thư viện của nó như sau: Dùng từ khóa function Khai báo biến đầu ra, tên hàm và các biến đầu vào của hàm đó. Chú ý: Đặt dấu ";" ở cuối mỗi câu lệnh Tên hàm phải trùng với tên file. * Mở script file bằng cách vào “File”, chọn “New”, chọn “M file”
  • 6. 6 * Lệnh for: So sánh hai đoạn lệnh sau với n cho trước: x=[]; for i=1:n x=[x,i^2]; end hay x=[]; for i=1:n, x=[x,i^2], end và x=[]; for i=n:-1:1 x=[x,i^2]; end - Giải thích kết quả của đoạn lệnh sau for i=1:n for j=1:m H(i,j)=1/(i+j-1); end end H - Giải thích kết quả của đoạn lệnh sau s=0; for c=A s=s+sum(s); end So sánh với sum(sum(A)) * Lệnh while: Cú pháp: while relation statements end Ví dụ: Với a đã cho n=0; while 2^n<a n=n+1; end n * Lệnh if: Cú pháp:
  • 7. 7 if relation statements end Ví dụ: if n<0 parity=0; elseif rem(n,2)==0 parity=2; else parity=1; end Các toán tử relation trong Matlab: > Lớn hơn < Nhỏ hơn >= Lớn hơn hoặc bằng <= Nhỏ hơn hoặc bằng == Bằng ~= Không bằng Chú ý: “=” được sử dụng trong câu lệnh gán còn while“==” được sử dụng trong 1 relation Các relation có thể được nối với nhau bằng các toán tử & (and), | (or), ~ (not).
  • 8. 8 6 Công cụ Control System Toolbox Tên hàm Chức năng Các mô hình LTI ss Tạo mô hình không gian trạng thái tf Tạo hàm truyền đạt zpk Tạo mô hình điểm cực - không Các đặc tính của mô hình size Biểu diễn kích thước của đầu vào/đầu ra/ma trận Chuyển đổi mô hình c2d Chuyển từ mô hình liên tục sang dạng rời rạc theo thời gian d2c Chuyển từ mô hình rời rạc theo thời gian sang dạng liên tục d2d Tạo mô hình rời rạc theo thời gian với thời gian lấy mẫu mới Các phép toán trong không gian trạng thái ctrb Tạo ma trận điều khiển được obsv Tạo ma trận quan sát được Các chức năng của mô hình pzmap Vẽ toạ độ điểm cực - không của mô hình LTI Kết nối mô hình feedback Nối phản hồi hai mô hình parallel Mắc song song các mô hình series Mắc nối tiếp các mô hình Đáp ứng thời gian impulse Tính và vẽ đáp ứng xung Lsim Mô phỏng đáp ứng của mô hình LTI với các đầu vào bất kỳ Step Tính đáp ứng xung đơn vị Đáp ứng tần số Bode Tính và vẽ đáp ứng Bode bodemag Tính và vẽ biên độ của đáp ứng Bode nichols Vẽ đáp ứng Nichols nyquist Vẽ đáp ứng Nyquist
  • 9. 9 7 Các xây dựng hàm truyền đạt Ví dụ: Biểu diễn hàm truyền đạt sau:             Y s 5 s 20 G s U s s 15 s 25 s 0.4       >> s=tf('s'); >> sys_tf=5*(s+20)/((s+15)*(s+25)*(s-0.4)) hoặc có thể tạo một M_file trong Matlab để mô tả hàm truyền đạt của hệ thống này. %G(s)=5(s+20)/(s+15)(s+25)(s-0.4) num=5*[1 20]; den=conv(conv([1 15],[1 25]),[1 -0.4]); printsys(num,den,'s') 8 Cách xây dựng mô hình không gian trạng thái x Ax Bu y Cx Du       Ví dụ: Biểu diễn phương trình không gian trạng thái sau:   1 2 1 x x u 3 4 2 y 1 3 x                     >> A=[1 2;3 4]; >> B=[1;2]; >> C=[-1 3]; >> D=0; >> sys_ss=ss(A,B,C,D) hoặc có thể tạo một M_file trong Matlab để mô tả phương trình không gian trạng thái này. A=[1 2;3 4]; B=[1;2]; C=[-1 3];D=0; printsys(A,B,C,D)
  • 10. 10 9 Chuyển từ hàm truyền đạt về không gian trạng thái. Câu lệnh: >>[A,B,C,D]=tf2ss(num,den) Trong đó: A, B, C, D l à các ma trận trạng thái num, den là tử số và mẫu số của hàm truyền đạt Ví dụ: >> num=[1.5]; >> den=[1 14 40.02]; >> [A,B,C,D]=tf2ss(num,den) 10 Chuyển từ không gian trạng thái về hàm truyền đạt >>[num,den]=ss2tf(A,B,C,D,1) 11 Chuyển từ hàm liên tục sang hàm rời rạc theo thời gian và ngược lại sysd = c2d(sysc,Ts) % Chuyển từ hàm liên tục sang dạng rời rạc với thời gian lấy mẫu Ts sysc = d2c(sysd) % Chuyển từ hàm rời rạc sang dạng liên tục sysd1= d2d(sysd,Ts) % Thay đổi thời gian lấy mẫu của hàm rời rạc >> sysc=tf(num,den) >> Ts=0.05; >> sysd=c2d(sysc,0.05) 12 Xây dựng mô hình điểm cực - không Ví dụ: Xây dựng mô hình điểm cực - không sau:      1.5 G s s 9.996 s 4.004    sys_zpk = zpk([],[-9.996 -4.004], 1.5) This is the resulting zero/pole/gain representation. 13 Mắc song song hai khâu sys1 + sys2 hoÆc parallel(sys1,sys2)
  • 11. 11 14 Mắc nối tiếp hai khâu sys1 * sys2 hoÆc series(sys2,sys1) 15 Mắc hồi tiếp feedback(sys1,sys2,sign) 16 Mắc hồi tiếp feedback(sys1,sys2,sign) BÀI TẬP Bài 1. Cho: 5 1 0 A 0 2 1 0 0 1          , 0 b 0 1          ,  c 1 1 0  a. Giả sử A*x b . Tìm x b. Giả sử y*A c . Tìm y c.     1 G s c sI A b    . Tìm  G 0 và  G 1 d. Định nghĩa 2 MC b Ab A b    . Tìm hạng của MC . Bài 2. Lập trình tính giai thừa của một số bất kỳ theo các cách sử dụng câu lệnh while, for và if Bài 3. Biểu diễn hệ thống sau dưới dạng hàm truyền đạt và không gian trạng thái . sys2 sys4 sys6 sys1 sys3 + + sys5
  • 12. 12 trong đó:  p1p 3p 1sys    2sys được biểu diễn dưới dạng không gian trạng thái:                             u2x21y u 2 1 x 41 32 23 11 x 2 p 1 sys3 p 3p 5     2 3 p p 2 sys4 p 1     p 1p 5sys   6sys được biểu diễn dưới dạng không gian trạng thái:                       u2x31y u 1 1 x 41 32 x
  • 13. 13 BÀI 2. Vẽ hàm truyền đạt, xây dựng đáp ứng thời gian của các khâu cơ bản trên Simulink. Khảo sát tính ổn định của hệ thống Mục đích: - Giúp cho sinh viên cách tính các điểm cực - không. - Vẽ đáp ứng thời gian của hệ thống trên Simulink - Khảo sát tính ổn định của hệ thống Yêu cầu: Sinh viên nắm vững các kiến thức liên quan đến hàm truyền đạt và đáp ứng thời gian của hệ thống Nội dung: 1 Xác định điểm cực và điểm không của hàm truyền đạt >> [z,p,k]=tf2zp(num,den) Ví dụ: Cho   3p6p2p3p 6p2p pW 234 23    Xác định các điểm cực, điểm không của hệ thống? >> num=[1 2 0 6]; >> den=[1 3 2 6 3]; >> [z,p,k]=tf2zp(num,den) 2 Xác định hàm truyyền đạt khi biết điểm cực và điểm không của hệ thống >>[num,den]=zp2tf(z,p,k) Ví dụ:          i43pi43p3p2p 5p4pp pW    Xác định hàm truyền đạt của hệ thống?
  • 14. 14 >> k=1; >> z=[0;-4;-5]; >> i=sqrt(-1); >> p=[2;-3;-3+4*i;-3-4*i]; >> [num,den]=zp2tf(z,p,k) 3 Khai triển hàm truyền đạt về dạng phân thức tối giản >>[r,p,k]=residue(num,den) Cho hàm truyền đạt:   3 3 2 2 1 1 23 23 ap C ap C ap C 5p4p3p 1p9p3p2 pW          >> num=[2 3 9 1]; >> den=[1 3 4 5]; >> [r,p,k]=residue(num,den) Trong đó: k là phần thương chia hết của phân thức p là nghiệm của phân thức r là hệ số mở rộng phân thức từng phần Ngược lại: >> [num,den]=residue(r,p,k) 4 Cách vẽ đồ thị * Chế độ đồ họa trong Matlab Vẽ đồ thị hàm số    2x2,xsiny >> x=-2*pi:0.05:2*pi; >> y=sin(x); >> plot(x,y) >> axis([-2*pi 2*pi -1 1]); >> xlabel('Radial'); >> ylabel('Amplitude'); >> title('y=sin(x)'); >> grid;
  • 15. 15 * Vẽ trong không gian hai chiều * Vẽ nhiều đồ thị khác nhau trên một hình: h = tf([4 8.4 30.8 60],[1 4.12 17.4 30.8 60]); subplot(221) bode(h) subplot(222) step(h) subplot(223) pzmap(h) subplot(224) plot(rand(1, 100)) % Any data can go here title('Some noise') Bode Diagram Frequency (rad/sec) Phase(deg)Magnitude(dB) -50 0 50 10 -1 10 0 10 1 10 2 -90 0 90 Step Response Time (sec) Amplitude 0 5 10 0 0.5 1 1.5 Pole-Zero Map Real Axis ImagAxis -2 -1.5 -1 -0.5 0 -4 -2 0 2 4 0 50 100 0 0.2 0.4 0.6 0.8 1 Some noise * Ví dụ vẽ đáp ứng thời gian từ điểm cực và điểm không: clf [num,den]=zp2tf([-2],[-1 -0.2+10*i -0.2-10*i],100); t=[0:.1:20]; u=exp(-t); subplot(2,1,1) lsim(num,den,u,t) hold on
  • 16. 16 plot(t,u,'m--') title('Dap ung voi dau vao exp(-t)') hold off unew=exp(-0.2*t).*sin(10*t); subplot(2,1,2) lsim(num,den,unew,t) hold on plot(t,unew,'m--') title('Dap ung voi dau vao exp(-0.2*t)sin(10t)') hold off Linear Simulation Results Time (sec) Amplitude 0 2 4 6 8 10 12 14 16 18 20 -0.5 0 0.5 1 1.5 2 Linear Simulation Results Time (sec) Amplitude 0 2 4 6 8 10 12 14 16 18 20 -10 -5 0 5 10 b. Vẽ trong không gian ba chiều Matlab có thể biểu diễn trong không gian 3 chiều theo 3 cách: vẽ đường viền, vẽ lưới và vẽ các đường trong không gian 3 chiều. Ví dụ: Vẽ đường viền của một hàm bậc bốn đơn giản ở bên trái màn hình và vẽ lưới 3D của hàm đó ở bên phải màn hình. clf >> x=[-1:0.1:1]; >> y=[-2:0.1:2]; >> [X,Y]=meshgrid(x,y); >> z=X.^4+(Y/2).^4; >> subplot(1,2,1), contour(z) >> subplot(1,2,2), mesh(z)
  • 17. 17 5 10 15 20 5 10 15 20 25 30 35 40 0 10 20 30 0 20 40 60 0 0.5 1 1.5 2 5 Vẽ đáp ứng trên Simulink Vẽ đáp ứng thời gian của các khâu cơ bản đã học trong Simulink bằng cách: - Cho đầu vào là hàm  1 t và  t . - Xây dựng hàm truyền đạt của khâu - Quan sát đầu ra trên scope - So sánh với các kết quả lý thuyết 10(s+10)(s+10) (s+1)(s+0.3-i)(s+0.3+i) Zero-PoleStep ScopeSaturation
  • 18. 18 BÀI TẬP Bài 1. Lập trình trong M-file để vẽ đồ thị của các hàm sau trên một hình:       1 2 2 3 4 y sin(2pi*t) 2 y y t 2t 3 y c sin t exp -3t os 2t         Bài 2. Xây dựng chương trình xét tính ổn định của hệ thống theo tiêu chuẩn Routh. Bài 3. Cho hệ thống có hàm truyền đạt: apap2p 1ap3pp W 35 34    Với giá trị nào của a thì hệ thống quan sát được và điều khiển được hoàn toàn. Bài 4. Xây dựng trên Simulink để khảo sát hệ thống được mô tả bằng phương trình vi phân sau: x 2x u   Bài 5. Xây dựng trên Simulink để giải phương trình phi tuyến Val der Pol:  2 x x 1 x x 0    
  • 19. 19 BÀI 3. Xét tính điều khiển được, quan sát được. Xây dựng hệ thống trên Simulink Mục đích: - Giúp cho sinh viên biểu diễn được các loại đáp ứng tần số của hệ thống. - Cách xét tính điều khiển được, quan sát được của hệ thống. - Cách xây dựng hệ thống trên Simulink Yêu cầu: Sinh viên nắm vững các kiến thức liên quan đến đáp ứng của hệ thống, tính điều khiển được và quan sát được của nó. Nội dung: 1. Biểu diễn các dạng đáp ứng của hệ thống Step, xung, Bode (biên độ và pha), Nichols, Nyquist, điểm cực-không 2. Lập ma trận điều khiển được >>ctrb(A,B) Hệ thống điều khiển được nếu hạng của ctrb(A,B) bằng n. 3. Lập ma trận quan sát được >>obsv(A,C) Hệ thống quan sát được nếu hạng của obsv(A,C)) bằng n. 4. X ây dựng hệ thống trên Simulink 10(s+10)(s+10) (s+1)(s+0.3-i)(s+0.3+i) Zero-PoleStep ScopeSaturation
  • 20. 20 5. Kh¶o s¸t tÝnh æn ®Þnh >> A=[-8 -16 -6; 1 0 0;0 1 0] A = -8 -16 -6 1 0 0 0 1 0 >> P=poly(A) P = 1.0000 8.0000 16.0000 6.0000 >> roots(P) ans = -5.0861 -2.4280 -0.4859 KÕt luËn: Mäi nghiÖm cña ph­¬ng tr×nh ®Æc tr­ng ®Òu cã phÇn thùc ©m nªn hÖ thèng ®· cho æn ®Þnh. C©u hái: P ë ®©y ®­îc tÝnh theo c«ng thøc nµo? 6. Kh¶o s¸t ®Æc tÝnh thêi gian: Khi ®· biÕt ma trËn A, B, C, D cña hÖ thèng, ta cã thÓ kh¶o s¸t ®Æc tÝnh qu¸ ®é h(t) cña hÖ thèng b»ng hµm step vµ kh¶o s¸t hµm träng l­îng cña hÖ thèng b»ng hµm impulse. NÕu tÝn hiÖu vµo u(t) cã d¹ng bÊt kú th× ta dïng hµm lsim ®Ó kh¶o s¸t ®Çu ra cña hÖ thèng. VÝ dô 1: Kh¶o s¸t ®Æc tÝnh qu¸ ®é vµ hµm träng l­îng cña hÖ thèng cã m« t¶ to¸n häc trong kh«ng gian tr¹ng th¸i nh­ sau:
  • 21. 21 >> A=[0 1 0 0;0 0 1 0; 0 0 0 1; -15 -150 -50 -15]; >> B=[0;0;0;1]; >> C=[15 150 0 0]; >> D=0; >> t=[0: 0.01:10]; >> [y1,x,t]=step(A,B,C,D,1,t); >> [y2,x,t]=impulse(A,B,C,D,1,t); >> subplot(211),plot(t,y1,'r-'),grid on >> xlabel('Time[sec]'), ylabel ('Dap ung qua do') >> subplot(212),plot(t,y2,'r-'),grid on >> xlabel('Time[sec]'), ylabel ('Ham trong luong') VÝ dô 2: Kh¶o s¸t ®¸p øng ®Çu ra cña hÖ thèng cã m« t¶ to¸n häc nh­ sau: >> A=[0 -2;1 -3]; >> B=[2;0]; >> C=[1 0]; >> D=0; >> x0=[1 1]; >> t=[0:0.01:10]; >> u=0*t; >> [y,x]=lsim(A,B,C,D,u,t,x0); >> subplot(211),plot(t,x(:,1),'r-'), grid on >> xlabel('Time[sec]'), ylabel('x1'), >> subplot(212),plot(t,x(:,2),'r-'), grid on >> xlabel('Time[sec]'), ylabel('x2'), BÀI TẬP Bài1. Cho hệ thống điều khiển như hình vẽ. sys2 sys4 sys6 sys1 sys3 + + sys5
  • 22. 22 trong đó:   p 1 sys1 p p 1    2sys được biểu diễn dưới dạng không gian trạng thái:                             u2x21y u 2 1 x 41 32 23 11 x 2 p 2 sys3 p 3p 5     2 3 2 p p 2 sys4 p p p 2       p 1p 5sys   6sys được biểu diễn dưới dạng không gian trạng thái:                       u2x31y u 1 1 x 41 32 x a. Hệ thống có điều khiển được, quan sát được không? b. Vẽ đáp ứng Step, Bode, Nyquist, điểm cực - không của hệ thống Bài 2. Xây dựng hệ thống như phần 4 với hàm truyền đạt được thay bằng      2 G s s 1 / s 5s 6    , khâu phi tuyến bão hòa được thay bằng khâu tích phân và chèn thêm một khâu khuếch đại cho hệ số khuếch đại bằng 10 vào sau khâu tích phân. Bài 3. Một hệ thống được mô tả bởi hàm truyền đạt:   4 3 2 53 10 10 4 p a W p p p p p      
  • 23. 23 Xác định giá trị của a để hệ thống không điều khiển được và không quan sát được? Bài 4. Một hệ thống tuyến tính được mô tả bằng phương trình X AX Bu  với 0 1 0 0 0 1 1 2 A K            a. Xác định phương trình đặc trưng của hệ thống? b. Tìm miền giá trị của K để hệ thống ổn định? c. Với một giá trị K cụ thể trong miền tìm được của phần b, hãy xác định các nghiệm của phương trình đặc trưng? Bài 5. Xây dựng chương trình trong Matlab để tìm hàm truyền đạt của hệ thống tuyến tính có mô tả toán học như sau:   1 1 0 0 0 2 0 ; 0 ; 1 1 1 ; 0 0 0 3 1 A B C D                       Bài 6. Xây dựng một sơ đồ hệ thống điều khiển tuyến tính trên trong Simulink rồi dùng công cụ của Matlab tính ra hàm truyền đạt của hệ thống đó. So sánh kết quả nhận được với kết quả tính ra nhờ biến đổi sơ đồ cấu trúc?