How can we use find_system to get a block's SID

20 views (last 30 days)
In this page of the Matalb's documentation, it is said not to use the Simulink.ID.getSID() command and use find_system instead.
I have trouble understanding how to use find_system in order to replace this command.
I would also like to know why using Simulink.ID.getSID() is not recommanded.
Regards,
P Lepage.

Accepted Answer

Fangjun Jiang
Fangjun Jiang on 29 Sep 2020
It is true that find_system() is not the real replacement. If full block path is used in Simulink.ID.getSID() to get SID, then the replacement should be get_param(FullBlockPath, 'SID'). find_system might be used to find the block first.
Looking at the warning message in document for Simulink.ID.getSID, Simulink.ID.getHandle and Simulink.ID.hilite, I assume Mathworks is phasing out the Simulink.ID sub-class.
  5 Comments
Fangjun Jiang
Fangjun Jiang on 29 Sep 2020
When would the SID path (ModelName:SID) be used? If I know the SID number, I would do find_system(Model,'SID',###).
P Lepage
P Lepage on 1 Oct 2020
They are stored in a map to have a reference that does not depend on block's name. This map is then used to hilite_system the block it contains through callbacks and generated html documents.

Sign in to comment.

More Answers (0)

Categories

Find more on Simulink Functions in Help Center and File Exchange

Products

Community Treasure Hunt

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

Start Hunting!