Taula de continguts:
- Pas 1: materials necessaris
- Pas 2: construir temps
- Pas 3: mòdul del sensor de so i LED RGB
- Pas 4: Codi
- Pas 5: Pensaments finals
Vídeo: Mòdul de teclat de piano amb LED RGB: 5 passos (amb imatges)
2024 Autora: John Day | [email protected]. Última modificació: 2024-01-30 08:14
Introducció
Hola senyores i senyors, benvinguts al meu primer instructiu! Avui us ensenyaré a crear un piano amb els components principals com un mòdul de teclat i un zumbador piezoelèctric i que pugui reproduir DO-RE-MI, etc.
El propòsit més habitual del mòdul de teclat és ser un teclat combinat amb un arduino RFID per crear una caixa forta per a objectes valuosos. En aquest cas, he canviat el teclat, en lloc de protegir alguna cosa, decideixo utilitzar-lo per parlar de la simple alegria i música.
Concepte d’idees
El concepte d’idea per a aquesta creació, evoluciona a partir d’un simple record feliç mentre tocava el xilòfon quan era més jove a la classe de música. La quantitat d’alegria i emoció que travessava el meu cos estava al màxim, vull dir que tots els nens es satisfan fàcilment i la meva satisfacció era tocar el xilòfon.
Recerca
Després d’il·luminar la vostra idea, s’ha de fer una petita investigació. Després de navegar per la web durant algun temps, em vaig trobar amb la meva idea que inicialment vaig pensar. Un mòdul de teclat convertit en piano, algú ha creat el mateix vídeo del projecte aquí. Pensant en el futur, calia afegir un component diferent que milloraria encara més el projecte, però el faria més atractiu i el podria anomenar meu.
Pas 1: materials necessaris
Llista de materials
- Piezo Buzzer 1x ▶
- Mòdul de teclat 4x4 1x ▶
- Arduino Uno 1x ▶
- Cable USB 2.0 tipus A / B 1x ▶
- Mòdul de sensor de so 1x ▶
- LED RGB 1x ▶
- Resistència de 330 ohm 3x ▶
- Filferro de pont masculí a femení 8x ▶
- Cavall de cavall masculí a masculí 4x ▶
- Cable de pont de 3 passadors masculí a femení 1x ▶
La llista de materials està ordenada amb les imatges anteriors.
Pas 2: construir temps
Mòdul de teclat 4x4 i timbre piezoelèctric
Teoria
Com que el mòdul de teclat 4x4 i el brunzidor piezoelèctric contenen tantes entrades de pins individuals, decidiré dividir els components utilitzats en dos parells. Centrant-se en el teclat, que normalment s’utilitza com a entrada. El mòdul SunFounder 4 * 4 Matrix Keypad és un teclat matricial no codificat que consta de 16 tecles en paral·lel. Les tecles de cada fila i columna es connecten a través dels pins externs (pin Y1-Y4 com s’etiqueta al costat de controlar les files, quan X1- X4, les columnes.
Propòsit
El propòsit d’aquests components per a tot el projecte és permetre a l’usuari prémer un botó que es defineix en un so específic creat pel brunzidor piezoelèctric a través de la freqüència en Hz.
Pin del mòdul Matrix - Pin Arduino
- 4 - 2
- 3 - 3
- 2 - 4
- 1 - 5
- 5 - 6
- 6 - 7
- 7 - 8
- 8 - 13
Piezo Buzzer - Pin Arduino
Negre - GND
Vermell - Potència
La meva tasca més difícil d’aquesta compilació és esbrinar on es connecta cada cable. A la part superior, us proporciono una manera ràpida i senzilla de recórrer les ubicacions del cable, sempre que se segueixi de dalt a baix, la punta és que us prengueu el vostre temps i assegureu-vos que tots els passadors estiguin inserits correctament a la ranura correcta.
* El consell és seguir la ubicació de cada cable d’un extrem a un altre.
Tots els esbossos de Tinkercad dels cables específics estan codificats per colors correctament, així que seguiu-ho amb cura
Pas 3: mòdul del sensor de so i LED RGB
Mòdul de sensor de so i LED RGB
Teoria
El mòdul del sensor de so us permet detectar quan el so ha superat el punt de selecció que seleccioneu. El so es detecta mitjançant un micròfon i s’introdueix en un amplificador operatiu LM393. Un cop el nivell de so excedeix el punt de configuració, s’encén un LED del mòdul i la sortida.
Propòsit
L’objectiu d’aquests components per a tot el projecte és obtenir una lectura de so / volum del mòdul del sensor de so i mitjançant aquesta lectura un LED RGB activarà el color correcte del so.
Mòdul de sensor de so: pin Arduino (utilitzeu un cable de pont de 3 pins)
- Sortida: pin analògic A0
- GND: qualsevol ranura oberta de pin GND
- VCC - 3V
LED d'ànode comú (+) RGB: pin Arduino
- Vermell - 9
- Potència - 5V
- Verd - 10
- Blau - 11
Tingueu en compte el cablejat, cada cable individual a través d’una resistència de 330 ohms. Utilitzeu la imatge anterior com a referència.
La meva tasca més difícil d’aquesta compilació és esbrinar on es connecta cada cable. A la part superior, us proporciono una manera ràpida i senzilla de conèixer les ubicacions del cable, sempre que se segueixi de dalt a baix, el consell és que us prengueu el vostre temps i assegureu-vos que tots els pins estan inserits correctament a la ranura adequada per evitar futures depuracions.
* El consell és seguir on s'insereix cada filferro de qualsevol manera
Tots els esbossos de Tinkercad dels components específics estan codificats per colors correctament, així que seguiu-ho
Pas 4: Codi
Codi
Aquest codi permet que tots els components puguin treballar junts mitjançant la funció definida recentment per contenir tots els controls d’un sol component que té moltes variables canviants; aquests components eren el led RGB i l’ús de color rgb per canviar el color mentre estava activat i el brunzidor piezoelèctric i el emetria un so en funció del prémer el botó.
Un element imprescindible dins d’aquest codi era la biblioteca del teclat
Enllaç aquí:
Un cop descarregada, afegiu la nova biblioteca a l'arduino, després inseriu la línia de codi única necessària per activar-la.
Les dificultats que tenia durant el codi era on col·locar les funcions acabades de definir, ja que mitjançant proves i errors vaig descobrir que havia de ser a la configuració i no al bucle.
Codi
#include // Biblioteca del teclat
int greenPin = 11; // Pin RGB verd connectat al pin 9 digital
int redPin = 10; // Pin vermell RGB connectat al pin 9 digital
int BluePin = 9; // Pin blau RGB connectat al pin digital 9 int speakerPin = 12; // altaveu connectat al pin digital de 12 bytes constants FILES = 4; // quatre files const byte COLS = 4; // quatre colors const int soundPin = A0; // sensor de so connectat a A0
tecles de caràcters [ROWS] [COLS] = {
{'a', 'b', 'c', 'd'}, {'e', 'f', 'g', 'h'}, {'i', 'j', 'k', ' l '}, {' m ',' n ',' o ',' p '}}; // Visualització del mòdul de teclat
byte rowPins [ROWS] = {2, 3, 4, 5}; // connecteu-vos als pinouts de la fila del teclat
byte colPins [COLS] = {6, 7, 8, 13}; // connecteu-vos als pinouts de la columna del teclat
Teclat teclat = Teclat (makeKeymap (tecles), rowPins, colPins, ROWS, COLS); // Crea claus
configuració nul·la () {
pinMode (speakerPin, OUTPUT); // estableix que el speakerPin sigui una sortida
pinMode (redPin, OUTPUT); // estableix que el pin vermell sigui un pinMode de sortida (greenPin, OUTPUT); // estableix que el pin verd sigui un pinMode de sortida (bluePin, OUTPUT); // estableix el pin blau com a sortida
Serial.begin (9600);
} void setColor (int vermell, int verd, int blau) // Nova funció definida per permetre que RGB mostri color a través del codi RGB {#ifdef COMMON_ANODE vermell = 255 - vermell; verd = 255 - verd; blau = 255 - blau; #endif analogWrite (redPin, red); analogWrite (greenPin, green); analogWrite (bluePin, blau); }
void beep (altaveu de caràcters sense signe Pin, int frequencyInHertz, long timeInMilliseconds) {// les funcions de producció de so
int x; long delayAmount = (long) (1000000 / frequencyInHertz); long loopTime = (long) ((timeInMilliseconds * 1000) / (delayAmount * 2)); per a (x = 0; x
bucle buit () {
tecla char = keypad.getKey (); valor int = analogRead (soundPin); // llegeix el valor de A0 Serial.println (valor); // imprimeix el valor
if (clau! = NO_KEY) {
Serial.println (clau); } if (key == 'a') {beep (speakerPin, 2093, 100); setColor (218, 112, 214); } if (clau == 'b') {pitit (speakerPin, 2349, 100); setColor (218, 112, 214); } if (clau == 'c') {pitit (speakerPin, 2637, 100); setColor (218, 112, 214); } if (clau == 'd') {pitit (speakerPin, 2793, 100); setColor (218, 112, 214); } if (clau == 'e') {pitit (speakerPin, 3136, 100); setColor (218, 112, 214); } if (clau == 'f') {pitit (speakerPin, 3520, 100); setColor (218, 112, 214); } if (clau == 'g') {pitit (speakerPin, 3951, 100); setColor (218, 112, 214); } if (clau == 'h') {pitit (speakerPin, 4186, 100); setColor (218, 112, 214); } if (key == 'i') {beep (speakerPin, 2093, 100); setColor (230, 230, 0); } if (clau == 'j') {pitit (speakerPin, 2349, 100); setColor (180, 255, 130); } if (clau == 'k') {pitit (speakerPin, 2637, 100); setColor (130, 255, 130); } if (clau == 'l') {pitit (speakerPin, 2739, 100); setColor (130, 220, 130); } if (clau == 'm') {pitit (speakerPin, 3136, 100); setColor (0, 255, 255); } if (clau == 'n') {pitit (speakerPin, 3520, 100); setColor (0, 220, 255); } if (key == 'o') {beep (speakerPin, 3951, 100); setColor (0, 69, 255); } if (clau == 'p') {pitit (speakerPin, 4186, 100); setColor (255, 0, 255); }}
Pas 5: Pensaments finals
Pensaments finals
El pensament final d’aquest projecte és que el seu propòsit és ser una joguina, aportar alegria simplista i divertida. Com que aquest projecte és complet i està funcionant, crec que aquesta compilació es pot afavorir amb potser més components, com ara un element de gravació, o un element copy / simon diu, o fins i tot un LCD amb les notes que apareixen per reproduir una cançó específica.
M'encantaria conèixer la vostra opinió sobre el mòdul del teclat, quins components creieu que es podrien afegir. L’utilitzaràs en algun dels teus projectes? Envieu les vostres idees a la secció de comentaris a continuació.
Assegureu-vos de compartir si us ha agradat aquest projecte arduino.
Recomanat:
Teclat USB d'un botó RGB: 6 passos (amb imatges)
Teclat USB amb un botó RGB: mai heu sentit la necessitat de tenir un teclat retroil·luminat RGB petit però funcional, que no superi la mida d’una sola tecla? No? A qui li importa, en fa un de totes maneres! Aquest instructiu us guiarà a través dels passos que necessiteu perquè el vostre propi, lleugerament inútil, a
Controlador USB de baixos, aguts i volums amb LED de teclat: 6 passos (amb imatges)
Controlador USB de greus, aguts i volum amb LEDs de teclat: tinc un Creative SoundBlaster Audigy a l’ordinador principal d’escriptori i necessitava una manera d’ajustar ràpidament la configuració de greus i aguts (així com el volum) quan escoltava suports d’àudio o vídeo. . He adaptat el codi a partir de dues fonts indicades a
Interfície de teclat amb 8051 i visualització de números de teclat en 7 segments: 4 passos (amb imatges)
Interfície de teclat amb 8051 i visualització de números de teclat en 7 segments: en aquest tutorial us explicaré com podem interfície de teclat amb 8051 i mostrar números de teclat en pantalla de 7 segments
Teclat Das ràpid i brut (teclat en blanc): 3 passos
Teclat Das ràpid i brut (teclat en blanc): un teclat Das és el nom del teclat més popular sense inscripcions a les tecles (teclat en blanc). El teclat Das es ven per 89,95 dòlars. Aquest instructiu us guiarà tot i fer-ne un amb qualsevol teclat antic que tingueu al voltant
Neteja del teclat d'alumini Apple o qualsevol altre teclat suau: 5 passos
Neteja del teclat d'alumini Apple … o qualsevol altre teclat suau: tan net com tu o jo intentem mantenir els nostres teclats d'alumini Apple, es tornen bruts al cap d'un any més o menys. Aquesta instrucció us ajudarà a netejar-la. Vés amb compte, perquè no sóc responsable si el teu teclat es trenca mentre fas això … SUCKS F