新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 基于ARM9平臺的電子指南針的設(shè)計(jì)

基于ARM9平臺的電子指南針的設(shè)計(jì)

作者: 時(shí)間:2016-10-08 來源:網(wǎng)絡(luò) 收藏
基于ARM9平臺的電子指南針的設(shè)計(jì)

4.3.2 界面實(shí)現(xiàn)

信號和槽機(jī)制是Qt的核心機(jī)制,是一種高級接口,應(yīng)用于對象之間的通信,是Qt區(qū)別于其他工具包的重要地方。的界面設(shè)計(jì)先把所需控件布局好,然后通過信號與槽函數(shù),使布局好的界面能夠運(yùn)行起來。

本設(shè)計(jì)中信號函數(shù)所對應(yīng)的按鈕控件QPushButtom類分為開始測試和結(jié)束測試兩個(gè)發(fā)射信號的按鈕。當(dāng)點(diǎn)擊開始測試的時(shí)候,信號相應(yīng)的槽函數(shù)所對應(yīng)的控件包括溫度顯示和方位顯示的控件QLCDNumber類型,時(shí)間顯示槽函數(shù)對應(yīng)的控件QtimeEdit類型以及方位指示槽函數(shù)所對應(yīng)的控件QWTCompass類型都開始顯示數(shù)據(jù)。當(dāng)點(diǎn)擊結(jié)束測試這個(gè)信號函數(shù)的控件時(shí),就不顯示數(shù)據(jù)。

5 軟件抗干擾設(shè)計(jì)

軟件抗干擾主要是消除硬磁干擾和軟磁干擾的影響。軟磁干擾算法較為復(fù)雜,且效果有限,一般實(shí)驗(yàn)時(shí)盡量讓指南針不受外界磁場干擾。本文主要介紹消除硬磁干擾的補(bǔ)償方法。二維指南針在沒有誤差的情況下,x軸和y軸輸出的對應(yīng)關(guān)系可以表示為極坐標(biāo)系下的一個(gè)圓。當(dāng)有硬磁干擾時(shí),此圓偏離圓的中心。校準(zhǔn)方法為:將指南針在水平面上選擇一周,記錄下x,y方向磁場強(qiáng)度的最大值xmax,ymax和最小值 xmin,ymin,校準(zhǔn)偏移量為:

xoffset=(xmax+xmin)/2

yoffset=(ymax+ymin)/2

每次測量方位時(shí),都應(yīng)將x,y方向的磁場強(qiáng)度大小減去相應(yīng)的校準(zhǔn)偏移量即可校準(zhǔn)硬磁干擾。

6 實(shí)驗(yàn)結(jié)果與數(shù)據(jù)分析

編譯好ARM版本的應(yīng)用程序后,可通過網(wǎng)絡(luò)文件系統(tǒng)(NFS)、USB等方式拷貝到mini2440開發(fā)板上執(zhí)行,程序運(yùn)行效果如圖9所示。

基于ARM9平臺的電子指南針的設(shè)計(jì)

6.1 實(shí)驗(yàn)結(jié)果

采用補(bǔ)償校準(zhǔn)后,對進(jìn)行了數(shù)據(jù)測量。先將標(biāo)準(zhǔn)羅盤水平放置,按每30°的間隔劃分13個(gè)點(diǎn)。然后將指南針分別對準(zhǔn)0°的點(diǎn),依次測量13個(gè)點(diǎn)的數(shù)據(jù),如表1所示。

基于ARM9平臺的電子指南針的設(shè)計(jì)

6.2 實(shí)驗(yàn)數(shù)據(jù)分析

本文設(shè)計(jì)的是二維電子指南針,從實(shí)驗(yàn)結(jié)果可知指南針精確度為±2°。影響精度的原因主要是存在系統(tǒng)誤差和環(huán)境磁場的影響,但能夠滿足精確度要求不是特別高的場合。

7 結(jié)語

本文主要是實(shí)現(xiàn)了一款基于平臺的二維電子指南針,采用Qt界面設(shè)計(jì)顯示溫度,方位,時(shí)間等信息,對Linux Qt界面設(shè)計(jì)進(jìn)行了相關(guān)的探討,分析了指南針精度受影響的情況,給出了一種軟件補(bǔ)償算法以提高精度。本文設(shè)計(jì)的電子指南針可作為其他的Linux產(chǎn)品的接口,具有一定的市場應(yīng)用價(jià)值。


上一頁 1 2 下一頁

評論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉