Main Content

メッセージのプロパティの設定

メッセージは、ローカルで、または Simulink® モデルのチャート間でデータを通信する Stateflow® オブジェクトです。詳細については、メッセージ送信による Stateflow チャートとの通信を参照してください。

Simulink モデル内で Stateflow チャートを作成するときに、[プロパティ インスペクター] またはモデル エクスプローラーでメッセージのプロパティを変更できます。

[プロパティ インスペクター] を使用するには、次を行います。

  1. [モデル化] タブの [データの設計] で、[[シンボル] ペイン] および [プロパティ インスペクター] を選択します。

  2. [シンボル] ペインで、メッセージを選択します。

  3. [プロパティ インスペクター] で、メッセージのプロパティを編集します。

モデル エクスプローラーを使用するには、次を行います。

  1. [モデル化] タブの [データの設計] で、[モデル エクスプローラー] を選択します。

  2. [モデルの階層構造] ペインで、メッセージの親を選択します。

  3. [コンテンツ] ペインで、メッセージを選択します。

  4. [ダイアログ] ペインで、メッセージのプロパティを編集します。

これらのプロパティは、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 モデル内で外部キューを管理する Queue (Simulink) ブロック

  • メッセージがモデルの境界を超えられるようにする、ルートレベルの Inport (Simulink) ブロック

外部メッセージ キューの詳細については、メッセージ (Simulink)を参照してください。

キューの容量

内部の受信側キューに保持されるメッセージの最大数を指定します。キューがいっぱいのときにチャートがメッセージを送信すると、キューのオーバーフローが発生します。メッセージの除外を回避するには、受信メッセージによってキューがオーバーフローしないように、キューの容量を十分に大きい値に設定します。キューの最大容量は 216–1 です。

キュー オーバーフローの診断

受信メッセージの数がキューの容量を超えたときの診断アクションのレベルを指定します。既定のオプションは [Error] です。

診断設定説明
Errorキューがオーバーフローすると、シミュレーションはエラーで停止します。
Warningキューがオーバーフローすると、最後のメッセージが除外され、シミュレーションは警告を表示して続行されます。
Noneキューがオーバーフローすると、最後のメッセージが除外され、シミュレーションは警告を表示せずに続行されます。

キュー タイプ

メッセージが受信側キューから削除される順序を指定します。既定のオプションは [FIFO] です。

キュー タイプ設定説明
FIFO先入れ先出し法
LIFO後入れ先出し法
Priority

データ フィールド内の値に従ってメッセージを削除します。この設定を選択すると、次のオプションをもつ優先順位フィールドが表示されます。

  • Ascending - メッセージはメッセージ データ値の昇順で削除されます。

  • Descending - メッセージはメッセージ データ値の降順で削除されます。

追加のプロパティ

メッセージの追加のプロパティを以下で設定できます。

  • [プロパティ インスペクター][情報] タブ。

  • モデル エクスプローラーの [説明] タブ。

説明.  メッセージの説明。

ドキュメント リンク.  メッセージのオンライン ドキュメンテーションへのリンク。HTML ファイルまたは MATLAB コマンド ウィンドウのテキストとしてドキュメンテーションを表示する、Web の URL アドレスまたは MATLAB コマンドを入力できます。[ドキュメント リンク] ハイパーリンクをクリックすると、Stateflow にドキュメンテーションが表示されます。

参考

ブロック

オブジェクト

ツール

関連するトピック