Giáo trình thí nghim CAD
Bài 3
SYMBOLIC VÀ SIMULINK
I. Mc tiêu
Hiu mt cách cơ bn v hai công c mnh và hu hiu ca Matlab, đó là
SymbolicSimulink, để t đó sinh viên có th t mình phát huy các
chc năng cao hơn ca hai công c này trong tính toán và mô phng h
thng.
II. Tham kho
[1]. The Mathworks Inc., Matlab Notebook User’s Guide, 2003.
[2]. Nguyn Hoài Sơn - Đỗ Thanh Vit - Bùi Xuân Lâm, ng dng
MATLAB trong tính toán k thut, Tp 1, NXB ĐHQG Tp. HCM, 2000
[3]. Nguyn Chí Ngôn, Bài thí nghim K thut mô phng trong Điu khin
t động, B môn Vin Thông & T động hóa, khoa Công ngh thông tin,
Đại hc Cn thơ, 2002.
[4]. Nguyn Công Định, Phân tích và tng hp các h thng điu khin bng
máy tính, NXB Khoa hc và K thut, 2002.
[5]. http://www-h.eng.cam.ac.uk/help/tpl/programs/Matlab/Symbolic.html
III. Thc hành
SymbolicSimulink đều cha thư vin chc năng rt phong phú, bài
thí nghim này ch có th đề cp đến nhng gì gi là cơ bn nht. T đó,
sinh viên có th t mình nghiên cu và phát trin tiếp.
III.1 Symbolic
Phiên bn mi nht ca Symbolic toolbox được Mathworks gii thiu
trong Matlab 6.5 vào tháng 6-2003. Đó là mt thư vin toán hc kiu ký
t, được phát trin t Symbolic Maple ca trường Đại hc Waterloo,
Canada. Để có cái nhìn tng quát v các chc năng ca Symbolic, sinh
viên hãy gõ:
>>help symbolic
Mt s hàm thông dng ca Symbolic:
Tên hàm Chc năng Tên hàm Chc 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 trin Taylor laplace Biến đổi Laplace
det Định thc ca ma trn laplace Biến đổi Laplace ngược
©
TcAD - 2003 22
Giáo trình thí nghim CAD
numden T và mu ca phân s ezplot V hàm, plot
subs Thay biến sym bng tr s ezpolar V hàm, ta độ cc polar
dsolve Gii phương trình vi phân ezmesh V mt lưới mesh
solve Gii phương trình đại s ezsurf V mt surf
Để biến đổi mt s, mt biến hay mt đối tượng nào đó thành kiu
Symbolic ta có th s dng mt trong các cách sau:
>>s=sym(A)
>>x=sym(x)
>>syms x y z % khai báo kết hp x, y và z là biến symbolic
c Tính đạo hàm bng hàm diff ca symbolic: Nếu S là biu thc symbolic
thì:
diff(S) đạo hàm ca S theo biến t do
diff(S,’v’) đạo hàm ca S theo biến v
diff(S,’v’,n) đạo hàm cp n ca S theo v.
Ví d: Tính đạo hàm ca 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(x3) x2
>>ezplot(x,y) % ve y theo x
0 1 2 3 4 5 6
-1
-0.5
0
0.5
1
x
y
x = x, y = sin(x3)
Hình 3.1 – V đồ th hàm symbolic
d Tính vi phân bng hàm int - Nếu S là biu thc Symbolic thì:
int(S) tích phân không xác định ca S theo biến mc nhiên (mun
biết biến mc nhiên này ta dùng hàm findsym).
int(S,v) tích phân không xác định ca S theo v.
int(S,a,b) tích phân xác định ca S trên cn [a,b]
int(S,v,a,b) tích phân xác định ca S theo v trên cn [a,b]
©
TcAD - 2003 23
Giáo trình thí nghim CAD
Ví d: Tính
(
)
()
dx
1x7
x1219x2
1
0
2
22
+
+
>>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 cn [0,1]
>>subs(y) % đổi sang kiu s
e Gii h phương trình bng hàm solve:
>>help solve
>>syms x y
>>[x,y]= solve('x^2*sin(x^2)-3*y=7','x+y=1')
Sau khi thu được nghim x và y, sinh viên hãy thay vào 2 phương trình
trên và nhn xét kết qu.
f V mt 3D bng hàm ezsurf: Ví d v mt 22 yx1
y
)y,x(fS ++
== trên
min xác định: -5<x<5; -2π<y<2π.
>>syms x y
>>S=y/(1+x^2+y^2)
>>ezsurf(S, [-5 5 –2*pi 2*pi])
Hình 3.2 – V đồ th 3D cho hàm s symbolic
III.2 Simulink
Simulink 5.0 (Simulation and Link - R13) được MatWorks gii thiu vào
tháng 6 năm 2003. Nó cho phép phân tích, mô hình hóa và mô phng các
h thng động tuyến tính và phi tuyến, liên tc và ri rc mt cách trc
quan trong môi trường giao tiếp đồ ha, bng các thao tác chut đơn
gin. Có th nói, không tn dng được Simulink là mt thit thòi ln cho
người làm công tác mô phng!
Khi động Simulink bng mt trong các cách sau:
nhp: >>simulink
©
TcAD - 2003 24
Giáo trình thí nghim CAD
hoc nhp chut vào trên menubar ca Matlab
Thư vin simulink hin ra như hình 3.3:
Trước tiên, sinh viên hãy nhp chut vào các thanh cun ca thư vin để
có cái nhìn thân thin v simulink.
T đây, để có th to mô hình bng simulink, hãy:
nhp chut vào biu tượng ca thư vin simulink
chn: File – New – Model trong Menu ca thư vin Simulink
chn: File – New – Model trong ca s lnh ca Matlab
Hình 3.3 – Ca s chính ca thư vin Simulink
Hình 3.4 – Môi trường son tho ca Simulink
Ca s này (hình 3.4) cho phép ta ‘nhp - kéo - th’ vào tng khi chc
năng trong thư vin simulink. Ví d, đặt vào đây khi ‘Sine Wave’ trong
thư vin ca (hình 3.5):
©
TcAD - 2003 25
Giáo trình thí nghim CAD
Hình 3.5 – Ly mt khi t thư vin
Sau khi đặt tt c các khi cn thiết ca mô hình, ta ni chúng li bng
cách ‘nhp - gi’ và kéo mt đường t ngõ ra ca khi này đến ngõ vào
ca khi khác ri th phím trái chut, mt kết ni s được thiết lp.
c Xây dng mô hình h thng xe ti:
Hình 3.6 – Mô hình xe ti
cho bi phương trình: bvu
d
t
dv
m= hay bv)(u
m
1
dt
dv = .
Trong đó m là khi lượng xe, u là lc tác động ca động cơ (ngõ vào ca
mô hình), b là h s ma sát và v là vn tc đạt được (ngõ ra ca mô
hình).
Xut phát đim ca vic xây dng các mô hình h thng t các phương
trình vi phân tương ng là các khi tích phân (Integrator). Nếu trong
phương trình mô t h thng có vi phân bc n thì ta s đặt vào mô hình
n khi tích phân, do quan h v
dt
dv =
.
M mt ca s mô hình mi.
Đặt vào mô hình khi ‘Integrator’ t thư vin ‘Continuous’ và k các
đường thng ni đến ngõ vào và ngõ ra ca khi này.
Đặt nhãn ‘vdot’ (dv/dt) cho cho đường ni đến ngõ vào và ‘v’ cho
đường ni đến ngõ ra bng cách nhp đúp chut ngay phía trên
các đường này.
©
TcAD - 2003 26