Project Digitermo
-
Upload
tyas-arifani -
Category
Documents
-
view
476 -
download
3
Transcript of Project Digitermo
LAPORAN PROJECT MIKROKONTROLER
APLIKASI MIKROKONTROLER ATMEGA8535 PADA
TERMOMETER DAN JAM DIGITAL
PROGRAM STUDI FISIKA
UNIVERSITAS GADJAH MADA
YOGYAKARTA
2012
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.
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.
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
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
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
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 :
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
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 :
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.
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)
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);
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;
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;
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
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
E.3. Running Program
Display yang digunakan pada rangkaian akan menunjukkan dua
besaran sekaligus yakni suhu dan waktu.
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.
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.
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/