Laporan Praktikum Mikrokontroler Blink LED

8 min read

Praktikum Mikrokontroler Blink LED

I. Tujuan Praktikum

  1. Mencoba aplikasi sederhana pada Arduino untuk membuat LED berkedip dengan frekuensi yang telah ditentukan.
  2. Mencoba aplikasi sederhana pada Arduino untuk menampilkan karakter pada LCD.
  3. Mencoba aplikasi sederhana pada Arduino untuk membangkitkan frekuensi suara 20 Hz – 20 KHz.
  4. Mencoba aplikasi sederhana pada Arduino untuk membangkitkan frekuensi 440 Hz, sehingga akan terdengar sebuah nada A
  5. Mencoba aplikasi sederhana pada Arduino untuk membunyikan 7 nada secara berurutan
  6. Mencoba aplikasi sederhana pada Arduino untuk membuat sebuah lagu sederhana yaitu “Gundul Gundul Pacul”
  7. Mencoba aplikasi sederhana pada Arduino untuk mengetahui nilai frekuensi yang dapat diterima oleh remote control.

II. Landasan Teori

A. Led Berkedip

Light Emitting Diode atau sering disingkat dengan LED adalah komponen elektronika yang dapat memancarkan  cahaya monokromatik ketika diberikan tegangan maju. LED merupakan keluarga Dioda yang terbuat dari bahan semikonduktor. Warna-warna Cahaya yang dipancarkan oleh LED tergantung pada jenis bahan semikonduktor yang dipergunakannya. LED juga dapat memancarkan sinar inframerah yang tidak tampak oleh mata seperti yang sering kita jumpai pada Remote Control TV ataupun Remote Control perangkat elektronik lainnya.

Arduino Uno adalah board mikrokontroler berbasis ATmega328 (datasheet). Memiliki 14 pin input dari output digital  dimana 6 pin input tersebut dapat digunakan sebagai output PWM dan 6 pin input analog, 16 MHz osilator kristal, koneksi USB, jack power, ICSP header, dan tombol reset. Untuk mendukung mikrokontroler agar dapat digunakan, cukup hanya menghubungkan Board Arduino Uno ke komputer dengan menggunakan kabel USB atau listrik dengan AC yang-ke adaptor-DC atau baterai untuk menjalankannya.

Uno berbeda dengan semua board sebelumnya dalam hal koneksi USB-to-serial yaitu menggunakan fitur Atmega8U2 yang diprogram sebagai konverter USB-to-serial berbeda dengan board sebelumnya yang menggunakan chip FTDI driver USB-to-serial.

Nama “Uno” berarti satu dalam bahasa Italia, untuk menandai peluncuran Arduino 1.0. Uno dan versi 1.0 akan menjadi versi referensi dari Arduino. Uno adalah yang terbaru dalam serangkaian board USB Arduino, dan sebagai model referensi  untuk platform Arduino, untuk perbandingan dengan versi sebelumnya, lihat indeks board Arduino.

Arduino bekerja pada tegangan 5-12 volt dengan arus yang relatif besar yang sanggup memutuskan LED. Sehingga jika kita ingin menyambungkan LED, maka kita butuh tahanan (resistor) untuk membatasi arus yang masuk ke LED. LED memiliki tegangan kerja yang disebut dengan forward voltage (vf) yang mana tegangan  ini  adalah tegangan yang dibutuhkan LED untuk bisa menyala  dengan baik.

Ukuran resistor yang bisa dipakai adalah 100Ω hingga 1KΩ (Ω dibaca ohm, satuan dari resistansi/hambatan),  makin  besar  nilai resistor maka nyala LED akan semakin redup. Pada Arduino, tegangan yang keluar dari pin-pinnya adalah 0-5 volt. Sementara catu  daya  untuk Arduino antara 5-12 volt. Oleh sebab itu, pemilihan resistor tergantung tegangan mana yang akan kitagunakan.

B. Menampilkan Karakter pada LCD

LCD16x2

LCD 16×2 adalah salah satu penampil yang sangat populer digunakan sebagai interface antara mikrokontroler dengan user nya. Dengan penampil LCD 16×2 ini user dapat melihat/memantau keadaan sensor ataupun keadaan jalanya program. Penampil LCD 16×2 ini bisa di hubungkan dengan mikrokontroler apa saja. Salah satunya dari keluarga AVR ATMega baik ATMega32,ATMega16 ataupun ATMega8535 dan ATMega 8.

dari gambar di atas tersebut dapat dilihat bahwa LCD 16×2 mempunya 16 pin. sedangkan pengkabelanya adalah sebagai berikut :

  1. Kaki 1 dan 16 terhubung dengan Ground (GND)
  2. Kaki 2 dan 15 terhubung dengan VCC (+5V)
  3. Kaki 3 dari LCD 16×2 adalah pin yang digunakan untuk mengatur kontras kecerahan LCD. Jadi kita bisa memasangkan sebuah trimpot 103 untuk mengatur kecerahanya. Pemasanganya seperti terlihat pada rangkaian tersebut. Karena LCD akan berubah kecerahanya jika tegangan pada pin 3 ini di turunkan atau dinaikan.
  4. Pin 4 (RS) dihubungkan dengan pin mikrokontroler
  5. Pin 5 (RW) dihubungkan dengan GND
  6. Pin 6 (E) dihubungkan dengan pin mikrokontroler
  7. Sedangkan pin 11 hingga 14 dihubungkan dengan pin mikrokontroler sebagai jalur datanya.

C. Pembangkit frekuensi suara

Batas pendengaran manusia adalah rentang bunyi yang masih dapat didengar oleh manusia. Manusia hanya dapat mendengar bunyi pada range frekuensi audio saja yaitu antara 20Hz-20KHz.Bunyi dengan getaran antara 20Hz-20KHz ini dinamakan audiosonic.

Sebelum memulai dengan kode program, mari kita buat perangkat kerasnya terlebih dahulu. Yang perlu kita persiapkan:

  1. Arduino Uno
  2. Speaker 8 ohm
  3. Resistor 100 ohm
  4. Papan Rancang Purnarupa (Prototype Design Board), atau dikenal dengan istilah Breadboard

Hubungkan komponen-komponen elektronika yang sudah Anda siapkan seperti ilustrasi di bawah ini (credit: gambar dibuat dengan Fritzing dan retouch menggunakan Adobe Photoshop):

Resistor yang dihubungkan secara seri ini berguna untuk membatasi penggunaan arus.

Dalam banyak tutorial tentang topik ini, penggunaan komponen tambahan seperti resistor di atas jarang dibahas, kita cuma diarahkan untuk merangkainya seperti itu tanpa mengerti alasannya. Dalam seri artikel ini, kita akan mempelajari sedikit lebih jauh alasan dibalik penggunaan suatu komponen.

Resistor ini disebut sebagai resistor pembatas arus (current limiting resistor). Sesuai petunjuk pada manual penggunaan Arduino, jumlah arus yang boleh ditarik dari satu pin hanyalah sebesar maksimum 50 mA. Sesuai hukum Ohm, dengan tegangan operasional sebesar 5V (setara 5000 mV) diperlukan hambatan beban (load resistance) sebesar  5000 mV / 50 mA = 100 Ω. Karena speaker yang kita gunakan mempunyai impedansi (impedance, nilai hambatan) sebesar 8 Ω, secara teori kita bisa menggunakan resistor 92 Ω dalam rangkaian ini. Walaupun demikian kita memilih untuk menggunakan resistor 100 Ω karena dua alasan: (1) 50 mA adalah batasan maksimum, sebaiknya kita jangan terlalu memaksakan nilai maksimum ini, dan (2) resistor 100Ω banyak tersedia dan mudah didapat dibanding resistor 92 Ω.

III. Alat dan Komponen

  1. Protoboard                                          :1 buah
  2. Downloader                                        :1 buah
  3. Mikrokontroler Arduino Uno             :1 buah
  4. Kabel kaku warna Merah                    :secukupnya
  5. Kabel kaku warna Hitam                    :secukupnya
  6. Kabel kaku warna lain                        :secukupnya
  7. LED                                                    :1 buah
  8. Resistor 330 Ohm                                :1 buah
  9. Speaker                                               : 1 buah
  10. LCD 16X2                                          :1 buah

IV. Langka Praktikum

A. Mengaktivasi LED supaya berkedip

Gambar Breadboard Percobaan Blink Led

  1. Siapkan Protoboard sebagai tempat pemasangan LED dan resistor
  2. Pasang kaki positif LED pada arduino di pin ke-2 dan kaki negatifnya diGround,
  3. Setelah itu, hubungkan salah satu kaki resistor pada kaki negatif LED, kemudian kaki satunya ke kaki Ground pada Protoboard,
  4. Ambil kabel jumper, lalu sambungkan lubang J4 ke lubang di kolom kedua darikanan,
  5. Ambil kabel jumper, sambungkan salah satu lubang di kolom pertama ke socket GND pada boardArduino,
  6. Ambil kabel jumper, sambungkan salah satu lubang di kolom kedua ke socket 5V di boardArduino
  7. Hubungkan USB Arduino kekomputer/laptop.

Buatlah Program-progam berikut:

  1. LED berkedip dengan delay 1000ms
  2. LED berkedip dengan frekuensi 5Hz
  3. LED sudah terlihat tidak berkedip 

B. Menampilkan karakter pada LCD

  1. Rangkailah skema berikut di atas protoboard
  2. Pin V0 pada LCD disambungkan ke kaki tengah potensiometer, sementara masing-masing kaki potensiometer yang ada di pinggir disambungkan ke VCC dan GND. Jika nanti tampilan tulisannya kurang jelas, silakan putar-putar potensiometernya.
  3. Pin R/W pada LCD disambungkan keGND
  4. Pin RS pada LCD disambungkan ke pin 6 padaArduino
  5. Pin E pada LCD disambungkan ke pin 7 padaArduino
  6. Pin untuk data (D4 – D7) pada LCD disambungkan ke pin 9 – 12 padaArduino
  7. VDD dan A pada LCD disambungkan ke+5v
  8. VSS dan K pada LCD disambungkan keGN
  9. Buatlah sebuah program pada aplikasi Arduino untuk menampilkan karakter pada LCD tersebut. Berikut adalah programnya.
  10. Klik verify untuk mengecek programnya, jika sudah berhasil langsung klik ikon upload.

C. Membangkitkan frekuensi 20 Hz – 20 KHz

  1. Rangkailah skema berikut pada protoboard
  2. Salah satu kaki resistor dihubungkan pada pin GND pada arduino, yang lainnya disambungkan ke bagian positif pada speaker.
  3. Bagian negatif disambungkan pada salah satu pin arduino yang akan diaktifkan misalnya pin 7.
  4. Buatlah program yang hampir sama saat membuat LED berkedip. Perbedaannya adalah pada nilai frekuensi yang diinputkan. Nilai frekuensi yang diinputkan adalah frekuensi pendengaran manusia yaitu rentang 20 Hz – 20KHz. Misalnya frekuensi yang akan dibangkitkan sebesar 50 Hz, sehingga kita harus mencari nilai periode untuk mengatur delay saat membuat program pada aplikasi arduino. Hasil perhitungan menunjukkan nilai delay sebesar 10 ms.
  5. Klik ikon verify untuk mengecek programnya, jika sudah berhasil klik ikon upload.

V. Pertanyaan Praktikum

  1. Jalankan program contoh Blink (LED berkedip)
  2. Buatlah program LED berkedip pada frekuensi 5 Hz
  3. Buatlah program LED berkedip pada frekuensi 50 Hz, amati apa yang terjadi?
  4. Buatlah program pembangkit frekuensi 1 KHz. Ganti LED dengan headset apa yang kalian dengar?
  5. Buatlah program pembangkit frekuensi 20 KHz dan dengarkan menggunakan Headset. Apakah kalian masih bisa mendengar? Mengapa?
  6. Buatlah program pembangkit frekuensi 440 Hz. Apa yang kalian dengar? Bila 440Hz adalah nada A, maka buatlah pembangkit frekuensi untuk 6 nada yang lain (B, C, D, E, F, G)
  7. Buatlah program yang dapat membunyikan ke 7 nada tersebut berurutan (C, D, E, F, G, A, B)
  8. Buatlah sebuah lagu sederhana misalnya gundul-gundul pacul dengan ke-7 nada tersebut.
  9. Bila sebuah penerima remote kontrol infra merah TV, membutuhkan frekuensi 38 KHz agar dapat menerima maka buatlah frekuensi tersebut. Gunakan LED merah (bila inframerah belum punya)
  10. Buatlah sebuah kalimat (bebas) tampil diLCD

VI. Analisis dan Pembahasan

1)  Menjalankan program contoh Blink (LED Berkedip)

Pada praktikum pertama menggunakan pin-pin digital dari arduino yaitu dari pin A0 sampai dengan pin A5, dimana pin- pin tersebut akan dipakai sebagai digital input.

Contoh :

Delay = 1000 ms

2)      Buat program LED berkedip pada frekuensi 5 Hz

f = 5 Hz

3)      Buatlah program LED berkedip pada frekuensi 50 Hz. Amati apa yang terjadi?

Setelah diamati, yang terjadi adalah LED sudah tidak terlihat berkedip lagi karena kita sudah tidak dapat menangkap kedipan LED dengan f=50 Hz

Perhitungan :

Ketika LED diprogram pada frekuensi 50 Hz, LED sudah tidak berkedip lagi, karena kecepatan mata manusia menangkap suatu gambar paling rendah 50 Hz, Jadi jika di bawah 50 Hz mata hanya bisa melihat gambar kedipan saja.

4)      Buatlah program pembangkit frekuensi 1KHz. Ganti LED dengan Headset apa yang kalian dengar?

Jadi delay = 0,5 ms

Terdengar suara dengungan

5)      Buatlah program pembangkit frekuensi 20KHz dan dengarkan menggunakan headset. Apakah kalian masih bisa mendengar? Mengapa?

Jadi delay = 0,05 ms

Pada frekuensi 20 KHz manusia masih bisa mendengar suara, karena telinga manusia mempunyai batas pendengaran. Bunyi yang dapat didengar manusia adalah bunyi dengan frekuensi 20 Hz sampai 20.000 Hz, yaitu audiosonik.

6)      Buatlah dengan pembangkit frekuensi 440KHz apa yang kalian dengar? Bila 440 Hz adalah nada A maka buatlah dipembangkit frekuensi

·         Nada A

Jadi delay =  ms

1,01
2,02

Nada B

Jadi delay =  ms

0,95
1,9

Nada C

1,68
2,36

Nada D

Jadi delay =  ms

1,5
3

Nada E

Jadi delay =  ms

1,42
2,84

Nada F

Jadi delay =  ms  

1,26
2,52

Nada G

Jadi delay =  ms

7)   Buatlah program yang dapat membunyikan ke 7 nada tersebut berurutan (C, D, E, F, G, A, B)

const int led=2;
void setup() {
pinMode(led,OUTPUT);
}

void loop()
{
int time = millis();
  if(time<=2000)
  {
digitalWrite(led,HIGH);
delay(1.9);
digitalWrite(led,LOW);
delay(1.9);
  }
  if (time>2000 && time <=4000)
  {
digitalWrite(led,HIGH);
delay(1.68);
digitalWrite(led,LOW);
delay(1.68);
  }
  if (time>4000 && time <=6000)
  {
digitalWrite(led,HIGH);
delay(1.5);
digitalWrite(led,LOW);
delay(1.5);
  }
  if (time>6000 && time <=8000)
  {
digitalWrite(led,HIGH);
delay(1.4);
digitalWrite(led,LOW);
delay(1.4);
  }
  if (time>8000 && time <=10000)
  {
digitalWrite(led,HIGH);
delay(1.26);
digitalWrite(led,LOW);
delay(1.26);
  }
  if (time>10000 && time <=12000)
  {
digitalWrite(led,HIGH);
delay(1.1);
digitalWrite(led,LOW);
delay(1.1);
  }
  if (time>12000 && time <=14000)
  {
digitalWrite(led,HIGH);
delay(1);
digitalWrite(led,LOW);
delay(1);
  }
  if (time>14000 && time <=16000)
  {
digitalWrite(led,HIGH);
delay(0.9);
digitalWrite(led,LOW);
delay(0.9);
  }
}

8) Buatlah sebuah lagu sederhana misalnya gundul-gundul pacul dengan ke-7 nada tersebut.

const int led=2;
void setup() {
pinMode(led,OUTPUT);
}

void loop()
{
int time = millis();
  if(time>500 && time <=1000)
  {
digitalWrite(led,HIGH);
delayMicroseconds(1900);
digitalWrite(led,LOW);
delayMicroseconds(1900);
  }
  if (time>1000 && time <=1300)
  {
digitalWrite(led,HIGH);
delayMicroseconds(1500);
digitalWrite(led,LOW);
delayMicroseconds(1500);
  }
  if (time>1700 && time <=2000)
  {
digitalWrite(led,HIGH);
delayMicroseconds(1900);
digitalWrite(led,LOW);
delayMicroseconds(1900);
  }
  if (time>2000 && time <=2200)
  {
digitalWrite(led,HIGH);
delayMicroseconds(1500);
digitalWrite(led,LOW);
delayMicroseconds(1500);
  }
  if (time>2400 && time <=2900)
  {
digitalWrite(led,HIGH);
delayMicroseconds(1400);
digitalWrite(led,LOW);
delayMicroseconds(1400);
  }
  if (time>3000 && time <=3400)
  {
digitalWrite(led,HIGH);
delayMicroseconds(1260);
digitalWrite(led,LOW);
delayMicroseconds(1260);
  }
  if (time>3500 && time <=3900)
  {
digitalWrite(led,HIGH);
delayMicroseconds(1260);
digitalWrite(led,LOW);
delayMicroseconds(1260);
  }
}

9) Bila sebuah penerima remote kontrol infra merah TV, membutuhkan frekuensi 38 KHz agar dapat menerima maka buatlah frekuensi tersebut. Gunakan LED merah (bila inframerah belum punya)

Kami membuat pembangkit frekuensi sebesar 38 KHz agar dapat diterima oleh sebuah remote kontrol. Dikarenakan cahaya yang keluar dari LED hanya berupa sinar merah (tidak terlihat kedipan), jadi kami menggunakan Handphone untuk melihat kedipannya, ternyata kedipannya cepat.

10)  Buatlah sebuah kalimat (bebas) tampil diLCD

VII. Kesimpulan

Pada percobaan kali ini menggunakan pin-pin digital dari arduino yaitu dari pin A0 sampai dengan pin A5, dimana pin- pin tersebut akan dipakai sebagai digital input.  Dan jika kita ingin membuat suatu aplikasi, maka aplikasi arduino pada komputer harus terinstall dan harus diprogram terlebih dahulu sesuai instruksi.

Jika kita bisa membangkitkan sebuah nilai frekuensi, maka kita dapat mengaplikasikannya ke dalam berbagai program. Misalnya, membuat lagu sederhana seperti “Gundul Gundul Pacul” dan membuat receiver remote control.

VIII.       DAFTAR PUSTAKA

Julius,Resmol. “Arduino & Audio 01 : tone()”. 26 Februari 2017. http://sastrawijaya210.blogspot.co.id/p/blog-page.html

Wijaya,Sastra.”Laporan Praktikum Mikrokontroler”. 26 Februari 2017. https://referensiarduino.wordpress.com/2013/12/11/arduino-audio-01-tone/

Laporan Hasil Praktikum – Kerja Otot Gastrocnemius

Kerja Otot Gastrocnemius Bab I. Pendahuluan A. Latar Belakang Otot dirangsang dengan rangsangan maksimal secara beruntun (multiple) dan frekuensi ditinggikan berpotensi menimbulkan beberapa gambaran...
Ananda Dwi Putri
8 min read

Laporan Agroklimatologi – Pengukuran Kelembaban

Pengukuran Kelembaban Bab I. Pendahuluan A. Latar Belakang Dalam atmosfer (lautan udara) senantiasa terdapat uap air. Kadar uap air dalam udara disebut kelembaban (lengas udara)....
Ananda Dwi Putri
9 min read

Laporan Proyek Termodinamika – Kipas Angin Sederhana

Kipas Angin Sederhana Bab I. Pendahuluan A. Latar Belakang Masalah Mata pelajaran fisika merupakan ilmu dasar yang menjadi tonggak perkembangan teknologi modern. Perkembangan teknologi yang...
Ananda Dwi Putri
6 min read

Leave a Reply