Skip to content

Commit c07b172

Browse files
committed
Updates system modes concept description+image
Signed-off-by: Arne Nordmann <arne.nordmann@de.bosch.com>
1 parent 0a7370e commit c07b172

3 files changed

Lines changed: 21 additions & 9 deletions

File tree

-56.4 KB
Binary file not shown.

_docs/concepts/client_library/system_modes/index.md

Lines changed: 21 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,8 @@ Table of contents
1212
- [Main Features](#main-features)
1313
- [Extended Lifecycle](#extended-lifecycle)
1414
- [System Hierarchy and Modes](#system-hierarchy-and-modes)
15-
- [Mode manager](#mode-manager)
15+
- [Mode Inference](#mode-inference)
16+
- [Mode Manager](#mode-manager)
1617
- [Roadmap](#roadmap)
1718
- [Acknowledgments](#acknowledgments)
1819

@@ -37,16 +38,17 @@ Our observation is that interweaving of task handling, contingency handling, and
3738

3839
Therefore, our **goal** within this work is to provide suitable abstractions and framework functions for (1.) system runtime configuration and (2.) system error and contingency diagnosis, to reduce the effort for the application developer of designing and implementing the task, contingency and error handling.
3940

40-
This goal is illustrated in the following high-level architecture:
41+
This goal is illustrated in the following example architecture, which is described and managed based on a model file:
4142

42-
![High-level Architecture](goal.png)
43+
![High-level Architecture](mode-management.png)
4344

44-
The envisioned key elements to achieve this goal are:
45+
The key elements of the approach are:
4546

46-
1. Extensible concept to specify the runtime states of components, i.e ROS 2 nodes.
47-
2. Modeling approach for specifying system modes based on these component states.
48-
3. Diagnosis module for deriving relevant information from the operating systems, the hardware and the functional components.
49-
4. Mode manager module for system runtime configuration.
47+
1. _Extended Lifecycle_: Extensible concept to specify the runtime states of components, i.e ROS 2 lifecycle nodes.
48+
2. _System Hierarchy and Modes_: Modeling approach for specifying system modes based on these component states.
49+
3. _Mode Manager_: A module to manage and change the system runtime configuration.
50+
4. _Mode Inference_: A module for deriving the entire system state and mode from observable system information, i.e. states, modes, and parameters of its components.
51+
5. _Diagnostics_: Diagnosis module for deriving relevant information from the operating systems, the hardware and the functional components.
5052

5153
## Requirements
5254

@@ -81,7 +83,17 @@ A simple example is provided at:
8183
[github.com:system_modes_examples/README.md#example-mode-file](https://github.com/micro-ROS/system_modes/blob/master/system_modes_examples/README.md#example-mode-file)
8284

8385

84-
### Mode manager
86+
### Mode Inference
87+
88+
The mode inference infers the entire system states (and modes) based on the lifecycle states, modes, and parameter configuration of its components, i.e. the ROS 2 lifecyle nodes. It parses the model and subscribes to lifecycle/mode change requests, lifecycle/mode changes, and parameter events.
89+
90+
The documentation and code can be found at:
91+
[github.com:system_modes/README.md#mode-inference](https://github.com/micro-ROS/system_modes/blob/master/system_modes/README.md#mode-inference)
92+
The mode inference can be best observed in the mode monitor, a console-based debugging tool, see:
93+
[github.com:system_modes/README.md#mode-monitor](https://github.com/micro-ROS/system_modes/blob/master/system_modes/README.md#mode-monitor)
94+
95+
96+
### Mode Manager
8597

8698
The mode manager allows for runtime system adaptation based on such a system hierarchy and modes model. It parses the model and provides all services and topics to request state and mode changes and to monitor these changes.
8799

62.8 KB
Loading

0 commit comments

Comments
 (0)