/***************************************************************
* Project : Smart home automation simulation using IOT
* Group Name : Group 4
* Group Members :
* Bharat Sharma
* Debadarshy Dash
* Partha Dutta
* Tejas Pathak
* Vaibhav Singhal
*
**************************************************************/
#include <Arduino.h>
// DHT Functions
extern void dhtInit(void);
extern bool readTempAndHumidity(float *t, float *h);
// LCD display functions
extern void lcdInit(void);
extern void lcdClear(void);
extern void displayData(float temp, float humidity);
extern void displaySplashScreen(void);
// Fan functions
extern void fanInit(void);
extern void changeFanSpeed(float temp, float humidity);
// Light functions
extern void lightInit(void);
extern void checkLight(void);
// Door functions
extern void doorInit(void);
extern void controlDoor(void);
// Setup sensors / actuators
void setup()
{
// Init console
Serial.begin(115200);
lcdInit();
// Display splash screen
displaySplashScreen();
// Init DHT sensor
dhtInit();
// light init
lightInit();
// Init door
doorInit();
// Init fan
fanInit();
// Display splash screen for 1 sec
delay(1000);
// Clear the screen
lcdClear();
}
// Main loop
void loop() {
float temp = 0.0;
float humidity = 0.0;
// Open or close door
controlDoor();
// Check light intensity and switch on light if needed
checkLight();
// Check temp and humidity
if (true == readTempAndHumidity(&temp, &humidity))
{
// Display temp and humidity
displayData(temp, humidity);
// Change fan speed if needed
changeFanSpeed(temp, humidity);
}
}