Vous êtes sur la page 1sur 69



Project Report submitted to

Chhattisgarh Swami Vivekanand Technical University Bhilai (India)

In partial fulfillment for award of the degree of



Electrical Engineering

Chandrasen(3072414008) Fiza Parveen(3072414013)

Deepak Patel(3072414009) Hariom Mehra(3072414015)
Deepti Ekka(3072414010) Harish Sahu(3072414016)
Devvrat Kashyap(3072414011) Harshita Bargah(3072414017)
Dheeraj Maurya(3072414012)

Under the Guidance of

Dr. A.K. Shukla

Dr. S.K. Singhai (H.O.D)

Department of Electrical Engineering



We the undersigned solemnly declare that the project report titled MICROPROCESSOR
own 0)work carried out during the course of our study under the supervision of Dr. A. K.

We assert that the statements made and conclusions drawn are an outcome of our work. We further
certify that

i. The work contained in the report is original and has been done by us under the general
supervision of our supervisor(s).

ii. The work has not been submitted to any other Institute for any other degree/diploma/certificate
in this university or any other University of India or abroad.

iii. We have followed the guidelines provided by the University in writing the report.

iv. Whenever we have used materials (data, theoretical analysis, and text) from other sources, we
have given due credit to them by citing them in the text of the report and giving their details in the

_________________ Name of the Student:- Chandrasen ,Enrollment No.: AO7671

_______________Name of the Student:- Deepak Patel ,Enrollment No.:AO7672

_______________Name of the Student:- Deepti Ekka ,Enrollment No.:AO7673

_______________Name of the Student:- Devvrat Kashyap ,Enrollment No.:AO7674

_______________Name of the Student:- Dheeraj Maurya ,Enrollment No.:AO7675

_______________Name of the Student:- Fiza Parveen, Enrollment No.: AO7676

_______________Name of the Student:- Hariom Mehra ,Enrollment No.: AO7678

_______________Name of the Student:- Harish Sahu ,Enrollment No.: AO7679

_______________Name of the Student:- Harshita Bargah, Enrollment No.:AO7681

Page | 2
This is to certify that the work incorporated in the project report entitled
BLUETOOTH is a record of work carried out by Chandrasen bearing Enrollment No.:
AO7671, Deepak Patel bearing Enrollment No.: AO7672, Deepti Ekka bearing Enrollment No
AO7673, Devvrat Kashyap bearing Enrollment No.: AO7674, Dheeraj Maurya bearing
Enrollment No.: AO7675, Fiza Parveen bearing Enrollment No.: AO7676 , Hariom Mehra
bearing Enrollment No.: AO7678, Harish Sahu bearing Enrollment No.: AO7679, Harshita
Bargah bearing Enrollment No.: AO7681 ,under my/our guidance and supervision for the award
of Degree of Bachelor of Engineering in the faculty of Department of Electrical Engineering of
Chhattisgarh Swami Vivekanand Technical University, Bhilai, Chhattisgarh, India.

To the best of my/our knowledge and belief the project report

i) Embodies the work of the candidates themselves,
ii) Has duly been completed,
iii) Fulfils the requirement BE degree of the University and
iv) Is up to the desired standard both in respect of contents and language for being referred to
the examiners.
___________________ _____________________ __________________

(Signature of the Supervisor) (Signature of the Supervisor)

(Name of the Supervisor) (Name of the Supervisor)

Forwarded to Chhattisgarh Swami Vivekanand Technical University, Bhilai


(Signature of the Head of the Department)

(Seal of the Department Electrical Engineering)

Page | 3
This is to certify that the project report entitled MICROPROCESSOR BASED

1. Chandrasen, Roll No.: 3072414008, Enrollment No.: AO7671

2. Deepak Patel, Roll No.: 3072414009, Enrollment No.:AO7672

3. Deepti Ekka, Roll No.: 3072414010 Enrollment No.:AO7673

4. Devvrat Kashyap , Roll No.: 3072414011, Enrollment No.:AO7674

5.Dheeraj Maurya, Roll No.:3072414012, Enrollment No.:AO7675

6. Fiza Parveen, Roll No.: 3072414013, Enrollment No.:AO7676

7. Hariom Mehra Roll No.:3072414015, Enrollment No.:AO7678

8. Harish Sahu Roll No.:3072414016, Enrollment No.:AO7679

9. Harshita Bargah Roll No.:3072414017, Enrollment No.:AO7681

has been examined by the undersigned as a part of the examination for the award of the degree
of Bachelor of Engineering in Electrical Engineering from Chhattisgarh Swami Vivekanand
Technical University, Bhilai.

___________________ __________________

(Signature of the External Examiner) (Signature of the Internal Examiner)

(Name of the External Examiner) (Name of the Internal Examiner)

Date: Date:

Designation: Designation:

Institute: Institute:

Page | 4
It is not possible to prepare a project report without the assistance and
encouragement of other people. This one is certainly no exception.

On the very outset of this report, I would like to extend my sincere and heartfelt
obligation towards all the personages who have helped me in this endeavor.
Without their active guidance, help, cooperation and encouragement.

I would not have made headway in the project.

I am ineffably indebted to DR. A.K. SHUKLA for conscientious guidance and

encouragement to accomplish this assignment.

I am thankful to my all faculty and DR. S.K. SINGHAI (H.O.D.


guidance and support on completion of this project in it presently.

I extend my gratitude to GOVT. ENGINEERING COLLEGE, BILASPUR for

giving me this opportunity.

I also acknowledge with a deep sense of reverence my gratitude towards my

parents and member of family, who has always supported me morally as well as

At last but not least gratitude goes to all my friends who directly or indirectly
helped me to complete this project report.

Page | 5

i. INTRODUCTION page no. 7-10

Research Background 7-8

Problem Statement 8-9

Objective of the study 9

Scope of study 9-10

Significance of the study 10


Small Introduction of our Project 11

Description of switching and monitoring system 12-16

ARDIUNO R3 17-21

Bluetooth module HC-05 22-25

16x2 LCD display 25-28

4-Channel 5V Relay 28-31

Transformer 32

7805 Voltage Regulator IC 32-33

iii. METHDLOGY page no. 34-55

Project Flow 34

Parts needed for the project 34-35

Page | 6

Block Diagram Description 36-37

Circuit diagram 38

Pin Connections 39

Working Principle 40

Coding and programming 41-44

Our program 45-54


What we have achieved 55-56

Problem faced in our project 56-60


How we can modify our project 61

Modify with wifi 61-62

Modify explain with GSM 63

Speed control of dc motor 64

Temperature measurement for load 65

Conclusion 66-67

vi. REFERENCE page no. 69

Page | 7

Research Background:

Microcontroller based our system is getting popular and widely used

in a lot of houses worldwide. It has tons of advantages to users even more to
the handicapped and /or elderly users in which it will make it easier for them
to control their appliance. Home automation system can be labeled to two
labeled to two medium in which how it is connected and they are either
wired or wirelessly connected. The main difference between these two kinds
is that home appliances are linked wirelessly a central controller if it a
wireless home automation system. On the other hand, the appliances are
connected to a central controller if the medium use wired communication
method. Wireless system had been introduced in order to dispose of wired
communication among home appliances. Arduino based, Bluetooth based
home automation will be applied.

Microcontroller based controlling technique (Automation) has been

around since the war I (1994) in fact, the television remote (a simple home
automation system ) was patented in 1893. Since then different automation
has envolved with a sharp rise after the second world war. Its growth has
been through various informal research and design by technology enthusiasts
who want a better way of getting things done at home without much effort
on their part.Early microcontroller began with labor saving machines. Self-

Page | 8
contained electric or gas powerd home appliances became viable in the
1990s with the introduction of electric power distribution .

In 1975, the first general purpose home automation network

technology was developed. It primarily uses electric power transmission
wiring for signaling and control where the signal involve brief radio
frequency burst of digital data and remains the most widely available .

Nowadays, everyone cannot be separated from their

smartphones. a number of five thousand individuals from USA, UK, South
Korea, India, China, South Africa, Indonesia and Brazil took a survey
regarding which was done by Timemagazine. The result proved most of
them is inseparable from their smartphones, eighty four percent allegedly
claimed that survive without their smartphones.

Another study shows that seventy-five percent of the

market share is of one hundred and six million android smartphone were
shipped in the second half of 2012. World-wide and it became the most
popular operating system known to man.

Problem Statement:

In the present day commercial and domestic microcontroller based system is

becoming essential for the purpose of improving our life condition.
Convenience and ease of using home appliances is what home automation is
offering. Our project offers a futuristic way of life in which an individual

Page | 9
gets to control his entire house using a smart phone, from turning on a TV to
locking/unlocking doors; it also offers an efficient use of energy.

But to get or acquire such system installed will cost a lot of money and that
is the major reason of why home automation has not received much demand
and attention, adding to that also the complexity of installing it and
configuring it. Thus it is essential to make it cost effective and easy to
configure, if this is granted to people then they will be willing to acquire it in
their homes, offices and schools. In other words, a system modification for
the home automation is required in order to lower the price of applying it to

Also commercial/home controlling system (Our Project) offers

ease of mind and body to handicapped and/or elders in their houses by just
one click to do what they want as stated above. A home network program is
developed using visual C++language. the proposed Bluetooth home
network system is composed of server interfaced program and client
program. The software controlling the Bluetooth module includes a set of
instruction which are necessary to initialize the Bluetooth device after power
on or reset , configure it to establish the connection the subsequent exchange
of data. The Bluetooth home network is organizedwhen the client Bluetooth
modules are connected with server Bluetooth, so this setup is not easily.
Despite increased understanding of computer based programming
capabilities, consumers will have little understanding of or interest in the
technical details.

Page | 10
Objective of the study:

To construct a wireless commercial/home automation system

controlled by a smartphone specifically an android device.
To design and implement a low cost, reliable and scalable home
automation system that can be used to remotely switch on or off any
commercial/household appliance.
Using a microcontroller to achieve hardware simplicity, low cost short
message service (SMS) for feedback and future improve to voice dial
from any phone to toggle the switch state.
To design a user friendly and a safe system to control home
appliances especially aimed to aid the elders and handicapped.
To save our essential time during to turn on our equipment, which
does not allow to go from one working place to switch place.
To update and consideration in latest technology and make cost
effective, power efficient, safely operating system.

Scope of study:

The project work is complete on its own in remotely switching on and

switching off of any electrical appliances not limited to household
appliances, and sends a feedback message indicating the new present state of
appliances.Both software programming and hardware implementation are as

Establishing a wireless network communication between the android

and the (remote system) automation system, using a microcontroller.

Page | 11
Create a simple yet reliable commercial/home automation system
using Arduino-Uno as a microcontroller that will be the medium
between the android and the home appliances.
To find a suitable app that will work efficiently with the Arduino-Uno
board in order to control the home appliances.
Program the Arduino-Uno board in a way that will let it interact with
the android app.
Control refers to sending command messages to a device to operate
the instrumentation and control system devices.

Significance of the study:

This study will be undertaken to create a home automation system at low

cost and easy to create, this will benefit both the manufacturer and the client.
It will help the manufacturer by making it easy and cheaper to apply it, and
it will also benefit the clients by making it cost effective and the most
important advantage is that it will make the house a much more convenient
place for the clients especially for the elders and the handicapped.

It is also helpful to reduce manpower, energy usage and also for

improving the quality and efficiency of any system. Present states of load
can be monitored easily by our project. These are most significant points of
our project.

Page | 12
Literature Review and Theory

Small Introduction of our Project

In our project we will design and implement an efficient load controlling and
monitoring system with an arduino board and Bluetooth. The system consist of
mainly three components i.e. a Bluetooth module ( HC05 ), arduino microcontroller
,and a relay circuit.

In our project Bluetooth is used as a communication channel between android

phone and arduino microcontroller hence it provides attractive user interface.

Description of switching and monitoring system

What is switching??

In electrical and electronics system, switching is the process by which we can

make or break an electrical circuit or we can say that switching is the process of
controlling, by which we can interrupt the flow of current .

A switch is used to control the circuit operation and user may be able to activate or
deactivate the whole or certain parts of the connected circuit.

Types of switching: generally switching can be categorized as

1. Switching through mechanical switches
2. Switching through electrical switches

Page | 13
Literature Review and Theory
We will discuss about switching through electrical and electronics switches
as we use this in our project, because the mechanical switches are user
manually operated, and the electrical switches are faster in response &
accurate than mechanical switches and can be switched automatically by an
electrical and electronic circuit like microcontroller or
microprocessor. There are most widely used electronic switches

Switching through transistor : if we apply a large amount of current

at the base of transistor then we can run this transistor in deep saturation
mode i.e. the transistor can be used as a switch.

Swithing through mosfet :mosfet can also be used for switching purpose at high
frequency (MHz). if we apply logic 1 by keeping in mindnthe maximum allowed
voltage for the base, then the resistance between drain and source become low and
current start flowing in this channel or vice versa.so lamp would not glow,i.e. it
would be off when the gate at logic 0.

Page | 14
Literature Review and Theory
When the base is at logic 1 lamp start glowing.

Switching through relay :A rely is an electromechanical device, which

consist of an electromagnet. When a current is flowing through the coil, it becomes

Page | 15
Literature Review and Theory
an electromagnet and this electromagnet can be used for switching purposes.
When, we energies the coil, lamp will glow.

When we de energies the coil, lamp would not glow.

Page | 16
Literature Review and Theory
What is monitoring??
Monitoring is the regular observation and recording of activities taking place in a

Monitoring also involves giving feedback about the progress of the project to
implementers of project. Monitoring is vey important in project planning and

Monitoring can be done by using following devices describe in below:

Monitoring with LED indicators : light emitting diode, is a semiconductor

the illuminates when electrical charges passes through it. LEDs are commonly
green, amber or red.the LED indicators are used to indicate mode of operation. On
many control panels, one finds indicator lights that indicate whether a device is
working or not. For the monitoring on the arduino we might want to consider a

Monitoring with piezo buzzer : piezo buzzer is an electronic device

commonly signaling a process that is happened through a sound, beep or etc. the
piezo buzzer sound through electricity. On bright light the piezo will only beep and
on dark light it will be short. Some uses of piezo buzzer : e.g. clock alarm,
car/truck reversing indicator, bell etc.so we see that this element is used on wide
area of electronics devices.

Page | 17
Literature Review and Theory
Monitoring with LCD display: LCD (liquid crystal display ), display the
text that we have programmed into the Arduino. Interfacing a character LCD to an
Arduino adds a nice element of readability in our project. These LCDscan be used
to display information from the arduino or any sensor connected to it.for example,
we can make temperature monitoring system which display the temperature on
arduino. An LCD is highly useful output device for arduino that shows the output.

Page | 18
Literature Review and Theory
The ardiuno is a microcontroller board based on the Atmega328 . it has 14 digital
pin input/output (of which 6 can be as pwm) ,6 analog inputs ,a 16 Mhz crystal
oscillator ,a USB connection ,a jack , header ,and a reset button.It contains
everything needed to support the microcontroller,simply connect it to computer
with a USB cable or power it with a AC to AC adapter or battery to get started.
The UNO differs from all preceding boards in that it does not use the FTDI USB
to-serial driver chip. Instead,it features the atmega8u2 programmed as US
programmed as a to serial converter.

Uno means one in Italian and is named to mark the upcoming release to ardiuno
1.0.the uno and version 1.0 will be the reference version of ardiuno,moving
forward.the uno is the latest in a series of usb ardiuno

boards, and the reference modelfor the ardiuno platform ;for a comparision

Page | 19
Literature Review and Theory
Microcontroller Atmega328

Operating voltage 5v

Input voltage(recommended) 7-12v

Input voltage(limits) 6-20v

Digital i/o pins 14(of which 6Provide pwm)

Analog input pins 6

DC current per I/O Pin 40ma

DC current for 3.3v pin 50ma

Flash memory 32 KB of which0.5 KB used



Clock speed 16 mhz

The ardiuno uno can be powered via the usb connection or with an external power
supply. The power source is selected automatically.

The external (non usb) power can come either from ac to dc adapter or battery. The
adapter can be connected by plugging a 2.1mm centre-positive plug into the
boards power jack.

The power can operate on external supply of 6 to 20 V. if supplied with less than 7
V, however the 5V pin may supply less than 5V and board may be unstable. If
using more than 12V, the voltage regulator may overheat and damage the board.
The recommended range is 7 to 12V.

Page | 20
Literature Review and Theory
The power pins are as follows:-

VIN. The input voltage to the Arduino 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. The regulated power supply used to power the microcontroller and other
components on the board. This can come either from VIN via an on-board
regulator, or be supplied by USB or another regulated 5V supply.
3V3. A 3.3 volt supply generated by the on-board regulator. Maximum
current draw is 50 mA.
GND. Ground pins.

Memory :-
The ATmega328 has 32 KB (with 0.5 KB used for the bootloader). It also has 2
KB of SRAM and 1 KB of EEPROM (which can be read and written with
the EEPROM library).

Input and Output :-

Each of the 14 digital 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 a maximum of 40 mA and has an internal pull-up
resistor (disconnected by default) of 20-50 kOhms. In addition, some pins have
specialized functions:
Serial: 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: 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. See
the attachInterrupt() function for details.

Page | 21
Literature Review and Theory
PWM: 3, 5, 6, 9, 10, and 11. Provide 8-bit PWM output with
the analogWrite() function.
SPI: 10 (SS), 11 (MOSI), 12 (MISO), 13 (SCK). These pins support SPI
communication using the SPI library.
LED: 13. There is a built-in LED connected to digital pin 13. When the pin
is HIGH value, the LED is on, when the pin is LOW, it's off.

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. Additionally, some pins have
specialized functionality:
TWI: A4 or SDA pin and A5 or SCL pin. Support TWI communication
using the Wire library.

There are a couple of other pins on the board:

AREF. Reference voltage for the analog inputs. Used with analog
Reset. Bring this line LOW to reset the microcontroller. Typically used to
add a reset button to shields which block the one on the board.

ATmega328 :-
The high-performance Microchip 8-bit AVR RISC-based microcontroller
combines 32KB ISP flash memory with read-while-write capabilities, 1KB
EEPROM, 2KB SRAM, 23 general purpose I/O lines, 32 general purpose working
registers, three flexible timer/counters with compare modes, internal and external
interrupts,serial programmable USART, a byte-oriented 2-wire serial interface, SPI
serial port, 6-channel 10-bit A/D converter (8-channels in TQFP and QFN/MLF
packages), programmable watchdog timer with internal oscillator, and five
software selectable power saving modes. The device operates between 1.8-5.5
By executing powerful instructions in a single clock cycle, the device achieves
throughputs approaching 1 MIPS per MHz, balancing power consumption and
processing speed

Page | 22
Literature Review and Theory
Reset Button :-
The reset button does pretty much the same as unplugging the board and
plugging it back in. It restarts your program from the beginning.

The same thing happens when you program the board - the USB interface
presses the reset button for you. That then enters the bootloader for a second
or two so it can try and program it.

When you reset the board the LED on pin 13 should flash a couple of times
while it's in the bootloader before it runs whatever program you have
programmed in. If that LED doesn't flash when you press the reset button
then there is a serious fault with your board which will take further

Bluetooth module HC-05 :-

Introduction :-

HC-05 Bluetooth Module

HC05 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 Bluecore 04

Page | 23
Literature Review and Theory
External single chip Rluetooth system with CMOS technology and with AFH
(Adaptive Frequency Hopping Feature).
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.

Hardware Features :-

Typical 80dBm sensitivity.

Up to +4dBm RF transmit 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.

Autoconnect to the last device on power as default.

Permit pairing device to connect as default.

Autopairing PINCODE:1234 as default.

Page | 24
Literature Review and Theory
Pin Description :-

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

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 andcommunication 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 thishigh state,the led blinks with a constant
delay say for example 2s delay which indicates that the module ispaired.

Page | 25
Literature Review and Theory
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.

Hardware and Software Required :-

HC-05 Bluetooth Module
Arduino Uno
Arduino IDE(1.0.6V)

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.

Page | 26
Literature Review and Theory
16x2 LCD display:-

LCD (Liquid Crystal Display) screen is an electronic display module and find a wide
range of applications. A 16x2 LCD display is very basic module and is very
commonly used in various devices and circuits. These modules are preferred
over seven segments and other multi segment LEDs. The reasons being: LCDs are
economical; easily programmable; have no limitation of displaying special &
even custom characters (unlike in seven segments), animations and so on.
A 16x2 LCD means it can display 16 characters per line and there are 2 such lines.
In this LCD each character is displayed in 5x7 pixel matrix. This LCD has two
registers, namely, Command and Data.

The command register stores the command instructions given to the LCD. A
command is an instruction given to LCD to do a predefined task like initializing it,
clearing its screen, setting the cursor position, controlling display etc. The data
register stores the data to be displayed on the LCD. The data is the ASCII value of
the character to be displayed on the LCD. Click to learn more about internal structure
of a LCD.

Page | 27
Literature Review and Theory
Pin Diagram:-

Page | 28
Literature Review and Theory
Pin Description :-

Function Name

1 Ground (0V) Ground

2 Supply voltage; 5V (4.7V 5.3V) Vcc

3 Contrast adjustment; through a variable resistor VEE

Selects command register when low; and data register Register

when high Select

Low to write to the register; High to read from the

5 Read/write

Sends data to data pins when a high to low pulse is

6 Enable

7 DB0

8 DB1

9 DB2

10 DB3
8-bit data pins
11 DB4

12 DB5

13 DB6

14 DB7

15 Backlight VCC (5V) Led+

16 Backlight Ground (0V) Led-

Page | 29
Literature Review and Theory
4 Channel 5V Relay :-
A relay is an electrically operated switch. Many relaysuse an electromagnet to
mechanically operate the switch and provide electrical isolation between two
circuits. We use arduino UNO to control the relay.

The Arduino Relay module allows a wide range of microcontroller such as

Arduino, AVR, PIC, ARM with digital outputs to control larger loads and devices
like AC or DC Motors, electromagnets, solenoids, and incandescent light bulbs .

Description :-
This relay module consists of 4 relays. Each relay is connected to a current buffer
so that you can connect them directly to a Microcontroller or Arduino.
Using these relays you can easily control high power devices or appliances using
arduino or microcontrollers, the relay is rated for 230V 10Amps. The Module has 5
LEDs, one for power and 4 for indicating relay signals.

Page | 30
Literature Review and Theory
Specifications :-

Rating: 10A (250V AC or 30 V DC)

Input (Control) voltage: 5V DC

The connections to arduino :-

VCC supply voltage. 5V from Arduino.

IN1 set to HIGH to set the relay to its default state, set to LOW to switch
the relay to its alternate state.

IN2 same as IN1, but controls the second relay on the board.

IN3 same as IN1, but controls the second relay on the board.

IN4 same as IN1, but controls the second relay on the board.

GND ground.

Working :-
The red light on the relay board turns on when power is applied (via the Vcc pin).
When power is applied on one of the channel pins, the respective green light goes
on, plus the relevant relay will switch from NC to NO. When power is removed
from the channel pin, the relay will switch back to NC from NO.

Page | 31
Literature Review and Theory
Other components of relay :-
Optocoupler relays are relays in which the changeover of contacts is effected
by the switching on or off of a light source which is linked to a SCR or a TRIAC.
The SCR or the TRIAC is switched on or off when the LED is switched unlike
conventional relays, where it is done electromagnetically.

These relays are faster than electromagnetic relays. More importantly, the provide
isolation between the control and the power circuits.

Flyback Diode -
Since an inductor (the relay coil) cannot change it's current instantly, the flyback
diode provides a path for the current when the coil is switched off. Otherwise, a
voltage spike will occur causing arcing on switch contacts or possibly destroying
switching transistors.

Page | 32
Literature Review and Theory
Transformer :-

A transformer is an electrical device that transfers electrical energy between two or more
circuits through electromagnetic induction.

a step down transformer is one whose secondary voltage is less than its primary
voltage. It is designed to reduce the voltage from the primary winding to the
secondary winding. This kind of transformer steps down the voltage applied to

Specification :-

voltage: 2 x 12V

current: 1 x 1000mA

rated power: 24VA

7805 Voltage
Regulator IC :-
Voltage sources in a
circuit may have fluctuations resulting in not giving fixed voltage outputs. Voltage
regulator IC maintains the output voltage at a constant value. 7805 IC, a voltage
regulator integrated circuit (IC) is a member of 78xx series of fixed linear voltage
regulator ICs used to maintain such fluctuations. The xx in 78xx indicates the fixed
output voltage it provides. 7805 IC provides +5 volts regulated power supply with
provisions to add heat sink as well.

Page | 33
Literature Review and Theory
7805 IC Rating :-

Input voltage range 7V- 35V

Current rating Ic = 1A

Output voltage range VMax=5.2V ,VMin=4.8VPin

Details of 7805 IC :-

1 INPUT Input voltage (7V-35V)In this pin of the IC

positive unregulated voltage is given in regulation.

2 GROUND Ground (0V) In this pin where the ground is

given. This pin is neutral for equally the input and output.

3 OUTPUT Regulated output; 5V (4.8V-5.2V) The output

of the regulated 5V volt is taken out at this pin of the IC regulator.

Page | 34
Literature Review and Theory

In this section we will explain the steps or path needed in order to achieve the goal of the project

Project Flow
Gathering the parts needed for the project

Drawing the basic concept

Connecting the Arduino Uno and other component

Program the Arduino

Installing an android software

Connect the Arduino using the Arduino

Parts needed for the project

Arduino Uno
Bluetooth Module (HC-05)
4 Relay Module

Page | 35
D Display (16*2)
Android Application
Step down transformer
Voltage regulator (IC7805)
Jumper wires




Page | 36
Block Diagram Description
Our project consist of major blocks such as

Power supply section

Arduino Uno
Bluetooth module HC-05
Relay Module
LCD (16*2)
Android application

Power supply section consist of :

1. A Step Down Transformer (220/12 V) - This is used to step down the 220 V AC supply
to 12V AC
2. A Bridge Rectifier This is used to convert the 12V AC supply to 12V DC .A capacitor
is used with it to smoothen the DC supply.
3. A Voltage Regulator A 5V voltage regulator i.e. IC7805 is used to regulate the voltage
at 5V

The regulated 5V supply is give to the Arduino board and to the Relay Module.Bluetooth
Module HC-05 gets supply from the Arduino board.

Android application:
In this project an android phone is used as the remote control for the user alongside with an App
called ArduDroid or with Bluetooth Terminal App .

These are simple Android App which will make controlling the pins of Arduino Uno from an
Android phone wirelessly.This Apps employs a simple Android user interface to control Arduino
Unos digital and PWM pins, send text commands to Arduino uno and receive data from
Arduino over Bluetooth module.

Arduino Uno:
Arduino is the main part of the project. Arduino is programmed according to the function
required to perform. In this project the digital pin function is only required to make the system
work, so Arduino Uno board is programmed to only support that feature.

Page | 37
Relay Module:
Relay is an electrically operated switch.It is a device mostly used to control circuit automatically.
Basically, it is an automatic switch to control high current circuit using low current signal. It also
provide isolation between two circuit.In this project there is no real need to isolate one circuit
from other, but we will use an Arduino Uno to control the relay. It controls the 4 different loads.

Bluetooth module:
The Bluetooth Module used in this project is HC-05.This module has 4 pins vcc, Ground, TX
and RX. This Bluetooth Module can be used with Bluetooth enabled phone or tablet or laptop
and the range of this module is approx. 10 m. It is connected to Arduino to serially receive data
sent by Bluetooth terminal app.

A 16*2 LCD is used to display the ON and OFF status of the Appliances.It has 16 pins

Appliances Used:


Page | 38

Page | 39
Pin Connections:
Connecting the Arduino Uno board to the Bluetooth Module:

Bluetooth Module (HC 05) Arduino Uno Board

Vcc pin VCC Port
GND pin GND port
TX pin RX port
RX pin TX port

Connecting the LCD to Arduino Uno board:

LCD Arduino Uno Board

Pin 1 (GND) GND pin
Pin 2 (VCC) 5 V pin
Pin 4 D2 pin
Pin 6 (enable) D3 pin
Pin 11 D4 pin
Pin 12 D5 pin
Pin 13 D6 pin
Pin 14 D7 pin

Pin 5(R/W) of LCD is ground and pin 3 is ground through a potentiometer in order to adjust

Connecting the Relay Module to Arduino Uno board:

4 Relay Module Arduino Uno Board

IN1 pin D8 pin
IN2 pin D9 pin
IN3 pin D10 pin
IN4 pin D11 pin

VCC pin of Relay Module is connected to 5V supply and GND pin of it is grounded.Relay has
two contacts normally open (NO) and normally closed (NC) contacts along with a common
terminal (COM).Appliances are connected to this contacts.

Page | 40
Working Principle:
A 230V AC supply is connected to the primary side of a step down transformer.tis transformer
step down the 230V AC to 12V AC. The output of transformer is then fed to a Bridge rectifier
along with a capacitor,this converts the 12V AC to 12V DC output.This output is then fed to a
5V volatage regulator(IC 7805).From this we get regulated 5V DC supply which is then fed to
5V pin of Arduino Uno board and to the VCC pin of of 4 Relay Module as shown in circuit

Bluetooth Module is connected to Arduino Uno Board to serially receive the data sent Bluetooth
Terminal App through android.A 16*2 LCD is used to display the ON and OFF status of
electronics appliances.The electronics appliances are connected to relays.

Firstly we have to download and install the Bluetooth Terminal app on our phone which gives
the feature of operating the appliances by sending signals .When we power ON our project we
see that a LED on Bluetooth Module (HC 05) is blinking continuously.To operate it firstly we
have to pair the Bluetooth Module with our android phone.After pairing we notice that the LED
is now blinking with some delay this shows that the android phone has been paired up with the
Bluetooth Module.

Whenever we send data by our android phone, Arduino checks for the character send and puts
the appropriate pins high or low according to the program written on it.These pins control the
relays which in turns control the appliances.The LCD will display the status of appliances that
which is ON or OFF.Also on the app we get the status of ON and OFF.

Relay as two contacts normally open contact (NO) and normally closed contact (NC).When input
to relay goes high its NO contacts get open and NC contacts get closed.

Page | 41

The Arduino language is merely a set of C/C++ functions that can be called from
your code. sketch undergoes minor changes (e.g. automatic generation of function
prototypes) and then is passed directly to a C/C++ compiler.

Steps before programming:-

Steps before programming:-
Download Arduino Software
The Initial Setu
setting board
setting communication port
Isolating serial communication pins
Usb cable
Power supply (if needed)

Arduino microcontrollers come in a variety of types. The most common is
the Arduino UNO, but there are specialized variations. Before you begin building,
do a little research to figure out which version will be the most appropriate for your

To begin, you'll need to install the Arduino Programmer, aka the integrated
development environment (IDE).

Connect your Arduino to the USB port of your computer. This may require a
specific USB cable. Every Arduino has a different virtual serial-port address, so
you 'll need to reconfigure the port if you're using different Arduinos.

Set the board type and the serial port in the Arduino Programmer.
Page | 42
Test the microcontroller by using one of the preloaded programs, called sketches,
in the Arduino Programmer. Open one of the example sketches, and press the
upload button to load it. The Arduino should begin responding to the program: If
you've set it to blink an LED light, for example, the light should start blinking.

To upload new code to the Arduino, either you'll need to have access to code you
can paste into the programmer, or you'll have to write it yourself, using the
Arduino programming language to create your own sketch. An Arduino sketch
usually has five parts: a header describing the sketch and its author; a section
defining variables; a setup routine that sets the initial conditions of variables and
runs preliminary code; a loop routine, which is where you add the main code that
will execute repeatedly until you stop running the sketch; and a section where you
can list other functions that activate during the setup and loop routines. All
sketches must include the setup and loop routines.

Once you've uploaded the new sketch to your Arduino, disconnect it from your
computer and integrate it into your project as directed.

General Description of Arduino Coding

Setup: void setup() { }
Any code that lives inside setup()s curly brackets ({ and }) runs once at
the very beginning of your program and then never again.
Never run again until we reset the Arduino, or upload new cade.
The setup() function is useful for setting up initial value for Arduino.

Loop: void loop() { }

Like the setup line before it, this is another required Arduino-
sketch function. While the setup() function sets your Arduino
up, the loop() functionloops!
This is where the bulk of your Arduino sketch is executed. The
program starts directly after the opening curly bracket (}), runs
until it sees the closing curly bracket (}), and jumps back up to
the first line in loop() and starts all over.
Page | 43
The loop() function will run over-and-over-and-over until the
Arduino is reset.

List of codes used

1. #include <LiquidCrystal.h>
include the liquid crystal display library code

2. LiquidCrystal(rs, enable, d4, d5, d6, d7)

initialize the library by associating any needed LCD interface pin with the
arduino pin number it is connected to.

LiquidCrystal lcd(7, 6, 5, 4, 3, 2);

3. pinMode(pin, mode)

Configures the specified pin to behave either as an input or an output.

pinMode(8, OUTPUT);

4. Serial.begin(speed)

Sets the data rate in bits per second (baud) for serial data transmission.


5. lcd.print(data)

Prints text to the LCD.

lcd.print("Arduino project");

6. lcd.begin(cols, rows)

Initializes the interface to the LCD screen, and specifies the dimensions
(width and height) of the display.
.begin() needs to be called before any other LCD library commands.

lcd.begin(16, 2);

Page | 44
7. digitalWrite(pin, value)

Write a HIGH or a LOW value to a digital pin.


8. delay()

Pauses the program for the amount of time (in miliseconds) specified as


9. Serial.print(val)

Prints data to the serial port as human-readable ASCII text.

Serial.print(" ##PORT 1 ON## ");

10.lcd.setCursor(col, row)

Position the LCD cursor; that is, set the location at which subsequent text
written to the LCD will be displayed.

lcd.setCursor(1, 1);


Turns on the LCD display, after it's been turned off with noDisplay().

Page | 45
Our Program:-

#include <LiquidCrystal.h>

LiquidCrystal lcd(7, 6, 5, 4, 3, 2);

void setup() {

pinMode(12, OUTPUT);

pinMode(11, OUTPUT);

pinMode(10, OUTPUT);

pinMode(9, OUTPUT);

pinMode(8, OUTPUT);

digitalWrite(11, HIGH);

digitalWrite(10, HIGH);

digitalWrite(9, HIGH);

digitalWrite(8, HIGH);


lcd.begin(16, 2);

lcd.print("Arduino project");







Page | 46





void loop() {

if (Serial.available() > 0)

char c = Serial.read();



Serial.print("##PORT 1 ON##");

lcd.setCursor(0, 0);

lcd.print(" ##PORT 1 ON## ");


lcd.setCursor(1, 1);







Page | 47


if (c == '2')


Serial.print("##PORT 2 ON##");

lcd.setCursor(0, 0);

lcd.print(" ##PORT 2 ON## ");


lcd.setCursor(5, 1);









if (c == '3')


Serial.print("##PORT 3 ON##");

Page | 48
lcd.setCursor(0, 0);

lcd.print(" ##PORT 3 ON## ");


lcd.setCursor(9, 1);









if (c == '4')


Serial.print("##PORT 4 ON##");

lcd.setCursor(0, 0);

lcd.print(" ##PORT 2 ON## ");


lcd.setCursor(13, 1);




Page | 49










Serial.print("PORT 1,2,3,4 ON");

lcd.setCursor(0, 0);

lcd.print("PORT 1,2,3,4 ON ");


lcd.setCursor(1, 1);


lcd.setCursor(5, 1);


lcd.setCursor(9, 1);


lcd.setCursor(13, 1);


Page | 50



















Serial.print("PORT 1,2,3,4 OFF");

lcd.setCursor(0, 0);

lcd.print("PORT 1,2,3,4 OFF");

Page | 51

lcd.setCursor(1, 1);

lcd.print(" ");

lcd.setCursor(5, 1);

lcd.print(" ");

lcd.setCursor(9, 1);

lcd.print(" ");

lcd.setCursor(13, 1);

lcd.print(" ");










Serial.print(" ##PORT 1 OFF## ");

lcd.setCursor(0, 0);

lcd.print(" ##PORT 1 OFF## ");


Page | 52
lcd.setCursor(1, 1);

lcd.print(" ");





digitalWrite(10,HIGH );

Serial.print(" ##PORT 2 OFF## ");

lcd.setCursor(0, 0);

lcd.print(" ##PORT 2 OFF## ");


lcd.setCursor(5, 1);

lcd.print(" ");





digitalWrite(9,HIGH );

Serial.print(" ##PORT 3 OFF## ");

lcd.setCursor(0, 0);

Page | 53
lcd.print(" ##PORT 3 OFF## ");


lcd.setCursor(9, 1);

lcd.print(" ");






Serial.print("**PORT 4 OFF**");

lcd.setCursor(0, 0);

lcd.print("**PORT 4 OFF**");


lcd.setCursor(13, 1);


lcd.print(" ");




if (c == '7')

Page | 54

if (c == '8')


Page | 55
Results Analysis and Discussions

What we have achieve:

Managed to successfully apply the OUR PROJECT SYSTEM USING

ARDUINO and it was user friendly and cost effective. User friendly as in
anyone can use just a click of a button on an android screen and everything
works. And it is cost effective as in it will cost exactly as the project requires
(optimum price).

Page | 56
Our project works as follows:-
At first arduino initialises every thing which is wrtien on void setup page then
enters to void loop section than fron serial communication port no. (0,1) in which
bluetooth module HC-05 is connected. We send a data from the adroid app with
the hep of these data arduino initiates certain action based on our program writen
on arduino.


Convenience and ease of using microcontroller with automation is what offers a

futuristic way of life in which an individual gets to control his entire
commercial/industrial/house using a smart phone, from turning on a TV to
locking/unlocking doors. it also offers an efficient use of energy.

But to get or acquire such system installed will

cost a lot of money and that is the major reason of why home automation has not
received much demand and attention, adding to that also the complexity of
installing it and configuring it. Thus it is essential to make it cost effective and
easy to configure.

Page | 57
Problem faced with Arduino:

The structure of Arduino is its disadvantage as well. During building a

project you have to make its size as small as possible. But with the big
structures of Arduino we have to stick with big sized PCBs. If you
are working on a small micro-controller like ATmega8 you can easily
make your PCB as small as possible.
The most important factor which you cannot deny is cost. This is the
problem which every hobbyist, Engineer or Professional has to face.
Now, we must consider that the Arduino is cost effective or not.
If started journey of micro-controllers with Arduino then it will be
very difficult for you to make the complex intelligent circuitries in
future. The easy to use hardware/software of Arduino unable a person

Page | 58
to learn the basics of many things likes Serial communication, ADC,
I2C etc.
Arduino has many SMD equipments as well as many layer circuit
design . If any fault or circuitry damage occur, we cannot repair it. In
this case we have only an option to replace the arduino.
Program is not easy with arduino, for large project programming may
be difficult to program it.

Problem faced with Bluetooth:

Its operating range is very short , it has a few meter distance which is
unable to communicate at out range of Bluetooth hence we cannot
control device.
It has complicated design and complexity in circuit, if it damaged
anyway we cannot repair it.
It is very sensitive device with overvoltage that means it damages early
with a small increases in voltage and atmospheric humidity.
If any component of bluetooth module is damaged , we cannot find it
and resolve it.

Page | 59
Bluetooth module HC-05 is easily connect with android plateform
application but pairing and controlling is difficult through other
OS/Plateform devices such as windows, IOS etc.

Problem faced with Relay:

In our project using solid state relay which consist from semiconductor
devices like transistor, diode, optocoupler etc. so voltage and current
characteristic is not linear, distorting waveform to some extent. Single pole
single throw (spst) types are available , OFF state leakage currents flow
through the switching devices, and a high ON state voltage drop and
sometimes power dissipation resulting in additional heat sinking required.

Problem faced with Power supply:

Page | 60
In our project, we use transformer fed power supply which output is AC so
required additional rectifier and voltage regulator circuit which convert to
AC into DC.
We cannot reduce the losses in transformer which dissipates in the form of
heat due to core and cupper losses. Sometimes transformer becomes noisy.
5 volt supply from voltage regulator fed to arduino, when we send a serial
data to arduino UNO through Bluetooth module during operation it takes
large current to operate. This is why more power loss in voltage regulator.
Using voltage regulation 7805 which provide stable 5volt, 1A supply which
does not sufficient some times to hungry arduino system, so we required
transistor to control output current.
Transformer makes bulky, heavy and takes more space in our project, as
long as we use capacitor fed power supply instead of transformer fed power
supply , it will become more portable .

Page | 61
Conclusions and Future Scope
Future Scope

How we can modify our project:

1. We can increase the communication range through wifi module.

2. Loads can also controlled and monitored through GSM for long distance.

3. motor load control and also control its speed.

4. Measure temperature control and it can protect over heating.


Page | 62
5. Like the Photon, the ESP8266 is a 3.3V device so you must use 3.3V to power it. DO
NOT use the Arduino 5V as this will damage the ESP8266 permanently. The 3.3V
supply in the standard Arduino also doesnt supply enough current to power the
ESP8266 during its peak transients. Use a 3.3V power supply with at least 500 mA
of current. I used the 3.3V supply in the Elegoo 37 Sensor kit. It was perfect because
it fits in a standard Breadboard, making one side rail 3.3V and the other side rail
6. You can use the ESP8266 in a couple ways. In this tutorial we will only demonstrate
that it is functioning by Serial mirroring the Arduino IDE Serial port to a Software
Serial port connected to the ESP8266. This will also allow us to change some of its
setting and get it connected to your Home WiFi. You could also buy a Serial USB to
TTL converter and use a command based serial program like Putty to send these
commands. I did not have a Serial USB to TTL converter so I opted to just use an
Arduino and Serial mirror the commands. If you use a Serial USB to TTL converter
please be sure to also use a level shifter so that you dont apply 5V to the ESP8266.
7. There is also a ESP8266wifi library and Arduino IDE addition you can add that
includes libraries for using the ESP8266 which you can use to directly program
instead of just sending commands with a prompt. Ultimately this will be the easiest
way to setup the ESP8266 for most IoT projects but this deserves a whole separate

Connect the ESP8266 TX pin to pin 2 of the Arduino, RX pin to pin 3 of the Arduino
and make sure the 3.3V supplys GND and the Arduino GND are connected. Next
pull up the ESP8266 Enable pin to 3.3V using a high 2k resistor. You will be
powering the Arduino through its USB port, this will also be how you communicate
to the ESP8266 .

Page | 63
2.Modify explain with GSM:


The figure shown above is the simple block diagram of our project. It is a simple
illustration of how we have implemented our project and the various parts involved in it.
From the above representation, the first Mobile station is used as a transmitting section
from which the subscriber sends text messages that contain commands and instructions to
the second mobile station which is based on a specific area where our control system is
located. The mobile phone as indicated in the block diagram is a Nokia 3310 mobile set.
The received SMS message is stored in the SIM memory of the phone and then extracted
by the microcontroller and processed accordingly to carry out specific operations. The
relay driver (BUFFER ULN2003) is used to drive the relay circuits which switches the
different appliances connected to the interface. The LCD is used to indicate the status of
the operation performed by the microcontroller and also its inclusion makes the overall

Page | 64
system user-friendly. The input from different sensors are feed to micro-controller and
processed to operate respective task semi autonomously and autonomously.

3.Speed control of dc motor:

The voltage supplied to a DC motor controls its speed.
Arduino cannot supply variable DC output
1. Arduino lacks a true analog output.
2. Use Pulse-width modulation (PWM) to simulate a variable DC supply
3. PWM is a common technique for supplying variable power levels to slow
electrical devices such as resistive loads, LEDs, and DC motors.
4. Arduino Uno has 6 PWM pins: Digital I/O pins 3, 5, 6, 9,10, and 11

Page | 65
4.Temperature measurement for load:

Page | 66
1. Connect the circuit above figure.
2. Give power to the system .
3. Vary temperature across LM 35.
4. Working of LED and relay is observed .


It can be concluded that OUR PROJECT SYSTEM USING ARDUINO was

a success. This system consists of an Arduino-Uno board, a Bluetooth
Module, an Android phone, power sockets, home appliances and an android
Application (ArduDroid). It is user friendly and it is cost effective.

Also it can be concluded that the objectives of this project has been
successfully met and the-y are as follows:

Constructed a wireless Our Project system controlled by a smartphone

specifically an android device.
Designed and implement cost effective Our Project system yet an efficient
Designed a user friendly and a safe system to control home appliances
especially aimed to aid the elders and handicapped.

Procedure for operating our project:

Install Bluetooth controller app.

Pairing it with Bluetooth module.
Bluetooth module is connected to arduino to serially receive the data sent by
Bluetooth controller app.
A 16*2 led is used to display the ON and OFF status of the applications.
The electronics applications are connected to relays.
Whenever we send data by android phone,Arduino check for the character
seat and out appropriate Relays consist of 2 contacts

Page | 67
Normally closed(NC) contact,

Normally open(NO) contact and

A common terminal whenever input to relays goes high its NC contact gets
open and its NO contact gets closed.

Fig. Normally closed(NC) contact, Fig. Normally open(NO) contact and

Page | 68


Getting Started with Arduino: The Open Source Electronics Prototyping

Platform (Make) by by Massimo Banzi and Michael Shiloh

Arduino Programming Notebook by Brian W. Evans

Web sites: -









Page | 69