Construisez un mini piano avec Arduino UNO – Tutoriel pas à pas
Matériel nécessaire
- 1 × Arduino UNO
- 1 × Plaque d'essai (breadboard)
- 7 × Boutons poussoirs 12mm (touches du piano)
- 1 × Buzzer piézoélectrique
- Fils de liaison (jumper wires)
Outils
Fer à souder (optionnel, pour version permanente sur plaque à pastilles).
Câblage
- 7 boutons : broches numériques D4 à D10 (une broche par bouton, l'autre au GND)
- Buzzer : broche D11 (PWM pour génération tonale)
- Résistances de pull-up : internes activées par code (
pinMode(x, INPUT_PULLUP)oudigitalWrite(x, HIGH)en mode INPUT)
Les boutons sont câblés en « active low » : lecture LOW = appuyé.
Code et bibliothèque
Le sketch utilise la bibliothèque Tone (incluse de base dans l'IDE Arduino) pour générer les fréquences des notes. Les notes de l'échelle diatonique (Do, Ré, Mi, Fa, Sol, La, Si) sont définies par leurs fréquences en Hz :
#define T_C 262 // Do
#define T_D 294 // Ré
#define T_E 330 // Mi
#define T_F 349 // Fa
#define T_G 392 // Sol
#define T_A 440 // La
#define T_B 493 // Si
La boucle loop() scrute en continu l'état des 7 boutons : si un bouton est pressé (LOW), la note correspondante est jouée via tone(buzzerPin, frequence) et la LED intégrée (broche 13) s'allume. Au relâchement, noTone() coupe le son.
Installation de la bibliothèque Tone (si nécessaire)
Si la bibliothèque Tone n'est pas présente, la télécharger depuis GitHub et l'installer via Croquis → Inclure une bibliothèque → Ajouter la bibliothèque .ZIP.
Personnalisation
- Accordage : modifier les constantes de fréquence si les notes sonnent faux.
- Gammes alternatives : le code inclut plusieurs gammes (majeure, mineure, pentatonique, etc.) en commentaire ; décommenter celle souhaitée.
- Créer sa propre gamme : remplacer le tableau de fréquences par ses propres valeurs.
Fonctionnement
Au démarrage, l'Arduino initialise les broches. En fonctionnement, chaque appui sur une touche déclenche instantanément la note correspondante. La LED clignote en synchronisation. Le jeu est polyphonique ? Non : la bibliothèque Tone ne gère qu'une seule note à la fois sur une broche ; si plusieurs touches sont pressées, seule la première dans l'ordre du code est jouée.
Dépannage
- Aucun son : vérifier le buzzer (polarité si buzzer actif), broche D11, alimentation.
- Note erronée : ajuster la constante de fréquence.
- Touche non réactive : vérifier câblage, résistance de pull-up, numéro de broche dans le code.
Ressources
Code source complet et dépôt GitHub : https://github.com/Rahul24-06/Mini-Piano
Processus de fabrication
- Créer un verrou RFID sécurisé avec Arduino – Guide étape par étape
- Dé numérique Arduino sur écran LCD 16x2 – Générateur aléatoire à bouton poussoir
- Construire un piano tactile capacitif portable avec Arduino – Guide étape par étape
- Construire un Iron Man animé avec Arduino : capteurs, sons et relais
- Find Me : Localisateur d'objets intelligent avec Arduino et Bluetooth
- Construire un bras robotique 3D fonctionnel piloté par Arduino – Guide pas à pas
- Contrôleur d'humidificateur DIY avec Arduino et relais – Installation haute tension sécurisée
- Construire une horloge 7 segments précise avec Arduino Pro Mini et DS1302 RTC
- Tutoriel Arduino Débutant 01 : Démarrez votre Premier Projet