Perancangan alat Pendeteksi Intensitas Cahaya Menggunakan LDR Berbasis Arduino uno

5

BAB 2

LANDASAN TEORI
Landasan teori sangat membantu

ntuk dapat memahami suatu sistem. Selain

daari pada itu dapat juga dijadikan sebagai bahan acuan didalam merencanakan suatu
sistem. Dengan pertimbangan hal-hal
tersebut, maka landasan teori merupakan bagian yang harus dipahami untuk
pembahasan selanjutnya. Pengetahuan yang mendukung perencanaan dan realisasi
alat meliputi mikrokontroler Arduino uno, sensor cahaya LDR, LCD dan program.
Cahaya adalah suatu bentuk

pancaran energi yang mana mempunyai

kapasitas arau kemampuan untuk merangsag sensasi penglihatan. Cahaya dari
kebanyakan sumber adalah tidak terpolarisasi yang berarti bahwa arah dari medan –E
dan medan –B adalah acak, bahkan ketika cahaya bergerak dalam arah yang sama.

Pada cahaya yang terpolarisasi, gelombang cahayanya mempunyai medan listrik dan
medan magnetik yang bersekutu (gambar 2.1).
Salah satu dari sekian banyak cara agar cahaya menjadi terpolarisasi adalah
dengan menembus sebuah filter polarisasi. Filter polarisasi merupakan lembaranlembaran plastik dengan berjuta-juta molekul memanjang linear yang bersekutu.
Apabila cahaya menembus filter polarisasi, gelombang-gelombang cahaya yang
medan listriknya sejajar terhadap molekul-molekul tersebutt membentuk arus di
dalam molekul dan kemudian diserap. Gelombang-gelombang cahaya yang medan
listriknya tegak lurus terhadap molekul- molekul tersebut tidak diserap.
Tak terpolarisasi

Terpolarisasi

Gambar 2.1 Cahaya yang tak terpolarisasi dan cahaya yang terpolarisasi

Universitas Sumatera Utara

6

Cahaya merupakan gelombang elektromagnetik yang dapat dilihat dengan
mata. Suatu sumber cahaya memancarkan energy, sebagaian dari energy ini

diubah menjadi cahaya tampak. Perambatan cahaya di ruang bebas dilakukan oleh
gelombang elektromagnetik.
Kecepatan rambat ( v ) gelombang elektromagnetik di ruang bebas sama
dengan 3 x 108 meter per detik. Jika frekuensi (f) dan panjang gelombang �, maka
berlaku :

………….(2.1)
Dimana

� adalah panjang gelombang, dengan satuan meter (m)

v adalah kecepatan cahaya, dengan satuan meter per detik (m/s)
f adalah frekunsi, dengan satuan hertz ( Hz )

Panjang gelombang cahaya tampak berkisar antara 350 namometer ( nm ) hingga
790 nanometer ( nm ). Yang terdiri atas beberapa daerah warna seperti yang
terlihat pada gambar 2.2 berikut ini :

Gambar 2.2 Warna-warna spektrum


Cahaya putih dapat diuraikan menggunakan prisma kaca, sinar-sinarnya
dibiaskan sedemikian rupa sehingga terjadi suatu spektrum. Warna-warna
spektrum ini dinamakan cahaya satu warna atau cahaya monokrom. Warna-warna
tersebut juga tampak pada pelangi, yang terjadi karena pembiasan cahaya oleh
titik-titik air hujan.

Universitas Sumatera Utara

7

Selain memiliki warna tertentu, setiap panjang gelombang juga memiliki
intensitas. Mata manusia paling peka cahaya dengan panjang gelombang 555 nm,
yaitu cahaya berwarna kuning- hijau. Warna- warna yang lain dengan intensitas
yang sama lebih redup, seperti yang terlihat pada grafik kepekaan mata gambar
2.3 berikut ini.

Gambar 2.3 Grafik Kepekaan Mata

2.1.LIGHT DEPENDENT RESISTOR ( LDR )


Sebuah light dependent resistor ( LDR ) terdiri dari sebuah piringan bahan
semikonduktor dengan dua buah elektroda pada perumukaannya. Biasanya LDR
terbuat dari bahan CdS, CdSe, PbS, dan Bi2 Se3 . Gambar 2.4 menunjukan salah
satu bentuk LDR.

Gambar 2.4 Bentuk dan Simbol LDR
Dalam gelap atau dibawah cahaya yang redup, bahan
piringan hanya mengundang elektron bebas dalam jumlah
yang relatif sangat kecil. Hanya tersedia sedikit elektron
bebas untuk mengalirkan muatan listrik. Hal ini berarti
bahwa bahan

Universitas Sumatera Utara

8

bersifat sebagai konduktor yang buruk untuk mengalirkan arus listrik.
Dengan kata lain, nilai tahanan bahan sangat tinggi.
Dibawah cahaya yang terang, lebih banyak elektron dapat melepaskan dari
atom-atom bahan semikonduktor ini. Terdapat lebih banyak elektron bebas yang

mengalirkan muatan listrik. Hal ini disebabkan adanya efek foto elektrik yaitu
fenomena quantum elektron dimana elektron-elektron dipancarkan atau dilepas
oleh suatu bahan setelah menyerap energi dari radiasi gelombang elektromagnetik
seperti sinar X atau cahaya tampak. Dalam keadaan ini, bahan bersifat sebagai
konduktor yang baik. Tahanan listrik bahan rendah. Semakin terang cahaya yang
mengenai bahan, semakin banyak electron bebas yang tersedia, dan semakin
rendah pula tahanan listrik bahan. Gambar 2.5 menunjukan grafik hubungan
antara intensitas cahaya terhadap resistansi LDR.

LOG (Ohms)

R ON

ILLUMINATION
LOG (fc)

Gambar 2.5 Grafik Iluminasi Cahaya
2.1.1. Sensitifitas
Sensitifitas suatu LDR berhubungan dengan cahaya yang mengenainya
dan hasil output sinyalnya. Resistansi LDR pada suatu tingkat intensitas cahaya

tertentu, seperti yang ditunjukan pada gambar 2.6, ditemukan dengan formula
berikut :
……………( 2.2)
Dimana

RH adalah resistansi LDR pada intensitas cahaya level H
�H adalah data sensitivitas bahan LDR pada intensitas cahaya level H

w adalah lebar celah elektroda

l adalah panjang celah elektroda

Universitas Sumatera Utara

9

Gambar 2.6 Geometri Elektroda Permukaan LDR
Pada gambar 2.6 diatas bahwa bagian yang sensitif terhadap perubahan
cahaya, dibentuk dalam struktur yang berliku- liku, hal ini dimaksudkan agar
resolusi tahananya dapat sekecil mungkin.


2.1.2. Spektrum Respons
Seperti halnya mata manusia, sensitivitas LDR juga tergantung dari
panjang gelombang cahaya yang mengenainya. Masing-masing jenis material
bahan semikonduktor LDR mempunyai grafik spektrum respons sendiri. Gambar
2.7 menunjukan grafik respons suatu jenis LDR yang banyak dipasaran terhadap
spektrum panjang gelombang cahaya.

Gambar 2.7 Grafik Respon LDR
2.1.3. Kecepatan Respons
Kecepatan respons adalah pengukuran kecepatan saat LDR
merespons perubahan cahaya dari terang ke gelap atau dari
gelap ke terang. Seperti yang ditunjukkan pada gambar 2.8
Waktu naik didefinisikan sebagai waktu yang

Universitas Sumatera Utara

10

diperlukan konduktansi cahaya pada LDR untuk mencapai 1 – e-1 ( sekitar

63 % ) dari nilai akhirnya. Waktu turun didefinisikan sebagai waktu yang
diperlukan konduktansi cahaya pada LDR untuk menurun sampai e-1 ( sekitar 37
% ) dari keadaan teriluminasi, dimana e adalah bilangan Euler yang besarnya
2,718. Pada 1 fc ( footcandela ) iluminasi, waktu respons sekitar 5 msec sampai
100 msec.
Untuk kerja kecepatan respons suatu LDR berkaian dengan sifat dari
bahan semikonduktor pembentuknya, yaitu sifat carrier lifetime bahan
semikonduktor. Pada beberapa semikonduktor, hole-electron berpasang-pasangan
pada suatu suhu ruangan. Pembuatan electron dan hole pada bahan semikonduktor
akan memerlukan energi. Ketika electron terbentuk maka hole pun akan
terbentuk. Energi untuk membangkitkan terbentuknya electron dan hole tersebut
dapat berupa energi panas ataupun energi yang dihasilkan dari cahaya yang
mengenai bahan semikonduktor tersebut. Pengukuran lamanya waktu untuk
berekombinasi kembali antara hole dan electron seperti keadaan sebelumnya
setelah energi pembangkitnya hilang dinamakan carrier lifetime.
Response Time vs
Illumination
(Decay Time)

Response Time vs Illumination

(Rise Time)
1
0,1
0,5

0,05
0

0

0

0,01

0,1

1

10


100

0

0,01 0,1

1

10 100

Gambar 2.8 Grafik Respons Waktu
Kecepatan respons juga dipengaruhi oleh terang redupnya cahaya. Semua
jenis material LDR menunjukan kecepatan responsnya lebih tinggi saat level
cahaya lebih terang dan kecepatan lebih rendah saat cahaya lebih redup.
Penyimpanan LDR di ruang yang gelap akan menyebabkan respons lebih lambat
dari pada penyimpanan diruang yang terang.

Universitas Sumatera Utara

11


2.3 Mikrokontroler Arduino UNO

Untuk memahami Arduino, terlebih dahulu kita harus memahami terlebih
dahulu apa yang dimaksud dengan physical computing. Physical computing
adalah membuat sebuah sistem atau perangkat fisik dengan menggunakan
software dan hardware yang sifatnya interaktif yaitu dapat menerima rangsangan
dari lingkungan dan merespon balik. Physical computing adalah sebuah konsep
untuk

memahami hubungan

yang

manusiawi antara lingkungan yang sifat

alaminya adalah analog dengan dunia digital.
Pada prakteknya konsep ini diaplikasikan dalam desain- desain alat atau
projek-projek

yang

menggunakan

sensor

dan

microcontroller

untuk

menerjemahkan input analog ke dalam sistem software untuk mengontrol gerakan
alat-alat elektro-mekanik seperti lampu, motor dan sebagainya.
Pembuatan prototype atau prototyping adalah kegiatan yang sangat
penting di dalam proses physical computing karena pada tahap inilah seorang
perancang melakukan eksperimen dan uji coba dari berbagai jenis komponen,
ukuran, parameter, program komputer dan sebagainya berulang-ulang kali sampai
diperoleh kombinasi yang paling tepat.
Dalam hal ini perhitungan angka-angka dan rumus yang akurat bukanlah
satu-satunya faktor yang menjadi kunci sukses di dalam mendesain sebuah alat
karena ada banyak faktor eksternal yang turut berperan, sehingga proses mencoba
dan menemukan/mengoreksi kesalahan perlu melibatkan hal-hal yang sifatnya
non-eksakta. Prototyping adalah gabungan antara akurasi perhitungan dan seni.
Proses prototyping bisa menjadi sebuah kegiatan yang menyenangkan atau
menyebalkan, itu tergantung bagaimana kita melakukannya. Misalnya jika untuk
mengganti sebuah komponen, merubah ukurannya atau merombak kerja sebuah
prototype dibutuhkan usaha yang besar dan waktu yang lama, mungkin
prototyping akan sangat melelahkan karena pekerjaan ini dapat dilakukan
berulang-ulang sampai puluhan kali – bayangkan betapa frustasinya perancang
yang harus melakukan itu. Idealnya sebuah prototype adalah sebuah sistem yang
fleksibel dimana perancang bisa dengan mudah dan cepat melakukan perubahanperubahan dan mencobanya lagi sehingga tenaga dan waktu tidak menjadi kendala

Universitas Sumatera Utara

12

berarti. Dengan demikian harus ada sebuah alat pengembangan yang membuat
proses prototyping menjadi mudah.
Pada masa lalu (dan masih terjadi hingga hari ini) bekerja dengan
hardware berarti membuat rangkaian menggunakan berbagai komponen elektronik
seperti

resistor,

kapasitor,

transistor

dan

sebagainya.

Setiap

komponen

disambungkan secara fisik dengan kabel atau jalur tembaga yang disebut dengan
istilah “ hard wired ” sehingga untuk merubah rangkaian maka sambungansambungan itu harus diputuskan dan disambung kembali.
Dengan hadirnya teknologi digital dan microprocessor fungsi yang
sebelumnya dilakukan dengan hired wired digantikan dengan program-program
software. Ini adalah sebuah revolusi di dalam proses prototyping. Software lebih
mudah diubah dibandingkan hardware, dengan beberapa penekanan tombol kita
dapat merubah logika alat secara radikal dan mencoba versi ke-dua, ke-tiga dan
seterusnya dengan cepat tanpa harus mengubah pengkabelan dari rangkaian.
Arduino Uno

adalah

board

mikrokontroler berbasis ATMEGA 328

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

berbeda dari semua papan sebelumnya dalam hal itu tidak

menggunakan FTDI chip driver USB-to-serial. Sebaliknya, fitur Atmega16U2
(Atmega8U2 hingga versi R2) diprogram sebagai konverter USB-to-serial.Revisi
2 dari dewan Uno memiliki resistor menarik garis 8U2 HWB ke tanah, sehingga
lebih mudah untuk dimasukkan ke dalam mode DFU.
Tabel 1. Ringkasan Arduino UNO

Microcontroller

ATmega328

Operating Voltage

5V

InputVoltage

7-12V

Universitas Sumatera Utara

13

(recommended)
Input Voltage (limits)

6-20V

Digital I/O Pins

14 (of which 6 provide PWM output)

Analog Input Pins

6

DC Current per I/O Pin

40 Ma

DC Current for 3.3V Pin

50 Ma
32 KB (ATmega328) of which 0.5 KB used by

Flash Memory

bootloader

SRAM

2 KB (ATmega328)

EEPROM

1 KB (ATmega328)

Clock Speed

16 MHz

Length

68.6 mm

Width

53.4 mm

Weight

25

1. Power
Arduino Uno dapat diaktifkan melalui koneksi USB atau dengan satu
daya eksternal. Sumber daya dipilih secara otomatis.Eksternal (non-USB) dapat di
ambil baik berasal dari AC ke adaptor DC atau baterai. Adaptor ini dapat
dihubungkan

dengan

menancapkan

plug

jack

pusat-positif ukuran

2.1mm

konektor POWER. Ujung kepala dari baterai dapat dimasukkan kedalam Gnd dan
Vin pin header dari konektor POWER.Kisaran kebutuhan daya yang disarankan
untuk board Uno adalah7 sampai dengan 12 volt, jika diberi daya kurang dari 7
volt kemungkinan pin 5v Uno dapat beroperasi tetapi tidak stabil kemudian
jikadiberi daya lebih dari 12V, regulator tegangan bisa panas dan dapat merusak
board Uno.
Pin listrik adalah sebagai berikut:
VIN. Tegangan masukan kepada board Arduino ketika itu menggunakan
sumber daya eksternal (sebagai pengganti dari 5 volt koneksi USB atau sumber
daya lainnya).5V. Catu daya digunakan untuk daya mikrokontroler dan komponen

Universitas Sumatera Utara

14

lainnya3v3. Sebuah pasokan 3,3 volt dihasilkan oleh regulator on-board. GND.
Ground pin.
2. Memori
ATmega328

memiliki 32

KB

(dengan

0,5

KB digunakan untuk

bootloader), 2 KB dari SRAM dan 1 KB EEPROM (yang dapat dibaca dan ditulis
dengan EEPROM liberary).
3. Input dan Output
Masing-masing dari 14 pin digital di Uno dapat digunakan sebagai input atau
output, dengan menggunakan fungsi pinMode (), digitalWrite (), dan digitalRead
(), beroperasi dengan daya 5 volt. Setiap pin dapat memberikan atau menerima
maksimum 40 mA dan memiliki internal pull-up resistor (secara default terputus)
dari 20-50 kOhms. Selain itu, beberapa pin memiliki fungsi khusus:
Serial: 0 (RX) dan 1 (TX). Digunakan untuk menerima (RX) dan mengirimkan
(TX) TTL data serial. Pin ini dihubungkan ke pin yang berkaitan dengan chip
Serial ATmega8U2 USB-to-TTL.
Eksternal menyela: 2 dan 3. Pin ini dapat dikonfigurasi untuk memicu interrupt
pada nilai yang rendah, dengan batasan tepi naik atau turun, atau perubahan nilai.
Lihat (attachInterrupt) fungsi untuk rincian lebih lanjut.
PWM: 3, 5, 6, 9, 10, dan 11. Menyediakan output PWM 8-bit dengan fungsi
analogWrite ().
SPI: 10 (SS), 11 (Mosi), 12 (MISO), 13 (SCK). Pin ini mendukung komunikasi
SPI menggunakan SPI library.
LED: 13. Ada built-in LED terhubung ke pin digital 13. Ketika pin bernilai nilai
HIGH, LED on, ketika pin bernilai LOW, LED off.
Uno memiliki 6 masukan analog, berlabel A0 sampai dengan A5, yang masingmasing menyediakan 10 bit dengan resolusi (yaitu 1024 nilai yang berbeda).
Selain itu, beberapa pin memiliki fungsi khusus:
I2C: A4 (SDA) dan A5 (SCL). Dukungan I2C (TWI) komunikasi menggunakan
perpustakaan Wire.
Aref. Tegangan referensi (0 sampai 5V saja) untuk input analog. Digunakan
dengan fungsi analogReference ().

Universitas Sumatera Utara

15

Reset. Bawa baris ini LOW untuk me-reset mikrokontroler.

2.3.1 Arsitektur Mikrokontroler Arduino Uno

Gambar 2.9 Arduino UNO tampak depan

Gambar 2.10 Arduino UNO tampak belakang

Komponen utama di dalam papan Arduino adalah sebuah microcontroller
8 bit dengan merk ATmega yang dibuat oleh perusahaan Atmel Corporation .
Berbagai papan
tergantung

Arduino

menggunakan

dari spesifikasinya,

tipe

ATmega

sebagai contoh Arduino

yang

berbeda-beda

Uno

menggunakan

ATmega328 sedangkan Arduino Mega 2560 yang lebih canggih menggunakan
ATmega2560.
Untuk memberikan gambaran mengenai apa saja yang terdapat di dalam
sebuah microcontroller, pada gambar berikut ini diperlihatkan contoh diagram
blok sederhana dari microcontroller ATmega328 (dipakai pada Arduino Uno).

Universitas Sumatera Utara

16

Blok-blok di atas dijelaskan sebagai berikut:
Universal Asynchronous Receiver/Transmitter (UART) adalah antar muka
yang digunakan untuk komunikasi serial seperti pada RS-232, RS-422 dan RS485.
2KB RAM pada memory kerja bersifat volatile (hilang saat daya dimatikan),
digunakan oleh variable-variabel di dalam program.
32KB RAM flash memory bersifat non-volatile , digunakan untuk
menyimpan program yang dimuat dari komputer. Selain program, flash memory
juga menyimpan bootloader . UART (antar muka serial) 2KB RAM (memory
kerja) 32KB RAM Flash memory (program)
1KB EEPROM CPU Port input/output
Bootloader adalah program inisiasi yang ukurannya kecil, dijalankan oleh CPU
saat daya dihidupkan. Setelah bootloader selesai dijalankan, berikutnya program
di dalam RAM akan dieksekusi.
1KB EEPROM bersifat non-volatile, digunakan untuk menyimpan data
yang tidak boleh hilang saat daya dimatikan. Tidak digunakan pada papan
Arduino.
Central Processing Unit (CPU) , bagian dari microcontroller untuk menjalankan
setiap instruksi dari program. Port input/output,

pin-pin untuk menerima data

(input) digital atau analog, dan mengeluarkan data (output) digital atau analog.
Setelah mengenal bagian-bagian utama dari microcontroller ATmega
sebagai komponen utama, selanjutnya kita akan mengenal bagian-bagian dari
papan Arduino itu sendiri.

Dibawah ini pemetaan pin ATmega168 pada Arduino UNO

Universitas Sumatera Utara

17

Gambar 2.11 ATMega 168 pin mappping

2.1.2

Fitur ATMega8535

Berikut ini adalah fitur-fitur yang dimiliki oleh Aduino UNO.
1. Dua buah 8 bit counter/ timer dengan prescaler dan mode pembanding.
2. Satu buah 16 bit counter/ timer dengan prescaler, mode pembanding dan
mode capture. Real Time Counter dengan on-chip oscillator terpisah.
3. 4 kanal PWM
4. 8 kanal 10-bit ADC.
5. TWI.
6. Programmable serial USART.
7. Maser/ slave SPI.
8. Programmable Watchdog timer dengan on-chip oscillator terpisah.
9. Power-on reset dan programmable Brown-out detection.
10.

Internal RC Oscillator terkalibrasi.

11.

Internal dan eksternal Interrupt.

12.

6 mode sleep.

Universitas Sumatera Utara

18

13.

32 Programmable I/O.

14.

Tegangan operasi 2.7 – 5.5 V.

15.

Speed grades dengan range 0 – 16 MHz.

2.1.3 Komunikasi.
Arduino

Uno

memiliki sejumlah fasilitas untuk berkomunikasi dengan

komputer, Arduino lain, atau mikrokontroler lainnya. ATmega328 menyediakan
UART TTL (5V) komunikasi serial, yang tersedia pada pin digital 0 (RX) dan 1
(TX). Pada ATmega16U2 saluran komunikasi serial melalui USB dan muncul
sebagai com port virtual untuk perangkat lunak pada komputer.
Firmware 16U2 menggunakan standar driver USB COM, dan tidak ada
driver

eksternal diperlukan.

Namun,

pada Windows,

diperlukan file .inf.

Perangkat lunak Arduino termasuk monitor serial yang memungkinkan data
tekstual sederhana akan dikirim ke dan dari papan Arduino. RX dan TX LED di
papan akan berkedip ketika data sedang dikirim melalui chip USB-to-serial dan
koneksi USB komputer (tetapi tidak untuk komunikasi serial pada pin 0 dan 1).
The ATmega328 juga mendukung I2C (TWI) dan komunikasi SPI.
Perangkat

lunak

Arduino

termasuk

perpustakaan

Wire

berfungsi

menyederhanakan penggunaan bus I2C. Untuk komunikasi SPI, menggunakan
perpustakaan SPI.Port A.
Merupakan 8-bit dua arah bi-directional port I/O,dengan menggunakan
resistor pull-up internal dimana setiap pinnya dapat diatur per bit. Output buffer
Port A dapat memberi arus 20 mA dan dapat mengendalikan display LED secara
langsung. Data Direction Register port A (DDRA) harus disetting terlebih dahulu
sebelum Port A digunakan. Bit-bit DDRA diisi 0 jika ingin memfungsikan pin-pin
port A yang bersesuaian sebagai input, atau diisi 1 jika sebagai output. Selain itu,
kedelapan pin port A juga .selain itu arduino juga memliki kelebihan, sebagai
berikut :


Tidak perlu perangkat chip programmer karena di dalamnya 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 menggunakan nya.

Universitas Sumatera Utara

19



Bahasa pemrograman relatif mudah karena software Arduino dilengkapi dengan k



kumpulan library yang cukup lengkapi
2.4 ANALOG TO DIGITAL CONVERTER ( ADC )

ADC adalah suatu alat yang mampu untuk mengubah sinyal atau tegangan
analog menjadi informasi digital. Resolusi ADC selalu dinyatakan sebagai jumlah
bit-bit dalam kode keluaran digitalnya. Misalnya, ADC dengan resolusi n-bit
memiliki 2n kode digital yang mungkin dan berarti juga memiliki 2 n step level.
Jika resolusi ADC semakin tinggi, maka semakin banyak kemungkinan nilai-nilai
analog yang bias disajikan. Misalnya ADC dengan resolusi 8 bit menghasilkan
bilangan 0 sampai 255 ( 256 bilangan dan 255 step ), dengan demikian tidak
mungkin menyajikan semua kemungkinan nilai-nilai analog. Jika sekarang
resolusinya menjadi 10 bit maka akan menghasilkan bilangan 0 sampai dengan
1023 ( 1024 bilangan dan 1023 step ).
(

(

)

)

Fitur- fitur pada arsitektur ADC mikrokntroler AVR adalah sebagai
berikut :


Resolusi maksimum 10 bit (dapat dipilih resolusi 8 bit)



0,5 LSB Integral Non Linearity



Akurasi mutlak ± 2 LSB



Waktu konversi 13 – 260 µs



Pengambilan sampel sampai 15 kilo sampel per detik pada resolusi
maksimum



8 kanal masukan single ended termultipleks



7 kanal masukan differensial dan 2 kanal masukan differential dengan opsi
penguatan 10x dan 200x



Jangkauan tegangan masukan ADC 0 – VCC



Tegangan referensi 2,56 V internal yang dipilih



Mode konversi tunggal

Universitas Sumatera Utara

20

Ada banyak cara yang dapat digunnakan untuk mengubah sinyal analog menjadi
sinyal digital yang nilainya proposional. Jenis ADC yang biasa digunakan.
dalam perancangan adalah jenis successive approximation convertion atau
pendekatan bertingkat yang memiliki waktu konversi jauhlebih singkat dan tidak
tergantung pada nilai masukan analognya atau sinyal yang akan diubah. Diagram
blok pengubah sinyal analog ke dalam digital ditunjukkan pada gambar
2.21Berikut ini :
Vin

Pembanding
-

Mulai
Konversi

Analog in

CLK

KENDALI
+

Selesai
Konversi
MSB

V out

Konverter D/A 8 bit

LSB

Register SAR

Register Buffer

Digital Out

D0 D1 D2 D3 D4 D5 D6 D7

Gambar 2.12 Diagram blok ADC

Prinsip kerja rangkaian pada gambar 2.21 tersebut adalah jika sinyal
masukan mulai konversi dari unit kendali diberi logika „0‟ , maka register SAR
(Succesive Approximation Register) akan direset. Sehingga keluaran Vout unit
DAC (Digital to Analog) menjadi nol. Pada waktu sinyal „mulai konversi‟
kembali menjadi tinggi, operasi konversi segera dimulai.
Proses konversi diawali dengan pengesetan bit paling berarti (MSB)
register SAR oleh kendali. Selanjutnya dta digital dalam register SAR dikonversi
ke analog oleh DAC. Hasil konversi Vout oleh unit dibandingkan dengan sinyal
masukan Vin oleh unit pembanding. Bila Vout lebih besar dari pada Vin , maka unit
pembanding akan mengirimkan sinyal negatif ke unit kendali. Dengan adanya
sinyal negatif ini, unit kendali akan mereset bit paling berarti (MSB) register
SAR. Sebaliknya, jika Vout lebih kecil dari pada Vin , unit pembanding akan
mengirimkan sinyal positif ke unit kendali. Dengan sinyal positif ini, unit kendali
tetap mengeset bit paling berarti (MSB).

Universitas Sumatera Utara

21

Pada pulsa clock berikutnya unit terkendali akan mengeset bit yang lebih rendah
yaitu bit ke 7 register SAR. Kemudian data dikonversikan oleh unit DAC dan
hasil konversi Vout dibandingkan dengan sinyal masukan Vin . Sinya hasil
perbandingan akan menentukan unit kendali untuk mengeset dan mereset
register SAR. Demikian proses ini berlangsung sampai diperoleh nilai Vin sama
dengan nilai Vout . Apabila konversi telah selesai, unit kendali mengirimkan sinyal
„selesai konversi‟ yang berlogika rendah.
2.5.

PEMROGRAMAN

MIKROKONTROLER

MENGGUNAKAN

CODE VISION AVR ( BAHASA C )

Penggunaan

mikrokontroler

yang

diterapkan

diberbagai

rumah

tangga,otomotif,sampai dengan kendali, membuat mikrokontroler mulai masuk
didunia pendididkan. Banyak varian dan type dari mikrokontroler yang dipelajari
dan digunakan di dunia pendidikan.
Akar dari bahas C adalah dari bahasa BCPL yang dikembangkan oleh
Martin Richhards pada tahun 1967. Bahasa ini memberikan ide kepada Ken
Thompson yang kemudian mengembangkan bahasa yang disebut dengan B pada
tahun 1970. Perkembangan selanjutnya dari bahasa B adalah bahasa C oleh
Dennis Ricthie sekitar 1970-an di Bell Telephone Laboratories Inc ( sekarang
adalah AT & T Bell Laboratories ). Bahasa C pertama kali digunakan di computer
Digital Equipment Corporation PDP-11

yang menggunakan sistem operasi

UNIX.
C adalah bahasa yang standar, artinya satuan program yang ditulis dengan
versi bahas C tertentu akan dapat dikoompilasi dengan versi bahasa C yang lain
dengan sedikit modifikasi. Standar bahasa C yang asli adalah standar dari UNIX.
Patokan standar UNIX ini diambil dari buku yang ditulis oleh Brian Kerninghan
dan Dennis Ritehiie yang berjudul “The C Programming Language”,diterbitkan
oleh Prentice Hall tahun 1978.
Beberapa alasan mengapa bahasa C banyak digunakan, diantaranya adalah
sebagai berikut :
1. Bahasa C hamper tersedia di semua jenis computer.

Universitas Sumatera Utara

22

Bahasa C ini merupakan bahasa computer yang tersedia baik di computer
mikro, mini maupun computer besar.
2. Kode bahasa C sifatnya portable.
Aplikasi yang ditulis dengan bahasa C untuk suatu computer tersebut dapat
digunakan di computer lain hanya dengan modifikasi yang sedikit saja.
3. Bahasa C hanya menyediakan sedikit kata-kata kunci.
Semakin sedikit kata-kata kunci yang digunakan disuatu bahasa, semakin
mudah bagi pemakai untuk mempelajari dan menggunkan bahasa tersebut.
4. Proses executable program bahasa C lebih cepat.
Karena philosopi dari bahasa C yang menyediakan sedikit kata-kata kunci,
maka konsekuensinya program hasil dari kompilasi bahasa C relative akan
lebih cepat prosesnya dibandingkan dengan hasil dari bahasa lain.
5. Dukungan pustaka yang banyak.
Telah disebut bahwa keandalan bahasa C dicapai dengan fungsi- fungsi
pustakanya. Fungsi-fungsi pustaka ini disediakan oleh versi-versi bahasa C
masing- masing atau dapat dibeli dari sumber yang lain.
6. C adalah bahasa yang tersruktur.
Bahasa C mempunyai struktur yang baik sehingga mudah untuk dipahami.
C disebut bahasa yang terstruktur karena menggunakan fungsi-fungsi
sebagai program-program bagiannya.
7. Selain bahasa tingkat tinggi, C juga dianggap sebagai bahasa tingkat
menengah.
Pada awalnya, bahasa C sudah digunakan untuk membuat programprogram

perangkat

lunak

sistem.

Yang

termasuk

program-program

perangkat lunak sistem diantaranya adalah sistem operasi, interpreter,
compiler, bahasa perakit, bahasa pemrograman dan DBMS ( Database
Management System ). Untuk mempunyai kemapuan seperti ini, bahasa C
menggunkan kemapuan bahasa tingkat tinggi dan bahasa tinggkat rendah
yang menghsilkan bahasa tingkat menengah. Sebagai bahasa tingkat
menengah,C

menyediakan

kemampuan seperti yang disediakan oleh

bahasa perakitan untuk operasi-operasi bit,byte, alamat-alamat memori,

Universitas Sumatera Utara

23

register, BIOS ( Basic Input Ouput System ), DOS ( Disk Operating System
) dan lain sebagainya.
8. Bahasa C adalah compiler.
Karena bahasa C sifatnya adalah compiler, maka akan menghasilkan
executable program yang banyak dibutuhkan oleh program-program
komersial.
Ada beberapa program yang dapat digunakan sebagai editor dan compiler
untuk mikrokontroler AVR, salah satunya yaitu CodeVision. CodeVision AVR
adalah salah satu alat bantu pemrograman yang bekerja dalam lingkungan
pengembangan perangkat lunak yang terintegrasi. Code vision AVR ini
merupakan cross-compiler C, Integrated Development Environtment (IDE), dan
Automatic Program Generator yang didesain untuk mikrokontroler buatan Atmel
seri AVR. Cross-compiler C mampu menerjemahkan hamper semua perintah dari
bahasa ANSI C, sejauh yang diijinkan oleh arsitektur dari AVR, dengan tambahan
beberapa fitur untuk mengambil kelebihan khusus dari arsitektur AVR dan
kebutuhan dari sistem embedded.
CodeVisionAVR juga mempunyai Automatic Program Generator bernama
CodeWizardAVR, yang mengizinkan anda untu menulis, dalam hitungan menit,
semua instruksi yang diperlukan untuk membuat beberapa fungsi- fungsi tertentu.
Dengan fasilitas ini mempermudah para Programmer pemula untuk belajar
pemograman mikrokontroler menggunakan CVAVR. Seperti aplikasi IDE
lainnya, CodeVision AVR dilengkapi dengan source code editor, compiler, linker,
dan dapat memanggil Atmel AVR Studio untuk debugger nya.
Untuk memulai menjalankan CodeVision, buka program CodeVision
melalui menu Start|All Program||CodeVision|CodeVision AVR C Compiler
atau melalui desktop klik lambang codevision.

Universitas Sumatera Utara

24

Gambar 2. 13 Tampilan Pertama Kali CodeVision dijalankan

2.6.

SOFTWARE DESAIN PCB ( Printed Circuit Board ) Proteus
Profesional 7.7 SP2 Pro

Proteus professional merupakan kelompok software yang digunakan untuk
membantu para desainer dalam merancang dan mensimulasikan suatu rangkaian
elektronika. Software ini memiliki dua fungsi sekaligus dalam satu paket, paket
yang pertama sebagai software untuk menggambar skematik dan dapat
disimulasikan yang diberi nama ISIS. Paket kedua digunakan sebagai merancang
gambar Printed Circuits Board (PCB) yang diberi nama ARES. Secara langsung,
pengubahan dari skematik ke PCB dapat dilakukan dalam software Proteus Prof
7.7 ini.
Proteus Prof ISIS memiliki versi yang selalu diperbarui, mulai dari versi
7.0 samapai dengan 7.10. setiap kenaikan versi memiliki penambahan akan
library komponen yang dapat diambil dan digunakan dalam penggambaran
atau perancangan. Sebagai peramcanngan rangkaian elektroonik terlebih
dahulu menggunakan ISIS sebagai media yang memudahkan dalam
perancangan dan simulasi. Banyaknya library dari Proteus Prof 7.7. ISIS
membuat software ini dikatakan software simulasi lengkap, yaitu dari
komponen-komponen pasif, Analog, Trasistor, SCR, FET, jenis button
atau tombol, jenis saklar atau relay, IC digital IC penguat, IC

Universitas Sumatera Utara

25

programmable (mikrokontroler) dan IC memory. Selain diidukung dengan
kelengkapan komponen, juga didukung.

2.6.1. Fungsi Tiap Fitur Proteus Prof 7.7
Tampilan window Proteus Profesional ISIS 7 seperti dibawah ini, dan
memiliki fungsi difitur-fitur nya yang sering digunakan sebagai berikut :

Gambar 2.14 Tampilan window Proteus Profesional 7.7
Tabel 2.3 Nama-Nama Fitur Proteus Profesional dan Kegunaannya
Tabel 2.3 Nama-Nama Fitur Proteus Profesional dan Kegunaannya
Nama Fitur
Menu Bar
Open Save Data
New File

Kegunaan
Merupakan list menu yang dapat
digunakan dalam perancangan atau
pengolahan gambar rangkaian.

Open File

Membuat file baru dengan area
gambar baru.
Membuka file yang pernah disimpan.

Save

Manyimpan file yang telah dibuat.

Togle Grid

Menampilkan
bantuan
panduan pada area gambar.

titik-titik

Zoom Sheet

Universitas Sumatera Utara

26

Center at Cursor
Zoom in

Membuat
area
tengah
tampilan
gambar dengan bertumpu pada cursor.
Memperbesar gambar.

Zoom out

Memperkecil gambar.

Zoom to view sheet

Menampilkan
keseluruhan
dalam layar monitor.

Zoom to area

Memperbesar gambar dengan memilih
area yang dikehendaki.

Mini view
Component List
Pick From Library
Componen Mode Meliputi
Selection mode
Component Mode
Terminal Mode

Generator Mode
Voltage Probe

Current Probe

Virtual Instrument Mode

Drawing Tool and Text meliputi
2D Graphic line Mode
2D Graphic box Mode
2D Graphic Circle Mode
2D Graphic Arc Mode
2D Graphic Text Mode

gambar

Menampilkan gambar dalam bentuk
tampilan kecil seluruh area gambar.
Daftar komponen yang telah diambil
dari library.
Mengambil komponen pada library
yang akan diletakkan pada component
list.
Memilih dan melakukan aksi pada
komponen yang dipilih.
Mengambil komponen pada library.
Mengambil
dan
menggunakan
terminal yang dibutuhkan dalam
rangkaian (VCC,Gnd,Input,Output).
Memilih pembangkit pulsa yang akan
digunakan.
Terminal dengan tampilan nilai dari
jalur koneksi komponen dengan
menampillkan besaran tegangan.
Terminal dengan tampilan nillai dari
jalur koneksi komponen dengan
menampilkan besaran arus.
Mengambil alat ukur yang akan
digunakan
(CRO,Voltmeter,Ampere
meter, AFG, Signal Analyyzer).
Membuat garis jalur rangkaian 2D
Membuat gambar kotak atau persegi
2D pada area gambar.
Membuat gambar lingkaran 2D pada
area gambar.
Membuat gambar Arc atau garis
lengkung 2D pada area gambar.
Menambahkan tulisan text 2D pada
area gambar.

Universitas Sumatera Utara