Table des matières:

Piano automatisé : 5 étapes
Piano automatisé : 5 étapes

Vidéo: Piano automatisé : 5 étapes

Vidéo: Piano automatisé : 5 étapes
Vidéo: Comment travailler un PASSAGE DIFFICILE au piano 🔥 (en 5 étapes) 2024, Novembre
Anonim
Piano automatisé
Piano automatisé

Je voulais faire un piano qui puisse jouer automatiquement en écoutant ma musique instantanément. J'ai donc essayé avec arduino uno que j'avais traîné. Cela pourrait être beaucoup mieux avec arduino zero en utilisant une simple bibliothèque de fréquencemètre ii ne l'avait pas en ce moment et j'ai continué avec uno.

Étape 1: Théorie

Le piano est joué en faisant correspondre la fréquence du chanteur au piano. Nous devons donc échantillonner la fréquence du chanteur et la lire en temps réel. J'utilise un diviseur de tension sur un potentiomètre car l'audio est en courant alternatif et l'arduino ne peut pas gérer les tensions négatives donc utiliser la tension fournie par le diviseur de tension comme référence et la régler à 2,5v. L'entrée est fournie à la broche A0 de l'arduino. J'ai ensuite programmé l'arduino pour vérifier quand la tension est au niveau de référence que j'ai mesuré et nommé initial, puis mesuré l'intervalle de temps entre la tension de référence successive, puis calculé la fréquence. Le del La variable est utilisée pour stocker l'amplitude instantanée du signal audio afin d'éliminer le bruit qui a une amplitude inférieure à 15 valeur adc ou 0,0733 volts. Une limite est mise sur la fréquence afin que les valeurs extrêmes n'interrompent pas la chanson.

Étape 2: Matériel requis

Matériel requis
Matériel requis
Matériel requis
Matériel requis
Matériel requis
Matériel requis

1) Arduino Uno ou équivalent

2) buzzer piézo-électrique passif ou un haut-parleur avec circuit amplificateur

3) Trimpot haute résistance (assurez-vous que le courant qui le traverse à 5 V doit être faible en quelques milliampères)

4) fils de cavalier

5) planche à pain

6) prise audio 3,5 mm ou un micro avec circuit amplificateur (j'ai utilisé mon mobile comme amplificateur car je me trouvais trop paresseux pour en construire un)

7) téléphone Android (pour jouer le son)

8) câble arduino (pour le programmer)

Étape 3: Connexions

Connexions
Connexions
Connexions
Connexions

1) Montez le trimpot sur la planche à pain et alimentez-le à la terre et à + 5 V depuis l'arduino à l'aide de câbles de démarrage.

2) Connectez la masse de la prise 3,5 mm à la troisième broche du potentiomètre pour fonctionner comme configuration de diviseur de tension et canal à la broche A0 de l'arduino.

3) Connectez la masse du buzzer à la masse de l'arduino et le signal à la broche 13 de l'arduino.

Étape 4: Code Arduino

Code Arduino
Code Arduino

Voici le code complet

J'ai commenté certaines déclarations d'impression en série utilisées pour les tests

uint64_t curtime=0, ltime=0;uint32_t freq=0; uint16_t initial, val, del=0; bool dernier, curr; void setup() { // mettez votre code de configuration ici, à exécuter une fois: delay(1000); /*Serial.begin(115200); retard(1000); Serial.println("système démarré");*/ initial = analogRead(A0); if(analogRead(A0)

void loop() { // mettez votre code principal ici, pour l'exécuter à plusieurs reprises: val=analogRead(A0); if(val>=initial)curr=1; sinon curr=0; del=(int)val-(int)initial; if(last==0 && curr==1){ curtime=micros(); freq=1000000/(2*(curtime-ltime)); /*Serial.print(freq, DEC); Serial.print(" bas "); Serial.println(del);*/ if(freq>50&&freq15)tone(13, freq, 500); retard (100); ltime=micros(); dernier=1; }

Étape 5: Alimentez-le !

Connectez votre téléphone pour jouer de la musique et si vous voulez chanter, vous pouvez utiliser toutes les applications d'outils qui peuvent être téléchargées sur Play Store. Voici le lien

play.google.com/store/apps/details?id=com.pradhyu.alltoolseveryutility&hl=en

Après le téléchargement, ouvrez l'option micro et chantez !

Voici comment ça marche !

Conseillé: