Cant use nested bus objects with bus object arrays in simulink
22 views (last 30 days)
Show older comments
Hello,
I am trying to build a Bus (struct) (<Quiver>) that has an array of a nested bus type (<Arrow>). Later, I want to dissect this array (<arrows>), loop over it and use the members (<point>, <head>) of that bus object.
However, I get the following error:
Selected signal 'arrows.origin.x' in the Bus Selector block 'Demo/Inport' is invalid since it refers to a bus element within an array of sub-buses. The path to the array of sub-buses is 'arrows'. Please select the appropriate array element using a Selector block before using the Bus Selector block to access an element within the bus.
This is very annoying. Programatically this is totally normal, nested stucts. Why can I specify the dimension of that struct array, if it wont compile?
How can I do what I intend to do?
This is what I am doing, basically:
1 Comment
Accepted Answer
Mark McBroom
on 3 Feb 2023
As the error message indicates, configure the bus selector to select the arrows element, which is an array of buses. You can then use a selector block to chose one or more of the elements from the array of buses... and/or you can feed into a For Each Subsystem to operate on each of the elements
3 Comments
Saifsiddique
on 14 Feb 2024
I'm also stuck with the same problem. Does it mean that you selected for this particualr example Bus:Arrow instead of Bus: Quiver in the Data type?
VIGNESH BALAJI
on 27 May 2024
Edited: VIGNESH BALAJI
on 27 May 2024
@Mark McBroom , @Timo and @Saifsiddique I am facing the same problem. I am unable to understand your statements. Can you please let me know how you solved the problem.
More Answers (0)
See Also
Categories
Find more on Simulink Coder 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!