Main Content

このページの翻訳は最新ではありません。ここをクリックして、英語の最新版を参照してください。

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

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

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

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

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

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

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

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

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

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

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

メッセージのプロパティは、Stateflow.Message オブジェクトを使用してプログラムで指定することもできます。Stateflow プログラム インターフェイスの詳細については、Overview of the 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 です。

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

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

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

キュー タイプ

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

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

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

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

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

参考

(Simulink)

関連するトピック