馮培磊,劉 沖,陳瀟雅,孫 文,趙 玉,徐天奇
[1.國(guó)網(wǎng)新源安徽金寨抽水蓄能有限公司,安徽省六安市 237000;2.國(guó)電投(天津)分布式能源有限公司,天津市 300380;3.云南民族大學(xué)電氣信息工程學(xué)院,云南省昆明市 65000]
續(xù)流二極管法[2]是通過(guò)檢測(cè)反電動(dòng)勢(shì)過(guò)零點(diǎn)附近斷開(kāi)相續(xù)流二極管的通斷情況來(lái)確定該相反電動(dòng)勢(shì)過(guò)零點(diǎn)的位置,并進(jìn)而確定轉(zhuǎn)子的位置。文獻(xiàn)[5,6]中介紹該方法適用于120°導(dǎo)通方式的永磁無(wú)刷直流電機(jī)。
無(wú)刷直流電機(jī)的三相繞組為兩兩導(dǎo)通方式,也就是每次都會(huì)有一相繞組不導(dǎo)通,當(dāng)電機(jī)進(jìn)行換相時(shí),之前處于導(dǎo)通狀態(tài)的兩相繞組有一相會(huì)被斷開(kāi),而斷開(kāi)的那相繞組的開(kāi)關(guān)管會(huì)打開(kāi)使其變?yōu)閷?dǎo)通狀態(tài),這時(shí)斷開(kāi)相繞組的電流不會(huì)因?yàn)樵撓嚅_(kāi)關(guān)管的關(guān)斷馬上變?yōu)榱悖峭ㄟ^(guò)該相另一個(gè)橋臂的續(xù)流二極管進(jìn)行續(xù)流,直到斷開(kāi)相反電動(dòng)勢(shì)過(guò)零點(diǎn)時(shí)才變?yōu)榱?。所以,如果在反電?dòng)勢(shì)過(guò)零點(diǎn)附近檢測(cè)到某個(gè)續(xù)流二極管中電流突然變?yōu)榱悖涂梢源_定當(dāng)前關(guān)斷相繞組為哪一相,進(jìn)而確定轉(zhuǎn)子的位置。
功率開(kāi)關(guān)管的控制信號(hào)如圖1所示,續(xù)流二極管的具體導(dǎo)通情況如下:開(kāi)關(guān)管V1V4開(kāi)通,AB相繞組通電,換相時(shí)續(xù)流二極管D3導(dǎo)通續(xù)流;開(kāi)關(guān)管V1V6開(kāi)通,AC相繞組通電,換相時(shí)續(xù)流二極管D2導(dǎo)通續(xù)流;開(kāi)關(guān)管V3V6開(kāi)通,BC相繞組通電,換相時(shí)續(xù)流二極管D5導(dǎo)通續(xù)流;開(kāi)關(guān)管V3V2開(kāi)通,BA相繞組通電,換相時(shí)續(xù)流二極管D4導(dǎo)通續(xù)流;開(kāi)關(guān)管V5V2開(kāi)通,CA相繞組通電,換相時(shí)續(xù)流二極管D1導(dǎo)通續(xù)流;開(kāi)關(guān)管V5V4開(kāi)通,CB相繞組通電,換相時(shí)續(xù)流二極管D6導(dǎo)通續(xù)流。
圖1 功率開(kāi)關(guān)管控制信號(hào)Figure 1 Power switch control signal
三相反電動(dòng)勢(shì)過(guò)零點(diǎn)與續(xù)流二極管對(duì)應(yīng)關(guān)系如表1所示,在反電動(dòng)勢(shì)過(guò)零點(diǎn)附近檢測(cè)到某個(gè)續(xù)流二極管遞減為0即可確定轉(zhuǎn)子的位置,進(jìn)而實(shí)現(xiàn)換相。
表1 反電動(dòng)勢(shì)過(guò)零點(diǎn)與續(xù)流二極管對(duì)應(yīng)關(guān)系表Table 1 The corresponding relation between the back EMF zero crossing point and the freewheeling diode
文獻(xiàn)[1]中無(wú)刷直流電機(jī)無(wú)位置傳感器控制系統(tǒng)以DSP芯片TMS320F28335為核心,通過(guò)續(xù)流二極管定義法確定反電動(dòng)勢(shì)過(guò)零點(diǎn),進(jìn)而確定轉(zhuǎn)子位置,產(chǎn)生PWM信號(hào)并以IR2136芯片給逆變器提供驅(qū)動(dòng)信號(hào)。該控制系統(tǒng)主要由功率電路和控制電路組成,功率電路主要包括整流電路、逆變電路和驅(qū)動(dòng)電路,它把電源提供的電能經(jīng)過(guò)整流電路進(jìn)行轉(zhuǎn)換連接到逆變電路,同時(shí)由驅(qū)動(dòng)電路對(duì)逆變電路的開(kāi)關(guān)管進(jìn)行控制,進(jìn)而控制無(wú)刷直流電機(jī);控制電路主要包括起停電路、調(diào)速電路和位置檢測(cè)電路,它對(duì)電機(jī)系統(tǒng)進(jìn)行適當(dāng)?shù)恼{(diào)節(jié),使其按著要求正常運(yùn)轉(zhuǎn)??刂葡到y(tǒng)的結(jié)構(gòu)框圖如圖2所示。
圖2 基于DSP無(wú)位置傳感器控制系統(tǒng)結(jié)構(gòu)框圖Figure 2 Structure diagram of sensorless control system based on DSP
無(wú)刷直流電機(jī)無(wú)位置傳感器控制系統(tǒng)的軟件程序主要由主程序、中斷服務(wù)程序和子程序組成,主要包括系統(tǒng)初始化、電機(jī)啟動(dòng)、轉(zhuǎn)子位置檢測(cè)、PWM脈沖生成、換相控制、PID轉(zhuǎn)速調(diào)節(jié)等功能的實(shí)現(xiàn)。
主程序?qū)φ麄€(gè)系統(tǒng)進(jìn)行了初始化,完成了電機(jī)的啟動(dòng),并且實(shí)現(xiàn)電機(jī)閉環(huán)控制,主要包括三個(gè)重要階段:初始化階段、電機(jī)啟動(dòng)階段、閉環(huán)運(yùn)行階段。
(1)初始化參數(shù)變量。
主要包括CPU時(shí)鐘頻率的賦值、PWM頻率的賦值、CAP中斷函數(shù)的定義及其參數(shù)的賦值、定時(shí)器T0中斷函數(shù)的定義及其參數(shù)的賦值、ADC中斷函數(shù)的定義、delay函數(shù)的定義、SCIB函數(shù)的定義、pidcontrol函數(shù)的定義及其參數(shù)的賦值、母線電壓電流的定義、電機(jī)參數(shù)的賦值、PWM占空比的賦值等。
(2)初始化控制系統(tǒng)。
主要包括PLL(鎖相環(huán))的初始化、WatchDog(看門(mén)狗)的初始化和Periphreal Clocks(外設(shè)時(shí)鐘)的初始化。
(3)初始化GPIO。
對(duì)GPIO輸入輸出口進(jìn)行初始化,并將GPIO0─GPIO5配置為6路PWM信號(hào):EPWM1A、EPWM1B、EPWM2A、EPWM2B、EPWM3A、EPWM3B,GPIO24配 置 為 ECAP1,GPIO25配置為ECAP2,GPIO26配置為ECAP3,GPIO27配置為L(zhǎng)ED1,GPIO52配置為L(zhǎng)ED3,GPIO53配置為L(zhǎng)ED2。
(4)初始化PIE。
對(duì) PIE控制寄存器初始化至默認(rèn)狀態(tài),即所有的PIE中斷都被禁止,標(biāo)志位都被清除;關(guān)閉所有CPU中斷,清除CPU中斷相關(guān)的標(biāo)志位;初始化PIE中斷向量表,并配置定時(shí)器TO、CAP和ADC的中斷入口地址。
(5)初始化外設(shè)設(shè)備。
對(duì)CPU定時(shí)器進(jìn)行初始化,配置定時(shí)器T0的頻率和周期;對(duì)CAP進(jìn)行初始化;對(duì)ADC進(jìn)行初始化。
主程序流程圖如圖3所示。
電機(jī)無(wú)位置傳感器控制在靜止或者低速時(shí)不能準(zhǔn)確判斷轉(zhuǎn)子的位置,無(wú)法進(jìn)行正確的換相處理,給電機(jī)的啟動(dòng)造成了困難,對(duì)此,本系統(tǒng)采用了“三段式啟動(dòng)”技術(shù),主要分為以下三個(gè)階段。
(1)轉(zhuǎn)子預(yù)定位階段。
對(duì)任意兩相繞組通電,使轉(zhuǎn)子轉(zhuǎn)到與定子電樞繞組合成磁場(chǎng)的方向一致,并且施加一定的延遲,目的是為了等待電機(jī)的旋轉(zhuǎn)軸停止振蕩,接著使電機(jī)的三相繞組同時(shí)導(dǎo)通,使轉(zhuǎn)子達(dá)到預(yù)定的位置,完成轉(zhuǎn)子的預(yù)定位。
圖3 主程序流程圖Figure 3 Flow chart of main program
(2)電機(jī)開(kāi)環(huán)加速階段[4]。
根據(jù)轉(zhuǎn)子預(yù)定位的位置,按照正確的換相順序給電機(jī)供電,在換相過(guò)程中,增加PWM的占空比,使電機(jī)轉(zhuǎn)速不斷增加。
(3)自同步運(yùn)行。
當(dāng)轉(zhuǎn)速增加到足夠大時(shí),就可以獲取轉(zhuǎn)子位置信息,切換到自同步運(yùn)行狀態(tài),實(shí)現(xiàn)電機(jī)閉環(huán)運(yùn)行。
中斷服務(wù)程序主要包括CAP捕獲中斷服務(wù)程序、定時(shí)器T0中斷服務(wù)程序、ADC中斷服務(wù)程序,目的是為了實(shí)現(xiàn)電機(jī)的換相,轉(zhuǎn)速的計(jì)算以及過(guò)壓和過(guò)流保護(hù)。
CAP捕獲中斷服務(wù)程序的作用是通過(guò)CAP中斷實(shí)現(xiàn)3個(gè)CAP捕獲端口電平狀態(tài)的捕獲,進(jìn)而確定電機(jī)當(dāng)前的位置,為定時(shí)器T0中斷服務(wù)程序提供換相信息,同時(shí)計(jì)算出電機(jī)的實(shí)時(shí)轉(zhuǎn)速。
CAP捕獲電平狀態(tài)與反電動(dòng)勢(shì)的對(duì)應(yīng)關(guān)系如圖4所示,無(wú)刷主流電機(jī)為120°導(dǎo)通方式,中間相隔60°,一個(gè)周期進(jìn)行6次換相,并且反電動(dòng)勢(shì)分別有3個(gè)上升沿和下降沿,分別對(duì)應(yīng)了不同的換相時(shí)刻,因此將CAP的捕獲端口設(shè)置為雙沿觸發(fā)捕獲中斷功能,配置三個(gè)捕獲端口CAP1、CAP2和CAP3,CAP的捕獲電平狀態(tài)分別對(duì)應(yīng)6路PWM信號(hào),在捕捉到上升沿或者下降沿的同時(shí),該相續(xù)流二極管遞減為0,則該點(diǎn)即為反電動(dòng)勢(shì)的過(guò)零點(diǎn),延遲30°電角度對(duì)電機(jī)進(jìn)行換相[4]。要實(shí)現(xiàn)電機(jī)的閉環(huán)運(yùn)行,就必須準(zhǔn)確的計(jì)算出電機(jī)的實(shí)時(shí)轉(zhuǎn)速,下面是對(duì)轉(zhuǎn)速計(jì)算的軟件設(shè)計(jì)。
圖4 CAP捕獲電平狀態(tài)與反電動(dòng)勢(shì)的對(duì)應(yīng)關(guān)系Figure 4 The correspondence between CAP capture level and back EMF
本系統(tǒng)研究的電機(jī)極對(duì)數(shù)為2,因此電機(jī)運(yùn)行一個(gè)周期會(huì)進(jìn)行12次換相,相應(yīng)的也會(huì)進(jìn)入12次CAP中斷。定時(shí)器的定時(shí)時(shí)間為T(mén),在定時(shí)器T0中設(shè)置一個(gè)計(jì)數(shù)器count,初始值為0,每次T0中斷count自增一次,在CAP中斷中設(shè)置一個(gè)計(jì)數(shù)器l,初始值也為0,每次進(jìn)入CAP中斷l(xiāng)自增一次,當(dāng)CAP第一次進(jìn)入中斷時(shí),可以計(jì)算出電機(jī)運(yùn)轉(zhuǎn)1個(gè)狀態(tài)所需的時(shí)間:
計(jì)數(shù)器l自增變成1,同時(shí)定時(shí)器T0的計(jì)數(shù)器count清零,當(dāng)CAP進(jìn)入第二次中斷時(shí),根據(jù)式(1)同樣可以計(jì)算出電機(jī)運(yùn)轉(zhuǎn)第二個(gè)狀態(tài)的時(shí)間,并且將前兩個(gè)狀態(tài)的時(shí)間累加,計(jì)算出電機(jī)運(yùn)轉(zhuǎn)的時(shí)間:
此時(shí)計(jì)數(shù)器l自增變成2,count清零。直到l變?yōu)?2時(shí),電機(jī)運(yùn)行一個(gè)周期,得到電機(jī)轉(zhuǎn)動(dòng)一周的總時(shí)間Sum,單位是μs,進(jìn)而計(jì)算出電機(jī)的實(shí)時(shí)轉(zhuǎn)速為:
電機(jī)運(yùn)行一個(gè)周期進(jìn)入12次CAP中斷,連續(xù)兩次進(jìn)入CAP中斷的時(shí)間間隔即為電機(jī)運(yùn)轉(zhuǎn)60°電角度的時(shí)間:
那么電機(jī)轉(zhuǎn)過(guò)30°電角度的時(shí)間為t/2。設(shè)置標(biāo)志位FLAG,電機(jī)每次進(jìn)入CAP中斷,F(xiàn)LAG置位1,跳入定時(shí)器T0中斷服務(wù)程序。
定時(shí)器T0中斷服務(wù)程序的作用主要是根據(jù)續(xù)流二極管狀態(tài)確定反電動(dòng)勢(shì)過(guò)零點(diǎn)并進(jìn)行延時(shí)處理,通過(guò)CAP捕獲的電平狀態(tài)進(jìn)行換相控制,實(shí)現(xiàn)電機(jī)的正確換相[5]。
換相關(guān)系表如表2所示,當(dāng)FLAG置位1時(shí),跳入定時(shí)器T0中斷服務(wù)程序,此時(shí)處于反電動(dòng)勢(shì)沿觸發(fā)狀態(tài),滿足續(xù)流二極管遞減為0時(shí)進(jìn)行延時(shí)t/2μs,延時(shí)完成后,根據(jù)CAP捕獲電平狀態(tài)和開(kāi)關(guān)管的對(duì)應(yīng)關(guān)系進(jìn)行換相處理,換相完成后FLAG置位0。
表2 換相關(guān)系表Table 2 commutation relationship
ADC中斷服務(wù)程序的作用是采集母線電壓和電流進(jìn)行模數(shù)轉(zhuǎn)換并且檢測(cè),實(shí)現(xiàn)過(guò)壓和過(guò)流保護(hù)。
在ADC中斷程序中,首先對(duì)電流和電壓進(jìn)行采集并將轉(zhuǎn)換后的電壓值賦值給dcvoltage,轉(zhuǎn)換后的電流值賦值給dccurrent,設(shè)置電壓計(jì)數(shù)器dcvcount,電流計(jì)數(shù)器dcccount,初始值都為0,每次進(jìn)入中斷自增一次,由于電壓和電流可能有脈動(dòng),于是采用分別將多個(gè)電壓值和電流值相加求平均值的方法,當(dāng)電壓計(jì)數(shù)器dcvcount=500時(shí)求得電壓的平均值,并將dcvcount清零,如果電壓平均值大于3000,則過(guò)壓指示燈LED2亮起,電機(jī)停止;當(dāng)電流計(jì)數(shù)器dcccount=200時(shí)求得電流的平均值,并將dcccount清零,如果電流平均值大于3000,則過(guò)流指示燈LED3亮起,電機(jī)停止。ADC中斷服務(wù)程序的流程圖如圖5所示。
本系統(tǒng)子程序的設(shè)計(jì)主要為PID速度調(diào)節(jié),將給定轉(zhuǎn)速與CAP中斷服務(wù)程序中得到的實(shí)時(shí)轉(zhuǎn)速求差值,并進(jìn)行PID處理,改變PWM波形的占空比,從而對(duì)電機(jī)轉(zhuǎn)速進(jìn)行調(diào)節(jié),實(shí)現(xiàn)電機(jī)的閉環(huán)控制。
圖5 ADC中斷服務(wù)程序流程圖Figure 5 ADC interrupt service flow chart
PID調(diào)節(jié)系統(tǒng)如圖6所示,比例環(huán)節(jié)的作用是使系統(tǒng)對(duì)轉(zhuǎn)速差值能夠快速響應(yīng);積分環(huán)節(jié)的作用是消除靜態(tài)誤差,提高調(diào)節(jié)系統(tǒng)的精度;微分環(huán)節(jié)的作用是體現(xiàn)轉(zhuǎn)速差值變化趨勢(shì),使調(diào)節(jié)系統(tǒng)能夠提早處理[7,8]。
圖6 PID速度調(diào)節(jié)控制圖Figure 6 PID speed control chart
設(shè)U(t)為轉(zhuǎn)速的給定值,Y(t)為轉(zhuǎn)速的實(shí)際值,轉(zhuǎn)速給定值與實(shí)際值的差值E(t)為:
設(shè)比例系數(shù)為Kp,積分常數(shù)為T(mén)i,微分常數(shù)為T(mén)d,差值E(t)經(jīng)過(guò)PID調(diào)節(jié)器的輸出值D(t)為:
對(duì)式(6)進(jìn)行離散化處理為:
式(7)中k=0,1,2,3,…,設(shè)積分系數(shù)為Ki,微分系數(shù)為Kd,又
把以上兩式代入到式(6)可以變?yōu)?/p>
將PID調(diào)節(jié)的輸出值D(k)賦值給PWM的比較寄存器CMPR,改變PWM的占空比,完成電機(jī)的調(diào)速,進(jìn)而實(shí)現(xiàn)閉環(huán)控制。
無(wú)刷直流電機(jī)無(wú)位置傳感器控制系統(tǒng)的實(shí)驗(yàn)平臺(tái)主要由以下幾部分組成:①電機(jī):無(wú)刷直流電機(jī),極對(duì)數(shù)為2,由24V直流電源供電,連接到驅(qū)動(dòng)板;②仿真器:型號(hào)為XD100V2,連接電腦和控制板;③控制板:主控DSP芯片型號(hào)為T(mén)MS320F28335,對(duì)電腦傳輸?shù)臄?shù)據(jù)進(jìn)行處理,給驅(qū)動(dòng)板提供控制信號(hào);④驅(qū)動(dòng)板:驅(qū)動(dòng)芯片型號(hào)為IR2136,接受控制板發(fā)送的信號(hào),經(jīng)過(guò)處理后將驅(qū)動(dòng)信號(hào)提供給電機(jī),控制電機(jī)的旋轉(zhuǎn);⑤供電電源:主要有24V直流電源和5V直流電源,分別給驅(qū)動(dòng)板和控制板供電,實(shí)驗(yàn)平臺(tái)的實(shí)物圖如圖7所示。
圖7 實(shí)驗(yàn)平臺(tái)總體連接圖Figure 7 Overall connection diagram of experimental platform
在給定轉(zhuǎn)速為800r/min、900r/min、1000r/min的情況下,對(duì)無(wú)刷直流電機(jī)無(wú)位置控制系統(tǒng)進(jìn)行了實(shí)驗(yàn),得到轉(zhuǎn)速的實(shí)時(shí)波形如圖8~圖10所示。
控制板和驅(qū)動(dòng)板接入電源,運(yùn)行程序后,電機(jī)能夠正常旋轉(zhuǎn),由波形可以看出,不論給定轉(zhuǎn)速為多少,電機(jī)都可以在很短的時(shí)間內(nèi)達(dá)到穩(wěn)定,并且穩(wěn)定在給定轉(zhuǎn)速的大小附近,驗(yàn)證了基于續(xù)流二極管法無(wú)刷直流電機(jī)無(wú)位置傳感器控制系統(tǒng)設(shè)計(jì)的合理性。
圖8 給定轉(zhuǎn)速800r/min時(shí)的轉(zhuǎn)速波形Figure 8 Speed waveform at a given speed of 800r/ min
圖9 給定轉(zhuǎn)速900r/min時(shí)轉(zhuǎn)速波形Figure 9 Speed waveform at a given speed 900r/min
圖10 給定轉(zhuǎn)速1000r/min時(shí)的轉(zhuǎn)速波形Figure 10 Speed waveform of a given speed 1000r/min
在續(xù)流二極管定義法的基礎(chǔ)上建立了無(wú)刷直流電機(jī)無(wú)位置傳感器控制系統(tǒng),經(jīng)過(guò)多次實(shí)驗(yàn),電機(jī)都能快速響應(yīng)并且穩(wěn)定運(yùn)行,充分地說(shuō)明了該控制系統(tǒng)設(shè)計(jì)的合理性以及可行性。使用DSP芯片TMS320F28335建立控制系統(tǒng),利用CAP捕獲寄存器中斷實(shí)現(xiàn)了電機(jī)的正確換相,并且根據(jù)中斷時(shí)間準(zhǔn)確計(jì)算出了電機(jī)的實(shí)時(shí)轉(zhuǎn)速,進(jìn)而通過(guò)PID調(diào)節(jié)系統(tǒng)是實(shí)現(xiàn)了電機(jī)的閉環(huán)控制,節(jié)約了成本,簡(jiǎn)化了電路,證明了該芯片在電機(jī)控制方面的強(qiáng)大優(yōu)勢(shì)。
基于續(xù)流二極管法的無(wú)刷直流電機(jī)無(wú)位置傳感器控制系統(tǒng),通過(guò)續(xù)流二極管定義法實(shí)現(xiàn)了轉(zhuǎn)子位置檢測(cè),在CCS4.1.2平臺(tái)上實(shí)現(xiàn)了無(wú)位置傳感器控制系統(tǒng)的軟件設(shè)計(jì),以TMS320F28335為DSP主控芯片,經(jīng)過(guò)軟硬件的結(jié)合,實(shí)現(xiàn)了電機(jī)的閉環(huán)控制,使電機(jī)穩(wěn)定運(yùn)行。