メッセージのプロパティの設定
メッセージは、ローカルで、または Simulink® モデルのチャート間でデータを通信する Stateflow® オブジェクトです。詳細については、メッセージ送信による Stateflow チャートとの通信を参照してください。
Simulink モデル内で Stateflow チャートを作成するときに、[プロパティ インスペクター] またはモデル エクスプローラーでメッセージのプロパティを変更できます。
[プロパティ インスペクター] を使用するには、次を行います。
[モデル化] タブの [データの設計] で、[[シンボル] ペイン] および [プロパティ インスペクター] を選択します。
[シンボル] ペインで、メッセージを選択します。
[プロパティ インスペクター] で、メッセージのプロパティを編集します。
モデル エクスプローラーを使用するには、次を行います。
[モデル化] タブの [データの設計] で、[モデル エクスプローラー] を選択します。
[モデルの階層構造] ペインで、メッセージの親を選択します。
[コンテンツ] ペインで、メッセージを選択します。
[ダイアログ] ペインで、メッセージのプロパティを編集します。
これらのプロパティは、Stateflow.Message
オブジェクトを使用してプログラムで変更することもできます。Stateflow プログラム インターフェイスの詳細については、Stateflow API の概要を参照してください。
Stateflow のメッセージのプロパティ
名前
メッセージの名前。詳細については、Stateflow オブジェクトの命名のガイドラインを参照してください。
スコープ
メッセージのスコープ。スコープは、メッセージが発生する領域を、親オブジェクトと相対的に指定します。
スコープ | 説明 |
---|---|
入力 | Simulink モデル内の別のブロックから受信するメッセージ。各入力メッセージには、Stateflow チャートが保持する内部の受信側キューか、Queue (Simulink) ブロックが管理する外部の受信側キューを使用できます。 |
出力 | 出力端子経由で Simulink モデル内の別のブロックに送信されるメッセージ。 |
ローカル | Stateflow チャートに対してローカルなメッセージ。Stateflow チャートは、各ローカル メッセージについて内部の受信側キューを保持します。ローカル メッセージを送信した場合、同じチャート内のステートおよび遷移アクションによって認識されます。ローカル メッセージはチャートの外部には送信できません。 |
端子
メッセージに関連付けられた端子のインデックス。このプロパティは、入出力メッセージに対してのみ適用されます。
サイズ
メッセージ データ フィールドのサイズ。詳細については、Stateflow データのサイズの指定を参照してください。
実数/複素数
メッセージ データ フィールドが複素数値を受け入れるかどうかを指定します。
実数/複素数の設定 | 説明 |
---|---|
オフ | データ フィールドは複素数値を受け入れません。 |
オン | データ フィールドは複素数値を受け入れます。 |
継承 | データ フィールドは、実数/複素数の設定を Simulink ブロックから継承します。 |
既定値は [オフ]
です。詳細については、Stateflow チャートの複素数データを参照してください。
型
メッセージ データ フィールドの型。データ型を指定するには、次を行います。
[型] ドロップダウン リストから、組み込み型を選択する。
[型] フィールドに、データ型として評価される式を入力する。
また、モデル エクスプローラーで、[データ型アシスタントを表示] ボタン をクリックしてデータ型アシスタントを開くこともできます。データの [モード] を指定してから、そのモードに基づいてデータ型を指定します。詳細については、Stateflow データの型の指定を参照してください。
メモ
C をアクション言語として使用するチャートのメッセージでは、マルチワードの固定小数点データはサポートされません。
初期値
メッセージ データの初期値。Stateflow 階層、MATLAB® ベース ワークスペース、または Simulink のマスク サブシステムで定義された式またはパラメーターを入力します。このプロパティは、ローカル メッセージおよび出力メッセージに対してのみ適用されます。
値を指定しない場合、数値データの既定の値は 0 です。列挙データの場合、既定値は通常、定義の enumeration
セクションのリストに最初に表示されている値です。定義の methods
セクションで、列挙型に対して異なる既定値を指定できます。詳細については、列挙データ型の定義を参照してください。
優先順位
メッセージの優先順位。2 つの異なるメッセージが同時に発生した場合、このプロパティによって、どちらのメッセージを先に処理するかが決定されます。数値が小さいほど、高い優先順位を示します。このプロパティは、離散イベント チャートのローカル メッセージおよび出力メッセージについてのみ表示されます。詳細については、Create Custom Queuing Systems Using Discrete-Event Stateflow Charts (SimEvents)を参照してください。
監視ウィンドウに追加
[Stateflow ブレークポイントと監視ウィンドウ] で、メッセージ キューとデータ フィールドの監視を有効にします。詳細については、ブレークポイントと監視ウィンドウでのデータの表示を参照してください。
メッセージ キューのプロパティ
これらのプロパティは受信側キューの動作を定義し、入力メッセージとローカル メッセージのみに適用されます。
内部キューの使用
Stateflow チャートが入力メッセージ用に内部の受信側キューを保持するよう指定します。既定では、このプロパティは有効にされています。このプロパティを無効にした場合、メッセージ入力端子を次に接続することができます。
外部メッセージ キューの詳細については、メッセージ (Simulink)を参照してください。
キューの容量
内部の受信側キューに保持されるメッセージの最大数を指定します。キューがいっぱいのときにチャートがメッセージを送信すると、キューのオーバーフローが発生します。メッセージの除外を回避するには、受信メッセージによってキューがオーバーフローしないように、キューの容量を十分に大きい値に設定します。キューの最大容量は 216–1 です。
キュー オーバーフローの診断
受信メッセージの数がキューの容量を超えたときの診断アクションのレベルを指定します。既定のオプションは [エラー]
です。
診断設定 | 説明 |
---|---|
エラー | キューがオーバーフローすると、シミュレーションはエラーで停止します。 |
警告 | キューがオーバーフローすると、最後のメッセージが除外され、シミュレーションは警告を表示して続行されます。 |
なし | キューがオーバーフローすると、最後のメッセージが除外され、シミュレーションは警告を表示せずに続行されます。 |
キュー タイプ
メッセージが受信側キューから削除される順序を指定します。既定のオプションは [FIFO]
です。
キュー タイプ設定 | 説明 |
---|---|
FIFO | 先入れ先出し法 |
LIFO | 後入れ先出し法 |
Priority | データ フィールド内の値に従ってメッセージを削除します。この設定を選択すると、次のオプションをもつ優先順位フィールドが表示されます。
|
追加のプロパティ
メッセージの追加のプロパティを以下で設定できます。
[プロパティ インスペクター] の [情報] タブ。
モデル エクスプローラーの [説明] タブ。
説明. メッセージの説明。
ドキュメント リンク. メッセージのオンライン ドキュメンテーションへのリンク。HTML ファイルまたは MATLAB コマンド ウィンドウのテキストとしてドキュメンテーションを表示する、Web の URL アドレスまたは MATLAB コマンドを入力できます。[ドキュメント リンク] ハイパーリンクをクリックすると、Stateflow にドキュメンテーションが表示されます。
参考
ブロック
- Queue (Simulink)
オブジェクト
ツール
- モデル エクスプローラー (Simulink)