Simulink仿真基礎
Simulink的特點
豐富的可擴充的預定義模塊庫
Simulink的操作界面
在MATLAB命令窗口鍵入simulink,或者在工具欄上點擊,或者點擊左下方的按鈕“Start”→“Simulink”→“Library Browser”即可打開Simulink Library Browser,如圖A-9所示。繼續(xù)點擊該窗口中的“new”按鈕,即可打開一個空白的模型窗口。此時就可以再模型窗口中建立模型并進行仿真工作,如圖A-10所示。
Simulink基本操作
1 Simulink的功能模塊庫
為了便于仿真建模,Simulink模塊庫提供了豐富的功能模塊,這些功能模塊分屬于不同功能、不同類別的子模塊庫。下面對Simulink的主要功能模塊庫進行簡要介紹。
通用模塊庫(Commonly Used Block):該模塊庫是由其他模塊庫中的一些常用模塊組成,主要是方便用戶,利于提高建模速度。
(1) 連續(xù)系統(tǒng)模塊庫(Continuous):該模塊庫提供了連續(xù)系統(tǒng)運算功能的多種模塊,如積分器模塊、傳遞函數(shù)模塊。
(2) 非線性系統(tǒng)模塊庫(Discontinuous):該模塊庫提供了常用的非線性模塊,如繼電器模塊、磁滯回環(huán)模塊。
(3) 離散系統(tǒng)模塊庫(Discrete):該模塊庫中提供了常用的線性離散模塊,如離散濾波器模塊、一階保持器模塊。
(4) 數(shù)學運算模塊庫(Math operations):該模塊庫中提供了包括數(shù)學運算、關系運算、復數(shù)運算等多種用于數(shù)學運算的模塊,如加法模塊、乘法模塊、常用數(shù)學函數(shù)模塊。
(5) 信號路徑模塊庫(Signal routing):該模塊庫提供了信號在模型中流動的各種路徑通道的選擇,包括信號的分離、匯合以及通道選擇等模塊。
(6) 輸出模塊庫(Sinks):該模塊庫提供了各種功能的輸出模塊,包括圖形顯示和數(shù)據存儲等,如示波器模塊、工作空間寫入模塊、數(shù)字顯示模塊。
(7) 信號源模塊庫(Sources):該模塊庫提供了仿真系統(tǒng)的輸入信號源,如時間信號模塊、讀工作空間模塊、正弦波輸入模塊。
2 Simulink模塊的基本操作
對模塊的基本操作主要對其外在狀態(tài)的操作(如移動位置、改變大小等),也有對其能在屬性的設定(如參數(shù)設定、輸入輸出信號設定等)。
(1) 添加模塊到模型窗口
在模塊庫中選擇模塊,然后右鍵,選擇【Add to xxx】,即可添加模塊到“xxx”模型窗口,此外也可選中模塊后直接拖動到模型窗口。
(2) 模塊間連線
將鼠標指向連線的起點,光標變?yōu)槭趾?,按下鼠標左鍵并拖動到連線終點即可;也可以先選定連線起點模塊,再按下【Ctrl】鍵保持不放,再點擊連線終點模塊。若要從一個連線起點連到多個連線終點,則先按上述方法連好一根線,在將光標移至該信號線上的某點,再按下鼠標右鍵保持不放,或者按住【Ctrl】鍵保持不放,拖動鼠標到需要連線的終點。模塊間的連線不能實現(xiàn)多個連線起點連到一個連線終點。
(3) 模塊的移動
若要帶線移動,則選中模塊,按住鼠標左鍵不放,將其拖到所需位置;若要脫離線而移動,可按住【Shift】鍵,再將其拖到所需位置。
(3) 模塊的剪切、復制和粘貼
選中模塊,再用按鍵【Ctrl + X】、【Ctrl + C】和【Ctrl + V】可分別實現(xiàn)剪切、復制和粘貼。此外按住鼠標右鍵進行拖動,也可復制出相同的功能模塊。
(4) 改變模塊的大小
選中模塊,對模塊的四個角出現(xiàn)的黑色標記進行拖動即可改變大小。此外,用按鍵【Shift +R】和【Shift +V】可以分別放大和縮小整個模型窗口中的模塊。
(5) 模塊參數(shù)設定
用鼠標雙擊模塊,就可以進入模塊的參數(shù)設定窗口,從而對模塊進行參數(shù)設定。參數(shù)設定窗口包含了該模塊的基本功能幫助,為獲得更詳盡的幫助,可以點擊其上的Help按鈕。通過對模塊的參數(shù)設定,就可以獲得需要的功能模塊。
(6) 模塊屬性設定
選中模塊,打開【Edit】菜單的【Block Properties】可以對模塊進行屬性設定。包括Description屬性、Priority優(yōu)先級屬性、Tag屬性、Open function屬性、Attributes format string屬性。其中Open function屬性是一個很有用的屬性,通過它指定一個函數(shù)名,則當該模塊被雙擊之后,Simulink就會調用該函數(shù)執(zhí)行,這種函數(shù)在MATLAB中稱為回調函數(shù)。
3 Simulink的仿真配置
選擇模型窗口工具欄中的【Simulation】菜單下的【Configuration Parameters】就會彈出配置參數(shù)界面,如圖A-11所示。在此界面中允許用戶設置仿真控制參數(shù)。
用戶可以在【Simulation time】中可以仿真開始時間和最大結束時間,在【Solver option】中可以選擇和設置解算器。解算器有兩種類型(Type):變步長類型和固定步長類型。為了保證精度,一般建議選擇變步長類型。在不同類型下對應有不同的算法(Solver),如ode45、ode23等,用戶可以選擇不同的算法進行仿真分析。對于不同的解算器類型都對應有不同的參數(shù)設置,如變步長類型模式下的最大步長、最小步長、相對誤差和絕對誤差等。
Simulink系統(tǒng)建模示例
【例1】觀察單位階躍函數(shù)經慣性環(huán)節(jié)后的仿真曲線,傳遞函數(shù)模型為
打開Simulink,新建空白模型窗口。
在信號源模塊庫(Sources)中選擇階躍輸入模塊(Step),在輸出模塊庫(Sinks)中選擇示波器模塊(Scope),在連續(xù)系統(tǒng)模塊庫(Continuous)中選擇傳遞函數(shù)模塊(Transfer Fcn),并逐個拖入模型窗口。雙擊Step模塊,設置其屬性如圖A-12。
雙擊Scope模塊,彈出如圖A-13,點擊左上方的屬性按鈕 Parameters,彈出對話框,設置屬性如圖A-14。
點擊模型窗口工具欄中的開始仿真按鈕,即可按默認仿真參數(shù)仿真。雙擊Scope模塊查看仿真曲線,如圖A-16所示。
可以根據需要修改各模塊屬性,再次仿真運行,觀察仿真結果與上圖仿真結果的區(qū)別。
【例2】滑翔飛行器質心運動的動力學方程和運動學方程可簡化為: