1、创建消息
英文网页:http://wiki.ros.org/ROS/Tutorials/CreatingMsgAndSrv
msg是一个文本文档,包括前缀和数据类型,前缀:
Header header 头,时间戳和所在坐标系 string child_frame_id 子坐标系(还没搞明白)每行一个数据类型,数据类型可以是:
- int8, int16, int32, int64 (plus uint*)
- float32, float64
- string 字符串
- time, duration 时间
- other msg files 其他封装消息
- variable-length array[] and fixed-length array[C] 动态数组和静态数组
(1)创建消息文件
工程中,创建msg/Student.msg
写入:
- string name
- uint8 age
- uint32 score
CMakelists.txt中添加
rosbuild_genmsg()用于生成Student.h文件
查看:rosmsg show Student
(1)初始化ros系统
(2)广播消息
- ros::Publisher chatter_pub = n.advertise<beginner_tutorials::Student>("chatter", 1000);//发布的消息类型,topic名称,缓存的消息数
(3)填充消息数据,指定频率发布
- msg.data = ss.str();//填充消息内容