eeros_architecture:control_system:available_blocks:generic
This is an old revision of the document!
Generic Block
A generic block simply runs a predefined algorithm which can be passed to the constructor of the block. Such an algorithm could theoretically calculate any output from a given set of inputs. It can be especially valuable for cases like the following. A signal value must be applied with an offset and a scale. How to achieve this?
- 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 blocks.
- Use a generic block and define the necessary algorithm as follows
GenericBlock<> gen([&]() { gen.getOut(0).getSignal().setValue(gen.getIn(0).getSignal().getValue() + 0.1) * 1.1); gen.getOut(0).getSignal().setTimestamp(gen.getIn(0).getSignal().getTimestamp()); })
Such a generic block can save 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