Skip to content

Robot Capabilities

hoferdan edited this page May 4, 2021 · 3 revisions

Topic name: /robots/capabilities
Usage:
Robot publishes its capabilities, e.g. object manipulation. Besides a description the message also
contains a type and parameter field which both can be used to build a task message for the robot.
This message is sent out as broadcast this is must not contain a target_id header field.

Message definition:

{
  "source_id": String,
  "timestamp": Long,
  "capabilities": [Capability]
}
Key Description
capabilities Contains a list of robot capabilities. Capabilities need to be represented as a Capability object defined in the following.

Capability

A Capability object is used to describe robot capabilities.

{
  "type": String,
  "description": String,
  "parameter": {
      String: Type
  }
}
Key Description
type Value of the capability that must be used in the task message field type if the corresponding robot capability should be executed.
description Human readable description of the capability.
parameter A list of parameter that need to be included in the task message is order to allow the robot a execution of this capability.

Example

{
  "source_id": "R_1",
  "timestamp": 1552481472,
  "capabilities": [
    {
      "type": "bring",
      "description": "The robot will fetch a defined object.",
      "parameter": {
        "object": String,
        "from": String,
        "to": String
      }
    }
  ]
}
Clone this wiki locally