Professional Documents
Culture Documents
h>
#include <WiFiManager.h>
#include <EEPROM.h>
#include <ESP8266WiFi.h>
void setup() {
// Kết nối WiFi
EEPROM.begin(512);
WiFiManager wifiManager;
Serial.begin(9600);
delay(3000);
wifiManager.resetSettings();
wifiManager.autoConnect("ESP8266-TrieuVi");
Serial.println("Kết nối Wifi thành công :)");
Firebase.begin(WiFi.SSID().c_str(), WiFi.psk().c_str());
void loop() {
// Đọc giá trị từ các cảm biến
int st = analogRead(A0);
int rainValue = digitalRead(D0);
int st1 = map(st, 350, 1023, 0, 100);
int lightValue = 100 - st1;
Serial.print("Anh sang: ");
Serial.println(lightValue);
if (rainValue == 0) {
Serial.print("Co mua: ");
} else {
Serial.print("khong mua: ");
}
Serial.println(rainValue);
// Ghi giá trị cảm biến vào Firebase
Firebase.setInt(firebaseData, "/rain", rainValue);
Firebase.setInt(firebaseData, "/light", lightValue);
Firebase.getString(firebaseData, "/motor1");
String t = firebaseData.stringData();
motor1 = t.toInt();
Firebase.getString(firebaseData, "/cd");
String t1 = firebaseData.stringData();
cd = t1.toInt();
// delay(1000);
// Điều khiển motor dựa trên giá trị của cảm biến
if (cd == 1) {
if (rainValue == 1 || lightValue > 100) {
motor1 == 0;
digitalWrite(motorPin1, HIGH);
digitalWrite(motorPin2, HIGH);
} else {
motor1 == 1;
digitalWrite(motorPin1, LOW);
digitalWrite(motorPin2, LOW);
}
}
delay(1000);
}