Running a stateflow block as a subsystem?

Hello, I am designing a task using simulink and stateflow, but before connecting it to my devices to test their reaction, I am trying to simulate my device and its reactions using another stateflow block. But when I run the model I encounter this error:
Ambiguous sorted order detected due to use of triggered subsystem(s) and/or Model blocks in a loop. See Subsystem Examples in the Simulink library for valid and invalid examples of triggered subsystems
But when I try the output of the subsystem (Action) in a scope, it works just fine (I have attached a screenshot of my model). I was wondering if anyone knows how I can circumvent this error? Thanks in advance for your help.

 Respuesta aceptada

Sebastian Castro
Sebastian Castro el 5 de Oct. de 2015

0 votos

Since both Stateflow charts are being driven by the same clock, I would suggest combining them into a single chart. You can have the contents of each chart in their own parallel state . The "Action" signal would become local data that is written to in the first state and read from in the second.
Furthermore (or instead), if your clock is just a constant cycle, you could opt to remove the triggered execution and just change the Charts' sample time to whatever rate you're trying to recreate with the Pulse Generator block.
- Sebastian

1 comentario

Mohsen Omrani
Mohsen Omrani el 6 de Oct. de 2015
Thanks for your response. I thought about that too. But I solved the problem by adding a 1 cycle delay module between the two simulators, on the way from action to The trial controller. Thanks again for your response,

Iniciar sesión para comentar.

Más respuestas (0)

Categorías

Preguntada:

el 1 de Oct. de 2015

Comentada:

el 6 de Oct. de 2015

Community Treasure Hunt

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

Start Hunting!

Translated by