Translate

Membuat Alat Deteksi Telur Bagus / Jelek via IOT BLYNK

Membuat Alat Deteksi Telur Bagus / Jelek via IOT BLYNK


         Pada kesempatan kali ini saya akan menjelaskan mengenai bagaimana cara membuat sebuah alat yang dapat membedakan antara telur bagus dan telur jelek, prinsip kerjanya sederhana yaitu jika telur bagus terkena cahaya maka akan memancarkan cahaya berwarna namun jika telur jelek maka akan ada penutup yang menghalangi cahaya untuk sampai ke sensor sehingga sensor bisa mendeteksi suatu nilai. untuk lebih jelasnya berikut adalah komponen dan programnya.



a. Wemos D1




b. sensor photodioda




c. LCD + I2C 





d. Program Arduino IDE

#include <Wire.h> 
#define BLYNK_PRINT Serial  
#include <SPI.h>
#include <ESP8266WiFi.h>
#include <BlynkSimpleEsp8266.h>
#include <SimpleTimer.h>
#include <LiquidCrystal_I2C.h>
LiquidCrystal_I2C lcd(0x27, 16,2);

int dataadc;
int tombol = D5;
int tombolx = 0;
int buzzer = 12;

char auth[] = "jhgjhgjHGJHTRSEWREhkhkjjhjhfjhfEy";
char ssid[] = "Hotspot HPKU";
char pass[] = "123456789";

SimpleTimer timer;

void sendSensor()
{
 Blynk.virtualWrite(V5, dataadc);
 delay(1000);
}

void setup() {
lcd.clear();
lcd.begin();
lcd.noCursor(); 
Wire.begin(); 
Serial.begin(9600);
Blynk.begin(auth, ssid, pass);
timer.setInterval(1000L, sendSensor);
pinMode(tombol,INPUT_PULLUP);
pinMode(buzzer,OUTPUT);
digitalWrite(buzzer,HIGH);
}


void loop() {
  
tombolx = digitalRead(tombol);

dataadc = analogRead(A0);

if(tombolx == 0){
  lcd.clear();
  mulai();
}

 lcd.setCursor(0,0);
 lcd.print("ADC= ");
 lcd.print(dataadc);
 lcd.print("     ");

 digitalWrite(buzzer,HIGH);

 Blynk.run();
 timer.run();
 
delay(1);
}

void mulai(){
  
tombolx = digitalRead(tombol);

if(tombolx == 1){
  lcd.clear();
  return;
}

dataadc = analogRead(A0);

if((dataadc > 270)&&(dataadc < 600)&&(tombolx == 0)){
 lcd.setCursor(0,1);
 lcd.print("TELUR BAGUS      ");
 digitalWrite(buzzer,HIGH);
}
if((dataadc > 100)&&(dataadc < 270)&&(tombolx == 0)){
 lcd.setCursor(0,1);
 lcd.print("TELUR JELEK     ");
 digitalWrite(buzzer,LOW);
}
if((dataadc > 1000)){
 lcd.setCursor(0,1);
 lcd.print("LETAKKAN TELUR  ");
 digitalWrite(buzzer,HIGH);
}

 lcd.setCursor(0,0);
 lcd.print("ADC= ");
 lcd.print(dataadc);
 lcd.print("     ");

 Blynk.run();
 timer.run();
 
delay(1);  
mulai();  
}




e. VIDEO HASILNYA







No comments:

Post a Comment