Simulink是美國邁斯沃克公司推出的MATLAB中的一種可視化仿真工具,其軟件版本為R2020a。Simulink是一個(gè)模塊圖環(huán)境,用于多域仿真以及基于模型的設(shè)計(jì)。它支持系統(tǒng)設(shè)計(jì)、仿真、自動代碼生成以及嵌入式系統(tǒng)的連續(xù)測試和驗(yàn)證。Simulink提供圖形編輯器、可自定義的模塊庫以及求解器,能夠進(jìn)行動態(tài)系統(tǒng)建模和仿真。
Simulink與MATLAB相集成,能夠在Simulink 中將MATLAB算法融入模型,還能將仿真結(jié)果導(dǎo)出至 MATLAB 做進(jìn)一步分析。Simulink應(yīng)用領(lǐng)域包括汽車、航空航天、工業(yè)自動化、大型建模、復(fù)雜邏輯、物理邏輯和信號處理等方面。Simulink支持Arduino?和Raspberry Pi?等第三方硬件。
Simulink具有建模方式便捷直觀、系統(tǒng)數(shù)據(jù)計(jì)算快速準(zhǔn)確、系統(tǒng)結(jié)構(gòu)表達(dá)有效簡潔、系統(tǒng)運(yùn)行交互式分析的特點(diǎn)。
簡介
Simulink具有適應(yīng)面廣、結(jié)構(gòu)和流程清晰及仿真精細(xì)、貼近實(shí)際、效率高、靈活等優(yōu)點(diǎn),并基于以上優(yōu)點(diǎn)Simulink已被廣泛應(yīng)用于控制理論和數(shù)字信號處理的復(fù)雜仿真和設(shè)計(jì)。同時(shí)有大量的第三方軟件和硬件可應(yīng)用于或被要求應(yīng)用于Simulink。
功能
Simulink可以用連續(xù)采樣時(shí)間、離散采樣時(shí)間或兩種混合的采樣時(shí)間進(jìn)行建模,它也支持多速率系統(tǒng),也就是系統(tǒng)中的不同部分具有不同的采樣速率。為了創(chuàng)建動態(tài)系統(tǒng)模型,Simulink提供了一個(gè)建立模型方塊圖的圖形用戶接口,這個(gè)創(chuàng)建過程只需單擊和拖動鼠標(biāo)操作就能完成,它提供了一種更快捷、直接明了的方式,而且用戶可以立即看到系統(tǒng)的仿真結(jié)果。
Simulink是用于動態(tài)系統(tǒng)和嵌入式系統(tǒng)的多領(lǐng)域仿真和基于模型的設(shè)計(jì)工具。對各種時(shí)變系統(tǒng),包括通訊、控制、信號處理、視頻處理和圖像處理系統(tǒng),Simulink提供了交互式圖形化環(huán)境和可定制模塊庫來對其進(jìn)行設(shè)計(jì)、仿真、執(zhí)行和測試。.
構(gòu)架在Simulink基礎(chǔ)之上的其他產(chǎn)品擴(kuò)展了Simulink多領(lǐng)域建模功能,也提供了用于設(shè)計(jì)、執(zhí)行、驗(yàn)證和確認(rèn)任務(wù)的相應(yīng)工具。Simulink與MATLAB緊密集成,可以直接訪問MATLAB大量的工具來進(jìn)行算法研發(fā)、仿真的分析和可視化、批處理腳本的創(chuàng)建、建模環(huán)境的定制以及信號參數(shù)和測試數(shù)據(jù)的定義。
特點(diǎn)
豐富的可擴(kuò)充的預(yù)定義模塊庫。
交互式的圖形編輯器來組合和管理直觀的模塊圖。
以設(shè)計(jì)功能的層次性來分割模型,實(shí)現(xiàn)對復(fù)雜設(shè)計(jì)的管理。
通過Model Explorer 導(dǎo)航、創(chuàng)建、配置、搜索模型中的任意信號、參數(shù)、屬性,生成模型代碼。
提供API用于與其他仿真程序的連接或與手寫代碼集成。
使用Embedded MATLAB? 模塊在Simulink和嵌入式系統(tǒng)執(zhí)行中調(diào)用MATLAB算法。
使用定步長或變步長運(yùn)行仿真,根據(jù)仿真模式(Normal,Accelerator,Rapid Accelerator)來決定以解釋性的方式運(yùn)行或以編譯C代碼的形式來運(yùn)行模型。
圖形化的調(diào)試器和剖析器來檢查仿真結(jié)果,診斷設(shè)計(jì)的性能和異常行為。
可訪問MATLAB從而對結(jié)果進(jìn)行分析與可視化,定制建模環(huán)境,定義信號參數(shù)和測試數(shù)據(jù)。
模型分析和診斷工具來保證模型的一致性,確定模型中的錯(cuò)誤。
啟動
1、在MATLAB命令窗口中輸入simulink
結(jié)果是在桌面上出現(xiàn)一個(gè)稱為Simulink Library Browser的窗口,在這個(gè)窗口中列出了按功能分類的各種模塊的名稱。
當(dāng)然用戶也可以通過MATLAB主窗口的快捷按鈕來打開Simulink Library Browser窗口。
2、在MATLAB命令窗口中輸入simulink3
結(jié)果是在桌面上出現(xiàn)一個(gè)用圖標(biāo)形式顯示的Library :simulink3的Simulink模塊庫窗口。
兩種模塊庫窗口界面只是不同的顯示形式,用戶可以根據(jù)各人喜好進(jìn)行選用,一般說來第二種窗口直觀、形象,易于初學(xué)者,但使用時(shí)會打開太多的子窗口。
模塊介紹
SIMULINK模塊庫按功能進(jìn)行分類,包括以下8類子庫:
Continuous(連續(xù)模塊)。
Discrete(離散模塊)。
函數(shù)&Tables(函數(shù)和平臺模塊)。
數(shù)學(xué)(數(shù)學(xué)模塊)。
Nonlinear(非線性模塊)。
Signals&Systems(信號和系統(tǒng)模塊)。
Sinks(接收器模塊)。
Sources(輸入源模塊)。
連續(xù)模塊(Continuous) continuous.mdl。
Integrator:輸入信號積分。
導(dǎo)數(shù):輸入信號微分。
State-Space:線性狀態(tài)空間系統(tǒng)模型。
Transfer-Fcn:線性傳遞函數(shù)模型。
Zero-Pole:以零極點(diǎn)表示的傳遞函數(shù)模型。
Memory:存儲上一時(shí)刻的狀態(tài)值。
Transport 時(shí)延:輸入信號延時(shí)一個(gè)固定時(shí)間再輸出。
Variable Transport Delay:輸入信號延時(shí)一個(gè)可變時(shí)間再輸出。
離散模塊(Discrete) discrete.mdl。
Discrete-時(shí)間 Integrator:離散時(shí)間積分器。
Discrete 濾波器:IIR與FIR濾波器。
Discrete State-Space:離散狀態(tài)空間系統(tǒng)模型。
Discrete Transfer-Fcn:離散傳遞函數(shù)模型。
Discrete Zero-Pole:以零極點(diǎn)表示的離散傳遞函數(shù)模型。
First-Order Hold:一階采樣和保持器。
Zero-Order Hold:零階采樣和保持器。
Unit 時(shí)延:一個(gè)采樣周期的延時(shí)。
函數(shù)&Tables(函數(shù)和平臺模塊) function.mdl。
Fcn:用用戶自定義的函數(shù)(表達(dá)式)進(jìn)行運(yùn)算。
MATLAB Fcn:利用MATLAB的現(xiàn)有函數(shù)進(jìn)行運(yùn)算。
S-Function:調(diào)用自編的S函數(shù)的程序進(jìn)行運(yùn)算。
Look-Up Table:建立輸入信號的查詢表(線性峰值匹配)。
Look-Up Table(2-D):建立兩個(gè)輸入信號的查詢表(線性峰值匹配)。
數(shù)學(xué)(數(shù)學(xué)模塊) math.mdl。
Sum:加減運(yùn)算。
Product:乘運(yùn)算。
Dot Product:點(diǎn)乘運(yùn)算。
Gain:比例增益運(yùn)算。
Math 函數(shù):包括指數(shù)函數(shù)、對數(shù)函數(shù)、求平方、開根號等常用數(shù)學(xué)函數(shù)。
Trigonometric Function:三角函數(shù),包括正弦、余弦、正切等。
MinMax:最值運(yùn)算。
Abs:取絕對值。
Sign:符號函數(shù)。
Logical 經(jīng)營者:邏輯運(yùn)算。
Relational Operator:關(guān)系運(yùn)算。
Complex to 星等Angle:由復(fù)數(shù)輸入轉(zhuǎn)為幅值和相角輸出。
Magnitude-Angle to Complex:由幅值和相角輸入合成復(fù)數(shù)輸出。
Complex to Real-Imag:由復(fù)數(shù)輸入轉(zhuǎn)為實(shí)部和虛部輸出。
Real-Imag to Complex:由實(shí)部和虛部輸入合成復(fù)數(shù)輸出。
Nonlinear(非線性模塊) nonlinear.mdl。
色彩飽和度:飽和輸出,讓輸出超過某一值時(shí)能夠飽和。
Relay:滯環(huán)比較器,限制輸出值在某一范圍內(nèi)變化。
Switch:開關(guān)選擇,當(dāng)?shù)诙€(gè)輸入端大于臨界值時(shí),輸出由第一個(gè)輸入端而來,否則輸出由第三個(gè)輸入端而來。
Manual 道岔:手動選擇開關(guān)。
Signal&Systems(信號和系統(tǒng)模塊) sigsys.mdl。
In1:輸入端。
Out1:輸出端。
Mux:將多個(gè)單一輸入轉(zhuǎn)化為一個(gè)復(fù)合輸出。
Demux:將一個(gè)復(fù)合輸入轉(zhuǎn)化為多個(gè)單一輸出。
Ground:連接到?jīng)]有連接到的輸入端。
Terminator:連接到?jīng)]有連接到的輸出端。
分系統(tǒng):建立新的封裝(Mask)功能模塊。
Sinks(接收器模塊) sinks.mdl。
Scope:示波器。
XY Graph:顯示二維圖形。
To Workspace:將輸出寫入MATLAB的工作空間。
To File(.mat):將輸出寫入數(shù)據(jù)文件。
Sources(輸入源模塊) sources.mdl。
Constant:常數(shù)信號。
Clock:時(shí)鐘信號。
From Workspace:來自MATLAB的工作空間。
From File(.mat):來自數(shù)據(jù)文件。
Pulse Generator:脈沖發(fā)生器。
Repeating 序列:重復(fù)信號。
Signal Generator:信號發(fā)生器,可以產(chǎn)生正弦曲線、方波、鋸齒波及隨意波。
Step:階躍波信號。
匝道: 斜坡信號。
參考資料 >
Simulink 快速入門.MathWorks.2024-03-28
Simulink支持的硬件.MathWorks.2024-03-28