王鴻雪,鄭光磊,楊 平
(中國中車大連電力牽引研發(fā)中心有限公司,大連 116000)
永磁同步牽引電機具有轉(zhuǎn)速平穩(wěn)、過載能力強、功率因數(shù)和效率高、體積小、質(zhì)量輕、維修少等特點[1-4],“節(jié)能、環(huán)保、經(jīng)濟”的永磁同步牽引系統(tǒng)已經(jīng)成為下一代軌道交通牽引系統(tǒng)的發(fā)展方向[5-6]。在使用了永磁同步電機的地鐵牽引系統(tǒng)中,為了實現(xiàn)牽引力和車速的閉環(huán)控制,需要詳細測定轉(zhuǎn)子位置[7]。現(xiàn)階段地鐵用永磁同步電機控制方案多使用專用的解碼芯片。當牽引車輛采用車控方式時,每個牽引逆變器控制4臺電機[8],系統(tǒng)龐大,成本壓力明顯。在本文的方案中,F(xiàn)PGA可在同一時刻進行多任務(wù)操作,當完成數(shù)據(jù)整合后,匯總輸出給TMS320F28335。通過AD7606的8通道16位高精度A/D轉(zhuǎn)換采樣處理,同時完成針對4組旋轉(zhuǎn)變壓器的解碼,從而實現(xiàn)4個永磁同步電機的協(xié)同控制。
旋轉(zhuǎn)變壓器可以隨著旋轉(zhuǎn)角度的不同,周期性輸出不同的電壓值。如圖1所示,旋轉(zhuǎn)變壓器由勵磁繞組、正弦繞組以及余弦繞組三部分組成。當前者注入正弦勵磁電壓時,后兩者可以感應(yīng)出輸出電壓[9]:
(1)
式中:θ為轉(zhuǎn)子旋轉(zhuǎn)經(jīng)過的角度;E0sin(ωt)為旋轉(zhuǎn)過程中,轉(zhuǎn)子感應(yīng)的正弦電壓幅值。根據(jù)θ和E0·sin(ωt)的相對位置,就可以算出正、余弦繞組的輸出電壓幅值。
圖1 旋轉(zhuǎn)變壓器解碼示意圖
使用AD7606對正弦繞組和余弦繞組的輸出電壓進行采樣可以獲得Usin和Ucos,將兩者相除可得:
Usin/Ucos=tanθ
(2)
θ=arctan(Usin/Ucos)
(3)
本文利用坐標旋轉(zhuǎn)數(shù)字計算(以下簡稱CORDIC)優(yōu)化算法,計算[0,2π]范圍內(nèi)的反正切值。選定一組固定的角度后,根據(jù)實際的需求,不斷增加或減小相應(yīng)的角度,最終獲得需要的角度,這就是CORDIC算法的基本思想。CORDIC算法的基本公式在很多文獻中有詳細推導(dǎo),本文簡要說明。
2.1傳統(tǒng)的CORDIC算法
令矢量(xi,yi)=(rcosα,rsinα),旋轉(zhuǎn)角度θ后,得到新的矢量(xj,yj),則:
(4)
為達到一個特定的角度,可以用一個迭代過程。將θ分解成若干個微旋轉(zhuǎn)角度,第n次旋轉(zhuǎn)角度為θn,則有[10]:
MTMA課程創(chuàng)始人Tschekorsky夫人曾多次試驗引導(dǎo)學(xué)生們先閉眼放松,在身體達到最放松的狀態(tài)下,睜眼看譜、心中記譜,憑著樂感對指法、節(jié)奏、旋律進行想象與練習(xí)。最終結(jié)果是即使情況最糟的學(xué)生也能夠接近原速流暢地將曲子完整演奏下來。
(5)
分解出tanθn=±2-n之后,可以減少FPGA的資源浪費。在θ∈[0,π/4]中,都可以通過一系列的一次旋轉(zhuǎn)角度疊加而成。從arctan(2°)直到arctan(2-n)共計旋轉(zhuǎn)n+1次。故θ可以被表示為一系列微角度的和,則有:
(6)
式中:dn為微角度的旋轉(zhuǎn)方向,順時針旋轉(zhuǎn)取1,逆時針旋轉(zhuǎn)取-1。
(7)
式中:K為增益因子;N為迭代次數(shù)。當?shù)螖?shù)為N時,則有:
CORDIC算法有旋轉(zhuǎn)模式和矢量模式兩種[11-12]。本文使用矢量模式算法,迭代方程:
(9)
式中:zn為角度累加結(jié)果。假設(shè)初始條件為x0=a,y0=b,z0=0,經(jīng)過n次迭代后,矢量模式的表達式:
(10)
其迭代過程為流水線運算,示意圖如圖2所示。
圖2 傳統(tǒng)CORDIC算法流水線結(jié)構(gòu)示意圖
傳統(tǒng)的CORDIC算法只能覆蓋范圍(-99.88°,+99.88°),而轉(zhuǎn)子角度需要覆蓋360°的范圍。反正切函數(shù)為增函數(shù),且[0,π/4]對應(yīng)的反正切值為[0,1]。將余弦繞組電壓Ucos采樣值和正弦繞組電壓采樣值Usin對應(yīng)的真實矢量(x,y),按照真實矢量數(shù)值自身特點在范圍[0,2π]內(nèi)分為8個區(qū)域,如圖3所示。
圖3 360°范圍內(nèi)Ⅰ~Ⅷ區(qū)域數(shù)據(jù)特點示意圖
真實矢量分類過程的流程圖,如圖4所示。
圖4 正、余弦繞組電壓值采樣結(jié)果分類軟件流程圖
8個區(qū)域內(nèi)的真實矢量按照一定的矢量轉(zhuǎn)換關(guān)系轉(zhuǎn)換到[0,π/4]范圍內(nèi),形成等效矢量(x′,y′)。同時,為了增加精度,可將等效矢量的數(shù)據(jù)位數(shù)由16位增加到20位。接著,可以按照式(9)進行CORDIC算法流水線運算。通過n次迭代,可以得到角度累加結(jié)果zn。此角度累加結(jié)果為等效矢量(x′,y′)在[0,π/4]范圍內(nèi)的等效旋轉(zhuǎn)角度θ′=arctan(y′/x′)。最后通過8個區(qū)域的自身角度特點,得到真實的旋轉(zhuǎn)角度θ。8個區(qū)域內(nèi),真實矢量與等效矢量、真實旋轉(zhuǎn)角度與等效旋轉(zhuǎn)角度對照情況,如表1所示。
表1 各區(qū)域內(nèi),真實矢量與等效矢量、
arctan(2-n)收斂于0,且arctan(2-15)的大小近似為0。經(jīng)歷15次迭代后,角度累加結(jié)果的z16大小有以下關(guān)系:
z16≈θ=arctan(y′/x′)
(11)
以上算法運行過程中只涉及移位寄存器、比較器、RAM、加法器,這些都可以通過VHDL語言進行表達。當已知旋轉(zhuǎn)變壓器輸出的正弦繞組和余弦繞組上電壓信號,就可以通過FPGA計算出永磁同步電機轉(zhuǎn)子的位置信息。
基于AD7606的四永磁同步電機旋轉(zhuǎn)變壓器解碼系統(tǒng),主要由4個部分組成:以AD7606為主的A/D轉(zhuǎn)換模塊;FPGA實現(xiàn)AD7606芯片采樣控制,以及采樣結(jié)果的數(shù)據(jù)處理;FPGA產(chǎn)生旋轉(zhuǎn)變壓器激勵信號;FPGA與DSP的數(shù)據(jù)交互。依靠FPGA的并行快速處理能力,以及足夠多的引腳資源,減小DSP的額外負擔(dān),使DSP更加專注于核心復(fù)雜的電機控制算法實現(xiàn)。
基于AD7606的四永磁同步電機旋轉(zhuǎn)變壓器解碼系統(tǒng)的4個部分,都可以用VHDL語言進行描述。通過反復(fù)調(diào)用例化程序減少重復(fù)代碼書寫,將應(yīng)用在一個電機上的解碼算法,快速準確地應(yīng)用到4個電機上。圖5為4個永磁電機旋轉(zhuǎn)變壓器解碼同步控制系統(tǒng)框圖。首先,使用FPGA產(chǎn)生一定頻率的方波信號,經(jīng)過處理后,注入勵磁繞組,形成正弦勵磁信號;然后操縱擁有8通道高速同步采樣能力的AD7606,將4個旋轉(zhuǎn)變壓器輸出的Usin A,Ucos A,Usin B,Ucos B,Usin C,Ucos C,Usin D,Ucos D電壓信號完成A/D轉(zhuǎn)換。FPGA使用A/D轉(zhuǎn)換結(jié)果分別進行解碼,可以得到牽引電機1、2、3、4的轉(zhuǎn)子位置信息。在FPGA內(nèi)部創(chuàng)建一個RAM,存放每個轉(zhuǎn)子的位置信息。通過數(shù)據(jù)總線、地址總線實現(xiàn)FPGA和DSP之間的通信。
圖5 基于AD7606的四永磁同步電機旋轉(zhuǎn)變壓器解碼系統(tǒng)
為驗證基于AD7606的四永磁電機旋轉(zhuǎn)變壓器解碼系統(tǒng)可以在短時間內(nèi)以較高精度,同時完成對最多4臺旋轉(zhuǎn)變壓器的解碼操作,本文設(shè)定程序的運行周期為10 ns,使用專業(yè)的FPGA仿真軟件ModelSim對本文的算法進行仿真。圖6為FPGA控制AD7606進行4個旋轉(zhuǎn)變壓器的模擬量輸出采樣,采樣速率為125 kHz。
圖6 FPGA控制AD7606進行4個旋轉(zhuǎn)變壓器的模擬量采樣
圖7 全角度解碼結(jié)果
本文算法在30°,60°,120°,150°,210°,240°,300°,330°條件下,得到的系統(tǒng)解碼仿真數(shù)值與理論數(shù)值的比較,如表2所示。
表2 各角度解碼系統(tǒng)仿真數(shù)值與理論數(shù)值的比較
由上述數(shù)據(jù)可知,本文的解碼系統(tǒng)可以同時對4個永磁同步電機旋轉(zhuǎn)變壓器的模擬量輸出進行采樣,采樣頻率為125 kHz。得到旋轉(zhuǎn)變壓器的模擬量輸出后,可以在240 ns時間內(nèi)完成解碼,解碼精度可以控制在0.000 1°范圍內(nèi)。
本文研究并建立一種基于AD7606的四永磁電機旋轉(zhuǎn)變壓器解碼系統(tǒng)。該算法的主要特點是只涉及移位寄存器、比較器、RAM、加法器等硬件電路,可使用FPGA完美構(gòu)建,AD7606具有8通道高速高精度同步采樣模數(shù)轉(zhuǎn)換能力。仿真結(jié)果表明,當FPGA的時鐘周期為10 ns時,本文的解碼系統(tǒng)可以在240 ns內(nèi)同時完成4個永磁同步電機的旋轉(zhuǎn)變壓器的解碼工作,精度可以控制在0.000 1°范圍內(nèi)。此系統(tǒng)尤其適用于地鐵牽引系統(tǒng)中的車控方式,有一定的實用價值。