Busのデータを算出​しているサブシステム​以外のサブシステムで​データ書き換えをする​方法をご教示いただき​たい。

12 visualizzazioni (ultimi 30 giorni)
利元 河合
利元 河合 il 18 Apr 2022
Commentato: 利元 河合 il 20 Apr 2022
SubsystemSubで算出されOut Bus Elementで送信される「datasub」の値をSubsystemMainの中で書き換える方法をご教示いただきたいです。

Risposta accettata

Toshinobu Shintai
Toshinobu Shintai il 18 Apr 2022
「Bus Assignment」ブロックが使えます。
ただし、これを使う前に、このモデルが代数ループを生む形になっていますので、そこを改善した方がよいです。バスエディターを用いて「MainCan」「SubCalc」「Sys_A」「Sys_B」「Sys_C」バスの定義を明確にしました。バスの定義はslddファイルに保存し、slddファイルとSimulinkモデルを関連付けています(添付ファイルをご確認ください)。
次にBus Creatorブロックにそのデータ型を設定しました。その後、Unit Delayブロックを挿入しました。
そして回答になりますが、バス信号に直列に挿入する形でBus Assignmentブロックを挿入し、各要素に対して値を代入することができます。
  1 Commento
利元 河合
利元 河合 il 20 Apr 2022
ご教示ありがとうございました。
代数ループを回避する為にUnit Delayブロックを挿入し、
Bus信号をBus Assignmentブロックで認識できる様に
バスエディターでBusを定義し、Bus Assignmentブロックで書き換えたい信号を抽出し代入したい値を結線する。
と理解しました。バスエディターの使い方を確認して、検討してみます。

Accedi per commentare.

Più risposte (0)

Categorie

Scopri di più su モデル化 in Help Center e File Exchange

Tag

Prodotti


Release

R2021a

Community Treasure Hunt

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

Start Hunting!