Πίνακας περιεχομένων:
- Βήμα 1: Σχηματικός χρόνος
- Βήμα 2: Χρόνος κωδικοποίησης
- Βήμα 3: Τι σημαίνουν όλα αυτά;
- Βήμα 4: Αντιμετώπιση προβλημάτων
- Βήμα 5: Εάν έχετε οποιεσδήποτε ερωτήσεις, μη διστάσετε να το ρωτήσετε στην ενότητα σχολίων και θυμηθείτε να εγγραφείτε
Βίντεο: Κλείδωμα Servo Keypad: 5 Βήματα
2024 Συγγραφέας: John Day | [email protected]. Τελευταία τροποποίηση: 2024-01-30 08:31
Γεια σε όλους, ελπίζω να περάσατε καλά. Αν όχι, ελπίζουμε ότι μπορείτε απλά να γυρίσετε προς τα πίσω με κάποια ανοιχτή σκέψη σε αυτό το σεμινάριο και κάποια θεραπευτική μουσική. Ο προγραμματισμός μπορεί να είναι ταλαιπωρία. Ευτυχώς, αυτό το σεμινάριο δεν είναι ταλαιπωρία, οπότε ίσως μπορείτε να ολοκληρώσετε ένα δημοφιλές πράγμα που ονομάζεται (με δυνατή φωνή): THE ULTIMATE SERVO KEYPAD LOCK !!! Αυτή είναι πραγματικά η εισαγωγή μου, ελπίζω να σας άρεσε. Τέλος πάντων, ας ζεστάνουμε τα δάχτυλά μας για την πληκτρολόγηση. (Ένα δροσερό τραγούδι: τραγούδι can-can (κλασική μουσική)).
Προμήθειες:
-Τα δάχτυλά σου
-Και τα χέρια σας, αυτό είναι σημαντικό
-Καλώδιο USB για Arduino
-Όποιος τύπος arduino είναι διαθέσιμος (έχω το Arduino Mega)
-Matrix Keypad (πληκτρολόγιο - ebay, πληκτρολόγιο - amazon)
-Micro ή Standard servo (χρησιμοποιώ micro servo)
-* Προαιρετικό* Breadboard - οποιουδήποτε τύπου
-* Προαιρετικό* Τροφοδοτικό (5V)
Βήμα 1: Σχηματικός χρόνος
Λοιπόν, τι κάνουμε πρώτα; Συνδέστε το Arduino στον υπολογιστή. Συνδέστε το πληκτρολόγιο στη συνέχεια. *Σημείωση - πρέπει να συνδέσετε τους ακροδέκτες από την τελευταία καρφίτσα στο πληκτρολόγιο ως τον πρώτο ψηφιακό ακροδέκτη στο arduino. Και πηγαίνετε από δεξιά προς αριστερά μετά από αυτό*. Το πληκτρολόγιο έχει καρφίτσες 2-9 στο arduino. Το σερβο έχει το pin 10 ως ψηφιακά σήματα. Συνδέστε τους χώρους του arduino, του πληκτρολογίου και του σερβο και το 5V επίσης. * Σημειώστε επίσης - ότι το σερβο χρησιμοποιείται καλύτερα με εξωτερική πηγή τροφοδοσίας ή προσαρμογέα με 5V (plug -in τοίχου), αλλά εξακολουθεί να είναι προαιρετικό.* Δεν χρειάζεται να συνδέσετε τη βάση και τα 5V φυσικά, αυτό που εννοώ είναι απλά για να συνδέσετε ένα καλώδιο από το Arduino στο σερβο. Αυτό το σχηματικό δεν βοηθά τους αρχάριους, οπότε επιτρέψτε μου να εξηγήσω με λίγα λόγια. Βασικά, ο τελευταίος πείρος είναι 2 και ο πρώτος είναι 9, δύο είναι 8, τρεις είναι 7 και ούτω καθεξής. Μετάβαση από αριστερά προς τα δεξιά 2 2.
Βήμα 2: Χρόνος κωδικοποίησης
Εντάξει, τώρα περνάμε στο κομμάτι της κωδικοποίησης! Εδώ συμβαίνει η πραγματική μαγεία! Έτσι, υπάρχει ένα δοκιμαστικό πρόγραμμα για να δοκιμάσετε πρώτα το πληκτρολόγιο και το σερβο. Εδώ:
//www.elegoo.com//2016.12.9
/* @file CustomKeypad.pde
|| @version 1.0 || @author Alexander Brevig || @contact [email protected] || || @description || | Δείχνει την αλλαγή του μεγέθους του πληκτρολογίου και των τιμών κλειδιού. || # */ #περιλαμβάνω
const byte ROWS = 4; // τέσσερις σειρές
const byte COLS = 4; // τέσσερις στήλες // καθορίζουν τα σύμβολα στα κουμπιά των πληκτρολογίων char hexaKeys [ROWS] [COLS] = {{'1', '2', '3', 'A'}, {'4', '5 ',' 6 ',' B '}, {' 7 ',' 8 ',' 9 ',' C '}, {'*',' 0 ','#',' D '}}; byte rowPins [ROWS] = {9, 8, 7, 6}; // σύνδεση με τα pinouts των γραμμών των byte πληκτρολογίου colPins [COLS] = {5, 4, 3, 2}; // σύνδεση με τα pinouts στηλών του πληκτρολογίου
// προετοιμάστε μια παρουσία της κλάσης NewKeypad
Πληκτρολόγιο customKeypad = Πληκτρολόγιο (makeKeymap (hexaKeys), rowPins, colPins, ROWS, COLS);
void setup () {
Serial.begin (9600); } void loop () {char customKey = customKeypad.getKey (); if (customKey) {Serial.println (customKey); }}
//www.elegoo.com//2016.12.08 #include
Servo myservo; // δημιουργία αντικειμένου σερβο για τον έλεγχο ενός σερβο
// Δώδεκα servo αντικείμενα μπορούν να δημιουργηθούν στους περισσότερους πίνακες
int pos = 0; // μεταβλητή για αποθήκευση της θέσης σερβο
void setup () {
myservo.attach (9); // συνδέει το σερβο στο pin 9 στο σερβο αντικείμενο}
void loop () {
για (pos = 0; pos = 0; pos -= 1) {// πηγαίνει από 180 μοίρες σε 0 μοίρες myservo.write (pos); // πείτε στο servo να μεταβεί στη θέση στη μεταβλητή "pos" καθυστέρηση (15). // περιμένει 15ms για να φτάσει το σερβο στη θέση}}
Εδώ είναι ο κώδικας του έργου (θα είμαι ειλικρινής μαζί σας, δεν έκανα πολλά, απλά πρόσθεσα το σερβο μέρος, ευχαριστώ τους ανθρώπους που έκαναν όλο τον κώδικα!):
#include Password.h
#συμπεριλάβετε το πληκτρολόγιο
/*
|| Απλή καταχώριση κωδικού πρόσβασης χρησιμοποιώντας πληκτρολόγιο μήτρας || 4/5/2012 Ενημερώσεις Nathan Sobieck: [email protected] || *
/* είναι η επικύρωση του κωδικού πρόσβασης
//# είναι η επαναφορά της προσπάθειας κωδικού πρόσβασης
/////////////////////////////////////////////////////////////////
#περιλαμβάνω
//https://www.arduino.cc/playground/uploads/Code/Password.zip #include //https://www.arduino.cc/playground/uploads/Code/Keypad.zip
Κωδικός πρόσβασης = Κωδικός πρόσβασης ("1234");
Servo myservo; // δημιουργία αντικειμένου σερβο για τον έλεγχο ενός σερβο
#define servoPin 10
const byte ROWS = 4; // Τέσσερις σειρές
const byte COLS = 4; // στήλες // Ορίστε τα πλήκτρα φόρτωσης Keymap [ROWS] [COLS] = {{'1', '2', '3', 'A'}, {'4', '5', '6', ' B '}, {' 7 ',' 8 ',' 9 ',' C '}, {'*',' 0 ','#',' D '}};
byte rowPins [ROWS] = {9, 8, 7, 6}; // Συνδέστε το πληκτρολόγιο ROW0, ROW1, ROW2 και ROW3 σε αυτές τις ακίδες Arduino.
byte colPins [COLS] = {5, 4, 3, 2,}; // Συνδέστε το πληκτρολόγιο COL0, COL1 και COL2 σε αυτές τις ακίδες Arduino.
// Δημιουργήστε το πληκτρολόγιο
Πληκτρολόγιο πληκτρολόγιο = Πληκτρολόγιο (makeKeymap (κλειδιά), rowPins, colPins, ROWS, COLS);
void setup () {
myservo.attach (servoPin); // συνδέει το σερβο στο pin 9 στο σερβο αντικείμενο
Serial.begin (9600);
keypad.addEventListener (keypadEvent); // προσθέστε έναν ακροατή συμβάντων για αυτό το πληκτρολόγιο
myservo.write (0);
}
void loop () {
keypad.getKey ();
}
// φροντίστε για μερικές ειδικές εκδηλώσεις
void keypadEvent (KeypadEvent eKey) {switch (keypad.getState ()) {case PRESSED: switch (eKey) {case '*': checkPassword (); Διακοπή; προεπιλογή: password.append (eKey); }}}
void checkPassword () {
if (password.evaluate () == true) {Serial.println ("Επιτυχία"); // Προσθήκη κώδικα για εκτέλεση εάν λειτουργεί
myservo.write (180);
καθυστέρηση (3000)?
myservo.write (0);
ΕΠΑΝΑΦΟΡΑ ΚΩΔΙΚΟΥ();
} else if (password.evaluate () == false) {
Serial.println ("Λάθος");
myservo.write (0);
// προσθήκη κώδικα για εκτέλεση εάν δεν λειτούργησε
}
}
Βήμα 3: Τι σημαίνουν όλα αυτά;
Ο παραπάνω κωδικός (ο πρώτος) θα δώσει ένα σήμα στο Servo να "σκουπίσει" ή απλά να πάει από 0 έως 180 μοίρες. Or απλά συμπληρώνοντας μισό κύκλο περιστροφής από αριστερά προς τα δεξιά ή από δεξιά προς τα αριστερά. Αν θέλετε περισσότερες λεπτομέρειες σχετικά με τον κωδικό, μπορώ να σας πω. Απλά ρωτήστε. Δεν έγινε κακό, απλώς μια απλή μικρή ερώτηση. Έλα, μπορείς να το κάνεις! Τέλος πάντων, ο κώδικας στη μέση δοκιμάζει κάθε κουμπί του πληκτρολογίου. Και το τελευταίο του κώδικα "ξεκλειδώνει" με το σερβο όταν πληκτρολογείτε το κλειδί "1234" στο, όπως μαντέψατε, στο πληκτρολόγιο.
Βήμα 4: Αντιμετώπιση προβλημάτων
Ε: Το πληκτρολόγιό μου δεν λειτουργεί.
Α: Θυμηθείτε ότι η πρώτη καρφίτσα είναι 9, οπότε κατεβείτε από εκεί. Επίσης, βεβαιωθείτε ότι έχετε συνδέσει το arduino στη θύρα USB του υπολογιστή και προγραμματίστε το Arduino.
Ε: Το Servo δεν λειτουργεί.
Α: Να θυμάστε ότι ο πείρος servo είναι ο πείρος 10 και ότι χρειάζεστε ένα κοινό έδαφος, εάν συνδέεστε απευθείας από το Arduino, θυμηθείτε ότι ο πορτοκαλί πείρος (στο σερβο μικροϋπολογιστή) είναι ο πείρος 10, ο κόκκινος πείρος είναι 5V και η καφέ καρφίτσα είναι η καρφίτσα GND.
Ε: Το Arduino δεν λειτουργεί:
Α: Το συνδέσατε καν; Ακούγεται σαν προσωπικό πρόβλημα
Βήμα 5: Εάν έχετε οποιεσδήποτε ερωτήσεις, μη διστάσετε να το ρωτήσετε στην ενότητα σχολίων και θυμηθείτε να εγγραφείτε
Αντίο, ευχαριστώ που είδα το σεμινάριο μου. Beenταν διασκεδαστικό.
Συνιστάται:
Μη ασφαλές κλείδωμα: 7 βήματα
Unsafe Lockbox: Αυτό το διδακτικό δημιουργήθηκε για να εκπληρώσει την απαίτηση έργου του Makecourse στο Πανεπιστήμιο της Νότιας Φλόριντα (www.makecourse.com) Γεια σας! Έχετε όχι τόσο πολύτιμα πολύτιμα αντικείμενα που θέλετε να εξασφαλίσετε αλλά όχι τόσο με ασφάλεια; Τα έχετε
Κλείδωμα πόρτας αναγνώρισης προσώπου: 8 βήματα
Κλειδαριά πόρτας αναγνώρισης προσώπου: Περίπου ένα μήνα στην κατασκευή, παρουσιάζω την κλειδαριά πόρτας αναγνώρισης προσώπου! Προσπάθησα να το κάνω να φαίνεται όσο πιο τακτοποιημένο μπορώ, αλλά μπορώ να το κάνω μόνο ως ένα 13χρονο. Αυτή η κλειδαριά πόρτας αναγνώρισης προσώπου λειτουργεί από ένα Raspberry Pi 4, με μια ειδική φορητή
Αυτόματο κλείδωμα πόρτας: 5 βήματα
Αυτόματο κλείδωμα πόρτας: Γεια ΕΚΕΙ !! Αυτό είναι το πρώτο μου οδηγό! Ελπίζω να σας αρέσει σε όλους. Σε αυτό το έργο θα κατασκευάσουμε μια αυτόματη κλειδαριά πόρτας (προστατευμένη με κωδικό πρόσβασης). Η κλασική κλειδαριά είναι κυριολεκτικά εφεύρεση 100 ετών και, όπως γνωρίζουμε, αλλάξτε
Κωδικοποιητής κλειδιού για ηλεκτρονικό κλείδωμα: 4 βήματα
Κωδικοποιητής πλήκτρων για ηλεκτρονικό κλείδωμα: Πρόκειται για έναν απλό προγραμματιζόμενο κωδικό συνδυασμού 4 κουμπιών. Μονάδα διασύνδεσης και ως εκ τούτου μπορεί να χρησιμοποιηθεί σε πολλά έργα όπου μπορεί να απαιτείται έλεγχος κλειδώματος χωρίς κλειδί. Μόνο το PCB για τη δημιουργία του απαιτούμενου σήματος για την εκκίνηση ενός μηχανισμού κλειδώματος είναι
Απλό κλείδωμα φακέλων: 4 βήματα
Simple Folder Locker: Γεια σε όλους, Σε αυτό το Instructable, θα φτιάξουμε ένα απλό αρχείο δέσμης για να κρύψουμε ιδιωτικά αρχεία, φακέλους κ.λπ. και να κρατήσουμε μακριά την οικογένεια, τους φίλους και τους συναδέλφους. Σημείωση: Αυτό δεν λειτουργεί αν κάποιος είναι ειδικευμένος προγραμματισμού, αλλά σκοπεύω να δημοσιεύσω μια πιο