User Tools

Site Tools


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?

  1. 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.
  2. 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.1625764197.txt.gz · Last modified: 2021/07/08 19:09 by ursgraf