基于C8051F021的雙通道軸角測量實(shí)驗裝置的設計
0 引 言
現代電子技術(shù)的進(jìn)步不斷推動(dòng)數字伺服系統的發(fā)展,人們對位置角度測量提出了越來(lái)越高的要求。軸角轉換裝置旋轉變壓器以其高精度、抗震動(dòng)、高可靠性著(zhù)稱(chēng),在工業(yè)控制和武器控制系統等設備中應用廣泛。為了促進(jìn)學(xué)員對旋轉變壓器角度轉換、測量和通過(guò)雙通道粗精組合提高測量角度精度的原理和技術(shù)的掌握,在不需要復雜的外圍設備情況下,利用C8051F021混合型芯片內置的集成12位ADC與DAC,方便的實(shí)現激勵信號產(chǎn)生、正余弦信號測量、軸角計算,同時(shí),C8051F021對C語(yǔ)言編程有較好的支持能力,利用C語(yǔ)言編程,可以方便的實(shí)現程控?;诖?,設計本實(shí)驗裝置。
1 系統設計
1.1 系統原理與結構
為了讓裝置能自動(dòng)完成測量軸角任務(wù),利用C8051F021混合型單片機產(chǎn)生驅動(dòng)旋轉變壓器的激磁信號并測量旋轉變壓器輸出的正余弦信號,根據信號幅值和相位計算旋轉角度,通過(guò)應用粗精雙通道卦限判別和組合糾錯技術(shù)提高測量角度精度,最后將組合后的結果作為真實(shí)值由LCD顯示??傮w設計框架圖如圖1所示:
雙通道旋轉變壓器作為軸角測量元件,一般與轉軸同軸安裝,它相當于一臺的1:1旋轉變壓器和一臺1:n的旋轉變壓器的結合體。當粗級旋變轉過(guò)1圈時(shí),精級旋變則轉過(guò)n圈,精級的1圈(360°)表示真實(shí)軸角角度的1個(gè)360°/n。數據組合時(shí),由粗級數據計算真實(shí)軸角所在區間,由精級數據計算出該區間的精確值,粗精組合后得到軸角的真實(shí)值.理想情況下數據組合公式為:
D=INT[Dc/(360°/n)]×(360°/n)+(Dj/n)
式中:D為軸角的真實(shí)值;Dc為粗級數據;Dj為精級數據。設D=INT[θc/(360°/n)],則有0≤i≤n,i表示真實(shí)軸角落入第i個(gè)區間。在本設計中采用1:32的轉速比。
將O°~360°劃分為32個(gè)區間,每個(gè)區間為11.25°。真實(shí)軸角D落入哪個(gè)區間,可用esc(粗級正弦輸出)、ecc(粗級余弦輸出)計算出Dc來(lái)得到。而后再用esj(精級正弦輸出)、ecj(精級余弦輸出)計算出Dc得到落入該區間的精確值(具體計算方法將在軟件設計部分給出)。由此,本設計中的數據組合公式可寫(xiě)成如下形式:
D=INT[Dc/(11.25)]×(11.25)+(Dj/32)
上述的粗精級軸角組合原理是建立在粗讀數整數部分不能有差錯的基礎上的,而實(shí)際中由于傳感器誤差、工藝因素等往往導致得不到粗、精級的理想配合:當Dj在兩個(gè)區間的上(下)邊界附近時(shí),會(huì )出現粗級讀整數與真實(shí)軸角D所在區間多“1”或者少“1”(“1”即360°/n,本設計中“1”為11.25°)的大角度的誤差,且這種誤差是原理性誤差,是粗精級組合系統中粗讀整數不可避免的誤差,依靠提高器件及電路精度來(lái)達到絕對避免這種誤差是不可能的(只會(huì )減少產(chǎn)生這種差錯的機率)。但可利用軟件的方法來(lái)排除該誤差:采用一個(gè)循環(huán)和一個(gè)糾錯判決條件來(lái)實(shí)現糾錯,判決條件的基準值η由裝置的測量精度決定,它是裝置糾錯能力的具體表示。本設計中取粗級單個(gè)區間長(cháng)度的一半作為基準值,即此時(shí)η=6.125°。實(shí)現過(guò)程將在軟件設計中給出。
1.2 關(guān)鍵電路設計
1.2.1 激磁信號產(chǎn)生及調理電路設計
通過(guò)查正弦函數表的方法,經(jīng)過(guò)D/A轉換成模擬量而輸出正弦波。其波形的頻率可以通過(guò)改變定時(shí)器的初值,即改變查表輸出的時(shí)間來(lái)控制。采用n位D/A轉換器產(chǎn)生幅度為0~2n的m點(diǎn)正弦信號,其函數表可通過(guò)如下公式計算:
D/A輸入=sin(2πj/m)×2n-1+2n-1 j="0",1,2…2m
本設計采用C8051F021的12位D/A轉換器產(chǎn)生16點(diǎn)正弦信號,利用如下公式計算:
D/A輸入=sin(2πj/16)×2048+2048 j="0",1,2…32
可計算得到的16項16位二進(jìn)制數結果,以32個(gè)8位二進(jìn)制數的形式存放在code段(ROM中)具有32項的一維數組SINE_TABLE[32]中,每2項合成一個(gè)16位數,取低12位送D/A轉換器進(jìn)行D/A轉換。
設系統振蕩頻率為f0,要產(chǎn)生頻率為-廠(chǎng)的正弦信號,n位定時(shí)器的初值可按如下公式計算:
初值=2n-f0/12×1/100Hz×1/n
本設計中,C8051F021的系統振蕩頻率f0=22.11840O MHz,n=16,產(chǎn)生10kHz正弦信號時(shí)定時(shí)器初值應設置為:
216-22.118400MHz/12×1/100Hz×1/16=64384
DAC0輸出的是0~2.4V的正極性正弦信號,為驅動(dòng)旋轉變壓器,需要雙極性的激磁電壓,且2.4V的電壓幅度不足以使旋轉變壓器產(chǎn)生較大的感應電壓,因此,需對DAC0輸出信號進(jìn)行調理,調理電路如圖2所示,采用集成運放LM324N作為放大器,為便于調節,達到合適的電壓增益,使用量程為100kΩ的可變電阻R3,改變R3阻值可適應不同增益要求。電容C3為隔直電容,C1用于濾去高頻噪聲。后級放大電路采用乙類(lèi)雙電源互補對稱(chēng)功率放大電路。C4、C5為去耦電容,二極管D1、D2用于克服交越失真。
1.2.2 輸入調理電路設計及A/D轉換模塊
C8051F021芯片內有一個(gè)完全由CIP-51通過(guò)特殊功能寄存器控制的片內12位SAR ADC(ADC0),一個(gè)9通道輸入多路選擇開(kāi)關(guān)和可編程增益放大器。9個(gè)有一個(gè)輸入通道被連到內部溫度傳感器,其他8個(gè)通道接外部輸入且每一對都可被配置為兩個(gè)單端輸入或一個(gè)差分輸入。
旋轉變壓器輸出正弦和余弦兩路信號,因此,雙通道旋轉變壓器將輸出四路信號。本設計中采用單端輸入方式,將AIN0.0-AIN0.3四個(gè)端口作為單端輸入口。ADC0的工作電壓選擇為0~2.4V,而旋轉變壓器輸出的是雙極性電壓,因此,需對其調理,使其成為范圍為0~2.4V的正極性電壓信號,以滿(mǎn)足ADC采樣要求。調理電路如圖3所示。運放U2輸出一個(gè)負極性穩定電壓,輸入信號與之疊加后變?yōu)樨摌O性信號,經(jīng)運放U1反相放大調理至0~2.4V。二極管D1和D2為穩壓二極管。
2 軟件設計
軟件由主模塊、激磁信號產(chǎn)生、雙通道角度信號采集轉儲、雙通道角度計算與糾錯及鍵盤(pán)顯示5個(gè)模塊組成。
2.1 激磁信號產(chǎn)生模塊
通過(guò)查正弦函數表的方法,經(jīng)過(guò)D/A轉換成模擬量而輸出正弦波。其波形的頻率可以通過(guò)改變定時(shí)器的初值,即改變查表輸出的時(shí)間來(lái)控制。
T3中斷服務(wù)響應后,軟件先清除中斷標志,按次序輸出正弦表數據給DAC0。由DAC0輸出模擬的激磁信號。當數據表指針指向正弦波波峰時(shí),啟動(dòng)一次ADC0采樣。
2.2 雙通道角度計算與糾錯模塊
在實(shí)際應用中,快速準確確定粗、精機的讀數是十分關(guān)鍵的,本設計中,通過(guò)采集由旋轉變壓器輸出的正余弦值來(lái)算出當前的角度,計算的整體思想是先確定角度的卦限,然后根據正余弦值之商(即正切)來(lái)匹配角度值。將圓均分為八個(gè)卦限,沿逆時(shí)針?lè )较蛞来尉幪枮镮、Ⅱ……Ⅷ。
為得到真實(shí)軸角D,需解決兩個(gè)問(wèn)題:(1)確定D所處卦限(解決大范圍問(wèn)題);(2)確定D在各卦限中的角度θ是多少(解決小角度問(wèn)題),本設計中,θ為真實(shí)軸角D偏離0°、90°、180°、270°、360°線(xiàn)的角度。真實(shí)軸角D在各卦限與θ關(guān)系如下表所示:
具體計算流程如圖4所示。
依此法可分別求得DC與Dj,經(jīng)組合即可求得真實(shí)軸角值。
當待測角度小于0°或大于360°時(shí),可將其加上或減去360°轉化為0°~360°間的角度。
糾錯程序流程如圖5所示。
3 系統測試
3.1 實(shí)驗測量
利用該裝置,測得數據如表1所示:
從表中可看出,測量值與真實(shí)值的誤差控制在0.05°以?xún)?,表明裝置具有較高精度。
3.2 糾錯檢測
選取易出錯的特殊角度(0°、90°、180°、270°),通過(guò)轉動(dòng)旋轉變壓器,對其進(jìn)行糾錯檢測,情況如表2所示。
從表中可看出,對各個(gè)角度而言,無(wú)論出錯情況是“超前”還是“滯后”,結果誤差始終控制在0.05°以?xún)?,說(shuō)明該裝置具有較好的糾錯能力。
4 結束語(yǔ)
本文設計了1:32雙通道軸角測量實(shí)驗裝置,給出了軟硬件實(shí)現,若應用于其他轉速比的系統中,只需更改算法中相應部分的具體數值即可,因此方法具有普遍意義。由于充分利用了C8051F021內部集成的DAC、ADC等功能部件,硬件電路結構簡(jiǎn)單;程序采用模塊化設計,條理清晰,可移植性強;系統運行穩定,測試結果可靠性高。文中采用的實(shí)現方法貼近實(shí)際,利于學(xué)習掌握測角原理,解決了實(shí)驗教學(xué)需要,對實(shí)驗教學(xué)和產(chǎn)品的進(jìn)一步研發(fā)有很好的參考價(jià)值。
評論