Regulator czasowy#

Wstęp#

Timer w VEX CTE pozwala śledzić upływ czasu i wykonywać czynności w oparciu o interwały czasowe. Można go używać do pomiaru czasu trwania danej czynności lub resetowania w celu przeprowadzenia nowych operacji pomiaru czasu.

Uwaga: Timer jest dostępny tylko wtedy, gdy mózg został skonstruowany przy użyciu brain = Brain(), ponieważ cała funkcjonalność timera jest realizowana za pomocą metod na instancji Brain.

Ta strona używa nazwy brain jako przykładowej nazwy „brain”. W razie potrzeby zastąp ją własną, skonfigurowaną nazwą.

Poniżej znajduje się lista wszystkich metod:

  • timer_reset – Resetuje licznik do zera.

  • timer_time – Zwraca czas, który upłynął od rozpoczęcia projektu.

  • timer_event – Wywołuje funkcję po określonej liczbie milisekund, z opcjonalnymi argumentami.

reset_timera#

timer_reset ustawia timer na zero. Można tego użyć do pomiaru czasu dla innych sekcji kodu w tym samym projekcie.

Usage:
brain.timer_reset()

Parametry

Opis

Ta metoda nie ma żadnych parametrów.

# 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()

czas_timera#

timer_time zwraca aktualny czas, który upłynął od rozpoczęcia timera, w określonych jednostkach — liczba całkowita dla MSEC lub liczba zmiennoprzecinkowa dla SECONDS.

Usage:
brain.timer_time(units)

Parametry

Opis

units

Opcjonalnie. Jednostka reprezentująca czas:

  • MSEC (domyślnie) – milisekundy, zwraca liczbę całkowitą
  • SECONDS – zwraca liczbę zmiennoprzecinkową

# 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()

zdarzenie_timera#

timer_event wywołuje funkcję po upływie określonego czasu.

Usage:
timer_event(callback, delay, arg)

Parametry

Opis

callback

Funkcja do wykonania po wystąpieniu zdarzenia timera.

delay

Opóźnienie przed wywołaniem funkcji (w milisekundach).

arg

Opcjonalnie. Krotka zawierająca argumenty do przekazania do funkcji wywołania zwrotnego. Więcej informacji można znaleźć w Używanie funkcji z parametrami.

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

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