Introduction: Gesture Based Home Automation Using Intel Edison(Intel IoT))

Picture of Gesture Based Home Automation Using Intel Edison(Intel IoT))

Gesture based home automation is the new way to interact with electrical devices available at our house. In this project we will be using sensors instead of camera for gesture recognition , because it provides better consistency ,environment independency , portable, lesser processing , low cost and energy efficient.

This project consists of two parts:

1)Wearable gesture recognizing device

2)Intel Edison connected with all devices within house

Step 1: Hardware Requirements

Picture of Hardware Requirements

For Wearable Side System

1)Low end micro-controller. I am using Arduino Uno Here .You can also use another Intel Edison board here with same program , as it provides Arduino compatibility as of Uno.

2)Bluetooth HC05

3) IR transmitter with current boosted using BC547

4)4 pin Dip switch for selecting different modes

5)On board LED for system notifications

6)Flex sensor with finger-band

7)Accelerometer Sensor: MMA7660

8)Compass Sensor: HMC5883L

For Home Server With Intel Edison

1)Intel Edison with IO shield

2)Relay based circuit to control AC Appliances using digital signal.(I have created one for my self and I am calling it 'Smart-Box' . You can connect any 3 electrical devices at its port at a time ).You can directly connect Smart-Box to AC main ,SMPS connected in parallel draws DC Voltage for powering Edison and associated sensors. Digital signal is current boosted using ULN2803.

3)Bluetooth module HC05

4)Motor with Rack and Pinion Mechanism(As a door lock )

5)Motor Driver(I have added this circuit within my Smart-Box)

6)Press button switch and buzzer for door bell

7)Temperature Sensor with analog output

8)Light Trans-receiver Pair

9)I2C based 16*2 LCD

10)12 SMPS

Detailed Information about 'How Sensors and Components used?How Hardware is managed?' is given in the following project summary report:

Step 2: Let's Make Wearable Gadget for Gesture Recognition First:

Read all the theory and sensors working , sensors mounting I have mentioned in above pdf

Test all sensors individually using programs provided below:

Note that Accelerometer and Compass sensors are I2C based.

Step 3: Use Following Pin Configuration on Uno or Another Intel Edison

Picture of Use Following Pin Configuration on Uno or Another Intel Edison

1) Accelerometer and Compass
Sensors->Pin A4 is SDA and Pin A5 is SCL.

2) Flex Sensor with potential divider circuit at Pin A0

3)Bluetooth module HC05 at Rx ,Tx Pins of controller

4)IR Led with transistor BC 547 current booster at Pin 3

5)Mode Selection (4 in 1)DIP switch at Pins ->4(MSB),5,6,7(LSB)

6)Notification Indication LEDs at Pins->10,11,12,13

Making Connection

1)Making Shield for Arduino Uno for above mentioned sensors and modules:

2)Mount the Shield on Wearable gadget such as Wrist-Band:

3)Mounting Controller and Accelerometer Sensor (Note mounting position of Accelerometer):

4)Mounting and Connecting Compass Sensor:

5)Connecting Bluetooth module and Flex Sensor:

6)Connecting Batteries and Get ready with wearable gadget:

Step 4: Uploading Program to Wearable Device for Gesture Recognition

Now Upload the following program to controller . To assign gestures to commands edit gesture and gesture2 function. I have already designed 'hand_orientation()',' up_down()' and 'deviation()' commands in the program. You can directly use them ,I have taken care of all details within the functions.

Step 5: Now Let's Begin Assembling Components Together at Edison Side

I am assuming that you are ready with your Smart-Box.

Get 5V power to run the Edison board. Use 7805 as Voltage Regulator in front of the SMPS.

Now connect Modules , Sensors and Relay drivers as follow:

1)Light transmitter At The Door->Pin 2

2)Button for Door bell ->Pin 3

3)Buzzer->Pin 4

4)Port 1 Relay actuator->Pin 5

5)Port 2 Relay actuator ->Pin 6

6)Port 3 Relay actuator ->Pin 7

Now for the motor used for door lock

7)M1 Relay actuator ->Pin 8

8)M2 Relay actuator ->Pin 9

9)Light Receiver At The Door->Pin A0

10)Temperature Sensor->Pin A1

11)Bluetooth RX of edison to TX of BT module and vice versa

12)LCD at I2C pins(Pin A4-SDA,Pin A5-SCL)

Step 6: Uploading Python Script on Edison

Upload the following program and test with Wearable gadget we have created previously with it.

Download and install python libraries imported in the program for Edison

Follow the actions used in the Video as a Reference.

Video Link: https://youtu.be/ESxWoBrf2jg

Step 7: Introduction to Way2sms Alerts

After Successfully Completing above stage,Lets connect our Edison to internet to send SMS over internet using way2sms use following python script. You have to create way2sms account first.

Enter your Registered mobile number,Password,,Target ,Message and Target mobile number in the program.

Step 8: Introduction to ThingSpeak Cloud

Picture of Introduction to ThingSpeak Cloud

Once you are done with way2sms.Create
ThingSpeak cloud account and create two new channel .Name Them as Door_Status and Temperature .Name the first field for both the channel as 'field1' .Note down their API keys. You may create two field within same channel instead of two different channels. Follow the Tutorials available on ThingSpeak website for handling channel , Uploading and Fetching data.

Use the following program to transmit data
to ThingSpeak using python script

Enter your API keys for specific Channels in the program

Step 9: Upload Final Python Script With Sms Alert and Cloud Data Storage Facility

After Verifying above program, Use the following program to complete our system along with wearable device. Refer video and Document attached for details on action.

You may Observe following Events with final program

1)If you make respective actions as shown in video for opening the door , closing the door , turning AC devices ON and OFF connected to Smart-Box.

2)Door_Status(Whether door is open or close) and Temperature Sensor data is uploaded to Thingspeak cloud automatically after every 15 seconds

3)Whenever door bell is pressed we will get text message saying 'Somebody at the Door'.

Step 10: Future Ideas and Applications

Future Ideas:

1)My next step is using camera at the door for taking photo of person pressing the doorbell ,we should be able to open the door over the internet remotely after getting photo notification of the person.

2)I am trying to include push-pull gesture within system.

3)I am trying to surf over computer using this system.

4)I am trying to develop software for recording and assigning gesture more easily.

5)I am trying to detect letters written in air with gestures and sending text message out of it.

Applications:

1)Applications at the Industry to control machines and production lines

2)For handicap people to get done everything sitting at one place

3)For Solidwork , Catia and graphic designers to interact with virtual model with gestures.

4)Home Automation , IOT Industry .

5)This Tool is extremely useful for converting sign language to voice output for people who cannot talk.

Enjoy the Project .Mention your Suggestion and queries. Like the Project.

Feel Free to mail on :rovardekar@gmail.com

Comments

softyS (author)2016-08-19

i like to download this project without paying

taifur (author)2015-09-21

Nice

rpurser (author)2015-08-26

Check out the analysis features of ThingSpeak to gain insight into the door data you collect!

Visit http://community.thingspeak.com/2015/08/you-have-collected-lots-of-iot-data/ to learn more.

seamster (author)2015-08-25

Very nice!

About This Instructable

5,116views

23favorites

License:

More by rvardekar:Gesture Based Home Automation Using Intel Edison(Intel IoT))
Add instructable to: