Simscape と Simulink でのコード生成の違い
一般的に、Simscape™ モデルから生成されたコードの使用方法は、通常の Simulink® モデルから生成されたコードの使用方法と同様です。しかし、相違点もあります。
Simscape コードと Simulink コードは別々に生成
Simulink Coder™ ソフトウェアは、Simscape ブロックからのコードをモデル内の Simulink ブロックとは別に生成します。生成された Simscape コードは model.rtw
や Target Language Compiler を通過しません。ただし、1 つのモデルから生成されたコードはすべて同じディレクトリに存在します。
コンパイラとプロセッサのアーキテクチャ要件
Simscape コードの生成と実行を行うには、次のものをサポートしているコンパイラとプロセッサが必要です。
IEEE® Standard for Floating-Point Arithmetic (IEEE 754) で定義されている 64 ビット精度浮動小数点演算
32 ビット整数サイズ
サポートされているコンパイラのバージョンの詳細は、以下を参照してください。
特定コンパイラ用のプリコンパイル済みライブラリ
Simscape ソフトウェアとアドオン製品では、Simulink Coder ソフトウェアがサポートしているコンパイラ用にプリコンパイルされた静的ランタイム ライブラリが提供されています。詳細については、以下を参照してください。
https://www.mathworks.com/support/compilers/current_release
この他のすべてのコンパイラについては、Simscape モデルからの生成コードに必要な静的ランタイム ライブラリはモデルごとに 1 回、コード生成のビルド プロセス時にコンパイルされます。
Simscape コードの再利用は不可
Simulink の再利用可能なサブシステムは、サブシステムから 1 度生成されたコードを再利用します。Simscape ブロックがあるサブシステムから再利用可能なコードを生成することはできません。
調整可能なパラメーターは使用不可
調整可能なパラメーターとは、シミュレーション実行中に変更できる Simulink ランタイム パラメーターです。Simscape ブロックでは、シミュレーションと生成コードのいずれでも調整可能なパラメーターを使用することはできません。ただし、Simscape 実行時パラメーター (実行時には変更できるがシミュレーション中は変更できないパラメーター) は使用可能です。詳細については、実行時パラメーターを参照してください。
Simscape ランタイム パラメーターのインライン化に対するグローバル例外のオーバーライド
Simscape モデルから生成されたコードのパラメーターのインライン化を有効にすると、すべてのランタイム パラメーターがインライン化されます。グローバルな Simscape ブロックのパラメーターの一部をインライン化の例外として設定した場合、この例外は無視されます。グローバルな調整可能パラメーターの変更を行うには、モデルからコードを再生成する必要があります。