ROS机器人程序设计(原书第2版)2.4.7 如何使用服务

简介:

2.4.7 如何使用服务

服务是能够使节点之间相互通信的另一种方法。服务允许节点发送请求和接收响应。

可以使用rosservice工具与服务进行交互。此命令接受的参数如下所示:

rosservice args/service 输出服务参数。

rosservice call/service 根据命令行参数调用服务。

rosservice find msg-type 根据服务类型查询服务。

rosservice info /service 输出服务信息。

rosservice list 列出活动服务清单。

rosservice type/service 输出服务类型。

rosservice uri/service 输出ROSRPC URI服务。

我们要使用以下命令列出在turtlesim节点运行时系统提供的服务。如果你运行了这个命令,却没有任何反应,那么请记住要先运行roscore并启动turtlesim节点:

 

你会获得以下输出:

 

如果你想查看某个服务的类型,例如/clear服务,请使用:

 

你会获得类似下面的输出:

 

若要调用服务,你需要使用rosservice call [service] [args]命令。所以如果想要调用/clear服务,请使用:

 

在turtlesim的窗口中,你会看到由小海龟移动产生的线条消失了。

现在我们尝试其他的服务,例如/spawn服务。这项服务将以不同的方向在另一个位置创建另一只小海龟。开始之前,我们要去查看以下类型的消息:

 

我们会获得以下参数:

 

前面的命令和下面的命令是相同的。如果你想知道为什么这些命令相同,可以在搜索引擎里搜索piping Linux:

 

你会看到如下类似的结果:

 

输入下面命令:

 

你会看到如下类似的结果:

 

通过这些字段,可以知道如何调用服务。我们需要新海龟位置的x和y、方向(theta)和新海龟的名称:

 

我们会获得右侧的结果:

相关实践学习
使用ROS创建VPC和VSwitch
本场景主要介绍如何利用阿里云资源编排服务,定义资源编排模板,实现自动化创建阿里云专有网络和交换机。
ROS入门实践
本课程将基于基础设施即代码 IaC 的理念,介绍阿里云自动化编排服务ROS的概念、功能和使用方式,并通过实际应用场景介绍如何借助ROS实现云资源的自动化部署,使得云上资源部署和运维工作更为高效。
相关文章
|
4月前
|
传感器 机器人 开发者
ROS服务(Service)通信中的模型与实际应用: 初识Hello World并予以扩展
总而言之,ROS服务提供的是一种可靠而灵活的通信方式。每一次服务的请求和应答都会阻塞,直至应答完成。这意味着在调用服务之后,你可以确保你的请求被正确处理。这也是它在机器人系统中如此重要的原因,因为在许多情况下,我们需要获取实时、准确的结果,例如控制机器人执行精确的运动。
135 1
|
11月前
|
自动驾驶 安全 机器人
ROS2:从初识到深入,探索机器人操作系统的进化之路
前言 最近开始接触到基于DDS的这个系统,是在稚晖君的机器人项目中了解和认识到。于是便开始自己买书学习起来,感觉挺有意思的,但是只是单纯的看书籍,总会显得枯燥无味,于是自己又开始在网上找了一些视频教程结合书籍一起来看,便让我对ROS系统有了更深的认识和理解。 ROS的发展历程 ROS诞生于2007年的斯坦福大学,这是早期PR2机器人的原型,这个项目很快被一家商业公司Willow Garage看中,类似现在的风险投资一样,他们投了一大笔钱给这群年轻人,PR2机器人在资本的助推下成功诞生。 2010年,随着PR2机器人的发布,其中的软件正式确定了名称,就叫做机器人操作系统,Robot Op
365 14
|
11月前
|
XML 算法 自动驾驶
ROS进阶:使用URDF和Xacro构建差速轮式机器人模型
【11月更文挑战第7天】本篇文章介绍的是ROS高效进阶内容,使用URDF 语言(xml格式)做一个差速轮式机器人模型,并使用URDF的增强版xacro,对机器人模型文件进行二次优化。
401 6
|
11月前
|
自动驾驶 安全 机器人
ROS2:从初识到深入,探索机器人操作系统的进化之路
【11月更文挑战第4天】ROS2的学习过程和应用,介绍DDS系统的框架和知识。
588 1
|
12月前
|
Ubuntu 机器人 Linux
|
传感器 人工智能 算法
ROS机器人操作系统
ROS机器人操作系统
397 1
|
12月前
|
传感器 数据可视化 机器人
【ROS速成】半小时入门机器人ROS系统简明教程之可视化系统(三)
半小时入门机器人ROS系统简明教程之可视化系统
599 0
|
12月前
|
机器人
【ROS速成】半小时入门机器人ROS系统简明教程之安装测速(二)
半小时入门机器人ROS系统简明教程之安装测速
488 0
|
机器学习/深度学习 传感器 算法
强化学习(RL)在机器人领域的应用,尤其是结合ROS(Robot Operating System)和Gazebo(机器人仿真环境)
强化学习(RL)在机器人领域的应用,尤其是结合ROS(Robot Operating System)和Gazebo(机器人仿真环境)
654 2
|
NoSQL 机器人 Windows
ROS机器人编程技术控制两只小海龟的编队运动
ROS机器人编程技术控制两只小海龟的编队运动
531 1

热门文章

最新文章

推荐镜像

更多
  • ros