HALAMAN PENGESAHAN
Judul : Pengatur dan Pendeteksi Suhu Pada Generator
Nama : Fauzyah Putri Amelia
No. Bp : 2001041001
Kelas : 3A DIII EC
Pembimbing : 1. Efrizon, SST.,MT
2. Era Madona, S.ST,M.SC
Nilai :
Keterangan :
KATA PENGANTAR
Segala puji dan syukur penulis ucapkan atas kehadirat Allah SWT. Karena berkat
rahmat dan anugerah-Nya penulis dapat menyelesaikan laporan kerja Praktikum Sistem
Mikroprosesor.
Laporan ini tidak akan selesai, apabila tidak dibantu oleh banyak. Oleh karena itu,
dalam kesempatan ini penulis mengucapkan terima kasih kepada :
1. Ibu Era Madona, S.ST,M.SC dan Bapak Efrizon, SST.,MT selaku dosen pembimbing
mata kuliah Praktikum Mikrokontroler yang telah memberikan petunjuk dan
pengarahan selama praktek yang diberikan.
2. Orang tua penulis yang telah memberikan bantuan moral maupun spiritual kepada
penulis.
3. Teman-teman yang telah membantu penulis baik secara langsung maupun tidak
langsung.
Penulis menyadari bahwa penulisan dan penyusunan laporan ini masih jauh dari
kesempurnaan. Oleh karena itu penulis mengharapkan masukan baik berupa kritik ataupun
saran yang bersifat membangun agar laporan ini dapat menjadi lebih baik pada masa yang
akan mendatang.
Akirnya penulis berharap agar laporan ini dapat bermanfaat bagi pembaca pada
umumnya dan penulis khususnya.
HALAMAN PENGESAHAN
KATA PENGANTAR
DAFTAR ISI
BAB I PENDAHULUAN
1.1 Tujuan Praktikum
1.2 Landasan Teori
BAB IV PENUTUP
4.1 Kesimpulan
4.2 Saran
DAFTAR PUSTAKA
LAMPIRAN
BAB I
PENDAHULUAN
berbasis Atmega8535.
ATMega 8535 sudah terdapat mikroprosessor, memori, antarmuka I/O yang cukup
lengkap, dan ADC yang mempunyai satu atau beberapa tugas yang spesifik
ruang dan jalur bus bagi memori program dipisahkan dengan memori data. Memori
B. Potensiometer
dari 3 kaki Terminal dengan sebuah shaft atau tuas yang berfungsi sebagai
Penyapu (Wiper) pada Jalur Elemen Resistif inilah yang mengatur naik-turunnya
mengubah besaran suhu menjadi besaran listrik dalam bentuk tegangan. Sensor
Suhu LM35 yang dipakai dalam penelitian ini berupa komponen elektronika
suhu yang lain, LM35 juga mempunyai keluaran impedansi yang rendah dan
linieritas yang tinggi sehingga dapat dengan mudah dihubungkan dengan rangkaian
Meskipun tegangan sensor 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
heating) dari sensor yang dapat menyebabkan kesalahan pembacaan yang rendah
Pada Gambar ditunjukan bentuk dari LM35 tampak depan dan tampak
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
antara 4 Volt sampai 30 Volt. Keluaran sensor ini akan naik sebesar 10 mV setiap
Memiliki sensitivitas suhu, dengan faktor skala linier antara tegangan dan suhu
Memiliki jangkauan maksimal operasi suhu antara -55 ºC sampai +150 ºC.
Memiliki pemanasan sendiri yang rendah (low-heating) yaitu kurang dari 0,1
Memiliki impedansi keluaran yang rendah yaitu 0,1 W untuk beban 1 mA.
cair yang dapat menampilkan informasi dengan hasil berupa huruf dan angka.
memiliki resolusi 1280 piksel. LCD dapat bekerja dalam mode 4 digit dan 8 bit.
LCD bekerja dengan tegangan antara 4.7 volt hingga 5.3 volt.
E. Buzzer
Buzzer adalah sebuah komponen elektronika yang dapat mengubah sinyal
listrik menjadi getaran suara. Buzzer ini biasa dipakai pada sistem alarm. Juga bisa
dengan baik dalam menghasilkan frekwensi di kisaran 1 - 6 kHz hingga 100 kHz.
Gambar 1. 6. Buzzer
tegangan maju.
Warna-warna Cahaya yang dipancarkan oleh LED tergantung pada jenis bahan
inframerah yang tidak tampak oleh mata seperti yang sering kita jumpai pada
LED mirip dengan sebuah bohlam (bola lampu) yang kecil dan dapat dipasangkan
panas dalam menghasilkan cahaya. Oleh karena itu, saat ini LED (Light Emitting
Diode) yang bentuknya kecil telah banyak digunakan sebagai lampu penerang
G. Relay
Relay merupakan komponen elektronika berupa saklar atau switch
elektrik yang dioperasikan secara listrik dan terdiri dari 2 bagian utama yaitu
menggerakan saklar sehingga dengan arus listrik yang kecil (low power) dapat
menghantarkan listrik yang bertegangan lebih tinggi. Berikut adalah simbol dari
komponen relay.
Potensiometer dapat diatur menjadi berapa saja yang diinginkan sesuai project
yang akan dibuat. Pada project ini nilai potensiometer adalah 85 derajat celcius.
LM35 digunakan untuk mendeteksi suhu apabila suhu generator melewati nilai
potensiometer.
BAB II
PROSES PRAKTIKUM
2.1 Peralatan
1. Laptop atau PC
2. Software Codevision AVR dan Proteus.
2.2 Gambar Rangkaian Proteus
2.3 Flowchart
2.4 Blok Diagram
Buzzer
ATMega
Potensiometer
Relay 2P
8535
LED hijau
2.5 Langkah Praktikum
Membuat progam 1 pada Codevision AVR dengan cara sebagai berikut:
d. Menuliskan program dan mengcompile file sehingga hasil file berformat file.HEX.
Langkah selanjutnya buka aplikasi Proteus AVR, kemudian isikan file hex yang telah
2.6 Program
#include <mega8535.h>
#include <delay.h>
#include <stdio.h>
#include <stdlib.h>
int Temp, dataADC;
// sensor menggunakan LM35 Pin output terhubung dengan PINA.0 (pada mikrokontroller)
dat%=100;
data = dat / 10;
data+=0x30;
lcd_putchar(data);
dat%=10;
data = dat + 0x30;
lcd_putchar(data);
}
// Declare your global variables here
void main(void)
{
// Declare your local variables here
char lcd_buf[81];
// Port B initialization
// Func7=In Func6=In Func5=In Func4=In Func3=In Func2=In Func1=In Func0=In
// State7=T State6=T State5=T State4=T State3=T State2=T State1=T State0=T
PORTB=0x00;
DDRB=0xF0;
// Port C initialization
// Func7=In Func6=In Func5=In Func4=In Func3=In Func2=In Func1=In Func0=In
// State7=T State6=T State5=T State4=T State3=T State2=T State1=T State0=T
PORTC=0x00;
DDRC=0x00;
// Port D initialization
// Func7=In Func6=In Func5=In Func4=In Func3=In Func2=In Func1=In Func0=In
// State7=T State6=T State5=T State4=T State3=T State2=T State1=T State0=T
PORTD=0x0F;
DDRD=0x00;
// Timer/Counter 0 initialization
// Clock source: System Clock
// Clock value: Timer 0 Stopped
// Mode: Normal top=FFh
// OC0 output: Disconnected
TCCR0=0x00;
TCNT0=0x00;
OCR0=0x00;
// Timer/Counter 1 initialization
// Clock source: System Clock
// Clock value: Timer 1 Stopped
// Mode: Normal top=FFFFh
// OC1A output: Discon.
// OC1B output: Discon.
// Noise Canceler: Off
// Input Capture on Falling Edge
// Timer 1 Overflow Interrupt: Off
// Input Capture Interrupt: Off
// Compare A Match Interrupt: Off
// Compare B Match Interrupt: Off
TCCR1A=0x00;
TCCR1B=0x00;
TCNT1H=0x00;
TCNT1L=0x00;
ICR1H=0x00;
ICR1L=0x00;
OCR1AH=0x00;
OCR1AL=0x00;
OCR1BH=0x00;
OCR1BL=0x00;
// Timer/Counter 2 initialization
// Clock source: System Clock
// Clock value: Timer 2 Stopped
// Mode: Normal top=FFh
// OC2 output: Disconnected
ASSR=0x00;
TCCR2=0x00;
TCNT2=0x00;
OCR2=0x00;
// External Interrupt(s) initialization
// INT0: Off
// INT1: Off
// INT2: Off
MCUCR=0x00;
MCUCSR=0x00;
// Timer(s)/Counter(s) Interrupt(s) initialization
TIMSK=0x00;
// Analog Comparator initialization
// Analog Comparator: Off
// Analog Comparator Input Capture by Timer/Counter 1: Off
ACSR=0x20;
SFIOR=0x00;
// ADC initialization
// ADC Clock frequency: 86.400 kHz
// ADC Voltage Reference: AREF pin
// ADC Auto Trigger Source: None
ADMUX=ADC_VREF_TYPE & 0xff;
ADCSRA=0x87;
// LCD module initialization
lcd_init(16);
lcd_gotoxy(3,0);
lcd_putsf("SENSOR SUHU");
lcd_gotoxy(6,1);
lcd_putsf("ALARM");
delay_ms(200);
lcd_gotoxy(3,0);
lcd_putsf(" ");
lcd_gotoxy(6,1);
lcd_putsf(" ");
delay_ms(300);
lcd_gotoxy(0,0);
lcd_putsf("FAUZYAH PUTRI AMELIA");
delay_ms(200);
lcd_gotoxy(0,0);
lcd_putsf(" ");
lcd_gotoxy(3,0);
lcd_putsf("WAIT A MINUTE");
lcd_gotoxy(6,1);
lcd_putsf(" ");
delay_ms(500);
while (1)
{
// Place your code here
if (PORTB.7==1)
{
lcd_gotoxy (0,0);
lcd_putsf("ALARM:AKTIF/");
lcd_puts(lcd_buf);
//delay_ms(100);
}
else
{
lcd_gotoxy (0,0);
lcd_putsf("ALARM:MATI /");
lcd_puts(lcd_buf);
//delay_ms(100);
}
dataADC=read_adc(0);
lcd_gotoxy(14,0);
lcd_putsf("'C");
Temp=(dataADC*4.9/10);
lcd_gotoxy(12,0);
tampil(Temp);
dataADC=read_adc(1);
lcd_gotoxy(0,1);
lcd_putsf("Suhu : ");
dataADC=read_adc(1);
lcd_gotoxy(14,1);
lcd_putsf("'C");
Temp=(dataADC*4.9/10); //conversi nilai ADC ke nilai Temperatur (no7)
lcd_gotoxy(12,1); //menentukan kordinat huruf pada LCD 2x16 (x,y) =
(7,1) //artinya kolom ke 7 dan baris ke1 (no8)
tampil(Temp);
if (ACSR.5==0)
{PORTB.7=0;}
else
{PORTB.7=1;}
};
}
BAB III
HASIL PRAKTIKUM
3.1 Data Percobaan
Input Input Sensor LM35 Output LCD (Tampilan Output LED dan BUZZER
Potensiometer (SUHU) LCD)
LED Hijau menyala (AMAN)
85°C Suhu < 85°C Buzzer Tidak Menyala
Fungsi LM35 sebagai sensor suhu. Di project saya LM35 harus diatur manual.
Fungsi Buzzer sebagai alarm jika suhu pada generator melebihi dari suhu yang dibatasi di
potensiometer.
Led hijau , menandakan bahwa suhu pada generator aman. Led merah , menandakan
bahwa suhu pada generator melampaui batas (overhead) dan buzzer akan berbunyi.
Pada program diatur input potensiometer dihubungkan dengan PORTA.0 dan PORTB.3
input pada LM35 dihubungkan dengan PORTA.1 dan PORTB.2 .PORTB.7 Sebagai pin
output relay, LED dan buzzer. Untuk Output LCD port yang digunakan adalah PORTC.
BAB IV
PENUTUP
4.1 KESIMPULAN
1. Nilai ADC pada program digunakan agar nilai analog diubah menjadi nilai
biner (digital), sehingga dapoat terbaca oleh output digitral atau LCD.
Jadi jika nilai sensor lm35 melebihi nilai potensiometer maka generator akan
overhead.
4. Project ini menggunakan 2 input dan 3 output. Input yaitu potensiometer dan
Relay tidak termasuk output karena relay hanya penghubung antara ATmega