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

1 回表示 (過去 30 日間)
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?

採用された回答

Krishna Akella
Krishna Akella 2019 年 6 月 24 日
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 件のコメント
Abdolkarim Mohammadi
Abdolkarim Mohammadi 2019 年 6 月 24 日
Thanks Krishna. That is exactly what I did. I think it can also be done with MATLAB discrete-event block. especially in complex models.

サインインしてコメントする。

その他の回答 (0 件)

カテゴリ

Help Center および File ExchangeDiscrete-Event Simulation についてさらに検索

製品

Community Treasure Hunt

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

Start Hunting!

Translated by