<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 嵌入式系統 > 設計應用 > 消防機器人GPS導航系統的精度提高方案

消防機器人GPS導航系統的精度提高方案

作者: 時(shí)間:2009-04-23 來(lái)源:網(wǎng)絡(luò ) 收藏

運行時(shí)的震動(dòng)和外界的強磁干擾會(huì )影響電子羅盤(pán)的。震動(dòng)對其影響約 ,可以在CPU端使用軟件濾波器來(lái)解決這個(gè)問(wèn)題[2];當外界的強磁場(chǎng)遠遠超過(guò)地球磁場(chǎng)時(shí),甚至可能會(huì )使電子羅盤(pán)完全失效。本利用軟件里程計來(lái)計算航向,并可用于判定電子羅盤(pán)是否工作正常。

里程計與航位推算

  左右輪有各自的驅動(dòng)電機和傳動(dòng),控制兩個(gè)電機運行不同的時(shí)間以實(shí)現不同角度轉彎。所以也可以利用左右里程計的數值差來(lái)計算車(chē)體的相對轉角??梢允褂霉獯a盤(pán)對驅動(dòng)輪的轉動(dòng)次數計數,然后再用先驗公式計算里程,精確性較好。還可以在CPU內部開(kāi)辟寄存器空間,記錄所有電機運行命令中的時(shí)間參數,以計算左右輪的里程,作為預期參考值,但是驅動(dòng)電機的誤差會(huì )影響精確性。

  假設機器人兩個(gè)驅動(dòng)輪間隔L,驅動(dòng)輪半徑r,驅動(dòng)電機每秒鐘可驅動(dòng)輪子轉n圈;則若要向左旋轉Δθ度,只要控制右輪比左輪多運行 秒。由于機器人硬件參數相對固定,因而轉過(guò)一個(gè)固定角度的時(shí)間參數也可以先驗獲取,經(jīng)過(guò)多次試驗可以獲得比較精確的數值。為簡(jiǎn)化計算復雜度,機器人的前進(jìn)和轉向是作為兩種運動(dòng)方式來(lái)處理的,即機器人只會(huì )直行,轉向時(shí)產(chǎn)生的位移由先驗參數進(jìn)行補償。

  由于機器人主要在地面工作,因此定位時(shí)也暫不考慮水平高度的變化。二維定位坐標中,以正北方向為Y軸正方向,航向角度為機器人前進(jìn)方向順時(shí)針偏離正北方向的角度。如圖二所示,機器人先直行ΔS,然后向右轉這里認為機器人直行時(shí)軌跡為理想直線(xiàn),轉向時(shí)的軌跡為理想圓弧,實(shí)際使用時(shí)需添加修正因子。

  直行的相對方位變化可由以下公式得到:

(式中ΔS提取命令中時(shí)間參數計算得來(lái),相對方位角由航向記錄修正電子羅盤(pán)數據提供;γ和λ為修正因子)

  根據機器人實(shí)際航行情況,測得轉彎半徑為R,則轉向位移為:

(式中順時(shí)針轉向時(shí)n=1,逆時(shí)針轉向時(shí)n=0;φ和ψ為修正因子)

  由于驅動(dòng)輪地面摩擦情況可能發(fā)生變化,電機驅動(dòng)誤差等因素,實(shí)際運行中的軌跡并非理想狀態(tài),可利用先驗誤差因子作修正;并且在和電子羅盤(pán)工作正常的情況下,周期性校驗方位及航向記錄,以避免誤差的疊加。而在外界干擾嚴重(建筑物遮擋,無(wú)法收到信號;環(huán)境磁場(chǎng)擾亂地磁場(chǎng))的情況下,就要使用可靠的預測算法來(lái)提取有用信息。

改進(jìn)自適應卡爾曼濾波與信息綜合

  在誤差干擾下提取機器人的正確位置信息,需要使用到卡爾曼濾波器[3]。這是一種遞推線(xiàn)性最小方差估計,廣泛應用于信息提取,信息融合,追蹤、等方面。它基于以下兩個(gè)前提:首先,系統狀態(tài)可以由以下線(xiàn)性方程定義:

  狀態(tài)方程:;(wk為過(guò)程誤差)

輸出(測量)方程:(zk為測量誤差)

  其次,過(guò)程誤差與測量誤差分布滿(mǎn)足零均高斯,且不相關(guān);需要先驗的誤差分布參數?;緸V波公式如下:

K是卡爾曼增益,P是預計方差矩陣, 是過(guò)程誤差矩陣期望值, 是測量誤差矩陣期望值。

  卡爾曼濾波器的性能與誤差分布的先驗參數密切相關(guān),因此在實(shí)際應用中存在諸多問(wèn)題。首先系統的狀態(tài)方程可能是非線(xiàn)性的,線(xiàn)性擬合方程隨時(shí)間推移會(huì )引入較大的誤差;其次外界干擾產(chǎn)生的誤差特性是未知的,錯誤的先驗信息會(huì )導致濾波結果與實(shí)際被離。[4]使用滑動(dòng)窗法及最大似然準則,利用實(shí)際測量值動(dòng)態(tài)改變?yōu)V波器參數(測量方差矩陣和系統方差矩陣),其根本思想在于找出與預期誤差最小的結果,并給予最大的權重。



評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>