版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、2021-11-10基于MATLAB的控制系統(tǒng)計算機輔助設計與仿真1第8章 Simulink動態(tài)仿真集成環(huán)境 1990年,MathWorks公司為MATLAB提供了新的控制系統(tǒng)模型輸入與仿真工具,并定名為Simulab,該工具很快就在控制工程界獲得廣泛的認可。但因其名字與當時比較著名的Simula軟件類似,所以1992年正式更名為Simulink。顧名思義,該軟件包含了兩個主要功能:Simu(仿真)和Link(連接)。 Simulink 是一個對動態(tài)系統(tǒng)進行建模、仿真和分析的軟件包,它支持連續(xù)系統(tǒng)、離散系統(tǒng)、連續(xù)離散混合系統(tǒng);線性系統(tǒng)、非線性系統(tǒng);時不變系統(tǒng)、時變系統(tǒng);單任務、多任務事件等。
2、Simulink與Matlab語言的主要區(qū)別在于,其與用戶交互接口是基于Windows的模型化圖形輸入,其結果是使用戶可以把更多的精力投入到系統(tǒng)模型的構建,而非語言的編程上。2021-11-10基于MATLAB的控制系統(tǒng)計算機輔助設計與仿真2 Simulink為用戶提供了圖形化的用戶界面(GUI),對于用方框圖表示的系統(tǒng),通過圖形界面,利用鼠標點擊和拖拉,即可建立系統(tǒng)的結構模型,它與用微分方程和差分方程建模的傳統(tǒng)仿真軟件包相比,具有更直觀、更方便、更靈活的優(yōu)點。 Simulink提供了一些按功能分類的基本的系統(tǒng)模塊,用戶只需要知道這些模塊的輸入/輸出及模塊的功能,而不必考察模塊內部是如何實現(xiàn)的
3、,通過調用這些模塊,將它們連接起來就可以構成所需要的系統(tǒng)模型,進行仿真和分析。 在Simulink圖形化可視環(huán)境中,用戶將擺脫理論演繹時需做理想化假設的無奈,可以觀察到現(xiàn)實世界中摩擦、風阻、齒隙、飽和、死去等非線性因素和各種隨機因素對系統(tǒng)的影響。2021-11-10基于MATLAB的控制系統(tǒng)計算機輔助設計與仿真3 在Simulink中,用戶可以在仿真過程中改變感興趣的參數(shù),實時地觀察系統(tǒng)的變化。 Simulink使用戶擺脫了深奧的數(shù)學推演和繁瑣的編程的困擾,探索感興趣的問題。 MATLAB集成的工具箱同樣適用于Simulink環(huán)境,用戶可以直接用來處理涉及領域的各種問題。 Simulink模塊
4、庫瀏覽窗口包含了由眾多領域世界著名專家與學者以MATLAB為基礎開發(fā)的大量實用模塊集或工具箱,并不斷研究、開發(fā)、升級這些工具箱,擴大了MATLAB/ Simulink的應用范圍和使用效率。 Simulink不但實現(xiàn)了可視化的動態(tài)仿真,也實現(xiàn)了與MATLAB、C或者FORTRAN甚至和硬件之間的數(shù)據傳遞。2021-11-10基于MATLAB的控制系統(tǒng)計算機輔助設計與仿真48.1 Simulink簡介 用Simulink進行動態(tài)仿真有兩個步驟: 首先,用Simulink的模型編輯器創(chuàng)建系統(tǒng)圖形化模型,并描述系統(tǒng)的輸入、狀態(tài)和輸出之間的數(shù)學關系; 其次,設定仿真參數(shù),進行動態(tài)仿真。 Simulink
5、基本包括兩個窗口: Simulink Library Browser窗口和untitled窗口。Simulink模塊庫瀏覽器(Simulink Library Browser)窗口用于瀏覽和管理仿真模庫。 untitled窗口用于建模和仿真。啟動Simulink時,打開方法不同,兩個窗口打開順序也不同。 Simulink模型必須在當前目錄下才能運行。 Simulink模型文件擴展名為.mdl。2021-11-10基于MATLAB的控制系統(tǒng)計算機輔助設計與仿真58.1.1 Simulink的啟動和退出 打開Simulink Library Browser 窗口有五種方法: 在MATLAB命令窗口
6、中直接執(zhí)行命令:simulink或open_system(simulink); 單擊MATLAB主窗口工具欄中的Simulink快捷按鈕“ ”; 單擊MATLAB主窗口左下角菜單命令“StartSimulink Library Browser”; 執(zhí)行菜單命令“FileNewModel”,創(chuàng)建一個“untitle”窗口,再執(zhí)行菜單命令“ViewLibrary Browser”打開模庫瀏覽器。 Simulink Library Browser窗口左邊樹狀結構列出了系統(tǒng)中安裝的所有仿真模塊集或工具箱,右邊顯示左邊選中的模塊集或工具箱中所包含的標準模塊庫。2021-11-10基于MATLAB的控制系
7、統(tǒng)計算機輔助設計與仿真6 如果要退出Simulink,只要關閉所有模型編輯窗口和Simulink模庫瀏覽器窗口即可。 Simulink庫瀏覽窗口由功能菜單、工具欄和模塊集/工具箱三部分組成。2021-11-10基于MATLAB的控制系統(tǒng)計算機輔助設計與仿真72021-11-10基于MATLAB的控制系統(tǒng)計算機輔助設計與仿真8Simulink Library Browser窗口8.1.2 Simulink模塊庫瀏覽器窗口菜單 File 文件操作菜單 New 新建用戶模型編輯窗口/模塊庫窗口 Open 打開用戶模型編輯窗口 Close 關閉用戶模型編輯窗口 Preferences 參數(shù)選擇 Edi
8、t 編輯菜單 Add to the current model 增加到當前用戶模型編輯窗口中 Find block 查找模塊 Find new block 查找新模塊2021-11-10基于MATLAB的控制系統(tǒng)計算機輔助設計與仿真9 View 查看菜單 Toolbar 顯示/關閉工具條開關 Status bar 顯示/關閉狀態(tài)條開關 Description 顯示/關閉描述窗口開關 Stay on top 位于上層 Collapse entire browser 壓縮整個樹狀結構 Expand entire browser 展開整個樹狀結構 Large icons 大圖標 Small icon
9、s 小圖標 Show parameters for selected block 顯示所選模塊參數(shù) Help 幫助菜單2021-11-10基于MATLAB的控制系統(tǒng)計算機輔助設計與仿真108.1.3 Simulink仿真模庫 Simulink模塊庫包括公共模塊庫和專業(yè)模塊庫兩類,對模塊庫進行有效組織和管理,便于用戶迅速構建動態(tài)仿真系統(tǒng)。 Simulink公共模塊庫包含了最基礎、最通用的模塊庫,可以應用于各個領域,共16個模塊庫。 右鍵單擊模庫瀏覽器窗口左邊模組名,執(zhí)行快捷菜單中的“Open ” 命令,將打開相應模庫窗口,其內容與Simulink Library Browser窗口右邊的一致。2
10、021-11-10基于MATLAB的控制系統(tǒng)計算機輔助設計與仿真11 1. Simulink的標準模塊庫 右鍵單擊模庫瀏覽器窗口左側模組名“Simulink”,執(zhí)行快捷菜單命令“Open Simulink Library”,打開Simulink標準模塊庫,如下圖所示,包含了16個常用模塊庫,用鼠標左鍵雙擊相應模塊庫圖標,即打開該模塊庫,均包含一些標準模塊。2021-11-10基于MATLAB的控制系統(tǒng)計算機輔助設計與仿真122021-11-10基于MATLAB的控制系統(tǒng)計算機輔助設計與仿真13信號源模塊庫(Sources)輸出模塊庫(Sinks)2021-11-10基于MATLAB的控制系統(tǒng)計
11、算機輔助設計與仿真14連續(xù)系統(tǒng)模塊庫(Continuous)離散系統(tǒng)模塊庫(Discrete)注:利用連續(xù)系統(tǒng)模塊 (Continuous)仿真具有局限性,其所有模塊都是假設初始條件為零。實際應用中常要求模塊具有非零初始條件,這時可使用Simulink Extras模塊庫中的Additional Linear(附加連續(xù)線性系統(tǒng)模塊組),該模塊組還提供了一般PID控制器模塊。注:同理,離散系統(tǒng)模塊庫(Discrete)都是零初始條件的模塊,對于非零初始條件的模塊,可使用Simulink Extras模塊庫中的Additional Discrete(附加離散線性系統(tǒng)模塊組)。2021-11-10基
12、于MATLAB的控制系統(tǒng)計算機輔助設計與仿真15非線性系統(tǒng)模塊庫(Discontinuities)信號路徑模塊庫(Signal Routing)2021-11-10基于MATLAB的控制系統(tǒng)計算機輔助設計與仿真16信號屬性模塊庫(Signal Attributes)數(shù)學運算模塊庫(Math Operations)2021-11-10基于MATLAB的控制系統(tǒng)計算機輔助設計與仿真17邏輯和位操作模塊庫(Logic and Bit Operations)查表模塊庫(Lookup Tables)2021-11-10基于MATLAB的控制系統(tǒng)計算機輔助設計與仿真18用戶自定義函數(shù)模塊庫(User-De
13、fined Functions)模型檢測模塊庫(Model Verification)2021-11-10基于MATLAB的控制系統(tǒng)計算機輔助設計與仿真19端口與子系統(tǒng)模塊庫(Ports & Subsystems)模型擴展功能模塊庫(Model-Wide Utilities)2021-11-10基于MATLAB的控制系統(tǒng)計算機輔助設計與仿真20模塊集和工具箱(Blocksets & Toolboxes)常用模塊庫(Commonly Used Blocks)2021-11-10基于MATLAB的控制系統(tǒng)計算機輔助設計與仿真21附加數(shù)學與離散模塊庫 (Additional Math
14、 & Discrete)2021-11-10基于MATLAB的控制系統(tǒng)計算機輔助設計與仿真22Demos模庫名模庫名模塊名模塊名功功 能能說說 明明Commonly Used Blocks通用模塊庫包含了幾個公共模塊庫中最常用的模塊,組合成快捷模庫,便于使用Continuous連續(xù)系統(tǒng)模塊庫Derivative微分器包括描述線性函數(shù)和非線性系統(tǒng)的模塊Integrator積分器State-Space線性狀態(tài)空間模塊Transfer-Fcn傳遞函數(shù)模塊Transport Delay傳輸延時模塊Variable Transport Delay可變傳輸延時模塊Zero-Pole零極點傳遞函數(shù)模
15、型Discrete離散系統(tǒng)模塊庫Difference差分包括描述離散時間系統(tǒng)的模塊Discrete Derivative離散微分Discrete Filter離散濾波器Discrete State-Space離散狀態(tài)空間模型Discrete Transfer Fcn離散傳遞函數(shù)Discrete Zero-Pole離散零極點傳遞函數(shù)模型Discrete Time Integrator離散時間積分器Fist-Order Hold一階保持器模塊Integer Delay整數(shù)延時模塊Zero-Order Hold零階保持器模塊Unit Delay單位延時模塊2021-11-10基于MATLAB的控制系
16、統(tǒng)計算機輔助設計與仿真232021-11-10基于MATLAB的控制系統(tǒng)計算機輔助設計與仿真24模庫名模庫名模塊名模塊名功功 能能說說 明明Discontinuities時滯系統(tǒng)模塊庫Backlash偏移補償包括描述非線性(Nonlinear)函數(shù)和非線性系統(tǒng)模塊Coulomb and Viscous Friction庫侖和粘性摩擦Dead Zone死區(qū)輸出模塊Dead Zone Dynamic死區(qū)動態(tài)Hit Crossing捕獲交叉點Quantizer量化模塊Rate Limiter限速器(比率限幅模塊)Relay繼電器Saturation飽和度模塊Wrap To Zero輸入大于門限則輸出
17、0,小于則直接輸出Logic and Bit Operations邏輯和位運算模塊庫Bit Clear位清除包括邏輯運算、位運算和查找表模塊Bit Set位集Bitwise Operator位運算符,包括and,or等6種Combinatorial Logic組合邏輯Compare to Constant與常數(shù)比較Detect Change變化檢測Extract Bits位壓縮Logical Operator邏輯運算符,包括and,or等7種Relational Operator關系運算符,包括, showblockdatatypetable2021-11-10基于MATLAB的控制系統(tǒng)計算機
18、輔助設計與仿真332021-11-10基于MATLAB的控制系統(tǒng)計算機輔助設計與仿真348.2 Simulink建模與仿真8.2.1 Simulink建模 例:如圖所示典型非線性反饋控制系統(tǒng),其中PI控制器模型Gc(s)=(3s+2)/s,飽和特性中=2,控制對象傳遞函數(shù)G0(s)=(5s+6)/(s2+3s+7),死區(qū)特性中死區(qū)寬度=0.1,建立Simulink 仿真模型,并仿真。Gc(s)y(t)-G0(s)階躍+ 1. 打開模型編輯器窗口(1)打開新模型窗口“untitled” 有三種方法: 單擊Simulink模庫瀏覽器窗口工具欄中的新建模型(Create a new model)按鈕
19、“ ”; 執(zhí)行Simulink模庫瀏覽器窗口中的菜單命令File|New|Model; 在MATLAB主窗口中執(zhí)行菜單命令 File|New|Model。2021-11-10基于MATLAB的控制系統(tǒng)計算機輔助設計與仿真35(2)打開已有模型文件 有四種方法: 在Simulink庫瀏覽器窗口中,單擊工具欄中的“ (Open model)”按鈕,然后選擇或者輸入要編輯的模型文件名并“確定”; 在MATLAB主窗口中,單擊工具欄“ ”,選擇要打開的模型文件,確定即可; 在Simulink模庫窗口中執(zhí)行菜單命令File|Open,然后選擇或者輸入要編輯的模型文件名并“確定”; 在MATLAB命令窗口
20、中直接鍵入模型文件名(不帶.mdl擴展名); 在目錄窗口中雙擊模型文件名,直接打開模型。 模型編輯窗口菜單欄、工具欄和模型編輯區(qū)三部分組成,允許用戶對系統(tǒng)的結構圖進行編輯、修改和仿真。2021-11-10基于MATLAB的控制系統(tǒng)計算機輔助設計與仿真36(3)模型編輯器窗口菜單 File菜單(參見Simulink模庫窗口File菜單) Edit菜單(參見Simulink模庫窗口Edit菜單) View菜單(參見Simulink模庫窗口View菜單) Simulation 仿真操作菜單 Start 開始仿真 Stop 停止仿真 Configuration Parameters 仿真參數(shù)設置 No
21、rmal 正常的 Rapid Accelerator 加速的 Software-in-the-Loop(SIL) Processor-in-the-Loop(PIL) External 外部的2021-11-10基于MATLAB的控制系統(tǒng)計算機輔助設計與仿真37 Format 格式菜單 Font 字體設置 Text alignment 文字對齊 Flip name 模塊名置于模塊的相反一邊 Show/Hide name 顯示/隱藏模塊名 Flip block 模塊旋轉180度 Rotate block 模塊順時針方向旋轉90度 Show drop Shadow 顯示陰影 Show port l
22、abels 顯示端口標注 Foreground color 前景顏色設置 Background color 背景顏色設置 Screen color 屏幕顏色設置2021-11-10基于MATLAB的控制系統(tǒng)計算機輔助設計與仿真38 2. 添加模塊 有兩種方法: 在模庫中右鍵單擊模塊,執(zhí)行彈出的菜單命令“Add to xxx”(xxx為當前模型文件名); 用鼠標左鍵按住模庫中選擇的模塊不放,直接拖拽到模型窗口中。2021-11-10基于MATLAB的控制系統(tǒng)計算機輔助設計與仿真39模型文件:ex8_1.mdl 同一模塊在同一模型窗口中出現(xiàn)多次時,Simulink會自動在模塊名末尾添加序號,以示區(qū)
23、別。 在添加Sum、Mux、Demux、Bus Selector等模塊時,Simulink會隱藏其模塊名,以避免模型圖中不必要的混亂,增加可讀性。2021-11-10基于MATLAB的控制系統(tǒng)計算機輔助設計與仿真40 3. 選擇對象 編輯模型時,需先選定模塊或連線。(1)選擇單個對象 用鼠標左鍵單擊某對象,被選中模塊或連線角上出現(xiàn)小黑方塊 “句柄” ,表示被選中。(2)選擇多個對象 選擇一組不連續(xù)對象:按住Shift鍵的同時,用鼠標單擊需要選擇的對象。若要取消一個已被選定的對象,在按住Shift鍵的同時,再次單擊該對象即可;2021-11-10基于MATLAB的控制系統(tǒng)計算機輔助設計與仿真41
24、 選擇區(qū)域對象:在某區(qū)域的一角按住鼠標左鍵并拖動到對角方向,出現(xiàn)一個矩形虛線框,包圍或相交所需要的模塊,松開按鍵即可。 選擇活動窗口的所有對象:執(zhí)行窗口菜單命令Edit|Select all。 如果想放棄選中的所有對象,只需單擊空白處即可。2021-11-10基于MATLAB的控制系統(tǒng)計算機輔助設計與仿真42 4. 復制模塊(1)從一個窗口復制到另一個窗口 在一個窗口中用鼠標左鍵按住要復制的模塊,拖到另一個窗口中的適當位置,松開鼠標鍵。新復制的模塊和原模塊具有相同的參數(shù)。(2)在同一窗口中復制模塊 方法一:按住Ctrl鍵,用鼠標左鍵按住并拖動要復制的模塊到適當位置,松開按鍵,便完成復制工作。在
25、復制過程中,鼠標光標上附加一個“+”光標。2021-11-10基于MATLAB的控制系統(tǒng)計算機輔助設計與仿真43 方法二:復制模塊過程(同一窗口或不同窗口)也可執(zhí)行窗口Edit菜單命令Copy和Paste實現(xiàn)(或模塊的右鍵菜單相應命令)。在進行粘貼時,用鼠標左鍵單擊一下要放置模塊的位置,再執(zhí)行Paste命令,鼠標單擊的點即為粘貼模塊的位置。 方法三:鼠標右鍵拖拽要復制的模塊到適當位置,彈出快捷菜單,執(zhí)行Copy Here。2021-11-10基于MATLAB的控制系統(tǒng)計算機輔助設計與仿真445. 移動模塊(1)從一個窗口移動到另一個窗口 按住Shift鍵,用鼠標左鍵將模塊從一個窗口拖到另一個窗
26、口。 (2)在同一窗口中移動模塊 用鼠標左鍵按住并拖動模塊到合適的位置放開鼠標鍵。在移動過程中會顯示模塊虛框。當移動多個模塊及其連線時,先要選中要移動的模塊和連線,然后用鼠標左鍵按住并拖動到合適位置。模塊移動時,連線也隨之移動,Simulink會自動地重畫連線。 用戶也可通過執(zhí)行Edit菜單(或模塊右鍵菜單)Cut和Paste命令移動模塊。 用戶還可先選擇模塊(一個或多個),通過鍵盤“”鍵微調模塊位置。2021-11-10基于MATLAB的控制系統(tǒng)計算機輔助設計與仿真456. 剪切和刪除模塊 (1)剪切 選擇模塊,執(zhí)行菜單命令Edit|Cut,將模塊剪切到剪貼板(未徹底刪除)。 鼠標右鍵選擇要
27、剪切的模塊,執(zhí)行快捷菜單命令Cut。 (2)刪除 選定一個或多個模塊,按Delete鍵(或Backspace鍵),徹底刪除模塊。 右鍵選擇要刪除模塊,執(zhí)行快捷菜單相應命令Delete 。 在建模過程中,若出現(xiàn)增減的模塊、編輯模塊等的誤操作,可執(zhí)行窗口菜單命令Edit|Undo撤銷操作。2021-11-10基于MATLAB的控制系統(tǒng)計算機輔助設計與仿真46 7. 調整模塊幾何屬性 (1)外形調整 調整模塊大小 一些模塊的方框大小可以調整。選擇模塊,模塊四角出現(xiàn)小黑方塊(尺寸句柄) ,移動鼠標到模塊對象尺寸句柄處,當指針變成指向四周的小箭頭時,按住鼠標左鍵拖動到合適大小即可。在調整過程中,會顯示模
28、塊虛線框,便于觀察。 用戶也可執(zhí)行模型窗口View菜單下的如下命令縮放整個模型,但這種方式不改變模塊實際尺寸比例。 Zoom In 放大整個模型 Zoom Out 縮小整個模型 Fit System to View 將整個模型或選中的模塊放大至窗口大小 Normal(100%) 將整個模型恢復到正常大小2021-11-10基于MATLAB的控制系統(tǒng)計算機輔助設計與仿真47 (2)姿態(tài)調整 旋轉模塊 從標準模塊庫中添加的模塊在默認狀態(tài)下輸入端口在左,輸出端在右,在構造系統(tǒng)方框圖時,有時為了使連線簡潔,避免不必要的交叉,需對某些模塊翻轉或旋轉,改變其輸入或輸出端口的方向。 方法:選中要編輯的模塊,
29、執(zhí)行菜單命令(或模塊右鍵菜單命令) Format|Flip block或組合鍵,對稱翻轉(旋轉180) Format|Rotate block| 或組合鍵,順時針(或逆時針)方向旋轉902021-11-10基于MATLAB的控制系統(tǒng)計算機輔助設計與仿真48(3)模塊顏色和效果調整 用戶可以修飾模塊,增強模型的可視性。參見模型窗口Format菜單命令 Foreground Color 設置模塊的前景色,即模塊的圖標、邊框和模塊名的顏色 Background Color 設置模塊的背景色,即模塊的填充色 Screen Color 設置模型窗口的背景色 Show Drop Shadow 為模塊添加陰
30、影效果2021-11-10基于MATLAB的控制系統(tǒng)計算機輔助設計與仿真49 (4)編輯模塊名 修改模塊名: 模型中所有模塊名必須唯一,并且至少包含一個字符。 方法:用鼠標左鍵單擊模塊名,出現(xiàn)字符編輯框,光標閃爍,表示處于編輯狀態(tài),即可修改。修改完畢,鼠標單擊窗口中的任一地方完成。 MATLAB對中文支持不友好,盡量不要用中文名。 用戶還可以在選中模塊時,執(zhí)行模型窗口菜單命令“Format|Font”,在彈出的Set Font窗口中設置模塊名和圖標中文本的字體、字形和大小等。2021-11-10基于MATLAB的控制系統(tǒng)計算機輔助設計與仿真50 調整模塊名的位置 當模塊的輸入輸出端口在左右兩邊
31、時,模塊名位于上下兩邊,默認在模塊下邊;當模塊輸入輸出端口在模塊的上下兩邊時,模塊名位于模塊左右兩邊,默認在模塊的左邊。 兩種方法: 用鼠標左鍵將模塊名拖至模塊相對位置; 選中模塊,執(zhí)行菜單命令Format|Flip name,可將模塊名翻轉到對側位置。 注:模塊名與模塊是關聯(lián)的,MATLAB限定了模塊名位置,不能隨意移動。 隱藏/顯示模塊名 方法:選中模塊,執(zhí)行如下菜單命令 Format|Hide name%隱藏模塊名 Format|Show name%顯示模塊名 注:MATLAB不能刪除模塊名。2021-11-10基于MATLAB的控制系統(tǒng)計算機輔助設計與仿真518. 模塊的連接 Simu
32、link處理的信號包括標量、向量和矩陣信號等。標量信號是單一信號,向量信號和矩陣信號是復合信號,是多個信號的集合。默認情況下,多數(shù)模塊的信號為標量信號。 Simulink模塊對信號都有 “智能”識別功能,能自動進行匹配。某些模塊通過對參數(shù)的設定,可以處理多維復合信號。 (1)繪制信號線 信號線是從一個模塊的輸出端(三角號)到另一模塊的輸入端(大于號)的有向線段。 Simulink只允許繪制水平、垂直信號線或折線。2021-11-10基于MATLAB的控制系統(tǒng)計算機輔助設計與仿真52 三種方法: 將鼠標移動到模塊的端口,光標變?yōu)椤啊弊?,按住鼠標左鍵并拖拽到另一模塊的端口,光標變成重“十”字,釋放
33、鼠標按鍵完成連接。這種方式無需根據信號流向,Simulink自動判別端口輸入/輸出屬性進行連接; 按住Ctrl鍵,沿信號流方向鼠標左鍵依次單擊前一輸出模塊和下一輸入模塊,可以快速連接模塊。 按住Shift鍵,沿信號流方向鼠標右鍵依次單擊前一輸出模塊和下一輸入模塊,快速連接模塊。 Simulink自動產生有向箭頭,將兩個模塊連接起來,箭頭方向表示信號流向。 如果兩個模塊信號或流向不匹配,將顯示紅色虛線或無線。2021-11-10基于MATLAB的控制系統(tǒng)計算機輔助設計與仿真53(2)信號線分支 支線是指從一條已有的有向線段上畫一條分支有向線段指向另一模塊輸入端口。支線信號與原線信號相同。 兩種方
34、法: 按住 鍵,在要分支的地方按下鼠標左鍵,光標變成“”字,拖動鼠標到適當位置后松開。 如果采用鼠標右鍵操作,以上過程可省掉按鍵。2021-11-10基于MATLAB的控制系統(tǒng)計算機輔助設計與仿真54 (3)移動信號線 選中要移動的信號線( Simulink用黑色方塊句柄標定),鼠標左鍵按住并拖拽到合適位置,釋放鼠標。(4)分割信號線 選中要分割的信號線,按住Shift鍵,鼠標左鍵單擊需要分割的位置,則信號線在此點分割為兩段。(5)信號線彎折 鼠標左鍵選中并按住信號線,光標變成帶箭頭的十字形“ ”,拖拽鼠標到適當位置,以信號線兩端句柄黑塊為折點直角折曲。2021-11-10基于MATLAB的控
35、制系統(tǒng)計算機輔助設計與仿真55 鼠標左鍵單擊信號線,將光標移到相應句柄黑塊上,光標變成小圓,按住小黑塊并拖動,以信號線句柄黑塊為折點直角折曲。 選中信號線,按住鍵,用鼠標左鍵單擊并按住要彎折的地方,出現(xiàn)一個小圓圈,拖拽信號線到適當位置,則可以以任意角度彎折。(6)設置信號線標簽 標注信號線 鼠標左鍵雙擊信號線,在信號線適當位置彈出一個矩形文本框,輸入文本,鼠標單擊其它任意位置即可。用戶可以用鼠標按住并拖動文本框調整其位置。2021-11-10基于MATLAB的控制系統(tǒng)計算機輔助設計與仿真56 注:信號線標簽與信號線是關聯(lián)的,不能隨便移動,只能在信號線上下移動。用戶如果刪除信號線,信號線標簽同時
36、被刪除。用戶若單擊信號線旁空白處,而非信號線,也可進行標注,但這樣標注的不是信號線標簽,只是普通的說明文本,可以隨意移動,用戶刪除信號線,不會刪除該文本。 選中信號線,執(zhí)行模型窗口菜單命令Format|Font可以編輯信號標注文本的字體、字形、大小等。2021-11-10基于MATLAB的控制系統(tǒng)計算機輔助設計與仿真57標注信號線(7)刪除信號線 選中要刪除的信號線( Simulink黑塊句柄標定),按Delete鍵(或Backspace鍵)。 (8)復合信號線的設定 在有些數(shù)學運算模型中,標量和向量、數(shù)組、矩陣可以進行混合運算和傳輸,這時Simulink自動將標量進行擴展,以適應運算維數(shù)要求
37、。 Simulink模型窗口菜單“FormatPort/Signal Displays”中,有三條命令用于設置復合信號線類型和屬性。執(zhí)行這些命令后,信號線上將顯示其線型及屬性。(參見ex8_9.mdl) Port Data Types 顯示流經信號線的數(shù)據類型。2021-11-10基于MATLAB的控制系統(tǒng)計算機輔助設計與仿真582021-11-10基于MATLAB的控制系統(tǒng)計算機輔助設計與仿真59顯示信號線數(shù)據類型Sine WaveScope1Scope3Gain5 27 9Constant51Constant45 27 9Constant32 3Constant24Constant1-1
38、1ConstantAddSine WaveScope1Scope3Gain5 27 9Constant51Constant45 27 9Constant32 3Constant24Constant1-1 1ConstantAdddoubledoubledoubledoubledoubledoubledoubledoubledoubledouble Signal Dimensions 顯示維數(shù)。如果連線表示矢量信號,則顯示矢量寬度;如果連線表示矩陣信號,則顯示信號的維數(shù);如果連線表示傳輸?shù)氖窍嗤瑪?shù)據類型的信號總線,則顯示NM,其中N是總線傳輸?shù)男盘枖?shù)目,M是總線傳輸?shù)男盘栐氐目倲?shù)。如果總線傳輸
39、的是不同數(shù)據類型的信號,則只顯示信號元素的總數(shù)M。2021-11-10基于MATLAB的控制系統(tǒng)計算機輔助設計與仿真60Sine WaveScope1Scope3Gain5 27 9Constant51Constant45 27 9Constant32 3Constant24Constant1-1 1ConstantAddSine WaveScope1Scope3Gain5 27 9Constant51Constant45 27 9Constant32 3Constant24Constant1-1 1ConstantAdd223 3722x22x22x22x22x22x2顯示信號線數(shù)據維數(shù) W
40、ide Nonscalar Lines 加粗矢量或矩陣信號線。 用戶在編輯模型的過程中,有時模型不能及時更新顯示,可執(zhí)行菜單命令Edit|Update Diagram刷新顯示。2021-11-10基于MATLAB的控制系統(tǒng)計算機輔助設計與仿真61Sine WaveScope1Scope3Gain5 27 9Constant51Constant45 27 9Constant32 3Constant24Constant1-1 1ConstantAddSine WaveScope1Scope3Gain5 27 9Constant51Constant45 27 9Constant32 3Constan
41、t24Constant1-1 1ConstantAdd加粗非標量信號線2021-11-10基于MATLAB的控制系統(tǒng)計算機輔助設計與仿真62Sine WaveScope1Scope3Gain5 27 9Constant51Constant45 27 9Constant32 3Constant24Constant1-1 1ConstantAdddoubledouble (2)2double (3) 37doubledouble (2)double 2x22x2doubledouble 2x22x2double 2x2double 2x29. 插入模塊 將模塊拖拽到兩模塊連接信號線的合適位置,可在
42、模塊間插入模塊,信號線自動在插入位置斷開并連接新模塊。2021-11-10基于MATLAB的控制系統(tǒng)計算機輔助設計與仿真6310. 模塊參數(shù)設置 新添加的模塊都包含模塊的默認參數(shù),如階躍信號模塊(Step)的缺省的階躍時刻為1,而不是0;傳遞函數(shù)模塊(Trancefer Fcn)的缺省值為 1/(s+1) 。Simulink允許用戶修改模塊參數(shù)(Parameters)。 修改方法有兩種: 鼠標左鍵雙擊相應模塊,彈出該模塊的參數(shù)設置對話框,編輯其中的參數(shù)。 鼠標右鍵單擊模塊,執(zhí)行快捷菜單命令“xxx Parameters”,彈出參數(shù)設置對話框,編輯參數(shù)。 選中模塊,執(zhí)行菜單命令 Edit|xxx
43、 Parameters。 模塊參數(shù)設置對話框通常包含兩部分:上部為模塊說明,描述模塊的功能、參數(shù)意義等;下部設置參數(shù)。 在設置參數(shù)時,任何MATLAB工作空間中已有的變量、合法表達式和語句等都可以填寫在設置欄中。2021-11-10基于MATLAB的控制系統(tǒng)計算機輔助設計與仿真642021-11-10基于MATLAB的控制系統(tǒng)計算機輔助設計與仿真65階躍信號模塊(Step)參數(shù)設置對話框參參 數(shù)數(shù)說說 明明Step time(階躍時間) 階躍跳變時刻,默認為1sInitial value(初值)階躍跳變之前的值Final value(終值)階躍跳變之后的值Sample time(采樣時間)設定
44、離散采樣時間,默認為0,采樣率取決于算法的步長Interpret vector parameters as 1-D(說明矢量參數(shù)為一維)若選中,則階躍模塊的參數(shù)的行或列矩陣值將導致一個矢量輸出信號,否則輸出與模塊參數(shù)同維的信號Enable zero crossing detection(過零檢測有效)選中使過零檢測有效,以便檢測階躍躍變時間2021-11-10基于MATLAB的控制系統(tǒng)計算機輔助設計與仿真66Icon shape(圖標形狀)默認為圓形。如果信號路數(shù)過多,則不適用圓形,可選擇列表框中的Rectangular;List of Signs(信號列表)列舉各路輸入信號的運算符,其中“|
45、”表示該路沒有信號。加法器(Sum)參數(shù)設置對話框2021-11-10基于MATLAB的控制系統(tǒng)計算機輔助設計與仿真67Numerator和Denominator欄分別設置傳遞函數(shù)按降冪排列的分子和分母多項式系數(shù),默認為1和1 1,即默認傳遞函數(shù)為1/(s+1) ;Absolute tolerance設置絕對誤差容限; Transfer Fcn模塊的Numerator系數(shù) 可以是行矢量或者由多行矢量構成的矩陣,但Denominator 必須是行矢量,且分母的階次大于或等于分子的階次。 Numerator 為矩陣時產生多個輸出。 Transfer Fcn模塊的輸入可以是標量,如果Numerato
46、r是一個行矢量,則模塊輸出是標量;如果Numerator是一個矩陣,則模塊輸出是一個矢量,矢量的維數(shù)等于Numerator矩陣的行數(shù)。傳遞函數(shù)模塊的初始條件被預置為0。如果需要指定初始條件,使用tf2ss命令轉換到狀態(tài)空間,并使用State-Space(狀態(tài)空間)模塊。傳遞函數(shù)模塊(Transfer Fcn)參數(shù)設置對話框 Upper limit和Lower limit參數(shù)分別設置飽和上界和下界。2021-11-10基于MATLAB的控制系統(tǒng)計算機輔助設計與仿真68飽和非線性模塊(Saturation)參數(shù)設置對話框 Start of dead zone和End of dead zone分別設
47、置死區(qū)起始值和終止值。2021-11-10基于MATLAB的控制系統(tǒng)計算機輔助設計與仿真69死區(qū)非線性模塊(Dead Zone)參數(shù)設置對話框 用戶可以單擊模塊參數(shù)設置對話框下方的“Help”按鈕查閱該模塊的幫助信息。 通過模塊的右鍵快捷菜單,用戶還可以編輯模塊的顏色、旋轉、字體、陰影等屬性。2021-11-10基于MATLAB的控制系統(tǒng)計算機輔助設計與仿真705s+6s +3s+72Transfer FcnStepScopeSaturation3s+2sPID ControllerDead Zonereuyb附錄:附錄:sinesine模塊及參數(shù)模塊及參數(shù)2021-11-10基于MATLAB
48、的控制系統(tǒng)計算機輔助設計與仿真71參參 數(shù)數(shù)說說 明明Sine type(正弦曲線類型)Time based(基于時間模式)、Sample based(基于采樣點模式)Time(時間)Use simulation time(基于用戶仿真時間)、Use external signal(基于用戶外部信號)Amplitude(幅值)Bias(偏差)Frequency(rad/sec)(頻率)Phase(rad)(相位)Sample time(采樣時間)Samples per period(每個區(qū)間的采樣點)Sample based模式特有參數(shù)Number of offset samples(采樣點的
49、偏移個數(shù))Sample based模式特有參數(shù)Interpret vector parameters as 1-D(一維向量)2021-11-10基于MATLAB的控制系統(tǒng)計算機輔助設計與仿真72SineSine模塊參數(shù)模塊參數(shù) Sine模塊參數(shù)設置方式: Time based模式該模式輸出正弦曲線的計算公式為 y=Amplitudesin(FrequencyTime+Phase)+Bias基于時間模式有兩個子模式:連續(xù)模式和離散模式。采樣時間間隔Sample time的值決定了該模塊的工作模式:0(默認值)為連續(xù)模式;大于0表示工作在離散模式。在連續(xù)模式下,該曲線會由于時間的增大導致精度下降
50、,會產生不準確的結果。 Sample based模式該模式使用下列公式輸出正弦曲線y=Asin(2(k+o)/p)+b式中:A為正弦波的幅值;p為每個波形區(qū)間采樣點數(shù)目;k是0到(p-1)之間的整數(shù)值;o為信號的相位偏移量;b是信號的偏差。在這個模式下,Simulink先把k設為0,并利用上面的公式計算模塊的輸出,然后令k為(k+1),重新計算模塊的輸出,當k等于p時,把k重新設為0,再計算模塊的輸出,依次循環(huán)直至仿真結束。2021-11-10基于MATLAB的控制系統(tǒng)計算機輔助設計與仿真73附錄:附錄:GainGain模塊模塊 Gain模塊為增益模塊,參數(shù)可以是標量、矢量或矩陣。2021-1
51、1-10基于MATLAB的控制系統(tǒng)計算機輔助設計與仿真74 Gain模塊Multiplication欄指定乘積模式: Element-wise(K.*u)數(shù)組乘。Gain參數(shù)中的每個元素誠意輸入信號中的相應元素,輸入信號與Gain維數(shù)相同。 Matrix(K*u)矩陣乘。輸入信號和Gain參數(shù)都是矩陣,輸入信號作為第2操作數(shù)。 Matrix(u*K)矩陣乘。輸入信號和Gain參數(shù)都是矩陣,輸入信號作為第1操作數(shù)。 Matrix(K*u)(u vector)輸入信號和Gain參數(shù)都是矩陣,輸入信號作為第2操作數(shù)。要求輸入信號和輸出信號都是矢量,而且矢量長度由Gain參數(shù)的維數(shù)決定。2021-11
52、-10基于MATLAB的控制系統(tǒng)計算機輔助設計與仿真7511. 模塊屬性設置 與模塊參數(shù)設置對話框不同,所有模塊的屬性(Block Properties)設置對話框都一樣。 方法:選中模塊,執(zhí)行模型窗口菜單命令(或模塊右鍵快捷菜單命令)EditBlock Propertise。 Description(注釋) 說明該模塊在模型中的用法。 Priority(優(yōu)先級) 規(guī)定該模塊在模型中相對于其他模塊執(zhí)行的優(yōu)先順序。優(yōu)先級的數(shù)值必須是整數(shù)(可以是負數(shù))。數(shù)值越小,優(yōu)先級越高。不輸入數(shù)值,系統(tǒng)自動選取合適的優(yōu)先級。 Tag(標記) 用戶為模塊添加的文本格式的標記。2021-11-10基于MATLAB
53、的控制系統(tǒng)計算機輔助設計與仿真7612. 保存模型 模型創(chuàng)建完成后,在模型窗口中兩種方法進行保存,默認擴展名為.mdl: 執(zhí)行菜單命令File| Save(As); 單擊模型窗口工具欄“ ”按鈕。 模型文件保存模塊及其一些屬性,它是以ASCII碼形式存儲的。 文件名:ex8_1.mdl2021-11-10基于MATLAB的控制系統(tǒng)計算機輔助設計與仿真778.2.2 模型參數(shù)設置 在模型窗口中執(zhí)行菜單命令“Simulation Contiguration Parameters”,打開用戶參數(shù)設置對話框。2021-11-10基于MATLAB的控制系統(tǒng)計算機輔助設計與仿真78 Contigurati
54、on Parameters對話框主要用來設置仿真求解器和仿真步長等參數(shù)。動態(tài)系統(tǒng)仿真的本質是求解系統(tǒng)的狀態(tài)方程,狀態(tài)方程的數(shù)值求解算法有多種,不同的算法適用的范圍不同,算法的步長也可以不同,這些都直接影響到求解的精度。 用戶可在仿真過程中實時修改Contiguration Parameters對話框參數(shù)。2021-11-10基于MATLAB的控制系統(tǒng)計算機輔助設計與仿真791. Solver (求解器) 用來設置仿真啟停時間、仿真算法等控制參數(shù)。(1)Simulation time(仿真時間) 設置起始時間(Start Time)和停止時間(Stop Time),單位“秒”。缺省起始時間為0.
55、0秒,停止時間為10.0秒。 實際上,仿真時間與實際時鐘的時間并不相同。例如運行10s的仿真過程實際耗時并不是10s,機器運行的時間取決于很多因素,包括模型的復雜程度、算法步長、計算機速度等。2021-11-10基于MATLAB的控制系統(tǒng)計算機輔助設計與仿真80(2)Solver options(求解器選項) 仿真算法 仿真過程一般是求解常微分方程組,由于動態(tài)系統(tǒng)行為的多樣性,目前還沒有一種算法能夠保證所有模型的數(shù)值仿真結果總是準確、可靠的。為此,Simulink提供了變步長 (Variable-step)和定步長(Fixed-step) 兩大類(Type)數(shù)值積分算法供用戶選擇。2021-1
56、1-10基于MATLAB的控制系統(tǒng)計算機輔助設計與仿真812021-11-10基于MATLAB的控制系統(tǒng)計算機輔助設計與仿真82步長(Type)連續(xù)系統(tǒng)(Continuous)離散系統(tǒng)(Discrete)算 法(Solver)注 解變步長(Variable-step)ode45缺省算法,基于顯式四階/五階Runge-Kutta和Dormand-Prince公式,對大多數(shù)系統(tǒng)有效,但不適用于剛性(Stiff)系統(tǒng)。單步算法,計算當前結果時,僅使用前一步的值均采用discrete(no continuous state)算法ode23基于顯式二階/三階Runge-Kutta和Bogacki-Sha
57、mpine算法,對寬誤差容限和存在輕微剛性的系統(tǒng)比ode45更有效,單步算法ode113變階次Adams-bashforth-Moulton PECE算法,也稱為阿達姆斯-校正法,適用于光滑、非線性、時間常數(shù)變化不大的系統(tǒng)。在誤差容限較嚴時,比ode45有效。多步算法,計算當前結果時,需計算前幾步的值。ode15s變階次的數(shù)值微分公式(NDFs)算法,與后向微分公式BDFs(Gear算法)有聯(lián)系,但比它更有效。多步算法。對于剛性系統(tǒng),或者在用ode45仿真失敗或者不夠有效時,可用ode15sode23s基于二階改進的Rosenbrock公式,單步算法,對寬誤差容限比ode15s更有效。一些用o
58、de15s不是很有效的剛性系統(tǒng),可以用它解決ode23t使用自由內插式梯形規(guī)則實現(xiàn)。如果系統(tǒng)剛性適度,且需要沒有數(shù)字阻尼的結果,可以采用該算法ode23tb使用TR-BDF2實現(xiàn),基于隱式Runge-Kutta公式。其第一級是梯形規(guī)則步長,第二級是二階反向微分公式,兩級計算使用相同的迭代矩陣。與ode23s相似,對于寬容限誤差比ode15s有效定步長(Fixed-step)ode5定步長的ode45解法,基于Dormand-Prince公式ode4四階Runge-Kutta(龍格-庫塔)法ode3定步長的ode23算法,基于Bogacki-Shampine公式,缺省算法ode2 Henu法,也
59、稱為改進的歐拉法(Euler)ode1歐拉法,最簡單的算法,精度最低,僅用來驗證結果表 Simulink算法選擇 Variable-step :計算步長可變,可以設定算法(Solver)、最大步長(Max step size)、最小步長(Min step size)、初始步長(Initial step size)、相對容差(Relative tolerance)和絕對容差(Absolute tolerance)等,缺省為auto 。 仿真開始時以起始步長計算,把算得的局部估計誤差與誤差容限相比較,當系統(tǒng)狀態(tài)變化很快時,減小步長以提高精度;當系統(tǒng)狀態(tài)變化較慢時,自動拉大步長,提高計算效率。 一般
60、情況下,最大步長可以選擇一個較大的數(shù)值,但如果選擇的過大,可能會出現(xiàn)在仿真點處仿真結果是正確的,但仿真曲線不是很光滑的情況,故一般選擇為仿真范圍的1/50。通常最小步長都取得很小,但如果取得太小,會增加運算量。 Fixed-step :計算步長始終不變,可以設定算法(Solver)、固定步長(Fixed step size)和選擇仿真模式(Mode)。步長為Auto,則采用默認步長,即仿真時間為1/50。2021-11-10基于MATLAB的控制系統(tǒng)計算機輔助設計與仿真83 仿真步長 對于變步長(Variable-step)算法,用戶可以設置最大步長(Max step size)、最小步長(Min step siz
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024版高效設備采購及標準化安裝合作合同版B版
- 2024投資入股協(xié)議書-體育產業(yè)樣板3篇
- 2025別墅庭院照明系統(tǒng)設計與安裝服務合同3篇
- 2024建設工程園林綠化施工合同
- 2024暑假工兼職人員勞動合同模板及服務內容3篇
- 2024版家禽買賣協(xié)議樣式版A版
- 2024某知名食品企業(yè)產品生產與銷售合同
- 2024某科技公司與人工智能研發(fā)團隊的技術開發(fā)合同
- 2024年股東權益保障協(xié)議:共筑美好未來
- KTV經營權轉讓合同2024年版版
- 員工待崗期滿考核方案
- “數(shù)”我精彩-“學”有特色-小學六年級數(shù)學寒假特色作業(yè)展示
- 部編人教版六年級下冊小學語文全冊教案(教學設計)(新課標核心素養(yǎng)教案)
- 進駐商場計劃書
- 建筑施工材料供應鏈管理與控制
- 代理人培養(yǎng)計劃書
- 牛津譯林版八年級上冊英語8A期末復習-閱讀理解(含答案)
- 鄉(xiāng)鎮(zhèn)污水處理調研報告
- 第三章天氣與氣候練習題 人教版七年級上冊地理
- 科研倫理與學術規(guī)范-課后作業(yè)答案
- 紀檢涉案財物管理規(guī)定
評論
0/150
提交評論