5. 话题通信 ---- 发布方和订阅方python文件编写
本节对应赵虚左ROS书籍的2.1.3
以10hz,发布消息和消息的订阅
1)在功能包下新建scripts文件夹,在scripts文件夹下新建python文件,写入
#! /usr/bin/env pythonfrom std_msgs.msg import String
import rospyif __name__ == "__main__":rospy.init_node("talker_p")pub =rospy.Publisher("chatter",String,queue_size=100)msg=String()msg_front ="你好,hello"count = 0rate = rospy.Rate(10)while not rospy.is_shutdown():msg.data=msg_front+str(count)pub.publish(msg)rospy.loginfo("发送数据为:%s",msg.data)rate.sleep()count += 1
2) 订阅方的python文件写入:
#! /usr/bin/env pythonfrom std_msgs.msg import String
import rospy
def doMsg(msg):rospy.loginfo("我接受::::%s",msg.data)
if __name__ =="__main__":rospy.init_node("listener_p")sub =rospy.Subscriber("chatter",String,doMsg,queue_size=100)rospy.spin()
2)修改CMakeLists.txt 162行
3)运行rosrun
rosrun <包名> <python名>