Anda di halaman 1dari 34

PELATIHAN MIKROKONTROLLER ARDUINO

PRODI TEKNIK LISTRIK POLITEKNIK BOSOWA | 2017


Pelatihan Mikrokontroller Arduino 2017

Bagian 1 Pendahuluan : .............................................................................................................................. 2


1. Pengenalan Mikrokontroler ............................................................................................................ 2
2. Pengenalan arduino ........................................................................................................................ 2
3. Jenis – jenis arduino ........................................................................................................................ 3
4. Konfigurasi pin-pin Arduino Uno ..................................................................................................... 4
5. SOFTWARE ARDUINO ...................................................................................................................... 5
Bagian 2 Pelatihan Arduino ......................................................................................................................... 7
1. OPERASI LED, 7 SEGMEN, DAN LCD................................................................................................. 7
a) Percobaan Blinking LED ............................................................................................................... 7
b) Memanipulasi LED dengan Arduino ............................................................................................ 9
c) Kontrol LED dengan Button ....................................................................................................... 12
d) Menampilkan angka dengan Seven Segment ............................................................................ 15
e) Menampilkan karakter di LCD ................................................................................................... 21
2. OPERASI INPUT DAN OUTPUT ....................................................................................................... 25
a) Sensor Cahaya ........................................................................................................................... 25
b) Control relay ............................................................................................................................. 27
c) Termometer digital ................................................................................................................... 29
3. KONTROL MOTOR DC .................................................................................................................... 31
a) Motor Servo .............................................................................................................................. 31

Page 1
Pelatihan Mikrokontroller Arduino 2017

Materi Pelatihan Mikrokontroler Arduino

Bagian 1 Pendahuluan :
1. Pengenalan Mikrokontroler
Mikrokontroler adalah komputer mikro dalam satu chip tunggal. Mikrokontroler memadukan
CPU, ROM, RAM, I/O paralel, I/O seri, counter-timer, dan rangkaian clock dalam satu chip (single chip)
seperti terlihat pada Gambar 1. Dengan kata lain, mikrokontroler adalah suatu alat elektronika digital
yang mempunyai masukan dan keluaran serta kendali dengan program yang bisa ditulis dan dihapus
dengan cara khusus.

Gambar 1. Blok Diagram Mikrokontroler


Mikrokontroler adalah piranti yang dirancang untuk kebutuhan umum. Fungsi utama dari
mikrokontroler adalah mengontrol kerja mesin atau sistem menggunakan program yang disimpan
pada sebuah ROM.
Mikrokontroler merupakan komputer didalam chip yang digunakan untuk mengontrol
peralatan elektronik, yang menekankan efisiensi dan efektifitas biaya.

2. Pengenalan arduino
Untuk memahami Arduino, terlebih dahulu kita harus memahami apa yang dimaksud dengan
physical computing. Physical computing adalah membuat sebuah sistem atau perangkat fisik dengan

Page 2
Pelatihan Mikrokontroller Arduino 2017

menggunakan software dan hardware yang sifatnya interaktif yaitu dapat menerima rangsangan dari
lingkungan dan merespon balik. Physical computing adalah sebuah konsep untuk memahami
hubungan yang manusiawi antara lingkungan yang sifat alaminya adalah analog dengan dunia digital.
Pada prakteknya konsep ini diaplikasikan dalam desain-desain alat atau projek-projek yang
menggunakan sensor dan microcontroller untuk menerjemahkan input analog ke dalam sistem
software untuk mengontrol gerakan alat-alat elektro-mekanik seperti lampu, motor dan sebagainya.

3. Jenis – jenis arduino


Saat ini ada bermacam-macam bentuk papan Arduino yang disesuaikan dengan
peruntukannya, seperti diperlihatkan berikut ini:
ARDUINO UNO

Gambar 2. Board Arduino Uno

Menggunakan USB sebagai antar muka pemrograman atau komunikasi komputer

ARDUINO MEGA

Gambar 3. Board Arduino Mega

Page 3
Pelatihan Mikrokontroller Arduino 2017

Papan Arduino dengan spesifikasi yang lebih tinggi,dilengkapi tambahan pin digital, pin analog,

port serial dan sebagainya. Masih banyak jenis arduino yang lain.

4. Konfigurasi pin-pin Arduino Uno


Dengan mengambil contoh sebuah papan Arduino tipe USB, bagian-bagiannya dapat
dijelaskan sebagai berikut.

Gambar 4. Konfigurasi PIN – PIN Arduino Uno

14 pin input/output digital (0-13)

Berfungsi sebagai input atau output, dapat diatur oleh program. Khusus untuk 6 buah pin 3, 5, 6, 9,
10 dan 11, dapat juga berfungsi sebagai pin analog output dimana tegangan output-nya dapat diatur.
Nilai sebuah pin output analog dapat diprogram antara 0 – 255, dimana hal itu mewakili nilai tegangan
0 – 5V.

6 pin input analog (0-5)

Pin ini sangat berguna untuk membaca tegangan yang dihasilkan oleh sensor analog, seperti sensor
suhu. Program dapat membaca nilai sebuah pininput antara 0 – 1023, dimana hal itu mewakili nilai
tegangan 0 – 5V.

USB Interface

Berfungsi untuk:

Page 4
Pelatihan Mikrokontroller Arduino 2017

 Memuat program dari komputer ke dalam papan


 Komunikasi serial antara papan dan komputer
 Memberi daya listrik kepada papan

Tombol Reset S1

Untuk me-reset papan sehingga program akan mulai lagi dari awal. Perhatikan bahwa tombol reset
ini bukan untuk menghapus program atau mengosongkan microcontroller.

In-Circuit Serial Programming (ICSP)

Port ICSP memungkinkan pengguna untuk memprogram microcontroller secara langsung, tanpa
melalui bootloader. Umumnya pengguna Arduino tidak melakukan ini sehingga ICSP tidak terlalu
dipakai walaupun disediakan.

IC 1 – Microcontroller Atmega

Komponen utama dari papan Arduino, di dalamnya terdapat Chip Mikrokontroler ATmega 328.

X1 – sumber daya eksternal

Jika hendak disuplai dengan sumber daya eksternal, papan Arduino dapat diberikan tegangan DC
antara 9-12V.

5. SOFTWARE ARDUINO
Sehubungan dengan pembahasan untuk saat ini software Arduino yang akan digunakan adalah
driver dan IDE, walaupun masih ada beberapa software lain yang sangat berguna selama
pengembangan Arduino. IDE Arduino adalah software yang sangat canggih ditulis dengan
menggunakan Java. IDE Arduino terdiri dari:

 Editorprogram, sebuah window yang memungkinkan pengguna menulis dan mengedit program
dalam bahasa Processing.
 Compiler, sebuah modul yang mengubah kode program (bahasa Processing) menjadi kode biner.
Bagaimanapun sebuah microcontroller tidak akan bisa memahami bahasa Processing. Yang bisa
dipahami oleh microcontrolleradalah kode biner. Itulah sebabnya compiler diperlukan dalam hal
ini.

Page 5
Pelatihan Mikrokontroller Arduino 2017

 Uploader, sebuah modul yang memuat kode biner dari Jomputerke dalam memory di dalam
papan Arduino.

Berikut ini adalah contoh tampilan IDE Arduino dengan sebuah sketch yang sedang diedit.

Gambar 5. Sketch Arduino

Page 6
Pelatihan Mikrokontroller Arduino 2017

Bagian 2 Pelatihan Arduino


Pada pelatihan ini dilakukan dengan beberapa model penggunaan dasar dari arduino uno. Rincian
materi pelatihan seperti berikut :

1. OPERASI LED, 7 SEGMEN, DAN LCD


a) Percobaan Blinking LED
a. Tujuan Percobaan :
1. Siswa dapat memahami prinsip kerja LED
2. Siswa dapat memahami mengoperasikan pin digital arduino uno sebagai output
b. Teori dasar
Pengertian LED (Light Emitting Diode) atau sering disingkat dengan LED adalah
komponen elektronika yang dapat memancarkan cahaya monokromatik ketika diberikan
tegangan maju.

Gambar 6. Sketch Arduino

Gambar 7. Sketch Arduino

Page 7
Pelatihan Mikrokontroller Arduino 2017

c. Alat dan bahan :


1. Board Arduino + Kabel
2. Breadboard
3. LED
4. Resirtor 220 Ω ½ watt
5. Kabel jumper
d. Prosedur percobaan :
Langkah-langkah untuk membuat Blinking LED :
1. Pasang led pada breadboard.
Pemasangan LED harus diperhatikan polaritasnya. Kaki yang panjang mengarah ke kutup
Positif (+), sedangkan kaki yang pendek atau kaki pada permukaan LED yg datar,
mengarah ke kutub negative (-) atau Ground (Gnd)

2. Hubungkan LED dengan arduino pada Arduino seperti gambar diatas


3. Download program berikut ke board arduino

Page 8
Pelatihan Mikrokontroller Arduino 2017

Sketch/Listing Program:

int led1 = 13; // lampu LED intenal pada pin 13 Arduino


void setup()
{
pinMode(led1, OUTPUT); // pin 13 sebagai output
}
void loop()
{
digitalWrite(led1, HIGH); // led On
delay(1000); // tunggu 1 detik
digitalWrite(led1, LOW); // led Off
delay(1000); // tunggu 1 detik
}

TEST
1. Buatlah Program seperti diatas dengan menggunakan 4 LED menyala bergantian

b) Memanipulasi LED dengan Arduino

a. Tujuan Percobaan :
1. Siswa dapat memahami prinsip kerja LED
2. Siswa dapat memahami mengoperasikan pin digital sebagai analog output
3. SIswa dapat memahami fungsi perulangan pada Bahasa Program Arduino
b. Teori dasar
Struktur for digunakan untuk menghasilkan sejumlah perulangan yang telah di
spesifikasi artinya ada batasan yang diketahui misalnya perulangan sebanyak 100 kali
atau 200 kali. nah 200 inilah data yang dispesifikasi. untuk mencacah sudah berapa
kali perulangan maka kita perlu sebuah pengubah(variable) pengubah ini nilainya
selalu bertambah satu setiap perulangan. Jika perulangan sudah mencapai spesifikasi
maka perulangan akan berhenti.
Ada tiga bagian untuk penggunaan FOR :
For (inisialisasi, kondisi, increment) {
//statement(s);
}

Page 9
Pelatihan Mikrokontroller Arduino 2017

c. Alat dan bahan :


1. Board Arduino + Kabel
2. Breadboard
3. LED
4. Resirtor 220 Ω ½ watt
5. Kabel jumper

e. Prosedur percobaan :
Langkah-langkah untuk Mengatur Kecerahan LED menggunakan Perintah FOR :
1. Pasang led pada breadboard.
Pemasangan LED harus diperhatikan polaritasnya. Kaki yang panjang mengarah ke kutup
Positif (+), sedangkan kaki yang pendek atau kaki pada permukaan LED yg datar,
mengarah ke kutub negative (-) atau Ground (Gnd)

Page 10
Pelatihan Mikrokontroller Arduino 2017

2. Hubungkan LED dengan arduino pada Arduino seperti gambar diatas


3. Download program berikut ke board arduino

Sketch/Listing Program:

//Mengatur Kecerahan LED


const int LED1=10;

void setup() {
pinMode(LED1,OUTPUT);
analogWrite(LED1,0);
}

void loop() {
// Kecerahan dinaikkan

Page 11
Pelatihan Mikrokontroller Arduino 2017

for (int i = 0; i < 256; i += 2) {


analogWrite(LED1, i);
delay(50);
}
// Kecerahan diturunkan
for (int i = 255; i > -1; i -= 2) {
analogWrite(LED1, i);
delay(50);
}
}

TEST
1. Membuat 4 LED terang redup berjalan menggunakan FOR

c) Kontrol LED dengan Button

a. Tujuan Percobaan :
1. Siswa dapat memahami prinsip kerja Button dan LED
2. Siswa dapat memahami mengoperasikan pin digital arduino uno sebagai input
3. SIswa dapat memahami fungsi pilihan pada Bahasa Program Arduino
b. Teori dasar
Sekarang kita akan mencoba melakukan pengontrolan objek (dalam hal ini LED)
dengan menggunakan sebuah input, yang akan kita gunakan sebagai input adalah
push button.
Rangkaian dasarnya persis sama dengan pengontrolan Led menggunakan
Arduino, hanya saja disini menambahkan sebuah push button, push button dikenal
juga dengan sebutan tactile switch, push button yang akan kita gunakan sekarang
adalah push button dengan 4 pin , gak tau apakah ada push button dengan 2 pin atau
tidak, tapi walaupun 4 pin yang tampak di luar sebenarnya hanyalah 2 pin karena 2
pin saling terhubung.

Fungsi Logika if dan Operator Perbandingan Arduino

if, yang digunakan bersama dengan operator perbandingan, berfungsi untuk mengetes
apakah kondisi tertentu telah tercapai atau belum, seperti masukan yang berada di atas
jumlah tertentu.

Page 12
Pelatihan Mikrokontroller Arduino 2017

Format if pada Arduino adalah:


if (variabelTertentu > 50)
{
/ / Lakukan sesuatu di sini
}
Program tes untuk melihat apakah variabelTertentu lebih besar dari 50. Jika ya, program
akan mengambil tindakan tertentu. Dengan kata lain, jika pernyataan dalam tanda kurung
adalah benar, pernyataan di dalam kurung kurawal akan dijalankan. Jika tidak, kode program
akan dilompati.
Tanda kurung kurawal dapat dihilangkan setelah pernyataan if. Jika hal ini dilakukan,
baris berikutnya (didefinisikan oleh titik koma) menjadi satu-satunya pernyataan kondisional.
if (x > 120) digitalWrite(LEDpin, HIGH);

if (x > 120)
digitalWrite(LEDpin, HIGH);

if (x > 120){ digitalWrite(LEDpin, HIGH); }

if (x > 120){
digitalWrite(LEDpin1, HIGH);
digitalWrite(LEDpin2, HIGH);
} // Semua benar

Pernyataan dalam kurung memerlukan satu atau lebih operator pembanding:

Operator Pembanding

x == y (x sama dengan y)
x != y (x tidak sama dengan y)
x < y (x kurang dari y) x > y (x lebih besar dari y)
x <= y (x kurang dari atau sama dengan y) x >= y (x lebih besar dari atau sama dengan y)

Page 13
Pelatihan Mikrokontroller Arduino 2017

Peringatan!!!!!
Hati-hati dalam penggunaan operator pembanding ==. Sering terjadi kasus kesalahan
pengetikan sehingga yang seharusnya == malah ditulis =. = dan == adalah operator yang
berbeda. = adalah operator penugasan sedangkan == adalah operator pembanding
c. Alat dan bahan :
1. Board Arduino + Kabel
2. Breadboard
3. LED
4. Resirtor 220 Ω ½ watt
5. Kabel jumper
6. Push Button Mini

d. Prosedur percobaan :
Langkah-langkah untuk merakit push button dan led:
1. Pasang led pada breadboard.
Pemasangan LED harus diperhatikan polaritasnya. Kaki yang panjang mengarah ke kutup
Positif (+), sedangkan kaki yang pendek atau kaki pada permukaan LED yg datar,
mengarah ke kutub negative (-) atau Ground (Gnd)

2. Hubungkan LED, resistor dan push button dengan arduino pada Arduino seperti gambar
diatas

Page 14
Pelatihan Mikrokontroller Arduino 2017

3. Download program berikut ke board arduino

Sketch/Listing Program:

const int buttonPin = 0;


const int ledPin = 13;

int buttonState = 0;
void setup() {
pinMode(ledPin, OUTPUT);
pinMode(buttonPin, INPUT);
}

void loop(){
buttonState = digitalRead(buttonPin);

if (buttonState == HIGH) {
// turn LED on:
digitalWrite(ledPin, HIGH);
}
else {
// turn LED off:
digitalWrite(ledPin, LOW);
}
}

TEST
1. Membuat LED redup terang dengan 2 button

d) Menampilkan angka dengan Seven Segment

a. Tujuan Percobaan :
1. Siswa dapat memahami prinsip kerja Button dan 7 SEGMEN
2. Siswa dapat memahami mengoperasikan pin digital arduino uno sebagai output
3. SIswa dapat memahami Prosedur pada Bahasa Program Arduino
b. Teori dasar
Layar tujuh segmen (bahasa Inggris: Seven-segment display (SSD)) adalah salah
satu perangkat layar untuk menampilkan sistem angka desimal yang merupakan
alternatif dari layar dot-matrix. Layar tujuh segmen ini seringkali digunakan pada jam
digital, meteran elektronik, dan perangkat elektronik lainnya yang menampilkan

Page 15
Pelatihan Mikrokontroller Arduino 2017

informasi numerik. Ide mengenai layar tujuh segmen ini sudah cukup tua. Pada tahun
1910 misalnya, sudah ada layar tujuh segmen yang diterangi oleh lampu pijar yang
digunakan pada panel suatu pembangkit listrik.

Layar tujuh segmen ini terdiri dari 7 buah LED yang membentuk angka 8 dan 1
LED untuk titik/DP. Angka yang ditampilkan di seven segmen ini dari 0-9. Cara kerja
dari seven segmen disesuaikan dengan LED. LED merupakan komponen diode yang
dapat memancarkan cahaya. kondisi dalam keadaan ON jika sisi anode mendapatkan
sumber positif dari Vcc dan katode mendapatkan sumber negatif dari ground.
Berdasarkan cara kerjanya, tujuh segmen dibagi menjadi 2 bagian:
a. common katode
Cara kerja dari seven segmen common katode akan aktif pada kondisi high
"1" dan akan off pada kondisi low "0"
b. common anode
Cara kerja dari seven segmen common anode akan aktif pada kondisi low "0"
dan akan off pada kondisi high "1".
c. Alat dan bahan :
1. Board Arduino + Kabel
2. Breadboard
3. Resistor 220 Ω ½ watt
4. Kabel jumper
5. Push Button Mini
6. Seven Segmen

Page 16
Pelatihan Mikrokontroller Arduino 2017

d. Prosedur percobaan :
Langkah-langkah untuk merakit push button dan led:
1. Pasang led pada breadboard.
Pemasangan Seven Segmen harus diperhatikan polaritasnya. Kaki yang panjang
mengarah ke kutup Positif (+), sedangkan kaki yang pendek atau kaki pada permukaan
LED yg datar, mengarah ke kutub negative (-) atau Ground (Gnd)

Page 17
Pelatihan Mikrokontroller Arduino 2017

2. Hubungkan seven segmen, resistor dan push button dengan arduino pada Arduino
seperti gambar diatas
3. Download program berikut ke board arduino

Sketch/Listing Program:

const int a = 6;
const int b = 7;
const int c = 8;
const int d = 9;
const int e = 10;
const int f = 11;
const int g = 12;
const int h = 13;
const int datain = 2;
int data;
void setup() {
pinMode(datain, INPUT);
pinMode(a, OUTPUT);
pinMode(b, OUTPUT);
pinMode(c, OUTPUT);
pinMode(d, OUTPUT);
pinMode(e, OUTPUT);
pinMode(f, OUTPUT);
pinMode(g, OUTPUT);
pinMode(h, OUTPUT);

Page 18
Pelatihan Mikrokontroller Arduino 2017

void loop()
{
if (digitalRead(datain)==LOW)
{
data=data+1;
if (data=>10)
{
data=0;
}
}
sevensegmen(data);
delay(1000);
}

void sevensegmen(int data)


{
if (data==1)
{
digitalWrite(b, HIGH);
digitalWrite(c, HIGH);digitalWrite(a, LOW);
digitalWrite(g, HIGH);
digitalWrite(d, HIGH);digitalWrite(f, LOW);
digitalWrite(e, HIGH); digitalWrite(h, HIGH);
}
else if (data==2)
{
digitalWrite(b, LOW);
digitalWrite(c, HIGH);digitalWrite(a, LOW);
digitalWrite(g, LOW);
digitalWrite(d, LOW);digitalWrite(f, HIGH);
digitalWrite(e, LOW); digitalWrite(h, HIGH);
}
else if (data==3)
{
digitalWrite(b, LOW);
digitalWrite(c, HIGH);digitalWrite(a, LOW);
digitalWrite(g, LOW);
digitalWrite(d, HIGH);digitalWrite(f, LOW);
digitalWrite(e, LOW); digitalWrite(h, HIGH);
}
else if (data==4)
{
digitalWrite(b, HIGH);
digitalWrite(c, LOW);digitalWrite(a, LOW);
digitalWrite(g, LOW);
digitalWrite(d, HIGH);digitalWrite(f, LOW);
digitalWrite(e, HIGH); digitalWrite(h, HIGH);
}
else if (data==5)

Page 19
Pelatihan Mikrokontroller Arduino 2017

{
digitalWrite(b, LOW);
digitalWrite(c, LOW);digitalWrite(a, HIGH);
digitalWrite(g, LOW);
digitalWrite(d, HIGH);digitalWrite(f, LOW);
digitalWrite(e, LOW); digitalWrite(h, HIGH);
}
else if (data==6)
{
digitalWrite(b, LOW);
digitalWrite(c, LOW);digitalWrite(a, HIGH);
digitalWrite(g, LOW);
digitalWrite(d, LOW);digitalWrite(f, LOW);
digitalWrite(e, LOW); digitalWrite(h, HIGH);
}
else if (data==7)
{
digitalWrite(b, LOW);
digitalWrite(c, HIGH);digitalWrite(a, LOW);
digitalWrite(g, HIGH);
digitalWrite(d, HIGH);digitalWrite(f, LOW);
digitalWrite(e, HIGH); digitalWrite(h, HIGH);
}
else if (data==8)
{
digitalWrite(b, LOW);
digitalWrite(c, LOW);digitalWrite(a, LOW);
digitalWrite(g, LOW);
digitalWrite(d, LOW);digitalWrite(f, LOW);
digitalWrite(e, LOW); digitalWrite(h, HIGH);
}
else if (data==9)
{

digitalWrite(b, LOW);
digitalWrite(c, LOW);digitalWrite(a, LOW);
digitalWrite(g, LOW);
digitalWrite(d, HIGH);digitalWrite(f, LOW);
digitalWrite(e, LOW); digitalWrite(h, HIGH);
}
else if (data==0)
{
digitalWrite(b, LOW);
digitalWrite(c, LOW);digitalWrite(a, LOW);
digitalWrite(g, HIGH);
digitalWrite(d, LOW);digitalWrite(f, LOW);
digitalWrite(e, LOW); digitalWrite(h, HIGH);
}
}

Page 20
Pelatihan Mikrokontroller Arduino 2017

TEST
1. Membuat counter up down dengan 2 button

e) Menampilkan karakter di LCD


a. Tujuan Percobaan :
1. Siswa dapat memahami prinsip kerja LCD karakter 16 x 2
2. Siswa dapat memahami proses menampilkan tulisan pada LCD
b. Teori dasar
LCD (Liquid Crystal Display) adalah suatu jenis media tampilan yang menggunakan
kristal cair sebagai penampil utama. LCD tersebut terdiri dari 16 kolom dan 2 baris karakter
(tulisan). yang perlu di persiapkan adalah sebagai berikut
 LCD 16x2
 Arduino UNO (Type Lain)
 Kabel dan Konektor
Berikut adalah pin dari LCD 16 X 2

No
Kaki/Pin Nama Keterangan
1 VCC +5V
2 GND 0V
3 VEE Tegangan Kontras LCD
4 RS Register Select
5 R/W 1 = Read, 0 = Write
6 E Enable Clock LCD
7 D0 Data Bus 0
8 D1 Data Bus 1
9 D2 Data Bus 2
10 D3 Data Bus 3
11 D4 Data Bus 4
12 D5 Data Bus 5
13 D6 Data Bus 6
14 D7 Data Bus 7
15 Anoda Tegangan backlight positif
16 Katoda tegangan backlight Negatif

c. Alat dan bahan :


1. Board Arduino + Kabel

Page 21
Pelatihan Mikrokontroller Arduino 2017

2. Breadboard
3. LCD 16 x 2
4. Kabel jumper
5. Potensiometer 1k ohm
6. Resistor 220 ohm
d. Prosedur percobaan :
1. Hubungkan LCD dengan Arduino seperti langkah berikut :

 Pin RS (kaki 4) di sambungkan dengan pin arduino digital pin 12


 Pin E (kaki 6) di sambungkan dengan pin arduino digital pin 11
 Pin D4 (kaki 11) di sambungkan dengan pin arduino digital pin 5
 Pin D5 (kaki 12) di sambungkan dengan pin arduino digital pin 4
 Pin D6 (kaki 13) di sambungkan dengan pin arduino digital pin 3
 Pin D7 (kaki 14) di sambungkan dengan pin arduino digital pin 2
 sambungkan potensio 10 KOhm ke +5v dan GND , dan Pin LCD 3 ke potensio
 Pin 5 (R/W) ke Ground

Page 22
Pelatihan Mikrokontroller Arduino 2017

2. Upload program berikut :

Sketch/Listing Program:

// Program menulis Banner text di layar LCD


// include the library code:
#include <LiquidCrystal.h>
// initialize the library with the numbers of the interface pins
LiquidCrystal lcd(12, 11, 5, 4, 3, 2);
void setup() {
// set up the LCD's number of rows and columns:
lcd.begin(16, 2);
lcd.clear(); // start with a blank screen
lcd.setCursor(0,0); // set cursor to column 0, row 0
lcd.print("Nama SAYA"); // change this text to whatever you like.

Page 23
Pelatihan Mikrokontroller Arduino 2017

lcd.setCursor(0,1); // set cursor to column 0, row 1


lcd.print("Nama Sekolah");
}
void loop()
{
}

TEST
1. Buatlah Nama Kamu Agar Rata Tengah seperti di bawah

S E K O L A H
N A M A K A M U

3. Upload program berikut :

Sketch/Listing Program:

// Program Blinking Banner text


// include the library code:
#include <LiquidCrystal.h>
// initialize the library with the numbers of the interface pins
LiquidCrystal lcd(12, 11, 5, 4, 3, 2);
void setup() {
// set up the LCD's number of rows and columns:
lcd.begin(16, 2);
lcd.clear(); // start with a blank screen
lcd.setCursor(0,0); // set cursor to column 0, row 0 (the first row)
lcd.print("NAMA SEKOLAH");
lcd.setCursor(0,1); // set cursor to column 0, row 1
lcd.print("Nama Saya");
}
void loop() {
// Turn off the blinking cursor:
lcd.noDisplay();
delay(500);
// Turn on the display:
lcd.display();
delay(500);
}
TEST
1. Buatah Tulisan Bergantian dengan memanfaatkan Delay()

Page 24
Pelatihan Mikrokontroller Arduino 2017

2. OPERASI INPUT DAN OUTPUT


a) Sensor Cahaya
a. Tujuan Percobaan :
1. Siswa dapat memahami prinsip kerja LDR (light dependent Resistor)
2. Siswa dapat membangun switch dengan LDR
b. Teori dasar
Sensor cahaya adalah komponen elektronika yang dapat/berfungsi mengubah suatu
besaran optik (cahaya) menjadi besaran elektrik. Sensor cahaya berdasarkan perubahan
elektrik yang dihasilkan dibagi menjadi 2 jenis yaitu :
 Photovoltaic : Yaitu sensor cahaya yang dapat mengubah perubahan besaran optik
(cahaya) menjadi perubahan tegangan. Salah satu sensor cahaya jenis photovoltaic
adalah solar cell.
 Photoconductive : Yaitu sensor cahaya yang dapat mengubah perubahan besaran optik
(cahay) menjadi perubahan nilai konduktansi (dalam hal ini nilai resistansi). Contoh
sensor cahaya jenis photoconductive adalah LDR, Photo Diode,Photo Transistor.
LDR (Light Dependent Resistor)

LDR (Light Dependent Resistor) adalah sensor cahaya yang dapat mengubah besaran
cahaya yang diterima menjadi besaran konduktansi. Apabila LDR (Light Dependent Resistor)
menerima cahaya maka nilai konduktansi antara kedua kakinya akan meningkat (resistansi
turun). Semakin besar cahaya yang diterima maka semakin tinggi nilai konduktansinya (nilai

Page 25
Pelatihan Mikrokontroller Arduino 2017

resistansinya semakin rendah). Aplikasi LDR salah satunya pada lampu penerangan jalan
yang akan menyala otomatis pada saat cahaya matahari mulai redup.
c. Alat dan bahan :
1. Board Arduino + Kabel
2. Breadboard
3. LDR
4. Resirtor 10 kΩ ½ watt
d. Prosedur percobaan :
1. Dengan sensor cahaya LDR (Light Dependent Resistor), Lampu akan otomatis menyala
(On) jika sensor tidak terkena cahaya (gelap). Sebaliknya, lampu akan mati (Off ) apabila
sensor terkena cahaya terang. Hubungkan LDR ke pin analog 0 dan LED di pin digital 13
seperti gambar berikut.

Page 26
Pelatihan Mikrokontroller Arduino 2017

2. Upload program berikut :

Sketch/Listing Program:

// Program Lampu otomatis gelap/terang


Int sensorPin = 0; // pin signal LDR dihubungkan ke Port Analog 0
Int ledPin = 13; // pin untuk LED
int sensorValue = 0; // variable nilai yg dihasilkan sensor
void setup()
{
pinMode(ledPin, OUTPUT);
Serial.begin(9600);
}
void loop()
{
sensorValue = analogRead(sensorPin); // membaca nilai dari sensor:
Serial.println(sensorValue);
if (sensorValue <= 200 ) //batas intensitas cahaya 0-1024
{
digitalWrite(ledPin, HIGH); // menyalakan lampu LED (on)
}
else
{
digitalWrite(ledPin, LOW); // mematikan lampu LED (off)
}
delay(1000);
}
Catatan: Pin signal modul LDR (juga keluarga resistor yg lain, misalnya Potensiometer, Thermistor)
dihubungkan dengan port Analog Arduino, bukan port digital

TEST
1. Buatah program mengatur intensitas cahaya LED dengan input LDR

b) Control relay
a. Tujuan Percobaan :
1. Siswa dapat memahami prinsip kerja relay
2. Siswa dapat membangun control relay dengan arduino
b. Teori dasar

Relay adalah saklar mekanik yang dikendalikan atau dikontrol secara elektronik (elektro
magnetik). Bagian utama relay elektro mekanik adalah sebagai berikut.

 Kumparan electromagnet
 Saklar atau kontaktor

Page 27
Pelatihan Mikrokontroller Arduino 2017

 Swing Armatur
 Spring (Pegas)

Konstruksi Relai Elektro Mekanik Posisi NC (Normally Close)

c. Alat dan bahan :


1. Board Arduino + Kabel
2. Breadboard
3. Relay 5 vdc
4. Lampu led
5. Resistor 220 ohm
6. Kabel jumper
d. Prosedur percobaan :.
1. Pin vcc dihubungkan ke pin digital 3
2. Upload program berikut :

Sketch/Listing Program:

int relay1 = 13; // pin 13 Arduino dihubungkan dengan Relay


int datain = 0;
int saklar = 0;
void setup()
{
pinMode(relay1, OUTPUT); // pin 13 sebagai output
Serial.begin(9600);
}
void loop() {
if(Serial.available()){
datain = Serial.read();
saklar = datain -'0';
if(saklar == 1){
digitalWrite(relay1, HIGH);
Serial.println("lampu ON");
delay(1000);

Page 28
Pelatihan Mikrokontroller Arduino 2017

}
if(saklar == 0){
digitalWrite(relay1, LOW);
Serial.println("Lampu OFF");
delay(1000);
}
}
}
c) Termometer digital
a. Tujuan Percobaan :
1. Siswa dapat memahami prinsip kerja sensor LM 35
2. Siswa dapat membangun thermometer digital

b. Teori dasar

Sensor suhu IC LM 35 merupkan chip IC produksi Natioanal Semiconductor yang berfungsi


untuk mengetahui temperature suatu objek atau ruangan dalam bentuk besaran elektrik,
atau dapat juga di definisikan sebagai komponen elektronika yang berfungsi untuk mengubah
perubahan temperature yang diterima dalam perubahan besaran elektrik. Sensor suhu IC
LM35 dapat mengubah perubahan temperature menjadi perubahan tegangan pada bagian
outputnya. Sensor suhu IC LM35 membutuhkan sumber tegangan DC +5 volt dan konsumsi
arus DC sebesar 60 µA dalam beroperasi. Bentuk fisik sensor suhu LM 35 merupakan chip IC
dengan kemasan yang berfariasi, pada umumnya kemasan sensor suhu LM35 adalah kemasan
TO-92 seperti terlihat pada gambar dibawah.

Page 29
Pelatihan Mikrokontroller Arduino 2017

Dari gambar diatas dapat diketahui bahwa sensor suhu IC LM35 pada dasarnya memiliki
3 pin yang berfungsi sebagai sumber supply tegangan DC +5 volt, sebagai pin output hasil
penginderaan dalam bentuk perubahan tegangan DC pada Vout dan pin untuk Ground.

c. Alat dan bahan :


1. Board Arduino + Kabel
2. Breadboard
3. LM35
4. Kabel jumper

d. Prosedur percobaan :.
1. Untuk mengukur suhu, caranya cukup mudah. IC jenis LM 35 ini cukup praktis, bentuknya
kecil dan akurasinya tinggi. Cukup dengan menghubungkan kakinya ke kutub + , A0
dan – seperti pada gambar, nilai tegangan listrik yang didapat akan dikonversi
menjadi nilai suhu dalam satuan derajat Celsius/Rheamur/Fahrenheit.

2. Upload program berikut :

Sketch/Listing Program:

a. Nilai temperatur ditampilkan di layar komputer

int potPin = 0; // select the input pin for the LM35


float temperature = 0; // type float -> 2 angka di blkng koma
long val = 0; // tyle long = int, hanya range nilainya lebih
besar

Page 30
Pelatihan Mikrokontroller Arduino 2017

void setup()
{
Serial.begin(9600);
}
void loop()
{
val = analogRead(potPin); // read the value from the sensor
temperature = (5.0 * val * 100.0)/1024.0; // konvert ke Celcius
Serial.println(temperature);
// Serial.println((long)temperature);
delay(1000);
}

b. Nilai temperatur ditampilkan di LCD

#include <LiquidCrystal.h> // include library for LCD


LiquidCrystal lcd(12, 11, 5, 4, 3, 2); // pin to LCD
int potPin = 0; // select the input pin for the LM35
float temperature = 0;
long val = 0;
void setup()
{
lcd.begin(16, 2); // set up the LCD's number of rows and columns
}
void loop()
{
val = analogRead(potPin); // read the value from the sensor
temperature = (5.0 * val * 100.0)/1024.0; // convert to Celcius
lcd.clear(); // clear LCD screen
lcd.setCursor(0,0); // set text to LCD row 1
lcd.print("current temp. ");
lcd.setCursor(0,1); // set text to LCD row 2
lcd.print((long)temperature); // writing temperature value
lcd.print(" deg.C");
delay(1000);
}

3. KONTROL MOTOR DC
a) Motor Servo
a. Tujuan Percobaan :
1. Siswa dapat memahami prinsip kerja motor servo
2. Siswa dapat mengontrol motor servo dengan arduino
b. Teori dasar

Page 31
Pelatihan Mikrokontroller Arduino 2017

Motor servo adalah sebuah motor DC yang dilengkapi rangkaian kendali dengan sistem
closed feedback yang terintegrasi dalam motor tersebut.

Motor servo adalah sebuah motor DC yang dilengkapi rangkaian kendali dengan sistem
closed feedback yang terintegrasi dalam motor tersebut. Pada motor servo posisi putaran
sumbu (axis) dari motor akan diinformasikan kembali ke rangkaian kontrol yang ada di dalam
motor servo.

Contoh Motor Servo Motor servo disusun dari sebuah motor DC, gearbox, variabel
resistor (VR) atau potensiometer dan rangkaian kontrol. Potensiometer berfungsi untuk
menentukan batas maksimum putaran sumbu (axis) motor servo. Sedangkan sudut dari sumbu
motor servo diatur berdasarkan lebar pulsa yang pada pin kontrol motor servo.

Gambar x. Konstruksi Motor Servo

Page 32
Pelatihan Mikrokontroller Arduino 2017

c. Alat dan bahan :


1. Board Arduino + Kabel
2. Breadboard
3. Potensiometer 10k ohm
4. Motor servo
d. Prosedur percobaan :
1. Hubungkan motor servo dengan arduino seperti gambar berikut :

2. Upload program berikut :


Sketch/Listing Program:

#include <Servo.h>
Servo servo1;
int val;
void setup() {
servo1.attach(2); }
void loop()
{
val = analogRead(0);
val = map(val, 0, 1023, 0, 179);
servo1.write(val);
delay(15);
}

Page 33

Anda mungkin juga menyukai