




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、技術(shù)凝聚實力技術(shù)凝聚實力專業(yè)創(chuàng)新出版專業(yè)創(chuàng)新出版第23章 SIMULINK高級技術(shù)l在第22章中,對SIMULINK使用的一些基礎(chǔ)知識、動態(tài)系統(tǒng)建模方法及仿真的方法做了詳細的介紹。在22章的介紹中讀者可以看到,SIMULINK環(huán)境中可運行的工具包很多,已經(jīng)涵蓋了航空、航天、控制、通訊、DSP、電力等諸多領(lǐng)域,所涉及的內(nèi)容專業(yè)性極強。為此,本章將向讀者介紹一些SIMLINK的高級技術(shù),以求給讀者一個更加深刻的印象。l本章主要介紹SIMULINK的高級仿真技術(shù),主要包括:數(shù)據(jù)顯示、高級積分器 、過零以及系統(tǒng)代數(shù)環(huán)形成與處理、SIMULINK條件執(zhí)行子系統(tǒng)、SIMULINK調(diào)試技術(shù)、模塊庫的擴展及函
2、數(shù)的創(chuàng)建與使用等。技術(shù)凝聚實力技術(shù)凝聚實力專業(yè)創(chuàng)新出版專業(yè)創(chuàng)新出版23.1 數(shù)據(jù)顯示l在工程設(shè)計中,對于大多數(shù)工程設(shè)計人員來說,查看和分析結(jié)果曲線對于了解模型的內(nèi)部結(jié)構(gòu),以及判斷結(jié)果的準確性具有重要意義。lSIMULINK仿真模型后,繪制模型輸出軌跡的方法有以下幾種:l將信號輸出到Scope模塊或XY Graph模塊;l使用懸浮Scope模塊或Display模塊;l將輸出數(shù)據(jù)寫入到返回變量,并用MATLAB的繪圖命令繪制曲線;l將輸出數(shù)據(jù)用To Workspace模塊寫入到工作區(qū),并用MATLAB的繪圖命令繪制結(jié)果曲線。技術(shù)凝聚實力技術(shù)凝聚實力專業(yè)創(chuàng)新出版專業(yè)創(chuàng)新出版23.1.1 使用Scop
3、e模塊lScope模塊是示波器模塊,它與實驗室中使用的示波器功能類似,在模型仿真運行結(jié)束后,用戶可以再通過雙擊打開Scope模塊,觀察輸出軌跡。lScope模塊顯示對應(yīng)于仿真時間的輸入信號,該模塊可以在一個坐標系中,以不同的顏色同時顯示出多個輸入信號,用戶可以調(diào)整需要顯示的時間范圍和輸入值范圍。當用戶運行模型仿真時,雖然SIMULINK會把結(jié)果數(shù)據(jù)寫入到相應(yīng)的Scope中,但它并不打開Scope窗口,用戶在仿真結(jié)束運行后雙擊Scope模塊打開示波器窗口,此時示波器窗口會顯示Scope模塊的輸入信號。如果信號是連續(xù)的,Scope會生成有點構(gòu)成的連續(xù)曲線;如果信號是離散的,Scope會生成階梯狀曲
4、線。此外,用戶還可以在仿真運行期間移動Scope窗口或改變窗口的大小,或Scope窗口的參數(shù)值。使用Scope模塊提供的工具欄按鈕,可以縮放被顯示的數(shù)據(jù),保存此次仿真的坐標軸設(shè)置,限制被顯示的數(shù)據(jù)量,把數(shù)據(jù)存儲到工作區(qū)等。技術(shù)凝聚實力技術(shù)凝聚實力專業(yè)創(chuàng)新出版專業(yè)創(chuàng)新出版23.1.2 使用XY Graph模塊lXY Graph模塊是SIMULINK中Sinks模塊庫中的模塊,該模塊利用MATLAB的圖形窗口繪制信號的XY曲線,這個模塊有兩個標量輸入,它把第一個輸入作為X軸數(shù)據(jù),第二個輸入作為Y軸數(shù)據(jù),X軸和Y軸的坐標范圍可以在模塊的參數(shù)對話框內(nèi)設(shè)置,如圖23.5所示,超出指定范圍的數(shù)據(jù)在圖形窗口
5、中不顯示。此外,如果模型中有多個XY Graph模塊,SIMULINK仿真的起始時刻會為每個XY Graph模塊打開一個圖形顯示窗口。技術(shù)凝聚實力技術(shù)凝聚實力專業(yè)創(chuàng)新出版專業(yè)創(chuàng)新出版23.1.3 使用懸浮Scope模塊l懸浮Scope模塊也是一個可以顯示一個或多個信號的示波器模塊,用戶啟用懸浮Scope模塊的方式有:l從SIMULINK的Sinks庫中把Scope復(fù)制到模型中并按下“懸浮示波器按鈕,將Scope模塊設(shè)置為懸浮示波器;l直接從Sinks庫中把Floating Scope模塊復(fù)制到模型窗口中。l懸浮示波器是不帶輸入端口的模塊,它可以在仿真過程中顯示任何一個被選擇的信號,懸浮示波器通
6、過示波器窗口中的藍框來辨別,下面,將結(jié)合如圖23.9所示的模型,演示浮動示波器的使用。技術(shù)凝聚實力技術(shù)凝聚實力專業(yè)創(chuàng)新出版專業(yè)創(chuàng)新出版23.1.4 使用命令繪制輸出曲線l關(guān)于使用命令繪制輸出曲線,這里將通過一個建模的例子向讀者說明。l【例23.1】 求解微分方程。其中是單位階躍函數(shù),初始值為0。l要求解這樣一個問題,關(guān)鍵是建立能夠表征例中微分方程的模型,故其模型實現(xiàn)步驟如下。l(1改寫微分方程為:。l(2選擇模塊、構(gòu)建模型。在微分問題中,往往是通過積分來解決微分問題,基本思路是:經(jīng)過積分得到,再經(jīng)過積分得到,而可由1中的代數(shù)運算得到。技術(shù)凝聚實力技術(shù)凝聚實力專業(yè)創(chuàng)新出版專業(yè)創(chuàng)新出版23.2 過
7、零檢測l在運行動態(tài)系統(tǒng)仿真時,SIMULINK利用過零檢測來檢查每個時間步上系統(tǒng)狀態(tài)變量的不連續(xù)性,如果SIMULINK在當前工作時刻檢測到不連續(xù)性,它會確定不連續(xù)性狀態(tài)出現(xiàn)的準確時刻,并在該時刻的前后選取另外的時間步來求取仿真結(jié)果。技術(shù)凝聚實力技術(shù)凝聚實力專業(yè)創(chuàng)新出版專業(yè)創(chuàng)新出版23.2.1 過零檢測的工作方式l在動態(tài)系統(tǒng)中,狀態(tài)變量的不連續(xù)性往往表征了系統(tǒng)的重要事件。以籃球撞擊地面系統(tǒng)為例,在籃球撞擊地面的時刻,撞擊的位置是不連續(xù)的,在仿真中,如果籃球是在兩次時間步之間撞擊了地面,那么仿真的結(jié)果可能是籃球在半空中就已經(jīng)翻轉(zhuǎn)方向,這與我們實際情況是不相符的,因此,對不連續(xù)點的精確仿真是非常重
8、要的。技術(shù)凝聚實力技術(shù)凝聚實力專業(yè)創(chuàng)新出版專業(yè)創(chuàng)新出版23.2.2 執(zhí)行過零檢測l過零檢測可以使SIMULINK精確的仿真不連續(xù)點,而不必過多的選用小步長。事實上,SIMULINK中的許多模塊都支持過零檢測。在實際仿真中,如果用戶對所有的系統(tǒng),包括含有不連續(xù)狀態(tài)的系統(tǒng),利用過零檢測進行仿真,不僅可以加快仿真速度,也可以提高仿真精度。l對于SIMULINK中不同模塊來說,產(chǎn)生過零的類型是不同的,如Abs模塊是在輸入信號符號發(fā)生變化時產(chǎn)生過零,而積分模塊進入飽和區(qū)段時產(chǎn)生過零。后一種模塊我們稱為飽和Saturation模塊,當過零檢測功能檢測到飽和模塊發(fā)生如下事件時產(chǎn)生過零:l輸入信號達到上限;l
9、輸入信號離開上限;l輸入信號到達下限;l輸入信號離開下限。技術(shù)凝聚實力技術(shù)凝聚實力專業(yè)創(chuàng)新出版專業(yè)創(chuàng)新出版23.3 代數(shù)環(huán)的概念及解決方案l在SIMULINK仿真中,讀者可能看到如下的代碼信息:lFound algebraic loop containing:l li14/k2l li14/Sum (algebraic variable)l這說明在模型中存在代數(shù)環(huán)Algebraic Loops),SIMULINK中代數(shù)環(huán)與數(shù)學(xué)上的代數(shù)循環(huán)的概念是一樣的。通常,在代數(shù)環(huán)中包含的某些模塊都具有這樣的特性:當前時刻模塊的輸出依賴于當前時刻模塊的輸入。這種輸入輸出關(guān)系在時間上“無延時模塊被稱為直接饋通
10、模塊Direct feedthrough)。在SMULINK中具有這種“無延時特性模塊有:技術(shù)凝聚實力技術(shù)凝聚實力專業(yè)創(chuàng)新出版專業(yè)創(chuàng)新出版23.3.1 代數(shù)環(huán)的表征l一般來說,代數(shù)環(huán)在模型圖表現(xiàn)為含有直接饋通模塊的閉合回路。如下圖23.19所示。模型中紅色顯示的部分就是一個閉合的含有直接饋通模塊的代數(shù)環(huán),讀者可以在運行模型后在MATLAB命令窗口中驗證。技術(shù)凝聚實力技術(shù)凝聚實力專業(yè)創(chuàng)新出版專業(yè)創(chuàng)新出版23.3.2 代數(shù)環(huán)問題的解決l計算機在處理代數(shù)環(huán)計算時,采用的是一種迭代算法,也就是說每個時間步里,計算機都將進行這樣的計算,這會使得計算機的計算時間增長。同時,由于這種代數(shù)環(huán)包含的模塊的“無延
11、時特性,要求環(huán)上所有模塊的輸出在同一時刻計算,這與系統(tǒng)順序仿真的要求不符。l要解決代數(shù)環(huán)問題,可以采取以下方式:l方式一:設(shè)計模型時盡量不采用代數(shù)環(huán)設(shè)計;l方式二:在計算速度可以忍受的范圍內(nèi),可以不必介意代數(shù)環(huán)問難;l方式三:對代數(shù)環(huán)采取代數(shù)約束;l方式四:切斷模型中的代數(shù)環(huán)。技術(shù)凝聚實力技術(shù)凝聚實力專業(yè)創(chuàng)新出版專業(yè)創(chuàng)新出版23.4 高級積分器l在SIMULINK的Continues庫中有一個非常重要的模塊就是積分模塊Integrator,其功能是對輸入信號進行積分,并輸出當前時間步上的積分值。這里用一個等式來說明:,其中,y時模塊的輸出,u時輸入,是初始時刻,t是當前時刻,是初始狀態(tài)。lSI
12、MULINK可以用許多中不同的數(shù)值積分方法來計算積分模塊的輸出,每種方法在特定的環(huán)境下都有各自的優(yōu)缺點,SIMULINK將積分模塊看作一個具有狀態(tài)和輸出的動態(tài)系統(tǒng),他的輸入時狀態(tài)的時間導(dǎo)數(shù)。如下式所示:,用戶可以在Simulation Parameters對話框中選擇合適的求解器算法,所選擇的求解器會用當前時刻的輸入值和前一時刻時間步的狀態(tài)值來計算當前時間步上積分模塊的輸出值。為了支持這種計算模式,積分模塊必須保存當前時間步的輸出值以備計算下一時間步的輸入值,同時,模塊也提供給求解器一個初始條件,用來在仿真開始執(zhí)行時計算模塊的初始狀態(tài),默認情況下值為0。模塊參數(shù)對話框也允許用戶為初始條件指定其
13、他值,或者在模塊中創(chuàng)建一個初始值輸入端口。技術(shù)凝聚實力技術(shù)凝聚實力專業(yè)創(chuàng)新出版專業(yè)創(chuàng)新出版23.4.1 定義初始條件l雙擊積分模塊,打開積分模塊參數(shù)屬性對話框,如下圖。l在該對話框中,用戶可以將初始條件定義為參數(shù),或選擇從外部信號輸入初始條件。技術(shù)凝聚實力技術(shù)凝聚實力專業(yè)創(chuàng)新出版專業(yè)創(chuàng)新出版23.4.2 限制積分l為了防止輸出超出指定的范圍,用戶可以勾選Limit output復(fù)選框,在下面的參數(shù)文本框中輸入適當?shù)南拗品秶?,如圖23.26所示。l當輸出達到限制值時,SIMULINK將關(guān)閉積分動作,在積分過程中,用戶可以改變這個積分限制,但模塊的輸出將遵循以下規(guī)則:l當積分小于或等于Lower
14、 saturation limit參數(shù)值,而且輸入是負值時,輸出被限制在Lower saturation limit值;l當積分在Lower saturation limit和Upper saturation limit之間時,輸出是積分值;l當積分大于或等于Upper saturation limit參數(shù)值,而且輸入是正值時,輸出被限制在Upper saturation limit值。技術(shù)凝聚實力技術(shù)凝聚實力專業(yè)創(chuàng)新出版專業(yè)創(chuàng)新出版23.4.3 重新設(shè)置狀態(tài)l積分模塊可以根據(jù)外部信號重新把狀態(tài)設(shè)置為指定的初始條件。當用戶選擇積分模塊參數(shù)對話框中External reset列表下的任意選項時,
15、模塊輸入端口的下方將出現(xiàn)一個觸發(fā)端口,同時標注所選項的觸發(fā)類型,如圖23.30所示。lExternal reset列表下各項功能說明如下:lrising:當重置信號有上升沿時觸發(fā)狀態(tài)重置;lfalling:當重置信號有下降沿時觸發(fā)狀態(tài)重置;leither:當重置信號有上升沿或者下降沿發(fā)生時,觸發(fā)重置;llevel;當重置信號為非零時,觸發(fā)重置,并保持輸出為初始條件值。技術(shù)凝聚實力技術(shù)凝聚實力專業(yè)創(chuàng)新出版專業(yè)創(chuàng)新出版23.4.4 狀態(tài)端口l勾選積分模塊參數(shù)對話框中Show state port復(fù)選框,積分模塊將在其頂部出現(xiàn)一個附加的輸出端口,即狀態(tài)端口。如果模塊在當前時間步上重置,那么狀態(tài)端口的
16、輸出值是模塊還沒有被重置時標準輸出端口的值;除此以外,狀態(tài)端口和模塊的標準輸出端口一樣。l由于狀態(tài)端口比積分模塊標準輸出端口早一個時間步,因此,狀態(tài)端口的使用可以使用戶在創(chuàng)建下列模型時 避免代數(shù)環(huán)的出現(xiàn):l自重置積分器;l在兩個使能子系統(tǒng)間傳遞狀態(tài)。技術(shù)凝聚實力技術(shù)凝聚實力專業(yè)創(chuàng)新出版專業(yè)創(chuàng)新出版23.4.5 創(chuàng)建自重置積分器l有時候,用戶可能需要創(chuàng)建一個根據(jù)積分器輸出值來重新設(shè)置積分器初始值的模型,那么這時,往往產(chǎn)生一個代數(shù)環(huán);為了避免這個問題,用戶最好使用積分模塊狀態(tài)端口這個功能來避免代數(shù)環(huán)的產(chǎn)生。在如圖所示的模型中,創(chuàng)建了一個自重置積分器,其將輸出減去1后反饋回積分器的重置端口。l但是,
17、當運行這個模型時,將彈出如圖所示的仿真錯誤診斷器,顯示仿真中出現(xiàn)代數(shù)環(huán),并在2.449489742783214時刻停止仿真,而SIMULINK無法判斷積分器的輸出值,因為計算積分器的輸出需要知道模塊的重置信號。技術(shù)凝聚實力技術(shù)凝聚實力專業(yè)創(chuàng)新出版專業(yè)創(chuàng)新出版23.5 簡單子系統(tǒng)l對于工程問題,建立的模型往往非常復(fù)雜,此時,可以通過把多個模塊組合在子系統(tǒng)中來簡化模型。創(chuàng)建子系統(tǒng)有如下優(yōu)點:l減少了模型窗口中顯示模塊的數(shù)目;l使得模塊之間的函數(shù)關(guān)系清晰化;l建立層次模型,子系統(tǒng)作為一個層,組成子系統(tǒng)的其他模塊構(gòu)成另一個層;l子系統(tǒng)可以反復(fù)調(diào)用。技術(shù)凝聚實力技術(shù)凝聚實力專業(yè)創(chuàng)新出版專業(yè)創(chuàng)新出版23.
18、5.1 系統(tǒng)的基本操作和子系統(tǒng)創(chuàng)建的方法l在用戶使用SIMULINK子系統(tǒng)建立系統(tǒng)模型之前,簡單介紹一下子系統(tǒng)的基本操作。l1子系統(tǒng)命名:命名方法與模塊命名類似。為增強系統(tǒng)模型的可讀性,應(yīng)使用有代表意義的文字給子系統(tǒng)進行命名。l2子系統(tǒng)編輯:用鼠標左鍵雙擊子系統(tǒng)模塊圖標,打開子系統(tǒng)屬性對話框?qū)ζ溥M行編輯。l3子系統(tǒng)的輸入:使用Sources模塊庫中的Inport輸入模塊即In1模塊作為子系統(tǒng)的輸入端口。l4子系統(tǒng)的輸出:使用Sinks模塊庫中的Outport輸出模塊即Out1模塊作為子系統(tǒng)的輸出端口。技術(shù)凝聚實力技術(shù)凝聚實力專業(yè)創(chuàng)新出版專業(yè)創(chuàng)新出版23.5.2 組合已有模塊創(chuàng)建子系統(tǒng)l這是一種
19、比較簡單的方法,也易于用戶操作。下面通過一個實例來說明通過組合已有模塊來創(chuàng)建子系統(tǒng)的具體方法。技術(shù)凝聚實力技術(shù)凝聚實力專業(yè)創(chuàng)新出版專業(yè)創(chuàng)新出版23.5.3 添加Subsystem模塊創(chuàng)建子系統(tǒng)l添加子系統(tǒng)模塊創(chuàng)建子系統(tǒng)的方法就是首先將系統(tǒng)模型模塊化,即將模型中實現(xiàn)不同功能的模塊組看成一個子系統(tǒng),用一個空的子系統(tǒng)模塊來表征,勾畫出整個系統(tǒng)的方框圖,再在空的子系統(tǒng)模塊中添加相應(yīng)的模塊來實現(xiàn)該子系統(tǒng)的預(yù)定功能。l下面的例子將演示這種創(chuàng)建方法。技術(shù)凝聚實力技術(shù)凝聚實力專業(yè)創(chuàng)新出版專業(yè)創(chuàng)新出版23.6 條件執(zhí)行子系統(tǒng)l條件執(zhí)行子系統(tǒng)的執(zhí)行受到控制信號的控制,也就是說,系統(tǒng)的輸出受輸入信號之外的另一個信號
20、控制。這個控制信號是從子系統(tǒng)的一個單獨端口輸入的。根據(jù)控制信號對條件子系統(tǒng)執(zhí)行的控制方式的不同,可以將條件執(zhí)行子系統(tǒng)劃分為如下的幾種基本類型。l使能子系統(tǒng)Enable Subsystem):當子系統(tǒng)為正時,子系統(tǒng)將被執(zhí)行。l觸發(fā)子系統(tǒng)Triggered Subsystem):當控制信號的符號發(fā)生變化時,即當信號過零時,自系統(tǒng)將被執(zhí)行。其觸發(fā)方式有三種,控制信號上升沿時觸發(fā),控制信號下降沿時觸發(fā),控制信號上升或下降沿時觸發(fā)。l使能觸發(fā)子系統(tǒng)Enable and Triggered Subsystem):在使能狀態(tài)下被觸發(fā)時執(zhí)行子系統(tǒng)。即在控制信號為正的同時出現(xiàn)觸發(fā)信號,子系統(tǒng)才被執(zhí)行。技術(shù)凝聚實
21、力技術(shù)凝聚實力專業(yè)創(chuàng)新出版專業(yè)創(chuàng)新出版23.6.1 使能子系統(tǒng)Enable Subsystem)l使能子系統(tǒng)Enable Subsystem在控制信號為正值時的時間步上開始執(zhí)行,一個使能子系統(tǒng)有單個的控制輸入,該輸入信號可以是標量也可以是向量。l如果控制信號是標量,那么當輸入信號大于零時子系統(tǒng)開始執(zhí)行。l如果控制信號是向量,那么當向量中的一個分量大于零時子系統(tǒng)開始執(zhí)行。l下面將通過事例來說明使能子系統(tǒng)的使用。技術(shù)凝聚實力技術(shù)凝聚實力專業(yè)創(chuàng)新出版專業(yè)創(chuàng)新出版23.6.2 觸發(fā)子系統(tǒng)Triggered Subsystem)l觸發(fā)子系統(tǒng)指的是只有在控制信號的符號發(fā)生改變的情況下也就是控制信號出現(xiàn)過零
22、事件時),子系統(tǒng)才開始執(zhí)行。按照控制信號符號變化方式的不同,觸發(fā)子系統(tǒng)可分為如下三類: l上升沿觸發(fā)子系統(tǒng)。系統(tǒng)在控制信號出現(xiàn)上升沿時開始執(zhí)行;l下降沿觸發(fā)子系統(tǒng)。系統(tǒng)在控制信號出現(xiàn)下降沿時開始執(zhí)行;l雙邊沿上升沿或下降沿觸發(fā)子系統(tǒng)。系統(tǒng)在控制信號出現(xiàn)任何過零時開始執(zhí)行。技術(shù)凝聚實力技術(shù)凝聚實力專業(yè)創(chuàng)新出版專業(yè)創(chuàng)新出版23.6.3 觸發(fā)使能子系統(tǒng)l對于某些條件執(zhí)行子系統(tǒng)而言,其控制信號可能不止一個。在很多情況下,條件執(zhí)行子系統(tǒng)同時具有觸發(fā)控制信號與使能控制信號,這樣的條件執(zhí)行子系統(tǒng)一般稱之為觸發(fā)使能子系統(tǒng)。顧名思義,觸發(fā)使能子系統(tǒng)指的是子系統(tǒng)的執(zhí)行受到觸發(fā)信號和使能信號的共同控制,也就是說,只
23、有當觸發(fā)條件與使能條件均滿足的情況下,子系統(tǒng)才開始執(zhí)行。觸發(fā)使能子系統(tǒng)的工作原理如圖所示。技術(shù)凝聚實力技術(shù)凝聚實力專業(yè)創(chuàng)新出版專業(yè)創(chuàng)新出版23.7 子系統(tǒng)封裝l封裝就是創(chuàng)建子系統(tǒng)的自定義用戶接口,也就是把具有一定功能的子系統(tǒng)封裝成一個模塊。它可以隱藏原子系統(tǒng)中的內(nèi)容,使其作為一個模塊顯示在用戶模型中,而且該模塊與SIMULINK中的固有模塊一樣有自己的圖標和參數(shù)對話框,當用戶雙擊這個模塊時可以打開屬性對話框,并設(shè)置參數(shù)值。lSIMULINK中的Mask Editor封裝編輯器提供了封裝子系統(tǒng)時編輯模塊的所有操作設(shè)置值,它可以對任何子系統(tǒng)進行封裝。若要打開封裝編輯器,可選擇子系統(tǒng)模塊,然后從包含
24、子系統(tǒng)的模型窗口中的菜單【Edit/Edit Mask】選項,或者在子系統(tǒng)模塊上單擊鼠標右鍵,在彈出的菜單中選擇Edit Mask選項,打開Mask editor對話框,其共有四個標簽頁:Icon、Parameters、Initialization和Documentation。技術(shù)凝聚實力技術(shù)凝聚實力專業(yè)創(chuàng)新出版專業(yè)創(chuàng)新出版23.7.1 Icon標簽頁lIcon標簽頁,如下圖,它可以創(chuàng)建包含文本說明、狀態(tài)方程、圖像和圖形的圖標。默認狀態(tài)下封裝子系統(tǒng)是不使用圖標的。Icon標簽頁包括圖標選項欄Icon option、繪圖命令欄Drawing commands以及繪圖命令舉例欄Examples o
25、f drawing commands。技術(shù)凝聚實力技術(shù)凝聚實力專業(yè)創(chuàng)新出版專業(yè)創(chuàng)新出版23.7.2 Parameters標簽頁l子系統(tǒng)封裝的目的之一就是提供一個友好的參數(shù)設(shè)置界面。用戶無須了解子系統(tǒng)內(nèi)部結(jié)構(gòu),只需輸入?yún)?shù)就可以對系統(tǒng)進行設(shè)計和仿真。子系統(tǒng)封裝編輯器界面Parameters標簽頁如圖所示。技術(shù)凝聚實力技術(shù)凝聚實力專業(yè)創(chuàng)新出版專業(yè)創(chuàng)新出版23.7.3 Initialization標簽頁l初始化設(shè)置標簽頁如圖所示。其中的對話變量表(Dialog variables)是在用戶設(shè)置了參數(shù)標簽頁Parameters中變量Variable之后自動生成的。初始化命令I(lǐng)nitialization
26、 commands一般是MATLAB命令,可以通過MATLAB命令定義封裝后子系統(tǒng)空間中的各種變量,以便這些變量在被封子系統(tǒng)模塊圖標繪制指令或其他初始化指令中使用。技術(shù)凝聚實力技術(shù)凝聚實力專業(yè)創(chuàng)新出版專業(yè)創(chuàng)新出版23.7.4 Documentation標簽頁lDocumentation標簽頁,可以幫助用戶建立全面的幫助文檔,通過該標簽頁可以定義或更改被封裝模塊的類型、說明和幫助文本,它有三個選項區(qū):Mask type、Mask description和Mask help。lMask type欄。在Mask type欄中輸入封裝子系統(tǒng)的標注性說明。在選擇模型窗口菜單【View/Block Dat
27、a Tips/Show Block Data Tips】子項之后,當鼠標停留在模塊上時模塊將會顯示該標注。lMask description欄。封裝說明區(qū)域中的文本內(nèi)容將顯示在參數(shù)設(shè)置窗口的說明部分,它可以對模塊的作用和參數(shù)的設(shè)置方式進行簡要的說明。lMask help欄。該區(qū)域中輸入的幫助信息將在單擊參數(shù)設(shè)置窗口的“Help按鈕后在瀏覽器加載的網(wǎng)頁中出現(xiàn)。技術(shù)凝聚實力技術(shù)凝聚實力專業(yè)創(chuàng)新出版專業(yè)創(chuàng)新出版23.7.5 子系統(tǒng)封裝舉例l【例23.12】封裝如圖所示的模型,其中Constant模塊表示自變量x,Display模塊顯示輸出y。模型實現(xiàn)直線方程,本例演示將實現(xiàn)功能的模塊封裝,并使其中斜
28、率k和截距b的變量化。技術(shù)凝聚實力技術(shù)凝聚實力專業(yè)創(chuàng)新出版專業(yè)創(chuàng)新出版23.8 SIMULINLK調(diào)試器lSIMULINK調(diào)試器是一個定位和診斷模型中錯誤的工具它允許用戶利用仿真方法來仿真模型,并在每個方法結(jié)束后暫停仿真,查看該方法執(zhí)行后的仿真結(jié)果。通過SIMULINK調(diào)試工具,用戶可以采用多種方式對模型進行調(diào)試,發(fā)現(xiàn)其中可能存在的問題并加以修改,從而使得用戶的模型設(shè)計、仿真、更加快捷。技術(shù)凝聚實力技術(shù)凝聚實力專業(yè)創(chuàng)新出版專業(yè)創(chuàng)新出版23.8.1 啟動SIMULINK圖形調(diào)試器lSIMULINK調(diào)試器有兩種模式,即GUI模式和命令行模式,這里主要介紹GUI模式。SIMULINK圖形調(diào)試界面的啟
29、動方式有兩種:l單擊要調(diào)試模型窗口工具欄按鈕 ,打開圖形調(diào)試窗口;l打開要調(diào)試模型的窗口,選擇菜單欄【Tools/Debugger】子項,打開圖形調(diào)試窗口,如下圖。技術(shù)凝聚實力技術(shù)凝聚實力專業(yè)創(chuàng)新出版專業(yè)創(chuàng)新出版23.8.2 SIMULINK調(diào)試窗口工具欄lSIMULINK調(diào)試器窗口包括工具欄和左右兩個面板。左側(cè)面板包括Break Points標簽頁和Simulation Loop標簽頁;右側(cè)面板包括Outputs、Sorted List和Status標簽頁。lSIMULINK調(diào)試器工具欄如圖所示。技術(shù)凝聚實力技術(shù)凝聚實力專業(yè)創(chuàng)新出版專業(yè)創(chuàng)新出版23.8.3 斷點顯示及條件斷點設(shè)置lSIMUL
30、INK調(diào)試器允許用戶設(shè)置仿真執(zhí)行過程中的斷點,一般來說,用戶可以在模塊前設(shè)置斷點,用戶若要在模塊上設(shè)置斷點,則先選中該模塊,然后單擊調(diào)試器工具欄上的設(shè)置斷點按鈕 ,調(diào)試器將在Breakpoint標簽頁下的Break/Display points中顯示被選中模塊的名稱。除此之外,還可以在特定條件下設(shè)置斷點,SIMULINK調(diào)試器提供了五種條件斷點設(shè)置,條件斷點設(shè)置Break on conditions):lZero crossings復(fù)選框:遇到過零點檢測時,產(chǎn)生斷點;lStep size limited by state復(fù)選框:在步長受狀態(tài)限制時,產(chǎn)生斷點;lSolver Error復(fù)選框:解
31、法器算法出錯時,產(chǎn)生斷點;lNaN values復(fù)選框:在系統(tǒng)中出現(xiàn)無限大或超出機器數(shù)值表示范圍時,產(chǎn)生斷點;lBreak at time:在指定的某個時刻設(shè)置斷點。技術(shù)凝聚實力技術(shù)凝聚實力專業(yè)創(chuàng)新出版專業(yè)創(chuàng)新出版23.8.4 仿真回路標簽頁Simulation Loop)l單擊仿真回路標簽頁,可以打開如圖23.72中左側(cè)面板所示的仿真回路標簽頁??梢钥闯?,仿真回路標簽頁包括:方法Method)、斷點 和斷點標識ID)。l方法列Method)。方法列給出系統(tǒng)執(zhí)行到當前所調(diào)用的各種方法,以樹狀結(jié)構(gòu)進行顯示,用戶可以單擊列表中方法前的+/-號來展開/關(guān)閉樹狀結(jié)構(gòu),排列中的每個節(jié)點表示一個方法,展開
32、這個節(jié)點就顯示出它所調(diào)用的其他方法,樹狀結(jié)構(gòu)中的模塊方法名稱是超鏈接的,單擊模塊方法名稱會在模型中高亮顯示相應(yīng)的模塊。l斷點列。斷點列是一系列復(fù)選框組成,勾選復(fù)選框意味著在該方法中設(shè)置一個斷點。l標識列ID)。標識是方法在仿真過程中第一次執(zhí)行時,SIMULINK給其制定的一個整數(shù)標號。有些SIMULINK指令用方法標識來指代方法。技術(shù)凝聚實力技術(shù)凝聚實力專業(yè)創(chuàng)新出版專業(yè)創(chuàng)新出版23.8.5 信息顯示標簽頁l在調(diào)試器剛打開的時候,下列標簽頁并不顯示任何信息,一旦調(diào)試開始,將在相應(yīng)的標簽頁顯示有關(guān)仿真的信息。l1調(diào)試器輸出標簽頁Outputs)l2調(diào)試器類型標簽頁Sorted List)l3調(diào)試器
33、狀態(tài)標簽頁Status)技術(shù)凝聚實力技術(shù)凝聚實力專業(yè)創(chuàng)新出版專業(yè)創(chuàng)新出版23.8.6 設(shè)置無條件斷點l如果用戶知道自己系統(tǒng)執(zhí)行到某些點或者滿足一定條件就會出錯,那么設(shè)置斷點就將顯得很有用。簡單來說,斷點就是仿真執(zhí)行到該處時會暫停仿真,這時用戶可以通過Continue指令跳過這一斷點繼續(xù)執(zhí)行到下一斷點。SIMULINK調(diào)試器允許用戶設(shè)置的斷點有兩類:無條件中斷和有條件中斷。l無條件中斷是指在任何條件下,系統(tǒng)執(zhí)行到該模塊或執(zhí)行到設(shè)定的時間步都將停止仿真。設(shè)置無條件斷點的方式有:l通過調(diào)試器工具欄設(shè)置斷點;l通過調(diào)試器仿真回路標簽頁設(shè)置斷點;l通過MATLAB命令窗口設(shè)置斷點。技術(shù)凝聚實力技術(shù)凝聚實
34、力專業(yè)創(chuàng)新出版專業(yè)創(chuàng)新出版23.8.7 設(shè)置有條件斷點l設(shè)置有條件中斷,可以用調(diào)試器的“Break on conditions”,也可以用以下的指令。ltbreak中斷,在特定時間步內(nèi)設(shè)置中斷。這種設(shè)置用來指定當仿真執(zhí)行到指定的時間時,仿真進程中斷,這個指定的時間是仿真時間,而不是時間步個數(shù),但其真實終止時刻是在大于指定時間且與指定時間最接近的時間步內(nèi)。lnanbreak中斷,在仿真出現(xiàn)無限大值時中斷。這種設(shè)置是在仿真計算中出現(xiàn)無窮大或者計算數(shù)據(jù)限制,即上溢或下溢時,系統(tǒng)將結(jié)束仿真進程。如果在計算中出現(xiàn)了計算錯誤,可以利用該指令的中斷功能來查找。lxbreak中斷,在仿真要選擇可采用的時間步長
35、時中斷。如果模型中采用了可變步長解法器,那么當解法器遇到對其采用步長受限的情況時,系統(tǒng)將中斷仿真進程。lzcbreak中斷,出現(xiàn)過零時發(fā)生中斷。這種中斷設(shè)置是指,當系統(tǒng)檢測到可能產(chǎn)生過零現(xiàn)象的模塊時,暫停仿真進程,并在命令窗口中顯示中斷的位置、時間。技術(shù)凝聚實力技術(shù)凝聚實力專業(yè)創(chuàng)新出版專業(yè)創(chuàng)新出版23.9 編寫S-函數(shù)lS-函數(shù)是系統(tǒng)函數(shù)(System Function)的簡稱,是指采用非圖形化的方式即計算機語言,區(qū)別于SIMULINK的系統(tǒng)模塊描述的一個功能模塊。用戶可以采用MATLAB代碼,C,C+,F(xiàn)ORTRAM或Ada等語言編寫S-函數(shù)。S-函數(shù)由一種特定的語法構(gòu)成,用來描述并實現(xiàn)連續(xù)
36、系統(tǒng)、離散系統(tǒng)以及復(fù)合系統(tǒng)等動態(tài)系統(tǒng);S-函數(shù)能夠接收來自SIMULINK解法器的相關(guān)信息,并對解法器發(fā)出的命令做出適當?shù)捻憫?yīng),這種交互作用非常類似于SIMULINK系統(tǒng)模塊與解法器的交互作用。lS-函數(shù)作為與其他語言相結(jié)合的接口,可以使用這個語言所提供的強大功能。例如,MATLAB語言編寫的S-函數(shù)可以方便地調(diào)用各種工具箱函數(shù)和圖形函數(shù);使用C語言編寫的S-函數(shù)則可以實現(xiàn)對操作系統(tǒng)的訪問等。技術(shù)凝聚實力技術(shù)凝聚實力專業(yè)創(chuàng)新出版專業(yè)創(chuàng)新出版23.9.1 S-函數(shù)的工作原理l要創(chuàng)建一個S-函數(shù),用戶必須了解S-函數(shù)的工作原理。因為S-函數(shù)是一個系統(tǒng)函數(shù),也就要理解SIMULINK仿真的過程,首先就需要理解模塊的數(shù)學(xué)含義。l1SIMULINK模塊的數(shù)學(xué)含義l2SIMULINK仿真過程l3S-函數(shù)的回調(diào)
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 公路ppp合同范本
- 分紅比例合同范本
- 公路規(guī)劃合同范本
- 協(xié)議合同范本寫法
- 兼職還款合同范本
- pos機推廣合同范本
- 入股店鋪協(xié)議合同范本
- 義齒加工合同范本模板
- 京東入職合同范本
- 醫(yī)院整體轉(zhuǎn)讓合同范本
- 考前沖刺攻略課件
- 新媒體運營合作合同范本
- 2024年12月2025中央統(tǒng)戰(zhàn)部直屬事業(yè)單位應(yīng)屆高校畢業(yè)生公開招聘21人筆試歷年典型考題(歷年真題考點)解題思路附帶答案詳解
- 2024年湖北省煙草專賣局(公司)招聘筆試真題
- 2025中鐵快運股份限公司招聘全日制普通高校畢業(yè)生35人易考易錯模擬試題(共500題)試卷后附參考答案
- 計算機網(wǎng)絡(luò)試題及答案
- 2025年中國主題樂園行業(yè)發(fā)展概況、市場全景分析及投資策略研究報告
- 產(chǎn)后疼痛管理指南
- 2025年安徽馬鞍山市兩山綠色生態(tài)環(huán)境建設(shè)有限公司招聘筆試參考題庫附帶答案詳解
- 工娛治療及其護理
- 人效管理措施
評論
0/150
提交評論