actionlib

如果服务花费很长时间去执行,用户可能在程序执行或者如何获得周期反馈时有取消该请求的能力。

Goal, Feedback, & Result

为了用action来完成任务,我们引用ActionClient发送给ActionServer目标点概念。在移动基体情况下,目标是PoseStamped的消息,包含有关机器人在世界坐标系中目标点位置信息。用于控制倾斜激光扫描仪,目标将包含扫描参数(最小角度,最大角度,速度等)。

反馈提供服务器告诉给ActionClient关于到达目标进程的方法。对于移动机器人,表示是机器人当前沿着路径的姿态。用于控制倾斜激光扫描仪,这可能是左,直到扫描完成的时间。

结果是根据完成目标情况从ActionServer来发布给ActionClient。这比反馈不同,因为它被发送一次。这是非常有用的,当该操作的目的是为了提供某种信息。对于移动机器人其结果也不是很重要的,但它可能包含机器人的最终姿势。用于控制倾斜激光扫描仪,其结果可能包含来自所请求的扫描中产生的点云。

例如:

test.action

int32 goal
---
int32 result
---
int32 feedback
时间: 2024-08-04 12:27:23

actionlib的相关文章

第十二课 Actionlib(1)

一\Actionlib概念 在ROS系统中,有时需发送请求给某个节点完成相应的任务,同时获得一个一个响应,这种情况下可以通过ROS服务来 完成;然而,在某些情况下,服务需要很长时间才能执行完,如让机器人到达一个指定的地点,用户想要取消或者定期得到请求执行的进度的反馈,这个时候我们选择actionlib来完成. 二\Actionlib的实现 三\服务器的状态转移(server State transitions) 当客户端接受到目标之后,首先进入挂起的状态,如果服务器拒绝了(setRejected

ROS知识(17)----Actionlib使用的例子

1.Actionlib原理 英文版:DetailedDescription 翻译版:actionlib的身世之谜 2.Actionlib官方教程 Actionlib是ros的重要部件,对于复杂动作的执行问题,例如机械臂捉取物品和move_base实现等,使用actionlib是非常有效的.参考官方的Actionlib教程:actionlib/Tutorials ,我将例子代码做了整理,请参考以下的下载例子. 2.下载例子 代码:actionlib_tutorials.zip

actionlib 举例

catkin_create_pkg learning_actionlib actionlib message_generation roscpp rospy std_msgs actionlib_msgs action_client.cpp /* 下面显示怎样给名字为 "do_dishes"的DoDishes ActionServer 发送goal */ #include <learning_actionlib/DoDishesAction.h> #include <

actionlib的身世之谜

不知道为什么会把这么严肃认真的一篇技术整理贴起这么一个故事会风格类似的名字,就这样吧:^)shenmegui 园子里有人整理了actionlib的初学者教程,我来整理下actionlib的细节描述吧.初版偏向于逐字翻译+少量个人理解.等我再长大一些感悟更多的时候再修改更新我的更多理解.我boss说开始学ROS相关就是会很乱的.我是一个喜欢划分割线的奇女子~\(≧▽≦)/~ 一.服务端描述 1)goal是在ActionClient端启动的(client会发送sendgoal嘛),一旦ActionS

ROS actionlib学习(一)

actionlib是ROS中一个很重要的功能包集合,尽管在ROS中已经提供了srevice机制来满足请求-响应式的使用场景,但是假如某个请求执行时间很长,在此期间用户想查看执行的进度或者取消这个请求的话,service机制就不能满足了,但是actionlib可满足用户这种需求.例如,控制机器人运动到地图中某一目标位置,这个过程可能复杂而漫长,执行过程中还可能强制中断或反馈信息,这时actionlib就能大展伸手了. actionlib使用client-server工作模式,ActionClien

ROS actionlib学习(二)

在ROS actionlib学习(一)中的例子展示了actionlib最基本的用法,下面我们看一个稍微实际一点的例子,用actionlib计算斐波那契数列,并发布反馈(feedback)和结果(result).斐波那契数列指的是这样一个数列: 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, 233,377,610,987,1597,2584,4181,6765,10946,17711,28657,46368........ 这个数列从第3项开始,每一项都等于

ROS actionlib学习(三)

下面这个例子将展示用actionlib来计算随机变量的均值和标准差.首先在action文件中定义goal.result和feedback的数据类型,其中goal为样本容量,result为均值和标准差,feedback为样本编号.当前样本数据.均值和标准差. #goal definition int32 samples --- #result definition float32 mean float32 std_dev --- #feedback int32 sample float32 dat

ROS知识(12)----ActionLib的使用(一)

1.原理 1.1功能 1.2框架 2.例子 3.源码 the_first_actionlib_sample

ROS机器人程序设计(原书第2版)补充资料 (柒) 第七章 3D建模与仿真 urdf Gazebo V-Rep Webots Morse

ROS机器人程序设计(原书第2版)补充资料 (柒) 第七章 3D建模与仿真 urdf Gazebo V-Rep Webots Morse 书中,大部分出现hydro的地方,直接替换为indigo或jade或kinetic,即可在对应版本中使用. 提供ROS接口的3D软件比较多,本章以最典型的Gazebo介绍为主,从Player/Stage/Gazebo发展而来,现在独立的机器人仿真开发环境,目前2016年最新版本Gazebo7.1配合ROS(kinetic)使用. 补充内容:http://blo