Using merge block with bus signal inputs.

Hi, guys
I am really confused with the 'If/else -> Action -> Merge' pattern in Simulink, especially when working with Bus Signals.
Say, I created a bus with two members, 'a' and 'b', both are scalars with initial value of 0. I want to repeatedly increase 'a' by 1 when it is less than 5, and otherwise do nothing.
I know I could have merged the member 'a' rather than the whole bus signal. It's just an over-simplified version of my real work, which does lots of stuff in the 'If Action Subsystem'.
I was gonna upload a .mdl file to demonstrate my question more clear. Then I found that there is no way to do that here. So, for short, my question is: how to merge bus signals?
Thanks!
Ben

 Accepted Answer

The Merge block does support bus signals. Look for the section called Bus Support in the documentation.

2 Comments

Thank you Kaustubha. Sorry, I'm late.
I knew that the Merge block supports bus signals. But I couldn't make it work in a straight forward way. Then I found out that I had to put a 'Signal Conversion' block in each 'If Action Subsystem', with its 'Output' parameter setting to 'Bus Copy'. Now my model works fine.
Great! Thanks for posting your solution.

Sign in to comment.

More Answers (0)

Categories

Find more on Modeling 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!