disusun oleh - elektro.polimdo.ac.id · modul praktek mikrokontroler prodi d3 teknik listrik...

68
Disusun Oleh: Ali A.S. Ramschie, SST., MT POLITEKNIK NEGERI MANADO JURUSAN TEKNIK ELEKTRO PROGRAM STUDI D3 TEKNIK LISTRIK 2018

Upload: dotu

Post on 05-Aug-2019

240 views

Category:

Documents


2 download

TRANSCRIPT

Page 1: Disusun Oleh - elektro.polimdo.ac.id · Modul Praktek Mikrokontroler Prodi D3 Teknik Listrik Jurusan Teknik Elektro, 2018 iii KATA PENGANTAR Puji dan syukur patut patutlah dipanjatkan

Disusun Oleh:

Ali A.S. Ramschie, SST., MT

POLITEKNIK NEGERI MANADO JURUSAN TEKNIK ELEKTRO

PROGRAM STUDI D3 TEKNIK LISTRIK 2018

Page 2: Disusun Oleh - elektro.polimdo.ac.id · Modul Praktek Mikrokontroler Prodi D3 Teknik Listrik Jurusan Teknik Elektro, 2018 iii KATA PENGANTAR Puji dan syukur patut patutlah dipanjatkan

Modul Praktek Mikrokontroler Prodi D3 Teknik Listrik Jurusan Teknik Elektro, 2018

ii

LEMBAR PENGESAHAN

MODUL

PRAKTEK MIKROKONTROLER

Disusun Oleh:

Ali A.S. Ramschie, SST., MT

Nip. 19730909 200312 1 001

Manado, Desember 2018

Menyetujui,

Ketua Jurusan Teknik Elektro Koordinator Program Studi

D3 Teknik Listrik

Fanny J. Doringin, ST., MT Muchdar D. Patabo, ST., MT

19670430 199203 1 003 19631128 199003 1 002

Page 3: Disusun Oleh - elektro.polimdo.ac.id · Modul Praktek Mikrokontroler Prodi D3 Teknik Listrik Jurusan Teknik Elektro, 2018 iii KATA PENGANTAR Puji dan syukur patut patutlah dipanjatkan

Modul Praktek Mikrokontroler Prodi D3 Teknik Listrik Jurusan Teknik Elektro, 2018

iii

KATA PENGANTAR

Puji dan syukur patut patutlah dipanjatkan kehadirat Tuhan Yang Maha Besar, karena

atas kasih dan anugerah_NYA sehingga modul Praktek Mikrokontroler ini boleh

terselesaikan dengan baik. Modul ini dibuat untuk melengkapi materi pembelajaran di

Program Studi D3 Teknik Listrik di Jurusan Teknik Elektro Politeknik Negeri Manado.

Didalamnya berisikan uraian materi yang sesuai dengan Rencana Pembelajaran Semester

Mata Kuliah Praktikum Mikrokontroler dan kegiatan praktikum yag harus dikerjakan oleh

mahasiswa yang mengambil mata kuliah ini.

Pada kesempatan in perkenankan penulis mengucapkan terima kasih kepada :

1. Ir.Ever Slat,MT; sebagai Direktur Politeknik Negeri Manado

2. Dra.Maryke Alelo,MBA sebagai Wakil Direktur Bidang Akademik

3. Fanny Doringin,ST.,MT; sebagai Ketua Jurusan Teknik Elektro

4. Muchdar D. Patabo, ST., MT; sebagai Kaprodi D3 Teknik Listrik

5. Rekan – rekan di Prodi D3 Teknik Listrik

Akhirnya besar harapan kiranya dengan adanya modul ini diharapkan dapat

menunjang kegiatan pembelajaran di Program Studi D3 Teknik Listrikr.

Manado, Desember 2018

Penulis,

Page 4: Disusun Oleh - elektro.polimdo.ac.id · Modul Praktek Mikrokontroler Prodi D3 Teknik Listrik Jurusan Teknik Elektro, 2018 iii KATA PENGANTAR Puji dan syukur patut patutlah dipanjatkan

Modul Praktek Mikrokontroler Prodi D3 Teknik Listrik Jurusan Teknik Elektro, 2018

iv

DAFTAR ISI

LEMBAR PENGESAHAN .................................................................................................................. ii

KATA PENGANTAR .........................................................................................................................iii

DAFTAR ISI ........................................................................................................................................ iv

BAB 1 ................................................................................................................................................... 1

PENGENALAN MIKROKONTROLER ARDUINO .......................................................................... 1

1.1 Apa itu arduino ................................................................................................................... 1

1.2 Sejarah Singkat Arduino .................................................................................................... 1

1.3 Kelebihan Arduino .............................................................................................................. 2

1.4 Arduino Uno ........................................................................................................................ 3

BAB 2 ................................................................................................................................................. 17

PRAKTIKUM LED ............................................................................................................................ 17

A. Tujuan .................................................................................................................................... 17

B. Alat dan Bahan yang digunakan .......................................................................................... 17

C. Teori singkat dan Rangkaian Percobaah ............................................................................ 17

D. Membuat Sketch Program untuk Led berkedip ................................................................. 18

E. Prosedur Percobaan .............................................................................................................. 21

BAB III ............................................................................................................................................... 22

PRAKTIKUM ANIMASI LED .......................................................................................................... 22

A. Tujuan .................................................................................................................................... 22

B. Alat dan Bahan yang digunakan .......................................................................................... 22

C. Rangkaian Percobaah ........................................................................................................... 22

D. Prosedur Percobaan .............................................................................................................. 24

BAB IV ............................................................................................................................................... 26

PRAKTIKUM INPUT PUSHBUTTON ............................................................................................. 26

A. Tujuan .................................................................................................................................... 26

B. Alat dan Bahan yang digunakan .......................................................................................... 26

C. Teori singkat dan Rangkaian Percobaah ............................................................................ 26

D. Prosedur percobaan .............................................................................................................. 28

BAB V ................................................................................................................................................ 29

PRAKTIKUM MENGONTROL TINGKAT KECERAHAN LED .................................................... 29

A. Tujuan .................................................................................................................................... 29

B. Alat dan Bahan yang digunakan .......................................................................................... 29

C. Dasar teori dan Rangkaian Percobaah ................................................................................ 29

Page 5: Disusun Oleh - elektro.polimdo.ac.id · Modul Praktek Mikrokontroler Prodi D3 Teknik Listrik Jurusan Teknik Elektro, 2018 iii KATA PENGANTAR Puji dan syukur patut patutlah dipanjatkan

Modul Praktek Mikrokontroler Prodi D3 Teknik Listrik Jurusan Teknik Elektro, 2018

v

D. Prosedur Percobaan .............................................................................................................. 32

BAB VI ............................................................................................................................................... 33

PRAKTIKUM APLIKASI POTENSIO METER ............................................................................... 33

A. Tujuan .................................................................................................................................... 33

B. Alat dan Bahan yang digunakan .......................................................................................... 33

C. Dasar teori dan Rangkaian Percobaah ................................................................................ 33

D. Prosedur Percobaan .............................................................................................................. 36

BAB VII ............................................................................................................................................. 37

PRAKTIKUM APLIKASI SOUND ................................................................................................... 37

A. Tujuan .................................................................................................................................... 37

B. Alat dan Bahan yang digunakan .......................................................................................... 37

C. Dasar teori dan Rangkaian Percobaah ................................................................................ 37

D. Prosedur Praktikum ............................................................................................................. 39

BAB VIII ............................................................................................................................................ 41

PRAKTIKUM APLIKASI THERMOMETER DIGITAL .................................................................. 41

A. Tujuan .................................................................................................................................... 41

B. Alat dan Bahan yang digunakan .......................................................................................... 41

C. Dasar teori dan Rangkaian Percobaah ................................................................................ 41

BAB IX ............................................................................................................................................... 48

PRAKTIKUM APLIKASI THERMOMETER DIGITAL DENGAN TAMPILAN LCD .................. 48

A. Tujuan .................................................................................................................................... 48

B. Alat dan Bahan yang digunakan .......................................................................................... 48

C. Dasar teori dan Rangkaian Percobaah ................................................................................ 48

D. Prosedur Percobaan .............................................................................................................. 51

BAB X ................................................................................................................................................ 53

PRAKTIKUM APLIKASI SENSOR CAHAYA (LDR) .................................................................... 53

A. Tujuan .................................................................................................................................... 53

B. Alat dan Bahan yang digunakan .......................................................................................... 53

C. Dasar teori dan Rangkaian Percobaah ................................................................................ 53

BAB XI ............................................................................................................................................... 58

PRAKTIKUM APLIKASI SENSOR ULTRASONIK ....................................................................... 58

A. Tujuan .................................................................................................................................... 58

B. Alat dan Bahan yang digunakan .......................................................................................... 58

C. Dasar teori dan Rangkaian Percobaah ................................................................................ 58

DAFTAR PUSTAKA ........................................................................................................................ 63

Page 6: Disusun Oleh - elektro.polimdo.ac.id · Modul Praktek Mikrokontroler Prodi D3 Teknik Listrik Jurusan Teknik Elektro, 2018 iii KATA PENGANTAR Puji dan syukur patut patutlah dipanjatkan

Modul Praktek Mikrokontroler Prodi D3 Teknik Listrik Jurusan Teknik Elektro, 2018

1

BAB 1

PENGENALAN MIKROKONTROLER ARDUINO

1.1 Apa itu arduino

Arduino adalah kit eloktronik atau papan rangkaian elektronik open source yang

didalamnya terdapat komponen utama, yaitu sebuah chip mikrokontroler dengan jenis AVR

dari perusahaan ATMEL. Mikrokontroler ini sendiri adalah chip atau IC (integrated circuit)

yang bisa diprogram menggunakan komputer. Tujuan menanamkan program pada

mikrokontroler adalah agar rangkaian elektronik dapat membaca input , memproses input

tersebut dan kemudian menghasilkan output sesuai dengan yang diinginkan. Jadi

mikrokontroler bertugas sebagai „otak‟ yang mengendalikan input, proses dan output sebuah

rangkaian elektronik.

Secara umum, arduino terdiri dari 2 bagian yaitu :

1. Hardware berupa papan input/output (I/O) yang open source.atau board arduino

2. Software arduino yang open source, meliputi software arduino IDE untuk menulis

program dan driver untuk koneksi dengan komputer.

1.2 Sejarah Singkat Arduino

Pendiri dari Arduino itu sendiri adalah Massimo Banzi dan David Caurtielles sebagai founder.

Awalnya mereka memberi nama proyek itu dengan sebutan Arduin dari Ivrea tetapi seiring dengan

perkembangan zaman, nama proyek itu diubah menjadi Arduino yang berarti “Teman yang Kuat”

atau dalam versi bahasa inggrisnya dengan sebutan “Hardwin”.

Proyek pengkabelan diciptakan oleh seorang seniman sekaligus programmer asal

kolombia bernama Hernando Barragan. Pengkabelan ini adalah proyek tesis Hernando pada

desain interaksi Institute Ivrea. Hal tersebut dimaksudkan untuk menjadi versi elektronik

pengolahan yang digunakan dilingkungan pemrogram dan mengambil pola sintaks

Processing. Dengan berkembangnya teknologi , Arduino menjadi sangat popular dikalangan

mahasiswa dan pelajar saat ini. Mereka mengembangkan Arduino dengan bootdloader dan

software dan user Friendly sehingga menghasilkan sebuah board mikrokontroler yang bersifat

open source yang bisa dipelajari dan dikembangkan oleh mahasiswa , pelajar, profesional,

pemula, dan penggemar elektronika maupun robotic diseluruh dunia. IDE (Integrated

Development Envirinment) diciptakan oleh Casey Reas dan Ben Fry, berapa programmer

Page 7: Disusun Oleh - elektro.polimdo.ac.id · Modul Praktek Mikrokontroler Prodi D3 Teknik Listrik Jurusan Teknik Elektro, 2018 iii KATA PENGANTAR Puji dan syukur patut patutlah dipanjatkan

Modul Praktek Mikrokontroler Prodi D3 Teknik Listrik Jurusan Teknik Elektro, 2018

2

yang lain juga terlihat seperti Tom Igoe , Gianluca Martino , David Mellis , dan Nicholas

Zambett.

1.3 Kelebihan Arduino

Tentu saja ada banyak mikrokontroler maupun platform mikrokontroler tersedia, misalnya

saja Basic Stamp-nya Parallax, BX-24-nya Netmedia, Phidget, MIT‟s Handyboard, dan lain

sebagainya. Semua alat tersebut bertujuan untuk menyerderhanakan berbagai macam

kerumitan maupun detail rumit pada pemrograman mikrokontroler sehingga menjadi paket

mudah digunakan (easy-to-use) Arduino juga menyederhanakan proses bekerja dengan

mikrokontroler, sekaligus menawarkan berbagai macam kelebihan antara lain :

Murah. Papan (perangkat keras) Arduino biasanya dijual relative murah

Sederhana dan Mudah Programnya. Perlu diketahui bahwa lingkungan pemrogram di

arduino mudah digunakan untuk pemula , dan cukup fleksibel bagi mereka yang sudah

tingkat lanjut. Untuk guru, dosen, Arduino berbasis pada lingkungan pemrogram

Processing, sehingga jika mahasiswa atau murid-murid terbiasa menggunakan Processing

tentu saja akan mudah menggunakan Arduino. Bahkan didalam dos/kotak Arduino

terdapat tulisan bahwa arduino diperuntukkan bagi seniman, desainer, penghobi, dan

siapa saja. Sungguh membesrkan hati dan membangkitkan semangat bahwa penggunanya

tidak harus teknisi berpengalaman atau ilmuan ber otak jenius.

Perangkat Lunaknya Open Source. Perangkat lunak Arduino IDE dipublikasikan sebagai

open source, tersedia bagi para pemrogram berpengalaman untuk pengembangan lebih

lanjut bahasanya bisa dikembangkan lebih lanjut melalui pustaka-pustaka C++ yang

berbasis pada bahasa C untuk AVR.

Perangkat Kerasnya Open Source. Perangkat keras Arduino berbasis mikrokontroler

ATMEGA8, ATMEGA168, ATMEGA328 dan ATMEGA1280. Dengan demikian , siapa

saja bisa membuatnya (dan kemudian bisa menjualnya) perangkat keras Arduino ini,

apalagi bootloader tersedia langsung dari perangkat lunak Arduino IDE-nya. Bisa juga

menggunakan breadboard untuk membuat perangkat arduino beserta peripheral-periferal

lain yang dibutuhkan.

Tidak perlu perangkat chip programmer. Karena didalamnya sudah ada bootloader yang

akan menangani upload program dari komputer.

Sudah memiliki sarana komunikasi USB. Sehingga pengguna laptop yang tidak memiliki

port serial/RS323 bisa menggunakannya.

Page 8: Disusun Oleh - elektro.polimdo.ac.id · Modul Praktek Mikrokontroler Prodi D3 Teknik Listrik Jurusan Teknik Elektro, 2018 iii KATA PENGANTAR Puji dan syukur patut patutlah dipanjatkan

Modul Praktek Mikrokontroler Prodi D3 Teknik Listrik Jurusan Teknik Elektro, 2018

3

Bahasa pemrograman yang relative mudah, karena software Arduino dilengkapi dengan

kumpulan library yang cukup lengkap.

Memiliki modul siap pakai (shield) yang bisa ditancapkan pada board Arduino. Misalnya

shield GPS, Ethernet , SD Card, dll.

1.4 Arduino Uno

Arduino Uno adalah papan mikrokontroler berbasis ATmega328 yang memiliki 14 pin digital

input/output (dimana 6 pin dapat digunakan sebagai output PWM) , 6 input analog, clock speed 16 MHz,

koneksi USB, Jack listrik, header ICSP, dan tobol reset. Board ini menggunakan daya yang terhubung

ke komputer dengan kabel USB atau daya eksternal dengan adptor AC-DC ata baterai.

Spesifikasi Board Arduino Uno.

Mikrokontroler ATmega328

Tegangan Operasi 5V

Tegangan Input (disarankan) 7-12V

Batas Tegangan

Input 14(diman 6 pin output PWM)

Pin Analog Input 6

Arus DC per I/O pin 40 Ma

Arus DC untuk pin 3.3V 50 Ma

Flash memory

32 KB(ATmega328) dimana

0,5 KB digunakan oleh

bootloader

SRAM 2 KB (ATmega328)

EEPROM 1 KB (ATmega328)

Clock 16 MHz

Arduino dapat diaktifkan melalui koneksi USB atau dengan catu daya eksternal.

Sumber daya dipilih secara otomatis. Sumber daya eksternal (non-USB) dapat berasal dari

adapter AC ke DC atau baterai. Adaptor ini dapat dihubungkan dengan menancapkan power

jack, dapat juga dihubungkan pada power pin (Gnd dan Vin)

Board Arduino Uno dapat beroperasi pada pasokan eksternaldari 6 sampai 20 volt. .

Meskipun pin 5V dapat disuplai kurang dari 5 volt, boar mungkin tidak stabil. Jika

menggunakan tegangan lebih dari 12 V , regulator tegangan bisa panas dan merusak Board.

Kisaran yang disarankan adalah 7 sampai 12 volt.

Page 9: Disusun Oleh - elektro.polimdo.ac.id · Modul Praktek Mikrokontroler Prodi D3 Teknik Listrik Jurusan Teknik Elektro, 2018 iii KATA PENGANTAR Puji dan syukur patut patutlah dipanjatkan

Modul Praktek Mikrokontroler Prodi D3 Teknik Listrik Jurusan Teknik Elektro, 2018

4

Adapun pin power suplai pada Arduino Uno adalah :

- VIN. Tegangan input board arduino ketika menggunakan sumber daya (5 Volts dari

sambungan USB atau dari sumber regulator lain). Anda dapat mensuplai tegangan

pada pin ini jika suplai tegangan lewat power jack , dapat mengakses melalui pin ini.

- 5V. keluaran pin ini telah diatur sebesar 5V dari regulator pada board. Board dapat

disuplai melalui DC jack power (7-12V).konektor USB (5V), atau pin VIN (7-12 V).

menyuplai tegangsn melalui pin 5V atau 3.3V bypasses regulator, dapat meruska

board.

3V3. Suplai 3,3 volt dihasilkan oleh regulator pada board menarik arus maksimum 50 mA.

Memory

ATMEGA328 mempunyai memori 32 KB (dengan 0.5 KB digunakan untuk

bootloader). Juga mempunyai 2 KB SRAM dan 1 KB EEPROM ( yang mana dapat di baca

tulis dengan library EEPROM).

Input dan Output

Setiap pin digital pada board Arduino Uno dapat digunakan sebagai input ataupun

output. Dengan menggunakan fungsi pin model () digital write(), dan digital read(). Pin-pin

ini beroperasi pada tegangan 5Volt. Setiap pin mampu memberikan atau menerima arus

maksimum dan memiliki resistor pull-up internal (secara default tidak terhubung) dari 20-50

kOhm. Selain itu, berapa pin memiliki fungsi khusus:

- Serial: 0 (RX) dan 1 (TX). Digunakan untuk menerima (RX) dan mengirimkan (TX)

dan serial TTL. Pin ini terhubung ke pin yang sesuai dari chip ATmega 8U2 USB-to-

TTL Serial

- Interupsi Eksternal: 2 dan 3. Pin ini dapat dikonfigurasi untuk memincu interrupt pada

nilai yang rendah , tetapi naik atau turun, atau perubahan nilai.

- PWM:3, 5, 6, 9, 10, dan 11. Menyediakan 8-bit output PWM dengan fungsi

analogWrite()

- SPI: 10 (SS), 11 (MOSI), 12(MISO), 13 (SGK). Pin ini mendukung komunikasi SPI

menggunakan library SPI.

Page 10: Disusun Oleh - elektro.polimdo.ac.id · Modul Praktek Mikrokontroler Prodi D3 Teknik Listrik Jurusan Teknik Elektro, 2018 iii KATA PENGANTAR Puji dan syukur patut patutlah dipanjatkan

Modul Praktek Mikrokontroler Prodi D3 Teknik Listrik Jurusan Teknik Elektro, 2018

5

- Led: 13. Terdapat LED pin digital 13 pada board. Ketika pin bernilai tinggi (HIGH),

LED menyala (ON), ketika pin bernilai rendah (LOW), LED akan mati (OFF)

- Arduino Uno memiliki 6 input analog ,belebel A0 sampai A5, yang masing-masing

menyediakan 10 bit resolusi (yaitu 1024 nilai yang berbeda). Secara default , 5 volt

dari ground

Bahasa Pemrograman Arduino

Banyak bahasa pemrograman yang bisa digunakan untuk program mikrokontroler ,

misalnya bahasa basic, assembly,atau bahasa C. Namun dalam pemrograman Arduino bahasa

yang dipakai adalah bahasa C. Bahasa C adalah bahasa yang sangat lazim dipakai sejak awal

komputer diciptakan dan sangat berperan dalam perkembangan software.

Bahasa C telah membuat bermacam-macam sistem opreasi dan compiler untuk banyak

bahasa pemrograman. Misalnya sistem operasi unix, linux,dsb. Bahasa C adalah bahasa

pemrograman yang sangat ampuh yang kekuatannya mendekati bahasa assembler. Bahasa C

menghasilkan file kode yang sangat kecil dan dieksekusi dengan sangat cepat. Karena itu,

Bahasa C sering digunakan pada sistem operasi dan pemrograman mikrokontroler .

Bahasa C adalah multi-platform karena bahasa C bisa diterapkan pada linkungan

windows, unix , linux, atau sistem operasi lain tanpa mengalami perubahan source code.

(kalaupun ada perubahan, biasanya sangat minim). Karena Arduino menggunakan bahasa C

yang multi-platform, software arduino pun bisa dijalankan pada saat sitem operasi yang

umum, misalnya Windows, Linux, dan MacOS.

Struktur

Setiap program arduino (biasa disebut Sketch) mempunyai dua buah fungsi yang harus

ada.

Void Setup() { }

Semua kode di dalam kurung kurawal akan dijalankan hanya satu kali ketika program

arduino dijalankan untuk pertama kalinya.

Void Loop () { }

Fungsi ini akan dijalankan setelah setup (fungsi void setup) selesai. Setelah dijalankan

satu kali fungsi ini akan dijalankan lagi , dan lagi secara terus-menerus sampai catu daya

(power) di lepaskan.

Page 11: Disusun Oleh - elektro.polimdo.ac.id · Modul Praktek Mikrokontroler Prodi D3 Teknik Listrik Jurusan Teknik Elektro, 2018 iii KATA PENGANTAR Puji dan syukur patut patutlah dipanjatkan

Modul Praktek Mikrokontroler Prodi D3 Teknik Listrik Jurusan Teknik Elektro, 2018

6

Syntax

Berikut ini adalah bahasa C yang dibutuhkan untuk format penulisan.

// (komentar satu baris.

Kadang di perlukan untuk memberikan catatan pada arti dari kode-kode yang

dituliskan. Cukup menuliskan dua buah garis miring dan apapun yang kita

ketikkan di belakangnya akan diabaikan oleh program.

Contoh penggunaan :

// proyek Blink LED, uji cobapertama kali

/* */ (komentar banyak baris)

Jika anda punya banyak catatan, hal ini dapat dituliskan pada beberapa baris

sebagai komentar. Semua hal yang terletak diantara dua symbol tersebut akan

diabaikan oleh program.

Contoh penggunaan:

/* Kode program proyek sensor cahaya,

LED padam kondisi lingkugan terang danyala Jika kondisi lingkungan

gelap */

{ } (Kurung kurawal)

Digunakan untuk mendefenisikan kapan blok program mulai dan berakhir

(digunakan juga pada fungsi dan pengulangan).

Contoh penggunaan kurung kurawal:

Void loop () {

Serial.printIn (val)

}

; (titk koma)

Setiap baris kode harus diakhiri dengan tanda titik koma (jika ada titk koma

yang hilang maka tidak akan bisa dijalankan).

Contoh penggunaan titk koma : delay (1000);

Variabel

Sebuah program secara garis besar dapat didefenisikan sebagai instruksi untuk

memindahkan angka dengan cara yang cerdas. Variable inilah yang digunakan untuk

memindahkan.

Page 12: Disusun Oleh - elektro.polimdo.ac.id · Modul Praktek Mikrokontroler Prodi D3 Teknik Listrik Jurusan Teknik Elektro, 2018 iii KATA PENGANTAR Puji dan syukur patut patutlah dipanjatkan

Modul Praktek Mikrokontroler Prodi D3 Teknik Listrik Jurusan Teknik Elektro, 2018

7

Int (integer)

Digunakan untuk menyimpan angka dalam 2 byte (16 bit). Tidak mempunyai angka

decimal dan menimpan nilai dari -32.768 dan 32.767

Long (long)

Digunakan ketika integer tidak mencukupi lagi. Memakai 4 byte (32 bit) dari

memori (RAM) dan mempunyai rentang dari 2.147.483.648 dan 2.147.483.647.

Boolean (Boolean)

Variable sederhana yang digunakanuntuk menyimpan nilai true (benar) atau False

(salah). Sangat berguna karena hanya menggunakan 1 bit dari RAM

Float

Digunakan untuk angka decimal (foating point). Memakai 4 byte (32 bit) dari RAM

mrmpunyai rentang dari -3,4028235E+38 dan -3,4028235E+38.

Char (character)

Menyimpan 1 karakter menggunakan kode ASCII (misalnya „A‟ = 65). Hanya

memakai 1 byte (8 bit ) dari RAM.

Byte

Angka antara 0 dan 255. Sama halnya dengan char , namun byte hanya

menggunakan 1 byte memory.

Unsignt int

Sama dengan int , menggunakan 2 byte tetapi Unsignt int ini tidak dapat digunakan

untuk menyimpan angka negative , batas nya dari 0 sampai 65,35.

Unsignt Long

Sama saja dengan long, namun tidak bisa menimpang angka negative , batas nya

dari 0 sampai 4.294.967.295.

Double

Angka ganda dengan persisi maksimum 1,7976931348623157x 100308

String

String digunakan untuk menyimpan informasi teks, dengan karakter ASCII , bisa

menggunakan string untuk mengirim pesan via serial port , atau menampilkan teks

pada layar LCD.

Array

Array adalah kumpulan variable dengan tipe yang sama. Setiap variable dalam

kumpulan variable tersebut terdapat elemen, dapat diakses melalui indeks.

Page 13: Disusun Oleh - elektro.polimdo.ac.id · Modul Praktek Mikrokontroler Prodi D3 Teknik Listrik Jurusan Teknik Elektro, 2018 iii KATA PENGANTAR Puji dan syukur patut patutlah dipanjatkan

Modul Praktek Mikrokontroler Prodi D3 Teknik Listrik Jurusan Teknik Elektro, 2018

8

Mislanya kita ingin menginisialisasi pin 3 , pin 5 , pin 6 , pin 7, maka dengan

menggunakan array int pins[]={3 , 5, 6, 7};

Operator Matematika

Operator yang digunakan untuk memanipulasi angka (bekerja seperti matematika yang

sederhana).

= membuat suatu menjadi sama dengan nilai yang lain (misalnya: x = 10*2, x

sekarang sama dengan 20)

% menghasilkan sisa dari hasil pembagian suatu angka dengan angka yang

lain (misalnya: 12%10, ini akan menghasilkan angka 2)

+ penjumlahan

- pengurangan

/ pembagian

Oprator Pembanding

Digunakan untuk membandinhkan nilai logika.

== sama dengan (misalnya: 12==10 adalah FALSE (salah) 12=-12 adalah

TRUE (benar))

!= tidak sama dengan (misalnya: 12!=10 adalah TRUE (benar) atau 12!=12

adalah FALSE(salah)

< lebih kecil dari (misalnya: 12<10 adalah FALSE (salah) aatau 12<12 adalah

FALSE (salah) atau 12 < 14 adalah TRUE (benar))

> lebih besar dari (misalnya: 12 > 10 adalah TRUE (benar) aatau 12>12

adalah FALSE (salah) atau 12 >14 adalah FALSE (salah))

Struktur Pengaturan

Pemrograman sangat tergantung pada pengaturan yang akan dijalankan berikutnya,

berikut ini adalah elemen dasar pengaturan (banyak lagi yang lain dan bisa dicari diinternet.

1. If….else, dengamn format seperti berikut ini:

If (kondisi) { } Else { }

Dengan struktur seperti di atas program akan menjalankan kode yang ada pada

kurung kurawal jika kondisinya TRUE, dan jika tidak (FALSE) maka akan

Page 14: Disusun Oleh - elektro.polimdo.ac.id · Modul Praktek Mikrokontroler Prodi D3 Teknik Listrik Jurusan Teknik Elektro, 2018 iii KATA PENGANTAR Puji dan syukur patut patutlah dipanjatkan

Modul Praktek Mikrokontroler Prodi D3 Teknik Listrik Jurusan Teknik Elektro, 2018

9

diperiksa apakah kondisi pada else if dan jika kondisinya FALSE maka kode pada

else yang akan dijalankan.

2. For, dengan format seperti berikut in: For (int I = 0;I <#pengulangan;i++) { }

Digunakan bila anda ingin melakukan pengulangan kode di dalam kurung kurawal

beberapa kali, ganti #pengurangan dengan jumlah pengulangan yang diinginkan.

Melakuan perhitungan ke atas dengan i++ atau kebawah dengan i

Digital

1. PinMode( pin, mode)

Digunakan untuk menetapkan mode dari suatu pin, pin adalah nomor pin yang akan

digunakan dari 0-19 (pin analog 0-5 adalah 14-19). Mode yang bisa digunakan

adalah INPUT atau OUTPUT.

2. Digital Write(pin , value)

Ketika sebuah pin ditetapkan sebagai OUTPUT, pin tersebut dapat dijadikan HIGH

(ditarik menjadi 5 volts) atau LOW (diturunkan menjadi ground)

Analog

Arduino adalah mesin digital, tetapi mempunyai kemampuan untuk beroperasi

didalam alam analog (menggunakan trik). Berikut ini cara untuk menghadapi hal yang bukan

digital.

1. analogWrite (pin,value)

beberapa pin pada arduino UNO mendukung PWM ( pulsewidth modulation) yaitu

pin 3 , 5 , 6 ,7, 10, 11. Ini dapat mengubah pin hidup (on) atau mati (off) dengan

sangat cepat sehingga membuatnya dapat berfungsi layaknya keluarananalog.

Value (nilai) pada format kode tersebut adalah angka antara 0 (0%duty cycle ˜ 0V)

dan 255 (100% duty cycle ˜5V)

2. analogRead (pin)

ketika pin analog ditetapkan sebagai INPUT ,anda dapat menbaca keluaran

voltasenya. Keluarannnya berupa angka antara 0 (untuk 0 volts) dan 1023 (untuk 5

volts)

Page 15: Disusun Oleh - elektro.polimdo.ac.id · Modul Praktek Mikrokontroler Prodi D3 Teknik Listrik Jurusan Teknik Elektro, 2018 iii KATA PENGANTAR Puji dan syukur patut patutlah dipanjatkan

Modul Praktek Mikrokontroler Prodi D3 Teknik Listrik Jurusan Teknik Elektro, 2018

10

SOFTWARE ARDUINO IDE

Software ini digunakan untuk menulis program pada board arduino. IDE (integrated

Development Emvirorment) adalah sebuah software yang sangat berperan untuk menulis

program, meng-compilemenjadi kode biner dan mengupload ke dalam memory

mikrokontroler. Software ini dapat di download secara gratis.

Instalasi SoftwareArduino IDE

Langkah-langkah instalasi IDE Arduino adalah sebagai berikut:

1. Download Software IDE Arduino pada website resmi Arduino

http://arduino.cc/en/Main/Software , hasil download berupa file kompresi, Arduino-

1.0.6-windows.zip kemudian ekstrak hasil download.

2. Ekstrak file zip hasil download pada salah satu folder missa lpada folder D. pada

file kompres zip terdapat arduino.exe.

2. Jalankan aplikasi dengan mengklik dua kali arduino.exe.

3. Setelah klik dua kali arduino.exe diperoleh jendela utama dari software IDE

arduino seperti gambar berikut

Gambar 1. Tampilan Software Arduino IDE

Software IDE arduino adalah software yang ditulis dengan

menggunakan java. Jendela utama IDE arduino terdiri dari tiga bagian utama, yaitu :

Bagian atas, yakni toolbar , pada bagian atas juga terdapat menu file, edit, sketch,

tools, dan help

Page 16: Disusun Oleh - elektro.polimdo.ac.id · Modul Praktek Mikrokontroler Prodi D3 Teknik Listrik Jurusan Teknik Elektro, 2018 iii KATA PENGANTAR Puji dan syukur patut patutlah dipanjatkan

Modul Praktek Mikrokontroler Prodi D3 Teknik Listrik Jurusan Teknik Elektro, 2018

11

Bagian tengah, yaitu tempat penulisan kode program atau sketch

Bagian bawah berupa status bar/ jendela pesan (message windows) atau tes konsul

yang berisi status dan pesan error.

Instalasi Drivers USB Arduino pada Windows

Untuk menghubungkan atau mengomunikasikan komputer/laptop dengan board

arduino, diperlukan instalasi driver. Tentunya peralatan yang dibutuhkan adalah board

arduino, dalam workshop ini digunakan Arduino Uno R3 dan juga dibutuhkan kabel USB

standar A-B (sama dengan kabel yang anda gunakan untuk printer USB).

Langkah-langkah instalasi driver untuk board arduino Uno (sama juga untuk jenis

board Arduio Duemilanove, nano atau diecimila) dengan sistem operasi windows sebagai

berikut :

1. Buka atau jalankan software arduino IDE, dengan mengklik dua kali arduino.exe

2. Hubungkan board Arduino dengan komputer menggunakan kabel USB standar (A-

B) dan yakin bahwa LED warna hijau pada board arduino nyala (berlabel

ON/PWR). Board arduinoakan menarik sumber daya listrik dari port USB.

3. Selanjutnya, windows secara otomatis akan mendeteksi kalau tidak ditemukan

driver board arduino. Jangan khwatir ini kondisi normal. Silahkan tutup saja jendela

ini.

4. Klik tombol start menu pada komputer anda dan buka control panel, masuk ke

menu sistem and security.

5. Kemudian klik sistem. Setelah tampilan sistem muncul, klik Device Manager. Lihat

pada bagian other device. Anda akan melihat sebuah tulisan Unknown device. Ini

menandakan bahwa board arduino anda belum dikenal windows 7.

6. Klik kanan pada port “Unknown device” dan pilih opsi “update driver software”

7. Kemudian , pilih opsi “Browse my komputer for driver software”

8. Telusuri folder arduino 1.0.6 yang anda ekstrak tadi.

9. Pilih next. Windows akan meneruskan instalasi driver.

10. Setelah klik next akan muncul jendela piringan dari windows security, pilih install

this driver software anyway.

Page 17: Disusun Oleh - elektro.polimdo.ac.id · Modul Praktek Mikrokontroler Prodi D3 Teknik Listrik Jurusan Teknik Elektro, 2018 iii KATA PENGANTAR Puji dan syukur patut patutlah dipanjatkan

Modul Praktek Mikrokontroler Prodi D3 Teknik Listrik Jurusan Teknik Elektro, 2018

12

11. Klik close untuk mengakhiri instalasi. Selamat anda telah menginstal driver

Arduino pada komputer anda, dan selanjutnya siap mengomunikasikan atau meng-

upload program pada board arduino anda.

12. Untuk mengecek apakah driver telah benar terinstal, masuk kembali device

manager. Untuk melihat port (com) dari arduino.

Bread Board dan kabel jumper

Untuk praktek, akan menggunakan project board (ada yang menyebutnya dengan

istilah bread board) dan beberapa kabel jumper untuk menghubungkan antara komponen dan

Arduino (Gambar 1.2). Dengan project board kita tidak perlu menyolder rangkaian sehingga

relatif mudah dan cepat dalam merangkai. Project board memungkinkan kita untuk

membangun dan membongkar rangkaian dengan cepat sehingga sangat cocok untuk

eksperimen. Tapi jika kita ingin membuat rangkaian yang permanen, maka kita harus

menggunakan PCB.

Gambar 1.1 Breadboard dan Kabel jumper

Yang terpenting adalah, haruslah memahami jalur-jalur pada project board. Project board

terdiri dari jalur vertikal dan jalur horisontal. Jalur vertikal ada di bagian tengah yang terdiri

dari 2 x 64 jalur. Masing-masing jalur terdiri dari 5 titik vertikal, misal jalur 1A-1B-1C-1D-

1E dan jalur 1F-1G-1H-1I-1J yang kedua tidak saling tersambung. Jalur horisontal sebanyak 8

jalur, 4 jalur ada di bagian atas dan 4 jalur lagi di bagian bawah. Jalur ini bisa digunakan

untuk power supply (VCC dan GND) untuk rangkaian. Untuk lebih jelasnya, silakan

perhatikan Gambar 1.2 Garis merah menunjukkan bahwa lubang tersebut terhubung secara

fisik.

Page 18: Disusun Oleh - elektro.polimdo.ac.id · Modul Praktek Mikrokontroler Prodi D3 Teknik Listrik Jurusan Teknik Elektro, 2018 iii KATA PENGANTAR Puji dan syukur patut patutlah dipanjatkan

Modul Praktek Mikrokontroler Prodi D3 Teknik Listrik Jurusan Teknik Elektro, 2018

13

Gambar 1.2 Peta jalur pada breadboard

Uji Sketch Pertama

1. buka software IDE Arduino dengan menjalankan sebuah file bernama arduino.exe

pada lokasi software arduino di komputer anda.

2. setelah jendela utama terbuka klik file →example→basics→blink

3. selanjutnya akan muncul kode blink program pada kotak entri/penulisan sketch

4. kode program siap di upload ke papan arduino

Gambar 2. Rangkaian LED

Kode program led berkedip

/* simulasi dan praktik pertama led berkedip

untuk uji simulasi dan upload program

*/

Page 19: Disusun Oleh - elektro.polimdo.ac.id · Modul Praktek Mikrokontroler Prodi D3 Teknik Listrik Jurusan Teknik Elektro, 2018 iii KATA PENGANTAR Puji dan syukur patut patutlah dipanjatkan

Modul Praktek Mikrokontroler Prodi D3 Teknik Listrik Jurusan Teknik Elektro, 2018

14

Int led = 13 ; // led terhubung pada pin 13

Void setup () {

` pinMode (led,OUTPUT); // set led sebagai output

}

Void loop () {

digitalWrite (led, HIGH); // set led on

delay (500) ; // tunnda untuk ½ detik

digitalWrite (led, LOW); // set led off

delay (500) ; // tunnda untuk ½ detik

}

Penjelasan program

1. pada baris pertama , kode program

/* simulasi dan praktik pertama led berkedip untuk uji simulasi dan upload program

*/

Kode ini /*..*/ digunakan untuk menuliskan catatan untuk komentar dengan banyak

bari misal nama project, prinsip kerja, dll. Semua hal yang terletak di antara dua

symbol tersebut akan diabaikan oleh program. Komentar untuk baris digunakan

kode //.

2. Pada baris kedua

Int led = 13;

Kode ini dikenal sebagai variable. Variable adalah tempaT menyimpan data. Pada kode

ini kita mensetting variable jenis int atau integer. Integer digunakan untuk menyimpan

angka dalam 2 byte (16 bit). Tidak mempunyai angka decimal dan menyimpan nilai dari -

32.768 dan 32.767. selanjutnya dari kode di atas diberi nama led dan mempunyai nilai 13.

Pada pemrograman arduino , nama variable led merupakan pendefenisian led sebagai

nilai 13, ini digunakan untuk menandai nomor saluran yang digunakan untuk pin arduino

terhubung dengan led. Dengan kata lain led dipasang pada pin 13.

3. Baris program berikutnya

Void setup () {

pinMode (led,OUTPUT);

Page 20: Disusun Oleh - elektro.polimdo.ac.id · Modul Praktek Mikrokontroler Prodi D3 Teknik Listrik Jurusan Teknik Elektro, 2018 iii KATA PENGANTAR Puji dan syukur patut patutlah dipanjatkan

Modul Praktek Mikrokontroler Prodi D3 Teknik Listrik Jurusan Teknik Elektro, 2018

15

Fungsi void setup (), merupakan fungsi yang dieksekusi pertama kali saat setelah arduino

diberi catu daya, berfungsi untuk perintah-printah instalasi sebelum program utama

dieksekusi isi dari fungsi ini adalah pendefenisian pin 13 dengan sintax : pinMode(led,

OUTPUT); memiliki arti bahwa mode dari pin yaitu saluran D13 (digital nomor 13 dari

pin input/output) difungsikan sebagai saluran keluaran atau output. Dengankata lain,

menset pin 13 sebagai output .

4. Baris program berikutnya

Void loop () {

digitalWrite (led, HIGH);

delay (500) ;

digitalWrite (led, LOW);

delay (500) ;

fungsi ini akan dijalankan setelah setup (fungsi Void setup) selesai.Fungsi void loop (),

merupakan fungsi dari program utama yang akan dieksekusisecara berurutan dari atas

sampai akhir dan kembali lagi dari atas sampai akhir, begitu seterusnya karena

merupakan loop yang tidak pernah berakhir. Baris pertama dari fungsi ini adalah

digitalWrite(led HIGH); artinya tulislah logika 1 (high) pada pin keluaran nomer13,

dengan demikian led yang mengeksekusinya sintax delay ; yaitu waktu tunda selama 500

milisekon atau ½ detik , dengandemikian led menyala selama setengah detik , berikutnya

adalah digitalWrite (led, LOW); artinya tulisan logika 0 (low) pada pin keluaran nomor

13, dengan delay (500) mengakibatkan led padam selam ½ detik . keseluruhan program,

led berkedip hidup selama setengah detik , padam selama setengah detik . demikian

seterusnya catu daya pada Arduino dilepas.

Upload Program Pertama “Led Berkedip” Ke Board Arduino

Jika petama kali belajar bahasa pemrograman apapun (basic,java,html,dll) biasanya

pelajaran pertama kita , yaitu program “hello world”. Nah pada Arduino , program “hello

world” ini adalah led berkedip (blinking led) , program ini kita gunakan untuk menguji papan

arduino yang kita beli , apa benar-benar berfungsi sebagaimana mestinya.

Daftar komponen dan peralatan yang diperlukan:

1. Papan Arduino Uno R3

2. Kabel USB standar A-B

Page 21: Disusun Oleh - elektro.polimdo.ac.id · Modul Praktek Mikrokontroler Prodi D3 Teknik Listrik Jurusan Teknik Elektro, 2018 iii KATA PENGANTAR Puji dan syukur patut patutlah dipanjatkan

Modul Praktek Mikrokontroler Prodi D3 Teknik Listrik Jurusan Teknik Elektro, 2018

16

Pada papan Arduino Uno terdapat sebuah led kecil yang terhubung ke pin digital no

13. Led ini dapat digunakan sebagai output saat pengguna membuat/menguji

sebuah program dan ini membutuhkan sebuah penanda dari jendela program

tersebut. Ini adalah cara yang praktis saat pengguna melakukan uji coba.

Langkah-langkah upload uji program pertama ke papan arduino sebagai berikut:

1. Jalankan software IDE arduino.

2. Colokkan kabel USB yang tersambung dengan papan arduino ke komputer anda.

Pastikan windows sudah dapat mengenal papan ardiuno anda (srial port)

3. Selanjutnya klik tools→board→Arduino Uno. Kemudian ketik atau maArduino

Uno.

4. Kemudian ketik atau masukkan kode program “led berkedip”

5. Sebelum melakukan upload ke papan arduino sebaiknya kita cek program/sketch

yang kita masukkan , apa ada yang eror atau tidak, caranya klik icon verify.

Bila kode program/sketch tidak ada yang eror, maka jendela teks konsul terdapat

keterangan ukuran byte program.

6. Pada toolbar, klik ikon Upload untuk membuar sketch tersebut kedalam papan

arduino , berkedip-kedip kan? Berhasi…!!!!

Page 22: Disusun Oleh - elektro.polimdo.ac.id · Modul Praktek Mikrokontroler Prodi D3 Teknik Listrik Jurusan Teknik Elektro, 2018 iii KATA PENGANTAR Puji dan syukur patut patutlah dipanjatkan

Modul Praktek Mikrokontroler Prodi D3 Teknik Listrik Jurusan Teknik Elektro, 2018

17

BAB 2

PRAKTIKUM LED

A. Tujuan

Menggunakan Arduino sebagai output untuk menghidupkan nyala LED

Membuat program sederhana untuk menghidupkan nyala LED

B. Alat dan Bahan yang digunakan

1 buah Papan Arduino Uno

1 buah Bread Board

1 buah LED warna merah

1 buah Resistor 300 Ohm

Kabel jumper

C. Teori singkat dan Rangkaian Percobaah

LED merupakan kependekan dari Light Emiting Diode, yaitu diode yang mampu

mengubah listrik menjadi cahaya. Sebagaimana sifat diode, lampu LED memiliki kaki positif

dan negatif. Sehingga pemasangannya tidak boleh terbaik, jika dipasang terbalik maka tidak

akan ada arus yang mengalir dan LED pun tidak akan menyala.

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 (fv) 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 digunakan.

Page 23: Disusun Oleh - elektro.polimdo.ac.id · Modul Praktek Mikrokontroler Prodi D3 Teknik Listrik Jurusan Teknik Elektro, 2018 iii KATA PENGANTAR Puji dan syukur patut patutlah dipanjatkan

Modul Praktek Mikrokontroler Prodi D3 Teknik Listrik Jurusan Teknik Elektro, 2018

18

Gambar 2.1. Rangkaian LED

Langkah kerja dalam membuat rangkaian percobaan:

Sebulum menghubungkan setiap komponen kedalam rangkaian , lepaskan colokan

kabel USB Arduino komputer. Rangkailah komponen satu persatu sesuai dengan rangkaian

yang ditunjukan pada Gambar 3, dimana langkah-langkahnya sebagai berikut:

1. Pasang kaki positif LED di G4 dan kaki negatifnya di G3,

2. Setelah itu, hubungkan salah satu kaki resistor pada lubang J3, kemudian kaki satunya

ke lubang di kolom pertama dari kanan,

3. Ambil kabel jumper, lalu sambungkan lubang J4 ke lubang di kolom kedua dari

kanan,

4. Ambil kabel jumper, sambungkan salah satu lubang di kolom pertama ke socket GND

pada board Arduino,

5. Ambil kabel jumper, sambungkan salah satu lubang di kolom kedua ke socket 5V di

board Arduino

6. Hubungkan USB Arduino ke komputer/laptop.

D. Membuat Sketch Program untuk Led berkedip

Untuk membuat Sketch program, pertama-tama buka aplikasi Arduino IDE seperti pada

Gambar 2.2, kemudian ketikan sketch program seperti yang ditunjukan di bawah ini.

Page 24: Disusun Oleh - elektro.polimdo.ac.id · Modul Praktek Mikrokontroler Prodi D3 Teknik Listrik Jurusan Teknik Elektro, 2018 iii KATA PENGANTAR Puji dan syukur patut patutlah dipanjatkan

Modul Praktek Mikrokontroler Prodi D3 Teknik Listrik Jurusan Teknik Elektro, 2018

19

Gambar 2.2. Tampilan Arduino IDE

Sketch Program LED Blink:

Setelah program diketikan seperti pada Gambar 2.2, maka proses selanjutnya adalah

menghubungkan kabel koneksi USB yang terhubung dengan board Arduino ke port USB pada

Laptop. Selanjutnya atur Comunikasi antara Laptop dengan board Arduino dengan cara

seperti pada Gambar 2.3.

const int pinLED = 8;

void setup() { pinMode(pinLED, OUTPUT);

}

void loop() { digitalWrite(pinLED, HIGH);

delay(500);

digitalWrite(pinLED, LOW);

delay(500); }

Page 25: Disusun Oleh - elektro.polimdo.ac.id · Modul Praktek Mikrokontroler Prodi D3 Teknik Listrik Jurusan Teknik Elektro, 2018 iii KATA PENGANTAR Puji dan syukur patut patutlah dipanjatkan

Modul Praktek Mikrokontroler Prodi D3 Teknik Listrik Jurusan Teknik Elektro, 2018

20

Gaambar 2.3. SetingPengaturan koneksi Board Arduino dengan Laptop

Selanjutnya upload program yang telah dibuat ke board Arduino dengan cara memilih icon

upload pada Arduino IDE seperti pada Gambar 6. Jika tidak ada error pada program yang

dibuat (dengan keterangan Done Uploading), maka system akan beroperasi seperti yang

direncanakan, dalam hal ini adalah menyalakan lampu LED secara blink.

Gambar 6. Proses Upload program sukses

Page 26: Disusun Oleh - elektro.polimdo.ac.id · Modul Praktek Mikrokontroler Prodi D3 Teknik Listrik Jurusan Teknik Elektro, 2018 iii KATA PENGANTAR Puji dan syukur patut patutlah dipanjatkan

Modul Praktek Mikrokontroler Prodi D3 Teknik Listrik Jurusan Teknik Elektro, 2018

21

E. Prosedur Percobaan

1. Amati jalannya system dan berikan tanggapannya jika pada baris program const int

pinLED = 8; dirubah menjadi // const int pinLED = 8;

2. Amati dan berikan tanggapannya jika program di atas diubah menjadi seperti di bawah

ini:

// Pin 8 untuk LED

const int pinLED = 8;

void setup() {

// pin LED sebagai output pinMode(pinLED, OUTPUT);

}

// awal time delay 1000 | 1 detik

int timeDelay = 1000;

void loop() {

// Setiap looping, nilai timeDelay dikurangi 100

timeDelay = timeDelay - 100;

if(timeDelay <= 0){

timeDelay = 1000; }

//Nyalakan dan matikan LED selama timeDelay

digitalWrite(pinLED, HIGH);

delay(timeDelay); digitalWrite(pinLED, LOW);

delay(timeDelay);

}

3. Buatlah program untuk menyalakan 3 buah LED secara berurutan, dengan durasi

perpindahan nyala LED selama 1 detik

4. Buat dalam bentuk laporan seluruh proses percobaan yang telah dilakukan

Page 27: Disusun Oleh - elektro.polimdo.ac.id · Modul Praktek Mikrokontroler Prodi D3 Teknik Listrik Jurusan Teknik Elektro, 2018 iii KATA PENGANTAR Puji dan syukur patut patutlah dipanjatkan

Modul Praktek Mikrokontroler Prodi D3 Teknik Listrik Jurusan Teknik Elektro, 2018

22

BAB III

PRAKTIKUM ANIMASI LED

A. Tujuan

Menggunakan Arduino untuk aplikasi animasi Led

Membuat program sederhana untuk aplikasi animasi Led

B. Alat dan Bahan yang digunakan

1 buah Papan Arduino Uno

1 buah Bread Board

4 buah LED warna merah

4 buah Resistor 300 Ohm

Kabel jumper

C. Rangkaian Percobaah

Program berikut akan membuat LED menyala bergantian sebanyak 5 animasi (perulangan

sebanyak 5 kali). Pertama, semua LED akan mati selama 5 detik. Kedua, LED 1 akan

menyala. Ketiga, LED 1 dan 2 akan menyala. Keempat, LED 1, 2, dan 3 akan menyala.

Kelima, semua LED akan menyala.

Animasi tersebut ditentukan berdasarkan nilai i, nilai i diperiksa dengan perintah IF. Jika nilai

i=0, maka semua LED mati, jika i=1 maka satu LED nyala, dan seterusnya.

Selain menggunakan IF, ada cara lain yang lebih simpel untuk membuat animasi LED seperti

program pada Sketch di bawah ini.

Gambar 2.1. Rangkaian animasi Led

Page 28: Disusun Oleh - elektro.polimdo.ac.id · Modul Praktek Mikrokontroler Prodi D3 Teknik Listrik Jurusan Teknik Elektro, 2018 iii KATA PENGANTAR Puji dan syukur patut patutlah dipanjatkan

Modul Praktek Mikrokontroler Prodi D3 Teknik Listrik Jurusan Teknik Elektro, 2018

23

Langkah-langkahnya :

1. Susun resistor 220 ohm terlebih dahulu pada breadboard seperti gambar rangkaian

2. Pasang LED merah , LED kuning , LED hijau. Perhatikan polaritas kaki LED. Kaki

positif masing-masing LED dihubungkan dengan pin 11, pin 10 , pin 9 , dan pin 8,

sementara kaki negative dihubungkan dengan ground

3. Gunakan kabel jumper untuk menghubungkan papan Arduino dangan Breadboard.

4. Setelah semua terpasang dengan baik, colokkan kabel USB yang terhubung dari papan

Arduino ke komputer.

5. Selanjutnya, jalankan software IDE arduino dan ketikkan kode program pada tempat

penulisan sketch seperti di bawah ini:

// Inisialisasi Pin LED

const int pinLED1 = 8;

const int pinLED2 = 9;

const int pinLED3 = 10;

const int pinLED4 = 11;

void setup() {

// pin LED sebagai output

pinMode(pinLED1, OUTPUT);

pinMode(pinLED2, OUTPUT);

pinMode(pinLED3, OUTPUT);

pinMode(pinLED4, OUTPUT);

}

void loop() {

// perulangan sebanyak 5 kali

// dari i=0 hinga i=4 atau (i < 5)

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

if(i==1){

// jika i=1, hidupkan led 1, led yang lain mati

digitalWrite(pinLED1, HIGH);

digitalWrite(pinLED2, LOW);

digitalWrite(pinLED3, LOW);

digitalWrite(pinLED4, LOW);

}else if(i==2){

// jika i=2, hidupkan led 1 & 2, led 3 & 4 mati

digitalWrite(pinLED1, HIGH);

digitalWrite(pinLED2, HIGH);

digitalWrite(pinLED3, LOW);

digitalWrite(pinLED4, LOW);

}else if(i==3){

// jika i=3, hidupkan led 1, 2, & 3, led 4 mati

digitalWrite(pinLED1, HIGH);

digitalWrite(pinLED2, HIGH);

digitalWrite(pinLED3, HIGH);

digitalWrite(pinLED4, LOW);

}else if(i==4){

Page 29: Disusun Oleh - elektro.polimdo.ac.id · Modul Praktek Mikrokontroler Prodi D3 Teknik Listrik Jurusan Teknik Elektro, 2018 iii KATA PENGANTAR Puji dan syukur patut patutlah dipanjatkan

Modul Praktek Mikrokontroler Prodi D3 Teknik Listrik Jurusan Teknik Elektro, 2018

24

// jika i=4, hidupkan semua led

digitalWrite(pinLED1, HIGH);

digitalWrite(pinLED2, HIGH);

digitalWrite(pinLED3, HIGH);

digitalWrite(pinLED4, HIGH);

}else{

// jika tidak, matikan semua led

digitalWrite(pinLED1, LOW);

digitalWrite(pinLED2, LOW);

digitalWrite(pinLED3, LOW);

digitalWrite(pinLED4, LOW);

}

// delai selama 5 detik

delay(5000);

}

}

Keterangan proses kerja program:

Program di atas akan membuat LED menyala bergantian sebanyak 5 animasi (perulangan

sebanyak 5 kali). Pertama, semua LED akan mati selama 5 detik. Kedua, LED 1 akan

menyala. Ketiga, LED 1 dan 2 akan menyala. Keempat, LED 1, 2, dan 3 akan menyala.

Kelima, semua LED akan menyala.

Animasi tersebut ditentukan berdasarkan nilai i, nilai i diperiksa dengan perintah IF. Jika

nilai i=0, maka semua LED mati, jika i=1 maka satu LED nyala, dan seterusnya.

6. Lakukan verifikasi terlebih dahulu untuk mengecek apakah ada kode program yang error

7. Klik icon upload pada toolbar , untuk mengupload sketch ke papan arduino. Lihat

hasilnya. Perhatikan LED pada breadboard, LED pada breadboard.

D. Prosedur Percobaan

1. Ubah program diatas menjadi seperti dibawah ini, kemudian berikan tanggapan anda

tentang jalannya kedua program tersebut

// Inisialisasi Pin LED

const int pinLED1 = 8;

const int pinLED2 = 9;

const int pinLED3 = 10;

const int pinLED4 = 11;

void setup() {

// pin LED sebagai output

pinMode(pinLED1, OUTPUT);

pinMode(pinLED2, OUTPUT);

pinMode(pinLED3, OUTPUT);

pinMode(pinLED4, OUTPUT);

}

void loop() {

Page 30: Disusun Oleh - elektro.polimdo.ac.id · Modul Praktek Mikrokontroler Prodi D3 Teknik Listrik Jurusan Teknik Elektro, 2018 iii KATA PENGANTAR Puji dan syukur patut patutlah dipanjatkan

Modul Praktek Mikrokontroler Prodi D3 Teknik Listrik Jurusan Teknik Elektro, 2018

25

digitalWrite(pinLED1, LOW);

digitalWrite(pinLED2, LOW);

digitalWrite(pinLED3, LOW);

digitalWrite(pinLED4, LOW);

delay(1000);

digitalWrite(pinLED1, HIGH);

delay(1000);

digitalWrite(pinLED2, HIGH);

delay(1000);

digitalWrite(pinLED3, HIGH);

delay(1000);

digitalWrite(pinLED4, HIGH);

delay(1000);

}

2. Ubah program diatas seperti berikut:

// Inisialisasi Jumlah LED

const int numLED = 4;

// LED 1,2,3,&4 jadi 1 varibel

// dengaan alamat index 0,1,2,3

const int pinLED[numLED] = {8,9,10,11};

void setup() {

// Inisialisasi semua pin LED sebagai OUTPUT

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

pinMode(pinLED[i], OUTPUT);

}

}

void loop() {

// Matikan semua LED

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

digitalWrite(pinLED[i], LOW);

}

delay(1000);

// Hidupkan semua LED bertahap dg jeda 1 detik

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

digitalWrite(pinLED[i], HIGH);

delay(1000);

} }

3. Buatlah laporan tentang percobaan animasi Led yang telah dilakukan

Page 31: Disusun Oleh - elektro.polimdo.ac.id · Modul Praktek Mikrokontroler Prodi D3 Teknik Listrik Jurusan Teknik Elektro, 2018 iii KATA PENGANTAR Puji dan syukur patut patutlah dipanjatkan

Modul Praktek Mikrokontroler Prodi D3 Teknik Listrik Jurusan Teknik Elektro, 2018

26

BAB IV

PRAKTIKUM INPUT PUSHBUTTON

A. Tujuan

Menggunakan Arduino sebagai input melalui pushbutton untuk mengaktifkan Led

Membuat program sebagai input melalui pushbutton untuk mengaktifkan Led

B. Alat dan Bahan yang digunakan

1 buah Papan Arduino Uno

1 buah Bread Board

4 buah LED warna merah

4 buah Resistor 300 Ohm

Kabel jumper

C. Teori singkat dan Rangkaian Percobaah

Pushbutton

Tombol pushbutton (tactile) atau tombol push on. Ketika tombol ini ditekan, maka jalur akan

tertutup (ON), ketika dilepas jalur akan kembali terbuka (OFF). Tombol ini banyak digunakan

untuk peralatan seperti remote, keypad, keyboard, atau tombol untuk pengaturan TV, ld atau

sejenisnya. Gambar 4.1 memperlihatkan bentuk fisik dan symbol dari pushbutton.

Gambar 4.1 Pushbutton

Percobaan kali ini adalah untuk mengendalikan hidup/matinya-nya LED dengan tombol

pushbutton. Jika tombol ditekan, LED akan menyala, jika dilepas, LED kembali padam.

Untuk melakukan percobaan ini, siapkan sebuah pushbutton, sebuah LED, dan sebuah

resistor. Siapkan juga beberapa kabel jumper untuk merangkai komponen-komponen tersebut.

Rangkaian Percobaan

Buatlah rangkaian seperti yang diperlihatkan pada Gambar 4.2. dengan prosedur sebagai

berikut:

Page 32: Disusun Oleh - elektro.polimdo.ac.id · Modul Praktek Mikrokontroler Prodi D3 Teknik Listrik Jurusan Teknik Elektro, 2018 iii KATA PENGANTAR Puji dan syukur patut patutlah dipanjatkan

Modul Praktek Mikrokontroler Prodi D3 Teknik Listrik Jurusan Teknik Elektro, 2018

27

1. Siapkan LED dan pushbutton pada project board. Karena karena pushbutton memiliki

4 buah kaki yang masing-masing terpisah, maka silakan tancapkan pushbutton di

tengah-tengah lajur project board sehingga kaki-kainya tidak tersambung.

2. Salah satu kaki pushbutton dihubungkan ke GDN di project board, sedangkan kaki

pasangannya disambungkan ke pin 2 pada board Arduino. Bagaimana cara mengetahui

pasangan kaki-kaki pada pushbutton? Anda bisa mengeceknya dengan AVO meter.

3. Setting AVO meter untuk menghitung resistansi, kemudian cek masing-masing pin

pushbutton dengan probe. Jika tombol ditekan jarum AVO meter bergerak

menyimpang, berarti kaki-kaki tersebut sepasang.

4. Untuk LED, sambungkan kaki negatif (pin yang lebih pendek) ke GND dengan

resistor

5. Kaki positif (kaki yang lebih panjang) disambungkan ke pin 8 pada board Arduino

dengan jumper.

Gambar 4.2 Rangkaian percobaan input pushbutton

Program

Buatlah program pada Arduino IDE untuk membaca keadaan input melalui pushbutton,

apakah ditekan atau tidak. Jika ditekan, maka Led akan diaktifkan dan jika dilepas, maka Led

akan padam. Programnyasebagai berikut:

// pin 2 sebagai input dan pin 8 sebagai output

const int pinButton = 2;

const int pinLED = 8;

void setup() {

pinMode(pinButton, INPUT);

pinMode(pinLED, OUTPUT);

// aktifkan pull-up resistor

Page 33: Disusun Oleh - elektro.polimdo.ac.id · Modul Praktek Mikrokontroler Prodi D3 Teknik Listrik Jurusan Teknik Elektro, 2018 iii KATA PENGANTAR Puji dan syukur patut patutlah dipanjatkan

Modul Praktek Mikrokontroler Prodi D3 Teknik Listrik Jurusan Teknik Elektro, 2018

28

digitalWrite(pinButton, HIGH);

}

void loop() {

if(digitalRead(pinButton) == LOW){

digitalWrite(pinLED, HIGH);

}else{

digitalWrite(pinLED, LOW);

}

}

Setelah program selesai diketikan, maka lakukanlah proses ferifikasi terlebih dahulu guna

mengetahui apakah program yang dibuat telah sesuai atau belum. Jika belum sesuai (error),

lakukanlah perbaikan sampai program tersebut benar. Selanjutnya upload program yang

dibuat ke board arduino.

D. Prosedur percobaan

1. Apa yang terjadi ketika pushbutton tidak ditekan

2. Apa yang terjadi ketika pushbutton ditekan

3. Apa yang terjadi jika pushbutton dilepas

4. Buatlah program untuk mengaktifkan dan menonaktifkan nyala Led melalui 1 buah

pushbutoon, dimana saat pushbutton ditekan pertama kali, maka Led akan menyala, dan

jika pusbutton ditekan kedua kalinya, maka Led akan padam.

5. Buatlah laporan dari praktikum yang telah dilakukan.

Page 34: Disusun Oleh - elektro.polimdo.ac.id · Modul Praktek Mikrokontroler Prodi D3 Teknik Listrik Jurusan Teknik Elektro, 2018 iii KATA PENGANTAR Puji dan syukur patut patutlah dipanjatkan

Modul Praktek Mikrokontroler Prodi D3 Teknik Listrik Jurusan Teknik Elektro, 2018

29

BAB V

PRAKTIKUM MENGONTROL TINGKAT KECERAHAN LED

A. Tujuan

Menggunakan Arduino untuk aplikasi pengaturan tingkat kecerahan nyala Led

Membuat program sederhana untuk aplikasi pengaturan tingkat kecerahan nyala Led

B. Alat dan Bahan yang digunakan

1 buah Papan Arduino Uno

1 buah Bread Board

1 buah LED warna merah

1 buah Resistor 300 Ohm

2 buah pushbutton

Kabel jumper

C. Dasar teori dan Rangkaian Percobaah

Sebelumnya kita sudah membahas tentang cara menghidupkan dan mematikan LED dengan

sebuah pushbutton. Selanjutnya, kita akan menggunakan dua buah pushbutton dengan

ketentuan : pushbutton yang pertama untuk menaikkan kecerahan LED hingga paling terang,

sedangkan pushbutton yang kedua untuk menurunkan kecerahan LED hingga LED padam.

Fungsi kedua pushbutton ini mirip dengan volume-up dan volume-down. Yang satu untuk

meningkatkan volume (kecerahan), sedangkan satunya lagi untuk menurunkan volume

(kecerahan).

Setidaknya ada dua cara untuk menaikkan atau menurunkan tingkat kecerahan LED:

1. Mengubah arus yang masuk ke LED, cara ini bisa diaplikasikan dengan mengubah

nilai resistor

2. Menghidup-matikan LED dengan cepat atau lambat. Begini, ketika kita menghidup-

matikan LED dengan cepat, maka mata manusia tidak bisa mengetahuinya. Yang

ditangkap oleh mata adalah terang atau redupnya saja. Jika kita menghidup-matikan

led dengan cepat, maka LED tersebut akan terlihat terang, tapi kalau kita menghidup

matikan LED dengan lebih lambat, maka LED akan terlihat lebih redup.

Dalam elektronika digital, konsep yang kedua dikenal dengan istilah PWM (Pulse Width

Modulation). Apa itu PWM?

Page 35: Disusun Oleh - elektro.polimdo.ac.id · Modul Praktek Mikrokontroler Prodi D3 Teknik Listrik Jurusan Teknik Elektro, 2018 iii KATA PENGANTAR Puji dan syukur patut patutlah dipanjatkan

Modul Praktek Mikrokontroler Prodi D3 Teknik Listrik Jurusan Teknik Elektro, 2018

30

Sebagian kaki / pin Arduino support PWM, kaki yang support PWM ditandai dengan adanya

tanda tilde (~) di depan angka pinnya, seperti 3, 5, 6, dan seterusnya. Frekuensi yang

digunakan dalam Arduino untuk PWM adalah 500Hz (500 siklus dalam 1 detik). Jadi,

Arduino bisa menghidup-matikan LED sebanyak 500 kali dalam 1 detik.

Untuk menggunakan PWM, kita bisa menggunakan fungsi analogWrite(). Nilai yang bisa

dimasukkan pada fungsi tersebut yaitu antara 0 hingga 255. Nilai 0 berarti pulsa yang

diberikan untuk setiap siklus selalu 0 volt, sedangkan nilai 255 berarti pulsa yang diberikan

selalu bernilai 5 volt.

Gambar 5.1 siklus pulsa PWM

Jika kita memberikan nilai 127 (kita anggap setengah dari 0 hingga 255, atau 50% dari 255),

maka setengah siklus akan bernilai 5 volt, dan setengah siklus lagi akan bernilai 0 volt.

Sedangkan jika jika memberikan 25% dari 255 (1/4 * 255 atau 64), maka 1/4 siklus akan

bernilai 5 volt, dan 3/4 sisanya akan bernilai 0 volt, dan ini akan terjadi 500 kali dalam 1

detik. Untuk visualisasi siklus PWM, bisa Anda lihat Gambar 5.1.

Rangkaian

Buatlah rangkaian seperti gambar Rangkaian 5.2. Rencananya, pushbutton yang atas untuk

menyalakan dan meningkatkan kecerahan LED, sedangkan pushbutton yang bawah untuk

menurunkan tingkat kecerahan LED dan memadamkannya:

1. Seperti biasa, siapkan sebuah LED dan resistornya. Sambungkan kaki positif LED ke

pin 8 Arduino.

2. Kemudian kaki negatif LED disambungkan ke resistor menuju GND.

Page 36: Disusun Oleh - elektro.polimdo.ac.id · Modul Praktek Mikrokontroler Prodi D3 Teknik Listrik Jurusan Teknik Elektro, 2018 iii KATA PENGANTAR Puji dan syukur patut patutlah dipanjatkan

Modul Praktek Mikrokontroler Prodi D3 Teknik Listrik Jurusan Teknik Elektro, 2018

31

3. Siapkan dua buah pushbutton. Pushbutton yang pertama (atas) disambunkan ke GND

dan ke pin 2 pada board Arduino.

4. Lalu pushbutton yang kedua (bawah) disambungkan ke GND dan pin 3 pada board

Arduino.

Gambar 5.2 Pengaturan intensitas cahaya Led

Program

Buka aplikasi Arduino IDE, kemudian keikan program dibawah ini

// pin 2 & 3 sebagai input digital

const int pinBt1 = 2;

const int pinBt2 = 3;

// Ingat, pin 9 support PWM

const int pinLED = 9;

void setup() {

pinMode(pinBt1, INPUT);

pinMode(pinBt2, INPUT);

pinMode(pinLED, OUTPUT);

digitalWrite(pinBt1, HIGH);

digitalWrite(pinBt2, HIGH);

}

int brightness = 0;

void loop() {

if(digitalRead(pinBt1) == LOW){

// jika pushbutton ditekan

// tambahkan nilai brightness

brightness++;

}else if(digitalRead(pinBt2) == LOW){

// jika pushbutton2 ditekan

// kurangi nilai brightness

brightness--;

Page 37: Disusun Oleh - elektro.polimdo.ac.id · Modul Praktek Mikrokontroler Prodi D3 Teknik Listrik Jurusan Teknik Elektro, 2018 iii KATA PENGANTAR Puji dan syukur patut patutlah dipanjatkan

Modul Praktek Mikrokontroler Prodi D3 Teknik Listrik Jurusan Teknik Elektro, 2018

32

}

// brightness dibatasi antara 0 - 255

// jika di bawah 0, maka ganti dengan 0

// jika di atas 255, maka ganti dengan 255

brightness = constrain(brightness, 0, 255);

// pinLED diberi nilai antara 0 - 255

analogWrite(pinLED, brightness);

// delay agar perubahannya bertahap

delay(20);

}

Setelah program selesaidiketikan, maka lakukanlah proses ferifikasi terlebih dahulu untuk

mengetahui apakah program yang dibuat telah benar atau belum, kemudian upload program

yang dibuat tersebut ke board Arduino.

D. Prosedur Percobaan

1. Tekan tombol pushbutton pertama (bagian atas), kemudian amati dan jelaskan proses

yang terjadi

2. Tekan pushbutton kedua (bagian bawah), kemudian amati dan jelaskan proses yang

terjadi

3. Ubah nilai brightness yang dibatasi dari angka 0 – 255 menjadi 100 – 255, kemudian

amati apa yang terjadi dan berikan tanggapannya

4. Buat laporan untuk praktikum yang telah dikerjakan

Page 38: Disusun Oleh - elektro.polimdo.ac.id · Modul Praktek Mikrokontroler Prodi D3 Teknik Listrik Jurusan Teknik Elektro, 2018 iii KATA PENGANTAR Puji dan syukur patut patutlah dipanjatkan

Modul Praktek Mikrokontroler Prodi D3 Teknik Listrik Jurusan Teknik Elektro, 2018

33

BAB VI

PRAKTIKUM APLIKASI POTENSIO METER

A. Tujuan

Menggunakan Arduino untuk aplikasi pengaturan dengan potensio meter

Membuat program sederhana untuk aplikasi pengaturan dengan potensio meter

B. Alat dan Bahan yang digunakan

1 buah Papan Arduino Uno

1 buah Bread Board

1 buah LED warna merah

1 buah Resistor 300 Ohm

1 buah potensio meter

Kabel jumper

C. Dasar teori dan Rangkaian Percobaah

Setelah kita belajar mengatur intensitas cahaya LED dengan pushbutton, kali ini kita akan

mengunakan potensiometer. Kelebihan menggunakan potensiometer yaitu kita lebih mudah

sebab kita hanya butuh satu alat untuk membuat LED lebih redup atau lebih terang.

Jika kita langsung mengatur LED dengan potensiometer, kita harus memiliki potensiometer

yang pas untuk LED tersebut. Jika hambatan potensiometer tidak sesuai, mungkin LED akan

mati sebelum potensiometer habis, atau LED sudah full nyalanya ketika potensiometer baru

kita naikkan setengah. Jadi, kita tidak bisa menggunakan satu putaran full potensiometer

untuk menaikkan atau menurunkan intensitas cahaya LED tersebut.

Yang digunakan di gambar adalah potensiometer trimmer yang ukurannya lebih kecil dan bisa

ditancapkan ke project board. Gambar 6.1 adalah contoh salah satu trimmer.

Gambar 6.1 Potensiometer jenis Trimmer

Page 39: Disusun Oleh - elektro.polimdo.ac.id · Modul Praktek Mikrokontroler Prodi D3 Teknik Listrik Jurusan Teknik Elektro, 2018 iii KATA PENGANTAR Puji dan syukur patut patutlah dipanjatkan

Modul Praktek Mikrokontroler Prodi D3 Teknik Listrik Jurusan Teknik Elektro, 2018

34

Berikut tahapan untuk membuat rangkaian tersebut:

1. Sambungkan kaki negatif LED ke GND dengan jumper

2. Kaki positif LED dihubungkan ke salah satu ujung kaki (kaki yang bawah)

potensiometer dengan jumper

3. Kaki tengah (kaki di sisi yang sendirian) dihubungkan dengan ujung kaki yang

lainnya (kaki yang atas) dengan jumper

4. Kaki yan atas dihubungkan ke +5v dengan resistor.

Rankaian percobaan

Buatlah rangkaian percobaan seperti yang diperlihatkan pada Gambar 6.2, dengan prosedur

sebagai berikut:

1. Sambungkan kaki positif LED ke pin 9 pada board Arduino, pin tersebut support

PWM

2. Kaki negatif LED disambungkan dengan resistor ke GND

3. Kedua ujung kaki trimmer yang satu sisi (sisi kanan) masing-masing disambungkan

ke +5v dan GND. Jika Anda menggunakan potensiometer putar, yang disambungkan

ke +5v dan GND adalah pin yang paling pinggi.

4. Pin yang satu (di sebelah kiri) disambungkan ke A0 pada board Arduino. Jika Anda

menggunakan potensiometer putar,yang disambungkan ke A0 adalah pin yang tengah

pada potensiometer.

pada Arduino terdapat 3 kelompok pin dengan fungsi yang berbeda, yaitu:

Pin digital (pin 0 - 13)

Pin digital yang support PWM (ditandai dengan tilde “~”, yaitu pin 3, 5, 6, 9, 10, 11)

Pin Analog (A0 – A5)

Digital artinya hanya terdiri dari ON dan OFF, atau HIGH dan LOW. Digital dengan PWM

artinya, frekuensi ON dan OFF bisa diatur berdasarkan siklus tertentu dalam frekuensi 500

Hz dengan selang antara 0 - 255. Hal ini sudah kita bahas sebelumnya, bukan?

Sedangkan pin Analog, berarti pin tersebut bisa ditulis mempunyai tegangan antara 0 – 5 volt

dengan step kenaikan sebanyak 1024. Artinya angka 0 – 1023 akan dikonversi menjadi 0 – 5

volt pada pin tersebut. 0 berarti 0 volt, 1023 berarti 5 volt. Kenapa maksimal 1024?

Sebenarnya selang antara 0 – 5 volt bisa dicacah dengan jumlah tak terhingga. Akan tetapi,

mikroposesor memiliki keterbatasan dalam mencacah angka, sehingga batas yang bisa

dicacah hanya mencapai 1024 cacahan, yaitu dari 0 – 1023.

Page 40: Disusun Oleh - elektro.polimdo.ac.id · Modul Praktek Mikrokontroler Prodi D3 Teknik Listrik Jurusan Teknik Elektro, 2018 iii KATA PENGANTAR Puji dan syukur patut patutlah dipanjatkan

Modul Praktek Mikrokontroler Prodi D3 Teknik Listrik Jurusan Teknik Elektro, 2018

35

Gambar 6.2 Mengatur brightness Led dengan potensio meter

Program

Buka aplikasi Arduino IDE, kemudian keikan program dibawah ini

// pin A0 adalah pin Analog

// pin 9 adalah pin digital support PWM

const int pinPot = A0;

const int pinLED = 9;

void setup() {

pinMode(pinPot, INPUT);

pinMode(pinLED, OUTPUT);

}

int sensor = 0;

int brightness = 0;

void loop() {

// baca nilai kaki A0 (sensor, potensiometer)

sensor = analogRead(pinPot);

// konversi nilai 0-1023 (Analog) menjadi 0-255 (PWM)

brightness = map(sensor, 0, 1023, 0, 255);

// tentukan brightness LED dengan PWM

analogWrite(pinLED, brightness);

}

Setelah program selesai diketikan, maka lakukanlah proses ferifikasi terlebih dahulu untuk

mengetahui apakah program yang dibuat telah benar atau belum, kemudian upload program

yang dibuat tersebut ke board Arduino.

Selanjutnya, mari kita coba untuk mengatur durasi kedipan LED berdasarkan nilai pada

potensiometer. Jika „volume‟ potensiometer rendah, durasi kedipan LED akan cepat. Jika

Page 41: Disusun Oleh - elektro.polimdo.ac.id · Modul Praktek Mikrokontroler Prodi D3 Teknik Listrik Jurusan Teknik Elektro, 2018 iii KATA PENGANTAR Puji dan syukur patut patutlah dipanjatkan

Modul Praktek Mikrokontroler Prodi D3 Teknik Listrik Jurusan Teknik Elektro, 2018

36

„volume‟ potensiometer tinggi, maka durasi kedipan LED akan lambat. Saya sebut „volume‟

karena potensiometer identik dengan alat untuk mengatur volume.

D. Prosedur Percobaan

1. Putar posisi potensio meter ke arah kanan perlahan-lahan sampai pada batas maksimal,

amatilah apa yang terjadi terhadap nyala Led, kemudian berikan tanggapannya

2. Putar posisi potensio meter ke arah kiri perlahan-lahan sampai pada batas minimal,

amatilah apa yang terjadi terhadap nyala Led, kemudian berikan tanggapannya

3. Ubahlah program diatas menjadi seperi dibawah ini

// pin A0 adalah pin Analog

// pin 9 adalah pin digital support PWM

const int pinPot = A0;

const int pinLED = 9;

void setup() {

pinMode(pinPot, INPUT);

pinMode(pinLED, OUTPUT);

}

int sensor = 0;

void loop() {

// baca nilai kaki A0 (sensor, potensiometer)

sensor = analogRead(pinPot);

// durasi kedipan sesuai nilai pada sensor 0-1023

digitalWrite(pinLED, HIGH);

delay(sensor);

digitalWrite(pinLED, LOW);

delay(sensor);

}

Upload program ke Arduino, jalankan kemudian amati nyala Led

4. Bandingkan program pertama dan program kedua, kemudian berikan tanggapannya

5. Buat laporan tentang praktikum yang dikerjakan

Page 42: Disusun Oleh - elektro.polimdo.ac.id · Modul Praktek Mikrokontroler Prodi D3 Teknik Listrik Jurusan Teknik Elektro, 2018 iii KATA PENGANTAR Puji dan syukur patut patutlah dipanjatkan

Modul Praktek Mikrokontroler Prodi D3 Teknik Listrik Jurusan Teknik Elektro, 2018

37

BAB VII

PRAKTIKUM APLIKASI SOUND

A. Tujuan

Menggunakan Arduino untuk aplikasi menghasilkan suara melalui perangkat sound

(speaker)

Membuat program sederhana untuk aplikasi menghasilkan suara melalui perangkat

sound (speaker)

B. Alat dan Bahan yang digunakan

1 buah Papan Arduino Uno

1 buah Bread Board

1 buah speaker

C. Dasar teori dan Rangkaian Percobaah

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:

Page 43: Disusun Oleh - elektro.polimdo.ac.id · Modul Praktek Mikrokontroler Prodi D3 Teknik Listrik Jurusan Teknik Elektro, 2018 iii KATA PENGANTAR Puji dan syukur patut patutlah dipanjatkan

Modul Praktek Mikrokontroler Prodi D3 Teknik Listrik Jurusan Teknik Elektro, 2018

38

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, dibutuhkan 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 7.1 sekedar contoh sebab frekuensi 6 Hz

tidak akan terdengar oleh telinga manusia.

Gambar 7.1 Siklus frekwensi dan delay

Rangkaian Percobaan

Buatlah Rangkaian percobaan seperti pada Gambar 7.1 dengan speaker 8 ohm atau 16 ohm.

Speaker baru atau speaker bekas radio yang masih berfungsi bisa di gunakan.

1. Sambungkan kaki positif speaker pada pin 9 board arduino

2. Sambungkan kaki negatif pada GND pada board arduino

3. Jika nanti suara yang dihasilkan terlalu nyaring, maka Anda bisa menambahkan

resistor 100 – 1 k ohm pada kaki positif atau negatif speaker. Untuk itu, penggunaan

project board akan memudahkan Anda untuk menyambung resistor tersebut.

Page 44: Disusun Oleh - elektro.polimdo.ac.id · Modul Praktek Mikrokontroler Prodi D3 Teknik Listrik Jurusan Teknik Elektro, 2018 iii KATA PENGANTAR Puji dan syukur patut patutlah dipanjatkan

Modul Praktek Mikrokontroler Prodi D3 Teknik Listrik Jurusan Teknik Elektro, 2018

39

Gambar 7.1 Rangkaian speaker sebagai sound

Program Percobaan

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().

Ketika program Sketch dijalankan, maka speaker akan berbunyi terus menerus hingga kabel

speaker dilepas atau Arduino dimatikan. Begitulah cara kerja speaker berbunyi dan membuat

program suara yang sederhana.

Buatlah program seperti di bawah ini pada Arduino IDE:

// speaker ada di pin 9

const int pinSpeaker = 9;

// delay untuk nada 440 Hz

const int timeDelay = 1163;

void setup() {

pinMode(pinSpeaker, OUTPUT);

}

void loop() {

digitalWrite(pinSpeaker, HIGH);

delayMicroseconds(timeDelay);

digitalWrite(pinSpeaker, LOW);

delayMicroseconds(timeDelay);

}

D. Prosedur Praktikum

1. Jalankan sistem yang telah dibuat, amatilah hasilnya dan berikan pendapatnya

Page 45: Disusun Oleh - elektro.polimdo.ac.id · Modul Praktek Mikrokontroler Prodi D3 Teknik Listrik Jurusan Teknik Elektro, 2018 iii KATA PENGANTAR Puji dan syukur patut patutlah dipanjatkan

Modul Praktek Mikrokontroler Prodi D3 Teknik Listrik Jurusan Teknik Elektro, 2018

40

2. Ubah-ubahlah nilai frekwensi pada bagian program const int timeDelay = 1163;,

dengan caramengganti nilainya, kemudian jalankan sistem dan amatilah hasilnya dan

berikan pendapatnya

3. Buatlah program seperti di bawah ini, kemudian uploadkan ke board Arduino,

jalankan sistemnya, amati dan berikan pendapatnya

// tangga nada C

#define NOTE_C4 262 // DO

#define NOTE_D4 294 // RE

#define NOTE_E4 330 // MI

#define NOTE_F4 349 // FA

#define NOTE_G4 392 // SOL

#define NOTE_A4 440 // LA

#define NOTE_B4 494 // SI

#define NOTE_C5 523 // DO

// speaker ada di pin 9

const int pinSpeaker = 9;

void setup() {

pinMode(pinSpeaker, OUTPUT);

}

void loop() {

tone(pinSpeaker, NOTE_C4, 500);

delay(500);

tone(pinSpeaker, NOTE_D4, 500);

delay(500);

tone(pinSpeaker, NOTE_E4, 500);

delay(500);

tone(pinSpeaker, NOTE_F4, 500);

delay(500);

tone(pinSpeaker, NOTE_G4, 500);

delay(500);

tone(pinSpeaker, NOTE_A4, 500);

delay(500);

tone(pinSpeaker, NOTE_B4, 500);

delay(500);

tone(pinSpeaker, NOTE_C5, 500);

delay(500);

noTone(pinSpeaker);

delay(1000);

}

4. Buatlah laporan tentang praktikum yang dilakukan

Page 46: Disusun Oleh - elektro.polimdo.ac.id · Modul Praktek Mikrokontroler Prodi D3 Teknik Listrik Jurusan Teknik Elektro, 2018 iii KATA PENGANTAR Puji dan syukur patut patutlah dipanjatkan

Modul Praktek Mikrokontroler Prodi D3 Teknik Listrik Jurusan Teknik Elektro, 2018

41

BAB VIII

PRAKTIKUM APLIKASI THERMOMETER DIGITAL

A. Tujuan

Menggunakan Arduino untuk aplikasi Thermometer digital

Membuat program sederhana untuk aplikasi Thermometer digital

B. Alat dan Bahan yang digunakan

1 buah Papan Arduino Uno

1 buah Bread Board

1 buah sensor suhu LM35

Kabel jumper

C. Dasar teori dan Rangkaian Percobaah

Sebelum kita membuat termometer digital, kita akan belajar bagaimana menggunakan Serial

Monitor sebagai alat untuk melihat apakah sensor menghasilkan data yang benar atau tidak.

Maksudnya begini, ketika kita menggunakan sebuah sensor untuk mengambil data, maka

sensor akan mengirimkan data untuk diproses oleh mikrokontroller. Untuk memastikan data

dari sensor tersebut merupakan data yang benar, maka kita bisa melihatnya melalui Serial

Monitor. Cara kerjanya begini:

1. Mikrokontroller akan membaca data dari sensor

2. Kemudian mikrokontroller akan membuat koneksi serial ke komputer

3. Selanjutnya mikrokontroller akan mengirimkan data ke komputer melalui komunikasi

serial tersebut

4. Lalu kita bisa melihat data yang diterima oleh komputer menggunakan serial monitor,

hyperterminal, atau aplikasi sejenis seperti CoolTerm dan PuTTY5.

Serial Monitor

Serial monitor bisa di gunakan untuk men-debug secara software. Jika tanpa serial monitor,

kita tidak bisa melakukan debug untuk aplikasi yang kita buat sehingga untuk menemukan

solusinya, kita harus men-debug dari sisi hardware. Misal ketika ada error, kita akan

mencoba dengan LED atau menambah/mengurangi rangkaian.

Page 47: Disusun Oleh - elektro.polimdo.ac.id · Modul Praktek Mikrokontroler Prodi D3 Teknik Listrik Jurusan Teknik Elektro, 2018 iii KATA PENGANTAR Puji dan syukur patut patutlah dipanjatkan

Modul Praktek Mikrokontroler Prodi D3 Teknik Listrik Jurusan Teknik Elektro, 2018

42

Tapi jika menggunakan serial monitor, kita akan tahu error-nya melalui data yang dikirimkan

oleh Arduino. Misal ketika nyala LED terlalu lama atau terlalu pelan, kita langsung bisa

mengecek nilai (angka) yang digunakan untuk delay dan semua isi variabel dalam program

yang kita buat. Sehingga kita bisa menelusuri logika dan algoritma program berdasarkan

data-data yang dikirimkan tadi.

Perhatikan pada board arduino, pin 0 dan 1 ada tulisan RX dan TX. Pin tersebut berfungsi

untuk menerima dan mengirim data melalui komunikasi serial dari Arduino ke komputer

melalui kabel USB. Untuk menggunakan komunikasi serial, kita tidak perlu menambahkan

komponen tambahan pada Arduino karena pada board tersebut sudah disediakan. Kita cukup

menghubungkan Arduino ke komputer, dan kita bisa langsung membuat program. Mari kita

mulai dengan Sketch

void setup() {

Serial.begin(9600);

Serial.println("With elangsakti.com :");

}

int number = 0;

void loop() {

Serial.print("Hello World! ");

Serial.println( number++ );

delay(1000);

}

Pada baris ke-6, perintah Seril.begin(9600); berarti kita akan membuat koneksi serial dengan

baud rate 9600. Sederhananya, baud berkaitan dengan jumlah bit yang akan ditransfer setiap

detik. Nilai baud rate ini tergantung pada clock mikrokontroller. Arduino Uno sendiri

menggunakan clock 16 MHz. Jika clock-nya makin rendah, maka baud rate harus kita

kurangi. Sebagai contoh, jika kita menggunakan mikrokontroller dengan clock 1 MHz, maka

baud rate yang cocok adalah 4800. Jika clock 1 MHz kita menggunakan baud rate 9600,

maka data yang dikirim ke komputer tidak akan terbaca. Pada Arduino IDE, nilai baud rate

default pada Serial Monitor adalah 9600.

Pada baris ke-7, awalnya Arduino akan mengirim pesan “With elangsakti.com” ketika

pertama kali Arduino start. Setelah itu, Arduino akan mengirim pesan “Hello World!” dan

dilanjutkan dengan angka 0, 1, 2, 3, dst. Jika Serial Monitor kita tutup dan kita buka kembali,

maka Arduino seakan-akan melakukan reset program. Arduino akan kembali mengirimkan

pesan “With elangsakti.com” dan angka kembali ke 0 lagi.

Pada baris ke 12 dan 13, kita menemukan perintha print yang berbeda, yaitu print() dan

println(). Jika kita menggunakan print, maka kita sekedar mengirim data tanpa diikuti end of

Page 48: Disusun Oleh - elektro.polimdo.ac.id · Modul Praktek Mikrokontroler Prodi D3 Teknik Listrik Jurusan Teknik Elektro, 2018 iii KATA PENGANTAR Puji dan syukur patut patutlah dipanjatkan

Modul Praktek Mikrokontroler Prodi D3 Teknik Listrik Jurusan Teknik Elektro, 2018

43

line (perintah untuk ganti baris , atau ENTER). Jika kita menggunakan println(), maka tulisan

akan diikuti perintah untuk pindah baris.

Gambar 8.1 Icon Serial monitor pad Arduino IDE

Sebelum muncul pesan “Done Uploading”, maka Serial Monitor belum bisa dibuka. Setelah

Serial Monitor dibuka, maka akan terlihat pesan seperti pada Gambar 8.2.

Gambar 8.2 Tamppilan serial monitor

Sensor LM35

LM35 merupakan IC sensor suhu dengan bentuk yang mirip dengan transistor. Kaki IC ini

hanya ada tiga, yaitu untuk VCC, Output, dan GND, seperti yang diperlihatkan pada Gambar

8.3

Page 49: Disusun Oleh - elektro.polimdo.ac.id · Modul Praktek Mikrokontroler Prodi D3 Teknik Listrik Jurusan Teknik Elektro, 2018 iii KATA PENGANTAR Puji dan syukur patut patutlah dipanjatkan

Modul Praktek Mikrokontroler Prodi D3 Teknik Listrik Jurusan Teknik Elektro, 2018

44

Gambar 8.3 Sensor suhu LM35

Sensor ini bisa digunakan untuk mengukur suhu dari -55o – 150o celcius. Berdasarkan

datasheet LM356, maka kita bisa menggunakan pengukuran penuh (-55 – 150o celcius) atau

pengukuran sebagian yaitu hanya bisa menghitung dari 2 – 150o celcius. Untuk pengukuran

penuh, maka rangkaian dasarnya seperti tampak pada Gambar 8.4 sedangkan untuk

pengukuran sebagian, rangkaian dasarnya adalah seperti pada Gambar 8.5.

Gambar 8.4 Rangkaian Pengukuran suhu dengan LM35

Gambar 8.5 Rangkaian dasar pengukuran dengan sensor LM35

Rangkaian Percobaan

Berdasarkan karakteristik kaki-kaki pada IC LM35, maka kita akan menggunakan rangkaian

sebagian sehingga Rangkaian 5.1 hanya bisa mengukur suhu dari 2 hingga 150 derajat

celcius. Cara merangkainya seperti pada Gambar 8.6.

Page 50: Disusun Oleh - elektro.polimdo.ac.id · Modul Praktek Mikrokontroler Prodi D3 Teknik Listrik Jurusan Teknik Elektro, 2018 iii KATA PENGANTAR Puji dan syukur patut patutlah dipanjatkan

Modul Praktek Mikrokontroler Prodi D3 Teknik Listrik Jurusan Teknik Elektro, 2018

45

Gambar 8.6 Rangkaian sensor suhu LM35 dengan Arduino

Prosedur kerja:

1. Sambungkan kaki 1 ke VCC

2. Sambungkan kaki kedua (tengah) ke A0. A0 adalah pin analog, kaki pin analog

berfungsi untuk berbagasi tranduser / sensor yang mengharuskan sinyal analog. Oleh

sebab itu, untuk membaca kaki ini menggunakan analogRead(), sedangkan untuk

menulisnya menggunakan analogWrite().

3. Sambungkan kaki ke-3 ke GND

Karakteristik dari sensor ini yaitu setiap kenaikan 10 mV pada kaki output, menandakan

kenaikan suhu 1o celcius. Sehingga, karena Rangkaian 5.1 hanya mampu mengukur dari 2o

celcius, maka output LM35 minimal adalah 20 mV dan maksimal 1500 mV. Konversi suhu

pada output LM35 juga tergantung pada tegangan referensi yang digunakan.

Tegangan referensi pada arduino ada tiga (khusus Arduino Uno)7, tegangan referensi default,

internal, dan eksternal. Jika kita tidak mendefinisikan tegangan referensi yang akan kita

gunakan, maka Arduino secara default akan menggunakan tegangan referensi 5 volt. Selain 5

volt, tegangan default yang disediakan oleh arduino adalah 3.3 volt. Akan tetapi kita harus

membuat jumper dari 3.3 volt (di board Arduino) ke pin AREF, lalu mengeksekusi perintah

analogReference(DEFAULT).

Tegangan referensi internal Arduino yaitu 1.1 volt, untuk menggunakan tegangan referensi

ini, kita harus memberikan perintah analogReference(INTERNAL).

Program Percobaan

Sebelum membuat program, kita akan menghitung bagaimana cara mengukur dan

mengkonversi output dari LM35 menjadi suhu. Kita akan mengkonversi voltase pada kaki

Page 51: Disusun Oleh - elektro.polimdo.ac.id · Modul Praktek Mikrokontroler Prodi D3 Teknik Listrik Jurusan Teknik Elektro, 2018 iii KATA PENGANTAR Puji dan syukur patut patutlah dipanjatkan

Modul Praktek Mikrokontroler Prodi D3 Teknik Listrik Jurusan Teknik Elektro, 2018

46

output LM35, kemudian menghitungnya berdasarkan tegangan referensi yang digunakan,

mengubahnya menjadi celcius, lalu mengirimkannya ke komputer melalui komunikasi serial.

Jika kita menggunakan tegangan referensi 5 volt, maka Arduino bisa mengukur setidaknya

hingga 5000 mV. padahal kemampuan LM35 hanya sebatas 150o celcius atau 150 x 10 mV =

1500 mV (1.5

volt). Sehingga tegangan yang keluar dari kaki output LM35 tidak akan mungkin melebihi

1.5 volt.

Berdasarkan persamaan sederhana, maka kita bisa menghitung suhu berdasarkan

perbandingan antara kapasitas voltase yang bisa dicacah oleh pin analog Arduino (1024) dan

kemampuan LM35 mengukur suhu.

Suhu dalam Voltase (T) : 0 - 500

Cacahan Voltase input (Vin) : 0 - 1024

0/500 = 0/1024

T/500 = Vin/1024

T = (Vin * 500) / 1024

Buat program sebagai berikut pada Arduino IDE

const int pSuhu = A0;

float suhu, data;

void setup() {

Serial.begin(9600);

pinMode(pSuhu, INPUT);

}

void loop() {

data = analogRead(pSuhu);

suhu = data * 500 / 1024;

Serial.print("data: ");

Serial.print(data);

Serial.print(", suhu: ");

Serial.print(suhu);

Serial.println();

delay(1000);

}

Program pada Sketch akan membaca data dari sensor suhu pada pin A0 di board Arduino

kemudian mengkonversinya menjadi 78 suhu. Informasi suhu akan dikirim ke komputer

melalui komunikasi serial dengan baud rate 9600 setiap 1000 milisekon.

Prosedur Percobaan

1. Jalankan sistem thermometer digital, amati hasil pembacaannya melalui serial

monitor, dan berikan tanggapannya

Page 52: Disusun Oleh - elektro.polimdo.ac.id · Modul Praktek Mikrokontroler Prodi D3 Teknik Listrik Jurusan Teknik Elektro, 2018 iii KATA PENGANTAR Puji dan syukur patut patutlah dipanjatkan

Modul Praktek Mikrokontroler Prodi D3 Teknik Listrik Jurusan Teknik Elektro, 2018

47

2. Panaskan sensur suhu LM35 dengan tangan, amati hasil pembacaannya melalui serial

monitor, dan berikan tanggapannya

3. Panaskan sensor suhu LM35 dengan korek api, amati hasil pembacaannya melalui

serial monitor, dan berikan tanggapannya

4. Buatlah laporan terkait dengan praktikum yang dikerjakan

Page 53: Disusun Oleh - elektro.polimdo.ac.id · Modul Praktek Mikrokontroler Prodi D3 Teknik Listrik Jurusan Teknik Elektro, 2018 iii KATA PENGANTAR Puji dan syukur patut patutlah dipanjatkan

Modul Praktek Mikrokontroler Prodi D3 Teknik Listrik Jurusan Teknik Elektro, 2018

48

BAB IX

PRAKTIKUM APLIKASI THERMOMETER DIGITAL DENGAN TAMPILAN LCD

A. Tujuan

Menggunakan Arduino untuk aplikasi Thermometer digital yang ditampilkan pada

LCD display

Membuat program sederhana untuk aplikasi Thermometer digital yang ditampilkan

pada LCD display

B. Alat dan Bahan yang digunakan

1 buah Papan Arduino Uno

1 buah Bread Board

1 buah sensor suhu LM35

1 buah LCD 2 x 16

Kabel jumper

C. Dasar teori dan Rangkaian Percobaah

Dalam hal ini kita akan menyiapkan LCD untuk menampilkan informasi suhu yang telah kita

buat. Sebab melihat informasi suhu dengan komputer tentu kurang praktis bukan?

LCD merupakan singkatan dari Liquid Crystal Display, atau umumnya disebut dengan LCD

atau display saja. Di pasaran beragam jenis LCD dan berbagai ukuran yang bisa Anda

gunakan. LCD bias untuk menampilkan huruf dan angka, bahkan ada yang bisa untuk

menampilkan gambar.

Pada praktikum ini, kita akan berkenalan dengan LCD yang umum digunakan dan harganya

juga relatif terjangkau. LCD ini berukuran 16x2 (2 baris 16 kolom) yang cukup untuk

menampilkan informasi suhu atau informasi yang tidak terlalu panjang. LCD ini dikenal juga

dengan LCD 1602 dengan beberapa varian seperti 1602A, dll.

LCD ini bisa bekerja pada 5 volt, sehingga Anda bisa menyambungkannya secara langsung

ke pin VCC pada board Arduino. Perlu diperhatikan, jika Anda menggunakan LCD jenis

lainnya, ada juga LCD yang bekerja pada voltase yang berbeda. Sehingga kesalahan

pemasangan sumber tegangan bisa membuat LCD rusak.

Page 54: Disusun Oleh - elektro.polimdo.ac.id · Modul Praktek Mikrokontroler Prodi D3 Teknik Listrik Jurusan Teknik Elektro, 2018 iii KATA PENGANTAR Puji dan syukur patut patutlah dipanjatkan

Modul Praktek Mikrokontroler Prodi D3 Teknik Listrik Jurusan Teknik Elektro, 2018

49

Gambar 9.1 LCD 1602

LCD 1602 memiliki 16 pin dengan fungsi-fungsi sebagai berikut:

Berdasarkan karakteristik tersebut, maka semua pin akan digunakan kecuali pin D1 – D3

sebab kita akan menggunakan jalur data untuk transfer 4 bit atau 8 bit. Penjelasan singkat

tentang RS, R/W, dan E:

- RS merupakan kependekan dari Register Selector, pin ini berfungsi untuk memilih

register control atau register data. Register control digunakan untuk mengkonfigurasi

LCD, sedangkan register data digunakan untuk menuliskan data berupa karakter

untuk ditampilkan di LCD.

- R/W atau Read/Write, digunakan untuk memilih aliran data mikrokontroller akan

membaca data yang ada di LCD atau menuliskan data ke LCD. Jika LCD hanya

digunakan untuk menulis / menampilkan data, maka pin ini bisa langsung

disambungkan ke GND sehingga logika bisa diset menjadi L (Low).

- E atau Enable, digunakan untuk mengaktifkan LCD ketika proses penulisan data ke

register control dan regiter data.

Rangkaian Dasar LCD 1602

Untuk merangkai LCD, yang Anda butuhkan adalah beberapa kabel jumper dan sebuah

potensiometer. Potensiometer ini berfungsi untuk mengatur kontras backlight LCD.

Perhatikan Rangkaian 9.2.

Page 55: Disusun Oleh - elektro.polimdo.ac.id · Modul Praktek Mikrokontroler Prodi D3 Teknik Listrik Jurusan Teknik Elektro, 2018 iii KATA PENGANTAR Puji dan syukur patut patutlah dipanjatkan

Modul Praktek Mikrokontroler Prodi D3 Teknik Listrik Jurusan Teknik Elektro, 2018

50

Gambar 9.2 Menghubungkan LCD 1602 ke Arduino

Lankah Kerja:

1. 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.

2. Pin R/W pada LCD disambungkan ke GND

3. Pin RS pada LCD disambungkan ke pin 6 pada Arduino

4. Pin E pada LCD disambungkan ke pin 7 pada Arduino

5. Pin untuk data (D4 – D7) pada LCD disambungkan ke pin 9 – 12 pada Arduino

6. VDD dan A pada LCD disambungkan ke +5v

7. VSS dan K pada LCD disambungkan ke GND

Pemograman dasar pada LCD

Buatlah program untuk menampilkan tulisan “TEKNIK ELEKTRO” seperti dibawah ini pada

Arduino IDE

#include <LiquidCrystal.h> // Setting LCD RS E D4 D5 D6 D7

LiquidCrystal lcd(7, 6, 9, 10, 11, 12);

void setup(){

// pilih LCD 16 x 2

lcd.begin(16,2);

lcd.print("TEKNIK ELEKTRO");

}

int hitung = 0;

void loop(){

Page 56: Disusun Oleh - elektro.polimdo.ac.id · Modul Praktek Mikrokontroler Prodi D3 Teknik Listrik Jurusan Teknik Elektro, 2018 iii KATA PENGANTAR Puji dan syukur patut patutlah dipanjatkan

Modul Praktek Mikrokontroler Prodi D3 Teknik Listrik Jurusan Teknik Elektro, 2018

51

// pindah ke baris kolom 1 baris ke 2

// array selalu dimulai dari 0

lcd.setCursor(0,1);

lcd.print( hitung++ );

delay(1000); }

Upload program yang dibuat ke board Arduino.

D. Prosedur Percobaan

1. Jalankan program, kemudian amati dan jelaskan hasil pengamatan anda

2. Pada bagian program lcd.setCursor(0,1); ganti (0, 1) dengan (0, ), Apa yang terjadi,

jelaskan

3. Buatlah program untuk menampilkan tulisan pada LCD, dimana tulisannya pada baris

pertama tertulis “D3 LISTRIK” dan pada baris kedua tertulis “TEKNIK ELEKTRO”

4. Buatlah program seperti dibawah ini, dimana program ini berfungsi sebagai

thermometer digital yang hasil pembacaannya ditampilkan pada tampilan LCD

// Termometer digital

#include <LiquidCrystal.h>

const int pSuhu = A0;

float suhu, data;

// Setting LCD RS E D4 D5 D6 D7

LiquidCrystal lcd(7, 6, 9, 10, 11, 12);

void setup(){

// mengubah tegangan referensi ke internal, 1.1 volt

analogReference(INTERNAL);

// pinSuhu sebagai input

pinMode(pSuhu, INPUT);

// pilih LCD 16 x 2

lcd.begin(16,2);

lcd.print("ELANGSAKTI.COM");

}

void loop(){

data = analogRead(pSuhu);

suhu = data * 110 / 1024;

// pindah ke baris kolom 1 baris ke 2

// array selalu dimulai dari 0

lcd.setCursor(0,1);

lcd.print("Suhu: ");

lcd.print(suhu);

lcd.print("C");

delay(1000);

}

Upload program ke board Arduino, jalankan program dan amati hasil pembacaannya,

dimana prosedur percobaannya sebagai berikut:

Page 57: Disusun Oleh - elektro.polimdo.ac.id · Modul Praktek Mikrokontroler Prodi D3 Teknik Listrik Jurusan Teknik Elektro, 2018 iii KATA PENGANTAR Puji dan syukur patut patutlah dipanjatkan

Modul Praktek Mikrokontroler Prodi D3 Teknik Listrik Jurusan Teknik Elektro, 2018

52

1. Panaskan sensor suhu LM35 dengan tangan dan amati hasilnya pada tampilan LCD,

kemudian jelaskan pendapat anda

2. Panaskan sensor suhu LM35 dengan korek api dan amati hasilnya pada tampilan

LCD, kemudian jelaskan pendapat anda

3. Buat laporan tentang praktikum yang dikerjakan

Page 58: Disusun Oleh - elektro.polimdo.ac.id · Modul Praktek Mikrokontroler Prodi D3 Teknik Listrik Jurusan Teknik Elektro, 2018 iii KATA PENGANTAR Puji dan syukur patut patutlah dipanjatkan

Modul Praktek Mikrokontroler Prodi D3 Teknik Listrik Jurusan Teknik Elektro, 2018

53

BAB X

PRAKTIKUM APLIKASI SENSOR CAHAYA (LDR)

A. Tujuan

Menggunakan Arduino untuk aplikasi sensor cahaya dengan menggunakan LDR

Membuat program sederhana untuk aplikasi sensor cahaya dengan menggunakan

LDR

B. Alat dan Bahan yang digunakan

1 buah Papan Arduino Uno

1 buah Bread Board

1 buah sensor cahaya LDR

Kabel jumper

C. Dasar teori dan Rangkaian Percobaah

Salah satu jenis sensor cahaya adalah LDR (Light Dependent Resistor). Dengan sensor ini,

kita bisa membuat alat yang berkaitan dengan cahaya seperti jemuran otomatis, tracking arah

sumber cahaya matahari, lampu otomatis (untuk rumah, aquarium, dll), atau sebagai pengatur

intensitas cahaya lampu untuk tananaman di dalam ruangan, dan banyak lagi lainnya. Di

pasaran ada LDR yang berukuran 4 mm dan 11 mm. Pada Gambar 6.1 adalah LDR dengan

ukuran 11 mm.

Gambar 10.1 LDR 11 mm

Page 59: Disusun Oleh - elektro.polimdo.ac.id · Modul Praktek Mikrokontroler Prodi D3 Teknik Listrik Jurusan Teknik Elektro, 2018 iii KATA PENGANTAR Puji dan syukur patut patutlah dipanjatkan

Modul Praktek Mikrokontroler Prodi D3 Teknik Listrik Jurusan Teknik Elektro, 2018

54

LDR disebut juga sebagai photoresistor sebab alat ini akan memiliki resistansi yang akan

berubah seiring dengan perubahan intensitas cahaya yang mengenainya. Dalam kondisi gelap,

resistansi LDR bisa mencapai 10 M ohm, tapi dalam kondisi terang, resistansi LDR turun

hingga 1 K ohm bahkan bisa kecil lagi (Gambar 6.2 dan 6.3). Sifat inilah yang membuat LDR

bisa dimanfaatkan sebagai sensor cahaya.

LDR terbuat dari sebuah cakram semikonduktor seperti kadmium sulfida dengan dua buah

elektroda pada permukaannya. Pada saat intensitas cahaya yang mengenai LDR sedikit,

bahan dari cakram LDR

tersebut menghasilkan elektron bebas dengan jumlah yang relatif kecil. Sehingga hanya ada

sedikit elektron untuk mengangkut muatan elektrik. Artinya saat intensitas cahaya yang

mengenai LDR sedikit maka LDR akan memiliki resistansi yang besar.

Gambar 10.2 Pengukuran LDR

Sedangkan pada saat kondisi terang, maka intensitas yang mengenai LDR banyak. Maka

energi cahaya yang diserap akan membuat elektron bergerak cepat sehingga lepas dari atom

bahan semikonduktor tersebut. Dengan banyaknya elektron bebas, maka muatan listrik lebih

mudah untuk dialirkan. Artinya saat intensitas cahaya yang mengenai LDR banyak maka

LDR akan memiliki resistansi yang kecil dan menjadi konduktor yang baik.

Gambar di atas adalah resistansi pada LDR dalam kondisi terang dan kondisi gelap. Dalam

kondisi terang, resistansi masih kisaran 1K ohm, dan ketika cahaya sedikit terhalangi

sehingga agak gelap, maka resistansi meningkat hingga puluhan kilo ohm. Karakteristik

inilah yang bisa kita manfaatkan untuk mengaktifkan relay dan menghidupkan lampu.

Rangkaian Dasar LDR

Ketika ingin menjadikan LDR sebagai sensor, maka kita bisa mengacu pada rangkaian

resistor sebagai pembagi tegangan (lihat Gambar 6.4). Dengan menggabungkan antara LDR

Page 60: Disusun Oleh - elektro.polimdo.ac.id · Modul Praktek Mikrokontroler Prodi D3 Teknik Listrik Jurusan Teknik Elektro, 2018 iii KATA PENGANTAR Puji dan syukur patut patutlah dipanjatkan

Modul Praktek Mikrokontroler Prodi D3 Teknik Listrik Jurusan Teknik Elektro, 2018

55

dengan resistor (atau potensiometer), maka kita bisa mendapatkan variasi tegangan (pada V1

atau V2) yang nantinya menjadi inputan pada pin analog Arduino.

Gambar 10.3 Rangkaian pembagi tegangan

Tegangan pada V1 atau V2 dapat dihitung berdasarkan hukum ohm dan aturannya pada

rangkaian seri. Pada rangkaian tersebut, arus pada semua titik dalam rangkaian tersebut

nilainya sama sehingga kita bisa menghitung V1 atau V2 tanpa mengetahui arus yang

mengalir. Lalu bagaimana cara menghitung V1 dan V2?

Pada rangkaian, ada 3 titik yang memiliki tegangan berbeda. Tegangan Vin, tegangan pada

R1, dan tegangan pada R2. Berdasarkan hukum ohm, Vin, V1, dan V2 bisa dihitung dengan

cara:

Jika ingin menghitung V1, maka kita tinggal menyubstitusikan antara pers 1 dan pers 2.

Atau lebih umum dikenal dengan rumus :

Lalu jika ingin menghitung V2, maka rumusnya adalah:

Berdasarkan cara kerja rangkaian tersebut, maka rangkaian untuk sensor cahaya adalah sebagai

berikut:

Page 61: Disusun Oleh - elektro.polimdo.ac.id · Modul Praktek Mikrokontroler Prodi D3 Teknik Listrik Jurusan Teknik Elektro, 2018 iii KATA PENGANTAR Puji dan syukur patut patutlah dipanjatkan

Modul Praktek Mikrokontroler Prodi D3 Teknik Listrik Jurusan Teknik Elektro, 2018

56

Gambar 10.4 Sensor cahaya dan Arduino

Berdasarkan Rangkaian 10.4, yang perlu Anda siapkan adalah resistor 10 K ohm, LDR, dan

beberapa kabel jumper. Agar bisa coba-coba, silakan resistor 10 K ohm bisa Anda ganti

dengan potensiometer 50 K atau 100 K, sehingga Anda lebih mudah ketika mencoba dengan

resistansi yang berbeda. Potensiometer juga bisa digunakan untuk kalibrasi input pada

Arduino

1. Salah satu kaki LDR disambungkan ke VCC pada Arduino

2. Salah satu kaki Resistor disambungkan ke GND pada arduino

3. Sambungkan sisa kaki LDR dan sisa kaki resistor, kemudian sambungan tersebut

dihubungkan ke pin A0 pada board Arduino

.

Pemograman Aplikasi Sensor Cahaya

Program ini1 akan membaca nilai tegangan pada sensor dan mengirimkannya ke komputer

melalui komunikasi serial. Dengan Arduino, kita bisa membuat berbagai logika untuk sensor

cahaya sehingga aplikasi dari LDR ini bisa diperluas dan dibuat lebih kompleks

diintegrasikan dengan berbagai sistem. Adapun programnya sebagai berikut:

// pin A0 ke LDR

const int pinLDR = A0;

void setup() {

Serial.begin(9600);

pinMode(pinLDR, INPUT);

}

int dataLDR = 0;

void loop() {

dataLDR = analogRead(pinLDR);

Serial.print("dataLDR : ");

Serial.print(dataLDR);

Page 62: Disusun Oleh - elektro.polimdo.ac.id · Modul Praktek Mikrokontroler Prodi D3 Teknik Listrik Jurusan Teknik Elektro, 2018 iii KATA PENGANTAR Puji dan syukur patut patutlah dipanjatkan

Modul Praktek Mikrokontroler Prodi D3 Teknik Listrik Jurusan Teknik Elektro, 2018

57

Serial.print(" Kondisi : ");

if(dataLDR < 150){

Serial.println("GELAP");

}else if(dataLDR < 300){

Serial.println("REDUP");

}else if(dataLDR < 450){

Serial.println("TERANG");

}else{

Serial.println("SILAU");

}

delay(1000);

}

Setelah program selesai dibuat, maka lakukanlah proses ferifikasi terlebih dahulu guna

memastikan bahwa program yang dibuat tidak ada kesalahan. Jika tidak ada kesalahan, maka

langkah selanjutnya adalah mengupload program ke board Arduino.

Prosedur Percobaan

1. Jalankan program dan amati hasilnya, kemudian jelaskan hasil pengamatan anda

2. Buka serial monitor, kemudian amati data hasil pengujian yag ditampilkan

3. Tutup dengan wadah yang gelap pada sensor LDR, kemudian amati hasil

pendeteksian keadaan melalui serial monitor, kemudian jelaskan hasil pengamatannya

4. Berikan pencahayaan dengan menggunakan cahaya senter pada permukaan sensor

LDR, amati hasilnya melalui serial monitor, kemudian jelaskan hasil pengamatannya

5. Buat program sensor cahaya, dimana hasil pembacaannya ditampilkan melalui LCD

6. Buat laporan tentang praktikum yang telah dilakukan

Page 63: Disusun Oleh - elektro.polimdo.ac.id · Modul Praktek Mikrokontroler Prodi D3 Teknik Listrik Jurusan Teknik Elektro, 2018 iii KATA PENGANTAR Puji dan syukur patut patutlah dipanjatkan

Modul Praktek Mikrokontroler Prodi D3 Teknik Listrik Jurusan Teknik Elektro, 2018

58

BAB XI

PRAKTIKUM APLIKASI SENSOR ULTRASONIK

A. Tujuan

Menggunakan Arduino untuk aplikasi sensor Jarak dengan Sensor Ultrasonik

Membuat program sederhana untuk aplikasi sensor Jarak dengan Sensor Ultrasonik

B. Alat dan Bahan yang digunakan

1 buah Papan Arduino Uno

1 buah Bread Board

1 buah sensor cahaya Ultrasonik

Kabel jumper

C. Dasar teori dan Rangkaian Percobaah

Gelombang ultrasonik merupakan gelombang yang umum digunakan untuk radar untuk

mendeteksi keberadaan suatu benda dengan memperkirakan jarak antara sensor dan benda

tersebut. Dalam ebook ini, kita akan mempelajarinya dengan salah satu sensor ultrasonik HC-

SR04 sebab sensor ini juga relatif terjangkau untuk pembelajaran. Bentuk fisik dari sensor ini

tampak seperti gambar 11.1.

Gambar 11.1 Sensor ultrasonic HC-SR04

Sensor ultrasonik adalah sebuah sensor yang berfungsi untuk mengubah besaran fisis (bunyi)

menjadi besaran listrik dan sebaliknya. Cara kerja sensor ini didasarkan pada prinsip dari

pantulan suatu gelombang suara sehingga dapat dipakai untuk menafsirkan eksistensi (jarak)

suatu benda dengan frekuensi tertentu. Disebut sebagai sensor ultrasonik karena sensor ini

menggunakan gelombang ultrasonik (bunyi ultrasonik).

Page 64: Disusun Oleh - elektro.polimdo.ac.id · Modul Praktek Mikrokontroler Prodi D3 Teknik Listrik Jurusan Teknik Elektro, 2018 iii KATA PENGANTAR Puji dan syukur patut patutlah dipanjatkan

Modul Praktek Mikrokontroler Prodi D3 Teknik Listrik Jurusan Teknik Elektro, 2018

59

Gelombang ultrasonik adalah gelombang bunyi yang mempunyai frekuensi sangat tinggi

yaitu 20.000 Hz. Bunyi ultrasonik tidak dapat di dengar oleh telinga manusia. Bunyi

ultrasonik dapat didengar oleh anjing, kucing, kelelawar, dan lumba-lumba. Bunyi ultrasonik

bisa merambat melalui zat padat, cair dan gas. Reflektivitas bunyi ultrasonik di permukaan

zat padat hampir sama dengan reflektivitas bunyi ultrasonik di permukaan zat cair. Akan

tetapi, gelombang bunyi ultrasonik akan diserap oleh tekstil dan busa.

Berikut ini adalah beberapa aplikasi dari gelombang ultrasonik:

- Dalam bidang kesehatan, gelombang ultrasonik bisa digunakan untuk melihat

organ-organ dalam tubuh manusia seperti untuk mendeteksi tumor, liver, otak dan

menghancurkan batu ginjal. Gelombang ultrasonik juga dimanfaatkan pada alat USG

(ultrasonografi) yang biasa digunakan oleh dokter kandungan.

- Dalam bidang industri, gelombang ultrasonik digunakan untuk mendeteksi

keretakan pada logam, meratakan campuran besi dan timah, meratakan campuran susu

agar homogen, mensterilkan makanan yang diawetkan dalam kaleng, dan

membersihkan benda benda yang sangat halus. Gelombang ultrasonik juga bisa

digunakan untuk mendeteksi keberadaan mineral maupun minyak bumi yang

tersimpan di dalam perut bumi.

- Dalam bidang pertahanan, gelombang ultrasonik digunakan sebagai radar atau

navigasi, di darat maupun di dalam air. Gelombang ultrasonik digunakan oleh kapal

pemburu untuk mengetahui keberadaan kapal selam, dipasang pada kapal selam untuk

mengetahui keberadaan kapal yang berada di atas permukaan air, mengukur

kedalaman palung laut, mendeteksi ranjau, dan menentukan puosisi sekelompok ikan.

Cara Kerja sensor Ultrasonik

Pada sensor ultrasonik, gelombang ultrasonik dibangkitkan melalui sebuah alat yang disebut

dengan piezoelektrik dengan frekuensi tertentu. Piezoelektrik ini akan menghasilkan

gelombang ultrasonik (umumnya berfrekuensi 40kHz) ketika sebuah osilator

diterapkan pada benda tersebut. Secara umum, alat ini akan menembakkan gelombang

ultrasonik menuju suatu area atau suatu target. Setelah gelombang menyentuh permukaan

target, maka target akan memantulkan kembali gelombang tersebut. Gelombang pantulan dari

target akan ditangkap oleh sensor, kemudian sensor menghitung selisih antara waktu

pengiriman gelombang dan waktu gelombang pantul diterima (Gambar 11.2).

Page 65: Disusun Oleh - elektro.polimdo.ac.id · Modul Praktek Mikrokontroler Prodi D3 Teknik Listrik Jurusan Teknik Elektro, 2018 iii KATA PENGANTAR Puji dan syukur patut patutlah dipanjatkan

Modul Praktek Mikrokontroler Prodi D3 Teknik Listrik Jurusan Teknik Elektro, 2018

60

Gambar 11.2 Cara kerja sensor Ultrasonik

Karena kecepatan bunyi adalah 340 m/s, maka rumus untuk mencari jarak berdasarkan

ultrasonik adalah :

dimana S merupakan jarak antara sensor ultrasonik dengan benda (bidang pantul), dan t

adalah selisih antara waktu pemancaran gelombang oleh transmitter dan waktu ketika

gelombang pantul diterima receiver.

HC-SR04 merupakan sensor ultrasonik siap pakai, satu alat yang berfungsi sebagai pengirim,

penerima, dan pengontrol gelombang ultrasonik. Alat ini bisa digunakan untuk mengukur

jarak benda dari 2cm - 4m dengan akurasi 3mm. Dengan demikian, untuk menghitung jarak

yang hanya maksimal 4 m maka rumus di atas harus dimodifikasi atau disesuaikan satuannya.

Mikrokontroller bisa bekerja pada order mikrosekon (1s = 1.000.000 μs) dan satuan jarak

bisa kita ubah ke satuan cm (1m = 100 cm). Oleh sebab itu, rumus di atas bisa diupdate

menjadi:

Alat ini memiliki 4 pin, pin Vcc, Gnd, Trigger, dan Echo. Pin Vcc untuk listrik positif dan

Gnd untuk ground-nya. Pin Trigger untuk trigger keluarnya sinyal dari sensor dan pin Echo

untuk menangkap sinyal pantul dari benda.

Cara menggunakan alat ini yaitu:

- Ketika kita memberikan tegangan positif pada pin Trigger selama 10μS, maka sensor

akan mengirimkan 8 step sinyal ultrasonik dengan frekuensi 40kHz

- Selanjutnya, sinyal akan diterima pada pin Echo

Page 66: Disusun Oleh - elektro.polimdo.ac.id · Modul Praktek Mikrokontroler Prodi D3 Teknik Listrik Jurusan Teknik Elektro, 2018 iii KATA PENGANTAR Puji dan syukur patut patutlah dipanjatkan

Modul Praktek Mikrokontroler Prodi D3 Teknik Listrik Jurusan Teknik Elektro, 2018

61

- Untuk mengukur jarak benda yang memantulkan sinyal tersebut, selisih waktu ketika

mengirim dan menerima sinyal digunakan untuk menentukan jarak benda tersebut

- Rumus untuk menghitung jaraknya adalah S = (0.034 *t) /2 cm.

Berikut adalah visualisasi dari sinyal yang dikirimkan oleh sensor HC-SR04

Gambar 11.3 Timing HC-SR04

Rangkaian Percobaan

Buatlah rangkaian seperti Rangkaian seperti pada Gambar 11.4

Gambar 11.4 Sensor Jarak dengan HC-SR04

1. VCC pada HC-SR04 dihubungkan ke +5V pada board Arduino

2. GND disambungkan ke GND

3. Pin Trig (Trigger) disambungkan ke pin 10 pada board Arduino

4. Pin Echo disambungkan ke pin 9 pada board Arduino

Page 67: Disusun Oleh - elektro.polimdo.ac.id · Modul Praktek Mikrokontroler Prodi D3 Teknik Listrik Jurusan Teknik Elektro, 2018 iii KATA PENGANTAR Puji dan syukur patut patutlah dipanjatkan

Modul Praktek Mikrokontroler Prodi D3 Teknik Listrik Jurusan Teknik Elektro, 2018

62

Progran SensorJarak

Buatlah program seperti dibawah ini, dimana program ini berfungsi untuk mengukur jarak

melalui media sensor ultresonik, kemudian data hasil pengukurannya akan ditampilkan

melalui serial monitor.

const int pTrig = 9;

const int pEcho = 10;

void setup() {

Serial.begin(9600);

pinMode(pTrig, OUTPUT);

pinMode(pEcho, INPUT);

}

long durasi = 0;

void loop() {

// trigger selama 10us

digitalWrite(pTrig, HIGH);

delayMicroseconds(10);

digitalWrite(pTrig, LOW);

durasi = pulseIn(pEcho, HIGH);

Serial.print("Durasi: ");

Serial.print(durasi);

Serial.print(", Jarak: ");

Serial.println((durasi *0.034)/2);

delay(1000);

}

Setelah program selesai dibuat, maka langkah yang harus dilakukan adalah memferifikasi

program tersebut, untuk memastikan bahwa program yang dibuat telah benar. Selanjutnya

upload program tersebut ke board Arduino.

Prosedur Percobaan

1. Jalankan sistem pengukur jarak yang telah dibuat

2. Buka serial monitor dan amati hasil pembacaan jarak, kemudian jelaskan hasil

pengamatannya

3. Dengan menggunakan media penghalang, letakan penghalang di depan sensor

ultrasonic

4. Dengan menggunakan mistar, ukur jarak antara penghalang dengan sensor arus dan

catat hasil pengujiannya. Pengukuran dan pengujian dilakukan pada jarak 1cm, 2cm,

3cm, 5cm, 7cm dan 10 cm

5. Buatlah laporan berdasarkan hasil praktek yang telah dilakukan

Page 68: Disusun Oleh - elektro.polimdo.ac.id · Modul Praktek Mikrokontroler Prodi D3 Teknik Listrik Jurusan Teknik Elektro, 2018 iii KATA PENGANTAR Puji dan syukur patut patutlah dipanjatkan

Modul Praktek Mikrokontroler Prodi D3 Teknik Listrik Jurusan Teknik Elektro, 2018

63

DAFTAR PUSTAKA

1. John Crisp, 2004, Introduction Microprocessors and Microcontrollers (2ndEdition), an

imprint of Elsevier, ISBN: 0-7506-5989-0

2. Jack Purdum, 2012, Beginning C for Arduino, Published by by Springer Science, ISBN:

978-1-4302-4777-7

3. Michael Margolis, 2011, Arduino Cookbook, Published by O’Reilly Media, Inc.,ISBN:

978-0-596-80247-9

4. John Boxall, 2013, Arduino Workshop a Hands-on Introduction with 65 Projects, No

Starch Press, Inc, ISBN: 978-1-59327-448-1.

5. Sumber internet lainnya :

https://www.arduino.cc/

http://www.arduino.web.id/

http://elektrokita.com/mengenal-arduino-uno/

http://panduanbelajarmicrocontroller.blogspot.co.id/2013/04/pengantarbelajar-

arduino.html

http://aozon.blogspot.co.id/2014/03/perkenalanmengenal-arduino-daripemula.html

http://bsiswoyo.lecture.ub.ac.id/2012/06/belajar-arduino-pengantar/

http://arduino-elektro-robotik.blogspot.co.id/2014/01/05-project-ledblink.html

http://www.rustamaji.net/id/component/arduino-uno