How to connect bus signal with different data size using multiport switch?

1 次查看(过去 30 天)
Hi,
I have two subsystems, and I want to minimized the data size for the signal that is been transfered in between the subsystems. The following figure shows the ideal case. When Constant1 = 1, the first signal with size {1} is transmitted; when Constant1 = 2, the second signal with size {2} is transmitted; Unfortunately, there will be error pop-up regarding to data size mistmatching in this model, which is attached. How could I solve this error or is there other approach to minized this data size. Noted that the constant value should be constant during the simulation.
Regards,
Andy

采纳的回答

Mark McBroom
Mark McBroom 2021-1-4
I made a number of changes to your model, most importably was to remove mux blocks. Mux blocks should not be used. Use Vector/Matrix concat blocks to create vectors/matrices, use Bus Creater blocks to create buses.

更多回答(1 个)

Mark McBroom
Mark McBroom 2021-1-1
On the Multi-port switch block, on the Signal Attirbutes tab, check the box "Allow different data input sizes".
  1 个评论
And Meng
And Meng 2021-1-4
Thank you for your reply, but if using this approach the bus selector cannot accurately capture the virtual bus signal. Would there be other approach to deal with this data size? I have also attached the model for your reference.

请先登录,再进行评论。

产品


版本

R2015b

Community Treasure Hunt

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

Start Hunting!

Translated by