3、狀態(tài)機(jī)建模工具使用示例
3.1. 使用狀態(tài)機(jī)建立電阻模型
第一步****添加電阻端口
假設(shè)電阻阻值為r_normal,首先打開狀態(tài)機(jī)建模工具,添加電阻端口,電阻端口包含貫通變量電流和跨接變量電壓,使用分支型端口。
第二步****添加變量
添加電阻阻值r_normal為外部靜態(tài)變量
添加電流變量ipn
添加電壓變量vpn
第三步****添加狀態(tài)圖
電阻在整過過程中沒有狀態(tài)變化,雙擊變量vpn,設(shè)置如下
設(shè)置完成后,保存模型,搭建一個(gè)簡單的電路測試電阻模型是否正確。
3.2. 使用狀態(tài)機(jī)創(chuàng)建可變電阻
可變電阻的電阻值由外部管腳r_var控制。
首先建立symbol端子如下,設(shè)置p和n為electrical量
其中r_var是可變電阻的控制端。變量類型為
添加電阻的電壓變量vpn(依次點(diǎn)擊左側(cè)across圖標(biāo)、p端口、n端口)和電流變量ipn(依次點(diǎn)擊左側(cè)through圖標(biāo)、p端口、n端口)
保存模型,搭建簡單電路進(jìn)行驗(yàn)證。
3.3. 創(chuàng)建基于公式的模型
如下公式是壓控電機(jī)中的一部分算法,三相正弦交流電壓幅值由控制電壓U_control,增益gain。偏置U_offset控制。頻率由f控制。
U_amp=U_control*gain+U_offset
U_a=U_ampsin(2pift)
U_b=U_ampsin(2pift+ 2*pi/3)
U_c=U_ampsin(2pift -2*pi/3)
建模時(shí)分兩個(gè)狀態(tài)機(jī)進(jìn)行創(chuàng)建,vfconst和uf2abc。vfconst實(shí)現(xiàn)第一個(gè)公式,uf2abc實(shí)現(xiàn)后三個(gè)公式。
3.3.1. vfconst
建立symbol端子如下圖,u_offset和f是輸入,uout和fout是輸出,單位都是 nunit。
創(chuàng)建模型靜態(tài)變量gain
建立兩個(gè)狀態(tài)圖S1和S2,狀態(tài)關(guān)系為如果頻率小于等于0時(shí),進(jìn)入state2,如果頻率大于0時(shí)進(jìn)入state1。、
鼠標(biāo)雙擊state1和state2設(shè)置兩個(gè)輸出變量的公式,保存模型。
3.3.2. uf2abc建模
建立輸入輸出管腳,輸入管腳u,f,輸出管腳 ua,ub,uc。單位都是no unit。
創(chuàng)建兩個(gè)ststic 變量,pi和samolerate,pi即3.141593,samplerate用來控制模型的最大采樣間隔時(shí)間。創(chuàng)建一個(gè)state變量,配合下文的clk模塊正常運(yùn)行。
建立兩個(gè)狀態(tài)圖S1和S2,狀態(tài)關(guān)系為如果頻率小于等于0時(shí),進(jìn)入state2,如果頻率大于0時(shí)進(jìn)入state1。
鼠標(biāo)雙擊state1和state2設(shè)置兩個(gè)輸出變量的公式
添加一個(gè)時(shí)鐘源clk1,時(shí)鐘源的周期為samplerate,每個(gè)周期內(nèi)做的事為給intst變量賦值為1,這樣處理的意義是:保證saber仿真器在計(jì)算ua,ub,uc的值在一個(gè)1/f周期內(nèi)有足夠的采樣點(diǎn)。因?yàn)?a target="_blank">仿真器的步長會變,如果f變大的話,可能導(dǎo)致一個(gè)1/f周期內(nèi)采樣點(diǎn)不夠,導(dǎo)致波形失真。samplerate可以依據(jù)1/20*fmax來考慮。
模型創(chuàng)建好后可以搭建一個(gè)簡單電路進(jìn)行驗(yàn)證。
3.4. 創(chuàng)建IGBT信號驅(qū)動(dòng)模型
IGBT驅(qū)動(dòng)器模型可將邏輯數(shù)字信號轉(zhuǎn)換為電壓信號輸出以驅(qū)動(dòng)IGBT模型工作。
輸入為數(shù)字邏輯信號digital_in,輸出是模型信號analog_out,參考ref,高電平輸出電壓為vgon,低電平輸出電壓為vgoff,電平切換時(shí)間transition_time。
創(chuàng)建模型端口,digital_in輸入,邏輯信號。analog_out和ref輸出,電信號。
創(chuàng)建全局變量vgon,vgoff和transition_time
設(shè)置analog_out的電壓輸出變量vg。
創(chuàng)建兩個(gè)state,分別命名為up和down。up狀態(tài)下設(shè)置vg=vgon,down狀態(tài)下設(shè)置vg=vgoff。digital_in=0時(shí)切換到down模式,等于1時(shí),切換到up。
使用event_on函數(shù)判斷digital_in的狀態(tài)變化,使用digital_in == '0'或digital_in == '1‘判斷邏輯電平是高還是低。
mast語言中,高電平使用’1’表示,低電平使用’0’表示。
狀態(tài)切換時(shí)間設(shè)置為transition_time
設(shè)置完成后保存模型,建立驗(yàn)證電路測試模型。
-
可變電阻
+關(guān)注
關(guān)注
0文章
46瀏覽量
15734 -
狀態(tài)機(jī)
+關(guān)注
關(guān)注
2文章
492瀏覽量
27615 -
交流電壓
+關(guān)注
關(guān)注
2文章
189瀏覽量
16937 -
控制電壓
+關(guān)注
關(guān)注
0文章
36瀏覽量
16133 -
CLK
+關(guān)注
關(guān)注
0文章
127瀏覽量
17201
發(fā)布評論請先 登錄
相關(guān)推薦
評論