documentation:skiros:compound_skills

This is an old revision of the document!


Compound Skills

This page will refer to example skills from this repository written by Pontus Rosqvist.

When it comes to SkiROS a compound skill can be implemented by extending SkillBase. This class can run arbitrary python code but it is mostly intended for calling other skills, it has the following stages of execution:

Name When it runs Note
onStart Once each time the skill starts.
onPreempt When a preempt signal is sent. A preempt signal can be sent from, for example, the SkiROS gui.
expand After onStart. Call primitive (or other compound) skills here.
onEnd Once when execute has returned a terminal state.

A compound skill can call other skills and by choosing different processors one can coordinate the execution of skill with a behaviour tree.

The execution of skills from the compound skill can be coordinate with the help of many different skill processors. The available skill processors are

Processor Name Purpose Note
Serial
SerialStar
Sequential
Selector
SelectorStar
ParallelFf
ParallelFs
Loop
RetryOnFail
NoFail
  • documentation/skiros/compound_skills.1679598281.txt.gz
  • Last modified: 2023/03/23 19:04
  • by pontusr