GESTURE CONTROLLED ROBOT(Accelerometer based)

A Gesture Controlled robot is a kind of robot which can be controlled by  your hand gestures not by old buttons.You just need to wear a small transmitting device in your hand which included an acceleration meter.This will transmit an appropriate command to the robot so that it can do whatever we want. The transmitting device included a comparator IC for analog to digital conversion and an encoder IC(HT12E) which is use to encode the four bit data and then it will transmit by an RF Transmitter module.
At the receiving end an RF Receiver module receive's the encoded data and decode it by an decoder IC(HT12D). This data is then  processed by a microcontroller (P89V51RD2) and finally our motor driver to control the motor's. 
Robot 
Gesture device
As we can see in the images one is robot and the another is to trnsmit the gesture data to robot.
Now its time to break the task in different module's to make the task easy and simple any project become easy  or error free if it is done in different modules. As our project is already devided into two different part transmitter and receiver. We will discuss both of them one by one. Apart from Power Supply as it was discussed in last blog you can see that by just click here

1> Transmitter device or Gesture device: This part contain four module in it--
                                                                                           1- Accelerometer
                                                                                           2- Comparator                                                                                 
                                                                                           3- Encoder(HT12E)
                                                                                           4- RF Transmitter 
      Accelerometer:-  An Accelerometer is a kind of sensor which gives an analog data while moving in X,Y,Z direction or may be X,Y direction only depend's on the type of the sensor.Here is a small image of an Accelerometer shown. We can see in the image that their are some arrow showing if we tilt these sensor's in that direction then the data at that corresponding pin will change in the analog form.
The Accelerometer having 6 pin-
1- VDD- We will give the +5volt to this pin







2- GND- We simply connect this pin to the ground for biasing.
3- X- On this pin we will receive the analog data for x direction movement.
4- Y- On this pin we will receive the analog data for y direction movement.
5- Z-  On this pin we will receive the analog data for z direction movement.
6- ST- this pin is use to set the sensitivity of the accelerometer 1.5g/2g/3g/4g.
     
      Comparator:- For the purpose to change the analog voltage into digital we use comparator which compare that analog voltage to a reference voltage and give a particular high or low voltage.
LM324 IC
The figure shown here is comparator IC. The pin 1,7,8 and 14 are use to give out put to the microcontroller.We should connect a reference voltage to the -ve terminal for high output when input is high(+ve terminal for high output when input is low) from the LM324 IC.
In this circuit we compare the data from x with two terminal one for positive x direction and negative x direction and same for y direction.
HT12E encoder
Encoder(HT12E IC):- The HT12E is an 4bit encoder which encode the input data applied on it .The pin description of the HT12E is shown in the figure .
  • pin (1 to 8) A0-A7 known as address bits so we do not need to consider them.
  • pin no (9 and 18) are use to bias the IC  as pin-18 as VCC and pin-9 as GND.
  • pin - 17 is connected to the rf transmitter module Din.
  • pin-16 and pin-15 are connected by an Osc resistor known as Roscc(1.1 Mohm)
  • pin-14 is connected to ground to enable the transmitt.
  • pin-13 to pin-10 are known as AD0 to AD3 those having the 4bit data which is required to transmit.
      RF Transmitter Module(TX):- The transmitter module is working  on the frequency of 433MHz and is easily available in the market at the cost of 250rs .
  • The vcc pin is connected to the +terminal in the circuit.
  • The data pin is connected to the HT12E(pin no-17) that is transmitted or we can say that encoded data.
  • The next pin is shown in figure is GND that is connected to the ground terminal.
  • Now the last pin ANT this is connected to a small wire as an antenna.
  • CIRCUIT OF GESTURE DEVICE (TRANSMITTING MODULE)
1> Receiver or Robot:  This part contain four module--         
  1. Receiver
  2. Decoder(HT12D)
  3. Process(microcontroller 8051)
  4. Actuator (Motor driver L293D)
  RF Receiver Module(RX):- The RF receiver module will receive the data which is transfered by the gesture device. It is also working as similar to the transmitter module-
  • Connect the +vcc pin to the 5volt terminal
  • Connect the ground pin to the ground terminal 
  • The data pin is then connected to the HT12D (pin-14)
  • So that we can get the decoded 4 bit data
    Decoder (HT12D):- In a very simple way we can say that an HT12D converts that serial data into parallel which is received by the rf receiver module.The input data is decoded when no error or unmatched codes are found. A valid  transmission in indicated by a high signal at VT pin that is pin no 17.
HT12D
  • pin 18     : It is use to give the +vcc or biasing to the  IC HT12D this pin is connected with the +5 volt
  • Pin 17     : It is the valid transmission pin it will high when the transmission is ok so that we connected this pin to an led for indication.
  • Pin 16-15: we connect these two pin directly by a 51k resistor
  • Pin 14     : This pin is connected with the rf receiver module data pin to receiving the serial data.
  • Pin 10-13: These pins are data pin which is transferred by the gesture module
Process (Microcontroller P89V51RD2): The processing is the most important part of the robot. Till now we get the data from the decoder now based on that data we have to make some decision so here the role of microcontroller is coming up. We use an 8051 microcontroller for our circuit to give them a decision capability. Our microcontroller is made up by nxp the product name is P89V51RD2
The basic circuit to initialize the microcontroller is shown below. We just need an reset circuit and oscillator to run the program.
8051 micro controller circuit
 we use the port 1 as an input port and port 2 as an output port.
so the Data from the decoder  will connect with pin 1,2,3,4 and motor should be connect with pin 21,22,23,24. 
For forward the data to the Port2 is 0a or for backward it is 05 then for lest its 02 and for right it is 08.

ACTUATOR'S(L293D): The Actuator's are those devices which actually gives the movement or to do a task like motor's. In the real world their are various types of motor's available which works on different voltages. So we need motor driver for running them through the controller. To get interface between motor and microcontroller . We use L293D motor driver IC in our circuit.
motor driver circuit
As in above circuit 2 pin male 
As in above circuit a 2 pin male connector in connected to the pin 8 this will provide the operating voltage for the motor like if we want to run our voltage on 12volt. so we just have to connect a 12volt power source 
Now here is the full circuit diagram of the robot (receiver module)

RECEIVER MODULE




ACTUAL CIRCUIT OF RECEIVING  MODULE
PROGRAM: Now here is the program of the Gesture Controlled robot. The program is in Embedded-C. The microcontroller we used is 8051.

/**********************************************************************************
    Gesture Controlled robot C program using 8051 microcontroller

***********************************************************************************
INPUT DATA to PORT 1 LM324     OUTPUT DATA to PORT 2 for L293D

MSB  LSB              MSB    LSB
1111  0001(0xf1)          0000   1010(0x0a)    forward
1111  0010(0xf2)          0000    0010(0x02)    right
1111  0100(0xf4)          0000    1000(0x08)    left
1111  1000(0xf8)          0000   0101(0x05)    backward

**********************************************************************************/
#include<reg51.h>        //INCLUDE reg51.h for 8951   

void main()
{
    P1=0xff;    // set port as input port
    P2=0x00;    // set port as output port
  
    while(1)    // infinite loop
    {
    if(P1==0xf1)
    {
        P2=0x0a;
    }
    else if(P1==0xf2)
    {
        P2=0x02;
    }   
    else if(P1==0xf4)
    {
        P2=0x08;
    }   
    else if(P1==0xf8)
    {
        P2=0x05;
    }
    else
    {
        P2=0x00;
    }
   }


Here is the video presentation of the gesture robot....




Here are some more pics of the robot . Leta take a look.










***************************** thanx and best of luck*****************************
Share this article

73 comments:

  1. Which 3 IC used in transmitter?? on your hand?

    1.lm324
    2.encoder

    which is 3rd IC?

    ReplyDelete
    Replies
    1. beta abcd padho pehle

      Delete
  2. no third ic is used ....actually i made this circuit for other project and i used tht hardware for gesture the ciruit diagram is correct and no third ic is there....

    ReplyDelete
  3. what are the specifications of motors u hav used n also plz suggest a suitable program for this?

    ReplyDelete
  4. sir can you give the program for this project please

    ReplyDelete
  5. This comment has been removed by the author.

    ReplyDelete
  6. sir,what is the range of variable resistance that we have to use while transmitting

    ReplyDelete
  7. Hello sir,
    i want to make this robo as my final year project..
    i need your help with the same..
    plz give me the 8051 coding if possible..
    my email: akkii.som@gmail.com
    thnx in advance..

    ReplyDelete
  8. Hiiii....Bro i liked ur project..and i'm also working on a similar project using accelerometer...so can u plzz...provide me the code for this project..
    my id: bawadavinder@yahoo.com

    Thanks...:)

    ReplyDelete
  9. Your projects sounds fun.i also want to work on this project.please email me the coding for the microprocessor.
    my email:doomed.007@gmail.com

    Thnx in advance :)

    ReplyDelete
  10. This comment has been removed by the author.

    ReplyDelete
  11. please mail me coding for the microprocessor. my email id is: priyamsharma4490@gmail.com

    ReplyDelete
  12. hey could you mail me the microprocessor coding to thowseaf786@hotmail.com

    ReplyDelete
  13. Hello bro,
    i m making this robo to my final year project for diploma...plz help me...
    i need your help with the same..
    plz give me the 8051 coding.....
    my email: rahul.tike@yahoo.com
    thnx in advance

    ReplyDelete
  14. sir i want to make this for my final year project so please give me for this coding and hex file

    ReplyDelete
  15. sir please send me the code,,,,,,
    my id: varaprasad239@gmail.com

    ReplyDelete
  16. sir can you send me the code please
    mail id:manikantha.g460@gmail.com

    ReplyDelete
  17. sir,what is the range of 10k variable resistor while transmitting plzzzzzzzz help me n my mail id is rveladri@gmail.com

    ReplyDelete
  18. can u plz mail me the code?? thank you..!!
    my id is: jinx.rodes@gmail.com

    ReplyDelete
  19. can u plzzzzzzzz mail me the programming at tejas.salunkhe@gmail.com

    ReplyDelete
  20. wat else can be added in this project or any variations??? pls mail me on wprachiti@gmail.com

    ReplyDelete
  21. wat else can be added in this project or any variations??? n extension pls mail me on rveladri@gmail.com

    ReplyDelete
  22. project sounds nice please send me code and diagram and tell me how to burn the code into ics.how a programmer for this can be made if i am using 89c2051or 8051or which supprot both the ics ,do tell me if u have any schematics please frward it to.e mailid-abhishekpdh27@gmail.com

    ReplyDelete
  23. can u plz mail me all stuf for this project plz its urgent..
    mail me at akshayahuja17@gmail.com

    ReplyDelete
    Replies
    1. friend first tell me what exactly u want then surely i will help you

      Delete
    2. bhai i actually need clear circuit diagrma for reciever module

      Delete
  24. i am actually trying to do a similar project...so i would really appreciate if you could send me the related stuff like circuit diagrams and the source code.........plz send it to josephg247@gmail.com

    ReplyDelete
  25. This comment has been removed by the author.

    ReplyDelete
  26. sir i want 2 ask how correct comparator ic LM324 is converting analog signal from accelerometer into digital? Is this conversion reliable? what is the range of smallest movement of hand in any direction (example forward) so that LM324 can give precise digital output ?

    ReplyDelete
  27. sir plz send the full docment of this project to my mail sagar.728@gmail.com

    ReplyDelete
  28. sir plzz mail me the code of this project my email id is omkar.nightmare@gmail.com

    ReplyDelete
  29. let me Point out one thing, you are using ADXL335 accelerometer, ryt? Maximum Vss of it is 3.6V but you are giving 5v to it which will burn it.

    ReplyDelete
  30. can u plz mail me all stuf for this project plz its urgent..
    mail me at Ayomideodegbesan@yahoo.com

    ReplyDelete
  31. hello,i am workimg on the same project so could you please help me by mailing me the coding at suyashsmailbox@gmail.com
    thanks

    ReplyDelete
  32. hello ,i'm a hobbyist and i am interested in this project.this has also come on the electronics for you magazine .CAN u PLEASE send me the pcb layout and can you post a printed schematic on the blog

    ReplyDelete
  33. please can anyone mail me the code for the above project . i am really struck with the programming part of this . Please help me out with the programming its really urgent for me..
    i have used ATmega 16 microcontroller.
    please mail me the code asap if anyone has it at- rahul.sirohi.10@gmail.com

    ReplyDelete
  34. Please can anyone mail me the code of this project.I need to see the coding as I am working on this project for my final year my email address is montighosh007@yahoo.in

    ReplyDelete
    Replies
    1. abe abcd padh pehle
      salle ko paki pakie chhahiye

      Delete
  35. Sir can u plz send me full layouts and code. . My email id is velhalomkar@gmail.com

    ReplyDelete
  36. hi.. i want to make this robot as my finale year project can you please send the full detail of this gesture control robot.....thank you.... at vaghela.jagrut@yahoo.com

    ReplyDelete
  37. sir,
    i want to do this project.Can you please send me the code.
    (shobana5.sr@gmail.com).

    ReplyDelete
  38. from this kits are brought can u plz tell me
    its urgent ...

    ReplyDelete
  39. wat is the use of this robot...????

    ReplyDelete
  40. can u tell me how u adjusted the preset given to the comparator ..is it just by trial and error method

    ReplyDelete
  41. please tell me from where i can buy an accelerator ic please ..... at vaghela.jagrut@yahoo.com

    ReplyDelete
  42. sir
    i want to do this project.Can you please send me the code.
    here is my email id :saiprasad.veer@gmail.com
    please send immediately its urgent......plz sir

    ReplyDelete
  43. sir,
    can u tell me how to use the output of z axis in accelerometer.
    in the above diagram of transmitter, only x and y outputs are used.
    in left and right movement , there will be change in all three axis????
    pls send me the required solution on my email: ronak2601@gmail.com

    ReplyDelete
    Replies
    1. Z axis is for up and down movement. You cannot move your car in up and down direction.

      Delete
    2. but there will be changes in co-ordinates if we r using 3 axis .

      Delete
  44. hey,can you please send more details about this system

    ReplyDelete
  45. sir could u plz send me the full programming code for this project....my mail id is krsanju98s@gmail.com

    ReplyDelete
  46. the range of variable resistors in this project is 1.6V try it will work

    ReplyDelete
  47. Sir i want to make this project for my final year...please provide me all the details on my mail id is
    mr.abhi.chauhan@gmail.com..
    i will be highly thankful to you

    Abhi Chauhan

    ReplyDelete
  48. sir please provide the clear schematics of the circuit,,hot to set the preset...which antenna is to be used..please sir

    mr.abhi.chauhan@gmail.com

    Abhi Chauhan

    ReplyDelete
  49. sir need the full detail about accelerometer based gseture recognition.

    ReplyDelete
  50. sir ,how to simulate this project ..and if imlate then in which softwere...plz tell me sir

    ReplyDelete
  51. Sir i am almost done with this project and i have verified and checked each block of it which is working fine. The only problem i am facing right now is with the microcontroller. I have burnt the program which you have mentioned on the blog. But when the uC gets the input at port1 it does not give the desired ouput at port2. Infact all the pins at port2 give a zero voltage output even after the variations of the accelerometer. I am not able to figure out right now what can be the problem with this. Can you please help me with this as i need to submit my project in next week itself.
    Thank you very much sir.

    ReplyDelete
    Replies
    1. what was the refernce voltage given to the comparator

      Delete
  52. sir I can't get desire output of camparator.......
    what is the exact out put of decoder at the recever

    ReplyDelete
  53. Sir i am almost done with this project and i have verified and checked each block of it which is working fine. The only problem i am facing right now is with the microcontroller. I have burnt the program which you have mentioned on the blog.bt prlm is decoder ic not getting power supply ,,,,sir pls help me

    ReplyDelete
  54. Hey guys any one want the another program. i will upload the program for this project (alp and
    embedded c ).....
    Amore413@gmail.com

    ReplyDelete
    Replies
    1. It will be really helpful if u could upload it here or can u mail it to me at anudeep759@gmail.com please...
      Thanks in advance!!

      Delete
  55. Helo sir, i'm also working on a similar project using accelerometer...so can u please...provide me the code for this project. I am using atmel at89s52 Microcontroller. It is also a 8051 mc.. Hope u'll ASAP..
    my email id: frijoc@gmail.com Thanks...:)

    ReplyDelete
  56. i am using pic 16f887 so can i use ADC intead of encoder decoder

    ReplyDelete
  57. Sir, it is a great idea but i m having a problem. How can we program the 8051mc. PLZ rply as soon as possible.
    my email id:ahujaaniket007@gmail.com

    ReplyDelete

 
Copyright © 2014 2embeddedrobotics • All Rights Reserved.
Template Design by PAZZOTECH SOLUTIONS • Powered by Blogger
back to top