このページの翻訳は最新ではありません。ここをクリックして,英語の最新版を参照してください。
“入力イベント”はStateflow®チャートの外部で発生し,そのチャートでのみ認識されます。このタイプのイベントにより,他のStateflowチャートを含めた他の仿真软金宝app件®ブロックは,特定のチャートに対してその外部で発生したイベントを通知できるようになります。入力イベントを定義するには,次を行います。
チャートでのイベントの定義の説明に従って,イベントをStateflowチャートに追加します。
イベントの[スコープ]プロパティを(金宝app仿真软件から入力)
に設定します。金宝app仿真软件モデルのStateflowブロックの一番上に単一のトリガー端子が表示されます。
入力イベントは,制御信号(エッジトリガー)の変更または仿真软件金宝appブロックからの関数呼び出しによってStateflowチャートをアクティブ化できます。
エッジトリガー入力イベントを指定するには,[トリガー]プロパティを次のいずれかのオプションに設定します。
立ち上がり
立ち下がり
両エッジ
関数呼び出し入力イベントを指定するには,[トリガー]プロパティを[関数呼び出し]
に設定します。
エッジトリガー入力イベントと関数呼び出し入力イベントを同じStateflowチャート内に混在させることはできません。これらの入力イベントを混在させると,コンパイル時エラーが発生します。
詳細については,イベントのブロードキャストによるモデルコンポーネントの同期を参照してください。
エッジトリガー入力イベントにより,Stateflowチャートが,シミュレーションの現在のタイムステップ時に実行されます。このタイプの入力イベントでは,制御信号の変更がトリガーの役割を果たします。
いずれの場合も,制御信号の値を有効なエッジトリガーにするには,ゼロクロッシングを行わなければなりません。たとえば1から1に変化する信号は,有効な立ち上がりエッジトリガーです。1から2に変化する信号は,有効な立ち上がりエッジトリガーではありません。
モデルが定期的または周期的にチャートを実行する必要がある場合は,エッジトリガー入力イベントを使用してチャートをアクティブ化します。たとえば,このモデルでは、エッジ トリガー入力イベントは Edge to Function チャートを定期的な間隔でアクティブ化します。詳細については、単一のステップでサブシステムを複数回スケジュールを参照してください。
どのタイムステップでも,入力イベントはその端子番号の昇順でチェックされます。チャートは,有効なイベントごとに1回起動されます。エッジトリガー入力イベントの場合は,同じタイムステップ内に複数のエッジが発生する可能性があります。これにより,タイムステップ内で複数回,チャートが起動されます。この状況では,イベントはその端子番号の昇順でチャートを起動します。
関数呼び出し入力イベントにより,Stateflowチャートが,シミュレーションの現在のタイムステップ時に実行されます。このタイプの入力イベントでは,Stateflowチャートを呼び出すブロックに対して関数呼び出し出力イベントも定義しなければなりません。
モデルが関数呼び出しと同じタイムステップでチャートからの出力データにアクセスする必要がある場合に,関数呼び出し入力イベントを使用してチャートをアクティブ化します。たとえば,このモデルでは,関数呼び出し入力イベントは循环调度器チャートをアクティブ化します。詳細については,単一のステップでサブシステムを複数回スケジュールを参照してください。
関数呼び出し入力イベントの場合は,トリガーイベントが1つのみ存在します。イベントの呼び出し側は,明示的にチャートを呼び出して実行します。単一のタイムステップ内では,有効な関数呼び出しは1回のみです。
1つのチャート内で1つ以上の入力イベントを定義すると,チャートブロックの上部に単一のトリガー端子が表示されます。複数の外部模金宝app型ブロックが,トリガー端子に接続した信号ベクトルを介して,入力イベントをトリガーできます。入力イベントの[端子]プロパティは,トリガー端子に接続する制御信号ベクトルへのインデックスを指定します。
既定では,[端子]の値は,入力イベントの追加順で表示されます。これらの割り当ては,イベントの[端子]プロパティを変更することによって変更できます。入力イベントの[端子]プロパティを変更すると,残りの入力イベントの[端子]の値の番号が自動的に再設定されます。
1つのトリガー端子に対して複数の入力イベントを設定するには,すべての信号のデータ型が同じでなければなりません。データ型が異なる複数の信号を入力イベントとして使用すると,シミュレーション時にエラーが発生します。たとえば,双
2型のつの入力信号を多重化して,チャートに対する入力イベントとして使用できます。
布尔
と双
など,データ型が異なる2つの入力信号を多重化することはできません。