KUNJUNGI KAMI

KUNJUNGI KITA DI BUKALAPAK, TOKOPEDIA DAN SHOPEE

#2 DASAR PEMROGRAMAN ARDUINO LED BLINK

 

#2 DASAR PEMROGRAMAN ARDUINO LED BLINK

DASAR PEMROGRAMAN ARDUINO LED BLINK
DASAR PEMROGRAMAN ARDUINO LED BLINK


1.    PENDAHULUAN

Jika biasanya untuk memahami, mengetahui atau mempelajari sebuah program dimulai dari mempelajari dan mengingat teori-teori lalu kemudian diaplikasikan atau dipraktekan dengan membuat sebuah project maka pada kesempatan ini kita akan menggunakan metode dengan pendekatan yang berbeda. Justru sebaliknya, pada kesempatan ini kita akan membuat sebuah project dari mulai membuat sebuah program, melakukan interfeacing atau merangkai rangkaian hingga mengamati hasil dari kegiatan tersebut terlebih dahulu, kemudian barulah kita menganalisis dan mencoba memahaminya baik itu dari segi bahasa pemrograman,  interfeacing (input/output) maupun dari segi rangkaian atau hardware.

2.     PROGRAM DASAR LED BERKEDIP (LED BLINKING)

2.1. Persiapan Untuk Membuat Project LED Blingking

Gambar 2.1 Rangkaian LED BLINKING

 

·        Alat yang diperlukan jika menggunakan Breadboard

Ø  Arduino Nano (BELI DISINI>>)

Ø  PC atau Laptop

Ø  Kabel Jumper (BELI DISINI>>)

Ø  LED (Warna Disesuaikan) (BELI DISINI>>)

Ø  Resistor 220 Ohm (BELI DISINI>>)

Ø  Bread Board (BELI DISINI>>)

·        Merangkai (Wiring) Pada Breadboard


2.2. Program

/*
====================================================

By : CNC_STORE_BANDUNG

www.cncstorebandung.com

====================================================

*/

 

int R = 13; // pemberian nama dan inisialisasi untuk LED pada Pin Digital 13

 

void setup()

{

  pinMode(R, OUTPUT); //Menyeting “R” Sebagai Output

}

 

void loop()

{

  digitalWrite (R, HIGH);  //Menyalakan LED

  delay(1000);  //Jeda sebayak 1000 mili second (1 detik)

  digitalWrite (R, LOW);  //Mematikan LED

  delay(1000);  //Jeda sebayak 1000 mili second (1 detik)

}

·       Hasil

Hasil dari project ini yaitu akan membuat LED berkedip dalam durasi satu detik. Durasi kedipan LED didapat dari besaran “delay(1000);” dimana besaran tersebut adalah jumlah waktu dalam mili detik. Pemasangan LED harus diperhatikan polaritasnya, dimana aki yang panjang mengarah ke kutup Positif (+), sedangkan kaki yang pendek atau kaki pada permukaan LED yg datar, mengarah ke kutub negatif (-).


2.3.  Analisis Program

Jika kita amati sketch tersebut kita akan melihat beberapa element pada bahasa pemrograman Arduino seperti berikut ini:

Ø  // (komentar satu baris)

Tanda ini berfungsi untuk menuliskan komentar. Hal ini berguna untuk memberikan keterangan atau arti dari kode yang kita buat, ini akan sangat membantu untuk mengingat terlebih jika program yang kita buat sangat banyak. Apapun yang ditulis di belakang tanda tersebut akan diabaikan pada proses upload. Lalu bagaimana jika komentar kita lebih dari satu baris dengan menggunakan tanda ini (//)? Untuk menjawabnya mengapa kita tidak mencobanya saja? Kemudian silahkan simpulkan dari hasil percobaan tersebut.

·       /*  */ (komentar banyak baris)

Jika pembuat program memiliki banyak catatan, maka hal itu dapat dituliskan pada beberapa baris sebagai komentar. Semua hal yang terletak diantara dua simbol tersebut akan diabaikan oleh program.

·       {   } (kurung kurawal atau curly braces)

Digunakan untuk mendefinisikan kapan blok program mulai dan berakhir (digunakan juga pada fungsi dan pengulangan).

·       ; (titk koma)

Setiap baris kode harus diakhiri dengan tanda titik koma (jika ada titik koma yang hilang maka program tidak akan bisa dijalankan, untuk membuktikannya silahkan coba hapus dan upload lalu amati yang terjadi).

·       Type Data Untuk Variable

Pada bagian inisialisasi yaitu pada bagian “int R = 13;“ sketch ini menggunakan type data integer untuk variabel “R” (R adalah nama yg diberikan untuk lampu LED yang kita gunakan) dan dinyatakan akan dirangkai atau dihubungkan dengan digital pin Digital13 (D13).

·       Structure Program

Analisis lebih lanjut kini kita menginjak pada struktur program, dimana pada sketch ini terdapat dua bagian utama program void yaitu “void setup() “ dan “void loop()” dimana bagian tersebut memiliki fungsi masing-masing sebagai berikut:

Ketika  Anda  pertama  kali  membuka  Arduino  IDE, maka  secara otomatis akan muncul sketch seperti berikut:

Gambar 2.2 Tampilan Awal IDE Arduino


Fungsi void setup() dan fungsi voidloop() merupakan fungsi wajib dan harus ada. Fungsi setup() digunakan untuk inisialisasi program, fungsi ini hanya dijalankan sekali yaitu ketika program pertama kali dijalankan (ketika arduino pertama kali dihidupkan). Sedangkan fungsi loop() akan dijalankan terus-menerus (looping forever) hingga Arduino dimatikan.


Program di atas sudah bisa diupload ke Arduino dengan cara meng-klik tombol Upload. Hanya saja, ketika program tersebut diupload, Arduino tidak akan melakukan apa-apa sebab dalam sketch tersebut memang tidak ada perintah yang harus dikerjakan.

Mari kembali pada program LED Blink dan perhatikan Program yang telah kita buat tersebut.

Void setUp


Fungsi pinMode() memberi  tahu  bahwa  pinLED  adalah  Output. Dengan  demikian  mikrokontroller tidak  akan  “membaca” logika  pin tersebut, akan tetapi dia hanya akan “menulis” logika pada pin tersebut. Dengan  kata  lain, jika kita  ingin  mendefinisikan  bahwa pin ini adalah input, maka kita tinggal mengubah OUTPUT menjadi INPUT.

Baris program ini akan memerintahkan pin yang digunakan “R” yaitu pin 13” diseting sebagai output, dan untuk menyeting ini maka Arduino Uno akan melakukan eksekusi sekali dengan memberikan tegangan output pada pin tersebut sesaat setelah program diuplod pada Arduino Uno. Lalu  apa  yang  dimaksud  dengan  “OUTPUT”  itu  sendiri?  Lalu  apa perbedaan statement output dan input? Darimana kita tau bahwa Arduino memang mengeksekusi sebanyak satu kali program pada bagian void setup tersebut?

Yang dimaksud dengan OUTPUT yang ditulis tersebut yaitu sebuah perintah agar mikrokontroler mengeluarkan tegangan output (besar tegangan output pada mikrokontroler adalah sebasar +5V), sedangkan perbedaannya dengan statement INPUT” yaitu pada perintah ini justru sebaliknya, yaitu perintah agar mikrokontroler membaca tegangan yang masuk (tegangan input maksimum adalah sebesar +5V) untuk di proses pada perintah selanjutnya. Untuk mengetahui apakah memang benar Aduino Uno akan mengeksekusi atau menjalankan program pada bagian Void setup, kita bisa mengamatinya secara langsung dan silahkan mencobanya dengan mengupload sketch tersebut. Ketika sesaat sketch diupload maka led akan menyala sebanyak satu kali.

void loop()

Baris  ini  adalah  inti  dari  program  yang  akan  dieksekusi  selama Arduino tersambung dengan  listrik  atau selama Arduino tidak direset. pinLED  diset   HIGH  berarti   LED  akan   diberi   tegangan  5  volt, sedangkan  LOW berarti  LED akan diberi tegangan 0 volt. Oleh sebab itu, rangkaian LED di atas akan menyala  ketika diberi HIGH dan akan mati ketika diberi LOW.

Fungsi delay() digunakan untuk berhenti selama sekian milidetik. Karena 1 detik = 1000 milidetik, maka pemberian nilai 1000 berarti Arduino akan jeda selama 1 detik ketika LED nyala dan 1 detik ketika LED padam. 

Lalu bagaimana jika program yang Anda coba tidak berjalan dan error? Begini, ada beberapa yang perlu diperhatikan ketika Anda memprogram:

Ø  Penulisan  sketch  itu  case  sensitive, artinya,   tulisan  pinLED” tidak    sama   dengan    PinLED Jik terjadi    error,  coba perhatikan  apakah ada penulisan yang keliru?

Ø  Jika Anda copy-paste sketch dari file PDF ke Arduino IDE, maka kemungkinan akan ada perubahan whitespace (spasi, tab, blank line). Jika spasi tergantikan denan karakter  tab atau blank line, maka  sketch  akan  error. Silakan  Anda  cesetiap  spasi,  jika ukuran   space-nya  berbeda  dengan   spasi  yan lain,  silakan dihapus dan ganti dengan spasi.

Ø  Setiap blok kode harus  diapit dengan  kurung  kurawal  { dan}. Jika kurungnya kurang  satu, maka akan error.

Ø  Setiap ada kurung buka (, harus ada kurung tutup ). Jadi jika ternyata kurungnya kurang,  itu bisa menyebabkan error.

Ø  Penulisan  angka  tanpa embel-embekoma. Misal  Anda ingin menulis  1000,  maka  tidak  perlu  menulis  dengan  1,000  atau 1.000. Penulisan  dengan  1,000  akan  terjadi  error,  sedangkan jika Anda menulis dengan 1.000 akan dianggap  1, bukan 1000.

Ø  Setiap baris kode akan ditutup dengan titik koma (semicolon) ;, kecual di   akhi block kode   yan ditutup   dengan   kurung kurawal  }.

3.    Analisis HardwareLED Blinking

Ø  Resistor

Arus yang diperlukan untuk menghasilkan cahaya yang paling terang pada jenis LED Super Bright dan LED Ultra Bright adalah sebesar 0.02A, untuk itu kita perlu menggunakan sebuah resistor agar arus yang mengalir pada LED tidak melebihi 0.02A.


Yang   menjadi   pertanyaan   adalah   “Berapakah   nilai   resistor   yang diperlukan?”, Nah perhitungannya adalah sebagai berikut :

Mencari Nilai Resistor Untuk LED

Dimana:

·        R= Resistor

·        Vs= Tegangan Sumber

·        Vf= Tegangan Vorward LED (Rata-rata 1.5V-2.2V)

·        If= Arus Maksimum yang boleh dilalui LED (Rata-tara 0.02A)

Sehingga  dengan  persamaan  di  atas  dapat  ditentukan  bahwa  nilai minimum resistor yang harus digunakan adalah sebagai berikut:

R = (5-1,2V )/ 0.02A = 190

namun   untuk   memperkecil   resiko   kerusakan   MCu   dan LED karena   terlalu   sering mengalirkan arus yang besar kemudian LED juga selalu nyala pada ondisi paling terangnnya maka resistor dipakai adalah resistor yang bernilai 220Ω, Dengan begitu mikrokontroler dan LED akan memiliki keawetan yang lebih lama

Untuk mengetahui nilai resistor berdasarkan kode warna kita dapat mempelajari dibawah ini. Perhatikanlah tabel kode warna resistor pada tabel berikut.

Tabel 3.1 Tabel Kode Warna



Ganbar 3.1 CinciPada Resistor

Sesuai dengan perhitungan sebelumnya, bahwa nilai resistor yang diperlukan adalah sebesar 220Ω maka warna-warna pada cincin resistor tersebut adalah sebagai berikut.

 

Ganbar 3.2 Resistor 220



Cicncin pertama adalah merah yang dalam tabel memiliki nilai 2, cincin kedua juga berwarna merah yang bernilai 2 dan cincin ketiga merupakan pengali yang berwarna Coklat bernilai 10 pangkat 0 (10 pangkat 0 = 1), sedangkan yang berwarna coklat adalah toleransi yaitu 1%.

 

Ø  LED (Light Emitting Diode)

Ganbar 3.3 LED



> Pengertian LED (Light Emitting Diode) dan Cara Kerjanya 

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.

Bentuk LED mirip dengan sebuah bohlam (bola lampu) yang kecil dan dapat dipasangkan dengan mudah ke dalam berbagai perangkat elektronika. Berbeda dengan Lampu Pijar, LED tidak memerlukan pembakaran filamen sehingga tidak menimbulkan panas dalam menghasilkan cahaya.  Oleh karena itu, saat ini LED (Light Emitting Diode) yang bentuknya kecil telah banyak digunakan sebagai lampu penerang dalam LCD TV yang mengganti lampu tube.

·        Simbol LED dan Cara Membedakan Anoda/Katoda pada LED

Ganbar 3.4 Simbol LED dan Polaritas


Ganbar 3.4 Cara Melihat Polaritas LED


 

Demikian untuk pengenalan singkat tentang Arduino, merakit komponen dengan peoject board, dan membuat program sederhana LED berkedip. Silakan lakukan improvisasi rangkaian tersebut sehingga lebih paham dan lebih nyaman menggunakan project board. Selanjutnya, kita akan lebih mendalami beberapa perintah dasar dan fungsi-fungsi logika untuk membuat program Arduino.


Tidak ada komentar:

Posting Komentar