Πίνακας περιεχομένων:
- Βήμα 1: Απαιτούνται υλικά
- Βήμα 2: Χρόνος κατασκευής
- Βήμα 3: Μονάδα αισθητήρα ήχου και LED RGB
- Βήμα 4: Κωδικός
- Βήμα 5: Τελικές σκέψεις
Βίντεο: Πληκτρολόγιο Modular Piano With RGB LED: 5 βήματα (με εικόνες)
2024 Συγγραφέας: John Day | [email protected]. Τελευταία τροποποίηση: 2024-01-30 08:36
Εισαγωγή
Γεια σας κυρίες και κύριοι, καλώς ήρθατε στο πρώτο μου εκπαιδευτικό! Σήμερα, θα σας διδάξω πώς να δημιουργείτε ένα πιάνο με τα κύρια εξαρτήματα να είναι μια μονάδα πληκτρολογίου και ένα πιεζοηχητικό βομβητή και να έχει τη δυνατότητα να παίζει DO-RE-MI και ούτω καθεξής.
Η ενότητα πληκτρολογίου που προορίζεται συχνότερα είναι να είναι ένα πληκτρολόγιο σε συνδυασμό με ένα RFID arduino για να δημιουργήσει ένα ασφαλές κουτί για πολύτιμα αντικείμενα. Σε αυτή την περίπτωση άλλαξα το πληκτρολόγιο, αντί να προστατεύσω κάτι που αποφασίζω να χρησιμοποιήσω για να μιλήσω την απλή χαρά και τη μουσική.
Ιδέα ιδέας
Η ιδέα της ιδέας για αυτή τη δημιουργία, εξελίχθηκε από μια απλή ευτυχισμένη ανάμνηση ενώ έπαιζα ξυλόφωνο όταν ήμουν νεότερος στο μάθημα της μουσικής. Η ποσότητα της χαράς και του ενθουσιασμού που κυλούσε στο σώμα μου ήταν στο αποκορύφωμά του, εννοώ ότι κάθε παιδί ήταν εύκολα ικανοποιημένο και η ικανοποίησή μου έπαιζε ξυλόφωνο.
Ερευνα
Αφού ανάψει ο λαμπτήρας της ιδέας σας, πρέπει να κάνετε μια μικρή έρευνα. Αφού περιήγησα στο διαδίκτυο για λίγο, συνάντησα την ιδέα μου που αρχικά σκέφτηκα! Μια ενότητα πληκτρολογίου έγινε πιάνο, κάποιος έχει δημιουργήσει το ίδιο βίντεο έργου εδώ. Σκεπτόμενος μπροστά έπρεπε να προσθέσω ένα ξεχωριστό στοιχείο που θα ενισχύσει περαιτέρω το έργο αλλά θα το κάνει πιο ελκυστικό και θα μπορώ να το ονομάσω δικό μου.
Βήμα 1: Απαιτούνται υλικά
Λίστα υλικών
- Piezo Buzzer 1x ▶
- Ενότητα 4x4 πληκτρολογίου 1x ▶
- Arduino Uno 1x ▶
- Καλώδιο USB 2.0 τύπου A/B 1x ▶
- Μονάδα αισθητήρα ήχου 1x ▶
- RGB LED 1x ▶
- Αντίσταση 330 ohm 3x ▶
- Σύρμα αρσενικό προς θηλυκό άλτης 8x ▶
- Καλώδιο άλτης αρσενικό προς αρσενικό 4x ▶
- 3 ακροδέκτες αρσενικό προς θηλυκό καλώδιο 1x ▶
Η λίστα υλικών είναι σε σειρά με τις παραπάνω φωτογραφίες.
Βήμα 2: Χρόνος κατασκευής
Μονάδα πληκτρολογίου 4x4 & Piezo Buzzer
Θεωρία
Δεδομένου ότι η μονάδα πληκτρολογίου 4x4 και ο πιεζοηλεκτρικός βομβητής περιέχουν τόσες πολλές ατομικές εισόδους καρφιτσών και θα αποφασίσω να χωρίσω τα εξαρτήματα που χρησιμοποιούνται σε δύο ζεύγη. Εστιάζοντας στο πληκτρολόγιο, συνήθως χρησιμοποιείται ως είσοδος. Η μονάδα πληκτρολογίου μήτρας SunFounder 4*4 είναι ένα μη κωδικοποιημένο πληκτρολόγιο που αποτελείται από 16 κλειδιά παράλληλα. Τα κλειδιά κάθε σειράς και στήλης συνδέονται μέσω των εξωτερικών ακίδων- ο πείρος Y1-Y4 όπως επισημαίνεται δίπλα από τον έλεγχο των σειρών, όταν X1- X4, οι στήλες.
Σκοπός
Σκοπός αυτών των στοιχείων σε ολόκληρο το έργο, είναι να επιτρέψει στο χρήστη να πατήσει ένα κουμπί το οποίο ρυθμίζεται σε έναν συγκεκριμένο ήχο που δημιουργείται από τον πιεζοηχητικό βομβητή μέσω συχνότητας σε hertz.
Matrix Module Pin - Arduino Pin
- 4 - 2
- 3 - 3
- 2 - 4
- 1 - 5
- 5 - 6
- 6 - 7
- 7 - 8
- 8 - 13
Piezo Buzzer - Arduino Pin
Μαύρο - GND
Κόκκινο - Ισχύς
Το πιο δύσκολο έργο μου σε αυτήν την κατασκευή είναι να καταλάβω πού είναι συνδεδεμένο κάθε καλώδιο. Πάνω σας παρέχω και γρήγορο και εύκολο τρόπο μεταφοράς των θέσεων των καλωδίων, εφόσον ακολουθείται από πάνω προς τα κάτω, η συμβουλή παίρνει το χρόνο σας και βεβαιωθείτε ότι κάθε καρφίτσα έχει εισαχθεί σωστά στη σωστή υποδοχή.
*Συμβουλή είναι να ακολουθήσετε όπου κάθε καλώδιο βρίσκεται από το ένα άκρο στο άλλο.
Όλα τα σκίτσα Tinkercad των συγκεκριμένων καλωδίων εξαρτημάτων έχουν σωστή κωδικοποίηση χρώματος, οπότε ακολουθήστε προσεκτικά
Βήμα 3: Μονάδα αισθητήρα ήχου και LED RGB
Μονάδα αισθητήρα ήχου και LED RGB
Θεωρία
Η μονάδα αισθητήρα ήχου σάς επιτρέπει να εντοπίζετε πότε ο ήχος έχει ξεπεράσει ένα καθορισμένο σημείο που επιλέγετε. Ο ήχος ανιχνεύεται μέσω μικροφώνου και τροφοδοτείται σε ενισχυτή LM393. Μόλις το επίπεδο ήχου υπερβεί το καθορισμένο σημείο, ανάβει μια λυχνία LED στη μονάδα και η έξοδος.
Σκοπός
Σκοπός αυτών των στοιχείων σε ολόκληρο το έργο, είναι η απόκτηση μιας ανάγνωσης ήχου/έντασης της μονάδας αισθητήρα ήχου και μέσω αυτής η ανάγνωση ενός LED RGB θα ενεργοποιήσει το σωστό χρώμα που σχετίζεται με τον ήχο.
Μονάδα αισθητήρα ήχου - Arduino Pin (Χρησιμοποιήστε καλώδιο 3 ακίδων Jumper Wire)
- Έξοδος - A0 Analog Pin
- GND - Οποιαδήποτε ανοιχτή υποδοχή καρφιτσών GND
- VCC - 3V
RGB Common Anode (+) LED - Arduino Pin
- Κόκκινο - 9
- Ισχύς - 5V
- Πράσινο - 10
- Μπλε - 11
Λάβετε υπόψη το καλώδιο, κάθε μεμονωμένο καλώδιο μέσω αντίστασης 330 ohm. Χρησιμοποιήστε την παραπάνω εικόνα ως αναφορά.
Το πιο δύσκολο έργο μου σε αυτήν την κατασκευή είναι να καταλάβω πού είναι συνδεδεμένο κάθε καλώδιο. Πάνω σας παρέχω και γρήγορο και εύκολο τρόπο μετάβασης σε θέσεις καλωδίων, εφόσον ακολουθείται από πάνω προς τα κάτω, η συμβουλή είναι να πάρετε το χρόνο σας και να βεβαιωθείτε ότι κάθε καρφίτσα έχει εισαχθεί σωστά στη σωστή υποδοχή για να αποφύγετε μελλοντικό εντοπισμό σφαλμάτων.
*Συμβουλή είναι να ακολουθήσετε όπου κάθε σύρμα εισάγεται με κάθε τρόπο
Όλα τα σκίτσα Tinkercad των συγκεκριμένων καλωδίων εξαρτημάτων έχουν σωστή κωδικοποίηση χρώματος, οπότε ακολουθήστε
Βήμα 4: Κωδικός
Κώδικας
Αυτός ο κώδικας επιτρέπει σε όλα τα συστατικά να συνεργαστούν χρησιμοποιώντας τη νέα λειτουργία που περιέχει όλα τα στοιχεία ελέγχου ένα μόνο συστατικό που έχει πολλές μεταβλητές μεταβλητές. Αυτά τα στοιχεία ήταν τα led RGB και χρησιμοποιώντας το χρώμα rgb για να αλλάξετε το χρώμα ενώ είστε ενεργοποιημένοι και ήχο που θα έκανε ανάλογα με το πάτημα του κουμπιού.
Ένα απαραίτητο στοιχείο σε αυτόν τον κώδικα ήταν η βιβλιοθήκη του πληκτρολογίου
Σύνδεσμος εδώ:
Μόλις κατεβάσετε προσθέστε τη νέα βιβλιοθήκη στο arduino, στη συνέχεια εισάγετε τη μεμονωμένη γραμμή κώδικα που απαιτείται για την ενεργοποίησή της.
Οι δυσκολίες που είχα κατά τη διάρκεια του κώδικα ήταν πού να τοποθετήσω τις πρόσφατα καθορισμένες συναρτήσεις καθώς μέσω δοκιμής και σφάλματος κατάλαβα ότι έπρεπε να είναι στη ρύθμιση και όχι στον βρόχο.
Κώδικας
#include // Βιβλιοθήκη πληκτρολογίου
int greenPin = 11; // RGB Green Pin συνδεδεμένο με την ψηφιακή ακίδα 9
int redPin = 10; // RGB Red Pin συνδεδεμένο με την ψηφιακή ακίδα 9
int bluePin = 9; // RGB Blue Pin συνδεδεμένο με ψηφιακό pin 9 int ηχείοPin = 12; // ηχείο συνδεδεμένο με τον ψηφιακό pin 12 const byte ROWS = 4; // τέσσερις σειρές const byte COLS = 4; // τέσσερις coloums const int soundPin = A0; // Ο αισθητήρας ήχου συνδέεται με το A0
πλήκτρα char [ROWS] [COLS] = {
{'a', 'b', 'c', 'd'}, {'e', 'f', 'g', 'h'}, {'i', 'j', 'k', ' l '}, {' m ',' n ',' o ',' p '}}; // Οπτικοποίηση της μονάδας πληκτρολογίου
byte rowPins [ROWS] = {2, 3, 4, 5}; // σύνδεση με τα pinout γραμμών του πληκτρολογίου
byte colPins [COLS] = {6, 7, 8, 13}; // σύνδεση με τα pinouts στήλης του πληκτρολογίου
Πληκτρολόγιο πληκτρολόγιο = Πληκτρολόγιο (makeKeymap (κλειδιά), rowPins, colPins, ROWS, COLS); // Δημιουργεί κλειδιά
void setup () {
pinMode (ηχείο Pin, OUTPUT); // ορίζει το ηχείο Pin ως έξοδο
pinMode (redPin, OUTPUT); // ορίζει την κόκκινη καρφίτσα ως pinMode εξόδου (greenPin, OUTPUT). // ορίζει την πράσινη καρφίτσα ως pinMode εξόδου (bluePin, OUTPUT). // ορίζει την μπλε ακίδα να είναι έξοδος
Serial.begin (9600);
} void setColor (int κόκκινο, int πράσινο, int μπλε) // Νέα καθορισμένη λειτουργία που επιτρέπει στο RGB να εμφανίζει χρώμα μέσω κωδικού RGB {#ifdef COMMON_ANODE κόκκινο = 255 - κόκκινο; πράσινο = 255 - πράσινο? μπλε = 255 - μπλε? #endif analogWrite (redPin, κόκκινο); analogWrite (greenPin, πράσινο); analogWrite (bluePin, μπλε); }
void beep (ανυπόγραφο ηχείο charPin, int frequencyInHertz, long timeInMilliseconds) {// οι λειτουργίες παραγωγής ήχου
int x; μεγάλη καθυστέρησηAmount = (μακρύ) (1000000/frequencyInHertz); long loopTime = (long) ((timeInMilliseconds*1000)/(delayAmount*2)); για (x = 0; x
void loop () {
char key = keypad.getKey (); int value = analogRead (soundPin); // διαβάστε την τιμή του A0 Serial.println (value); // εκτυπώστε την τιμή
εάν (κλειδί! = NO_KEY) {
Serial.println (κλειδί); } if (key == 'a') {μπιπ (ηχείοPin, 2093, 100); setColor (218, 112, 214); } if (key == 'b') {μπιπ (ηχείοPin, 2349, 100); setColor (218, 112, 214); } if (κλειδί == 'c') {μπιπ (ηχείοPin, 2637, 100); setColor (218, 112, 214); } if (κλειδί == 'd') {μπιπ (ηχείοPin, 2793, 100); setColor (218, 112, 214); } if (κλειδί == 'e') {μπιπ (ηχείοPin, 3136, 100); setColor (218, 112, 214); } if (key == 'f') {μπιπ (ηχείοPin, 3520, 100); setColor (218, 112, 214); } if (κλειδί == 'g') {μπιπ (ηχείοPin, 3951, 100); setColor (218, 112, 214); } if (κλειδί == 'h') {μπιπ (ηχείοPin, 4186, 100); setColor (218, 112, 214); } if (κλειδί == 'i') {μπιπ (ηχείοPin, 2093, 100); setColor (230, 230, 0); } if (key == 'j') {μπιπ (ηχείοPin, 2349, 100); setColor (180, 255, 130); } if (κλειδί == 'k') {μπιπ (ηχείοPin, 2637, 100); setColor (130, 255, 130); } if (κλειδί == 'l') {μπιπ (ηχείοPin, 2739, 100); setColor (130, 220, 130); } if (κλειδί == 'm') {μπιπ (ηχείοPin, 3136, 100); setColor (0, 255, 255); } if (key == 'n') {μπιπ (ηχείοPin, 3520, 100); setColor (0, 220, 255); } if (key == 'o') {μπιπ (ηχείοPin, 3951, 100); setColor (0, 69, 255); } if (key == 'p') {μπιπ (ηχείοPin, 4186, 100); setColor (255, 0, 255); }}
Βήμα 5: Τελικές σκέψεις
Τελικές σκέψεις
Οι τελευταίες σκέψεις αυτού του έργου είναι ο σκοπός του είναι να είναι ένα παιχνίδι, να φέρει διασκέδαση και απλοϊκή χαρά. Δεδομένου ότι αυτό το έργο είναι ολοκληρωμένο και δουλεύει, πιστεύω ότι αυτό το κτίριο μπορεί να προωθηθεί με ίσως περισσότερα στοιχεία όπως στοιχείο ηχογράφησης ή στοιχείο αντιγραφής/λέξης simon ή ακόμα και LCD με τις νότες να εμφανίζονται να παίζουν ένα συγκεκριμένο τραγούδι.
Θα ήθελα πολύ να μάθω τη γνώμη σας για τη μονάδα πληκτρολογίου, ποια στοιχεία πιστεύετε ότι θα μπορούσαν να έχουν προστεθεί. Θα το χρησιμοποιήσετε σε κάποιο έργο σας; Δημοσιεύστε τις ιδέες σας στην παρακάτω ενότητα σχολίων.
Φροντίστε να μοιραστείτε αν σας άρεσε αυτό το έργο arduino.
Συνιστάται:
Πληκτρολόγιο HotKeys με προσαρμοσμένα προφίλ: 14 βήματα (με εικόνες)
Πληκτρολόγιο HotKeys με προσαρμοσμένα προφίλ: Ελπίζω να τα πάτε καλά εν μέσω αυτής της πανδημίας. Να είσαι ασφαλής. Να είσαι δυνατός. #COVID19 Όντας βιομηχανικός σχεδιαστής, πρέπει να έχω πρόσβαση σε περισσότερα από 7-8 λογισμικά που περιλαμβάνουν Solidworks, Photoshop, Illustrator, Keyshot, Indesign κ.λπ. σε καθημερινή βάση και ναι λίγα
Όσου! Πληκτρολόγιο: 8 βήματα (με εικόνες)
Όσου! Πληκτρολόγιο: Πρόσφατα άρχισα να παίζω ένα ρυθμικό παιχνίδι που ονομάζεται osu! και αφού είδα ένα βίντεο από ένα εμπορικό μίνι πληκτρολόγιο σκέφτηκα ότι θα ήταν ένα διασκεδαστικό έργο να σχεδιάσω ένα μόνος μου. Λίγο καιρό μετά, αποφάσισα ότι θα ήταν καλή ιδέα να το βάλω σε οδηγίες όπως
Πληκτρολόγιο USB RGB One Button: 6 βήματα (με εικόνες)
RGB One Button USB Keyboard: Έχετε νιώσει ποτέ την ανάγκη να έχετε ένα μικροσκοπικό, αλλά λειτουργικό, πληκτρολόγιο με οπίσθιο φωτισμό RGB, όχι μεγαλύτερο από το μέγεθος ενός μόνο πλήκτρου; Οχι? Ποιος νοιάζεται, φτιάξτε ένα έτσι κι αλλιώς! Αυτό το διδακτικό θα σας καθοδηγήσει στα βήματα που χρειάζεστε για να κάνετε το δικό σας, ελαφρώς άχρηστο
OSU! ΠΛΗΚΤΡΟΛΟΓΙΟ ΜΕ LED RGB: 3 βήματα
OSU! ΠΛΗΚΤΡΟΛΟΓΙΟ ΜΕ LED RGB: Γεια σας έκανα ένα Instructables πριν από λίγο καιρό και ξέχασα να κάνω μια ενημέρωση για το WS2812B RGB. Συγνώμη. Αυτό το έργο θα βασιστεί στο https://www.instructables.com/id/Osu-Keyboard-with-Arduino-Uno
Γρήγορο και βρώμικο πληκτρολόγιο Das (κενό πληκτρολόγιο): 3 βήματα
Πληκτρολόγιο Quick and Dirty (Blank Keyboard): Ένα πληκτρολόγιο Das είναι το όνομα του πιο δημοφιλούς πληκτρολογίου χωρίς επιγραφές στα πλήκτρα (κενό πληκτρολόγιο). Το πληκτρολόγιο Das πωλείται για 89,95 $. Αυτό το διδακτικό θα σας καθοδηγήσει αν και να το φτιάξετε μόνοι σας με οποιοδήποτε παλιό πληκτρολόγιο έχετε