ROS话题通信自定义msg

本文介绍了如何在ROS中创建自定义消息类型,以适应复杂数据传输需求,如激光雷达信息。通过定义一个名为criminal的msg文件,包含犯人的姓名、身高、年龄和犯罪内容等信息。详细步骤包括创建msg文件、编辑package.xml和CMakeLists.txt以配置编译和运行依赖,以及编译生成可被Python或C++使用的中间文件。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

ROS话题通信自定义msg

在ROS通信协议中,数据载体是比较重要的组成部分,ROS中通过封装了一些原生的数据类型,比如String、Int32等等,但是这些数据只包含了一个data字段,如果需要传输一些复杂的数据,比如:激光雷达的信息,这种场景下可以使用自定义的消息类型,msgs只是简单的文本文件,每行具有字段类型和字段名称,可以使用的字段类型有:
int8, int16, int32, int64 (或者无符号类型: uint*)
float32, float64
string
time, duration
other msg files
variable-length array[] and fixed-length array[C]
ROS中还有一种特殊类型:Header,标头包含时间戳和ROS中常用的坐标帧信息。
需求:创建自定义消息,该消息包含犯人的信息:姓名、身高、年龄、犯罪内容等。
流程:

①按照固定格式创建msg文件
②编辑配置文件,包括package.xml和CMakeLists.txt两个文件的配置
③编译生成可以被Python或C++调用的中间文件

1、定义msg文件
功能包下新建msg目录,添加文件criminal.msg

string name
uint16 age
float64 height 

2、编辑配置文件
package.xml中添加编译依赖于执行依赖

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值