何凡鋒,馬瑞娜,吳忠得
(首都航天機(jī)械有限公司,北京,100076)
Proteus 軟件是Labcenter Electronics 公司開發(fā)的EDA 工具軟件,它具有強(qiáng)大的原理圖設(shè)計(jì)、電路仿真、PCB設(shè)計(jì)功能,能實(shí)現(xiàn)完整的電子設(shè)計(jì),在嵌入式開發(fā)領(lǐng)域應(yīng)用十分廣泛。但是,它與matlab 等高級(jí)仿真軟件相比,在無刷直流電機(jī)仿真方面存在一定不足,其仿真模型的數(shù)量與模型仿真功能較少。軟件自帶的motors 庫里面,只有BLDC-STAR、BLDC-TRIANGLE、MOTOR-BLDCM 三 種 無刷直流電機(jī)仿真模型。目前,學(xué)者只能利用這些模型進(jìn)行簡(jiǎn)單的仿真試驗(yàn)研究。王家豪[1]等學(xué)者, 以80C51 為控制核心,利用BLDC-STAR 模型進(jìn)行了仿真,只給出了Hall 傳感器輸出信號(hào)波形;孫曉旭[2]等學(xué)者,利用AVR 單片機(jī)并結(jié)合BLDC-STAR 模型,以額定速度200 r/min 進(jìn)行開環(huán)與閉環(huán)控制仿真,僅得出196.4 r/min 與199.9 r/min 的兩個(gè)結(jié)果;王偉[3]等學(xué)者,利用Arduino 單片機(jī)與BLDC-STAR模型進(jìn)行了閉環(huán)控制仿真,只展了速度與電流簡(jiǎn)單波形;高珮文等[4]學(xué)者,設(shè)計(jì)了無刷直流電動(dòng)機(jī)控制系統(tǒng),并利用MOTOR-BLDCM 模型進(jìn)行了仿真,只給出了H 橋的輸出波形與霍爾速度檢測(cè)脈沖波形。顯然,這些研究表明,系統(tǒng)自帶的仿真模型只能獲得BLDCM 系統(tǒng)變量的簡(jiǎn)單數(shù)據(jù),無法獲取瞬時(shí)扭矩、電流、反電勢(shì)、轉(zhuǎn)子速度等全過程的精確仿真細(xì)節(jié)信息。
為了在仿真過程中提供更多的BLDCM 仿真細(xì)節(jié),本文先利用Proteus 的ASIMMDLS 庫、DSIMMDLS 庫與LAPLACE 庫的庫元件,并結(jié)合系統(tǒng)函數(shù),采用自制仿真元件的思路,構(gòu)建一個(gè)新的BLDCM 原理圖仿真模型。然后,用滯環(huán)電流控制方法驗(yàn)證仿真模型的正確性。最后,用Matlab 進(jìn)行仿真比對(duì)分析。
BLDCM 采用星形連接、三相六狀態(tài)形式。根據(jù)參考文獻(xiàn)[5~7],電壓平衡方程整理如下:
式中,Ua、Ub、Uc是三相電子電壓(V);R為三相定子繞組的相電阻(Ω);ia、ib、ic是三相電、子電流(A);Ls為自感與互感的等效電感(H);p是微分算子(d/dt);Ea、Eb、Ec是三相定子的反電動(dòng)勢(shì)(V)。其中,Ea=pnfluxωrφa(θe)、Eb=pnfluxωrφb(θe)、Ec=pnfluxωrφc(θe),函 數(shù)φa、φb、φc函 數(shù)各取值范圍都是[-1~+1],pn是電機(jī)極對(duì)數(shù),flux是單相繞組的磁鏈(Wb),θe為轉(zhuǎn)子電角度(rad),ωr為轉(zhuǎn)子機(jī)械角速度(rad/s)。
電磁轉(zhuǎn)矩方程:
其中,Te為電磁轉(zhuǎn)矩(N.m)。
為了便于計(jì)算,令KEa=pnfluxφa(θe)、KEb=pnfluxφb(θe)、KEc=pnfluxφc(θe),根據(jù)前面提到關(guān)系,約掉速度ωr,得到簡(jiǎn)化公式:
另外,從力學(xué)角度,轉(zhuǎn)子的轉(zhuǎn)矩計(jì)算為:
其中,B為阻尼系數(shù)(N.m.s/rad);J為電機(jī)轉(zhuǎn)動(dòng)慣量(kg.m2);TL為負(fù)載轉(zhuǎn)矩(N.m)。
轉(zhuǎn)子的角度與角速度關(guān)系為:
其中θr為轉(zhuǎn)子的角度(rad),電角度θe關(guān)系為θe=pnθr。
電路采用了自制元件模型的方式構(gòu)建,BLDCM 的仿真模型以及滯環(huán)電流控制系統(tǒng)[8]如圖1 所示。主要模塊包括U1(PI 閉環(huán)計(jì)算模塊)、U2(反PARK 變化模塊)、U3(滯環(huán)比較與逆變器模塊)、U4(BLDCM 電機(jī)模塊),都是自制元件。圖中下方,K 模塊是速度ωr的單位轉(zhuǎn)換比值(30/π)乘積模塊,用于將速度的單位轉(zhuǎn)換,由(rad/s)轉(zhuǎn)為(r/min)。圖中文本部分,以*DEFINE 開頭的內(nèi)容是Proteus 的腳本語言,用于定義一些仿真時(shí)需引用的常量。
圖1 電機(jī)滯環(huán)電流控制框圖
電流滯環(huán)控制的基本原理:首先,通過檢測(cè)各相的瞬態(tài)實(shí)際輸出電流(ia、ib、ic),然后與給定的電流進(jìn)行比較(ia*、ib*、ic*),當(dāng)實(shí)際電流大于給定值,則通過改變逆變器的開關(guān)狀態(tài),讓電流減少,反之增大。這樣,可以控制實(shí)際電流繞給定電流做上下鋸齒狀變化,處于一定的變化范圍,這是是一種Bang-Bang 控制方法。這個(gè)滯環(huán)電流控制系統(tǒng)包括兩個(gè)閉環(huán),轉(zhuǎn)速控制環(huán)與電流滯環(huán)控制環(huán)。電流滯環(huán)控制環(huán)采用Bang-Bang 控制,不僅控制簡(jiǎn)單,而且不依賴于電機(jī)參數(shù),魯棒性好。以B 相為例說明控制過程,當(dāng)反饋電流ib的瞬時(shí)值與給定電流ib*之差達(dá)到滯環(huán)的上限時(shí)(ib*-ib≥HB/2,HB 為滯環(huán)寬度),逆變器控制B 相上橋臂關(guān)閉,下橋臂導(dǎo)通,導(dǎo)通電壓為-Udc/2,電流ib下降;反之,當(dāng)反饋電流ib的瞬時(shí)值與給定電流ib*之差達(dá)到滯環(huán)的下限時(shí)(ib*-ib≤HB/2),逆變器控制B 相下橋臂關(guān)閉,上橋臂導(dǎo)通,導(dǎo)通電壓為+Udc/2,電流ib上升。這樣,通過橋臂開關(guān)的器件的交替通斷,控制實(shí)際電流與給定電流一直處于滯環(huán)范圍之內(nèi)。
整套仿真系統(tǒng)的控制流程:首先,由PI 閉環(huán)計(jì)算模塊將給定的目標(biāo)速度Speed 與反饋速度進(jìn)行差值計(jì)算,并按設(shè)定的Kp、Ki 值進(jìn)行PI 計(jì)算得出目標(biāo)iq*(采用了id*=0 控制策略)。然后,經(jīng)過反PARK 變化模塊得出目標(biāo)控制電流ia*、ib*、ic*。接著,由滯環(huán)比較與逆變器模塊對(duì)給點(diǎn)的電流值以及反饋的電流值進(jìn)行比較,輸出電機(jī)的三相電壓控制信號(hào)Ua、Ub、Uc。最后,BLDCM 電機(jī)模塊根據(jù)給定的電壓信號(hào)以及負(fù)載Load 情況計(jì)算模擬電機(jī)運(yùn)行,并輸出ia、ib、ic、Ea、Eb、Ec、ωr(wr)、θe(the_e)等實(shí)時(shí)信號(hào)。
下面,介紹各個(gè)模塊的內(nèi)部原理圖結(jié)構(gòu)做介紹。
該模塊的內(nèi)部原理圖如圖2 所示。+號(hào)是Speed 的輸入端子,-號(hào)是反饋速度ωr的輸入端子。iq*是PI 運(yùn)算后的輸出端子。這里利用ASIMMDLS 庫的兩種元件搭建PI 控制算法。
圖2 PI 閉環(huán)控制模塊圖
ACS1(Arbitrary Voltage Controlled Current source) 與理想電容C1 構(gòu)成一個(gè)積分器。ACS1 的電流大小就是左側(cè)兩引腳電壓的差值err=V(A,B)=V(A)-V(B)。它再乘以-Ki 積分比值就表示:差值是正的時(shí)候,電流流向C1,表示充電,C1 兩端電壓升高;相反,差值是負(fù)的時(shí)候,C1 放電,兩端電壓降低。根據(jù)電容與電流的微分關(guān)系uc=1/C*∫icdt,當(dāng)C=1F 時(shí),電容的電壓就是電流的積分值。因此,uC1=Ki*∫errdt。SUM1(Ideal 2 Input Adder)是理想的電壓加法器,它的輸出效果就是:Kp*err。SUM2 的輸出結(jié)果就是:
反PARK 變換的目的是要將同步旋轉(zhuǎn)坐標(biāo)系下的id*、iq*轉(zhuǎn)換為自由坐標(biāo)系下的ia*、ib*、ic*,內(nèi)部原理圖如圖3 所示。
圖3 反PARK 變換模塊圖
MULT1(Ideal 4 Quadrant Multiplier)~MULT6 是 理 想的乘法運(yùn)算器,也是ASIMMDLS 庫的元件,它可以實(shí)現(xiàn)輸入端V(A)與V(B)的乘法運(yùn)算,也可以按需要做其它運(yùn)算,如圖中插入三角函數(shù)運(yùn)算。the引腳是電角度θe的輸入引角。圖中描述的關(guān)系就是:
MULT2 與MULT1 串聯(lián)就表示兩者的乘法結(jié)果進(jìn)行求和計(jì)算,屬于電壓疊加,這種串聯(lián)方式可以節(jié)約SUM 元件的使用。
這個(gè)模塊是比較給定電流與實(shí)際電流瞬時(shí)差值的關(guān)鍵模塊,內(nèi)部原理圖如圖4 所示。實(shí)際電流瞬時(shí)值ia、ib、ic做了5e-6s 微小延時(shí)處理,這是為了保持與參考資料[8]一致,后續(xù)Matlab 仿真也設(shè)置了這樣的延時(shí)。這個(gè)模塊混合使用了ASIMMDLS 庫與LAPLACE 庫的元件。
圖4 滯環(huán)比較與逆變器模塊圖
NL1(Laplace Non-linear Two-Level Switch With Hysteresis)~NL3 是非線性滯環(huán)比較器,它有四個(gè)內(nèi)部參數(shù),閾值下限、閾值上限、輸出下邊界、輸出上邊界,這里分別設(shè)置為-
BLDCM 電機(jī)模塊是由ASIMMDLS 庫元件組成,內(nèi)部原理圖如圖5 所示。模塊分成(a)、(b)、(c)、(d)四個(gè)功能區(qū)塊。區(qū)塊(a)展示了電機(jī)三相繞組的連接形式,各相分別由一個(gè)反電勢(shì)(AVS 可控電壓源)、一個(gè)理想電感Ls、一個(gè)電阻R 串聯(lián)而成,各相的末端分別匯集到一點(diǎn),成星形連接。反電勢(shì)AVS 的大小由其+極輸入端電壓控制,分別是Ea、Eb、Ec 端子。并聯(lián)在電阻上端的AVS 可控電源用于檢測(cè)相電流的瞬時(shí)大小,并輸出與電流等值的電壓信號(hào),分別以ia、ib、ic 端子輸出。
圖5 BLDCM 電機(jī)模塊圖
區(qū)塊(b)用于實(shí)現(xiàn)系數(shù)KEa、KEb、KEc的計(jì)算,用了6個(gè)AVS 壓控電壓源,分別調(diào)用了cos、limit 函數(shù)。反電勢(shì)φa、φb、φc函數(shù)采用了cos 來模擬[9],寬度為120°,limit函數(shù)用于限制幅值處于[-1~+1]之間,分別乘以pnflux后得到KEa、KEb、KEc。區(qū)塊(c)通過MULT 電壓源分別計(jì)算Ea、Eb、Ec。區(qū)塊(d)的功能是實(shí)現(xiàn)轉(zhuǎn)子角速度與角度的計(jì)算,主要根據(jù)公式(3)~(5)來計(jì)算。按照公式(3),利用三個(gè)MULT 電壓源串聯(lián),利用電壓疊加得到電磁轉(zhuǎn)矩Te。上端串入AVS17 模擬負(fù)載轉(zhuǎn)矩TL,前面帶-1.0 系數(shù)表示負(fù)電壓,起到相減的效果,這里帶了輸入端子,可以從電機(jī)模塊外部輸入負(fù)載階躍信號(hào)傳遞到這里。AVS17 上面,再串接AVS16 模擬阻尼系數(shù)B 產(chǎn)生的阻力,前面也帶-1.0 系數(shù)表示負(fù)電壓。它的輸出端電壓通過ACS2 與C1 的配合,形成積分效果,C1 的上端電壓就是模擬轉(zhuǎn)子速度ωr,再利用ACS1 與C2 積分,得到轉(zhuǎn)子的角度θr,利用AVS18 乘以極對(duì)數(shù)pn得到電角度θe。下面的angle 角度是為了波形顯示,將連續(xù)的θe角轉(zhuǎn)換為0~2π 取值范圍的轉(zhuǎn)子角度。
仿真試驗(yàn)采用相同的電機(jī)參數(shù),分別做兩種仿真試驗(yàn):Proteus 的 圖 表 仿 真(Analogue Analysis)與Matlab Simulink 仿 真。仿真軟件分別為Proteus8.13 與Matlab R2014B。電機(jī)參數(shù):表貼式永磁無刷直流電機(jī),電機(jī)反電勢(shì)為梯形波,相電阻R=2.85Ω,相等效電感Ls=0.0085H,阻 尼 系 數(shù)B=0.0008N.m.s/rad,轉(zhuǎn) 動(dòng)慣 量J=0.0008kg.m2,相 繞 組 的 磁 鏈flux=0.175Wb,極對(duì)數(shù)pn=4,滯環(huán)寬度HB=0.1,電源電壓Udc=310V。仿真條件:額定速度Speed=1000r/min,初始時(shí)刻負(fù)載TL=3N.m,0.05s 時(shí)負(fù)載TL=1N.m。速度環(huán)PI 控制參數(shù):Kp=1,Ki=0.06。
基于圖表仿真的方法:是在Proteus 界面的工具箱中選擇ANALOGUE 分析工具,在原理圖上直接繪制仿真圖表,然后添加需要的探針信號(hào)標(biāo)識(shí),便可以運(yùn)行圖表仿真。這種圖表仿真,位于原理 圖上,有助于快速捕捉原理圖設(shè)計(jì)意圖,比較直觀、方便。這里采用了四種圖表仿真,仿真結(jié)果如圖6 所示。
圖6 Proteus 仿真結(jié)果圖
圖 中,(a)、(b)、(c)、(d) 分 別 為反電勢(shì)、電流、轉(zhuǎn)速、力矩的波形圖。從仿真結(jié)果可以看出,在0~ 0.1s 仿真期間,各個(gè)階段的瞬時(shí)仿真細(xì)節(jié)展示比較清晰,比文獻(xiàn)[3]提到的相應(yīng)波形更加細(xì)致,充分反映了電機(jī)的瞬時(shí)運(yùn)行狀態(tài),以及運(yùn)動(dòng)規(guī)律。從控制效果看,啟動(dòng)時(shí)電機(jī)雖然帶著TL=3N.m 的負(fù)載轉(zhuǎn)矩,但是0.01s 后就達(dá)到了1000r/min 的額定轉(zhuǎn)速;0.05s 后,負(fù)載轉(zhuǎn)矩降低到TL=1N.m 時(shí),電機(jī)也能維持在額定轉(zhuǎn)速,說明滯環(huán)電流控制滿足了電機(jī)控制要求,從而驗(yàn)證了BLDCM 仿真模型的正確性。
Matlab 的仿真引用了參考資料[8]提供的仿真方法,Simulink 控制框圖如圖7 所示。雖然框圖中電機(jī)的模型圖標(biāo)是PMSM 電機(jī),但實(shí)際上,里面的參數(shù)都按這里的仿真條件設(shè)置成了BLDCM 電機(jī)模型。
圖7 控制框圖
該仿真模型的仿真結(jié)果如圖8 所示。
圖8 Matlab 仿真結(jié)果圖
圖中,(a)、(b)、(c)、(d)分別為反電勢(shì)、電流、轉(zhuǎn)速、力矩的波形圖。整體上看,Simulink 的仿真結(jié)構(gòu)與前面的仿真結(jié)果基本一致。下面,對(duì)這兩種結(jié)果進(jìn)行比對(duì)分析。
從Proteus 的圖表仿真結(jié)果與Matlab Simulink 仿真結(jié)果對(duì)比發(fā)現(xiàn),BLDCM 的反電勢(shì)波形、電流波形、速度波形、力矩波形的形狀分別相同。反電勢(shì)波形,在0.01s 之內(nèi),波動(dòng)范圍均是-80V~+80V。0.01s 之后,都是相同幅值的標(biāo)準(zhǔn)梯形波。電流的波形,在0.01s 之內(nèi)波動(dòng)比較大,都是在-25A~30A 之間,0.01s 之后都是相同幅值的馬鞍波形。轉(zhuǎn)速波形,在整個(gè)仿真周期都是一致的,在0.01s 之前,出現(xiàn)了10%的超調(diào)量,但是,迅速進(jìn)行了調(diào)整,之后就穩(wěn)定在額定轉(zhuǎn)速1000r/min。力矩波形,在0.01s 之前波動(dòng)較大,均處于-25N.m~+40N.m之間,0.01s之后,力矩輸出曲線相對(duì)平坦,且與負(fù)載的階梯變化保持一致。顯然,這兩種仿真方式都成功獲得了相同參數(shù)BLDCM 的仿真結(jié)果,四種波形詳細(xì)的展示了相同的運(yùn)行狀態(tài)。
為了進(jìn)一步了解兩種軟件的仿真差異,以速度波形為分析對(duì)象,兩種波形做個(gè)相減操作,讓圖8 數(shù)據(jù)減去圖6 數(shù)據(jù)得出差值,結(jié)果如圖9 所示。
圖9 速度差值圖
圖中,(a)為全輪廓圖,(b)為放大圖。在0.01s 之前,速度差值較大,波動(dòng)范圍為-135r/min~+115r/min;0.01s 之后,差值大幅度減少,當(dāng)負(fù)載轉(zhuǎn)矩為TL=3N.m 時(shí),穩(wěn)定在-0.4r/min~+0.3r/min 之 間,當(dāng) 負(fù)載 轉(zhuǎn) 矩 為TL=1N.m 時(shí),穩(wěn) 定在-0.25r/min~+0.1r/min 之間。顯然,在達(dá)到額定轉(zhuǎn)速之前,兩種仿真結(jié)果之間的差值比較大,到達(dá)額定轉(zhuǎn)速之后,差值變得較小,負(fù)載轉(zhuǎn)矩越變小時(shí),差值也變小。出現(xiàn)這樣的情況,其中的原因涉及到軟件的底層代碼、采樣精度、收斂算法等等因素,可能需要相關(guān)的軟件開發(fā)人員才能解答清楚,有待后續(xù)進(jìn)一步研究。不過,這點(diǎn)差異對(duì)于研究電機(jī)的控制算法影響不大,仿真結(jié)果依然可以充分展示電機(jī)的運(yùn)行規(guī)律。
通過Proteus 與Matlab 兩種軟件的仿真試驗(yàn)研究可以看出,Proteus搭建的仿真模型,其仿真結(jié)果充分展示反電勢(shì)、相電流、轉(zhuǎn)速、力矩的變化細(xì)節(jié),與Matlab 的仿真結(jié)果在變化趨勢(shì)、波動(dòng)幅度方面基本一致,證明了基于Proteus 建立的BLDCM 仿真模型的正確性。該模型展示的電機(jī)仿真細(xì)節(jié)比系統(tǒng)自帶的電機(jī)模型更詳盡,在一定程度上可以媲美Matlab 軟件的仿真效果。因此,這個(gè)BLDCM 模型完全可以作為Proteus 軟件在BLDCM 仿真方面的有效補(bǔ)充,值得推廣應(yīng)用。