Info

Diese Frage ist geschlossen. Öffnen Sie sie erneut, um sie zu bearbeiten oder zu beantworten.

Custom sensor library: Execute setup block before others

1 Ansicht (letzte 30 Tage)
offroad
offroad am 14 Nov. 2017
Geschlossen: MATLAB Answer Bot am 20 Aug. 2021
Hello,
I am implementing a Simulink library for communication with an external sensor. I split the configuration of the sensor and the reading of sensor values in separate blocks. When running a model with a "configuration" and a "read value" block the second one must only be executed after the first one has finished. How is this best implemented?
Currently I ensure this with a function-call generator and splitter that is connected in the right order to function-call subsystems containing the "configuration" and "read value" blocks. But this setup is rather clumsy and does not correspond to many existing libraries. The option by sorted execution order seems to be model-dependent and thus does not apply to a library.
Thank you for helping!
  1 Kommentar
offroad
offroad am 28 Nov. 2017
I would like to push this one as it only got 2 views.

Antworten (1)

Mark McBroom
Mark McBroom am 29 Nov. 2017
do you need to execute the configuration block each time "read value" block executes? If so, I use function -call trigger and then combine blocks into a single block in your library.
However, if the configure block runs only one time at startup, you might want to consider the new Initialize Function block in Simulink. The contents of the Initialize Function block get executed only one time at start up.
  1 Kommentar
offroad
offroad am 30 Nov. 2017
Thanks for your answer. No the configuration block needs to be executed once at startup. I tried using the Initialize Function block. However it can only contain blocks that do not need an initialization themselves. The I2C driver blocks I use do not work with that method.
Basically I just need a way to execute the configuration block in the first time step and in the following time steps always execute the read block. Is there some way we could use a global variable in the model workspace to contain the "configuration state"? Then we could set this state as "true" once the configuration block has finished and depending on its state execute the read block.

Diese Frage ist geschlossen.

Produkte

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by