coseru.id - Coding asik & Seru

🔍 Cari Materi & Kelas

Elektronika Tingkat: Pemula 4 x dilihat

Piano Mini Arduino dengan Empat Tombol dan Buzzer

Piano Mini Arduino dengan Empat Tombol dan Buzzer

Ringkasan Proyek

Proyek ini membuat piano elektronik sederhana menggunakan Arduino UNO, empat tombol, dan sebuah buzzer. Setiap tombol menghasilkan nada musik yang berbeda ketika ditekan, sedangkan satu tombol tambahan pada kode dapat digunakan untuk memainkan melodi yang sudah diprogram. Proyek ini cocok untuk mengenalkan hubungan antara input tombol, frekuensi suara, dan pemrograman Arduino.

Bahan & Komponen

Daftar perangkat keras, modul, dan tools yang dibutuhkan untuk merakit proyek ini.

Daftar Komponen & Perangkat Keras

  • 1x Arduino UNO (Mikrokontroler yang membaca tombol dan menghasilkan nada melalui buzzer)
  • 4x Tactile Switch / Push Button (Tombol untuk memainkan empat nada berbeda)
  • 1x Buzzer (Menghasilkan suara berdasarkan frekuensi nada yang dikirim Arduino; gunakan buzzer pasif atau piezo yang mendukung fungsi tone())
  • 1x LED bawaan Arduino pada pin 13 (Indikator saat tombol ditekan; tidak memerlukan LED eksternal jika menggunakan LED onboard)
  • 1x Breadboard 170-pin (Tempat memasang tombol dan menyusun rangkaian)
  • 1x set kabel jumper (Menghubungkan tombol, buzzer, dan Arduino)

Perangkat Lunak

  • Arduino IDE (Menulis, mengedit, dan mengunggah program ke Arduino UNO)
  • File pitches.h (File header berisi definisi frekuensi nada musik, seperti NOTE_C4, NOTE_A4, dan NOTE_C5; dibuat sendiri sesuai petunjuk proyek)

Catatan komponen: Daftar komponen Hackster mencantumkan empat tactile switch. Namun, kode juga mendefinisikan tombol tambahan buttonSong pada pin 8 untuk memainkan melodi yang telah diprogram. Jika ingin menggunakan fitur tersebut, siapkan satu tombol tambahan. Jenis buzzer tidak dijelaskan secara spesifik pada daftar komponen, tetapi fungsi tone() memerlukan buzzer pasif atau piezo yang dapat menghasilkan nada berdasarkan frekuensi.

Langkah Pembuatan

Khusus Member

Panduan perakitan tahap demi tahap dan catatan proses pengerjaan.

Proyek Arduino Piano ini membuat alat musik elektronik sederhana dengan empat tombol nada. Ketika salah satu tombol ditekan, Arduino mengirimkan frekuensi tertentu ke buzzer sehingga buzzer menghasilkan nada musik. LED pada pin 13 juga menyala sebagai indikator bahwa tombol sedang digunakan. Kode menyediakan fitur tambahan untuk memainkan melodi secara otomatis melalui tombol kelima.

\"PianoTampilan utama proyek Arduino Piano dari stannano di Hackster.io.

Langkah 1: Siapkan Komponen

Siapkan Arduino UNO, empat tactile switch, satu buzzer, breadboard, dan kabel jumper. Siapkan satu tombol tambahan jika ingin menggunakan fitur pemutaran melodi otomatis yang terdapat dalam kode. Arduino UNO akan menjadi pengendali utama untuk membaca tombol dan mengatur frekuensi suara buzzer.

Langkah 2: Pasang Empat Tombol pada Breadboard

Pasang empat tactile switch pada breadboard. Setiap tombol berfungsi sebagai satu tombol nada. Hubungkan masing-masing tombol ke pin digital Arduino sesuai pemetaan kode: tombol C ke pin 6, tombol A# ke pin 4, tombol A ke pin 3, dan tombol G ke pin 2. Hubungkan sisi tombol lainnya ke GND. Program menggunakan konfigurasi INPUT dengan mengaktifkan pull-up internal melalui digitalWrite(pin, HIGH), sehingga tombol akan terbaca LOW ketika ditekan.

Langkah 3: Hubungkan Buzzer

Hubungkan terminal positif buzzer ke pin digital 11 Arduino dan terminal negatif buzzer ke GND. Program menggunakan fungsi tone() untuk menghasilkan frekuensi suara yang sesuai dengan nada yang dipilih. Gunakan buzzer pasif atau piezo yang mendukung perubahan frekuensi, bukan buzzer aktif yang hanya menghasilkan satu jenis bunyi ketika diberi tegangan.

Langkah 4: Gunakan LED sebagai Indikator

Program menggunakan pin 13 sebagai LED indikator. Pada Arduino UNO, pin ini umumnya terhubung dengan LED bawaan board, sehingga tidak harus memasang LED eksternal. LED akan menyala ketika salah satu tombol nada ditekan dan mati setelah tidak ada tombol yang sedang dimainkan.

Langkah 5: Hubungkan Tombol Melodi (Opsional)

Untuk memainkan melodi yang telah diprogram, hubungkan tombol tambahan ke pin digital 8 dan GND. Kode menamai pin ini buttonSong. Ketika tombol tersebut aktif, Arduino memainkan rangkaian nada yang tersimpan pada array melody[] dengan durasi yang diatur dalam array noteDurations[].

Langkah 6: Buat File pitches.h

Buka Arduino IDE dan buat tab atau file baru melalui menu Sketch atau shortcut Ctrl+Shift+N. Simpan file header dengan nama pitches.h. Salin definisi frekuensi nada dari bagian kode di bawah ke dalam file tersebut. Perhatikan bahwa kode utama menggunakan #include \"pitches.h\", sehingga nama file harus sama persis. Pada narasi asli terdapat salah ketik pithes.h; gunakan pitches.h agar sesuai dengan perintah include.

Langkah 7: Masukkan Program Utama

Buat sketch Arduino utama dan masukkan kode program. Pastikan file pitches.h berada dalam sketch yang sama. Program menetapkan buzzer pada pin 11, LED pada pin 13, empat tombol nada pada pin 2, 3, 4, dan 6, serta tombol melodi pada pin 8. Setiap tombol memiliki frekuensi nada yang berbeda.

Langkah 8: Unggah Program ke Arduino UNO

Hubungkan Arduino UNO ke komputer menggunakan kabel USB. Buka Arduino IDE, pilih board Arduino UNO, kemudian pilih port yang sesuai. Pastikan file pitches.h telah tersimpan bersama sketch. Klik tombol Upload untuk mengirimkan program ke board.

Langkah 9: Mainkan Nada Piano

Tekan tombol nada satu per satu. Tombol pada pin 6 menghasilkan nada C5, pin 4 menghasilkan A#4, pin 3 menghasilkan A4, dan pin 2 menghasilkan G4. Buzzer akan mengeluarkan suara selama tombol ditekan. LED pada pin 13 akan menyala sebagai indikator aktivitas.

Langkah 10: Coba Melodi Otomatis

Jika tombol tambahan pada pin 8 telah dipasang, tekan tombol tersebut untuk memainkan melodi yang sudah disimpan dalam array melody[]. Program membaca frekuensi setiap nada dan menghitung durasinya berdasarkan nilai pada array noteDurations[]. Setelah setiap nada dimainkan, program memberikan jeda singkat sebelum memainkan nada berikutnya.

Catatan teknis: Kode sumber memiliki beberapa hal yang perlu diperhatikan sebelum digunakan. Pertama, kode utama mendefinisikan tombol melodi pada pin 8, meskipun daftar komponen hanya mencantumkan empat tombol. Kedua, array noteDurations[] dideklarasikan sebagai int, padahal beberapa nilai yang diberikan berupa pecahan seperti 4.5 dan 2.25. Nilai pecahan tersebut akan dipotong ketika disimpan sebagai int. Jika ingin mempertahankan nilai pecahan, gunakan tipe float dan sesuaikan perhitungan durasi. Ketiga, konfigurasi INPUT dan digitalWrite(HIGH) mengandalkan pull-up internal Arduino; tombol harus terhubung ke GND agar pembacaan aktif LOW.

🔒
Akses Gratis Khusus Member

Buka Seluruh Panduan, Skema & Source Code

Dapatkan akses penuh ke langkah perakitan detail, diagram sirkuit lengkap, dan source code siap pakai. Gratis selamanya!

✓ Akses Gratis Selamanya
✓ Copy-Paste Source Code
✓ Kembali Otomatis ke Proyek

Petualangan Belajar di coseru

💡 Saksikan keseruan anak-anak belajar merakit robot dan coding! Daftar Kelas Uji Coba →