Table des matières:
- Étape 1: Matériel nécessaire
- Étape 2: Temps de construction
- Étape 3: Module de capteur de son et LED RVB
- Étape 4: Coder
- Étape 5: Réflexions finales
Vidéo: Module clavier Piano avec LED RVB : 5 étapes (avec photos)
2024 Auteur: John Day | [email protected]. Dernière modifié: 2024-01-30 09:08
Introduction
Bonjour mesdames et messieurs, bienvenue dans mon tout premier instructable ! Aujourd'hui, je vais vous apprendre à créer un piano dont les principaux composants sont un module de clavier et un buzzer piézo et lui permettre de jouer DO-RE-MI et ainsi de suite.
Le module de clavier le plus souvent destiné à être un clavier combiné à un arduino RFID pour créer un coffre-fort pour les objets de valeur. Dans ce cas, j'ai changé le clavier, au lieu de protéger quelque chose que je décide d'utiliser pour parler de la joie simple et de la musique.
Idée Concept
L'idée conceptuelle de cette création est issue d'un simple souvenir heureux en jouant du xylophone quand j'étais plus jeune en cours de musique. La quantité de joie et d'excitation qui traversait mon corps était à son apogée, je veux dire que chaque enfant était facilement satisfait et ma satisfaction était de jouer du xylophone.
Recherche
Une fois que l'ampoule de votre idée ci-dessus s'est allumée, une petite recherche doit être effectuée. Après avoir navigué sur le Web pendant un certain temps, je peux tomber sur mon idée à laquelle j'avais initialement pensé ! Un module de clavier transformé en piano, quelqu'un a créé la même vidéo de projet ici. En pensant à l'avenir, j'avais besoin d'ajouter un composant distinct qui améliorerait davantage le projet mais le rendrait plus attrayant et pourrait l'appeler le mien.
Étape 1: Matériel nécessaire
Liste des matériaux
- Sonnerie piézo 1x ▶
- Module clavier 4x4 1x ▶
- Arduino Uno 1x ▶
- Câble USB 2.0 type A/B 1x ▶
- Module de capteur de son 1x ▶
- LED RVB 1x ▶
- Résistance 330 ohms 3x ▶
- Câble de raccordement mâle à femelle 8x ▶
- Cavalier mâle à mâle 4x ▶
- Câble de raccordement mâle à femelle 3 broches 1x ▶
La liste des matériaux est en ordre avec les images ci-dessus.
Étape 2: Temps de construction
Module de clavier 4x4 et buzzer piézo
Théorie
Comme le module clavier 4x4 et le buzzer piézo contiennent autant d'entrées de broches individuelles, je déciderai de diviser les composants utilisés en deux paires. Se concentrer sur le clavier, généralement utilisé comme entrée. Le module de clavier matriciel SunFounder 4*4 est un clavier matriciel non codé composé de 16 touches en parallèle. X4, les colonnes.
But
Le but de ces composants pour l'ensemble du projet est de permettre à l'utilisateur d'appuyer sur un bouton qui est réglé sur un son spécifique créé par le buzzer piézo à travers une fréquence en hertz.
Broche du module matriciel - Broche Arduino
- 4 - 2
- 3 - 3
- 2 - 4
- 1 - 5
- 5 - 6
- 6 - 7
- 7 - 8
- 8 - 13
Buzzer Piezo - Broche Arduino
Noir - GND
Pouvoir rouge
Ma tâche la plus difficile dans cette construction est de déterminer où chaque fil est branché. Ci-dessus, je vous explique comment localiser rapidement et facilement les fils, tant que vous suivez de haut en bas, le conseil est de prendre votre temps et de vous assurer que chaque broche est correctement insérée dans la bonne fente.
* L'astuce consiste à suivre l'emplacement de chaque fil d'un bout à l'autre.
Tous les croquis Tinkercad des fils de composants spécifiques sont correctement codés par couleur, alors suivez attentivement
Étape 3: Module de capteur de son et LED RVB
Module de capteur de son et LED RVB
Théorie
Le module de capteur sonore vous permet de détecter lorsque le son a dépassé un point de consigne que vous sélectionnez. Le son est détecté via un microphone et introduit dans un ampli op LM393. Une fois que le niveau sonore dépasse le point de consigne, une LED sur le module s'allume et la sortie.
But
Le but de ces composants pour l'ensemble du projet est d'obtenir une lecture du son/volume du module de capteur sonore et à travers cette lecture, une LED RVB activera la couleur correcte relative au son.
Module de capteur de son - Broche Arduino (utilisez un cavalier à 3 broches)
- Sortie - Broche analogique A0
- GND - Tout emplacement de broche GND ouvert
- VCC - 3V
LED d'anode commune (+) RGB - broche Arduino
- Rouge - 9
- Alimentation - 5V
- Vert - 10
- Bleu - 11
Gardez à l'esprit de câbler, chaque fil individuel à travers une résistance de 330 ohms. Utilisez l'image ci-dessus comme référence.
Ma tâche la plus difficile dans cette construction est de déterminer où chaque fil est branché. Ci-dessus, je vous explique comment accéder rapidement et facilement aux emplacements des fils, tant que vous les suivez de haut en bas, le conseil est de prendre votre temps et de vous assurer que chaque broche est correctement insérée dans le bon emplacement pour éviter un débogage futur.
*Le conseil est de suivre l'endroit où chaque fil est inséré dans un sens ou dans l'autre
Tous les croquis Tinkercad des fils de composants spécifiques sont correctement codés par couleur, alors suivez-le
Étape 4: Coder
Code
Ce code permet à tous les composants de fonctionner ensemble en utilisant une fonction nouvellement définie pour contenir tous les nombreux contrôles un seul composant qui a de nombreuses variables modifiables ces composants étaient la led RVB et en utilisant la couleur RVB pour changer la couleur lorsqu'il est allumé et le buzzer piézo et le le son qu'il ferait en fonction de la pression sur le bouton.
Un must dans ce code était la bibliothèque de claviers
Lien ici:
Une fois téléchargé, ajoutez la nouvelle bibliothèque dans l'arduino, puis insérez la seule ligne de code nécessaire pour l'activer.
Les difficultés que j'ai eues pendant le code étaient de savoir où placer les fonctions nouvellement définies, car par essais et erreurs, j'ai compris que cela devait être dans la configuration et non dans la boucle.
Code
#include // Bibliothèque de claviers
int greenPin = 11; //Broche verte RVB connectée à la broche numérique 9
int redPin= 10; //Broche rouge RVB connectée à la broche numérique 9
int bluePin = 9; //Broche bleue RVB connectée à la broche numérique 9 int speakerPin = 12; // haut-parleur connecté à la broche numérique 12 octet const ROWS = 4; // quatre lignes const byte COLS = 4; // quatre colonnes const int soundPin = A0; //capteur de son attaché à A0
char keys[ROWS][COLS] = {
{'a', 'b', 'c', 'd'}, {'e', 'f', 'g', 'h'}, {'i', 'j', 'k', ' l'}, {'m', 'n', 'o', 'p'} }; // Visualisation du module clavier
octet rowPins[ROWS] = {2, 3, 4, 5}; // connexion aux broches de ligne du clavier
octet colPins[COLS] = {6, 7, 8, 13}; // se connecte aux brochages de la colonne du clavier
Pavé numérique = Pavé numérique (makeKeymap(keys), rowPins, colPins, ROWS, COLS); // Crée des clés
void setup(){
pinMode(haut-parleurPin, SORTIE); // définit le speakerPin comme une sortie
pinMode(redPin, SORTIE); // définit la broche rouge comme une sortie pinMode(greenPin, OUTPUT); // définit la broche verte comme une sortie pinMode(bluePin, OUTPUT); // définit la broche bleue comme une sortie
Serial.begin (9600);
} void setColor(int red, int green, int blue) // Nouvelle fonction définie pour permettre à RVB d'afficher la couleur via le code RVB { #ifdef COMMON_ANODE red = 255 - red; vert = 255 - vert; bleu = 255 - bleu; #endif analogWrite(redPin, rouge); analogWrite(vertPin, vert); analogWrite(bluePin, bleu); }
void beep (char haut-parleur non signé, int FrequencyInHertz, long timeInMilliseconds){ // les fonctions de production de son
entier x; long delayAmount = (long)(1000000/fréquenceInHertz); long loopTime = (long)((timeInMilliseconds*1000)/(delayAmount*2)); pour (x=0;x
boucle vide (){
touche char = clavier.getKey(); valeur int = analogRead(soundPin);//lire la valeur de A0 Serial.println(valeur);//imprimer la valeur
if (clé != NO_KEY) {
Serial.println(clé); } if (key=='a'){ beep(speakerPin, 2093, 100); setColor(218, 112, 214); } if (key=='b'){ beep(speakerPin, 2349, 100); setColor(218, 112, 214); } if (key=='c'){ beep(speakerPin, 2637, 100); setColor(218, 112, 214); } if (key=='d'){ beep(speakerPin, 2793, 100); setColor(218, 112, 214); } if (key=='e'){ beep(speakerPin, 3136, 100); setColor(218, 112, 214); } if (key=='f'){ beep(speakerPin, 3520, 100); setColor(218, 112, 214); } if (key=='g'){ beep(speakerPin, 3951, 100); setColor(218, 112, 214); } if (key=='h'){ beep(speakerPin, 4186, 100); setColor(218, 112, 214); } if (key=='i'){ beep(speakerPin, 2093, 100); setColor(230, 230, 0); } if (key=='j'){ beep(speakerPin, 2349, 100); setColor(180, 255, 130); } if (key=='k'){ beep(speakerPin, 2637, 100); setColor(130, 255, 130); } if (key=='l'){ beep(speakerPin, 2739, 100); setColor(130, 220, 130); } if (key=='m'){ beep(speakerPin, 3136, 100); setColor(0, 255, 255); } if (key=='n'){ beep(speakerPin, 3520, 100); setColor (0, 220, 255); } if (key=='o'){ beep(speakerPin, 3951, 100); setColor (0, 69, 255); } if (key=='p'){ beep(speakerPin, 4186, 100); setColor(255, 0, 255); } }
Étape 5: Réflexions finales
Dernières pensées
Les dernières pensées de ce projet sont que son objectif est d'être un jouet, d'apporter une joie amusante et simpliste. Comme ce projet est complet et en cours de réalisation, je pense que cette construction peut être complétée par peut-être plus de composants tels qu'un élément d'enregistrement, ou un élément de copie/simon dit, ou même un écran LCD avec les notes semblant jouer une chanson spécifique.
J'aimerais connaître votre opinion sur le module de clavier, quels composants, selon vous, auraient pu être ajoutés. Allez-vous l'utiliser dans l'un de vos projets ? Veuillez poster vos idées dans la section commentaires ci-dessous.
Assurez-vous de partager si vous avez apprécié ce projet arduino.
Conseillé:
Clavier USB universel avec commutateurs RVB : 6 étapes
Clavier USB universel avec commutateurs RVB : dans cette instructable, je vais vous montrer comment créer votre propre clavier USB personnalisé qui se comporte comme un clavier d'ordinateur ordinaire. Vous pouvez affecter n'importe quelle combinaison de touches ou séquence de touches à appuyer en appuyant sur un seul bouton-poussoir. Vous pouvez l'utiliser
Contrôle WIFI BANDE LED RVB ESP8266 - NODEMCU en tant que télécommande IR pour bande LED contrôlée via Wifi - Contrôle de Smartphone RVB LED STRIP : 4 étapes
Contrôle WIFI BANDE LED RVB ESP8266 | NODEMCU en tant que télécommande IR pour bande LED contrôlée via Wifi | Contrôle par smartphone RVB LED STRIP : Salut les gars, dans ce tutoriel, nous allons apprendre à utiliser nodemcu ou esp8266 comme télécommande IR pour contrôler une bande LED RVB et Nodemcu sera contrôlé par smartphone via wifi. Donc, en gros, vous pouvez contrôler la BANDE LED RVB avec votre smartphone
Clavier USB RVB à un bouton : 6 étapes (avec photos)
Clavier USB RVB à un bouton : Avez-vous déjà ressenti le besoin d'avoir un clavier rétroéclairé RVB minuscule, mais fonctionnel, pas plus grand que la taille d'une seule touche ? Non? Peu importe, faites-en un quand même ! Cette instructable vous guidera à travers les étapes dont vous avez besoin pour créer votre propre, légèrement inutile, sur
OSU ! CLAVIER AVEC LED RVB : 3 étapes
OSU ! CLAVIER AVEC LED RVB : Bonjour j'ai fait un Instructables il y a quelque temps et j'ai oublié de faire une mise à jour pour le WS2812B RVB. Désolé. Ce projet s'appuiera sur https://www.instructables.com/id/Osu-Keyboard-with-Arduino-Uno
Interface de clavier avec 8051 et affichage des numéros de clavier en 7 segments : 4 étapes (avec images)
Interface du clavier avec 8051 et affichage des numéros du clavier dans 7 segments : dans ce didacticiel, je vais vous expliquer comment nous pouvons interfacer le clavier avec le 8051 et afficher les numéros du clavier dans un affichage à 7 segments