Orodha ya maudhui:

Piano iliyojiendesha: Hatua 5
Piano iliyojiendesha: Hatua 5

Video: Piano iliyojiendesha: Hatua 5

Video: Piano iliyojiendesha: Hatua 5
Video: Jifunze Kupiga Piano Sebene Na Kbd Msafi Sehemu ya 5 2024, Julai
Anonim
Piano iliyojiendesha
Piano iliyojiendesha

Nilitaka kutengeneza piano inayoweza kucheza kiotomatiki kwa kusikiliza muziki wangu papo hapo. Kwa hivyo nilijaribu na arduino uno nilikuwa nimelala karibu. Inaweza kuwa bora zaidi na zero ya arduino kutumia maktaba ya mita za masafa rahisi ii hakuwa nayo kwa sasa na niliendelea na uno.

Hatua ya 1: Nadharia

Piano inachezwa kwa kulinganisha masafa ya mwimbaji na piano. Kwa hivyo tunahitaji kupimia mzunguko wa mwimbaji na kuicheza tena kwa wakati halisi. Ninatumia mgawanyiko wa voltage kutoka kwa trimpot kwani sauti ni ac na arduino haiwezi kushughulikia voltages hasi kwa hivyo ilitumia voltage iliyotolewa na mgawanyiko wa voltage kama kumbukumbu na kuiweka kwa 2.5v. Uingizaji hutolewa kwa pini ya A0 ya arduino. Kisha nikapanga arduino kuangalia wakati voltage iko katika kiwango cha kumbukumbu ambacho nilipima na kuiita jina la kwanza kisha nikapima muda wa muda kati ya voltage ya kumbukumbu inayofuatana na kisha kuhesabu masafa. variable hutumiwa kuhifadhi amplitude ya papo hapo ya ishara ya sauti ili kuondoa kelele ambayo ina amplitude chini ya 15 adc value au 0.0733 volts. Kikomo kinawekwa kwenye masafa ili maadili yaliyokithiri yasisumbue wimbo.

Hatua ya 2: Nyenzo Inahitajika

Nyenzo Inahitajika
Nyenzo Inahitajika
Nyenzo Inahitajika
Nyenzo Inahitajika
Nyenzo Inahitajika
Nyenzo Inahitajika

1) Arduino Uno au sawa

2) Buzzer ya umeme ya piezo ya kupita au spika iliyo na mzunguko wa kipaza sauti

3) Trimpot ya upinzani wa juu (hakikisha kwamba sasa inapita kati yake kwa 5v inapaswa kuwa ndogo kwa milimita chache)

4) waya za kuruka

5) mkate wa mkate

6) 3.5mm jack ya sauti au maikrofoni yenye mzunguko wa kipaza sauti (Nilitumia simu yangu kama kipaza sauti kwani nilijiona kuwa mvivu sana kuijenga)

7) Simu ya Android (Ili kucheza sauti)

8) kebo ya arduino (Ili kuipanga)

Hatua ya 3: Uunganisho

Miunganisho
Miunganisho
Miunganisho
Miunganisho

1) Mlima trimpot kwenye ubao wa mkate na ugavi ardhi na + 5v kutoka arduino ukitumia waya za kuruka.

2) Unganisha ardhi ya jack 3.5mm na pini ya tatu ya trimpot ili kufanya kazi kama usanidi wa mgawanyiko wa voltage na kituo kwa pini ya A0 ya arduino.

3) Unganisha ardhi ya buzzer kwenye ardhi ya arduino na ishara kwa kubandika 13 ya arduino.

Hatua ya 4: Msimbo wa Arduino

Msimbo wa Arduino
Msimbo wa Arduino

Hapa kuna nambari kamili

Nimeelezea maoni kadhaa ya uchapishaji wa serial kutumika kwa upimaji

muda wa uint64_t = 0, muda wa muda = 0; uint32_t freq = 0; uint16_t awali, val, del = 0; bool mwisho, curr; kuanzisha batili () {// weka msimbo wako wa kusanidi hapa, ili uendeshe mara moja: kuchelewesha (1000); /*Serial.begin (1155200); kuchelewesha (1000); Serial.println ("mfumo ulianza"); * / initial = AnalogRead (A0); ikiwa (AnalogSoma (A0)

kitanzi batili () {// weka nambari yako kuu hapa, kuendesha mara kwa mara: val = analogRead (A0); ikiwa (val> = awali) curr = 1; mwingine curr = 0; del = (int) val- (int) awali; ikiwa (mwisho == 0 && curr == 1) {curtime = micros (); freq = 1000000 / (2 * (muda wa muda -wakati)); /*Sprint.print (frere, DEC); Serial.print ("chini"); Serial.println (del); * / ikiwa (freq> 50 && freq15) toni (13, freq, 500); kuchelewesha (100); muda = micros (); mwisho = 1; }

Hatua ya 5: Nguvu yake !!

Unganisha simu yako ili kucheza muziki na ikiwa unataka kuimba basi unaweza kutumia programu zote za zana ambazo zinaweza kupakuliwa kwenye duka la kucheza.

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

Baada ya kupakua, fungua chaguo la mike na uimbe!

Hivi ndivyo inavyofanya kazi!

Ilipendekeza: