ros1学习之发布订阅
简单的发布订阅std_msg string
实现流程:如下
发布流程
实现流程:
1.导包
2.初始化 ROS 节点:命名(唯一)
3.实例化 发布者 对象
4.组织被发布的数据,并编写逻辑发布数据
订阅流程
实现流程:
1.导包
2.初始化 ROS 节点:命名(唯一)
3.实例化 订阅者 对象
4.处理订阅的消息(回调函数)
5.设置循环调用回调函数
代码部分:
发布方实现
#! /usr/bin/env python
import rospy
from std_msgs.msg import String
if __name__ == "__main__":
rospy.init_node("sandai") #初始化节点
pub = rospy.Publisher("che",String,queue_size=10) #发布
#发布逻辑
# 1、创建数据
msg = String()
rate = rospy.Rate(1) 设置频率1s/次
count = 0
# 2、循环发布数据
while not rospy.is_shutdown():
count+=1
msg.data = "hello" + str(count) #创建数据
pub.publish(msg)
rospy.loginfo("发布的数据:%s",msg.data)
rate.sleep()
订阅方实现:
#! /usr/bin