How can I programmatically replace a referenced model with a Subsystem in Simulink?
11 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
MathWorks Support Team
am 18 Jun. 2018
Beantwortet: MathWorks Support Team
am 18 Jun. 2018
I have a Simulink model with a model reference. I would like to programmatically replace the 'Model' block with a 'Subsystem' block.
Akzeptierte Antwort
MathWorks Support Team
am 18 Jun. 2018
Assuming that you have a 'parent.slx' model which references a model 'child.slx' (whose block name is 'Model' in the parent Simulink model), use either of the following options:
1)
>> open_system('parent');
>> add_block('built-in/Subsystem',['parent/mySub']);
>> load_system('child');
>> Simulink.BlockDiagram.copyContentsToSubsystem('child',['parent/mySub']);
>> pos = get_param('parent/Model','position');
>> delete_block('parent/Model');
>> set_param('parent/mySub','position',pos);
2)
>> open_system('parent');
>> load_system('child');
>> convert2subsys('child');
>> add_block('child/Subsystem','parent/mySub');
>> pos = get_param('parent/Model','position');
>> delete_block('parent/Model');
>> set_param('parent/mySub','position',pos);
>> close_system('child',0);
where 'convert2subsys' is defined at the following link:
Please refer to the attachment for further details.
0 Kommentare
Weitere Antworten (0)
Siehe auch
Kategorien
Mehr zu Programmatic Model Editing finden Sie in Help Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!