• ROS 2


    1. 机器人是一种高度复杂的系统性实现,在机器人上可能集成各种传感器(雷达,摄像头,GPS等)。ROS是进程分布式框架,从而分散计算压力,然而不同的进程之间需要通信(数据交换)

    2. ROS中的基本通信机制主要有三种实现策略

    a) 话题通信(发布订阅模式)

    发布、订阅双方通过话题关联起来。发布方发布话题相关内容;订阅方接收话题相关内容

    b) 服务通信(请求响应模式)

    client发送请求,server做出响应
    c) 参数服务器(参数共享模式)

    data存储在参数服务器中,节点可以向其中存储或读取节点

    3. 话题通信

    使用频率最高;用于不断更新的,逻辑处理量少的数据传输场景

    分为master,talker,listener

    master可以根据话题建立发布者和订阅者之间的连接

    a) talker在master中进行注册,提供远程调用地址及话题

    b)listener在master中进行注册,提供关注的话题

    c)master将talker以及listener的话题进行比对,一致则将talker的RPC地址发给listener

    d)listener根据RPC地址远程访问talker

    e)talker做出响应,返还TCP地址

    f)listener根据TCP地址访问talker

    g) talker传输数据

    # 使用的协议为RCP及TCP(前5个为RCP,后两个为TCP)

    a、b步骤可以互换

    talker与listener都可以存在多个

    talker与listener建立联系后,manager可以关闭

    上述流程已经封装,可以直接调用,我们需要关注话题设置,listener实现以及信息载体

  • 相关阅读:
    javaIO流--Writer,Reader
    javaIO操作之字节输入流--InputStream
    javaIO操作之字节输出流--OutputStream
    java中IO操作
    java中的方法引用
    java中lamda表达式的应用
    java8接口定义增强
    java中的强大的枚举(基本没人用)
    java中的泛型
    详述 IntelliJ IDEA 远程调试 Tomcat 的方法
  • 原文地址:https://www.cnblogs.com/eleni/p/16355577.html
Copyright © 2020-2023  润新知