ros学习至action通信

文章介绍了ROS中的Action通信机制,对比了它与传统的请求响应模式的区别。Action通信允许在执行过程中提供连续的反馈,比如在导航任务中,可以实时更新机器人状态,甚至在任务进行中允许用户取消。ROS的actionlib库提供了实现这种通信的方法,包括定义action文件、实现客户端和服务端。Action通信特别适用于耗时操作,如导航和机械臂控制。
摘要由CSDN通过智能技术生成

应用场景:

action通信相比于请求响应的模式,请求响应是一问一答,而action通信可以连续反馈机器人状态信息。

以导航为例子,导航过程中,如果在其上部署了服务通信,那么只有在导航结束的时候,才能产生响应结果,可能会导致用户的不良体验,像导航终止的需求就无法实现。如果使用action通信,那么可以连续反馈当前机器人的状态信息,导航终止时,再返回最终的执行结果。

action:如果它的实现模型是基于请求响应的,并且这是一个耗时操作,那么你就可以尝试使用action通信,例如:导航、机械臂。

概念和作用:

在ROS中提供了actionlib功能包集,用于实现 action 通信。action 是一种类似于服务通信的实现,其实现模型也包含请求和响应,但是不同的是,在请求和响应的过程中,服务端还可以连续的反馈当前任务进度,客户端可以接收连续反馈并且还可以取消任务。

 两端交流方式

实现方式:1定义一个中间action文件2实现action客服端3实现action服务端

action文件和msg、srv文件 高度一致

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值