SimEvents: Is it possible to generate an event-based entity with specific attribute values defined in the caller block's event action?

2 visualizaciones (últimos 30 días)
The Entity Terminator block calls the simulink function genNext to generate an entity. I want to know that is possible to add input argument blocks to genNext so that we can call it like genNext(1,2,3) and have the entity generator set the attributes of the generated entity according to the passed inputs?

Respuesta aceptada

Krishna Akella
Krishna Akella el 24 de Jun. de 2019
Hi Kar,
Unfortunately, the entity generator's 'Generate' event action cannot use the values from the generation triggering entity. I have however been able to use Simulink Functions to create getter and setter functions to write and read values from the event actions:
ReadValFromGenerator.png
I have called setVal(1, 2, 3) from the terminator's entry action and then called [v1, v2, v3] = getVal() from the entity generators 'generate' event action to read the values. However, this has some pit falls. If another entity arrives at the terminator with a higher priority than the generate event, then the values in the simulink function get overwritten. I haven't been able to figure out a better way. Hope this helps!
Regards,
Krishna
  1 comentario
Abdolkarim Mohammadi
Abdolkarim Mohammadi el 24 de Jun. de 2019
Thanks Krishna. That is exactly what I did. I think it can also be done with MATLAB discrete-event block. especially in complex models.

Iniciar sesión para comentar.

Más respuestas (0)

Categorías

Más información sobre Discrete-Event Simulation en Help Center y File Exchange.

Productos

Community Treasure Hunt

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

Start Hunting!

Translated by