Merge ブロックの前段と、排他的に駆動する Subsystem の間で計算を行う場合​、予期せぬ結果となる​のはなぜですか?

4 views (last 30 days)
MathWorks Support Team
MathWorks Support Team on 25 Oct 2013
次の図に示すようにモデリングし、If ブロックの条件で排他的に2つの Subsystem を駆動、 Merge ブロックで結果を観測していますが、結果が予期せぬものとなります。
具体的には、下図のモデルでは、If ブロックにてシミュレーション時間において2つの Subsystem がある時刻で切り替わるように設定しているはずですが、常に下段の else の条件で駆動する Subsystem のみが実行されるという結果が、 Merge の出力として観測されます。

Accepted Answer

MathWorks Support Team
MathWorks Support Team on 25 Oct 2013
Merge ブロックには、排他的に駆動する Subsystem からの信号を直接接続する必要があります。
上記の図のように排他的に駆動することを想定した Subsystem と Merge ブロック間に何らかのブロックを挟んだ計算が含まれると、そのパスは常に駆動していると見なされるため、想定する結果となりません。
Merge ブロックには排他的に駆動する各 Subsystem から直接接続し、全ての計算は各 Subsystem 内で行うようにモデリングする必要があります。

More Answers (0)

Categories

Find more on 条件付き実行サブシステムとモデル in Help Center and File Exchange

Products


Release

R2009b

Community Treasure Hunt

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

Start Hunting!