Isi kandungan:

Piano Automatik: 5 Langkah
Piano Automatik: 5 Langkah

Video: Piano Automatik: 5 Langkah

Video: Piano Automatik: 5 Langkah
Video: ๐Ÿ•’ Rush E - Sheet Music Boss - Piano Stage 2024, Julai
Anonim
Piano Automatik
Piano Automatik

Saya mahu membuat piano yang boleh dimainkan secara automatik dengan mendengarkan muzik saya seketika. Oleh itu, saya mencubanya dengan arduino sehingga saya berbaring. Ia boleh menjadi lebih baik dengan arduino zero menggunakan perpustakaan meter frekuensi sederhana ii tidak memilikinya pada masa ini dan saya teruskan dengan uno.

Langkah 1: Teori

Piano dimainkan dengan memadankan frekuensi penyanyi dengan piano. Jadi kita perlu mencuba frekuensi penyanyi dan memainkannya dalam masa nyata. Saya menggunakan pembahagi voltan dari trimpot kerana audio adalah ac dan arduino tidak dapat Oleh itu, kendalikan voltan negatif menggunakan voltan yang disediakan oleh pembahagi voltan sebagai rujukan dan tetapkan pada 2.5v. Input diberikan pada pin A0 arduino. Saya kemudian memprogram arduino untuk memeriksa kapan voltan berada pada tahap rujukan yang saya mengukur dan menamakannya awal dan kemudian mengukur selang waktu antara voltan rujukan berturut-turut dan kemudian mengira frekuensi. pemboleh ubah digunakan untuk menyimpan amplitud seketika isyarat audio untuk menghilangkan kebisingan yang mempunyai amplitud kurang dari 15 nilai adc atau 0,0733 volt. Had ditetapkan pada frekuensi sehingga nilai ekstrem tidak mengganggu lagu.

Langkah 2: Bahan Diperlukan

Bahan Diperlukan
Bahan Diperlukan
Bahan Diperlukan
Bahan Diperlukan
Bahan Diperlukan
Bahan Diperlukan

1) Arduino Uno atau setaraf

2) Buzzer elektrik piezo pasif atau pembesar suara dengan litar penguat

3) Potongan rintangan tinggi (pastikan arus yang mengalir melaluinya pada 5v mestilah kecil dalam beberapa millamps)

4) wayar pelompat

5) papan roti

6) Soket audio 3.5mm atau mikrofon dengan litar penguat (saya menggunakan telefon bimbit sebagai penguat kerana saya terlalu malas untuk membuatnya)

7) Telefon Android (Untuk memainkan suara)

8) kabel arduino (Untuk memprogramnya)

Langkah 3: Sambungan

Sambungan
Sambungan
Sambungan
Sambungan

1) Pasang trimpot di papan roti dan pasangkannya dan + 5v dari arduino menggunakan wayar jumper.

2) Sambungkan ground jack 3.5mm ke pin trimpot ketiga untuk berfungsi sebagai konfigurasi pembahagi voltan dan saluran ke A0 pin arduino.

3) Sambungkan ground buzzer ke arduino ground dan beri isyarat ke pin 13 dari arduino.

Langkah 4: Kod Arduino

Kod Arduino
Kod Arduino

Inilah kod lengkapnya

Saya telah mengulas beberapa penyataan cetakan bersiri yang digunakan untuk ujian

uint64_t curtime = 0, ltime = 0; uint32_t freq = 0; uint16_t permulaan, val, del = 0; bool terakhir, curr; batal persediaan () {// letakkan kod persediaan anda di sini, untuk dijalankan sekali: tunda (1000); /*Serial.begin(115200); kelewatan (1000); Serial.println ("sistem dimulakan"); * / awal = analogRead (A0); jika (analogRead (A0)

gelung void () {// letakkan kod utama anda di sini, untuk dijalankan berulang kali: val = analogRead (A0); jika (val> = awal) curr = 1; curr lain = 0; del = (int) val- (int) awal; jika (terakhir == 0 && curr == 1) {curtime = mikro (); freq = 1000000 / (2 * (curtime-ltime)); /*Serial.print(freq, DEC); Serial.print ("turun"); Nada bersiri.println (del); * / if (freq> 50 && freq15) (13, freq, 500); kelewatan (100); ltime = mikro (); terakhir = 1; }

Langkah 5: Kuasa !

Sambungkan telefon anda untuk memainkan muzik dan jika anda mahu menyanyi maka anda boleh menggunakan semua aplikasi alat yang boleh dimuat turun di play store. Berikut adalah pautan

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

Selepas memuat turun, buka pilihan mike dan nyanyikan!

Inilah cara ia berfungsi!

Disyorkan: