Simscape の実行時パラメーターと Simulink の調整可能なパラメーターの違い
Simscape™ の実行時パラメーターと Simulink® の調整可能なパラメーターではどちらも、開発用コンピューターまたはターゲット コンピューター上のパラメーター値を、モデルを再コンパイルせずに変更できます。ただし、次の重要な点で違いがあります。
Simulink の調整可能なパラメーターの値は、シミュレーションの実行中に変更できますが、これにより実行中のシミュレーションに影響が生じます。Simscape の実行時パラメーターは実行時に構成可能です。実行時に構成可能なパラメーターの値を変更できるのは、シミュレーションが停止しているときのみです。
Simulink の調整可能なパラメーターは既定で調整可能です。Simscape ブロック パラメーターは、既定ではコンパイル時にのみ構成可能です。Simscape ブロック パラメーターを実行時に構成できるようにするには、そのように指定しなければなりません。
コード生成では、[既定のパラメーター動作] を
[調整可能]
または[インライン]
に指定します。インライン化されたパラメーターは定数としてコンパイラで指定されるため、生成コードで変更できません。調整可能なパラメーターの値は変更可能なグローバル変数または構造体フィールドとしてコンパイラで指定されるため、生成コードで変更できます。[既定のパラメーター動作] を
[調整可能]
に設定すると、コンパイラは Simscape の実行時パラメーターと Simulink の調整可能なパラメーターをすべて、生成コードで変更可能なエンティティとして指定します。しかし、既定の動作を[インライン]
に設定すると、コンパイラは Simscape の実行時パラメーターのみをインライン化します。Simulink の調整可能なパラメーターは引き続き、変更可能なエンティティとしてコード内に生成されます。既定の動作が [インライン] である場合に、生成コードにおける特定の Simscape 実行時パラメーターの値を変更するには、そのパラメーターをインライン化の例外として宣言します。
次の表に、実行時パラメーターまたは実行時に構成可能なパラメーターを変更できる、状態、モード、およびコード セクションを示します。
マシン | Simulink シミュレーション モード | シミュレーション ステータス | 変更する生成コードのセクション | Simscape の実行時パラメーターが変更可能 | Simulink の調整可能なパラメーターが変更可能 |
---|---|---|---|---|---|
開発用 | ノーマル | 停止 | 該当なし | はい | はい |
開発用 | ノーマル | 実行中 | 該当なし | いいえ | はい |
開発用またはターゲット | ノーマル、アクセラレータ、ラピッド アクセラレータ、SIL、PIL またはエクスターナル | 停止 | 該当なし | はい | はい |
開発用またはターゲット | ノーマル、アクセラレータ、ラピッド アクセラレータ、SIL、PIL またはエクスターナル | 実行中 | 該当なし | いいえ | はい |
ターゲット | ノーマル、SIL、PIL、エクスターナル | 停止 | セットアップ関数 | はい | はい |
ターゲット | ノーマル、SIL、PIL、エクスターナル | 実行中 |
| いいえ | はい |
ノーマル モード シミュレーション間では、Simscape の実行時パラメーターや Simulink の調整可能なパラメーターを変更した場合、変更がモデルの構造に影響を与えない限り、高速リスタートを使用して再コンパイルを避けることができます。