(東北大學信息科學與工程學院,遼寧 沈陽 110004)
電動汽車主要包括車載電源、電池管理系統(tǒng)、電機和電機驅動器等部分組成。異步電機具有結構簡單,制造、使用和維護方便,運行可靠以及質量較小,成本較低等優(yōu)點,成為多數(shù)交流驅動電動汽車的首選[1]。電機作為電動汽車的動力單元,它與能量源之間的能量流動和功率的輸出是通過電機驅動器來控制的。主控芯片作為電機驅動器的核心,根據(jù)傳感器信號和電機轉子位置信號經(jīng)控制策略處理后輸出脈沖寬度調制波形[2],此波形經(jīng)過功率驅動電路放大后控制逆變電路功率器件的導通狀態(tài),進而驅動電機旋轉。比較常見的芯片選取方案是以數(shù)字信號處理器(Digital Signal Processor,DSP)為控制核,軟硬件協(xié)同設計的控制策略[3]。但值得注意的是,交流伺服控制器結構復雜,涉及大量復雜運算,包括對旋變進行直接解碼時的反正切運算,進行Clark-Park變換時的正余弦運算,以及空間矢量脈寬調制(Space Vector Pulse Width Modulation,SVPWM)的扇區(qū)判斷時需要的坐標系轉換。這些運算在DSP中通常采用查表方式。在一些要求精度高,速度快,可靠性高的場合,需要精確測量轉子的位置并進行復雜的解耦運算,常用的基于DSP的方案容易受電機參數(shù),尤其是轉子電阻的影響,很難滿足實際使用的要求[4]。
針對DSP控制出現(xiàn)的問題,本文提出了一種基于FPGA的控制方法。與傳統(tǒng)DSP控制相比,F(xiàn)PGA控制具有以下三個特點:一是FPGA使用純硬件的方式處理數(shù)據(jù),具有更快的響應時間,能夠實現(xiàn)更高精度的控制;二是FPGA代碼具有模塊化特點,這將增強系統(tǒng)的可擴展性,同時大大降低了成本;三是,由于FPGA有著規(guī)則的內部邏輯塊陣列和豐富的線性資源,特別適合用于細粒度和高并行度結構的FIR濾波器的實現(xiàn),相對于串行運算主導的通用DSP芯片來說,并行性和可拓展性更高[5]。
鑒于以上分析,本文主要實現(xiàn)了一種基于FPGA的以三相異步交流電機為控制對象、IGBT為功率單元、矢量控制為控制策略的電動汽車驅動系統(tǒng)。同時引入CORDIC算法對邏輯單元中涉及到的三角函數(shù)運算做了優(yōu)化,并加入了對AD產(chǎn)生信號的FIR濾波,提高了系統(tǒng)的準確性、可靠性。
整個系統(tǒng)硬件平臺主要包括:三相交流異步電機、功率逆變模塊、驅動模塊、FPGA控制模塊、電壓電流采集模塊。電機驅動部分的系統(tǒng)框圖如圖1所示。其中,三相交流異步電機是動力輸出裝置,為汽車的運行提供動力源。同時,電機將通過安裝的光電編碼器將脈沖發(fā)送給FPGA。FPGA控制模塊負責產(chǎn)生控制電機所需的邏輯信號和接受來自用戶的指令。驅動模塊在FPGA的邏輯信號控制下,輸出相應的電壓到功率逆變模塊上來控制IGBT的開啟和關閉。功率逆變模塊是由六個IGBT組成的三相逆變單元,在驅動模塊的驅動下跟隨FPGA的邏輯信號輸出對應的SVPWM波[6]。電壓電流采集模塊負責采集電機上電壓和電流值,經(jīng)過A/D轉換后發(fā)送到FPGA.
圖1電機驅動單元系統(tǒng)框圖
首先采集三相異步電機的電流與電壓信號,將電流與電壓模擬量經(jīng)過A/D轉換器轉換成數(shù)字信號并送入FPGA,然后采集轉速信號并計算轉速值物理量。根據(jù)所述電機的電流、電壓和轉速信號,結合用戶發(fā)送的調節(jié)信號,采用矢量控制算法得到控制信號,輸出所述控制信號至驅動單元。系統(tǒng)控制的具體步驟如下:
將利用霍爾傳感器采集到的電機的電流、電壓信號進行濾波處理,同時將用戶發(fā)送的控制信號傳遞至矢量控制模塊。而轉速信號的采集則通過光電編碼器,利用FPGA的等精度采集方法,記錄脈沖個數(shù)后,根據(jù)相應的公式計算得到所需轉速值物理量;將用戶發(fā)送信號與計算得到的轉速值輸入至外環(huán)PI調節(jié)器,與Clark-Park變換的電流值作比較,并輸入到內環(huán)PI,系統(tǒng)設定值與Clark-Park變換的另一值比較后也輸入至內環(huán)PI調節(jié)器。以上兩組結果采用Park逆變換得到電壓值,將電壓值計算經(jīng)SVPWM得到控制信號,輸出所述控制信號至驅動單元。采用FIR濾波器進行濾波處理,它可以保證在任意幅頻特性的同時具有嚴格的線性相頻特性,同時其單位抽樣響應是有限的,因而濾波器是穩(wěn)定的系統(tǒng)。矢量控制系統(tǒng)具體操作框圖如圖2所示。
圖2矢量控制系統(tǒng)操作框圖
考慮到現(xiàn)代汽車的智能化趨勢,本設計也加入了NIOSII軟核處理器和控制器局域網(wǎng)總線(Controller Area Network,CAN)IP核,利用CAN總線接收來自駕駛員的控制信號,然后交由CPU傳遞給邏輯控制部分執(zhí)行,從而實現(xiàn)了整個系統(tǒng)的設計。CAN總線模塊用于接收用戶發(fā)送的調節(jié)信號,NIOS軟核處理器用于將所述用戶發(fā)送的調節(jié)信號傳遞至矢量控制模塊,矢量控制模塊用于將用戶發(fā)送的調節(jié)信號與計算得到的轉速值比較后輸入至外環(huán)PI調節(jié)器,該值將與系統(tǒng)設定值一道,分別和電流值經(jīng)濾波、Clark-Park變換后得到的參考值比較,然后輸入至內環(huán)PI調節(jié)器,采用Park逆變換得到電壓值。圖3是CAN總線和NIOS II軟核處理器的邏輯功能圖。
圖3 CAN總線和NIOS II軟核處理器的邏輯功能圖
矢量控制算法的核心就是將交流電機經(jīng)模型轉換模擬為直流電機從而進行控制,為了實現(xiàn)這一目標,需要將交流電機的物理參數(shù)轉化為直流電機的參數(shù)[7]。從物理意義上講,需要將三相靜止軸ABC坐標系通過坐標轉換成為兩相同步旋轉軸MT坐標系。Clark變換和Park變換即為實現(xiàn)這一目標的轉換。Clark變換就是將定子電流投影到MT坐標系,分解為分別控制勵磁電流分量和轉矩電流分量的im和it,而Park變換則是實現(xiàn)旋轉的直流系統(tǒng)向兩相靜止直角坐標系的轉換。以下是由三相靜止軸ABC坐標系到兩相同步旋轉軸MT坐標系的變換公式如下:
式中:N2和N3是兩種系統(tǒng)每相繞組的有效匝數(shù);θ為轉子磁鏈位置。
在實際進行Clarke變換和Park變換時,本文采用CORDIC算法,其核心思想是將旋轉角度分為若干極小角度,使用迭代的方法進行運算從而逼近所求角度[8]。設矢量(Xi,Yi)旋轉角度θ變?yōu)槭噶浚╔j,Yj),用矩陣形式表示為:
這里使用迭代的思想,將一個旋轉角度分解為n個極小的角度,相鄰極小角度之間的關系可以表達為:
經(jīng)過對θ的進一步限制,加入尚未旋轉角度Z0,并考慮多次迭代的極限逼近情形,最終迭代式變成:
計算坐標變換時,輸入
進行多次迭代后得到最終輸出:
其中:k是cosθn經(jīng)過無數(shù)次迭代的無限逼近值。
與常用的計算三角函數(shù)、反三角函數(shù)以及雙曲函數(shù)及其他超越函數(shù)的ROM查表法、多項式近似法等相比,CORDIC算法具有不需要硬件乘法器、可使用流水線、可循環(huán)迭代的突出優(yōu)勢。另外,它的計算方式符合硬件算法的模塊化特點,從而便于在FPGA中實現(xiàn)[9]。
三相異步交流電機同驅動單元、檢測單元、控制單元及用戶界面的關系如圖4所示。檢測單元用于采集電機的電流、電壓和轉速信號;FPGA控制單元用于根據(jù)電機的電流、電壓和轉速信號,結合用戶發(fā)送的調節(jié)信號,采用矢量控制算法得到控制信號,輸出控制信號至驅動單元;驅動單元用于根據(jù)所述控制信號,驅動電機工作,其中,電機分別與檢測單元、驅動單元相連,F(xiàn)PGA控制單元分別與檢測單元、驅動單元相連。
圖4 電機與控制單元、驅動單元、檢測單元及用戶的關系
在Matlab環(huán)境中建立了仿真系統(tǒng)以驗證這些控制算法。仿真模型的主電路圖如圖5所示。
圖5電機驅動器矢量控制的Simulink仿真模型主電路圖
然后根據(jù)所用矢量控制算法編寫了坐標轉換、SVPWM、PI控制、速度計算、系統(tǒng)過壓、過流保護的Verilog代碼,并且進行編譯調試,驗證了子程序的正確性。最后將驅動程序下載到設計的FPGA上,連接示波器進行觀察。圖6是觀察到的結果??梢?,在功率模塊輸入電壓穩(wěn)定的情況下,定子電流基本達到接近正弦波,同時轉子速度和磁矩都保持穩(wěn)定不變,基本達到控制系統(tǒng)的要求。
圖6示波器顯示結果圖
由此可以看出,該設計滿足了電動汽車系統(tǒng)的性能要求。
本文設計了一種基于FPGA的電動汽車電動機驅動系統(tǒng),該驅動器使用IGBT作為功率單元,利用矢量控制作為控制算法,在FPGA上實現(xiàn)了邏輯控制功能,與傳統(tǒng)DSP系統(tǒng)控制相比,能夠進行復雜的解耦運算,精確測量轉子的位置,精度更高,速度快,可靠性高,為后續(xù)豐富和完善驅動器功能奠定了基礎。仿真結果顯示,該設計能夠使系統(tǒng)平滑啟動,快速響應給定的指令,具有較強的抗干擾能力,可以有效地實現(xiàn)電動汽車電機驅動的控制。
[1]Yin-hai Z,Zhi-kui C.An asynchronousmotor vector control system considering the variation of rotor resistance[J].Networking and Distributed Computing(ICNDC),2012 Third International Conference on,2012:140-143.
[2]萬曉鳳,朱俊裕,肖 京.純電動汽車三相異步電動機矢量控制[J].微特電機,2012,(1):61-63.
[3]趙爭鳴,袁立強,孟朔,等.通用變頻器矢量控制與直接轉矩控制特性比較[J].電工技術學報,2004,19(4):81-84.
[4]Shen J,LuoW,YangC,etal.Design three-phaseasynchronous motor's vector control system based on DSP[J].Internet Computing and Information Services,2011 International Conference on,2010:230233.
[5]Guo-qing Y,Ying Z,Yong-wei L.Research of DSP-based SVPWM vector control system of asynchronousmotor[C].//Computer Science and Electronics Engineering(ICCSEE),2012 International Conference on.IEEE,2012:151155.
[6]Zhi-ou X,Guo-jun T.Study on vector control system of asynchronousmotorbased on simplified three-level SVPWM[J].Electric Information and Control Engineering(ICEICE),2011 International Conference on,2011:17501754.
[7]Jian-xin Z,Ting X,Jian-hui L,et al.Research and analysis ofmodified SVPWM control in asynchronousmotor[J].Modern Manufacturing Engineering,2009,29(7):111-114.
[8]吳 恒,王淦泉,陳桂林.CORDIC算法在基于FPGA的PMSM控制器中的應用[J].電機與控制學報,2009,13:113-118.
[9]楊 運,唐曉春,鄧世剛.CORDIC算法在基于FPGA的旋變解碼和PMSM矢量控制中的應用[J].微電機,2013,46(7):68-73.
[10]Wang X,Yang Y,Liu W.Simulation of vector controlled adjustable speed system of induction motor based on simulink[J].Computer Science and Service System(CSSS),2011 International Conference on,2011,(8):2563-2566.
[11]吳 慰,黃 烜.三相交流異步電機控制系統(tǒng)仿真[J].計算技術與自動化,2011,(3):68-72.