于長松,劉曰濤,姜佩岑,鄒大林,祝保財
(山東理工大學機械工程學院,淄博 255049)
永磁同步電機(permanent magnet synchronous motor,PMSM)具有功率密度高、動態(tài)性能好及控制精度高等優(yōu)點,被廣泛應用于高性能工業(yè)控制器領域。目前,PMSM伺服控制系統(tǒng)普遍采用數(shù)字控制器(DSP)配以復雜的外圍電路來完成對電機的控制,因此硬件電路的靈活性較差[1]。PMSM伺服控制系統(tǒng)比較復雜,具有多變量、強耦合、非線性和變參數(shù)的特點,因此常采用一定的控制算法,以實現(xiàn)對PMSM伺服控制系統(tǒng)高頻響、高精度的控制性能。電機控制算法直接影響了電機的運行性能,電機能夠平穩(wěn)地運行,同時在遇到外界干擾時仍能保持較好的穩(wěn)定性都離不開一個好的控制算法。面對越來越復雜的控制算法,采用單一微型控制器已經(jīng)不能滿足高控制性能的需求,因此本文將采用現(xiàn)場可編輯邏輯門陣列(FPGA)對該問題進行解決。
與DSP相比,FPGA具有下列兩個優(yōu)點:①運行速度上有很大優(yōu)勢;②各種各樣的IP核發(fā)展日益成熟,采用IP核進行設計可以縮短開發(fā)周期,同時提高系統(tǒng)的穩(wěn)定性。因此,國內(nèi)外學者在關于FPGA對電機伺服控制系統(tǒng)上做了大量研究。周兆勇等[2]提出了基于FPGA的全數(shù)字化集成的電機速度伺服系統(tǒng),電機在低速和高速狀態(tài)下均有快速的動態(tài)響應。AGUIRRE等[3]設計了基于FPGA的離散PI控制器,并進行了實驗測試,穩(wěn)態(tài)誤差和系統(tǒng)響應均達到了設計要求。HANHILA等[4]設計了基于FPGA的差分PI控制器,改進了差分PI算法,實驗結(jié)果證明提高了精度和收斂速度。張華西等[5]針對大規(guī)模電機控制問題進行研究,文章設計的基于FPGA多通道的電機控制系統(tǒng)能夠?qū)崿F(xiàn)多路電機的并行、同步驅(qū)動,速度響應快、到位精度高,具有的良好的動態(tài)響應與穩(wěn)態(tài)特性。上述研究僅僅通過硬件語言(hardware description language,HDL)來實現(xiàn),存在開發(fā)效率低的問題。本文通過高層次綜合技術(shù)(high-level synthesis,HLS)將用C/C++編寫的代碼綜合成HDL代碼,并將其打包成IP核,在FPGA芯片上實現(xiàn)。
傳統(tǒng)的PMSM控制策略大都選用PI控制,由于逆變器電壓和電機電流具有非線性飽和特性,引入積分環(huán)節(jié)會產(chǎn)生Windup現(xiàn)象。該現(xiàn)象會引起超調(diào)量增大,穩(wěn)定時間變長,系統(tǒng)動態(tài)性能變差和穩(wěn)定性變差等問題。為了解決該問題,可以設計控制器抑制飽和現(xiàn)象發(fā)生,或者系統(tǒng)出現(xiàn)飽和時盡快退出飽和區(qū)[6]。因此本文電流環(huán)采用PI控制,速度控制器采用Anti-Windup策略的新型PI控制器。
對永磁同步電機作有假設:①轉(zhuǎn)子永磁磁場在氣隙空間成正弦分布,定子電樞繞組中的感應電動勢也為正弦分布;②忽略定子鐵心飽和,轉(zhuǎn)子上無阻尼繞組,電感參數(shù)不變;③不計鐵心渦流和磁滯損耗。在dq同步旋轉(zhuǎn)坐標系下建立永磁同步電機數(shù)學模型,其電壓方程為:
(1)
式中:id、iq分別為d、q軸的定子電流,ud、uq分別為d、q軸的定子電壓,Ld、Lq分別為d、q軸的電感,R為定子電阻,ψf為永磁體磁鏈,ωe為電角度。
電磁轉(zhuǎn)矩方程為:
(2)
式中:Te為電磁轉(zhuǎn)矩,pn為電機的極對數(shù),對于表貼式三相PMSM電感滿足Ld=Lq=L。采用id=0控制策略,所以電磁轉(zhuǎn)矩方程可簡化為:
(3)
PMSM電機機械運動方程為:
(4)
式中:J為轉(zhuǎn)動慣量,ω為機械角速度,Tl為負載轉(zhuǎn)矩,B為摩擦系數(shù)。PMSM控制框圖如圖1所示。
圖1 PMSM控制框圖
PID控制是一種基于誤差的反饋控制,具有開關頻率固定、算法簡單、工程容易實現(xiàn)等特點。其中,比例環(huán)節(jié)在系統(tǒng)產(chǎn)生偏差時,可以迅速減小誤差,但當系統(tǒng)穩(wěn)定時,不會消除系統(tǒng)中存在的穩(wěn)態(tài)誤差;積分環(huán)節(jié)可以消除系統(tǒng)穩(wěn)定時出現(xiàn)的穩(wěn)態(tài)誤差,如果積分環(huán)節(jié)太強,會出現(xiàn)超調(diào)量增加、穩(wěn)定性下降等問題;微分環(huán)節(jié)可以減小超調(diào)量,提高系統(tǒng)的響應速度,但是引入微分環(huán)節(jié)會增加噪聲,使系統(tǒng)穩(wěn)定性降低[7]。為了提高系統(tǒng)響應速度和穩(wěn)定性,電流環(huán)控制器只用到了比例環(huán)節(jié)和積分環(huán)節(jié)。
PI控制算法的公式為:
(5)
式中:Kp為比例系數(shù),Ki為積分系數(shù),u(t)為輸出量,e(t)為偏差量。
以上公式是PI算法的連續(xù)計算公式,為了便于在FPGA中實現(xiàn),需要將其離散化。離散式PI控制算法為:
(6)
d軸和q軸電流環(huán)PI控制器采用相同的比例系數(shù)Kp和積分系數(shù)Ki,上述公式在HLS中實現(xiàn)并封裝成IP核,定時讀取經(jīng)過Park變換輸出的電流,并進行運算,最后輸入到Park逆變換模塊中。
速度環(huán)采用具有Anti-Windup策略的新型PI控制器,如圖2所示。
圖2 Anti-Windup結(jié)構(gòu)
(7)
由式(7)可以得出,經(jīng)坐標變換可通過控制電流iq來達到控制電機的目的。
圖2的電流限幅環(huán)節(jié)可表示為:
(8)
式中:im為電流幅值。
圖2中,當PI調(diào)節(jié)器輸出為正限幅值時,反饋值為正,此時施加到積分項的修正量為負,可減小積分正向累計導致的飽和作用;當PI調(diào)節(jié)器輸出值為負限幅值時,反饋量為負,此時施加到積分項的修正量為正,可增強積分作用,使控制器盡快退出負飽和。PI控制器的輸出iq為:
(9)
(10)
式(10)為典型PI調(diào)節(jié)器傳遞函數(shù)。當式(9)滿足Tc=Ti時,有:
(11)
式(11)表明可參考積分時間常數(shù)Ti來設計反饋回路時間常數(shù)Tc,經(jīng)過比較計算,本文最終選擇Tc=0.9Ti。
基于FPGA的PMSM控制系統(tǒng)模塊如圖3所示,主要由時鐘分頻模塊、AD采集模塊、編碼器信號處理模塊、坐標轉(zhuǎn)換模塊、PI控制器模塊以及空間電壓矢量脈寬調(diào)制模塊(SVPWM)等組成。FPGA采用Xilinx的XC7S25CSGA324C-1芯片。該芯片有29 200個FIFO,150個I/O引腳,14 600個LUT,可實現(xiàn)復雜算法的加速工作以及大數(shù)據(jù)處理工作。
圖3 基于FPGA的PMSM控制模塊框圖
如圖3所示,FPGA系統(tǒng)時鐘為100 MHz,系統(tǒng)時鐘經(jīng)過分頻后產(chǎn)生50 MHz、1 MHz和40 kHz,其中50 MHz時鐘作為編碼器四倍頻計數(shù)時鐘;1 MHz時鐘作為PWM死區(qū)發(fā)生器時鐘;40 kHz時鐘作為坐標變換模塊和控制器時鐘。
電流采集模塊通常使用A/D轉(zhuǎn)換器將模擬信號轉(zhuǎn)換為數(shù)字信號,并通過外部電路傳輸?shù)紽PGA中。但是,這種方法需要使用外掛器件,增加了數(shù)據(jù)受到干擾的風險。一般由高準確度的A/D轉(zhuǎn)換器對被測模擬信號進行數(shù)字化采樣,前置電路的模擬輸入信號調(diào)理到A/D轉(zhuǎn)換器的有效輸入范圍,經(jīng)過算法處理后可得到被測信號的各種參數(shù)信息[8]。本文采用AD8418芯片對電機相電流進行采集,并且采用XADC將模擬量轉(zhuǎn)為數(shù)字量。
XADC(xilinx analog-to-digital converter)為FPGA芯片中內(nèi)置的AD轉(zhuǎn)化模塊,相比較傳統(tǒng)的FPGA加外部ADC,采用XADC增強了抗干擾性,并簡化了電路。XADC提供了一個雙12 bits、采樣率為1 MSPS的模擬電壓采集接口,輸入類型支持單端信號和差分信號,支持內(nèi)部觸發(fā)和外部觸發(fā)等多種工作模式,最多可采集17個外部模擬輸入[9]。進行Clarke變換時,只需A、B兩相電流值,所以XADC只需兩個接口進行采集。
調(diào)用XADC模塊只需要在FPGA工程中例化IP核,并進行相關功能的配置。本設計中采用動態(tài)重新配置端口(DRP)與外界進行數(shù)據(jù)交換,經(jīng)XADC轉(zhuǎn)換后,將數(shù)據(jù)存儲到狀態(tài)存儲器中,每一個狀態(tài)存儲器都有唯一的通道地址,因此XADC采集后,數(shù)據(jù)會存儲在對應的地址中,如圖4所示。
圖4 XADC寄存器地址
配置完成后,用Verilog代碼對XADC采集到的數(shù)據(jù)進行讀取,采用狀態(tài)機的方式讀取地址空間中的數(shù)據(jù)。
本次工程的濾波器模塊、編碼器模塊、坐標變換模塊、控制器模塊和SVPWM模塊用HLS開發(fā),HLS工具采用C/C++語言對算法進行建模,然后轉(zhuǎn)換成硬件描述語言(HDL),大大提高了FPGA的開發(fā)效率。圖5為HLS開發(fā)流程簡圖。
圖5 HLS開發(fā)流程簡圖
永磁同步電機的功率器件開關頻率在幾千赫茲至上百千赫茲,因此信號干擾主要來自高頻開關頻率和它對應產(chǎn)生的諧波分量[10]。所以濾波器模塊采用一階IIR低通數(shù)字濾波器,用軟件實現(xiàn)硬件RC濾波器功能來去除高次諧波。
一階IIR低通數(shù)字濾波器公式如下:
Ij=Ij-1+K(ij-Ij-1)
(12)
式中:Ij為輸出結(jié)果,ij為輸入數(shù)值,K為截止頻率參數(shù)。在HLS中編寫C++代碼實現(xiàn)算法并封裝成IP核,例化到FPGA工程中。
編碼器是一種用于電機控制的伺服反饋設備,它可以及時的反饋電機的位置和速度[11]。編碼器模塊包括數(shù)據(jù)通信、脈沖濾波和四倍頻計數(shù)。選擇SPI通信協(xié)議完成FPGA與編碼器的數(shù)據(jù)傳輸;編碼器在工作過程中,A、B相信號會產(chǎn)生大量毛刺,影響電機控制的精度,因此設計了基于FPGA的脈沖濾波信號模塊來去除A、B相信號的毛刺;經(jīng)過數(shù)據(jù)通信模塊和脈沖濾波模塊就可以在此基礎上對A、B相信號進行四倍頻計數(shù),以此來獲取電機轉(zhuǎn)過的實際空間角度。
以HLS實現(xiàn)Park變換算法為例,輸入為靜止坐標系下電流iα和iβ,以及轉(zhuǎn)子當前的電角度θ,輸出為同步旋轉(zhuǎn)坐標系下電流id和iq。HLS優(yōu)化的目的是在資源和速度中取最優(yōu)解,即在合理的消耗資源下取得最優(yōu)的性能。經(jīng)過HLS優(yōu)化生成的Park變換IP核綜合性能如圖6所示。
圖6 Park變換IP核
從圖6可以看出,在100 MHz時鐘資源下,Park變換時間延遲為4個時鐘周期,消耗的資源很少。
在FPGA工程中完成了對永磁同步電機電流環(huán)和速度環(huán)的建模并下載到FPGA芯片上,工程需要的資源如表1所示。
表1 需要的資源
消耗的總功率為0.286 W,如圖7所示。
圖7 工程功耗分析
為了驗證本文提出的控制策略的合理性和優(yōu)越性,對實驗平臺進行搭建,如圖8所示,并采用FPGA芯片控制電機。
1.示波器 2.上位機 3.FPGA芯片 4.AD8418芯片 5.Stewart并聯(lián)機構(gòu)驅(qū)動腿(內(nèi)含電機)
實驗中用到的PMSM參數(shù)如表2所示。
表2 PMSM參數(shù)
為了驗證系統(tǒng)在負載突變情況下的響應速度和穩(wěn)定性,設置電機的初始轉(zhuǎn)速為1000 r/min,初始負載為0,在0.1 s處突加12 N·M的負載。比較速度環(huán)控制器采用傳統(tǒng)PI控制與Anti-Windup策略控制的控制性能。
圖9為PMSM在兩種控制方式下的響應曲線。圖10為PMSM在兩種控制方式下的啟動轉(zhuǎn)速對比曲線。圖11為在負載處轉(zhuǎn)速對比曲線。
圖9 系統(tǒng)響應曲線
圖11 負載處轉(zhuǎn)速對比曲線
實驗結(jié)果顯示,采用Anti-Windup策略的PI控制器超調(diào)量為4.3%,傳統(tǒng)PI控制器超調(diào)量為10.8%,可見采用Anti-Windup策略可以使超調(diào)量明顯減小;在PMSM系統(tǒng)突增負載時,傳統(tǒng)PI控制器的轉(zhuǎn)速波動為51 r/min,到達穩(wěn)態(tài)時間為0.018 s,相比于傳統(tǒng)PI控制器,具有Anti-Windup的控制器轉(zhuǎn)速波動小,為14 r/min,并且只需經(jīng)過0.01 s就能迅速恢復到給定轉(zhuǎn)速值。
由圖9~圖11可知,在負載突增情況下,相比于傳統(tǒng)PI控制,采用Anti-Windup策略的速度控制器具有良好的控制效果,可以大幅減小超調(diào)量,縮短調(diào)節(jié)時間。
圖12為負載突增情況下PMSM相電流在兩種控制方式下的變化曲線。圖13為PMSM在兩種控制方式下的電磁轉(zhuǎn)矩變化曲線。
(a) PI控制 (b) Anti-Windup控制
(a) PI控制 (b) Anti-Windup控制
結(jié)果顯示,在突加負載處,相比于傳統(tǒng)PI控制器,采用Anti-Windup策略的控制器電流響應波動更小,證明有更好的抗干擾能力;采用Anti-Windup策略的控制器轉(zhuǎn)矩波動小,響應快。
綜上所述,通過實驗可以驗證,本文設計的采用Anti-Windup策略作為速度環(huán)控制器的PMSM調(diào)速系統(tǒng),能大幅減小超調(diào)量,負載處調(diào)節(jié)時間短,有明顯的抗負載轉(zhuǎn)矩擾動的能力,實驗結(jié)果驗證了本文設計的控制策略的合理性和優(yōu)越性。
本文設計了基于FPGA的PMSM調(diào)速系統(tǒng),其中速度環(huán)控制器采用Anti-Windup策略的新型PI控制器,該控制器可以解決由于電機器件具有非線性飽和特性產(chǎn)生的控制器積分飽和問題。采用HLS完成了對濾波器模塊、編碼器模塊、坐標變換模塊、控制器模塊和SVPWM模塊的建模,封裝成IP核導入到工程中,并下載到FPGA芯片上。實驗結(jié)果證明:PI控制器的轉(zhuǎn)速超調(diào)量為10.8%,在負載處轉(zhuǎn)速誤差為51 r/min,調(diào)節(jié)時間為0.018 s,相電流和電磁轉(zhuǎn)矩有明顯的波動;采用Anti-Windup策略的PI控制器轉(zhuǎn)速超調(diào)量為4.3%,在負載處轉(zhuǎn)速誤差為14 r/min,調(diào)節(jié)時間為0.01 s,相電流和電磁轉(zhuǎn)矩波動大幅減小。因此,基于FPGA的采用Anti-Windup策略的速度PI控制器,具有更高的抗干擾和動態(tài)響應能力,滿足永磁同步電機伺服控制系統(tǒng)的應用需求。