3.7 创建 ROS 消息和服务

本文档详细介绍了如何在 ROS 中创建和编译消息和服务文件。内容包括消息和服务文件的结构,创建自定义消息和服务的步骤,以及编译过程中涉及的 package.xml 和 CMakeLists.txt 文件的修改。示例中展示了创建一个包含整型字段的消息文件 Num.msg 和一个名为 AddTwoInts.srv 的服务文件,服务包括请求和响应两个部分。编译完成后,可以通过 ROS 的消息查看命令检查自定义消息和服务是否成功创建。
摘要由CSDN通过智能技术生成

 本节我们主要介绍如何创建和编译消息和服务文件,以及与之相关的命令行工具。

3.7.1 消息和服务文件

   消息文件是用来描述 ROS 中消息字段的简单的文本文件,一般存放在一个功能包目录下的 msg 目录中。消息文件每行都有一个字段类型和字段名称,可以使用的字段类型有:

  • int8, int16, int32, int64 (plus uint*)
  • float32, float64
  • string
  • time, duration
  • other msg files
  • variable-length array[] and fixed-length array[C]
    此外在 ROS 中还有一个特殊类型 Header ,Header中包含了时间戳和在 ROS 中常用的坐标系信息,今后的开发工作中会经常遇到消息文件中的第一行具有Hearder这个字段。以下为一个消息文件的示例:
  Header header
  string child_frame_id
  geometry_msgs/PoseWithCovariance pose
  geometry_msgs/TwistWithCovariance twist

   服务文件和消息文件相似,,一般存放在一个功能包目录下的 srv 目录中,但是服务文件包含两部分内容:请求和响应。这两部分内容被分隔符“—”分开,以下为一个服务的示例,其中 A 和 B 是请求, Sum 是响应:

int64 A
int64 B
---
int64 Sum

3.7.2 创建消息

   ROS中有很多类似 String 这样的预定义的消息类型&

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值