国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

ROS中map,odom坐標(biāo)系的理解以及acml和robot_pose_ekf的對(duì)比和小車(chē)漂移方法解決

這篇具有很好參考價(jià)值的文章主要介紹了ROS中map,odom坐標(biāo)系的理解以及acml和robot_pose_ekf的對(duì)比和小車(chē)漂移方法解決。希望對(duì)大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請(qǐng)大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問(wèn)。

之前一直不知道odom,map到底是什么關(guān)系,看了這個(gè)博客:https://blog.csdn.net/u012686154/article/details/88174195 才了解了一些。這邊記錄我自己的看法,看下是否正確:

1 ROS中map,odom坐標(biāo)系的理解

我想解決的問(wèn)題是:計(jì)算出小車(chē)在真實(shí)世界(這個(gè)坐標(biāo)系稱為map)的位置

我可以得到的數(shù)據(jù):

gazebo的傳感器(比如 libgazebo_ros_diff_drive.so)會(huì)在/odom topic下面發(fā)布小車(chē)在map坐標(biāo)系的坐標(biāo)。但是這個(gè)坐標(biāo)只是根據(jù)傳感器得到的,gazebo無(wú)法保證它是正確的。

于是新增了一個(gè)概念:odom坐標(biāo)系。意思是gazebo本來(lái)計(jì)算的是小車(chē)在map上的坐標(biāo),但是這個(gè)這個(gè)坐標(biāo)和真實(shí)值有偏差,因此把該坐標(biāo)看成小車(chē)在odom坐標(biāo)系上的坐標(biāo),然后odom坐標(biāo)系相對(duì)于map有相對(duì)偏差。

坐標(biāo)變換從base_footprint->map 變化為了:base_footprint->odom->map

2 odom坐標(biāo)系的總結(jié)

  1. 只是一個(gè)概念上的坐標(biāo)系,實(shí)際不存在
  2. 如果說(shuō)完全相信傳感器的數(shù)據(jù),那么可以認(rèn)為odom坐標(biāo)系就是map坐標(biāo)系
  3. 如何計(jì)算odom坐標(biāo)系相對(duì)于map坐標(biāo)系的位置:首先獲得差速計(jì)推算出的小車(chē)坐標(biāo)p,然后使用雷達(dá)再次估算小車(chē)的位置g(此時(shí)認(rèn)為g比較準(zhǔn)確,因此認(rèn)為g就是小車(chē)在map上的坐標(biāo)),那么差速計(jì)得到的坐標(biāo)可以看成是小車(chē)在odom的坐標(biāo)+odom相對(duì)于map的偏差,因此odom在map上的坐標(biāo)就是p-g

3 acml和robot_pose_ekf的區(qū)別

先說(shuō)下他們的共同點(diǎn):

  • 都是可以估算出robot在map上的位置。
  • 雖然它們都會(huì)在某個(gè)topic發(fā)布小車(chē)的坐標(biāo),并且發(fā)布一個(gè)tf變換。tf變換可以看成一個(gè)特殊的topic,里面說(shuō)明了兩個(gè)坐標(biāo)系的相對(duì)位置。在實(shí)際開(kāi)發(fā)中,一般直接使用這個(gè)tf變換,而不是使用發(fā)布出來(lái)的坐標(biāo)。

區(qū)別是:

  • acml估算的方法是輸入雷達(dá)信號(hào),然后直接算出位置。

  • robot_pose_ekf是通過(guò)將imu信號(hào)和原來(lái)里程計(jì)估算出來(lái)的坐標(biāo)整合以后算出一個(gè)新的坐標(biāo)。

  • 真正計(jì)算坐標(biāo)的位置,更多是通過(guò)坐標(biāo)變換進(jìn)行的

    • acml發(fā)布了一個(gè)map到odom的變換,
    • robot_pose_ekf發(fā)布了一個(gè)odom到base_footprint的變換

比較讓人困惑的是:acml應(yīng)該只是知道base_footprint到odom的坐標(biāo),它怎么知道m(xù)ap到odom的坐標(biāo)的?

我的理解是,acml覺(jué)得自己準(zhǔn)確率非常高,因此把自己計(jì)算出的坐標(biāo)當(dāng)成了map上的坐標(biāo),而通過(guò)獲得base_footprint到另一個(gè)坐標(biāo)系的坐標(biāo),就可以獲得該坐標(biāo)系到map的坐標(biāo)了?,F(xiàn)在這個(gè)坐標(biāo)系被稱為了odom而已。

amcl能否和robot_pose_ekf一起使用?

我的理解是可以。理論上來(lái)說(shuō),因?yàn)閞obot_pose_ekf算出了odom到base_link的變化,而amcl計(jì)算出的odom到map的變化其實(shí)是通過(guò)map到base_link變化得到的,(base_link->map)表示base_link相對(duì)于map的坐標(biāo),那么有:

(base_link->map) = (base_link->odom) + (odom->map)

而acml計(jì)算的odom->map:

(odom->map) = (base_link->map) - (base_link->odom)

把它代入上面,發(fā)現(xiàn)算出來(lái)的還是acml計(jì)算出的base_link對(duì)于map的坐標(biāo),而base_link到odom的坐標(biāo)不管是什么都不會(huì)產(chǎn)生影響。

但是實(shí)際上來(lái)說(shuō),很多包可能會(huì)用到odom坐標(biāo)系,如果說(shuō)不太相信里程計(jì)的話還是使用一下amcl比較好。

下面是詳細(xì)解釋:

從acml的描述可以看出來(lái):

amcl transforms incoming laser scans to the odometry frame (~odom_frame_id). So there must exist a path through the tf tree from the frame in which the laser scans are published to the odometry frame.

The drawing below shows the difference between localization using odometry and amcl. During operation amcl estimates the transformation of the base frame (~base_frame_id) in respect to the global frame (~global_frame_id) but it only publishes the transform between the global frame and the odometry frame (~odom_frame_id). Essentially, this transform accounts for the drift that occurs using Dead Reckoning. The published transforms are future dated

我的理解是:acml和GPS差不多,根據(jù)雷達(dá)信息可以直接估算出機(jī)器人在map上面的坐標(biāo)。但是acml提供了一個(gè)功能,就是可以指定一個(gè)別的坐標(biāo)系,它幫你把map上的坐標(biāo)轉(zhuǎn)為該坐標(biāo)系相對(duì)于map的坐標(biāo)。這個(gè)坐標(biāo)系一般是指定為odom。

4 小車(chē)漂移的解決方法

我的現(xiàn)象:小車(chē)在運(yùn)動(dòng)過(guò)程中一會(huì)兒飄過(guò)來(lái),然后突然飄回去。

一開(kāi)始我覺(jué)得可能是odom不準(zhǔn),后來(lái)把里程計(jì)坐標(biāo)直接看成map上的坐標(biāo),發(fā)現(xiàn)小車(chē)不再飄了。于是發(fā)現(xiàn)是gmapping發(fā)布的map到odom的坐標(biāo)不準(zhǔn)。如果說(shuō)遇到這種情況,可以按照下面的步驟排除:

  1. 如果說(shuō)用的是差速計(jì)控制的小車(chē),可以去網(wǎng)上找一份鍵盤(pán)控制小車(chē)的代碼
  2. 讓小車(chē)原地轉(zhuǎn)圈
  3. 如果說(shuō)小車(chē)原地轉(zhuǎn)圈也會(huì)飄一定不是里程計(jì)的問(wèn)題。事實(shí)上,如果開(kāi)的不太遠(yuǎn),里程計(jì)應(yīng)該是非常準(zhǔn)的

解決方法:文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-800459.html

  1. 里程計(jì)不準(zhǔn)可以使用robot_pose_ekf
  2. gmapping不準(zhǔn)可以直接放棄使用gmapping發(fā)布坐標(biāo),完全相信里程計(jì)。就是里程計(jì)直接發(fā)布map到base_footprint的tf變換
  3. 如果是場(chǎng)景非??諘?,可以在場(chǎng)景中加入一些障礙物,不然雷達(dá)不會(huì)起效
  4. 可以把gmapping的miniScore改的小一點(diǎn),甚至是負(fù)數(shù)。因?yàn)槔走_(dá)在空曠的地區(qū)置信度為0,而出現(xiàn)一些小的障礙物就會(huì)導(dǎo)致置信度>0,轉(zhuǎn)而使用雷達(dá)。而我們希望多使用差速計(jì)。

到了這里,關(guān)于ROS中map,odom坐標(biāo)系的理解以及acml和robot_pose_ekf的對(duì)比和小車(chē)漂移方法解決的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來(lái)自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場(chǎng)。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請(qǐng)注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請(qǐng)點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • 對(duì)于SLAM定位中各類坐標(biāo)系的理解(坐標(biāo)系,里程計(jì)坐標(biāo)系,基座坐標(biāo)系與雷達(dá)坐標(biāo)系)

    對(duì)于SLAM定位中各類坐標(biāo)系的理解(坐標(biāo)系,里程計(jì)坐標(biāo)系,基座坐標(biāo)系與雷達(dá)坐標(biāo)系)

    最近系統(tǒng)性學(xué)習(xí)了一遍L(zhǎng)IO-SAM,開(kāi)始的時(shí)候一直搞不懂里程計(jì)坐標(biāo)系,經(jīng)過(guò)不斷學(xué)習(xí)才有了一點(diǎn)自己的拙見(jiàn)。 引言 :首先我們搞清楚SLAM算法主要是解決建圖與定位問(wèn)題,其更 側(cè)重定位 ,即讓機(jī)器人知道自己在全局地圖的哪個(gè)位置,只有這樣才能繼續(xù)后續(xù)的預(yù)測(cè)、感知、控制

    2024年02月03日
    瀏覽(75)
  • 【ROS系列】坐標(biāo)系轉(zhuǎn)換介紹和對(duì)齊

    【ROS系列】坐標(biāo)系轉(zhuǎn)換介紹和對(duì)齊

    本篇文章介紹:ECEF、ENU、UTM、WGS-84坐標(biāo)系(LLA) ECEF坐標(biāo)系 也叫 地心地固直角坐標(biāo)系 。 原點(diǎn):地球的質(zhì)心, x軸:原點(diǎn)延伸通過(guò)本初子午線(0度經(jīng)度)和赤道(0維度)的交點(diǎn)。 z軸:原點(diǎn)延伸通過(guò)的北極,也就是理想地球旋轉(zhuǎn)軸。 y軸:Z--X 完成右手定則,穿過(guò)赤道和90度經(jīng)

    2024年02月06日
    瀏覽(19)
  • WGS84以及各種坐標(biāo)系

    地心地固坐標(biāo)系(Earth-Centered, Earth-Fixed,ECEF),簡(jiǎn)稱地心坐標(biāo)系。 地理坐標(biāo)系統(tǒng)(Geographic Coordinate System,GCS)??1??,坐標(biāo)系是地心坐標(biāo)系,用經(jīng)緯度表示球面上的點(diǎn)。 世界大地測(cè)量系統(tǒng)(World Geodetic System, WGS),比如WGS84,是一種地理坐標(biāo)系統(tǒng),用于全球定位系統(tǒng)(

    2024年02月11日
    瀏覽(25)
  • GPS學(xué)習(xí)(一):在ROS2中將GPS經(jīng)緯度數(shù)據(jù)轉(zhuǎn)換為機(jī)器人ENU坐標(biāo)系,在RVIZ中顯示坐標(biāo)軌跡

    GPS學(xué)習(xí)(一):在ROS2中將GPS經(jīng)緯度數(shù)據(jù)轉(zhuǎn)換為機(jī)器人ENU坐標(biāo)系,在RVIZ中顯示坐標(biāo)軌跡

    本文記錄在Ubuntu22.04-Humbel中使用NMEA協(xié)議GPS模塊的過(guò)程,使用國(guó)產(chǎn)ROS開(kāi)發(fā)板魯班貓(LubanCat )進(jìn)行調(diào)試。 在淘寶找了款性價(jià)比較高的輪趣科技GPS北斗雙模定位模塊作為入門(mén)學(xué)習(xí)使用,支持GNSS系統(tǒng)(北斗、GPS、GLONASS、日本的QZSS以及衛(wèi)星增強(qiáng)系統(tǒng)SBAS),定位精度在2.5m左右,屬于民用

    2024年02月03日
    瀏覽(41)
  • 簡(jiǎn)單理解opencv中的坐標(biāo)系,x,y,h,w

    簡(jiǎn)單理解opencv中的坐標(biāo)系,x,y,h,w

    在查閱opencv有關(guān)的技術(shù)文章時(shí),經(jīng)常能夠看到如下風(fēng)格的函數(shù)頭: 那么這里的x究竟是指圖像從左往右數(shù),還是從上往下數(shù)呢? 這里直接給出結(jié)論: 在圖片img上畫(huà)矩形,坐標(biāo)原點(diǎn)是圖片左上角,向右為x軸正方向,向下為y軸正方向: 上面介紹的是x,y的概念。那么height,wid

    2024年02月11日
    瀏覽(31)
  • unity和3d坐標(biāo)系以及和ue的比較

    unity和3d坐標(biāo)系以及和ue的比較

    unity和ue都采用左手坐標(biāo)系 在3d軟件中,大多數(shù)軟件都用紅色代表x軸,綠色代表y軸,藍(lán)色代表z軸。 不同的是 : 在unity中X軸代表右方,Y軸代表上方,Z軸代表前方; 在ue中X軸代表前方,Y軸代表右方,Z軸代表上方; 縮放 :根據(jù)自身縮放,不受坐標(biāo)系影響, (移動(dòng)和旋轉(zhuǎn)則分

    2024年02月11日
    瀏覽(59)
  • 世界坐標(biāo)系、相機(jī)坐標(biāo)系、圖像坐標(biāo)系、像素坐標(biāo)系

    世界坐標(biāo)系、相機(jī)坐標(biāo)系、圖像坐標(biāo)系、像素坐標(biāo)系

    四個(gè)坐標(biāo)系都是什么? 1.世界坐標(biāo)系-相機(jī)坐標(biāo)系-圖像坐標(biāo)系-像素坐標(biāo)系 2.像素坐標(biāo)系-圖像坐標(biāo)系-相機(jī)坐標(biāo)系-世界坐標(biāo)系 圖像處理、立體視覺(jué)等等方向常常涉及到四個(gè)坐標(biāo)系:世界坐標(biāo)系、相機(jī)坐標(biāo)系、圖像坐標(biāo)系、像素坐標(biāo)系 ? ? ? ? ? ? ? ? ? ? 構(gòu)建世界坐標(biāo)系只是

    2024年01月21日
    瀏覽(25)
  • 坐標(biāo)轉(zhuǎn)換(相機(jī)坐標(biāo)系、世界坐標(biāo)系、圖像物理坐標(biāo)系、圖像像素坐標(biāo)系)

    坐標(biāo)轉(zhuǎn)換(相機(jī)坐標(biāo)系、世界坐標(biāo)系、圖像物理坐標(biāo)系、圖像像素坐標(biāo)系)

    一般情況下我們所涉及到的坐標(biāo)包括四個(gè),即相機(jī)坐標(biāo)系、世界坐標(biāo)系、圖像物理坐標(biāo)系、圖像像素坐標(biāo)系。我們本文的講解思路是在講解每個(gè)坐標(biāo)轉(zhuǎn)換之前先講清楚每個(gè)坐標(biāo)系所表示的含義。本文主要參考由高翔主編的視覺(jué)SLAM十四講第五章相機(jī)模型。 相機(jī)將三維世界的坐

    2024年02月09日
    瀏覽(23)
  • RobotStudio的基本布局方法,模型加載,工件坐標(biāo)系的創(chuàng)建,手動(dòng)操作機(jī)器人示教,以及模擬仿真機(jī)器人運(yùn)動(dòng)軌跡。

    RobotStudio的基本布局方法,模型加載,工件坐標(biāo)系的創(chuàng)建,手動(dòng)操作機(jī)器人示教,以及模擬仿真機(jī)器人運(yùn)動(dòng)軌跡。

    1、在文件功能選項(xiàng)卡中,選擇【空工作站】,單擊【創(chuàng)建】,創(chuàng)建一個(gè)新的工作站。 2、在【基本】功能選項(xiàng)卡中,打開(kāi)【ABB模型庫(kù)】,選擇【IRB2600】。 3、設(shè)定好數(shù)值,然后單擊【確認(rèn)】。 4、在【基本】功能選項(xiàng)里,打開(kāi)【導(dǎo)入模型庫(kù)】—【設(shè)備】,選擇【myTool】。 5、右

    2023年04月08日
    瀏覽(645)
  • 世界坐標(biāo)系、相機(jī)坐標(biāo)系和圖像坐標(biāo)系的轉(zhuǎn)換

    世界坐標(biāo)系、相機(jī)坐標(biāo)系和圖像坐標(biāo)系的轉(zhuǎn)換

    之前只是停留在會(huì)用的階段,一直沒(méi)去讀懂計(jì)算的原理,今天通讀了大佬的文章,寫(xiě)的言簡(jiǎn)意賅,感謝感謝~~特此記錄一下,僅用作個(gè)人筆記 貼鏈接,十分感謝~ https://blog.csdn.net/weixin_44278406/article/details/112986651 https://blog.csdn.net/guyuealian/article/details/104184551 將三維物體轉(zhuǎn)換成照

    2023年04月15日
    瀏覽(34)

覺(jué)得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請(qǐng)作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包