get Bus signal names
82 views (last 30 days)
Show older comments
how to get the names of each signal of a bus signal using MATLAB commands ?
0 Comments
Answers (4)
Guy Rouleau
on 8 Sep 2011
Since R2010b I think, you can use the "SignalHierarchy" property of a port to get the names of each signal in a bus. fo example, with the demo model 'busdemo', you can do:
busdemo([],[],[],'compile')
ph = get_param('busdemo/Bus Creator', 'PortHandles');
sh = get_param(ph.Outport, 'SignalHierarchy')
See details here:
3 Comments
Sebastian
on 13 Sep 2016
This is awesome! You made my day! I unsuccessfully tried to figure out, how to find the names from the input signals, but this is just great!
One question: Is it possible that 'SignalHierarchy' is also working without updating/compiling the model? Your code also seems to work without it.
Kanava Pitchai
on 16 Mar 2020
This Syntax is working for Simulink Model.
But for Library Model the 'SignalHierarchy' syntax is not executing. Because in Library model this option 'SignalHierarchy' is disabled.
Any way to get the Parameters of Input Port?
Thanks in advance.
Fangjun Jiang
on 8 Sep 2011
How is the bus created? Do you want the signal name in MATLAB or Simulink. In Simulink, you can use the Bus Selector block to see the signal names. In MATLAB, maybe use Simulink.Bus.objectToCell
doc Simulink.Bus.objectToCell
pavan
on 16 Mar 2018
awesome ! Is there any way to get the 'compiled data types' of these signal hierarchy ? I want to know them so that Simulink object can be created from these children's info.
Please let me know if if I can apply >>get_param(ph.Inports, 'CompiledDataTypes')
this method to signals also.
0 Comments
MC
on 2 Apr 2021
In 2020a if you have a bus selector block connected to the bus you can use its InputSignals parameter. The return value is a cell array with nested cell arrays for nested buses.
0 Comments
See Also
Categories
Find more on Signals in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!