Translate

(IOT) Monitor 2 Suhu (Temperature) Ds18b20 dan Kendali Relay via Internet ONLINE Aplikasi Blynk ARDUINO WEMOS ESP8266

(IOT) Monitor 2 Suhu (Temperature) Ds18b20 dan Kendali Relay via Internet ONLINE Aplikasi Blynk ARDUINO WEMOS ESP8266  


           Pada kesempatan kali ini saya akan menjelaskan mengenai bagaimana cara membuat sebuah alat yang berbasis internet dengan fungsi yaitu untuk monitor 2 buah sensor suhu ds18b20 dan kendali 1 buah relay via aplikasi Blynk. alat ini juga dilengkapi 2 buah servo yang berfungsi untuk buka tutup tergantung suhu yang terbaca, jika suhu lebih dari 32 maka servo buka dan jika kurang dari 32 maka servo tutup. alat ini juga dilengkapi sensor tegangan dc sehingga pada interface Blynk tertampil tegangan yang sedang diukur oleh sensor. untuk lebih jelasnya berikut adalah program dan komponennya. 




a. Wemos D1




b. Sensor Tegangan DC




c. Sensor Suhu ds18b20




d. Servo Mini MG90S




e. Modul Relay






f. Program Arduino IDE

#include "Wire.h"
#define BLYNK_PRINT Serial    
#include <SPI.h>
#include <Servo.h>
#include <ESP8266WiFi.h>
#include <BlynkSimpleEsp8266.h>
#include <SimpleTimer.h>
#include <DallasTemperature.h>
#include <OneWire.h>
#define ONE_WIRE_BUS 13 //D7 pin of nodemcu
OneWire oneWire(ONE_WIRE_BUS);
DallasTemperature sensors(&oneWire);

// You should get Auth Token in the Blynk App.
// Go to the Project Settings (nut icon).
char auth[] = "fjhgjHGJHGhjgresNBMNBN-mnmhgfhn";

// Your WiFi credentials.
// Set password to "" for open networks.
char ssid[] = "Hotspotku nich";
char pass[] = "123456789";

SimpleTimer timer;

float suhu;
float suhu2;
Servo myservo1;
Servo myservo2;
int suhupin;
int senPin = A0;  
float v;

void sendSensor()
{
          
sensors.requestTemperatures();
suhu = sensors.getTempCByIndex(0);
suhu2 = sensors.getTempCByIndex(1);

if(suhu < 32){
myservo1.write(100);  
}

if(suhu >= 32){
myservo1.write(150);  
}

if(suhu2 < 32){
myservo2.write(100);  
}

if(suhu2 >= 32){
myservo2.write(150);  
}

Blynk.virtualWrite(V5, suhu);
Blynk.virtualWrite(V6, suhu2);
Blynk.virtualWrite(V7, v);  
}


void setup()
{
  Serial.begin(9600);  
  sensors.begin();
  myservo1.attach(5); //d3
  myservo2.attach(4); //d4 
  Blynk.begin(auth, ssid, pass);
  timer.setInterval(1000L, sendSensor);
}

void loop()
{
  v = analogRead(senPin);
  v =  v * (5.0 / 1023.0);
  v = (v + 0.036) / 0.3075;
  
  Blynk.run(); //relay di D9
  timer.run();
}




g. Gambar Interface Blynk






h. VIDEO HASILNYA









No comments:

Post a Comment