一、发布者Publisher的python实现
step1:在scripts文件夹中创建py节点
step2:第一行是为了指定解释器,Ubuntu20.04是python3,比他低的版本是python。第二行是为了指定编码方式。第五行中,引用index.ros.org中数据类型的头文件的方式,与C++不一样。第十行,第二个参数是发布的消息类型。
step3:给这个脚本文件添加可执行权限。
step4:保存好之后就可以运行啦。python文件不需要编译,直接是可执行文件。 先启动roscore,再source一下,然后直接运行。
step5:同理,添加另一个发布者节点。
总结:
二、订阅者Subscriber的python实现
step1:在scripts文件夹中创建py节点
step2:rospy.spin函数,是让这个节点保持运行状态,等待消息包的到来。
step3:给这个脚本文件添加可执行权限。
step4:运行
三、使用launch文件同时启动多个节点
step1:创建launch文件夹,在里面创建一个xx.launch文件。
step2:第二个参数type,在C++节点是编译后的二进制文件,不带.cpp后缀,Python节点是直接运行的代码文件,需要写上.py后缀。
为了让订阅者节点单独运行在一个窗口,需要在其后面加上其他参数:
step3:运行