Translate

Alat Akses Ruangan Menggunakan Sensor Suhu Tubuh dan PIR + Fitur Suara

Alat Akses Ruangan Menggunakan Sensor Suhu Tubuh dan PIR + Fitur Suara


        Pada kesempatan kali ini saya akan menjelaskan mengenai bagaimana cara membuat sebuah alat yang bisa memonitor suhu tubuh sebelum memasuki ruangan, jadi sebelum memasuki ruangan orang harus cek suhu tubuh kemudian jika suhunya normal maka akan ada suara silahkan masuk, jika suhu tinggi maka akan ada suara akses ditolak, jika suhu normal maka akan mengaktifkan solenoid sehingga pintu bisa dibuka, namun jika tidak maka solenoid akan tetap mengunci. untuk lebih jelasnya berikut koding skemanya.


1. Komponen



2. Program Arduino IDE

#include <Wire.h>
#include <DFPlayer_Mini_Mp3.h>
#include <LiquidCrystal_I2C.h>
#include <Adafruit_MLX90614.h>
LiquidCrystal_I2C lcd(0x27, 16,2);
#include <SoftwareSerial.h>
SoftwareSerial mySerial(2, 3); // RX, TX

Adafruit_MLX90614 mlx = Adafruit_MLX90614();

float TargetC;
int ledmerah = 4;
int dataadc;

void setup(){
 
  mlx.begin();
  lcd.clear();
  lcd.begin();
  Serial.begin(9600);
  mySerial.begin(9600);
  mp3_set_serial(mySerial);  //set softwareSerial for DFPlayer-mini mp3 module
  delay(1);  //wait 1ms for mp3 module to set volume
  mp3_set_volume(30);  //volume 0-30
  
  lcd.noCursor();
  pinMode(ledmerah,OUTPUT);
}

void loop(){
           
 TargetC = mlx.readObjectTempC();
 dataadc = analogRead(A0);

      lcd.setCursor(0,0);
      lcd.print("Suhu= ");
      lcd.print(TargetC);
      lcd.println(" 'C     ");
    
      //lcd.setCursor(0,1);
      //lcd.print("ADC: ");
      //lcd.print(dataadc);
      //lcd.print("  ");

      if(dataadc > 100){ 
      lcd.setCursor(0,1);
      lcd.print("ADA ORANG   ");
      }
      
      if(dataadc < 100) {
      lcd.setCursor(0,1);
      lcd.print("KOSONG      ");
      }    
   
      if((dataadc > 100)&&(TargetC <=  32.0)) { 
       mp3_play(1);  //play music file 0001.mp3
       digitalWrite(ledmerah,LOW);
       delay(5000);  
       digitalWrite(ledmerah,HIGH);
       mp3_stop(); 
      }
      
      if((dataadc > 100)&&(TargetC > 32.0 )) {
       mp3_play(2);
       delay(5000);
       mp3_stop(); 
       digitalWrite(ledmerah,HIGH);
      }
   
delay(200);
}
   

3. VIDEO HASILNYA



No comments:

Post a Comment