激光SLAM建图过程中的问题MessageFilter [target=odom_combined ]:Dropped 100.00% of messages so far.,解决方案
最近在和師弟用kobuki底盤進行SLAM建圖的過程中遇到一個比較棘手的問題,一直沒有解決,直到今天我在仿真環境中也碰到了
[ WARN] [1618301922.711685031, 2351.764000000]: MessageFilter [target=odom_combined ]: Dropped 100.00% of messages so far. Please turn the [ros.slam_karto.message_filter] rosconsole logger to DEBUG for more information.
經過一系列的嘗試和查資料發現產生該錯誤的原因是tf轉換不正確導致的
首先通過命令
rosrun rqt_tf_tree rqt_tf_tree查看一下tf樹是否連接正確
這里發現base_link并沒有指向對應的雷達坐標,因此需要發布一個靜態的tf轉換
rosrun tf static_transform_publisher 0.20 0 0 0 0 0 base_link laser 50再次查看tf樹,發現雷達坐標已經加入到tf樹中?
但是,如此之后建圖的錯誤依舊存在,那么關鍵的地方來了!!!!!
查看一下建圖所需話題的tf名稱是否對應正確!!!
我這里是因為雷達tf名稱對應不正確,之前通常情況下雷達tf是laser,所以形成了定型思維,下面說一下如何正確修改
rostopic echo /scan會輸出frame_id:base_scan,與上面的雷達tf名稱是不一樣的,所以需要將靜態tf中的laser改成base_scan
rosrun tf static_transform_publisher 0.20 0 0 0 0 0 base_link base_scan 50重新運行gmapping或karto即可
總結
以上是生活随笔為你收集整理的激光SLAM建图过程中的问题MessageFilter [target=odom_combined ]:Dropped 100.00% of messages so far.,解决方案的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 猜数字大小游戏
- 下一篇: 陈阳,她离开微软,投身开源10年!只管热