필터 지우기
필터 지우기

Find model references within model references

조회 수: 18 (최근 30일)
Cedric Kotitschke
Cedric Kotitschke 2023년 2월 20일
편집: Suraj 2023년 3월 2일
Hello,
I'm trying to find a model reference within a large simulink model which contains multiple model references, often also model references within model references.
Given the name of the model referenced, how do I get the path (within the simulink model) to that model block?
I know the function
[models,blocks] = find_mdlrefs(system)
but it doesn't connect the model name to the model block.
I also tried
modelBlock = find_system(sysName, 'BlockType', 'ModelReference');
but it only returns the highest level model references but not those within other model references.
Can you help me?
thanks!
  댓글 수: 1
Oguz Kaan Hancioglu
Oguz Kaan Hancioglu 2023년 2월 20일
Find system has several options. Since you said it only returns the highest model references, you can change the SearchDepth of the find_system function.
Also you can change LookUnderMask, Variants properties of the find_system function to find your model. I haven't tried 'FindAll" option but maybe it solves your problem.

댓글을 달려면 로그인하십시오.

답변 (1개)

Suraj
Suraj 2023년 3월 2일
편집: Suraj 2023년 3월 2일
It is my understanding that you would like to get the path names of a particular model reference in your large Simulink model.
I’d suggest to use the find_mdlrefs() method, which returns all the model reference blocks in the hierarchy. Further, you may iterate through the array to find the required model.
getfullname(), get_param() and getSimulinkBlockHandle() can prove useful for your issue.

카테고리

Help CenterFile Exchange에서 Programmatic Model Editing에 대해 자세히 알아보기

제품


릴리스

R2021a

Community Treasure Hunt

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

Start Hunting!

Translated by