+ tf2zpnum, den: tìm nghiệm của tử và mẫu của các hàm truyền, và hệ số khuyết đại từ các biến thứ tự trước hàm này.. Hình 1.1 – Biểu diễn đồ thị các hàm số trên cùng hệ trục tọa độ Matl
Trang 10 1
4
1 2
Trang 27 4
3
2
+ +
+
=
s s
s F
s D
F
s I
F
Kp
F
2 6
3 , 0 5
6 4
Trang 3Thiết lập phương trình trạng thái cho hệ vật lý sau
Trang 4Tạo một cửa sổ đồ họa giao diện
2.2 Nhân các đa thức và chuyển đổi hàm truyền
sang không gian trạng thái Và ngược lại:
F1=(s+4), F2=(s+2), F3=(s+3), F4=F2*F3, G5=F1/F4, G6=1, G6 phản hồi âm G5, Dùng lệnh tf, ss, tf2ss, ss2tf
để tính và chuyển đổi hệ tổng trên:
Xác định Num, Den, A, B, C, D
Trang 52.3) Cho PTVP
) ( ) ( 10 ) ( 6 ) ( 5
động họcHàm thời gian, bode, nyquist, tần số…
trên Matlab m-file và Simulink
3.1) Kiển tra hệ thống theo các tiêu chuẩn
Nghiệm, Rounth, Hurtzit, Nyquist, Bode
Cho hệ sau ( ) ( 2 1 )( 2 0 . 1 1 ) 5
+ +
=
s s
s S
3.2) Khảo sát hệ và thiết kế bộ điều
chỉnh theo tối ưu môdul
) 1 0 1 (
2 )
3.3) Khảo sát hệ và thiết kế bộ điều
chỉnh theo tối ưu đối xứng
) 1 5
)(
1 3
(
2 )
(
+ +
=
s s
s
s
S
4.1) Tạo một m- file cho các thông số động cơ và
chạy để xuất các thông số động cơ
fl=50; Pdm=3731; Uudm=240;
Iudm=16.2; Uktdm=240; Iktdm=1; ndm=1220; wdm=? Mdm=?, Ru=0.6; Lu=0.012; Tu=?, Rkt=240; Lkt=120; Tkt=?Lm=1.8;J=1; Eudm=?KFidm=Eudm/wdm; Kd=?, Tc=?, Kcl=Uudm/10; P=6; Tcl=1/(2*P*fl); Kbd=Iudm/10; Tbd=0.01; Kft=wdm/10; Tft=0.04;
Trang 64.2) Thiết lập hàm truyển Chỉnh luu, phát tốc, Động cơ
Wcl=tf(Kcl/(Tcls+1)); Wft=tf(Kft/(Tfts+1));
Wdc1=tf(Kd/(TuTcs^2+Tcs+1))
Tính và thiết kế bộ điều khiển cho sơ đồ điều khiển
động cơ trên M—file
4.3) Thiết lập bộ mô phỏng trên Simulink
Sau khi đã thiết kế bộ điều khiển
Trang 7-1 Khụỷi ủoọng matlab
- Nhaộp duựp bieồu tửụùng matlab coự trẽn maứn hỡnh cửỷa soồ leọnh
Matlab conmand window seừ hieọn ra goừ leọnh simulink hoaởc nhaộp vaứo
bieồu tửụùng simulink library browser
Khi ủoự thử vieọn caực khãu seừ hieọn ra
Vaứo ủửụứng daĩn simulink
2 MỘT SỐ HAỉM TRONG MATLAB
- demo: xem caực vớ dú coự trong chửụng trỡnh
- casesen : khõng phãn bieọt chửừ hoa vaứ chửừ thửụứng
- exp(), sin(), sqrt()
- input(): nhaọp thõng soỏ tửứ baứn phớm Vớ dú R= input(‘ nhaọp baựn
kớnh meựt’);
- polyfit(giaự trũ bieỏn, giaự trũ haứm, heọ soỏ baọc): xãy dửùng haứm
ủửụứng cong theo baỷn soỏ.
vớ dú tỡm phửụng trỡnh ủửụứng cong sau: y=f(x)
coự baỷng soỏ x= 0 1 2 4 6 10;
Trang 8- num =[ caực heọ soỏ cuỷa tửỷ soỏ]: nhaọn dáng caực tửỷ soỏ cuỷa haứm
truyền tửứ baọc cao ủeỏn baọc thaỏp
- den =[ caực heọ soỏ cuỷa maĩu soỏ]: nhaọn dáng caực maĩu soỏ cuỷa haứm
truyền tửứ baọc cao ủeỏn baọc thaỏp
- tf2zp(num, den): tỡm nghieọm cuỷa tửỷ vaứ maĩu cuỷa caực haứm truyền,
vaứ heọ soỏ khuyeỏt ủái tửứ caực bieỏn thửự tửù trửụực haứm naứy.
- residue(heọ soỏ cuỷa tửỷ soỏ, soỏ cuỷa maĩu soỏ): duứng toỏi giaỷm haứm
truyền.
3 TèM NGHIỆM VAỉ RÚT GOẽN HAỉM TRUYỀN W(s)
Vớ dú1 tỡm nghieọm haứm truyền sau:
W(s) =
508745
9
3011
2 3
4
2 3
+++
+
++
s s
s s
s s
192
2 3
3
+++
++
s s s
s s
Tửứ cửỷa soồ Matlab conmand window ta nhaọp:
Trang 925.0)1(
2
2 +
++
−+
=
−
−+
++
−
s s
j s
i j
s
i s
Vớ duù 3 veừ ủoà thũ cuỷa haứm truyeàn
Wh(s) =
11444
Trang 104 ẹAậC TÍNH CỦA CÁC KHÂU TRONG LÝ THUYẾT ẹIỀU KHIỂN Tệẽ ẹỘNG
- Khãu khueỏch ủái w(s) = K = R/R0
- Khãu quaựn tớnh w(s) =
1
+
Ts K
Haống soỏ thụứi gian trẽn laứ: T= L/R, T= RC
2
2 2
1T s +T s+
T K
Haống soỏ thụứi gian trẽn laứ: T2= L/R, T1= RC
Vaứo ủửụứng daĩn simulink\math\gain
nhaộp vaứo bieồu tửụùng vaứ keựo ra cửỷa soồ untitled
Nhaộp duựp vaứo caực ủoỏi tửụùng ủeồ thay ủoồi thõng soỏ
* Tửứ khãu Kẹ ta duựp vaứo ủeồ thay ủoồi thaứnh caực khãu baọc 2,3 Xãy dửùng ủửụứng ủaởc tớnh cuỷa caực khãu quaựn tớnh, tớch phãn, dao ủoọng vaứ vi phãn
Trang 13BAỉI 2:
KIỂM TRA HỆ ỔN ẹềNH
1 Sễ ẹỒ HèNH VEế
Tửứ sụ ủồ hỡnh veừ ta coự nguyẽn lyự laứm vieọc nhử sau:
Khi toỏc ủoọ n ↑ → Uf ↑ → ∆ U(U0-Uf) ↓ → Ukt ↓ → Uf ↓ → Udc ↓ → n ↓
Ngửụùc lái n ↓ → Uf ↓ → ∆ U(U0-Uf) ↑ → Ukt ↑ → Uf ↑ → Udc ↑ → n ↑
Nhử vaọy heọ oồn ủũnh
2 CHO CÁC GIÁ TRề CỦA HỆ ẹIỀU KHIỂN Tệẽ ẹỘNG TRÊN Maựy phaựt Kf = 2; Tf=10sec
ẹoọng cụ Kủc =5 v/p; Tủt = 1sec; Tủc = 4sec;
U0
H nh 2ỡ
Trang 14Phaựt toỏc Kft =1võn/voứng/phuựt
Bieỏn trụỷ Kbt =0,5.
B1: Tớnh caực haứm truyền W(s)
Wh(s)=
1144440
Trang 15B3: kieồm tra oồn ủũnh baống tieõu chuaồn Routh
Ta coự phửụng trỡnh ủaởc tớnh cuỷa heọ hụỷ vaứ heọ kớn nhử sau:
-R C1 R2
R1
Trang 16Chón Tn = T1; Ti = 2kTbeự (tiẽu chuaồn phaỳng)
Boọ ủiều chổnh PID
R2
R0
R0+
C2
Trang 17Wpi =
s T
s T s T
i
v
n 1)( 1)( + +
Tn=R1.C1; Ti =R3.C1.R0; Tv =R2.C2 ( theo tiẽu chuaồn phaỳng)
W(s) = (10s+1)(4s1002 +4s+1)+50 = 40s3 +44100s2 +14s+51
Chuyeồn haứm truyền về dáng W(s) =
))(
Trang 181(
100
++
+ s s s
Tb =1; T1= 10; T2= 5;
XÂY DệẽNG HỆ ẹIỀU KHIỂN Tệẽ ẹỘNG ỔN ẹềNH
SệÛ DUẽNG PI, HOAậC PID
Cho sụ ủồ sau dãy:
Baứi 4 cho heọ tửù ủoọng nhử sau haừy xaực ủũnh haứm truyền vaứ vaứ ủũnhk heọ soỏ k sao cho heọ tửù ủoọng oồn ủũnh K=100, k=10 so saựnh sai leọch túnh cuỷa chuựng
)1)(
15)(
110()
(
+++
=
s s s
k s
w
s w
s
s
+++
=
1)
1)(
15)(
110(
)1)(
15)(
110()
(.)(1
1
lim
0 0
sai leọch túnh coự ủồ thũ xaực ủũnh nhử sau:
W(s)
Trang 19xaực ủũnh k sao cho ủồ thũ ủeồ coự sai leọch túnh ủuỷ nhoỷ maứ heọ vaĩn oồn ủũnh
gian trạng thái.
+ demo: xem các ví dụ có trong chương trình
+ casesen : không phân biệt chữ hoa và chữ thường
+ exp(), sin(), sqrt()
+ input(): nhập thông số từ bàn phím Ví dụ R= input(‘ nhập bán kính mét’);
+ polyfit(giá trị biến, giá trị hàm, hệ số bậc): xây dựng hàm đường cong
theo bản số.
Ví Dụ1: Tìm phương trình đường cong sau: y=f(x) có bảng số
Từ đó ta có phương trình đường cong cần tìm là: x3 + 2x2 + 3x + 1
+ num =[ các hệ số của tử số]: nhận dạng các tử số của hàm truyền từ bậc
cao đến bậc thấp.
+ den =[ các hệ số của mẫu số]: nhận dạng các mẫu số của hàm truyền từ
bậc cao đến bậc thấp.
+ tf2zp(num, den): tìm nghiệm của tử và mẫu của các hàm truyền, và hệ số
khuyết đại từ các biến thứ tự trước hàm này.
+ residue(hệ số của tử số, số của mẫu số): dùng tối giảm hàm truyền.
- Biểu diễn Matran
Trang 20Giải hệ phương Ax=b, với: A= và b= Gợi ý: x=A\b
Cho phương trình x2-4x+5=0, giải phương trình theo 2 cách, cách 1 – tính delta theo
phương pháp cổ điển, cách 2 – dùng hàm roots, hãy so sánh kết quả
Giải phương trình x3- 2x2+4x+5=0 Kiểm chứng kết quả thu được bằng hàm polyval
Sinh viên có nhận xét gì về kết quả kiểm chứng
Trang 21Lặp lại câu cho phương trình x7-2=0
Sinh viên thử dùng hàm poly để tạo đa thức từ các nghiệm cho trước
Vẽ đồ thị hàm số y1=sinx.cos2x và hàm số y2=sinx2 trong [0-2π], trên cùng hệ trục tọa
độ, ta lần lượt thực hiện như sau:
>>x=0:0.01:2*pi;
>>y1=sin(x).*cos(2*x); %nhan tuong tung tung phan tu
>>plot(x,y1)
>>grid on %hien thi luoi
Sau khi thu được đồ thị hàm y1, để vẽ y2 trên cùng đồ thị, ta thực hiện:
>>hold on %giu hinh, mac nhien la hold off
>>y2=sin(x.^2); %luy thua tung phan tu
>>plot(x,y2,’k’) %duong ve co mau den
>>axis([0 4*pi –1.25 1.25]) %dinh lai toa do hien thi
Ta có thể đặt nhãn cho các trục cũng như tiêu đề cho đồ thị:
>>xlabel(‘Time’)
>>ylabel(‘Amplitude’)
>>title(‘y1=sinx.cos2x and y2=sin(x^2)’)
>>legend(‘sinx.cos2x’,’sinx^2’)
Trang 22Hình 1.1 – Biểu diễn đồ thị các hàm số trên cùng hệ trục tọa độ
Matlab hổ trợ rất nhiều thuộc tính đồ họa, để có thể kiểm soát các thuộc tính này ta cần dùng đến thẻ đồ họa Ví dụ:
Bây giờ ta thử đặt một số thuộc tính đồ họa cho h
>>set(h,’Color’, ‘r’) %dat lai mau do
>>set(h,'LineWidth',6) %dat do rong duong
Tương tự như hàm plot, sinh viên thử dùng các hàm semilogx, semilogy và loglog
cho trường hợp trục tọa độ phi tuyến
Ngoài các lệnh biểu diễn đường cong trong tọa độ Descartes, Matlab cũng hổ trợ việc
vẽ đồ thị hàm số trong hệ tọa độ cực bằng hàm polar
>>theta=0:0.05:2*pi;
>>r=sin(5*theta);
Trang 25>>r=sqrt(x.^2+y.^2);
>>z=sin(r)./r;
>>surf(x,y,z)
Hình 1.7 – Một biểu diễn đồ thị 3D khác
Giải hệ phương trình sau:
Từ cửa sổ lệnh của Matlab, nhập: demos Chọn MATLAB → Graphics → 3D-plots
Chạy chương trình demo này
Bài 2 HÀM VÀ SCRIPT FILES
Hàm và Script files trong Matlab đều được quản lý dưới dạng các tập tin có phần mở
rộng m, thường được soạn thảo bởi Matlab Editor Khởi động Matlab Editor bằng một
Trang 26trong các cách sau:
1 1 Nhấp chuột vào biểu týợng trên menu bar của cửa sổ lệnh
2 2 File → New → M-file
3 3 Nhấp vào biểu týợng Matlab Editor trên desktop (nếu có)
Chúng ta lần lượt khảo sát qui cách xây dựng các hàm và script file Sinh viên đọc và thực hành lần lượt theo các phần sau
III.1 Script files
Tập hợp các dòng lệnh của Matlab được sắp xếp theo một cấu trúc nào đó và lưu thành file có phần mở rộng *.m được gọi là script file (file kịch bản, file chương trình) Ta có thể chạy file này từ cửa sổ lệnh giống hệt như các lệnh của Matlab Cấu trúc của một script file như sau:
% - % Phần viết sau dấu
‘%’ ở ðây dùng cho lệnh help
% Thông thýờng phần này mô tả chức nãng, cách sử dụng,
% ví dụ minh họa hay những lýu ý đặc biệt mà tác giả mong muốn trợ
% giúp cho ngýời sử dụng
% -
[global tênbiến1, tênbiến2,… ] % Khai báo biến toàn cục % (nếu có)
<các câu lệnh> % phần trình bày câu lệnh
Hãy khởi động Matlab Editor và tạo một script file có tên bai21.m, với nội dung như
sau:
% Doan script file nay hien thi loi chao trong 2s Sau do
% hien thi logo cua matlab mot cach sinh dong roi thoat
% - Hien thi loi chao -
text( 'String','Welcome to MATLAB',
'Color',[.25 25 25],
'Position',[0.01 501],
Trang 27pause(2); % dung trong 2 giay
% - Hien thi logo cua Matlab -
logospin
% Thoat - xoa cac bien trong workspace va dong cua so lai -
clear
close
% ket thuc script file
Sau khi lưu file này, từ cửa sổ lệnh của Matlab, sinh viên hãy nhập:
>>help bai21
Để thi hành script file vừa soạn, hãy nhập:
>>bai21
III.2 Sử dụng các hàm xây dựng sẵn
Matlab hổ trợ một thư viện hàm rất phong phú, xây dựng trên các giải thuật nhanh và
có độ chính xác cao Ngoài các hàm cơ bản của Matlab, tập hợp các hàm dùng để giải quyết một ứng dụng chuyên biệt nào đó gọi là Toolbox, ví dụ: Xử lý số tín hiệu (Digital Signal Processing), Điều khiển tự động (Control), Mạng Nơron nhân tạo (Neural networks), …
Sinh viên xem lại giáo trình để biết thêm về các hàm Ngoài ra, có thể dùng lệnh help
để biết chức năng của toolbox và hàm cũng như cách thức sử dụng chúng
help <ten toolbox> % chuc nang toolbox
>>help control % liet ke ham cua control toolbox
help <ten ham> % chuc nang ham
>>help plot % chuc nang ham plot
Trang 28Ta có thể tìm kiếm các hàm liên quan bằng cách cung cấp cho hàm lookfor của Matlab
một từ khóa:
lookfor <tu khoa tim kiem>
>>lookfor filter % tìm các hàm liên quan đến mạch lọc
(Hình 2.1 – dùng cho câu III.1.3)
Hàm [Y I]=max(X) cho biết phần tử lớn nhất của vectơ (mãng) X với chỉ số tương tứng I
Nghĩa là phần tử thứ i=3 của vectõ x có giá trị lớn nhất, y=9
Hàm Y=exp(X), tính eX, kết quả trả về cho Y
>>help exp
>>x=0:0.05:1;
>>y=exp(x);
>>stem(x,y) % giong ham plot nhung ve cho tin hieu roi rac
Giả sử ta muốn điều chế biên độ sóng mang được truyền hai băng cạnh (Double sideband transmission carrier Amplitude Modulation) với:
1 - Tín hiệu điều chế X=0.2*sin(2*pi*t) với t:0:0.01:10
2 - Tần số sóng mang fc=620KHz
III.3 Xây dựng hàm
Việc xây dựng hàm cũng được thực hiện tương tự như script file Tuy nhiên, đối với hàm ta cần quan tâm đến các tham số truyền cho hàm và các kết quả trả về sau khi thực hiện Có 3 điểm cần lưu ý:
1 - Tên hàm phải ðýợc ðặt trùng với tên file lýu trữ
2 - Phải có từ khóa function ở dòng ðầu tiên
3 - Trong một hàm có thể xây dựng nhiều hàm con (ðiều này không có trong script file) Kết thúc hàm con phải có từ khóa end (ðiều này không cần trong hàm ‘cha’)
Trang 29Qui cách xây dựng hàm được mô tả như sau:
<Các câu lệnh của hàm con>
end ] %từ khóa end khong can doi voi Matlab Version 6.x
sau:
function [x1,x2]=gptb2(a,b,c)
% Giai phuong trinh bac hai ax^2+bx+c=0
% [x1,x2]=gptb2(a,b,c)
% Trong do: x1,x2 nghiem thuc hoac phuc
% a,b,c la 3 he so cua phuong trinh
Trang 30Cho biết ý nghĩa của từ khóa nargin?
Sinh viên hãy viết lại hàm này để kết quả chỉ trả về nghiệm số thực
Xây dựng hàm vdcongdb(a,m,method) để vẽ một số đường cong đặc biệt trong hệ tọa
độ cực, với a là bán kính và m là số đường cong vẽ trên cùng trục tọa độ Trường hợp này hàm không trả về giá trị nên ta không cần biến ngõ ra
Tuỳ theo giá trị của tham số ‘method’ mà ta vẽ đồ thị tương ứng:
Nội dung hàm như sau:
function vdcongdb(a,m,method)
% Ve duong cong trong toa do cuc: vdcongdb(a,m,method)
% method = 'Becnulli' - Ve duong Lemniscat Becnulli:
% Voi: a-ban kinh; m-so duong cong ve tren cung he truc
% Vi du: vdcongdb(0.5, 4, 'Becnulli')
%
Trang 31% Copyright 2003 Nguyen Chi Ngon, TcAD - CIT - CTU % Email: ncngon@cit.ctu.edu.vn
Trang 32>> vdcongdb(1,5,’saikieu’)
>> vdcongdb(5,’becnulli’)
>> …
Xây dựng hàm dudoan() để dự đốn kết quả sau mỗi lần tung một xúc xắc đồng nhất,
6 mặt Nội dung hàm như sau:
function dudoan()
% Du doan ket qua sau moi lan tung ngau nhien mot xuc xac 6 mat
% Chuong trinh lap lai cho den khi nguoi su dung khong doan tiep
%
% Copyright 2003, Nguyen Chi Ngon TcAD - CIT, Cantho University
% Email: ncngon@ctu.edu.vn
tiep = 'y'; sai=0; dung=0;
disp('Chao mung ban den voi Casino nay!')
3 TÌM NGHIỆM VÀ RÚT GỌN HÀM TRUYỀN W(s)
Ví Dụ 2: Tìm nghiệm hàm truyền sau:
W(s) =
508745
9
3011
2 3
4
2 3
+++
+
++
s s
s s
s s
Trang 33Màn hình xuất hiện
2510
2 3
2
+++
++
s s s
s s
Ví Dụ 3: Tối giảm hàm truyền sau:
W(s) =
44
192
2 3
3
+++
++
s s s
s s
Từ cửa sổ Matlab conmand window ta nhập:
25.0)2(
25.0)1(
2
2 +
++
−+
=
−
−+
++
−
s s
j s
i j
s i s
Trang 34Bài tập3: Hãy tối giảm hàm truyền sau:
W(s) =
15104044
25
2 3 4
2
++++
+
s s s s
=+
=
−
+
33
2
1
E I
R
I
R
E I
[A, B, C, D] = tf2ss(num, den) ↵
vẽ đường cong nyquist
sys=zpk([],[-1 -1 -1],4);
sysd1=c2d(sys,0.3);
sysd2=c2d(sys,01.5);
sysd3=c2d(sys,4.0);
Trang 35Bài 2: Khảo sát đặc tính động học của các phần tử, đánh giá ổn định và chất
lượng hệ điều khiển tự động trên nền Matlab - simulink.
Phiên bản mới nhất của Symbolic toolbox được Mathworks giới thiệu trong Matlab 6.5 vào tháng 6-2003 Đó là một thư viện toán học kiểu ký tự, được phát triển từ Symbolic Maple của trường Đại học Waterloo, Canada Để có cái nhìn tổng quát về các chức năng của Symbolic, sinh viên hãy gõ:
>>help symbolic
Một số hàm thông dụng của Symbolic:
Trang 36Tên hàm Chức năng Tên hàm Chức năng
diff Ðạo hàm fourier Biến đổi Fourier
int Tích phân ifourier Biến ðổi Fourier ngýợc
taylor Khai triển Taylor laplace Biến đổi Laplace
det Định thức của ma trận laplace Biến ðổi Laplace ngýợc
numden Tử và mẫu của phân số ezplot Vẽ hàm, ≡ plot
subs Thay biến sym bằng trị số ezpolar Vẽ hàm, tọa ðộ cực ≡ polar
dsolve Giải phýõng trình vi phân ezmesh Vẽ mặt lýới ≡ mesh
solve Giải phýõng trình đại số ezsurf Vẽ mặt ≡ surf
Để biến đổi một số, một biến hay một đối tượng nào đó thành kiểu Symbolic ta có thể
sử dụng một trong các cách sau:
>>s=sym(A)
>>x=sym(x)
>>syms x y z % khai báo kết hợp → x, y và z là biến symbolic
Tính đạo hàm bằng hàm diff của symbolic: Nếu S là biểu thức symbolic thì:
diff(S) ðạo hàm của S theo biến tự do
diff(S,’v’) ðạo hàm của S theo biến v
diff(S,’v’,n) ðạo hàm cấp n của S theo v
Ví dụ: Tính đạo hàm của y = sinx3
>> syms x % khai bao x la bien kieu symbolic
>> y=sin(x^3);
>> z=diff(y) % dao ham cua y
z =
3*cos(x^3)*x^2 % sinh vien kiem tra ket qua
>>pretty(z) % hien thi dang quen thuoc
3 cos(x 3 ) x 2
>>ezplot(x,y) % ve y theo x
Trang 37
Hình 3.1 – Vẽ đồ thị hàm symbolic
Tính vi phân bằng hàm int - Nếu S là biểu thức Symbolic thì:
int(S) tích phân không xác ðịnh của S theo biến mặc nhiên (muốn biết biến mặc nhiên này ta dùng hàm findsym)
int(S,v) tích phân không xác định của S theo v
int(S,a,b) tích phân xác ðịnh của S trên cận [a,b]
int(S,v,a,b) tích phân xác ðịnh của S theo v trên cận [a,b]
Ví dụ: Tính
>>syms x
>>S=2*x^2*(19+12*x^2)/(7*(x^2+1))
>>y=int(S,x,0,1) % tích phân S theo x trên cận [0,1]
>>subs(y) % đổi sang kiểu số
Giải hệ phương trình bằng hàm solve:
Trang 38Hình 3.2 – Vẽ đồ thị 3D cho hàm số symbolic
III.2 Simulink
Simulink 5.0 (Simulation and Link - R13) được MatWorks giới thiệu vào tháng 6 năm
2003 Nó cho phép phân tích, mô hình hóa và mô phỏng các hệ thống động tuyến tính
và phi tuyến, liên tục và rời rạc một cách trực quan trong môi trường giao tiếp đồ họa, bằng các thao tác chuột đơn giản Có thể nói, không tận dụng được Simulink là một thiệt thòi lớn cho người làm công tác mô phỏng!
Khởi động Simulink bằng một trong các cách sau:
nhập: >>simulink
hoặc nhấp chuột vào trên menubar của Matlab
Thư viện simulink hiện ra như hình 3.3:
Trước tiên, sinh viên hãy nhấp chuột vào các thanh cuộn của thư viện để có cái nhìn thân thiện về simulink
Từ đây, để có thể tạo mô hình bằng simulink, hãy:
1 nhấp chuột vào biểu týợng của thý viện simulink
2 chọn: File – New – Model trong Menu của thý viện Simulink
3 chọn: File – New – Model trong cửa sổ lệnh của Matlab
Trang 39Hình 3.3 – Cửa sổ chính của thư viện Simulink
Hình 3.4 – Môi trường soạn thảo của Simulink
Cửa sổ này (hình 3.4) cho phép ta ‘nhấp - kéo - thả’ vào từng khối chức năng trong thư
(hình 3.5):
Trang 40
Hình 3.5 – Lấy một khối từ thư viện
Sau khi đặt tất cả các khối cần thiết của mô hình, ta nối chúng lại bằng cách ‘nhấp - giữ’ và kéo một đường từ ngõ ra của khối này đến ngõ vào của khối khác rồi thả phím trái chuột, một kết nối sẽ được thiết lập
Xây dựng mô hình hệ thống xe tải:
Hình 3.6 – Mô hình xe tải
Trong đó m là khối lượng xe, u là lực tác động của động cơ (ngõ vào của mô hình), b
là hệ số ma sát và v là vận tốc đạt được (ngõ ra của mô hình)
Xuất phát điểm của việc xây dựng các mô hình hệ thống từ các phương trình vi phân tương ứng là các khối tích phân (Integrator) Nếu trong phương trình mô tả hệ thống có
vi phân bậc n thì ta sẽ đặt vào mô hình n khối tích phân, do quan hệ
1 Mở một cửa sổ mô hình mới
2 Ðặt vào mô hình khối ‘Integrator’ từ thý viện ‘Continuous’ và kẻ các ðýờng thẳng nối