吳小鋒
(江西省智成測控技術(shù)研究所有限責(zé)任公司,江西南昌 330029)
?
基于磁旋轉(zhuǎn)編碼器的角度傳感器動態(tài)誤差補(bǔ)償方法
吳小鋒
(江西省智成測控技術(shù)研究所有限責(zé)任公司,江西南昌 330029)
設(shè)計了一種基于磁旋轉(zhuǎn)編碼器的角度傳感器,分析了該角度傳感器產(chǎn)生動態(tài)誤差的原因,提出了可減小動態(tài)誤差方法。該方法能有效地補(bǔ)償動態(tài)誤差,使角度傳感器在轉(zhuǎn)速高、轉(zhuǎn)速變化快的動態(tài)測量中測量誤差小于0.1°。
磁旋轉(zhuǎn)編碼器;角度傳感器;動態(tài)誤差;補(bǔ)償
磁旋轉(zhuǎn)編碼器是一種數(shù)字式傳感器,其重要功能是將機(jī)械旋轉(zhuǎn)運動中轉(zhuǎn)軸的位置轉(zhuǎn)換成數(shù)字脈沖信號[1],可實現(xiàn)轉(zhuǎn)軸旋轉(zhuǎn)角度的測量。和光電旋轉(zhuǎn)編碼器相比,磁旋轉(zhuǎn)編碼器具有體積小、成本低、制造技術(shù)簡單,而且不受油污、水汽等外界污染的影響、具備優(yōu)異的抗沖擊振動的特點,因此近年來在工業(yè)生產(chǎn)尤其是在自動化控制方面其應(yīng)用不斷增加[2]。
隨著集成電路制造工藝的不斷提高,磁旋轉(zhuǎn)編碼器得以將磁敏感元件、信號調(diào)理、ADC和DSP集成在同一塊硅片上,DSP通過定時采樣磁敏感元件的信號,經(jīng)計算后定時更新編碼值。基于磁旋轉(zhuǎn)編碼器的角度傳感器中通常利用一個微處理器通過磁旋轉(zhuǎn)編碼器的數(shù)字接口定時采樣編碼值,再進(jìn)行相應(yīng)的變換和輸出。由于微處理器與編碼器之間的采樣不同步,在轉(zhuǎn)軸轉(zhuǎn)動情況下微處理器采樣的編碼值與轉(zhuǎn)軸實際位置編碼之間存在動態(tài)誤差[3],以至于在轉(zhuǎn)速高而且快速變化的應(yīng)用中,角度傳感器無法滿足測量的精度要求,為此本文提出一種動態(tài)誤差的補(bǔ)償方法,該方法可有效地降低基于磁旋轉(zhuǎn)編碼器的角度傳感器動態(tài)誤差。
角度傳感器選用磁旋轉(zhuǎn)編碼器AS5045,圖1是編碼器的原理框圖,它集成了霍爾陣列、前置放大、DSP和同步串行接口等功能模塊[4]。
AS5045磁編碼器采用SOP16封裝,是分辨率為12位的絕對式編碼器。通過芯片“Mode”引腳可選擇兩種工作模式,當(dāng)“Mode”接低電平時,編碼器工作在采樣速率為2.61 kHz慢速模式;當(dāng)“Mode”接高電平時,其工作在采樣速率為10.42 kHz快速模式。
圖1 AS5045原理框圖
圖2是基于磁旋轉(zhuǎn)編碼器AS5045實現(xiàn)的角度傳感器原理框圖。轉(zhuǎn)軸帶動其端面的磁鋼旋轉(zhuǎn),編碼器工作在快速模式以10.42 kHz采樣磁場信號并轉(zhuǎn)換成轉(zhuǎn)軸位置編碼值,微處理器通過SSI接口以0.5 kHz采樣編碼值,經(jīng)變換后通過RS422接口輸出。
圖2 角度傳感器原理框圖
在圖2所示角度傳感器中,磁編碼器和微處理器分別以10.42 kHz和0.5 kHz的采樣頻率對轉(zhuǎn)軸位置編碼進(jìn)行采樣,它們之間為異步采樣關(guān)系,所以磁編碼器采樣時刻tj(j=1,2,3…)和微處理器采樣時刻ti(i=1,2,3,…)之間存在采樣偏差Δti=ti-tj,即微處理器采樣值為Δti之前磁編碼器的采樣值。假設(shè)角度傳感器轉(zhuǎn)軸轉(zhuǎn)速為ω,則在采樣偏差Δti內(nèi)轉(zhuǎn)軸位置變化了ωΔti,故由采樣偏差引起的動態(tài)誤差為ωΔti。由此可見,在靜態(tài)時(ω近似為0),動態(tài)誤差可忽略不計;在動態(tài)時,動態(tài)誤差與轉(zhuǎn)速和采樣偏差乘積成正比,導(dǎo)致在動態(tài)應(yīng)用中角度傳感器無法滿足測量精度要求。
假設(shè)磁編碼器采樣頻率為f1,微處理器采樣頻率為f2,通常f1比f2高,見式(1):
(1)
式中N和M為整數(shù)。
圖3表示了磁編碼器和微處理器各個采樣點的關(guān)系,圖中Cj為編碼器第j個采樣點的采樣值,Mi為微處理器第i個采樣點的采樣值,顯然Mi等于Cj。
圖3 磁編碼器和微處理器采樣示意圖
Δti為微處理器第i個采樣點采樣偏差,Δti+1為微處理器第i+1個采樣點采樣偏差,Δti+1和Δti滿足式(2)。
(2)
式中:[]為向下取整運算符;mod為取模運算;T1為磁編碼器的采樣周期(1/f1)。
設(shè)初始采樣偏差為Δt1,則根據(jù)式(3)可計算出微處理器第i個采樣點的采樣偏差Δti:
(3)
當(dāng)f1是f2整數(shù)倍時,采樣偏差Δti=Δt1,各采樣點的采樣偏差為固定值;反之Δti將線性變化,且最大值不超過T1,顯然當(dāng)初始采樣偏差Δt1不為0時,角度傳感器測量值存在動態(tài)誤差。在圖2所示角度傳感器中,如轉(zhuǎn)軸轉(zhuǎn)速為1 800 r/min,動態(tài)誤差最高可達(dá)到1.04°。
若已知初始采樣偏差Δt1,根據(jù)式(3)可計算出微處理器在每個采樣點對應(yīng)的采樣偏差Δti,微處理器可根據(jù)之前采樣數(shù)據(jù)推算出轉(zhuǎn)軸轉(zhuǎn)速ωi,則ωiΔti為微處理器采樣值的動態(tài)誤差,微處理器可據(jù)此對采樣值進(jìn)行動態(tài)誤差補(bǔ)償,該方法稱為轉(zhuǎn)速推算補(bǔ)償法。微處理器采樣頻率高,在采樣周期內(nèi)轉(zhuǎn)軸運動可視為勻速旋轉(zhuǎn),并且在某一確定的角度傳感器中初始采樣偏差Δt1為固定值,所以轉(zhuǎn)速推算補(bǔ)償法實現(xiàn)動態(tài)誤差補(bǔ)償是可行的,但該方法有一定的局限性。
在轉(zhuǎn)速推算補(bǔ)償方法中,微處理器是通過n階差分運算來推算轉(zhuǎn)軸轉(zhuǎn)速ωi,因此ωi對噪聲比較敏感,而且在高動態(tài)應(yīng)用場合,ωi不能實時跟隨實際轉(zhuǎn)速的快速變化,從而影響到補(bǔ)償效果,甚至?xí)?dǎo)致補(bǔ)償值發(fā)散。為了克服上述問題,本文提出了一種新的動態(tài)誤差補(bǔ)償方法,該方法不以轉(zhuǎn)速ωi作為補(bǔ)償變量,而是對編碼器采樣值進(jìn)行加權(quán)平均進(jìn)行補(bǔ)償,將該方法稱為加權(quán)平均補(bǔ)償法。
在加權(quán)平均補(bǔ)償法中,編碼器采樣和微處理器采樣之間仍滿足異步采樣關(guān)系,采樣頻率分別為f1和f2,不同的是微處理在各個采樣時刻觸發(fā)三次突發(fā)采樣,突發(fā)采樣間隔時間為T2b,顯然微處理器每次采樣中的第一個突發(fā)采樣點的采樣偏Δti仍滿足式(3)。
圖4為微處理器突發(fā)采樣示意圖,圖中Cj為編碼器第j采樣點的采樣值,Mi,1、Mi,2和Mi,3為微處理器在第i采樣點所觸發(fā)突發(fā)采樣的采樣值。設(shè)定突發(fā)采樣間隔T2b為0.49T1,則3次突發(fā)采樣值可能取值見表1。
圖4 微處理突發(fā)采樣示意圖
表1 突發(fā)采樣值
結(jié)合圖4和表1可計算出經(jīng)動態(tài)誤差補(bǔ)償后的采樣值Mi。第一種取值情況時,由于Δti近似為0,Mi可近似為Cj;第二和第三種取值情況時,Mi應(yīng)處于Cj和Cj+1之間,且Δti越大,Mi越接近于編碼器采樣值Cj+1;出現(xiàn)第四種取值時,表明系統(tǒng)出錯應(yīng)進(jìn)入出錯處理程序。所以動態(tài)誤差補(bǔ)償后的采樣值Mi可根據(jù)式(4)對突發(fā)采樣值Mi,1和Mi,3進(jìn)行加權(quán)平均運算,可見Mi的計算與轉(zhuǎn)軸轉(zhuǎn)速無關(guān)。
(4)
在圖2所示角度傳感器中,磁編碼器采樣頻率f1為10.42 kHz,微處理器采樣頻率f2為0.5 kHz,由式(3)可知微處理器每次采樣的采樣偏移Δti變化約80.64 μs(不考慮式(3)的取余運算),角度值的動態(tài)誤差為變化值。
為了便于分析,角度傳感器將補(bǔ)償前的采樣值、經(jīng)一階差分轉(zhuǎn)速推算補(bǔ)償后的采樣值和經(jīng)加權(quán)平均補(bǔ)償后的采樣值同時輸出并用Matlab作出誤差圖。圖5是轉(zhuǎn)軸以100 r/min勻速旋轉(zhuǎn)測量誤差曲線圖;圖6是轉(zhuǎn)軸以10 000 r/min勻速旋轉(zhuǎn)測量誤差曲線圖;圖7是轉(zhuǎn)軸以每秒鐘變化1 250 r/min的速率在100~10 000 r/min速度之間作變速旋轉(zhuǎn)時測量誤差圖。
圖5 100 r/min勻速旋轉(zhuǎn)測量誤差
圖6 10 000 r/min勻速旋轉(zhuǎn)測量誤差
圖7 100~10 000 r/min變速旋轉(zhuǎn)測量誤差
表2為角度傳感器在不同工況下測量誤差的最大值。轉(zhuǎn)軸勻速旋轉(zhuǎn)時,轉(zhuǎn)速推算法和加權(quán)平均法都能減小測量誤差,轉(zhuǎn)速推算法補(bǔ)償效果受轉(zhuǎn)速影響較大;轉(zhuǎn)軸轉(zhuǎn)速快速變化時,轉(zhuǎn)速推算法產(chǎn)生較大誤差且呈現(xiàn)發(fā)散趨勢,加權(quán)平均法仍有較好的補(bǔ)償效果。
表2 最大測量誤差
由于采樣偏差的存在,在轉(zhuǎn)軸旋轉(zhuǎn)時角度傳感器測量值將附加動態(tài)誤差,該誤差與旋轉(zhuǎn)速度和采樣偏差乘積成正比,以至于角度傳感器在轉(zhuǎn)軸轉(zhuǎn)速高、轉(zhuǎn)速變化快的場合下產(chǎn)生較大的測量誤差。本文分析了角度傳感器動態(tài)誤差產(chǎn)生的原因,提出了加權(quán)平均補(bǔ)償法,經(jīng)測試表明該方法在各種工況均能明顯地減小動態(tài)誤差,該方法在基于磁旋轉(zhuǎn)編碼器的角度測量應(yīng)用中具有很大的使用價值。
[1] 廖紅偉,楊小非.磁旋轉(zhuǎn)編碼器的發(fā)展及其應(yīng)用.信息記錄材料,2003,4(1):40-44.
[2] 吳紅梅,蔣水秀.基于AS5045的磁旋轉(zhuǎn)編碼器的研究和應(yīng)用.計算機(jī)光盤軟件與應(yīng)用,2012(7):57-58.
[3] 于海,萬秋華,王樹潔,等.小型絕對式光電軸角編碼器動態(tài)誤差分析.中國激光,2013(8):172-178.
[4] Ams Corporation.AS5045 12Bit Programmable Magnetic Rotary Encoder.http:// www.ams.com.
Method for Dynamic Error Compensation of Angle Sensor Based on Magnetic Rotary Encoder
WU Xiao-feng
(Jiangxi Zhicheng Institute of TT&C, Nanchang 330029,China)
An angle sensor based on magnetic rotary encoder was designed, and the reason for the sensor’s dynamic error was analyzed, and then the method which can reduce dynamic error was presented. This method can compensate dynamic error effectively, also make the sensor’s error less than 0.1° when used in dynamic measurement with high speed and high speed rate changing.
magnetic rotary encoder; angle sensor; dynamic error; compensation
2015-03-01 收修改稿日期:2015-06-07
TP212
A
1002-1841(2015)11-0015-03
吳小鋒(1980—),工程師,研究領(lǐng)域為檢測技術(shù)與自動化裝置。E-mail: wuxiaofengje@163.com