一、概述
common_msgs包含其他ROS软件包广泛使用的消息。这些消息包括动作消息(actionlib_msgs),诊断消息(diagnostic_msgs),几何图元(geometry_msgs),机器人导航(nav_msgs)和常用传感器(sensor_msgs),例如激光测距仪,照相机,点云。
以下仅列举较常用的msgs。
二、actionlib_msgs
消息类型:actionlib_msgs/GoalID.msg 包括
1 time stamp 2 string id
actionlib_msgs/GoalStatus.msg
1 uint8 PENDING = 0 # server端尚未处理的goal 2 uint8 ACTIVE = 1 # server端正在处理的goal 3 uint8 PREEMPTED = 2 # goal 在开始执行后收到取消请求 4 uint8 SUCCEEDED = 3 # goal 被 server端成功发送 5 uint8 ABORTED = 4 # goal 无法实现 6 uint8 REJECTED = 5 # goal 未经处理就被拒绝 7 uint8 PREEMPTING = 6 # goal执行后收到取消请求 8 uint8 RECALLING = 7 # goal 在执行前被取消,但是 action 未确认goal被取消 9 uint8 RECALLED = 8 # goal在执行前被成功取消 10 uint8 LOST = 9 # client判断goal丢失而非server判断 11 GoalID goal_id 12 uint8 status 13 string text
二、geometry_msgs
1、geometry_msgs/Pose.msg位姿
1 Point position 2 Quaternion orientation
2、geometry_msgs/Pose2D.msg更推荐使用3D
1 float64 x 2 float64 y 3 float64 theta
3、geometry_msgs/PoseArray.msg位姿数组
1 std_msgs/Header header 2 geometry_msgs/Pose[] poses
4、geometry_msgs/Quaternion.msg四元数
1 float64 x 2 float64 y 3 float64 z 4 float64 w
5、geometry_msgs/Transform.msg坐标转换
1 geometry_msgs/Vector3 translation 2 geometry_msgs/Quaternion rotation
6、geometry_msgs/Twist.msg 线速度和角速度
1 geometry_msgs/Vector3 linear 2 geometry_msgs/Vector3 angular
7、geometry_msgs/Vector3.msg向量,类似于提供一个模板,如用于表示位置
1 float64 x 2 float64 y 3 float64 z
8、geometry_msgs/Wrench.msg 不常见,但是可能会被用来考虑动力学的约束
1 geometry_msgs/Vector3 force #力 2 geometry_msgs/Vector3 torque #力矩
三、nav_msgs
1、nav_msgs / GridCells.msg 二维栅格
1 std_msgs/Header header 2 float32 cell_width 3 float32 cell_height 4 geometry_msgs/Point[] cells
2、nav_msgs/GetMap.srv 栅格地图
1 nav_msgs/OccupancyGrid map
3、nav_msgs/MapMetaData.msg 地图分辨率、长宽、初始点
1 time map_load_time 2 float32 resolution 3 uint32 width 4 uint32 height 5 geometry_msgs/Pose origin
4、nav_msgs/GetPlan.srv 上为请求,下为响应
geometry_msgs/PoseStamped start起始位姿 geometry_msgs/PoseStamped goal目标位姿 float32 tolerance如果目标被遮挡,可以容忍多少约束 --- nav_msgs/Path plan
5、nav_msgs/OccupancyGrid.msg 栅格地图信息
1 std_msgs/Header header 2 nav_msgs/MapMetaData info 3 int8[] data
6、 nav_msgs/SetMap.srv 地图初始位姿
1 nav_msgs/OccupancyGrid map 2 geometry_msgs/PoseWithCovarianceStamped initial_pose
--- 3 bool success
7、nav_msgs/Odometry.msg 位姿和线速度角速度
1 std_msgs/Header header #pose是header.frame_id声明的 2 string child_frame_id #twist是 child_frame_id声明的
3 geometry_msgs/PoseWithCovariance pose
4 geometry_msgs/TwistWithCovariance twist
8、nav_msgs/Path.msg 路径,其实是很多姿态组成的数组
std_msgs/Header header
geometry_msgs/PoseStamped[] poses
四、结语
常用传感器的sensor_msgs放在(下)讲。