ros定义自己的消息类型

创建目录参考网上教程
https://blog.csdn.net/u013453604/article/details/72903398

cd catkin_ws/src
catkin_create_pkg test_msgs

因为本次工程vins-mono-master在catkin_ws/src所以
cd catkin_ws/src/vins-mono-master
catkin_create_pkg mymsg(可以自己命名文件名字)建好后会有cmaketxt和xml,与2对应

  1. 代码文件在src/vins-mono-master/

2.建立自己的消息,在src/vins-mono-master中create一个文件夹,自己命名为name1,建好后里面会有cmake.txt和xml文件,
然后在src/vins-mono-master/name1下建立msg文件,必须命名msg,里面建立自己的消息文件,这里建立了三个消息,
其中Ins.msg消息依赖另外两个,所以在src/vins-mono-master/name1下的cmakelist.txt中,ins放在最后面,如下
cmakelist怎么写参考网上
add_message_files(
FILES
LinearVelocity.msg
EulerAngles.msg
Ins.msg
)

3.在src/vins-mono-master/name1/下进行mkdir build,cmake ,make常规操作

4.在其他节点添加自己定义的消息,否则会找不到头文件,以vins_estimator节点为例,要使用我们在src/vins-mono-master/name1下定义的节点信息,需要在Vin estimator/cmakelist.txt添加如下语句
add_dependencies(vins_estimator name1) 在我们工程中,具体为add_dependencies(vins_estimator mymsg)

5.在使用时,#include<name1/msgname.h> 这里以ins为例#include<mymsg/Ins.h>
消息类型mymsg::Ins 例如queuemymsg::Ins imu_buf;

6.在src上一层进行catkin_make编译,工程就编译好了

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述
文件为Ins.msg

在这里插入图片描述

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章