Rancang Bangun Alat Ukur Kekentalan Oli Berbasis Mikrokontroler Arduino-Unodengan Tampilan Lcd

BAB II
LANDASAN TEORI

2.1. Kekentalan atau Viskositas
Viskositas merupakan derajat kekentalan sebuah fluida. Viskositas juga dapat
dikatakan sebagai gesekan internal yang terjadi pada fluida. Viskositas memberikan gaya
perlawanan terhadap sebuah objek yang berada didalam fluida sehingga mengakibatkan
interaksi antara objek dan fluida berupa gesekan. Satuan dari viskositas sebuah cairan
dinyatakan dalam Poise. Dampak dari viskositas memiliki peran penting untuk perilaku
fluida dalam sebuah ruang. Dampak viskositas berpengaruh dalam aliran darah didalam
tubuh, pelumas dari bagian-bagian mesin, aliran fluida dalam pipa berongga dan lain-lain.
Minyak pelumas mesin harus mengalir secara merata dalam kondisi mesin yang dingin
maupun panas, karena itu pelumas dirancang memiliki variasi perubahan temperatur
sekecil mungkin terhadap perubahan viskositas. Viskositas darah didalam tubuh akan
mempengaruhi distribusi sari-sari makanan yang keseluruh tubuh. (Young, 2008)
Beberapa metode dapat digunakan dalam penentuan viskositas sebuah cairan. Metode
yang paling umum digunakan dalam laboraturium adalah penentuan viskositas dengan
metode bola jatuh. Jika sebuah benda berbentuk bola dijatuhkan kedalam fluida kental,
misalnya kelereng dijatuhkan dalam kolam renang yang airnya cukup dalam, nampak
pada awalnya kelereng bergerak dipercepat. Namun, setelah beberapa saat setelah
menempuh jarak tertentu kelereng bergerak dengan kecepatan konstan (bergerak lurus

beraturan). Kedaan ini disebabkan karena adanya gaya gesekan yang disebabkan oleh
kekentalan fluida. (Anwar, 2008).Untuk benda berbentuk bola jatuh didalam cairan yang
memiliki jari-jari R, bergerak dengan kecepatan konstan v relatif terhadap cairan dan �

menyatakan koefisien kekentalan cairan maka gaya gesekan fluida Fs secara empiris
dirumuskan persamaan sebagai :
�� = 6 ��� …………(1)

dan persamaan (1) disebut sebagai Hukum Stokes.
Dengan memilih sumbu vertikal keatas sebagai sumbu positif, maka pada saat kecepatan
terminal berlaku :
∑ � � = 0 ……..(2)

Jumlah gaya yang meliputi sumbu vertikal keatas tersebut adalah gaya keatas � , gaya

gesekan fluida � � dan gaya berat
� + �s =

, sehingga persamaan (2) menjadi :


6
Universitas Sumatera Utara

+ 6 ��� = �

(4 3 �3)

+ 6 ��� =

6�� = 4 3 �2 (
� =2 9 �2 (





)

(4 3 �3)


)�……(3)

dengan :

� = koefisien kekentalan fluida (Pa s)

= percepatan gravitasi (m/s2) � = jari-jari bola (m)
= massa jenis bola (kg/m3)

= massa jenis fluida (kg/m3)
� = kecepatan terminal (m/s)

Ada beberapa hal yang harus diperhitungkan pemakaian Hukum Stokes dalam
eksperimen, yaitu ruang tempat fluida harus jauh lebih luas daripada ukuran bola, tidak
terjadi aliran turbulen didalam cairan dan kecepatan v tidak terlalu besar sehingga aliran
fluida masih bersifat laminer.
Untuk memperkecil kesalahan perhitungan dalam viskositas metode bola jatuh, Faxen
menjabarkan solusi persamaan Oseen yang menghasilkan persamaan:
� = �� [1 − 2,104 (� �) + 2,09 (� �)3 − 0,95(� �)5] ….(4)


Dengan � viskositas akhir, �� viskositas yang dihasilkan dari eksperimen, � diameter bola
dan � diameter dalam tabung. Persamaan ini berlaku untuk bilangan Reynold < 1 dan

rasio diameter �/� yang kecil yaitu sekitar �� < 0,97. Bilangan Reynold �� dalam
metode bola jatuh dapat ditentukan dengan persamaan:
��= .�.��� .....(5)
Dengan
bola.

massa jenis cairan, � kecepatan bola relatif terhadap cairan dan � diameter

2.2 Sensor
Pengertian Sensor adalah transduser yang berfungsi untuk mengolah variasi gerak,
panas, cahaya atau sinar, magnetis, dan kimia menjadi tegangan serta arus
listrik.Sensor sendiri adalah komponen penting pada berbagai peralatan. Sensor juga
berfungsi sebagai alat untuk mendeteksi dan juga untuk mengetahui magnitude.
7
Universitas Sumatera Utara

Transduser sendiri memiliki arti mengubah, resapan dari bahasa latin traducere Bentuk

perubahan yang dimaksud adalah kemampuan merubah suatu energi kedalam bentuk
energi lain. Energi yang diolah bertujuan untuk menunjang daripada kinerja piranti yang
menggunakan sensor itu sendiri. Sensor sendiri sering digunakan dalam proses pendeteksi
untuk proses pengukuran. Sensor yang sering menjadi digunakan dalam berbagai
rangkaian elektronik antara lain Sensor cahaya atau sinar, Sensor suhu serta sensor
tekanan.Dari pengertian sensor yang telah kami jabarkan diatas wajar jika alat tersebut
menjadi alat yang banyak diminati oleh berbagai pabrikan elektronik. Salah satu pabrikan
yang tengah gencar menggunakan sensor pada produk mereka adalah pabrikan handphone
dengan model touch screen. Sensor tekanan pada berbagai handphone sekarang ini
membutuhkan adanya dukungan dari sensor tekanan. Selain pada gadget dengan
teknologi canggih tersebut, sensor tekanan juga biasa diaplikasikan kepada berbagai alat
elektronik lain seperti kalkulator serta remot. Adanya tekanan pada tombol-tombol pada
kalkulator ataupun remot bekerja dengan mengubah daya tekan tersebut menjadi daya
atau sinyal listrik.
2.1.2 Sensor reed switch
Reed Switch merupakan salah satu jenis sensor yang terbilang sangat sederhana.
Kenapa dikatakan sederhana? karena reed switch ini hanya terdiri dari dua buah plat yang
saling berdekatan. Reed Switch adalah sensor yang berfungsi juga sebagai saklar yang
aktif atau terhubung apabila di area jangkauan nya terdapat medan magnet. Medan
magnet yang cukup kuat jika melalui area sekita reed switch, maka dua buah plat yang

salaing berdekatan tadi akan terhubung sehingga akan memberikan rangkaian tertutup
bagi rangkaian yang dipasangkan nya.

8
Universitas Sumatera Utara

Reed switch terdiri dari dua kawat feromagnetik nikel-besi dan pisau kontak berbentuk
khusus (buluh) diposisikan dalam kapsul kaca tertutup rapat dengan celah antara mereka
dan dalam pelindung. Kapsul kaca diisi dengan gas inert untuk mencegah aktivasi kontak.
Ruthenium atau rhodium berlapis permukaan kontak terisolasi dari lingkungan luar, yang
melindungi kontak dari kontaminasi.

Gambar 2.1.2 sensor reed switch
Reed switch dapat dioperasikan dengan menggunakan medan magnet yang dihasilkan
oleh salah satu magnet permanen atau arus pembawa coil. Mereka mendorong utara (N)
dan selatan (S) kutub pada buluh. Kekuatan menarik magnet mengarah ke penutupan
kontak buluh. Setelah penghapusan medan magnet, hubungi terbuka lagi karena elastisitas
alang-alang. Ada Reed Switch yang beroperasi dengan magnet permanen, sementara ada
reed Switch beroperasi dengan gulungan yang dapat mengirimkan arus.


9
Universitas Sumatera Utara

Reed Switch salah satu jenis Sensor yang terbilang sangat sederhana. Kenapa dikatakan
sederhana? karena Reed Switch ini hanya terdiri dari dua buah plat yang saling
berdekatan. Reed Switch juga berfungsi juga sebagai Saklar yang aktif atau terhubung
apabila di area jangkauan nya terdapat medan magnet. Medan magnet yang cukup kuat
jika melalui area sekitar Reed Switch, maka dua buah plat yang saling berdekatan tadi
akan terhubung sehingga akan memberikan rangkaian tertutup bagi rangkaian yang
dipasangkan nya.jenis Sensor ini yang sering juga digunakan pada mesin-mesin Industri
seperti halnya Sensor Photo dan Proximity Sensor, namun Reed mempunyai cara kerja
yang berbeda dan unik dan juga mempunyai bentuk yang cukup kecil namun rentan
terhadap benturan.Pada alat penggerak berupa Cylinder, biasanya telah dilengkapi dua
buah Sensor ini, yang berfungsi untuk mendeteksi gerakan Cylinder ketika up/naik atau
down/turun, letaknya ada dibagian luar bawah dan luar atas pada body Cylinder. Prinsip
dasar kerja Sensor ini sangatlah sederhana, yaitu apabila bagian permukaan dari Sensor
terkena medan magnet maka dua buah kontak plate tipis yang terdapat dibagian dalam
Sensor akan tertarik oleh medan magnet, sehingga kontak akan terhubung.Medan magnet
untuk menggerakan Reed Switch, berasal dari Piston yang terdapat dibagian dalam
penggerak Cylinder, yang bergerak naik dan turun, gerakan itulah yang dideteksi oleh

Reed Switch.Sensor ini hanya mempunyai dua buah kabel untuk keluarannya, dan
dihubungkan hanya ke beban yang kecil saja seperi Relay, Input Module
dll.u n t u k mendeteksi gerakan dari penggerak cylinder naik, turun atau maju, mundur.
Carakerja dari sensor ini adalah ketika ada medan magnet mengenai bagian
depan sensor, maka sensor akan bekerja sehingga menghubungkan kontaknya,
medanmagnet ini terdapat dari bagian dalam cylinder sebelah atas dan bawah
kemudian posisi sensor nempel dengan badan cylinder pada saat cylinder bergerak naik
atauturun maka akan ada medan magnet yang mengenai reed switch.

10
Universitas Sumatera Utara

2.3 Pengkondisian Sinyal
Seringkali, pilihan mengenai karakteristik suatu sensor terhadap variabel
masukan sangatlah terbatas, sehingga diperlukan adanya suatu pengkondisian sinyal.
Pengkondisian sinyal ini berkaitan dengan operasi-operasi yang dikenakan pada sinyal
guna mengkonversi sinyal tersebut ke bentuk yang sesuai dengan yang diperlukan untuk
interface dengan elemen-elemen lain dalam sistem instrumentasi. Efek pengkondisian
sinyal pada sinyal masukan sering dinyatakan dalam bentuk fungsi alih. Pengkondisi
sinyal dapat dikelompokkan dalam beberapa jenis, seperti yang akan diuraikan berikut.

Pengubahan Level Sinyal suatu cara yang paling sederhana untuk pengkondisian sinyal
adalah dengan mengubah level sinyal, yaitu dengan melakukan penguatan ataupun
peredaman. Salah satu faktor yang penting dalam pemilihan penguat adalah impedansi
masukan yang ditawarkan kepada sensor (atau elemen lain yang berfungsi sebagai
masukan). Dalam beberapa kasus, (misalnya akselerometer dan detektor optik),
tanggapan frekuensi penguat juga merupakan suatu hal yang sangat penting.
2.3.1

Linierisasi

Hubungan antara keluaran dengan masukan sensor seringkali tidak linier. Oleh karena itu
diperlukan suatu rangkaian untuk linierisasi sinyal tersebut, seperti yang diperlihatkan
dalam Gambar 1. Tujuan linierisasi adalah untuk mendapatkan keluaran yang berubah
secara linier terhadap variabel masukan meskipun keluaran sensornya tidak linier.
Rangkaian linierisasi ini sulit dirancang, dan biasanya bekerja hanya dalam batas yang
sempit. Cara linierisasi yang lebih modern adalah seara perangkat lunak, yaitu dengan
membolehkan sinyal tak linier sebagai masukan ke komputer dan selanjutnya melakukan
linierisasi dengan menggunakan perangkat lunak.

11

Universitas Sumatera Utara

2.3.2 Konversi
Pengkondisian sinyal dalam hal ini digunakan untuk mengkonversi suatu jenis
perubahan listrik ke jenis perubahan listrik yang lain.Konversi ini diperlukan misalnya
dalam transmisi sinyal dan interface dengan sistem digital.Transmisi Sinyal.Untuk
transmisi sinyal seringkali digunakan transmisi arus karena tidak dipengaruhi oleh
perubahan beban.Standard level arus yang digunakan adalah 4 sampai 20mA Interface
Digital. Penggunaan komputer dalam sistem instrumentasi akan memerlukan suatu
konversi dari data analog ke data digital, yaitu yang dilakukan oleh ADC. Konversi ini
biasanya memerlukan pengaturan level sinyal analog agar sesuai dengan masukan yang
diperlukan oleh ADC.
2.3.2 Filter dan Penyesuai Impedansi
Dalam banyak kejadian,sinyal yang diperlukan sering bercampur dengan sinyal yang
tidak diinginkan (noise). Untuk menyingkirkan sinyal yang tidakdiinginkan tersebut dapat
digunakan filter yang sesuai, yaitu low-pass filter (LPF), high-pass filter (HPF), notch
filter, atau gabungan dari filter-filter tersebut.PenyesuaianImpedansi kadang diperlukan,
yaitu apabila impedansi internal transduser atau impedansi saluran dapat menyebabkan
terjadinya suatu kesalahan dalam pengukuran suatu variabel.


2.4 Arduino Uno R3

Arduino Uno merupakan papan mikrokontroler yang didalamnya tertanam
mikrokontroler dengan merk ATmega yang dibuat oleh perusahaan Atmel Corporation.
Berbagai papan Arduino menggunakan tipe ATmega yang berbeda-beda tergantung dari
spesifikasinya untuk mikrokontroler yang digunakan pada Arduino Uno ini sendiri jenis
ATmega 328, board Arduino revisi terbaru yang merupakan penerus dari Arduino
Duemilanove.
12
Universitas Sumatera Utara

Berikut ini ringkasan spesifikasi dari Arduino Uno R3.
Microcontroller

ATmega 328

Operating voltage

5V

Input voltage

7 – 12 V

Digital I/O Pins
Analog Input Pins

6

DC Current per I/O Pin

40 mA

DC Current for 3,3V Pin

50 mA

Flash Memory

32 KB

SRAM

2 KB

EEPROM

1KB

Clock Speed

MHz

Perbedaan mendasar antara Arduino Uno dan Duemilanove adalah tidak lagi
digunakannya chip FTDI (USB-to-serial driver) dan sebagai gantinya menggunakan
ATmega 8U2 yang deprogram untuk berfungsi sebagai converter USB-to-serial.
Perubahan ini cukup membantu dalam instalasi software arduino, terutama bagi anda
yang memakai system operasi windows, karena tidak perlu meng-instal driver FTDI
untuk menghubungkan board arduino uno dengan windows.Secara fisik, board arduino
uno ini sangat menyenangkan untuk dilihat.

13
Universitas Sumatera Utara

Gambar 2.4.1 Tampak atas Arduino Uno

Gambar 2.4.2 Tampak bawah Arduino Uno
Dimensi fisik Arduini Uno tetap sama dengan Duemilanove. Masih tetap juga
menggunakan pin header dengan penempatan yang sama, untuk menjaga kompabilitas
dengan board shield yang ada. Ada yang menyanyangkan hal ini, karena sebenarnya
penempatan pin header pada Arduino memiliki kesalahan, yaitu tidak menggunakan jarak
0,100” antara lubang pin header.Di pasaran, Arduino Uno biasanya dijual dengan
menyertakan kabel USB dan klip batre 9V (dengan jack DC).Ada juga yang menyertakan
DVD berisi software, dokumentasi dan video tutorial, sehingga tidak perlu repot-repot
men-download lewat internet.
2.5 Mikrokontroler ATmega 328p
Mikrokontroler adalah suatu keeping IC dimana terdapat microprosesor dan

14
Universitas Sumatera Utara

memori program (disebut ROM) serta memori serbaguna (disebut RAM), bahkan ada
beberapa jenis mikrokontroler yang memiliki fasilitas ADC,PLL,EEPROM dalam satu
kemasan.
2.5.1 Arsitektur ATmega 328p
Mikrokontroler ini menggunakan arsitektur Harvard yang memisahkan memori program
dari memori data, baik bus alamat maupun bus data, sehingga pengaksesan program dan
data dapat dilakukan secara bersamaan. Secara garis besar mikrokontroler ATmega 328
terdiri dari :
1. Arsitektur RISC dengan throughtput mencapai 16 MIPS pada frekuensi 16MHz
2. Memiliki kapasitas Flash Memori 16Kb, EEPROM 512 byte, dan SRAM 1Kb
3. Saluran I/O 32buah, yaitu Port A, Port B, Port C, dan Port D
4. CPU terdiri dari 32 buah register
5. User interupsi internal dan eksternal
6. Bandar antarmuka SPI dan Bandar USART sebagai komunikasi serial
7. Fitur Peripheral
-

Dua buah 8-bit timer dengan prescaler terpisah dan mode compare

-

Satu buah 16-bit timer dengan prescaler terpisah, mode compare, dan mode
capture

-

Real time counter dengan osilator tersendiri

-

Empat kanal PWM dan Antarmuka komparator analog

-

8 kanal, 10 bit ADC

-

Byte-oriented Two-wire serial interface

-

Watchdog timerdragon osilator internal

15
Universitas Sumatera Utara

Gambar 2.3 Blok Diagram ATmega 328p
2.5.2 Konfigurasi Pin ATmega 328p
Konfigurasi pin mikrokontroler ATmega 328p dengan kemasan 40-pin dapat
dilihat pada Gambar 2.3 Dari gambar tersebut dapat dilihat ATmega 328 memiliki 8 pena
untuk masing-masing Port A, Port B, Port C, dan Port D
16
Universitas Sumatera Utara

Gambar 2.4 Pin-pin pada ATmega 328p
Konfigurasi pin ATmega 328 dengan kemasan 40 pin DIP dapat dilihat pada
gambar 2.4 . Dari gambar diatas dapat dijelaskan fungsi dari masing-masing pin ATmega
328p sebagai berikut :
1. VCC merupakan pin yang berfungsi sebagai masukan catu daya
2. GND merupakan pin Ground
3. Port A (PA0 – PA7) merupakan pin input/output dua arah dan selain itu merupakan
pin masukan ADC
4. Port B (PB0 – PB7) merupakan pin input/output dua arah dan selain itu merupakan
pin khusus
5. Port C (PC0 – PC7) merupakan pin input/output dua arah dan selain itu merupakan
pin khusus
6. Port D (PD0 – PD7) merupakan pin input/output dua arah dan selain itu merupakan
pin khusus
7. RESET merupakan pin yang digunakan untuk me-reset mikrokontroler
17
Universitas Sumatera Utara

8. XTAL1 dan XTAL2 merupakan pin masukan clock eksternal
9. AVCC merupakan pin masukan tegangan untuk ADC
10. AREF merupakan pin masukan tegangan referensi ADC
2.5.3 Peta Memori ATmega 328p
Arsitektur ATmega 328p mempunyai dua memori utama, yaitu memori data dan
memori program.Selain itu, ATmega 328p memiliki memori EEPROM untuk menyimpan
data.ATmega 328 memiliki 16Kb on-chip in-system reprogrammable flash memory untuk
menyimpan program. Instruksi ATmega 328p semuanya memiliki format 16 atau 32bit,
maka memory flash diatur dalam 8K x 16bit.
2.5.4 Memori Data (SRAM)
Memori data ATmega 328p terbagi menjadi 3 bagian, yaitu 32 register umum,
64 buah register I/O dan 1Kb SRAM internal. General purpose register menempati alamat
data terbawah, yaitu $00 sampai $1F. Sedangkan memori I/O menempati 64 alamat
berikutnya mulai dari $20 hingga $5F. Memori I/O merupakan register yang khusus
digunakan untuk mengatur fungsi terhadap berbagai fitur mikrokontroler seperti control
register, timer/counter, fungsi-fungsi I/O, dan sebagainya. 1024 alamat berikutnya mulai
dari $60 hingga $45F digunakan untuk SRAM internal.
2.5.5 Memori Data EEPROM
ATmega 328p terdiri dari 512 byte memori data EEPROM 8 bit, data dapat
ditulis/dibaca dari memori ini, ketika catu daya dimatikan, data terakhir yang ditulis pada
memori EEPROM masih tersimpan pada memori ini, atau dengan kata lain memori
EEPROM bersifat nonvolatile. Alamat EEPROM mulai dari $000 sampai $1FF.
2.5.6 Analog to Digital Converter
ATmega 328p telah dilengkapi dengan 8 saluran ADC internal dengan resolusi
18
Universitas Sumatera Utara

10 bit.Dalam mode operasinya, ADC dapat dikonfigurasi, baik single endedinput maupun
differentialinput. Selain itu, ADC ATmega 328p memiliki konfigurasi pewaktuan,
tegangan referensi, mode operasi, dan kemampuan filter noise yang amat fleksibel
sehingga dapat dengan mudah disesuaikan dengan kebutuhan dari ADC itu sendiri. ADC
pada ATmega 328 memiliki fitur-fitur antara lain :
-

Resolusi mencapai 10 bit

-

Akurasi mencapai ±2 LSB

-

Waktu konfersi 13-260 µs

-

8 Saluran ADC dapat digunakan secara bergantian

-

Jangkauan tegangan input ADC bernilai dari 0 hingga VCC

-

Disediakan 2,56V tegangan referensi internal ADC

-

Mode konversi kontinu atau mode konversi tunggal

-

Interupsi ADC complete

-

Sleep Mode Noise canceler

-

ADC control and status register A- ADCSRA
Proses inisialisasi ADC meliputi proses penentuan clock, tegangan referensi,

formal dan keluaran, dan modus pembacaan. Register-register yang perlu diatur adalah
sebagai berikut :

Gambar 2.6 ADC Control and Status Register A-ADCSRA
ADEN

: 1 – adc enable, 0 = adc disable

19
Universitas Sumatera Utara

ADC

: 1 = mulai konversi, 0 = konversi belum terjadi

ADATE

: 1 = auto trigger diaktifkan, trigger berasal dari sinyal sinyal yang dipilih
(set

pada trigger SFIOR bit ADTS), ADC akan start konversi pada

edge positif sinyal trigger
ADIF

: diset ke 1, jika konversi ADC selesai dan data register ter-update. Namun
ADC Conversion Complete Intterupt dieksekusi jika bit ADIE dan bit 1
dalam register SREG diset

ADIE

: diset 1, jika bit 1 dalam register SREG di set

ADPS[0..2] : bit pengatur clock ADC, factor pembagi 0…7 = 2,4,8,16,32,64,128

-

ADC Multiplexer- ADMUX

-

Spesial Function IO Register-SFIOR
SFIOR merupakan register 8 bit pengatur sumber picu konversi ADC, apakah
dari picu eksternal atau dari picu internal

2.6 Bahasa C
Bahasa C adalah bahasa pemrograman yang dapat dikatakan berada antara
bahasa tingkat rendah (bahasa yang berorientasi pada mesin) dan bahasa tingkat tinggi
20
Universitas Sumatera Utara

(bahasa yang berorientasi pada manusia). Seperti yang diketahui, bahasa tingkat tinggi
mempunyai kompatibilitas antara platform. Karena itu, amat mudah untuk membuat
program pada berbagai mesin. Berbeda halnya dengan menggunakan bahasa mesin, sebab
setiap perintahnya sangat bergantung pada jenis mesin. Pembuat bahasa C adalah Brian
W. Kernighan dan Dennis M. Ritchie pada tahun 1972. C adalah bahasa pemrograman
terstruktur, yang membagi program dalam bentuk blok. Tujuannya untuk memudahkan
dalam pembuatan dan pengembangan program. Program yang ditulis dengan bahasa C
mudah sekali dipindahkan dari satu jenis program ke bahasa program lain. Hal ini karena
adanya standarisasi bahasa C yaitu berupa standar ANSI (American National Standar
Institut) yang dijadikan acuan oleh para pembuat kompiler.jenis mesin. Pembuat bahasa C
adalah Brian W. Kernighan dan Dennis M. Ritchie pada tahun 1972. C adalah bahasa
pemrograman terstruktur, yang membagi program dalam bentuk blok. Tujuannya untuk
memudahkan dalam pembuatan dan pengembangan program.
Program yang ditulis dengan bahasa C mudah sekali dipindahkan dari satu jenis
program ke bahasa program lain. Hal ini karena adanya standarisasi bahasa C yaitu
berupa standar ANSI ( American National Standar Institut) yang dijadikan acuan oleh
para pembuat kompiler.
Kelebihan Bahasa C:
-

Bahasa C tersedia hampir di semua jenis computer.

-

Kode bahasa C sifatnya adalah portable dan fleksibel untuk semua jenis computer.

-

Bahasa C hanya menyediakan sedikit kata-kata kunci. hanya terdapat 32 kata
kunci.

-

Proses executable program bahasa C lebih cepat

-

Dukungan pustaka yang banyak.

21
Universitas Sumatera Utara

-

C adalah bahasa yang terstruktur

-

Bahasa C termasuk bahasa tingkat menengah
Penempatan ini hanya menegaskan bahwa c bukan bahasa pemrograman yang

berorientasi pada mesin. yang merupakan ciri bahasa tingkat rendah. melainkan
berorientasi pada obyek tetapi dapat dinterprestasikan oleh mesin dengan cepat. secepat
bahasa mesin. inilah salah satu kelebihan c yaitu memiliki kemudahan dalam menyusun
programnya semudah bahasa tingkat tinggi namun dalam mengesekusi program secepat
bahasa tingkat rendah.
Kekurangan Bahasa C:
-

Banyaknya operator serta fleksibilitas penulisan program kadang-kadang

membingungkan pemakai.
-

Bagi pemula pada umumnya akan kesulitan menggunakan pointer.

Struktur Bahasa Pemrograman C

{
;
;
}
Contoh :

22
Universitas Sumatera Utara

Penjelasan :
1. Header File
Header File adalah berkas yang berisi prototype fungsi. definisi konstanta. dan definisi
variable. Fungsinya adalah kumpulan code C yang diberi nama dan ketika nama tersebut
dipanggil maka kumpulan kode tersebut dijalankan. File header yang digunakan untuk
mendefinisikan jenis mikrokontroler yang digunakan berfungsi sebagai pengarah yang
mana pendeklarasian register-register yang terdapat program difungsikan untuk jenis
mikrokontroler apa yang digunakan ( pada software Code Vision AVR ) contohnya di
bawah ini:

Contoh :
#include
#include
#include

2. Preprosesor Directive (#include)
Preprosesor directive adalah bagian yang berisi pengikutsertaan file atau berkasberkas fungsi maupun pendefinisian konstanta.
23
Universitas Sumatera Utara

Contoh:
#include
#include phi 3.14
3. Void
Void artinya fungsi yang mengikutinya tidak memiliki nilai kembalian (return).
4. Main ( )
Fungsi main ( ) adalah fungsi yang pertama kali dijalankan ketika program dieksekusi
tanpa fungsi main suatu program tidak dapat dieksekusi namun dapat dikompilasi.
2.7 Software Arduino IDE 1.0.5
IDE (Integrated Development Enviroment) adalah sebuah software yang sangat
berperan untuk menulis program, meng-complete menjadi kode biner dan meng-upload
ke dalam memory mikrokontroler, selain itu juga ada banyak modul-modul pendukung.
Software ini dapat digunakan di windows, Mac OS dan Linux.Software Arduino
Environment di tulis dalam bahasa java dengan didasarkan pada processing.Bahasa
pemrograman Arduino didasarkan pada bahasa pemrograman C. tetapi bahasa ini sudah
dipermudah menggunakan fungsi-fungsi sederhana sehingga mudah untuk dipelajari.
2.7.1

buzzer pada arduino
Buzzer adalah sebuah komponen elektronika yang berfungsi untuk mengubah

getaran listrik menjadi getaran suara. Pada dasarnya prinsip kerja buzzer hampir sama
dengan loud speaker, jadi buzzer juga terdiri dari kumparan yang terpasang pada
diafragma dan kemudian kumparan tersebut dialiri arus sehingga menjadi elektromagnet,

24
Universitas Sumatera Utara

kumparan tadi akan tertarik ke dalam atau keluar, tergantung dari arah arus dan polaritas
magnetnya.

Gambar 3.2.1 buzzer arduino
karena kumparan dipasang pada diafragma maka setiap gerakan kumparan akan
menggerakkan diafragma secara bolak-balik sehingga membuat udara bergetar yang akan
menghasilkan suara. Buzzer biasa digunakan sebagai indikator bahwa proses telah selesai
atau terjadi suatu kesalahan pada sebuah alat (alarm).
2.8 LCD (Liquid Crystal Display)
LCD merupakan penampil dengan sistem termodul, yang dapat menampilkan baik
karakter, angka atau pun simbol yang tentunya lebih bagus daripada seven segment.
Bentuk dan ukuran beragam, salah satu variasi bentuk dan ukuran yang tersedia dan
umum digunakan adalah 16x2 karakter (panjang 16, baris 2, karakter 32) dan 16 pin,
yaitu delapan jalur hubungan data, tiga jalur hubungan kontrol, tiga jalur catu daya dan
pada modul LCD dengan fasilitas back lighting terdapat dua jalur catu untuk back
lighting sehingga mereka dapat ditampilkan dalam kondisi cahaya yang kecil.

Tabel 1.kode pin LCD

Pin
1
2
3
4
5

Simbol

Kemungkinan

Fungsi

Vss

Power Supply (GND)

Vee/Vo

-

RS

0/1

0 = Intruction Input / 1 =Data Input

R/W

0/1

Vdd/Vcc

Power Supply (+5 V)
Contrast Adjust

0 = Write to LCD Module /1 = ReadFrom LCD

25
Universitas Sumatera Utara

Module

6
7
8
9
10
11
12
13
14
15
16

E

1, 1-->0

Enable Signal

DB0

0/1
0/1
0/1
0/1
0/1
0/1
0/1
0/1
-

Data

DB1
DB2
DB3

DB4
DB5
DB6
DB7
VB+
VB-

Data Pin 1
Data Pin 2
Data Pin 3
Data pin 4
Data pin 5
Data pin 6
Data pin 7
Back Light (+5 V)
Back Light (GND)

LCD (Liquid Crystal Display) adalah suatu jenis media tampil yang
menggunakan Kristal cair sebagai penampil utama.,. Adapun fitur yang disajikan
dalam LCD ini adalah :
1. Terdiri dari 16 karakter dan 2 baris
2. Mempunyai 192 karakter tersimpan
3. Terdapat karakter generator terprogram
4. Dapat dialamati dengan mode 4bit dan 8bit
5. Dilengkapi dengan back light
6. Tersedia VR untuk mengatur kontras
7. Pilihan konfigurasi untuk operasi write only atau read/write
8. Catu daya +5volt DC
9. Kompatibel dengan DT-51 dan DT-AVR Low Cost Series serta system
mikrokontroler lain.
Modul M1632 LCD dilengkapi dengan Mikrokontroller yang didesain khusus
untuk mengendalikan LCD.Mikrokontroller yang digunakan untuk mengendalikan LCD

26
Universitas Sumatera Utara

ini adalah HD4470 buatan Hitachi. HDD4470 merupakan Mikrokontroler yang dirancang
khusus untuk mengendalikan LCD dan mempunyai kemampuan untuk mengatur proses
scanning pada layar LCD. Mikrokontroler atau perangkat tersebut hanya mengirimkan
data-data yang merupakan karakter yang akan ditampilkan pada LCD atau perintah yang
mengatur proses tampilan pada LCD saja.
2.8.1 Cara kerja LCD
Pada aplikasi umumnya RW diberi logika rendah “0”.Bus data terdiri dari 4bit
atau 8 bit. Jika jalur data 4 bit maka yang digunakan ialah DB4 sampai dengan DB7.
Sebagaimana terlihat pada table deskripsi, interface LCD merupakan sebuah parallel bus,
dalam hal ini sangat memudahkan dan sangat cepat dalam pembacaan dan penulisan data
dari atau ke LCD. Kode ASCII yang ditampilkan sepanjang 8bit dikirim ke LCD secara
4bit atau 8bit pada satu waktu.

Gambar 2.7.1 Rangkaian elektronik LCD
Jika mode 4bit yang digunakan, maka 2 nibble data dikirim untuk membuat
sepenuhnya 8bit (pertama dikirim 4bit MSB lalu 4bit LSB dengan pulsa clock EN setiap
nibblenya). Jalur control EN digunakan untuk memberitahu LCD bahwa mikrokontroler
mengirimkan data ke LCD. Untuk mengirim data ke LCD program harus menset EN ke
kondisi high “1” dan kemudian menset dua jalur control lainnya (RS dan R/W) atau juga
mengirimkan data ke jalur data busSaat jalur lainnya sudah siap, EN harus diset ke “0”
27
Universitas Sumatera Utara

dan tunggu beberapa saat, dan set EN kembali ke high “1”. Ketika jalur RS berada dalam
kondisi low “0”, data yang dikirimkan ke LCD dianggap sebagai sebuah perintah atau
instruksi khusus (seperti bersihkan layar, posisi kursor dll). Ketika RS dalam kondisi high
atau “1”, data yang dikirimkan adalah data ASCII yang akan ditampilkan dilayar. Misal,
untuk menampilkan huruf “A” pada layar maka RS harus diset ke “1”. Jalur control R/W
harus berada dalam kondisi low (0) saat informasi pada data bus akan dituliskan ke LCD.
Apabila R/W berada dalam kondisi high “1”, maka program akan melakukan query data
dari LCD. Instruksi pembacaan hanya satu, yaitu Get LCD status, lainnya merupakan
instruksi penulisan, Jadi hamper setiap aplikasi yang menggunakan LCD, R/W selalu di
set ke “0”. Jalur data dapat terdiri 4 atau 8 jalur.Mengirimkan data secara parallel baik
4bit atau 8bit merupakan 2 mode operasi primer. Untuk membuat sebuah aplikasi
interface LCD, menentukan mode operasi merupakan hal yang paling penting.Mode 8bit
sangat baik digunakan ketika kecepatan menjadi keutamaan dalam sebuah aplikasi dan
setidaknya minimal tersedia 11 pin I/0 (3pin untuk control, 8pin untuk data).Sedangkan
mode 4bit minimal hanya membutuhkan 7bit (3pin untuk control, 4 pin untuk data). Bit
RS digunakan untuk memilih apakah data atau instruksi yang akan ditransfer antara
mikrokontroler dan LCD. Jika bit ini diset (RS = 1), maka byte pada posisi kursor LCD
saat itu dapat dibaca atau ditulis. Jika bit ini di reset (RS = 0), merupakan instruksi yang
dikirim ke LCD atau status eksekusi dari instruksi terakhir yang dibaca.

28
Universitas Sumatera Utara