免费高清特黄a大片,九一h片在线免费看,a免费国产一级特黄aa大,国产精品国产主播在线观看,成人精品一区久久久久,一级特黄aa大片,俄罗斯无遮挡一级毛片

分享

SIMULINK仿真的運行-電子電路圖

 yoyo7 2009-11-24

SIMULINK仿真的運行
構(gòu)建好一個系統(tǒng)的模型之后,接下來的事情就是運行模型,得出仿真結(jié)果。運行一個仿真的完整過程分成三個步驟:設(shè)置仿真參數(shù),啟動仿真和仿真結(jié)果分析。
一、設(shè)置仿真參數(shù)和選擇解法器
設(shè)置仿真參數(shù)和選擇解法器,選擇Simulation菜單下的Parameters命令,就會彈出一個仿真參數(shù)對話框,它主要用三個頁面來管理仿真的參數(shù)。
Solver頁,它允許用戶設(shè)置仿真的開始和結(jié)束時間,選擇解法器,說明解法器參數(shù)及選擇一些輸出選項。
Workspace I/O頁,作用是管理模型從MATLAB工作空間的輸入和對它的輸出。
Diagnostics頁,允許用戶選擇Simulink在仿真中顯示的警告信息的等級。
1、Solver頁
此頁可以進行的設(shè)置有:選擇仿真開始和結(jié)束的時間;選擇解法器,并設(shè)定它的參數(shù);選擇輸出項。
仿真時間:注意這里的時間概念與真實的時間并不一樣,只是計算機仿真中對時間的一種表示,比如10秒的仿真時間,如果采樣步長定為0.1,則需要執(zhí)行100步,若把步長減小,則采樣點數(shù)增加,那么實際的執(zhí)行時間就會增加。一般仿真開始時間設(shè)為0,而結(jié)束時間視不同的因素而選擇??偟恼f來,執(zhí)行一次仿真要耗費的時間依賴于很多因素,包括模型的復(fù)雜程度、解法器及其步長的選擇、計算機時鐘的速度等等。
仿真步長模式:用戶在Type后面的第一個下拉選項框中指定仿真的步長選取方式,可供選擇的有Variable-step(變步長)和Fixed-step(固定步長)方式。變步長模式可以在仿真的過程中改變步長,提供誤差控制和過零檢測。固定步長模式在仿真過程中提供固定的步長,不提供誤差控制和過零檢測。用戶還可以在第二個下拉選項框中選擇對應(yīng)模式下仿真所采用的算法。
變步長模式解法器有:ode45,ode23,ode113,ode15s,ode23s,ode23t,ode23tb和discrete。
ode45:缺省值,四/五階龍格-庫塔法,適用于大多數(shù)連續(xù)或離散系統(tǒng),但不適用于剛性(stiff)系統(tǒng)。它是單步解法器,也就是,在計算y(tn)時,它僅需要最近處理時刻的結(jié)果y(tn-1)。一般來說,面對一個仿真問題最好是首先試試ode45。
ode23:二/三階龍格-庫塔法,它在誤差限要求不高和求解的問題不太難的情況下,可能會比ode45更有效。也是一個單步解法器。
ode113:是一種階數(shù)可變的解法器,它在誤差容許要求嚴格的情況下通常比ode45有效。ode113是一種多步解法器,也就是在計算當(dāng)前時刻輸出時,它需要以前多個時刻的解。
ode15s:是一種基于數(shù)字微分公式的解法器(NDFs)。也是一種多步解法器。適用于剛性系統(tǒng),當(dāng)用戶估計要解決的問題是比較困難的,或者不能使用ode45,或者即使使用效果也不好,就可以用ode15s。ode23s:它是一種單步解法器,專門應(yīng)用于剛性系統(tǒng),在弱誤差允許下的效果好于ode15s。它能解決某些ode15s所不能有效解決的stiff問題。
ode23t:是梯形規(guī)則的一種自由插值實現(xiàn)。這種解法器適用于求解適度stiff的問題而用戶又需要一個無數(shù)字振蕩的解法器的情況。
ode23tb:是TR-BDF2的一種實現(xiàn), TR-BDF2 是具有兩個階段的隱式龍格-庫塔公式。
discrtet:當(dāng)Simulink檢查到模型沒有連續(xù)狀態(tài)時使用它。固定步長模式解法器有:ode5,ode4,ode3,ode2,ode1和discrete。
ode5:缺省值,是ode45的固定步長版本,適用于大多數(shù)連續(xù)或離散系統(tǒng),不適用于剛性系統(tǒng)。
ode4:四階龍格-庫塔法,具有一定的計算精度。
ode3:固定步長的二/三階龍格-庫塔法。
ode2:改進的歐拉法。
ode1:歐拉法。
discrete:是一個實現(xiàn)積分的固定步長解法器,它適合于離散無連續(xù)狀態(tài)的系統(tǒng)。步長參數(shù):對于變步長模式,用戶可以設(shè)置最大的和推薦的初始步長參數(shù),缺省情況下,步長自動地確定,它由值auto表示。
Maximum step size(最大步長參數(shù)):它決定了解法器能夠使用的最大時間步長,它的缺省值為“仿真時間/50”,即整個仿真過程中至少取50個取樣點,但這樣的取法對于仿真時間較長的系統(tǒng)則可能帶來取樣點過于稀疏,而使仿真結(jié)果失真。一般建議對于仿真時間不超過15s的采用默認值即可,對于超過15s的每秒至少保證5個采樣點,對于超過100s的,每秒至少保證3個采樣點。
Initial step size(初始步長參數(shù)):一般建議使用“auto”默認值即可。
仿真精度的定義(對于變步長模式)
Relative tolerance(相對誤差):它是指誤差相對于狀態(tài)的值,是一個百分比,缺省值為1e-3,表示狀態(tài)的計算值要精確到0.1%。
Absolute tolerance(絕對誤差):表示誤差值的門限,或者是說在狀態(tài)值為零的情況下,可以接受的誤差。如果它被設(shè)成了auto,那么simulink為每一個狀態(tài)設(shè)置初始絕對誤差為1e-6。
Mode(固定步長模式選擇)
Multitasking:選擇這種模式時,當(dāng)simulink檢測到模塊間非法的采樣速率轉(zhuǎn)換,它會給出錯誤提示。所謂的非法采樣速率轉(zhuǎn)換指兩個工作在不同采樣速率的模塊之間的直接連接。在實時多任務(wù)系統(tǒng)中,如果任務(wù)之間存在非法采樣速率轉(zhuǎn)換,那么就有可能出現(xiàn)一個模塊的輸出在另一個模塊需要時卻無法利用的情況。通過檢查這種轉(zhuǎn)換,Multitasking將有助于用戶建立一個符合現(xiàn)實的多任務(wù)系統(tǒng)的有效模型。
       使用速率轉(zhuǎn)換模塊可以減少模型中的非法速率轉(zhuǎn)換。Simulink提供了兩個這樣的模塊:unit delay模塊和zero-order hold模塊。對于從慢速率到快速率的非法轉(zhuǎn)換,可以在慢輸出端口和快輸入端口插入一個單位延時unit delay模塊。而對于快速率到慢速率的轉(zhuǎn)換,則可以插入一個零階采樣保持器zero-order hold。
Singletasking:這種模式不檢查模塊間的速率轉(zhuǎn)換,它在建立單任務(wù)系統(tǒng)模型時非常有用,在這種系統(tǒng)就不存在任務(wù)同步問題。
Auto:這種模式,simulink會根據(jù)模型中模塊的采樣速率是否一致,自動決定切換到multitasking和singletasking。

輸出選項
Refine output:這個選項可以理解成精細輸出,其意義是在仿真輸出太稀松時,simulink會產(chǎn)生額外的精細輸出,這一點就像插值處理一樣。用戶可以在refine factor設(shè)置仿真時間步間插入的輸出點數(shù)。
       產(chǎn)生更光滑的輸出曲線,改變精細因子比減小仿真步長更有效。精細輸出只能在變步長模式中才能使用,并且在ode45效果最好。
Produce additional output:它允許用戶直接指定產(chǎn)生輸出的時間點。一旦選擇了該項,則在它的右邊出現(xiàn)一個output times編輯框,在這里用戶指定額外的仿真輸出點,它既可以是一個時間向量,也可以是表達式。與精細因子相比,這個選項會改變仿真的步長。
Produce specified output only:它的意思是讓simulink只在指定的時間點上產(chǎn)生輸出。為此解法器要調(diào)整仿真步長以使之和指定的時間點重合。這個選項在比較不同的仿真時可以確保它們在相同的時間輸出。
此頁主要用來設(shè)置SIMULINK與MATLAB工作空間交換數(shù)值的有關(guān)選項。
Load from workspace:選中前面的復(fù)選框即可從MATLAB工作空間獲取時間和輸入變量,一般時間變量定義為t,輸入變量定義為u。 Initial state用來定義從MATLAB工作空間獲得的狀態(tài)初始值的變量名。
Save to workspace:用來設(shè)置存往MATLAB工作空間的變量類型和變量名,選中變量類型前的復(fù)選框使相應(yīng)的變量有效。一般存往工作空間的變量包括輸出時間向量(Time)、狀態(tài)向量(States)和輸出變量(Output)。 Final state用來定義將系統(tǒng)穩(wěn)態(tài)值存往工作空間所使用的變量名。
Save option:用來設(shè)置存往工作空間的有關(guān)選項。Limit rows to last用來設(shè)定SIMULINK仿真結(jié)果最終可存往MATLAB工作空間的變量的規(guī)模,對于向量而言即其維數(shù),對于矩陣而言即其秩;Decimation設(shè)定了一個亞采樣因子,它的缺省值為1,也就是對每一個仿真時間點產(chǎn)生值都保存,而若為2,則是每隔一個仿真時刻才保存一個值。Format用來說明返回數(shù)據(jù)的格式,包括矩陣matrix、結(jié)構(gòu)struct及帶時間的結(jié)構(gòu)struct with time。3、Diagnostics頁
此頁分成兩個部分:仿真選項和配置選項。配置選項下的列表框主要列舉了一些常見的事件類型,以及當(dāng)SIMULINK檢查到這些事件時給予的處理。仿真選項options主要包括是否進行一致性檢驗、是否禁用過零檢測、是否禁止復(fù)用緩存、是否進行不同版本的SIMULINK的檢驗等幾項。
除了上述3個主要的頁外,仿真參數(shù)設(shè)置窗口還包括real-time workshop頁,主要用于與C語言編輯器的交換,通過它可以直接從SIMULINK模型生成代碼并且自動建立可以在不同環(huán)境下運行的程序,這些環(huán)境包括實時系統(tǒng)和單機仿真。
二、啟動仿真
設(shè)置仿真參數(shù)和選擇解法器之后,就可以啟動仿真而運行。
選擇Simulink菜單下的start選項來啟動仿真,如果模型中有些參數(shù)沒有定義,則會出現(xiàn)錯誤信息提示框。如果一切設(shè)置無誤,則開始仿真運行,結(jié)束時系統(tǒng)會發(fā)出一鳴叫聲。
除了直接在SIMULINK環(huán)境下啟動仿真外,還可以在MATLAB命令窗口中通過函數(shù)進行,格式如下:
         [t,x,y]=sim(‘模型文件名’,[to tf],simset(‘參數(shù)1’,參數(shù)值1,‘參數(shù)2’,參數(shù)值2, …))
其中to為仿真起始時間,tf為仿真終止時間。[t,x,y]為返回值,t為返回的時間向量值,x為返回的狀態(tài)值,y為返回的輸出向量值。simset定義了仿真參數(shù),包括以下一些主要參數(shù):
AbsTol:默認值為1e-6設(shè)定絕對誤差范圍。
Decimation:默認值為1,決定隔多少個點返回狀態(tài)和輸出值。
Solver:解法器的選擇。
MaxRows:默認值為0,表示不限制。若為大于零的值,則表示限制輸   出和狀態(tài)的規(guī)模,使其最大行數(shù)等于該數(shù)值。
InitialState:一個向量值,用于設(shè)定初始狀態(tài)。
FixedStep:用一個正數(shù)表示步階的大小,僅用于固定步長模式。
MaxStep:默認值為auto。用于變步長模式,表示最大的步階大小。

如果知道模型文件名稱,可以用以下命令得到該模型的仿真參數(shù):
simget(‘模型文件名’)

    本站是提供個人知識管理的網(wǎng)絡(luò)存儲空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點。請注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,謹防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點擊一鍵舉報。
    轉(zhuǎn)藏 分享 獻花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多