磁性編碼器輸出信號電子細分研究的現(xiàn)狀和意義
在數(shù)字式傳感器中,磁性編碼器是近幾年發(fā)展起來的一種新型電磁敏感元件。磁性編碼器具有不易受塵埃和結(jié)露影響、結(jié)構(gòu)簡單緊湊、響應速度快(可達 500~700kHz),體積小巧等優(yōu)點,同時利用磁性編碼器可將多個元件精確地排列組合從而構(gòu)成構(gòu)成新功能器件和多功能器件。由于磁性編碼器具有上述諸多優(yōu)點,因而近年來在高精度測量和控制領域中的應用不斷增加,作為一種重要工具,磁性編碼器已成為必不可少的組成部分,其市場需求量每年以20%~30% 的速度增長。在高速度、高精度、小型化、長壽命的要求下,在激烈的市場競爭中,磁性編碼器以其突出特點而獨具優(yōu)勢,成為發(fā)展高技術(shù)產(chǎn)品的關(guān)鍵之一。在磁性編碼器的研制生產(chǎn)方面,提高磁性編碼器的分辨率和小型化現(xiàn)已成為各國研究發(fā)展的重點。
要提高編碼器的分辨力必須增加其磁極數(shù),一方面會增加傳感器的成本,另一方面會因編碼器體積的增大而影響其應用。因此對磁性編碼器的輸出信號進行二次細分就顯得十分必要。
編碼器信號信分的方案主要分為硬件細分和軟件細分兩類。硬件細分雖然可以得到較快的響應速度和實時輸出的細分信號,但要實現(xiàn)較高的分辨率需要較高的成本。軟件細分雖然在實時性存在一定缺陷,但可以在較小成本投入下獲得較高的分辨率,并可以根據(jù)需要靈活設定分辨率。
本文將探討利用成本較低的單片機系統(tǒng)實現(xiàn)磁性編碼器信號細分的算法和實現(xiàn)信號實時輸出的方案。本系統(tǒng)的設計思想是:根據(jù)兩采樣點之間的機械角度和細分精度計算出兩個采樣點之間應輸出的脈沖的數(shù)目,并在系統(tǒng)的控制下輸出,從而實現(xiàn)信號細分的目的。因此信號細分方案實際上是由旋轉(zhuǎn)機械角度的計算和細分脈沖的輸出控制兩部分組成的。
旋轉(zhuǎn)角度測量方案和硬件電路實現(xiàn)
系統(tǒng)中采用的磁性編碼盤能夠輸出兩路正交的正弦信號,編碼器每旋轉(zhuǎn)一周,可輸出8個連續(xù)的正弦波。由于電機每旋轉(zhuǎn)一周對應360度的機械角度,因此每個正弦波對應45度的機械角度,而每個正弦波又對應360度的電角度,因此正弦波90度的電角度的變化量對應磁性編碼器11.25度機械角度的變化。
編碼盤輸出的是兩路正交的正弦信號,而在正弦信號的一個單調(diào)區(qū)間中,信號的幅值和編碼器的機械位置是一一對應的,于是可以通過測量信號的幅值轉(zhuǎn)換成對應的角度信號,從而實現(xiàn)對磁編碼信號的細分。
構(gòu)造近似三角函數(shù) ,構(gòu)造函數(shù)的波形如圖1所示。
由波形圖可以看出,新構(gòu)造的函數(shù)以90度的電角度為周期(對應機械角度為11.25度)。如果相鄰兩采樣點在一個周期內(nèi),則可按照公式計算編碼器的機械位置;如果相鄰兩采樣點不在一個周期內(nèi),則只需在式1的計算結(jié)果上加上N×11.25即可(N為兩采樣點之間的周期數(shù))。采用這樣的構(gòu)造函數(shù)可以大大簡化程序設計,從而提高系統(tǒng)的實時性。
電路結(jié)構(gòu)框圖
系統(tǒng)電路結(jié)構(gòu)框圖如圖2所示。兩路正弦信號通過編碼電路生成與正弦波相對應的編碼信號,CPU可以根據(jù)編碼信號對信號的整數(shù)周期進行計數(shù)。
由編碼器生成的編碼信號控制多路開關(guān)實現(xiàn)兩路輸入信號之間的切換,以實現(xiàn)當 =N×90o(N=1,3,5,……)時互換兩路輸入信號的功能。采樣保持器和A/D轉(zhuǎn)換器在CPU的控制下,對同一時刻的兩路正弦信號同時進行采樣,并對采樣保持器保持的信號進行A/D轉(zhuǎn)換,轉(zhuǎn)換后的數(shù)據(jù)經(jīng)8255傳輸至CPU。
圖2 信號細分硬件電路圖
細分方案軟件部分設計
電子細分方案軟件流程圖如圖2所示。
在脈沖的輸出控制上需要解決如下兩個問題:如何輸出細分脈沖以及如何控制細分脈沖的輸出速率。
編碼盤的轉(zhuǎn)速變化是連續(xù)的,不會發(fā)生突變,因此可以近似認為在一段極短的時間內(nèi),電機的轉(zhuǎn)速是恒定的,在此時間段內(nèi)也就完全可以按照等時間間隔輸出脈沖。假設電機的速度響應時間為100毫秒,在恒定加速度下達到1000轉(zhuǎn)/分的轉(zhuǎn)速,程序的執(zhí)行周期為3000微秒,在一個程序周期中,按勻速處理產(chǎn)生的角度誤差最大不超過0.27度,也就不會導致脈沖的誤輸出,完全可以保證精度要求。按照恒定速率在極短的時間內(nèi)輸出細分脈沖可以大大簡化程序設計,并可以大幅度提高系統(tǒng)的實習響應性能。
由于細分脈沖數(shù)目必須要等到下一次采樣完成后才能確定,因此脈沖的輸出在時間上必然會滯后一個程序周期。如果設定程序執(zhí)行周期為3毫秒,按編碼盤每分鐘旋轉(zhuǎn)1000轉(zhuǎn),每轉(zhuǎn)輸出1000個細分脈沖計算,則輸出信號最多會產(chǎn)生50個脈沖的滯后,相當于18o的機械角度誤差。如果編碼盤的轉(zhuǎn)速增加,該誤差會變得更大。同時,由于程序的執(zhí)行周期不是一個固定值,因此由此所產(chǎn)生的信號滯后也將是一個變化的值。如果等到下一次的采樣完成后才輸出脈沖,則細分誤差會比較大,且無法控制。因此細分脈沖不能等到應輸出脈沖數(shù)目計算完成后才進行。
為了解決以上兩個問題,可以采用定時中斷控制脈沖的輸出。首先根據(jù)需要輸出的脈沖數(shù)目計算出輸出脈沖的時間間隔,以此時間間隔作為定時時間常數(shù)控制細分脈沖的輸出。這樣一方面可以保證脈沖輸出和輸出脈沖計算的同步進行;另一方面也可以通過定時器控制脈沖輸出的速率,從而使得細分脈沖在最大程度上實現(xiàn)了實時輸出。
為了進一步簡化程序設計,可以將程序執(zhí)行周期設定為固定值,采用定時程序?qū)Τ绦虻膱?zhí)行進行監(jiān)控,以保證每一個程序的執(zhí)行周期都為設定值。這樣就可以建立查詢表格,根據(jù)應輸出的細分脈沖的數(shù)目直接確定出對應的定時時間常數(shù)。如此,將復雜的浮點運算程序簡化為簡單的查表程序,縮短了程序執(zhí)行周期,保證了細分脈沖輸出的實時性。
結(jié)論:
以上設計思想在編碼器信號細分系統(tǒng)設計中均得以應用,并成功實現(xiàn)了對編碼器輸出正弦波信號的1000細分,從實踐上證明了利用低成本的單片機系統(tǒng)完全可以在低分辨力的編碼器基礎上得到較高的分辨率。
參考文獻:
1、谷云彪等.提高光電編碼器分辨率的位置細分方法的研究.
2、電磁元件與特種器件,中國慣性技術(shù)學報,1996年第4卷第2期
3、鄭遠開等.高分辨率磁性編碼器.傳感器技術(shù),1996年第5期
4、李懷瓊等.一種用軟件來實現(xiàn)的莫爾條紋數(shù)字化細分技術(shù). 計量技術(shù)
5、劉文文.高精度的光柵信號細分算法.應用科學學報,1999年第17卷第1期