主要内容

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

メッセージ送信によるStateflowチャートとの通信

金宝app®モデルのStateflow®チャート内またはチャート間で通信するには,メッセージを使用します。“メッセージ”は,ローカルで,またはチャート間でデータを通信するStateflowオブジェクトです。送信側チャートから,データが含まれるメッセージを送信または転送できます。受信側チャートでは,キューでメッセージが受信され,チャートによる評価が可能になるまで保持されます。

メッセージは,データとイベントの機能の一部を同時に備えています。メッセージはデータと同様に、数値およびテキスト情報を送信できます。メッセージはイベントと同様に、遷移およびステート アクションをトリガーできます。ただし、

  • メッセージによってチャートの起動がトリガーされることはありません。代わりに,メッセージは,チャートが起動するまでキューに入れられます。チャートは起動すると,キュー内のメッセージに応答できます。

  • 受信側チャートが即時に応答できない場合でも,メッセージは失われません。

詳細については,Stateflowのメッセージ,イベント,データ間の相違の表示を参照してください。

チャート遷移またはステートアクションによってメッセージが評価されると,チャートは,キューにメッセージが含まれているかどうかを特定します。含まれている場合,チャートはそのメッセージをキューから削除します。メッセージは、タイム ステップが終了するか、メッセージがチャートによって転送または廃棄されるまで有効なままです。メッセージが有効な間は、他の遷移やアクションからメッセージ データへのアクセスが可能で、チャートがキューから別のメッセージを削除することはありません。現在のタイム ステップの終了時に、チャートは有効なメッセージをすべて破棄します。

チャートでのメッセージの定義

Stateflowチャートにメッセージを追加するには,[シンボル]ペイン,Stateflowエディターのメニュー,またはモデルエクスプローラーを使用できます。

[シンボル]ペインを使用したメッセージの追加

  1. [モデル化)タブの[データの設計]で,[[シンボル]ペイン]を選択します。

  2. [メッセージの作成)アイコンをクリックします。

  3. 新規メッセージの行の[タイプ]で,アイコンをクリックして以下を選択します。

    • 输入消息

    • 当地消息

    • 输出消息

  4. メッセージの名前を編集します。

  5. 入力メッセージと出力メッセージの場合は,[端子]フィールドをクリックして端子番号を選択します。

  6. メッセージのプロパティを指定するには,プロパティインスペクターを開きます。[シンボル]ペインで,メッセージの行を右クリックして[エクスプローラー]を選択します。詳細については,メッセージのプロパティの設定を参照してください。

Stateflowエディターのメニューを使用したメッセージの追加

  1. Stateflowエディターで,追加するメッセージのスコープに対応するオプションを選択します。

    スコープ オプション
    入力 [モデル化)タブの[データの設計]で,[メッセージ入力)を選択します。
    出力 [モデル化)タブの[データの設計]で,[メッセージ出力)を選択します。
    ローカル [モデル化)タブの[データの設計]で,[メッセージ]を選択します。

  2. [メッセージ]ダイアログボックスで,データプロパティを指定します。詳細については,メッセージのプロパティの設定を参照してください。

モデルエクスプローラーを使用したメッセージの追加

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

  2. [モデルの階層構造)ペインで,表示対象の新規メッセージがあるStateflow階層のオブジェクトを選択します。選択したオブジェクトは,新しいメッセージの親になります。

  3. モデルエクスプローラーのメニューで,[追加][メッセージ]を選択します。既定の定義が設定された新しいメッセージが,モデルエクスプローラーの[コンテンツ]ペインに表示されます。

  4. [メッセージ]ペインで,メッセージのプロパティを指定します。詳細については,メッセージのプロパティの設定を参照してください。

Stateflowメッセージの有効期間

Stateflowメッセージの有効期間は限られています。有効期間は,发送演算子を使用して受信側キューにメッセージを送信したときに始まります。メッセージは,遷移またはステートアクションが評価するか,チャートが收到演算子を使用して受信するまでキュー内に留まります。

メッセージは,チャートによって評価または受信されたときに有効になります。メッセージは,次のときまで有効なままになります。

  • 現在のタイムステップが終了し,残りの有効なメッセージをチャートが破棄するとき。

  • チャートが向前演算子を使用してメッセージを別のキューに転送するとき。メッセージの有効期間は新しいキューで継続されます。

  • チャートが丢弃を使用してメッセージを廃棄するとき。

メッセージが有効な間は,他の遷移およびアクションがメッセージを評価し,そのデータにアクセスすることができます。メッセージが有効かどうかをチェックするには,isvalid演算子を使用します。

シミュレーション時にメッセージの送受信を表示するには,顺序查看器ブロックを仿金宝app真软件モデルに追加します。顺序查看器ブロックには以下が表示されます。

  • 送信されたメッセージ

  • 受信されたメッセージ

  • 転送されたメッセージ

  • 除外されたメッセージ

  • 破棄されたメッセージ

  • 廃棄されたメッセージ

詳細については,序列观众ブロックを使用したメッセージ,イベント,エンティティの可視化を参照してください。

メッセージの制限

以下ではメッセージを使用できません。

  • 摩尔チャート

  • 原子サブチャート

  • ブレークポイント条件式

Cをアクション言語として使用するチャートのメッセージでは,マルチワードの固定小数点データ,または型がint64およびuint64のデータはサポートされません。

参考

||||||(金宝app模型)

関連するトピック