eeros_architecture:sequencer:exceptions
Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
eeros_architecture:sequencer:exceptions [2017/08/20 21:18] – [Sequence Supervised by more than one Monitor] graf | eeros_architecture:sequencer:exceptions [2017/09/24 11:39] (current) – external edit 127.0.0.1 | ||
---|---|---|---|
Line 6: | Line 6: | ||
[{{ .: | [{{ .: | ||
As soon as a monitor checking for a certain condition fires, an exception sequence is called. The exception must always be blocking. However, it would be possible to omit it altogether. After this the control goes back to the original sequence. How does this sequence now continue? Every monitor can be assigned one of the following properties: | As soon as a monitor checking for a certain condition fires, an exception sequence is called. The exception must always be blocking. However, it would be possible to omit it altogether. After this the control goes back to the original sequence. How does this sequence now continue? Every monitor can be assigned one of the following properties: | ||
- | * nothing: the sequence continues normally | + | * resume: the sequence continues normally |
- | * abortOwner: the sequence is aborted and control goes back to its calling sequence | + | * abort: the sequence is aborted and control goes back to its calling sequence |
- | * restartOwner: the sequence gets restarted, its timeout monitor is reset (that' | + | * restart: the sequence gets restarted, its timeout monitor is reset (that' |
- | * abortCallerOfOwner: | + | |
- | * restartCallerOfOwner: | + | |
The following table shows the behavior for various situations | The following table shows the behavior for various situations | ||
^Property^behavior of sequence after monitor fires^exception sequence if present^ | ^Property^behavior of sequence after monitor fires^exception sequence if present^ | ||
- | |nothing|sequence continues normally|exception sequence will run for each further step| | + | |resume|sequence continues normally|exception sequence will run for each further step| |
- | |abortOwner|remaining steps aborted|exception sequence will run once| | + | |abort|remaining steps aborted|exception sequence will run once| |
- | |restartOwner|remaining steps aborted, sequence restarts with first step|exception sequence will run once, after restarting will run again if monitor fires again| | + | |restart|remaining steps aborted, sequence restarts with first step|exception sequence will run once, after restarting will run again if monitor fires again| |
===== Sequence Supervised by more than one Monitor ===== | ===== Sequence Supervised by more than one Monitor ===== | ||
A sequence can be checked by more than one monitor where each monitor checks for a certain condition to be met. While a first monitor could check for a timeout condition a second could supervise whether a payload of a robot didn't get lost. | A sequence can be checked by more than one monitor where each monitor checks for a certain condition to be met. While a first monitor could check for a timeout condition a second could supervise whether a payload of a robot didn't get lost. | ||
[{{ .: | [{{ .: | ||
- | Please note, that each monitor can have a different effect on its associated sequence. | + | Please note, that each monitor can have a different effect on its associated sequence. |
+ | |||
+ | ===== Monitor for Exception Sequence ===== | ||
+ | Exception sequences are used to handle situations where regular sequences do not work due to certain conditions. Besides this, an exception sequence is a normal sequences with exactly the same features and has to be defined in the same way. Therefore, an exception sequence has the same built-in conditions and monitors as a regular sequence (timeout and abort conditions). |
eeros_architecture/sequencer/exceptions.1503256696.txt.gz · Last modified: 2017/08/20 21:18 by graf