基于matlab在程序中的仿真應(yīng)用有哪些?
基本思想:仿真的基本思想是利用物理的或數(shù)學(xué)的模型來類比模仿現(xiàn)實過程,以尋求過程和規(guī)律。它的基礎(chǔ)是相似現(xiàn)象,相似性一般表現(xiàn)為兩類:幾何相似性和數(shù)學(xué)相似性。當(dāng)兩個系統(tǒng)的數(shù)學(xué)方程相似,只是符號變換或物理含義不同時,這兩個系統(tǒng)被稱為“數(shù)學(xué)同構(gòu)”。
仿真的方法可以分為三類:
(1)實物仿真。它是對實際行為和過程進行仿真,早期的仿真大多屬于這一類。物理仿真的優(yōu)點是直觀、形象,至今在航天、建筑、船舶和汽車等許多工業(yè)系統(tǒng)的實驗研究中心仍然可以見到。比如:用沙盤仿真作戰(zhàn),利用風(fēng)洞對導(dǎo)彈或飛機的模型進行空氣動力學(xué)實驗、用圖紙和模型模擬建筑群等都是物理仿真。但是要為系統(tǒng)構(gòu)造一套物理模型,不是一件簡單的事,尤其是十分復(fù)雜的系統(tǒng),將耗費很大的投資,周期也很長。此外,在物理模型上做實驗,很難改變系統(tǒng)參數(shù),改變系統(tǒng)結(jié)構(gòu)也比較困難。至于復(fù)雜的社會、經(jīng)濟系統(tǒng)和生態(tài)系統(tǒng)就更無法用實物來做實驗了。
(2)數(shù)學(xué)仿真。就是用數(shù)學(xué)的語言、方法去近似地刻畫實際問題,這種刻畫的數(shù)學(xué)表述就是一個數(shù)學(xué)模型。從某種意義上,歐幾里德幾何、牛頓運動定律和微積分都是對客觀世界的數(shù)學(xué)仿真。數(shù)學(xué)仿真把研究對象(系統(tǒng))的主要特征或輸入、輸出關(guān)系抽象成一種數(shù)學(xué)表達(dá)式來進行研究。數(shù)學(xué)模型可分為:
●解析模型(用公式、方程反映系統(tǒng)過程);
●統(tǒng)計模型(蒙特卡羅方法);(一種基于隨機數(shù)的計算方法)
●表上作業(yè)演練模型。(用列表的方法求解線性規(guī)劃問題中運輸模型的計算方法。是指線性規(guī)劃一種求解方法。當(dāng)某些線性規(guī)劃問題采用圖上作業(yè)法難以進行直觀求解時,就可以將各元素列成相關(guān)表,作為初始方案,然后采用檢驗數(shù)來驗證這個方案,否則就要采用閉回路法、位勢法或矩形法等方法進行調(diào)整,直至得到滿意的結(jié)果。這種列表求解方法就是表上作業(yè)法。)
然而數(shù)學(xué)仿真也面臨一些問題,主要表現(xiàn)在以下幾個方面:
●現(xiàn)實問題可能無法用數(shù)學(xué)模型來表達(dá),即刻畫實際問題的表達(dá)式不存在或找不到;
●找到的數(shù)學(xué)模型由于太復(fù)雜而無法求解;
●求出的解不正確,可能是由模型的不正確或過多的簡化近似導(dǎo)致的。
(3)混合仿真。又稱為數(shù)學(xué)—物理仿真,或半實物仿真,就是把物理模型和數(shù)學(xué)模型以及實物聯(lián)合在一起進行實驗的方法,這樣往往可以獲得較好的效果。
2、計算機仿真
計算機仿真也稱為計算機模擬,就是利用計算機對所研究系統(tǒng)的結(jié)構(gòu)、功能和行為以及參與系統(tǒng)控制的主動者——人的思維過程和行為,進行動態(tài)性的比較和模仿,利用建立的仿真模型對系統(tǒng)進行研究和分析,并可將系統(tǒng)過程演示出來。
1.2計算機仿真模型與方法
1、系統(tǒng)
系統(tǒng)是指相互聯(lián)系又相互作用的元素之間的有機組合。這里所指的系統(tǒng)是廣義的,它包含所有的工程系統(tǒng)和非工程系統(tǒng)。電氣、機械和通信系統(tǒng)都是工程系統(tǒng),而經(jīng)濟、交通、管理和生物系統(tǒng)等都是非工程系統(tǒng)。
任何系統(tǒng)都存在三方面需要研究的內(nèi)容:
實體:組成系統(tǒng)的具體對象。
屬性:實體的特性(狀態(tài)和參數(shù))。即實體、屬性和活動。
由于組成系統(tǒng)的實體之間相互作用而引起實體屬性的變化,通常用“狀態(tài)”的概念來描述。研究系統(tǒng)就是研究系統(tǒng)狀態(tài)的改變,即系統(tǒng)的轉(zhuǎn)變。simulink仿真是MATLAB中的一種可視化仿真工具,是一種基于MATLAB的框圖設(shè)計環(huán)境。是實現(xiàn)動態(tài)系統(tǒng)建模,仿真和分析的一個軟件包,被廣泛應(yīng)用于線性系統(tǒng)、非線性系統(tǒng)、數(shù)字控制及數(shù)字信號處理的建模和仿真中,它提供一個動態(tài)系統(tǒng)建模、仿真、和綜合分析的集成環(huán)境。在該環(huán)境中,無需大量書寫程序,而只需要通過簡單直觀的鼠標(biāo)操作,就可構(gòu)造出復(fù)雜的系統(tǒng)。具有適應(yīng)面廣,結(jié)構(gòu)和流程清晰及仿真精細(xì)、貼近實際、效率高,靈活等優(yōu)點。廣泛應(yīng)用于控制理論和數(shù)字信號處理的復(fù)雜仿真系統(tǒng)和設(shè)計。
利用File→New命令,可以建立新的仿真模型;利用File→Open命令,可以打開已經(jīng)建立好的模型文件。
單擊“Library Browser”按鈕,將打開Simulink模塊庫瀏覽器窗口。此時,可以通過鼠標(biāo)將模塊庫中的模塊拖動到模型編輯窗口,再將各個模塊連接起來就構(gòu)成了仿真模型。
系統(tǒng)仿真模型的創(chuàng)建
模塊的添加:首先要在Simulink模塊庫瀏覽器窗口中找 到該模塊,然后用鼠標(biāo)將這個模塊拖曳到模型編輯窗口中即可。
模塊的刪除或復(fù)制:需要先選定模塊,再按刪除鍵;或在模型編輯窗口選擇Edit菜單項中的Cut、Copy、Paste等剪貼板操作命令。
兩個模塊的連接:先將鼠標(biāo)指針移動到一個模塊的輸出端當(dāng)鼠標(biāo)指針變成十字形光標(biāo)時按住鼠標(biāo)左鍵,移動鼠標(biāo)指針到另一個模塊的輸入端,當(dāng)連接線由虛線變成實線時,釋放鼠標(biāo)左鍵就完成了兩個模塊的連接。
連線的分支:在先連好一條線之后,把鼠標(biāo)指針移到分支點的位置。先按下Ctrl鍵,然后按住鼠標(biāo)拖曳到目標(biāo)模塊的輸入端,釋放鼠標(biāo)和Ctrl鍵。
模型存盤的兩種方法:
在Simulink模型編輯窗口選擇File→Save命令或Save as命令。
單擊模型編輯窗口工具欄中的Save命令按鈕。
模塊參數(shù)的設(shè)置:
1.雙擊要設(shè)置的模塊。
2.選擇要設(shè)置的模塊,再選擇Diagram→Block Parameters命令。
3.右擊要設(shè)置的模塊,從快捷菜單中選擇Block Parameters命令。
仿真參數(shù)的設(shè)置
選擇Simulation→Model Configuration Paramerers命令。
單擊工具欄中的Model Configuration Paramerers命令按鈕。
我們來看一道例題:
利用Simulink仿真,分別顯示曲線y=sint和y=cost,同時顯示sint對cost的變化曲線。
matlab仿真工具Simulink具有適應(yīng)面廣、結(jié)構(gòu)和流程清晰及仿真精細(xì)、貼近實際、效率高、靈活等優(yōu)點,并基于以上優(yōu)點Simulink已被廣泛應(yīng)用于控制理論和數(shù)字信號處理的復(fù)雜仿真和設(shè)計。同時有大量的第三方軟件和硬件可應(yīng)用于或被要求應(yīng)用于Simulink。
1豐富的可擴充的預(yù)定義模塊庫
2交互式的圖形編輯器來組合和管理直觀的模塊圖
3以設(shè)計功能的層次性來分割模型,實現(xiàn)對復(fù)雜設(shè)計的管理
4通過Model Explorer導(dǎo)航、創(chuàng)建、配置、搜索模型中的任意信號、參數(shù)、屬性,生成模型代碼
5提供API用于與其他仿真程序的連接或與手寫代碼集成
6使用Embedded MATLAB?模塊在Simulink和嵌入式系統(tǒng)執(zhí)行中調(diào)用MATLAB算法
7使用定步長或變步長運行仿真,根據(jù)仿真模式
(Normal,Accelerator,Rapid Accelerator)來決定以解釋性的方式運行或以編譯C代碼的形式來運行模型
8圖形化的調(diào)試器和剖析器來檢查仿真結(jié)果,診斷設(shè)計的性能和異常行為
9可訪問MATLAB從而對結(jié)果進行分析與可視化,定制建模環(huán)境,定義信號參數(shù)和測試數(shù)據(jù)10模型分析和診斷工具來保證模型的一致性,確定模型中的錯誤