Μετρών την ώραν#

Εισαγωγή#

Το χρονόμετρο του ρομπότ κωδικοποίησης VEX AIM παρακολουθεί τον χρόνο που έχει παρέλθει από την έναρξη ενός έργου. Μπορεί να χρησιμοποιηθεί για να μετρήσει πόσο χρόνο χρειάζεται κάτι ή να το επαναφέρει για νέες λειτουργίες χρονισμού.

Παρακάτω είναι μια λίστα με όλες τις μεθόδους:

Μέθοδοι – Έλεγχος του χρονοδιακόπτη.

  • reset – Επαναφέρει το χρονόμετρο στο μηδέν.

  • time – Επιστρέφει πόσος χρόνος έχει περάσει.

  • event – Καταγράφει μια συνάρτηση που θα κληθεί μετά από έναν καθορισμένο αριθμό χιλιοστών του δευτερολέπτου.

Constructor – Δημιουργήστε ένα χρονόμετρο για την παρακολούθηση του χρόνου.

  • 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)