Main Content

Simscape 実行時パラメーターの管理

既定では、すべての Simscape™ パラメーターはコンパイル時に構成可能です。コンパイル時パラメーターの値は、開発用コンピューター上のプラント モデルでしか変更できません。

Simscape 実行時パラメーターの指定

一部の Simscape ブロック パラメーターは、コンパイル時にのみ構成可能なパラメーターです。特定の Simscape パラメーターが実行時に設定変更できるかどうかを判断するには、ブロックのプロパティ インスペクターでパラメーターの設定を調べます。パラメーターが実行時に構成可能である場合、ブロックのプロパティ インスペクターで名前の前に展開アイコンのシンボルが表示されます。展開すると、このパラメーターの [設定変更] 設定が既定の [コンパイル時] に設定された状態で表示されます。これを [実行時] に変更にして、パラメーターを実行時構成可能に設定できます。Simscape モデルからコードを生成する前の任意のタイミングで、この設定を変更できます。

次の図では、DC Voltage Source ブロックの [定電圧] パラメーターの実行時設定変更が有効になっています。パラメーターの名前の前に展開アイコンがないか、[設定変更] 設定が無効になっている場合、そのパラメーターはコンパイル時にのみ構成可能です。

Simscape パラメーターを実行時構成可能になるよう設定する場合は、これを数値のままにすることも、図に示すようにワークスペースで変数を指定することもできます。変数を使用するには、以下を行います。

  1. コマンド プロンプト、コールバック、スクリプト、MAT ファイルなどの入力ツールを使用して、MATLAB® ワークスペース内の変数に値を代入します。

  2. ブロックのプロパティ インスペクターの設定でパラメーターの変数を指定します。

  3. 入力ツールを使用して、変数の値を任意に変更します。

どちらの方法でパラメーターを指定しても、新しい値はシミュレーションの再開時に組み込まれます。変数を使用して Simscape 実行時パラメーターを指定する方法を示す例については、Simscape 実行時パラメーターの指定と変更を参照してください。

生成コードの既定のパラメーター動作を設定する

既定では、シミュレーションの停止時に、モデルを再コンパイルする必要なく Simscape 実行時パラメーターの値を変更できます。コード生成時の既定のパラメーター動作を [インライン] に変更すると、生成されたコードではすべてのブロック パラメーターの数値が定数としてインライン化されます。インライン パラメーターを使用して生成するコードは、パラメーター値の格納や取得が必要ないため、より計算効率に優れています。

Simscape 実行時パラメーターの既定の動作を設定するには、次を行います。

  1. モデル コンフィギュレーション パラメーターを開きます。[モデル化] タブで、[モデル設定][モデル設定] をクリックします。

  2. [コード生成][最適化] を選択します。

  3. [既定のパラメーター動作] パラメーターの値を選択します。

    • 調整可能 (既定) — Simulink® Coder™ は、シミュレーションの実行間に再コンパイルなしでのパラメーター変更を可能にするデータ構造を生成します。

    • インラインSimulink Coder は、生成する C コードですべてのブロック パラメーターの数値を定数として扱い、変更できないようにレンダリングします。

既定のインライン動作の選択的オーバーライド

指定する最初の実行時構成可能パラメーターは計算コストが最も高く、加えられるコストは追加パラメーターごとに前回よりも低くなります。したがって、インライン化によってモデルの計算コストが大幅に減少していたとしても、選択的にインライン化している個々の Simscape 実行時パラメーターの減少幅はわずかです。しかし、オーバーランの危険性があるモデルに Simscape 実行時パラメーターが含まれている場合は、計算コストを十分に減少させてオーバーランを防止できる可能性があります。

例外のあるインライン化を行うには、次を行います。

  1. [コード生成][最適化] 設定で、[既定のパラメーター動作][インライン] に設定します。

  2. [設定] をクリックして [モデル パラメーター設定] ウィンドウを開きます。

  3. 必要に応じて、個々のパラメーターをインラインから削除します。

関連するトピック