黃海波,蘭建平,張 凱
(湖北汽車工業學院電氣與信息工程學院,湖北十堰 442002)
無刷直流電機(BrushlessDCMotor,BLDCM)具有輸出功率大、噪聲低、可靠性高、容易維護等優點,在實際中得到了廣泛應用,尤其在電動車領域已成為動力驅動系統的核心。早期的無刷電機控制器多采用純模擬電路或專用集成芯片來實現,這種設計方法不利于功能擴展和升級,功能實現受限。隨著各種高性能微處理器的出現,以DSP為控制核心的無刷電機控制器得到了普遍應用[3],尤其是集成了豐富外設的單片機,占據了無刷電機控制器CPU的主導市場[4]。
為了改善BLDCM的運行性能,在外環采用速度環的基礎上,在內環引入電流負反饋來控制無刷電機的速度和輸出轉矩[5]。通過速度電流雙閉環反饋控制,達到系統的超調小、抗干擾能力強、實時性好和運行穩定的目的。在雙閉環的控制策略中,傳統PID算法由于微分項對干擾非常敏感,而無刷電機多用于噪聲集中的場合,因此PI控制成為當前無刷電機的主導控制策略。積分項的目的主要是為了消除靜差,但在電機的起動、停止和大幅加減速的過程中,無論是速度環還是電流環,其輸出都會有很大的偏差,引起PI運算的積分積累,致使控制量超過系統允許的最大輸出,引起整個控制系統的超調,電機運行抖動且噪聲很大,嚴重時會損壞電機和控制器的功率驅動部分。本文采用32位高性能單片機LPC1769芯片為核心,通過合理的硬件和軟件設計,采用雙閉環積分分離的控制策略,實現BLDCM的智能控制。
如圖1所示,BLDCM是主要由電機本體、位置檢測器、逆變器和控制器組成的機電一體化產品[6]。轉子磁極的位置通過位置傳感器(霍爾或光電編碼器等)進行測量,控制器對位置傳感器輸出的位置信號進行邏輯處理,并產生相應的驅動時序,驅動時序信號以一定的規則觸發逆變器中的功率器件,將電源功率以一定的邏輯關系分配給電機定子各相繞組,使電機產生持續不斷的轉矩。系統結構如圖1所示。

圖1 BLDCM控制結構
如圖1所示,BLDCM控制系統主要包括:由逆變主電路、逆變功率開關驅動電路構成的功率驅動單元,以LPC1769單片機為核心的主控模塊,調速把、剎車把、限速、定速巡航及液晶顯示構成的人機接口電路,相電流、母線電壓采集電路,轉子位置檢測電路等。
采用積分分離的雙閉環控制策略,如圖2所示,其中轉速外環根據霍爾位置信號估算電機的轉速,與調速設定值作差后進行控制運算的輸出,作為電流內環的設定值。電流檢測電路檢測的電流經單片機的A/D轉換后,與設定值一起進行控制運算,得到電流調節器的輸出——一定占空比的PWM信號,用以控制逆變電路功率管的開/關狀態,實現對電機的轉速和電流的雙閉環控制。

圖2 BLDCM雙閉環控制策略
BLDCM控制系統的硬件結構是以單片機為核心,由單片機完成所有的信號采集、處理和控制功能。如圖3所示,U+和 U-、V+和 V-、W+和W-分別作為三相逆變橋上下橋臂的驅動信號;三路霍爾信號HALLA、HALLB和HALLC送入單片機的IO捕獲輸入端,由于霍爾傳感器輸出的是漏極開漏的位置信號,必須經過上拉,并設置適當的電容進行濾波以消除毛刺;48 V的電源電壓、瞬時電流、平均電流和調速把的電壓信號分別送入單片機的4路A/D輸入引腳,在內部進行A/D轉換后進行相應的處理;過流信號和剎車信號分別送入單片機中斷引腳,隨時起到保護和停機作用;限速信號和巡航信號送入單片機的通用I/O口,單片機在空閑時刻通過查詢對應的引腳狀態來設置當前的工作狀態;通過串口輸出各種參數到另一單獨的液晶顯示電路,實時顯示當前的工作狀態,包括電壓、電流、速度、功率等。

圖3 單片機主電路
采用12只場效應管(MOSFET)P75NF75構成三相橋式逆變電路,以滿足BLDCM大功率寬范圍的驅動需求。其中每個橋臂有4個MOSFET,上下橋臂各2個MOSFET并聯。電機三相分別接于三相橋臂的中間節點,三相繞組在電機內部呈星型連接。功率驅動單元分別采用3只IR 2110集成芯片驅動3個橋臂,由于三相的驅動電路完全相同,如圖4所示,只以其中U相進行說明。按照120°電機的驅動時序,U+和U-在一個電周期內的有效信號各持續120°,且有60°的間隔區間。因此理論上當上橋臂采用PWM輸出,下橋臂采用電平控制時,不存在上下橋臂直通短路現象,但在程序設計時必須插入適當的延遲和邏輯關系以確保電路的安全。當HO輸出為低,LO輸出為高,上管截止下管導通時,輸出端與地相連,輸出端相當于地;當輸出HO為高,LO輸出為低,上管導通下管截止時,輸出端與電源相連,輸出端相當于電源電壓48 V。為避免上下橋臂短路燒毀,禁止HO和LO同時為高。

圖4 功率驅動電路
從圖4可知,母線電流從電源經過其中一個橋臂的上半橋,進入一相繞組(U相),然后經過另一橋臂的下半橋,最后經采樣電阻后到達地形成整個回路。因此,電機運行過程中采樣電路上的電流反映了母線電流,也同樣反映了電子繞組的電流。對采樣電流的實時采集是執行系統控制策略和可靠運行的重要前提。圖5是電流采集電路,分三路同時進行,第一路和第二路都是比例放大電路,除了進入運放前的濾波電容不一樣外,其他參數完全一樣,為了降低噪聲的影響,設置放大比例均為4倍多。第一路的電容C1=470 pF,只起到抑制突發噪聲的作用;第二路的電容C2=0.1 μF,對采樣電流進行平滑濾波。因此第一路瞬時電流反映了電流的實時變化,在軟件處理時起到限流作用,使其不超過規定的電流值,第二路平均電流主要用在電流環上的控制策略中。第三路是設定的比較器,當采樣電阻上的電壓超過設定的閾值時,LM339輸出瞬時變為低電平,比較器翻轉觸發單片機中斷,及時關斷MOS管,起到硬件保護的作用。

圖5 電流采集電路
系統軟件主要分為主程序和中斷服務程序。主程序主要完成參數初始化。對系統安全性和控制的實時性要求很高的功能,則在中斷服務程序中進行處理。
當電機在起動、停止、大幅度加減速,或負載突變時,速度環和電流環被控量與設定值之間會出現較大的偏差。此時應該取消積分的作用,以免由于積分作用降低系統的穩定性,超調量增大。當被控量接近設定值時,引入積分控制,以便消除靜差,提高控制精度。控制算法的程序流程如圖6所示,其實現方法如下:
(1)根據電機的實際運行情況,設定閾值ξ>0;
(2)當|E(k)|>ξ時,采用純粹的比例P控制,避免產生過大的超調,使系統有較快的響應;
(3)當|E(k)|≤ξ時,采用PI控制,保證系統的控制精度。

圖6 積分分離控制算法流程圖
系統采用的積分分離控制算法可簡單表示為

式中:T——采樣時間,控制算法的計算周期;
β——積分項的開關系數,當|E(k)|≤ξ時,β=1,否則 β=0。
中斷服務程序是程序設計的核心部分,從功能上分為兩部分:系統保護程序,負責對過流、剎車、過壓/欠壓等保護信號處理;電機驅動控制程序,完成電機驅動的一系列處理和控制操作。在進入中斷服務程序時,首先進行保護信號的檢測,當發生安全事故時,程序跳入系統保護程序,系統停機。將剎車也放在保護程序里進行處理,是因為剎車后對電機有同樣的處理措施。
3.2.1 系統保護程序
系統設定了過流、剎車、過壓/欠壓等故障信號檢測,其中過流和剎車是單片機LPC1769的IO引腳中斷直接引起的,起到實時保護的作用。過壓/欠壓信號是在主程序對電壓信號A/D采集后與設定的閾值比較后產生的A/D中斷。當發生故障時,調用中斷保護的故障處理子程序,關閉PWM信號輸出并做停機處理。如果沒有發生故障,系統即進入正常的電機驅動程序。
3.2.2 電機驅動程序
電機驅動程序主要圍繞圖2中速度電流雙閉環的控制策略進行設計。其中轉速環包含位置檢測模塊、轉速估算模塊、速度調節模塊。速度估算模塊根據位置檢測模塊的中斷標志信號、位置信息和軟件時間估算出當前電機轉速,將反饋速度送入速度調節器與給定速度相比較,并進行積分分離的PI調節,實現速度環的調節作用。速度調節器的輸出為電流環的設定參考值。
電流環包含電流采樣模塊、電流調節器、PWM發生模塊。電流采樣模塊根據當前轉子位置狀態采樣相應的電流,包括平均電流和瞬時電流,將平均電流送入電流調節器與參考電流相比較,并進行積分分離的PI調節,實現電流環的調節作用。用電流調節器的輸出去控制PWM發生器的占空比。同時,在任意時刻當瞬時電流的幅值超過設定的閾值時,必須適當降低PWM占空比,起到限流保護的作用。整個電機的驅動程序流程如圖7所示。

圖7 電機驅動程序流程圖
轉子位置檢測程序對驅動程序非常重要。轉子位置信息為轉速估算程序、電流采樣程序、PWM導通關斷邏輯提供重要信息。轉子位置檢測與轉速估算流程圖如圖8所示。在系統初始化時,即將3路霍爾信號對應的I/O口設置為邊沿有效捕捉狀態。當反映轉子位置的霍爾信號發生改變(上跳或下跳)時,對應的三路I/O口捕捉中斷標志位置位。在中斷服務程序中查詢該標志位,一旦有效即將I/O口設置為輸入口,讀入當前位置狀態值,保存到位置變量,完成位置檢測。然后再將I/O口設置為捕捉狀態,為下次霍爾信號跳變捕捉做準備。根據I/O口捕捉中斷標志位有效與否,判斷是否執行電機轉速估算子程序,通過起停通用定時器4的計數值來測量任意兩次位置變化之間的時間間隔。由于一個機械周期包括6個電周期,因此利用公式n=1/(6pΔT)計算電機轉速,其中p為電機的極對數,ΔT為定時器的計時差值。對估算出的轉速進行平滑濾波后,即進行積分分離的速度PI調節。

圖8 位置檢測與轉速估算流程圖
為了實時對電流進行采樣,一旦系統進入電機驅動服務程序,即通過軟件觸發A/D對瞬時電流和平均電流進行轉換。當執行轉速估算和轉速調節后,從A/D緩沖區直接讀取電流值,進行電流調節和限流保護。PWM發生模塊根據電流調節器的輸出調節PWM波的占空比,根據位置檢測值,通過查詢開關管導通邏輯表,確定導通相序,改變 PWM寄存器 ACTRB的值,實現電機換相。
采用80BL145-440 BLDCM,額定參數為電壓48 V,功率550 W,轉速 4 500 r/min,1.8 N·m。分別檢驗了控制系統的霍爾位置信號檢測模塊、轉速估算模塊、PWM發生模塊、過流保護模塊、電壓采集模塊、電機信息顯示模塊、單片機和系統板供電模塊以及剎車、巡航、限速、調速把模塊。
經過反復測試,設定速度電流的調節周期T=20 ms,積分分離的速度閾值 ξ1=150 r/min,電流閾值ξ2=3.5 A時,各項功能模塊均工作正常,電機起動平穩,加速平滑,且電機在4 500 r/min范圍內轉速任意可調;人為增加電源電壓到52 V以上和降低電源電壓到42 V以下時,過壓和欠壓保護均得到實現;在運行過程中突加負載導致電機堵轉過流時,系統立即進行過流保護;當轉速把設定轉速保持8 s不變時,電機進入巡航狀態;通過示波器觀測到的霍爾信號、PWM發生信號、采樣電流等均穩定且噪聲很小,說明電路設計可靠,系統工作正常。
通過軟硬件的設計與調試,設計了以LPC1769單片機為核心的BLDCM控制系統。針對額定電壓為48 V,額定功率為550 W的BLDCM進行安裝調試,完成BLDCM的調速、剎車、定速巡航、限速等功能性要求和過壓/欠壓保護、過流保護等安全性要求。試驗結果表明,該系統體積小、重量輕、精度高,相比傳統模擬控制器具有更大的靈活性、可靠性,稍加改進可應用于電動自行車或電動摩托車BLDCM的驅動控制。
[1]王鳳琥,孫躍東.電動汽車傳動系統方案研究[J].制造業自動化,2012,34(2):75-78.
[2]張潔.簡論純電動汽車的驅動電機及其控制系統[J].國內外機電一體化技術,2012(3):40-41.
[3]王海欣,黃海宏.基于DSP的三相直流無刷電機調速系統的設計[J].電源技術應用,2007,10(9):21-24.
[4]崔麗,葉先明.基于AVR單片機的直流無刷電機智能控制系統設計[J].儀器技術與傳感器,2009(11):34-36.
[5]吳金友,李艷麗,范蟠果.無刷直流電機控制系統在電動自行車上的應用[J].電機與控制應用,2008,35(1):63-65.
[6]郭慶鼎,趙希梅.直流無刷電動機原理與技術應用[M].北京:中國電力出版社,2008.