Hand Gesture Controled Robot

by Mayoogh_Girish in Circuits > Arduino

11497 Views, 96 Favorites, 0 Comments

Hand Gesture Controled Robot

Gesture Recognition Robot

Tired of controlling your robot with joystick?.Ever thought of controlling it with your hands.Wished I could control everything with my hands.Sitting in chair and controlling things like a BOSS . I loved it.So I finally came out with a cool DIY hand gesture recognition robot, which can follows the commands shown by hand. Sounds crazy but I promise it’s very simple.Making a gesture control robot is actually very simple. This robot is a improvement of my another DIY project RC car using RF module

Here also the robot is divided into two session, Transmitter and Receiver.The Receiver circuit is same as that of the old post and there is a slight change in the transmitter circuit ,here we need to program the transmitter circuit.So I will be using a arduino as the programming platform to recognise the gestures made by hand i will be using a accelerometer sensor .So let’s building

The Entire tutorial can also be found in blog
and Don't forget like my facebook page

The Parts and Materials

Here's the list of materials needed for the project ! You can click on the link if you prefer to buy online.
______________________________________________________________________

Electronics

MISC:

Watch the Robot in Action

Gesture recognition robot.JPG

What Is That and How Does It Work ?

DXL335 Accelerometer.JPG
for inst.PNG

What is a Accelerometer (ADXL335)?


In brief an accelerometer is a three-axis acceleration measuring device.The accelerometer used here is ADXL335 it has 3 axis (X Y Z).
The accelerometer is now there in almost all smartphones (We are not going to take it from a smartphone )You might definitely played motion games in your mobile (Eg Temple run) the character in the game moves left and right when you tilt your phone left and right respectively it is done by the accelerometer. There is another sensor called Gyroscope found in smartphone which we don’t need now

_____________________________________________________________________________

How does it work and recognize the gestures ?

Here the brain of the robot is arduino uno(Atmega32) it is fed with some set of code.The gestures/motion made by hand is recognised by a acceleration measuring device called accelerometer (ADXL335)

Here the Accelerometer reads the X Y Z coordinates when we make gestures by hand and send the X Y Z coordinates to the arduino (Here we don’t need the Z axis we need only two coordinated X and Y So neglect the Z coordinate) The arduino check the values of coordinates send a 4bit data to the Encoder IC accordance to the data received from the accelerometer.The Encoder passes the data to RF Transmitter and the transmitted data is received by the RF Receiver, The receiver sends the 4bit data to Decoder IC and the decodes it passes to Motor Driver IC,Later the motor driver make decision to turn the two motor in required direction

Making the Power Supply

Power supply.png
7805 pinout.jpg

First we will start with the power supply circuit. We need two power supply circuit one for the transmitter and one for receiver.The receiver circuit need to powered using 12v supply(Since I’am using a 12V motor) and transmitter circuit can be powered using 9v battery

You can see the circuit for the receiver power supply on the right. Using this diagram, wire up the supply circuit. You can also add an LED via a 1k resistor to indicate the state of power supply.

  • IC 7805 which regulates the 12v supply to 5v (if cant get a 12v supply you can use a 9v supply)
  • 0.1uf & 470uf capacitor
  • And 1k resistor for status led

-----------------------------------------------------------------------------------------------------------------------------------------

NOTE: Use heat sink for 7805 because we are dropping 7v (12-5 )so lots of heat will be produced to burn the regulator so use heat sink is recommended

Let’s Start Making the Transmitter (Remote)

tx circuit_schem.png
Illustration.png

The receiver session consist of accelerometer which detects the gesture made by hand sends the data to the arduino, Later arduino send data to the Encoder IC accordance to the data received from accelerometer and the data is transmitted to the receiver

Wire up as per circuit

Upload Code to Arduino

arduino uno.png
I had hard time to get upload the code to the instructable. Some error was driving me crazy
Don't worry you can get the entire code for this robot from here


__________________GET THE CODE FROM HERE________________

Make the Receiver

RF Receiver circuit.png

The receiver circuit consist of 2 IC(HT12D decoder , L293D motor driver),RF receiver module

Wire the circuit as per the above receiver schematic. There is 2 led in the receiver board ,one lights up when power supply is given to the receiver and the other when power supply is given to transmitter circuit the led near the IC HT12D should lit and this provides you a valid transmission(VT) when power is given at the transmitter if not there is something wrong with your connection or your RF TX RX module If you want to know more in details about the receiver session please read this article

What All Gesture Will Robot Recognise ?

backward_flat.jpg
forward_flat.jpg
left_flat.jpg
right_flat.jpg
Stop_flat.jpg

This robot is designed for recognising five set of gesture. Forward , backward, left, right and stop.You will get a better ideas if check the photos of gestures given below

And don't forget to Vote me in ROBOTICS and MAKE IT MOVE CONTEST