摘要:在電力電子仿真課程中通常以Saber軟件作為仿真平臺,而在電路模型的建立過程中,Saber軟件所提供的元件模型是有限的,有時需要利用MAST語言來完成一定的硬件設(shè)計。MAST語言建模是用數(shù)學(xué)方法來描述硬件功能,其精度較高,可使電路模型得到簡化。通過實例介紹了利用MAST語言建模及使用的過程,應(yīng)用MAST語言可使仿真電路模塊化,加深學(xué)生對電力電子技術(shù)的理解程度。
關(guān)鍵詞:Saber;電力電子仿真;MAST語言建模;教學(xué)方法
中圖分類號:G642.0 文獻標(biāo)識碼:A 文章編號:1007-0079(2014)23-0015-02
在電力電子仿真課程中,傳統(tǒng)的教學(xué)方式多以仿真軟件所提供的現(xiàn)有環(huán)境為基礎(chǔ)進行電路的搭建。在實際教學(xué)過程中,Saber模型庫中的模型是有限的,無法為特定的教學(xué)案例提供全部或最新的集成電路模型,因此,有時需要利用MAST語言來完成一定的硬件設(shè)計。[1]
MAST語言主要是用來創(chuàng)建模擬、數(shù)字或系統(tǒng)模型的,而用MAST語言建模實際上就是用語言的形式描述物理的意義,更確切地說就是要建立一系列的方程,因此用MAST語言建模的核心就是用線性(或非線性)的代數(shù)、微分方程(組)來描述對象的特征。它包括電、機械、光和流體等。從上面的定義可以看出,Saber仿真器并不是單純的一個電路模型仿真器,從理論上講只要能用MAST語言建立出模型,通過Saber仿真器就能對其進行仿真,這時仿真器實際上要做的工作就是解方程。[2]本文結(jié)合單相橋式PWM逆變電路具體教學(xué)實例,介紹MAST語言建模在電力電子仿真課程中應(yīng)用的具體方法。
一、MAST語言建模概述
用MAST語言建模時可以首先建立系統(tǒng)中元件的模型,然后將各個元件按照一定的要求連接起來就構(gòu)成了完整的系統(tǒng),因此在這種情況下描述系統(tǒng)模型方程由仿真器自動完成。只要能寫出描述對象特征的方程就能用MAST語言建模,因此MAST語言不僅可以建立模擬元件的模型,還可以建立數(shù)字元件的模型,對于數(shù)字模型是用元件在各離散時刻的離散值來描述的。[3]
在MAST語言中,被Saber仿真器使用的核心單元是模板(template),在創(chuàng)建模型中,模板是分層結(jié)構(gòu)的,所謂分層結(jié)構(gòu)就是在創(chuàng)建模板中可以引用其他模板。這樣的結(jié)構(gòu)有幾個好處:第一,在創(chuàng)建模板的過程中可以直接調(diào)用Saber庫中元件模型,這樣將大大地減少編寫模板的工作量。第二,對于經(jīng)常使用到的電路結(jié)構(gòu)(該結(jié)構(gòu)中可以包括其他電路結(jié)構(gòu)),可以將其構(gòu)成一個子模板,而其他模板可以調(diào)用這個子模板。第三,可以建立一個頂層模板,在該模板中調(diào)用系統(tǒng)中的其他所有模板,它只反映各模板之間的連接及各模板所需要傳遞的參數(shù),這樣在仿真中修改參數(shù)就很方便。
在模板命名這個問題上需要注意兩點:模板的擴展名必須是.sin,即templatename.sin;模板名必須以字母開頭。
一個模板可能有以下的一個或幾個部分,也可能包括以下的全部內(nèi)容:
Unit definitions //單位定義
Connection point definitions //連接點定義
Template header //模板頭
Header declarations //頭聲明
{
local declarations //局部聲明
Parameters sections //參數(shù)部分
When statements //當(dāng)語句
Values section //值部分
Control section //控制部分
Equations section //方程部分
}
在編寫模板時,沒有上面順序的限制,可以按任意順序編寫,但需特別注意的是,在使用一個變量之前必須首先定義這個變量,被定義量的位置就決定了它是全局的或是局部的變量。如果要在模板中引用文件,可以在任何地方引用文件,但是為了增加程序的可讀性,建議學(xué)生在編寫模板程序時采用上述順序。另外,如果要調(diào)用程序且該文件為全局調(diào)用,建議調(diào)用句放在header declarations部分,如果該文件為局部調(diào)用,建議放在local declarations部分。[4,5]
這里以理想恒流源模型為例對MAST語言的應(yīng)用進行說明。理想恒流源模型如圖1所示。
其MAST語言形式為:
template isource p n= is
electrical p,n
number is=100
{
equations {i(p->n) += is}
}
模板頭說明模板名、模板的連接點和使用模板時需要賦值的變量,這個變量必須是在網(wǎng)表中進行賦值。定義模板頭的格式為:template template_name connection points = arguments。定義模板頭的關(guān)鍵字為template和element template,這兩者的區(qū)別一個是內(nèi)部節(jié)點可見而另一個是內(nèi)部節(jié)點不可見。template_name是模板名,在通常情況下該模板的文件名和這個模板應(yīng)該一致;connection points是定義的端點名,而argument則是使用這個模板時需要賦值的變量,這個變量是通過網(wǎng)表來賦值的。模板連接點是一種特殊的數(shù)據(jù)類型,在Saber中被稱為pin類型,它與建立的模板有關(guān)。pin類型可以是機械連接點、熱連接點、電連接點。由于恒流源中的連接點是電連接點,因此其連接點說明為electrical p,n。作為頭說明的另一部分就是對模板參數(shù)的說明,它需要說明的是模板參數(shù)的類型,即數(shù)的類型,在本模板中定義了1個數(shù):number is=100。isource中的方程段是用MAST語言結(jié)構(gòu)體的形式描述恒流源的特征,實際上就是用模板方程來描述器件模擬端口的特征。在恒流源模型中,電流是從p點流進從n點流出,因此在方程段中要描述這一特征,在MAST中描述這一特征用i(p->m)+=is來表示。
假設(shè)有一個系統(tǒng)調(diào)用了這個恒流源模板isource,在這個系統(tǒng)中這個恒流源的名字為i1,這個恒流源的兩端與節(jié)點a、b相連,恒流源電流的大小為2,則調(diào)用這個模板的語句為:isource.i1 a b=is=2,網(wǎng)表與模板間的對應(yīng)關(guān)系:isource.i1 a b=is=2;template isource p n=is。
上述模型描述的電流從p點流進、n點流出,其電流的大小為is,在使用這個器件時在網(wǎng)表中要對這個值進行賦值。用任何文本編輯器編寫上述這段文本后,以文件的擴展名為.sin存盤。通常情況下文件名和模板名要一致,如果文件名和模板名不一致時在使用這個模板的網(wǎng)表中要包含這個文件。
以上僅對MAST語言的一些編程基礎(chǔ)進行了說明,學(xué)生還需通過實踐更深層次了解相關(guān)內(nèi)容。
二、教學(xué)實例
從原理角度來說,單相橋式PWM逆變電路其元件的驅(qū)動信號都是由正弦信號與三角波信號經(jīng)過比較器得來的,每一個元件采取獨立驅(qū)動方式,上下橋臂的互補導(dǎo)通關(guān)系由正弦波信號的相位決定,這種仿真模式雖然也能夠用分立元件得到理想的結(jié)果,但仿真模型相對復(fù)雜,分立元件數(shù)目較多且元件參數(shù)的設(shè)置也較為繁瑣。為了解決上述問題,在教學(xué)過程中將借助MAST語言實現(xiàn)對仿真模型的簡化。
將IGBT用理想開關(guān)替代,理想開關(guān)的驅(qū)動信號用MAST語言實現(xiàn)。首先建立驅(qū)動器圖形符號,該符號共7個管腳,輸入引腳分別為采樣頻率、正弦波信號和三角波信號,輸出信號則是4個理想開關(guān)的驅(qū)動信號。s_f為采樣時鐘信號輸入引腳(Input Port),triangle為三角載波信號輸入引腳(Analog Port),sina為正弦調(diào)制信號輸入引腳(Analog Port),sw1~sw4為驅(qū)動信號輸出引腳(Output Port),驅(qū)動器符號及單相橋式PWM逆變電路仿真模型如圖2所示。
MAST語言編寫的模型文件如下所示:
encrypted element template control s_f triangle sina sw1 sw2 sw3 sw4
state nu s_f
electrical triangle,sina
state logic_4 sw1,sw2,sw3,sw4
{
state logic_4 sw11 = l4_0,sw21 = l4_0,sw31 = l4_0,sw41 = l4_0 when(event_on(s_f)) { if((v(triangle)-v(sina))>0) { sw11 = l4_0 sw31 = l4_0 sw21 = l4_1 sw41 = l4_1 } else if((v(triangle)-v(sina))<0) { sw11 = l4_1 sw31 = l4_1 sw21 = l4_0 sw41 = l4_0 } #改變開關(guān)狀態(tài) schedule_event(time,sw1,sw11) schedule_event(time,sw2,sw21) schedule_event(time,sw3,sw31) schedule_event(time,sw4,sw41) }##when } zsmp模塊提供了一個周期離散狀態(tài)信號源,它為其他模塊提供了采樣時鐘信號,這里設(shè)置輸入時鐘頻率為20kHz;三角載波信號幅值12V、周期1毫秒;正弦調(diào)制信號幅值10V,頻率50赫茲。對輸入驅(qū)動信號、載波信號、調(diào)制波信號和輸出負載電壓、電流進行觀測,仿真波形如圖3所示。 對比在原理章節(jié)中采用分立元件構(gòu)成的單相橋式PWM逆變電路可知,利用MAST語言編程所實現(xiàn)的驅(qū)動控制器也能夠產(chǎn)生PWM驅(qū)動信號,兩種情況的電路輸出波形基本一致。同時仿真結(jié)果證明,該集成電路模型可以很好地為逆變電路提供驅(qū)動信號。 三、結(jié)論 通過一學(xué)期的教學(xué)實踐,在電力電子仿真教學(xué)過程中引入MAST語言建模,學(xué)生對理論知識的理解更加深入,尤其是可使學(xué)生從宏觀的角度去理解集成電路所實現(xiàn)的功能,使理論與實際更緊密結(jié)合,使分析結(jié)果可視化,這對提高教師教學(xué)質(zhì)量和學(xué)生學(xué)習(xí)效率有極大的促進作用。 參考文獻: [1]丘東元,眭永明,王雪梅,等.基于Saber的“電力電子技術(shù)”仿真教學(xué)研究[J].電氣電子教學(xué)學(xué)報,2011,33(2):81-84. [2]王紅梅,黃華飛,唐春霞.Saber仿真在電力電子技術(shù)教學(xué)中的應(yīng)用[J].裝備制造技術(shù),2007,(1):80-82. [3]秦嶺,高寧宇,華亮,等.Saber仿真軟件在“電機學(xué)”教學(xué)中的應(yīng)用[J].電氣電子教學(xué)學(xué)報,2011,33(1):64-66. [4]謝銀銀,裴雪軍,康勇.基于MAST 語言的虛擬數(shù)字信號處理器[J].電源學(xué)報,2011,(2):12-17. [5]吳俊強,曾國宏.基于SABER的PWM整流器滯環(huán)控制仿真[J].計算機仿真,2005,22(2):182-185. (責(zé)任編輯:王意琴)