李俊穎,楊志軍,鄺俊澎
(廣東工業(yè)大學(xué)機(jī)電工程學(xué)院,廣州511400)
永磁同步電機(jī)(PMSM)作為高性能執(zhí)行元件,廣泛應(yīng)用在的各種交流伺服系統(tǒng)中,包括工業(yè)機(jī)器人、數(shù)控機(jī)床、汽車與航空航天等[1-3]。傳統(tǒng)伺服控制系統(tǒng)的基于單片機(jī)或數(shù)字信號處理器(DSP),由于其速度慢的弱點(diǎn),難以滿足高性能伺服的需求?;贒SP/ARM+FPGA的架構(gòu)可以讓FPGA來管理數(shù)字接口和進(jìn)行底層的PWM調(diào)制,讓DSP或ARM可以專注于復(fù)雜算法的計(jì)算[4-5],然而這又增加了系統(tǒng)的復(fù)雜度,降低了系統(tǒng)可靠性。并且由于DSP或ARM設(shè)備串行執(zhí)行的特性,系統(tǒng)的實(shí)時性也難以保證。如今隨著FPGA技術(shù)的發(fā)展,單片F(xiàn)PGA的性能及資源已經(jīng)能夠同時滿足高性能數(shù)字接口以及伺服控制系統(tǒng)中的復(fù)雜運(yùn)算需求。并且FPGA并行處理、設(shè)計(jì)靈活、拓展性強(qiáng)等優(yōu)點(diǎn)也為高速高實(shí)時性的伺服控制系統(tǒng)的設(shè)計(jì)特供了便利。
為了研究和實(shí)現(xiàn)高性能伺服控制系統(tǒng),本文提出了一種基于FPGA的PMSM伺服控制系統(tǒng)方案,以單片F(xiàn)P?GA芯片為控制核心,對系統(tǒng)采用模塊化設(shè)計(jì)思想,以硬件描述語言實(shí)現(xiàn)伺服控制系統(tǒng)的復(fù)雜運(yùn)算以及各種數(shù)字接口的邏輯控制,簡化系統(tǒng)的硬件結(jié)構(gòu),提高系統(tǒng)的可靠性,還具備一定的靈活性和兼容性。
永磁同步電機(jī)是一個強(qiáng)耦合、多變量的復(fù)雜系統(tǒng),為了簡化分析,通常在d-q坐標(biāo)系下建立其數(shù)學(xué)模型,因?yàn)槠浼瓤梢杂脕矸治鲭姍C(jī)的穩(wěn)態(tài)特性,也可以用來分析其動態(tài)特性。理想永磁同步電機(jī)在d-q坐標(biāo)系的數(shù)學(xué)模型為[6]:
式中:Ud、Uq、Id、Iq分別為定子的d、q軸電壓和d、q軸電流;Ld、Lq分別為d、q軸電感;ωm為電機(jī)的機(jī)械轉(zhuǎn)速;Rs為定子電阻;P為電機(jī)極對數(shù);ψf為轉(zhuǎn)子永磁體產(chǎn)生的磁鏈;J為轉(zhuǎn)動慣量;B為粘滯系數(shù);TL為負(fù)載扭矩。
電磁轉(zhuǎn)矩方程為:
由式(1)可以看出id、iq與ωm是相互耦合的,由式(2)可知電機(jī)的轉(zhuǎn)矩又與id、iq相關(guān),要得到類似直流電機(jī)的控制性能,通常采用id=0的控制策略,因此式(2)可以簡化為:
可以看出,簡化后的電磁轉(zhuǎn)矩方程具有很好的解耦特性,可以視作直流電機(jī),通過控制iq來控制永磁同步電機(jī)的電磁轉(zhuǎn)矩。
如圖1虛線部分所示,永磁同步電機(jī)的矢量控制即通過坐標(biāo)變換將電機(jī)定子電流分解到(d-q)坐標(biāo)系中,分別對勵磁分量(id)和轉(zhuǎn)矩分量(iq)進(jìn)行閉環(huán)控制,再通過坐標(biāo)系的逆變換和空間矢量脈寬調(diào)制(SVPWM)將上述分量轉(zhuǎn)換成實(shí)際的電壓矢量,從而達(dá)到對永磁同步電機(jī)的解耦控制的目的。
圖1 矢量控制框圖Fig.1 FOC block diagram
交流伺服控制系統(tǒng)的結(jié)構(gòu)框圖如圖2所示,該伺服系統(tǒng)主要由FPGA控制板、功率模塊、位置檢測模塊、電流檢測電路和永磁同步電機(jī)組成。伺服控制和數(shù)字接口均在單片F(xiàn)PGA上實(shí)現(xiàn)。
圖2 交流伺服控制系統(tǒng)結(jié)構(gòu)Fig.2 AC servo control system structure
控制系統(tǒng)主要由通信模塊、閉環(huán)調(diào)節(jié)器、FOC模塊、模數(shù)轉(zhuǎn)換接口和編碼器接口組成。系統(tǒng)通過通信模塊接收PC上位機(jī)下發(fā)的指令,并且將系統(tǒng)的反饋信息上傳到上位機(jī),通過模數(shù)轉(zhuǎn)換接口和編碼器接口獲取系統(tǒng)的電流和位置轉(zhuǎn)速反饋,結(jié)合指令和電機(jī)的反饋再通過閉環(huán)調(diào)節(jié)器和FOC模塊對電機(jī)進(jìn)行精確的閉環(huán)控制。
系統(tǒng)同時兼容增量式編碼器和多摩川絕對式編碼器,以適應(yīng)不同的伺服系統(tǒng)。編碼器接口模塊提供當(dāng)前的絕對位置,轉(zhuǎn)子角度和轉(zhuǎn)速信息。
對于增量式編碼器,輸入包括相互正交的A、B兩路信號和索引信號Z。轉(zhuǎn)子的絕對位置和角度通過對A、B相的4倍頻計(jì)數(shù)得到,角度信息在每個Z信號上升沿清零。考慮到編碼器安裝時Z信號未必與轉(zhuǎn)子電角度零位對齊,通過對電機(jī)施加特定相電壓的方式,可以得到Z信號相對特定電角度的位置偏移信息,在計(jì)算轉(zhuǎn)子電角度時減去此偏移值。對脈沖計(jì)數(shù)值進(jìn)行處理可以得到轉(zhuǎn)子的轉(zhuǎn)速,通常的轉(zhuǎn)速測量方法通常包括M法、T法、M/T法,其中M/T法綜合了前者的優(yōu)點(diǎn),可在較寬的轉(zhuǎn)速范圍內(nèi)對轉(zhuǎn)速進(jìn)行精確的測量,因此本系統(tǒng)采用M/T法進(jìn)行速度的測量計(jì)算。
對于多摩川絕對式編碼器,系統(tǒng)在每一個同步信號到來時向編碼器發(fā)送讀數(shù)指令,返回的單圈值作為轉(zhuǎn)子的角度信息,再結(jié)合多圈值得到轉(zhuǎn)子的絕對位置信息。跟增量式編碼器一樣,也要考慮編碼器與轉(zhuǎn)子電角度零位的安裝偏移。
系統(tǒng)與上位機(jī)通過串口進(jìn)行通信,包括系統(tǒng)參數(shù)的在線修改,編碼器的選擇,系統(tǒng)指令的下發(fā)和系統(tǒng)狀態(tài)的實(shí)時監(jiān)測都通過通信模塊和上位機(jī)進(jìn)行。通信模塊設(shè)計(jì)框圖如圖3所示,rx_buf和tx_buf分別為接收和發(fā)送緩存區(qū),rx_ctrl和tx_ctrl分別對收發(fā)進(jìn)行控制和校驗(yàn)。
圖3 通信模塊Fig.3 Communication module block diagram
通信的數(shù)據(jù)協(xié)議如表1所示,每一數(shù)據(jù)幀包括1位起始位、8位數(shù)據(jù)位和1位結(jié)束位,將功能碼1與功能碼2相加后取低8位作為校驗(yàn)碼。
表1 數(shù)據(jù)幀結(jié)構(gòu)Table.1 Data frame structure
坐標(biāo)變換是永磁同步電機(jī)矢量控制的基礎(chǔ),系統(tǒng)對經(jīng)過坐標(biāo)變換的(d-q)坐標(biāo)系電流分量進(jìn)行控制,再通過坐標(biāo)的逆變換得到實(shí)際的電壓矢量,通常包括三次坐標(biāo)變換。CLARKE變換,即三相靜止坐標(biāo)系(A-B-C)到兩相靜止坐標(biāo)系(α-β)的變換,按照幅值不變原則進(jìn)行變換的表達(dá)式為:
因?yàn)殡姍C(jī)三相電流Ia、Ib、Ic之和為0,上式可化簡為:
PARK變換,即兩相靜止坐標(biāo)系(α-β)到兩相旋轉(zhuǎn)坐標(biāo)系(d-q)的變換,旋轉(zhuǎn)坐標(biāo)系的角度為θ,其表達(dá)式為:
以及逆PARK變換為:
其中PARK變換及其逆變換涉及到三角函數(shù)的計(jì)算,通常使用查找表法或數(shù)字旋轉(zhuǎn)坐標(biāo)機(jī)(CORDIC)算法,在資源允許的情況下,前者的速度更快。對于正弦函數(shù),0~π與π~2π的函數(shù)值符號相反數(shù)值相同,余弦函數(shù)則是與正弦函數(shù)相位相差π/2,因此只需制作正弦函數(shù)前半部分的查找表即可,其他函數(shù)值可通過地址偏移或符號位取反得到。
SVPWM調(diào)制的實(shí)現(xiàn)原理在很多文獻(xiàn)中都有描述[7-9]。主要是根據(jù)逆Park變換得到的電壓分量Uα、Uβ,輸出六路PWM信號控制三相橋電路合成出需要的給定電壓矢量。占空比更新周期為40 μs,與電流環(huán)伺服周期同步,降低系統(tǒng)復(fù)雜度。針對過調(diào)制的情況,設(shè)計(jì)約束模塊,對作用時間按比例縮小,限制電壓矢量的大小。同時考慮實(shí)際功率模塊并非理想器件,需要根據(jù)實(shí)際情況設(shè)置PWM死區(qū)時間。如圖4所示。
圖4 SVPWM調(diào)制模塊Fig.4 Block diagram of SVPWM modulation module
本系統(tǒng)包括位置閉環(huán)、速度閉環(huán)和電流閉環(huán)。閉環(huán)調(diào)節(jié)器中,數(shù)字PID調(diào)節(jié)器具有算法簡單易于實(shí)現(xiàn)、技術(shù)成熟、可靠性高、不依賴模型等優(yōu)點(diǎn),被廣泛應(yīng)用于控制領(lǐng)域。在伺服控制中,又以P-PI控制,即位置環(huán)采用比例(P)控制,速度環(huán)采用比例積分(PI)控制,應(yīng)用最為廣泛[10]。引入微分(D)分量,對于實(shí)際的離散控制系統(tǒng)來說,容易放大噪聲,增加擾動;而積分(I)分量目的在于減小穩(wěn)態(tài)誤差,位置到速度這一模型是絕對精確的,但速度到電流的環(huán)節(jié)會出現(xiàn)建模不準(zhǔn)確引入的穩(wěn)態(tài)誤差,因此只需要在速度到電流的環(huán)節(jié),即速度環(huán)加入積分項(xiàng)即可。
離散的PI表達(dá)式為:
除了對調(diào)節(jié)器的整體輸出u(k)進(jìn)行限幅外,對積分部分也進(jìn)行單獨(dú)的限幅,可以在積分器輸出達(dá)到飽和時及時停止積分部分的作用,從而可以實(shí)現(xiàn)快速去飽和,減小調(diào)節(jié)器的超調(diào)。
電流環(huán)同樣采用PI調(diào)節(jié)器。電流反饋通過電流采樣電路后,實(shí)際上系統(tǒng)直接得到的數(shù)字量I*fdb是電流真實(shí)值Ifdb的函數(shù):
式中:K為電流通過采樣電路和模數(shù)轉(zhuǎn)換電路而引入的系數(shù);offset為采樣電路的偏置電壓。
若再定義I*ref如下:
將式(9)~(10)代入式(8)可得:
此時,可以將KP/K、KI/K作為電流環(huán)的比例增益和積分增益,免去了轉(zhuǎn)化為實(shí)際電流值的復(fù)雜運(yùn)算。
實(shí)驗(yàn)使用了ALTERA公司的Cyclone IV E系列EP4CE22F17C8單片F(xiàn)PGA芯片,控制單臺使用增量式光電編碼器反饋的永磁同步電機(jī)。實(shí)驗(yàn)使用的永磁同步電機(jī)參數(shù)如表2所示。
表2 實(shí)驗(yàn)用電機(jī)參數(shù)Table.2 Motor parameters for experiment
圖5 所示為系統(tǒng)的位置響應(yīng)曲線,給定位置為10 000個脈沖,系統(tǒng)能夠在0.5 s內(nèi)穩(wěn)定在10 016脈沖處,沒有出現(xiàn)明顯超調(diào),穩(wěn)態(tài)誤差小于20個脈沖數(shù)。
圖5 位置響應(yīng)曲線Fig.5 Position response curve
圖6 所示為系統(tǒng)的速度階躍響應(yīng)曲線,電機(jī)轉(zhuǎn)速從0上升至指令值1 000 r/min的上升時間約為0.1 s,超調(diào)量10%左右,能較好地穩(wěn)定在指令速度附近,在±20 r/min的轉(zhuǎn)速范圍內(nèi)波動。圖7所示為系統(tǒng)在正弦速度指令下的響應(yīng),電機(jī)轉(zhuǎn)速能夠較好地跟隨指令。綜上,可見系統(tǒng)具有較好的穩(wěn)態(tài)性能和動態(tài)性能。
圖7 速度正弦響應(yīng)曲線Fig.7 Speed sinusoidal response curve
本文設(shè)計(jì)了一種基于FPGA的永磁同步電機(jī)伺服控制系統(tǒng),采用全硬件的方式實(shí)現(xiàn)了伺服控制,具有結(jié)構(gòu)簡單、可靠性高、拓展性強(qiáng)的特點(diǎn)。系統(tǒng)支持增量式和多摩川協(xié)議的編碼器,由于FPGA的靈活性和可重構(gòu)性還可繼續(xù)拓展更多編碼器接口,具有一定的泛用性。通過實(shí)驗(yàn)驗(yàn)證了系統(tǒng)具有較好的精度、穩(wěn)態(tài)性能和動態(tài)性能。系統(tǒng)電流環(huán)控制頻率達(dá)25 kHz,位置環(huán)和速度環(huán)達(dá)12.5 kHz,可提供更高的閉環(huán)帶寬,為實(shí)現(xiàn)更高精度、更好性能的伺服控制系統(tǒng)提供了可能。