Simulink入門教程[共82頁]_第1頁
Simulink入門教程[共82頁]_第2頁
Simulink入門教程[共82頁]_第3頁
Simulink入門教程[共82頁]_第4頁
Simulink入門教程[共82頁]_第5頁
已閱讀5頁,還剩77頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、Simulink快速入門啟動Simulink軟件要構(gòu)建模型,可以使用 SimulinkEditor 和 Library Browser。啟動MATLAB軟件啟動 Simulink 之前,請先啟動 MATLAB。請參閱啟動和關(guān)閉(MATLAB)。配置MATLAB以啟動Simulink您在 MATLAB 會話中打開第一個(gè)模型時(shí)需要的時(shí)間比打開后續(xù)模型長,因?yàn)槟J(rèn)情況下,MATLAB 會在打開第一個(gè)模型時(shí)啟動 Simulink。這種即時(shí)啟動 Simulink 的方法可以縮短 MATLAB 啟動時(shí)間,避免不必要的系統(tǒng)內(nèi)存占用。要快速打開第一個(gè)模型,您可以配置 MATLAB,在它啟動時(shí)同時(shí)啟動 Simu

2、link。要啟動 Simulink 而不打開模型或 Library Browser,請使用start_simulink。根據(jù) MATLAB 的啟動方式,恰當(dāng)使用此命令: 在 MATLABstartup.m文件中 在操作系統(tǒng)命令行中,使用matlab命令和-r開關(guān)例如,要在運(yùn)行 MicrosoftWindows操作系統(tǒng)的計(jì)算機(jī)上啟動 MATLAB 時(shí)啟動 Simulink,請創(chuàng)建具有以下目標(biāo)的桌面快捷方式:matlabrootbinwin64matlab.exe -r start_simulink在 Macintosh 和Linux計(jì)算機(jī)上,可在啟動 MATLAB 時(shí)使用以下命令啟動 Simul

3、ink 軟件:matlab -r start_simulink打開SimulinkEditor要打開 Simulink Editor,您可以: 創(chuàng)建一個(gè)模型。在 MATLAB 的Home選項(xiàng)卡上,點(diǎn)擊Simulink并選擇一個(gè)模型模板?;蛘?,如果您已經(jīng)打開了 Library Browser,請點(diǎn)擊New Model按鈕。有關(guān)創(chuàng)建模型的其他方法,請參閱創(chuàng)建模型。 打開一個(gè)現(xiàn)有模型。要打開最近使用的模型,請?jiān)?MATLABHome選項(xiàng)卡上點(diǎn)擊Simulink。或者,如果您知道要打開的模型的名稱,可在 MATLAB 命令提示符下輸入名稱,例如vdp。有關(guān)打開模型的其他方法,請參閱打開模型。提示Sim

4、ulink Editor 會在 MATLAB 桌面的前端打開。要將 MATLAB 桌面移動到前端,請?jiān)?Simulink Editor 中選擇ViewMATLAB Desktop。打開 Library Browser通過以下方式之一從 MATLAB 中打開 Simulink Library Browser: 在主頁選項(xiàng)卡上,點(diǎn)擊Simulink并選擇一個(gè)模型模板。在新模型中,點(diǎn)擊Library Browser按鈕。 在命令提示符下,輸入slLibraryBrowser。Library Browser 隨即打開,并顯示您系統(tǒng)中的 Simulink 模塊庫的樹視圖。當(dāng)您點(diǎn)擊樹視圖中的庫時(shí),右側(cè)窗格

5、將顯示庫的內(nèi)容。注意除了 Simulink 庫之外,Simulink 還附帶了模塊庫。這些庫支持對附帶的示例模型(包含這些庫中的模塊)進(jìn)行仿真。但是,要生成代碼或修改這些模塊,必須擁有相關(guān)的產(chǎn)品許可證。在SimulinkEditor 中構(gòu)建和編輯模型 啟動Simulink并創(chuàng)建一個(gè)新模型 向模型中添加模塊 對齊和連接模塊 設(shè)置模塊參數(shù) 添加更多模塊 建立分支連接 組織模型 對模型進(jìn)行仿真并查看結(jié)果 修改模型本示例介紹創(chuàng)建模型、向模型中添加模塊、連接模塊以及仿真模型的基礎(chǔ)知識。您還將學(xué)習(xí)如何使用子系統(tǒng)組織模型、為模型的組件命名以及修改模型。啟動Simulink并創(chuàng)建一個(gè)新模型1. 在 MATLA

6、B主頁選項(xiàng)卡中,點(diǎn)擊Simulink。2. 在 SimulinkStart Page 上,點(diǎn)擊Blank Model模板。將在 Simulink Editor 中打開一個(gè)基于Blank Model模板的新模型。3. 打開 Library Browser,以訪問創(chuàng)建模型需要的模塊。在 Simulink Editor 中,點(diǎn)擊Library Browser按鈕。向模型中添加模塊一個(gè)模型至少要接收一個(gè)輸入信號,對該信號進(jìn)行處理,然后輸出結(jié)果。在 Library Browser 中,Sources 庫包含代表輸入信號的模塊。Sinks 庫包含用于捕獲和顯示輸出的模塊。其他庫包含可用于各種用途(如數(shù)學(xué)運(yùn)

7、算)的模塊。在此基本模型中,輸入信號為正弦波,執(zhí)行的操作為增益運(yùn)算(通過乘法增加信號值),結(jié)果輸出到一個(gè) Scope 窗口。嘗試使用不同的方法來瀏覽庫,并向您的模型中添加模塊。1. 打開 Sources 庫。在 Library Browser 的樹視圖中,點(diǎn)擊Sources庫。2. 在右窗格中,將光標(biāo)懸停在Sine Wave模塊上,以查看描述其用途的工具提示。3. 使用上下文菜單在模型中添加一個(gè)模塊。右鍵點(diǎn)擊該模塊并選擇Add block to model untitled。(要了解該模塊的詳細(xì)信息,請從上下文菜單中選擇Help。)4. 通過拖放操作在模型中添加一個(gè)模塊。在庫樹視圖中,點(diǎn)擊Ma

8、th Operations。在 Math Operations 庫中,找到Gain模塊,然后將其拖到模型中Sine Wave模塊的右側(cè)。5. 在庫樹視圖中,點(diǎn)擊Simulink,查看以圖標(biāo)形式顯示在右窗格中的子庫。此視圖是導(dǎo)航庫結(jié)構(gòu)的另一種方法。雙擊Sinks庫圖標(biāo)。6. 在 Sinks 庫中,找到Scope模塊,然后使用上下文菜單或通過拖放操作將其添加到模型中?,F(xiàn)在,您的模型如下圖所示。對齊和連接模塊可將模塊連接起來,在模型元素之間建立能夠使模型正常工作所需要的關(guān)系。當(dāng)您根據(jù)模塊之間的交互方式對齊模塊后,模型將更加一目了然??旖莘绞娇梢詭椭鷮R和連接模塊。1. 拖動 Gain 模塊,使其與

9、 Sine Wave 模塊對齊。當(dāng)兩個(gè)模塊水平對齊時(shí),將出現(xiàn)一條對齊參考線。釋放模塊,此時(shí)將出現(xiàn)一個(gè)藍(lán)色箭頭,作為建議連接線的預(yù)覽。2. 要接受該連接線,請點(diǎn)擊箭頭的末端。此時(shí)參考線將變成一條實(shí)線。3. 采用同樣的方法,將 Scope 模塊與 Gain 模塊對齊并連接起來。提示可以使用DiagramArrange菜單查看其他對齊方式選項(xiàng)。設(shè)置模塊參數(shù)您可以設(shè)置大多數(shù)模塊上的參數(shù)。參數(shù)可以幫助您指定模塊如何在模型中工作。您可以使用默認(rèn)值,也可以根據(jù)需要設(shè)置值??梢允褂?Property Inspector 設(shè)置參數(shù)。也可以雙擊大多數(shù)模塊,使用模塊對話框來設(shè)置參數(shù)。要了解何時(shí)使用每一種方式,請參閱

10、設(shè)置屬性和參數(shù)。在模型中,您可以在Sine Wave模塊中設(shè)置幅值,在Gain模塊中設(shè)置增益值。1. 顯示 Property Inspector。選擇ViewProperty Inspector。2. 選擇Sine Wave模塊。3. 在 Property Inspector 中,將Amplitude參數(shù)設(shè)置為2。4. 選擇Gain模塊并將Gain參數(shù)設(shè)置為3。該值將顯示在模塊上。添加更多模塊假設(shè)您要再執(zhí)行一個(gè)增益運(yùn)算,但這次針對的是Sine Wave模塊的輸出絕對值。為了實(shí)現(xiàn)此目的,需要添加一些模塊,請嘗試通過不同的方式找到庫中的模塊并添加到模型中。1. 如果知道要添加的模塊的名稱,可以使用

11、快捷方式。點(diǎn)擊模型中要添加模塊的位置,然后鍵入模塊名稱(在本例中為 Gain)。此時(shí)將顯示一個(gè)可能的模塊列表。2. 點(diǎn)擊模塊名稱,或者在突出顯示模塊名稱后按Enter。如果它不是列表中的第一個(gè)模塊,您可以使用箭頭鍵突出顯示模塊名稱。使用此方法可以在出現(xiàn)藍(lán)色放大鏡的任何位置添加模塊,例如在您繪制信號線時(shí)。3. 許多模塊會顯示要求您為某個(gè)模塊參數(shù)輸入值的提示。Gain模塊會提示您輸入Gain值。鍵入3并按Enter。每增加一個(gè)模塊實(shí)例,名稱中的數(shù)字就會增加 1,例如 Gain1、Gain2 等。4. 在模型中添加一個(gè)Abs模塊。假定您不知道模塊在哪個(gè)庫中,也不知道模塊的完整名稱。這種情況下,可以使

12、用 Library Browser 中的搜索框進(jìn)行搜索。在搜索框中輸入abs并按Enter。當(dāng)您找到 Abs 模塊后,將其添加到 Gain1 模塊的左側(cè)。5. 添加另一個(gè) Scope 模塊。您可以右鍵點(diǎn)擊并拖動現(xiàn)有的 Scope 模塊為其創(chuàng)建一個(gè)副本,或使用EditCopy和EditPaste。下圖顯示了您的模型的當(dāng)前狀態(tài)。注意當(dāng)您按照數(shù)字順序?yàn)槟P椭械哪K命名時(shí)(例如 Gain1、Gain2 等),復(fù)制和粘貼操作將按照 ASCII 字符的標(biāo)準(zhǔn)排序約定生成模塊名稱。這種排序方法可能會導(dǎo)致模塊名稱中出現(xiàn)一串難以理解的數(shù)字。如果編號方案對您很重要,請為模塊編號,使復(fù)制和粘貼操作生成的模塊名稱遵循常

13、見的閱讀順序。為此,請?jiān)谀K名稱中使用前導(dǎo)零,例如 Gain001、Gain002 等。建立分支連接第二個(gè)增益運(yùn)算的輸入是正弦波的絕對值。要使用一個(gè)Sine Wave模塊作為兩個(gè)增益運(yùn)算的輸入,需要從Sine Wave模塊輸出信號上創(chuàng)建一條分支。1. 對于模型中的第一組模塊,您使用了水平對齊參考線幫助您對齊和連接模塊。您還可以使用參考線垂直對齊模塊。將 Scope1 模塊拖動到 Scope 模塊下面并與之對齊。當(dāng)垂直對齊參考線顯示兩個(gè)模塊已對齊時(shí),釋放模塊。2. 按下圖所示對齊并連接 Abs 和 Gain1 模塊。3. 從 Sine Wave 模塊的輸出端口創(chuàng)建一條連接到 Abs 模塊的分支線

14、。當(dāng)光標(biāo)懸停在 Sine Wave 模塊的輸出信號線上時(shí),按住Ctrl鍵并向下拖動。拖動分支線,直到末端靠近 Abs 模塊為止。4. 向 Abs 模塊拖動,直到分支線連接到該模塊。根據(jù)需要移動頂點(diǎn),以拉直該線。(頂點(diǎn)上出現(xiàn)一個(gè)圓圈。)您可以嘗試用其他方法來連接模塊: 拖動鼠標(biāo),從一個(gè)模塊的輸出向另一個(gè)模塊的輸入繪制一條連接。當(dāng)您的模塊已對齊(即不顯示參考線)時(shí),可以使用此方法。 選擇第一個(gè)模塊,然后按住Ctrl鍵并點(diǎn)擊要連接的模塊。當(dāng)您不希望模塊對齊時(shí),可以使用此方法。連接線根據(jù)需要拐彎以建立連接,如下圖所示。注意您可以選擇多個(gè)模塊,將它們連接到一個(gè)具有多個(gè)輸入端口的模塊(例如,總線)。要從線

15、段逼近對角線,請按住Shift鍵并拖動頂點(diǎn)。 提示要改善信號線的形狀,請選擇信號線,然后從省略號菜單中選擇Autoroute Line。如果模型元素之間存在更好的路線,則會重新繪制信號線。組織模型您可以將模塊組合成子系統(tǒng),并為模塊、子系統(tǒng)和信號添加標(biāo)簽。有關(guān)子系統(tǒng)的詳細(xì)信息,請參閱創(chuàng)建子系統(tǒng)。1. 拖動鼠標(biāo),在 Abs 和 Gain1 模塊周圍繪制一個(gè)選擇框。2. 將光標(biāo)移動到選擇框右下角出現(xiàn)的省略號上。從工具欄中選擇Create Subsystem。模型中將出現(xiàn)一個(gè)子系統(tǒng)模塊,代替Abs和Gain1模塊。要調(diào)整子系統(tǒng)模塊的大小,使其最適合您的模型,請拖動模塊句柄。3. 為子系統(tǒng)指定有意義的名

16、稱。雙擊模塊名稱并鍵入Absolute Value。4. 雙擊 Absolute Value 子系統(tǒng)將其打開。提示要使用 Explorer Bar 來導(dǎo)航模型層次結(jié)構(gòu),請右鍵點(diǎn)擊模塊并選擇Open in New Tab。該子系統(tǒng)包含您選擇作為子系統(tǒng)基礎(chǔ)的 Abs 和 Gain1 模塊。它們依次連接到兩個(gè)新模塊:In1(Inport 模塊)和 Out1(Outport 模塊)。Inport 和 Outport 模塊對應(yīng)于子系統(tǒng)的輸入端口和輸出端口。5. 點(diǎn)擊 Simulink Editor 中的Up to Parent按鈕返回到模型頂層。6. 您可以為任何信號命名。雙擊信號并鍵入名稱即可。例如,

17、雙擊來自 Gain 模塊的信號,然后鍵入My Signal。雙擊信號線而不是畫布的空白區(qū)域,否則將創(chuàng)建一個(gè)單獨(dú)的文本元素(注釋)。有關(guān)處理信號名稱的其他方法,請參閱信號名稱和標(biāo)簽操作。下圖顯示了您創(chuàng)建子系統(tǒng)、命名子系統(tǒng)并命名信號之后的模型。提示要查看其他調(diào)整大小和對齊選項(xiàng),請使用DiagramArrange菜單。對模型進(jìn)行仿真并查看結(jié)果1. 您可以使用SimulationRun命令 (Ctrl+T) 或Run按鈕對模型進(jìn)行仿真。您可以使用自己偏好的方法對模型進(jìn)行仿真。在本示例中,仿真運(yùn)行 10 秒,此為默認(rèn)設(shè)置。2. 雙擊兩個(gè) Scope 模塊將其打開,然后查看結(jié)果。在每個(gè) Scope 中,點(diǎn)

18、擊Autoscale按鈕以查看完整信號。下圖顯示了兩個(gè)結(jié)果。在第二個(gè)圖中,不出所料,正弦波的絕對值始終為正。 修改模型您可以在現(xiàn)有信號上添加模塊、從模型中移除模塊以及重新繪制連接線。要修改此模型,請為模型中兩個(gè)分支的輸入添加一個(gè)偏置。再將其中一個(gè) Scope 替換為另外一種信宿。對于某些模塊,從其他模塊上連接一條線會在該模塊上添加一個(gè)輸入端口或輸出端口。例如,當(dāng)您為子系統(tǒng)添加連接線時(shí),子系統(tǒng)上會出現(xiàn)一個(gè)端口。產(chǎn)生端口的其他模塊包括Bus Creator、Scope以及Add、Sum和Product模塊。有關(guān)詳細(xì)信息,請參閱Automatic Port Creation: Add inports

19、 and outports to blocks when routing signals。1. 在模型中添加一個(gè) Bias 模塊,并將Bias參數(shù)設(shè)置為2。2. 將該模塊拖動到 Sine Wave 模塊后面、分支線前面的信號線上。如果您需要為該模塊騰出空間,請將 Sine Wave 模塊向左拖動,或者拖動分支線的末端,將分支線向右移動。當(dāng)您將模塊拖動到信號線上時(shí),模塊的兩側(cè)將與信號線連接起來。當(dāng)您對位置感到滿意時(shí),釋放模塊。3. 移除 Scope 模塊。如果要斷開 Scope 模塊與模型的連接,但不想將其刪除,請按住Shift鍵并拖動該模塊。使用Edit菜單命令或鍵盤按鍵剪切或刪除此模塊。斷開

20、的連接線顯示為紅色點(diǎn)線。提示當(dāng)您刪除具有一個(gè)輸入端口和一個(gè)輸出端口的模塊時(shí),斷開的連接線之間會出現(xiàn)提示。點(diǎn)擊該提示可將信號連接起來。4. 向模型中添加一個(gè)To Workspace模塊,并將其放在斷開的連接線的末端。To Workspace模塊將結(jié)果輸出給 MATLAB 工作區(qū)中的一個(gè)變量。5. 再向子系統(tǒng)中添加一個(gè)輸入。向模型中添加一個(gè)Sine Wave模塊,并將幅值設(shè)置為5。將其放在子系統(tǒng)模塊的左側(cè)。6. 拖動鼠標(biāo)從新的Sine Wave模塊向子系統(tǒng)的左側(cè)繪制一條線。模塊上將出現(xiàn)一個(gè)新端口 In2。7. 再向子系統(tǒng)中添加一個(gè)輸出。向模型中添加一個(gè)To Workspace模塊,并將其放在子系統(tǒng)

21、的右側(cè)。拖動鼠標(biāo)從輸入端口向子系統(tǒng)的右側(cè)繪制一條線。模塊上將出現(xiàn)一個(gè)新端口 Out2。8. 打開子系統(tǒng)并將 Out1 模塊重命名為 Scope。將 Out2 模塊重命名為 Workspace。向模型添加一個(gè)Manual Switch模塊。調(diào)整大小并按下圖所示進(jìn)行連接。在 Gain 模塊后繪制分支信號,以將輸出指向To Workspace模塊。然后,返回到模型的頂層。下圖顯示了當(dāng)前模型。9. 對模型進(jìn)行仿真。o simout和simout1變量出現(xiàn)在 MATLAB 工作區(qū)中。您可以雙擊每個(gè)變量以查看結(jié)果。o 如果要使用第二條正弦波作為子系統(tǒng)算法的輸入,請打開子系統(tǒng)并雙擊開關(guān)。輸入更改為 In2。

22、再次進(jìn)行仿真。提示要在使用和不使用Bias模塊的模型仿真效果之間切換,請右鍵點(diǎn)擊Bias模塊,然后選擇Comment Through。此模塊仍然在模型中,但不影響運(yùn)算。右鍵點(diǎn)擊Bias模塊,然后選擇Uncomment即可啟用此模塊。Comment Out命令會注釋掉模塊的輸出信號,因此不傳遞信號數(shù)據(jù)。請使用上述每個(gè)命令進(jìn)行嘗試,以便更好地理解它們的效果。創(chuàng)建模型和現(xiàn)有打開模型 創(chuàng)建模型 使用自定義設(shè)置創(chuàng)建新模型 打開模型 在打開模型時(shí)加載變量 打開使用不同字符編碼的模型 Simulink模型文件類型創(chuàng)建模型1. 在 MATLAB主頁選項(xiàng)卡中,點(diǎn)擊Simulink。2. 在 Simulink首頁

23、,選擇一個(gè)模板或搜索模板。模型模板是應(yīng)用常見建模方法的起點(diǎn)。它們可以幫助您重用設(shè)置和模塊配置,并與他人分享知識。使用模型和工程模板來應(yīng)用最佳實(shí)踐,并充分利用以前的建模解決方案。點(diǎn)擊模板標(biāo)題以閱讀其說明。要定位不在 MATLAB 搜索路徑中的模板,請點(diǎn)擊Open。模型模板的擴(kuò)展名為.sltx。3. 選擇您需要的模板后,點(diǎn)擊Create Model。要使用模板而不閱讀說明,請點(diǎn)擊模板圖像?;蛘甙碈trl+N以使用默認(rèn)模板。要設(shè)置默認(rèn)模板,請參閱使用自定義設(shè)置創(chuàng)建新模型。此時(shí)將在 Simulink Editor 中打開一個(gè)使用模板設(shè)置和內(nèi)容的新模型。有關(guān)后續(xù)步驟,請參閱在 Simulink Edit

24、or 中構(gòu)建和編輯模型。如果內(nèi)置模板不能滿足您的需要,請嘗試在Examples選項(xiàng)卡上搜索,也可以自行創(chuàng)建模板。請參閱Create a Template from a Model。在Examples選項(xiàng)卡上,輸入搜索詞以查找感興趣的示例標(biāo)題和描述,或者點(diǎn)擊產(chǎn)品名稱旁邊的View All,以打開網(wǎng)絡(luò)上的更多示例。使用自定義設(shè)置創(chuàng)建新模型您可以為所有新模型指定一個(gè)模型模板。1. 使用所需的配置設(shè)置和模塊創(chuàng)建一個(gè)模型,然后將該模型導(dǎo)出到模板中。請參閱Create a Template from a Model。2. 要在每個(gè)新模型中重用這些設(shè)置,請使用 Simulink Start Page 或Si

25、mulink.defaultModelTemplate函數(shù)將新模板設(shè)置為默認(rèn)的模型模板。在 Start Page 上,點(diǎn)擊模板標(biāo)題以展開其說明,然后點(diǎn)擊Create Model旁邊的向下箭頭并選擇Set As Default。設(shè)置默認(rèn)的模型模板后,每個(gè)新模型都將使用該模板,例如,當(dāng)您按Ctrl+N、使用新模型按鈕或使用new_system時(shí),都會使用該模板。在 Simulink Editor 中,當(dāng)您選擇FileNewMyDefaultTemplateName時(shí),默認(rèn)模板名稱位于列表的頂部。默認(rèn)模板在 Start Page 上顯示一個(gè)標(biāo)記。打開模型打開模型時(shí),模型將加載到內(nèi)存中并顯示在 Sim

26、ulink Editor 中。使用以下方式之一: 在 MATLAB主頁選項(xiàng)卡中,點(diǎn)擊Simulink。在 Simulink Start Page 上,從列表中選擇一個(gè)最近使用的模型或工程,或點(diǎn)擊Open。 在 Simulink Editor 中,選擇FileOpen Recent,然后選擇一個(gè)最近使用過的模型。 在 MATLAB 命令提示符下,輸入不帶文件擴(kuò)展名的模型名稱,例如vdp。該模型必須在當(dāng)前文件夾或 MATLAB 搜索路徑中。 在 Simulink Library Browser 中,點(diǎn)擊Open model or library按鈕。 使用“當(dāng)前文件夾”瀏覽器或您操作系統(tǒng)上的文件瀏

27、覽器打開模型。提示設(shè)置收藏夾可從 Start Page 輕松回到您喜歡的模型和工程。在 Simulink Start Page 上最近使用的文件列表中,您可以將文件添加到收藏夾中。然后,F(xiàn)avorites 列表將顯示在 Start Page 上最近使用的文件上方,以便您輕松重新打開自己喜歡的模型和工程。要清除 Start Page 上最近使用的文件列表,請?jiān)?MATLAB 中輸入:slhistory.clear注意要在舊版本的 Simulink 中打開在新版本中創(chuàng)建的模型,首先要將模型導(dǎo)出到舊版本。請參閱將模型導(dǎo)出到以前的 Simulink 版本。在打開模型時(shí)加載變量在構(gòu)建模型的過程中,有時(shí)您

28、需要為模型定義變量。例如,假設(shè)您有一個(gè)模型,其中包含一個(gè) Gain 模塊。您可以指定變量K作為增益,而不是在模塊上設(shè)置該值。使用這種方法時(shí),必須為要仿真的模型定義變量K。當(dāng)您打開模型時(shí),可以使用模型回調(diào)來加載變量。1. 在使用 Gain 模塊的模型中,將該模塊的Gain值設(shè)置為K。2. 在 MATLAB 腳本中定義變量。在 MATLAB 中,選擇新建腳本。在腳本中輸入您的變量定義:K=273. 將腳本另存為loadvar.m。4. 在模型中,打開 Property Inspector。選擇ViewProperty Inspector。如果未在模型頂層選擇任何內(nèi)容,可使用 Property In

29、spector 設(shè)置模型屬性。否則,請使用FileModel Properties。5. 在模型屬性的Callbacks部分,選擇PreLoadFcn作為您要定義的回調(diào)。在窗格中輸入loadvar。6. 保存模型。下次您打開該模型時(shí),PreloadFcn回調(diào)會將變量加載到 MATLAB 工作區(qū)中。有關(guān)回調(diào)的信息,請參閱針對自定義模型行為的回調(diào)。要以編程方式定義加載變量的回調(diào),請參閱打開模型時(shí)通過編程方式加載變量。打開使用不同字符編碼的模型如果您在使用不同編碼的 MATLAB 會話中打開使用特定字符集編碼的 MDL 文件,將會出現(xiàn)警告。例如,假設(shè)您在為Shift_JIS配置的 MATLAB 會話

30、中創(chuàng)建一個(gè) MDL 文件,然后在為US_ASCII配置的會話中打開它,此時(shí)就會出現(xiàn)警告。警告消息顯示當(dāng)前會話的編碼以及創(chuàng)建模型時(shí)所使用的編碼。SLX 文件不會發(fā)出警告,因?yàn)樗鼈兛梢源鎯θ魏尉幋a的字符。如果您遇到任何字符損壞的問題(例如,使用與模型關(guān)聯(lián)的 MATLAB 文件時(shí)),請嘗試使用slCharacterEncoding函數(shù)更改當(dāng)前 MATLAB 會話的字符編碼,使其與模型的字符編碼相匹配。Simulink 可以檢查模型中是否包含當(dāng)前區(qū)域設(shè)置不支持的字符。有關(guān)詳細(xì)信息,請參閱Check model for foreign characters和保存具有不同字符編碼的模型。Simulink模

31、型文件類型默認(rèn)情況下,您創(chuàng)建的新模型帶有.slx擴(kuò)展名。在 R2012b 之前創(chuàng)建的模型帶有.mdl擴(kuò)展名??删庉嫷哪P涂梢詭в?slx或.mdl擴(kuò)展名,具體取決于模型的創(chuàng)建時(shí)間以及是否進(jìn)行過轉(zhuǎn)換。請參閱將模型保存為 SLX 文件格式。.slxp和.mdlp擴(kuò)展名表示受保護(hù)的模型,不能打開和編輯。請參閱受保護(hù)模型。模型模板的擴(kuò)展名為.sltx。Simulink 庫還使用.slx擴(kuò)展名,但您不能對這些模型進(jìn)行仿真。要了解詳細(xì)信息,請參閱創(chuàng)建自定義庫。另請參閱Simulink.createFromTemplate|Simulink.defaultModelTemplate|Simulink.fin

32、dTemplates|open_system|simulink保存模型 如何判斷模型需要保存 保存模型 保存模型時(shí)會執(zhí)行哪些操作? 將模型保存為 SLX 文件格式 保存具有不同字符編碼的模型 將模型導(dǎo)出到以前的Simulink版本 從一個(gè)舊版本Simulink保存到另一個(gè)舊版本如何判斷模型需要保存要判斷模型是否需要保存,請查看 SimulinkEditor 的標(biāo)題欄。如果模型需要保存,標(biāo)題欄中的模型名稱旁邊會顯示一個(gè)星號(稱為修改標(biāo)志:*)。要通過編程方式確定模型是否需要保存,請使用模型參數(shù)Dirty。例如:if strcmp(get_param(gcs,Dirty),on)save_syst

33、em;end保存模型第一次保存模型時(shí),請?jiān)?Simulink Editor 中選擇FileSave。為模型文件提供位置和名稱。有關(guān)名稱的要求,請參閱模型名稱。要保存之前保存過的模型,請執(zhí)行以下操作: 要替代文件內(nèi)容,請?jiān)?Simulink Editor 中選擇FileSave。 要使用新名稱或在新位置保存模型,或者要從 MDL 更改為 SLX 格式,請?jiān)?Simulink Editor 中選擇FileSave As。注意有關(guān) SLX 格式的詳細(xì)信息,請參閱將模型升級到 SLX。 要將模型保存為與早期版本兼容的格式,請選擇FileExport Model toPrevious Version。請

34、參閱將模型導(dǎo)出到以前的 Simulink 版本。模型名稱模型文件名必須以字母開頭,可以包含字母、數(shù)字和下劃線。文件名不能為: 語言關(guān)鍵字(例如if、for、end) 保留名稱:simulink、sl、sf MATLAB軟件命令模型名稱中的字符總數(shù)不能超過某個(gè)最大值,通常為 63 個(gè)字符。要確定您的系統(tǒng)的最大值是否大于 63 個(gè)字符,請使用 MATLAB 中的namelengthmax命令。要了解當(dāng)您指定模型名稱時(shí) MATLAB 如何確定調(diào)用哪個(gè)函數(shù),請參閱函數(shù)優(yōu)先順序(MATLAB)。保存模型時(shí)會執(zhí)行哪些操作?Simulink 將模型(模塊圖)和模塊屬性保存在模型文件中。如果您指定了任何要在保

35、存前或保存后執(zhí)行的函數(shù),它們將按以下順序執(zhí)行:1. 先執(zhí)行所有模塊的PreSaveFcn回調(diào)例程,然后執(zhí)行模型的PreSaveFcn回調(diào)例程。2. Simulink 寫入模型文件。3. 執(zhí)行所有模塊PostSaveFcn回調(diào)例程,然后執(zhí)行模型PostSaveFcn。在保存過程中,Simulink 會維護(hù)一個(gè)臨時(shí)備份副本(名為modelname.bak),用于在發(fā)生錯(cuò)誤時(shí)還原。如果在保存時(shí),或者在保存過程中執(zhí)行任何回調(diào)時(shí)發(fā)生錯(cuò)誤,Simulink 會: 還原原始文件 將發(fā)生錯(cuò)誤之前保存的任何內(nèi)容寫入到名為modelname.err的文件中 發(fā)出一條錯(cuò)誤消息保存從 SLX 文件中加載的模型時(shí),原始

36、 SLX 文件必須依然存在。Simulink 對 SLX 文件執(zhí)行增量加載和保存,因此,如果保存時(shí)原始文件不存在,Simulink 將發(fā)出警告,告訴您它無法完全重新構(gòu)造該文件。將模型保存為 SLX 文件格式將新模型另存為 SLX默認(rèn)情況下,Simulink 將新模型和庫保存為 SLX 格式,文件擴(kuò)展名為.slx。SLX 是符合開放打包約定 (OPC) 互操作性標(biāo)準(zhǔn)的壓縮包。SLX 使用 UnicodeUTF-8 以 XML 和其他國際格式存儲模型信息。將 Simulink 模型保存為 SLX 格式: 通常可以減小文件大?。ㄅc MDL 格式相比)。MDL 與 SLX 之間減小的文件大小因模型而異

37、。 解決以前的版本中加載和保存包含韓語和中文字符的 MDL 文件時(shí)出現(xiàn)的一些問題。 啟用增量加載和保存。Simulink 通過只加載需要的模型部分并且只保存修改的模型部分,來優(yōu)化性能和內(nèi)存使用。您可以使用 Simulink 預(yù)設(shè)File format for new models and libraries,指定用來保存新模型和庫的文件格式。將模型升級到 SLX如果您將 MDL 文件升級到 SLX 文件格式,文件中包含的信息與 MDL 文件相同,并且您始終擁有一個(gè)備份文件。當(dāng)前存在的適用于模型的所有功能和 API,例如get_param和set_param命令,在使用 SLX 文件格式時(shí)依然可

38、用。如果您將 MDL 文件升級到 SLX 文件格式而沒有更改模型名稱或位置,Simulink 將通過重命名 MDL(如果可寫)來創(chuàng)建備份文件。如果您使用FileSave來保存現(xiàn)有 MDL 文件,Simulink 將保留文件的當(dāng)前格式,并以 MDL 格式保存您的模型。要將現(xiàn)有 MDL 文件保存為 SLX 文件格式,請執(zhí)行以下操作:1. 選擇FileSave as。2. 保留Save as type的默認(rèn)值 SLX,然后點(diǎn)擊Save。Simulink 將以 SLX 格式保存您的模型,并通過將 MDL(如果可寫)重命名為mymodel.mdl.releasename(例如mymodel.mdl.R2

39、010b)來創(chuàng)建備份文件。此外,還可以使用save_system:save_system mymodel mymodel.slx此命令將創(chuàng)建mymodel.slx,如果現(xiàn)有文件mymodel.mdl可寫,則將其重命名為mymodel.mdl.releasename。SLX 文件的優(yōu)先級高于 MDL 文件,因此,如果存在兩個(gè)同名文件,而您沒有指定文件擴(kuò)展名,則將加載 SLX 文件。Simulink Projects 可以幫助您將文件遷移到 SLX。要查看示例,請參閱Upgrade Model Files to SLX and Preserve Revision History。小心如果您使用第三

40、方源代碼管理工具,請務(wù)必將模型文件擴(kuò)展名.slx注冊為二進(jìn)制文件格式。否則,當(dāng)您提交 SLX 文件時(shí),這些第三方工具可能會導(dǎo)致文件損壞。使用 SLX 時(shí)可能存在兼容性問題的操作發(fā)生的情況操作硬編碼引用帶有.mdl擴(kuò)展名的文件名。腳本找不到或無法處理用新文件擴(kuò)展名.slx保存的模型。確保您的代碼兼容.mdl和.slx擴(kuò)展名。使用函數(shù)(如which和what),而不是文件名。第三方源代碼管理工具默認(rèn)情況下采用文本格式。提交二進(jìn)制格式的 SLX 文件可能導(dǎo)致文件被第三方工具所破壞。使用第三方源代碼管理工具將.slx注冊為二進(jìn)制文件格式。建議對.mdl文件也如此處理。請參閱Register Model

41、 Files with Source Control Tools。更改字符編碼。某些情形已得到改進(jìn),例如,SLX 解決了以前的版本中加載和保存包含韓語和中文字符的 MDL 文件時(shí)出現(xiàn)的一些問題。但是,在不同的區(qū)域設(shè)置之間共享模型依然存在問題。請參閱SLX 文件和字符編碼。MDL 和 SLX 文件內(nèi)容的格式可能隨時(shí)更改。要處理模型數(shù)據(jù),請使用文檔中介紹的 API(例如get_param、find_system和Simulink.MDLInfo)。保存具有不同字符編碼的模型 MDL 文件和字符編碼 SLX 文件和字符編碼MDL 文件和字符編碼當(dāng)您保存模型時(shí),將使用當(dāng)前字符編碼方式對模型文件中存儲的

42、文本進(jìn)行編碼。對于 MDL 文件,如果您原來保存模型時(shí)使用的編碼方式與當(dāng)前編碼方式不同,可能會導(dǎo)致模型損壞。如果您更改字符編碼方式,可能會引入當(dāng)前編碼方式無法表示的字符。如果是這種情況,模型將另存為model.mdl.err(其中model是模型名稱),而保留原始模型文件不變。Simulink 還會顯示一條錯(cuò)誤消息,指出無法表示的第一個(gè)字符所在的行號和列號。要修復(fù)此錯(cuò)誤,請執(zhí)行以下操作之一: 以 SLX 格式保存模型(請參閱將模型保存為 SLX 文件格式)。 找到這些字符并逐個(gè)刪除。1. 使用文本編輯器,在.err文件中找到保存時(shí)顯示的錯(cuò)誤消息中指示的位置處的字符。2. 在打開的模型中找到并刪

43、除對應(yīng)的字符,然后重新保存模型。3. 重復(fù)此過程,直到您能夠成功保存模型,而不發(fā)生任何錯(cuò)誤為止。模型的原始編碼方式也許能夠顯示您在當(dāng)前會話中所做的所有文本更改,但有可能不正確。例如,假設(shè)您在會話中打開一個(gè)模型,模型的原始編碼方式為 A,會話的當(dāng)前編碼方式為 B。再假設(shè)您編輯了該模型,引入一個(gè)在 A 和 B 中具有不同編碼的字符,然后保存模型。進(jìn)一步假設(shè)字符 x 在 B 中的編碼與字符 y 在 A 中的編碼相同,假如您在 B 有效時(shí)在模型中插入了字符 x,保存模型,然后使用 A 重新打開模型,則 Simulink 軟件會將字符 x 顯示為 y。為了提醒您發(fā)生此類損壞的可能性,每當(dāng)您保存模型時(shí),如

44、果模型的當(dāng)前編碼方式與原始編碼方式不同,但原始編碼方式可以對保存到模型文件中的所有字符進(jìn)行編碼(但可能不正確)時(shí),就會顯示警告消息。SLX 文件和字符編碼將 Simulink 模型保存為 SLX 格式通??梢詼p小文件大小,并解決在以前的版本中加載和保存包含韓語和中文字符的 MDL 文件時(shí)出現(xiàn)的一些問題。選擇模型文件格式時(shí)的注意事項(xiàng): 如果您要加載并保存包含韓語或中文字符的模型,請使用 SLX 如果您希望通過壓縮模型文件而獲益,請使用 SLX 不管您使用 SLX 還是 MDL,如果模型中包含當(dāng)前區(qū)域設(shè)置不支持的字符,Simulink 都能檢測出來并發(fā)出警告。對于 SLX,您可以使用 Model

45、Advisor 來幫助您,請參閱Check model for foreign characters。將模型導(dǎo)出到以前的Simulink版本您可以將使用最新版本的 Simulink 軟件創(chuàng)建的模型導(dǎo)出(保存)為舊版本軟件使用的格式。例如,要與只能訪問舊版本 Simulink 產(chǎn)品的同事共享模型時(shí)。要將模型導(dǎo)出為舊版本格式,請執(zhí)行以下操作:1. 在 Simulink Editor 中,選擇FileSave。此操作用最新版本的 Simulink 保存一個(gè)副本。這一步可以避免兼容性問題。2. 在 Simulink Editor 中,選擇FileExport Model toPrevious Vers

46、ion。此時(shí)將顯示 Export to Previous Version 對話框。3. 在此對話框中,從Save as type列表中選擇要將模型導(dǎo)出到的舊版本。此列表支持過去 7 年的版本。4. 點(diǎn)擊Save按鈕。當(dāng)您將模型導(dǎo)出為舊版本格式時(shí),不管模型中是否包含在該版本之后引入的模塊和功能,都會以舊版本格式保存模型。如果模型中包含的模塊或使用的功能是在舊版本之后引入的,則當(dāng)您在舊版本 Simulink 軟件中運(yùn)行模型時(shí),可能無法得到正確的結(jié)果。而且,Simulink 會將舊版本之后的模塊轉(zhuǎn)換為空的黃色封裝Subsystem模塊。例如,如果您使用save_system將模型導(dǎo)出到版本 R200

47、7b,而模型中包含Polynomial模塊,則 Simulink 會將Polynomial模塊轉(zhuǎn)換為空的黃色封裝Subsystem模塊。Simulink 還會從模型中刪除任何不支持的功能。請參閱save_system。從一個(gè)舊版本Simulink保存到另一個(gè)舊版本您可以打開在舊版本 Simulink 中創(chuàng)建的模型,并將其導(dǎo)出到另一個(gè)舊版本。如果您需要將模型從一個(gè)舊版本保存到另一個(gè)舊版本,為了防止出現(xiàn)兼容性問題,請按以下步驟操作。1. 使用最新版本的 Simulink 打開用舊版本創(chuàng)建的模型。2. 在您進(jìn)行任何更改之前,通過選擇FileSave,用最新版本保存模型。用最新版本保存模型之后,您可以

48、根據(jù)需要進(jìn)行更改并重新保存。3. 通過選擇FileExport Model toPrevious Version,將模型保存為舊版本 Simulink 格式。4. 啟動舊版本 Simulink,并使用它打開您導(dǎo)出到該版本的模型。5. 通過選擇FileSave,將模型保存為舊版本格式。現(xiàn)在即可在舊版本 Simulink 中使用該模型了,就好像它是在該版本中創(chuàng)建的一樣。另請參閱 Simulink 預(yù)設(shè),它們可以幫助您處理舊版本的模型: Do not load models created with a newer version of Simulink Save backup when overw

49、riting a file created in an older version of Simulink另請參閱save_system創(chuàng)建簡單模型 本教程的模型概述 在SimulinkEditor 中打開新模型 打開SimulinkLibrary Browser 瀏覽或搜索特定模塊 向模型中添加模塊 移動模塊和調(diào)整模塊大小 模塊連接 在模塊之間繪制信號線 繪制帶分支的信號線 定義配置參數(shù) 運(yùn)行仿真 觀察仿真結(jié)果本教程的模型概述您可以使用 Simulink對系統(tǒng)建模,然后仿真該系統(tǒng)的動態(tài)行為。本教程中創(chuàng)建簡單模型所使用的基本方法也適用于創(chuàng)建更復(fù)雜的模型。要?jiǎng)?chuàng)建這個(gè)簡單模型,您需要四個(gè) Simu

50、link 模塊。模塊是一種模型元素,用來定義系統(tǒng)的數(shù)學(xué)運(yùn)算并提供輸入信號: Sine Wave- 為模型生成輸入信號。 Integrator- 處理輸入信號。 Bus Creator- 將多個(gè)信號合并為一個(gè)信號。 Scope- 可視化和比較輸入信號與輸出信號。此模型的仿真過程就是將正弦波信號與余弦信號集成,然后在 Scope 窗口中隨原始信號一起顯示集成結(jié)果。在SimulinkEditor 中打開新模型使用 Simulink Editor 構(gòu)建模型。1. 啟動 MATLAB。從 MATLAB 工具條上,點(diǎn)擊Simulink按鈕。第一次打開 Simulink 時(shí),會出現(xiàn)短暫延遲。2. 點(diǎn)擊Bla

51、nk Model模板,然后點(diǎn)擊Create Model按鈕。Simulink Editor 隨即打開并顯示一個(gè)新的模塊圖。3. 選擇FileSave as。在File name文本框中,輸入您的模型的名稱,例如simple_model。點(diǎn)擊Save。模型使用文件擴(kuò)展名.slx進(jìn)行保存。打開SimulinkLibrary Browser從 Simulink Library Browser 中,可以搜索要在模型中使用的模塊。還可以創(chuàng)建新的 Simulink 模型、項(xiàng)目或 Stateflow圖。1. 從 Simulink Editor 工具欄上,點(diǎn)擊Simulink Library按鈕。2. 將 L

52、ibrary Browser 設(shè)置為始終在其他桌面窗口前端。在 Library Browser 工具欄中,選擇Stay on top按鈕。瀏覽或搜索特定模塊要瀏覽模塊庫,請從左窗格中選擇一個(gè) MathWorks產(chǎn)品,然后選擇一個(gè)功能區(qū)。要搜索所有可用的模塊庫,請輸入搜索詞。1. 搜索Sine Wave模塊。在瀏覽器工具欄的搜索框中輸入sine,然后按 Enter 鍵。Simulink 將在模塊庫中搜索名稱或說明中包含sine的模塊,然后顯示這些模塊。2. 獲取模塊的詳細(xì)信息。右鍵點(diǎn)擊某個(gè)模塊,然后選擇Help for the 。Help 瀏覽器隨即打開并顯示該模塊的參考頁。3. 查看模塊參數(shù)。

53、右鍵點(diǎn)擊某個(gè)模塊,然后選擇Block Parameters。模塊參數(shù)對話框隨即打開。向模型中添加模塊通過從 Simulink Library Browser 窗口將模塊拖動到 Simulink Editor,或者通過點(diǎn)擊模型并輸入搜索詞,即可構(gòu)建模型。要構(gòu)建簡單模型,請首先從 Simulink Library Browser 向 Simulink Editor 中復(fù)制模塊。1. 在 Simulink Library Browser 的左窗格中選擇Sources庫。2. 從右窗格中選擇Sine Wave模塊。3. 將Sine Wave模塊拖到 Simulink Editor 中。您的模型中將出現(xiàn)

54、Sine Wave模塊的副本,還有一個(gè)文本框用于輸入Amplitude參數(shù)的值。在文本框中輸入2。4. 按照下列步驟添加Scope模塊:a. 在模塊圖中點(diǎn)擊。b. 出現(xiàn)搜索圖標(biāo)后,鍵入scope,然后通過列表從Simulink/Sinks庫中選擇 “Scope”。5. 按照添加Sine Wave和Scope模塊所用的方法之一,將下列模塊添加到模型中。庫模塊Simulink/ContinuousIntegratorSimulink/Signal RoutingBus Creator6. 現(xiàn)在您的模型應(yīng)該具有簡單模型需要的模塊了。7.移動模塊和調(diào)整模塊大小在連接模型中的模塊之前,請將模塊輸入和輸出合理排列,以使信號連接盡可能直觀。1. 將Scope模塊移到Bus Creator模塊輸出之后。您可以采用下列任一方法:o 點(diǎn)擊并拖動模塊。o 選擇模塊,然后按鍵盤上的箭頭鍵。2. 移動模塊,直到您的模型看起來與下圖類似。模塊連接大多數(shù)模塊的

溫馨提示

  • 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)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論