Action通讯模型

Action通讯模型组成

ROS中,节点与节点间通讯,提供了新的方式,就是Action通讯。

Action通讯分为Client端Server端Client端负责给Server端发送指令,Server端接收到指令,根据自身的业务逻辑进行处理指令,处理过程中,可以反馈进度给为Client端,处理结束后将结构反馈给Client端

在Action通讯模型交互过程中,分为三个数据交互阶段:

  • client端请求阶段
  • server端进度反馈阶段
  • server端结果反馈阶段

对于Client端而言,可做的操作行为有两种:

  • 发送指令请求
  • 取消指令请求

对于Server而言,可做的操作行为有:

  • 响应进度信息
  • 响应结果信息

Action交互过程中的专有名称

Goal 请求指令

client端server端发送请求时所带的数据,我们称之为Goal

Feedback过程响应

server端进度反馈阶段,反馈给client端的数据,我们称之为Feedback

Result结果响应

server端结果反馈阶段,反馈给client端的数据,我们称之为Result

设计艺术

client端请求,server端响应,操作为异步的,通讯信息采用数据来规范,通过GoalFeedbackResult规定了统一操作数据的规范。