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

Μάθημα 2: Σύνοψη μετά το έργο

Το μπλοκ [Αν τότε αλλιώς] χρησιμοποιείται ώστε το ρομπότ εικονικής πραγματικότητας να μπορεί να λάβει μια απόφαση. Εάν η Boolean συνθήκη είναι TRUE, τότε θα εκτελεστούν τα μπλοκ μέσα στον κλάδο 'If Then'. Εάν η Λογική Συνθήκη είναι FALSE, τότε θα εκτελεστούν τα μπλοκ μέσα στον κλάδο 'Else'.

Ένα διάγραμμα που υποδεικνύει τη ροή έργου του μπλοκ if then else εντός του βρόχου forever. Όταν ξεκινήσει το έργο, ελέγχεται η κατάσταση του αισθητήρα απόστασης. Εάν βρεθεί ένα αντικείμενο, η συνθήκη αυτή είναι αληθής και τότε εκτελείται το μπλοκ Drive forward. Εάν δεν βρεθεί κανένα αντικείμενο, η συνθήκη αναφέρει ψευδή, διαφορετικά εκτελείται το μπλοκ στροφής δεξιά. Όλα αυτά επαναλαμβάνονται συνεχώς μέσα στον βρόχο Forever.

Σε αυτό το έργο, το ρομπότ εικονικής πραγματικότητας (VR) οδήγησε προς ένα κτίριο όταν ο αισθητήρας απόστασης ανίχνευσε ένα αντικείμενο και το μπλοκ <Distance found object> αναφέρθηκε ως TRUE. Αυτό έδωσε εντολή στον κλάδο 'If Then' του έργου να εκτελεστεί. Αυτός ο κλάδος περιλαμβάνει το μπλοκ [Drive]. Το ρομπότ εικονικής πραγματικότητας (VR) παραλείπει στη συνέχεια τον κλάδο «Else» του έργου.

Το έργο βρίσκεται στα αριστερά με μια πράσινη επισήμανση που δείχνει τη ροή του έργου της εκτέλεσης του κλάδου if then. Στα δεξιά εμφανίζεται η κάτοψη της Παιδικής Χαράς, με ένα βέλος και ένα κόκκινο πλαίσιο που επισημαίνουν το κάστρο ή το αντικείμενο που ανιχνεύεται από τον Αισθητήρα Απόστασης σε αυτήν την περίπτωση.

Επειδή το μπλοκ [If then else] τοποθετείται μέσα σε ένα μπλοκ [Forever], το έργο επιστρέφει στην κορυφή του μπλοκ [Forever] για να ελέγξει την κατάσταση του μπλοκ [If then else]. Αυτός ο βρόχος θα συνεχιστεί για πάντα, δίνοντας εντολή στο ρομπότ εικονικής πραγματικότητας να ελέγχει συνεχώς την συνθήκη [Εάν τότε αλλιώς] εκατοντάδες φορές ανά δευτερόλεπτο.

Σημειώστε ότι τα μπλοκ [Drive] και [Turn] μέσα στο μπλοκ [If then else] είναι μπλοκ που δεν αναμένουν. Τα μπλοκ που δεν βρίσκονται σε αναμονή δεν διακόπτουν τη ροή ενός έργου ενώ εκτελούνται.  Μια συμπεριφορά μη αναμονής που εκτελείται σε ένα μπλοκ [If then else] (όπως η προώθηση εάν εντοπιστεί αντικείμενο) θα συνεχιστεί όσο ελέγχεται η συνθήκη και θα αλλάξει μόνο όταν αλλάξει η συνθήκη.

Το ίδιο έργο VR VEXcode με βέλη που κινούνται από το κάτω μέρος του μπλοκ Forever πίσω προς τα πάνω για να υποδείξουν τη ροή του έργου πίσω στην κορυφή του βρόχου Forever για να επαναλάβουν όλες τις εντολές μέσα σε αυτό.

Εάν το μπλοκ <Distance found object> αναφέρει ως FALSE, εκτελείται ο κλάδος 'Else' του έργου. Ο κλάδος 'Else' περιλαμβάνει το μπλοκ [Turn].

Το έργο βρίσκεται στα αριστερά με μια κόκκινη επισήμανση που δείχνει τη ροή του έργου του κλάδου else που εκτελείται. Στα δεξιά εμφανίζεται η κάτοψη της παιδικής χαράς, με καμπύλα βέλη γύρω από το ρομπότ εικονικής πραγματικότητας που υποδεικνύουν στροφή για την ανίχνευση ενός αντικειμένου, καθώς δεν υπάρχει κάποιο ακριβώς μπροστά από τον αισθητήρα απόστασης.

Για την ενημέρωσή σας

Τα μπλοκ [If then else] χρησιμοποιούνται για να διασφαλιστεί ότι εκτελείται μόνο ένας κλάδος στο έργο όταν ελέγχεται η συνθήκη. Μόνο μία περίπτωση ή συνθήκη μπορεί να είναι αληθής ανά πάσα στιγμή. Αυτό καθιστά το έργο πιο αποτελεσματικό.

Ένα διάγραμμα που υποδεικνύει τη ροή έργου του μπλοκ if then else εντός του βρόχου forever. Όταν ξεκινήσει το έργο, ελέγχεται η κατάσταση του αισθητήρα απόστασης. Εάν βρεθεί ένα αντικείμενο, η συνθήκη αυτή είναι αληθής και τότε εκτελείται το μπλοκ Drive forward. Εάν δεν βρεθεί κανένα αντικείμενο, η συνθήκη αναφέρει ψευδή, διαφορετικά εκτελείται το μπλοκ στροφής δεξιά. Όλα αυτά επαναλαμβάνονται συνεχώς μέσα στον βρόχο Forever.

Συγκρίνετε το τρέχον έργο με το έργο που δημιουργήθηκε στην Ενότητα 7.  Το έργο της Μονάδας 7 χρησιμοποιεί τέσσερα μπλοκ [Εάν τότε].

Ένα διάγραμμα της ροής του έργου ενός δείγματος έργου από την Ενότητα 7 με τέσσερα μπλοκ If then σε ακολουθία. Σε κάθε περίπτωση, η παράμετρος If χρησιμοποιεί τον αισθητήρα μπροστινού ματιού για την ανίχνευση ενός συγκεκριμένου χρώματος και την εκτέλεση μιας συμπεριφοράς με βάση το χρώμα που ανιχνεύεται. Εάν ανιχνευθεί το χρώμα, τότε η τιμή If then είναι true και το μπλοκ μέσα σε αυτό θα εκτελεστεί και αυτό θα συμβαίνει επανειλημμένα για κάθε ενότητα του κώδικα.

Όταν εκτελείται ένα έργο με πολλαπλά μπλοκ [If then], θα μπορούσε να είναι πιθανό πολλαπλές συνθήκες να αναφέρουν TRUE και το έργο να εκτελείται μέσω των εντολών στο μπλοκ [Forever]. Σε αυτό το έργο, και οι δύο συνθήκες ενδέχεται να αναφέρουν TRUE κατά τη διάρκεια του ίδιου βρόχου [Forever]. Συγκρούσεις όπως αυτή θα μπορούσαν να προκαλέσουν τη διακοπή της εκτέλεσης του έργου ή την επιβράδυνση της εκτέλεσης.

Ένα διάγραμμα της ροής του έργου δύο αλληλουχισμένων μπλοκ If then μέσα σε έναν βρόχο forever. Όταν ξεκινήσει, το έργο θα ελέγξει πρώτα τη συνθήκη 1, την παράμετρο του πρώτου μπλοκ if then. Αν αυτό ισχύει, η στροφή δεξιά για το 90ο τετράγωνο μέσα σε αυτό θα ξεκινήσει. Εάν αυτή η συνθήκη είναι ψευδής, το έργο μετακινείται στο επόμενο μπλοκ if then για να ελέγξει τη συνθήκη 2. Εάν η συνθήκη 2 είναι αληθής, θα εκτελεστεί η κίνηση προς τα εμπρός για ένα μπλοκ 200 mm μέσα σε αυτό. Εάν είναι ψευδές, το έργο θα επιστρέψει στην κορυφή του βρόχου forever για να επαναλάβει τη διαδικασία ξανά.

Η χρήση ενός μπλοκ [If then else] θα αποτρέψει σφάλματα όπως αυτό, επειδή μόνο μία συνθήκη μπορεί να είναι TRUE σε μια δεδομένη στιγμή με αυτό το μπλοκ.

Ένα διάγραμμα της ροής του έργου χρησιμοποιώντας ένα μπλοκ if then else μέσα σε έναν βρόχο forever. Κατά την εκκίνηση, θα ελεγχθεί η κατάσταση του κλάδου if then. Εάν είναι αληθές και η κίνηση κινείται, τότε το μπλοκ εντός του κλάδου If θα εκτελεστεί και το ρομπότ θα στρίψει αριστερά κατά 90 μοίρες. Διαφορετικά, το ρομπότ θα κινηθεί προς τα εμπρός κατά 200 mm. Αυτή η απόφαση για τον έλεγχο μιας συνθήκης θα λαμβάνεται συνεχώς καθώς το έργο βρίσκεται σε έναν αέναο βρόχο.

Ερωτήσεις

Επιλέξτε έναν σύνδεσμο παρακάτω για να αποκτήσετε πρόσβαση στο κουίζ του μαθήματος.

Έγγραφο Google / .docx / .pdf