ลองทำระบบวัดอุณหภูมิและความชื้นสัมพัทธ์ของอากาศที่บ้านดูเล่นๆ อุปกรณ์ที่ใช้ในครั้งนี้ก็คือ
- เจ้าบอร์ด ESP8285
- โมดูล DHT22
เขียนโปรแกรมด้วย Arduino ให้ส่งข้อมูลเข้า Blynk Server (โปรเจคนี้ทำตัวปิด/เปิดไฟใส่ไว้ด้วยแล้ว) จากนั้นไปสร้าง Guage และ Graph แสดงผลแบบ Realtime ดูในมือถือ ประสบความสำเร็จ ได้ผลใกล้เคียงกับเว็บของกรมอุตุนิยมและ Accuweather เลยจ้า
#include "DHTesp.h"
DHTesp dht;
/* Comment this out to disable prints and save space */
//#define BLYNK_PRINT Serial
#include <ESP8266WiFi.h>
#include <BlynkSimpleEsp8266.h>
// You should get Auth Token in the Blynk App.
// Go to the Project Settings (nut icon).
char auth[] = "YOURTOKEN";
// Your WiFi credentials.
// Set password to "" for open networks.
char ssid[] = "YOUR-WIFI-SSID";
char pass[] = "PASSWORD";
BlynkTimer timer;
void setup()
{
Serial.begin(115200);
dht.setup(5, DHTesp::DHT22); // Connect DHT sensor to GPIO 5
Blynk.begin(auth, ssid, pass,"blynk.jpnet.co.th",8080);
Blynk.syncAll();
timer.setInterval(60000, sendSensor); //ตั้งเวลาให้อัพเดทค่าทุกๆ 1 นาที
}
void sendSensor()
{
float h = dht.getHumidity();
float t = dht.getTemperature();
t = ((int) (t * 10) / 10.0);
h = ((int) (h * 10) / 10.0);
Blynk.virtualWrite(8, t); // virtual pin
Blynk.virtualWrite(9, h); // virtual pin
}
void loop()
{
Blynk.run();
timer.run();
}