ROS学习(四)如何编写一个可以同时订阅和发布主题的订阅者节点

        有时在运行订阅者节点时希望该节点在接收到话题消息之后,能够将经过相应处理的消息发布给其他节点,这样就要求订阅者节点具备同时发送和接收消息的能力.

  下面将编写一个用于解析CAN报文的功能包,其中的一个订阅者节点在解析完订阅到的CAN报文之后会将解析的内容发布出去.

功能包(can_analysis_topic)的package.xml文件:


功能包(can_analysis_topic)的CMakeLists.txt文件:


功能包(can_analysis_topic)的msg文件:

Control.msg文件


Frame.msg文件


扫描二维码关注公众号,回复: 1649973 查看本文章

功能包(can_analysis_topic)的发布者节点can_topic_publisher代码:

它负责将报文的ID和数据发布出去


功能包(can_analysis_topic)的订阅者节点can_topic_subscriber代码:

它负责将订阅到的CAN报文进行解析并将解析内容发布出去





功能包(can_analysis_topic)的测试节点can_topic_test代码:

这个节点主要用来测试can_topic_subscriber节点能否将报文解析内容成功发布出来


实验结果如下:

运行can_topic_publisher


运行can_topic_subscriber


运行can_topic_test


猜你喜欢

转载自blog.csdn.net/dengxiong_bright/article/details/80683638