Timer#
Invoering#
De timer van de VEX AIR dronecontroller houdt de verstreken tijd bij vanaf het begin van een project. Deze kan worden gebruikt om te meten hoe lang iets duurt of om te resetten voor nieuwe timingbewerkingen.
Hieronder vindt u een lijst met alle beschikbare methoden:
Actie – Bedien de timer.
reset– Zet de timer terug naar nul.
Getter – Rapporteer de huidige timerwaarde.
time– Geeft aan hoeveel tijd er is verstreken.
Callback – Activeer functies na een bepaalde vertraging.
event– Registreert een functie die na een bepaald aantal milliseconden moet worden aangeroepen.
Constructor - Maak een timer aan om de tijd bij te houden.
Timer- Maak een nieuw timer-object aan dat met deze methoden kan worden gebruikt.
Actie#
reset#
reset zet de timer op nul. Dit kan worden gebruikt om extra codefragmenten binnen hetzelfde project te timen.
Usage:
timer.reset()
Parameters |
Beschrijving |
|---|---|
Deze methode heeft geen parameters. |
# 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()
Getter#
time#
time geeft de tijd weer die is verstreken sinds de timer voor het laatst is gereset, als een decimaal getal. De timer wordt automatisch gereset aan het begin van een project.
Usage:
timer.time(units)
Parameters |
Beschrijving |
|---|---|
|
De eenheid die de tijd weergeeft: |
# 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)
Terugbelverzoek#
event#
Gebeurtenis event roept een functie aan nadat een bepaalde tijd is verstreken.
Gebruik:
timer.event(callback, delay, arg)
Parameters |
Beschrijving |
|---|---|
|
Een functie die wordt uitgevoerd wanneer de timergebeurtenis plaatsvindt. |
|
De vertraging voordat de functie wordt aangeroepen, in milliseconden. |
|
Optioneel. Een tuple met argumenten die aan de callbackfunctie moeten worden doorgegeven. Zie Events gebruiken met parameters voor meer informatie. |
# 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)
Constructor#
Timer#
Timer maakt een nieuwe timer aan. Een Timer object begint onmiddellijk te tellen zodra het is aangemaakt en werkt met alle timer methoden.
Usage:
Timer()
Parameter |
Beschrijving |
|---|---|
Deze constructor heeft geen parameters. |
# 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)