Sie sind auf Seite 1von 72

CERTIFICATE

Certified that the project work entitled “Home Automation System” being
submitted by Ankit (1702914908) for the partial fulfillment of MCA-IV
offered by Dr. A.P.J. Abdul Kalam Technical University during the
academic year 2017-2018 is an original work carried out by the student
under my supervision, and this work has not formed the basis for the award
of any degree, diploma or such other titles.

Supervisor
Mr. Prashant Agrawal
Associate Professor
KIET Group of Institutions, Ghaziabad

External Examiner

Dr. Ajay Kumar Shrivastava


Head of Department
Department of Computer Applications
KIET Group of Institutions

Date:

i
CERTIFICATE

Certified that the project work entitled “Home Automation System” being
submitted by Lalit Ujjwal (1702914928) for the partial fulfillment of
MCA-IV offered by Dr. A.P.J. Abdul Kalam Technical University during
the academic year 2017-2018 is an original work carried out by the student
under my supervision, and this work has not formed the basis for the award
of any degree, diploma or such other titles.

Supervisor
Mr. Prashant Agrawal
Associate Professor
KIET Group of Institutions, Ghaziabad

External Examiner

Dr. Ajay Kumar Shrivastava


Head of Department
Department of Computer Applications
KIET Group of Institutions

Date:

ii
CERTIFICATE

Certified that the project work entitled “Home Automation System” being
submitted by Sumit Malik (1702914943) for the partial fulfillment of
MCA-IV offered by Dr. A.P.J. Abdul Kalam Technical University during
the academic year 2017-2018 is an original work carried out by the student
under my supervision, and this work has not formed the basis for the award
of any degree, diploma or such other titles.

Supervisor
Mr. Prashant Agrawal
Associate Professor
KIET Group of Institutions, Ghaziabad

External Examiner

Dr. Ajay Kumar Shrivastava


Head of Department
Department of Computer Applications
KIET Group of Institutions

Date:

iii
CERTIFICATE

Certified that the project work entitled “Home Automation System” being
submitted by Udai Pratap Singh (1702914944) for the partial fulfillment
of MCA-IV offered by Dr. A.P.J. Abdul Kalam Technical University during
the academic year 2017-2018 is an original work carried out by the student
under my supervision, and this work has not formed the basis for the award
of any degree, diploma or such other titles.

Supervisor
Mr. Prashant Agrawal
Associate Professor
KIET Group of Institutions, Ghaziabad

External Examiner

Dr. Ajay Kumar Shrivastava


Head of Department
Department of Computer Applications
KIET Group of Institutions

Date:

iv
ACKNOWLEDGEMENT

It plunges us in exhilaration in taking privilege in expressing our heartfelt


gratitude to Dr. Ajay Kumar Shrivastava , Head of Department of
Computer Applications, KIET Group of Institutions, for providing every
facility, constant supervision. It gives us immense pleasure to acknowledge
a debt of gratitude especially to our project incharge Mr. Prashant
Agrawal, for their constant encouragement, suggestions, constant
supervision, and abundant support throughout our project.
Thanks to all the teaching and non- teaching staff of KIET Group of
Institutions, for their support and also to our Team-mates for their valuable
Co-Operation.

ANKIT
LALIT UJJWAL
SUMIT MALIK
UDAI PRATAP SINGH

v
ABSTRACT

This project presents the overall design of “Home Automation System


(HAS)” with low cost and wireless system. This system is designed to assist
and provide Support in order to fulfill the needs of elderly and disabled in
home. Also, the smart home concept in the system improves the standard
living at home. The switch mode is used to control the home appliances.
The main control system implements wireless technology to provide remote
access from smart phone. The design remains the existing electrical
switches and provides more safety control on the switches with low voltage
activating method. The switches status is synchronized in all the control
system whereby every user interface indicates the real time existing
switches status. The system intended to control electrical appliances and
devices in house with relatively low cost design, user-friendly interface and
ease of installation.

vi
TABLE OF CONTENT

TOPIC Page No.


Certificate i
Acknowledgement Ii
Abstract Iii
CHAPTER 1: PROJECT OVERVIEW 1-5
1.1 Introduction
1.2 Problem Statement
1.3 Objectives
1.4 Scope
1.5 Applications
1.6 Project Features
CHAPTER 2 : LITERATURE REVIEW 6-9
CHAPTER 3 : FEASIBILITY ANALYSIS 10-11
3.1 Economic Feasibility
3.2 Technical Feasibility
3.3 Operational Feasibility
CHAPTER 4 : PROJECT MANAGEMENT 12-15
4.1 Waterfall Model
4.2 Block Diagram
4.3 Gantt Chart

vii
CHAPTER 5 : APPLICATION DESCRIPTION 16-20
CHAPTER 6 : INTERFACE REQUIREMENTS 21-47
6.1 Customer Interface
6.2 Hardware Interface
6.3 Software Interface
CHAPTER 7 : APPLICATION SECURITY 48-53
7.1 Common Security Threats
7.2 Technical Security Features
CHAPTER 8 : RESULT & DISCUSSIONS 54-55
8.1 Problem Faced
CHAPTER 9 : ADVANTAGES 56-58
CHAPTER 10 : LIMITATIONS & FUTURE 59-61
10.1 Limitations
10.2 Future Enhancement
10.3 Budget Analysis
CHAPTER 11 : CONCLUSION & BIBLIOGRAPHY 62-63

viii
TABLE OF FIGURES

Figure No. Figure Name Page No.

Figure 4.1 Waterfall Model 12


Figure 4.2 Block Diagram 14
Figure 4.3 Gantt Chart 15
Figure 5.1 Screenshot 1 16
Figure 5.2 Screenshot 2 17
Figure 5.3 Screenshot 3 18
Figure 5.4 Screenshot 4 19
Figure 5.5 Screenshot 5 20
Figure 6.1 Arduino UNO 23
Figure 6.2 Bluetooth HC-05 27
Figure 6.3 Arduino &Bluetooth Connection 30
Figure 6.4 Relay Circuit 32
Figure 6.5 Relay & Arduino Connection 34
Figure 6.6 Jumper Wires 35
Figure 6.7 Android Architecture 42

ix
CHAPTER 1

PROJECT OVERVIEW

1.1: INTRODUCTION

Home Automation is automation of home, housework or


household activity. In other words it refers to use of IT/computer to
control home appliances. It enables electrical appliances in a house
with an android application. For example: It can include centralized
control of lighting, fans, AC’s, etcwith our smart phone using an
application.

In today's IT world, home automation is being popular due to


easiness, flexible means of viewing/monitoring and controlling the
appliances and other things according to users comfort and needs.
The challenging part lies in simplicity and cost of installing them in
home and varies with increasing number of services to be monitored
and controlled. This project named 'HOME AUTOMATION’ is idea
of home automation using android.

1
The popularity of home automation has been increasing greatly
in recent years due to considerable affordability and simplicity
through smartphone and tablet connectivity.

Due to the advancement of wireless technology, there are several


different of connections are introduced such as GSM, WIFI, and
Bluetooth. Each of the connection has their own unique
specifications and applications. Among the four popular wireless
connections that often implemented in HA project, WIFI is being
chosen with its suitable capability. The capabilities of WIFI are more
than enough to be implemented in the design. Also, most of the
current laptop/notebook or Smartphone come with built-in WIFI
adapter. It will indirectly reduce the cost of this system. In this
project Bluetooth connectivity is used to connect the home
appliances with our smart phone using an android application.

The android running OS in any phone connected to a network


can access the status of the home appliances via an application. It
presents the design and implementation of automation system that
can monitor and control home appliances via android phone or tablet.

2
1.2: PROBLEM STATEMENT

There is a great energy crisis in current situation of our country.


Moreover, people have become negligent in proper utilization of the
available energy. People often forget to turn off the light sources and
other home appliance while staying out from home. Even in those
situations, application of home automation makes it possible to
control them from a distant place in easy way with our smartphone.

People are constantly running from place to place, working to


accomplish everything on our never-ending “to-do” list. Because of
the home automation system, we never have to worry about opening
the door, switching off the appliances and so on. In short, we can
save precious time and experience more daily productivity. And this
will be also helpful for the physically handicapped people and old
age people, who are unable to even walk properly.

1.3: OBJECTIVES

The main objectives of our project are as follows:

i. To remotely control home appliances and monitor them.

ii. To save time and utilize the energy efficiently.

3
iii. To provide ease to the old age people or physically handicapped
people, who are unable to even walk properly.

1.4: SCOPES

The project aims at designing a prototype for controlling the


home appliances that can be controlled wirelessly via an application
that provides the features of speech
recognition, video streaming, and switch mode. An application is run
on android device. The system can be used in wide range of areas.
The system integrated with different features can be applied in the
following fields.
• The system can be used in home, small offices to the big malls The
system can be used from home to offices to control the electrical
appliances.
• For remote access of appliances in internet or intranet. The
home/office appliances can be controlled in intra-network or can be
accessed via internet.
• For the development of technology friendly environment The
system incorporates the use of technology and making smart home
automation. By the use of day to day gadgets we can utilize them for
different prospective.

4
1.5: APPLICATIONS

The application includes remote controlling of home appliances


and lighting systems in an easy way. Also, home security and
monitoring can be achieved.

1.6: PROJECT FEATURES

The features of our project can be highlighted in following points:

i. Remote control of home appliances from smart phone using app.


ii. Considerable reduction in electricity bills with efficient energy
utilization.

5
CHAPTER 2

LITERATURE REVIEW

As per our survey, there exist many systems that can control
home appliances using android based phones/tablets. Each system
has its unique features. Currently certain companies are officially
registered and are working to provide better home automation system
features. Following models describes the work being performed by
others. N. Sriskanthan explained the model for home automation
using Bluetooth via PC. But unfortunately the system lacks to
support mobile technology.

Muhammad Izhar Ramli designed a prototype electrical device


control system using Web. They also set the server with auto restart
if the server condition is currently down. Hasan has developed a
telephone and PIC remote controlled device for controlling the
devices pin check algorithm has been introduced where it was with
cable network but not wireless communication.

Amul Jadhav developed an application in a universal XML


format which can be easily ported to any other mobile devices rather
than targeting a single platform. Pratik Gadtaula of Telemark

6
University College, Faculty of Technology has done a Master’s thesis
on “Home Automation” [5]. This project of his is quite interesting
and challenging on the other hand. The author has developed a home
automation system which is quite similar to the concept we’re trying
to implement in our project. His H.A system has got Raspberry pi
tied together with Arduino controller for the controlling of a number
of devices, unlike ours. Similarly, his project has conceptualized to
integrate both the LAN network and Internet for two different aspect
of the same project idea, however has not managed to do so. Also, he
uses a website based user side application for controlling the home
appliances through a web browser, this is striking difference between
his project and what we’re trying to do.

Next project we looked up to, was “Android Controlled Home


Automation” [6], a project performed by Sabin Adhikari and co. from
Kathmandu Engineering College, Electronics faculty. What they’ve
succeeded to do is built a home automation system which is
controlled by an android app, much like ours, and has Google based
voice command system. Their hardware requirements are closely
related to ours. Their work includes video streaming from an IP
camera to the android device and other home appliances control
system. Their project is entirely based on local network connection
using Wi-Fi. This is also a point where our project seems to improve
by integrating both local network and Internet connection, to allow
remotely control of home appliances.

7
Apart from the actual projects we consulted, we also did some
research on the background of this field, studied about the basics and
foundations necessary to carry out this project. For instance, we went
through the book “Raspberry Pi Home Automation with Arduino” by
Andrew K. Dennis. It’s an excellent read for the beginners to jump
into the field of Home Automation. It deals with the necessary
background details required to build a H.A system. It talks about
Raspberry Pi, Arduino controller, database design and all sorts of
things.

Another one good read is “Getting Started with Raspberry Pi” by


Matt Richardson and Shawn Wallace. It covers a great deal of
information about the core of our project that is Raspberry Pi. It deals
with lots of things that can be done with a Raspberry Pi. It explains
the procedure of building some simple yet innovative projects with
lots of application packages that come with Raspberry Pi.

Last but not the least, the book “Designing the Internet of
Things” by Adrian McEwen and co. gives a great deal of knowledge
on the concept of Internet of Things which ranges from the day to
day examples of IoT based projects, the information of taking you
prototype to manufacturing. This book is really a good take on IT
based entrepreneurship.

8
Other helpful resources are the online sources like official
Raspberry Pi documentation and resource site [7] which has detailed
information about how to get started with the Raspberry Pi,
configuration details, forum discussions and whole lot of useful stuffs
like setting up the apache server on pi. Also, it has information
regarding setting up the Raspberry Pi camera module, taking pictures
and video using the Python pi camera module, connecting a physical
button with the GPIO pins and programming it to control the camera.

Likewise, some YouTube tutorial lessons really helped as well.


A really good explanation for the YouTube live streaming from
Raspberry Pi was due to blog of Max Ogden [8]. Similarly, from the
site of tutorials-point [9], we learnt connecting the MySQL database
from Python using MySQLdb library connector. The book on
"Networking and Web application using Raspberry pi, Arduino and
Teensy" by Yury Magda gives the knowledge on connecting
raspberry pi with Arduino using serial.

9
CHAPTER 3

FEASIBILITY ANALYSIS

This project can be implemented using affordable electronic and


software technology making it economically, technically and
operationally feasible.

3.1: ECONOMIC FEASIBILITY

This project is based on android phone based and few electronic


components like Bluetooth HC-05, relay circuit, Aurdino device.
which are affordable, making it economically feasible to implement.

3.2: TECHNICAL FEASIBILITY

This project is based on wireless technology and embedded


systems which are reasonably in phase with currently used
technology. Therefore, it is very much favoured by the technology.

10
3.3: OPERATIONAL FEASIBILITY

This software will have very easy to use, user friendly interface
so it will be pretty much operable by anyone having little experience
of using android phone. It could be helpful for physically disabled
person too, controlling home appliances with the click of a button.
So it is operationally feasible.

11
CHAPTER 4

PROJECT MANAGEMENT

4.1: WATERFALL MODEL

This project constituted development of application as its major part as


well as the hardware to control home appliances. Management of any
project has several steps or processes in it. So, our projects can be described
under the following steps-:

Figure 4.1: Waterfall Model

12
4.1.1: Experimentation

In this step, we were discussing about the necessary equipments


and materials. We were studying about the similar projects, gathering
the information of programming language to be used. We were
developing simple algorithms and flowchart.
4.1.2: Design

In this phase, we were designing the layout of the application.


The necessary features to be included. We were designing the power
strip to connect the home appliances that can be controlled via GPIO
pins.

4.1.3: Development and Testing

In this phase, the development of application was performed.


The bugs were identified and removed. We consulted many software
experts for the evaluation of our application. Hardware design
includes the design of power strip.

13
4.2: BLOCK DIAGRAM

Android Bluetooth
Application Device

Arduino UNO

Relay 1 Relay 2 Relay 3 Relay 4

Appliance 1 Appliance 2 Appliance 3 Appliance 4

Figure 4.2: Block Diagram

14
4.3: GANTT CHART

Gantt Chart
23-Jan-18 12-Feb-18 4-Mar-18 24-Mar-18 13-Apr-18 3-May-18 23-May-18

Requirements Gathering

Feasibility Study

Analysis

Design

Implementation

Finalization & Maintainance

Finalization & Implementatio Feasibility Requirements


Design Analysis
Maintainance n Study Gathering
Start Date 25-Apr-18 29-Mar-18 13-Mar-18 2-Mar-18 15-Feb-18 23-Jan-18
Days To Complete 15 31 17 13 19 25

Figure 4.3: Gantt Chart

15
CHAPTER 5

APPLICATION DESCRIPTION

Application Consists of Graphical User Interfaces. It consists of following


different functions.
1. First open the application named Send Data Arduino.

Figure 5.1: Screenshot 1

16
2. Then home page of the application will be opened and looks like this:

Figure 5.2: Screenshot 2

17
3. Then application will request to open the Bluetooth, if already open then
it will show 4 switches to operate with.

Figure 5.3: Screenshot 3

18
4. Currently there is a timer based on seconds to automatically turn off the
particular appliance after the timer ends.

Figure 5.4: Screenshot 4

19
5. User can also rename the switch name as per the name of electrical
appliance connected to the switch.

Figure 5.5: Screenshot 5

20
CHAPTER 6

INTERFACE REQUIREMENT

6.1: CUSTOMER INTERFACES

 The design or layout of our will be very clear and very interactive to
the customer.
 When the customer opens the application the home page will
appear.
 Then it will ask you to add an electrical device you have to control.

6.2: HARDWARE INTERFACES

1. Arduino Uno
2. Bluetooth HC 05
3. 4- Channel Relay Circuit
4. Jumper Wires
5. Android Phone
6. AC Power Adapter

21
6.2.1: Arduino Uno

The Arduino UNO is a widely used open-source microcontroller board


based on the micro-controller and developed by Aurdino.cc. The board is
equipped with sets of digital and analog input/output (I/O) pins that may be
interfaced to various expansion boards (shields) and other circuits. The
board features 14 Digital pins and 6 Analog pins. It is programmable with
the Arduino IDE (Integrated Development Environment) via a type B USB
cable. It can be powered by a USB cable or by an external 9 volt battery,
though it accepts voltages between 7 and 20 volts. It is also similar to the
Arduino Nano and Leonardo. The hardware reference design is distributed
under a Creative commons Attribution Share-Alike 2.5 license and is
available on the Arduino website. Layout and production files for some
versions of the hardware are also available. "Uno" means one in Italian and
was chosen to mark the release of Arduino Software (IDE) 1.0.The Uno
board and version 1.0 of Arduino Software (IDE) were the reference
versions of Arduino, now evolved to newer releases.[ The Uno board is the
first in a series of USB Arduino boards, and the reference model for the
Arduino platform. The ATmega328 on the Arduino Uno comes
preprogrammed with a boot loader that allows to upload new code to it
without the use of an external hardware programmer. It communicates
using the original STK500 protocol. The Uno also differs from all
preceding boards in that it does not use the FTDI USB-to-serial driver chip.
Instead, it features the Atmega16U2 (Atmega8U2 up to version R2)
programmed as a USB-to-serial converter. The Arduino UNO is generally

22
considered the most user-friendly and popular board, with boards being sold
worldwide for less than 5$.

Pins

Figure 6.1: Arduino UNO


General Pin functions

 LED: There is a built-in LED driven by digital pin 13. When the pin is
HIGH value, the LED is on, when the pin is LOW, it's off.
 VIN: The input voltage to the Arduino/Genuino board when it's using an
external power source (as opposed to 5 volts from the USB connection
or other regulated power source). You can supply voltage through this
pin, or, if supplying voltage via the power jack, access it through this
pin.
 5V: This pin outputs a regulated 5V from the regulator on the board.
The board can be supplied with power either from the DC power jack (7
- 20V), the USB connector (5V), or the VIN pin of the board (7-20V).
Supplying voltage via the 5V or 3.3V pins bypasses the regulator, and
can damage the board.

23
 3V3: A 3.3 volt supply generated by the on-board regulator. Maximum
current draw is 50 mA.
 GND: Ground pins.
 IOREF: This pin on the Arduino/Genuino board provides the voltage
reference with which the microcontroller operates. A properly
configured shield can read the IOREF pin voltage and select the
appropriate power source or enable voltage translators on the outputs to
work with the 5V or 3.3V.
 Reset: Typically used to add a reset button to shields which block the
one on the board.
Special Pin Functions

Each of the 14 digital pins and 6 Analog pins on the Uno can be used as
an input or output, using pinMode(),digitalWrite(), and digitalRead()
functions. They operate at 5 volts. Each pin can provide or receive 20 mA
as recommended operating condition and has an internal pull-up resistor
(disconnected by default) of 20-50k ohm. A maximum of 40mA is the value
that must not be exceeded on any I/O pin to avoid permanent damage to the
microcontroller.The Uno has 6 analog inputs, labeled A0 through A5, each
of which provide 10 bits of resolution (i.e. 1024 different values). By
default they measure from ground to 5 volts, though is it possible to change
the upper end of their range using the AREF pin and the analogReference()
function.

24
In addition, some pins have specialized functions:

 Serial: pins 0 (RX) and 1 (TX). Used to receive (RX) and transmit (TX)
TTL serial data. These pins are connected to the corresponding pins of
the ATmega8U2 USB-to-TTL Serial chip.
 External Interrupts: 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(Pulse Width Modulation) 3, 5, 6, 9, 10, and 11 Can provide 8-bit
PWM output with the analogWrite() function.
 SPI(Serial Peripheral Interface): 10 (SS), 11 (MOSI), 12 (MISO), 13
(SCK). These pins support SPI communication using the SPI library.
 TWI(Two Wire Interface): A4 or SDA pin and A5 or SCL pin. Support
TWI communication using the Wire library.
 AREF(Analog References: Reference voltage for the analog inputs.

Communication

The Arduino/Genuino Uno has a number of facilities for


communicating with a computer, another Arduino/Genuino board, or other
microcontrollers. The ATmega328 provides UART TTL (5V) serial
communication, which is available on digital pins 0 (RX) and 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 16U2
firmware uses the standard USB COM drivers, and no external driver is

25
needed. However, on Windows, a inf file is required. The Arduino Software
(IDE) includes a serial monitor which allows simple textual data to be sent
to and from the board. The RX and TX LEDs on the board will flash when
data is being transmitted via the USB-to-serial chip and USB connection to
the computer (but not for serial communication on pins 0 and 1). A
SoftwareSerial library allows serial communication on any of the Uno's
digital pins.

Automatic (Software) Reset

Rather than requiring a physical press of the reset button before an


upload, the Arduino/Genuino Uno board is designed in a way that allows it
to be reset by software running on a connected computer. One of the
hardware flow control lines (DTR) of the ATmega8U2/16U2 is connected
to the reset line of the ATmega328 via a 100 nanofarad capacitor. When
this line is asserted (taken low), the reset line drops long enough to reset the
chip.

This setup has other implications. When the Uno is connected to either
a computer running Mac OS X or Linux, it resets each time a connection is
made to it from software (via USB). For the following half-second or so,
the bootloader is running on the Uno. While it is programmed to ignore
malformed data (i.e. anything besides an upload of new code), it will
intercept the first few bytes of data sent to the board after a connection is
opened.

26
6.2.2: Bluetooth HC 05

Introduction

Figure 6.2: Bluetooth HC-05

HC-05 Bluetooth Module

HC‐05 module is an easy to use Bluetooth SPP (Serial Port Protocol)

module, designed for transparent wireless serial connection setup. The HC-
05 Bluetooth Module can be used in a Master or Slave configuration,
making it a great solution for wireless communication. This serial port
Bluetooth module is fully qualified Bluetooth V2.0+EDR (Enhanced Data
Rate) 3Mbps Modulation with complete 2.4GHz radio transceiver and

baseband. It uses CSR Blue core 04‐External single chip Bluetooth system

with CMOS technology and with AFH (Adaptive Frequency Hopping


Feature).

27
The Bluetooth module HC-05 is a MASTER/SLAVE module. By
default the factory setting is SLAVE. The Role of the module (Master or
Slave) can be configured only by AT COMMANDS. The slave modules
cannot initiate a connection to another Bluetooth device, but can accept
connections. Master module can initiate a connection to other devices. The
user can use it simply for a serial port replacement to establish connection
between MCU and GPS, PC to your embedded project, etc. Just go through
the datasheet for more details File:Datasheet.pdf

Hardware Features

 Typical ‐80dBm sensitivity.

 Up to +4dBm RF transmits power.


 3.3 to 5 V I/O.
 PIO (Programmable Input/Output) control.
 UART interface with programmable baud rate.
 With integrated antenna.
 With edge connector.

Software Features

 Slave default Baud rate: 9600, Data bits:8, Stop bit:1,Parity:No parity.

 Auto‐connect to the last device on power as default.

 Permit pairing device to connect as default.

28
 Auto‐pairing PINCODE:”1234” as default.

Pin Description

The HC-05 Bluetooth Module has 6pins. They are as follows:

ENABLE:
When enable is pulled LOW, the module is disabled which means the
module will not turn on and it fails to communicate. When enable is left
open or connected to 3.3V, the module is enabled i.e the module remains
on and communication also takes place.
Vcc:
Supply Voltage 3.3V to 5V
GND:
Ground pin
TXD & RXD:
These two pins acts as an UART interface for communication
STATE:
It acts as a status indicator. When the module is not connected to /
paired with any other Bluetooth device, signal goes Low. At this low state,
the led flashes continuously which denotes that the module is not
paired with other device. When this module is connected to/paired with
any other Bluetooth device, the signal goes high. At this high state, the led
blinks with a constant delay say for example 2s delay which indicates that
the module is paired.

29
6.2.3: Button Switch

This is used to switch the module into AT command mode. To enable


AT command mode, press the button switch for a second. With the help of
AT commands, the user can change the parameters of this module but only
when the module is not paired with any other BT device. If the module is
connected to any other Bluetooth device, it starts to communicate with that
device and fails to work in AT command mode.

6.2.4: Hardware Connections

As we know that Vcc and gnd of the module goes to Vcc and Gnd of
Arduino. The TXD pin goes to RXD pin of Arduino and RXD pin goes to
TXD pin of Arduino i.e. (digital pin 0 and 1).The user can use the on board
Led. But here, Led is connected to digital pin 12 externally for betterment
of the process.

Figure 6.3: Arduino & Bluetooth connection

30
Program for HC-05 Bluetooth Module

The program given below is the HC-05 Bluetooth module program.


This process is quite different from others since we are going to use android
mobile to control and communicate with arduino. Here the Bluetooth
module acts as an interface between our mobile and Arduino board. Before
getting into the execution process, follow the given procedure:

 First of all, the user should install an application called Bluetooth


SPP PRO from the playstore which is a free application.
 After installation, pair the Bluetooth module to your mobile as like
connecting one device to other using Bluetooth. The default pairing
code is 1234.
 Upload the given program to the Arduino Uno board. After uploading
the code, unplug the USB from the arduino.
 Now use external power adapter to power the Uno board.

The Bluetooth SPP PRO has three types of communication mode. Here
Byte stream mode is used to communicate. So select that mode and give the
input as 1, as soon as the input has given the led will turn on and for 0 led
will turn off.
6.2.5: 4 Channel 5V Relay Modules

This is a 4-channel LOW level trigger relay and it can be applied to


Arduino. Relays are suitable for driving high power electronic devices such

31
as lights, electric fans and air condition. A relay can be used to control high
voltages with a low voltage by connecting it to an MCU.

Figure 6.4: Relay Circuit

Principle of relay

See the picture below: A is an electromagnet, B armature, C spring, D


moving contact, and E fixed contacts. There are two fixed contacts, a
normally closed one and a normally open one. When the coil is not
energized, the normally open contact is the one that is off, while the
normally closed one is the other that is on.

Add a certain voltage to the coil and some currents will pass through
the coil thus generating the electromagnetic effect. So the armature
overcomes the tension of the spring and is attracted to the core, thus closing
the moving contact of the armature and the normally open contact (or you
may say releasing the former and the normally closed contact). After the
coil is de-energized, the electromagnetic force disappears and the armature

32
moves back to the original position, releasing the moving contact and
normally closed contact. The closing and releasing of the contacts results in
power on and off of the circuit.

Features

 Support control of 10A 30V DC and 10A 250V AC signals

 5V 8-Channel Relay interface board

 LOW level trigger, equipped with indicator easy to recognize the


working status

 Each relay has NO and NC ports, easier to connect and control the
connected devices

 Selection of plastic material for high temperature and better chemical


solution performance.

 PCB size: 5.7 x 13.8 cm

For Arduino

Step 1:
Connect the signal terminal IN4、IN5 of 8-channel relay to digital port
3,2 of the Sun Founder Arduino Mega2560 board, and connect an LED at
the output terminal. Pay attention to that there are only two sub modules of

33
the 8-channel relay are used in this example, but you can use the 4 sub
module freely.
4-channel relay------- Arduino Mega2560

IN4---------------- 3
IN5---------------- 2

Step 2:

Run the companion procedures 4_channel_relay_low of the Sun


Founder Arduino ATMega2560 board Please see the source code in at the
end of the page. Then you can see the LED cycle between on and off.

The actual figure is shown below:

Figure 6.5: Relay & Arduino Connection

34
6.2.6: Jumper Wire

Figure 6.6: Stranded 22AWG jump wires with solid tips.

A jump wire (also known as jumper, jumper wire, jumper cable,


DuPont wire, or DuPont cable – named for one manufacturer of them) is an
electrical wire, or group of them in a cable, with a connector or pin at each
end (or sometimes without them – simply "tinned"), which is normally used
to interconnect the components of a breadboard or other prototype or test
circuit, internally or with other equipment or components, without
soldering.

6.3: Software Interfaces

1. Android Studio3.0.1
2. Arduino IDE 1.8.2

6.3.1: Android Operating System

Android is a mobile operating system developed by Google based on


a modified version of the Linux Kernel and other open source software

35
and designed primarily for touchscreen mobile devices such
as smartphones and tablets. In addition, Google has further
developed Android TV for televisions, Android Auto for cars, and Wear
OS for wrist watches, each with a specialized user interface. Variants of
Android are also used on game consoles, digital cameras, PCs and other
electronics.

Initially developed by Android Inc., which Google bought in 2005,


Android was unveiled in 2007, with the first commercial Android
device launched in September 2008. The operating system has since gone
through multiple major releases, with the current version being 8.1 "Oreo",
released in December 2017. The core Android source code is known as
Android Open Source Project (AOSP), and is primarily licensed under
the Apache License.

Android is also associated with a suite of proprietary


software developed by Google, including core apps for services such
as Gmail and Google Search, as well as the application store and digital
distribution platform Google Play, and associated development platform.
These apps are licensed by manufacturers of Android devices certified
under standards imposed by Google, but AOSP has been used as the basis
of competing Android ecosystems, such as Amazon. com's Fire OS, which
utilize its own equivalents to these Google Mobile Services.

Android has been the best-selling OS worldwide on smartphones since


2011 and on tablets since 2013. As of May 2017, it has over two billion

36
monthly active users, the largest installed base of any operating system, and
as of 2017, the Google Play store features over 3.5 million apps.

Applications

Applications ("apps"), which extend the functionality of devices, are


written using the Android software development kit (SDK) and, often,
the Java programming language. Java may be combined
with C/C++, together with a choice of non-default runtimes that allow
better C++ support. The Go programming language is also supported,
although with a limited set of application programming interfaces (API). In
May 2017, Google announced support for Android app development in
the Kotlin programming language.

The SDK includes a comprehensive set of development tools, including


a debugger, software libraries, a handset emulator based on QEMU,
documentation, sample code, and tutorials. Initially, Google's
supported integrated development environment (IDE) was Eclipse using the
Android Development Tools (ADT) plugin; in December 2014, Google
released Android Studio, based on IntelliJ IDEA, as its primary IDE for
Android application development. Other development tools are available,
including a native development kit (NDK) for applications or extensions in
C or C++, Google App Inventor, a visual environment for novice
programmers, and various cross platform mobile web applications
frameworks. In January 2014, Google unveiled an framework based

37
on Apache Cordova for porting Chrome HTML 5 web applications to
Android, wrapped in a native application shell.

Android has a growing selection of third-party applications, which can


be acquired by users by downloading and installing the
application's APK (Android application package) file, or by downloading
them using an application store program that allows users to install, update,
and remove applications from their devices. Google Play Store is the
primary application store installed on Android devices that comply with
Google's compatibility requirements and license the Google Mobile
Services software. Google Play Store allows users to browse, download and
update applications published by Google and third-party developers; as of
July 2013, there are more than one million applications available for
Android in Play Store. As of July 2013, 50 billion applications have been
installed. Some carriers offer direct carrier billing for Google Play
application purchases, where the cost of the application is added to the
user's monthly bill. As of May 2017, there are over one billion active users
a month for Gmail, Android, Chrome, Google Play and Maps.

Due to the open nature of Android, a number of third-party application


marketplaces also exist for Android, either to provide a substitute for
devices that are not allowed to ship with Google Play Store, provide
applications that cannot be offered on Google Play Store due to policy
violations, or for other reasons. Examples of these third-party stores have
included the Amazon Appstore, GetJar, and SlideMe. F-Droid, another
alternative marketplace, seeks to only provide applications that are
distributed under free and open sourcelicenses.

38
Memory management

Since Android devices are usually battery-powered, Android is


designed to manage processes to keep power consumption at a minimum.
When an application is not in use the system suspends its operation so that,
while available for immediate use rather than closed, it does not use battery
power or CPU resources. Android manages the applications stored in
memory automatically: when memory is low, the system will begin
invisibly and automatically closing inactive processes, starting with those
that have been inactive for the longest amount of time. Lifehacker reported
in 2011 that third-party task killer applications were doing more harm than
good.

Development

Android is developed by Google until the latest changes and updates


are ready to be released, at which point the source code is made available to
the Android Open Source Project (AOSP), an open source initiative led by
Google. The AOSP code can be found without modification on select
devices, mainly the Nexus and Pixel series of devices. The source code is,
in turn, customized and adapted by original equipment
manufacturer (OEMs) to run on their hardware. Also, Android's source
code does not contain the often proprietary device drivers that are needed
for certain hardware components. As a result, most Android devices,

39
including Google's own, ultimately ship with a combination of free and
open source and proprietary software, with the software required for
accessing Google services falling into the latter category.

Linux kernel

Android's kernel is based on one of the Linux kernel's long-term


support (LTS) branches. As of 2017, Android devices mainly use versions
3.18 or 4.4 of the Linux kernel.[152] The actual kernel depends on the
individual device.

Android's variant of the Linux kernel has further architectural changes


that are implemented by Google outside the typical Linux kernel
development cycle, such as the inclusion of components like device trees,
ashmem, ION, and different out of memory (OOM) handling. Certain
features that Google contributed back to the Linux kernel, notably a power
management feature called "wakelocks", were initially rejected by mainline
kernel developers partly because they felt that Google did not show any
intent to maintain its own code Google announced in April 2010 that they
would hire two employees to work with the Linux kernel community, but,
the current Linux kernel maintainer for the stable branch, said in December
2010 that he was concerned that Google was no longer trying to get their
code changes included in mainstream Linux Google engineer Patrick Brady
once stated in the company's that "Android is not
Linux" with Computerworld adding that "Let me make it simple for you,

40
without Linux, there is no Android". Ars Technica wrote that "Although
Android is built on top of the Linux kernel, the platform has very little in
common with the conventional desktop Linux stack".

In August 2011, Linus Torvalds said that "eventually Android and


Linux would come back to a common kernel, but it will probably not be for
four to five years". In December 2011, Greg Kroah-Hartman announced the
start of Android Mainlining Project, which aims to put some
Android drivers, patches and features back into the Linux kernel, starting in
Linux 3.3. Linux included the autosleep and wakelocks capabilities in the
3.5 kernel, after many previous attempts at merger. The interfaces are the
same but the upstream Linux implementation allows for two different
suspend modes: to memory (the traditional suspend that Android uses), and
to disk (hibernate, as it is known on the desktop). Google maintains a public
code repository that contains their experimental work to re-base Android off
the latest stable Linux versions.

The flash storage on Android devices is split into several partitions,


such as for the operating system itself, and for user data and application
installations. In contrast to desktop Linux distributions, Android device
owners are not given root access to the operating system and sensitive
partitions such as /system are read-only. However, root access can be
obtained by exploiting security flaws in Android, which is used frequently
by the open-source community to enhance the capabilities of their
devices, but also by malicious parties to install viruses and malware.

41
Android is a Linux distribution according to the Linux
Foundation, Google's open-source chief Chris DiBona, and several
journalists. Others, such as Google engineer Patrick Brady, say that
Android is not Linux in the traditional Unix-like Linux distribution sense;
Android does not include the GNU C Library (it uses Bionic as an
alternative C library) and some of other components typically found in
Linux distributions.

With the release of Android Oreo in 2017, Google began to require that
devices shipped with new SoCs had Linux kernel version 4.4 or newer, for
security reasons. Existing devices upgraded to Oreo, and new products
launched with older SoCs, were exempt from this rule.

Software stack

Figure 6.7: Android's architecture diagram

On top of the Linux kernel, there are


the middleware, libraries and APIs written in C, and application
software running on an application framework which includes Java-

42
compatible libraries. Development of the Linux kernel continues
independently of Android's other source code projects.

Until version 5.0, Android used Dalvik as a process virtual


machine with trace-based just-in-time (JIT) compilation to run Dalvik "dex-
code" (Dalvik Executable), which is usually translated from the Java
bytecode. Following the trace-based JIT principle, in addition
to interpreting the majority of application code, Dalvik performs the
compilation and native execution of select frequently executed code
segments ("traces") each time an application is launched. Android 4.4
introduced Android Runtime (ART) as a new runtime environment, which
uses ahead-of-time (AOT) compilation to entirely compile the application
bytecode into machine code upon the installation of an application. In
Android 4.4, ART was an experimental feature and not enabled by default;
it became the only runtime option in the next major version of Android, 5.0.

For its Java library, the Android platform uses a subset of the now
discontinued Apache Harmony project. In December 2015, Google
announced that the next version of Android would switch to a Java
implementation based on the OpenJDK project.

Android's standard C library, Bionic, was developed by Google


specifically for Android, as a derivation of the BSD's standard C library
code. Bionic itself has been designed with several major features specific to
the Linux kernel. The main benefits of using Bionic instead of the GNU C
Library (glibc) or uClibc are its smaller runtime footprint, and optimization

43
for low-frequency CPUs. At the same time, Bionic is licensed under the
terms of the BSD licence, which Google finds more suitable for the
Android's overall licensing model.

Aiming for a different licensing model, toward the end of 2012, Google
switched the Bluetooth stack in Android from the GPL-licensed BlueZ to
the Apache-licensed BlueDroid.

Android does not have a native X Window System by default, nor does
it support the full set of standard GNU libraries. This made it difficult to
port existing Linux applications or libraries to Android, until version r5 of
the Android Native Development Kit brought support for applications
written completely in C or C++. Libraries written in C may also be used in
applications by injection of a small shim and usage of the JNI.

Since Marshmallow, "Toybox", a collection of command line utilities


(mostly for use by apps, as Android doesn't provide a command line
interface by default), replaced similar "Toolbox" collection.

Android has another operating system, Trusty OS, within it, as a part of
"Trusty" "software components supporting a Trusted Execution
Environment (TEE) on mobile devices." "Trusty and the Trusty API are
subject to change. [..] Applications for the Trusty OS can be written in
C/C++ (C++ support is limited), and they have access to a small C library.
[..] All Trusty applications are single-threaded; multithreading in Trusty
userspace currently is unsupported. [..] Third-party application development
is not supported in" the current version, and software running on the OS and
processor for it, run the "DRM framework for protected content. [..] There

44
are many other uses for a TEE such as mobile payments, secure banking,
full-disk encryption, multi-factor authentication, device reset protection,
replay-protected persistent storage, wireless display ("cast") of protected
content, secure PIN and fingerprint processing, and even malware
detection."

Open-source community

Android's source code is released by Google under an open source


license, and its open nature has encouraged a large community of
developers and enthusiasts to use the open-source code as a foundation for
community-driven projects, which deliver updates to older devices, add
new features for advanced users or bring Android to devices originally
shipped with other operating systems. These community-developed releases
often bring new features and updates to devices faster than through the
official manufacturer/carrier channels, with a comparable level of
quality; provide continued support for older devices that no longer receive
official updates; or bring Android to devices that were officially released
running other operating systems, such as the HP Touchpad. Community
releases often come pre-rooted and contain modifications not provided by
the original vendor, such as the ability to overclock or over/under volt the
device's processor. Cyanogen Mod was the most widely used community
firmware, now discontinued and succeeded by Lineages.

45
6.3.2: Android Studio

Android Studio is the official integrated development


environment (IDE) for Google's Android operating system, built
on JetBrains' IntelliJ IDEA software and designed specifically for Android
development. It is available for download
on Windows, macOS and Linux based operating systems. It is a
replacement for the Eclipse Android Development Tools (ADT) as primary
IDE for native Android application development.

Android Studio was announced on May 16, 2013 at the Google


I/O conference. It was in early access preview stage starting from version
0.1 in May 2013, then entered beta stage starting from version 0.8 which
was released in June 2014. The first stable build was released in December
2014, starting from version 1.0. The current stable version is 3.1 released in
March 2018.

Android Studio was announced on May 16, 2013 at the Google


I/O conference. It was in early access preview stage starting from version
0.1 in May 2013, then entered beta stage starting from version 0.8 which
was released in June 2014. The first stable build was released in December
2014, starting from version 1.0. The current stable version is 3.1 released in
March 2018.
Features

The following features are provided in the current stable version:

46
 Gradle-based build support
 Android-specific refactoring and quick fixes
 Lint tools to catch performance, usability, version compatibility and
other problems
 ProGuard integration and app-signing capabilities
 Template-based wizards to create common Android designs and
components
 A rich layout editor that allows users to drag-and-drop UI components,
option to preview layouts on multiple screen configurations.
 Support for building Android Wear apps
 Built-in support for Google Cloud Platform, enabling integration with
Firebase Cloud Messaging (Earlier 'Google Cloud Messaging') and
Google App Engine

47
CHAPTER 7

APPLICATION SECURITY

7.1: COMMON SECURITY THREATS

Research from Security Company Trend Micro lists premium service


abuse as the most common type of Android malware, where text messages
are sent from infected phones to premium-rate telephone numbers without
the consent or even knowledge of the user. Other malware displays
unwanted and intrusive advertisements on the device, or sends personal
information to unauthorised third parties. Security threats on Android are
reportedly growing exponentially; however, Google engineers have argued
that the malware and virus threat on Android is being exaggerated by
security companies for commercial reasons, and have accused the security
industry of playing on fears to sell virus protection software to
users. Google maintains that dangerous malware is actually extremely rare,
and a survey conducted by F-Secure showed that only 0.5% of Android
malware reported had come from the Google Play store.

In August 2015, Google announced that devices in the Google


Nexus series would begin to receive monthly security patches. Google also
wrote that "Nexus devices will continue to receive major updates for at least
two years and security patches for the longer of three years from initial

48
availability or 18 months from last sale of the device via the Google
Store." The following October, researchers at the University of
Cambridge concluded that 87.7% of Android phones in use had known but
unpatched security vulnerabilities due to lack of updates and support. Ron
Amadeo of Ars Technica wrote also in August 2015 that "Android was
originally designed, above all else, to be widely adopted. Google was
starting from scratch with zero percent market share, so it was happy to give
up control and give everyone a seat at the table in exchange for adoption.
[...] Now, though, Android has around 75–80 percent of the worldwide
smartphone market—making it not just the world's most popular mobile
operating system but arguably the most popular operating system, period.
As such, security has become a big issue. Android still uses a software
update chain-of-command designed back when the Android ecosystem had
zero devices to update, and it just doesn't work". Following news of
Google's monthly schedule, some manufacturers, including Samsung and
LG, promised to issue monthly security updates, but, as noted by Jerry
Hildenbrand in Android Central in February 2016, "instead we got a few
updates on specific versions of a small handful of models. And a bunch of
broken promises".

In a March 2017 post on Google's Security Blog, Android security


leads Adrian Ludwig and Mel Miller wrote that "More than 735 million
devices from 200+ manufacturers received a platform security update in
2016" and that "Our carrier and hardware partners helped expand
deployment of these updates, releasing updates for over half of the top 50
devices worldwide in the last quarter of 2016". They also wrote that "About

49
half of devices in use at the end of 2016 had not received a platform
security update in the previous year", stating that their work would continue
to focus on streamlining the security updates program for easier deployment
by manufacturers. Furthermore, in a comment to TechCrunch, Ludwig
stated that the wait time for security updates had been reduced from "six to
nine weeks down to just a few days", with 78% of flagship devices in North
America being up-to-date on security at the end of 2016.

Patches to bugs found in the core operating system often do not reach
users of older and lower-priced devices. However, the open-source nature
of Android allows security contractors to take existing devices and adapt
them for highly secure uses. For example, Samsung has worked with
General Dynamics through their Open Kernel Labs acquisition to
rebuild Jelly Bean on top of their hardened microvisor for the "Knox"
project.

Android smartphones have the ability to report the location of Wi-


Fi access points, encountered as phone users move around, to build
databases containing the physical locations of hundreds of millions of such
access points. These databases form electronic maps to locate smartphones,
allowing them to run apps like Foursquare, Google Latitude, Facebook
Places, and to deliver location-based ads. Third party monitoring software
such as TaintDroid, an academic research-funded project, can, in some
cases, detect when personal information is being sent from applications to
remote servers.

50
7.2: TECHNICAL SECURITY FEATURES

Android applications run in a sandbox, an isolated area of the system


that does not have access to the rest of the system's resources, unless access
permissions are explicitly granted by the user when the application is
installed, however this may not be possible for pre-installed apps. It is not
possible, for example, to turn off the microphone access of the pre-installed
camera app without disabling the camera completely. This is valid also in
Android versions 7 and 8.

Since February 2012, Google has used its Google


Bouncer malware scanner to watch over and scan apps available in the
Google Play store. A "Verify Apps" feature was introduced in November
2012, as part of the Android 4.2 "Jelly Bean" operating system version, to
scan all apps, both from Google Play and from third-party sources, for
malicious behavior. Originally only doing so during installation, Verify
Apps received an update in 2014 to "constantly" scan apps, and in 2017 the
feature was made visible to users through a menu in Settings.

Before installing an application, the Google Play store displays a list of


the requirements an app needs to function. After reviewing these
permissions, the user can choose to accept or refuse them, installing the
application only if they accept. In Android 6.0 "Marshmallow", the
permissions system was changed; apps are no longer automatically granted
all of their specified permissions at installation time. An opt-in system is

51
used instead, in which users are prompted to grant or deny individual
permissions to an app when they are needed for the first time. Applications
remember the grants, which can be revoked by the user at any time. Pre-
installed apps, however, are not always part of this approach. In some cases
it may not be possible to deny certain permissions to pre-installed apps, nor
be possible to disable them. The Google Play Services app cannot be
uninstalled, nor disabled. Any force stop attempt, result in the app restarting
itself. The new permissions model is used only by applications developed
for Marshmallow using its software development kit (SDK), and older apps
will continue to use the previous all-or-nothing approach. Permissions can
still be revoked for those apps, though this might prevent them from
working properly, and a warning is displayed to that effect.

In September 2014, Jason Nova of Android Authority reported on a


study by the German security company Fraunhofer AISEC in antivirus
software and malware threats on Android. Nova wrote that "The Android
operating system deals with software packages by sandboxing them; this
does not allow applications to list the directory contents of other apps to
keep the system safe. By not allowing the antivirus to list the directories of
other apps after installation, applications that show no inherent suspicious
behaviour when downloaded are cleared as safe. If then later on parts of the
app are activated that turn out to be malicious, the antivirus will have no
way to know since it is inside the app and out of the antivirus’ jurisdiction".
The study by Fraunhofer AISEC, examining antivirus
softwarefrom Avast, AVG, Bitdefender, ESET, FSecure, Kaspersky, Looko
ut, McAfee (formerly Intel Security), Norton, Sophos, and Trend Micro,

52
revealed that "the tested antivirus apps do not provide protection against
customized malware or targeted attacks", and that "the tested antivirus apps
were also not able to detect malware which is completely unknown to date
but does not make any efforts to hide its malignity".

In August 2013, Google announced Android Device Manager (renamed


Find My Device in May 2017), a service that allows users to remotely track,
locate, and wipe their Android device, with an Android app for the service
released in December. In December 2016, Google introduced a Trusted
Contacts app, letting users request location-tracking of loved ones during
emergencies.

53
CHAPTER 8

RESULT AND DISCUSSION

The final outcome of this project is a prototype for a simple home


automation system which can control home AC appliances with a touch of a
finger and is equally capable of monitoring with live stream video feed of
the site. On the front end, there is an android app to control the home
appliances and PCB board to which a number of home appliances are
connected.

8.1: PROBLEMS FACED

This project, by no means, completed without any problems and


difficulties along the way. Following are the problems faced during the
course of completion of this project.

Due to diverse nature of this project, the hardware components along


the same line, it was a difficult task to research on it and get devices that
perfectly matched our requirements on time. Moreover, some materials had
to be bought on authors' part.

54
As it was our first take on the hardware design, for instance, the
fabrication of PCB with varieties of electronic components, we faced a lot
of complexities and the overall process was a challenging one.

On the software part, android app development and server side


scripting were fairly easy. Nonetheless, they produced some critical
scenarios where it took some handsome amount of effort.

55
CHAPTER 9

ADVANTAGES

The advantages of this project are as follows: Firstly, it has the capacity
to be in command of the user-desired electrical device through real time
server. The live-in settings can be suggested when the class room is left
unattended during break time, holiday, and in-control of class room settings
through real time server.
The effective advantages of this Home Automation project can be discussed
under the following headings:

9.1: REDUCED INSTALLATION COST

First and foremost installation cost is least to establish the system. Just
need an internet network and little circuitry for developing the overall
system.

9.2: EASY DEPLOYMENT

For developing the system users need to install the little circuit board
containing a low cost microcontroller, motion sensor, BJT and relay with
the final appliances.

56
9.3: ACCESSIBILITY

For either commanding or updating database, it is possible to make


access from any sort of device like mobile phone, notebook, tablet pc,
desktop. Moreover, getting access from far away make the system more
fruitful to users.

9.4: HANDINESS

A real time server based home automation project vanish handiness.


Apart from the use of class room based electronics devices; anyone can
switch off any domestic electronics device like air conditioner, lights, fan
etc. which are still switched on when these are not in use.

9.5: ENERGY SAVINGS

By means of the real time server based sophisticated home automation


it is possible to cut down electricity bill; since it saves energy. This is fairly
possible because as when anyone doesn‘t require keeping the electronics
devices switched on or off; he can easily have control over the devices, and
this effectively saves energy. That ensures the optimal use of energy.

57
9.6: SAVES TIME

It is obvious that today‘s world is busier than in days what went before.
People are constantly running from place to place; work to accomplish
everything on the never-ending ―to-do‖ list. Just because of the up-to-the-
minute character of a house mechanization system, they never have to be
concerned about running house to open the door for their kids after school
or making a fast discontinue at home in order adjusting household items.

9.7: MAKES HOME AND BUSINESS SAFER

The phrase ―It‘s better to be safe than sorry‖ can be taken relatively
literally at this time. Shielding yourself, your house and your corporation is
a matter of common sense. Of course, it is always good to start at the basis:
fit excellent physical security, like burglary-proof windows and locks. But
also electronic security is, in various cases, a necessity; even a dread room
is among the possibilities.

58
CHAPTER 10

LIMITATIONS AND FUTURE ENHANCEMENT

This project is our take on trying to create a prototype of a fully


working Home Automation System. Although every effort has been made
to make it a complete and very much closer to an ideal solution product that
we wanted to achieve, there always remain areas where further
improvements are possible.

10.1: LIMITATIONS:

Since our project is just a prototype resembling a real world home


automation system, our project has following limitations:
1. No sensors for the real time data logging and automatic control of
appliances.
2. Delay of around 10 seconds in the on/off system of lighting.
3. Only limited no of appliances can be connected using this system.

59
10.2: FUTURE ENHANCEMENT

In future we are going to include the timer using clock of the smart
phone itself. Looking at the current situation we can build cross platform
system that can be deployed on various platforms like iOS, Windows.
Limitation to control only several devices can be removed by extending
automation of all other home appliances. Network can be connected to
internet and Security cameras can be controlled from other places, allowing
the user to observe activity around a house or business. Security systems
can include motion sensors that will detect any kind of unauthorized
movement and notify the user. Scope of this project can be expanded to
many areas by not restricting to only home.

10.3: BUDGET ANALYSIS

The following section consists of the budget analysis of the project, that
is, the total budget for the development of the project and the operational
and maintenance cost that follows after the implementation of the project.

10.3.1: Development cost

The development cost can be categorized into software and hardware


development cost.

60
10.3.2: Operation and Maintenance cost:

Overall electricity cost = Rs. 100 per month.

Internet Service Provider cost = Rs. 1500 per month (broadband internet)

Hardware and Software maintenance cost = Rs. 3500

Total operational cost: Rs. (100+1500+3500) = Rs. 5,100

61
CHAPTER 11

CONCLUSION AND BIBLIOGRAPHY

11.1: CONCLUSION

Hence, the idea to create a fully working home automation system with
facility to control and monitor appliances has been finally realized. The
output of this project is an array of home appliances that are controlled over
the internet with the help of a mobile app and the facility to stream the
video live, as well. This project is a successful outcome of continuous and
tireless effort from all the project members, supervisors, college faculty,
colleagues and other helping hands.

This project has been a really great experience and opportunity to learn
and to experiment. Moreover, the authors got the chance to closely
experiment and learn about what goes into designing and developing home
automation systems. We are very much delighted that we explored this
topic as our major project title and in a way, created a version of home
automation system of our own, and to be closely related with the
technology that is of a great interest of study and research today and is sure
to revolutionize the way of living of people in the days to come.

62
11.2: BIBLIOGRAPHY

1. Android 4 Application Development

2. Arduino Video Tutorial.

Websites:

1:https://www.developer.android.com/

2:https://www.stackoverflow.com/

63

Das könnte Ihnen auch gefallen