BAB III PEMBAHASAN · 46 3.2. Blok Rangkaian Alat Gambar III.1. Blok Rangkaian Alat Penjemuran...
Transcript of BAB III PEMBAHASAN · 46 3.2. Blok Rangkaian Alat Gambar III.1. Blok Rangkaian Alat Penjemuran...
45
BAB III
PEMBAHASAN
3.1. Tinjauan Umum Alat
Alat rancang bangun penjemuran pakaian otomatis ini adalah sebuah alat
yang berguna dalam menjemur pakaian. Alat ini kemudian akan ditampilkan dalam
bentuk tulisan dan keterangan cuaca cerah atau gelap dan tidak hujan atau hujan
dalam sebuah LCD.
Saat ini penerapan sensor untuk memudahkan pekerjaan manusia semakin
meningkat. Salah satunya adalah penggunaan sensor hujan dan sensor cahaya (LDR)
yang di aplikasikan pada jemuran pakaian. Arduino Uno akan menerima sinyal dari
sensor tersebut , lalu memberikan perintah pada motor Servo untuk memerintahkan
motor Servo berputar maju atau mundur. Arah putaran motor Servo di tentukan oleh
perintah langsung dari Arduino Uno. Arduino Uno sebagai mikrokontroler untuk
memerintah, sangat di andalkan agar tidak salah dalam menjalankan motor Servo.
Jemuran mampu untuk bergerak sejauh kurang lebih 1,5 meter dalam kenyataannya
pada alat peraga hanya 1,5 cm. Tujuannya adalah motor dapat menarik tuas jemuran,
agar baju atau jemuran tidak menjadi basah karena kehujanan.
Cara kerja alat ini adalah ketika sensor hujan dan sensor cahaya
mendeteksi cuaca cerah atau gelap dan kondisi hujan atau tidak hujan, kemudian
Arduino Uno mengolah dan memproses hasil yang telah diketahui oleh sensor,
selanjutnya Arduino Uno mengirimkan hasil tersebut untuk menampilkan dalam
LCD berupa tulisan kondisi cuaca tersebut dan hujan atau tidak hujan.
46
3.2. Blok Rangkaian Alat
Gambar III.1. Blok Rangkaian Alat Penjemuran Pakaian Otomatis Berbasis Arduino Uno
Penjelasan blog rangkaian alat ini adalah :
1. Input
Komponen Input ini adalah komponen masukan yang akan di proses. Komponen
input terdiri dari :
a. Catu daya yang menyalurkan arus +12 volt ke dalam rangkaian alat.
b. Sensor Hujan atau Sensor air yang berfungsi sebagai input panel sensor air
dan merubah besaran fisik air menjadi besaran listrik , semakin sedikit air
hujan yang menyentuh panel sensor maka hambatannya akan semakin besar
dan sebaliknya.
Catu Daya
(Input)
ARDUINO
UNO
(Proses)
SENSOR
HUJAN
(Input)
SENSOR
CAHAYA
(Input)
LCD 16x2
(Output)
Relay
(Output)
MOTOR
SERVO
(Output)
47
c. Sensor Cahaya atau Sensor LDR yang berfungsi sebagai input pin analog dari
Arduino Uno untuk mendeteksi intensitas cahaya matahari yang menyinari
permukaan sensor cahaya (LDR), semakin rendah intensitas cahaya matahari
yang menyinari permukaan sensor cahaya maka hambatannya akan semakin
kecil dan sebaliknya.
d. Proses
Proses adalah komponen penting dalam sebuah alat, karena berfungsi sebagai
pengelola data yang telah dideteksi oleh sensor yang kemudian hasil yang
telah di proses tersebut akan ditampilkan oleh output. Dalam proses ini,
penulis menggunakan Arduino Uno.
2. Output
Output adalah hasil keluaran dari semua proses yang telah dilakukan. Dalam alat
ini penulis menggunakan Motor Servo sebagai output penggerak rel jemuran
berputar ke kanan atau ke kiri dan LCD sebagai output menampilkan kondisi
cuaca mendung atau cerah.
3.3. Skema Rangkaian Alat
Gambar III.2. Skema Rangkaian Alat
48
Penjelasan Skema rangkaian alat adalah sebagai berikut :
Rancangan Sistem tersebut adalah Untuk menjalankan alat tersebut.
sensor hujan akan mendeteksi ada atau tidaknya air yang diterima oleh sensor hujan.
Apabila sensor hujan mendeteksi adanya air dan sensor ldr akan mendeteksi cuaca
gelap, maka rangkaian sensor akan memberi perintah pada Arduino untuk
menghidupkan motor servo yang akan menggerakan jemuran masuk ruangan.
Setelah jemuran masuk, motor servo akan berhenti dengan sendirinya saat
microswitch yang dipasang pada ujung rel jemuran tersentuh oleh jemuran.
Apabila sensor tidak mendeteksi adanya air dan cuaca panas, maka sensor
akan memberi perintah pada Arduino untuk menghidupkan motor servo yang akan
menggerakan jemuran keluar ruangan. Motor akan berhenti dengan sendiri apabila
jemuran sudah keluar dari dalam ruangan setelah microswitch tersentuh oleh
jemuran.
Layar LCD akan menampilkan semua proses yang dilakukan oleh Arduino,
baik saat mendeteksi cuaca cerah ataupun hujan LCD akan menampilkan semua
kondisi yang terjadi.
3.4. Cara Kerja Alat
Alat penjemuran otomatis ini bekerja berdasarkan input dari sensor hujan dan
sensor cahaya (LDR). Pada saat sensor cahaya / LDR membaca keadaan cuaca panas dan
sensor hujan membaca keadaan terang maka LCD menampilkan perintah dari sensor untuk
mengeluarkan jemuran dan memberikan sinyal output untuk menggerakkan motor servo
sampai jemuran keluar dengan jarak 2 meter, ketika sensor LDR membaca keadaan cuaca
49
gelap dan sensor hujan membaca keadaan cuaca hujan maka LCD menampilkan perintah
dari sensor dan menggerakkan motor servo untuk memasukan jemuran.
1. Catu Daya
Gambar III.3. Skema Catu Daya
Catu daya merupakan faktor yang penting dalam perancangan jemuran
otomatis ini. Karena tampa adanya sebuah catur daya maka sistem ini tidak akan mampu
untuk bekerja. Catu daya ini berfungsi untuk mengaktifkan, Arduino, semua sensor yang
digunakan, motor servo dan liquid crystal display sebagai indikator.
Catu daya pada arduino menggunakan sumber tegangan sebesar 5V sedangkan pada
motor 9V-12V, dan untuk sensor, keypad, LCD 2x16 membutuhkan tegangan 5V.
2. Sensor LDR / Cahaya
Gambar III.4. Rangkaian Sensor LDR / Cahaya
50
Rangkaian sensor cahaya berfungsi untuk membaca nilai resistansi dari LDR
yang berubah-ubah sesuai dengan tingkat intensitas cahaya yang diterimanya. Dan
sensor cahaya ini akan bekerja pada tegangan 5V.
3. Sensor Hujan
Gambar III.5. Rangkaian Sensor Hujan
Sensor hujan ini dari segi cara kerja tidak jauh beda dengan sensor cahaya
yang memanfaatkan nilai Vout dari hasil pembagian tegangan antara kedua resistor.
pada dasarnya sensor hujan ini berfungsi untuk memberikan nilai masukan pada
tingkat elektrolisasi air hujan dimana air hujan akan menyentuh ke panel sensor hujan
yang akan bekerja pada tegangan 5V.
4. LCD (Liquid Crystal Display)
Gambar III.6. Rangkaian LCD (Liquid Crystal Display)
51
LCD sebagai penampil keadaan cuaca apakah cerah atau gelap dan keadaan hujan
atau tidak hujan .
5. Motor Servo
Gambar III.5. Rangkaian Motor Servo
Cara kerja Motor Servo disini adalah menarik jemuran pakaian ke dalam saat
kondisi cerah dan tidak hujan dan mendorong keluar jemuran pakaian saat mendeteksi
kondisi gelap dan kondisi hujan.
6. Pemroses / Pengendali
Gambar III.6. Arduino Uno
52
Arduino Uno dalam alat ini digunakan sebagai pengendali dan pemroses hasil
dari inputan. Arduino Uno terdiri dari rangkaian mikrokontroler ATMega328 dan
memiliki 20 pin. Arduino Uno sendiri dapat beroperasi dalam tegangan 7-12 volt.
Arduino Uno berfungsi sebagai pengolah dan pemroses data yang telah di deteksi oleh
sensor hujan dan sensor cahaya.
6.5. Flowchart Alat
YA
Gambar III.6. Flowchart Diagram Alat Penjemuran Pakaian Otomatis Berbasis
Arduino Uno
Start
Baca Data Sensor Hujan (Air) dan
Sensor Cahaya (LDR)
Tampilkan LCD
End
Jika Sensor Air Terkena
Hujan dan Sensor
Cahaya Gelap
Jika Sensor Air Terkena
Hujan dan Sensor
Cahaya Terang
Jemuran Keluar
Jemuran Kedalam
53
6.6. Konstruksi Sistem (Coding)
6.6.1. Initialisasi
Penjelasan :
Sintaks program diatas adalah inisialisasi perangkat keras yang digunakan
dalam alat ini. Seperti LCD 16x2 dengan 12C yang memiliki alamat 0x27 dan dapat
menampilkan hasil output berupa tulisan dengan 16 karakter dan 2 baris dan Sensor
LDR menempati pin A3 dan Sensor Hujan berada Digital 3 dalam Arduino Uno.
#include <LiquidCrystal_I2C.h>
LiquidCrystal_I2C lcd(0x27, 16,
2);
byte LDR= A3;
byte SENSOR_HUJAN = 3;
byte RELAY1= 4;
byte RELAY2= 5;
int Nilai_Cahaya;
int Status_Cuaca;
int id_stat;
void setup(){
lcd.begin();
pinMode(RELAY1, OUTPUT);
pinMode(RELAY2, OUTPUT);
Serial.begin(9600);
id_stat = 1;
}
54
6.6.2. Input
Penjelasan :
Pada arduino IDE void loop merupakan fungsi perulangan yang bekerja mengulang
pembacaan perintah saat perintah terakhir didalam fungsi ini dibaca. fungsi ini merupakan
salah satu fungsi utama untuk meletakan perintah yang digunakan agar alat dapat bekerja.
Perintah nilai_cahaya = analogRead(posisi_pin); digunakan untuk membaca
tegangan yang di input pada posisi_pin kemudian mengubah hasilnya menjadi bilangan
bulat yang diisikan pada nilai_cahaya. Dikarenakan papan arduino menggunakan panjang
resolusi data sebesar 10 bit maka skala pembacaan tegangan dari 0V – 5V jika
dikonversikan ke nilai bilangan desimal menjadi 0 - 1023, hasil tersebut didapat dari
void loop(){
Nilai_Cahaya= analogRead(LDR);
Status_Cuaca = digitalRead(SENSOR_HUJAN);
/*
delay (500);
lcd.clear();
lcd.home();
lcd.setCursor(0,0);
lcd.print("Nilai Intensitas Cahaya : ");
lcd.setCursor(7,1);
lcd.print(Nilai_Cahaya);
delay (1000);
lcd.clear();
lcd.home();
lcd.setCursor(0,0);
lcd.print("Status Hujan : ");
lcd.setCursor(14,0);
lcd.print(Status_Cuaca);
delay (1000);
55
resolusi data = 2n - 1 = 210 – 1 = 1024 – 1 = 1023 dimana n merupakan panjang bit papan
arduino UNO.
Penulis melakukan eksperimen dengan menutup ldr menggunakan tangan didapat
nilai 600 yang dijadikan bahwa intesitas cahaya dianggap mulai redup / mendung.
Perintah nilai_hujan = digitalRead(posisi_pin) digunakan untuk membaca
apakah pin digital diberi atau tidak diberi tegangan oleh modul sensor. Jika diberi tegangan
maka nilai_variabel akan bernilai HIGH (5v) dan jika tidak ada tegangan yang mengalir
maka nilai_variabel akan bernilai LOW (0v). Kondisi HIGH jika diubah menjadi nilai
desimal bernilai 1, sedangkan kondisi LOW jika diubah menjadi nilai desimal akan bernilai
0.
Perintah y = n_hujan; digunakan untuk memberi variabel y sama dengan hasil
yang dikeluarkan dari variabel n_hujan. nilai dari variabel y digunakan untuk menentukan
array dari variabel k_cuaca dimana jika nilai y = 1 maka cuaca dalam kondisi cerah dan
jika nilai y = 0 maka cuaca dalam kondisi hujan.
Fungsi ldr_s digunakan untuk menentukan cahaya yang dideteksi dari sensor
apakah dalam kondisi gelap atau kondisi terang yang kemudian hasilnya akan ditampilkan
pada layar lcd.
56
6.6.3. Main Program
Penjelasan :
Sintaks diatas adalah bertugas sebagai pemberi nilai pada suatu variabel
yang kemudian nilai tersebut digunakan untuk menentukan kondisi output.
if(Nilai_Cahaya < 600 && Status_Cuaca == 1){
if ( id_stat == 0 ) {
digitalWrite(RELAY1, HIGH);
digitalWrite(RELAY2, LOW);
delay (500);
digitalWrite(RELAY1, HIGH);
digitalWrite(RELAY2, HIGH);
id_stat = 1;
}
Serial.println("Cahaya Redup tapi Tidak Hujan");
Serial.println("Relay Channel 1 OFF ! ");
Serial.println("Relay Channel 2 ON ! ");
lcd.clear();
lcd.home();
lcd.setCursor(0,0);
lcd.print("Suasana Mendung ");
lcd.setCursor(0,1);
lcd.print("Tapi Tidak Hujan ");
57
6.6.4. Output
} else if ( Nilai_Cahaya < 600 && Status_Cuaca == 0) {
if ( id_stat == 1 ) {
digitalWrite(RELAY1, LOW);
digitalWrite(RELAY2, HIGH);
delay (500);
digitalWrite(RELAY1, HIGH);
digitalWrite(RELAY2, HIGH);
id_stat = 0;
}
Serial.println("Cahaya Redup dan Hujan ");
Serial.println("Relay Channel 1 ON ! ");
Serial.println("Relay Channel 2 OFF ! ");
lcd.clear();
lcd.home();
lcd.setCursor(0,0);
lcd.print("Diluar Hujan !");
lcd.setCursor(0,1);
lcd.print("Tarik Jemuran !");
} else {
if ( id_stat == 0 ) {
digitalWrite(RELAY1, HIGH);
digitalWrite(RELAY2, LOW);
delay (500);
digitalWrite(RELAY1, HIGH);
digitalWrite(RELAY2, HIGH);
}
id_stat = 1;
Serial.println("Cahaya Terang dan Tidak Hujan ");
Serial.println("Relay Channel 1 OFF ! ");
Serial.println("Relay Channel 2 ON ! ");
lcd.clear();
lcd.home();
lcd.setCursor(0,0);
lcd.print("Matahari Cerah ");
lcd.setCursor(0,1);
lcd.print("Saatnya menjemur ! ");
58
Penjelasan :
Sintak diatas adalah merupakan hasil pembacaan dari kondisi sensor yang
selanjutnya akan terapkan pada komponen output dan membuat alat bekerja sesuai dengan
keadaan cuaca yang dideteksi sensor.
6.7. Hasil Percobaan
6.7.1. Hasil Percobaan Input
Tabel III.1. Hasil Percobaan Input
No Sensor
Nilai
Keadaan
1. Sensor LDR (Analog) 0 s/d 600
601 s/d 1024
Kondisi cahaya
redup
Kondisi Terang
2. Sensor Hujan(Digital) 0
1
Kondisi Basah
Kondisi Kering
Dari tabel hasil pengujian data diatas dapat dilihat terdapat beberapa
perbedaan nilai dari kedua sensor tersebut. Di kedua sensor tersebut memakai voltase 5v.
6.7.2. Hasil Percobaan Output
Tabel III.2. Percobaan Output
Perintah
Relay 1
Relay 2 Motor Servo
RELEASE
Off Off Diam
FORWARD
On
Off Maju
BACWARD
Off
On
Mundur
Dari hasil pengujian diatas, komponen Motor Servo dan Relay yang
digunakan sebagai output dapat bekerja dengan baik sesuai dengan program yang di input.
59
6.7.3. Hasil Percobaan Keseluruhan
Tabel III.3. Hasil Percobaan Keseluruhan
Sensor Cahaya Sensor Hujan Relay 1 Relay 2 Motor Servo
Terang Tidak Hujan Mati Hidup Bergerak keluar
Terang Tidak Hujan Mati Hidup Bergerak keluar
Gelap Hujan Hidup Mati Bergerak ke dalam
Gelap Hujan Hidup Mati Bergerak ke dalam
Terang Tidak Hujan Mati Hidup Bergerak keluar
Gelap Tidak Hujan Mati Hidup Bergerak kedalam