sebenarnya dari pengukuran, yaitu dengan cara menentukan nilai konstanta agar hasil perkaliann data sensor dapat diperoleh nilai sebenarnya kemudian
dilanjutkan dengan proses mengirim data hasil kalibrasi ke smartphone melalui bluetooth adaptor. Pada proses selanjutnya yaitu isi tangki terdapat suatu kondisi
yang membandingkan apakah isi dalam tangki berada pada keadaan minimum atau tidak. Jika berada pada keadaan minimum, program akan meneruskan dengan
mengirimkan suatu kode peringatan ke smartphone dan jika tidak berada pada keadaan minimum, proses akan berlanjut dengan kembali ke pembacaan sensor.
Selanjutnya, mengirim peringatan ke smartphone merupakan pengiriman sebuah kode dalam format ASCII ke smartphone sebagai kode untuk mengakses alarm
pada ponsel. Prinsip kerja sisem dapat digambarkan pada flowchart diatas adalah
dengan dimulai saat catudaya sistem diaktifkan. Kontroler akan melakukan tugasnya setelah reset awal dan inisialisasi. Kontroler akan membaca data sensor,
pembacaan dimulai dengan mentrigger sensor untuk mulai membaca jarak. Setelah itu sensor akan memberikan data hasil deteksi. Data tersebut kemudian
dikonversikan menjadi tinggi dan volume. Setelah memperoleh hasil olahan, data hasil tersebut kemudian ditampilkan pada LCD dan dikirim ke smartphone
android melalui media bluetooth. Aplikasi monitoring akan mengambil data tersebut kemudian menampilkannya pada layar smartphone.
3.5 Program
Adapun program ringkas yang diisikan ke dalam IC Mikrokontroler ATmega 8 adalah sebagai berikut:
include mega8.h include alcd.h
include stdio.h include delay.h
unsigned long Rata2,Data[10], H,S,V; unsigned char buf[33],k;
Universitas Sumatera Utara
unsigned int i; unsigned char kata1[16],kata2[16];
void Read_P_Sensorvoid { PORTB.0 = 1;
delay_us35; PORTB.0 = 0;
TCNT1=0; while PINB.1 == 0{};
TCCR1B=0x02; while PINB.1 == 1 TIFR 0x80;
TCCR1B=0x00; S = TCNT1;
H = 220-S1029; ifS=646 {H=0};
} void mainvoid
{ Port B initialization
PORTB=0xFE; DDRB=0x01;
Port C initialization PORTC=0x00;
DDRC=0x00;
Port D initialization PORTD=0x00;
DDRD=0x00;
Universitas Sumatera Utara
USART initialization USART Baud Rate: 9600
UCSRA=0x00; UCSRB=0x18;
UCSRC=0x86; UBRRH=0x00;
UBRRL=0x19;
lcd_init16; lcd_gotoxy0,0;
lcd_putsf FUEL TANK; lcd_gotoxy0,1;
lcd_putsf MONITORING; delay_ms2000;
while 1 { Rata2 = 0;
fori=1;i11;i++{Read_P_Sensor;Data[i]=H;dela y_ms50; }
fori=1;i11;i++{Rata2 = Rata2+Data[i];} Rata2 = Rata21041000;
if Rata2 3 {k = 0;} if Rata2 = 3Rata2 35{k = 119;}
if Rata2 =35Rata2 90{k = 125;} if Rata2 =90Rata2 122{k = 127;}
ifRata2=122{k=128;}
V = Rata2k;
lcd_clear;
Universitas Sumatera Utara
sprintfbuf, H : i mm,Rata2; lcd_gotoxy0,0;
lcd_putsbuf;
sprintfbuf, V : i mL,V; lcd_gotoxy0,1;
lcd_putsbuf;
printfH; printfi,Rata2;
printf;
printfV; printfi,V;
printf; if V 5000{ printfLR0G255B0;printf;}
if V 5000{ printfLR255G0B0;printf;} if V 500{ printfD;printf;}
delay_ms500;
} }
Universitas Sumatera Utara
BAB 4
PENGUJIAN ALAT DAN PROGRAM
4.1 Pengujian Mikrokontroler ATmega8
Pengujian dilakukan untuk mengetahui apakah rangkaian mikrokontroler yang dirancang telah bekerja atau tidak. Pengujian dilakukan dengan
memprogram mikrokontroler dengan perintah untuk mengeluarkan sebuah data pada masing-masing port. Berikut ini adalah perintah dalam program untuk
mengeluarkan data ke masing-masing port: {
Port B initialization PORTB=0xFE;
DDRB=0x01;
Port C initialization PORTC=0x00;
DDRC=0x00;
Port D initialization PORTD=0x00;
DDRD=0x00; }
Setelah di compile dan diunduh ke dalam IC mikrokontroler kemudian dijalankan pada rangkaian. Cara untuk membuktikan bahwa program tersebut bekerja atau
tidak adalah dengan mengukur langsung pada pin mikrokontroler, yaitu pada port tersebut.
Universitas Sumatera Utara
Tabel 4.1 Nilai Tegangan pada Port B, Port C, dan Port D bit
Port D7
D6 D5
D4 D3
D2 D1
D0 Port B 5,05 V 5,05 V 5,05 V 5,05 V 5,05 V 5,05 V 5,05 V
0 V
Port C 0 V
0 V 0 V
0 V 0 V
0 V 0 V
0 V
Port D 0 V
0 V 0 V
0 V 0 V
0 V 0 V
0 V
Gambar 4.1 Pengujian Mikrokontroler ATMega8 dengan Voltmeter Digital
Gambar berikut adalah proses pengukuran yang dilakukan dengan voltmeter digital. Hasil pengukuran dari ketiga port tersebut adalah port C dan port D
bernilai logic 0 untuk semua bit, sedangkan port B bernilai logic 11111110 FE. Dari data tersebut dapat dibandingkan dengan program yang dibuat, dimana port
C dan port D diprogram untuk mengeluarkan data 0, sehingga akan terukur semua logic adalah 0, sedangkan pada port B data tersebut adalah FE. Dengan demikian,
terdapat kesesuaian hasil pengukuran dengan data program, sehingga pengujian
ini dinyatakan berhasil atau mikrokontroler telah bekerja dengan baik.
4.2 Pengujian Tampilan pada LCD