ROS订阅自定义消息
2018-02-08 17:24
274 查看
ROS下经常使用自定义消息,网上很多关于自定义消息的创建发布和订阅接收的文章,但是基本都是同一包内的消息传递,于是决定写一篇关于不同包之间的消息订阅的文章,也方便自己回来查找资料,本文参考了这篇博客的内容并根据个人情况做出了修改:http://blog.csdn.net/u013453604/article/details/72903398 关于同一节点内的消息订阅本文就不做分析了,网上也有不少。关于订阅不同包的消息,假设你已经创建好一个包,而且已经能订阅发布了,则你创建的新包在编译前需要修改两个文件: 1.修改package.xml 与原文不同,增加的依赖项的关键字有点不同,我这里使用的是<exec_depend>,而原文使用的是<run_depend>。应该是我们使用的版本不同,其中custom_pack_name需要修改成发布消息的包名称。<build_depend>roscpp</build_depend>
<exec_depend>roscpp</exec_depend>
<build_depend>custom_pack_name</build_depend>
<exec_depend>custom_pack_name</exec_depend>
2.修改CMakeLists.txt
在find_package中添加声明,其中publish_pack_name为发布消息的包的名称;
以及在文件中注明依赖避免编译出错,其中new_pack_name为需要订阅消息的包名。find_package(catkin REQUIRED COMPONENTS
roscpp
rospy
publish_pack_name
)
add_dependencies(new_pack_name publish_pack_name_generate_messages_cpp)
写的比较简单,觉得写不够好的小伙伴请见谅!
参考链接:http://blog.csdn.net/u013453604/article/details/72903398
<exec_depend>roscpp</exec_depend>
<build_depend>custom_pack_name</build_depend>
<exec_depend>custom_pack_name</exec_depend>
2.修改CMakeLists.txt
在find_package中添加声明,其中publish_pack_name为发布消息的包的名称;
以及在文件中注明依赖避免编译出错,其中new_pack_name为需要订阅消息的包名。find_package(catkin REQUIRED COMPONENTS
roscpp
rospy
publish_pack_name
)
add_dependencies(new_pack_name publish_pack_name_generate_messages_cpp)
写的比较简单,觉得写不够好的小伙伴请见谅!
参考链接:http://blog.csdn.net/u013453604/article/details/72903398
相关文章推荐
- 通过rosjava实现android订阅ROS自定义消息
- ROS学习笔记2 消息发布与订阅
- 创建ros自定义消息
- ros自定义动态消息发布(vector)
- ROS多线程订阅消息(ros::asyncspinner)
- ROS中订阅两个消息,发布一个数据。
- ROS教程(二十三):自定义消息
- ROS 基础: 在同一个节点里订阅和发布消息
- 【ROS学习】(五)ROS消息传递——自定义消息
- ROS---发送自定义消息,接收消息
- 我的ROS入门(五):总算搞通ROS的服务节点订阅发布消息话题了
- ROS多线程订阅消息(ros::asyncspinner)
- ROS下视频消息发布与订阅
- ROS总结——ROS消息发布和订阅
- ROS:三个节点相互传递消息,每个节点都可以同时发布和订阅主题
- ROS 自定义消息类型
- ros 参数服务器 消息发布和订阅 机器人避障
- ROS Learning-012 beginner_Tutorials (编程) 创建自定义的ROS消息和ROS服务
- ROS之msg文件定义以及自定义发布主题消息类型
- ROS Learning-012 beginner_Tutorials (编程) 创建自定义的ROS消息和ROS服务