機(jī)電系統(tǒng)仿真技術(shù)的課件_第1頁(yè)
機(jī)電系統(tǒng)仿真技術(shù)的課件_第2頁(yè)
機(jī)電系統(tǒng)仿真技術(shù)的課件_第3頁(yè)
機(jī)電系統(tǒng)仿真技術(shù)的課件_第4頁(yè)
機(jī)電系統(tǒng)仿真技術(shù)的課件_第5頁(yè)
已閱讀5頁(yè),還剩115頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、機(jī)電系統(tǒng)仿真技術(shù)1機(jī)電系統(tǒng)仿真技術(shù) 電話: 郵箱:機(jī)電系統(tǒng)仿真技術(shù)2課程內(nèi)容簡(jiǎn)介9-1.Matlab簡(jiǎn)介,繪制圖形,M文件編制9-2.Simulink基礎(chǔ)9-3.Simulink子系統(tǒng)創(chuàng)建與封裝9-4.基于Matlab控制系統(tǒng)數(shù)學(xué)建模9-5.電液伺服系統(tǒng)仿真9-6.模糊控制基礎(chǔ)9-7.系統(tǒng)辨識(shí)9-8.實(shí)驗(yàn)9-9.總結(jié)、作業(yè)機(jī)電系統(tǒng)仿真技術(shù)3參考書(shū)目: 1.MATLAB/Simulink與液壓控制系統(tǒng)仿真2. MATLAB/Simulink與控制系統(tǒng)仿真機(jī)電系統(tǒng)仿真技術(shù)49-1.內(nèi)容Matlab簡(jiǎn)介繪制圖形M文件編制機(jī)電系統(tǒng)仿真技術(shù)5Matlab的學(xué)習(xí)方法必須做大量練習(xí),熟悉其中的函數(shù)聯(lián)系和自己

2、相關(guān)的課題,深刻體會(huì)多看幫助文件,一本好的參考書(shū)會(huì)提問(wèn)題,尋求大家的幫助記?。篗atlab可以做很多事情機(jī)電系統(tǒng)仿真技術(shù)6學(xué)會(huì)Matlab將改變你的一生網(wǎng)絡(luò)對(duì)你的改變將遠(yuǎn)遠(yuǎn)的超過(guò)一臺(tái)獨(dú)立的計(jì)算機(jī)機(jī)電系統(tǒng)仿真技術(shù)7OK, Now begin機(jī)電系統(tǒng)仿真技術(shù)8第一講 MATLAB簡(jiǎn)介 概述 MATLAB基本使用機(jī)電系統(tǒng)仿真技術(shù)9一、概述matlab語(yǔ)言是由美國(guó)的Clever Moler博士于1980年開(kāi)發(fā)的設(shè)計(jì)者的初衷是為解決“線性代數(shù)”課程的矩陣運(yùn)算問(wèn)題 MATLAB名字是由Matrix和Laboratory兩個(gè)詞的前三個(gè)字母組合而成的,矩陣實(shí)驗(yàn)室的意思機(jī)電系統(tǒng)仿真技術(shù)10它將一個(gè)優(yōu)秀軟件的易用

3、性與可靠性、通用性與專(zhuān)業(yè)性 、一般目的的應(yīng)用與高深的科學(xué)技術(shù)應(yīng)用有機(jī)的相結(jié)合MATLAB是一種直譯式的高級(jí)語(yǔ)言,比其它程序設(shè)計(jì)語(yǔ)言容易機(jī)電系統(tǒng)仿真技術(shù)11MATLAB語(yǔ)言與其它語(yǔ)言的關(guān)系仿佛和C語(yǔ)言與匯編語(yǔ)言的關(guān)系一樣計(jì)算機(jī)語(yǔ)言的發(fā)展數(shù)值運(yùn)算解析運(yùn)算管理、可視化智能化標(biāo)志著計(jì)算機(jī)語(yǔ)言向“智能化”方向發(fā)展,被稱(chēng)為第四代編程語(yǔ)言。機(jī)電系統(tǒng)仿真技術(shù)121.1 學(xué)習(xí)Matlab的基本原因不希望學(xué)生在編程上化太多時(shí)間,課程目的不是學(xué)習(xí)編程社會(huì)化的運(yùn)行帶來(lái)的好處:合理利用可以節(jié)約大量的時(shí)間為什么相同的時(shí)間別人比自己做出了更多的事情:碩士論文調(diào)查結(jié)果面向?qū)ο蟮乃枷霂?lái)巨大的好處緊密結(jié)合科學(xué)的前沿From B

4、BS:博士論文=Matlab+word 機(jī)電系統(tǒng)仿真技術(shù)131.2 Matlab的版本演化Matlab 1.0Pc matlab-matlab 386Matlab3.5+simulinkMatlab 4.0:simlink內(nèi)嵌:1993年Matlab 5.0 :全面的面向?qū)ο螅?995年Matlab 5.15.3:1997年Matlab 6.0:2000.10Matlab 6.5:購(gòu)并了MATRIXx:2002.8Matlab 7.0:2004年機(jī)電系統(tǒng)仿真技術(shù)141.3 MATLAB特點(diǎn)高度適應(yīng)性、開(kāi)放性:MATLAB的工具箱可以任意增減,任何人可以自己生成MATLAB工具箱可擴(kuò)充性: MA

5、TLAB的函數(shù)大多為ASCII文件,可以直接編輯、修改基于矩陣運(yùn)算的工作平臺(tái)。多版本:windows/unix/dos/Macintosh極多的工具箱。機(jī)電系統(tǒng)仿真技術(shù)151.4 Matlab能做什么工業(yè)研究與開(kāi)發(fā)數(shù)值分析和科學(xué)計(jì)算方面的教學(xué)與研究數(shù)學(xué)教學(xué),特別是線性代數(shù)電子學(xué)、控制理論和物理學(xué)等工程和科學(xué)學(xué)科方面的教學(xué)與研究經(jīng)濟(jì)學(xué)、化學(xué)和生物學(xué)等計(jì)算問(wèn)題的所有其他領(lǐng)域中的教學(xué)與研究機(jī)電系統(tǒng)仿真技術(shù)16例1.4.1 用一個(gè)簡(jiǎn)單命令求解線性系統(tǒng) 3x1+ x2 - x3 = 3.6 x1+2x2+4x3 = 2.1 -x1+4x2+5x3 = -1.4A=3 1 -1;1 2 4;-1 4 5;

6、b=3.6;2.1;-1.4;x=Abx = 1.4818 -0.4606 0.3848對(duì)于線性系統(tǒng)有Ax=b機(jī)電系統(tǒng)仿真技術(shù)17例1.4.2 用簡(jiǎn)短命令計(jì)算并繪制在0 x6范圍內(nèi)的sin(2x)、sinx2、sin2x。x=linspace(0,6)y1=sin(2*x),y2=sin(x.2),y3=(sin(x).2;plot(x,y1,x, y2,x, y3)機(jī)電系統(tǒng)仿真技術(shù)18例1.4.3 用四種方法描述cos(x)*sin(y)圖形MATLAB語(yǔ)言的功能:機(jī)電系統(tǒng)仿真技術(shù)191.5 MATLAB語(yǔ)言的功能:強(qiáng)大的數(shù)值(矩陣)運(yùn)算功能廣泛的符號(hào)運(yùn)算功能高級(jí)與低級(jí)兼?zhèn)涞膱D形功能(計(jì)算結(jié)

7、果的可視化功能)可靠的容錯(cuò)功能應(yīng)用靈活的兼容與接口功能信息量豐富的聯(lián)機(jī)檢索功能機(jī)電系統(tǒng)仿真技術(shù)201.5.1矩陣運(yùn)算功能MATLAB提供了豐富的矩陣運(yùn)算處理功能,是基于矩陣運(yùn)算的處理工具。變量 矩陣,運(yùn)算 矩陣的運(yùn)算例如 C = A + B ,A,B,C都是矩陣,是矩陣的加運(yùn)算即使一個(gè)常數(shù),Y=5,MATLAB也看做是一個(gè)11的矩陣機(jī)電系統(tǒng)仿真技術(shù)211.5.2符號(hào)運(yùn)算功能符號(hào)運(yùn)算即用字符串進(jìn)行數(shù)學(xué)分析允許變量不賦值而參與運(yùn)算用于解代數(shù)方程、微積分、復(fù)合導(dǎo)數(shù)、積分、二重積分、有理函數(shù)、微分方程、泰樂(lè)級(jí)數(shù)展開(kāi)、尋優(yōu)等等,可求得解析符號(hào)解機(jī)電系統(tǒng)仿真技術(shù)221.5.3豐富的繪圖功能與計(jì)算結(jié)果的可視

8、化具有高層繪圖功能兩維、三維繪圖具有底層繪圖功能句柄繪圖使用plot函數(shù)可隨時(shí)將計(jì)算結(jié)果可視化機(jī)電系統(tǒng)仿真技術(shù)231.5.4圖形化程序編制功能動(dòng)態(tài)系統(tǒng)進(jìn)行建模、仿真和分析的軟件包用結(jié)構(gòu)圖編程,而不用程序編程只需拖幾個(gè)方塊、連幾條線,即可實(shí)現(xiàn)編程功能機(jī)電系統(tǒng)仿真技術(shù)241.5.5豐富的MATLAB工具箱MATLAB主工具箱符號(hào)數(shù)學(xué)工具箱SIMULINK仿真工具箱控制系統(tǒng)工具箱信號(hào)處理工具箱圖象處理工具箱通訊工具箱系統(tǒng)辨識(shí)工具箱神經(jīng)元網(wǎng)絡(luò)工具箱金融工具箱機(jī)電系統(tǒng)仿真技術(shù)25Matlab產(chǎn)品家族Matlab擴(kuò)展支持在matlab中對(duì)系統(tǒng)的實(shí)施和開(kāi)發(fā)。工具箱:專(zhuān)用的函數(shù)庫(kù),解決特定領(lǐng)域的問(wèn)題。Simu

9、link非線性系統(tǒng)仿真Blockset是專(zhuān)門(mén)為simulink建立的模塊。機(jī)電系統(tǒng)仿真技術(shù)26Matlab是所有系統(tǒng)工具的基礎(chǔ)機(jī)電系統(tǒng)仿真技術(shù)271.5.6MATLAB的兼容功能可與C語(yǔ)言、FORTURE語(yǔ)言跨平臺(tái)兼容機(jī)電系統(tǒng)仿真技術(shù)281.6 網(wǎng)絡(luò)資源 網(wǎng)絡(luò)上的工具箱 機(jī)電系統(tǒng)仿真技術(shù)29二 MATLAB使用基礎(chǔ)1、MATLAB 6.5 操作入門(mén)2、命令行基礎(chǔ)3、MATLAB的變量及管理4、MATLAB的函數(shù)機(jī)電系統(tǒng)仿真技術(shù)30將源光盤(pán)插入光驅(qū);在光盤(pán)的根目錄下找到Matlab的安裝文件setup.exe及安裝密碼;雙擊該安裝文件后, 按提示逐步安裝;安裝完成后,在程序欄里便有了Matlab

10、選項(xiàng),桌面上出現(xiàn)Matlab的快捷方式;雙擊桌面上Matlab的快捷方式或程序里Matlab選項(xiàng)即可啟動(dòng)Matlab。1、Matlab的安裝與啟動(dòng)(Windows操作平臺(tái))(一)MATLAB 6.5 操作入門(mén)機(jī)電系統(tǒng)仿真技術(shù)31機(jī)電系統(tǒng)仿真技術(shù)322、Matlab 6.5 環(huán)境菜單欄-單擊即可打開(kāi)相應(yīng)的菜單;工具欄-使用它們能使操作更快捷;Command Window(命令窗口)-用來(lái)輸入和顯示計(jì)算結(jié)果,其中符號(hào)“”表示等待用戶輸入;Launch Pad(分類(lèi)幫助窗口);Workspace(工作區(qū)窗口)-存儲(chǔ)著命令窗口輸入的命令和所有變量值;Command History(歷史紀(jì)錄窗口)-記錄

11、著每次時(shí)間及運(yùn)行過(guò)的所有命令行;Current Directory(當(dāng)前目錄選擇窗口)。機(jī)電系統(tǒng)仿真技術(shù)33命令窗口菜單欄工具欄分類(lèi)幫助窗口歷史紀(jì)錄窗口機(jī)電系統(tǒng)仿真技術(shù)343、Mat lab的幫助系統(tǒng)(1)幫助命令help;(2)幫助窗口。進(jìn)入幫助窗口的步驟如下Launch Pad(分類(lèi)幫助窗口)選中“Help”打開(kāi)機(jī)電系統(tǒng)仿真技術(shù)35機(jī)電系統(tǒng)仿真技術(shù)36(二)命令行基礎(chǔ)1、簡(jiǎn)單的運(yùn)算步驟如下:(1)用鍵盤(pán)在命令窗口輸入以下內(nèi)容: (12+2*(7-4)/(32)(2)按Enter鍵,該指令就被執(zhí)行。(3)命令窗口顯示所得結(jié)果:ans = 2 機(jī)電系統(tǒng)仿真技術(shù)372、Matlab表達(dá)式的輸入M

12、at lab語(yǔ)句由表達(dá)式和變量組成,有兩種常見(jiàn)的形式:(1)表達(dá)式 ;(2)變量=表達(dá)式(1)輸入:(2)按 Enter 鍵。(3)顯示: y=(12+2*(7-4)/(32)y = 2機(jī)電系統(tǒng)仿真技術(shù)38(1)輸入:(2)按 Enter 鍵。(3)顯示: x=3 y=x3-x(1/4)+2.15*sin(x)y = 25.9873機(jī)電系統(tǒng)仿真技術(shù)393、指令的續(xù)行輸入若一個(gè)表達(dá)式在一行寫(xiě)不下,可換行,但必須在行尾加上四個(gè)英文句號(hào)。(1)輸入:(2)按 Enter 鍵。(3)顯示: s=1-1/2+1/3-1/4+1/5-1/6.+1/7-1/8s = 0.6345機(jī)電系統(tǒng)仿真技術(shù)40例如:s

13、in(1/9*pi)+sin(2/9*pi)+sin(3/9*pi)+sin(4/9*pi)+sin(5/9*pi)+sin(6/9*pi)+sin(7/9*pi)+sin(8/9*pi)+sin(9/9*pi)+ans=5.6713 機(jī)電系統(tǒng)仿真技術(shù)414、用可用于調(diào)出前一個(gè)命令行輸入: y1=2*sin(0.3*pi)/(1+sqrt(5)y1 = 0.5000 機(jī)電系統(tǒng)仿真技術(shù)42注意:(1)當(dāng)命令行有錯(cuò)誤,Matlab會(huì)用紅色字體提示;(2)同一行中若有多個(gè)表達(dá)式,則必須用分號(hào)或逗號(hào)隔開(kāi),若表達(dá)式后面是分號(hào),將不顯示結(jié)果。(3) 輸入為:機(jī)電系統(tǒng)仿真技術(shù)43機(jī)電系統(tǒng)仿真技術(shù)44(三)M

14、at lab的變量及管理1、變量名的命名規(guī)則(1)以字母開(kāi)頭,后面可跟字母、數(shù)字和下短線;(2)大小寫(xiě)字母有區(qū)別;(3)不超過(guò)31個(gè)字符。Example:fun, Zheng12機(jī)電系統(tǒng)仿真技術(shù)45MATLAB變量的命名all variables are stored in 32bit floating point formatno distinction between real and integera = 3;a = 3.0;same assignment for “a”Matlab is case sensitiveA=3;a=2;Aa機(jī)電系統(tǒng)仿真技術(shù)46MATLAB變量的命名can

15、use numbers and underscore in variable namescase34=6.45;names must start with a lettercase_34=6.45;OK34case=23.45;results in a syntax errorstring (text) variables enclosed in single quotes.The variable is stored as array of characterstitle=This is the title;機(jī)電系統(tǒng)仿真技術(shù)47to clear a variable from memorya

16、=4clear aif a variable is defined,typing the variable name returns its valuea=45.57;a = 45.57Matlab returns the valueaMATLAB變量的命名機(jī)電系統(tǒng)仿真技術(shù)48Matlab will “echo” commands unless a semi-colon is useda=23.2;a=23.2a = 23.2Matlab echoes the commandMATLAB變量的命名機(jī)電系統(tǒng)仿真技術(shù)49Vectorscolumn vectorsrow vectorsa=1;2;3

17、;aa = 1 2 3a=1,2,3;aa = 1 2 3use semi-colon to separate rowsuse comma to separate columnsMATLAB變量的命名機(jī)電系統(tǒng)仿真技術(shù)50Matrices2-dimensional matricesa=1,2,3;4,5,6;aa = 1 2 3 4 5 6again, separate columns with commas and rows with semi-colonsMATLAB變量的命名機(jī)電系統(tǒng)仿真技術(shù)512、Matlab的預(yù)定義變量機(jī)電系統(tǒng)仿真技術(shù)523、Mat lab的變量管理(1)who-查詢(xún)M

18、at lab內(nèi)存變量; whos-查詢(xún)?nèi)孔兞吭敿?xì)情況。(2)clear-清除內(nèi)存中的全部變量。(3)save sa X -將X 變量保存到sa.mat文件。(4)load sa X -調(diào)用sa.mat文件中變量X 。注意:save只對(duì)數(shù)據(jù)和變量保存,不能保存命令。機(jī)電系統(tǒng)仿真技術(shù)53機(jī)電系統(tǒng)仿真技術(shù)54機(jī)電系統(tǒng)仿真技術(shù)55(四)Matlab的函數(shù)機(jī)電系統(tǒng)仿真技術(shù)56機(jī)電系統(tǒng)仿真技術(shù)57機(jī)電系統(tǒng)仿真技術(shù)58(五)Mat lab 數(shù)組與矩陣-數(shù)組一、數(shù)組的構(gòu)造1) 直接法:用空格或逗號(hào)間隔數(shù)組元素,然后用中括號(hào)括( )起來(lái)。 例5-1: x=0 2 4 6或 x=0 ,2,4 ,6 2)增量法(

19、冒號(hào)法):利用冒號(hào)運(yùn)算符“:”可生成1n 的矩陣。格式:x=first:step:last %初值:增量:終值例5-2:x=10:15 x=1:6.3 x=10:5:30 x=9:-1:1 (不能表示為x=9:1 )默認(rèn)時(shí),創(chuàng)建增量為1的序列。3)linspace函數(shù)法 格式:x=linspace(first,last,num) %初值:終值:元素個(gè)數(shù)需指定首尾值和元素個(gè)數(shù),步長(zhǎng)h=(last-first)/(num-1) 例5-3:x=linspace(0:10:5)機(jī)電系統(tǒng)仿真技術(shù)59(五)Mat lab 數(shù)組與矩陣 -數(shù)組二、數(shù)組的運(yùn)算注:點(diǎn)運(yùn)算只有點(diǎn)乘、點(diǎn)乘方、點(diǎn)除三個(gè),表示對(duì)應(yīng)元素之

20、間的運(yùn)算;(.*)是一個(gè)整體,點(diǎn)( .)不能漏掉,( .)和(*)之間也不能有空格。例5-4:已知a=1 2 3,b=2 4 6,c=3;分析下列執(zhí)行結(jié)果:a=1 2 3; b=2 4 6; c=3;a+b=3 6 9a-b =-1 -2 -3 a+c=4 5 6 a*c=3 6 9 a.*b=2 8 16 a.b=12 24 36 a.b =2 2 2 a./b =0.5 0.5 0.5 a.c=13 23 33 c.a=31 32 33機(jī)電系統(tǒng)仿真技術(shù)60(五)Mat lab 數(shù)組與矩陣-矩陣一、矩陣的創(chuàng)建a在命令窗口中創(chuàng)建 b通過(guò)函數(shù)創(chuàng)建例5-5: 例5-6:x=1 2 3;4 5 6;

21、7 8 9 x=0:pi/4:2*pi; y=sin(x)x= 1 2 3 4 5 6 7 8 9c通過(guò)數(shù)據(jù)文件創(chuàng)建,在命令窗口或程序中調(diào)入。例如使用產(chǎn)生數(shù)據(jù),保存為c:bdat.xls,在Matlab的Files菜單選Import Data,找到文件c:bdat.xls,打開(kāi),就將表格中數(shù)據(jù)作為二維數(shù)組賦予變量bdat。d通過(guò)M文件創(chuàng)建,在命令窗口或程序中執(zhí)行中。機(jī)電系統(tǒng)仿真技術(shù)61(五)Mat lab 數(shù)組與矩陣-矩陣e特殊矩陣的生成全零陣 zeros (m,n) 全1陣 ones(m,n) 單位陣: eye(n) 對(duì)角矩陣:diag(a,n) 魔方矩陣:magic(n)f獲取矩陣的元素

22、A(row,column)例3-6:H=magic(5)H(3,2) 6 H(3,2)=0 H(:,3:5) %表示取H的第3到第五列組成的矩陣V=1 3 5 B=H(V,4) %表示取H的第4列的第1,3,5個(gè)元素組成的矩陣c=H(V,:) %表示取H的第1,3,5行組成的矩陣機(jī)電系統(tǒng)仿真技術(shù)62(五)Mat lab 數(shù)組與矩陣-矩陣g獲取矩陣的信息 length(列數(shù)) size (行和列數(shù)) ndims(維數(shù)) numel(元素個(gè)數(shù))例3-7: a=1 2 3;2 6 9length(a) 3 size(a) 2 3 ndims(a) 2 numel(a) 6 b=1 2 3 6 9le

23、ngth(b) 5 size(b) 1 5 ndims(b) 2 numel(b) 5機(jī)電系統(tǒng)仿真技術(shù)63(五)Mat lab 數(shù)組與矩陣-矩陣二、矩陣的運(yùn)算 例3-8:已知A=1 2;3 4,B=4 3;2 1,c=3;分析下列執(zhí)行結(jié)果:100+A ans = 101 102 103 104A*Bans = 8 5 20 13A.*Bans = 4 6 6 4 ABans = -6.0000 -5.00005.0000 4.0000 B/Aans = -3.5000 2.5000 -2.5000 1.5000 A.Bans = 4.0000 1.5000 0.6667 0.2500 B./A

24、ans = 4.0000 1.50000.6667 0.2500機(jī)電系統(tǒng)仿真技術(shù)64(六)Mat lab基本運(yùn)算符1、算術(shù)運(yùn)算符機(jī)電系統(tǒng)仿真技術(shù)65MATLAB 運(yùn)算Basic operationsaddition +subtraction -multiplication *division right division / left division a=3;b=4;c1=a/b;c2=ab;?c1=0.75c2=1.3333.so, be careful!機(jī)電系統(tǒng)仿真技術(shù)66Mixed Real and Complex valued Variablesif both variables a

25、re real-valued, a real-valued result is obtainedif one variable is complex-valued, Matlab recasts the real variable as complex and then performs the operation. The result is complex-valued however, the type casting is done internally, the real-valued variable remains real after the operationMATLAB 運(yùn)

26、算機(jī)電系統(tǒng)仿真技術(shù)67MATLAB 運(yùn)算Other (Scalar) OperationsMath representationMatlab interpretationz=yx;y=exp(x);y=log(x);y=log10(x)y=sin(x);y=cos(x);y=tan(x);y=asin(x);y=acos(x);y=atan(x);機(jī)電系統(tǒng)仿真技術(shù)68MATLAB 運(yùn)算Examplesy=x0.5;y=x(1/2);y=sqrt(x);All variables in the preceding operations can be real or complex, negati

27、ve or positivefor x D=A+B;D=A-B;D=A*C;D=C*A;D=A+C;D=A*B;D=B*A;Matrix multiplication not commutative機(jī)電系統(tǒng)仿真技術(shù)70MATLAB 運(yùn)算Left() and Right(/) Matrix “division”Math representationMatlab interpretationC=AB;C=B/A;Remember, A must be square and full rank (linearly independent rows/columns)機(jī)電系統(tǒng)仿真技術(shù)71MATLAB 運(yùn)

28、算Matrix TransposeMath representationMatlab interpretationC=A;For complex-valued matrices, complex conjugate transposeB=A;b=a;機(jī)電系統(tǒng)仿真技術(shù)722、關(guān)系運(yùn)算符機(jī)電系統(tǒng)仿真技術(shù)733、邏輯運(yùn)算符機(jī)電系統(tǒng)仿真技術(shù)74作業(yè)題機(jī)電系統(tǒng)仿真技術(shù)75第三講 MATLAB 編程M文件 簡(jiǎn)單編程機(jī)電系統(tǒng)仿真技術(shù)76(二)M 文件1、M文件的建立 M文件,就是用Mat lab語(yǔ)言編寫(xiě)的,可在Matlab里運(yùn)行的程序。M文件有兩大類(lèi):命令文件和函數(shù)文件。單擊“File”選擇“New”單擊“

29、M-file”輸入內(nèi)容保存機(jī)電系統(tǒng)仿真技術(shù)772、M命令文件(腳本文件) M命令文件,只是一些命令行的組合,而且其中的所有變量也成為工作區(qū)的一部分。(1)打開(kāi)M文件,輸入:x=2.15;y=3.67;z=6.71;sum=x+y+zfun=(x+y+z)/3機(jī)電系統(tǒng)仿真技術(shù)78機(jī)電系統(tǒng)仿真技術(shù)79(2)以名ed.m保存,(注意:在保存名處只需輸入ed);M文件窗口即可關(guān)閉。(3)在Mat lab命令窗口輸入M文件名:ed ,即可出現(xiàn)M文件上結(jié)果。機(jī)電系統(tǒng)仿真技術(shù)80機(jī)電系統(tǒng)仿真技術(shù)813、M函數(shù)文件它就像庫(kù)函數(shù)一樣方便的調(diào)用。(1)格式function 輸出變量=函數(shù)名(輸入變量)函數(shù)體語(yǔ)句(

30、2)注意:(a)輸出變量多于一個(gè)時(shí),要用方括號(hào);(b)輸入、輸出變量多于一個(gè)時(shí),要用逗號(hào)隔開(kāi);(c)必須以函數(shù)名存盤(pán)。機(jī)電系統(tǒng)仿真技術(shù)82(1)打開(kāi)M文件,輸入:function y=zheng(x)y=x2+3.2*x-1.7(2)輸入zheng并保存這個(gè)M文件。(3)在Mat lab命令窗口輸入:zheng(1.1),就有其值;輸入:zheng(1.3),就可求出對(duì)應(yīng)的值;依次可求得所有值。機(jī)電系統(tǒng)仿真技術(shù)83機(jī)電系統(tǒng)仿真技術(shù)84機(jī)電系統(tǒng)仿真技術(shù)85七、簡(jiǎn)單編程1、條件語(yǔ)句 它的執(zhí)行原理與C語(yǔ)言中條件語(yǔ)句的執(zhí)行原理完全一樣。(1)if 語(yǔ)句體 end(2)if 語(yǔ)句體1 else 語(yǔ)句體2

31、 end機(jī)電系統(tǒng)仿真技術(shù)86(2)if 語(yǔ)句體1 elseif 語(yǔ)句體2 else 語(yǔ)句體3 end機(jī)電系統(tǒng)仿真技術(shù)87(1)打開(kāi)M文件,輸入:function y=xy(x)if x=0 y=0elseif x=1 y=1elseif x=2 y=2*xelse y=2*x+5end機(jī)電系統(tǒng)仿真技術(shù)88機(jī)電系統(tǒng)仿真技術(shù)89(2)輸入xy并保存這個(gè)M文件。(3)在Mat lab命令窗口輸入:xy(-1),就有其值;輸入:xy(0.7),就可求出對(duì)應(yīng)的值;依次可求得所有值。機(jī)電系統(tǒng)仿真技術(shù)90機(jī)電系統(tǒng)仿真技術(shù)912、循環(huán)語(yǔ)句(1)for 循環(huán)變量=初值:增量:終值 循環(huán)體 end(2) whil

32、e 循環(huán)體 end機(jī)電系統(tǒng)仿真技術(shù)92(1)打開(kāi)M文件,輸入:s=0for n=1:100 s=s+1/n2end(2)輸入sg并保存這個(gè)M文件。(3)在Mat lab命令窗口輸入:sg ,就有其值。機(jī)電系統(tǒng)仿真技術(shù)93機(jī)電系統(tǒng)仿真技術(shù)94機(jī)電系統(tǒng)仿真技術(shù)95第二講 MATLAB繪圖 二維數(shù)據(jù)曲線圖 二維統(tǒng)計(jì)分析圖機(jī)電系統(tǒng)仿真技術(shù)96MatLab圖形繪制功能基本繪圖函數(shù)機(jī)電系統(tǒng)仿真技術(shù)97程序如下:x=0:pi/100:2*pi;y=2*exp(-0.5*x).*cos(4*pi*x);plot(x,y)例3-1:在0 x2p區(qū)間內(nèi),繪制曲線 3.1.1、繪制單根二維曲線繪圖命令Plot(x,

33、y) ,繪制y對(duì)應(yīng)x的軌跡命令機(jī)電系統(tǒng)仿真技術(shù)98例3-2:繪制曲線 t0,2程序如下:t=0:0.1:2*pi;x=t.*sin(3*t);y=t.*sin(t).*sin(t);plot(x,y);機(jī)電系統(tǒng)仿真技術(shù)99在這種情況下,當(dāng)x是實(shí)向量時(shí),以該向量元素的下標(biāo)為橫坐標(biāo),元素值為縱坐標(biāo)畫(huà)出一條連續(xù)曲線,這實(shí)際上是繪制折線圖。x=2 3 1 2 5plot(x)相當(dāng)于x=1:5y=2 3 1 2 5plot(x,y) 例3-3:plot函數(shù)最簡(jiǎn)單的調(diào)用格式只包含一個(gè)輸入?yún)?shù):plot(x)機(jī)電系統(tǒng)仿真技術(shù)1001.plot函數(shù)的輸入?yún)?shù)是矩陣形式 (1) 當(dāng)x是向量,y是有一維與x同維的

34、矩陣時(shí),則繪制出多根不同顏色的曲線。曲線條數(shù)等于y矩陣的另一維數(shù),x被作為這些曲線共同的橫坐標(biāo)。 x=3 1 8 ; y=magic(3); z=x;y plot(x,z)3.1.2、繪制多根二維曲線y = 8 1 6 3 5 7 4 9 2機(jī)電系統(tǒng)仿真技術(shù)101x=magic(3)y=1 2 3;4 5 6;7 8 9plot(x,y)(2) 當(dāng)x,y是同維矩陣時(shí),則以x,y對(duì)應(yīng)列元素為橫、縱坐標(biāo)分別繪制曲線,曲線條數(shù)等于矩陣的列數(shù)。機(jī)電系統(tǒng)仿真技術(shù)1022含多個(gè)輸入?yún)?shù)的plot函數(shù) 調(diào)用格式為:plot(x1,y1,x2,y2,xn,yn)(1)當(dāng)輸入?yún)?shù)都為向量時(shí),x1和y1,x2和y

35、2,xn和yn分別組成一組向量對(duì),每一組向量對(duì)的長(zhǎng)度可以不同。每一向量對(duì)可以繪制出一條曲線,這樣可以在同一坐標(biāo)內(nèi)繪制出多條曲線。(2) 當(dāng)輸入?yún)?shù)有矩陣形式時(shí),配對(duì)的x,y按對(duì)應(yīng)列元素為橫、縱坐標(biāo)分別繪制曲線,曲線條數(shù)等于矩陣的列數(shù)。如:在同一坐標(biāo)軸內(nèi)繪制三條曲線Plot(t,x1 x2 x3)Plot(t1,x1,t2,x2,t3,x3)表示x1對(duì)應(yīng)t1, x2對(duì)應(yīng)t2等等。這種情況下t1,t2和t3, 可以有不同的元素?cái)?shù)量,但要求x1,x2, x3必須分別與t1,t2,t3具有相同的元素?cái)?shù)量。機(jī)電系統(tǒng)仿真技術(shù)103x1=linspace(0,2*pi,100);x2=linspace(0,

36、3*pi,100);x3=linspace(0,4*pi,100);y1=sin(x1);y2=1+sin(x2);y3=2+sin(x3);x=x1;x2;x3;y=y1;y2;y3;plot(x,y,x1,y1-1)當(dāng)x,y是同維矩陣時(shí),則以x,y對(duì)應(yīng)列元素為橫、縱坐標(biāo)分別繪制曲線,曲線條數(shù)等于矩陣的列數(shù)。例3-4:分析下列程序繪制的曲線。機(jī)電系統(tǒng)仿真技術(shù)104在Matlab中,如果需要繪制出具有不同縱坐標(biāo)標(biāo)度的兩個(gè)圖形,可以使用plotyy繪圖函數(shù)。調(diào)用格式為:plotyy(x1,y1,x2,y2)其中x1,y1對(duì)應(yīng)一條曲線,x2,y2對(duì)應(yīng)另一條曲線。橫坐標(biāo)的標(biāo)度相同,縱坐標(biāo)有兩個(gè),左縱

37、坐標(biāo)用于x1,y1數(shù)據(jù)對(duì),右縱坐標(biāo)用于x2,y2數(shù)據(jù)對(duì)。3具有兩個(gè)縱坐標(biāo)標(biāo)度的圖形機(jī)電系統(tǒng)仿真技術(shù)105x=0:pi/100:2*pi;y1=0.2*exp(-0.5*x).*cos(4*pi*x);y2=2*exp(-0.5*x).*cos(pi*x);plotyy(x,y1,x,y2);例3-5:用不同標(biāo)度在同一坐標(biāo)內(nèi)繪制曲線和 。程序如下:機(jī)電系統(tǒng)仿真技術(shù)106hold on/off命令控制是保持原有圖形還是刷新原有圖形,不帶參數(shù)的hold命令在兩種狀態(tài)之間進(jìn)行切換。4圖形保持機(jī)電系統(tǒng)仿真技術(shù)107例3-5:采用圖形保持,在同一坐標(biāo)內(nèi)繪制曲線 和 程序如下:x=0:pi/100:2*pi

38、;y1=0.2*exp(-0.5*x).*cos(4*pi*x);plot(x,y1)hold onpausey2=2*exp(-0.5*x).*cos(pi*x);plot(x,y2);hold off機(jī)電系統(tǒng)仿真技術(shù)1083.1.3 設(shè)置曲線樣式1、線條和顏色控制符機(jī)電系統(tǒng)仿真技術(shù)109MATLAB基本繪圖 (圖像標(biāo)注)例3-6t=0: 0.01*pi:2*pi; plot(t,sin(t);title(0到2的正弦曲線,FontSize,16); ylabel(sin(t),FontSize,14);xlabel(t=0到2,FontSize,14);text(pi,sin(pi),bulletleftarrowsin(t)=0,FontSize,10); gtext(bullet最小值sin(t)=-1);機(jī)電系統(tǒng)仿真技術(shù)110MATLAB基本繪圖 (多圖重疊)有的時(shí)候我們需要將多個(gè)曲線畫(huà)在同一幅圖上便于比較。這時(shí)我們可以使用hold on 和hold off函數(shù)來(lái)完成。比如:plot(x,y);hold on ;plot(a,b);hold off; 就將曲線x-y和a-b畫(huà)在同一坐標(biāo)下了。 機(jī)電系統(tǒng)仿真技術(shù)111畫(huà)橢圓a = 0:pi/50:2*pi; X = cos(a)*3; %參數(shù)方程Y = sin(a)*2;plo

溫馨提示

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

最新文檔

評(píng)論

0/150

提交評(píng)論