《MATLAB基礎(chǔ)教程(第六版)(微課版)》 課件 ch10 MATLAB GUI設(shè)計;ch11 Simulink的建模與仿真;ch12 文件和數(shù)據(jù)的導(dǎo)入與導(dǎo)出_第1頁
《MATLAB基礎(chǔ)教程(第六版)(微課版)》 課件 ch10 MATLAB GUI設(shè)計;ch11 Simulink的建模與仿真;ch12 文件和數(shù)據(jù)的導(dǎo)入與導(dǎo)出_第2頁
《MATLAB基礎(chǔ)教程(第六版)(微課版)》 課件 ch10 MATLAB GUI設(shè)計;ch11 Simulink的建模與仿真;ch12 文件和數(shù)據(jù)的導(dǎo)入與導(dǎo)出_第3頁
《MATLAB基礎(chǔ)教程(第六版)(微課版)》 課件 ch10 MATLAB GUI設(shè)計;ch11 Simulink的建模與仿真;ch12 文件和數(shù)據(jù)的導(dǎo)入與導(dǎo)出_第4頁
《MATLAB基礎(chǔ)教程(第六版)(微課版)》 課件 ch10 MATLAB GUI設(shè)計;ch11 Simulink的建模與仿真;ch12 文件和數(shù)據(jù)的導(dǎo)入與導(dǎo)出_第5頁
已閱讀5頁,還剩55頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

2025年2月4日第1頁第10章MATLABGUI設(shè)計MATLAB基礎(chǔ)教程(第六版)(微課版)教學(xué)目標(biāo)教學(xué)內(nèi)容2025年2月4日第2頁教學(xué)目標(biāo)了解通過GUIDE創(chuàng)建GUI的方法掌握通過程序創(chuàng)建GUI的方法掌握通過AppDesigner創(chuàng)建GUI的方法2025年2月4日第3頁教學(xué)內(nèi)容GUI簡介通過向?qū)?chuàng)建GUI界面編寫GUI代碼通過程序創(chuàng)建GUI通過AppDesigner創(chuàng)建GUI2025年2月4日第4頁GUI簡介(1/3)GUI概述

MATLAB中的GUI程序為事件驅(qū)動的程序。事件包括按下按鈕,鼠標(biāo)單擊等。GUI中的每個控件與用戶定義的語句相關(guān)。當(dāng)在界面上執(zhí)行某項操作時,則開始執(zhí)行相關(guān)的語句。

MATLAB提供了三種創(chuàng)建GUI的方法:通過GUI向?qū)?chuàng)建、通過編程創(chuàng)建,以及通過AppDesigner面向?qū)ο蟮姆绞絼?chuàng)建。用戶可以通過需要,選擇適當(dāng)?shù)姆椒▌?chuàng)建GUI。通??梢詤⒖枷旅娴慕ㄗh。如果創(chuàng)建對話框,可以選擇編程創(chuàng)建GUI的方法。MATLAB中提供了一系列標(biāo)準(zhǔn)對話框,可以通過一個函數(shù)簡單創(chuàng)建對話框。只包含少量控件的GUI,可以采用程序方法創(chuàng)建,每個控件可以由一個函數(shù)調(diào)用實現(xiàn)。復(fù)雜的GUI通過GUI向?qū)Щ駻ppDesigner比通過程序創(chuàng)建更簡單一些,但是對于大型的GUI,或者由不同的GUI之間相互調(diào)用的大型程序,用程序創(chuàng)建更容易一些。MATLAB提示以后的版本將刪除GUIDE,因此應(yīng)使用APP設(shè)計工具創(chuàng)建GUI。2025年2月4日第5頁GUI簡介(2/3)GUI的可選控件

PushButtonToggleButtonRadioButtonCheckBoxEditTextStaticTextSliderListBoxPop-UpMenuAxesPanelButtonGroupActiveXComponent,2025年2月4日第6頁GUI簡介(3/3)創(chuàng)建簡單GUI。GUI向?qū)Ъ碐UIDE,GraphicalUserInterfacedevelopmentenvironment,包含了大量創(chuàng)建GUI的工具,這些工具簡化了創(chuàng)建GUI的過程。通過向?qū)?chuàng)建GUI直觀、簡單,便于出擊用戶快速開始GUI創(chuàng)建。1.新建GUI2.向界面中添加控件3.設(shè)置控件屬性4.編寫響應(yīng)函數(shù)(1)surf按鈕(2)mesh按鈕(3)contour按鈕2025年2月4日第7頁通過向?qū)?chuàng)建GUI界面(1/3)啟動GUIDE可以在命令行中鍵入GUIDE命令啟動GUIDE。2025年2月4日第8頁通過向?qū)?chuàng)建GUI界面(2/3)向GUI中添加控件1.添加2.設(shè)置控件標(biāo)志3.設(shè)置控件顯示文本2025年2月4日第9頁通過向?qū)?chuàng)建GUI界面(3/3)創(chuàng)建菜單1.創(chuàng)建菜單欄“快捷鍵”“在此菜單項上方放置分隔線”“在此菜單項前添加選中標(biāo)記”“在此菜單項前添加復(fù)選框”“啟用此項”“MenuSelectedFcn”

“更多屬性”2.創(chuàng)建右鍵菜單2025年2月4日第10頁編寫GUI代碼(1/4)GUI文件通常情況下,一個GUI包含兩個文件,一個FIG文件和一個M文件。M文件通常包含一個與文件同名的主函數(shù),各個控件對應(yīng)的響應(yīng)函數(shù),這些響應(yīng)函數(shù)為主函數(shù)的子函數(shù)。2025年2月4日第11頁編寫GUI代碼(2/4)響應(yīng)函數(shù)1.響應(yīng)函數(shù)的定義及類型2.將響應(yīng)函數(shù)與控件關(guān)聯(lián)3.響應(yīng)函數(shù)的語法與參數(shù)4.初始化響應(yīng)函數(shù)2025年2月4日第12頁編寫GUI代碼(3/4)控件編程例10-1按鈕編程。例10-2切換按鈕。2025年2月4日第13頁編寫GUI代碼(4/4)通過GUIDE創(chuàng)建GUI示例1.創(chuàng)建GUI界面2.編寫響應(yīng)函數(shù)的代碼2025年2月4日第14頁通過程序創(chuàng)建GUI(1/2)用于創(chuàng)建GUI的函數(shù)1.預(yù)定義對話框2.創(chuàng)建對象3.ActiveX控件4.獲取應(yīng)用程序的數(shù)據(jù)5.用戶界面輸入6.優(yōu)先權(quán)控制函數(shù)7.應(yīng)用函數(shù)2025年2月4日第15頁通過程序創(chuàng)建GUI(2/2)通過程序創(chuàng)建GUI的示例1.需要實現(xiàn)的功能及需要包含的控件2.需要使用的技術(shù)3.創(chuàng)建GUI4.創(chuàng)建GUI界面和控件(1)創(chuàng)建主界面(2)創(chuàng)建坐標(biāo)系(3)創(chuàng)建彈出菜單(4)Update按鈕(5)File菜單(6)工具欄5.初始化GUI6.定義響應(yīng)函數(shù)(1)Update按鈕的響應(yīng)函數(shù)(2)Open項的響應(yīng)函數(shù)(3)Print菜單項的響應(yīng)函數(shù)(4)Close菜單項的響應(yīng)函數(shù)7.該GUI的完整M文件2025年2月4日第16頁通過AppDesigner創(chuàng)建GUI(1/3)Mathworks在R2016a中正式推出了GUIDE的替代產(chǎn)品:AppDesigner,這是在MATLAB圖形系統(tǒng)轉(zhuǎn)向使用面向?qū)ο笙到y(tǒng)之后(R2014b),一個重要的后續(xù)產(chǎn)品。它旨在順應(yīng)Web的潮流,幫助用戶利用新的圖形系統(tǒng)方便的設(shè)計更加美觀的GUI。2025年2月4日第17頁通過AppDesigner創(chuàng)建GUI(2/3)啟動AppDesignerAppDesigner設(shè)計臺可以通過以下兩種方法啟動:在命令行中輸入appdesigner,或單擊“主頁”工具欄中的“新建”|“APP”,啟動AppDesigner窗口。2025年2月4日第18頁通過AppDesigner創(chuàng)建GUI(3/3)創(chuàng)建一個簡單的GUI該GUI是一個提款機(jī)界面,其中包含2個編輯字段(數(shù)值)框,分別用以顯示賬戶存款余額和取款或者存款數(shù)目;2個按鈕,分別用以確定取款和存款。2025年2月4日第19頁第11章Simulink的建模與仿真MATLAB基礎(chǔ)教程(第六版)(微課版)教學(xué)目標(biāo)教學(xué)內(nèi)容2025年2月4日第20頁教學(xué)目標(biāo)掌握Simulink的基本建模方法熟悉Simulink模塊庫熟悉常見Simulink模型了解S函數(shù)的設(shè)計和調(diào)用2025年2月4日第21頁教學(xué)內(nèi)容Simulink簡介Simulink模塊庫Simulink基本仿真建模常見Simulink模型S函數(shù)設(shè)計與應(yīng)用2025年2月4日第22頁Simulink簡介(1/2)在MATLAB命令窗口中輸入simulink,或在功能區(qū)中單擊simulink按鈕,就可啟動Simulink。Simulink起始頁(SimulinkStartPage)隨即打開。Simulink開始頁中,包含各種仿真模板的選擇,點擊空白模型(BlankModel)可建立一個空白的模型,在其中可創(chuàng)建模型,單擊窗口上方的“庫瀏覽器”按鈕

,可以打開/關(guān)閉模塊庫(庫瀏覽器)在打開的Simulink庫瀏覽器上單擊

按鈕,可以啟動獨立的庫瀏覽器窗口,其中包含許多Simulink模塊。。2025年2月4日第23頁Simulink簡介(2/2)Simulink模型文件的擴(kuò)展名為.mdl或.slx。使用模型窗口中的File菜單打開、關(guān)閉和保存模型文件。使用Edit菜單復(fù)制、剪切和粘貼模塊。還可以使用鼠標(biāo)來完成這些操作。2025年2月4日第24頁Simulink模塊庫(1/16)連續(xù)模塊(Continuous)2025年2月4日第25頁Simulink模塊庫(2/16)控制板模塊(Dashboard)2025年2月4日第26頁Simulink模塊庫(3/16)非連續(xù)模塊(Discontinuous)2025年2月4日第27頁Simulink模塊庫(4/16)離散模塊(Discrete)2025年2月4日第28頁Simulink模塊庫(5/16)邏輯和位操作模塊(LogicandBitOperations)2025年2月4日第29頁Simulink模塊庫(6/16)查表模塊(LookupTable)2025年2月4日第30頁Simulink模塊庫(7/16)數(shù)學(xué)操作模塊(MathOperations)2025年2月4日第31頁Simulink模塊庫(8/16)模型檢測模塊(ModelVerification)2025年2月4日第32頁Simulink模塊庫(9/16)模型擴(kuò)充模塊(Model-WideUtilities)2025年2月4日第33頁Simulink模塊庫(10/16)端口和子系統(tǒng)模塊(Ports&Subsystems)2025年2月4日第34頁Simulink模塊庫(11/16)信號屬性模塊(SignalAttributes)2025年2月4日第35頁Simulink模塊庫(12/16)信號線路模塊(SignalRouting)2025年2月4日第36頁Simulink模塊庫(13/16)接收模塊(Sinks)2025年2月4日第37頁Simulink模塊庫(14/16)輸入模塊(Sources)2025年2月4日第38頁Simulink模塊庫(15/16)字符串模塊(String)2025年2月4日第39頁Simulink模塊庫(16/16)用戶自定義函數(shù)模塊(User-DefinedFunctions)2025年2月4日第40頁Simulink基本仿真建模(1/3)仿真框圖通過構(gòu)建一個顯示了所要求解問題單元的框圖,用戶可以來開發(fā)Simulink模型。這類框圖被稱為仿真框圖或者模塊框圖。

2025年2月4日第41頁Simulink基本仿真建模(2/3)基本建模方法例11-1dy/dt=10sint的Simulink解。使用Simulink針對0≤t≤13時的情況求解以下的問題。精確解是y(t)=10(1-cost)。例11-2輸出到MATLAB工作空間之中。例11-3dy/dt=-10y+f(t)的Simulink模型。2025年2月4日第42頁Simulink基本仿真建模(3/3)現(xiàn)有如下微分-代數(shù)混合方程:初始條件為x1=–20,x2=3,x3=0.5,根據(jù)以上方程構(gòu)造出Simulink模型,其中積分器Integrator、Integrator1、Integrator2的初始值設(shè)定分別是–20、3、0.5。2025年2月4日第43頁常見Simulink模型(1/5)線性狀態(tài)-變量模型狀態(tài)-變量模型(其不像傳遞-函數(shù)模型)可以有多個輸入和多個輸出。當(dāng)用戶若要將輸入連接到State-Space模塊時,務(wù)必小心地以正確的順序?qū)λ鼈冞M(jìn)行連接。當(dāng)用戶將模塊的輸出連接到另一個模塊時也要務(wù)必小心。例11-4兩個質(zhì)量塊系統(tǒng)的Simulink模型。2025年2月4日第44頁常見Simulink模型(2/5)分段線性模型不像線性模型,大部分的非線性微分方程都沒有閉式解可以使用,因此,用戶必須通過數(shù)值法求解這類方程。如果一個微分方程中的因變量或者其導(dǎo)數(shù)出現(xiàn)在超越函數(shù)之中或者對它們進(jìn)行求冪,那么就可以將這個方程認(rèn)為非線性常微分方程。例11-5由火箭推進(jìn)的雪橇Simulink模型。例11-6一個由繼電器控制的馬達(dá)模型。2025年2月4日第45頁常見Simulink模型(3/5)傳遞-函數(shù)模型例11-7死區(qū)響應(yīng)。2025年2月4日第46頁常見Simulink模型(4/5)非線性狀態(tài)-變量模型例11-8一個非線性鐘擺的模型。2025年2月4日第47頁常見Simulink模型(5/5)子系統(tǒng)子系統(tǒng)模塊實際上就是一個由單個模塊所表示的Simulink程序。一旦創(chuàng)建了子系統(tǒng)模塊,用戶就可以在其他的Simulink程序中使用它。1.液壓系統(tǒng)2.連接子系統(tǒng)模塊2025年2月4日第48頁S函數(shù)的設(shè)計和應(yīng)用(1/3)S函數(shù)的介紹S函數(shù)就是S-Functions,是system-Functions的縮寫。當(dāng)MATLAB所提供的模型不能完全滿足用戶要求時,就可以通過S函數(shù)提供給用戶自己編寫程序來滿足自己要求模型的接口。S函數(shù)可以用MATLAB,C,C++,Ada和Fortran編寫。C,C++,Ada和Fortran的S-Functions需要編譯為Mex文件,就和其他MEX文件一樣,Simulink可以隨時動態(tài)地調(diào)用這些文件。2025年2月4日第49頁S函數(shù)的設(shè)計和應(yīng)用(2/3)S函數(shù)的調(diào)用在Simulink中使用S-Functions的方法就是從Simulink中的User-DefinedFunctions模塊庫中向Simulink模型文件窗口中拖放S-Function模塊。然后在S-Functions模塊的對話框中的S-FunctionsName框中輸入S函數(shù)的文件名,在S-FunctionsParameters框中輸入S函數(shù)的參數(shù)值。2025年2月4日第50頁S函數(shù)的設(shè)計和應(yīng)用(3/3)S函數(shù)設(shè)計對于代碼部分的修改,可以使用MATLAB語言按照S-Functions的格式來編寫代碼。MATLAB提供了一個模板文件,方便S-Function的編寫,該模板文件位于MATLAB根目錄toolbox/Simulink/blocks下。2025年2月4日第51頁第12章文件和數(shù)據(jù)的導(dǎo)入與導(dǎo)出MATLAB基礎(chǔ)教程(第六版)(微課版)教學(xué)目標(biāo)教學(xué)內(nèi)容2025年2月4日第52頁教學(xué)目標(biāo)了解MATLAB的基本數(shù)據(jù)操作掌握MATLAB中文本文件的讀寫方式掌握MATLAB通過界面導(dǎo)入導(dǎo)出數(shù)據(jù)了解MATLAB中的基本輸入輸出函數(shù)2025年2月4日第53頁教學(xué)內(nèi)容數(shù)據(jù)基本操作文本文件的讀寫低級文件I/O利用界面工具導(dǎo)入數(shù)據(jù)2025年2月4日第54頁數(shù)據(jù)基本操作(1/3)

文件的存儲1.保存整個工作區(qū)2.保存工作區(qū)中的變量3.利用save命令保存2025年2月4日第55頁數(shù)據(jù)基本操作(2/3)

數(shù)據(jù)導(dǎo)入MATLAB中導(dǎo)入數(shù)據(jù)通常由函數(shù)load實現(xiàn)。例12-1將文件matlab.mat中的變量導(dǎo)入到工作區(qū)中。例12-2從文件中導(dǎo)入數(shù)據(jù)。2025年2月4日第56頁數(shù)據(jù)基本操作(3/3)

文件的打開MATLAB中可以使用open命令打開各種格式的文件,MATLAB自動根據(jù)文件的擴(kuò)展名選擇相應(yīng)的編輯器。例12-3open與load的比較。2025年2月4日第57頁文本文件的讀寫(1/1)1.csvread、csvwrite2.dlmread、dlmwrite3.textread

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論