Action通信简介及案例1:发送单导航目标点

一、Action通信简介

B站视频详解:https://www.bilibili.com/video/BV1Ub4y1x7QB?spm_id_from=333.999.0.0
三者区别:

话题通信:单向通信,发布后需要订阅
服务通信:请求一次任务,响应一次状态信息
Action通信:导航过程中连续反馈状态信息,导航终止时再返回执行结果

Action(动作)通信:基于功能包集actionlib实现通信

通信工作机制:
在这里插入图片描述
例如:
Rviz中用2D Nav Goal发送一个目标点,请求了一个action,机器人收到这个action后,开始导航,导航过程当中会在终端连续收到运动状态等反馈信息,这样就实现了action通信;

可以使用的通信接口:
在这里插入图片描述
(1)goal:发布任务目标;
(2)cancel:请求取消任务;
(3)status:通知Client当前的状态;
(4)feedback:周期反馈任务运行的监控数据;
(5)result:向Client发送任务的执行结果,只发布一次。

其中整个运动完成过程(导航过程)是基于move_base框架实现的

http://wiki.ros.org/move_base
在这里插入图片描述

二、案例1:单目标点导航

需求: 写一个客户端节点,来请求服务端做一件事,就是导航到某个目标点,你就要把目标点的坐标信息告诉它,它收到你的请求后会控制机器人移动,导航过程中还可以不断反馈给你机器人状态信息,整个通信方式就是Action通信。

按以下步骤来:

0、安装相关源码、依赖

sudo apt-get install ros-move-base-msgs 
sudo apt-get install ros-noetic-dwa-local-planner
sudo apt-get install ros
评论 15
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值