《MATLAB-Simulink仿真系統(tǒng)》由會員分享,可在線閱讀,更多相關《MATLAB-Simulink仿真系統(tǒng)(42頁珍藏版)》請在裝配圖網(wǎng)上搜索。
1、Simulink仿真系統(tǒng),在MATLAB中,Simulink是用來對動態(tài)系統(tǒng)進行建模、仿真和綜合分析的交互工具。 可使用Simulink提供的標準模型庫或者自行創(chuàng)建的模型庫,描述、模擬和精化系統(tǒng)行為。,內(nèi) 容,簡單示例 Simulink仿真環(huán)境 仿真模型的創(chuàng)建 動態(tài)仿真與結(jié)果分析 子系統(tǒng)的創(chuàng)建與封裝 連續(xù)系統(tǒng)建模,簡單示例,,示例:用示波器觀察正弦波信號,目的:領略Simulink的操作環(huán)境; 體驗Simulink建模、仿真過程與能力,步驟:(1) 進入Simulink仿真環(huán)境; (2) 創(chuàng)建仿真模型 (3) 仿真與結(jié)果分析,簡單示例,,步驟1:進入Simulink仿真環(huán)境 單
2、擊Matlab命令窗口中的Simulink按鈕 選擇File New Model命令 在Matlab的命令窗口中輸入命令simulink,可打開 “Simulink Libarary Browser”對話框,在該對話框中可查看各種Simulink模塊。創(chuàng)建或打開一個模型窗口。,簡單示例,,步驟2:創(chuàng)建模型 添加Simulink模塊; 設置模塊的屬性; 連接模塊。,在模型窗口中,生成了仿真模型。,簡單示例,,步驟3:運行仿真系統(tǒng) 設置仿真參數(shù); 啟動仿真; 修改仿真顯示的結(jié)果。,雙擊示波器,生成示波器窗口。運行仿真可觀察仿真結(jié)果。,簡單示例,,練習: 使用Simulink來計算“chirp”信
3、號和正弦函數(shù)信號疊加后的信號波形。 提示: (1) 模塊庫中的信號源、宿源、數(shù)學操作;,Simulink仿真環(huán)境,, 工具欄 新建一個Simulink模型; 打開一個已創(chuàng)建的Simulink模型; 將瀏覽器設置在桌面的最高層; 關鍵詞查找。 菜單欄,模塊庫瀏覽器(Simulink Library Brower),Simulink下常用模塊,,Simulink提供了諸多子模塊組,每個子模塊組中還包含眾多的下一級子模塊及模塊組.,輸入模塊組Sources (可用來驅(qū)動系統(tǒng),作為輸入信號) 輸出池模塊組Sinks 連續(xù)系統(tǒng)模塊組Continuous 離散系統(tǒng)模塊組Discrete 非線性模塊
4、組Discontinuities 數(shù)學函數(shù)模塊組Math Operations 查表模塊組Look-up Tables 用戶自定義函數(shù)模塊組User-defined Functions,Simulink下常用模塊,,信號模塊組Signal Routing 信號屬性模塊組Signal Attributes,Simulink仿真環(huán)境,, 單窗口與雙窗口(模型框、模型瀏覽器) 工具欄 菜單欄 狀態(tài)欄,Simulink 模型窗口界面,創(chuàng)建仿真模型,,創(chuàng)建仿真模型就像搭積木一樣,打開創(chuàng)建模型窗口,首先從相應的模塊庫中選出所需要的仿真模塊,添加到模型窗口中。然后用信號線把各個模塊按照系統(tǒng)要求連接起來,組成
5、所需要的系統(tǒng)仿真模型。 仿真模塊是創(chuàng)建仿真模型的基本單元,是進行動態(tài)系統(tǒng)仿真的基礎,創(chuàng)建仿真模型,,鼠標左鍵法 鼠標右鍵法,仿真模塊操作,(1) 添加一個仿真模塊,(2) 模塊的選定,單個模塊的選定 多個模塊的選定,創(chuàng)建仿真模型,,仿真模塊操作,(3) 模塊的復制,(4) 模塊的刪除,(5) 模塊的移動,(6) 模塊大小的調(diào)整,(7) 模塊的旋轉(zhuǎn),菜單或鼠標右鍵:Format/Rotate,創(chuàng)建仿真模型,仿真模塊操作,(8) 模塊標簽的操作,更改模塊標簽名:雙擊并修改 改變模塊標簽位置:菜單或鼠標拖拽 隱藏模塊標簽:菜單或鼠標右鍵 Format/Hide name,(9)
6、增加模塊陰影,菜單或鼠標右鍵 Format/Hide drop shadow,創(chuàng)建仿真模型,仿真模塊操作,(10) 模塊參數(shù)的設置,雙擊相應模塊,在打開的參數(shù)設置對話框中,既可查看模塊的各項默認參數(shù)設置,也可根據(jù)需要修改各項參數(shù)設置。,創(chuàng)建仿真模型,,仿真信號線,(1) 模塊間信號線的連接,信號線上傳輸?shù)男盘柨梢允菢肆恳部梢允鞘噶啃盘枴?(2) 繪制支路信號線,光標指向分支線的起點,按下鼠標右鍵(或按ctrl鍵,再按鼠標左鍵),看光標變?yōu)槭?,拖動鼠標直至分支線的終點處,釋放鼠標按鈕。,創(chuàng)建仿真模型,,仿真信號線,(3) 在信號線間插入模塊操作,選中需要插入的模塊,拖動模塊到信號線上需要插入模
7、塊的地方,釋放鼠標即可。要求插入的模塊只能由一個輸入端和一個輸出端。,創(chuàng)建仿真模型,,仿真信號線,(4) 分割信號線操作,選中需要分割的信號線,把鼠標移至分割點,同時按下Shift鍵和鼠標左鍵,將鼠標拖動分割點至所要求的位置,松開鼠標和Shift鍵即可。,(5) 移動信號線操作,創(chuàng)建仿真模型,,仿真信號線,(6) 設置信號線標簽操作,在需要輸入標簽的信號線上雙擊鼠標,在編輯框中輸入標簽,再用鼠標把標簽拖到合適的位置。,創(chuàng)建仿真模型,,對模型的注釋,(1) 模型注釋的創(chuàng)建,在將用作注釋區(qū)的中心位置,雙擊鼠標左鍵,出現(xiàn)編輯框,輸入完所需的文字后,在框外單擊鼠標左鍵。,(2) 注釋位置的移動,仿真參
8、數(shù)設置,,Solver選項頁,設置仿真時間、解算方法、輸出選擇等。,菜單Simulation/simulation parameters命令,完成對各項仿真參數(shù)的設置。包括Solver、workspace I/O、Diagnostics、Advanced、Real-Time Workshop選項,(1) 仿真時間,Start time 和 Stop time,仿真參數(shù)設置,,Solver選項頁,(2) 仿真解法設置,Simulink模型本質(zhì)上是一個計算機程序,它定義了描寫被仿真系統(tǒng)的一組微分或差分方程。仿真時要選擇一種數(shù)值解算方法。,變步長解法 定步長解法,變步長解法步長 容差,ode45 o
9、de23 ode113 ode15s,仿真參數(shù)設置,Solver選項頁,(3) 輸出模式設置,細化輸出、產(chǎn)生額外輸出、只產(chǎn)生指定的輸出。一般取缺省設置。,仿真參數(shù)設置,Workspace選項頁,(1) Load from workspace,仿真數(shù)據(jù)輸入輸出設置。,在模型窗中若使用輸入摸塊In,需選中Input復選框,并在文本框中輸入指定的變量名,例如 t u,若輸入模塊有n個,則u的第1,2,,n列分別送往輸入模塊In1,In2,,Inn 外部輸入采用的形式可以是輸入矩陣,也可以是結(jié)構(gòu)數(shù)組。,仿真參數(shù)設置,Workspace選項頁,(2) Save to workspace,設置保存到
10、工作空間的變量,其中包括時間、狀態(tài)量和輸出。用戶可以對保存到工作空間中的變量賦予不同的變量名稱。 Time和Output兩個復選框默認是被選定的,一般在模型運行后,在工作空間都會增加兩個變量tout和yout.,運行仿真,啟動仿真:命令、窗口或按下Ctrl+T組合鍵。,如果在仿真運行過程中有錯誤發(fā)生,Simulink會中斷仿真并彈出仿真診斷對話框來顯示錯誤信息。,仿真結(jié)果分析,利用輸出模塊分析或使用函數(shù)分析。,利用輸出模塊顯示系統(tǒng)的仿真結(jié)果。有以下幾種方法: (1) 觀察輸出軌跡; (2) 以文件形式輸出; (3) 直接顯示數(shù)據(jù)輸出; (4) 用表盤和量計顯示輸出; (
11、5) 進行數(shù)字信號處理、分析輸出,利用輸出模塊分析,仿真結(jié)果分析,利用輸出模塊分析,(1) 觀察輸出軌跡,1) 用Scope模塊或XY Graph模塊,2) 將輸出信號寫入返回變量,并利用MATLAB命令繪圖,3) 使用To Workspace模塊把輸出寫入到Matlab工作空間,然后再通過Matlab的繪圖命令繪制輸出軌跡。,仿真結(jié)果分析,利用輸出模塊分析,(2) 以文件形式輸出仿真結(jié)果,利用輸出模塊庫中的To file模塊可以將仿真結(jié)果以Mat文件的格式直接保存到數(shù)據(jù)文件中。,(3) 直接顯示數(shù)據(jù)輸出,輸出模塊庫中提供了一個Display模塊,用于直接顯示數(shù)據(jù)。,仿真結(jié)果分析,利用輸出模塊
12、分析,(4) 表盤和量計顯示輸出,利用Dials 死區(qū)非線性模塊的死區(qū)起止值分別設置為-0.1和0.1,常用的Source庫信源,用來向模型提供信號. 沒有輸入口,而至少有一個輸出口.,Clock : (連續(xù))仿真時鐘,輸出每個仿真步點的時刻. Constant:恒值輸出,數(shù)值可設置 From File: 從文件讀數(shù)據(jù),從MAT文件獲取信號矩陣,信號以行方式存放,第一行是時間,其余每行存放一個信號序列. From Workspace:從工作內(nèi)存讀矩陣數(shù)據(jù),以列方式存放信號的信號矩陣T,U必須存在于MATLAB工作空間. Signal Generator:信號發(fā)生器,可產(chǎn)生正弦,方波,鋸齒波,隨
13、機波.,常用的Source庫信源,Sine: 正弦波輸出,可設置幅值,相位,頻率. Step: 階躍輸出,可設置階躍時刻,階躍前后的幅值.,常用的Source庫信源,例: 調(diào)用MATLAB工作空間中的信號矩陣作為模型輸入.輸入為,function TU=source1(T0,N0,K) t=linspace(0,K*T0,K*N0+1); N=length(t); U1=t(1:(N0+1)).2; U2=(t((N0+2):(2*N0+1))-2*T0).2;,u3(1:(N-(2*N0+2)+1))=0; U=u1,u2,u3; TU=t,u ,常用的Source庫信源
14、,例: 調(diào)用MATLAB工作空間中的信號矩陣作為模型輸入.輸入為,(2)構(gòu)造簡單的接收信號用的實驗模型: “From Workspace”, ”Scope”并連接 (3)模塊的參數(shù)設置: “From Workspace”中的data中填寫TU (4)在命令窗口運行: TU=source1(1,100,4); (5) 在模型窗口進行仿真.,常用的Sink庫信宿,用來接收信號,顯示信號.,Display : 數(shù)值顯示. Scope: 示波器 Stop: 終止仿真,可接受向量輸入,任何分量非零時,終止整個仿真.常與關系模塊配用. To File: 把數(shù)據(jù)保存為文件. To Workspace:
15、把數(shù)據(jù)寫成矩陣. XY Graph: 顯示X-Y圖形,示波器,顯示實時信號,示波器工具欄工具的使用; 示波器縱坐標范圍的手工設置; 示波器橫坐標的設置; 把示波器數(shù)據(jù)送入MATLAB工作空間; 多信號顯示區(qū)設置; 設置為游離示波器.,仿真(參數(shù))的配置,Simulink模型本質(zhì)上是一個計算機程序,它定義了描寫被仿真系統(tǒng)的一組微分或差分方程.,解算器類別: 變步長(Variable-step solver) 定步長(Fixed-step solver) 具體算法:ode45 (四解龍格庫塔法) ode23(改進歐拉法) ode113(變階法,求解非剛性微分方程) ode15s(求解剛性微分方程),練 習,在Simulink下求解初始狀態(tài)為0的二階微分方程:,u(t) 是單位階躍函數(shù).,改為 構(gòu)建模型(示波器模塊向工作空間存放仿真數(shù)據(jù); To workspace模塊向工作空間存放仿真數(shù)據(jù);或模型窗的I/O頁設置向工作空間存放仿真數(shù)據(jù)) 仿真操作,