Anda di halaman 1dari 8

BAB IV

HASIL DAN PEMBAHASAN

Pengujian Display LCD M1632


Pengujian LCD menggunakan program yang dibuat khusus untuk menampilkan
sebuah pesan pada LCD oleh mikrokontroler. Program dibuat dengan bahasa C, dan
dijalankan pada kontroler dgn kondisi terhubung antara kontroler dengan LCD. Berikut
adalah program yg dibuat untuk pengujian tersebut.
Lcd_init(16);
lcd_gotoxy(0,0);
lcd_putsf(“ALAT PEMBERSIH”);
lcd_gotoxy(0,1);
lcd_putsf(“AKUARIUM AUTO”);
delay_ms(2000);
lcd_clear();

Setelah dijalankan pada rangkaian, saat diaktifkan display akan menampilkan


pesan “ALAT PEMBERSIH AKUARIUM AUTO”.

Pengujian Turbidity Sensor


Turbidity sensor adalah sensor yang berfungsi mendeteksi tingkat kekeruhan air.
Sensor tersebut adalah sensor analog yaitu sensor yang mengeluarkan output tegangan sesuai
tingkat kekeruhannya. Program yang digunakan untuk kalibrasi dan pengukuran kekeruhan
dibuat sebagai berikut.
Sensor_Keruh = (9800 - read_adc(0)*10)/3;

Read_Level();

lcd_clear();

if (Sensor_Keruh >= 630 && C >= 190 && D==0)

{ lcd_clear();lcd_putsf(" PERINGATAN !!!");

lcd_gotoxy(0,1);lcd_putsf("AIR KOLAM KERUH");delay_ms(1000);

PORTB.3 = 1;delay_ms(1000);PORTB.3 = 0;
}

lcd_clear();

sprintf(display_buffer,"LEVEL AIR: %imm ",C);

lcd_gotoxy(0,0);

lcd_puts(display_buffer);

sprintf(display_buffer,"TBDITY : %i ntu ",Sensor_Keruh);

lcd_gotoxy(0,1);

lcd_puts(display_buffer);

delay_ms(2000);

Untuk menguji sensor tersebut cukup menggunakan alat ukur voltmeter digital. Berikut
afalah hasil pengujian yang dilakukan terhadap sensor turbidity.

Tabel 4.2 Hasil Pengujian Turbidity Sensor

Jenis Air Tegangan Tingkat Kondisi Air


Sensor (V) Kekeruhan
(NTU)

Aqua murni 4,37 56 Jernih

Teh 3,92 256 Kurang jernih

Teh tebal 3,36 468 Pekat

Susu 1,15 833 Sangat pekat

Air sabun 2,73 472 Pekat

Air lumpur 1,21 796 Sangat pekat

Dari pengujian diatas dapat dilihat bahwa tegangan akan tinggi mendekati 4,5V untuk air
jernih. Makin kurang kejernihan air makin kecil tegangan keluarannya.
Pengujian Pompa Air
Pompa yang digunakan adalah pompa akuarium tipe sentrifugal arus bolak balik.
Aktifasi sensor oleh rangkaian digunakan relay dan penguat. Tegangan kerja pompa adalah
220V. Pengujian pompa adalah untuk mengetahui unjuk kerja pompa dalam mengalirkan air
dari satu tempat ke tempat lain. Pompa dihubungkan dengan penampungan air dan tempat
pembuangan air dengan menggunakan selang. Dengan demikian pengujian pompa
dilakukan dengan mengukur volume air yang dipindahkan persatuan waktu. Prosedur atau
cara pengujian pompa adalah dengan mengisi/memompakan air ke suatu penakar air dan
ukur waktu setiap pencapaian batas 1 liter.

Tabel 4.3a Hasil Pengujian Pompa Pengisian

Volume(L) Waktu(s) Debit(l/s)

1 5 0,2

2 10 0,2

3 16 0,18

4 21 0,19

5 25 0,2

6 31 0,19

7 36 0,19

8 41 0,19

9 47 0,19

10 52 0,2

Rata-rata debit dari hasil pengukuran diatas adalah:


Rata-rata = (0,2+0,2+0,18+0,19+0,2+0,19+0,19+0,19+0,19+0,2)/10
= 0,19L/s.
Dari hasil pengujian diatas diperoleh debit rata-rata yang dapat dialirkan oleh pompa
pengisisan adalah 0,19L/detik.

Tabel 4.3b Hasil Pengujian Pompa Pengurasan

Volume(L) Waktu(s) Debit(l/s)

1 5 0,2

2 11 0,18

3 16 0,18

4 22 0,18

5 26 0,19

6 32 0,18

7 37 0,18

8 42 0,19

9 48 0,18

10 54 0,18

Rata-rata debit dari hasil pengukuran diatas adalah:


Rata-rata = (0,2+0,18+0,18+0,18+0,19+0,18+0,18+0,19+0,18+0,18)/10
= 0,18L/s.
Dari hasil pengujian diatas diperoleh debit rata-rata yang dapat dialirkan oleh pompa
pengurasan adalah 0,18L/detik.

Pengujian Timer RTC


Timer RTC adalah jam digital yang mengatur waktu penggantian air dan pengatur
waktu pemberian pakan ikan. RTC DS1307 memiliki pewaktu dalam variabel detik, menit,
jam, hari, tanggal, bulan dan tahun. RTC menyediakan pin battery-backup untuk
dihubungkan dengan baterai lithium 3V sehingga ketika catu daya mati, battery-backup
akan mengambil alih dan timer akan tetap berjalan sebagaimana mestinya. Berikut program
yang dibuat untuk menset RTC.
unsigned char hour,min,sec,day,month,year,week_day;
// DS1307 Real Time Clock initialization for Bit-Banged I2C

rtc_init(0,0,0);

for (i=0;i<30;i++){PORTD.2 = 1;delay_us(1000);PORTD.2 = 0;delay_ms(20);}


//rtc_set_time(10,9,30);

//rtc_set_date(4,20,8,20);

while (1)

{ lcd_clear();

rtc_get_time(&hour,&min,&sec);

sprintf(display_buffer,"Time: %2d:%02d:%02d\n ",hour,min,sec);

lcd_gotoxy(0,0);

lcd_puts(display_buffer);

rtc_get_date(&week_day,&day,&month,&year);

sprintf(display_buffer,"Date: %2d/%02d/%d",day,month,2000+year);

lcd_gotoxy(0,1);

lcd_puts(display_buffer);

delay_ms(2000);

lcd_clear();

for (i=0;i<15;i++)

{ Setminute =

read_adc(1)/17;

sprintf(display_buffer,"SET TIME : %i mt ",Setminute);

lcd_gotoxy(0,0);

lcd_puts(display_buffer);

delay_ms(200);

Dari program terlihat bahwa waktu di set pada pukul 10:9:30 dan pada tanggal 4
Agustus 2020. Waktu penggantian air diatur melalui program misalnya jam 8 pagi, setiap 10
menit setelah penggantian air akan dilakukan pemberian pakan ikan. Pemberian pakan dapat
dilakukan 2 atau 3 kali sehari. Sedangkan penggantian air tergantung pada kekeruhan air
tersebut. Hasil uji ketepatan waktu penggantian air untuk 10 hari pengujian adalah sebagai
berikut.
Tabel 4.4 Hasil Pengujian Timer RTC.

Hari Jam Penggantian Waktu Waktu


Air Pemberian Pemberian
Pakan Pagi Pakan Sore

1 8:00:04 8:10:02 18:15:06

2 8:00:03 8:10:01 18:15:03

3 8:00:05 8:10:08 18:15:09

4 8:00:02 8:10:09 18:15:05

5 8:00:07 8:10:08 18:15:09

6 8:00:05 8:10:07 18:15:11

7 8:00:02 8:10:12 18:15:01

8 8:00:04 8:10:11 18:15:03

9 8:00:03 8:10:06 18:15:08

10 8:00:04 8:10:09 18:15:02

Dari data tabel diatas dapat disimpulkan ketepatan waktu RTC cukup akurat, akurasi mencapai
100% untuk jam dan menit. Adapun selisih waktu hanya pada hitungan detik.

Pengujian Sensor Ketinggian Air (Ultrasonik)


Sensor diuji dengan membandingkan hasil pengukuran sensor pada display dengan
pengukuran manual. Berikut adalah hasil pengujian yang dilakukan pada sensor ultrasonic.
Tabel 4.5 Hasil Pengujian Sensor Ketinggian Air.

Tampilan LCD Ukur manual % error


(mm) (mm)

0 0 0%

11 10 10%

22 21 4,7%

31 30 3,3%

45 44 2,3%

58 61 4,9%

65 66 1,5%

77 79 2,5%

89 90 1,1%

97 98 1%

103 102 1%

111 112 0,9%

122 122 0%

131 130 0,8%

144 145 0,7%

152 150 1,3%

161 163 1,2%

173 177 2,3%

185 182 1,7%


194 191 1,6%

202 199 1,5%

Dari data diatas dapat dilihat perbedaan hasil ukur manual dan hasil ukur alat , hal ini karena
pada saat pengukuran pompa air berjalan terus sehingga timbul riak2 atau gelombang air
dengan demikian pengukuran sensor memiliki error yang lebih besar. Namun perbedaan
hanya pada orde milimeter sehingga tidak terlalu berarti untuk aplikasi sebagai pemantau
level air pada akuarium. Adapun program yang dibuat untuk menghitung ketinggian air
sebagai berikut.
void Read_Level(void) //rutin baca sensor ping

{ PORTD.7 = 1; //

delay_us(35); // send start pulse

PORTD.7 = 0; //

TCNT1=0; //reset counter

while (PIND.6 == 0){}; // wait for return pulse

TCCR1B=0x02; // start timer (timer period = 2uS)

while ((PIND.6 == 1) && !(TIFR & 0x80)); // timing the return pulse

TCCR1B=0x00; // stop timer

C = TCNT1*10/29; // save timer value to variable C

if (C <= 250){C = 250-C;}else{C=0;}

}
if (C < 50){PORTB.3 = 1;lcd_clear();lcd_putsf(" PERINGATAN

!!!");lcd_gotoxy(0,1);lcd_putsf("LEVEL AIR KURANG");delay_ms(1000);}

PORTB.3 = 0;

if (D > 0){D--;}

Anda mungkin juga menyukai