ROS中 Navigation包

  • Post author:
  • Post category:其他


ROS Navigation包的理解:

https://blog.csdn.net/qq91752728/article/details/79863677

1、costMap

整个代价地图中,我们都会给每一个格子分配一个值,取值为下列几个

255 代表 未知区域

254 代表 障碍物

253 代表 小车会和障碍物冲突

128 代表 小车可能会冲突也可能不会,根据朝向决定

0 – 128 代表 不冲突

2、机器人的里程计信息:

rosmsg show nav_msgs/Odometry

std_msgs/Header header

uint32 seq  //消息序列序号

time stamp  //时间戳

string frame_id  //坐标系

string child_frame_id

geometry_msgs/PoseWithCovariance pose

geometry_msgs/Pose pose

geometry_msgs/Point position  //XYZ位置信息

float64 x

float64 y

float64 z

geometry_msgs/Quaternion orientation  //以四元素形式描述的姿态位置

float64 x

float64 y

float64 z

float64 w

float64[36] covariance  //协方差矩阵,作里程计的位置估算,kf计算的时候会用到

geometry_msgs/TwistWithCovariance twist

geometry_msgs/Twist twist

geometry_msgs/Vector3 linear  //线速度信息

float64 x

float64 y

float64 z

geometry_msgs/Vector3 angular  //角速度信息

float64 x

float64 y

float64 z

float64[36] covariance

3、ROS系统里的坐标系方向:

4、move_base包:

全局路径规划(global planer)

——》使用Dijkstra方法和A*方法。

——》作用:实现全局最优路径规划

本地实时规划(local planer)

——》Trajectory  Rollout和Dynamic Window Approaches方法

——》作用:实时避障



版权声明:本文为qq_29230261原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。