BAB V HASIL DAN PEMBAHASAN
5.2. Instalasi Perangkat
Instalasi perangkat merupakan suatu proses instalasi alat maupun perakitan alat yang digunakan dalam perakitan, yaitu sensor ultrasonic sebagai sensor pendeteksi jarak / halang benda dan sistem otomatisasi. dan Modul Bluetooth sebagai sistem kendali manual yang akan dikendalikan melalui Samrtphone.
Gambar 5.6 Instalasi perangkat sensor & modul 5.3. Hasil dan Pembahasan
5.3.1. Hasil Perancangan
1. Tampilan Rangkaian rancang bangun prototype robot pengepel lantai yang telah di buat sesuai dengan skema perancangan dan desain alat.
Gambar 5.7 Rangkaian komponen Rancang Bangun
37
Gambar 5.8 Instalaisi Rangkaian Rancanng Bangun Proplan
2. Hasil Akhir Perancangan
Setalah di lakukan pereancangan dan pengujian sistem, berikut adalah hasil akhir perancangan prototype robot pengepel lantai.
Gambar 5.9 Hasil Akhir Prototype tampak depan
Gambar 5.10 Hasil Akhir Prototype tampak samping
5.4. Pengujian Sistem
1. Pengujian Komponen
Adapun pengujian sensor dan komponen yang digunakan untuk rancang bangun prototype robot pengepel lantai berbasis arduino uno, sebagai berikut :
Tabel 5.1 Pengujian sistem
Komponen
39
Tabel 5.2 Pengujian Water Pump
Water Pump Yang diharapkan
Pengamatan Hasil uji coba Percobaan 1
Percobaan 2 Mampu menyala, dan menyedot air
serta mengeluarkan air
Tidak menyala
Tidak Baik
Percobaan 3 Mampu menyala,
Tabel 5.3 Pengujian bahan prototype
Bahan Alat
41
2. Pengujian Alat
Dari pengujian terhadap rangkaian yang telah dibuat, sistem dapat bekerja dengan cukup baik.
Berikut inilah langkah pengujian yang akan dilakukan yaitu sebagai berikut:
1. Memastikan bahwa komponen alat dalam keadaan baik dan program yang sudah di programkan ke board arduino
2. Robot akan di uji dengan menggunakan baterai.
3. Tombol on-off pada baterai untuk menyalakan dan mematikan robot.
4. Modul HC-05 di gunakan untuk kendali robot manual
5. Sensor ultrasonic akan perintahkan robot berbelok menghindari halang benda didepan.
6. Robot didesain dengan ukuran panjang 30cm, lebar 20cm, dan tinggi 13cm, untuk memudahkan dalam pembuatan serta penempatan komponen yang diperlukan.
7. Perancangan menggunakan bahan dasar papan kayu dengan ketebalan 0.5 cm digunakan untuk menampung beberapa komponen yang diperlukan.
42 BAB VI
SIMPULAN DAN SARAN
6.1. Simpulan
Dari hasil perancangan dan pengujian protoype robot pengepel lantai berbasis arduino uno dapat disimpulkan sebagai berikut:
1. Telah dilakukan perancangan, pembuatan dan uji coba sistem secara keseluruhan dan robot ini dapat digunakan untuk mengepel lantai dengan baik. Alat ini dapat bergerak bebas berbelok ke kanan begitupun kekiri, sehingga melakukan pergerakan layaknya spiral tanpa menggunakan lintasan tertentu. Acuan jarak yang di tentukan memudahkan robot untuk mengambil keputusan dan tidak membuat robot menabrak halangan yang ada didepannya. Modul Bluetooth HC-05 sebagai sistem manual untuk kendali jalannya robot.
2. Kerja alat sesuai dengan yang telah di program yang diberikan ke mikrokontroller Arduino Uno sebagai komponen utama pada prototype robot pengepel lantai.
3. Sensor Ultrasonic mampu mendeteksi jarak / halang benda dengan cukup baik.
4. Modul Hc-05 sebagai kendali robot mampu bekerja dengan baik.
43
6.2. Saran
Perancangan prototype terutama hardware harus diperhitungkan dengan baik agar fungsi dari robot dapat bekerja dengan maksimal. Pengembang selanjutnya agar dapat menambahkan beberapa komponen agar prototype robot pengepel lantai dapat dijalankan dengan lebih mudah, diantaranya : 1. Menambahkan sensor untuk mendeteksi noda yang sangat kotor agar
pengepel dapat berputar lebih kuat dan cepat untuk menghilangkan noda tersebut.
2. Menambahkan notifikasi melalui media sosial yang terhubung seperti WhatsApp atau Telegram agar mengetahui apakah prototype robot pengepel lantai ini sudah selesai membersihkan lantai atau belum.
3. Desain dan jalan robot yang lebih baik lagi supaya lebih praktis dan bisa bergerak di kolong-kolong meja atau kursi yang jarang dibersihkan.
44
DAFTAR PUSTAKA
[1] U. N. Kholifah, “ROBOT PEMBERSIH LANTAI BERBASIS ARDUINO UNO DENGAN SENSOR Abstrak Perkembangan Ilmu pengetahuan dan teknologi saat ini sangatlah pesat , terutama di bidang teknologi elektronika mempengaruhi kehidupan masyarakat untuk melangkah lebih maju , praktis dan si,” J. Teknol. Elektro, Univ. Mercu Buana, vol. 6, no. 3, pp. 136–143, 2015.
[2] S. N. Utama, D. Muriyatmoko, and F. Hekmatyar, “Rancang bangun robot sederhana pembersih lantai menggunakan sensor ultrasonik berbasis arduino 1,” vol. 2, no. September, 2020.
[3] M. M. Sgsp and Sulaiman, “Robot Pembersih Lantai Menggunakan Sensor Ultrasonik Berbasis Arduino Uno,” pp. 72–81, 2020.
[4] P. P. P, Turahyo, and Zaini, “Rancang Bangun Robot Pembersih Lantai Berbasis Mikrokontroller Dengan Kendali Ponsel Pintar,” Pros. Snitt Poltekba, vol. 3, no. 0, 2018.
[5] A. Fitriansyah, G. N. Esmeralda, and D. Setiadi, “Alat Pembersih Lantai Berbasis Arduino Uno dan Android,” vol. 6, no. 1, pp. 72–84, 2020.
[6] M. S. Yoski and R. Mukhaiyar, “Prototipe Robot Pembersih Lantai Berbasis Mikrokontroller dengan Sensor Ultrasonik,” vol. 1, no. 2, pp. 158–161, 2020.
CCNIndonesia. (2018).
45
LAMPIRAN
A-1 Lampiran 1. Surat Ketersediaan Pembimbing
Lampiran 1. Surat Ketersediaan Pembimbing
A-2 A-1
A-1 Lampiran 2. Kode Program System Prototype Lampiran 2 Kode Program System Prototype
#include <Servo.h>
//driver motor 1 sebelah kanan
const int kanani1 = 2; //motor kanan depan positif const int kanani2 = 3; //motor kanan depan negatif const int kanani3 = 4; //motor kanan belakang positif const int kanani4 = 5; //motor kanan belakang negatif //driver motor 2 sebelah kiri
const int kirii1 = 6; //motor kiri depan positif const int kirii2 = 7; //motor kiri depan negatif const int kirii3 = 8; //motor kiri belakang positif const int kirii4 = 9; //motor kiri belakang negatif //pompa air
const int pompa = A3; //pin relay i1 pompa air di pin A0 arduino
//sensor ultrasonic
int trig = A0; // pin triger ultrasonik ke A0 arduino int echo = A1; //pin echo ultrasonik ke A1 arduino
long durasi, jarakTK, jarakTR, jkanan, jkiri; //inisialisasi jenis variabel pembacaan sensor ultrasoni angka panjang float jarak; // inisialisasi jenis variabel jarak angka pecahan
char bacaandroid; //inisialisasi jenis variable
Servo servo; //inisialisasi servo
B-1
A-1
void bacajarak() //program pengoperasian sensor ultrasonik {
digitalWrite(trig, HIGH); //pin trig sensor memancarkan cahaya ultrasonik
delayMicroseconds(10); //jeda waktu 0,01 detik
digitalWrite(trig, LOW); //pin triger berhenti memancarkan cahaya
durasi = pulseIn(echo, HIGH); //pin echo ultrasonik mengambil cahaya umpan balik yang dipantulkan trig
jarak = 0.0001*((float)durasi*340.0)/2.0; //kalibrasi ke centimeter
Serial.println(jarak); //menampilkan teks pada serial }
void setup () //program awalan
{ //inisialisasi variabel sebagai inputan atau outputan pinMode(kanani1, OUTPUT);
pinMode(kanani2, OUTPUT);
pinMode(kanani3, OUTPUT);
pinMode(kanani4, OUTPUT);
pinMode(kirii1, OUTPUT);
pinMode(kirii2, OUTPUT);
pinMode(kirii3, OUTPUT);
pinMode(kirii4, OUTPUT);
pinMode(trig, OUTPUT);
pinMode(echo, INPUT);
pinMode(pompa, OUTPUT);
digitalWrite(trig,LOW);
B-2
A-1
servo.attach(A2); //inisialisasi komponen servo kabel warna kuning ke pin A2 arduino
Serial.begin(9600); //inisialisasi frekuensi serial di angka 9600
servo.write(50); //servo bergerak ke sudut 50 derajat delay(200);//jeda program (1000 = 1detik)
servo.write(170);
delay(500);
servo.write(115);
delay(1000);
bacajarak(); //memanggil fungsi bacajarak delay(100);
Serial.println("start");
}
void tengokkanan() //fungsi program membaca data servo tengok kearah kanan
void tengokkiri() //fungsi program membaca data servo tengok ke arah kiri
B-3
A-1
void stop() //fungsi untuk mobil berhenti {
digitalWrite(kanani1, LOW); digitalWrite(kirii1, LOW); //
low = negatif
digitalWrite(kanani2, LOW); digitalWrite(kirii2, LOW);
digitalWrite(kanani3, LOW); digitalWrite(kirii3, LOW);
digitalWrite(kanani4, LOW); digitalWrite(kirii4, LOW);
Serial.println("s");
}
void maju() //fungsi program mobil gerak maju {
digitalWrite(kanani1, HIGH); digitalWrite(kirii1, HIGH);
digitalWrite(kanani2, LOW); digitalWrite(kirii2, LOW);
digitalWrite(kanani3, HIGH); digitalWrite(kirii3, HIGH);
digitalWrite(kanani4, LOW); digitalWrite(kirii4, LOW);
delay(300);
Serial.println("m"); //}
}
void mundur() // fungsi program mobil gerak mundur
B-4
A-1 {
digitalWrite(kanani1, LOW); digitalWrite(kirii1, LOW);
digitalWrite(kanani2, HIGH); digitalWrite(kirii2, HIGH);
digitalWrite(kanani3, LOW); digitalWrite(kirii3, LOW);
digitalWrite(kanani4, HIGH); digitalWrite(kirii4, HIGH);
Serial.println("n");
delay(200);
}
void kanan() // fungsi program mobil gerak kanan {
digitalWrite(kanani1, HIGH); digitalWrite(kirii1, LOW);
digitalWrite(kanani2, LOW); digitalWrite(kirii2, HIGH);
digitalWrite(kanani3, HIGH); digitalWrite(kirii3, LOW);
digitalWrite(kanani4, LOW); digitalWrite(kirii4, HIGH);
delay(500);
Serial.println("r");
}
void kiri() // fungsi program mobil bergerak kiri {
digitalWrite(kanani1, LOW); digitalWrite(kirii1, HIGH);
digitalWrite(kanani2, HIGH); digitalWrite(kirii2, LOW);
digitalWrite(kanani3, LOW); digitalWrite(kirii3, HIGH);
digitalWrite(kanani4, HIGH); digitalWrite(kirii4, LOW);
delay(500);
Serial.println("l");
}
B-5
A-1
void manual() //fungsi program gerakan di kendalikan secara manual
A-1
void otomatis() //program mobil dengan kendali otomatis {
while(1) {
bacajarak(); //membaca nilai sensor ultrasonik Serial.println(jarak); data sensor servo tengok kanan
tengokkiri(); jkiri=jarakTK; delay(300); //baca data sensor servo tengok kiri
if (jkanan >= jkiri) //perbandingan jarak kanan dan jarak kiri
{ kanan(); stop();} //jika jarak kanan lebih jauh maka mobil bergerak ke kanan
else {kiri(); stop();} //jika jarak benda sebelah kiri lebih jauh maka mobil bergerak ke kiri
}
else {maju();delay(200);} //program mobil maju if (Serial.available()>0)
{ bacaandroid=Serial.read(); //membaca pesan serial dari android
Serial.println(bacaandroid);
if (bacaandroid == 'O'){ digitalWrite (pompa, HIGH);}
B-7
A-1
if (bacaandroid == 'C'){ digitalWrite (pompa, LOW);}
if (bacaandroid == 'M'){ stop(); delay(100);
manual();} //program berubah ke mode kendali manual if (bacaandroid == 'N'){ stop();}
}}
}
void loop () program yang diulang-ulang {
if (Serial.available()>0) {
bacaandroid=Serial.read();
if (bacaandroid == 'M') {manual();} //kendali manual else if(bacaandroid == 'A') {otomatis();} //kendali otomatis
} }
B-8
C-4 Lampiran 3. Kode Program MIT APP Inventor Lampiran 3 Kode Program MIT APP Inventor
C-1
C-4 C-2
C-4 C-3
C-4 Lampiran 4. Hasil Dokumentasi Observasi Lampiran 4 Dokumen
D-1