Main Content

最新のリリースでは、このページがまだ翻訳されていません。 このページの最新版は英語でご覧になれます。

temporalCount

ステートがアクティブになってからのイベント数、チャートの実行回数、または時間

説明

関連付けられたステートがアクティブになってから、ベース イベント E が発生するたびに、temporalCount(E) は 1 ずつインクリメントし、正の整数値を返します。その他の場合は、演算子は値 0 を返します。

入力イベントが設定されていないチャートでは、temporalCount(tick) は、関連付けられたステートがアクティブになってからのチャートの起動回数を返します。

関連付けられたステートが再びアクティブになるたびに、temporalCount 演算子は E のカウンターを 0 にリセットします。

temporalCount を時相論理演算子として使用することは、MATLAB® オブジェクトとして実行するチャートではサポートされません。

temporalCount(time_unit) は、関連付けられたステートがアクティブになってから経過した時間の単位数をカウントして返します。time_unit は、秒 (sec)、ミリ秒 (msec) またはマイクロ秒 (usec) として指定します。

関連付けられたステートが再びアクティブになるたびに、temporalCount 演算子は secmsec および usec のカウンターを 0 にリセットします。

すべて展開する

ステートがアクティブになってからのチャートの実行回数によりインデックス付けされた配列 M の要素を格納します。

du:
   y = M[temporalCount(tick)];

ステートがアクティブになってから非アクティブになるまでの秒数を格納します。

exit:
   y = temporalCount(sec);

ヒント

  • 引用符を使用してキーワード 'tick''sec''msec' および 'usec' を囲むことができます。たとえば、temporalCount('tick')temporalCount(tick) と同じです。

  • 絶対時間の時相論理演算子のタイミングは Stateflow® チャートのタイプによって異なります。

    • Simulink® モデル内のチャートは時相論理をシミュレーション時間で定義します。

    • MATLAB のスタンドアロン チャートは時相論理を時計時間で定義します。

    タイミングの差はチャートの動作に影響する場合があります。たとえば、次のチャートはステート Aentry アクションを実行しているとします。

    • Simulink モデルでは、f への関数呼び出しが 1 つのタイム ステップで実行され、シミュレーション時間に寄与しません。関数 f を呼び出した後、チャートは y に値 0 を代入します。

    • スタンドアロン チャートでは、f への関数呼び出しが完了するまでに時計時間で数秒間かかる可能性があります。関数 f を呼び出した後、チャートはステート A がアクティブになってから経過した 0 以外の時間を y に代入します。

R2008a で導入