Sisällysluettelo:

Automaattinen piano: 5 vaihetta
Automaattinen piano: 5 vaihetta

Video: Automaattinen piano: 5 vaihetta

Video: Automaattinen piano: 5 vaihetta
Video: 3/5 kulmaa kosmologiaan: Missä kaikki ovat 2024, Heinäkuu
Anonim
Automaattinen piano
Automaattinen piano

Halusin tehdä pianon, joka voi soittaa automaattisesti kuuntelemalla musiikkiani heti, joten kokeilin sitä arduino uno: lla, joka oli makaamassa. tällä hetkellä ja jatkoin uno: n kanssa.

Vaihe 1: Teoria

Pianoa soitetaan sovittamalla laulajan taajuus pianoon. Joten meidän on otettava näytteen laulajan taajuus ja toistettava se reaaliajassa. Käytän jännitteenjakajaa trimpotista, koska ääni on ac ja arduino ei Käsittele negatiivisia jännitteitä, joten käytä jännitteenjakajan antamaa jännitettä vertailukohtana ja aseta se 2,5 volttiin. Tulo on arduinon A0 -nastassa. Sitten ohjelmoin arduinon tarkistamaan, milloin jännite on viitetasolla, jonka mitoin, ja nimesin sen aluksi, ja sitten mittasin aikajakson peräkkäisen vertailujännitteen välillä ja laskin sitten taajuuden. muuttujaa käytetään audiosignaalin hetkellisen amplitudin tallentamiseen melun poistamiseksi, jonka amplitudi on alle 15 adc -arvoa tai 0,0733 volttia. Taajuudelle asetetaan raja, jotta ääriarvot eivät keskeytä kappaletta.

Vaihe 2: Tarvittava materiaali

Tarvittava materiaali
Tarvittava materiaali
Tarvittava materiaali
Tarvittava materiaali
Tarvittava materiaali
Tarvittava materiaali

1) Arduino Uno tai vastaava

2) Passiivinen pietsosähköinen summeri tai kaiutin vahvistinpiirillä

3) Korkea vastus trimpot (varmista, että sen läpi virtaava virta 5 voltilla on pieni muutamassa milliampeissa)

4) hyppyjohdot

5) leipälauta

6) 3,5 mm: n ääniliitäntä tai mikrofoni, jossa on vahvistinpiiri (käytin matkapuhelinta vahvistimena, koska huomasin olevani liian laiska rakentamaan sellaisen)

7) Android -puhelin (äänen toistamiseen)

8) Arduino -kaapeli (Ohjelmoidaksesi sen)

Vaihe 3: Liitännät

Liitännät
Liitännät
Liitännät
Liitännät

1) Asenna trimpot leipälautaan ja syötä se maadoitettuna ja +5V arduinosta hyppyjohtimilla.

2) Kytke 3,5 mm: n liittimen maadoitus trimpotin kolmanteen nastaan, jotta se toimii jännitteenjakajana ja kanava A0 -nastaiseen arduinoon.

3) Kytke summerin maadoitus arduinon maahan ja signaali arduinon nastaan 13.

Vaihe 4: Arduino -koodi

Arduino -koodi
Arduino -koodi

Tässä on täydellinen koodi

Olen kommentoinut joitain testaukseen käytettyjä sarjapainatuksia

uint64_t cutime = 0, ltime = 0; uint32_t freq = 0; uint16_t alkukirjain, val, del = 0; bool last, curr; void setup () {// laita asennuskoodi tähän, jotta se suoritetaan kerran: delay (1000); /*Serial.begin(115200); viive (1000); Serial.println ("järjestelmä käynnistyi");*/ alkuperäinen = analoginenLue (A0); jos (analoginen luku (A0)

void loop () {// laita pääkoodisi tänne toistettavaksi: val = analogRead (A0); jos (val> = alkuperäinen) curr = 1; muu curr = 0; del = (int) val- (int) alkukirjain; if (last == 0 && curr == 1) {curtime = micros (); taajuus = 1000000/(2*(käyttöaika-aika)); /*Serial.print (taajuus, DEC); Serial.print ("alas"); Sarja.println (del);*/ jos (taajuus> 50 && freq15) -ääni (13, taajuus, 500); viive (100); lime = micros (); viimeinen = 1; }

Vaihe 5: Käynnistä se !

Liitä puhelimesi musiikin toistamiseen ja jos haluat laulaa, voit käyttää kaikkia työkalusovelluksia, jotka voidaan ladata Play -kaupasta.

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

Lataamisen jälkeen avaa mike -vaihtoehto ja laula!

Näin se toimii!

Suositeltava: