1.4.2 ROS Actions action message and goal processing

Course subject(s) Module 1. ROS Essentials

This lecture dives further into the concepts of ROS actions.

Disclaimer: At 0:16, the instructor makes a reference to adding action files to CMakeLists.txt in the previous video. But, this is actually shown in the next video in the code illustration.

Action generator script displays 7 actions:

Specified actions:

1) CounterWithDelayFeedback
2) CounterWithDelayGoal
3) CounterWithDelayResult
Additional actions which are used internally by the actionlib package:

4) CounterWithDelayActionFeedback
5) CounterWithDelayActionGoal
6) CounterWithDelayAction
7) CounterWithDelayActionResult
CounterWithDelayAction.msg is an aggregation of the other action messages. This is the action type of our action client

The action client code is something that we as users develop to leverage the facilities of the actionlib ROS package.

Sent goals are registered by the action server and the actionlib package. The package requires additional information which is CounterWithDelayAction.msg.

Goal contains:

  1. Timestamp and header info
  2. Unique goal identifier
  3. Goal message

Action Result contains:

  1. Timestamp and header info
  2. Different states the goal can be in

Feedback contains:

  1. Timestamp and header info
  2. Different states the goal can be in
  3. Feedback message

Action server topics

  • Feedback topic is published by the action server an has action feedback message type
  • Action server subscribers to the cancel topic and is of the GoalID type

Attention!

  • Simple Action Server/Client.
  • Non-blocking execution of ONE goal at a time.
  • New goal to the same action server will pre-empt an active goal. Meaning that the active goal is completed first before a new goal will be processed.
Creative Commons License
Hello (Real) World with ROS - Robot Operating System by TU Delft OpenCourseWare is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License.
Based on a work at https://online-learning.tudelft.nl/courses/hello-real-world-with-ros-robot-operating-systems//.
Back to top