How do I get the name of the signal if it is not in a structured array?

2 views (last 30 days)
I am attempting to set the parameter of a bus selector to a specific signal in a masked sub system using
load_system('simulink');
set_param(gcb, 'MaskSelfModifiable', 'on');
ph = get_param([gcb,'/In1'],'PortHandles');
sh = get_param(ph.Outport, 'SignalHierarchy');
sc = sh.Children(sns,1).SignalName;
set_param([gcb,'/Bus'],'OutputSignals',sc);
sns is a user input to the masked block
The code above alters the contents of the masked subsytem by when I go to simulate the model I recieve 2 errors
Initialization commands cannot be evaluated.
and
Attempt to reference field of non-structure array.
How do I get the name of the signal if it is not in a structured array?
  1 Comment
Kaustubha Govind
Kaustubha Govind on 19 Aug 2013
What do you get in sh when you run the same commands in the MATLAB prompt after selecting the subsystem?

Sign in to comment.

Answers (0)

Categories

Find more on Configure and View Diagnostics 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!