Πίνακας περιεχομένων:

Πληκτρολόγιο Modular Piano With RGB LED: 5 βήματα (με εικόνες)
Πληκτρολόγιο Modular Piano With RGB LED: 5 βήματα (με εικόνες)

Βίντεο: Πληκτρολόγιο Modular Piano With RGB LED: 5 βήματα (με εικόνες)

Βίντεο: Πληκτρολόγιο Modular Piano With RGB LED: 5 βήματα (με εικόνες)
Βίντεο: MEGA Chia GPU Farming and Plotting Guide for Linux - Gigahorse Start to Finish - 2023 2024, Ιούλιος
Anonim
Image
Image
Χρειαζονται ΥΛΙΚΑ
Χρειαζονται ΥΛΙΚΑ

Εισαγωγή

Γεια σας κυρίες και κύριοι, καλώς ήρθατε στο πρώτο μου εκπαιδευτικό! Σήμερα, θα σας διδάξω πώς να δημιουργείτε ένα πιάνο με τα κύρια εξαρτήματα να είναι μια μονάδα πληκτρολογίου και ένα πιεζοηχητικό βομβητή και να έχει τη δυνατότητα να παίζει 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
Μονάδα αισθητήρα ήχου και LED RGB
Μονάδα αισθητήρα ήχου και LED RGB
Μονάδα αισθητήρα ήχου και LED RGB
Μονάδα αισθητήρα ήχου και LED RGB
Μονάδα αισθητήρα ήχου και 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: Τελικές σκέψεις

Image
Image

Τελικές σκέψεις

Οι τελευταίες σκέψεις αυτού του έργου είναι ο σκοπός του είναι να είναι ένα παιχνίδι, να φέρει διασκέδαση και απλοϊκή χαρά. Δεδομένου ότι αυτό το έργο είναι ολοκληρωμένο και δουλεύει, πιστεύω ότι αυτό το κτίριο μπορεί να προωθηθεί με ίσως περισσότερα στοιχεία όπως στοιχείο ηχογράφησης ή στοιχείο αντιγραφής/λέξης simon ή ακόμα και LCD με τις νότες να εμφανίζονται να παίζουν ένα συγκεκριμένο τραγούδι.

Θα ήθελα πολύ να μάθω τη γνώμη σας για τη μονάδα πληκτρολογίου, ποια στοιχεία πιστεύετε ότι θα μπορούσαν να έχουν προστεθεί. Θα το χρησιμοποιήσετε σε κάποιο έργο σας; Δημοσιεύστε τις ιδέες σας στην παρακάτω ενότητα σχολίων.

Φροντίστε να μοιραστείτε αν σας άρεσε αυτό το έργο arduino.

Συνιστάται: