Design Concepts

Design Concepts#

Kompass is designed using ROS Sugar concepts. A Component is the main execution unit in Kompass, each component is configured with Inputs/Outputs and Fallback behaviors. Additionally, each component updates its own Health Status. Components can be handled and reconfigured dynamically at runtime using Events and Actions. Events, Actions and Components are passed to the Launcher which runs the set of components as using multi-threaded or multi-process execution. The Launcher also uses an internal Monitor to keep track of the components and monitor events.

See also

Check the design concepts in detail by referring to ROS Sugar documentation

Kompass Component

Component Structure#

Multi-threaded execution

Multi-threaded execution#

Multi-process execution

Multi-process execution#