Pada masa pandemi ini cuci tangan merupakan kewajiban untuk mematuhi protokol kesehatan yang ada. Ketika mencuci tangan kadang kita hanya melakukannya dengan asal asalan, sedangkan standar minimal waktu untuk mencuci tangan adalah 40-60 detik agar kita dapat menjangkau seluruh bagian tangan dengan bersih. Dengan membuat alat penghitung waktu cuci tangan, kita akan dapat mencuci tangan dengan benar serta sesuai dengan standar yang diterapkan.
[membership level=”0,1,2,4″]
1. Alat / Bahan
- Arduino IDE Download
- Library: LiquidCrystal_I2C Download
- Arduino UNO 1 Buah
- LCD 1 Buah
- I2C 1 Buah
- Sensor IR Obstacle 1 Buah
- Buzzer 1 Buah
- Relay 1 channel 1 Buah
- Motor DC 1 Buah
- Adapter 5V DC 1 Buah
- Project Board 1 Buah
- Kabel Jumper Secukupnya
Kemudian untuk mendapatkan komponen elektronik di atas silahkan temukan disini.
2. Skema Rangkaian
Gambar Rangkaian Penghitung Waktu Cuci Tangan
Keterangan:
- 5V – VCC I2C, VCC IR Obstacle, VCC Relay
- GND – GND I2C, GND IR Obstacle, GND Buzzer, GND Relay
- SDA – SDA I2C
- SCL – SCL I2C
- D2 – Pin Data IR Obstacle
- D8 – Pin Data Buzzer
- D13 – Pin Data Relay
- Com Relay – VCC adapter
- NO relay – Motor DC
- GND adapter – Motor DC
[/membership]
3. Langkah Kerja
- Siapkan alat dan juga bahan
- Lakukan proses wiring dengan menggunakan Gambar skematik rangkaian sebelumnya
- kemudian Buka software Arduino IDE yang telah terinstal pada laptop/komputer
- Unduh semua library di atas dan juga masukkan libray tersebut dengan cara buka Arduino IDE pilih Sketch->Include Library->Add.Zip Library
- Ketikkan sketch program pada halaman Arduino IDE
- Selanjutnya Masukan alamat I2C LCD pada sketch program, untuk mengetahui alamat I2C pelajari materi berikut:
Mencari Tahu Alamat I2C Pada Modul I2C - Terakhir Lakukan proses uploading program
4. Sketch Program
Dapatkan akses ratusan video tutorial dan juga pembelajaran dengan registrasi melalui tombol di bawah!
/* Program Penghitung Waktu Cuci Tangan dibuat oleh Indobot */ #include <LiquidCrystal_I2C.h> //Library LCD I2C LiquidCrystal_I2C lcd(0x27, 16, 2); //Alamat I2C #define sensor 2 #define pump 13 #define Buzzer 8 bool tangan = true; int mulai = 0; int selesai = 0; bool start = false; int waktu = 10; unsigned long TSekarang; unsigned long TAkhir; void setup(){ lcd.init (); //Nyalakan LCD lcd.setBacklight(HIGH); //Nyalakan backlight pinMode(sensor, INPUT); pinMode(pump, OUTPUT); pinMode(Buzzer, OUTPUT); lcd.setCursor(0,0); lcd.print("Cuci Tangan:"); lcd.setCursor(0,1); lcd.print(" "); lcd.print(waktu); } void loop(){ if(digitalRead(sensor) == LOW && tangan){ if(mulai == 1){ for(int i = 0; i < 8; i++){ //Ulang prosedur alarm(); sebanyak 16 kali alarm(); } } else{ digitalWrite(pump, HIGH); tangan = false; start = !start; } } else if(digitalRead(sensor) == HIGH && !tangan){ digitalWrite(pump, LOW); tangan = true; if(start){ mulai = 1; } else{ selesai = 1; } } if(mulai == 1 && start){ TSekarang = millis(); if(TSekarang - TAkhir > 1000){ waktu--; TAkhir = TSekarang; lcd.clear(); } lcd.setCursor(0,0); lcd.print("Cuci Tangan:"); lcd.setCursor(0,1); lcd.print(" "); lcd.print(waktu); if(waktu == 0){ mulai = 0; tangan = true; waktu = 10; lcd.clear(); lcd.setCursor(0,0); lcd.print(" OKE, selesai"); } } if(selesai == 1){ lcd.clear(); lcd.setCursor(0,0); lcd.print("Cuci Tangan:"); lcd.setCursor(0,1); lcd.print(" "); lcd.print(waktu); selesai = 0; } } void alarm(){ //Prosedur alarm digitalWrite(Buzzer, HIGH); //Nyalakan buzzer delay(125); //Selama 125 ms digitalWrite(Buzzer, LOW); //Matikan buzzer delay(125); //Selama 125 ms }
Kesimpulan:
Hasil dari alat ini yaitu, pertama kali kita perlu memasang sensor pada keran. Kemudian cobalah untuk mencuci tangan dengan durasi waktu yang singkat kemudian bilas, maka air tidak akan keluar sampai batas waktu yang telah ditentukan.
[/membership]
Kamu ingin memperbanyak jam terbang dan portofolio bikin project elektronika/ Arduino/ IoT? Ikuti program dari Indobot!