Introduction: Voice Control Home Automation
automation plays a key role in human life. Home automation allows us to control household electrical appliances like light, door, fan, AC etc. It also provides home security and emergency system to be activated. Home automation not only refers to reduce human efforts but also energy efficiency and time saving. The main objective of home automation and security is to help handicapped and old aged people who will enable them to control home appliances and alert them in critical situations.
This project put forwards the implementation of home automation and security system using Arduino microprocessor and Android smartphone. Home appliances are connected to the microprocessor and communication is established between the Arduino and Android mobile device or tablet via Bluetooth module. We would develop an authentication to the system for authorized person to access home appliances. The device with low cost and scalable to less modification to the core is much important. It presents the design and implementation of automation system that can monitor and control home appliances via android phone or tablet
Voice controlled wireless smart home system has been presented for elderly and disabled people. The concept of
controlling home appliances using human voice is interesting. The proposed system has two main components, they are
(a) voice recognition system, and (b) wireless system. This system to control home appliances uses a voice controlled android application. By the increasing use of PC (personal computers), internet, mobile phone and wireless technology, it makes it easy for a user to remotely access and control the appliances.
A lot of research has been done and many solutions have been proposed to remotely access the home appliances. Some of them used internet, wireless technology to communicate and control home appliances, others used Bluetooth and GSM technology for controlling the home appliances.
The main aim of our system is to build a perfect companion for someone to be at home. Generally, home automation research targeted many needs like applications that provide the luxury and smart requirements while some threw light on the special needs for elderly and disabled etc. our system is a computer based system that can accept voice to direct commands and process them. The system provides us switching any device ON/OFF.
Step 1: Components Required
Guys, here is a list of materials you would require for making this simple project.
- Arduino Board (preferably Uno)
- 2-Channel Relay Module
- Bluetooth Module (HC-05)
- Some Jumper Wires
- Breadboard
- android phone
Most important, "A BRAIN"
So guys, get all these items so that we can go to the next step to start building it.
SOFTWARE
1 .ArduinoIDE : Arduino
2 .Arduino bluetooth Apk
Step 2: Connecting the Required Connections
ARDUINO
The Arduino Uno is a microcontroller board based on the ATmega328P. It has 14 digital input/output pins (of which 6 can be used as PWM outputs), 6 analog inputs, a 16 MHz quartz crystal, a USB connection, a power jack, an ICSP header and a reset button. Simply connect it to a computer with a USB cable or power it with a AC-to-DC adapter or battery to get started.
BLUETOOTH
For the communication between mobile phone and microcontroller Bluetooth module(HC-05) is used.HC-05 is low power 1.8V operation and is easy to use with Bluetooth SPP (serial port protocol). Serial port Bluetooth module have a Bluetooth 2.0+EDR (enhanced data rate), 3Mbps modulation with complete 2.4GHZ radio transceiver and baseband. Using Bluetooth profile and android platform architecture different type of Bluetooth applications can be developed.
RELAY
Relay is basically an electromagnetic switchwhich can be turn on and off by an applying the voltage across its contacts.
• In this project used a 5V 2-channel relay.
ANDROID
. Android is an open-source operating system which means that any manufacturer can use it in their phones free of charge.
• It was built to be truly open.
• Android is built on the open Linux Kernel. Furthermore, it utilizes a custom JAVA virtual machine that was designed to optimize memory and hardware resources in a mobile environment.
ANDROID APPLICATION OPERATED BLUETOOTH
.The Android platform includes support for the Bluetooth network stack, which allows a device to wirelessly exchange data with other Bluetooth devices.
• The application framework provides access to the Bluetooth functionality through the Android Bluetooth APIs.
SOFTWARE USED
1. Arduino IDE
2. AMR VOICE( available at play store)
Step 3: WORKING PRINCIPAL
Using the above components we implement our system. The core component of this system is the Arduino Uno which has a microcontroller i.e Atmega 328. Atmega 328 has a32KB flash, it is needed to burn a boot loader and download arduino sketches. The boot loader is programmed under ISP program controller.
An adapter of 12V output power supply is used as an input to the voice controlled arduino system. Relays are connected to the output pins of Arduino Uno, these are used as switches to the loads.
Android is a mobile operating system based on Linux kernel and currently developed by Google. We prefer android platform because of its huge market globally and it is easy to use user interface. The voice recognizer which is an inbuilt feature of android phones is used to build an application which the user can operate to automate the appliances at his house. For wireless communication system a Bluetooth module HC-05 is used as a remote which is connected to the control unit for sensing the signals sent by the android voice application.
The microcontroller device with the Bluetooth module and relay circuit needs to be connected to the switch board. Then we need to launch the android based application – “ANDROID MEETS ROBOT” on our smart phone. Through the application we can instruct the microcontroller to switch ON/OFF an appliance. After getting the instruction through the Bluetooth module, the microcontroller gives the signal to the relay board.
The application first searches for the Bluetooth device. If it is available then it launches the voice recognizer. It reads the voice and converts the audio signal into string. It provides a value for each appliance which will be fed to the microcontroller device. The microcontroller uses the port in serial mode. After reading the data it decodes the input value and sends a signal to the parallel port through which the relay circuit will be activated.
Step 4: PROGRAM
String voice;
int
led2 = 12, //Connect LED 2 To Pin #12
led1 = 11; //Connect LED 2 To Pin #11
//--------------------------Call A Function-------------------------------//
void allon() {
digitalWrite(led1, HIGH);
digitalWrite(led2, HIGH);
}
void alloff() {
digitalWrite(led1, LOW);
digitalWrite(led2, LOW);
}
//-----------------------------------------------------------------------//
void setup() {
Serial.begin(9600);
pinMode(led1, OUTPUT);
pinMode(led2, OUTPUT);
}
//-----------------------------------------------------------------------//
void loop() {
while (Serial.available()){ //Check if there is an available byte to read
delay(10); //Delay added to make thing stable
char c = Serial.read(); //Conduct a serial read
if (c == '#') {break;} //Exit the loop when the # is detected after the word
voice += c; //Shorthand for voice = voice + c
}
if (voice.length() > 0) {
Serial.println(voice);
//-----------------------------------------------------------------------//
//----------Control Multiple Pins/ LEDs----------//
if(voice == "*everything on") {allon();} //Turn Off All Pins (Call Function)
else if(voice == "*everything off"){alloff();} //Turn On All Pins (Call Function)
//----------Turn On One-By-One----------//
else if(voice == "*first light on") {digitalWrite(led1, HIGH);}
else if(voice == "*second light on") { digitalWrite(led2, HIGH);}
else if(voice == "*all on") {digitalWrite(led1, HIGH); digitalWrite(led2, HIGH);}
//----------Turn Off One-By-One----------//
else if(voice == "*first light off") {digitalWrite(led1, LOW);}
else if(voice == "*second light off") {digitalWrite(led2, LOW);}
else if(voice == "*all off") {digitalWrite(led1, LOW); digitalWrite(led2, LOW);}
//-----------------------------------------------------------------------//
voice="";}} //Reset the variable after initiating
Attachments
Step 5: CONCLUSION
In this project we have successfully implemented voice controlled home automation system controlling relays using arduino with Bluetooth module HC-05. This project can be used for controlling ‘n’ number of input controls i.e by extending number of relays.
Our implemented module is more reliable and flexible in order to control any loads and the coverage area for ireless control is 10 meters. Hence this project can be useful for a real time voice controlled home automation. Thus arduino based voice controlled home appliances proves to be a better remote controlled operation on home appliances using Bluetooth module HC-05.
This project can be extended for many automation applications such as industrial automation, automotive, military, healthcare, transportation and so on. Further the coverage area can also be increased by the use of GSM modules.