INHOUDSOPGAWE:

Outomatiese klavier: 5 stappe
Outomatiese klavier: 5 stappe

Video: Outomatiese klavier: 5 stappe

Video: Outomatiese klavier: 5 stappe
Video: Штукатурка стен - самое полное видео! Переделка хрущевки от А до Я. #5 2024, November
Anonim
Outomatiese klavier
Outomatiese klavier

Ek wou 'n klavier maak wat outomaties kan speel deur onmiddellik na my musiek te luister. So ek het dit probeer met arduino uno wat ek rondgelê het. Dit kan baie beter wees met arduino zero met behulp van 'n eenvoudige frekwensie meter biblioteek ii het dit nie op die oomblik en ek gaan voort met uno.

Stap 1: Teorie

Die klavier word gespeel deur die frekwensie van die sanger by die klavier te pas. Daarom moet ons die frekwensie van die sanger meet en dit in reële tyd afspeel. Ek gebruik 'n spanningsverdeler uit 'n trimpot, aangesien klank ac en arduino nie kan negatiewe spannings hanteer, gebruik dus die spanning wat die spanningsverdeler verskaf as verwysing en stel dit op 2.5v. Die invoer word verskaf by A0 -pen van die arduino. Ek het die arduino dan geprogrammeer om te kontroleer of die spanning op die verwysingsvlak is wat ek gemeet het en dit aanvanklik genoem en dan die tydsinterval tussen opeenvolgende verwysingspanning gemeet en dan die frekwensie bereken. veranderlike word gebruik om die onmiddellike amplitude van die klanksignaal op te slaan om die geraas wat 'n amplitude van minder as 15 adc of 0,0733 volt het, uit te skakel. Die frekwensie word beperk, sodat uiterste waardes die lied nie onderbreek nie.

Stap 2: materiaal benodig

Materiaal benodig
Materiaal benodig
Materiaal benodig
Materiaal benodig
Materiaal benodig
Materiaal benodig

1) Arduino Uno of ekwivalent

2) Passiewe piëzo -elektriese zoemer of 'n luidspreker met versterkerkring

3) Trimpot met hoë weerstand (maak seker dat die stroom wat by 5V vloei, binne 'n paar millamps klein moet wees)

4) springdrade

5) broodbord

6) 3,5 mm -klankaansluiting of 'n mikrofoon met 'n versterkerkring (ek het my selfoon as versterker gebruik omdat ek te lui was om een te bou)

7) Android -telefoon (om klank te speel)

8) arduino -kabel (om dit te programmeer)

Stap 3: Verbindings

Verbindings
Verbindings
Verbindings
Verbindings

1) Monteer die trimpot op die broodbord en voorsien dit gemaalde en +5v van arduino met behulp van springdrade.

2) Koppel die grond van die 3,5 mm -aansluiting aan die derde pen van die trimpot om te werk as 'n spanningsverdelerkonfigurasie en 'n kanaal met die A0 -pen van die arduino.

3) Koppel die grond van die gonser aan die grond van die arduino en dui aan pen 13 van die arduino.

Stap 4: Arduino -kode

Arduino -kode
Arduino -kode

Hier is die volledige kode

Ek het kommentaar gelewer op sommige verklarings van seriële druk wat vir toetsing gebruik is

uint64_t curtime = 0, ltime = 0; uint32_t freq = 0; uint16_t aanvanklike, val, del = 0; bool laaste, curr; ongeldige opstelling () {// plaas u opstellingskode hier om een keer te werk: vertraging (1000); /*Serial.begin(115200); vertraging (1000); Serial.println ("stelsel begin");*/ initial = analogRead (A0); as (analogRead (A0)

void loop () {// plaas u hoofkode hier om herhaaldelik te laat loop: val = analogRead (A0); as (val> = aanvanklik) curr = 1; anders curr = 0; del = (int) val- (int) initial; as (laaste == 0 && curr == 1) {curtime = micros (); freq = 1000000/(2*(curtime-ltime)); /*Serial.print(freq, DEC); Serial.print ("af"); Serial.println (del);*/ if (frekwensie> 50 && freq15) toon (13, frekwensie, 500); vertraging (100); ltime = mikros (); laaste = 1; }

Stap 5: Power It !

Koppel jou foon om musiek te speel, en as jy wil sing, kan jy alle gereedskap -app gebruik wat in die Play Store afgelaai kan word. Hier is die skakel

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

Na aflaai, maak die mike -opsie oop en sing!

Hier is hoe dit werk!

Aanbeveel: