Oleh Mohd Qhairul Bakri dalam Tutorial Arduino
Tahap Kesukaran : Baru Mula Belajar

>> Pengenalan <<

Pembunyi isyarat pasif merupakan sebuah komponen elektronik yang mampu menghasilkan bunyi dan note melodi. Di dalam komponen ini terdapat sekeping seramik kecil yang diperbuat daripada material piezoelektrik yang akan bergetar jika diberikan arus elektrik. Getaran itu seterusnya akan menghasilkan bunyi. Selain itu, terdapat dua jenis pembunyi isyarat iaitu pasif dan aktif. Namun, tutorial kali ini akan memberi tumpuan kepada pembunyi isyarat pasif.

Pasif Aktif
Mempunyai kepingan piezoelektrik sahaja Mempunyai kepingan piezoelektrik dan litar komponen aktif
memerlukan isyarat ulang alik (square wave) Boleh dibunyikan dengan hanya memberikan arus terus

>> APLIKASI PEMBUNYI ISYARAT PASIF <<

Memandangkan kelebihannya dalam menghasilkan variasi bunyi, pembunyi isyarat pasif biasanya digunakan di dalam peralatan elektronik seperti permainan kanak-kanak, sistem penggera, sistem tindak balas haptic (bunyi), dan sistem notifikasi. Selain itu, komponen ini sangat popular dalam projek-projek pelajar yang melibatkan tajuk ‘smart home’ atau ‘smart security’.

>> KOMPONEN YANG ANDA PERLUKAN <<

Tutorial ini akan mengajar anda cara-cara menggunakan pembunyi isyarat pasif dengan papan Arduino Uno. Antara komponen yang anda perlukan ialah :

>> Sambungan litar <<

>> kod arduino 1 <<

Kod Pertama: Asas fungsi tone() dalam menghasilkan melodi yang berbeza-beza.

//Developer: Mohd Qhairul Bakri
//Date: 21 Feb 2019

int buzzer = 13;

void setup() 
{
  pinMode(buzzer, OUTPUT);
}

void loop() 
{
  tone(buzzer, 1000); // tone(pin buzzer, frekuensi)
  delay(1500);
  tone(buzzer, 2000);
  delay(1500);
  tone(buzzer, 3000);
  delay(1500);
  tone(buzzer, 4000);
  delay(1500);
  tone(buzzer, 5000);
  delay(1500);
}

Setelah memuat naik kod di atas , pembunyi isyarat pasif akan menghasilkan beberapa jenis bunyi yang berbeza frekuensi.

>> Kod arduino 2 <<

Kod Kedua: Muzik daripada kombinasi melodi.

// Kod daripada: https://gist.github.com/nicksort/4736535

const int c = 261; //frekuensi bagi setiap note muzik
const int d = 294;
const int e = 329;
const int f = 349;
const int g = 391;
const int gS = 415;
const int a = 440;
const int aS = 455;
const int b = 466;
const int cH = 523;
const int cSH = 554;
const int dH = 587;
const int dSH = 622;
const int eH = 659;
const int fH = 698;
const int fSH = 740;
const int gH = 784;
const int gSH = 830;
const int aH = 880;
 
const int buzzerPin = 13;
 
int counter = 0;
 
void setup()
{
  pinMode(buzzerPin, OUTPUT);
}
 
void loop()
{
 
  //Play first section
  firstSection();
 
  //Play second section
  secondSection();
 
  //Variant 1
  beep(f, 250);  
  beep(gS, 500);  
  beep(f, 350);  
  beep(a, 125);
  beep(cH, 500);
  beep(a, 375);  
  beep(cH, 125);
  beep(eH, 650);
 
  delay(500);
//Repeat second section
  secondSection();
 
  //Variant 2
  beep(f, 250);  
  beep(gS, 500);  
  beep(f, 375);  
  beep(cH, 125);
  beep(a, 500);  
  beep(f, 375);  
  beep(cH, 125);
  beep(a, 650);  
 
  delay(650);
}
 
void beep(int note, int duration)
{
  //Play tone on buzzerPin
  tone(buzzerPin, note, duration);
  delay(duration);
  //Stop tone on buzzerPin
  noTone(buzzerPin);
  delay(50);
  counter++;
}
 
void firstSection()
{
  beep(a, 500);
  beep(a, 500);    
  beep(a, 500);
  beep(f, 350);
  beep(cH, 150);  
  beep(a, 500);
  beep(f, 350);
  beep(cH, 150);
  beep(a, 650);
 
  delay(500);
 
  beep(eH, 500);
  beep(eH, 500);
  beep(eH, 500);  
  beep(fH, 350);
  beep(cH, 150);
  beep(gS, 500);
  beep(f, 350);
  beep(cH, 150);
  beep(a, 650);
 
  delay(500);
}
 
void secondSection()
{
  beep(aH, 500);
  beep(a, 300);
  beep(a, 150);
  beep(aH, 500);
  beep(gSH, 325);
  beep(gH, 175);
  beep(fSH, 125);
  beep(fH, 125);    
  beep(fSH, 250);
 
  delay(325);
 
  beep(aS, 250);
  beep(dSH, 500);
  beep(dH, 325);  
  beep(cSH, 175);  
  beep(cH, 125);  
  beep(b, 125);  
  beep(cH, 250);  
 
  delay(350);
}

Kod kedua ini akan memainkan muzik hasil daripada kombinasi note melodi.

>> TAHNIAH, ANDA HEBAT <<

Kini anda telah menyelesaikan tutorial pembunyi isyarat pasif dan berjaya menggunakan komponen ini untuk menghasilkan muzik dengan Arduino Uno.

Baca tutorial lain yang disediakan oleh penulis Mohd Qhairul Bakri di Arduino Bagaimana Untuk Menggunakan Modul RFID Aktif.

Kunjungi sekarang kedai Arduino Pulau Pinang di

Nadi Eleczone Solutions
Lot 1667, Tingkat 1, Jalan Teluk Air Tawar, Taman Air Tawar Indah, 13050 Butterworth, Penang
019 – 249 3264

TINGGALKAN JAWAPAN BALAS ANDA

Sila masukkan ulasan anda!
Sila masukkan nama anda di sini