simulink仿真設置
一、算法設置
1.變步長(Variable—Step)求解器
可以選擇的變步長求解器有:ode45,ode23,ode113,odel5s,ode23s和discret.缺省情況下,具有狀態的系統用的是ode45;沒有狀態的系統用的是discrete。
1)ode45基于顯式Runge—Kutta(4,5)公式,Dormand—Prince對.它是—個單步求解器(solver)。也就是說它在計算y(tn)時,僅僅利用前一步的計算結果y(tn-1).對于大多數問題.在第一次仿真時、可用ode45試一下。
2)ode23是基于顯式Runge—Kutta(2,3).Bogackt和Shampine對.對于寬誤差容限和存在輕微剛性的系統、它比ode45更有效一些.ode23也是單步求解器。
3)odell3是變階Adams-Bashforth—Moulton PECE求解器.在誤差容限比較嚴時,它比ode45更有效.odell3是一個多步求解器,即為了計算當前的結果y(tn),不僅要知道前一步結果y(tn-1),還要知道前幾步的結果y(tn-2),y(tn-3),…;
4)odel5s是基于數值微分公式(NDFs)的變階求解器.它與后向微分公式BDFs(也叫Gear方法)有聯系.但比它更有效.ode15s是一個多步求解器,如果認為一個問題是剛性的,或者在用ode45s時仿真失敗或不夠有效時,可以試試odel5s。 odel5s是基于一到五階的NDF公式的求解器.盡管公式的階數越高結果越精確,但穩定性會差一些.如果模型是剛性的,并且要求有比較好的穩定性,應將最大的階數減小到2.選擇odel5s求解器時,對話框中會顯示這一參數. 可以用ode23求解器代替。del5s,ode23是定步長、低階求解器。
5)ode23s是基于一個2階改進的Rosenbrock公式.因為它是一個單步求解器,所以對于寬誤差容限,它比odel5s更有效.對于一些用odel5s不是很有效的剛性問題,可以用它解決。
6)ode23t是使用“自由”內插式梯形規則來實現的.如果問題是適度剛性,而且需要沒有數字阻尼的結果,可采用該求解器。
7)ode23tb是使用TR—BDF2來實現的,即基于隱式Runge—Kutta公式,其第一級是梯形規則步長和第二級是二階反向微分公式.兩級計算使用相同的迭代矩陣.與ode23s相似,對于寬誤差容限,它比odtl5s更有效。
8)discrete(變步長)是simulink在檢測到模型中沒有連續狀態時所選擇的一種求解器。
2.定步長(Flxed—Step)求解器
可以選擇的定步長求解器有:ode5,ode4,ode3,ode2,ode1和discrete。
1)ode5是ode45的一個定步長版本,基于Dormand—Prince公式。
2)ode4是RK4,基于四階Runge—Kutta公式。
3) ode3是ode23的定步長版本,基于Bogacki-Sbampine公式。
4) ode2是Heun方法,也叫作改進Euler公式。
5) odel是Euler方法。
6) discrete(定步長)是不執行積分的定步長求解器.它適用于沒有狀態的模型,以及對過零點檢測和誤差控制不重要的模型。
3.總結

ode45絕對是第一選擇,當你弄不清情況的時候都可以選它。但是如果遇到剛性系統時,運算會很慢很慢,這時候你可以選擇ode23tb算法(有關資料顯示這個算法收斂速度較快)。如果還不行,那你就可以考慮選擇discrete方式了。當然,這是萬金油式選擇,對我這種菜鳥來說這樣足夠了。但如果對算法有研究的大濕們,當然可以具體情況具體分析了。
二、powergui設置
simulink仿真用到simpowersystom庫時,一般都要加powergui模塊,它儲存了電路模型的等效數學模型(狀態空間方程),有三種運行模式:連續方法(continous)、離散方法(discret)、相量方法(phasor)。
小型系統(狀態量10個以下)用continous運行比較好,連續變步長方法更快更精確,因為離散算法要想給出一個同等精度的結果需要的計算量要比連續的多出不少。使用二極管和晶閘管等整流電力電子器件情況下,變步長算法由于對事件更為敏感,有誤差限制和過零檢測,可以精確探測到電流的過零點,故結果波形中不會有電流間斷。算法可以根據模型選擇合適的ode算法。
對于包含了許多狀態和非線性模塊(如電力電子器件)較多的大型系統建議用discrete來運行,加快仿真速度。一旦系統被離散化,電路系統再無連續狀態了,因此如果你不需要變步長積分方法進行仿真,前文所述的算法設置Simulation parameters可選擇Fixed-step和discrete(no continous state)。當你離散化系統時,仿真的精度由時間步長控制。若使用太大的時間步長,精度可能不夠。確定時間步長是否合適的唯一方法是通過改變時間步長,反復仿真,比較仿真結果。通常,對于在50Hz 或60Hz的功率系統上或使用了線性整流功率電子元件(如二極管、可控硅等)的系統上進行暫態仿真,取20us-50us的時間步長一般能取得較好的仿真效果。對于使用了強制整流功率電子開關的系統,必須減小時間步長。IGBT、場效應管、門極關斷晶閘管等通常工作在很高的開關頻率狀態下,例如,要仿真一個工作在8Hz的PWM轉換器,需要設置步長大約為8us。
phasor就是穩態模型,沒有狀態量。 如果你只對電壓電流的相位和幅值變化感興趣,使用相量法是一個不錯的選擇。求解時不再解全部的微分方程,只要解關于電流電壓相量的代數方程就行了,代數方程可比微分方程簡單多了!正如名字,相量法將電流電壓視為相量。相量法對于包含大發電機和電動機的網絡的暫態穩定性仿真十分好用 。在這種類型的問題中,我們感興趣的是電機和調節器交互作用引起的電氣機械振蕩,這些振蕩對基波電流電壓產生一個低頻的幅度相位調制。一般來講,連續或者離散的方法不適合這種類型的問題。相量法中,使用一系列的代數方程代替網絡微分方程,其中的快速的模態被忽略;使用一個由基頻和相關輸入輸出組成的復矩陣代替網絡的狀態空間模型。由于相量法使用的是電機、渦輪機和調節器的慢速狀態的簡化模型,因此大大的減少了必需仿真時間。
三、提高simpowersystem的仿真速度
1)使用ode23解法器但效果很有限。
2)對系統離散化,方法為在你的gui模塊里選擇discretize electric model,采樣時間越大仿真越快,當然采樣時間的設定要與你對系統精確性相配合,因為采樣時間是與準確性成反比的。
3)在仿真的過程中盡量少開啟示波器窗口,示波器參數中的點數限制最好關閉。
4)如果你的系統要從一個特定的狀態開始仿真,在仿真參數設置是,最好在i/o選項中設置起始的狀態矢量。
5)開啟加速器,(方法在菜單 仿真這一 項中可以設置),這個也能大大加快仿真速度。
注:剛性系統是指描述系統的微分方程中包含有數個(大于等于2)相互作用的變量且各個變量變化速度十分懸殊的系統。
工程師必備
- 項目客服
- 培訓客服
- 平臺客服
TOP




















