zoukankan      html  css  js  c++  java
  • ROS topic,service和action的使用场景

    参考:ROS中关于topic和service的运用场合

    Topics

    特点:

    1.单向,分工明确,处理连续数据流,topic是一种多对多的形式,一个Node可以订阅多个Topic,可以publish到多个topic上。
    2.topic中的数据只要准备好了,就可以被回调函数调用。而发送端的topic的发送时机由publisher自己决定。

    场景:

    1.连续

    比如收发传感器数据,收发控制指令

    Service

    特点:

    1.双向,有反馈
    2.往往不是固定频率发送,处理不连续数据,需要时才发送请求和处理

    场景:

    1.离散
    2.少量时间

    用于那些快速停止的程序,如查询一个node的状态,做数学运算,机械臂的运动学反解(action也可以)等。

    Actions

    特点:

    升级版service

    场景:

    1.离散
    2.需要反馈 / 状态跟踪
    3.需要花费大量时间
    4.运行过程中可以被中断(中断通常是靠Action server来实现)

    让小车前进一段时间,并在运行过程中提供反馈。比如《ROS by Example》书中想让小车走1米,运行过程中需要不断检测是否走了1米,走到了就中断它,让它停下来。

    即使在同一个Action Server上运行不同的两个action goal, 它们的状态也能够利用各自的ID被区分开来。像视觉处理等需要较多时间来启动或终止的程序也是利用action来实现的一个不错的例子。

    用Topic和Action能完成大部分操作

  • 相关阅读:
    hibernate中session的获取使用以及其他注意事项
    博文收集
    struts1标签-<html:radio> 使用注意事项
    HTTP 状态码含义
    基于eclipse搭建android开发环境-win7 32bit
    MySQL数据库之数据类型
    mysql数据库之基本增删改查
    mysql数据库之表的操作
    协程(单线程实现并发)
    线程
  • 原文地址:https://www.cnblogs.com/j-c-y/p/11199919.html
Copyright © 2011-2022 走看看