Main Content

最新のリリースでは、このページがまだ翻訳されていません。 このページの最新版は英語でご覧になれます。

Simulink の信号オブジェクトからのデータ プロパティの解決

チャート内の Stateflow® のローカル データと出力データは、モデル ワークスペースまたはベース ワークスペースの Simulink.Signal オブジェクトからプロパティを明示的に継承できます。この処理は、信号解決と呼ばれます。解決される信号には、チャートの出力データまたはローカル データと同じ名前を設定する必要があります。

Simulink® の信号の関連付けの詳細については、記号の解釈および記号関連付けプロセスを参照してください。

継承されるプロパティ

Stateflow のローカル データまたは出力データから Simulink 信号オブジェクトに解決されると、以下のプロパティが継承されます。

  • サイズ

  • 実数/複素数

  • データ型

  • 最小値

  • 最大値

  • 初期値

  • ストレージ クラス

ストレージ クラスは、生成コードに含まれるチャート データの外観を制御します。Organize Parameter Data into a Structure by Using Struct Storage Class (Embedded Coder)を参照してください。

信号の関連付けの有効化

明示的な信号解決を有効にするには、以下の手順に従います。

  1. [コンフィギュレーション パラメーター][診断][データ有効性][信号の関連付け] を、None 以外の値に設定します。他のオプションの詳細については、信号の関連付けを参照してください。

  2. モデル ワークスペース、ベース ワークスペースまたはデータ ディクショナリで、Stateflow データに継承させるプロパティをもつ Simulink.Signal オブジェクトを定義します。Simulink 信号の作成の詳細については、Simulink.Signal を参照してください。

  3. 出力データまたはローカル データをチャートに追加します。

  4. Simulink.Signal オブジェクトの名前と一致するデータ名を入力します。

  5. データ プロパティで [データを信号オブジェクトに関連付ける] チェック ボックスをオンにします。このチェック ボックスをオンにすると、信号からデータに継承されるプロパティは、ダイアログ ボックスで非表示またはグレー表示になります。

簡単な例

次のモデルは、チャートがローカル データと出力データをどのように Simulink.Signal オブジェクトに解決するかを示しています。

ベース ワークスペースには、3 つの Simulink.Signal オブジェクトがあり、それぞれが別々のプロパティ セットをもっています。

  • y1 は次のプロパティをもっています。[型] = double[次元] = 1[ストレージ クラス] = Model default

  • y2 は次のプロパティをもっています。[型] = uint32[次元] = [2 2][ストレージ クラス] = Auto

  • local は次のプロパティをもっています。[型] = single[次元] = 1[ストレージ クラス] = ExportedGlobal

チャートには、同じ名前の信号に解決される 3 つのデータ オブジェクト (2 つは出力、1 つはローカル変数) が存在しています。

モデルを作成すると、各データ オブジェクトは、同じ名前が設定された信号のプロパティを継承します。

生成コードでは、関連付けられた Simulink 信号からデータに継承されたストレージ クラスに基づいて、データが宣言されます。たとえば、以下のヘッダー ファイルでは、エクスポート対象のグローバル変数として local が宣言されています。

/*
 * Exported States
 *
 * Note: Exported states are block states with an exported
 * global storage class designation.
 *
 */
extern real32_T local;                  /* '<Root>/Signal Object Chart' */

参考

関連するトピック