<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應(yīng)用 > 基于MCU的室外移動機器人組合導(dǎo)航定位系統(tǒng)

          基于MCU的室外移動機器人組合導(dǎo)航定位系統(tǒng)

          作者: 時間:2015-05-13 來源:網(wǎng)絡(luò) 收藏

            3.2數(shù)據(jù)的采集和處理方法

          本文引用地址:http://www.ex-cimer.com/article/274079.htm

            IMU和GNSS接收機的數(shù)據(jù)會主動發(fā)送到430單片機的UART接口,本文采用中斷接收的方式接收數(shù)據(jù),將每次到來的一個字節(jié)循環(huán)存儲在指定的存儲區(qū);氣壓計需要430單片機查詢式獲取高度信息。因此當需求IMU或者GNSS信息的時候,需要在存儲區(qū)內(nèi)掃描數(shù)據(jù),掃描依據(jù)是設(shè)備發(fā)送一幀數(shù)據(jù)的協(xié)議(幀頭、幀尾、CRC等),再根據(jù)協(xié)議獲取相應(yīng)物理量的數(shù)值;當需要高度信息的時候,需要430單片機對氣壓計發(fā)送控制字獲取信息。在對IMU和GNSS信息掃描時需要一個變量ptr保存有效數(shù)據(jù)的首地址在存儲區(qū)內(nèi)的偏移地址,為了不重復(fù)使用已用數(shù)據(jù),需要在利用完信息后,破壞這一幀有效數(shù)據(jù)的幀頭幀尾。

            另外需要注意,使用循環(huán)存儲數(shù)據(jù)和掃描取用這種方式,需要數(shù)據(jù)的處理速度比數(shù)據(jù)的接收速度快,否則舊數(shù)據(jù)會被新數(shù)據(jù)覆蓋。

            3.3高度計算方法

            高度信息的獲取需要通過MS5803-02BA獲取的氣壓信息轉(zhuǎn)換得到。對這款氣壓計的操作,需要先在芯片內(nèi)部的PROM獲取C1~C6六個參數(shù),再獲取溫度ADC結(jié)果D1和氣壓ADC結(jié)果D2,最后利用官方提供的計算公式計算得到帶補償?shù)臍鈮褐?。氣壓值獲取的軟件流程圖如圖6.

            

           

            圖6高度計算流程圖

            按照氣壓計的用戶手冊中提供的計算公式,最后可以計算得到一個經(jīng)過溫度補償?shù)臉藴蕷鈮褐?,單位mbar.高度信息的獲取還需要將氣壓值經(jīng)過函數(shù)關(guān)系轉(zhuǎn)換。高度h和標準大氣P之間有如下函數(shù)關(guān)系:

            

           

            Th=288.15K,是g0對應(yīng)高度下的溫度下限值;β=-6.5K/km,是溫度的垂直變化率;H=0m,是g0對應(yīng)的高度;Ph=101325Pa,是g0對應(yīng)高度下的氣壓下限值;R=287.05287m2/(K●s2),是氣體常數(shù);g0=9.80665m/s2,是海平面重力加速度。

            在氣壓與高度的關(guān)系轉(zhuǎn)換中,本文采用分段線性化的方法擬合它們的非線性關(guān)系。在不同氣壓值區(qū)間內(nèi),線性化公式得到h=a●P+b,取得不同的線性參數(shù)a、b,參考表4.

            

           

            3.4組合導(dǎo)航的時間對準

            進行組合導(dǎo)航濾波解算時,從IMU和GNSS接收機接收到的數(shù)據(jù)在時間上應(yīng)該是同步的,因為如果在一個數(shù)據(jù)融合點上,進入Kalman濾波器的來自兩個子系統(tǒng)中的數(shù)據(jù)來自不同的時間點,會給濾波計算帶來誤差,同時也會給校正計算帶來影響。GNSS接收機輸出的導(dǎo)航數(shù)據(jù)都帶有精確的時間標簽,而從IMU輸出的數(shù)據(jù)只有一個相對時間標簽。以GNSS接收機的時間標簽作為時間基準,分析時間差的組成。系統(tǒng)時間示意圖如圖7所示。

            

           

            圖7系統(tǒng)時鐘示意圖

            3.4.1時間差分析

            當一個GNSS數(shù)據(jù)(1Hz)到來時,接收機產(chǎn)生一個秒脈沖信號(PPS),用于時間對準。GNSS接收機本身存在數(shù)據(jù)時延:接收機整個計算過程會產(chǎn)生一個解算時間延遲△t1、從衛(wèi)星導(dǎo)航接收機和慣導(dǎo)系統(tǒng)輸出的數(shù)據(jù)分別經(jīng)過McBSP和RS-232數(shù)據(jù)接口輸入導(dǎo)航解算處理器會產(chǎn)生一定的傳輸延遲△t2.因此在PPS信號前的△t1+△t2時刻才是當前接收到的GNSS數(shù)據(jù)幀的真實時刻。IMU數(shù)據(jù)處理時間相對于遞推時間來說很小,可以忽略。另外PPS脈沖信號和慣性測量信號之間的時間差△τ,它描述GNSS絕對時間和IMU相對時間之間的關(guān)系,使得GNSS和IMU統(tǒng)一在同一個時間標準下。

            3.4.2處理思想

            根據(jù)總時間差△T =△t1+△t2+△τ,找到IMU數(shù)據(jù)對應(yīng)的插值時刻。通過時間△T就可以獲得對準時間點與最近的兩個慣性采集時刻,其后對時間同步點兩側(cè)時間點上,即圖中t(k-1)和t(k)時間點的慣性數(shù)據(jù)進行線性插值運算,就可以獲得了慣導(dǎo)數(shù)據(jù)和GNSS接收機數(shù)據(jù)在同一時間點上的同步化測量數(shù)據(jù)。

            3.4.3實施方法

            GNSS接收機解算時間△t1由接收機提供。

            傳輸時間△t2通常為一個固定時間,使用示波器分別測量GNSS接收機發(fā)送時間和導(dǎo)航解算電路的接收時間,再將兩個時間作差即可獲得。

            △τ的獲取需要開啟MSP430F149的計時器和外部中斷,通過中斷計時的方式獲得。具體方法是:通過將PPS信號接入導(dǎo)航處理器的外部中斷接口,采用邊沿觸發(fā)方式觸發(fā)中斷事件的發(fā)生。中斷事件啟動計時器工作。當通過串口中斷方式接收到IMU數(shù)據(jù)時,讀取計時器的值,即可得到IMU數(shù)據(jù)相對于PPS的延遲時間△τ。

            結(jié)論

            本文基于MSP430F149單片機設(shè)計的室外移動組合導(dǎo)航定位系統(tǒng),通過接口的擴展使得該款定位系統(tǒng)能夠接入IMU、GNSS接收機、氣壓計三路信息,完成初步導(dǎo)航定位服務(wù)功能,同時可作為多路數(shù)據(jù)采集設(shè)備,將多路數(shù)據(jù)整合到一路高速輸出接口,用于進一步的高精度導(dǎo)航解算。該系統(tǒng)根據(jù)使用者的需求不同,可接入不同成本和精度的設(shè)備,只要滿足RS-232協(xié)議即可。筆者將其實際運用,整個系統(tǒng)充分利用該款單片機的資源,結(jié)構(gòu)簡單、功耗低、適用范圍廣,不僅可作為初步導(dǎo)航定位服務(wù)的設(shè)備,還可作為多路數(shù)據(jù)采集設(shè)備。


          上一頁 1 2 3 下一頁

          關(guān)鍵詞: MCU 機器人

          評論


          相關(guān)推薦

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

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();