コード生成時だけコメントアウトする方法

5 ビュー (過去 30 日間)
直樹 田中
直樹 田中 2021 年 1 月 29 日
コメント済み: 直樹 田中 2021 年 2 月 1 日
simulinkで作製したモデルの中で、あるサブシステム(もしくはブロック)だけはシミュレーション時だけ有効、EmbeddedCoderでコード生成する時には無効(コメントアウト)する方法はありますか?

回答 (1 件)

Toshinobu Shintai
Toshinobu Shintai 2021 年 1 月 30 日
編集済み: Toshinobu Shintai 2021 年 1 月 30 日
R2020bであれば、バリアントサブシステム(Variant Subsystem)を使うことで可能です。以下のようにバリアント制御モードに「sim/codegenの切り替え」が存在しています。
このモードに設定後、バリアント制御スイッチに「(sim)」と設定すればシミュレーション時、「(codegen)」と設定すればコード生成時にバリアントが切り替わるようになります。
R2019bでは上記の機能が使えません。
代替手段としては昔ながらの方法になりますが、シミュレーション実行時には「rtwtypes.h」が読み込まれませんので、
#define RTWTYPES_H
が実行されません。
従って、上記defineが定義されているかどうかを調べることで、今の実行がシミュレーションなのかそうでないのか、を知ることができます。
  1 件のコメント
直樹 田中
直樹 田中 2021 年 2 月 1 日
ご回答ありがとうございます。
>上記defineが定義されているかどうかを調べること
調べ方と、調べたうえでどのようにすればいいかもお教え頂ければ幸いです。

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

カテゴリ

Help Center および File Exchange配布 についてさらに検索

製品


リリース

R2019b

Community Treasure Hunt

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

Start Hunting!