紅掌風水擺放三不要
2024-05-08
更新時間:2024-05-08 05:58:46作者:佚名
羅盤是自動控制測試及測量領域中用來獲取方向信息的裝置目前應用較廣泛的是磁阻式電子羅盤這種電子羅盤具有較好的抗振性對干擾有電子補償因此測向精度較高但現(xiàn)有電子羅盤電路結構復雜體積較大不便于攜帶和使用難以集成到現(xiàn)有嵌入式設備中針對這些問題本文提出了以霍尼韋爾HoneyWell公司三軸磁阻傳感器HMC5883L為敏感元件使用低功耗控制器AVR單片機為傳感器數(shù)據(jù)處理單元的小型低功耗電子羅盤該羅盤支持串口輸出可以方便集成到各種應用中
電子羅盤測向原理
地球的磁感應強度為5060T相當于沿著地球中心的一個磁棒磁棒的兩極相對于地理的兩極有大約115的夾角無論何地地球磁場的水平分量永遠指向磁北極這一原理是所有羅盤的制作基礎所有羅盤都是測量地球磁場的北方向其他方向即可推算出來地球磁場的北方向和實際的北方向有差別而這種差別的大小在地球上的不同地點也是不同的所以必須知道羅盤所在的大致位置才能計算出如何補償?shù)卮藕驼鎸嵄狈较虻牟顒e以顯示出真實的北方向
磁北的方向就是地磁場在水平面上分量的方向假設電子羅盤處于水平面上要確定其相對于磁北的航向角由磁阻傳感器可以直接得出地磁場的水平分量HxHy因此相對于磁北的航向角為
正切函數(shù)的周期為180為保證數(shù)據(jù)有效性船體航向角轉換到相對磁北0360的范圍內可將上式分解得到相對于磁北極的360范圍內順時針方向的航向角加上當?shù)氐拇牌蔷涂梢运愠雠c真北的航向角
由于地磁南北極與地理南北極存在磁偏角要得到準確的南北極方向必須用計算結果加上或減去所在地區(qū)磁偏角得出前進方向與地理北極的夾角即真北方位角A當所在地區(qū)磁偏角已知時真北方位角為A
硬件設計
電子羅盤的硬件系統(tǒng)如圖211所示主要由傳感器控制器電源及串口輸出4部分組成控制器通過串口與PC通信用于實現(xiàn)對電子羅盤的設置校正以及測量數(shù)據(jù)輸出
圖211硬件系統(tǒng)設計圖
1控制器模塊
圖212ATmega16最小系統(tǒng)原理圖
控制器采用ATmega16這是一款基于增強的AVRRISC結構的高性能低功耗8位MCU工作電壓為2755V在1MHz時鐘下工作電流為11mA大多數(shù)指令可以單時鐘周期執(zhí)行具有統(tǒng)一的中斷管理片上外圍模塊豐富片內有16KB的Flash1KB的RAM512字節(jié)的EEPROM8路的10位AD轉換器以及一路USART通信端口等資源在本設計中控制器串口與PC連接可以對電子羅盤進行配置及校正也可以將最終計算得到的方向及角度通過串口輸出供其他測量系統(tǒng)使用控制器模塊在ATmega16的基礎上做了最小系統(tǒng)的擴展如圖212所示按照模塊化設計思想本文將最小系統(tǒng)制作成單獨模塊其最終實物如圖213所示
圖213ATmega16最小系統(tǒng)實物圖
圖214HMC5883L模塊
圖215串口模塊
圖216底板原理圖
2HMC5883L模塊
HMC5883L是一種基于表面貼裝的高集成自帶數(shù)字接口的弱磁傳感器應用于低成本羅盤和磁場檢測領域HMC5883L包括最先進的高分辨率HMC118X系列磁阻傳感器并附帶霍尼韋爾專利的集成電路包括放大器自動消磁驅動器偏差校準能使羅盤精度控制在12的12位模數(shù)轉換器以及簡易的I2C總線接口
HMC5883L采用霍尼韋爾各向異性磁阻AMR技術具有軸向高靈敏度和線性高精度的特點能用于測量地球磁場的方向和大小
HMC5883L模塊的外圍電路非常簡單本文采用的是成品模塊如圖214所示該模塊外接引腳包括VCCGNDSCLSDADRDY3V3其中VCC為5V輸入模塊自帶降壓功能可以輸出33V電壓供其他模塊使用SCL與SDA為標準I2C接口DRDY用于指示HMC5883L數(shù)據(jù)是否準備好用于中斷方式讀取測量數(shù)據(jù)
3串口模塊
與PC通信的串口模塊采用的是USB轉串口方式同樣采用成品模塊如圖215所示該模塊使用PL2303HX芯片實現(xiàn)USB轉串口功能具有電路簡單傳輸速度快等特點模塊引出的功能引腳包括TXDRXDGND3V35V其中5V為USB總線輸出電壓本文將該電壓作為下位機的供電電壓TXD與RXD為串口接口與單片機直接連接無需做電平轉換模塊內部同時集成了降壓模塊可以輸出33V電壓但由于已經使用了HMC5883L模塊的降壓功能本系統(tǒng)中該輸出引腳懸空
4底板模塊
各模塊之間需要通過底板進行連接其原理圖如圖216所示其中與HMC5883L模塊的I2C接口使用的是ATmega16的硬件接口因此需要連接PC0與PC1端口DRDY則與PD7端口連接串口模塊與單片機的硬件串口端口PD0PD1連接總體連接相對簡單將各個模塊通過插座插針以及連接線連接設備最終的樣子如圖217所示
軟件設計
電子羅盤的軟件分為兩部分單片機上的軟件以及PC端的控制軟件平時工作時只需運行單片機上的程序PC端軟件僅顯示當前數(shù)據(jù)當需要配置或者校正時要配合PC端軟件使用
單片機的軟件流程如圖218所示參數(shù)保存在單片機的EEPROM中掉電后仍然可以保存
圖217總體設備實物圖
圖218單片機軟件流程圖
PC機與單片機進行串口連接平時工作時單片機工作在正常模式PC端軟件通過串口查詢當前方位角并顯示在界面上當需要配置電子羅盤時可以通過PC端軟件設置磁偏角參數(shù)都會保存在單片機的EEPROM中羅盤重啟后還按之前的設置參數(shù)運行當需要對羅盤進行校正時通過PC端軟件啟動校正流程用戶需要在水平面上緩慢旋轉羅盤360然后通過PC端軟件告知羅盤結束校正此時羅盤會自動計算出XY軸的偏移值并保存同時PC端軟件上會顯示這些偏移值
PC端軟件采用VisualC2005編寫基于MFC框架開發(fā)軟件流程如圖219所示軟件框架采用的是查詢方式由PC控制軟件作為主動方發(fā)送串口命令到單片機單片機則作為被動方將結果返回給PC控制軟件
通過界面上的按鈕用戶可以設置電子羅盤進行校正并看到當前方位角的顯示界面如圖2110所示使用時先將單片機與PC串口連接然后打開對應的串口號此時即可以看到當前方位角顯示在偏角欄里如果需要設置磁偏角只需將數(shù)值寫入對話框并單擊設置按鈕即可校正功能相對比較復雜在單擊開始校正后需要手動旋轉電子羅盤360然后再單擊結束校正最大最小偏移值即會顯示在界面上
羅盤誤差及補償
圖219PC端軟件流程圖
圖2110PC端軟件界面
圖2111有無干擾時的羅盤輸出
造成羅盤誤差的主要因素有傳感器誤差其他磁材料干擾等為了校準傳感器放大電路HMC5883內部集成了自測試電路可以驅動偏置電流帶產生一定大小的測試磁場以校準傳感器各軸靈敏度自測試還可以校準溫度變化產生的漂移當磁阻傳感器處于較強干擾磁場中時傳感器靈敏度會下降甚至失效為了消除這種影響需要復位置位電路施加脈沖寬度為2s電流強度為34A的電流使傳感器特性恢復在目前應用較為廣泛的HMC1022及HMC1022模擬輸出磁阻傳感器中復位置位電路需要額外設計并由控制器控制而HMC5883芯片內部集成了生成復位置位脈沖所需的驅動電路且由片上ASIC電路自動控制在每次測量前自動進行復位置位操作不僅保證了傳感器精度也使傳感器應用電路大為簡化
除了傳感器本身的誤差磁阻傳感器應用環(huán)境中的磁介質引起的磁場變化也會使電子羅盤精度降低磁場干擾分硬磁干擾和軟干擾兩類硬磁干擾是傳感器附近的永磁體或被磁化的金屬造成的它對磁阻傳感器輸出的影響是固定的使輸出曲線圖圓心偏移如圖2111b所示而軟磁干擾則是地球磁場和傳感器附近磁性材料的相互作用造成的其干擾具有方向性如圖2111c所示
為了校正XY軸方向的硬磁干擾需要在校準模式中繞Z軸緩緩旋轉羅盤一周在旋轉過程中羅盤不斷采集XY軸的磁場強度數(shù)據(jù)最終找出數(shù)據(jù)的最大值XmaxYmax和最小值XminYmin對于Z軸的校準需要繞X軸或Y軸旋轉一周找出Z軸數(shù)據(jù)的最大值Zmax最小值Zmin校準偏移量為
將偏移量保存到控制器的EEPROM存儲器中在以后的每次測量中將每軸的磁場強度減去對應的偏移量即可校準硬磁干擾消除軟磁干擾的補償算法較為復雜在低成本的控制器上不易實現(xiàn)且效果有限因此在本設計中選用了優(yōu)化磁阻傳感器安裝位置的方法以降低其他磁性材料對地磁場的干擾保證羅盤精度
總結
本文依據(jù)磁羅盤測向原理設計了具有傾斜補償功能的小體積低功耗數(shù)字羅盤該羅盤采用數(shù)字磁阻傳感器HMC5883L及超低功耗處理器ATmega16L具有電路結構簡單集成度高抗干擾能力強等優(yōu)點實驗證明經算法補償后該電子羅盤精度可以達到1由于硬件成本低功耗小它也適用于便攜導航小型飛行器控制以及用于其他需要測量傾角和方位角的場合