摘要:鑒于采用磁阻傳感器的數(shù)字指南針體現(xiàn)了高精度、高靈敏度的特點,提出基于PNI傳感器的電子指南針系統(tǒng)。該系統(tǒng)以Atmega16作為主控芯片,由SEN-R65磁阻傳感器、PNI11096磁場測量芯片組成數(shù)據(jù)采集端,由1602液晶、蜂鳴器、二極管及按鍵組成人機交互平臺,實現(xiàn)了顯示當前方向角、多級菜單操作、指南蜂鳴、磁場校準、定向導航、休眠節(jié)能等多項功能。實驗證明,該電子指南針的方向角絕對誤差降低至1.73%。
關鍵詞:指南針;PNI傳感器;Atmega16單片機;SEN-R65磁阻傳感器
機械式儀器體積龐大,維修困難。隨著電子技術的飛速發(fā)展以及傳感器技術的日趨成熟,各種機械式測量儀器已經(jīng)逐漸向電子數(shù)字儀器轉換,其精度要比機械式高若干倍。指南針也不例外,磁阻傳感器能準確測出微弱卻無處不在的地球磁場,如PNI公司的SEN-R65磁阻傳感器,具有體積小、精度高、穩(wěn)定性好,價格低等特點,使得指南針高精度化數(shù)字化變得簡易可行。由于驅動電路簡單,設計師可以把精力集中在更多創(chuàng)意設計上。筆者設計的電子指南針結構簡單,功能齊全,可以安裝在GPS導航系統(tǒng)以及一些機器上,應用前景廣泛。
1 系統(tǒng)硬件設計
1.1 系統(tǒng)組成
本方案采用PNI傳感器,以AVR單片機Atmega16為主控芯片,并采用SPI進行數(shù)據(jù)采集端與Atmega16的通信,整個系統(tǒng)由PNI傳感器模塊、中心控制模塊、1602液晶和LED顯示模塊、蜂鳴器報警模塊、按鍵模塊及其他外設模塊組成。系統(tǒng)總體框架如圖1所示。
1.2 理論分析及數(shù)值計算
1.2.1 傳感器模塊原理
1)地球磁場向量 圖2所示為地球某一點的地球磁場向量He的三維圖,其中,x軸和y軸與地球表面平行,z軸垂直指向下。指南針的基本任務就是測量磁場北極(圖2中的He,即地球磁場的水平分量)與前進方向的夾角(方位角α)。在圖2中,α是從磁場的北極順時針計算的(如,東是90°,西是270°)
2)磁阻傳感器SEN-R65傳統(tǒng)的磁場測量采用電感線圈,在地球磁場產(chǎn)生的感應電流非常微弱,不便于A/D采樣,增加了測量難度。本文采用的磁阻傳感器為SEN-R65,根據(jù)電場和磁場原理,當在鐵磁合金薄帶的長度方向施加一個電流時,如果在垂直于電流的方向再施加磁場,鐵磁性材料中就有磁阻的非均質現(xiàn)象出現(xiàn),從而引起合金帶自身的阻值變化。SEN-R65傳感器為固態(tài)元件,體積小,測量精度高,最小分辨率可達0.000 15高斯,非常適合測量地球磁場。注:兩個SEN-R65磁阻傳感器在實際焊接時要垂直擺放。
3)磁場測量芯片PNI11096通過磁阻效應可以把磁場的變化轉換成對應變化的電流,但所得到的電流比較微弱,很難進行A/D轉換,因此要經(jīng)過信號放大電路進行放大,再通過A/D轉換就可以得到對應的數(shù)字量,這樣才能讓單片機識別。PNI公司的PNI11096芯片能夠同時對3軸磁場強度(即x,y,z軸)進行測量,且集成了放大和模數(shù)轉換電路。在整個PNI11096信號處理電路中包含3個主要的部分,如圖3所示。
1.2.2 SPI模塊接口電路
PNI11096的SPI總線的時序如圖4所示,比通常的SPI總線多了DRDY和RESET。以下為讀取數(shù)據(jù)的步驟:
1)拉低SSNOT;
2)復位一次11096,即把RESET拉高5μs再拉低,每次測量都要復位一次,復位后DRDY自動變?yōu)榈停?br />
3)DRDY變?yōu)榈秃?,指?讀x軸為0X41,y軸為0X42)從MOSI傳入11096;
4)寫入指令后等待DRDY變高,表示11096已經(jīng)準備好數(shù)據(jù),在MISO讀取數(shù)據(jù)即可。
PNI11096與單片機的接口電路如圖5所示。
1.2.3 休眠節(jié)電工作方式的原理
指南針采用了休眠節(jié)電方式。當CPU處于等待時進入休眠節(jié)電工作模式,降低電能損耗,一旦有外部的觸發(fā)信號或等待時間到,CPU從休眠狀態(tài)中被喚醒,重新進入正常程序執(zhí)行工作方式。Atmega16處在掉電休眠模式狀態(tài)時,其本身的耗電量小于1μA。
2 系統(tǒng)軟件設計
該電子指南針使用編譯器winavr,采用C語言進行編程,具有很好的可移植性。整個系統(tǒng)軟件包括主程序、普通模式子程序、校準模式子程序、定向模式子程序等。
主程序負責初始化各個功能模塊,上電便顯示普通模式,通過按鍵選擇可以進入其他模式。此外,程序中配置了與休眠功能相關的寄存器,當達到要求時系統(tǒng)進入休眠模式。
2.1 普通模式子程序
根據(jù)傳感器PNI11096測得的x、y值,單片機計算出方向角angle,并在液晶顯示器上顯示方向(如南偏東15°)。當指向南方時,蜂鳴器響。程序流程圖如圖6所示。
2.2 校準子程序
選擇校正模式,整個系統(tǒng)在水平面上旋轉一周,干涉磁場與地球磁場疊加會有一個最大值和一個最小值,記錄下這兩個值。通過校正即可消除干涉磁場的影響。流程圖如圖7所示。
2.3 導航子程序
進入導航模式,用戶選擇好行進的方向角,按確定鍵保存。在定向過程中,當前角度angle不斷與α對比,小于α則右邊指示燈閃爍,大于α則左邊指示閃爍,等于α則中間指示燈閃爍,如圖8所示。
3 結果與分析
PNI11096讀出來的數(shù)據(jù)經(jīng)過單片機處理,得到0~360°的方向角,并用機械式指南針作為標準,進行標定試驗。測試數(shù)據(jù)如表1所示,方向角測試誤差絕對值的平均值為6.25°,相對誤差為1.73%。
4 結論
本文設計的電子指南針利用了PNI公司的磁阻傳感器SEN-R65和專用的驅動芯片11096,以ATmega16為主控芯片,方向角測試平均誤差為6.25°。系統(tǒng)多級菜單,界面操作簡易,并設置了休眠掉電模式,降低了系統(tǒng)功耗。