ACCELEROMETER BASED WIRELESS GESTURE CONTROLLED ROBOT USING 8051 (ATMEL’S AT89S52)
The gesture controlled robot is a special kind of robot which works withyour hand gestures. It is possible to control the movement of robot in desired
direction just with your hand gestures. 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.
This robot is mainly divide into 2 parts:
1. Transmitter – The gesture device.
2. Receiver – The Robot.
Now let’s discus about transmitter first.
The transmitter consist of following analog and digital components:
1. Analog accelerometer ( motion sensor )
2. Comparator (LM324 OP-AMP)
3. 4-bit Encoder (HT12E)
4. RF transmitter (remote control )
THE GESTURE (TRANSMITTER) DEVICE:
THE TRANSMITTER SCHEMATIC:
|the transmitter schematic|
THE TRANSMITTER PCB:
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 there 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.
The 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.
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.Here 10k pots are used to give fix reference
voltage to LM324 which can be used to adjust sensitivity & control o/p of LM324.
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.
is an 4bit encoder which encode the input data applied on it .
1. pin-(1 to 8) A0-A7 known as address bits so we do not need to consider them.
These pins are only consider while using multiple transmission devices at same
2. pin-no (9 and 18) are use to bias the IC as pin-18 as VCC and pin-9 as GND.
3. pin- 17 is connected to the rf transmitter module Din.
4. pin-16 and pin-15 are connected by an Osc resistor known as Roscc(1.1 Mohm)
5. pin-14 is connected to ground to enable the transmitt.
6. pin-13 to pin-10 are known as AD0 to AD3 those having the 4bit data which is
required to transmit.
RF Transmitter (Tx) :
The transmitter module is working on the frequency of 433MHz and
315MHz. 433MHz is good for indoor use while 315MHz is good for outdoor use.
They are easily available in the market at the cost of 350rs .
RF Transmitter :
1. The vcc pin is connected to the +terminal in the circuit.
2. The data pin is connected to the HT12E(pin no-17) that is transmitted or we can
say that encoded data.
3.The next pin is shown in figure is GND that is connected to the ground terminal.
4.Now the last pin ANT this is connected to a small wire as an antenna. (17cm for
433MHz and 23cm for 315MHz).
Now let’s discus about the receiver i.e. robot.
The receiver consist of following analog and digital components:
1. RF receiver (Rx)
2. 4-bit decoder (HT12D)
3. The microcontroller (AT89S52)
4. The motor driver (L293D)
5. 16*2 LCD display.
THE RECEIVER SCHEMATIC:
|The Robot Circuit.|
THE RECEIVER PCB:
|The Robot PCB|
REAL PCB IMAGE:
THE 8051 EXTENSION BOARD WHICH I USED:
|8051 IO board.|
8051 I/O Board Image:
The RF receiver (Rx) :
The RF receiver module will receive the data which is transmitted by the
gesture device. It is also working as similar to the transmitter module.
RF Rx :
• 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.
The 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.
• 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
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 Atmel the product name is AT89S52. We just need an reset circuit and
oscillator to run the program.
Program for Micro-Controller in C language using Keil Compiler.
THE 16*2 Alphanumeric LCD display:
|16*2 LCD Display|
Make all the LCD connections as shown in the receiver circuit diagram. Please add
10K preset between vcc & gnd and connect variable pin to 3rd pin of LCD (VEE)
for suitable contrast ration adjustment.
The Accurator: L293D Motor driver:
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. 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 12 or 9 volt power source.
SOME MORE IMAGES & VIDEO..!!
HERE IS A VIDEO... MUST SEE TO UNDERSTAND FUNCTION..
|Weightless Chassis (Body of Robot)|
Please Visit again the blog for latest updates...!!