我是靠谱客的博主 无语含羞草,最近开发中收集的这篇文章主要介绍SLAM——入门到放弃:ROS里程计(odometry),觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

在这里插入图片描述
ROS gmapping导航包,要求有2 个 输入,一个是激光数据,另一个就是里程计信息。
里程计又包含2 个方面的信息:

  • 位姿(位置和转角),即(x,y,θ)
  • 是速度(前进速度和转向速度)。

gmapping订阅的是/scan 和/tf话题并不直接订阅里程计信息,自己写一个tf话题。

TF就是坐标系变换,具体要包括里程计坐标系(odom)到车体坐标系(base_link),车体坐标系到激光雷达坐标系(laser)的变换关系。具体如下图所示:.
在这里插入图片描述

里程计信息的数据获取的途径:

  • 采用编码器电机来获取
    参考

  • 采用ROS里的package : laser_scan_matcher
    这个包能根据/scan 数据发布2D位姿的数据,来转换成表示位置的下x,y, z 以及表示姿态的四元数。
    速度的获取:还是根据2D位姿和时间变量,来计算前进速度和转向速度。
    2D位姿数据包含:float64 x, float64 y, float64 theta,根据dt 时间里dx,dy,dtheta, 就可以算出前进速度,和转向速度。如果2D位姿数据足够精准,基本都用不上陀螺仪校准。

最后

以上就是无语含羞草为你收集整理的SLAM——入门到放弃:ROS里程计(odometry)的全部内容,希望文章能够帮你解决SLAM——入门到放弃:ROS里程计(odometry)所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(49)

评论列表共有 0 条评论

立即
投稿
返回
顶部