#6 Coding for Home Automation project | Firebase | Nodemcu | MIT App inventor | IoT | 2021
Автор: Jack Solutions
Загружено: 2021-06-16
Просмотров: 3901
Описание:
In this series of tutorials you can understand the Internet of Things - working and you can create your own app for eg Home automation with a professional multi-layer app. while working with this project you will understand about the database for accessing data remotely through internet and also you get knowledge of firebase fingerprint updating and troubleshooting Nodemcu etc....
Home Automation Nodemcu - Arduino Code:
/*****************************************************
****This code developed by Gerald Stanly *
*****version - 1.2.0
*****Year - 2021
*****Youtube channel - Jack Solutions
*****************Subscribe**************************
*/
#include "ESP8266WiFi.h"
#include "FirebaseArduino.h"
#define FIREBASE_HOST "YOUR FIREBSE HOST OR URL"
#define FIREBASE_AUTH "YOUR FIREBASE AUTHENTICATION KEY"
#define WIFI_SSID "ssid"//wifi ssid
#define WIFI_PASSWORD "wifi password"//your wifi password
String Regulator1, relay1, relay2;
String Regulator2, relay3, relay4;
#define PWM_PIN1 D5
#define PWM_PIN2 D6
#define Light1 D0
#define Fan1 D1
#define Light2 D2
#define Fan2 D3
#define WifiLed D4
void setup()
// Debug console
Serial.begin(9600);
pinMode(PWM_PIN1, OUTPUT);
pinMode(Light1,OUTPUT);
pinMode(Fan1,OUTPUT);
pinMode(PWM_PIN2, OUTPUT);
pinMode(Light2,OUTPUT);
pinMode(Fan2,OUTPUT);
pinMode(WifiLed,OUTPUT);
digitalWrite(Light1,LOW);
digitalWrite(Fan1,LOW);
digitalWrite(Light2,LOW);
digitalWrite(Fan2,LOW);
WiFi.begin(WIFI_SSID, WIFI_PASSWORD);
Serial.print("connecting");
while (WiFi.status() != WL_CONNECTED)
{
Serial.print(".");
delay(500);
}
Serial.println();
Serial.print("connected: ");
Serial.println(WiFi.localIP());
Firebase.begin(FIREBASE_HOST, FIREBASE_AUTH); // used to enable communication
Firebase.setString("Regulator1", "0");
Firebase.setString("Regulator2", "0");
Firebase.setString("Light1","false");
Firebase.setString("Light2","false");
Firebase.setString("Fan1","false");
Firebase.setString("Fan2","false");
}
void loop()
{
while (WiFi.status() != WL_CONNECTED)
{
digitalWrite(WifiLed,HIGH);
delay(1000);
digitalWrite(WifiLed,LOW);
delay(1000);
}
Regulator1 = Firebase.getString("Regulator1");//get the variables
Regulator2 = Firebase.getString("Regulator2");//get the variables
relay1 = Firebase.getString("Light1");
relay2 = Firebase.getString("Fan1");
relay3 = Firebase.getString("Light2");
relay4 = Firebase.getString("Fan2");
if(relay1 == "true")
{
digitalWrite(Light1,HIGH);
Serial.println("Light -1 ON");
}
if(relay1 == "false")
{
digitalWrite(Light1,LOW);
Serial.println("Light -1 OFF");
}
if(relay2 == "true")
{
digitalWrite(Fan1,HIGH);
Serial.println("Fan -1 ON");
}
if(relay2 == "false")
{
digitalWrite(Fan1,LOW);
Serial.println("Fan -1 OFF");
}
if(relay3 == "true")
{
digitalWrite(Light2,HIGH);
Serial.println("Light -2 ON");
}
if(relay3 == "false")
{
digitalWrite(Light2,LOW);
Serial.println("Light -2 OFF");
}
if(relay4 == "true")
{
digitalWrite(Fan2,HIGH);
Serial.println("Fan -2 ON");
}
if(relay4 == "false")
{
digitalWrite(Fan2,LOW);
Serial.println("Fan -2 OFF");
}
analogWrite(PWM_PIN1, map(Regulator1.toInt(), 0, 80, 80, 0)); // map and analogwrite function.
Serial.println(Regulator1);//debug.
delay(100);
analogWrite(PWM_PIN2, map(Regulator2.toInt(), 0, 80, 80, 0)); // map and analogwrite function.
Serial.println(Regulator2);//debug.
delay(100);// delay of 100ms to reduce the hitcount.
}
Jack Solutions channel gives solutions for software errors & MCU programming etc...
#InternetOfThings #IoT #HomeAutomation #Firebase #MitAppInventor #JackSolutions
Повторяем попытку...
Доступные форматы для скачивания:
Скачать видео
-
Информация по загрузке: