Таймер#

Вступ#

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

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

Методи – Керування таймером.

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

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

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

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

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

Методи#

reset#

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

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

timer.reset()

Параметри

Опис

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

# Display how long a turn takes
robot.move_for(100, 0)
timer.reset()
robot.turn_for(RIGHT, 90)
robot.screen.print("Time elapsed:")
robot.screen.next_row()
robot.screen.print("%d seconds" % timer.time(SECONDS))

time#

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

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

timer.time(units)

Параметри

Опис

units

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

# Print the time in seconds
# and in milliseconds on the next row.
while timer.time(SECONDS) <= 5:
    robot.screen.clear_screen()
    robot.screen.set_cursor(1, 1)
    robot.screen.print("Time: %d" % timer.time(MSEC))
    robot.screen.next_row()
    robot.screen.print("Time: %.2f" % timer.time(SECONDS))
    wait(50, MSEC)

event#

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

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

timer.event(callback, delay, arg)

Параметри

Опис

callback

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

delay

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

arg

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

# Create a function to play a sparkle sound
def timer_callback():
    robot.sound.play(SPARKLE)

# Call the function after 2000 milliseconds (2 seconds)
timer.event(timer_callback, 2000)

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

Timer#

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

Usage:
Timer()

Параметр

Опис

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

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

stopwatch = Timer()

while True:
    robot.screen.clear_screen()

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

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

    wait(0.1, SECONDS)