Cara Membuat Alat Pengecekan Suhu Tubuh Non Kontak Dengan Arduino Uno

8:25 AM

Cara Membuat Alat Pengecekan Suhu Tubuh Non Kontak Dengan Arduino Uno

Pada artikel kali ini masih berhubungan dengan artikel sebelumnya yaitu membuat pengecekan suhu tubuh otomatis, tetapi kali ini komponen alat lebih kompleks yaitu dengan menambahkan sensor ultrasonuc sebagai pendeteksi jarak minimal dan jarak maksimal objek yang akan dicek suhunya, dan juga ditambahkan buzzer beserta led hijau dan led merah sebagai indikator saat pengecekan suhu tubuh, alat yang akan dibuat kali ini juga dilengkapi LCD 16x2 sebagai display hasil dari pengecekan suhu yang di deteksi oleh sensor suhu mlx90614.

Pertama yang perlu disiapkan yaitu :

1.Arduino

2.Sensor suhu MLX90614

3.Sensor Ultrasonic

4.Led Merah dan Hijau

5.Buzzer Aktif

6.LCD 16x2

7.Resistor 330ohm

8.Kabel jumper Secukupnya

Setelah menyiapkan semua yang diperlukan selanjutnya yaitu merangkai keseluruhan alat

sensor suhu non kontak

Keterangan :

1.Sambungkan VCC dari LCD 16x2, Sensor ultrasonic ke 5v pada arduino

2.Sambungkan GND dari LCD 16x2, Sensor ultrasonic, LED,Sensor mlx90614,Buzzer ke GND pada arduino

3.VCC pada sensor suhu mlx90614 sambungkan ke pin 3v3 pada arduino

4.VCC buzzer dihubungkan ke pin 3 pada arduino

5.VCC pada led merah hubungkan ke resistor 330ohm kemudian dari resistor hubungkan ke pin 5 arduino

6.VCC pada led hijau hubungkan ke resistor 330ohm kemudian dari resistor hubungkan ke pin 4 arduino

7.Pin SDA dari LCD 16x2 dan sensor mlx90614 dihubungkan ke pin SDA/A5 pada arduino

8.Pin SCL dari LCD 16x2 dan sensor mlx90614 dihubungkan ke pin SCL/A4 pada arduino

9.Pin Trig pada sensor ultrasonic sambungkan ke pin 7 arduino

10.Pin Echo pada sensor ultrasonic sambungkan ke pin 6 arduino

Jika sudah terhubung semua seperti pada gambar rangkaian diatas selanjutnya yaitu copy program yang ada dibawah ini ke new project pada ArduinoIDE kemudian upload seperti biasanya, pastikan pada ArduinoIDE kalian sudah memiliki library LCD 16x2 dengan i2c dan library sensor suhu mlx90614, jika belum silahkan download terlebih dahulu di website resmi arduino.cc

[program]

#include 
#include 
#include 

#define echo 6
#define trig 7

Adafruit_MLX90614 mlx = Adafruit_MLX90614();
LiquidCrystal_I2C lcd(0x27, 16, 2);

int pos; 
boolean cekSuhu = false;
int buzer = 3;
int led_merah = 5;
int led_hijau = 4;
int maxrange = 200;
int minrange = 0;
double value;
long duration, distance;

int ultra(){
  digitalWrite(trig, LOW);delayMicroseconds(2);
  digitalWrite(trig, HIGH);delayMicroseconds(10);
  digitalWrite(trig, LOW);
  duration = pulseIn(echo, HIGH);
  distance = duration*0.034/2;
  Serial.println("Distance: ");
  Serial.println(distance);
  return distance;  
}

void setup() {
  Serial.begin(9600);

  pinMode(trig, OUTPUT);
  pinMode(echo, INPUT);

//  Serial.println("Ready...");  
  pinMode(buzer, OUTPUT);
//-----------------------------------------------------//
  pinMode(led_hijau, OUTPUT);
  pinMode(led_merah, OUTPUT);
//-----------------------------------------------------//
  mlx.begin();  
//----------------------------------------------------//
  lcd.begin();
  lcd.backlight();
  Serial.println("Silahkan Mendekat");
  Serial.println("===========================================================");
  Serial.println();

  lcd.setCursor(0,0);
  lcd.print("                    ");
  lcd.setCursor(0,1);
  lcd.print("                    ");
    
}

void loop() {  
  lcd.setCursor(5,0);
  lcd.print("Silahkan");
  lcd.setCursor(5,1);
  lcd.print("Mendekat");

  digitalWrite(led_hijau, LOW);
  digitalWrite(led_merah, LOW);

  Serial.println("Silahkan Mendekat");
  Serial.println("===========================================================");
  Serial.println();
  delay(200);
  if(ultra() <= 10){
    lcd.setCursor(0,0);
    lcd.print("                    ");
    lcd.setCursor(0,0);
    lcd.print("Loading...");
    lcd.setCursor(0,1);
    lcd.print("                    "); 

    Serial.println("Loading....");
    Serial.println("===========================================================");
    Serial.println();

    digitalWrite(led_merah, HIGH);
    digitalWrite(buzer,HIGH);
    delay(200);
    digitalWrite(buzer,LOW);
    delay(200);
    int akhir =2000;
    for(int i=0; i= 35 && value <=38){ // suhu badan Normal
      cekSuhu = true;
      lcd.setCursor(0,1);
      lcd.print(value);
      lcd.print("C");
//      lcd.setCursor(0,1);
//      lcd.print("Suhu bdn Normal");

      digitalWrite(led_hijau, HIGH);
      digitalWrite(led_merah, LOW);

      Serial.print("Suhu");
      Serial.print(value);
      Serial.println("C");
      Serial.println("Suhu Badan Normal");
      Serial.println("===========================================================");
      Serial.println();      
    } else if(value >=37.50){ //suhu badan Tinggi
      lcd.setCursor(0,1);
      lcd.print(value);
      lcd.print("C");
//      lcd.setCursor(0,1);
//      lcd.print("Suhu bdn Tinggi");

      digitalWrite(led_hijau, HIGH);
      digitalWrite(led_merah, LOW);

      Serial.print("Suhu");
      Serial.print(value);
      Serial.println("C");
      Serial.println("Suhu Badan Tinggi");
      Serial.println("===========================================================");
      Serial.println();
      
      for(int i=0; i<4 badan="" buzer="" code="" delay="" digitalwrite="" else="" high="" i="" lcd.print="" lcd.setcursor="" led_hijau="" led_merah="" low="" rendah="" serial.print="" serial.println="" suhu="" uhu="" value="">
Cara kerja alat diatas yaitu tangan atau dahi yang akan dicek suhunya akan terdeteksi dan muncul temperatur suhunya pada lcd ketika didekatkan dengan jarak dibawah 10cm, jika jarak tangan atau dahi lebih dari 10 cm maka tidak akan terdeteksi oleh sensor suhu. Dan jika suhu diatas 37.00celsius maka buzzzer sebagai alarm akan berbunyi berkali kali dan led merah akan hidup. Jika suhu normal buzzer berbunyi sekali dan led hijau akan hidup 
Selamat Mencoba...
Next Article
« Prev Post
Previous Article
Next Post »
Disqus
Tambahkan komentar Anda

No comments