What's the best way to change a simulink library name?

6 vues (au cours des 30 derniers jours)
Jorhabib Eljaik
Jorhabib Eljaik le 27 Mai 2014
Réponse apportée : Lukas le 24 Sep 2020
Hello there, I have created a simulink library for which I now want to change its name and propagate this to the paths of my library blocks. I understand you can use forwarding tables to update the paths of singles blocks but this way I would have to change them one by one and I already have too many blocks. I also tried changing the name given in the slblocks.m but the blocks paths won't automatically update. Is there any way to make my life easier?
Thanks in advance
  2 commentaires
Raghunandan V
Raghunandan V le 21 Mar 2019
Hi,
Is this question still open?
I have done something similar to this. I can answer you. Please send a library and a model for testing purpose. I will reply with the answer!
madhan ravi
madhan ravi le 21 Mar 2019
Modifié(e) : madhan ravi le 21 Mar 2019
@Raghunandan please do!, OP may not reply because it's too old but you can provide your own to demonstrate.

Connectez-vous pour commenter.

Réponses (1)

Lukas
Lukas le 24 Sep 2020
What about this?
% Find the library blocks in current system
h = find_system(gcs,'LinkStatus','resolved');
origlib = get_param(h,'ReferenceBlock');
oldlibname = 'myoldlib';
newlibname = 'mynewlib';
% Update the references to the new library
newlib = strrep(origlib,[oldlibname '/'],[newlibname '/']);
set_func = @(x,y) set_param(x,'ReferenceBlock',y);
cellfun(set_func,h, newlib);

Catégories

En savoir plus sur Simulink Functions dans Help Center et File Exchange

Produits

Community Treasure Hunt

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

Start Hunting!

Translated by