How to use Classic State Machine outputs in Simulink?

3 visualizzazioni (ultimi 30 giorni)
I created a classic State Machine using the StateFlow add-on to Simulink. I am able to input various parameters that are updated in my Simulink model, but I am unable to take the outputs of the State Machine and use it elsewhere in my Simulink file. I get an error saying 'UAV_SIM_MAIN_7_0/DECISION ENGINE1/DECISION ENGINE' updates persistent or state variables while computing outputs, therefore it cannot be used in an algebraic loop. However, it is in a loop with the following blocks. For more information, see Algebraic Loops with MATLAB Function and Stateflow Blocks.' I tried changing the State Machine type to a Moore Chart but it does not work with the setup I have with my current State Machine. Is there a way to modify my classic State Machine to allow for its outputs to be used elsewhere in my Simulink model?

Risposta accettata

Andrew Poissant
Andrew Poissant il 20 Dic 2018
Modificato: madhan ravi il 20 Dic 2018
After searching around much more I found that adding a memory block to the outputs sent to Simulink solves the issues.

Più risposte (0)

Categorie

Scopri di più su Simulink Functions in Help Center e File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by