ROS的发布者
在python语言中,ROS发布者定义格式如下:
pub1 = rospy.Publisher(“/topic_name”, message_type, queue_size=size)
/topic_name表示发布者向这个topic发布消息。message_type表示发布到话题中消息的类型。
ROS 发布既可以同步也可以异步发送:
同步:意味着发布者试图向一个话题发布消息,但是会发生阻塞,如果该话题被另一个发布者发布消息。在这种情况下,第二个发布者被阻塞直到第一个发布者连续发布所有消息到缓存并且写到各个话题的订阅者。默认情况下,queue_size参数没有使用或者设置为None,rospy.Publisher默认以同步发送消息。
异步:意味着发布者可以存储消息直到消息可以发送。如果发布的消息超过队列大小,最早的消息将被丢弃。队列大小通过queue_size参数设置。
一旦发布者按照以上方式创建后,一条特定数据类型的message将通过下面的指令发布:
pub1.publish(message)