Таймер#

Вступ#

Таймер контролера дрона VEX AIR відстежує час, що минув від початку проєкту. Його можна використовувати для вимірювання часу виконання певного завдання або скидання часу для нових операцій.

Нижче наведено список усіх доступних методів:

Дія – Керування таймером.

  • reset – Скидає таймер до нуля.

Отримувач – Повідомляє поточне значення таймера.

  • time – Повертає, скільки часу минуло.

Зворотний виклик – Запускає функції після затримки.

  • event – Реєструє функцію, яка буде викликана через задану кількість мілісекунд.

Конструктор – Створіть таймер для відстеження часу.

  • Timer – Створіть новий об’єкт таймера, який можна використовувати з цими методами.

Дія#

reset#

reset встановлює таймер на нуль. Це можна використовувати для відліку часу додаткових розділів коду в межах одного проєкту.

Usage:
timer.reset()

Параметри

Опис

Цей метод не має параметрів.

# Display the time the drone takes to climb upwards.
drone.take_off(500)
timer.reset()
drone.climb_for(UP, 500)
controller.screen.print("Time elapsed: ")
controller.screen.print(timer.time(SECONDS))
drone.land()

Геттер#

time#

time повертає час з моменту останнього скидання таймера у вигляді десяткового числа. Таймер автоматично скидається на початку проекту.

Usage:
timer.time(units)

Параметри

Опис

units

Одиниця вимірювання часу: MSEC (за замовчуванням) – мілісекунди або SECONDS

# Display the time in two units.
while True:
    controller.screen.clear_screen()
    controller.screen.set_cursor(1, 1)
    controller.screen.print("Time: {} ms".format(timer.time(MSEC)))
    controller.screen.next_row()
    controller.screen.print("Time: {:.2f} s".format(timer.time(SECONDS)))
    wait(50, MSEC)

Зворотний виклик#

event#

event викликає функцію після закінчення заданого часу.

Використання:

timer.event(callback, delay, arg)

Параметри

Опис

callback

Функція, яка виконується, коли виникає подія таймера.

delay

Затримка перед викликом функції, у мілісекундах.

arg

Необов’язково. Кортеж, що містить аргументи для передачі функції зворотного виклику. Див. Використання подій з параметрами для отримання додаткової інформації.

# Create a function to play a looping sound.
def on_timer():
    controller.sound.play(LOOPING)

# Play the sound after 4 seconds (4000 mS).
timer.event(on_timer, 4000)

Конструктор#

Timer#

Timer створює новий таймер. Timer негайно почне відлік часу з моменту його створення та працюватиме з усіма timer.

Usage:
Timer()

Параметр

Опис

Цей конструктор не має параметрів.

# Display 2 timers with a 2 second difference.
wait(2, SECONDS)

stopwatch = Timer()

while True:
    controller.screen.clear_screen()

    controller.screen.set_cursor(1, 1)
    controller.screen.print("Timer: ")
    controller.screen.print(timer.time(SECONDS))

    controller.screen.set_cursor(4, 1)
    controller.screen.print("Stopwatch: ")
    controller.screen.print(stopwatch.time(SECONDS))

    wait(0.1, SECONDS)