User Tools

Site Tools


eeros_architecture:practical_problems:start

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
eeros_architecture:practical_problems:start [2017/08/22 16:19] – [Avoid Hidden States in the Safety System] grafeeros_architecture:practical_problems:start [2017/09/24 15:39] (current) – removed graf
Line 1: Line 1:
-====== Practical Problems ====== 
-Every EEROS system consists of a control system, a safety system, and a sequencer. In order to guarantee maximum stability we strongly recommend that you adhere to a strict set of design rules as given below. 
  
-===== Trigger Safety Event from Control System ===== 
-It is not advisable to use the safety system to check signals of the control system. This causes unnecessary confusion and blows up the safety system. Rather insert a [[eeros_architecture:control_system:available_blocks:checker|]] into your control system and let it trigger a safety event from there. 
- 
- 
-===== Avoid Hidden States in the Safety System ===== 
-It might be tempting to define elaborate actions in a certain safety level. However, in order to keep the safety system clean and simple avoid such practises. Do not define different states in a safety level. If you need to stay a certain amount of time in a safety level use the field ''nofActivations'' as described in [[eeros_architecture:safety_system:properties#counter|Counter]]. As soon as you want to model a more complex behaviour use a [[eeros_architecture:sequencer:sequence|]]. 
-===== Handle Faults in the Control System ===== 
-input not connected, forget to connect 
-nan 
-initial signals = nan, forget to addBlock 
-remove block 
- 
-===== Remove Blocks when no longer used ===== 
-Blocks have to be added to a time domain and will then be run by this. If you have blocks which are used only for a certain task such as initialization, you can remove them after this task has finished in order to safe processing power, see [[eeros_architecture:control_system:time_domains|]]. 
- 
-===== Switch Block Switches Automatically ===== 
-There are cases were a switch block has to switch to a certain input under given conditions. While it might be possible to use the safety system to check this condition it might be preferable if the switch block itself switches when a certain condition is met. To use the sequencer for this purpose is generally not advisable as realtime cannot be met there. \\ 
-For further information refer to [[eeros_architecture:control_system:available_blocks:switch|]] or check the example in [[getting_started:tutorials:controlsystem4|Control System Containing Switch Blocks ]]. 
- 
-===== Block with Parameters ===== 
-Situation: inner states of blocks can be changed only through signals or getter / setter methods. How to implement a slowly changing inertia matrix? You do not want to calculate this matrix out of regular signals with full speed. Solution: use slow time domain for this purpose and change ... 
- 
-===== How to Stop a System with CTRL-C ===== 
- 
-===== How to interact between Sequencer and Control System ===== 
-Seq soll signale in CS setzen (const) oder lesen \\ 
- 
-===== Comparisons of Safety Level do not Work ===== 
-addLevel forgotten \\ 
eeros_architecture/practical_problems/start.1503411568.txt.gz · Last modified: 2017/08/22 16:19 by graf