How to use stateflow inside a simulink closed loop?

4 vues (au cours des 30 derniers jours)
Moritz Ischebeck
Moritz Ischebeck le 16 Juin 2021
Commenté : Moritz Ischebeck le 12 Juil 2021
In my simulink project, I replaced SUM blocks with stateflow and equivalent additions inside. And then the simulation got stuck without error messages. (My plan was to add logic later, after that stateflow is working.)
I tried to replicate the error in a small example.
What causes the difference in the example? (maybe extrapolating?)
How to fix it and still using stateflow?

Réponse acceptée

Yoshi Minagawa
Yoshi Minagawa le 2 Juil 2021
Hi Moritz,
I understood that your question is about the cause of the difference output between the two logics in attached model.
I think that the difference of these output are caused by the solver. (I think it is because there might be a difference in the calculation of the Jacobian matrix when calculating the value of the next step in Simulink. In this case, there may be a difference in the result with the variable step setting.)
However, the essential result of calculation is the same even if it is made with stateflow. Try changing the maximum step size to small (ex. 0.01s). The two outputs are almost the same as shown below. Therefore, by making the step size sufficiently small, it is possible to implement the expected processing even when using stateflow.
I hope this will help.

Plus de réponses (0)

Catégories

En savoir plus sur Programmatic Model Editing dans Help Center et File Exchange

Produits


Version

R2020b

Community Treasure Hunt

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

Start Hunting!

Translated by