タイマー#

導入#

VEX CTEのタイマー機能を使うと、経過時間を追跡し、時間間隔に基づいて動作を実行できます。何かにかかる時間を計測したり、新しいタイミング操作のためにリセットしたりするのに使用できます。

注: タイマーは、Brain が brain = Brain()で構築された場合にのみ使用できます。すべてのタイマー機能は、 Brain のメソッドを介して駆動されます。

このページでは、例として brain という脳名を使用しています。必要に応じて、ご自身で設定した脳名に置き換えてください。

以下にすべてのメソッドの一覧を示します。

  • timer_reset – タイマーをゼロにリセットします。

  • timer_time – プロジェクト開始からの経過時間を返します。

  • timer_event – 指定されたミリ秒数後に、オプションの引数とともに関数を呼び出します。

タイマーリセット#

timer_reset はタイマーをゼロに設定します。これは、同じプロジェクト内の他のコードセクションの時間を計測するために使用できます。

Usage:
brain.timer_reset()

パラメータ

説明

このメソッドにはパラメータがありません。

# Display the time until the move is completed
arm.move_to(-100, 200, 100, False)
while True:
    print("\033[2J")
    print(brain.timer_time(SECONDS))
    wait(50, MSEC)
    if arm.is_done():
        brain.timer_reset()

タイマー時間#

timer_time は、指定された単位でタイマーの現在の経過時間を返します。2 MSEC の場合は整数、 SECONDSの場合は浮動小数点数です。

Usage:
brain.timer_time(units)

パラメータ

説明

units

オプション。時間を表す単位:

  • MSEC (デフォルト) – ミリ秒、整数を返します
  • SECONDS – float を返します

# Display the time until the move is completed
arm.move_to(-100, 200, 100, False)
while True:
    print("\033[2J")
    print(brain.timer_time(SECONDS))
    wait(50, MSEC)
    if arm.is_done():
        brain.timer_reset()

タイマーイベント#

timer_event は、指定された時間が経過した後に関数を呼び出します。

Usage:
timer_event(callback, delay, arg)

パラメータ

説明

callback

タイマーイベントが発生したときに実行される関数。

delay

関数が呼び出されるまでの遅延時間(ミリ秒単位)。

arg

オプション。コールバック関数に渡す引数を含むタプル。詳細については、パラメーター付き関数の使用を参照してください。

def move_arm():
    arm.move_inc(0, 100, 0)

# Move the arm after a 5000 millisecond delay
timer_event(move_arm, 5000)