open_system() not working with Model Reference
12 次查看(过去 30 天)
显示 更早的评论
Hello,
I am using Simulink R2022b.
Currently I am trying to use the open_system() in the Command Window for a top level model that references other models using the Block "Model" from Simulink/Ports&Subsystems library.
However using :
open_system('TOP_LEVELSystem/Model (NAME_REF_MODEL)/SubsystemXYZ')
does not work because in the top level system it only identifies 'TOP_LEVELSystem/Model' as a block, but nothing below that.
Is there any workaround ? Thank you very much !
0 个评论
采纳的回答
Fangjun Jiang
2023-8-10
You need to get the name of the referenced model first and then open the model separately.
RefModel=get_param('TOP_LEVELSystem/Model','ModelName');
open_system(ModelName);
open_system(fullfile(ModelName,'SubsystemXYZ'))
更多回答(1 个)
Sara Nadeau
2023-8-11
If you want to open the model within the context of the model hierarchy, you can create a Simulink.BlockPath object and then use the open function to open the model to the location specified in the Simulink.BlockPath object.
The example on this page shows how to do this: https://www.mathworks.com/help/simulink/slref/simulink.blockpath.open.html
另请参阅
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!