4.2 Implementasi Perencanaan Elektrik
4.2.1 Rangkaian Tombol
Rangkaian tombol berfungsi sesuai dengan yag diharapkan, inputan tombol sudah dapat dibaca oleh mikrokontroler. Rangkaian timbol seperti gambar 4.5.
Gambar 4.4 Rangkaian Tombol 4.3 Implementasi Perancangan Perangkat Lunak
Adapaun I/O(input – output) pada pin mikrokontrolerATmega 328 pada papan Arduino Uno yang digunakan pada rancangan ini seperti dijelaskan pada tabel 4.1.
Tabel 4.1 I/O pada sistem Arduino 1
24 INPUT
Pin Komponen / Modul
D9 Tombol down untuk atur waktu
D10 Tombol up untuk atur waktu
D11 Tombol stop untuk menghentikan sistem
D12 Tombol OK untuk memulai system
A1 Sensor Transducer Pressure
A2 Sensor deteksi air
OUTPUT
25
D3 Modul Servo
4.4 Troubleshooting
Selama melakukan pengujian setelah rancangan diimplementasikan, masih terjadi beberapa masalah atau kendala. Oleh sebab itu, selama pengujian dilakukan juga pengecekan ulang dan troubleshooting.
4.4.1 Sensor Transduser membaca tekanan yang keluar secara acak.
Ketika dilakukan percobaan sensor transduser membaca tekanan yang acak sehingga menyebabkan pembacaan yang tidak akurat.
➢ Analisa : konektor sensor yang kurang pas saat dimasukan
➢ Solusi : mengencangkan bagian konektor sensor dan menyoldernya
➢ Hasil : sensor bisa digunakan kembali 4.5 Pengujian Alat
Pengujian dari setiap komponen harus dilakukan untuk mengetahui ketepatan hasil dari komponen tersebut.
4.5.1 Pengujian rangkaian dimmer
Rangkain dimmer digunakan untuk mengatur tegangan yang masuk pada wasser pump, untuk mengatur tekanan air yang keluar pada pompa air. Percobaan dilakukan sebanyak 3 kali supaya mendapatkan hasil yang maksimal. Rincian hasil percobaan seperti pada tabel 4.2, 4.3 dan 4.4.
Tabel 4.2 hasil pengujian modul dimmer 1
Level kecepatan Vout
1 111V
2 144V
26
3 180V
Tabel 4.3 hasil pengujian modul dimmer 2
Level kecepatan Vout
1 135V
2 158V
3 200V
Tabel 4.4 hasil pengujian modul dimmer 3
Level kecepatan Vout
1 140V
2 175V
3 213V
4.5.2 Pengujian Rangkaian Tombol
Rangkaian tombol adalah rangkain yang digunakan untuk mengaktifkan tombol yang digunakan. Pengujian dengan cara memasukan program pembacaan pin Arduino yang dipakai oleh masing- masing tombol. Jika masing – masing tombol ditekan dan datanya terbaca oleh mikrokontroler maka rangkaian tombol dalam kondisi baik dan dapat digunakan.
27
Gambar 4.5 Pengujian rangkaian tombol
Dari hasil pengujian ini rangkain tombol berfungsi dengan baik dan tidak ada jalur yang putus.
4.5.3 Pengujian motor servo
Motor servo digunakan untuk mengatur tegangan pada rangkaian dimmer dengan cara setelah mendapatkan inputan dari Tombol mode lalu motor servo memutar potensio pada rangkaian dimmer sesuai kecepatan yang dipilih.
28
Tabel 4.5 Data motor servo
Level kecepatan
Gambar posisi Sudut
1 0 o
2 90 o
29
3 180 o
30
Gambar 4.6 Hasil pengujian motor servo
Rincian sudut yang digunakan motor servo untuk memutar potensio pada modul dimmer.
Seperti pada tabel 4.5.
4.5.4 Pengujian liquid Crystal Display (LCD) dan Inter Integrated Circuit (I2C)
Pengujian Liquid Crystal Display (LCD) dan Inter Integrated Circuit (I2C) dengan cara menghubungkan LCD pada I2C dan dihubungkan ada pin Arduino. Setelah selesai menghubungkan, dibuat kode program untuk diupload ke Arduino. Pada gambar 4.12.
menunjukkan bahwa LCD sudah menampilkan karakter. Hal ini menunjukkan bahwa LCD dapat berfungsi dengan baik
31
Gambar 4.7 Hasil pengujian karakter LCD dan I2C 4.5.5 Pengujian Wasser Pump
Wasser pump dapat digunakan dengan baik mode automatis dan manualnya juga berungsi dengan baik sesuai dengan yang diharapkan.
4.5.6 Pengujian Modul Relay
Pengujian modul relay dengan cara menghubungkan pin VCC modul relay pada VCC Arduino, pin GND modul relay pada GND Arduino, dan pin IN4 modul relay pada pin 13 Arduino seperti pada gambar 4.16 Lalu masukan program blink pada Arduino. Lalu ukur tegangan yang masuk pada kaki NO dan COM modul relay dengan cara menggunakan multimeter, langkahnya :
1. Pilih voltmeter pada multimeter
2. Hubungkan Probe merah pada kaki COM 3. Hubungkan Probe hitam pada kaki NO
4. Lalu lihat pada multimeter, jika tegangan yang terbaca dan jeda pembacaanya selama 1 detik sesuai pada program blink tandanya relay masih baik dan dapat digunakan.
32
Gambar 4.8 Pengujian modul relay
Dari hasil pengujian yang dilakukan modul relay dapat bekerja bekerja dengan baik.
4.5.7. Pengujian Transducer Pressure Sensor
Pengujian Transducer Pressure Sensor dengan cara menghubungkan pin VCC sensor dengan VCC Arduino, GND sensor dengan GND Arduino dan pin data sensor dengan pin A0 Arduino. Untuk pengujian transducer pressure sensor dengan cara memberi tekanan pada sensor dengan meniup ujung sensor sekuat tenaga, dan amati perubahan nilai yang terbaca. Apabila sensor ditiup dan nilainya bertambah maka sensor masih baik dan dapat digunakan. Hasil pengukuran tekanan seperti gambar 4.9 dan untuk spesifikasi data sensor transducer pressure seperti pada tabel 4.6.
Tabel 4.6 Data sensor Data Sensor
Range Pressure 0 – 12 Bar ( 1.2 Mpa = 174 Psi )
VCC 5V DC
Output 0.5 – 4.5 V
33
Gambar 4.9 Pengujian Transducer Pressure Sensor 4.5.8. Pengujian gabungan(dimmer,servo,sensor Transducer Pressure)
Pengujian ini dilakukan supaya dapat memperoleh nilai dari setiap komponen sehingga dapat mengetahui tegangan yang dikeluarkan oleh dimmer dan dapat memperoleh tekanan yang dibaca oleh sensor transducer pressure. Rincian percobaan seperti pada tabel yang ada dibawah ini mulai dari tabel 4.7,4.8,4.9.
Tabel 4.7 hasil pengujian gabungan 1
Servo Dimmer Sensor transducer pressure
0° 111V 6Psi
90° 135V 9Psi
180° 158V 11Psi
Tabel 4.8 hasil pengujian gabungan 2
Servo Dimmer Sensor transducer pressure
0° 135V 9Psi
90° 158V 11Psi
180° 200V 13Psi
34
Tabel 4.9 hasil pengujian gabungan 3
Servo Dimmer Sensor transducer pressure
0° 140V 10Psi
90° 175V 12Psi
180° 213V 14Psi
4.5.9. Pengujian Sensor water level
Pada pengujian water level ini dilakukan dengan cara menentukan nilai batas atas dan batas bawah menggunakan arduino sehingga dapat menentukan batas atas maupun bawah pada sensor water level . seperti pada gambar 5.0 batas atas dan 5.1 batas bawah
Gambar 5.0 Penempatan sensor water level batas atas
35
Gambar 5.1 Penempatan sensor water level batas bawah
Sensor water level dapat berfungsi dengan baik, bisa digunakan mendeteksi batas atas dan batas bawah.
4.6.Pengujian Sistem
Proses pengujian sistem dilakukan untuk menguji semua blok rangkaian dan semua komponen yang ada, apakah alat sudah dapat bekerja dengan baik (sesuai harapan) atau belum.
Dalam pengujian sistem tekanan pada alat shower therapy menggunakan sensor Transducer pressure dan pressure gauge, hasil yang di dapatkan dari hasil pembacaan sensor Transducer pressure dan pressure gauge seperti pada tabel 5.0. Dan untuk penempatan sensor transducer pressure dan pressure gauge pada alat shower therapy seperti pada gambar 5.2.
36
Gambar 5.2 Penempatan sensor transducer pressure dan pressusre gauge
Tabel 5.0 Hasil pembacaan sensor Transducer pressure dan pressure gauge No Transducer pressure sensors Pressure gauge
1 10psi 10 psi
2 12 psi 13 psi
3 14 psi 15 psi
Pada hasil pebacaan sensor transducer pressure dan pressure gauge terjadi perbedaan hasil pembacaan, ini mungkin dikarenakan pressure gauge yang dipakai mempunyai spesifikasi pembacaan sampai 16 bar, sedangkan tekanan yeng terbaca < 16 psi. Jadi jarum pada pressure gauge pembacaan tekanannya tidak terlalu terlihat, karena jarum hanya bergerak sedikit.
37 BAB V PENUTUP 5.1 Kesimpulan
Kesimpulan dari hasil perancangan sistem kontrol tekanan pada alat shower therapy adalah sebagai berikut :
1. Rancang bangun sistem kontrol tekanan air automatic shower therapy berbasis mikrokontroler telah berhasil dibuat.
2. Sistem pengontrol tekanan sudah dapat bekerja dan dapat mengatur tekanan dengan 3 pilihan tekanan. Pada level 1 tekanan yang digunakan yaitu 10 psi, level 2 tekanan yang digunakan yaitu 12 psi, level 3 tekanan yang digunakan yaitu 14 psi.
3. Sistem keamanan deteksi air sudah dapat bekerja dengan baik. Ketika tidak air yang ada pada bak penampung maka sistem akan menampilkan pemberitahuan pada LCD.
5.2 Saran
Dari hasil pembuatan sistem pengatur tekanan alat shower therapy terdapat beberapa hal yang masih dapat ditingkatkan sebagai rekomendasi perbaikan alat kedepan dan peningkatan kualitasnya, diantaranya:
1. Mengganti modul dimmer dengan dengan modul dimmer elektrik yang mengatur keceptan motor pompa dengan mengatur sinyal PWM. Karena pada modul dimmer pada alat ini masih menggunakan potensio dan motor servo yang digunakan untuk memutar potensio uyntuk mengatur kecepatan putaran motor pompa air.
2. Mengganti tombol button dengan yang lebih baik karena supaya lebih mudah saat menekan/memilih mode.
38
DAFTAR PUSTAKA
[1]. Ayasweda, “JENIS TERAPI AIR,” Terapi Air pada Spa, 30 Oktober 2012. [online].
Tersedia : https://sihusky.wordpress.com/2012/10/30/terapi-air-pada-spa/ [Diakses 10 Mei 2021].
[2]. LOUISE JUMARANI, The Essence Of ndonesian Spa, Jakarta: PT Gramedia Pustaka Utama, 2009.
[3]. Abu Muhammad, “Pengertian dan Ruang Lingkup Terapi Air atau Hydrotherapy,” Terapi menggunakan Air atau Hydrotherapy, 27 Februari 2019.[online]. Tersedia : https://qaritsa.net/pengertian-dan-ruang-lingkup-terapi-air-atau-hydrotherapy/ [Diakses 10 Mei 2021]
[4]. FK unair, “Alternatif Penyembuhan Anak Autis”, Natural Therapy With Massages, 30 Juli, 2011.
[5]. Mitha, “Tekanan Hidrostatis: Pengertian, Sifat, Rumus, Contoh Soal dan pembahasannya, 10 Mei 2021. [online]. Tersedia : https://gurubelajarku.com/tekanan-hidrostatis/
[Diakses 8 Juni 2021]
[6]. Herlan, & Prabowo, d. B. (2009). Rangkaian Dimmer Pengatur Iluminasi Lampu Pijar.
INKOM, 14-21.
[7]. Saleh, muhamad, dan Munnik haryanti, “RANCANG BANGUN SISTEM KEAMANAN RUMAH MENGGUNAKAN RELAY”, Jurnal Teknologi Elektro Universitas Mercubuana, vol.8, no.3, 181-186, September 2017.
[8]. Latifa, Ulinnuha, dan Joko Slamet Saputro, “PERANCANGAN ROBOT ARM GRIPPER
BERBASIS ARDUINO UNO MENGGUNAKAN ANTARMUKA LABVIEW”,
Barometer, vol.3, no.2, 138-141, Juli 2018.
[9]. Adriansyah, Andi, dan Oka Hidyatama, “Rancang Bangun Prototype Elevator Menggunakan Microcontroller Arduino Atmega328P”, Jurnal Teknologi Elektro Universitas Mercubuana, Vol IV, No.03. p.102, September 2013.
[10]. Migas, “Rangkuman Diskusi Pressure Transducer vs Oressure Transmitter”, instrumentasi Uncategorized, 6 November 2008. [online]. Tersedia : http://migas-indonesia.com/2008/11/06/rangkuman-diskusipressure-transducer-vs-pressure-transmitter/
[Diakses 23 Juni 2021]
39
[11]. Sinaulan, Olivia M., “Perancangan Alat Ukur Kecepatan Kendaraan Menggunakan ATMega 16”, E-Journal Teknik Elektro dan Komputer, 2015.
[12]. Rumah Material, “Pompa Air Wasser”, 18 Juni 2014. [online]. Tersedia : https://www.rumahmaterial.com/2014/06/pompa-air-wasser-electric-water-pump.html [Diakses 25 Juni 2021]
[13]. MUHAMAD YUSVIN MUSTAR, RAMA OKTA WIYAGI, “Implementasi Sistem Monitoring Deteksi Hujan dan Suhu Berbasis Sensor Secara Real Time”, JURNAL ILMIAH SEMESTA TEKNIKA,2017
40 LAMPIRAN Lampiran 1 Program Arduino :
Arduino 1:
#include <Wire.h>
#include <LiquidCrystal_I2C.h>
LiquidCrystal_I2C lcd(0x27, 20, 4);
#include <DallasTemperature.h>
OneWire pin_DS18B20(A0);//--->>>>>>>>PIN SENSOR DS18B20 DallasTemperature DS18B20(&pin_DS18B20);
int sensortranduser = A1;
int deteksiair = A2;
int val;
int minute = 0;
int m, s = 0;
int nilai = 38;
int HEATER = 8;
int state = 0;
int timer = 0;
41
pinMode(HEATER, OUTPUT);//PEMANAS INDUKSI pinMode(tmblOK, INPUT);//tStar
pinMode(tmblStop, INPUT);//tStop pinMode(tmblatas, INPUT);//tTambah pinMode(tmblbawah, INPUT);//tKurang pinMode(sensortranduser, INPUT);//tranduser pinMode(deteksiair, INPUT);//deteksi air
42 digitalWrite(HEATER, HIGH);
pinMode(4, OUTPUT);//--->>>>>>>KOMUNIKASI ARDUINO digitalWrite(4, HIGH);
lcd.setCursor(6, 0);
lcd.print("TUGAS AKHIR");
lcd.setCursor(2, 1);
lcd.print("AUTOMATIC SHOWER");
lcd.setCursor(6, 2);
lcd.print("THERAPHY");
delay(3000);
lcd.clear();
lcd.setCursor(0, 1);
lcd.print("AAN KRISDIANTO_006");
lcd.setCursor(0, 2);
lcd.print("HERNAWAN KEVIN_050");
delay(3000);
lcd.clear();
state = 10;
}
void loop() {
43
44
45
46 delay(100);
}
if (digitalRead(tmblOK) == HIGH ) { //--->>masuk set timer lcd.clear();
state = 5;
} break;
//---r---
//seting pemanas air --- case 3:
lcd.clear();
lcd.setCursor(0, 1);
lcd.print("PEMANAS PROSES...");
delay(3000);
lcd.clear();
state = 7;
break;
break;
47
48 }
y = 1;
}
if (digitalRead(tmblbawah) == LOW) { y = 0;
}
if (digitalRead(tmblStop) == HIGH ) { lcd.clear();
if (state = 2 ) { state = 1;
} }
break;
//r---
//seting timer--- case 5:
lcd.clear();
lcd.setCursor(0, 0);
lcd.print("Menit : ");
lcd.print(minute);
49
50
51
///--- ///sensor tranduser
int sensorVal = analogRead(sensortranduser);
// Convert the analog reading (which goes from 0 - 1023) to a voltage (0 - 5V):
output = map(sensorValue, 102.3, 920.7, 0, 174);
lcd.setCursor(0, 3);
52
53 while (digitalRead(tmblStop) == HIGH) { goto timeStop;
}
delay (1000);
break;
case 7:
lcd.clear();
if (DS18B20.getTempCByIndex(0) >= 50) { digitalWrite(HEATER, HIGH);
lcd.setCursor(3, 2);
lcd.print("AIR READY...");
delay(4000);
lcd.clear();
lcd.setCursor(1, 0);
lcd.print("SILAHKAN SET SUHU");
lcd.setCursor(8 , 1);
lcd.print("DAN");
lcd.setCursor(7, 2);
lcd.print("WAKTU");
delay(5000);
54
55
56
int val = 4;//komunikasi 2 arduino int sensor2 = 9;
int sensor1 = 8;
int In1 = 7;//motor int In2 = 6;//motor int ENA = 5;
int kecepatan1 = 12;
int kecepatan2 = 11;
int kecepatan3 = 10;
int Inrelay = 2;
int limit;
57 int laser;
int x = 0;
int y = 0;
int z = 0;
void setup() {
myservo.attach(3);//pin servo myservo.write(0);
pinMode(val, INPUT_PULLUP);
digitalWrite(val, HIGH);
pinMode(sensor1, INPUT);
pinMode(sensor2, INPUT);
digitalWrite(sensor1, LOW);
digitalWrite(sensor2, LOW);
pinMode(In1, OUTPUT);//motor pinMode(In2, OUTPUT);//motor pinMode(ENA, OUTPUT);//ena motor pinMode(Inrelay, OUTPUT);//relay pinMode(Inrelay, HIGH);//relay
}
58 void loop() {
int data = digitalRead(val);
if (data == LOW) { motornaik();
} }
void motornaik() {
int limit = digitalRead(sensor1);
int data = digitalRead(val);
if (limit == 1) { motorturun();
}
digitalWrite(Inrelay, LOW);
digitalWrite(In1, LOW);
digitalWrite(In2, HIGH);
digitalWrite(ENA, 255);
if (data == HIGH) { berhenti();
}
if (digitalRead(kecepatan1) == 1) { myservo.write(5);
digitalWrite(Inrelay, LOW);
59 delay(5);
}
if (digitalRead(kecepatan2) == 1) { myservo.write(90);
digitalWrite(Inrelay, LOW);
delay(5);
}
if (digitalRead(kecepatan3) == 1) { myservo.write(180);
digitalWrite(Inrelay, LOW);
delay(5);
}
motornaik();
}
void motorturun() {
int laser = digitalRead(sensor2);
int data = digitalRead(val);
if (laser == 1) { motornaik();
}
int mati = digitalRead(sensor2);
60 if (data == HIGH) {
berhenti();
}
digitalWrite(In1, HIGH);
digitalWrite(In2, LOW);
digitalWrite(Inrelay, LOW);
digitalWrite(ENA, 255);
if (digitalRead(kecepatan1) == 1) { myservo.write(5);
digitalWrite(Inrelay, LOW);
delay(5);
}
if (digitalRead(kecepatan2) == 1) { myservo.write(90);
digitalWrite(Inrelay, LOW);
delay(5);
}
if (digitalRead(kecepatan3) == 1) { myservo.write(180);
digitalWrite(Inrelay, LOW);
delay(5);
}
61 motorturun();
}
void berhenti() {
digitalWrite(In1, HIGH);
digitalWrite(In2, LOW);
digitalWrite(Inrelay, HIGH);
digitalWrite(ENA, 255);
int laser = digitalRead(sensor2);
int data = digitalRead(val);
if (laser == 1) {
digitalWrite(Inrelay, HIGH);
digitalWrite(In1, LOW);
digitalWrite(In2, LOW);
digitalWrite(ENA, LOW);
} }
62 Lampiran 2 Datasheet :
63