How to set a variable in the simulink workspace from the model itself?

My simulink Model uses Variables from its Model workspace. I can change those variables in the "Model Explorer" and from a matlab script. The problem is, that the value of those variables are the result of a calculation, so using the model explorer is not an option and using an external matlab script is cumbersome. I want to change the value from a signal in the model, meaning I can set a constant, this goes through a calculation, to produce the values for the variables, the variables are set and the model can begin. Is that possible? Is there an alternative?

2 commentaires

Hi David,
Is the variable that results from the calculation that starts from the constant going to be used as a parameter in a block in the model?
Hi Paul, Yes. I want to set the constant, Pass it through the calculation, which results in my parameters and then use those parameters in a transfer function.

Connectez-vous pour commenter.

Réponses (1)

cr
cr le 30 Mai 2023
Modifié(e) : cr le 1 Juin 2023
You can use model callback functions. E.g. Preload, postload, init. See more info here https://mathworks.com/help/simulink/ug/model-callbacks.html
To set up a cb just rightclick in the white space and select Model properties > Callbacks tab. You can select the preload or init callback and write your matlab code there. Or write the code in a separate m file and then call the script name in the callback function.
Regards

Catégories

Produits

Modifié(e) :

cr
le 1 Juin 2023

Community Treasure Hunt

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

Start Hunting!

Translated by