Penghitung Waktu Cuci Tangan

Indobot Academy

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
  1. Siapkan alat dan juga bahan
  2. Lakukan proses wiring dengan menggunakan Gambar skematik rangkaian sebelumnya
  3. kemudian Buka software Arduino IDE yang telah terinstal pada laptop/komputer
  4. Unduh semua library di atas dan juga masukkan libray tersebut dengan cara buka Arduino IDE pilih Sketch->Include Library->Add.Zip Library 
  5. Ketikkan sketch program pada halaman Arduino IDE
  6. Selanjutnya Masukan alamat I2C LCD pada sketch program, untuk mengetahui alamat I2C pelajari materi berikut:
    Mencari Tahu Alamat I2C Pada Modul I2C
  7. 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!

 

Ingin Tahu Program Kami Lebih Lanjut?

Silahkan isi Formulir Dibawah Ini untuk Diskusi dengan Tim Indobot Academy.

Baca Juga

Bagikan:

Tinggalkan komentar

whatsapp whatsapp