Project Digitermo

28
LAPORAN PROJECT MIKROKONTROLER APLIKASI MIKROKONTROLER ATMEGA8535 PADA TERMOMETER DAN JAM DIGITAL PROGRAM STUDI FISIKA UNIVERSITAS GADJAH MADA

Transcript of Project Digitermo

Page 1: Project Digitermo

LAPORAN PROJECT MIKROKONTROLER

APLIKASI MIKROKONTROLER ATMEGA8535 PADA

TERMOMETER DAN JAM DIGITAL

PROGRAM STUDI FISIKA

UNIVERSITAS GADJAH MADA

YOGYAKARTA

2012

Page 2: Project Digitermo

A. Latar Belakang

Saat ini ilmu pengetahuan dan teknologi berkembang dengan sangat pesat,

perkembangan tersebut memberi banyak kemudahan bagi manusia dalam

memenuhi kebutuhannya. Kemajuan teknologi menuntut segala sesuatu

dikerjakan otomatis, cepat, akurat dan efisien. Salah satu kemajuan bidang

teknologi adalah diciptakannya mikrokontroler.

Mikrokontroler sebagai suatu terobosan teknologi mikroprosesor, hadir

memenuhi kebutuhan pasar dan teknologi baru. Sebagai teknologi baru, yaitu

teknologi semikonduktor dengan kandungan transistor yang lebih banyak

namun hanya membutuhkan ruang yang kecil serta dapat diproduksi secara

masal (dalam jumlah banyak). Sebagai kebutuhan pasar mikrokontroler hadir

untuk memenuhi selera industri dan para konsumen akan kebutuhan dan

keinginan akan alat-alat bantu yang lebih baik.

Penerapan dari alat bantu tersebut salah satunya adalah pengukur suhu

digital. Suhu merupakan besaran fisis yang menunjukakan nilai kuantitif yang

mengekspresikan panas atau dingin. Suhu merupakan kecepatan rata - rata dari

partikel yang berkaitan dengan energi kinetik rata - rata. Secara kuantitif suhu

terukur dengan menggunakan thermometer yang dapat dikalibrasi kedalam

berbagai scala suhu. Suhu memiliki peranan yang penting dalam berbagai bidang

ilmu pengetahuan alam termasuk fisika, geologi, kimia, sains yang berhubungan

dengan atmosfir, dan biologi. Dalam kehidupan sehari – hari pengukuran suhu

sangat penting dalam proses indutri maupun dalam bidang pertanian.

Pada tugas mata kuliah mikrokontroler ini, penulis merancang sistem

pengukuran suhu digita. Sistem ini diperlukan dalam mengukur suhu ruang atau

objek benda yang mengeluarkan panas. Dalam makalah ini akan dibahas

mengenai proses pengukuran suhu digital menggunakan mikrokontroler

ATMEGA8535 yang menggunakan sensor suhu sebagai pendeteksi panasnya.

Sensor suhu yang digunakan pada makalah ini adalah LM35 yang merupakan

sebuah sensor suhu dengan harga yang relatif murah dan outputnya sudah

berupa tegangn yang linear terhadap temperatur Celsius.

Page 3: Project Digitermo

B. Tujuan

Adapun tujuan dari penulisan makalah ini adalah merancang termometer

digital yang berfungsi untuk mengukur suhu ruangan secara real time, praktis

dan akurat sekaligus menampilkan display jam digital dari pembacaan timer.

C. Manfaat

1. Sebagai alat yang mampu mengukur kondisi suhu secara kuantitatif.

2. Mempermudah pengontrolan suhu ruangan pada ruangan dimana perubahan

suhu sangat berpengaruh, misalnya pada laboratorium yang memiliki alat –

alat yang harus dioperasikan pada suhu ruangan tertentu.

D. Dasar Teori

Komponen elektronika

Dalam merancang suatu rangkaian elektronika, pemilihan komponen

penyusun rangkaian dengan mempertimbangkan keunggulan dari komponen

tersebut baik dari segi harga, performa, maupun mudah atau tidaknya

komponen tersebut diperoleh, sangat penting dilakukan mengingat terdapat

banyak komponen yang memiliki manfaat serupa namun memiliki keunggulan

dan kekurangan masing-masing. Dalam rancangan termometer digital pada

makalah ini, adapun rangkaian elektronika yang diunakan terdiri atas

komponen-komponen berikut :

1. ATmega8535

ATmega8535 adalah salah satu mikroontroler AVR (Alf and Vegard’s Risc

processor) yang menggunakan ternologi RISC (Reduce Instruction Set

Computing) dimana program berjalan lebih cepat karena hanya

membutuhkan satu siklus clock untuk mengeksekusi satu instruksi program.

Fitur-fitur yang dimiliki oleh ATmega8535 adalah sebagai berikut :

a. Saran I/O sebanyak 32 buah yaitu port A, port B, port C, dan port D.

b. ADC internal sebanyak 8 saluran, dapat dikonfigurasi baik secara single

ended input maupun differential input, dan memiliki konfigurasi

pewaktuan, tegangan referensi, mode operasi dan kemampuan fitur derau

yang fleksibel.

Page 4: Project Digitermo

c. Tiga buah timer/ counter dengan kemampuan perbandingan, dua

diantaranya timer/ counter 8 bit, dan disanya timer/ counter 16 bit yang

pengoperasiannya tidak saling terkait.

d. CPU terdiri atas 32 buah register.

e. SRAM sebesar 521 byte.

f. Memori flash sebesar 8 kb dengan kemampuan Read While Write.

g. Port antarmuka SPI (Serial Peripheral Interface), mode komunikasi serial

syncrhronous berkecepatan tinggi.

h. EEPROM sebesar 512 byte yang dapat diprogram saat operasi.

i. Antarmuka komparator analog.

j. Port USART untuk komunikasi serial. USART (Universal Syncrhronous and

Asyncrhronous Serial Receiver andTransmitter) merupakan salah satu

mode komunikasi serial yang memiliki fkeksibelitas tinggi, dapat

digunakan untuk mentransfer data baik antar mikrokontroler maupun

dengan modul eksternal.

k. Sistem mikroprosesor 8 bit berbasis RISC dengan kecepatan maksimal 16

MHz.

PC6/TOSC128

PC527

PC426

PC325

PC224

PC1/SDA23

PC0/SCL22

PC7/TOSC229

PA6/ADC634

PA5/ADC535

PA4/ADC436

PA3/ADC337

PA2/ADC238

PA1/ADC139

PA0/ADC040

PA7/ADC733

PB6/MISO7

PB5/MOSI6

PB4/SS5

PB3/AIN1/OC04

PB2/AIN0/INT23

PB1/T12

PB0/T0/XCK1

PB7/SCK8

PD6/ICP120

PD5/OC1A19

PD4/OC1B18

PD3/INT117

PD2/INT016

PD1/TXD15

PD0/RXD14

PD7/OC221

RESET9

XTAL112

XTAL213

AVCC30

AREF32

U3

ATMEGA8535

2. Sensor suhu (LM35)

Sensor suhu LM35 merupakan komponen elektronika yang berfungsi untuk

mengubah besaran fisis yang berupa suhu menjadi besaran elektris tegangan.

Sensor suhu LM35 memiliki parameter bahwa setiap kenaikan 1ºC tegangan

Page 5: Project Digitermo

keluarannya naik sebesar 10mV dengan batas maksimal keluaran sensor

adalah 1,5 V pada suhu 150°C. Misalnya pada perancangan menggunakan

sensor suhu LM35 kita tentukan keluaran adc mencapai full scale pada saat

suhu 100°C, sehingga saat suhu 100°C tegangan keluaran transduser

(10mV/°C x 100°C) = 1V

pin 1 berfungsi sebagai sumber tegangan kerja dari LM35, pin 2 atau tengah

digunakan sebagai tegangan keluaran atau Vout dengan jangkauan kerja dari

0 Volt sampai dengan 1,5 Volt dengan tegangan operasi sensor LM35 yang

dapat digunakan antar 4 Volt sampai 30 Volt.

Prinsip Kerja

Mula-mula vcc sebesar 5 V digunakan untuk menghidupkan sensor LM35

yang akan mendeteksi suhu. Keluaran sensor ini akan naik sebesar 10 mV

setiap derajad celcius sehingga diperoleh persamaan sebagai berikut :

VLM35 = Suhu*10Mv

Secara prinsip sensor akan melakukan penginderaan pada saat perubahan

suhu setiap suhu 1 ºC akan menunjukan tegangan sebesar 10 mV. Pada

penempatannya LM35 dapat ditempelkan dengan perekat atau dapat pula

disemen pada permukaan akan tetapi suhunya akan sedikit berkurang

sekitar 0,01 ºC karena terserap pada suhu permukaan tersebut. Dengan cara

seperti ini diharapkan selisih antara suhu udara dan suhu permukaan dapat

dideteksi oleh sensor LM35 sama dengan suhu disekitarnya, jika suhu udara

disekitarnya jauh lebih tinggi atau jauh lebih rendah dari suhu permukaan,

maka LM35 berada pada suhu permukaan dan suhu udara disekitarnya .

Meskipun tegangan sensor suhu LM35 ini dapat mencapai 30 volt akan tetapi

yang diberikan kesensor adalah sebesar 5 volt, sehingga dapat digunakan

Page 6: Project Digitermo

dengan catu daya tunggal dengan ketentuan bahwa LM35 hanya

membutuhkan arus sebesar 60 µA hal ini berarti LM35 mempunyai

kemampuan menghasilkan panas (self-heating) dari sensor yang dapat

menyebabkan kesalahan pembacaan yang rendah yaitu kurang dari 0,5 ºC

pada suhu 25 ºC .

Spesifikasi sensor LM 35 dapat dijabarkan sebagai berikut :

Suhu 0° Celcius sensor ini mempunyai tegangan offset sebesar 0 V.

Akurasi sensor ±14 pada suhu ruangan dan ±

34 pada -55°C sampai

150°C.

Dapat dikalibrasi langsung ke dalam besaran Celcius.

Faktor skala linier + 10mV/ °C.

Tingkat akurasi 0,5°C. saat suhu kamar (25°C).

Jangkauan suhu antara -55°C sampai 150°C.

Bekerja pada tegangan 4 volt hingga 30 volt.

Arus kerja kurang dari 60µA.

Impedansi keluaran rendah 0,1Ω untuk beban 1 mA.

LM35 bekerja dengan mengubah besaran suhu menjadi besaran tegangan.

Tegangan ideal yang keluar dari LM35 mempunyai perbandingan 100°C

setara dengan 1 volt. dapat dioperasikan dengan menggunakan power supply

tunggal. LM35 memiliki tingkat efek self-heating yang rendah (0,08 derajad

Celcius), self-heating merupakan efek pemanasan oleh komponen itu sendiri

akibat adanya arus yang bekerja melewatinya.

3. Display LCD

Gambar. Display LCD

Page 7: Project Digitermo

LCD berfungsi untuk menampilkan informasi yang diterima oleh sensor, data

tersebut di proses melalui mikrokontroler kemudian ditampilkan berupa

data digital,text maupun simbol lainnya.LCD ini terdiri dari dua baris

karakter dimana dua baris karakter memiliki panjang karakter sebanyak 16.

4. Resistor

Resistor merupakan salah satu komponen dasar dalam elektronika dengan

fungsi umum sebagai pengatur (membatasi) jumlah arusyang mengalir dalam

suatu rangkaian.

Dilihat dari bahannya, ada beberapa jenis resistor yang ada dipasaran antara

lain : Resistor Carbon, Wirewound, dan Metalfilm. Ada juga Resistor yang

dapat diubah-ubah nilai resistansinya antara lain : Potensiometer, Rheostat

dan Trimmer (Trimpot). Selain itu ada juga Resistor yang nilai resistansinya

berubah bila terkena cahaya namanya LDR (Light Dependent Resistor) dan

resistor yang nilai resistansinya akan bertambah besar bila terkena suhu

panas yang namanya PTC (Positive Thermal Coefficient) serta resistor yang

nilai resistansinya akan bertambah kecil bila terkena suhu panas yang

namanya NTC (Negative Thermal Coefficient).

Untuk resistor jenis carbon maupun metalfilm biasanya digunakan kode-

kode warna sebagai petunjuk besarnya nilai resistansi (tahanan) dari

resistor. Resistor ini mempunyai bentuk seperti tabung dengan dua kaki di

kiri dan kanan. Pada badannya terdapat lingkaran membentuk cincin kode

warna, kode ini untuk mengetahui besar resistansi tanpa harus mengukur

besarnya dengan ohmmeter. Kode warna tersebut adalah standar

manufaktur yang dikeluarkan oleh EIA (Electronic Industries Association)

seperti yang ditunjukkan pada gambar berikut :

Page 8: Project Digitermo

5. CRYSTAL

Kristal (X-tal) adalah komponen elektronik yang menggunakan resonansi

mekanis yang bergetar dengan bahan piezoelektrik untuk menciptakan

sebuah sinyal listrik dengan frekuensi yang sangat tepat. Kristal juga

mempunyai stabilitas suhu yang sangat bagus. Pada umumnya, nilai koefisien

suhu kristal berada dikisaran ±50ppm direntangan suhu operasi normal dari

-20°C sampai dengan +70°C.

Material yang mempunyai bentuk struktur kristalin, seperti quartz,

mempunyai satu sifat unik yaitu mampu menghasilkan tegangan listrik ketika

diberi tekanan mekanikal dan juga sebaliknya, berubah bentuk mekanikalnya

ketika diberi tegangan listrik. Sifat ini dikenal dengan nama efek piezo-

electric. Sifat inilah yang dimanfaatkan untuk menghasilkan resonansi listrik-

mekanik, sehingga kristal akan bergetar pada frekuensi alami tertentu jika

diberi tegangan listrik bolak-balik. Kristal dapat diterapkan pada rangkaian

resonansi-seri ataupun resonansi-paralel. Pada rangkaian resonansi-seri,

kristal bersifat seolah-olah terdiri dari sebuah kapasitor dan sebuah induktor

yang dirangkai secara seri. Impedansi kristal akan mencapai nilai terendah,

yaitu sama dengan nilai tahanan, pada frekuensi getar alami. Pada rangkaian

resonansi-paralel, kristal bersifat seperti terdiri dari sebuah kapasitor dan

sebuah induktor yang dirangkai secara paralel. Impedansi kristal akan

mencapai nilai tertinggi pada frekuensi getar alami. Kristal biasanya dibentuk

sedemikian rupa sehingga lebih optimal jika dioperasikan pada salah satu

mode tertentu, baik itu secara resonansi-seri ataupun resonansi-paralel.

Kegunaan kristal pada suatu rangkaian secara umum adalah untuk

menentukan frekuensi clock pada rangkaian dan menstabilkan frekuensi

yang dihasilkan.

6. Kapasitor (CAP, CAP-POL)

7. Potensio

E. Metode

Page 9: Project Digitermo

Deskripsi Kerja

Prinsip kerja sistem pengukuran suhu menggunakan LM35 dapat di lihat

dari diagram blok dibawah ini :

Gambar : diagram Blok Sistem pengukur suhu menggunakan Sensor LM35

Selama prosesnya, pengukuran suhu melakukan tiga operasi utama diantaranya :

1. Sensor suhu LM35 berfungsi untuk mengubah besaran fisis yang berupa suhu

menjadi besaran elektris tegangan. Sensor suhu LM35 memiliki parameter bahwa

setiap kenaikan 1ºC tegangan keluarannya naik sebesar 10mV.

2. Data sensor suhu berupa sinyal analog kemudian di konversi menjadi data digital

melalui PORT A pada mikrokontroler Analog to Digital Converter (ADC). Data

digital diolah oleh mikrokontroler Atmega 8535 sebagai pusat pengendali melalui

pemrograman menggunakan compiler codevision AVR .

3. Hasil pengelolaan informasi tersebut kemudian ditampilkan menggunakan display

LCD.

E.1. Algoritma

Algoritma merupakan suatu urutan langkah-langkah (steps)

yang disusun secara logis dan sistematis untuk menyelesaikan suatu

masalah dan dapat dieksekusi. Pembuatan algoritma berkaitan erat dengan

proses pemograman, algoritma menjadi panduan programer pada saat

melakukan proses pemograman. Setelah melakukan identifikasi hardware

dan penetapan input output selanjutnya melakukan proses pembuatan

algoritma, dengan merujuk kepada langkah-langkah sebelumnya penulis

membuat algoritma dalam bentuk flowchart, berikut flowchart algoritma

yang dibuat :

Page 10: Project Digitermo

E.2. Membangun Program

Penulisan program menggunakan software CodeVision v.1.25.6.

sebagai proses editor program dan compiler. Dengan program ini penulis

memanfatkan fasilitas dalam programnya dengan bantuan code wizard yang

dapat membuat settingan register-register khusus (SFR) dalam

mikrokontroler AVR secara otomatis.

Berikut ini penyettingan yang dilakukan penulis dalam

menerjemahkan algoritma yang telah dibuat seperti diatas kedalam bentuk

pemrogramanan bahasa C.

Page 11: Project Digitermo

Setting code wizzard CVAVR

Gambar : a. Setting Chip ATMEGA 8535

b. Inisialisasi PORTC sebagai Output LCD, PORTA sebagai input

c. Settiing Alphanumeric LCD 2x16 (2 line denagn 16 karakter/line)

d. Pengaktifan Fungsi ADC

e. Setting fungsi Timer

(a)

(d) (e)

(c)(b)

Page 12: Project Digitermo

Gambar : Proses generate and save dalam melakukan prosess code wizard

otomatis

Dalam proses simulasi, terlebih dahulu dibuat program untuk

menjalankan fungsi kerja mikrokontroler sebagai pengendali rangkaian.

Listing program dibuat menggunakan codevision AVR dengan bahasa C

sebagai bahasa pemrogramannya. Setting diperlukan agar program yang

nantinya akan dibuat, cocok dan dapat dijalankan saat simulasi

menggunakan Proteus. Setelah setting dilakukan maka dapat dibuat list

program yang akan dijalankan. Adapun list yang dimaksud adalah sebagai

berikut :

*************************************************************************************************unsigned char temp[6];int detik=0, menit=0, jam=12, indeks=6, adc_suhu;float suhu;

#include <mega8535.h>#include <stdlib.h>#include <delay.h>// Alphanumeric LCD Module functions#asm .equ __lcd_port=0x15 ;PORTC#endasm#include <lcd.h>#define ADC_VREF_TYPE 0x00

// Read the AD conversion resultunsigned int read_adc(unsigned char adc_input)ADMUX=adc_input | (ADC_VREF_TYPE & 0xff);

// Delay needed for the stabilization of the ADC input voltagedelay_us(10);// Start the AD conversionADCSRA|=0x40;// Wait for the AD conversion to completewhile ((ADCSRA & 0x10)==0);ADCSRA|=0x10;return ADCW;// Timer 1 overflow interrupt service routineinterrupt [TIM1_OVF] void timer1_ovf_isr(void)// Reinitialize Timer 1 valueTCNT1H=0xD23A >> 8;TCNT1L=0xD23A & 0xff;detik++;adc_suhu=read_adc(0);

Page 13: Project Digitermo

void jam_digital()if (detik==60) lcd_clear(); detik=0; menit++; if (menit==60) lcd_clear(); menit=0; jam++; if (jam==24) lcd_clear(); jam=0; void tampil_lcd() lcd_gotoxy(0,0); lcd_putsf("ProjectDigitermo"); itoa(jam,temp); //menampilkan JAM di LCD lcd_gotoxy(0,1); lcd_puts(temp); lcd_gotoxy(2,1); //menampilkan : lcd_putsf(":"); itoa(menit,temp); //menampilkan MENIT di LCD lcd_gotoxy(3,1); lcd_puts(temp); lcd_gotoxy(5,1); //menampilkan : lcd_putsf(":"); itoa(detik,temp); //menampilkan DETIK di LCD lcd_gotoxy(6,1); lcd_puts(temp); ftoa(suhu,1,temp); //menampilkan suhu lcd_gotoxy(9,1); lcd_puts(temp); lcd_gotoxy(13,1) ; lcd_putchar(0xdf);//menampilkan karakter derajat lcd_gotoxy(14,1) ; lcd_putsf("C");void set_jam()if (PIND.0==0 && indeks==6) TIMSK=0x00; //MENGHENTIKAN TIMER

delay_ms(300); indeks=5; while (PIND.0==1 && indeks==5) tampil_lcd(); if (PIND.1==0) delay_ms(300); jam=jam+10; if (jam>=24) jam=23; if (PIND.2==0) delay_ms(300); jam=jam-10; if (jam<=9) lcd_clear(); if (jam<0) jam=0; if (PIND.0==0 && indeks==5) delay_ms(300); indeks=4; while (PIND.0==1 && indeks==4) tampil_lcd(); if (PIND.1==0) delay_ms(300); jam=jam+1; if (jam>=24) jam=23; if (PIND.2==0) delay_ms(300); jam=jam-1; if (jam<=9) lcd_clear(); if (jam<0) jam=0;

Page 14: Project Digitermo

if (PIND.0==0 && indeks==4) delay_ms(300); indeks=3; while (PIND.0==1 && indeks==3) tampil_lcd(); if (PIND.1==0) delay_ms(300); menit=menit+10; if (menit>=60) menit=59; if (PIND.2==0) delay_ms(300); menit=menit-10; if (menit<=9) lcd_clear(); if (menit<0) menit=0;

if (PIND.0==0 && indeks==3) delay_ms(300); indeks=2; while (PIND.0==1 && indeks==2) tampil_lcd(); if (PIND.1==0) delay_ms(300); menit=menit+1; if (menit>=60) menit=59; if (PIND.2==0) delay_ms(300); menit=menit-1;

if (menit<=9) lcd_clear(); if (menit<0) menit=0;

if (PIND.0==0 && indeks==2) delay_ms(300); indeks=1; while (PIND.0==1 && indeks==1) tampil_lcd(); if (PIND.1==0) delay_ms(300); detik=detik+1; if (detik>=60) detik=59; if (PIND.2==0) delay_ms(300); detik=detik-1; if (detik<=9) lcd_clear(); if (detik<0) detik=0;

if (PIND.0==0 && indeks==1) delay_ms(300); indeks=0; while (PIND.0==1 && indeks==0) tampil_lcd(); if (PIND.1==0) delay_ms(300); detik=detik+1; if (detik>=60) detik=59;

Page 15: Project Digitermo

if (PIND.2==0) delay_ms(300); detik=detik-1; if (detik<=9) lcd_clear(); if (detik<0) detik=0; indeks=6; TIMSK=0x04; //MEMULAI LAGI TIMER delay_ms(450);

void baca_suhu() suhu=(float)adc_suhu*500/1023;

//perhitungan suhu menggunakan LM35

void main(void)PORTD=0xff;DDRD=0x00;// Timer/Counter 1 initialization// Clock source: System Clock// Clock value: 11.719 kHz// Mode: Normal top=FFFFh// OC1A output: Discon.// OC1B output: Discon.// Noise Canceler: Off// Input Capture on Falling Edge// Timer 1 Overflow Interrupt: On// Input Capture Interrupt: Off

// Compare A Match Interrupt: Off// Compare B Match Interrupt: OffTCCR1A=0x00;TCCR1B=0x05;TCNT1H=0xD2;TCNT1L=0x3A;ICR1H=0x00;ICR1L=0x00;OCR1AH=0x00;OCR1AL=0x00;OCR1BH=0x00;OCR1BL=0x00;

// Timer(s)/Counter(s) Interrupt(s) initializationTIMSK=0x04;

// Analog Comparator initialization// Analog Comparator: Off// Analog Comparator Input Capture by Timer/Counter 1: OffACSR=0x80;SFIOR=0x00;

// ADC initialization// ADC Clock frequency: 750.000 kHz// ADC Voltage Reference: AREF pin// ADC Auto Trigger Source: NoneADMUX=ADC_VREF_TYPE & 0xff;ADCSRA=0x84;

// LCD module initializationlcd_init(16);

// Global enable interrupts#asm("sei")

while (1) baca_suhu(); jam_digital(); tampil_lcd(); set_jam(); ;

****************************************************************************************

Setelah program telah ditulis, maka selanjutnya program siap untuk dimasukan

ke dalam mikrokotroler ATMEGA8535, dengan proses build and compile

Page 16: Project Digitermo

Gambar 1.13 Tampilan project proses build dan compile yang siap untuk pen-

download-an ke-chip

Gambar : Proses pemasukan (download) program ke-chip mikrokontroler

Page 17: Project Digitermo

E.3. Running Program

Display yang digunakan pada rangkaian akan menunjukkan dua

besaran sekaligus yakni suhu dan waktu.

Page 18: Project Digitermo

F. Pembahasan

Mula-mula vcc sebesar 5 V digunakan untuk menghidupkan sensor LM35

yang akan mendeteksi suhu. Keluaran sensor ini akan naik sebesar 10 mV setiap

derajad celcius sehingga diperoleh persamaan sebagai berikut :

VLM35 = Suhu*10Mv

Dengan demikian dalam koding CVAVR diperlukan rumus konversi agar

dapat ditampilkan dalam skala Celcius

suhu=(float)adc_suhu*500/1023

Secara prinsip sensor akan melakukan penginderaan pada saat perubahan

suhu setiap suhu 1 ºC akan menunjukan tegangan sebesar 10 mV. Pada

penempatannya LM35 dapat ditempelkan dengan perekat atau dapat pula

disemen pada permukaan akan tetapi suhunya akan sedikit berkurang sekitar

0,01 ºC karena terserap pada suhu permukaan tersebut. Dengan cara seperti ini

diharapkan selisih antara suhu udara dan suhu permukaan dapat dideteksi oleh

sensor LM35 sama dengan suhu disekitarnya, jika suhu udara disekitarnya jauh

lebih tinggi atau jauh lebih rendah dari suhu permukaan, maka LM35 berada

pada suhu permukaan dan suhu udara disekitarnya .

Meskipun tegangan sensor suhu LM35 ini dapat mencapai 30 volt akan

tetapi yang diberikan kesensor adalah sebesar 5 volt, sehingga dapat digunakan

dengan catu daya tunggal dengan ketentuan bahwa LM35 hanya membutuhkan

arus sebesar 60 µA hal ini berarti LM35 mempunyai kemampuan menghasilkan

panas (self-heating) dari sensor yang dapat menyebabkan kesalahan pembacaan

yang rendah yaitu kurang dari 0,5 ºC pada suhu 25 ºC .

Selama prosesnya, pengukuran suhu melakukan tiga operasi utama

diantaranya sensor suhu LM35 mengubah besaran fisis yang berupa suhu

menjadi besaran elektris tegangan. Sensor suhu LM35 memiliki parameter

bahwa setiap kenaikan 1ºC tegangan keluarannya naik sebesar 10mV. Data

sensor suhu berupa sinyal analog kemudian di konversi menjadi data digital

melalui PORT A pada mikrokontroler Analog to Digital Converter (ADC). Data

digital diolah oleh mikrokontroler Atmega 8535 sebagai pusat pengendali

melalui pemrograman menggunakan compiler codevision AVR . Hasil

pengelolaan informasi tersebut kemudian ditampilkan menggunakan display

LCD.

Page 19: Project Digitermo

Selaim membaca suhu, program pada Mikrokontroler AVR dibangun agar

dapat menampilkan jam digital pada display LCDnya. Jam digital ini dibuat

dengan sangat sederhana memanfaatkan timer yang ada pada default system

ATMEGA 8535 (bukan menggunakan jam digital yang biasanya menggunakan

seven segmen). Koding pada CVAVR dituliskan pada void jam_digital. Dengan

fungsi yaitu ketika PIND==0 maka jam akan berjalan sesuai timer yang juga

berjalan. Pada rangkaian board Proteus juga ditambahkan button sebagai

perangkat setting jam pada PIND.0==0 sebagai button set, PIND.1==0 sebagai

button up dan PIND.2==0 sebagai button down yang semuanya digunakan untuk

menyetting besaran waktu.

Baik besaran suhu dan waktu keduanya ditampilkan pada line ke-2 display

LCD. Settingan tampilan LCD deprogram pada fungsi void baca_suhu. Setting

tampilan pada LCD dibuat pada command lcd_gotoxy (kolom,baris) dengan isi

tampilan dituliskan pada command lcd_puts(memanggil fungsi) atau

lcd_putchar(menuliskan karakter yang ingin ditampilkan)

G. Kesimpulan

Kesimpulan dari pembangunan simulasi proteus mikrokontroler AVR

ATMEGA8535 ini adalah untuk mensimulasikan sistem termometer digital yang

berfungsi untuk mengukur suhu ruangan secara real time, praktis dan akurat

sekaligus menampilkan display jam digital dari pembacaan timer.

Pembacaan suhu dilakukan dengan memasang sensor suhu LM35 yang

mengubah besaran fisis yang berupa suhu menjadi besaran elektris tegangan.

Data sensor suhu berupa sinyal analog kemudian diinputkan melalui PORT A

yang selanjutnya di konversi menjadi data digital oleh Analog to Digital Converter

(ADC) yang telah diaktivasi pada mikrokontroler. Data digital diolah oleh

mikrokontroler Atmega 8535 sebagai pusat pengendali melalui pemrograman

menggunakan compiler codevision AVR yang juga memuat fungsi pembacaan

waktu dengan memanfaatkan timer (timer1) yang terintegrasi dengan

Mikrokontroler AVR ATMEGA 8535.

Page 20: Project Digitermo

H. Daftar Pustaka

F.Barrett, Steven & Daniel J.Pack. 2001. Atmel AVR Microcontroller Primer:

Programing and Interfacing. Morgan & Claypool Publishers

Pardue, Joe. 2005. C Programming for Microcontrollers (Featuring ATMEL’s AVR

Butterfly and the Free WinAVR Compiler ). Knoxville: Smiley Micros.

Anonym. 2011. Perancangan Sistem Pengukur Suhu Menggunakan Sensor Lm35

Berbasis Mikrokontroler Avr Atmega 8535

http://myavr.wordpress.com/LM35

http://www.nubielab.com/elektronika/mikrokontroler/avr-digital-themometer-

lm35-codevisionavr

http://blognyaeko.wordpress.com/category/avr/codevisionavr/

http://marausna.wordpress.com/2011/10/13/codevisionavr-membaca-data-adc/