Langsung ke konten utama

Program Arduino: Melody Dalam Speaker!

Membuat melody, DO, RE, MI, FA, SOL, LA, SI, DO”.
Yang perlu kamu siapkan adalah;

1x Arduino
1x Breadboard
1x Speaker
1x Resistor 220 ohm
2x Kabel Jumper

Lalu buat rangkain seperti Gambar dibawah ini:


NOTES:

  • Hubungkan GND arduino ke Breadboard.
  • Hubungkan GND breadboard ke  kabel kiri Speaker.
  • Hubungkan pin 9 Arduino ke  kabel kanan Speaker.
  • Speaker sebenarnya tidak memiliki polaritas. Jadi mau dipasang seperti apapun antara positif dan negatif, Speaker masih tetap akan menyala.

Pemograman Speaker kamu bisa ketik atau salin sketch dibawah ini:

int speaker= 9; // membuat variabel Speaker untuk pin 9 Arduino
void setup() {
// void setup dikosongkan
}
void loop() {

  tone(speaker, 262);    delay(500);  // membuat nada DO dengan waktu 500 milidetik
  tone(speaker, 294);    delay(550);  // membuat nada RE dengan waktu 550 milidetik
  tone(speaker, 330);    delay(590);  // membuat nada MI dengan waktu 590 milidetik
  tone(speaker, 349);    delay(600);  // membuat nada FA dengan waktu 600 milidetik
  tone(speaker, 395);    delay(610);  // membuat nada SOL dengan waktu 610 milidetik
  tone(speaker, 440);    delay(620);  // membuat nada LA dengan waktu 620 milidetik
  tone(speaker, 494);    delay(630);  // membuat nada SI dengan waktu 630 milidetik
  tone(speaker, 523);    delay(700);  // membuat nada DO” dengan waktu 700 milidetik
}

NOTES:
  • int speaker= 9; membuat variabel Speaker dimana variabel ini akan menyimpan nilai 9, yang berarti pin 9 arduino akan digunakan untuk Speaker.
  • void setup sengaja dikosongkan, karena tidak perlu perintah pinMode(speaker, OUTPUT); , karena pada perintah tone yang ada di void loop, sudah satu paket bahwa Speaker ini adalah OUTPUT.
  • tone(speaker, 262); digunakan untuk membuat nada DO, nilai 262 adalah frekuensi suara untuk nada DO. delay(500); menentukan  bahwa nada DO ini akan berbunyi selama 500 milidetik.

Dari program yang pertama, kamu belajar bahwa setiap nada yang di bunyikan oleh Speaker memiliki frekuensi seperti tabel dibawah ini:


Untuk mempermudah pembuatan NADA kamu bisa membuat Fungsi Variabel, untuk setiap nada, seperti;
void DO() {  tone(speaker, 262); }

Lalu nantinya kamu tinggal masukan DO(); kedalam void loop ditambah delay.          

Dibawah ini adalah program yang isinya nada lagu Kebunku, saya ambil dari note angka yang ada di internet, dengan menambahkan delay yang saya sesuaikan dengan lagunya.
int speaker= 9; // membuat variabel Speaker untuk pin 9 digital
void setup(){ // void setup sengaja dikosongkan
}
void DO() {  tone(speaker, 262); } // fungsi variabel untuk nada DO
void RE() {  tone(speaker, 294); } // fungsi variabel untuk nada RE
void MI() {  tone(speaker, 330); } // fungsi variabel untuk nada MI
void FA() {  tone(speaker, 349); } // fungsi variabel untuk nada FA
void SOL() {  tone(speaker, 395); } // fungsi variabel untuk nada SOL
void LA() {  tone(speaker, 440); } // fungsi variabel untuk nada LA
void SI() {  tone(speaker, 494); } // fungsi variabel untuk nada SI
void DOO() {  tone(speaker, 523); }       // fungsi variabel untuk nada DOO
void DIAM() {  noTone(speaker); }        // fungsi variabel untuk nada DIAM
void loop() {
  SOL(); delay(500);      MI(); delay(1000);   SOL(); delay(1000); // lihat kebunku  
  DOO(); delay(1000); DIAM(); delay(500);
  SOL(); delay(500);  DOO(); delay(500);   SOL(); delay(500); // penuh dengan bunga
  FA() ; delay(500);     MI(); delay(500);      RE(); delay(1000);
  DIAM(); delay(500);
  FA(); delay(500);     RE(); delay(1000);  FA(); delay(1000); // ada yang merah
  LA(); delay(1000);   SOL(); delay(500);   DO(); delay(500); // dan ada yang putih
  MI(); delay(500);    RE(); delay(500);     DO(); delay(1000);
  DIAM(); delay(500);
  SOL(); delay(500);  MI(); delay(1000);  SOL(); delay(1000); // setiap hari
  DIAM(); delay(500);
  SOL(); delay(500);  DOO(); delay(500);  SOL(); delay(500); // kusiram semua 
  FA(); delay(500);     MI(); delay(500);     RE(); delay(1000);
  DIAM(); delay(500);
  FA(); delay(500);    RE(); delay(1000);    FA(); delay(1000); // mawar melati
  LA(); delay(1000);  SOL(); delay(500);    DO(); delay(500); // semuanya indah
  MI(); delay(500);    RE(); delay(500);      DO(); delay(1000);
  DIAM(); delay(1000);
}

NOTES:

  • Sebelumnya maaf Nada lagu Kebunkunya agak fals, saya kurang begitu ahli dalam nada :D
  • int speaker= 9; digunakan untuk membuat variabel Speaker untuk pin digital 9 Arduino.
  • void setup sengaja dikosongkan karena untuk program tone tidak memerlukan pinMode(speaker, OUTPUT);
  • void DO() {  tone(speaker, 262); } membuat fungsi variabel untuk mempersingkat saat pembuatan nada pada void loop, jadi cukup memasukan kode DO(); saja, dan ditambah delay.
  • SOL(); delay(500); menambahkan nada DO dengan delay 500 milidetik.

MARI LEBIH KREATIF!!!
  1. Buatlah sebuah nada lagu dengan mencari not angkanya di Google, atau lihat dari buku. Selanjutnya kamu bisa konversi sendiri, misal: not angka 1 jadi DO();, not angka 2 jadi RE(); dan seterusnya!
  2. Tambahkan rangkaian 8 LED pada rangkain Speaker seperti Gambar diatas, dengan 1 LED mewakili 1 Nada. Dan masukan program LED pada setiap fungsi variabel, sehingga setiap nada yang berbunyi akan di ikuti dengan setiap nyala lampu LED.

Komentar

  1. bikin semangat belajar gan , ditunggu pelajaran selanjut nya :)

    BalasHapus
    Balasan
    1. hehehe mantap gan! Kebetulan ada posting baru tuh gan, mengenai Alat Kontrol Suhu Otomatis...

      Hapus
  2. gan, kalo bikinnya pake aplikasi gimana ya?
    misalnya kita bikin aplikasi, terus pencet tombol aplikasi baru keluar nadanya. jadi kita bisa simpan berapa nada di dalam satu aplikasi.

    BalasHapus
    Balasan
    1. Bisa Gan! Aplikasi Android gan?
      Kalo android tunggu postingan selanjutnya ya ;)

      Hapus
  3. mantp gan tutorial-tutorialnya, sampe bolak-balik buka blog :D
    baru belajar..

    BalasHapus
  4. Saya kira Arduino tidak mampu melakukan hal ini. Keren postingannya. Jadi tambah sengangat belajar ni gan
    :D

    BalasHapus
  5. mantap gan saya maki semangat nih

    BalasHapus
  6. bisa gak kira-kira kita gunakan speaker yang lebih besar?

    BalasHapus
  7. Gan pernah bikin drum kayanya seru ditunggu tutorialnya makasih

    BalasHapus
  8. Komentar ini telah dihapus oleh pengarang.

    BalasHapus
  9. Gan klo 1 lagilu dibikin 1 variable d tekan nyala dilepas mati meskipun lagu belom selesai bisa ga
    Gmn tehniknya thx

    BalasHapus

Posting Komentar

Postingan populer dari blog ini

Belajar Pemrograman Dasar Arduino!

Yang yang baru pertama kali belajar arduino silahkan masuk dulu ke KELAS ARDUINO . Seperti yang saya bilang pada postingan sebelumnya, bahasa pemrograman Arduino mirip bahasa C yang digunakan pada AVR. Akan tetapi lebih sederhana, dan lebih mudah untuk dipelajari. Ada yang bilang juga bahwa bahasa pemrograman Arduino adalah bahasa processing. Bagi saya bahasa pemrograman yang digunakan pada Arduino adalah bahasa pemrograman Arduino ;) hehe Nah pada kelas ini saya ingin mengajak kamu untuk belajar Bahasa Pemrograman Dasarnya. Penting sekali, supaya saat dipembahasan selanjutnya saya kasih kamu contoh program. Kamu sudah bisa memahami dan tidak bingung, karena kamu sudah tahu dasarnya. Ok! Baiklah kita akan mulai dari: void setup () { // semua kode yang disini akan dibaca sekali oleh Arduino } void loop () { //semua kode yang ada disini akan dibaca berulang kali (terus menerus) oleh Arduino } Semua kode program yang ada dalam void setup akan dibaca sekali oleh A...

Program Arduino: Sensor Cahaya LDR!

Light Dependent Resistor (LDR) adalah jenis resistor yang nilai hambatannya di pengaruhi oleh cahaya di sekitar. Maka kita bisa membuat LDR ini menjadi sensor cahaya. Karena memang sudah banyak aplikasinya. Misalnya pada lampu jalan, tidak ada saklar untuk mematikan dan menghidupkan lampu jalan. Dengan menggunakan sensor cahaya LDR, lampu jalan akan mati ketika siang dan akan hidup ketika malam secara otomatis. Sekarang kita akan buat program Arduino yang akan melakukan, "Lampu LED menyala ketika keadaan gelap dan mati ketika keadaan terang"  ( Automatic Lighting System ). Yang harus kamu siapkan: 1x Arduino 1x Breadboard 1x Sensor cahaya LDR 1x Resistor 10k 7x Kabel jumper Kemudian buat rangkaian seperti gambar dibawah ini. NOTES : Hubungkan 5V dan GND dari Arduino ke Breadboard. Hubungkan kaki kiri LDR ke 5V. Hubungkan kaki kanan LDR ke pin A2 Arduino. Hubungkan kaki kiri resistor ke celah antara kaki kanan LDR dan GND arduino. Hubungkan kak...

Menghidupkan Dan Mematikan LED dengan Satu Tombol - Program Arduino Button

Sebelumnya di tutorial, " Program Arduino: Digital Read Push Button! ." Ada banyak sekali komentar yang meminta untuk dibuatkan tutorial ini, seperti pada komentar: "Mau tanya mas,, kalo tombol di tekan led akan nyala dan tombol di lepas led tetap nyala sampai di tekan lg tombolnya baru led mati,," "Mas saya ada tugas nih. Kalo kita menggunakan 2 led tapi menggunakan 1 button.. Kita tekan button lampu led1 huidup.. lalu kita tekan button led 1 mati.. kita tekan lagi button led 2 yang hidup.. bagaimana program nya mas?" "Manthap && jos tutor'y.. Oya Mas,? mau tanya && minta ilmu || jurusnya, gimana cara menyalakan 5 led dalam satu button,,? Jadi jika button di tekan LED1 akan menyala dan tekan lagi LED2 menyala, sampai 5 led. Mohon bantuannya mas.? Hehe" Inti dari pertanyaan mereka jika saya simpulkan adalah bagaimana dengan satu tombol bisa menjalakan banyak fungsi, seperti menghidupkan dan mematikan led. Di ...