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

Μάθημα 3: Οδηγήστε μέχρι τον αριθμό '31'

Σε αυτό το μάθημα, το ρομπότ εικονικής πραγματικότητας θα οδηγήσει μέχρι τον αριθμό '31' και μετά πίσω στον αριθμό '1' στον χάρτη πλέγματος αριθμών Playground!

Μια κάτοψη της παιδικής χαράς του Χάρτη Πλέγματος Αριθμών, με τον αριθμό 31 να επισημαίνεται με ένα κόκκινο πλαίσιο. Το ρομπότ εικονικής πραγματικότητας ξεκινά από τον αριθμό 1 και το τετράγωνο με τον αριθμό 31 είναι τρεις θέσεις πάνω από αυτόν.

Παρατηρήστε ότι το ρομπότ εικονικής πραγματικότητας θα κινείται κατά μήκος του άξονα Y για να μετακινηθεί στον αριθμό '31' στον χάρτη πλέγματος αριθμών Playground.

Μια κάτοψη της παιδικής χαράς του Χάρτη Πλέγματος Αριθμών, με τον χώρο με τον αριθμό 31 να επισημαίνεται από ένα μαύρο κουτί. Μια γραμμή υποδεικνύει μετρήσεις κατά μήκος του άξονα Y, με το πρώτο διάστημα να είναι -900 χιλιοστά στον άξονα Y και το επόμενο να είναι -700, συνεχίζοντας να μετράτε ανά 200 κάθε φορά. Ο χώρος με τον αριθμό 31 βρίσκεται σε μια θέση Y -300 χιλιοστών.

Το ρομπότ εικονικής πραγματικότητας θα οδηγήσει στην τοποθεσία του αριθμού '31' στον χάρτη πλέγματος αριθμών Playground. Ωστόσο, προτού το ρομπότ εικονικής πραγματικότητας μπορέσει να πλοηγηθεί σε αυτόν τον αριθμό, πρέπει να ενημερωθεί για την τοποθεσία αυτού του αριθμού. Οι συντεταγμένες του αριθμού '31' είναι (-900, -300).

Μια κάτοψη της παιδικής χαράς του Χάρτη Πλέγματος Αριθμών, με δύο δείκτες αξόνων που σηματοδοτούν τη θέση της θέσης με τον αριθμό 31. Το ρομπότ εικονικής πραγματικότητας ξεκινά από -900 X και -900 Y, ενώ ο χώρος του αριθμού 31 είναι από -900 X και -300 Y.
  • Σύρετε το μπλοκ [Drive] που δεν είναι σε αναμονή στον χώρο εργασίας.

    Ένα νέο έργο μπλοκ VR VEXcode που ξεκινά με ένα μπλοκ When Started ακολουθούμενο από ένα μπλοκ Drive Forward.
  • Συνδέστε ένα μπλοκ [Περιμένετε μέχρι] κάτω από το μπλοκ [Οδήγηση].

    Μια συνέχεια του έργου μπλοκ VEXcode VR, τώρα με ένα μπλοκ "Περιμένετε μέχρι" που προστίθεται μετά το μπλοκ "Οδήγηση προς τα εμπρός". Ολόκληρο το έργο τώρα αναφέρει "Όταν ξεκίνησε", "Οδηγήστε μπροστά" και "Περιμένετε μέχρι". Το μπλοκ Wait Until έχει μια κενή λογική παράμετρο.
  • Σύρετε το μπλοκ αναφοράς Boolean <Greater than> στο μπλοκ [Περιμένετε μέχρι].

    Μια συνέχεια του έργου μπλοκ VEXcode VR, τώρα με ένα μπλοκ "Μεγαλύτερο από" που έχει εισαχθεί στο μπλοκ "Περιμένετε μέχρι". Ολόκληρο το έργο τώρα αναφέρει "Όταν ξεκίνησε", "Οδήγηση προς τα εμπρός" ακολουθούμενο από ένα μπλοκ "Περιμένετε μέχρι" με ένα μπλοκ "Μεγαλύτερο από" που αναφέρει "το κενό είναι μεγαλύτερο από 50".
  • Σημειώστε ότι χρησιμοποιείται το μπλοκ <Greater than> αντί για το μπλοκ <Less than> επειδή το ρομπότ εικονικής πραγματικότητας (VR) ανεβαίνει από το κάτω μέρος της παιδικής χαράς. Το ρομπότ εικονικής πραγματικότητας (VR) ξεκινά με τιμή Y -900 χιλιοστών (mm). Καθώς το ρομπότ εικονικής πραγματικότητας (VR) κινείται προς τα εμπρός, οι τιμές Y αυξάνονται.

    Η ίδια προβολή από πάνω προς τα κάτω της παιδικής χαράς του Χάρτη Πλέγματος Αριθμών με δύο δείκτες αξόνων που σηματοδοτούν τη θέση της θέσης με τον αριθμό 31 από νωρίτερα. Το ρομπότ εικονικής πραγματικότητας ξεκινά από -900 X και -900 Y, ενώ ο χώρος του αριθμού 31 είναι από -900 X και -300 Y.
  • Σύρετε το μπλοκ (Θέση του Ρομπότ) στο μπλοκ <Greater than>.

    Μια συνέχεια του έργου μπλοκ VEXcode VR, τώρα με ένα μπλοκ Θέση Ρομπότ που έχει εισαχθεί στο μπλοκ Μεγαλύτερο από. Ολόκληρο το έργο τώρα αναφέρει "Όταν ξεκινήσει, προχωρήστε μπροστά και περιμένετε μέχρι η θέση X του ρομπότ σε χιλιοστά να είναι μεγαλύτερη από 50".
  • Ορίστε την παράμετρο του μπλοκ (Θέση του Ρομπότ) σε "Y" και την παράμετρο του μπλοκ <Greater than> σε -300.

    Μια συνέχεια του έργου μπλοκ VEXcode VR, τώρα με τον άξονα του μπλοκ "Θέση του ρομπότ" να αλλάζει από X σε Y και τη δεύτερη παράμετρο του μπλοκ "Μεγαλύτερο από" να αλλάζει από 50 σε -300. Ολόκληρο το έργο τώρα αναφέρει Όταν ξεκινήσει, προχωρήστε προς τα εμπρός και περιμένετε μέχρι η θέση Y του ρομπότ σε χιλιοστά να είναι μεγαλύτερη από -300.
  • Σύρετε ένα μπλοκ [Διακοπή οδήγησης] και προσθέστε το στο έργο.

    Μια συνέχεια του έργου μπλοκ VEXcode VR, τώρα με ένα μπλοκ Stop Driving που έχει προστεθεί κάτω από το μπλοκ Wait Until. Ολόκληρο το έργο τώρα αναφέρει Όταν ξεκινήσει, προχωρήστε προς τα εμπρός και περιμένετε μέχρι η θέση Y του ρομπότ σε χιλιοστά να είναι μεγαλύτερη από -300. Τέλος, σταματήστε να οδηγείτε.
  • Εκκινήστε τον Χάρτη Πλέγματος Αριθμών Playground , εάν δεν είναι ήδη ανοιχτός, και εκτελέστε το έργο.
  • Παρακολουθήστε το ρομπότ εικονικής πραγματικότητας να οδηγεί προς τον αριθμό '31' στην παιδική χαρά του χάρτη πλέγματος αριθμών .

    Μια κάτοψη της παιδικής χαράς του Χάρτη Πλέγματος Αριθμών με το ρομπότ εικονικής πραγματικότητας να ακουμπά στον χώρο με τον αριθμό 31.
  • Σε αυτό το έργο, το ρομπότ εικονικής πραγματικότητας οδηγεί προς τον αριθμό '31' στον χάρτη πλέγματος αριθμών Playground. Δεδομένου ότι οι τιμές Y αυξάνονται καθώς το ρομπότ εικονικής πραγματικότητας (VR) οδηγεί στον αριθμό «31», το έργο χρησιμοποιεί ένα μπλοκ <Greater than>.
  • Το ρομπότ εικονικής πραγματικότητας θα σταματήσει μόλις η τιμή Y του γίνει μεγαλύτερη κατά από την τιμή Y της συντεταγμένης στην οποία βρίσκεται ο υποδεικνυόμενος αριθμός. Δεδομένου ότι η τιμή Y του αριθμού '31' είναι -300, το ρομπότ εικονικής πραγματικότητας θα σταματήσει να οδηγεί μόλις η τιμή Y γίνει μεγαλύτερη από -300.
Ένα διάγραμμα που απεικονίζει τη ροή της λογικής στο έργο VEXcode VR Blocks. Το έργο ξεκινά με ένα μπλοκ "Κατά την Έναρξη" και στη συνέχεια ξεκινά την κίνηση προς τα εμπρός και διατηρεί αυτήν την εντολή μέχρι η Θέση του αισθητήρα ρομπότ σε χιλιοστά να γίνει μεγαλύτερη από -300, μετά την οποία ένα μπλοκ Διακοπή Οδήγησης τερματίζει την εντολή Οδήγηση προς τα εμπρός.

Χρήση μπλοκ διακοπτών 

Σε αυτό το μάθημα, μάθατε πώς να χρησιμοποιείτε το μπλοκ VEXcode [Wait until] με μια Boolean συνθήκη για να δώσετε εντολή στο ρομπότ να περιμένει μέχρι το ρομπότ να φτάσει σε μια θέση μεγαλύτερη από -300 στον άξονα Y πριν προχωρήσει στην επόμενη συμπεριφορά.

Η παρακάτω εικόνα δείχνει το μπλοκ VEXcode δίπλα στο μπλοκ Switch που περιέχει την εντολή Python για τις ίδιες συμπεριφορές. 

Μια σύγκριση ενός μπλοκ VEXcode VR Wait Until και του αντίστοιχου μπλοκ διακόπτη. Το μπλοκ VR αναφέρει «Περιμένετε μέχρι η θέση Y του ρομπότ σε χιλιοστά να είναι μεγαλύτερη από -300». Ο κώδικας Python του μπλοκ διακόπτη αναφέρει 'while not location.position(Y, MM) > -300: wait(5, MSEC)'. Η εντολή wait έχει εσοχή κάτω από την εντολή while not.Μέσα στο μπλοκ Switch, η πρώτη εντολή Python που ελέγχει αν η θέση του ρομπότ κατά μήκος του άξονα Χ είναι μεγαλύτερη από -300> , ενώ δεν είναι location.position(Y, MM).

Η δεύτερη εντολή με εσοχή,wait (5, MSEC),διακόπτει προσωρινά την εκτέλεση του βρόχου υπό όρους για 5 χιλιοστά του δευτερολέπτου.

Στο VEXcode VR, μια εντολή αναμονή προστίθεται πάντα με τον βρόχο υπό όρους. Ο σκοπός της εντολής wait είναι να διασφαλίσει ότι το VEXcode VR μπορεί να εκτελέσει σωστά το έργο όπως προβλέπεται, λόγω της διαδικτυακής φύσης της πλατφόρμας VEXcode VR. Η εντολή wait δεν πρέπει ποτέ να διαγράφεται όταν χρησιμοποιείται ένας βρόχος υπό όρους, διαφορετικά το έργο σας ενδέχεται να μην εκτελεστεί όπως προβλέπεται. 

Σε αυτό το παράδειγμα, το έργο ελέγχει εάν η θέση του ρομπότ είναι μεγαλύτερη από μια τιμή Y -300 κάθε 5 MSEC. Αυτή η γραμμή κώδικα έχει εσοχή κάτω από την πρώτη γραμμή κώδικα επειδή αυτή η εντολή είναι η συμπεριφορά που θα επαναλαμβάνεται μέχρι να ικανοποιηθεί η συνθήκη (τιμή συντεταγμένης Y μεγαλύτερη από -300). 

Επιλέξτε το κουμπί Επόμενο για να συνεχίσετε με το υπόλοιπο μάθημα.