Προγραμματισμός του Claw - C++
Εργαλειοθήκη Εκπαιδευτικού
-
Περίγραμμα Δραστηριότητας
-
Αυτή η εξερεύνηση θα εισαγάγει τους μαθητές στον βασικό προγραμματισμό του κινητήρα Clawbot του V5 Clawbot.
-
Η εκμάθηση του προγραμματισμού του Claw Motor επιτρέπει στους μαθητές να ελέγχουν σωστά τον τρόπο με τον οποίο το V5 Clawbot πιάνει αντικείμενα στο περιβάλλον του.
Το V5 Clawbot είναι έτοιμο για πιασίματα!
Αυτή η εξερεύνηση θα σας επιτρέψει να ξεκινήσετε να δημιουργείτε μερικά ενδιαφέροντα έργα που χρησιμοποιούν το νύχι του V5 Clawbot για να πιάνετε αντικείμενα.
- Οι οδηγίες VEXcode V5 που θα χρησιμοποιηθούν σε αυτήν την εξερεύνηση περιλαμβάνουν:
- ClawMotor.setPosition(0, μοίρες);
- ClawMotor.spinFor(προς τα εμπρός, 90, μοίρες);
- ClawMotor.setTimeout (2, δευτερόλεπτα);
-
Για να μάθετε περισσότερες πληροφορίες σχετικά με την οδηγία, επιλέξτε Βοήθεια και, στη συνέχεια, επιλέξτε το εικονίδιο με το ερωτηματικό δίπλα σε μια εντολή για να δείτε περισσότερες πληροφορίες.

- Βεβαιωθείτε ότι έχετε κατεβάσει και είναι έτοιμο το απαραίτητο υλικό, το σημειωματάριο μηχανικής σας και το VEXcode V5.
| Ποσότητα | Απαιτούμενα υλικά |
|---|---|
| 1 |
Κιτ εκκίνησης για την τάξη VEX V5 (με ενημερωμένο υλικολογισμικό) |
| 1 |
Κώδικας VEX V5 |
| 1 |
Σημειωματάριο Μηχανικής |
| 1 |
Παράδειγμα έργου Clawbot και Advanced TrainingBot (Σύστημα μετάδοσης κίνησης 2 κινητήρων, χωρίς γυροσκόπιο) |
| 1 |
Αλουμινένιο δοχείο |
Βήμα 1: Προετοιμασία για την εξερεύνηση
Πριν ξεκινήσετε τη δραστηριότητα, έχετε έτοιμα όλα αυτά τα αντικείμενα; Ελέγξτε καθένα από τα παρακάτω:
-
Είναι οι κινητήρες συνδεδεμένοι στις σωστές θύρες;
-
Είναι τα έξυπνα καλώδιαπλήρως τοποθετημένασε όλους τους κινητήρες;
-
Είναι ο Εγκέφαλοςενεργοποιημένος;
-
Είναι η μπαταρίαφορτισμένη;
Συμβουλές για τους Δασκάλους
Δώστε στους μαθητές ένα μοντέλο για κάθε βήμα αντιμετώπισης προβλημάτων.
Βήμα 2: Ξεκινήστε ένα νέο έργο
Πριν ξεκινήσετε το έργο σας, επιλέξτε το σωστό πρότυπο έργου. Το παράδειγμα έργου Clawbot και Advanced TrainingBot (Σύστημα μετάδοσης κίνησης 2 κινητήρων, Χωρίς γυροσκόπιο) περιέχει τη διαμόρφωση του κινητήρα του Clawbot. Εάν το πρότυπο δεν χρησιμοποιηθεί, το ρομπότ σας δεν θα εκτελέσει σωστά το έργο.
Ολοκληρώστε τα ακόλουθα βήματα:
- Ανοίξτε το μενού Αρχείο.
- ΕπιλέξτεΆνοιγμαΠαραδείγματα.
- Επιλέξτε και ανοίξτε το παράδειγμα έργου Clawbot και Advanced TrainingBot (Σύστημα μετάδοσης κίνησης 2 κινητήρων, Χωρίς γυροσκόπιο).
- Εφόσον θα προγραμματίσουμε για τον έλεγχο του claw, μετονομάστε το έργο σαςClawControl.
- Αποθήκευσητου έργου σας.
- Ελέγξτε για να βεβαιωθείτε ότι το όνομα του έργου ClawControl βρίσκεται τώρα στο παράθυρο στο κέντρο της γραμμής εργαλείων.
Συμβουλές για τους Δασκάλους
- Δεδομένου ότι πρόκειται για μια αρχική δραστηριότητα με τον προγραμματισμό, ο/η εκπαιδευτικός θα πρέπει να παρουσιάσει τα βήματα και στη συνέχεια να ζητήσει από τους μαθητές να ολοκληρώσουν τις ίδιες ενέργειες. Στη συνέχεια, ο/η εκπαιδευτικός θα πρέπει να παρακολουθεί τους μαθητές για να βεβαιωθεί ότι ακολουθούν σωστά τα βήματα.
- Βεβαιωθείτε ότι οι μαθητές έχουν επιλέξει Άνοιγμα Παραδειγμάτων από το μενού Αρχείο.
- Βεβαιωθείτε ότι οι μαθητές έχουν επιλέξει το παράδειγμα έργου Clawbot και Advanced TrainingBot (Σύστημα μετάδοσης κίνησης 2 κινητήρων, Χωρίς γυροσκόπιο).
Μπορείτε να επισημάνετε στους μαθητές ότι υπάρχουν αρκετές επιλογές από τις οποίες μπορούν να διαλέξουν στη σελίδαΠαραδείγματα. Καθώς κατασκευάζουν και χρησιμοποιούν άλλα ρομπότ, θα έχουν την ευκαιρία να χρησιμοποιούν διαφορετικά πρότυπα. - Μπορείτε να ζητήσετε από τους μαθητές να προσθέσουν τα αρχικά τους ή το όνομα της ομάδας τους στο όνομα του έργου. Αυτό θα βοηθήσει στη διαφοροποίηση των έργων αν ζητήσετε από τους μαθητές να τα υποβάλουν.
Εργαλειοθήκη Δασκάλου
-
Σταματήστε και Συζητήστε
Αυτό είναι ένα καλό σημείο για να σταματήσουμε και να ζητήσουμε από τις ομάδες μαθητών να επανεξετάσουν τα βήματα που μόλις ολοκληρώθηκαν για την έναρξη ενός νέου έργου στο VEXcode V5.
Βήμα 3: Προγραμματίστε το νύχι V5 για άνοιγμα
Τώρα θα ξεκινήσουμε προγραμματίζοντας το νύχι να ανοίγει!
int main() {
// Αρχικοποίηση διαμόρφωσης ρομπότ. ΜΗΝ ΤΟ ΑΦΑΙΡΕΙΤΕ!
vexcodeInit();
ClawMotor.setPosition(0, μοίρες);
}- Γράψτε την εντολήClawMotor.setPosition();όπως φαίνεται παραπάνω στην περιοχή προγραμματισμού για να ορίσετε την αρχική θέση για το claw.
ClawMotor.setPosition(0, μοίρες);
ClawMotor.setTimeout(2, δευτερόλεπτα);- Προσθέστε την εντολήClawMotor.setTimeout();όπως φαίνεται παραπάνω.
- Παρατηρήστε ότι αυτή η εντολή εμφανίζεται πριν από την εντολήClawMotor.spinFor();. Σκοπός του είναι να ορίσει τη διάρκεια λειτουργίας του κινητήρα Claw και να τον σταματά μετά από αυτό το χρονικό διάστημα. Έτσι, ακόμα κι αν ο κινητήρας δεν κινηθεί κατά 60 μοίρες, το έργο σταματά τον κινητήρα Claw μετά από δύο δευτερόλεπτα.
- Βεβαιωθείτε ότι η εντολή Set Timeout έχει εσοχή ώστε να ταιριάζει με την εντολή Set Position και ότι όλες οι εντολές βρίσκονται εντός των αγκυλών.
ClawMotor.setPosition(0, μοίρες);
ClawMotor.setTimeout(2, δευτερόλεπτα);
ClawMotor.spinFor(αντίστροφη, 60, μοίρες);- Γράψτε την εντολήClawMotor.spinFor();όπως φαίνεται παραπάνω για να ανοίξετε το claw κατά 60 μοίρες.
- Επιλέξτε την υποδοχή στην οποία θα γίνει η λήψη του έργου στο V5 Robot Brain κάνοντας κλικ στο εικονίδιο 1 σε πλαίσιο για να ανοίξετε όλες τις διαθέσιμες υποδοχές έργου και να επιλέξετε την επιθυμητή υποδοχή.
- Συνδέστε το ρομπότ στον υπολογιστή ή το tablet σας. Το εικονίδιο του εγκεφάλου στη γραμμή εργαλείωνγίνεται πράσινομετά την επιτυχή πραγματοποίηση μιας σύνδεσης.
- Κάντε κλικ στο εικονίδιο Λήψη δίπλα στο εικονίδιο Πληροφορίες συσκευής για να κατεβάσετε το έργο στον εγκέφαλο ρομπότ V5.

- Ελέγξτε ότι το έργο ClawControl έχει ληφθεί στον εγκέφαλο στην υποδοχή που επιλέξατε.
Εργαλειοθήκη Δασκάλου
-
Επιλογή για Μοντελοποίηση Πρώτα
Δώστε μοντελοποίηση στην τάξη για την εκτέλεση του έργου, προτού όλοι οι μαθητές προσπαθήσουν ταυτόχρονα. Συγκεντρώστε τους μαθητές σε μια περιοχή και τοποθετήστε το Clawbot έτσι ώστε το νύχι του να είναι ορατό από όλους. Αν σκοπεύετε να κάνετε επίδειξη περισσότερες από μία φορές, μπορείτε να πιέσετε απαλά το Claw για να κλείσει ανάμεσα στις εργασίες.
Πείτε στους μαθητές ότι τώρα είναι η σειρά τους να εκτελέσουν τα έργα τους.
- Εκτελέστε (σεC++ήPython) το έργο στο Clawbot βεβαιώνοντας ότι το έργο είναι επιλεγμένο και, στη συνέχεια, πατήστε το κουμπί Εκτέλεση. Συγχαρητήρια για τη δημιουργία του πρώτου σας έργου για τη μετακίνηση του Claw!
Βήμα 4: Δοκιμάστε το εξής: Κλείστε το νύχι V5
Τώρα που έχετε προγραμματίσει το νύχι να ανοίγει, θα το προγραμματίσετε τώρα να κλείνει.

Τώρα που μπορείτε να ανοίξετε το νύχι, θα πρέπει να το κλείσετε και αυτό.
- Επιστρέψτε στο έργο ClawControl και προσθέστε μια επιπλέον εντολήClawMotor.spinFor();insγια να κλείσει η περιστροφή του Claw Motor για 30 μοίρες. Το νύχι θα πρέπει να κλείσει στη μέση της διαδρομής, επειδή αρχικά περιστράφηκε ανοικτό κατά 60 μοίρες.
- Ελέγξτε ότι το αναθεωρημένο έργο σας έχει το claw ανοιχτό για 60 μοίρες και στη συνέχεια κλείσιμο για 30 μοίρες, κατεβάζοντας και εκτελώντας το έργο ClawControl.
Εργαλειοθήκη Δασκάλου
-
Λύση
Προηγουμένως, το Claw άνοιγε στους 60 βαθμούς. Σε αυτό το έργο περιλαμβανόταν μια εντολή ορισμού χρονικού ορίου του κινητήρα, επειδή είναι σημαντική πρακτική να ορίζετε ένα χρονικό όριο κατά την τροφοδοσία ενός χειριστή του οποίου η κίνηση θα μπορούσε να περιοριστεί με κάποιο τρόπο. Ο ορισμός ενός χρονικού ορίου αποτρέπει την περιττή φθορά ενός κινητήρα.
Η λύση αυτού του βήματος είναι η ακόλουθη:
int main() {
// Αρχικοποίηση διαμόρφωσης ρομπότ. ΜΗΝ ΤΟ ΑΦΑΙΡΕΙΤΕ!
vexcodeInit();
ClawMotor.setPosition(0, μοίρες);
ClawMotor.setTimeout(2, δευτερόλεπτα);
ClawMotor.spinFor(πίσω, 60, μοίρες);
ClawMotor.spinFor(εμπρός, 30, μοίρες);
}
Βήμα 5: Δοκιμάστε το εξής: Ακολουθία πολλαπλών κινήσεων

Δεν θα έχουν όλα όσα πιάνετε με το νύχι το ίδιο μέγεθος. Δοκιμάστε να ανοίξετε το νύχι σε διαφορετικές θέσεις κατά μήκος του εύρους κίνησης.
- Περιστρέψτε τον κινητήρα για να:
- Ανοιχτό για 70 βαθμούς
- Κλείσιμο για 20 βαθμούς
- Ανοιχτά για 10 βαθμούς
- Κλείσιμο για 30 βαθμούς
- Κλείσιμο για 25 βαθμούς
- Αν ο κινητήρας με τα νύχια ξεκινά στις 0 μοίρες, σε πόσες μοίρες είναι ανοιχτός στο τέλος του έργου;
- Ξεκινήστε με το μοτέρ με τη γάντζο κλειστό.
Εργαλειοθήκη Δασκάλου
-
Λύση
Η λύση σε αυτό το βήμα παρουσιάζεται παρακάτω.
Ο κινητήρας με δαγκάνα είναι ακόμα ανοιχτός στις 5 μοίρες στο τέλος του έργου: 70 - 20 = 50 --> 50 + 10 = 60 --> 60 - 30 = 30 --> 30 - 25 = 5 μοίρες.
int main() {
// Αρχικοποίηση διαμόρφωσης ρομπότ. ΜΗΝ ΤΟ ΑΦΑΙΡΕΙΤΕ!
vexcodeInit();
// Ορίστε την τρέχουσα θέση του Claw ως μηδέν
ClawMotor.setPosition(0, μοίρες);
// Ορίστε το χρονικό όριο του Claw
ClawMotor.setTimeout(2, δευτερόλεπτα);
ClawMotor.spinFor(reverse, 70, μοίρες);
ClawMotor.spinFor(forward, 20, μοίρες);
ClawMotor.spinFor(reverse, 10, μοίρες);
ClawMotor.spinFor(forward, 30, μοίρες);
ClawMotor.spinFor(forward, 25, μοίρες);
}
Βήμα 6: Ολοκλήρωση της Πρόκλησης Κλειδώματος Σφιχτού

Η Πρόκληση της Κλειδαριάς
- Προγραμματίστε το Clawbot να κλείνει με ασφάλεια το νύχι σε ένα άδειο αλουμινένιο δοχείο 12 ουγγιών χωρίς να συνθλίβει τα πλαϊνά.
- Βάλτε το Clawbot να κρατάει το δοχείο ενώ αυτό ανεβάζει και κατεβάζει το βραχίονά του κατά 45 μοίρες.
- Το Clawbot θα πρέπει στη συνέχεια να απελευθερώσει το δοχείο και να απομακρυνθεί από αυτό.
- Ξεκίνα την πρόκληση με ένα ανοιχτό νύχι και ένα άδειο κουτί μέσα σε αυτό.
Συμβουλές για τους Δασκάλους
-
Βάλτε τους μαθητές να ξεκινήσουν την πρόκληση με ένα ανοιχτό νύχι και ένα άδειο κουτί μέσα σε αυτό.
-
Εάν το δοχείο συνθλιβεί ή πέσει έξω από το δάχτυλο, η πρόκληση πρέπει να ξεκινήσει από την αρχή μετά την προσαρμογή του έργου.
Εργαλειοθήκη Δασκάλου
-
Λύση
Ακολουθεί ένα παράδειγμα λύσης:
int main() {
// Αρχικοποίηση διαμόρφωσης ρομπότ. ΜΗΝ ΤΟ ΑΦΑΙΡΕΙΤΕ!
vexcodeInit();
// Λαμβάνουμε την τρέχουσα θέση του Claw ως μηδέν
ClawMotor.setPosition(0, μοίρες);
// Ορίζουμε το χρονικό όριο του Claw
ClawMotor.setTimeout(2, δευτερόλεπτα);
ClawMotor.spinFor(forward, 170, μοίρες);
ArmMotor.spinFor(forward, 45, μοίρες);
ArmMotor.spinFor(reverse, 45, μοίρες);
ClawMotor.spinFor(reverse, 150, μοίρες);
Drivetrain.driveFor(reverse, 150, mm);
}- Το έργο ορίζει το χρονικό όριο, κλείνει το νύχι γύρω από το δοχείο, σηκώνει και χαμηλώνει το δοχείο, το απελευθερώνει και μετά κάνει πίσω.
- Ρουμπρίκα Προγραμματισμού(Έγγραφο Google / .docx / .pdf)