Getting top level of System Composer Simulink model

2 vues (au cours des 30 derniers jours)
Paul
Paul le 15 Nov 2022
Réponse apportée : Alvaro le 28 Déc 2022
I want to display the progress of a System Composer simulation and I need to get the stop time of the simulation.
I am trying to run a system composer model which contains models/behaviours from a script. The code of my script is as follows:
cb.mdl = "ArchIOD1";
cb.simInput = Simulink.SimulationInput(cb.mdl);
cb.simInput = setModelParameter(cb.simInput, "StopTime", "500")
cb.out = sim(cb.simInput);
This works but I can't seem to get the value of StopTime that I just set. When I call this:
str2double(get_param(bdroot,'StopTime'));
The result is the default value of 10 of a model, instead of 500.
bdroot is not giving the expected value. The value should be "ArchIOD1" and instead its giving me the name of the referenced model within ArchIOD1 which is calling it.
How can I can I get the real top level of this model from inside a referenced model?

Réponses (1)

Alvaro
Alvaro le 28 Déc 2022
You can change the stop time of the model by running
set_param('ArchIOD1', 'StopTime', '500')

Catégories

En savoir plus sur System Composer dans Help Center et File Exchange

Produits


Version

R2022b

Community Treasure Hunt

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

Start Hunting!

Translated by