Tải bản đầy đủ (.pdf) (77 trang)

Tài liệu CHƯƠNG 10: CÁC CÔNG CỤ KHÁC CỦA MATLAB doc

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (654.55 KB, 77 trang )


438
CHƯƠNG 10: CÁC CÔNG CỤ KHÁC CỦA MATLAB

§1.SIMULINK
1.KhởiđộngSinulink:ĐểkhởiđộngSimulinktatheocácbướcsau:

•khởiđộngMATLAB
• click vào icon của Simulink  trên MATLAB toolbar hayđánh lệnh
SimulinktrongcửasổMATLAB.
LúcnàytrênmànhìnhxuấthiệncửasổSimulinkLibraryBrowser,trongđó
cócácthưviệncáckhốicủaSimulink.

2.Tạo
mộtmôhìnhmới:Đểtạomộtmôhìnhmới,clickvàoicontrêncửasổ
Simulink Library Browser hay chọn menu File | New | Model trên cửa sổ
MATLAB.

3.Thayđổimộtmôhìnhđãcó:Tacó
thểclickvàoicontrêncửasổSimulink
LibraryBrowserhaychọnOpentrêncửasổMATLAB.Filechứamôhìnhsẽ
mởvàtacóthểthayđốicácthôngsốcũngnhưbảnthânmôhình.

4.Chọn mộtđố
itượng:Đểchọn mộtđối tượng, click lên nó. Khi nàyđối
tượngsẽcómộthìnhchữnhậtcócácgóclàcáchạtbaoquanh.

5.Chọnnhiềuđốitượng:Tacóthểchọn nhiề
uđốitượngcùnglúcbằngcách
dùng phím Shift và chuột hay vẽ mộtđường bao quanh cácđối tượngđó
bằngcáchbấmchuộtkéothànhhìnhchữnhậtvàthảkhihìnhchữnhậtđóđã


baol
ấycácđốitượngcầnchọn.

6.Chọntấtcảcácđốitượng:Đểchọntấtcảcácđốitượng trongcửa sổta
chọnmenuEdit|SelectAll.


7.Cáckhối:Khốilàcácphần tửmàSimulinkdùngđểt ạomôhình.Tacóthể
môhìnhhoá bấtkìmộthệthốngđộnghọcnàobằngcách tạomốiliênhệgiữa
cáckhối
theocáchthíchhợp.Khitạomộtmôhìnhtacầnthấyrằngcáckhối
củaSimulinkcó2loạicơbản:khốinhìnthấyvàkhốikhôngnhìnthấy.Các
khốikhôngnhìnthấy
đượcđóngvaitròquantrọngtrongviệcmôphỏngmột
hệthống.Nếutathêmhayloạibỏmột
khốikhôngnhìnth ấyđượctađã thay
đổithuộctínhcủamôhình.Cáckhốinhìnthấyđược,ngượclại,khôngđóng

439
vaitròquantrọngtrongmôhìnhhoá.Chúngchỉgiúptaxâydựngmôhình
mộtcáchtrựcquanbằngđồhoạ.MộtvàikhốicủaSimulink cóthểlàthấy
đượctrongmộtsốtrườnghợp
vàlạikhôngth ấyđượctrong mộtsốtrường
hợpkhác.Cáckhốinhưvậyđượcgọilàcáckhốinhìnthấycóđiềukiện.


8.Copycáckhốitừmộtcửasổsangmộtcửasổkhác:Khitaxâydựngmột
môhìnhtathườngphảicopycáckhốitừthưviệnkhốicủaSimulinksangcửa
sổmô
hình.Đểlàmviệcnàytatheocácbướcsau:

 •mởcửasổthưviện khối
•kéokhốitamuốndùngtừcửasổthưviệnvàocửasổmôhìnhvàthả
TacóthểcopycáckhốibằngcáchdùnglệnhCopy&Pastetrongmenu
Editquacácbướcsau:
 •chọnkhốitamuốncopy

•chọnCopytừmenuEdit

•làmchocửasổcầncopytớihoạtđộng

•chọnPastetừmenuEdit
Simulinkgánmộttênchomỗibản copy.Nếunólàkhốiđầutiêntrongmô
hìnhthìtêncủanógiốngnhưtrongthưviệnSimulink.Nếu nólàbảnthứ2
hay
thứ3thìsaunósẽcóchỉsố1hay2v.v.Trêncửasổmôhìnhcólưới.Để
hiểnthịlướinàytừcửasổMAT LABđánhvào:
set_param(ʹ<modelname>ʹ,ʹshowgridʹ,ʹonʹ)
Đểthayđổikhoảngcáchô
lướiđánhlệnh:
set_param(ʹ<modelname>ʹ,ʹgridspacingʹ,<numberofpixels>)
Vídụ:đểthayđổiôlướithành20pixels,đánhlệnh:
set_param(ʹ<modelname>ʹ,ʹgridspacingʹ,20)
ĐểnhânbảnmộtkhốitagiữphímCtrlvàkéokhốitới
mộtvịtríkhácvàthả.

9.Môtảthôngsốcủakhối:Đểmôtảthôngsốcủakhốitadùnghộpthoại
Block Properties.Đểhiển thị hộp thoại này ta chọn khối và chọn
Block
PropertiestừmenuEdit.Tacóthểnhắpđúpchuộtlênkhốiđểhiênthịhộp
thoạinày.HộpthoạiBlockPropertiesgồm:

•Description:Môtảngắngọnvềmụcđíchcủakhối.
•Priority:thựchiệnquyềnưutiêncủakhốisovớicáckhốikháctrong
môhình.
•Tag:trườngvănbảnđượclưucùngvớikhối
•Openfunction:cáchàmMATLABđượcgọikhimởkhốinày

440
•Attributesformatstring: Thôngsốnàysẽ môtảthôngsốnàođược
hiểnthịdướiiconcủakhối.

10.DeletingBlocks:Muốnxoámộthaynhiềukhốitachọnkhốiđóvànhấn
phímDel.

11.
Thayđổihướngcủakhối:Tacóthểxoayhướngcủakhốibằngvàomenu
Formatrồi:

•chọnFlipBlockđểquaykhối180
o
.

•chọnRotateBlockđểquaykhối90
o
.

12.Địnhlạikíchthướccủakhối:Đểthayđổikíchthướccủakhốitađưacon
trỏ chuột vào một góc của khối rồi bấm và kéo chođến kích thước mong
muốnr
ồithả.


13.Xửlítênkhối:Mỗikhốicótên,phảilàduynhấtvàphảichứaítnhấtmột
kítự.Mặcđịnhtênkhốinằmdướikhối.Vớitên
khốitacóthểthựchiệncác
thaotácsauđây:
•Thayđổitênkhốibằngcáchbấmchuộtvàotênđãcóvànhậplạitên
mới.Nếumuốnthayđổifontchữdùngchotênkhốihãychọnkhốivàvào
menuFormatvàchọnFont.

•Thayđổivịtríđặttênkhốitừdướilêntrênhayngượclạibằngcách
kéotênkhốitớivịtrímongmuốn.
•Khôngchohiểnthịtên khốibằngcáchvàomenuFormatvàchọnHide
NameshayShowNames

14.Hiểnthịcácthôngsốbêndướikhối:Ta cóthểbắtSimulinkhiểnthịmột
haynhiềuthông
sốbêndướikhối.Đểlàmđiềunàytanhậpvàomộtdòng
vàotrườngAttributesformatstringởhộpthoạiBlockProperties.

15.Cắtcáckhối:Đểcắtkhốikhỏisơđồtabấm phímShiftvàkéo
khốiđếnvị
trímới.

16.Nhậpvàxuấtcácvectơ:Hầu hếtcáckhốichấpnhậnđạilượngđầuvàolà
vec tơ hay vô hướng và biếnđổi thà n hđại lượngđầu ra là
 vec tơ hay vô
hướng.Tacóthểxácđịnhđầuvàonàonhậnđạilượngvectơbằngcáchchọn

441
mụcWideVector LinestừmenuFormat. Khituỳchọn nàyđược chọn,các
đườngnhậnvectơđượcvẽđậmhơncácđườngmangsốliệuvôhướng.Nếu

tathâyđổimôhìnhsaukhichọnWideVectorLines
taphảicậpnhậthìnhv ẽ
bằngcáchchọnUpdateDiagramtừmenuEdit.KhởiđộnglạiSimulinkcũng
cậpnhậtsơđồ.

17.Mởr ộngvôhướngcácđầuvàovàcácthôngsố:Mở
rộngvôhướnglà
biếnđổiđại lượng vô hướng thành vec tơ với số phần tử không thayđổi.
Simulinkápdụngm ởrộngvôhướngchocácđạilượngvàovàthôngsốđối
vớihầu
hếtcáckhối.

•Mởrộngđầuvào:khidùngkhốivớinhiềuđầu vàotacóthểtrộnlẫn
cácđạilượngvectơvàđạilượngvôhướng.Khinàycácđầuvàovôhướng
đượcmởrộngthànhvect
ơvớisốphầntửnhưcủađầuvàovectơ,cácphầntử
đềucótrịsốnhưnhau
•Mởrộngthôngsố:tacóthểđặctảcácthôngsốđốivớikhốiđượcvec
tơhoáthànhđạilượngvectơhayđạilượngvôhướng.Khitađặctảcácthông
sốvec tơ,mỗimột 
phầntửthôngsốđượckếthợp  vớiphầntửtươngứng
trongvectơđầuvào.Khitađặctảcácthôngsốvectơ,Simulinkápdụngmở
rôngvôhướngđểbiếnđổichúngthànhvectơcókích
thướcphùhợp.

18.Gánđộưutiênchokhối:Tacóthểgánđộưutiênchokhốikhôngnhìn
thấytrongmôhình.Khốicóđộưutiêncaohơnđượcđánhgiá trướckhốicó
độưutiênnhỏhơn.
Ta cóthểgánđộưutiênbằngcáchdùnglệnht ương tác
haydùngchươngtrình.Đểdùngchươngtrìnhtadùnglệnh:

 set_param(b,ʹPriorityʹ,ʹnʹ)
Trongđóblàkhốivànlàmộtsốnguyên,sốcàngthấp,
độưutiêncàngcao.
ĐểgánđộưutiênbằnglệnhtanhậpđộưutiênvàotrườngPrioritytrong
hộpthoạiBlockPrioritiescủakhối.

19.SửdụngDropShadows:TacóthểthêmDropShadowvàokhốiđãchọn

bằngcáchchọnShowDropShadowtừmenuFormat

20.Tạomộtthưviện:Đểtạomộtthưviện,chọn LibrarytừmenuconNew
của menu File. Simulink sẽ hiển thị một cửa sổ mới,
 có tên là Library :
untitled.

442
21.Thayđổimộtthưviệnđãcó:Khitamởmộtthưviện,nótựđộngkhoávà
takhôngthểthayđổicácthànhphầncủa nóđược.Muốnmởkhoátachọn
UnlocktừmenuEdit.

22.Copym
ộtkhốitừthưviệnvàomôhình:Tacóthểcopymộtkhốitừthư
việnvàomôhìnhbằngcopyhaypastehaykéonóvàthảvàocửasổmôhình.

23.Vẽđườngnốigiữa
cáckhối:Đểnốicổngracủamộtkhốivớicổngvào
củamộtkhốikháctalàmnhưsau:

•đặtcontrỏchuộtlêncổngracủakhốiđầutiên,contrỏcódạngdấu+
•nhấnvàgiữchuột

•kéocontrỏchuộttớicổngvàocủakhốithứhai
•thảchuột
Đểvẽđườnggấpkhúc,nhấnphímShiftkhivẽ.

24. Vẽ đường nhánh:Đường nhánh làđường nối từ một đườngđã có và
mangtínhiệucủanótớicổngvàocủamộtkhối.

Đểthêmđườngnhánhtalàmnhưsau:
•đưacontrỏchuộttớiđườngcầnphânnhánh
•nhấnphímchuộtđồngthờinhấnphímCtrl
•kéocontrỏchuộttớicổngvàotiếptheovàthảchuộtvaphímCtrl.
TuynhiêntacóthểdùngphímphảichuộtthayvìdùngphímCtrlvàphím
tráichuột.

25.Chènkhốivàomộtđường:
Tacóthểchènmộtkhốivàomộtđườngbằng
cáchkéovàthảkhốiđólênđườngn ối.Khốimàtachènvàochỉcómộtđầu
vàovàmộtđầura.

26.Nhãncủatínhiệu:Ta
cóthểgánnhãnchotínhiệuđểghichúchomô
hình.Nhãncóthểnằmtrênhaydướiđườngnốinằmngang,bênphảihay
bêntráiđườngnốithẳngđứng.
27.Sửdụngnhãntínhiệu:Đểtạo
nhãntínhiệu,bấmđúpchuộtlênđường
nốivàghi nhãn.Đểdichuyểnnhãn,sửamộtnhãn,clicklênnhãnrồiđánh
nhãnmớisaukhixóanhãncũ


443

28.Ghichú:Ghichúlàđoạnv ănbảncungcấpthôngtinvềmôhình.Tacó
thểthêmghichúvàobấtkìtrôngnàocủamôhình.Đểtạomộtghichú,nhấn
đúpchuộtvàovùngtr
ốngcủamôhình.Khinàytrênmànhìnhxuấthiệnmột
hìnhchữnhậtcóconnháyởtrong.Tacóthểđánhvănbảnghichúvàokhung
này.Khimuốndichuyểnphầnghichúđếnmột
vịtríkhác,tabấmchuộtvào
đóvàkéođếnv ịtrímớirồithảchuột.Đểsửam ộtghichú,bấmchuộtvàonó
đểhiểnthịkhungvănbảnvàbắtđầusửa.

29.Các
kiểudữliệu:Simulinkchấpnhậncáckiểudữliệusau:
double sốthựcvớiđộchín hxácgấpđôi
single sốthựcvớiđộchín hxácđơn
int8  sốnguyêncódấu8bit
uint8 sốnguyênkhông
dấu8bit
int16 sốnguyêncódấu16bit
uint16 sốnguyênkhgdấu16bit
int32 sốnguyêncódấu32‐bit
uint32 sốnguyênkhôngdấu32‐bit

30. Các kiểu dữ liệu của các khối: Các
khốiđều chấp nhận kiểu dữ liệu
double.

31.Môtảcáckiểudữliệudùngchothamsốkhối:Khi nhậpvàothamsốcủa
mộtkhối,kiểudữliệucủanóđượcng
ườidùngmôtảbằnglệnhtype(value)
vớitypelàtêncủakiểudữliệuvàvaluelàgiátrịcủathamsố.

Vídụ:single(1.0) dữliệulàsốthựccótrịlà1
 int8(2) dữliệu
làsốnguyêncótrịlà2
 int32(3+2i) dữliệulàsốphức,phầnthựcvàphầnảolàsốnguyên
32bit

32.Tạotínhiệucókiểudữliệuđượcmôtả:Tacóthểđemvàomô
hìnhmột
tínhiệucókiểudữliệuđượcmôtảbằngmộttrongcácphươngphápsauđây:

•nạptínhiệucókiểudữliệumongmuốntừMATLAB

•tạomộtkhốihằngvàđặtthôngsốcủanócókiểudữliệumongmuốn.

•sửdụngkhốibiếnđổikiểudữliệu


444
33.Hiểnthịcáckiểudữliệucủacổng:Đểhiển thị kiểu dữ liệu của cổng
trongmôhình,tachọnPortDataTypestừmenuFormat.

34.Tínhiệuphức:Mặcđịnh,cácgiá
trịcủatínhiệuSimulinklàsốthực.Tuy
nhiêncácmôhìnhcóthểtạovàxửlícáctínhiệulàsốphức.Tacóthểđưa
mộttínhiệulàsốphứcvàomôhìnhbằngmột
trongcácphươngphápsau:
•nạptínhiệuphứctừMATLAB
•tạomộtkhốihằngtrongmôhìnhvàchonógiátrịphức.
•tạomộttínhiệuthựctươngứngvớiphầnthựcvà phầnảocủatínhiệu
phứcvàkếthợpcácphầnnàythànhtínhiệuphứcbằngcáchsửdụng

khối
biếnđổitínhiệuthực‐ảothànhtínhiệuphức.
Ta có thể xử lí tín hiệu phức nhờ các khối chấp nhận tín hiệu phức.
PhầnlớncáckhốicủaSimulinkch
ấpnhậntínhiệuvàolàsốphức.

35.Tạomộthệthốngconbằngcáchthêmkhốihệthốngcon:Đểtạo một
khối hệ thống con trước khi thêm các khối  trong nó
ta phải thêm khối hệ
thốngconvàomôhìnhrồithêmcáckhốitạonênhệthốngconnàyvàokhối
hệthốngconbằngcáchsau:

•copykhốihệthốngcontừthưviệnSignal&Systemvàomôhình
•mởkhốihệthốngconbằngcáchclickđúplênnó
•trongcửa sổkhốiconrỗng, tạohệthốngcon.Sửdụngcáckhối inport
đểbiểudiễnđầuvàovàcáckhốioutportđểbiểu diễnđầura.

36.Tạohệthốngconbằngcách
nhómcáckhốiđãcó:Nếumôhìnhcủatađã
cómộtsốkhốimàta muốnnhómthànhkhốihệthốngconthìtacó thể
nhóm
cáckhốinàythànhkhốihệthốngconbằng
sau:
•baocáckhốivàđườngnốigiữachúngbằngmộtđườngđứtnét(bấm
chuộtvàkéotừgócnàyđếngóckiacủacáckhối)rồithảchuột
•chọnCreateSubsystemtừmenuEdit

37.Gán nhãn cho các  cổng của hệthống con: Simulink gán nhãn cho các
cổngcủahệthốngcon.Nhãnlàtêncủacáckhốiinportvàoutportnốikhốihệ
thốngconvớicáckhốibênngoàiquacáccổngnày.Tacóthểdấucácnhãn

nàybằngcáchchọnkhốihệthốngconrồi chọn HidePortLabels từ menu
Format. Ta cũng có thể dấ
u một hay nhiều nhãn bằng cách chọn các khối

445
inporthayoutportthíchhợptrongkhốihệthốngconvàchọnHideNametừ
menuFormat

38.Môphỏngmộtphươngtrình:PhươngtrìnhdùngđểbiếnđổiđộCelcius
thànhđộFahrenheitlà:
 TF=(9/5)TC+32
Trướch
ếttakhảosátcáckhốicầnđểtạomôhình:
•khốiramptrongthưviệnSourcesđểinputtínhiệunhiệtđộ
•khốiConstanttrongthưviệnSourcesđểtạohằngsố32
•khốiGaintrongthưviệnMathđểtạorahệsố9/5
•khốiSumtrongthưviệnMathđểcộnghaiđạilượng
•khốiScopetrongthưviệnSinksđểhiểnthịkếtquả.
Tiếpđótađưacáckhốivàocửasổmôhình,gáncácgiátrịthôngsốchoGain
vàConstantbằng cáchnhấpđúplên chúngđểmởkhối.
Sauđótanốicác
khối.KhốiRampđưanhiệtđộCelciusvàmôhình.Mởkhốinàyvàthayđổi
giátrịkhởigánInitialoutputvề0.KhốiGainnhânnhiệtđộnàyv ớihệsố
9/5.KhốiSumcộng
giátrị32vớikếtquảvàđưaranhiệtđộFahrenheit.Khối
Scopeđểxem kết quả. Sơ đồ mô phỏng như sau. Bây giờ Start từ menu
Simulationđểchạysimulation.Simulationchạy10giây,tươngứngvớinhiệt
độCelciusbi
ếnđổitừ0đến10
o

.

39.Môphỏngmộthệphươngtrìnhtuyếntính:Taxéthệphươngtrìnhtuyến
tínhcóhaiẩn:




=+−
=+
1zz
1zz
21
21

Đểmôphỏngtadùngcáckhối:
•haikhốiAlgebricConstrainttrongthưviệnMathđểgiảiphươngtrình
•haikhốiSumtrongthưviệnMathđểtạophéptính
•haikhốiDisplaytrongthưviệnSinkđểhiệnthịgiátrịnghiệm

446
•khốiConstanttrongthưviệnSourcesđểtạogiátrị1


40.Môphỏngmộtphươngtrìnhbậccao:Taxétphươngtrình:
x
2
+3x+1=0
Đểmôphỏngtadùngcáckhối:


•khốiAlgebricConstrainttrongthưviệnMathđểgiảiphươngtrình
•khốiDisplaytrongthưviệnSinkđểhiểnthịtrịsốcủanghiệm
•khốiConstanttrongthưviệnSourcesđểtạogiátrị1
•khốiSumtrongthưviệnMathđểtạophépcộng
•khốiMathFunctiontrongthưviệnMathđểtạohàmx
2

•khốiGaintrongthưviệnMathđểtạohệsố3
Sơđồmôphỏngnhưsau


447
41. Mô phỏng hệ thống liên tụcđơn giản: Ta mô hình hoá  hệ mô tả bởi
phươngtrìnhviphân

)t(u)t(x2)t(x
+
−=


vớiu(t)làm ộtsónghìnhchữnhậtcóbiênđộbằng1vàtầns ố1rad/s.Đểmô
phỏnghệtadùngcáckhối:
•khốiGaintrongthưviệnMathđểtạohệsố2
•khốiSumtrongthưviệnMathđểtạophéptính
•khốiScopetrongthưviệnSinkđểxemkếtquả
•khốiSignalGeneratortrongthưviệnSourcesđểtạonguồn
•khốiIntegratortrongthưviệnContinuousđểtíchphân
Sơđồmôphỏngnhưsau:

42.Môphỏnghệphươngtrìnhviphânbậccao:Taxéthệmôtảbởiphương

trìnhviphânbậchaisau:

)t(u4)t(x2
dt
dx
3
dt
xd
2
2
=++ 
Trongđó u(t)làhàmbướcnhảy,x′(0)=0vàx(0)=0.BiếnđổiLaplacecủahệ
chota:
 p
2
X(p)+3pX(p)+2X(p)=4U(p)
Hàmtruyềncủahệlà:

2p3p
4
)p(T
2
++
= 
Tamôphỏnghệbằngcácphầntử:
•khốiSteptrongthưviệnSourcesđểtạohàmbướcnhảyu(t)
•khốiTransferFcntrongthưviệnContinuousđểtạohàmtruyền
•khốiScopetrongthưviệnSinkđểxemkếtquả
Sơđồmôphỏngnhưsau:


448

43.Môphỏnghệcóđiềukiệnđầukháckhông:

a.Phươngtrìnhviphâncấp1:Taxéthệmôtảbởiphươngtrình:

0)t(x
dt
dx
=+ 
Điềukiệnđầucủahệlàx(0)=1.Tacầntìmx(t)trongđoạn0≤t≤10s.Dođiều
kiệnđầukháckhôngnêntabiếnđổiphươngtrìnhvềdạngkhông
gian‐trạng
thái.






+=
+=
DuCxy
BAx
dt
dx

Trongđóxlàbiếntrạngthái,ulàtínhiệuvào,ylàtínhiệura.
 Chọny(t)=x(t)tacó:


)t(x
dt
dx
−= 
y(t)=x(t)
NhưvậyA=‐1;C=1;u(t)=0;B=0vàD=0.Sơđồmôphỏnggồmcácphần
tử:
•khốiState‐SpacetrongthưviệnContinuous
•khốiScopetrongthưviệnSink
Sơđồmôphỏngnhưsau:


b.Phươngtrìnhviphâncấpcao:Taxéthệmôtảbởiphươngtrình:

)t(u4)t(x2
dt
dx
3
dt
xd
2
2
=++ 
Trongđóu(t)làhàmđơnvị,x(0)=1vàx′(0)=‐2.

449
 Tacũngdùnghệkhônggian‐trạngthái.Tađặtx1=x,x2=
dt
dx
1

.Như
vậyđiềukiệnđầulà:x
1(0)=1vàx2(0)=‐2.Ngoàira
dt
xd
dt
xd
dt
dx
2
1
2
2
== 

)t(u4)t(x2)t(x3
dt
dx
12
2
=++

Phươngtrìnhcấphaiđượcđưavềhaiphươngtrìnhcấp1:











+−−=
=
dt
dx
)t(u4)t(x2)t(x3
dt
dx
)t(x
dt
dx
2
12
2
2
1

Viếtdướidạngmatrậntacó:

)t(u
4
0
)t(x
)t(x
32
10
dt
dx

dt
dx
2
1
2
1






+












−−
=













[]






=
)t(x
)t(x
01)t(y
2
1

Từhệnàytasuyracácmatrậncủahệkhônggian‐trạngtháilà:

[]
0D01C
4
0
B

32
10
A ==






=






−−
= 
Sơđồmôphỏnggồmcáckhốisau:
•khốiState‐SpacetrongthưviệnContinuous
•khốiScopetrongthưviệnSink
Sơđồmôphỏngnhưsau


44.Môphỏnghệchobởisơđồkhối:Xétmộthệcócấutrúcsơđồkhốinhư
sau:


450





Tamôphỏnghệbằngcácphầntử:
•khốiSteptrongthưviệnSources
•khốiGaintrongthưviệnMath
•khốiTransferFcntrongthưviệnContinuous
Sơđốmôphỏngnhưsau

45.Môhìnhhoáhệphituyến:

a.Hệchobởi phươngtrìnhviphâncấpcao:TaxétphươngtrìnhValder
Pol:

0yy)y1(y
2
=+

−−
′′

Điềukiệnđầuy(0)=2vày′(0)=0
 Tađặty=y
1vày′=y2vàcóđượchệphươngtrìnhviphâncấp1:







−−=

=

12
2
12
21
yy)y1(y
yy

Hệphươngtrìnhđượcmôphỏngbằngcácphầntửsau:
•khốihàmFcntrongthưviệnFunctions&Tablesđểtạohàm
•khốiProducttrongthưviệnMathđểtạophépnhân
•haikhốiIntegratortrongthưviệnContinous
•khốiSumtrongthưviệnMath
•khốiMuxtrongthưviệnSignal&Systemsđểtrộntínhiệu
•khốiScopetrongthưviệnSinkđểxemkếtquả.
Sơđồmôphỏngnhưsau:
k
ss
1
2
+
+
-

451



b. Hệ mô tả bằng hệ phương trình vi phân: Ta xét hệ mô tả bằng hệ
phươngtrìnhviphânsau:




−−=

=

212
21
a2.0)asin(a
aa

vớiđiềukiệnđầulàa
1(0)=a2(0)=1.3
Tamôphỏnghệbằngcácphầntử:
•haikhốiIntegratortrongthưviệnContinous
•khốiFcntrongthưviệnFunctions&Tables
•khốiGaintrongthưviệnMath
•haikhốiScopetrongthưviệnSink
•khốiSumtrongthưviệnMath
Sơđồmôphỏngnhưsau:







452
46.Lưumôhình:TacóthểlưumôhìnhbằngcáchchọnSavehaySaveastừ
menu
File.TadùngSavekhimởmôhìnhcũ,sửavàlưulại.Saveasdùngkhi
môhìnhcótenlàuntitlednghĩa làchưađượcđặttên.Simulinksẽlưumô
hìnhbằngmộtfilecótênvàphầnmởrộnglà.mdl.

47.Insơđồkhối:TacóthểinsơđồkhốibằngcáchchọnPrinttừmenuFile.
KhinàyhộpthoạiPrintsẽxuấthiện.Nóchophépta:

•chỉinhệthốnghiệnhành
•inhệthốnghiệnhànhvàcáchệthốngdướinótrongphânlớpmôhình
•inhệthốnghiệnhànhvàcáchệthốngtrênnótrongphânlớpmôhình
•intấtcảcáchệthốngtrongmôhình
•inmỗimôhìnhmộtkhungoverlay

48.Duyệtquamôhình
:CửasổModelBrowserchophépta:
•duyệtquamôhìnhcóphânlớp
•mởcáchệthốngtrongcácmôhình
•xácđịnhnộidungcáckhốitrongmộtmôhình
Đểhiểnthị
ModelBrowser,chọnnótừmenuView.Cửasổxuấthiện
đượcchialàm2phần.PhíatráilàBrowser.Cấutrúccâycủamôhìnhhiểnthị
ởbênphải.Mỗidấu+tươngứngvớimộthệthốngcon.

§2.SYMBOLICMATLABTOOLBOX
1.Kháiniệmchung:SymbolicMathToolboxeskếthợptínhtoánbằngchữ
vàomôitrườngMATLAB.Cáctoolboxnàybổsungcáctiệníchsốvàđồthị
vớicáckiểutínhtoántoánhọckhácnhau.


Tiệních Nộidung
Calculusđạo hàm, tích phân, giới hạn, tổng và chuỗi
Taylor
LinearAlgebra nghịchđảo,địnhthức,giátrịriêng,phântíchvà
dạngchínhtắccủamatrận.
Simplification phươngpháprútgọncácbiểuthứcđạisố
SolutionofEquations giảibằngchữvàbằngsốcácphươngtrìnhđại
sốvàviphân
Variable‐Precision
Arithmetic
đánhgiáđộchínhxáccủacácbiểuthứcđạisố

453
Transform biếnđổiLaplace,Fourriervàz
Special Mathematical
Function
các hàm toán họcđặc biệt của cácứng dụng
toánhọckinhđiển

ĐộnglựctínhtoánnằmdướicáctoolboxlànhânMaple,mộthệthống
tínhtoánđượcpháttriểnđầutiênởtrườngđạihọcWaterloo,Canadavàsau
đótạiEidgenroessicheTechnischeHochschuleZurich,Thuỵsĩ.Mapleđược
thươ
ngmạihoávàhỗtrợcủacôngtyWaterlooMaple.

2.KhởiđộngTOOLBOX:
a.Cácđốitượngchữ:Trongphầnnàychúngtasẽxemxétcáchtạovà
dùngcácđốitượngchữ.Chúngtacũngsẽxemxétcácbiếnchữmặcđịnh.
SymbolicMathToolboxđịnhnghĩamộtkiểudữliệuMATLABmớigọilàđối

tượngchữhaysym.Bêntrong,mộtđốitượngchữlàmộtcấu trúcsốliệumà
nólưubiểudiễnchuỗicác
kítự.SymbolicMathToolboxdùngcácđốitượng
chữđểbiểudiễncácbiếnchữ,cácbiểuthứcchữ,cácmatrậnchữ.
b.Tạocácbiếnvàcácbiểuthứcchữ:Lệnhsymchophéptaxâydựng
cácbiếnvàcácbiểuthứcchữ.Vídụlệnh:

x=sym(ʹxʹ)
a=sym(ʹalphaʹ)

tạoracácbiếnchữlàxvàavớixlàxvàalàalpha.
 Giả sử ta muốn ta muốn dùng biến chữ để biểu diễn tỉ lệ vàng
2
51 +
=ρ .Tadùnglệnh:

rho=sym(ʹ(1+sqrt(5))/2ʹ)

Bâygiờtacóthểthựchiêncácphéptoánkhácnhauv ớirho.Vídụ:

f=rho^2‐rho‐1
 f=
(1/2+1/2*5^(1/2))^2‐3/2‐1/2*5^(1/2)

Tarútgọnbiểuthức:

454
 simplify(f)
 ans=
0


Bâygiờgiảsửtamuốngiảiphươngtrìnhbậc2
c
b
xax
f
2
+
+
=
.Phátbiểu:

f=sym(ʹa*x^2+b*x+cʹ)

gánbiểuthứcchữax
2
+bx+cchobiếnf.Tuynhiêntrongtrườngh ợpnày
SymbolicMathToolboxkhôngtạoracácbiếntương ứngvớicácsốhạnga,b,
cvàxtrongbiểuthức.Đểthựchiệncácphéptoánbằngchữ(vídụtíchphân,
đạohàm,thaythếv.v)trênftaphải
tạocácbiếnmộtcách rõràng,nghĩalà
cầnviết:

a=sym(ʹaʹ)
b=sym(ʹbʹ)
c=sym(ʹcʹ)
x=sym(ʹxʹ)

hayđơngiảnlà:


symsabcx

Nóichunglàtacóthểdùng
symhaysymsđểtạocácbiếnchữnhưngnên
dùng
symsđểtiếtkiệmthờigian.

2.Biếnđổigiữasốvàchữ:

a.Tạocácbiếnthựcvà phức:Lệnhsymchophéptamôtảcácthuộctính
toánhọccủacácbiếnchữbằngcáchdùngtuỳchọn
real.Phátbiểu:

x=sym(ʹxʹ,ʹrealʹ);
y=sym(ʹyʹ,ʹrealʹ);

hayhiệuquảhơn:

symsxyreal

455
z=x+i*y

tạorabiếnchữxvàycóthuộctínhlàsốthực.Đặcbiệt:

f=x^2+y^2

thựcsựlàsốkhôngâm.Nhưvậyzlàbiếnphứcvàcáclệnh:

conj(x)

conj(z)
expand(z*conj(z))

chokếtquả:

returnthecomplexconjugatesofthevariables
x
x‐i*y
x^2+y^2

Lệnh
conjlàtoántử tạo số phức liên hợp.Đểxóathuộctínhreal của x ta
dùnglệnh:

symsxunreal
hay:
x=sym(ʹxʹ,ʹunrealʹ)

Lệnhclearxkhôngxoáthuộctínhsốrealcủax.
b.Tạocáchàmtrừutượng:Nếutamuốntạomộthàmtrừtượng(nghĩa
làmộthàmkhôngxácđịnh)f(x)cầndùnglệnh:

f=sym(ʹf(x)ʹ)

Khinàyfhoạtđộngnhưlàf(x)vàcóthểxửlíbằngcáclệnhtoolbox.Vídụđể
tínhviphânbậc1taviết:

df=(subs(f,ʹxʹ,ʹx+hʹ)–f)/ʹhʹ

456

hay

symsxh
df=(subs(f,x,x+h)–f)/h

trảvề:
df=
(f(x+h)‐f(x))/h

ứngdụngnàycủahàm
symsẽrấthữuíchtrongbiếnđổiFourrier,Laplacevà
z.
c.DùngsymđểtruycậpcáchàmcủaMaple:Tacóthểtruycậphàmgiai
thừak!của
Maplekhidùngsym.

kfac=sym(ʹk!ʹ)

Đểtính6!hayk!taviết:

symskn
subs(kfac,k,6)
ans=
720
subs(kfac,k,n)
ans=
n!

haynếutính12!tacũngcóthểviết:


prod(1:12)

d.Vídụtạomatrậnchữ
:Mộtmatrậnvònglàmatrậnmàhàngsaucó
đượcbằngcáchdịchcácphầntửcủahàngtrướcđi1lần.Tatạomộtma trận
vòngAbằngcácphầntửa,
bvàc:

symsabc
A=
[abc;bca;cab]

457
kếtquả:
A=
[
a,b,c]
[
b,c,a]
[
c,a,b]

DoAlàmatrậnvòngtổngmỗihàngvàcộtnhưnhau:

sum(A(1,:))
ans=
a+b+c
sum(A(1,:))==sum(A(:,2))
ans=
1


BâygiờtathayA(2,3)bằngbetavàbbằngalpha:


symsalphabeta
A(2,3)=beta;
A=subs(A,b,alpha)
A
=
[
a,alpha,c]
[
alpha,c,beta]
[
c,a,alpha]

Từ vídụnàytathấy dùng cácđốitượngchữcũngtượngtựnhưdùngsố
trongMATLAB.
e.Biếnchữmặcđịnh:Khidùngcáchàmtoánhọc,việcchọncácbi ếnđộc
lậpthườngrấtrõràng.Vídụxembảngsau:

Hàmtoánhọc LệnhMATLAB
f=xn

f=x^n
g=sin(at+b) g=sin(a*t+b)
h=Jv(z) h=besselj(nu,z)


458

Nếutatìmđạohàmcủacáchàmnàynhưngkhôngmôtảbiếnđộclập
(nghĩalàđạohàmtheobiếnnào)thìkếtquảlà:
f’=nxn
‐1

gʹ=acos(at+b)
hʹ=Jv(z)(v/z)‐Jv
+1(z).
Nhưvậycácbiếnđộclậplàx,tvàz.MATLABhiểucácbiến độclậplà
cácchữthườngvànằmởcuốibảngchữcáinhưx,y,z.Khikhôngthấycác
chữcáinày,MATLAB
sẽtìmchữgầnnhấtvàcoiđólà biếnđộclập.Cácbiến
khácnhưn,a,bvàvđượccoilàhằnghaythôngsố.Tuynhiêntacóthểlấy
đạohàmcủaftheonb
ằngcáchviếtrõbiếnđộclậpra.Tadùngcáclệnhsau
đểtạoracáchàm:

symsabnnutxz
f=x^n;
g=sin(a*t+b);

Đểđạohàmhàmftaviết:

diff(f);
 ans=
  x^n*n/x


Trongvídụtrênxlàbiếnđộclập.Nếumuốntínhđạohàmcủaftheonta cần
viết:


diff(f,n)
 ans=
  x^n*log(x)

4.Tạocáchàmtoánhọcbằngchữ
:
a.Dùngcácbiểuthứcchữ:Cáclệnh:

symsxyz
r=sqrt(x^2+y^2+z^2)
t=atan(y/x)
f=sin(x*y)/(x*y)


459
tạoracácbiểuthứcchữr,tvàf.Tacóthểdùngcáclệnhdiff,int,subshaycác
lệnh
SymbolicMathToolboxkhácđểxửlícácbiểuthứcnhưvậy.
b.TạocácM‐file:M‐filechophéptadùngcáchàmtổngquáthơn.Vídụ
tamuốntạorahàmsinc=sin(x)/xtasẽviếtmộtM‐filecónộidungnhưsau:

functionz=sinc(x)
ifisequal(x,sym(0))
z=1;
else
z=sin(x)/x;
end

Tacóthểmởrộngcácvídụnhưvậychocáchàmvàbiếnkhácnhau.


5.Tínhtoán:
a.Đạohàm:Tatạobiểuthứcchữ:

symsax
f=sin(a*x)

Vậythì:

df=diff(f)

tínhđạohàmcủahàmf(x)theox.Kếtquảlà:

df=
cos(a*x)*a

Đểtínhđạohàmcủaftheoataviết:

dfa=diff(f,a)

kếtquả:

dfa=

460
cos(a*x)*x

Hàmtoánhọc LệnhMATLAB
f=xn
f’=nxn

‐1
f=x^n
diff(f)haydiff(f,x)
g=sin(at+b)
g’=acos(at+b)
g=sin(a*t+b)
diff(g)haydiff(g,t)

Đểtínhđạohàmbậc2củaftheoxvàataviết:

diff(f,2)
ans=
‐sin(a*x)*a^2
diff(f,x,2)
ans=
‐sin(a*x)*x^2

Hàm
diffcóthểdùngđốisốlàmatrận.Trongtrườnghợpnàyđạohàmđược
thựchiệntrêntừngphầntử.Vídụ:

symsax
A=[cos(a*x),sin(a*x);‐sin(a*x),cos(a*x)]

kếtquả:
A=
[cos(a*x), sin(a*x)]
[
‐sin(a*x), cos(a*x)]


lệnh:

dy=diff(A)

chokếtquả:
dy=
[‐
sin(a*x)*a, cos(a*x)*a]
[‐
cos(a*x)*a, ‐sin(a*x)*a]

461
TakhảosátbiếnđổitừtoạđộEuclid(x,y,z)sangtoạđộcầu(r,λ,ϕ)thựchiện
bằngcáccôngthức:
x=rcosλcosϕ
y=rcosλsinϕ
z=rsinλ
ĐểtínhmatrậnJacobiJcủaphép
biếnđổinàytadùnghàmjacobian.Định
nghĩatoánhọccủaJlà:
),,r(
)z,y,x(
J
ϕλ∂

=

Đểdễviếttadùngkítựlthaychoλvàfthaychoϕ.Cácl ệnh

symsrlf

x=r*cos(l)*cos(f);
y=r*cos(l)*sin(f);
z=r*sin(l);
J=jacobian([x;y;z],[rlf])

chotakếtquả:

J=
[
cos(l)*cos(f), –r*sin(l)*cos(f),–r*cos(l)*sin(f)]
[
cos(l)*sin(f), –r*sin(l)*sin(f), r*cos(l)*cos(f)]
[
sin(l),  r*cos(l),   0]

vàlệnh:

detJ=simple(det(J))

cho:
detJ=
–cos(l)*r^2

Chúýlàđốisốthứnhấtcủahàm
jacobianphảilàvectơcộtvàđốisốthứhai
làvectơhàng.Hơnnữadođịnhthứccủa matrậnJacobianlàbiểuthứclượng
giáckháphứctạpnêntadùnglệnh
simpleđểthaythếvàrútgọn.
Bảngsautổnghợphàmdiffvàhàmjacobian


462

Toántửtoánhọc LệnhMATLAB
f=exp(ax+b) symsabx
f=exp(a*x+b)
dx
d
f

diff(x)hay
diff(f,x)
da
df

diff(f,a)
ad
f
d
2
2

diff(f,a,2)
r=u
2
+v
2

t=arctan(v/u)
symsrtuv
r=u^2+v^2

t=atan(v/u)
)v,u(
)t,r(
J


=

J=jacobian([r;t],[u,v])

b.Giớihạn:Đạohàmcủamộthàmlàgiớihạnsauđâynếunótồntại:
h
)x(
f
)hx(
f
lim)x(f
0h
−+
=



SymbolicMathToolboxchophépgiớihạncủamộthàmmộtcáchtrựctiếp
hơn.Lệnh:

symshnx
dc=limit((cos(x+h)–cos(x))/h,h,0)

chokếtquả:


dc=
–sin(x)
và:

limit((1+x/n)^n,n,inf)

cho:
ans=
exp(x)

×