Buzzer adalah salah satu komponen elektronika yang dapat mengeluarkan bunyi/suara. Suara yang dihasilkan tergolong sederhana yakni monofonik, beda dengan speaker yang dapat mengeluarkan suara yang lebih variatif (polifonik). Buzzer terbuat dari rangkaian piezo electric, yang bergetar dan menimbulkan suara ketika diberi tegangan DC pada kedua kutubnya. Dengan mengatur frekuensi tegangan DC yang dimasukkan ke piezo electric, Anda akan mendapatkan nada bunyi yang berbeda. Demikian kurang lebih prinsip kerja buzzer. [AdSense-A]
Sebuah buzzer dapat langsung dikoneksikan ke Arduino tergantung impedansinya. Jika impedansi kurang dari 10 ohm Anda dapat langsung menghubungkannya ke Arduino. Untuk impedansi yang lebih besar Anda akan membutuhkan driver untuk ‘mengangkat’ arus yang masuk ke buzzer. Cara termudah dan sederhana membuat driver untuk buzzer adalah menggunakan rangkaian transistor. Berikut ini adalah gambar rangkaiannya.
Komponen yang dibutuhkan :
– transistor tipe NPN seri BC547
– resistor 100 ohm
– buzzer
[alert-warning]Catatan : buzzer memiliki polaritas kutub (‘+’ dan ‘-‘), jadi jangan sampai kebalik ya…..[/alert-warning]
Gimana? Sederhana sekali bukan? Prinsip kerja rangkaian driver di atas adalah dengan memanfaatkan transistor sebagai penguat arus dan saklar elektronik. Jika pin Arduino yang terhubung dengan kaki basis (B) transistor BC547 mengeluarkan tegangan logika ‘1’ alias tegangan 5V, maka tegangan ini akan membuat transistor dalam keadaan saturasi, sehingga arus dapat mengalir dari kaki collector (C) ke kaki emitor (E) (Lihatlah gambar di bawah untuk konfigurasi kaki transistor BC547). Dengan demikian buzzer akan mendapat tegangan positif dan negatif sehingga buzzer akan hidup dan mengeluarkan bunyi.
Bagaimana jika Arduino mengeluarkan tegangan logika ‘0’ alias tegangan 0V? Pada kondisi ini transistor akan berada pada posisi OFF karena tegangan basis-emitor kurang dari 0,7V. Dengan demikian tidak ada arus yang mengalir dari kaki collector ke emitor, sehingga buzzer dalam keadaan OFF pula, dan tidak akan mengeluarkan bunyi.
Nah, jika Anda mengatur frekuensi ON-OFF tegangan yang masuk ke kaki basis transistor, maka Anda akan mendapatkan nada buzzer yang berbeda pada setiap frekuensi yang berbeda. Bunyi dengan nada yang unik akan terdengar lebih menarik dari sekedar ‘beep’ – ‘beep’ saja.
Sekarang mari kita coba mengujinya menggunakan Arduino. Untuk mudahnya, silahkan buka contoh program di File-Examples-Digital-toneMelody. Program/sketch ini akan membunyikan buzzer dengan ‘musik’ sederhana dengan nada yang cukup menarik. Untuk rangkaiannya, Anda perlu menghubungkan rangkaian driver (kaki basis transitor) ke pin 8 Arduino (lihat gambar di atas). Kurang lebih penampakan prototipe rangkaiannya adalah sebagai berikut
Upload sketch ke papan Arduino, dan lihatlah hasilnya. Seharusnya sekarang Anda akan mendengar ‘musik’ sederhana dengan nada yang ‘rancakbana’ :). Jika belum, coba Anda reset Arduino dengan menekan tombol reset. Inti dari sketch ‘toneMelody’ di atas terletak pada function ‘tone’ yang mampu mengeluarkan tegangan digital dengan frekuensi tertentu. Function ini terletak pada library ‘pitches.h’. Kapan-kapan akan saya jelaskan lebih detail mengenai tone dan library pitches.h. [AdSense-A]
Untuk buzzer aktif, bisa dibaca cara menanganinya di buzzer active arduino
a Technopreneur – writer – Enthusiastic about learning AI, IoT, Robotics, Raspberry Pi, Arduino, ESP8266, Delphi, Python, Javascript, PHP, etc. Founder of startup Indomaker.com
malam__
mau tanya mas___
misalnya ini ada sebuah componen (comled) di delphi___
trus saya mau hidupkan ledcom itu dengan sensor analog(misalnya sensor piezo)—dari arduino sy kirim perintahnya untuk menyalakan ledcom-nya___tek tek tek sy ketuk sensor maka comled menyala di delphi…
kira2 bisa ngak di lakukan sperti itu…??
makasiii
bisa aja mas
kodingnya kira2 gimana mas..??
dan kita tempatkan di event mana di ledcomnya..??
intinya sama kyk yg lain. Di event OnRxChar, semua data ditampung di sebuah variabel string utk kmd di-copy-kan ke komponen memo. Di memo, khususnya di event onMemoChange di kasih ‘jebakan’ buat nyalain comled-nya
malam mas…
mau tanya,,,
apakah 2 atau lebih sensor analog(piezo elektrik) bisa di baca secara bersamaan oleh arduino..??
kalo memang ndak bisa,,apakah ada solusi yang lain agar bisa membaca sensor analog secara bersamaan,,, mungkin bisa menggunakan ke IC multiplaxer, ttg IC ini saya masih belum terlalu paham,,,,kalo bisa mohon penjelasannya seandainya piezo di hubungkan ke ic multiplaxer
terimakasih
bisa mas, kan pin analog di arduino (uno) ada 6 (A0 – A5)
maksud saya bgini mas,,, kan arduinonya akan membaca nya secara bergantian,,,kalo bersamaan ga bisa kalo analog,,,, kira2 kalo pake IC multiplexer bisa ngak ya..?
pake IC multiplexer bisa juga, tp multiplexer analog ya, jgn yg digital. Tapi…..daripada pake IC tambahan kenapa ga pake pin analog Arduino aja, kan lebih cepat pembacaannya dan bisa bersamaan juga. Emang mau ngukur berapa sensor sih? Atau real implementasinya seperti apa? Mungkin saya bisa kasih suggestion yg lebih baik
aku mau buat kenong digital mas…
yang pake sytasyzer di komputer,
aku buat perangkat kerasnya pake arduino mega2560, dan pake sensor piezo elektrik sebagai media input tabuhan kenongnya karena akan mendeteksi ketukan, sementara yang jadi masalahnya aku belum bisa caranya agar 2 sensor piezo bisa bekerja (mengirim data ke arduino secara bersamaan dan real time) soalnya dalam memainkan alat musik kenong itu kan kadang2 2 jenis nada di mainkan secara bersamaan,,,,,mungkin mas bisa bantu saya,,,,
bisa aja mas, masukkan output piezo electric ke port analog arduino yg berbeda, misal A0 dan A1
Mas, aku coba rangkaian diatas dihubungkan ke output sensor PIR, tapi buzzer kog gak bunyi ya? Apakah inputnya harus berupa pulsa?
yg pertama coba dicek rangkaian hardware-nya. Caranya, input (basis) transistor diberi tegangan 5V dari board arduino, kalo buzzer bisa bunyi berarti rangkaian hardware udah benar.
Yg kedua, kalo langkah pertamasudah dilakukan, coba bikin sketch sederhana buat ngeluarin logic 1 (HIGH) ke pin tertentu (contoh di atas pin 8). Harusnya kalo langkah pertama sudah benar dilakukan, maka buzzer bisa bunyi.
Input buzzer tidak harus pulsa (bisa pulsa bisa tidak), tergantung kebutuhan. Utk case pertanyaannya, coba dicek output sensor PIR-nya, apakah ada tegangan 5V saat aktif? kalo ada coba resistor di basis dikecilin, siapa tahu ada tegangan tapi arusnya kecil
mlm mas, mau tanya untuk perhitungan nilai komponennya seperti apa ya mas ? bisa dapat nilai resistornya 100 Ohm.
resistor disini untuk membatasi arus yang masuk ke basis transistor supaya tidak cepat rusak. Mengapa 100 ohm? dilihat dulu di datasheet maks kebutuhan arus utk menghidupkan BC547 berapa (100 mA) dan tegangan output arduino berapa (5V). Sesuai rumus R=V/I = 5/0,1 = 50 ohm. Nilai 50 ohm adl nilai maksimumnya. Dan sebaiknya jangan dipaksakan pada kondisi maksimum agar transistor tidak cepat rusak, maka kita pakai nilai resistor diatas 50 ohm yakni 100 ohm (yang tersedia banyak di pasaran)
oke mas, terimakasih banyak untuk penjelasannya
Mas, apa beda antara komponen buzzer aktif dan buzzer pasif ? Apakah buzzer aktif sudah termasuk penguatnya, klo buzzer pasif belum ada penguatnya gitu ? Tks
iya mas, kurang lebihnya begitu
mas, mau minta saran dong, saya mau buat yang mencegah barang hilang gitu, misalkan dompet terjatuh kemudian jarak saya agak jauh dari lokasi dompet yang jatuh kemudian akan mengeluarkan suara gitu, itu yang diperlukan sensor atau apa ya mas? makasih sebelumnya
yg mengeuarkan suara itu dompetnya atau alat yg dekat dg kita (misal handphone atau suatu alat)?
Trmksh sangat membantu
kalo mau ngetes buzzernya melalui esp8266 gimana mas?