Alat Musik Elektronik Sederhana(Laporan Proyek)

July 9, 2019 | Author: Joshua S | Category: N/A
Share Embed Donate


Short Description

arduino alat musik sederhana...

Description

ALAT MUSIK ELEKTRONIK SEDERHANA

Laporan ini dibuat untuk memenuhi salah satu syarat nilai Mata Kuliah Mikrokontroler untuk Program Diploma IV Program Studi Teknik Telekomunikasi Telekomunikasi

Oleh:

(151344014) Hani Dinantika Putri (151344015) Joshua (151344019) Muhamad Ismail (151344022) Muhammad Mahadytia K.P

Kelas:

2NK

PROGRAM STUDI D4 TEKNIK TELEKOMUNIKASI POLITEKNIK NEGERI BANDUNG 2017

BAB I PENDAHULUAN

1.1 Latar Belakang

Alat musik elektronik merupakan alat musik yang sumber bunyinya dibangkitkan oleh tenaga listrik. Misalkan sebuah piano yang memiliki tombol-tombol sebagai penentu nada mana yang akan dibunyikan. Masing-masing nada memiliki frekuensi berbeda-beda sesuai tinggi rendahnya nada. Perkembangan teknologi yang semakin pesat membuat berbagai hal menjadi ikut berubah sesuai dengan teknologi yang ada. Perubahan atau perkembangan pada bidang seni dan budaya adalah salah satu contoh dampak teknologi yang paling menonjol. Salah satu contoh adalah  bidang seni musik yang selalu mengikuti tren teknologi. Saat ini bahkan terdapat genre musik elektronik tersendiri. Hal ini terjadi karena saat ini juga telah banyak bermunculan alat musik yang memang sepenuhnya elektronik. Alat musik elektronik memiliki keunggulan lain karena ia lebih fleksibel. Artinya, nada yang dihasilkan oleh satu alat dapat lebih beragam. Sehingga, memungkinkan pengguna untuk menentukan nada seperti apa yang ingin dihasilkan. Kami mencoba membuat sebuah

Alat Musik Elektronik Sederhana

yang dapat ditentukan

suara atau nada yang dapat dihasilkan, misalnya tangga nada tradisional sunda. Sehingga, seni tradisional juga dapat berkembang mengikuti kemajuan teknologi. 1.2 Tujuan Membuat alat musik elektronik yang digunakan sebagai media hiburan.

1.3 Batasan Masalah Dalam proposal ini, pembahasan masalah dibatasi pada perancangan salah satu alat elektronik  berbasis arduino, dimana nantinya akan terdiri dari delapan tombol yang memiliki tingkatan nada satu oktaf.

BAB II TINJAUAN PUSTAKA

2.1 Sound Pada bagian ini kita akan bermain-main dengan suara. Sehingga kita akan membutuhkan speaker untuk membangkitkan suara dan nada musik sederhana. Pada dasarnya, untuk membuat speaker  berbunyi maka kita harus menghidup-matikan speaker sesuai dengan frekuensi suara yang ingin kita  bunyikan. Hidup-matinya speaker akan membuat spool speaker bergetar (bergerak maju-mundur) dan menghasilkan bunyi dengan nada tertentu. Suara musik kelas A menengah sekitar 440 Hz. Masih ingat apa itu Hz? Hz merupakan kependekan dari Hertz. Hertz adalah jumlah siklus perdetik. Dengan demikian, jika kita ingin memainkan musik kelas A menengah, maka kita harus menyalakan dan mematikan speaker sebanyak masing-masing 440 kali dalam 1 detik. Untuk menghidup-matikan speaker sebanyak masing-masing 440 kali, kita bisa memanfaatkan fungsi delay(). Sebelumnya kita telah membuat LED berkedip dengan memanfaatkan delay. Perlakuan kita terhadap LED akan kita terapkan pada speaker, tapi dengan tempo yang lebih cepat. Cara menghitung delay yang kita butuhkan untuk mendapatkan siklus 440 Hz (nada 440Hz) yaitu dengan cara:

Gambar 4.1 Kenapa frekuensi dikalikan 2? Gelombang suara merupakan gelombang analog (sinyal analog) yang merupakan gelombang sinus. Artinya, 1 siklus penuh adalah 1 tinggi/puncak dan 1 rendah/lembah. Kondisi tinggi adalah ketika speaker dinyalakan, sedangkan kondisi rendah adalah ketika speaker dimatikan. Oleh sebab itu, kita membutuhkan 2 delay untuk 1 Hz. Karena 440 Hz adalah 440 siklus, maka setiap siklus pada 440 Hz dikalikan dengan 2. Semoga Gambar 4.1 memberikan pemahaman tentang bagaimana cara menentukan delay. Gambar 4.1 sekedar contoh sebab frekuensi 6 Hz tidak akan terdengar oleh telinga manusia.

Gambar 4.2 2.2 Membuat Nada Jika kita kembali ke catatan pembuka pada bagian ini, maka untuk membuat bunyi / nada 440 Hz kita harus menghidup-matikan 440 kali dengan delay masing-masing 1136 mikrodetik. Perhatikan, satuannya adalah mikrodetik (1/1000 milidetik). Padahal fungsi delay() yang sering kita gunakan sebelumnya satuannya dalam milidetik. Oleh sebab itu, untuk membuat delay dengan satuan mikrodetik kita bisa menggunakan fungsi delayMicroseconds(). 2.3 Musik Musik adalah kumpulan nada, sehingga jika kita ingin membuat musik, maka kita bisa merangkai nada-nada sehingga alunannya enak didengar. Pada Arduino kita bisa menggunakan fungsi tone() untuk membuat nada. Fungsi tone() memiliki 2 parameter inputan wajib dan 1 parameter tambahan. Cara menggunakan fungsi tone() yaitu: tone(pin, frekuensi, durasi); atau tone(pin,  frekuensi); Parameter  pin adalah pin yang disambungkan ke speaker,  frekuensi adalah frekuensi yang digunakan, sedangkan durasi adalah lama nada berbunyi pada frekuensi tersebut. Jika tanpa menginputkan durasi, maka nada akan dibunyikan hingga nada selanjutnya dijalankan atau ketika kita memberikan perintah noTone(). Sehingga kita bisa memanfaatkan delay untuk membuat nada yang  panjang atau pendek. Parameter durasi akan berguna ketika kita ingin membunyikan nada sambil menjalankan  perintah lainnya. sebab jika kita menggunakan delay, maka kita harus menunggu delay selesai dahulu untuk menjalankan perintah selanjutnya. Perintah noTone() berguna untuk menghentikan nada pada pin tertentu, sehingga kita bisa menggunakan perintah pin dengan format noTone(pin); Perintah noTone()

akan berguna ketika kita menggunakan banyak speaker yang dikontrol oleh banyak pin.

BAB III PEMBAHASAN

3.1 Blok Diagram

Deskripsi: Pada blok pertama, permukaan sentuh kapasitif dijadikan sebagai input dari pengguna yang akan menyentuhkan jarinya ke plat kapasitif sebagai input sensor. Pada blok kedua, input masukkan dari pengguna dari blok pertama akan diproses oleh mikrokontroler untuk membangkitkan sinyal frekuensi tertentu,dalam hal ini frekuensi yang akan dibuat adalah frekuensi tangga nada C (Do,Re,Mi,Fa,So,La,Si,Do). Pada blok ketiga, setelah diproses dari mikrokontroler kemudian hasilnya akan diteruskan ke speaker sebagai output. 3.2 Skema Rangkaian

3.3 Alat Dan Komponen Yang Digunakan Software

:

-

Arduino IDE

-

Library Capacitive Sensor

Hardware

:

-

Arduino UNO

-

Resistor 10 K Ω 8 buah

-

PCB Dot Matrik

-

Jumper secukupnya

3.4 Langkah Kerja 1. Buat program pada ARDUINO IDE 2. Berikut adalah programnya : #include

#define COMMON_PIN

2

#define SPEAKER_PIN

A4

#define SAMPLE

20

#define CAP_THRESHOLD

2000

#define NUM_OF_KEYS

8

#define CS(Y) CapacitiveSensor(2, Y)

boolean pressed;

int notes[] = { 261, 294, 329, 349, 392, 440, 493, 523 };

CapacitiveSensor keys[] = { CS(3), CS(4), CS(5), CS(6), CS(7), CS(8), CS(9), CS(10) };

void setup() { for(int i=0; i < NUM_OF_KEYS; ++i) { keys[i].set_CS_AutocaL_Millis(0xFFFFFFFF); }

pinMode(SPEAKER_PIN, OUTPUT);

}

void loop() { pressed = false;

for (int i = 0; i < NUM_OF_KEYS; ++i) {

if( keys[i].capacitiveSensor(SAMPLE) > CAP_THRESHOLD ) {

tone(SPEAKER_PIN, notes[i]);

pressed |= true; } Serial.print(keys[i].capacitiveSensor(NUM_OF_SAMPLES)); } if (!pressed) noTone(SPEAKER_PIN); }

3. Buat rangkaian sesuai dengan skema diatas 4. Upload program yang ditulis pada arduino IDE ke Arduino Uno 5. Setelah program selesai di upload maka alat dapat dihgunakan dengan cara menekan tombol yang telah disediakan dan akan menghasilkan suara do sampai do tinggi(hanya 1 oktaf) 3.5 Analisis Alat & Program Progam:

#include

#define COMMON_PIN

2

// Common 'Send' pin (pin 2).

#define SPEAKER_PIN

A4

// Output pin untuk speaker (Analog).

#define SAMPLE

20

// Sample untuk CapacitiveSensor.

Semakin besar semakin banyak delay, tapi hasil konsisten. #define CAP_THRESHOLD speaker menyala.

2000

// Nilai Capacitive terbaca yg memicu

#define NUM_OF_KEYS

8

// Jumlah Keys.

// Buat objek CapacitiveSensor untuk setiap tombol atau 'key'. #define CS(Y) CapacitiveSensor(2, Y)

// Status untuk key notes: apakah key sudah di sentuh atau belum? boolean pressed;

// Frekuensi untuk setiap notes. int notes[] = { 261, 294, 329, 349, 392, 440, 493, 523 };

// Definisikan semua pin untuk setiap key yang tersambung // atau : Buat objek CapacitiveSensor untuk setiap keys CapacitiveSensor keys[] = { CS(3), CS(4), CS(5), CS(6), CS(7), CS(8), CS(9), CS(10) };

void setup() { // Matikan kalibrasi otomatis pada setiap channel; for(int i=0; i < NUM_OF_KEYS; ++i) {

 

keys[i].set_CS_AutocaL_Millis(0xFFFFFFFF); }

// Set speaker sebagai output pinMode(SPEAKER_PIN, OUTPUT);

// Untuk Debugging/Testing. // Serial.begin(9600); }

void loop() { // Untuk setiap pengulangan, status key notes akan false (tombol tidak ditekan). pressed = false;

// Loop ke setiap key. for (int i = 0; i < NUM_OF_KEYS; ++i) { //

Jika

capacitiveSensor

yang

terbaca

lebih

dari

(CAP_THRESHOLD), maka berikan suara // sesuai dengan note-nya. if( keys[i].capacitiveSensor(SAMPLE) > CAP_THRESHOLD ) { // Berikan note sesuai dengan key yang ditekan. tone(SPEAKER_PIN, notes[i]);

batas

// Status key pressed akan di OR kan dengan status sebelumnya. // Sehingga, untuk setiap loop, pressed akan bernilai true jika ada satu key yang ditekan. pressed |= true; }

// Untuk Debugging/Testing. // Serial.print(keys[i].capacitiveSensor(NUM_OF_SAMPLES)); // Serial.print("\t"); }

// Jika status pressed = false, maka jangan berikan suara ke speaker if (!pressed) noTone(SPEAKER_PIN);

// Untuk Debugging/Testing. // Serial.println(); }

3.6 Spesifikasi Alat 

Input tegangan 5 volt DC



Menggunakan kapasitif sensor sebagai input dengan media permukaan menggunakan plat ( Alumunium Foil )



Memiliki 8 input yang terdiri dari 8 nada dengan tingkatan nada 1 oktaf ( Nada dasar = Do =C)

3.7 Cara kerja Sistem Alat ini bekerja dengan memanfaatkan anggota tubuh, misalnya jari, sebagai sebuah konduktor. Ketika jari menyentuh permukaan sensor sentuh, jari dan permukaan tersebut akan membentuk sebuah kapasitor. Nilai dari kapasitansi tersebut akan memengaruhi nilai yang masuk ke pin digital dari Arduino. Terdapat delapan buah permukaan sentuh yang masing-masing merepresentasikan tangga nada tertentu dimulai dari do rendah hingga do tinggi. Untuk setiap tangga nada, output dari Arduino akan menghasilkan nada yang berbeda beda sesuai dengan frekuensi yang telah ditentukan.

BAB IV

KESIMPULAN

Alat ini merupakan sebuah aplikasi dari mikrokontroler arduino yang dapat mengeluarkan output suara pada speaker. Alat ini memanfaatkan fungsi kapasitor yang merupakan gabungan dari anggota tubuh yang terhubung ke ground dan juga permukaan sentuh yang terhubung k e Arduino. Grounding akan sangat memengaruhi hasil dari kerja alat. Grounding yang tidak bagus akan membuat alat tidak bekerja sama sekali. Dalam hal ini,kami membuat sebuah tangga nada dasar do = C dimana tiap-tiap nada yang dikeluarkan mempunyai frekuensi-frekuensi tertentu yang memunculkan nada Do-Re-Mi-Fa-So-LaSi-Do.

View more...

Comments

Copyright ©2017 KUPDF Inc.
SUPPORT KUPDF