馮培磊,劉 沖,陳瀟雅,孫 文,趙 玉,徐天奇
[1.國網新源安徽金寨抽水蓄能有限公司,安徽省六安市 237000;2.國電投(天津)分布式能源有限公司,天津市 300380;3.云南民族大學電氣信息工程學院,云南省昆明市 65000]
續流二極管法[2]是通過檢測反電動勢過零點附近斷開相續流二極管的通斷情況來確定該相反電動勢過零點的位置,并進而確定轉子的位置。文獻[5,6]中介紹該方法適用于120°導通方式的永磁無刷直流電機。
無刷直流電機的三相繞組為兩兩導通方式,也就是每次都會有一相繞組不導通,當電機進行換相時,之前處于導通狀態的兩相繞組有一相會被斷開,而斷開的那相繞組的開關管會打開使其變為導通狀態,這時斷開相繞組的電流不會因為該相開關管的關斷馬上變為零,而是通過該相另一個橋臂的續流二極管進行續流,直到斷開相反電動勢過零點時才變為零。所以,如果在反電動勢過零點附近檢測到某個續流二極管中電流突然變為零,就可以確定當前關斷相繞組為哪一相,進而確定轉子的位置。
功率開關管的控制信號如圖1所示,續流二極管的具體導通情況如下:開關管V1V4開通,AB相繞組通電,換相時續流二極管D3導通續流;開關管V1V6開通,AC相繞組通電,換相時續流二極管D2導通續流;開關管V3V6開通,BC相繞組通電,換相時續流二極管D5導通續流;開關管V3V2開通,BA相繞組通電,換相時續流二極管D4導通續流;開關管V5V2開通,CA相繞組通電,換相時續流二極管D1導通續流;開關管V5V4開通,CB相繞組通電,換相時續流二極管D6導通續流。

圖1 功率開關管控制信號Figure 1 Power switch control signal
三相反電動勢過零點與續流二極管對應關系如表1所示,在反電動勢過零點附近檢測到某個續流二極管遞減為0即可確定轉子的位置,進而實現換相。

表1 反電動勢過零點與續流二極管對應關系表Table 1 The corresponding relation between the back EMF zero crossing point and the freewheeling diode
文獻[1]中無刷直流電機無位置傳感器控制系統以DSP芯片TMS320F28335為核心,通過續流二極管定義法確定反電動勢過零點,進而確定轉子位置,產生PWM信號并以IR2136芯片給逆變器提供驅動信號。該控制系統主要由功率電路和控制電路組成,功率電路主要包括整流電路、逆變電路和驅動電路,它把電源提供的電能經過整流電路進行轉換連接到逆變電路,同時由驅動電路對逆變電路的開關管進行控制,進而控制無刷直流電機;控制電路主要包括起停電路、調速電路和位置檢測電路,它對電機系統進行適當的調節,使其按著要求正常運轉。控制系統的結構框圖如圖2所示。

圖2 基于DSP無位置傳感器控制系統結構框圖Figure 2 Structure diagram of sensorless control system based on DSP
無刷直流電機無位置傳感器控制系統的軟件程序主要由主程序、中斷服務程序和子程序組成,主要包括系統初始化、電機啟動、轉子位置檢測、PWM脈沖生成、換相控制、PID轉速調節等功能的實現。
主程序對整個系統進行了初始化,完成了電機的啟動,并且實現電機閉環控制,主要包括三個重要階段:初始化階段、電機啟動階段、閉環運行階段。
(1)初始化參數變量。
主要包括CPU時鐘頻率的賦值、PWM頻率的賦值、CAP中斷函數的定義及其參數的賦值、定時器T0中斷函數的定義及其參數的賦值、ADC中斷函數的定義、delay函數的定義、SCIB函數的定義、pidcontrol函數的定義及其參數的賦值、母線電壓電流的定義、電機參數的賦值、PWM占空比的賦值等。
(2)初始化控制系統。
主要包括PLL(鎖相環)的初始化、WatchDog(看門狗)的初始化和Periphreal Clocks(外設時鐘)的初始化。
(3)初始化GPIO。
對GPIO輸入輸出口進行初始化,并將GPIO0─GPIO5配置為6路PWM信號:EPWM1A、EPWM1B、EPWM2A、EPWM2B、EPWM3A、EPWM3B,GPIO24配 置 為 ECAP1,GPIO25配置為ECAP2,GPIO26配置為ECAP3,GPIO27配置為LED1,GPIO52配置為LED3,GPIO53配置為LED2。
(4)初始化PIE。
對 PIE控制寄存器初始化至默認狀態,即所有的PIE中斷都被禁止,標志位都被清除;關閉所有CPU中斷,清除CPU中斷相關的標志位;初始化PIE中斷向量表,并配置定時器TO、CAP和ADC的中斷入口地址。
(5)初始化外設設備。
對CPU定時器進行初始化,配置定時器T0的頻率和周期;對CAP進行初始化;對ADC進行初始化。
主程序流程圖如圖3所示。
電機無位置傳感器控制在靜止或者低速時不能準確判斷轉子的位置,無法進行正確的換相處理,給電機的啟動造成了困難,對此,本系統采用了“三段式啟動”技術,主要分為以下三個階段。
(1)轉子預定位階段。
對任意兩相繞組通電,使轉子轉到與定子電樞繞組合成磁場的方向一致,并且施加一定的延遲,目的是為了等待電機的旋轉軸停止振蕩,接著使電機的三相繞組同時導通,使轉子達到預定的位置,完成轉子的預定位。

圖3 主程序流程圖Figure 3 Flow chart of main program
(2)電機開環加速階段[4]。
根據轉子預定位的位置,按照正確的換相順序給電機供電,在換相過程中,增加PWM的占空比,使電機轉速不斷增加。
(3)自同步運行。
當轉速增加到足夠大時,就可以獲取轉子位置信息,切換到自同步運行狀態,實現電機閉環運行。
中斷服務程序主要包括CAP捕獲中斷服務程序、定時器T0中斷服務程序、ADC中斷服務程序,目的是為了實現電機的換相,轉速的計算以及過壓和過流保護。
CAP捕獲中斷服務程序的作用是通過CAP中斷實現3個CAP捕獲端口電平狀態的捕獲,進而確定電機當前的位置,為定時器T0中斷服務程序提供換相信息,同時計算出電機的實時轉速。
CAP捕獲電平狀態與反電動勢的對應關系如圖4所示,無刷主流電機為120°導通方式,中間相隔60°,一個周期進行6次換相,并且反電動勢分別有3個上升沿和下降沿,分別對應了不同的換相時刻,因此將CAP的捕獲端口設置為雙沿觸發捕獲中斷功能,配置三個捕獲端口CAP1、CAP2和CAP3,CAP的捕獲電平狀態分別對應6路PWM信號,在捕捉到上升沿或者下降沿的同時,該相續流二極管遞減為0,則該點即為反電動勢的過零點,延遲30°電角度對電機進行換相[4]。要實現電機的閉環運行,就必須準確的計算出電機的實時轉速,下面是對轉速計算的軟件設計。

圖4 CAP捕獲電平狀態與反電動勢的對應關系Figure 4 The correspondence between CAP capture level and back EMF
本系統研究的電機極對數為2,因此電機運行一個周期會進行12次換相,相應的也會進入12次CAP中斷。定時器的定時時間為T,在定時器T0中設置一個計數器count,初始值為0,每次T0中斷count自增一次,在CAP中斷中設置一個計數器l,初始值也為0,每次進入CAP中斷l自增一次,當CAP第一次進入中斷時,可以計算出電機運轉1個狀態所需的時間:

計數器l自增變成1,同時定時器T0的計數器count清零,當CAP進入第二次中斷時,根據式(1)同樣可以計算出電機運轉第二個狀態的時間,并且將前兩個狀態的時間累加,計算出電機運轉的時間:

此時計數器l自增變成2,count清零。直到l變為12時,電機運行一個周期,得到電機轉動一周的總時間Sum,單位是μs,進而計算出電機的實時轉速為:

電機運行一個周期進入12次CAP中斷,連續兩次進入CAP中斷的時間間隔即為電機運轉60°電角度的時間:

那么電機轉過30°電角度的時間為t/2。設置標志位FLAG,電機每次進入CAP中斷,FLAG置位1,跳入定時器T0中斷服務程序。
定時器T0中斷服務程序的作用主要是根據續流二極管狀態確定反電動勢過零點并進行延時處理,通過CAP捕獲的電平狀態進行換相控制,實現電機的正確換相[5]。
換相關系表如表2所示,當FLAG置位1時,跳入定時器T0中斷服務程序,此時處于反電動勢沿觸發狀態,滿足續流二極管遞減為0時進行延時t/2μs,延時完成后,根據CAP捕獲電平狀態和開關管的對應關系進行換相處理,換相完成后FLAG置位0。

表2 換相關系表Table 2 commutation relationship
ADC中斷服務程序的作用是采集母線電壓和電流進行模數轉換并且檢測,實現過壓和過流保護。
在ADC中斷程序中,首先對電流和電壓進行采集并將轉換后的電壓值賦值給dcvoltage,轉換后的電流值賦值給dccurrent,設置電壓計數器dcvcount,電流計數器dcccount,初始值都為0,每次進入中斷自增一次,由于電壓和電流可能有脈動,于是采用分別將多個電壓值和電流值相加求平均值的方法,當電壓計數器dcvcount=500時求得電壓的平均值,并將dcvcount清零,如果電壓平均值大于3000,則過壓指示燈LED2亮起,電機停止;當電流計數器dcccount=200時求得電流的平均值,并將dcccount清零,如果電流平均值大于3000,則過流指示燈LED3亮起,電機停止。ADC中斷服務程序的流程圖如圖5所示。
本系統子程序的設計主要為PID速度調節,將給定轉速與CAP中斷服務程序中得到的實時轉速求差值,并進行PID處理,改變PWM波形的占空比,從而對電機轉速進行調節,實現電機的閉環控制。

圖5 ADC中斷服務程序流程圖Figure 5 ADC interrupt service flow chart
PID調節系統如圖6所示,比例環節的作用是使系統對轉速差值能夠快速響應;積分環節的作用是消除靜態誤差,提高調節系統的精度;微分環節的作用是體現轉速差值變化趨勢,使調節系統能夠提早處理[7,8]。

圖6 PID速度調節控制圖Figure 6 PID speed control chart
設U(t)為轉速的給定值,Y(t)為轉速的實際值,轉速給定值與實際值的差值E(t)為:

設比例系數為Kp,積分常數為Ti,微分常數為Td,差值E(t)經過PID調節器的輸出值D(t)為:

對式(6)進行離散化處理為:

式(7)中k=0,1,2,3,…,設積分系數為Ki,微分系數為Kd,又

把以上兩式代入到式(6)可以變為

將PID調節的輸出值D(k)賦值給PWM的比較寄存器CMPR,改變PWM的占空比,完成電機的調速,進而實現閉環控制。
無刷直流電機無位置傳感器控制系統的實驗平臺主要由以下幾部分組成:①電機:無刷直流電機,極對數為2,由24V直流電源供電,連接到驅動板;②仿真器:型號為XD100V2,連接電腦和控制板;③控制板:主控DSP芯片型號為TMS320F28335,對電腦傳輸的數據進行處理,給驅動板提供控制信號;④驅動板:驅動芯片型號為IR2136,接受控制板發送的信號,經過處理后將驅動信號提供給電機,控制電機的旋轉;⑤供電電源:主要有24V直流電源和5V直流電源,分別給驅動板和控制板供電,實驗平臺的實物圖如圖7所示。

圖7 實驗平臺總體連接圖Figure 7 Overall connection diagram of experimental platform
在給定轉速為800r/min、900r/min、1000r/min的情況下,對無刷直流電機無位置控制系統進行了實驗,得到轉速的實時波形如圖8~圖10所示。
控制板和驅動板接入電源,運行程序后,電機能夠正常旋轉,由波形可以看出,不論給定轉速為多少,電機都可以在很短的時間內達到穩定,并且穩定在給定轉速的大小附近,驗證了基于續流二極管法無刷直流電機無位置傳感器控制系統設計的合理性。

圖8 給定轉速800r/min時的轉速波形Figure 8 Speed waveform at a given speed of 800r/ min

圖9 給定轉速900r/min時轉速波形Figure 9 Speed waveform at a given speed 900r/min

圖10 給定轉速1000r/min時的轉速波形Figure 10 Speed waveform of a given speed 1000r/min
在續流二極管定義法的基礎上建立了無刷直流電機無位置傳感器控制系統,經過多次實驗,電機都能快速響應并且穩定運行,充分地說明了該控制系統設計的合理性以及可行性。使用DSP芯片TMS320F28335建立控制系統,利用CAP捕獲寄存器中斷實現了電機的正確換相,并且根據中斷時間準確計算出了電機的實時轉速,進而通過PID調節系統是實現了電機的閉環控制,節約了成本,簡化了電路,證明了該芯片在電機控制方面的強大優勢。
基于續流二極管法的無刷直流電機無位置傳感器控制系統,通過續流二極管定義法實現了轉子位置檢測,在CCS4.1.2平臺上實現了無位置傳感器控制系統的軟件設計,以TMS320F28335為DSP主控芯片,經過軟硬件的結合,實現了電機的閉環控制,使電機穩定運行。