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() 
  • 相关阅读:
    正则表达式
    git指令
    前端测试 Jest/(Mocha) Typescript/Javascript Vueunitstest
    mpvue使用wxcharts.js显示各类图表
    css margintop 失效
    reduce 黑科技
    vue cli 项目创建
    css实现垂直水平居中
    MySQL基础教程之存储过程
    4组Alpha冲刺2/6
  • 原文地址:https://www.cnblogs.com/miaorn/p/11743607.html
Copyright © 2011-2022 走看看