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

Χρήση του αισθητήρα όρασης - C++

Εικονίδιο Εργαλειοθήκης Εκπαιδευτικού Εργαλειοθήκη Εκπαιδευτικού - Ο Σκοπός αυτής της Δραστηριότητας

Η αποτελεσματική χρήση του Αισθητήρα Όρασης απαιτεί από τους μαθητές να είναι σε θέση να τον διαμορφώσουν και να τον συντονίσουν ανάλογα με το περιβάλλον στο οποίο βρίσκεται. Στην ακόλουθη δραστηριότητα, οι μαθητές θα μάθουν πώς να κάνουν και τα δύο.
Για περισσότερες πληροφορίες σχετικά με τον προγραμματισμό του Αισθητήρα Όρασης με το VEXcode V5, επισκεφθείτε τις πληροφορίες βοήθειας γιαC++στη ΒιβλιοθήκηVEX.

Ακολουθεί μια περίληψη των όσων θα κάνουν οι μαθητές σας σε αυτή τη δραστηριότητα:

  • Ανοίξτε το παράδειγμα έργου Ανίχνευση αντικειμένων (Όραση).

  • Διαμορφώστε τον αισθητήρα όρασης.

  • Εκτελέστε το παράδειγμα έργου Ανίχνευση αντικειμένων (Όραση).

  • Συζητήστε και αναστοχαστείτε.

  • Ρυθμίστε τον αισθητήρα όρασης.

Εικονίδιο Συμβουλών Δασκάλου Συμβουλές για τους Δασκάλους

Εάν αυτή είναι η πρώτη φορά που ο μαθητής χρησιμοποιεί το VEXcode V5, μπορεί να έχει πρόσβασηάρθραστη.

Αποκτήστε το απαραίτητο υλικό, το σημειωματάριο μηχανικής σας και ανοίξτε το VEXcode V5.

Απαιτούμενα υλικά:
Ποσότητα Απαιτούμενα υλικά
1

Κιτ εκκίνησης για την τάξη VEX V5

1

VEXcode V5 (τελευταία έκδοση, Windows, MacOS)

1

Σημειωματάριο Μηχανικής

1

Ρύθμιση παραμέτρων αισθητήρα όρασης (Βιβλιοθήκη VEX)

1

Ρύθμιση του αισθητήρα όρασης (Βιβλιοθήκη VEX)

1

Παράδειγμα έργου ανίχνευσης αντικειμένων (όραση)

Αυτή η δραστηριότητα θα σας δώσει τα εργαλεία για να χρησιμοποιήσετε τον Αισθητήρα Όρασης.

Μπορείτε να χρησιμοποιήσετε τις πληροφορίες Βοήθειας (C++) που βρίσκονται μέσα στο VEXcode V5 για να μάθετε σχετικά με τις οδηγίες.

Ο κωδικός VEX V5 εμφανίζεται με την Εργαλειοθήκη ανοιχτή στην αριστερή άκρη και τη Βοήθεια για την εντολή Drive for ανοιχτή στην δεξιά άκρη. Η Βοήθεια εμφανίζει τον ορισμό της εντολής και πληροφορίες σχετικά με τον τρόπο χρήσης της.

 

Βήμα 1: Άνοιγμα ενός παραδείγματος έργου

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

Ανοίξτε το παράδειγμα έργου Εντοπισμός αντικειμένων (Όραση) ολοκληρώνοντας τα ακόλουθα βήματα:

  • Ανοίξτε το μενού Αρχείο.
  • Επιλέξτε Άνοιγμα παραδειγμάτων.

Γραμμή εργαλείων VEXcode V5 με ανοιχτό το μενού Αρχείο και επισημασμένο σε κόκκινο πλαίσιο το Άνοιγμα Παραδειγμάτων. Το Άνοιγμα Παραδειγμάτων είναι το τέταρτο στοιχείο μενού κάτω από τα Νέα Έργα Μπλοκ, Νέο Έργο Κειμένου και Άνοιγμα.

  • Χρησιμοποιήστε τη γραμμή φίλτρου στο επάνω μέρος της εφαρμογής και επιλέξτε "Αισθητήρας".

Παράθυρο επιλογής έργου VEXcode V5 Παράδειγμα με το φίλτρο ανίχνευσης επιλεγμένο στην κορυφή και επισημασμένο σε κόκκινο πλαίσιο. Παρακάτω εμφανίζονται έξι παραδείγματα εικονιδίων έργων.

Επιλέξτε και ανοίξτε το παράδειγμα έργου Ανίχνευση αντικειμένων (Όραση).

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

Αποθηκεύστε το έργο σας ως Ανίχνευση αντικειμένων.

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

Το παράθυρο διαλόγου "Όνομα έργου" στη Γραμμή εργαλείων VEXcode V5 εμφανίζει την ένδειξη "Ανίχνευση αντικειμένων" και δείχνει ότι η υποδοχή 1 είναι επιλεγμένη στα αριστερά, ενώ στα δεξιά εμφανίζει την ένδειξη "Αποθηκευμένο".

Εικονίδιο Συμβουλών Δασκάλου Συμβουλές για τους Δασκάλους

  • Βεβαιωθείτε ότι οι μαθητές έχουν επιλέξει Άνοιγμα Παραδειγμάτων από το μενού Αρχείο.

  • Βεβαιωθείτε ότι οι μαθητές έχουν επιλέξει το έργο Ανίχνευση αντικειμένων (Όραση) Παράδειγμα. Μπορείτε να επισημάνετε στους μαθητές ότι υπάρχουν αρκετές επιλογές από τις οποίες μπορούν να διαλέξουν στη σελίδα Open Examples.

  • Μπορείτε να ζητήσετε από τους μαθητές να προσθέσουν τα αρχικά τους ή το όνομα της ομάδας τους στο όνομα του έργου. Αυτό θα βοηθήσει στη διαφοροποίηση των προγραμμάτων αν ζητήσετε από τους μαθητές να τα υποβάλουν.

  • Δεδομένου ότι το VEXcode V5 διαθέτει αυτόματη αποθήκευση, δεν χρειάζεται να αποθηκεύσετε ξανά το έργο μετά την πρώτη του αποθήκευση.

  • Αν οι μαθητές χρειάζονται βοήθεια με την αποθήκευση, παραπέμψτε τους σε ένα από αυτά τα άρθρα: 

Βήμα 2: Ρύθμιση παραμέτρων και χρήση του αισθητήρα όρασης

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

Ανοίξτε το προηγουμένως αποθηκευμένο παράδειγμα έργου Ανίχνευσης Αντικειμένων (Όραση).

Πώς χρησιμοποιείται ο αισθητήρας όρασης σε αυτό το έργο; Προβλέψτε τι θα συμβεί όταν εκτελεστεί το έργο και καταγράψτε τις προβλέψεις στο σημειωματάριό σας για τη μηχανική.

#include "vex.h"

using namespace vex;

event checkBlue = event();
event checkRed = event();
event checkGreen = event();

// Θα ελέγξει αν υπάρχει κάποιο μπλε αντικείμενο στην προβολή του αισθητήρα Vision
// και θα εμφανίσει τα αποτελέσματα στη γραμμή 1 της οθόνης του V5 Brain.
void has BlueCallback() {

  Brain.Screen.clearLine(1);
  Brain.Screen.setCursor(1, 1);
  Vision5.takeSnapshot(Vision5__BLUEBOX);

  if (Vision5.objectCount > 0) {
    Brain.Screen.print("Βρέθηκε Μπλε Αντικείμενο");

  } else {
    Brain.Screen.print("Δεν βρέθηκε Μπλε Αντικείμενο");
  }
}

// Θα ελέγξει αν υπάρχει κόκκινο αντικείμενο στην προβολή του αισθητήρα Vision
// και θα εμφανίσει τα αποτελέσματα στη γραμμή 3 της οθόνης του V5 Brain.
void has RedCallback() {

  Brain.Screen.clearLine(3);
  Brain.Screen.setCursor(3, 1);
  Vision5.takeSnapshot(Vision5__REDBOX);

  if (Vision5.objectCount > 0) {
    Brain.Screen.print("Βρέθηκε κόκκινο αντικείμενο");

  } else {
    Brain.Screen.print("Δεν βρέθηκε κόκκινο αντικείμενο");
  }
}

// Θα ελέγξει αν υπάρχει πράσινο αντικείμενο στην προβολή του αισθητήρα Vision
// και θα εμφανίσει τα αποτελέσματα στη γραμμή 5 της οθόνης του V5 Brain.
void has GreenCallback() {

  Brain.Screen.clearLine(5);
  Brain.Screen.setCursor(5, 1);
  Vision5.takeSnapshot(Vision5__GREENBOX);

  if (Vision5.objectCount > 0) {
    Brain.Screen.print("Βρέθηκε Πράσινο Αντικείμενο");

  } else {
    Brain.Screen.print("Δεν βρέθηκε Πράσινο Αντικείμενο");
  }
}

// Έναρξη κώδικα έργου
int main() {
  // Αρχικοποίηση διαμόρφωσης ρομπότ. ΜΗΝ ΤΟ ΑΦΑΙΡΕΙΤΕ!
  vexcodeInit();

  // Καταχώρηση χειριστών συμβάντων
  checkBlue (hasBlueCallback);
  checkRed (hasRedCallback);
  checkGreen (hasGreenCallback);

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

  // Ορισμός της γραμματοσειράς εκτύπωσης για όλες τις μελλοντικές εκτυπώσεις στην οθόνη V5
  Brain.Screen.setFont(mono40);

  // Συνεχής εκτέλεση για έλεγχο για νέα δεδομένα αισθητήρα
  while (true) {
    checkBlue.broadcastAndWait();
    checkRed.broadcastAndWait();
    checkGreen.broadcastAndWait();
    wait(0.1, δευτερόλεπτα);
  }
}
  • Λήψη και εκτέλεσητου έργου. Τοποθετήστε αντικείμενα διαφορετικού χρώματος μπροστά από τον αισθητήρα όρασης και παρατηρήστε τη συμπεριφορά του ρομπότ. Καταγράψτε στο σημειωματάριο μηχανικής σας πώς η πρόβλεψή σας ήταν διαφορετική ή σωστή σε σύγκριση με αυτήν που πραγματικά παρατηρήσατε από το έργο.

Εικονίδιο Συμβουλών Δασκάλου Συμβουλές για τους Δασκάλους

Τα τρίχρωμα αντικείμενα δεν χρειάζεται να είναι κύβοι, μπορούν να είναι οποιοδήποτε σχετικά μικρό πράσινο, κόκκινο και μπλε αντικείμενο.

Εικονίδιο "Κίνητρο για συζήτηση" Κίνητρο για συζήτηση - απαντήσεις

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

  1. Ποια είναι τα βήματα για τη διαμόρφωση του αισθητήρα όρασης;

  2. Τι κάνει η δομήif then else;

  3. Τι θα συνέβαινε στον τρόπο που ο αισθητήρας όρασης ανιχνεύει αντικείμενα αν αλλάζαμε δωμάτιο;

Οι απαντήσεις θα ποικίλλουν:

  1. Οι μαθητές θα πρέπει να σημειώσουν ότι θα πρέπει να αποφασιστεί το όνομα του αντικειμένου. Το αντικείμενο θα πρέπει να τοποθετηθεί στο πλαίσιο του αισθητήρα όρασης και να ακινητοποιηθεί χρησιμοποιώντας το κουμπί "Πάγωμα". Στη συνέχεια, το χρώμα θα επιλεγεί και θα ρυθμιστεί χρησιμοποιώντας το κουμπί "Ορισμός". Οι μαθητές θα πρέπει να περιγράψουν τα βήματα που αναφέρονται σεαυτό το άρθρο.

  2. Η δομήif then elseεκτελεί τις εντολές μέσα στο πρώτο ή το δεύτερο μέρος τουif then elseμε βάση την τιμή Boolean που αναφέρεται. Περισσότερες πληροφορίες σχετικά με τον τρόπο χρήσης αυτής της οδηγίας μπορείτε να βρείτε στις πληροφορίες Βοήθειας.

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

Εικονίδιο "Επεκτείνετε τη Μάθησή σας" Επεκτείνετε τη Μάθησή σας - Διαμορφώστε περισσότερα αντικείμενα

Επιλέξτε δύο άλλα χρωματιστά αντικείμενα για να διαμορφώσετε, πιθανώς λευκό, μοβ, κίτρινο, κ.λπ...

Παράθυρο διαμόρφωσης αισθητήρα όρασης που δείχνει το στιγμιότυπο στα αριστερά με ένα χέρι που κρατά ένα κίτρινο γρανάζι. Υπάρχει μια τετράγωνη επικάλυψη στο κίτρινο γρανάζι και τα δεδομένα γράφουν Κίτρινο κουτί, X90 y 62, w102, h 98. Στα δεξιά έχουν οριστεί οι χρωματικές υπογραφές για τα Bluebox, Redbox, Greenbox και Yellowbox.

Εάν οι μαθητές χρειάζονται βοήθεια, παραπέμψτε τους στις πληροφορίεςΒοήθειαή στο άρθρο Ρύθμιση παραμέτρων ενός αισθητήρα όρασης V5.

Βήμα 3: Ρύθμιση του αισθητήρα όρασης

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

Παράθυρο διαμόρφωσης αισθητήρα όρασης με ένα χέρι που κρατά έναν κόκκινο κύβο με επικάλυψη πάνω από τον κύβο και κείμενο που διαβάζει redbox και x84 y 28 και έπειτα w 158 h 166. Στα δεξιά, οι χρωματικές υπογραφές Bluebox, Redbox και Greenbox ορίζονται με ένα ρυθμιστικό που επισημαίνεται σε ένα κόκκινο πλαίσιο με τον επιλογέα ρυθμισμένο στο 4.4.

Ανοίξτε το προηγουμένως αποθηκευμένο παράδειγμα έργου Ανίχνευση αντικειμένων (Όραση) .

Πώς θα επηρεάσει η ρύθμιση του αισθητήρα όρασης την ικανότητα ανίχνευσης αντικειμένων; Πήγαινε το Clawbot σε διαφορετικό μέρος του δωματίου με περισσότερο ή λιγότερο φως.

V5 Clawbot σε ένα Πεδίο με το χέρι προς τα κάτω και το νύχι ανοιχτό και γύρω από ένα μωβ αντικείμενο κύβο.

  • Λήψη και εκτέλεσητου έργου. Τοποθετήστε αντικείμενα διαφορετικού χρώματος μπροστά από τον αισθητήρα όρασης και παρατηρήστε τη συμπεριφορά του ρομπότ. Καταγράψτε στο σημειωματάριο μηχανικής σας πόσο καλά ανιχνεύει αντικείμενα ο αισθητήρας όρασης. Χρειάζεται ρύθμιση ο αισθητήρας όρασης μετά την αλλαγή θέσης;
  • Ρυθμίστε τον αισθητήρα όρασης όπως απαιτείται. Ελέγξτε τον αισθητήρα όρασης αφού τον ρυθμίσετε για να διαπιστώσετε εάν μπορεί να ανιχνεύσει αντικείμενα καλύτερα και να κάνετε προσαρμογές όπως απαιτείται.

Εικονίδιο "Κίνητρο για συζήτηση" Κίνητρο για συζήτηση - Αναστοχασμός της δραστηριότητας

Ε:Εντόπισε ο αισθητήρας όρασης αντικείμενα όπως περιμένατε;
Α:Οι απαντήσεις θα ποικίλλουν. Ωστόσο, ο στόχος αυτής της ερώτησης είναι η προώθηση της γνωστικής σκέψης. Οι μαθητές θα πρέπει να σημειώσουν ότι η ικανότητα του αισθητήρα όρασης να ανιχνεύει αντικείμενα μπορεί να αλλάξει ανάλογα με το περιβάλλον και το φως.

Ε:Γιατί είναι σημαντικό να μπορείτε να ρυθμίζετε τον Αισθητήρα Όρασης όπως απαιτείται;
Α:Ενώ οι απαντήσεις μπορεί να διαφέρουν, μια συνηθισμένη απάντηση θα πρέπει να είναι ότι εάν ένα ρομπότ χρησιμοποιεί έναν Αισθητήρα Όρασης και μεταφερθεί σε έναν διαγωνισμό ή ακόμα και χρησιμοποιηθεί σε ένα παιχνίδι ή μια πρόκληση, η απόδοση του ρομπότ θα εξαρτηθεί από την ακρίβεια του Αισθητήρα Όρασης. Ο συντονισμός είναι σημαντικός για την ακρίβεια.

Εικονίδιο "Επεκτείνετε τη Μάθησή σας" Επεκτείνετε τη Μάθησή σας - Πολλαπλά Αντικείμενα

Ζητήστε από τους μαθητές να εκτελέσουν το έργο Ανίχνευση Αντικειμένων (Όραση) και να τοποθετήσουν περισσότερα από ένα από τα διαμορφωμένα αντικείμενα μπροστά από τον Αισθητήρα Όρασης. Τι συμβαίνει; Ζητήστε τους να καταγράψουν τα ευρήματά τους στο σημειωματάριο μηχανικής τους.
Τώρα, ζητήστε από τους μαθητές να τοποθετήσουν ένα διαμορφωμένο αντικείμενο και ένα άγνωστο ή μη διαμορφωμένο αντικείμενο μπροστά από τον Αισθητήρα Όρασης. Τι συμβαίνει; Ζητήστε τους να καταγράψουν τα ευρήματά τους στο σημειωματάριο μηχανικής τους.

Ρωτήστε τους μαθητές πριν το δοκιμάσουν, τι θα συνέβαινε αν τοποθετούσαν τρία διαμορφωμένα αντικείμενα μπροστά από τον Αισθητήρα Όρασης; Ζητήστε από τους μαθητές να γράψουν τις προβλέψεις τους πριν το δοκιμάσουν. Ζητήστε τους να καταγράψουν τις παρατηρήσεις τους αφού το δοκιμάσουν.

Διεπαφή του βοηθητικού προγράμματος Vision Sensor Utility που δείχνει δύο χέρια που κρατούν ένα Greenbox και ένα Redbox στο παράθυρο στα αριστερά. Κάθε έγχρωμος κύβος έχει μια επικάλυψη με δεδομένα. Στα δεξιά, οι υπογραφές για τα Bluebox, Redbox, Greenbox και Yellowbox είναι όλες έτοιμες.

Διευκολύνετε μια συζήτηση σχετικά με το τι προέβλεψαν και παρατήρησαν οι μαθητές.

Διευκολύνετε τη συζήτηση ρωτώντας:

  • Ποιες ήταν οι διαφορές μεταξύ ενός, δύο και τριών αντικειμένων;
  • Θα προσαρμόζατε το έργο με οποιονδήποτε τρόπο για την αναγνώριση πολλαπλών αντικειμένων;