Μετάβαση στο κύριο περιεχόμενο

Σύνδεση Ανταγωνισμού: Σημείο Καμπής - Python

Σημείο καμπής: Διαγωνιστικός χώρος ρομποτικής VEX με στοιχεία παιχνιδιού και περιοχές βαθμολόγησης στις αρχικές θέσεις για την έναρξη του αγώνα. Κατά μήκος του πίσω τοίχου υπάρχει ένα δίχτυ με μια σειρά από αναδιπλούμενες σημαίες μπροστά του.
VRC 2018-2019 Πεδίο Σημείου Καμπής

Δυνατότητες ρομπότ

Το παιχνίδι Turning Point του διαγωνισμού VEX Robotics 2018 - 2019 απαιτούσε από τους παίκτες να εναλλάσσουν σημαίες μεταξύ άλλων στοιχείων του παιχνιδιού. Υπήρχαν συνολικά εννέα σημαίες: τρεις κάτω σημαίες που μπορούσαν να εναλλάσσονται από το ρομπότ και οι έξι ψηλές σημαίες που μπορούσαν να εναλλάσσονται μόνο χτυπώντας τες με πιόνια αγωνιστικής μπάλας. Οι ομάδες του αγώνα έπρεπε να βρουν έναν τρόπο να χτυπήσουν τις υψηλότερες σημαίες χρησιμοποιώντας έναν εκτοξευτή μπάλας. Αν μπορείτε να φανταστείτε, ο προγραμματισμός του ρομπότ να χτυπάει τις σημαίες χρησιμοποιώντας πιόνια παιχνιδιού μετρώντας μπορεί να μην είναι πάντα ακριβής. Εάν το ρομπότ κάνει μία λάθος στροφή κατά τη διάρκεια της αυτόνομης περιόδου, υπάρχει πιθανότητα να μην χτυπήσει καμία από τις σημαίες επειδή οι υπολογισμοί θα είναι λανθασμένοι. Ομοίως, για την πρόκληση Δεξιοτήτων Οδήγησης, μπορεί να είναι δύσκολο για τις ομάδες να ευθυγραμμίσουν χειροκίνητα το ρομπότ αρκετά ώστε να εκτοξεύσει σωστά την μπάλα. Έτσι, έμπειρες ομάδες θα προγραμματίσουν το ρομπότ χρησιμοποιώντας τον αισθητήρα όρασης για την ανίχνευση σημαιών και στη συνέχεια θα ευθυγραμμίσουν το ρομπότ σωστά προκειμένου να πραγματοποιούν ακριβείς βολές.

Εικονίδιο "Επεκτείνετε τη Μάθησή σας" Επεκτείνετε τη Μάθησή σας

Για να επεκτείνετε αυτήν τη δραστηριότητα, ζητήστε από τους μαθητές σας να σχεδιάσουν και να περιγράψουν ένα έργο που θα κάνει το ρομπότ να κινηθεί προς ανιχνευμένα κίτρινα αντικείμενα που θα μπορούσαν ενδεχομένως να χρησιμοποιήσουν για αυτό το διαγωνιστικό παιχνίδι!
Ζητήστε από τους μαθητές σας να κάνουν τα εξής:

Δείτε το δείγμα λύσης παρακάτω:

# Εισαγωγές βιβλιοθήκης
από vex import *

# Κωδικός έναρξης έργου

check_yellow = Event()

def check_yellow_callback():
    brain.screen.set_font(FontType.MONO40)
    brain.screen.clear_row(3)
    brain.screen.set_cursor(3, 1)
    vision_5_objects = vision_5.take_snapshot(vision_5__YELLOWBOX)

    if (vision_5_objects):
        arm_motor.spin_for(FORWARD, 300, DEGREES)
        claw_motor.spin_for(FORWARD, 100, DEGREES)
        drivetrain.drive_for(FORWARD, 12, INCHES)
        arm_motor.spin_for(REVERSE, 300, DEGREES)
        claw_motor.spin_for(REVERSE, 100, ΜΟΙΡΕΣ)
    
    αλλιώς:
        brain.screen.print("Χωρίς Κίτρινο Αντικείμενο")

# χειριστές συμβάντων συστήματος
check_yellow(check_yellow_callback)

# μικρή καθυστέρηση για να διασφαλιστεί ότι οι χειριστές συμβάντων είναι έτοιμοι για χρήση
wait(15, MSEC)

# εκτελείται συνεχώς για να ελέγξει για νέα δεδομένα αισθητήρα
ενώ είναι True:
    check_blue.broadcast_and_wait()
    wait(105, MSEC)