zoukankan      html  css  js  c++  java
  • 理解ros服务和参数 ---- 7

    原创博客:转载请表明出处:http://www.cnblogs.com/zxouxuewei/  周学伟

     Description: 本教程介绍了ROS 服务和参数的知识,以及命令行工具rosservicerosparam的使用方法。

    本教程假设从前一教程启动的turtlesim_node仍在运行,现在我们来看看turtlesim提供了什么服务:

    一。ROS Services

    服务(services)是节点之间通讯的另一种方式。服务允许节点发送请求(request) 并获得一个响应(response)。

    二。使用rosservice

    rosservice可以很轻松的使用 ROS 客户端/服务器框架提供的服务。rosservice提供了很多可以在topic上使用的命令,如下所示:。

    使用方法:

    rosservice list         输出可用服务的信息
    rosservice call         调用带参数的服务
    rosservice type         输出服务类型
    rosservice find         依据类型寻找服务find services by service type
    rosservice uri          输出服务的ROSRPC uri
    1.rosservice list
    root@zxwubuntu-Aspire-V3-572G:~# rosservice list
    
    
    list 命令显示turtlesim节点提供了9个服务:重置(reset), 清除(clear), 再生(spawn), 终止(kill),
     turtle1/set_pen, 
     /turtle1/teleport_absolute, 
     /turtle1/teleport_relative,
     turtlesim/get_loggers, 
     turtlesim/set_logger_level. 
    
    同时还有另外两个rosout节点提供的服务: /rosout/get_loggers and /rosout/set_logger_level.
    2.rosservice type
    使用:rosservice type [service] 
    我们来看看clear服务的类型:
    root@zxwubuntu-Aspire-V3-572G:~# rosservice type clear
    
    std_srvs/Empty
    服务的类型为空(empty),这表明在调用这个服务是不需要参数(比如,请求不需要发送数据,响应也没有数据)。下面我们使用rosservice call命令调用服务: 

    3.rosservice call
    使用:rosservice call [service] [args]
    因为服务类型是空,所以进行无参数调用:
    root@zxwubuntu-Aspire-V3-572G:~# rosservice call clear
    
    
    正如我们所期待的,服务清除了turtlesim_node的背景上的轨迹。
    通过查看再生(spawn)服务的信息,我们来了解带参数的服务:
    $ rosservice type spawn| rossrv show
    
        float32 x
        float32 y
        float32 theta
        string name
        ---
        string name
    
    
    
    这个服务使得我们可以在给定的位置和角度生成一只新的乌龟。名字参数是可选的,这里我们不设具体的名字,让turtlesim自动创建一个




  • 相关阅读:
    discuz_ucenter_api_for_java的中文问题
    java的编码问题详解
    java的泛型的技巧
    向maven中央仓库提交jar
    Java并发之FutureTask
    java并发之Semaphore
    centos中JDK版本冲突的问题
    C++中嵌入Python
    boost::python的使用
    c++调用python引号的问题
  • 原文地址:https://www.cnblogs.com/zxouxuewei/p/5180579.html
Copyright © 2011-2022 走看看