Πίνακας περιεχομένων:
- Βήμα 1: Επισκόπηση έργου
- Βήμα 2: Διαγράμματα
- Βήμα 3: Διάγραμμα ελεγκτή PS2
- Βήμα 4: Ρύθμιση σύνδεσης Zio Modules
- Βήμα 5: Συνδέστε το Robotic Arm Servo στο Zio 16 Servo Controller
- Βήμα 6: Συνδέστε το 16 Servo στο DC/DC Booster και ρυθμίστε το στα 6,0V
- Βήμα 7: Συνδέστε το Zuino M Uno στο Zio 16 Servo Controller
- Βήμα 8: Σύνδεση Uno με το δέκτη PS2
- Βήμα 9: Κωδικός για ρομποτικό βραχίονα
- Βήμα 10: Εκτελέστε τον κωδικό σας
- Βήμα 11: Επεξήγηση κώδικα
Βίντεο: Robotic Arm With Zio Modules Μέρος 2: 11 Βήματα
2024 Συγγραφέας: John Day | [email protected]. Τελευταία τροποποίηση: 2024-01-30 08:36
Στο σημερινό σεμινάριο, θα χρησιμοποιήσουμε και τα 4 servos και ένα ασύρματο χειριστήριο PS2 για τον έλεγχο του ρομποτικού βραχίονα.
Αυτή η ανάρτηση ιστολογίου είναι μέρος της σειράς Zio Robotics.
Εισαγωγή
Στο προηγούμενο ιστολόγιό μας, δημοσιεύσαμε ένα σεμινάριο για το Μέρος 1 σχετικά με τον τρόπο ελέγχου ενός ρομποτικού βραχίονα χρησιμοποιώντας ενότητες Zio. Το Μέρος 1 επικεντρώθηκε κυρίως στον αυτόματο έλεγχο του Robotic Arm's Claw για άνοιγμα και κλείσιμο.
Στο σημερινό σεμινάριο, θα το βελτιώσουμε λίγο συμπεριλαμβάνοντας ένα ασύρματο χειριστήριο PS2 για τον έλεγχο του Robotic Arm. Για αυτό το έργο, θα χρησιμοποιήσουμε 4 servos.
Βήμα 1: Επισκόπηση έργου
Επίπεδο δυσκολίας:
Zio Padawan
Χρήσιμοι πόροι:
Θα πρέπει να έχετε μια βασική κατανόηση για το πώς να εγκαταστήσετε τους πίνακες ανάπτυξης Zio. Σε αυτό το σεμινάριο, υποθέτουμε ότι ο πίνακας ανάπτυξης είναι ήδη διαμορφωμένος και είναι έτοιμος για ρύθμιση. Εάν δεν έχετε ρυθμίσει ακόμα την πλακέτα σας, ανατρέξτε παρακάτω στο σεμινάριο του Zio Qwiic Start Guide για να ξεκινήσετε:
Οδηγός έναρξης Zio Zuino M UNO Qwiic
Βήμα 2: Διαγράμματα
Εδώ είναι τα Σχήματα καλωδίωσης του έργου Robotic Arm Part 2 καθώς και το διάγραμμα ελεγκτή PS2 που χρειάζονται για να κατανοήσετε για το τμήμα κωδικοποίησης.
Βήμα 3: Διάγραμμα ελεγκτή PS2
Βήμα 4: Ρύθμιση σύνδεσης Zio Modules
Παρακάτω είναι η σύνδεση των μονάδων Zio που πρόκειται να ρυθμιστούν με το Robotic Arm. Η σύνδεση όλων των μονάδων μεταξύ τους είναι αρκετά εύκολη και δεν θα χρειαστεί περισσότερο από 10 λεπτά για να ρυθμιστεί.
Βήμα 5: Συνδέστε το Robotic Arm Servo στο Zio 16 Servo Controller
Βήμα 6: Συνδέστε το 16 Servo στο DC/DC Booster και ρυθμίστε το στα 6,0V
Χρησιμοποιούμε ενισχυτή DC/DC για ενίσχυση και ρύθμιση της τάσης τροφοδοσίας μπαταρίας στο 6,0.
Χρησιμοποιήστε το ποτενσιόμετρο στο DC Booster για να ρυθμίσετε την τάση μέχρι να λάβετε 6,0. Πιέστε το κουμπί εισόδου/εξόδου μέχρι να εμφανιστεί η οθόνη 6.0. Πρέπει πρώτα να τροφοδοτήσετε τροφοδοσία (μπαταρία 3,7V) στον ενισχυτή DC/DC για να ρυθμίσετε την τάση.
Βήμα 7: Συνδέστε το Zuino M Uno στο Zio 16 Servo Controller
Το Qwiic συνδέει το Zuino M Uno στο χειριστήριο Zio Servo με qwiic καλώδιο.
Βήμα 8: Σύνδεση Uno με το δέκτη PS2
Εδώ είναι ένα διάγραμμα καρφιτσών των συνδέσεων. Χρειάζεστε 5 αρσενικά προς θηλυκά άλματα για αυτό το μέρος.
Βήμα 9: Κωδικός για ρομποτικό βραχίονα
Θα χρησιμοποιήσουμε τη Βιβλιοθήκη PS2 Arduino για να κωδικοποιήσουμε τον ασύρματο ελεγκτή PS2 για να συνεργαστούμε με το Robotic Arm. Μπορείτε να βρείτε και να κατεβάσετε τον πηγαίο κώδικα για αυτό το έργο Robotic Arm Part 2 στη σελίδα μας στο Github.
Κατεβάστε και εγκαταστήστε τις ακόλουθες βιβλιοθήκες και αποθηκεύστε τις στον τοπικό φάκελο βιβλιοθηκών Arduino IDE:
- Βιβλιοθήκη προγράμματος οδήγησης Adafruit PWM Servo
- PS2 βιβλιοθήκη Arduino
Για να εγκαταστήσετε τις βιβλιοθήκες ανοίξτε το Arduino IDE, μεταβείτε στην καρτέλα Sketch, επιλέξτε Include Library -> Add. Zip Library. Επιλέξτε τις παραπάνω βιβλιοθήκες που θα συμπεριληφθούν στο IDE σας.
Το Arduino διαθέτει έναν εύχρηστο οδηγό για τον τρόπο εγκατάστασης βιβλιοθηκών στο Arduino IDE. Δείτε τους εδώ!
Βήμα 10: Εκτελέστε τον κωδικό σας
Ανοίξτε το Arduino IDE. Στην ενότητα Αρχεία> Παραδείγματα> PS2_Arduino_Library, επιλέξτε PS2X_Servo
Σημείωση: Προτού μπορέσετε να ελέγξετε το ρομποτικό σας χέρι με το PS2 Controller, ελέγξτε τα ακόλουθα βήματα: Ενεργοποιήστε τον ελεγκτή PS2. Βεβαιωθείτε ότι ανάβει το LED Mode. Εάν όχι, πατήστε το κουμπί Mode στο χειριστήριο σας. Αφού κάνετε τα παραπάνω, πρέπει να πατήσετε το κουμπί επαναφοράς στο Zuino M Uno για να διαβάσει τις ρυθμίσεις του ελεγκτή σας. Πρέπει να πατήσετε το L1 και το Joystick για να μετακινήσετε το ρομποτικό σας χέρι.
- Το Left Joystick ελέγχει την κάμψη του βραχίονα προς τα πάνω ή προς τα κάτω
- Το Right Joystick ελέγχει το νύχι είτε ανοίγει είτε κλείνει και περιστρέφει το νύχι αριστερά ή δεξιά.
Βήμα 11: Επεξήγηση κώδικα
Η χρήση της βιβλιοθήκης PS2X Arduino είναι απλή, απαιτεί μόνο προετοιμασία, ρύθμιση και έπειτα εντολή ανάγνωσης.
Για να ορίσετε τη σύνδεση για τον ελεγκτή PS2 με το Uno, ακολουθούν οι ακίδες που πρέπει να ορίσετε στον κωδικό σας:
/********************************************* ****************ορίστε ακίδες συνδεδεμένες στον ελεγκτή PS2:* - 1e στήλη: αρχική* - 2e colmun: Stef? *αντικαταστήστε τους αριθμούς pin με αυτούς που χρησιμοποιείτε *************************************** **********************/#define PS2_DAT 13 // 14 #define PS2_CMD 11 // 15#define PS2_SEL 10 // 16#define PS2_CLK 12 // 17
Αντικαταστήσαμε τις καρφίτσες με αυτές που χρησιμοποιούμε για να συνδεθούμε στο Uno μας, όπως περιγράφεται στο διάγραμμα καρφιτσών παραπάνω.
/********************************************* ***************** επιλεγμένες λειτουργίες του ελεγκτή PS2:* - πιέσεις = αναλογική ανάγνωση κουμπιών ώθησης* - βρυχηθμός = βρυχηθμός κινητήρα*παρατήρηση 1 των γραμμών για κάθε επιλογή λειτουργίας ** ********************************************** ************ // //#καθορισμός πιέσεων αληθινές#καθορισμός πιέσεων ψευδείς
Εδώ ορίσαμε τη λειτουργία PS2 για τις πιέσεις και το rumble ως false. Σχολιάσαμε αυτά που δεν χρησιμοποιούμε.
Θα χρησιμοποιούμε μόνο την εντολή Controller's Joystick και το L1 για να ελέγξουμε την κίνηση του Robotic Arm μας.
void loop () {/* Πρέπει να διαβάσετε το Gamepad για να λάβετε νέες τιμές και να ορίσετε τιμές δόνησης ps2x.read_gamepad (μικρός κινητήρας ενεργοποιημένος/απενεργοποιημένος, μεγαλύτερη ισχύς κινητήρα από 0-255) εάν δεν ενεργοποιήσετε το rumble, χρησιμοποιήστε το ps2x.read_gamepad ()? Χωρίς τιμές Θα πρέπει να το καλέσετε τουλάχιστον μία φορά το δευτερόλεπτο*/εάν (σφάλμα == 1) // παράλειψη βρόχου εάν δεν βρέθηκε από τον ελεγκτή επιστροφή. else {// DualShock Controller ps2x.read_gamepad (false, δόνηση); // διαβάστε το χειριστήριο και ρυθμίστε τον μεγάλο κινητήρα να περιστρέφεται με ταχύτητα «δόνησης» εάν (ps2x. Button (PSB_START)) // θα είναι ΑΛΗΘΙΝΟ εφόσον πατηθεί το κουμπί Serial.println ("Η εκκίνηση κρατείται"). if (ps2x. Button (PSB_SELECT)) Serial.println ("Η επιλογή κρατείται"); δόνηση = ps2x. Αναλογικό (PSAB_CROSS); // αυτό θα ρυθμίσει την ταχύτητα δόνησης του μεγάλου κινητήρα με βάση το πόσο σκληρά πατάτε το μπλε κουμπί (X) εάν (ps2x. Button (PSB_L1) || ps2x. Button (PSB_R1)) {// εκτυπώστε τις τιμές των ραβδιών, εάν το ένα είναι TRUE RY_Value = ps2x. Αναλογικό (PSS_RY); RX_Value = ps2x. Analog (PSS_RX); LY_Value = ps2x. Analog (PSS_LY); LX_Value = ps2x. Analog (PSS_LX); Serial.print ("Stick Values:"); Serial.print (RX_Value); Serial.print (""); Serial.print (RY_Value); Serial.print (""); Serial.print (LY_Value); Serial.print (""); Serial.println (LX_Value);
Ο παρακάτω κωδικός είναι εκεί που κωδικοποιούμε τα servos μας που ελέγχουν τον ρομποτικό μας βραχίονα, τον οποίο συμπεριλαμβάνουμε στην κλήση λειτουργίας κάτω από το ps2x.button (PSB_L1) || ps2x.button (PSB_R1).
Πρέπει να πατήσετε το κουμπί L1 ή R1 μαζί με το Joystick για να ελέγξετε το ρομποτικό σας χέρι.
Τα σερβο χειριστήρια Left Joystick 2 και 3 για το μέρος του βραχίονα - ελέγξτε την κάμψη πάνω και κάτω του βραχίονα αντίστοιχα, ενώ το δεξί χειριστήριο 0 και 1 του νυχιού του ρομποτικού βραχίονα για άνοιγμα ή κλείσιμο και περιστροφή αριστερά ή δεξιά.
SERVO 0, 1 - Νύχι SERVO 2, 3 - Arm
Μπορείτε να κάνετε αλλαγές σε τιμές σε αυτήν την ενότητα για να ελέγξετε τον βαθμό της γωνίας του ρομποτικού βραχίονα:
pulselen0 = χάρτης (RY_Value, 0, 127, SERVOMIN0, SERVOMAX0); pulselen1 = χάρτης (RX_Value, 0, 127, SERVOMIN0, SERVOMAX0); pulselen2 = χάρτης (LY_Value, 0, 127, SERVOMIN2, SERVOMAX2); pulselen3 = χάρτης (LX_Value, 0, 255, SERVOMIN3, SERVOMAX3);
Συνιστάται:
Xbox 360 ROBOTIC ARM [ARDUINO]: AXIOM ARM: 4 Βήματα
Xbox 360 ROBOTIC ARM [ARDUINO]: AXIOM ARM:
Robotic Arm With Zio Modules Μέρος 3: 4 Βήματα
Robotic Arm With Zio Modules Μέρος 3: Αυτή η ανάρτηση ιστολογίου είναι μέρος της σειράς Zio Robotics. Εισαγωγή Στο προηγούμενο ιστολόγιό μας, δημοσιεύσαμε ένα σεμινάριο για τα μέρη 1 και 2 σχετικά με τον τρόπο ελέγχου ενός ρομποτικού βραχίονα χρησιμοποιώντας ενότητες Zio. Το Μέρος 1 επικεντρώθηκε κυρίως στον αυτόματο έλεγχο του Robotic Arm's Claw t
Έλεγχος ρομποτικού βραχίονα με μονάδες Zio Μέρος 1: 8 βήματα
Έλεγχος ενός ρομποτικού βραχίονα με μονάδες Zio Μέρος 1: Αυτή η ανάρτηση ιστολογίου είναι μέρος της σειράς Zio Robotics. Εισαγωγή Σε αυτό το σεμινάριο, θα δημιουργήσουμε ένα έργο όπου θα χρησιμοποιήσουμε μονάδες Zio για τον έλεγχο του ρομποτικού βραχίονα. Αυτό το έργο θα σας διδάξει πώς να κάνετε το νύχι σας Robotic Arm να ανοίγει και να κλείνει. Αυτό το ν
ΠΩΣ ΝΑ ΣΥΝΑΡΜΟΛΟΓΗΣΕΤΕ ΕΝΑ ΕΚΠΤΩΣΙΚΟ ΞΥΛΙΝΟ ΡΟΜΠΟΤ ΒΡΑΧΙΟ (ΜΕΡΟΣ 3: ROBOT ARM) - ΒΑΣΕΙΣ ΣΤΟ ΜΙΚΡΟ: BITN: 8 Βήματα
ΠΩΣ ΝΑ ΣΥΝΑΡΜΟΛΟΓΗΣΕΤΕ ΕΝΑ ΕΚΠΤΩΣΙΚΟ ΞΥΛΙΝΟ ΡΟΜΠΟΤ ΑΡΜΠΟΡ (ΜΕΡΟΣ 3: ROBOT ARM) - ΒΑΣΕΙΣ ΣΤΟ ΜΙΚΡΟ: BITN: Η επόμενη διαδικασία εγκατάστασης βασίζεται στην ολοκλήρωση της λειτουργίας αποφυγής εμποδίων. Η διαδικασία εγκατάστασης στην προηγούμενη ενότητα είναι η ίδια με τη διαδικασία εγκατάστασης στη λειτουργία παρακολούθησης γραμμών. Στη συνέχεια, ας ρίξουμε μια ματιά στην τελική μορφή του A
ΜΕΡΟΣ 2 - ΣΥΝΕΛΕΥΣΗ GPIO ARM - RGB - ΚΛΗΣΕΙΣ ΛΕΙΤΟΥΡΓΙΑΣ - Διακόπτες: 6 Βήματα
ΜΕΡΟΣ 2 - GPIO ARM ASSEMBLY - RGB - ΛΕΙΤΟΥΡΓΙΚΕΣ ΚΛΗΣΕΙΣ - Διακόπτες: Στο Μέρος 1, μάθαμε πώς να αλλάζουμε ένα κόκκινο LED στην πλακέτα ανάπτυξης MSP432 LaunchPad από την Texas Instruments, χρησιμοποιώντας συναρμολόγηση αντί για C / C ++. Σε αυτό το Οδηγό, θα κάνει κάτι παρόμοιο - ελέγξτε ένα LED RGB που είναι επίσης σε αυτό το sam