ROS常用库(三)API学习之常用common_msgs(上)
一、概述
common_msgs包含其他ROS软件包广泛使用的消息。这些消息包括动作消息(actionlib_msgs),诊断消息(diagnostic_msgs),几何图元(geometry_msgs),机器人导航(nav_msgs)和常用传感器(sensor_msgs),例如激光测距仪,照相机,点云。
以下仅列举较常用的msgs。
二、actionlib_msgs
消息类型:actionlib_msgs/GoalID.msg 包括
time stamp
string id
actionlib_msgs/GoalStatus.msg
uint8 PENDING = # server端尚未处理的goal
uint8 ACTIVE = # server端正在处理的goal
uint8 PREEMPTED = # goal 在开始执行后收到取消请求
uint8 SUCCEEDED = # goal 被 server端成功发送
uint8 ABORTED = # goal 无法实现
uint8 REJECTED = # goal 未经处理就被拒绝
uint8 PREEMPTING = # goal执行后收到取消请求
uint8 RECALLING = # goal 在执行前被取消,但是 action 未确认goal被取消
uint8 RECALLED = # goal在执行前被成功取消
uint8 LOST = # client判断goal丢失而非server判断
GoalID goal_id
uint8 status
string text
二、geometry_msgs
1、geometry_msgs/Pose.msg位姿
Point position
Quaternion orientation
2、geometry_msgs/Pose2D.msg更推荐使用3D
float64 x
float64 y
float64 theta
3、geometry_msgs/PoseArray.msg位姿数组
std_msgs/Header header
geometry_msgs/Pose[] poses
4、geometry_msgs/Quaternion.msg四元数
float64 x
float64 y
float64 z
float64 w
5、geometry_msgs/Transform.msg坐标转换
geometry_msgs/Vector3 translation
geometry_msgs/Quaternion rotation
6、geometry_msgs/Twist.msg 线速度和角速度
geometry_msgs/Vector3 linear
geometry_msgs/Vector3 angular
7、geometry_msgs/Vector3.msg向量,类似于提供一个模板,如用于表示位置
float64 x
float64 y
float64 z
8、geometry_msgs/Wrench.msg 不常见,但是可能会被用来考虑动力学的约束
geometry_msgs/Vector3 force #力
geometry_msgs/Vector3 torque #力矩
三、nav_msgs
1、nav_msgs / GridCells.msg 二维栅格
std_msgs/Header header
float32 cell_width
float32 cell_height
geometry_msgs/Point[] cells
2、nav_msgs/GetMap.srv 栅格地图
nav_msgs/OccupancyGrid map
3、nav_msgs/MapMetaData.msg 地图分辨率、长宽、初始点
time map_load_time
float32 resolution
uint32 width
uint32 height
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 栅格地图信息
std_msgs/Header header
nav_msgs/MapMetaData info
int8[] data
6、 nav_msgs/SetMap.srv 地图初始位姿
nav_msgs/OccupancyGrid map
geometry_msgs/PoseWithCovarianceStamped initial_pose
---
bool success
7、nav_msgs/Odometry.msg 位姿和线速度角速度
std_msgs/Header header #pose是header.frame_id声明的
string child_frame_id #twist是 child_frame_id声明的
geometry_msgs/PoseWithCovariance pose
geometry_msgs/TwistWithCovariance twist
8、nav_msgs/Path.msg 路径,其实是很多姿态组成的数组
std_msgs/Header header
geometry_msgs/PoseStamped[] poses
四、结语
常用传感器的sensor_msgs放在(下)讲。
ROS常用库(三)API学习之常用common_msgs(上)的更多相关文章
- ROS常用库(四)API学习之常用common_msgs(下)
一.前言 承接ROS常用库(三)API学习之常用common_msgs(上). 二.sensor_msgs 1.sensor_msgs / BatteryState.msg #电源状态 uint8 P ...
- 《ORACLE数据库管理与开发》第三章学习之常用函数记录
<ORACLE数据库管理与开发>第三章学习之常用函数记录 注:文章中的*代表所要操作的列名 1.lower(*)/upper(*),将此列下的值转为小写/大写 2.initcap(*):把 ...
- Servlet 常用API学习(三)
Servlet常用API学习 (三) 一.HTTPServletRequest简介 Servlet API 中定义的 ServletRequest 接口类用于封装请求消息. HttpServletRe ...
- IOS学习:常用第三方库(GDataXMLNode:xml解析库)
IOS学习:常用第三方库(GDataXMLNode:xml解析库) 解析 XML 通常有两种方式,DOM 和 SAX: DOM解析XML时,读入整个XML文档并构建一个驻留内存的树结构(节点树),通过 ...
- Servlet 常用API学习(二)
Servlet常用API学习 一.HTTP简介 WEB浏览器与WEB服务器之间的一问一答的交互过程必须遵循一定的规则,这个规则就是HTTP协议. HTTP是 hypertext transfer pr ...
- Servlet 常用API学习(一)
Servlet常用API学习 一.Servlet体系结构(图片来自百度图片) 二.ServletConfig接口 Servlet在有些情况下可能需要访问Servlet容器或借助Servlet容器访问外 ...
- Python爬虫学习==>第五章:爬虫常用库的安装
学习目的: 爬虫有请求库(request.selenium).解析库.存储库(MongoDB.Redis).工具库,此节学习安装常用库的安装 正式步骤 Step1:urllib和re库 这两个库在安装 ...
- Swing学习篇 API [一]Swing常用组件
1.按钮(Jbutton) Swing中的按钮是Jbutton,它是javax.swing.AbstracButton类的子类,swing中的按钮可以显示图像,并且可以将按钮设置为窗口的默认图标,而且 ...
- robotframework的学习笔记(十三)------Robot Framework常用库简介
标准库 Robot Framework可以直接导入使用的库,包括: Builtin:包含经常需要的关键字.自动导入无需import,因此总是可用的 Dialogs:提供了暂停测试执行和从用户的输入方式 ...
随机推荐
- 「SDOI2005」区间
「SDOI2005」区间 传送门 记录每一个位置作为左端点和右端点的出现次数,然后直接考虑差分即可. 参考代码: #include <cstdio> #define rg register ...
- 前端面试:js数据类型
js数据类型是js中的基础知识点,也是前端面试中一定会被考察的内容.本文旨在知识的梳理和总结,希望读者通过阅读本文,能够对这一块知识有更清晰的认识.文中如果出现错误,请在评论区指出,谢谢. js数据类 ...
- 关于热部署Devtools出现同一个类型进行类型转换失败的问题
背景: 最近在和学长们做一个小系统,在进行任务调度的设置的时候会出现类型转换失败的错误,原本是同一个类型的,不应该出现类型转换失败的问题,起初以为是序列化的问题,回来发现并不是这个原因, 报错截图: ...
- Caffe2 创建你的专属数据集(Create Your Own Dataset)[9]
这一节尝试把你的数据转换成caffe2能够使用的形式.这个教程使用Iris的数据集.你可以点击这里查看Ipython Notebook教程. DB数据格式 Caffe2使用二进制的DB格式来保存数据. ...
- python学习笔记(3) -- 字符与数字之间的转换函数
转载:python中的字符数字之间的转换函数 int(x [,base ]) 将x转换为一个整数 long(x [,base ]) 将x转换为一个长整数 ...
- [NOI 2005]瑰丽华尔兹
Description 题库链接 给你一张 \(n\times m\) 的棋盘,棋盘上有一些障碍.一共 \(t\) 个时刻,被分为 \(k\) 段,在每一段中都有一个向上/下/左/右倾斜的趋势(持续时 ...
- 调用天气预报webservice接口
1.将 服务端的wsdl文档保存至 本地 http://ws.webxml.com.cn/WebServices/WeatherWS.asmx?WSDL 2.将里面的 <s:element re ...
- Lamda表达式学习笔记一
Lamda表达式学习笔记一 一.Lamda语法诠释 三傻大闹宝莱坞的主人公兰彻说的一句话让我映像深刻:用简单的语言来表达同样的意 我并不是说书上的定义怎么怎么不对,而是应该理解书本上的定义,并用简单的 ...
- (转)jquery.validate插件的使用
JQuery Validate使用总结:一.导入js库<script src="../js/jquery.js" type="text/javascript&quo ...
- 新建Django 项目完整流程
1) 在桌面或者其他文件 新建项目名称 (mkdir 新建文件夹) 2)进入文件夹 pipenv --python3(用命令提示粘贴复制, 自己这样写经常有问题) 3) 启动虚拟环境 pipenv ...