21. Eksperimen dengan Suara

21. Eksperimen dengan Suara

Percobaan dan eksperimen dalam pembelajaran dengan Arduino Ardublock sangat penting untuk mengetahui lebih details dan jelas dalam penggunaan ardublock.

Bab ini membahas berbagai komponen yang dapat digunakan untuk menghasilkan suara, yang mencakup piezo disk, buzzer, dan speaker melalui pemrograman arduino dengan menggunakan ardublock.

21.1 Penggunaan Buzzer untuk Menghasilkan Suara 

Buzzer adalah kotnponen berukuran kecil yang digunakan untuk mengeluarkan suara. Gambar 21.1 berikut ini akan memperlihatkan contohnya. Adapun pemasangannya ditunjukkan pada Gambar 21.2.

Gambar 21.1 Buzzer

Gambar 21.2 Rangkaian untuk menguji buzzer

Untuk menangani suara, ArduBlock menyediakan tiga blok, yang dicantumkan pada Tabel 21.1 berikut ini. Ketiga blok tersebut terletak di laci

 

Tabel 21.1 Blok-blok untuk menangani suara

Blok merupakan alternatif untuk dan blok

sebagai alternatif untuk

Untuk mempraktikkan penggunaan blok tone yang hanya melibatkan frekuensi silakan untuk membuat proyek baru bernama tone . abp. Lalu, susunlah blokseperti terlihat pada Gambar 21.3.

Gambar 21.3 Blok untuk percobaan menghasilkan suara

Pada contoh ini,

berfungsi untuk menghasilkan suara pada pin 8 dengan frekuensi sebesar 440 Hertz

(440 siklus per detik). Suara ini dipertahankan selama 100 milidetik melalui:

Adapun yang menghentikan suara adalah blok berikut:

Terakhir, blok

digunakan untuk tidak melakukan apapun selama 100 detik. Pada saat inilah tidak ada bunyi sama sekali.

Adapun untuk mempraktikkan penggunaan blok tone yang juga melibatkan waktu tunda, silakan untuk membuat proyek baru bernama tone2 . abp. Lalu, susunlah blok seperti terlihat pada Gambar 21.4.

Gambar 21.4 Blok penggunaan tone dengan durasi

Secara prinsip, penggunaan blok tone yang menggunakan waktu tunda adalah

seperti berikut:

Dengan demikian, pada contoh pada Gambar 21.4, suara dengan frekuensi 440 dihasilkan selama 100 milidetik dan terdapat keheningan selama 100 milidetik.

Untuk mempraktikkan penggunaan dua nada, silakan untuk membuat proyek baru bernama dua tone . abp. Lalu, susunlah blok seperti terlihat pada Gambar

Gambar 21.5 Blok untuk menghasilkan dua nada

 

21.2 Penggunaan Speaker 

Untuk mendapatkan kualitas suara yang lebih baik, speaker perlu digunakan, Gambar 21.6 memperlihatkan contoh kotnponen ini, sedangkan Gambar 21.7 akan memperlihatkan contoh rangkaian yang melibatkan speaker. Potensiometer 1K digunakan untuk mengatur volume suara.

Gambar 21.6 Speaker

Gambar 21.7 Rangkaian untuk menguji speaker

Untuk mempraktikkannya, silakan untuk membuat proyek baru bernama speaker.abp. Lalu, susunlah blok seperti terlihat pada Gambar 21.8. Blok tersebut digunakan untuk memainkan berbagai nada.

Gambar 21.8 Blok untuk percobaan speaker

21.3 Penggunaan Piezo Disk 

Piezo disk adalah komponen penghasil suara yang paling sederhana. Komponen ini bekerja atas dasar tekanan pada lempengan yang diubah menjadi isyarat listrik dan menghasilkan getaran atau suara. Gambar 21.9 menunjukkan contoh komponen ini.

 

Gambar 21.9 Piezo disk

Dalam praktik, piezo disk kadang kala dijual dalam kemasan modul. Gambar 21.10 memperlihatkan contoh modul piezo disk.

Gambar 21.10 Modul Piezo disk

Untuk menguji piezo disk, susunlah rangkaian seperti yang ditunjukkan pada Gambar 2.11. Jika modul piezo disk digunakan, buat hubungan seperti berikut:

  • pin – dihubungkan ke pin GND Arduino;
  • pin + dihubungkan ke pin 5V Arduino;
  • pin S dihubungkan ke pin 3 Arduino.

 

Gambar 2.11 Rangkaian untuk percobaan piezo disk

Blok yang digunakan pada buzzer dapat digunakan untuk menguji piezo disk. jika rangkaian yang disusun sudah benar, akan terdengar suara lemah.

Selain berfungsi sebagai peranti keluaran, piezo disk dapat digunakan sebagai sensor pendeteksi ketukan. Sebagai contoh, Anda bisa menguji untuk kepentingan ini dengan menggunakan rangkaian pada Gambar 21.12.

 

Gambar 21.12 Rangkaian untuk menguji piezo disk sebagai sensor

Untuk mengujinya, silakan untuk membuat proyek baru bernama ketuk.abp. Lalu, susunlah blok seperti terlihat pada Gambar 21.13.

Gambar 21.13 Blok untuk menguji piezo disk sebagai sensor

pada proyek ini, blok berikut digunakan untuk menyimpan nilai di pin analog AO, yang terhubung ke piezo disk, ke variabel bernama nilaiAnalog:

Selanjutnya, isi variabel tersebut dikirimkan ke Serial Monitor. Lalu,

ditujukan untuk menyalakan LED yang terhubung ke pin 1 selama 2 detik ketika isi nilaiAnalog melebihi atau sama dengan nilai 100. Pada keadaan ini, nilai 100 berkedudukan sebagai nilai ambang yang akan menyalakan LED.

Gambar 21.14 memperlihatkan contoh peletakan piezo disk pada bahan anyaman kawat, sedangkan Gambar 21.15 menunjukkan contoh hasil pengujiannya.

 

Gambar 21.14 Contoh implementasi untuk pengujian piezo disk, yang diletakkan di atas bahan yang mudah bergetar

Gambar 21.15 Hasil pengujian piezo disk sebagai sensor

 

21.4 Sensor Suara

Sensor suara digunakan untuk mendeteksi keberadaan suara, Contoh

modul sensor ditunjukkan pada Gambar 21.16. Modul ini mengandung empat

pin, dengan fungsi masing-łnasing adalah seperti berikut:

  • VCC: Pin ini perlu dihubungkan ke surnber tegangan 5V (Pin 5V Arduino).
  • GND: Pin ini dihubungkan ke ground.
  • A0: Pin ini łnenghasilkan nilai analog antara 0 dan 1023. Itulah sebabnya pin ini perlu dihubungkan ke pin analog Arduino.
  • D0: Pin łnengeluarkan nilai digital 0 atau le Itulah sebabnya pin ini perlu dihubungkan ke pin digital Arduino.

Gambar 21.16 Modul sensor suara

Gambar 21.17 memperlihatkan rangkaian yang digunakan untuk melakukan percobaan sensor suara. Hubungan terpenting yang perlu diperhatikan:

  • pin GND milik modul sensor dihubungkan ke pin GND Arduino;
  • pin VCC milik modul sensor dihubungkan ke pin 5V Arduino;
  • pin A0 milik modul sensor dihubungkan ke pin AO Arduino;
  • pin D0 milik modul sensor tidak dihubungkan ke mana-mana.

Gambar 21.17 Rangkaian untuk percobaan dengan modul sensor suara

ArduBlock menyediakan blok berikut untuk menangani sensor suara:

Modul ini terdapat di laci

Untuk mengujinya, silakan untuk membuat proyek baru bernama suara.abp. Lalu, susunlah blok seperti terlihat pada Gambar 21.18.

Gambar 21.18 Blok untuk pengujian sensor suara

Gambar 21.19 menunjukkan hasil percobaan dengan sensor suara. Gambar bagian kiri memperlihatkan keadaan ketika tidak ada suara, sedangkan bagian kanan menunjukkan keadaan ketika mikrofon menangkap suara.

 

Gambar 21.19 Contoh hasil pengujian sensor suara

Di laci terdapat pula blok yang terkait dengan penanganan suara, yaitu berupa:

Blok ini menghasilkan nilai terbesar yang didapat selama 20 milidetik di pin yang dipantau. Nilai terbesar inilah yang dianggap sebagai volume suara. Untuk menguji blok ini, silakan untuk membuat proyek baru bernama volsuara . abp. Lalu, susunlah blok seperti terlihat pada Gambar 21.20.

Gambar 21.20 Blok untuk pengujian Analog Sound Volume Sensor

Gambar 21.21 menunjukkan contoh hasil pengujian dengan mengatakan sesuatu di depan mikrofon.

 

Gambar 21.21 Contoh hasil pengujian Analog Sound Volume Sensor

21.5 Penggunaan Tepuk Tangan sebagai Perintah 

Tepuk tangan dapat digunakan sebagai perintah? Ya, kenapa tidak? Dengan bertepuk tangan atau mungkin dengan berkata tertentu secara acak, Arduino akan menganggap sebagai suatu perintah. Untuk mempraktikkan hal ini, rangkaian pada Gambar 21.22 perlu disusun terlebih dahulu.

Gambar 21.22 Rangkaian untuk membuat tepuk tangan untuk menghidupkan atau mematikan LED

 

Untuk mewujudkannya, silakan untuk membuat proyek baru bernama tepuk . abp. Lalu, susunlah blok seperti terlihat pada Gambar 21.23.

Gambar 21.23 Blok untuk pengujian tepuk tangan

Pada proyek ini, variabel jumSampel digunakan untuk menentukan jumlah nilai di pin analog yang hendak direrata. Untuk menghitung nilai rerata isyarat, mula-mula variabel totallsyarat diisi dengan 0. Kemudian, melalui blok repeat, nilai total untuk 128 nilai analog diperoleh. Di dalam repeat,

digunakan untuk menghitung tinggi isyarat terhadap titik tengah (nilai 514). Fungsi abs digunakan karena tinggi isyarat bisa negatif terhadap titik tengah. Sebagaimana diketahui, isyarat suara itu merupakan perpaduan sejumlah gelombang sinus.

 

Jika angka 514 digunaan, maka anda perlu mengunggah proyek suara.abp terlebih dahulu. Lalu, atur skrup pemutar pada modul suara, sehingga angka 514 atau sekitar tersebut muncul di serial monitor Ketika tidak ada suara.

Selanjutnya, nilai rerata isyarat dihitung melalui:

Untuk memantau nilai rerata isyarat di Serial Monitor, perintah berikut diperlukan:

Blok berikut digunakan untuk menentukan LED akan dihidupkan atau tidak:

Ambang yang digunakan untuk menyalakan atau mematikan LED adalah nilai rerata isyarat sebesar 15. Di dalam if/else, delay digunakan untuk menghilangkan efek tepukan yang panjang. Gambar 21.24 memperlihatkan nilai rerata isyarat pada keadaan tidak ada tepukan (gambar sebelah kiri). Gambar sebelah kanan menunjukkan nilai rerata isyarat ketika sebuah tepuk tangan diberikan. Untuk mengatur kepekaan terhadap tepuk tangan, Anda bisa mengubah nilai 15 ini menjadi lebih besar atau sedikit lebih kecil.

 

Gambar 21.24 Nilai di Serial Monitor untuk memantau nilai rerata isyarat

21.6 Perekam Suara 

Jika kita ingin merekam suara misalnya untuk sapaan seperti “Assalamualaikum. selamat datang!” atau sekadar ” Halo. Apa kabar?”. Anda bisa memanfaatkan modul perekam suara ISD1820. Contoh modul ini ditunjukkan pada Gambar 21.25.

Gambar 21.25 Modul perekam suara ISD1820

Modul ini mempunyai enam pin. Fungsi masing-masing seperti berikut:

  • VCC: Pin ini dapat dihubungkan ke sumber tegangan 3V hingga 5V.
  • GND: Pin ini dihubungkan ke ground.
  • FT (Feed Through);
  • P-L (PLAYL): Jika pin ini bernilai HIGH, suara akan dimainkan sampai pin bernilai LOW.
  • P-E (PLAYE): Jika pin ini berubah dari LOW ke HIGH, suara akan dimainkan dari awal hingga akhir.
  • REC: Suara akan direkam ketika pin ini bernilai HIGH.

 

21.6.1 Pengujian Perekam Suara Tanpa Arduino 

Pengujian terhadap modul ISD1820 dapat dilakukan tanpa melibatkan ArduBlock Pertama-tama, hubungkan pin VCC ke pin 5V Arduino dan pin GND ke salah satu Pin GND milik Arduino. Kemudian, prosedur untuk merekam suara dilakukan dengan cara seperti berikut:

  1. Tekan tombol REC dan tahan.
  2. Rekam suara Anda di depan mikrofon.
  3. Lepaskan tombol REC.

Untuk memainkan suara, tekan tombol PLAYE sekali. Dengan cara seperti ini, suara yang terekam akan dimainkan dari awal hingga akhir. Kalau hanya ingin mendengarkan suara ketika tombol ditekan, tekanlah tombol PLAYL.

21.6.2 Pengujian Perekam Suara dengan Arduino 

Untuk melakukan pengujian dengan ArduBlock, silakan untuk menyusun rangkaian dengan mengikuti petunjuk dalam Tabel 21.1. Contoh hasil penyusunan rangkaian ditunjukkan seperti terlihat pada Gambar 21.25.

Tabel 21.1 Penyusunan rangkaian untuk percobaan ISD1820

Gambar 21.26 Contoh penyusunan rangkaian untuk menguji modul ISD1820

Selanjutnya, proyek baru bernama i sd . abp perlu dibuat. Blok yang perlu disusun ditunjukkan dalam Gambar 21.27 dan Gambar 21.28.

 

Gambar 21.27 Blok untuk pengujian modül ISD1820 (bagian pertama)

 

Gambar 21.28 Blok untuk pengujian modul ISD1820 (bagian kedua)

Proyek isd melibatkan empat subrutin, Subrutin rekamSuara menangani perekaman suara, Perekaman dilakukan selama 10 detik. Perekaman diawali oleh perintah:

 

Sebagaimana telah disinggung di depan, modul ISD1820 mempunyai kemampuan menyimpan suara hingga 10 detik. Nah, hal ini dituangkan dengan menyertakan blok berikut:

Setelah itu, pin 2 harus dibuat menjadi LOW. Hal ini dilakukan oleh:

Subrutin play e digunakan untuk memainkan suara yang terekam dari awal hingga akhir. Untuk memulai suara dimainkan, pin yang terhubung ke P-E perlu dibuat menjadi HIGH. Hal ini dilakukan oleh:

Keadaan HIGH ini cukup dipertahankan selama 500 milidetik. Oleh karena itu, terdapat dua perintah berikut:

 

Namun, untuk mempertahankan keadaan hingga suara berakhir, blok berikut diberikan

Subrutin play 1 digunakan untuk memainkan suara selama 5 detik. Hal ini dilakukan dengan mula-mula membuat pin yang terhubung ke P-L dibuat menjadi HIGH. Perintah yang digunakan untuk keperluan ini:

Penentuan 5 detik dilakukan oleh:

Untuk menghentikan suara dimainkan, pin yang terhubung ke P-L dibuat menjadi LOW. Hal ini djlakukan oleh:

 subrutin ft digunakan untuk membuat suara eksternal yang diambil dari mikrofon diperdengarkan. Pada contoh ini, suara akan diperdengarkan selama 10 detik. Itulah sebabnya, deretan blok yang digunakan adalah seperti berikut:

 

Perintah untuk merekam suara hendaknya tidak diletakkan di Slot loop. Sebab, perekaman pada modul ini mempunyai batas usia, yaitu sekitar 100.000 kali.

Contoh pengujian modul ini ditunjukkan pada Gambar 21.29. Mula-mula, aktifkan serial Monitor dari keadaan tertutup. Kemudian, saat muncul pesan “Yak, mulai berbicara selama 10 detik!”, berbicaralah apa saja selama 10 detik. Suara Anda akan direkam. Selanjutnya, suara Anda akan diputar ulang. Terakhir, efek “feed through” diperdengarkan. Anda akan mendengar suara berderau selama 10 detik.

Gambar 21.29 Hasil pengujian modul ISD1820

21.7 Penyapa Otomatis 

Suara yang terekam pada peranti perekam suara di depan dapat dimanfaatkan untuk memberikan sapaan ketika sesuatu (tidak selalu orang) yang berada di depan pada jarak yang dekat terhadap sensor jarak ultrasonik. Untuk mewujudkan hal ini, Anda perlu menyusun rangkaian seperti berikut:

  • pin P-L modul ISD1820 dihubungkan ke pin 3 Arduino;
  • pin VCC modul ISDI 820 (lihubungkan ke pin 5V Arduino;
  • pin GND modul ISD1820 dihubungkan ke pin GND Arduino;
  • pin VCC modul ultrasonik dihubungkan kc pin 5V Arduino;
  • pin GND modul ultrasonik dihubungkan ke pin GND Arduino;
  • pin Trig modul ultrasonik dihubungkan ke pin 8 Arduino;
  • pin Echo modul ultrasonik dihubungkan ke pin 9 Arduino.

Untuk mempraktikkan penggunaan ketiga blok yang dibahas di depan, silakan untuk membuat proyek baru bernama sapaan . abp. Lalu, susunlah blok seperti terllhat Pada Gambar 21.30.

Gambar 21.30 Blok untuk menangani sapaan otomatis ketika sesuatu berada di depan sensor ultrasonik

Pada proyek ini, blok

digunakan untuk mendapatkan jarak objek yang berada di depan sensor ultrasonik, yang dihubungkan ke pin 8(Trig) dan 9(Echo).Hasilnya disimpan di variabel jarak.

Untuk memudahkan dalam melacak kalau rangkaian tidak berfungsi sebagaimana mestinya di Serial Monitor,blok berikut disertakan:

Blok ini digunakan untuk menampilkan isi variabel jarak di Serial Monitor. Blok berikut digunakan untuk menangani pemutaran suara di modul ISD1820:

Pemutaran suara hanya dilakukan jika nilai jarak lebih dari 0 dan kurang dari atau sama dengan 25cm.Pada blok di atas, setelah suara dimainkan, blok berikut akan membuat pemeriksaan terhadap objek akan dilakukan setelah 60 detik berikutnya:

 

Tinggalkan Komentar

Alamat email Anda tidak akan dipublikasikan. Ruas yang wajib ditandai *

Situs ini menggunakan Akismet untuk mengurangi spam. Pelajari bagaimana data komentar Anda diproses.