Πίνακας περιεχομένων:
- Βήμα 1: Συνδέστε το πληκτρολόγιο
- Βήμα 2: Προσθέστε το Micro Servo
- Βήμα 3: Τροποποιήστε τον κώδικα για να χρησιμοποιήσετε το πληκτρολόγιο στο Servo
Βίντεο: Servo Positoning με ένα πληκτρολόγιο: 3 βήματα
2024 Συγγραφέας: John Day | [email protected]. Τελευταία τροποποίηση: 2024-01-30 08:38
Σε αυτό το διδακτικό θα δημιουργήσουμε ένα έργο που θα ελέγχει ένα Micro-Servo με ένα πληκτρολόγιο που θα το τρέχει με ένα Arduino Uno.
Υλικά που χρησιμοποιούνται:
Arduino Uno
Breadboard
Πληκτρολόγιο 4x4
Micro-Servo
Βήμα 1: Συνδέστε το πληκτρολόγιο
Η πρώτη σκέψη που πρέπει να κάνετε είναι να συνδέσετε τη ράγα ισχύος και τη ράγα γείωσης στο ψωμί σας από το Arduino σας
- Συνδέστε τον πείρο 5V στη ράγα τροφοδοσίας (κόκκινο)
- Συνδέστε έναν πείρο γείωσης (GND) στη ράγα γείωσης (μπλε)
Τώρα που το breadboard έχει ισχύ και είναι γειωμένο, μπορούμε να ξεκινήσουμε την καλωδίωση των εξαρτημάτων μας.
Η καλωδίωση του πληκτρολογίου είναι εύκολη, αλλά πρέπει να λάβετε υπόψη τις ακίδες στο πληκτρολόγιο και το arduino. Θα είναι χρήσιμο όταν στρέψουμε την προσοχή μας στον κώδικά μας.
Θυμηθείτε να ξεκινήσετε στα αριστερά όταν χρησιμοποιείτε τα καλώδια σας!
- Η πρώτη καρφίτσα πηγαίνει στο 13
- Η δεύτερη καρφίτσα πηγαίνει στο 12
- Η τρίτη καρφίτσα πηγαίνει στο 11
- Η τέταρτη καρφίτσα πηγαίνει στο 10
- Πέμπτη καρφίτσα έως 9
- Έκτη καρφίτσα στο 8
- Έβδομη καρφίτσα στο 7
- Όγδοη καρφίτσα σε 6
Κατά την καλωδίωση του πληκτρολογίου, θυμηθείτε να κρατήσετε έναν ψηφιακό πείρο pwm ανοιχτό. Θα το χρειαστούμε για το micro-servo
Πριν φτάσουμε στον κώδικα, βεβαιωθείτε ότι έχετε εγκαταστήσει τη Βιβλιοθήκη πληκτρολογίου. Μπορεί να βρεθεί στο σκίτσο σας, στη συνέχεια στην καρτέλα σκίτσο, συμπεριλάβετε τη βιβλιοθήκη. Δεν θα μπορείτε να χρησιμοποιήσετε το πληκτρολόγιο χωρίς αυτό.
Τώρα ας στραφούμε στον κώδικα και βεβαιωθείτε ότι το πληκτρολόγιο λειτουργεί και δίνει τις τιμές που παρακολουθείτε
Γρήγορες σημειώσεις: Βεβαιωθείτε ότι έχετε την εντολή if για να ελέγξετε το πληκτρολόγιο, διαφορετικά δεν θα λειτουργήσει. Επίσης προσέξτε τις καθυστερήσεις, θα μπερδευτούν με τα κουμπιά που καταγράφονται από το πληκτρολόγιο
#περιλαμβάνω
γραμμές const byte = 4; // τέσσερις σειρές αφού το πληκτρολόγιο είναι γεμάτο
const στήλες byte = 4; // τέσσερις στήλες, όπως παραπάνω
κουμπιά char [σειρές] [στήλες] = {
{'1', '2', '3', 'A'}, {'4', '5', '6', 'B'}, {'7', '8', '9', ' C '}, {'*',' 0 ','#',' D '}};
byte rowP [σειρές] = {13, 12, 11, 10}; // καρφίτσες σειράς του πληκτρολογίου
byte στήλεςP [στήλες] = {9, 8, 7, 6}; // καρφίτσες στήλης του πληκτρολογίου
Πληκτρολόγιο = Πληκτρολόγιο (makeKeymap (κουμπιά), rowP, στήλεςP, σειρές, στήλες); // δημιουργία πληκτρολογίου
void setup () {
Serial.begin (9600); }
void loop () {
char buttonPressed = pad.getKey (); // λάβετε το char από το πληκτρολόγιο εάν (buttonPressed) // δείξτε ποιο κουμπί πατήθηκε στο πληκτρολόγιο {Serial.println (buttonPressed); }}
Βήμα 2: Προσθέστε το Micro Servo
Τώρα ας προσθέσουμε τον σερβοκινητήρα. Αυτό είναι πραγματικά εύκολο να προστεθεί στο τρέχον έργο μας, καθώς ο διακομιστής μικροϋπολογιστών διαθέτει μόνο τρία καλώδια.
- Το καφέ σύρμα πηγαίνει στη ράγα γείωσης στη σανίδα ψωμιού
- Το κόκκινο πηγαίνει στο Power rail
- Το πορτοκαλί πηγαίνει στο Pin 3 στο Arduino. Θυμηθείτε ότι ο διακομιστής μικροϋπολογιστών πρέπει να έχει ένα PWM pin στο Arduino. Αυτό οφείλεται στο σερβο που χρησιμοποιεί το TIMER2
Τώρα ας βεβαιωθούμε ότι συνδέσαμε το σερβο μικροϋπολογιστή σωστά και ότι κινείται
#include #include "Servo.h"
γραμμές const byte = 4; // τέσσερις σειρές αφού το πληκτρολόγιο είναι γεμάτο
const στήλες byte = 4; // τέσσερις στήλες, όπως παραπάνω
κουμπιά char [σειρές] [στήλες] = {
{'1', '2', '3', 'A'}, {'4', '5', '6', 'B'}, {'7', '8', '9', ' C '}, {'*',' 0 ','#',' D '}};
byte rowP [σειρές] = {13, 12, 11, 10}; // καρφίτσες σειράς του πληκτρολογίου
byte στήλεςP [στήλες] = {9, 8, 7, 6}; // καρφίτσες στήλης του πληκτρολογίου
Πληκτρολόγιο = Πληκτρολόγιο (makeKeymap (κουμπιά), rowP, στήλεςP, γραμμές, στήλες); // δημιουργία πληκτρολογίου
Servo currentServo; // δημιουργία αντικειμένου σερβο για τον έλεγχο ενός σερβο
// Δώδεκα servo αντικείμενα μπορούν να δημιουργηθούν στους περισσότερους πίνακες
int pos = 0; // μεταβλητή για αποθήκευση της θέσης σερβο
void setup () {
Serial.begin (9600); currentServo.attach (3); // συνδέει το σερβο στο pin 9 στο σερβο αντικείμενο
}
void loop () {
char buttonPressed = pad.getKey (); // λάβετε το char από το πληκτρολόγιο εάν (buttonPressed) // δείξτε ποιο κουμπί πατήθηκε στο πληκτρολόγιο {Serial.println (buttonPressed); }
currentServo.write (95);
}
Βήμα 3: Τροποποιήστε τον κώδικα για να χρησιμοποιήσετε το πληκτρολόγιο στο Servo
Γνωρίζετε ότι πρόκειται να τροποποιήσουμε τον κώδικά μας έτσι ώστε όταν πατάμε ένα συγκεκριμένο κουμπί στο πληκτρολόγιο, το σερβο να μετακινηθεί σε μια συγκεκριμένη θέση. Πρώτα κάτι σημαντικό. Η θέση σερβο για το 0 ήταν περίεργη. Δεδομένου ότι είχα ένα σερβο συνεχούς περιστροφής, όποτε έφτανε κοντά στο 0, το σερβο μόλις άρχισε να περιστρέφεται. Ο αριθμός που έβαλα στον κωδικό ήταν όσο το δυνατόν χαμηλότερος χωρίς να συμβεί αυτό. Τέλος πάντων, εδώ είναι ο τελικός μου κωδικός:
#συμπεριλάβω #συμπεριλάβω
γραμμές const byte = 4; // τέσσερις σειρές αφού το πληκτρολόγιο είναι γεμάτο
const στήλες byte = 4; // τέσσερις στήλες, όπως παραπάνω
κουμπιά char [σειρές] [στήλες] = {
{'1', '2', '3', 'A'}, {'4', '5', '6', 'B'}, {'7', '8', '9', ' C '}, {'*',' 0 ','#',' D '}};
byte rowP [σειρές] = {13, 12, 11, 10}; // καρφίτσες σειράς του πληκτρολογίου
byte στήλεςP [στήλες] = {9, 8, 7, 6}; // ακίδες στήλης του πληκτρολογίου
Πληκτρολόγιο = Πληκτρολόγιο (makeKeymap (κουμπιά), rowP, στήλεςP, γραμμές, στήλες); // δημιουργία πληκτρολογίου
Servo myServo; //
void setup () {
Serial.begin (9600); myServo.attach (5); // συνδέει το σερβο στο pin 9 στο σερβο αντικείμενο}
void loop () {
κλειδί char = pad.getKey (); // λάβετε το char από το πληκτρολόγιο if (key == '0') {myServo.write (11); Serial.println ("0"); καθυστέρηση (15)? } if (key == '1') {myServo.write (12); Serial.println ("1"); καθυστέρηση (15)? } if (key == '2') {myServo.write (24); Serial.println ("2"); καθυστέρηση (15)? } if (κλειδί == '3') {myServo.write (36); Serial.println ("3"); καθυστέρηση (15)? }
εάν (κλειδί == '4')
{myServo.write (48); Serial.println ("4"); καθυστέρηση (15)? }
εάν (κλειδί == '5')
{myServo.write (60); Serial.println ("5"); καθυστέρηση (15)? }
εάν (κλειδί == '6')
{myServo.write (72); Serial.println ("6"); καθυστέρηση (15)? }
εάν (κλειδί == '7')
{myServo.write (84); Serial.println ("7"); καθυστέρηση (15)? }
εάν (κλειδί == '8')
{myServo.write (96); Serial.println ("8"); καθυστέρηση (15)? }
εάν (κλειδί == '9')
{myServo.write (108); Serial.println ("9"); καθυστέρηση (15)? }
εάν (κλειδί == '*')
{myServo.write (120); Serial.println ("*"); καθυστέρηση (15)? }
εάν (κλειδί == '#')
{myServo.write (132); Serial.println ("#"); καθυστέρηση (15)? }
εάν (κλειδί == 'Α')
{myServo.write (146); Serial.println ("A"); καθυστέρηση (15)? }
εάν (κλειδί == 'Β')
{myServo.write (158); Serial.println ("B"); καθυστέρηση (15)? }
εάν (κλειδί == 'C')
{myServo.write (170); Serial.println ("C"); καθυστέρηση (15)? }
εάν (κλειδί == 'D')
{myServo.write (180); Serial.println ("D"); καθυστέρηση (15)? }}
Συνιστάται:
Λίγα απλά στοιχεία, DIY ένα ηλεκτρονικό πληκτρολόγιο: 6 βήματα
Μερικά απλά στοιχεία, DIY ένα ηλεκτρονικό πληκτρολόγιο: 555 χρονόμετρο 1 Κουμπί capac 81 100nF πυκνωτής Διάφορες αντιστάσεις: 390Ω, 620Ω, 910Ω, 1kΩ × 2, 1.1kΩ, 1.3kΩ, 1.5kΩ, 6.2kΩ.1 buzzer22AWG καλώδιο εγκατάστασης 1 συνδετήρας μπαταρίας 9V1 9board μπαταρία
Δημιουργήστε ένα ερασιτεχνικό ραδιόφωνο APRS RX Only IGate χρησιμοποιώντας ένα Raspberry Pi και ένα RTL-SDR Dongle σε λιγότερο από μισή ώρα: 5 βήματα
Δημιουργήστε ένα ερασιτεχνικό ραδιόφωνο APRS RX Only IGate χρησιμοποιώντας ένα Raspberry Pi και ένα RTL-SDR Dongle σε λιγότερο από μισή ώρα: Λάβετε υπόψη ότι αυτό είναι τώρα αρκετά παλιό, οπότε ορισμένα μέρη είναι λανθασμένα και παλιά. Τα αρχεία που πρέπει να επεξεργαστείτε έχουν αλλάξει. Έχω ενημερώσει τον σύνδεσμο για να σας δώσω την πιο πρόσφατη έκδοση της εικόνας (χρησιμοποιήστε το 7-zip για να την αποσυμπιέσετε) αλλά για πλήρη εγκατάσταση
Πώς να φτιάξετε ένα CubeSat με ένα Arduino με ένα Arducam: 9 βήματα
Πώς να φτιάξετε ένα CubeSat με ένα Arduino με ένα Arducam: Στην πρώτη εικόνα, έχουμε ένα Arduino και ονομάζεται " Arduino Uno. &Quot; Στη δεύτερη εικόνα, έχουμε ένα Arducam, και ονομάζεται " Arducam OV2640 Μίνι 2MP. &Quot; Μαζί με τη δεύτερη εικόνα, υπάρχουν τα υλικά που θα χρειαστείτε για
Γρήγορο και βρώμικο πληκτρολόγιο Das (κενό πληκτρολόγιο): 3 βήματα
Πληκτρολόγιο Quick and Dirty (Blank Keyboard): Ένα πληκτρολόγιο Das είναι το όνομα του πιο δημοφιλούς πληκτρολογίου χωρίς επιγραφές στα πλήκτρα (κενό πληκτρολόγιο). Το πληκτρολόγιο Das πωλείται για 89,95 $. Αυτό το διδακτικό θα σας καθοδηγήσει αν και να το φτιάξετε μόνοι σας με οποιοδήποτε παλιό πληκτρολόγιο έχετε
Μετατρέψτε ένα Trackpad από ένα σπασμένο φορητό υπολογιστή σε ένα ποντίκι PS/2: 6 βήματα
Μετατρέψτε ένα Trackpad από ένα σπασμένο φορητό υπολογιστή σε ένα ποντίκι PS/2: Ένας φίλος μου έδωσε ένα σπασμένο φορητό υπολογιστή HP Pavilion. Με λίγη δουλειά, μπορείτε να αφαιρέσετε το trackpad και να συνδεθείτε σε σειριακή θύρα PS/2 ή 9-pin. Συνδεθείτε στον υπολογιστή σας και χρησιμοποιήστε το ως απλό ποντίκι, ή ακόμα και ως καλώδιο σε Arduino για μια μοναδική διεπαφή για το