Simulink の信号オブジェクトからのデータ プロパティの解決
チャート内の Stateflow® のローカル データと出力データは、モデル ワークスペースまたはベース ワークスペースの Simulink.Signal
オブジェクトからプロパティを明示的に継承できます。この処理は、信号解決と呼ばれます。解決される信号には、チャートの出力データまたはローカル データと同じ名前を設定する必要があります。
Simulink® の信号の関連付けの詳細については、記号の解釈 (Simulink)および記号関連付けプロセス (Simulink)を参照してください。
継承されるプロパティ
Stateflow のローカル データまたは出力データから Simulink 信号オブジェクトに解決されると、以下のプロパティが継承されます。
サイズ
実数/複素数
型
最小値
最大値
初期値
ストレージ クラス
ストレージ クラスは、生成コードに含まれるチャート データの外観を制御します。Struct ストレージ クラスを使用してパラメーター データを構造体に整理する (Embedded Coder)を参照してください。
信号の関連付けの有効化
明示的な信号の関連付けを有効にするには、次を行います。
[コンフィギュレーション パラメーター] ダイアログ ボックスを開き、[診断]、[データ有効性] ペインで [信号の関連付け] を
None
以外の値に設定します。他のオプションの詳細については、信号の関連付け (Simulink)を参照してください。モデル ワークスペース、ベース ワークスペースまたはデータ ディクショナリで、Stateflow データに継承させるプロパティをもつ
Simulink.Signal
オブジェクトを定義します。Simulink 信号の作成の詳細については、Simulink.Signal
(Simulink) を参照してください。チャートの出力データまたはローカル データを追加します。データには
Simulink.Signal
オブジェクトと同じ名前を使用します。データ プロパティの設定の説明に従って、[データを信号オブジェクトに関連付ける] プロパティを有効にします。このプロパティを選択すると、信号からデータに継承されるプロパティは、ダイアログ ボックスで非表示またはグレー表示になります。
簡単な例
次のモデルは、チャートがローカル データと出力データをどのように 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. Code generation will declare the memory for these * states and exports their symbols. * */ extern real32_T local; /* '<Root>/Signal Object Chart' */
参考
Simulink.Signal
(Simulink)
関連するトピック
- 記号の解釈 (Simulink)
- Struct ストレージ クラスを使用してパラメーター データを構造体に整理する (Embedded Coder)