Talaan ng mga Nilalaman:

Awtomatikong Piano: 5 Hakbang
Awtomatikong Piano: 5 Hakbang

Video: Awtomatikong Piano: 5 Hakbang

Video: Awtomatikong Piano: 5 Hakbang
Video: Play This Jazz Improv Exercise Every Day! Target Notes. Jazz Piano Tutorial 2024, Nobyembre
Anonim
Awtomatikong Piano
Awtomatikong Piano

Nais kong gumawa ng isang piano na maaaring awtomatikong tumugtog sa pamamagitan ng pakikinig ng aking musika kaagad. Kaya't sinubukan ko ito sa arduino uno na nakahiga ako. Maaari itong maging mas mahusay sa arduino zero gamit ang simpleng frequency meter library ii na wala ito sa ngayon at nagpatuloy ako sa uno.

Hakbang 1: Teorya

Ang piano ay pinatugtog sa pamamagitan ng pagtutugma ng dalas ng mang-aawit sa piano. Kaya kailangan naming i-sample ang dalas ng mang-aawit at i-playback ito sa real time. Gumagamit ako ng isang divider ng boltahe mula sa isang trimpot dahil ang audio ay ac at ang arduino ay hindi hawakan ang mga negatibong boltahe samakatuwid ginamit ang boltahe na ibinigay ng divider ng boltahe bilang sanggunian at i-set up ito sa 2.5v. Ang input ay ibinigay sa A0 pin ng arduino. Pagkatapos ay nai-program ko ang arduino upang suriin kung ang boltahe ay nasa antas ng sanggunian na sinukat ko at pinangalanan itong paunang at pagkatapos ay sinusukat ang agwat ng oras sa pagitan ng sunud-sunod na boltahe ng sanggunian at pagkatapos ay kinakalkula ang dalas. ginagamit ang variable upang maiimbak ang instant na amplitude ng audio signal upang maalis ang ingay na mayroong mas malawak na amplitude na mas mababa sa 15 adc na halaga o 0.0733 volts. Ang isang limitasyon ay inilalagay sa dalas upang ang labis na mga halaga ay hindi makagambala sa kanta.

Hakbang 2: Kinakailangan na Materyal

Kinakailangan na Materyal
Kinakailangan na Materyal
Kinakailangan na Materyal
Kinakailangan na Materyal
Kinakailangan na Materyal
Kinakailangan na Materyal

1) Arduino Uno o katumbas

2) Passive piezo electric buzzer o isang speaker na may amplifier circuit

3) Mataas na pagtutol trimpot (siguraduhin na ang kasalukuyang dumadaloy sa pamamagitan nito sa 5v ay dapat na maliit sa ilang mga millamp)

4) mga jumper wires

5) pisara

6) 3.5mm audio jack o isang mic na may amplifier circuit (Ginamit ko ang aking mobile bilang isang amplifier dahil nahanap ko ang aking sarili na tinatamad na bumuo ng isa)

7) Android Telepono (Upang i-play ang tunog)

8) arduino cable (Upang i-program ito)

Hakbang 3: Mga Koneksyon

Mga koneksyon
Mga koneksyon
Mga koneksyon
Mga koneksyon

1) I-mount trimpot sa board ng tinapay at ibigay ito sa lupa at + 5v mula sa arduino gamit ang mga jumper wires.

2) Ikonekta ang lupa ng 3.5mm jack sa pangatlong pin ng trimpot upang gumana bilang pagsasaayos ng boltahe divider at channel sa A0 pin ng arduino.

3) Ikonekta ang lupa ng buzzer sa lupa ng arduino at signal upang i-pin ang 13 ng arduino.

Hakbang 4: Arduino Code

Code ng Arduino
Code ng Arduino

Narito ang kumpletong code

Nagkomento ako ng ilang mga pahayag ng serial print na ginamit para sa pagsubok

uint64_t Gordime = 0, ltime = 0; uint32_t freq = 0; uint16_t pauna, val, del = 0; huling bool, curr; void setup () {// ilagay ang iyong setup code dito, upang tumakbo nang isang beses: pagkaantala (1000); /*Serial.begin(115200); pagkaantala (1000); Serial.println ("nagsimula ang system"); * / paunang = analogRead (A0); kung (analogRead (A0)

void loop () {// ilagay ang iyong pangunahing code dito, upang tumakbo nang paulit-ulit: val = analogRead (A0); kung (val> = paunang) curr = 1; ibang kurso = 0; del = (int) val- (int) paunang; kung (huling == 0 && curr == 1) {Gordime = micros (); freq = 1000000 / (2 * (shutime-ltime)); /*Serial.print(freq, DEC); Serial.print ("pababa"); Serial.println (del); * / if (freq> 50 && freq15) tone (13, freq, 500); pagkaantala (100); ltime = micros (); huling = 1; }

Hakbang 5: Palakasin ito !!

Ikonekta ang iyong telepono upang i-play ang ilang musika at kung nais mong kumanta maaari mong gamitin ang lahat ng tool ng tool na maaaring ma-download sa play store. Narito ang link

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

Pagkatapos mag-download, buksan ang pagpipilian ng mike at kumanta!

Narito kung paano ito gumagana!

Inirerekumendang: