zoukankan      html  css  js  c++  java
  • ROS之发布着订阅者协同工作

    前面博客显示了单个发布者和订阅者的情况

    现在在一个节点中可以拥有多个发布或订阅

    利用以前博客的代码,即在创建一个可以同时发布和订阅的节点,可以将接受到的数据加倍后在发布出去。

    该节点订阅发布连续整数的节点,然后将处理的数据发布给之前订阅连续整数节点的节点。需要将订阅话题的名字改成新建话题的名字

    #!/usr/bin/env python                                                             
     
    import rospy
     
    from std_msgs.msg import Int32
     
    rospy.init_node('doubler')
     
    def callback(msg):
        doubled = Int32()
        doubled.data = msg.data * 2 
     
        pub.publish(doubled)
     
    sub = rospy.Subscriber('number' , Int32 , callback)
    pub = rospy.Publisher('doubled' , Int32)
     
    rospy.spin()

    需要将订阅话题的名字改成新建话题的名字:

    #!/usr/bin/env python             
                                      
    import rospy                      
                                      
    from std_msgs.msg import Int32 
                                      
    def callback(msg):                
        print msg.data                
                                      
    rospy.init_node('topic_subscriber')
                                      
    sub = rospy.Subscriber('doubled',Int32,callback)       ##这一行订阅发布者的名字要改                           
                                      
    rospy.spin() 
  • 相关阅读:
    FZU Monthly-201906 tutorial
    FZU Monthly-201906 获奖名单
    FZU Monthly-201905 tutorial
    BZOJ1009 GT考试
    BZOJ2428 均分数据
    模拟退火
    BZOJ3680 吊打XXX
    BZOJ4818 序列计数
    BZOJ4103 异或运算
    BZOJ3512 DZY Loves Math IV
  • 原文地址:https://www.cnblogs.com/miaorn/p/11743607.html
Copyright © 2011-2022 走看看