Prevent execution of a block if link to library is not resolved

조회 수: 4 (최근 30일)
Arthur Roué
Arthur Roué 2020년 12월 21일
댓글: Arthur Roué 2020년 12월 31일
I'm trying to protect some custom Simscape blocks (*.ssc) to run if the link to my library is not resolved.
This behaviour can be found with blocks of Simscape Power System library, but I can't find where this protection is implemented. It doesn't seem to be in block callback because you can remove them after breaking the link and the block won't run.
Does anyone have an idea or a lead to implement such a protection properly (forbid to run a block if its library link is not resolved) ?

답변 (1개)

Aghamarsh Varanasi
Aghamarsh Varanasi 2020년 12월 29일
Hi,
To protect the custom Simscape block, you can use the ‘Lock Links’ feature under the Library Tab. This doesnot allow the user to break the link of the block from the Parent Library
The documentation to Lock Links to Blocks in a Library can be found here.
  댓글 수: 1
Arthur Roué
Arthur Roué 2020년 12월 31일
Thanks. Indeed, if my library model got locked links and the library source file is not writable for end users, then they will not be able to modify the library.
It only requires protecting the library source file from writing.
However, the behavior I tried to reproduce was this one:
1. Break the link for a block in a lib (i.e a Simscape electrical source)
2. Run a simulation and an error occurs
Here, the link can be broken but the simulation will not run. With locked link, we cannot break the link in the first place. Is this a special behavior for Simscape blocks or is it possible to throw this kind of error if a link is broken?

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

카테고리

Help CenterFile Exchange에서 Switches and Breakers에 대해 자세히 알아보기

제품

Community Treasure Hunt

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

Start Hunting!

Translated by