eeros_architecture:control_system:available_blocks:generic
                Differences
This shows you the differences between two versions of the page.
| Next revision | Previous revision | ||
| eeros_architecture:control_system:available_blocks:generic [2021/07/08 19:09] – created ursgraf | eeros_architecture:control_system:available_blocks:generic [2025/08/08 15:37] (current) – ursgraf | ||
|---|---|---|---|
| Line 1: | Line 1: | ||
| - | ====== | + | ====== | 
| - | A generic | + | Blockio is the basic block from which all other blocks inherit. See [[eeros_architecture: | 
| - | - Use a constant | + | However, you can use this block directly and set its specific algorithm that will run whenever the block runs within | 
| - | - Use a generic block and define the necessary | + | |
| - |  | + | Define such a block with an example | 
| - | gen.getOut(0).getSignal().setTimestamp(gen.getIn(0).getSignal().getTimestamp()); | + | <code cpp> | 
| - | })</ | + | Blockio<1, | 
| + | auto val = (block.getIn().getSignal().getValue() + 0.5) * 2; | ||
| + | block.getOut().getSignal().setValue(val); | ||
| + | block.getOut().getSignal().setTimestamp(gen.getIn(0).getSignal().getTimestamp()); | ||
| + | }); | ||
| + | </ | ||
| - | Such a generic | + | Such an algorithm could theoretically calculate any output from a given set of inputs. Choose this method when the algorithm is simple and one wants to avoid using several other blocks doing a simple algorithm, e.g. adding a offset and scale to a signal as given in the example above. | 
| + | |||
| + | How could this be solved with predefined | ||
| + | Use a constant block delivering the offset together with a sum block which adds the offset to the signal. Finally, a gain block applies the desired scale. All in all, you will use three different blocks. | ||
| + | |||
| + | Using a basic block with a lambda function as given in the example above saves valuable execution time in reducing the number of necessary blocks. It can also be useful when a given algorithm cannot be stitched together from predefined blocks. | ||
eeros_architecture/control_system/available_blocks/generic.1625764151.txt.gz · Last modified: 2021/07/08 19:09 by ursgraf
                
                