モデルのソート順序と​生成コードの処理順序​が一致していることを​確認する方法はありま​すか?

13 ビュー (過去 30 日間)
MathWorks Support Team
MathWorks Support Team 2013 年 10 月 25 日
編集済み: MathWorks Support Team 2021 年 7 月 1 日
モデルのソート順序(ブロック実行順序)と Simulink Coder(旧 Real-Time Workshop) による生成コードの処理順序が一致しているかを確認する方法を教えてください。言い換えると、シミュレーションでの実行順番と同じであれば、生成コードの順番は正しいと記述されたドキュメントがあれば教えてください。

採用された回答

MathWorks Support Team
MathWorks Support Team 2021 年 7 月 1 日
編集済み: MathWorks Support Team 2021 年 7 月 1 日
モデルのソート順序と生成コードの処理順序については、必ずしも完全に一致するものではありません。
一致しないケースとしては、各ブロック間で依存関係がなく、ブロックに優先順位が設定されていない場合にモデルとコード生成のソート順序が異なるケースがあります。
例えば、アトミックサブシステムのケースについても、サブシステムのブロックが増えて、依存関係がないブロックがある場合に、ソート順位の不一致が起こる可能性もあります。
なお、ユーザ側で明示的にブロックの優先度を設定することで、回避することができます。ブロックを右クリックし、"ブロックプロパティ" -> "優先順位" にて整数値を指定します。数値が小さいほど優先順位が高くなります。これは、ブロックの依存関係を手動で設定することとなります。
補足:
ユーザ側で明示的にブロックの優先度を設定したとしても、シミュレーションの実行順序が生成されるコードに「必ず」反映されるわけではありません。
Embedded Coderは、最適化のために実行順序を変えることがあります。ただし、その場合でもEmbedded Coderは、Simulationと同じ実行結果になるコードを生成します。

その他の回答 (0 件)

カテゴリ

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

製品


リリース

R2010b

Community Treasure Hunt

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

Start Hunting!