馬鵬輝,殷興輝,王瑩,李澤宇
基于游戲引擎的圖形用戶界面集群渲染系統設計與實現
馬鵬輝,殷興輝,王瑩,李澤宇
針對低功耗的導航應用,設計了一種小型化、低功耗、結構簡單的具有傾斜補償功能的三軸磁阻式電子羅盤。硬件方面是由HoneyWell公司的三維磁阻式傳感器HMC5883L,三維加速度傳感器使用低成本傾斜度模塊GY-25,以及德州儀器的MSP430F149處理器組成。通過采集各模塊的數據,得到系統的俯仰角、翻滾角、航向角等信息,并通過LCD1602顯示載體的航向角和姿態角。軟件方面,在分析磁性物質影響的基礎上,提出了合理可行的矯正方法來消除影響羅盤測量精度的誤差,實現了能準確測量羅盤朝向、運行穩定的三維電子羅盤。
電子羅盤;傾斜補償;磁阻傳感器;MSP430
近年來,電子羅盤被廣泛運用于工業和社會生活中。磁阻式電子羅盤具有較好的抗震性,對干擾有電子補償,測向精度較高,是目前較為主流的羅盤設備。但現有電子羅盤電路結構復雜,體積較大,不便于攜帶和使用。針對這些問題,本文提出了以 HoneyWell 公司三軸磁阻傳感器 HMC5883和傾斜角傳感器模塊GY-25為敏感元件,使用超低功耗控制器 MSP430F149 處理傳感器數據并計算方向的小型低功耗電子羅盤。
磁羅盤通過測量地磁場水平方向分量確定磁北極方向并推算出其他方向。當羅盤水平放置時,傳感器坐標系的X、 Y軸在水平面內,X軸為前進方向,Y軸垂直于X軸向右,Z軸沿重力方向向下,從磁北方向順時針到X軸的夾角即為方位角φ,坐標系如圖1所示:

圖1 羅盤處于水平狀態的坐標系
設地磁場的水平分量為H0,則磁羅盤測得的X軸和Y軸的磁場分量分別為式(1):

式(1)中,φ為磁方位角即同磁北方向的夾角見式(2):

而實際應用中,電子羅盤并不是始終水平,需要根據加速度傳感器測得的俯仰角和滾轉角,通過坐標變換,將磁傳感器測得的磁場強度分量折算到水平方向,再計算方位角,傾斜時羅盤狀態如圖2所示:

圖2 羅盤處于非水平狀態
俯仰角φ定義為X軸與水平面之間的夾角,滾轉角θ定義為Y軸和水平面的夾角。當羅盤不水平時,測得重力加速度g在羅盤三軸方向的分量分別為Ax,Ay,Az,則根據坐標關系可求得俯仰角和滾轉角為:

此時,磁傳感器測出的地磁場在羅盤三軸方向的分量為Hx,Hy,Hz,由坐標關系得水平方向磁分量為式(4):

利用三角函數關系可求得方位角為式(5):

由于磁北極與地理北極并不完全一致。定義地球表面任一點的地磁場磁感應強度矢量所在的垂直平面(地磁子午面)與地理子午面的夾角為磁偏角β,查表得到本地的磁偏角,即可得到載體相對與真北的航向角A為式(6):

1.硬件設計
電子羅盤硬件設計由磁阻傳感器、傾斜角模塊、控制器、Gps、液晶顯示、串口輸出6部分組成,系統框圖如圖3所示:

圖3 羅盤系統框圖
(1)傳感器模塊
磁阻傳感器HMC5883為數字接口三軸磁阻傳感器,內置ASIC放大器,12位A/D轉換器,I2C總線輸出。采用4 ×4×1.3mm的LCC封裝,體積小、精度高、成本低廉、使用方便。其采用霍尼韋爾各向異性磁阻(AMR)技術,它內部的各向異性傳感器在軸向有較高靈敏度,也具有較好的線性高精度。傳感器帶有的對于正交軸低敏感行的固相結構能用于測量地球磁場的方向和大小,其測量范圍從毫高斯到8高斯G[4],能滿足本設計的要求。
傾斜模塊 GY-25是一款低成本傾斜度模塊。工作電壓3-5v功耗小,體積小。其工作原理,是通過陀螺儀與加速度傳感器經過數據融合算法最后得到直接的角度數據,模塊集成度高,能穩定輸出角度數據,減少了處理器的負擔。此傾斜度模塊以串口TTL電平全雙工方式與上位機進行通信,精度高,穩定性高。能夠在任意位置得到準確的角度。更具測量數據顯示,GY-25測量的精度能達到0.15度。
(2)控制器模塊
控制器采用 MSP430F149,它是一款16位高性能、超低功耗MCU,工作電壓1.8~3.6V,在1MHz時鐘下,工作電流為 0.1~400μA。大多數指令可以單時鐘周期執行,具有統一的中斷管理,片上外圍模塊豐富,片內有精密硬件乘法器、14路的12位A/D轉換器、兩路USART通信端口等資源。在本設計中控制器串口1接收GPS信號以獲取經緯度信息,根據經緯度信息查表得到當地的磁偏角,最終計算得到的方向及角度顯示在液晶屏上,同時通過串口2輸出,可供其它測量系統使用。
(3)顯示輸出模塊
顯示輸出部分包括串口輸出和液晶顯示。其中串口輸出提供精確的偏角信息,便于羅盤集成到其他測試設備中。顯示部分先用LCD1602字符型液晶顯示模塊,它可以顯示兩行,相當于32個LED數碼管,它采用+5V電壓供電,外圍電路配置簡單,價格便宜,具有很高的性價比,適合于電池供電的便攜式通信設備和測試設備。
2、軟件設計
軟件功能主要包括初始化、數據采集、方向角計算、補償校正以及顯示輸出等,軟件處理流程如圖4所示:

圖4 系統軟件處理流程
控制軟件用C語言編寫,便于閱讀和移植,方便調試。本系統軟件采用模塊化設計,總體結構分為系統主程序和各功能模塊子程序兩部分。其中主程序負責整個系統對子程序的及時響應和調用,有效的管理系統軟、硬件;子程序完成各指定功能,并供主程序調用,包括初始化、數據采集、計算及誤差補償校正、航向角顯示、串口收發輸出等。在具體算法設計過程中,需要重點考慮系統的實時性、同步性,以及誤差補償等問題。
造成羅盤誤差的主要因素有傳感器誤差、其他磁材料干擾等如圖5所示:

圖5 硬磁干擾和軟磁干擾的羅盤輸出
為了校準傳感器放大電路,HMC5883內部集成了自測試電路,可以驅動偏置電流帶產生一定大小的測試磁場,以校準傳感器各軸靈敏度。自測試還可以校準溫度變化而產生的漂移。由于磁阻傳感器材料的特性,當磁阻傳感器處于較強干擾磁場中時,傳感器元件靈敏度下降甚至失效。HMC5883芯片內部集成了生成復位/置位脈沖所需的驅動電路,且由片上ASIC電路自動控制,在每次測量前自動進行復位/置位操作,不僅保證了傳感器精度,也使傳感器應用電路大為簡化。
除了傳感器本身的誤差,磁阻傳感器應用環境中的磁介質引起的磁場變化也會使電子羅盤精度降低。磁場干擾分硬磁干擾和軟鐵干擾兩類。硬磁干擾是傳感器附近的永磁體或被磁化的金屬造成的,它對磁阻傳感器輸出的影響是固定的,使輸出曲線圖圓心偏移,如圖5(b)所示。而軟磁干擾則是地球磁場和傳感器附近磁性材料的相互作用造成的,其干擾具有方向性如圖5(c)所示。為了校正X、Y軸方向的硬磁干擾,需要在校準模式中繞Z 軸緩緩旋轉羅盤一周,在旋轉過程中,羅盤不斷采集X、Y軸的磁場強度數據,最終找出數據的最大值和最小值。對于Z軸的校準,需要繞X軸或Y軸旋轉一周,找出Z軸數據的最值。校準偏移量為式(7):

通過測試將偏移量記錄下來,在以后的每次測量中,將每軸的磁場強度減去對應的偏移量,即可校準硬磁干擾,硬磁畸變校準圖如圖6所示:

圖6 X、Y軸硬磁畸變的校準
消除軟磁干擾的補償算法較為復雜,在低成本的控制器上不易實現且效果有限,因此在本設計中選用了優化磁阻傳感器安裝位置的方法,以低其他磁性材料對地磁場的干擾,保證羅盤精度。
在本實驗中測得X,Y的數據,用Matlab擬合曲線,得到X、Y軸的響應數據并作圖,結果如圖7所示:

圖7 X、Y軸磁場強度
本文根據電子羅盤測向的基本原理,設計了一款具有傾斜補償功能的低成本電子羅盤,其中的GY-25傾斜角模塊具有很高的精度和穩定性,通過可以實時得到羅盤的姿態,完成傾斜補償。處理器MSP430是超低功耗處理器,具有電路結構簡單、集成度高、抗干擾能力強等優點。實驗表明,經過算法補償,羅盤精度可以達到±1°,并且硬件成本低,功耗小,體積小,完全可以適用于普通導航領域。
[1] 蔣賢志. 數字電子羅盤誤差分析及校正技術研究 [J].現代雷達,2010,27 (6):39-41.
[2] 蔣海濤,郭站營.基于 MEMS 加速度傳感器的飛行器傾角測量系統設計[J],計算機測量與控制,2013,18(1):107-109.
[3] 邵婷婷,馬建倉,胡士峰,等.電子羅盤的傾斜及羅差補償算法研究 [J].傳感技術學報,2007,20(6):1335-1337.
[4] [4] 胡寧博,李劍,趙櫸云.基于HMC5883的電子羅盤設計 [J].傳感器世界, 2011,(06):0035-05.
[5] 郭檢柟.基于磁阻芯片和 MSP430 單片機的電子羅盤設計[J].信息與電子工程,2013,8(1):12-14.
[6] 郭秋芬,謝莉莉,謝仕民.磁航向計在導航中的應用研究及其誤差補償與修正[J].戰術導彈控制技術,2009, 31(1):41-45.

圖5 最優作品
該片段風格與學習樣本類似,節奏平緩,且具有明顯的旋律感,悅耳動聽,符合用戶需求。另外在20次運行中由用戶人工評價的種群適應度平均值如表1所示:

表1 20次仿真人工評價適應度函數值
由于式(19)中和為20,為4,所以一次仿真中會有4次人工評價結果。表1中每一列表示一次仿真中的4次人工評價適應度值,可以看出除第4次仿真外,該算法均可得到令用戶滿意的結果。圖5所示作品為第5次仿真得到的最優結果。
與文獻[1,2]中的Markov作曲算法相比,本算法不僅考慮到音符或者節奏的孤立可能性,并且結合旋律元建立音符與節奏和旋律元與節奏之間的映射,生成的作品走勢更加連貫和諧,且具有較好的節奏感。與主流的其他基于神經網絡等算法相比,本算法具有學習速度快,要求樣本小,可以人機交互等優點。
仿真結果證明了本文提出的基于 HMM-IGA的新型計算機作曲算法前期通過學習訓練樣本可以生成與訓練樣本風格類似的作品片段,后期根據用戶需求引導算法進化方向,最終可生成用戶滿意的作品。且算法復雜度低,要求訓練樣本小。
參考文獻
[1] Basseto, Bruno Abrantes, and Jo?o José Neto. A stochastic musical composer based on adaptive algorithms [C].//Brazilian Symposium on Computer Music. 1999, 16-18.
[2] Ames C, Domino M. Cybernetic composer: an overview [C]. //Understanding Music with AI. MIT Press, 1992. 212-213.
[3] Verbeurgt K, Dinolfo M, Fayer M. Extracting patterns in music for composition via markov chains[C]//International Conference on Industrial, Engineering and Other Applications of Applied Intelligent Systems. Springer Berlin Heidelberg, 2004: 1123-1132.
[4] 曹西征, 毛文濤, 喬錕, 等. 基于音高旋律元的柔和樂曲的自動作曲算法[J]. 自動化學報, 2012, 38(10):1627-1638.
[5] 黃澄宇, 汪鐳, 康琦, 等. 運用遺傳算法進行智能音樂作曲研究[J]. 微型電腦應用, 2014, 30(3): 1-4.
(收稿日期:2016.10.19)
Design and Implement of a Three-axis Magnetic Resistance Type Electronic Compass
Ma Penghui, Ying Xinghui, Wang Ying, Li Zeyu
(College of Computer and Information, Hohai University, Nanjing 211100, China)
For navigation of low power consumption, it designs a three-axis magnetic resistance type electronic compass which is miniaturization, low power consumption, simple structure and has the function of slope compensation. Hardware is made up of HoneyWell HMC5883L, three-dimensional magnetic resistance sensor, three-dimensional acceleration sensor which uses low cost tilt module GY-25, and of Texas instruments MSP430F149 processor. By data acquisition module, the information such as the pitch angle, roll angle, heading angle can be obtaintd, and through LCD1602 display, carrier course angle and attitude angle can be displayed. Software, based on the analysis on the influence of magnetic particles, feasible correction method is proposed to eliminate the influence the compass error in measuring accuracy, and three-dimensional electronic compass can realize the accurate measurement of compass heading and steady operation .
Electronic Compass; Tilt Compensation; Magnetic Resistance Sensor; MSP430
TP393
A
1007-757X(2016)011-0005-04
2016.05.03)
國家自然科學基金—面上項目(U1531101)
馬鵬輝(1993-),男,河海大學,計算機與信息學院,碩士研究生,研究方向:自動控制,南京 211100殷興輝(1962-),男,河海大學,計算機與信息學院,教授,研究方向:電子與通信工程、射頻與遙感系統、微弱信號檢測技術,南京211100
王 瑩(1991-),男,河海大學,計算機與信息學院,碩士研究生,研究方向:自動控制,南京 211100
李澤宇(1991-),男,河海大學,計算機與信息學院,碩士研究生,研究方向:射頻與遙感系統,南京 211100