Team-H III BSC Ecs Final Year Project Report Chapter
Team-H III BSC Ecs Final Year Project Report Chapter
CHAPTER 1
INTRODUCTION
Home automation is a concept that seeks to give you the fingertip control over your
everyday home electrical appliances, allowing you to save money on lights, improve energy
efficiency, and make the most of your energy. In addition to lighting controls, the concept
may be used to create a centralized entertainment system for the home as well as a
comprehensive home security system. Internet of Things-based home automation systems,
as the name suggests, aim to operate all of your smart home's devices using internet
protocols or cloud-based computations.
In comparison to a wired system, the IoT-based home automation system offers a great deal
of flexibility. It also has several advantages, such as ease of use, installation simplicity,
avoiding the complexity of running wires and loose electrical connections, fault detection
and triggering simplicity, and mobility simplicity. The ESP8266 is used to scan an id card
using RFID technology. Attendance is kept on this as well. before entering the gate, a person
will present their RFID card, which will be read by the RFID Reader EM-18 module, to the
IoT.
CHAPTER 2
SYSTEM ARCHITECTURE
2.1 BLOCK DIAGRAM
called an interrogator or reader emits a signal to the tag using an antenna. The tag responds
with the information written in its memory bank. The interrogator will then transmit the
read results to an RFID computer program.
LCD display: LCDs (Liquid Crystal Displays) are used in embedded system applications
for displaying various parameters and status of the system. LCD 16x2 is a 16-pin device
that has 2 rows that can accommodate 16-character search. LCD 16x2 can be used in 4-bit
mode or 8-bit mode. It is also possible to create custom characters. It has 8 data lines and 3
control lines that can be used for control purposes.
Servo Motor: A servomotor is a rotary actuator or linear actuator that allows for precise
control of angular or linear position, velocity and acceleration. It consists of a suitable motor
coupled to a sensor for position feedback. It also requires a relatively sophisticated
controller, often a dedicated module designed specifically for use with servomotors.
IOT: The ESP8266 Wi-Fi Module is a self-contained SOC with integrated TCP/IP
protocol stack that can give any microcontroller access to your Wi-Fi network. The
ESP8266 is capable of either hosting an application or offloading all Wi-Fi networking
functions from another application processor. Each ESP8266 module comes pre-
programmed with an AT command set firmware, meaning, you can simply hook this up to
your Arduino device and get about as much Wi-Fi ability as a Wi-Fi Shield offers. The
ESP8266 module is an extremely cost effective board with a huge, and ever growing,
community.
In our present generation, we are upgrading to digitalized gadgets and other auxiliary
devices, such as smartphones and tablets. IoT-powered home automation is the subject of
this series, which we researched and completed a project on. One is that we utilized an
Arduino uno to read the RFID tag on the door, and the other is a Blynk IoT programme to
operate the NodeMCU-based home appliances. Arduino and LCD display and servo motor
are connected to the Arduino first, then the servo motor and LCD display are connected to
the Arduino. Once the card is scanned by RFID, commands are sent to the servo motor,
which opens the door, and the information about the people in the room is displayed.
The next diagram is based on the IoT Blynk programme for the Node MCU ESP8266. Wifi
is used to communicate with the module and deliver commands to it. The data must be
saved from a previous session by the key setting user, and then it is the player's turn.
Lighting and other home appliances can be turned on after the directions have been read.
3rd pin is connected to servo motor input pin, 5v to power supply and Gnd to servo motor
is connected.
5v and ground is connected to the 12c module for 16*2 LCD Display.
2.3.2 NODEMCU
Power supply of 5v is connected to the module and ground is also connected.
D1, D2, D5, D6 are connected to R1, R2, R3, R4.
SD3, D3, D7, RX are connected to push switch of S1, S2, S3, S4.
And lights are connected towards relay and AC supply of 220v.
This project uses Arduino Uno to control the motor. The Arduino Board is programmed
using the Arduino IDE software.
Moisture sensor measures the level of moisture in the soil and calculates the average
moisture value and sends the signal to the Arduino if watering is required. The water pump
supplies water to the plants until the desired moisture level is reached.
A moisture sensor is used for sensing the soil condition –to know whether the soil is wet
ordry, and the input signals are then sent to the microcontroller, which controls the whole
circuit. Whenever the soil condition is dry, the microcontroller sends command to relay and
the motor gets switched on and supplies water to the field. And if the soil gets wet, motor
gets switched off.
2.6 CONSTRUCTION
Test run.
CHAPTER 3
HARDWARE DESCRIPTION
Power Vin, 3.3V, Vin: Input voltage to Arduino when using an external
5V, GND power source.
5V: Regulated power supply used to power
microcontroller and other components on the board.
3.3V: 3.3V supply generated by on-board voltage
regulator. Maximum current draw is 50mA.
GND: ground pins.
reset Reset Resets the microcontroller.
DC Current on 50 mA
3.3V Pin
EEPROM 1 KB
Arduino Nano, Arduino Pro Mini, Arduino Mega, Arduino Due, Arduino Leonardo.
Overview
The 14 digital input/output pins can be used as input or output pins by using pin Mode (),
digital Read () and digital Write () functions in Arduino programming.
Each pin operates at 5V and can provide or receive a maximum of 40mA current, and has
an internal pull-up resistor of 20-50 KOhms which are disconnected by default. Out of these
14 pins, some pins have specific functions as listed below:
Serial Pins 0 (Rx) and 1 (Tx): Rx and Tx pins are used to receive and transmit TTL serial
data. They are connected with the corresponding ATmega328P USB to TTL serial chip.
External Interrupt Pins 2 and 3: These pins can be configured to trigger an interrupt on a
low value, a rising or falling edge, or a change in value.
PWM Pins 3, 5, 6, 9 and 11: These pins provide an 8-bit PWM output by using analog
Write () function.
SPI Pins 10 (SS), 11 (MOSI), 12 (MISO) and 13 (SCK): These pins are used for SPI
communication.
In-built LED Pin 13: This pin is connected with a built-in LED, when pin 13 is HIGH –
LED is on and when pin 13 is LOW, it’s off.
Along with 14 Digital pins, there are 6 analog input pins, each of which provide 10 bits
of resolution, i.e., 1024 different values. They measure from 0 to 5 volts but this limit can
be increased by using AREF pin with analog Reference () function.
Analog pin 4 (SDA) and pin 5 (SCA) also used for TWI communication using Wire
library.
AREF: Used to provide reference voltage for analog inputs with analog Reference ()
function.
Communication
Arduino can be used to communicate with a computer, another Arduino board or other
microcontrollers. The ATmega328P microcontroller provides UART TTL (5V) serial
communication which can be done using digital pin 0 (Rx) and digital pin 1 (Tx). An
ATmega16U2 on the board channels this serial communication over USB and appears as a
virtual com port to software on the computer. The ATmega16U firmware uses the standard
USB COM drivers, and no external driver is needed. However, on Windows, an .inf file is
required. The Arduino software includes a serial monitor which allows simple textual data
to be sent to and from the Arduino board. There are two RX and TX LEDs on the Arduino
board which will flash when data is being transmitted via the USB-to-serial chip and USB
connection to the computer (not for serial communication on pins 0 and 1).
A Software Serial library allows for serial communication on any of the Uno's digital pins.
The ATmega328P also supports I2C (TWI) and SPI communication. The Arduino software
includes a Wire library to simplify use of the I2C bus.
3.2 LCD
LCD (Liquid Crystal Display) is a type of flat panel display which uses liquid crystals in its
primary form of operation. LCD draws its definition from its name itself. It is combination
of two states of matter, the solid and the liquid. LCD uses a liquid crystal to produce a visible
image. LCD's technologies allow displays to be much thinner when compared to cathode ray
tube (CRT) technology.
• In an LCD television, the pixels are switched on or off electronically using liquid crystals
to rotate polarized light.
• LCDs are used in a wide range of applications, including LCD televisions, computer
monitors, instrument panels, aircraft cockpit displays, and indoor and outdoor signage.
• LCDs (Liquid Crystal Displays) are used in embedded system applications for displaying
various parameters and status of the system.
• LCD 16x2 is a 16-pin device that has 2 rows that can accommodate 16 characters each.
• LCD 16x2 can be used in 4-bit mode or 8-bit mode.
• It is also possible to create custom characters.
• It has 8 data lines and 3 control lines that can be used for control purposes.
• For more information about LCD 16x2 and how to use it, refer the topic LCD 16x2
module in the sensors and modules section.
Functions Used:
4. lcd.createChar(num,data)
This function is used to create a new custom character for use on the LCD. num is the
CGRAM location (0 to 7) at which the custom character is to be stored. data is array of eight
bytes which represent the custom character. Custom character can be of 5x8 pixels only.
Arduino to 16×2 LCD Module:
The RS pin of the LCD module is connected to digital pin 12 of the Arduino. The R/W pin
of the LCD is grounded. The enable pin of the LCD module is connected to digital pin 11
of the Arduino. In this project, the LCD module and Arduino are interfaced in the 4-bit
mode. This means only four of the digital input lines (DB4 to DB7) of the LCD are used.
This method is very simple, requires fewer connections, and you can almost utilise the full
potential of the LCD module. Digital lines DB4, DB5, DB6 and DB7 are interfaced to
digital pins 5, 4, 3 and 2 of the Arduino. The 10K potentiometer is used for adjusting the
contrast of the display. The 560 ohms resistor R1 limits the current through the back light
LED. The Arduino can be powered through the external power jack provided on the board.
The +5V required in some other parts of the circuit can be tapped from the 5V source on
the Arduino board. The Arduino can also be powered from the PC through the USB port.
3. 3 NODEMCU
Node MCU is an open source LUA based firmware developed for the ESP8266 Wi-Fi chip.
By exploring functionality with the ESP8266 chip, NodeMCU firmware comes with an
ESP8266 development board/kit, i.e., Node MCU Development board. Because NodeMCU
is an open source platform, their hardware design is editable, modifiable, and buildable.
The Node MCU Dev Kit/board consists of an ESP8266 Wi-Fi-enabled chip. The ESP8266
is a low-cost Wi-Fi chip developed by Express if Systems with the TCP/IP protocol. For
more information about ESP8266, you can refer to the ESP8266 Wi-Fi Module. Version 2
(V2) of the NodeMCU Dev Kit is available, i.e., the NodeMCU Development Board v1.0
(Version2), which typically comes in a black PCB.
The Node MCU Dev Kit has Arduino like Analog (i.e., A0) and Digital (D0-D8) pins on its
board. It supports serial communication protocols, i.e., UART, SPI, I2C, etc. Using such
serial protocols, we can connect it with serial devices like I2C enabled LCD displays,
Magnetometer HMC5883, MPU-6050 Gyro metre + Accelerometer, RTC chips, GPS
modules, touch screen displays, SD cards etc.
NodeMCU Development board is featured with Wi-Fi capability, analog pin, digital pins
and serial communication protocols. To get start with using NodeMCU for IoT applications
first we need to know about how to write/download NodeMCU firmware in NodeMCU
Development Boards. And before that where this NodeMCU firmware will get as per our
requirement. There is online NodeMCU custom builds available using which we can easily
get our custom NodeMCU firmware as per our requirement.
After setting up ESP8266 with NodeMCU firmware, let’s see the IDE (Integrated
Development Environment) required for development of Node MCU. NodeMCU with
ESPlorer IDE a scripts are generally used to code the Node MCU. Lua is an open source,
lightweight, embeddable scripting language built on top of C programming language.
Here is another way of developing NodeMCU with a well-known IDE i.e. Arduino IDE.
We can also develop applications on NodeMCU using Arduino development environment.
This makes easy for Arduino developers than learning new language and IDE for
NodeMCU.
NodeMCU has general purpose input output pins on its board as shown in above pinout
diagram. We can make it digital high/low and control things like LED or switch on it. Also,
we can generate PWM signal on these GPIO pins.
NodeMCU based ESP8266 has Hardware SPI (HSPI) with four pins available for SPI
communication. It also has SPI pins for Quad-SPI communication. With this SPI interface,
we can connect any SPI enabled device with NodeMCU and make communication possible
with it.
NodeMCU has I2C functionality support on ESP8266 GPIO pins. Due to internal
functionality on ESP-12E we cannot use all its GPIOs for I2C functionality. So, do tests
before using any GPIO for I2C applications.
NodeMCU based ESP8266 has two UART interfaces, UART0 and UART1. Since UART0
(RXD0 & TXD0) is used to upload firmware/codes to board, we can’t use them in
applications while uploading firmware/codes.
RFID tags are used in many industries. For example, an RFID tag attached to an automobile
during production can be used to track its progress through the assembly line; RFID-tagged
pharmaceuticals can be tracked through warehouses; and implanting RFID microchips in
livestock and pets enables positive identification of animals. Since RFID tags can be
attached to cash, clothing, and possessions, or implanted in animals and people, the
possibility of reading personally-linked information without consent has raised serious
privacy concerns.[2] These concerns resulted in standard specifications development
addressing privacy and security issues.
RFID WORKING:
RFID belongs to a group of technologies referred to as Automatic Identification and Data
Capture (AIDC). AIDC methods automatically identify objects, collect data about them,
and enter those data directly into computer systems with little or no human intervention.
RFID methods utilize radio waves to accomplish this. At a simple level, RFID systems
consist of three components: an RFID tag or smart label, an RFID reader, and an antenna.
RFID tags contain an integrated circuit and an antenna, which are used to transmit data to
the RFID reader (also called an interrogator). The reader then converts the radio waves to a
more usable form of data. Information collected from the tags is then transferred through a
communications interface to a host computer system, where the data can be stored in a
database and analysed at a later time.
RFID tag consists of an integrated circuit and an antenna. The tag is also composed of a
protective material that holds the pieces together and shields them from various
environmental conditions. The protective material depends on the application. For example,
employee ID badges containing RFID tags are typically made from durable plastic, and the
tag is embedded between the layers of plastic. RFID tags come in a variety of shapes and
sizes and are either passive or active. Passive tags are the most widely used, as they are
smaller and less expensive to implement. Passive tags must be “powered up” by the RFID
reader before they can transmit data. Unlike passive tags, active RFID tags have an on-
board power supply (e.g., a battery), thereby enabling them to transmit data at all times. For
a more detailed discussion, refer to this article: Passive RFID Tags vs. Active RFID Tags.
Smart labels differ from RFID tags in that they incorporate both RFID and barcode
technologies. They’re made of an adhesive label embedded with an RFID tag inlay, and
they may also feature a barcode and/or other printed information. Smart labels can be
encoded and printed on-demand using desktop label printers, whereas programming RFID
tags are more time consuming and requires more advanced equipment.
from other source, will be processed in feedback mechanism and output will be provided in
term of error signal. This error signal acts as the input for motor and motor starts rotating.
Now motor shaft is connected with potentiometer and as motor rotates so the potentiometer
and it will generate a signal. So as the potentiometer’s angular position changes, its output
feedback signal changes. After sometime the position of potentiometer reaches at a position
that the output of potentiometer is same as external signal provided. At this condition, there
will be no output signal from the amplifier to the motor input as there is no difference
between external applied signal and the signal generated at potentiometer, and in this
situation motor stops rotating.
controlled by applying the Electrical Pulse of proper width, to its Control pin.
Fig 3.9 Angular Rotation of the Servo Motor according to the Electrical Pulses
Servo motor can be rotated from 0 to 180 degree, but it can go up to 210 degrees, depending
on the manufacturing. This degree of rotation can be controlled by applying the Electrical
Pulse of proper width, to its Control pin. Servo checks the pulse in every 20 milliseconds.
Pulse of 1ms (1 millisecond) width can rotate servo to 0 degree, 1.5ms can rotate to 90
degrees (neutral position) and 2ms pulse can rotate it to 180 degrees. All servo motors work
directly with your +5V supply rails but we have to be careful on the amount of current the
motor would consume, if you are planning to use more than two servo motors a proper servo
shield should be designed.
INSIDE THE SERVO MOTOR:
Inside there is a pretty simple set-up: a small DC motor, potentiometer, and a control circuit.
The motor is attached by gears to the control wheel. As the motor rotates, the
potentiometer's resistance changes, so the control circuit can precisely regulate how much
movement there is and in which direction.
difference between its actual position and desired position. So, if the motor is near the
desired position, it will turn slowly, otherwise it will turn fast. This is called proportional
control.
WIRE CONFIGURATION:
● Brown-Ground wire connected to the ground of system
● Red -Powers the motor typically +5V is used
● Orange -PWM signal is given in through this wire to drive the motor.
The Servo motor is used in automatic door openers to control the door in public places
like supermarkets, hospitals and theatres.
Relay is one kind of electro-mechanical component that functions as a switch. The relay
coil is energized by DC so that contact switches can be opened or closed. A single channel
5V relay module generally includes a coil, and two contacts like normally open (NO) and
normally closed (NC). This article discusses an overview of the 5V relay module & its
working but before going to discuss what is relay module is, first we have to know what is
relay and its pin configuration. The pin configuration of the 5V relay module is shown
below. This module includes 6-pins where each pin and its functionality are discussed
below.
Normally Open (NO): This pin is normally open unless we provide a signal to the relay
modules signal pin. So, the common contact pin smashes its link through the NC pin to
make a connection through the NO pin.
Common Contact: This pin is used to connect through the load that we desire to switch by
using the module.
Normally Closed (NC): This NC pin is connected through the COM pin to form a closed
circuit. However, this NC connection will break once the relay is switched through
providing an active high/low signal toward the signal pin from a microcontroller.
Signal Pin: The signal pin is mainly used for controlling the relay. This pin works in two
cases like active low otherwise active high. So, in active low case, the relay activates once
we provide an active low signal toward the signal pin, whereas, in an active high case, the
relay will trigger once we provide a high signal toward the signal pin.
However, these modules generally work on an active high signal which will strengthen the
relay coil to make contact with the common terminal with the normally open terminal.
5V VCC: This pin needs 5V DC to work. So 5V DC power supply is provided to this pin.
Ground: This pin connects the GND terminal of the power supply.
The components in a 5v relay module with a single channel include a relay, output terminal,
status LED, power LED, freewheeling diode, input connector & switching transistor.
SPECIFICATIONS
The specifications of a 1- channel relay module include the following.
Voltage supply ranges from 3.75V – 6V
Quiescent current is 2mA
Once the relay is active then the current is ~70mA
The highest contact voltage of a relay is 250VAC/30VDC
The maximum current is 10A
Working
The relay uses the current supply for opening or closing switch contacts. Usually, this can
be done through a coil to magnetize the switch contacts & drags them jointly once activated.
A spring drives them separately once the coil is not strengthened. By using this system,
there are mainly two benefits, the first one is, the required current for activating the relay is
less as compared to the current used by relay contacts for switching. The other benefit is,
both the contacts & the coil is isolated galvanically, which means there is no electrical
connection among them.
How to Use/Relay Module Circuit Diagram?
The circuit diagram of the single-channel relay module circuit is shown below. In this
circuit, we can observe that how the relay module is activated and deactivated through a
digital signal. This signal is applied to a control pin of the relay module. The following
circuit diagram is the internal 5V single channel relay module diagram.
Android). The dashboard and Arduino connectivity are provided by & app store (for Apple)
(it is a virtual connectivity). Pushing and dragging widgets from the tools bar and assigning
them pins on the Arduino board are the simplest ways to programme Blynk. A conventional
Arduino board, without an internet shield, can be used for such a project if it is connected
to a computer with internet access and a mobile phone. The PC is responsible for ensuring
that the Arduino board is connected to the Internet and for uploading the Arduino code.
Installing the Blynk library and configuring it are both required steps in this process. Blynk's
Arduino code is structured in the same way as normal Arduino code, but it contains unique
portions for Android devices.
The following steps are necessary for the project to be created.
1. The first step is to download the Blynk app on your smartphone and create a simple
application, such as controlling a single LED.
2. Download and install the blynk v0.3.1 library on your computer. Blynk's Blynk library
has a script that allows you to set the correct port on your PC to connect with your Arduino
board.
3. It's now time to download and run the Arduino code (from the examples presented in
this work, or other).
4. Use your smartphone to run Blynk.
CHAPTER 4
SOFTWARE REQUIREMENTS
Software is a collection of instructions that enable the user to interact with a computer, its
hardware, or perform tasks. Without software, most computers would be useless. For
example, without your Internet browser software, you could not surf the Internet or read
this page and without an operating system, the browser could not run on your computer.
Software’s used are:
1. Arduino IDE
2. XAMPP
3. phpMyAdmin
4.1 ARDUINO IDE
The Arduino Integrated Development Environment - or Arduino Software (IDE) - contains
a text editor for writing code, a message area, a text console, a toolbar with buttons for
common functions and a series of menus. It connects to the Arduino and Genuino hardware
to upload programs and communicate with them.
Programs written using Arduino Software (IDE) are called sketches. These sketches are
written in the text editor and are saved with the file extension .ino. The editor has features
for cutting/pasting and for searching/replacing text. The message area gives feedback
while saving and exporting and also displays errors. The console displays text output by
the Arduino Software (IDE), including complete error messages and other information.
The bottom right hand corner of the window displays the configured board and serial port.
The toolbar buttons allow you to verify and upload programs, create, open, and save
sketches, and open the serial monitor
Upload - Compiles your code and uploads it to the confiigured board. See uploading
below for details.
Note: If you are using an external programmer with your board, you can hold down the
"shift" key on your computer when using this icon. The text will change to "Upload using
Programmer"
Open - Presents a menu of all the sketches in your sketchbook. Clicking one will
open it within the current window overwriting its content. Note: Due to a bug in Java, this
menu doesn't scroll; if you need to open a sketch late in the list, use the File
| Sketchbook menu instead.
#include<LiquidCrystal_I2C.>
#include <SPI.h>
#include <MFRC522.h>
#define RST_PIN 9
#define SS_PIN 10 bytereadCard[4];
byte a = 0;
LiquidCrystal_I2C lcd(0x27, 16, 2);
MFRC522 mfrc522(SS_PIN, RST_PIN);
void setup()
{
Serial.begin(9600);
lcd.init();
lcd.backlight();
while (!Serial);
SPI.begin();
mfrc522.PCD_Init();
delay(4);
mfrc522.PCD_DumpVersionToSerial();
lcd.setCursor(2, 0);
lcd.print("Put your card");
}
void loop()
{
if ( mfrc522.PICC_IsNewCardPresent())
{
return 0;
} if ( !mfrc522.PICC_ReadCardSerial())
{
return 0;
}
lcd.clear();
lcd.setCursor(0, 0);
lcd.print("Scanned UID");
a = 0;
Serial.println(F("Scanned PICC's UID:"));
for ( uint8_t i = 0; i < 4; i++) // readCard[i] = mfrc522.uid.uidByte[i];
Serial.print(readCard[i], HEX); Serial.print(" "); lcd.setCursor(a, 1);
lcd.print(readCard[i], HEX); lcd.print(" ");
delay(500);
a += 3;
}
Serial.println("");
mfrc522.PICC_HaltA();
return 1;
}
}
else {
digitalWrite(RelayPin1, HIGH); // turn off relay 1
toggleState_1 = 0;
Serial.println("Device1 OFF");
}
delay(100);
break;
case 2:
if (toggleState_2 == 0) {
digitalWrite(RelayPin2, LOW); // turn on relay 2
toggleState_2 = 1;
Serial.println("Device2 ON");
}
else {
digitalWrite(RelayPin2, HIGH); // turn off relay 2
toggleState_2 = 0;
Serial.println("Device2 OFF");
}
delay(100);
break;
case 3:
if (toggleState_3 == 0) {
digitalWrite(RelayPin3, LOW); // turn on relay 3
toggleState_3 = 1;
Serial.println("Device3 ON");
} else {
digitalWrite(RelayPin3, HIGH); // turn off relay 3
toggleState_3 = 0;
Serial.println("Device3 OFF");
}
delay(100);
break;
case 4:
if (toggleState_4 == 0) {
digitalWrite(RelayPin4, LOW); // turn on relay 4
toggleState_4 = 1;
Serial.println("Device4 ON");
}
else {
digitalWrite(RelayPin4, HIGH); // turn off relay 4
toggleState_4 = 0;
Serial.println("Device4 OFF");
}
delay(100);
break;
default : break;
}
}
void manual_control() {
else{
digitalWrite(wifiLed, LOW); //Turn ON WiFi LED
}}
void onSwitch1Change() {
if (switch1 == 1)
{
digitalWrite(RelayPin1, LOW);
Serial.println("Device1 ON");
toggleState_1 = 1;
}
else
{
digitalWrite(RelayPin1, HIGH);
Serial.println("Device1 OFF");
toggleState_1 = 0;
}}
void onSwitch2Change() {
if (switch2 == 1)
{
digitalWrite(RelayPin2, LOW);
Serial.println("Device2 ON");
toggleState_2 = 1;
} else {
digitalWrite(RelayPin2, HIGH);
Serial.println("Device2 OFF");
toggleState_2 = 0;
}}
void onSwitch3Change() {
if (switch3 == 1)
{
digitalWrite(RelayPin3, LOW);
Serial.println("Device2 ON");
toggleState_3 = 1;}
else{
digitalWrite(RelayPin3, HIGH);
Serial.println("Device3 OFF");
toggleState_3 = 0;
}}
void onSwitch4Change() {
if (switch4 == 1)
{
digitalWrite(RelayPin4, LOW);
Serial.println("Device4 ON");
toggleState_4 = 1;
}
else{
digitalWrite(RelayPin4, HIGH);
Serial.println("Device4 OFF");
toggleState_4 = 0;
}}
CHAPTER 5
RESULTS AND DISCUSSION
Home Automation devices based on the Internet of Things (IoT) are much more adaptable
than traditional wired systems. They have a number of advantages, such as being simple to
use and install, not requiring complicated wiring or loose electrical connections, being easy
to detect and trigger faults, and, perhaps most importantly, being mobile. The entire project
has been tested and ran in order to learn more about the findings. Other than that, it's an
evaluation of how well the project goes.
5.1 RFID BASED DOOR OPERATIONS:
CHAPTER 6
CONCLUSION
6.1 SUMMARY
Using RFID to close and open the door, the user can easily control their electrical home
appliances and home security as part of an IoT-based home automation system. The goal
of home automation is to use internet protocols to control all of the devices in the house.
We created this technology to be tested in a wide range of real-world situations. The data
is displayed on a liquid crystal display (LCD) to show whether or not it is correct. This
project uses an RFID sensor to open the door by scanning the student ID. When a person
correctly enters their id number, the LCD displays "door is open" and "door is closed" on
the screen, and the door opens. The LCD will display "wrong card" and the door will not
open if the id card is incorrect. To open and close the door, a servo motor is used. All of
these components are linked to an Arduino. NodeMCU was used to control the home
appliances via the blynk app, as well. The hotspot on your Android phone is what's keeping
it all together. The right people can be verified more quickly thanks to RFID. It reduces
the amount of time and money spent on manual labour. This project will be useful in the
future by modifying some of the devices that have already been developed.
In the future, the RFID module may be replaced with an AI system that recognizes and
responds to human requirements. LCD panels have been phased out in favor of OLED
displays. Entering an incorrect user name or password will trigger a security alert. Sending
alert messages by email or phone call is done using the GSM module. Home security is
enhanced by the addition of additional sensors such as thermostats and humidity sensors
as well as smoke detectors, temperature and CO2 sensors. Google Cloud IoT Core can be
used instead of the Blynk IoT app. Valves and chemise will be controlled by the Google
cloud IoT.
CHAPTER 7
BIBLIOGRAPHY
[2] ShopanDey,Ayon Roy and SandipDas, Home Automation Using Internet of Thing ,
IRJET, 2(3) (2016),1965-1970.
[3] VishwatejaMudiam Reddy, NareshVinay, TapanPokharna and Shashank Shiva
Kumar Jha, Internet of Things Enabled Smart Switch, Thirteenth International
Conference on Wireless and Optical Communications Networks (WOCN), Hyderabad,
(2016),1-4
[5] Shih-Pang Tseng, Bo-Rong Li, Jun-Long Pan, and Chia-Ju Lin, An Application of
Internet of Things with Motion Sensing on Smart House, International Conference on
Orange Technologies, Xian, (2014), 65-68.
[6] Mandurano, Justin, and Nicholas Haber. House Away: A home management system,
IEEE Long Island Systems, Applications and Technology Conference (LISAT),
Farmingdale, NY, (2012), 1-4.
[7] Zhen Bi, Smart home with ZigBee hardware simulation and performance evaluation,
International Conference on Mechatronic Sciences, Electric Engineering and Computer
(MEC), Shengyang, (2013), 2139-2142.
[8] S. Karaca, A. Şişman and İ. Savruk, A low cost smart security and home automation
system employing an embedded server and a wireless sensor network, International
Conference on Consumer Electronics - Berlin (ICCE-Berlin), Berlin,(2016), 73-77.
[9] T. Thaker, ESP8266 based implementation of wireless sensor network with Linux
based web-server, Symposium on Colossal Data Analysis and Networking (CDAN),
Indore, (2016), 1-5
[10] Y. P. Zhang, T. Liu, Z. X. Yang, Y. Mou, Y. H. Wei and D. Chen, Design of remote
control plug, 2015 IEEE International Conference on Applied Superconductivity and
Electromagnetic Devices (ASEMD), Shanghai, (2015), 29-30.