How to create a bus communication with System Composer ?

64 ビュー (過去 30 日間)
Frédéric Schenker
Frédéric Schenker 2021 年 7 月 5 日
コメント済み: Josh Kahn 2023 年 12 月 7 日
Hello,
I'm beginner with System Composer and I am trying to create a bus communication between 2 slaves and 1 master. The connector elements only allow a port-to-port connection. I don't find how to represent the 2 slaves/1 master architecture with the model.
Is there a solution for this ? or an workaround if there is no solution ?
Thanks in advance

回答 (2 件)

Josh Kahn
Josh Kahn 2021 年 9 月 7 日
Hi Frédéric,
To go from one output to many inputs, you can branch the signal by right-clicking the connector and dragging to the next port.
To go from many outputs to one input, you must first use an interface adapter:
Hope this helps!
Josh
  2 件のコメント
Andrea
Andrea 2023 年 12 月 7 日
Hi,
thanks for your answer. I am trying now to go from many inputs to one output (so the contrary to the interface adapter), and I cannot find a block that does this. What would be the solution?
With interface adapter I have created a bus that contains several messages. And now I want to be able to use this bus to select specific messages. Kind of what would be the equivalent to bus selector in simulink.
Thank you!
Josh Kahn
Josh Kahn 2023 年 12 月 7 日
Architecture Ports (the ones on the system bounding box) support dot notation for element selection. You can take advantage of this inside the components themselves to further decompose a signal, or you can also use a component as a many-to-many router.
See my answer here for an example:
Hope this helps,
Josh

サインインしてコメントする。


Yongjian Feng
Yongjian Feng 2021 年 7 月 5 日
編集済み: Yongjian Feng 2021 年 7 月 5 日
Yes, it is doable. First create the bus from the source to the first destination.
Then hold down the control key of your keyboard and then click on any point of the bus. Now you can drag to the second destination.
  3 件のコメント
Yongjian Feng
Yongjian Feng 2021 年 7 月 6 日
There are complex cases to handle if changing direction or bidirection are supported.
Please accept the answer if it works.
Thanks,
Yongjian
Stefan
Stefan 2023 年 2 月 22 日
Is this:
"Then hold down the control key of your keyboard and then click on any point of the bus. Now you can drag to the second destination."
Possible by using commands?
I have a script, where components with ports are generated. And while its possible to connect to ports from components with the same name once, it fails to connect a output port again to another, second input port.

サインインしてコメントする。

カテゴリ

Help Center および File ExchangeSystem Composer についてさらに検索

製品


リリース

R2020b

Community Treasure Hunt

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

Start Hunting!

Translated by