今天从古月居那儿学习了如何创建一个publisher。

一、创建一个功能包

在工作空间的src中打开终端,输入catkin_create_pkg来创建功能包

f713ef6d491f6dc13a9166ebf65eb41d.png

二、创建发布者代码

在功能包的src中创建文件——velocity_publisher.cpp。文件内容如下。

e046aa5f6f3933d2688a72f84ad83dc0.png

然后在CMakeLists中修改相关地方,格式可参考注释。

d67bd1873dee82991bfa449255608a38.png

三、编译

回到工作空间中,通过catkin_make编译代码。编译完成就代表新建立的节点生效了。

5620df3a2e4ab33e67abb8eb32de1407.png

四、测试

打开三个终端,分别输入roscore,rosrun turtlesim turtlesim_node,rosrun learning_topic velocity_publisher。

6142e7e9e6297fceaad41cbd25bfc641.png

五、用python实现

功能包内创建scripts文件夹用来存放python脚本,创建velocity_publisher.cpp的文件,里面的代码如下:

f84c48eedd3759ecdf52ff68d23a9e85.png

注意!!!打开文件的属性,勾选作为程序执行文件,然后编译

19f8d33058177f904f7621eae6c4f849.png
Logo

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。

更多推荐