getting_started:tutorials:system2
Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
getting_started:tutorials:system2 [2020/12/03 08:49] – [Example with a More Complex Safety System] ursgraf | getting_started:tutorials:system2 [2021/03/31 14:00] (current) – ursgraf | ||
---|---|---|---|
Line 1: | Line 1: | ||
====== Example with a More Complex Safety System ====== | ====== Example with a More Complex Safety System ====== | ||
- | This example shows how to use the safety system. It further uses two inputs and two outputs. For this reason we will use the simulator again, see [[getting_started: | + | This example shows how to use the safety system. It further uses two inputs and two outputs. For this reason we will use the simulator again, see [[getting_started: |
+ | |||
+ | In the EEROS library you will find a directory with examples. | ||
+ | |||
+ | Open a shell in the build directory of your EEROS library and run | ||
< | < | ||
- | $ sudo LD_LIBRARY_PATH=/ | + | $ sudo LD_LIBRARY_PATH=/ |
</ | </ | ||
+ | |||
+ | IMPORTANT You have to run a program using real time threads with root privileges and you have to set your library path so that the simulator library can be found, see [[getting_started: | ||
The example comprises a safety system with five different safety levels and six safety events. | The example comprises a safety system with five different safety levels and six safety events. | ||
- | {{ : | + | {{ : |
The levels and events are defined in the safety properties. The properties further include one critical input '' | The levels and events are defined in the safety properties. The properties further include one critical input '' | ||
The following events are defined and used in the example: | The following events are defined and used in the example: | ||
Line 19: | Line 25: | ||
The example shows a typical use of safety levels and safety events. The system works as follows: | The example shows a typical use of safety levels and safety events. The system works as follows: | ||
- | * The end of the initialization phase is triggered by a periodic which is run by the executor. In general this would be signalled by the sequencer after a initializing sequence has finished or by the control system as soon as a certain condition arises. | + | * The end of the initialization phase is triggered by a periodic which is run by the executor. In general this would be signalled by the sequencer after a initializing sequence has finished or by the control system as soon as a certain condition arises. A periodic would usually be used for running a time domain in the control system. As we do not have such a control system here, we simply use the periodic to trigger safety events. |
* To start and stop running might be triggered by pressing or releasing a button connected to the critical input. In our simple example we do not have real hardware. We therefore use the simulator which connects the output named '' | * To start and stop running might be triggered by pressing or releasing a button connected to the critical input. In our simple example we do not have real hardware. We therefore use the simulator which connects the output named '' | ||
* When pressing '' | * When pressing '' |
getting_started/tutorials/system2.1606981777.txt.gz · Last modified: 2020/12/03 08:49 by ursgraf