set_param() - programmatically change param of multiple blocks of the same type (for-loop)
5 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
Michael Feichtinger
le 10 Août 2021
Commenté : Jesús Zambrano
le 11 Août 2021
Hi everyone!
Suppose there are 50 blocks of the same type in a simulink/simscape model - let's say it is a pipe-block in simscape domain.
Is there any recipe to change a specific parameter of all blocks programmatically?
I have a solution, but it assumes that the bocks of the same type are named with a consecutive number like this: pipe_1, pipe_2.
for iter_pipes = 1:50
set_param(...
model_name + "/pipe_" + string(iter_pipes),...
"p_I_specify","on",...
"p_I_priority","High",...
"p_I","550000"...
)
end
Is there any way to access a specific param of multiple blocks of the same type regardless of the blocks name?
Thank you in advance for any help!
Michael
0 commentaires
Réponse acceptée
Jesús Zambrano
le 10 Août 2021
That´s a good solution. For any other case, you might try to first use the command find_system, to then look for the blocks you want to change.
The following link has some examples of how to use this command:
2 commentaires
Plus de réponses (0)
Voir également
Catégories
En savoir plus sur Foundation and Custom Domains dans Help Center et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!