Professional Documents
Culture Documents
INTRODUCTION
Assistive technology plays a critical role in the lives of people with
severe disabilities and help them to lead independent self-supportive lives. Persons
severely disabled as a result of causes ranging from traumatic brain and spinal cord
injuries to stroke and cerebral palsy generally find it extremely difficult to carry
out everyday tasks with continuous help. Assistive technologies that help them
communicate their intentions and effectively control their environment, wheelchair
for their movement can greatly improve the quality of life for this group of people
and may help them to be employed.
A large group of assistive devices are available that are controlled by switches.
The switch integrated hand split, sip and puff device, chin control system are all
switch based systems and provide the user with limited degrees of freedom.
A group of head mounted assistive devices have been developed that emulate a
computer mouse with head movements. Cursor movements in these devices are
controlled by tracking an infrared beam emitted or reflected from a transmitter or
reflector attached to the users glasses, cap, or headband. One limitation of these
devices is that only those people whose head movement is not inherited may avail
of the technology. Another limitation is that the users head should always be in
positions within the range of the device sensors. For example the controller may
not be accessible when the user is lying on bed or not sitting in front of a computer.
Page No. 1
The needs of persons with severe motor disabilities who cannot benefit from
mechanical movements of any body organs are addressed by utilizing electric
signals originated from brain waves or muscle twitches. Such brain computer
interfaces (BCI) that operate on electroencephalography (EEG) signals are very
slow and limited in bandwidth. Implantable BCI technologies on the other hand are
very invasive (require a brain surgery) and heavily rely on signal processing and
complex computational algorithms, which can results in delays and bulky systems
that may also be very costly.
SSJCET, Asangaon, EXTC
Page No. 2
Why tongue?
Tongue and mouth occupy an amount of sensory and motor cortex that rivals
that of the fingers and the hand. Hence they are capable of sophisticated motor
control and manipulation tasks.
One of the major advantages of the tongue is that its directly connected to the
brain unlike the rest of the body, which is connected to the brain through the spinal
cord. A patient who has even the highest level of spinal cord injury can still move
his or her tongue. Also tongue is least affected in most neuromuscular degenerative
disorders. Noninvasive access to the tongue is readily available. The tongue has
many degrees of freedom, and it can move very fast and accurately within the
mouth cavity. Therefore it is a suitable organ for manipulating assistive devices.
The tongue muscles has a very low rate of perceived exertion. Therefore, a tongue
operated device can be used continuously over a long period.
Page No. 3
encoded data through the RF transmitter. At receiver end RF receiver receives the
data through the decoder and fed as input to the micro controller. The controller
performs the corresponding actions i.e., Robot movement. This Project consists of
two Microcontroller Units, Robot, relay, connecting copper plate and wireless
communication through RF technology.
SSJCET, Asangaon, EXTC
Page No. 4
Page No. 5
modules. The copper plate collect information from the movement of the tongue
and provides the information to the microcontroller and the controller judges
whether the instruction is right movement or left movement instruction and
controls the operation respectively. To perform the task, the controller is loaded
with intelligent program written using Embedded C language.
An embedded system is a combination of software and hardware to
perform a dedicated task. Some of the main devices used in embedded products are
Microprocessors and Microcontrollers. Microprocessors are commonly referred to
as general purpose processors as they simply accept the inputs, process it and give
the output. In contrast, a microcontroller not only accepts the data as inputs but
also manipulates it, interfaces the data with various devices, controls the data and
thus finally gives the result. The Tongue Controlled speaking robot using 89c52
Microcontroller is an exclusive project that can move the wheel chair according to
the instructions given by the above said microcontroller.
Page No. 6
CHAPTER 2
LITERATURE SURVEY
2.1 Embedded Systems
An embedded system is a computer system designed to perform one or
a few dedicated functions often with real-time computing constraints. It is
embedded as part of a complete device often including hardware and mechanical
parts. By contrast, a general-purpose computer, such as a personal computer (PC),
is designed to be flexible and to meet a wide range of end-user needs. Embedded
systems control many devices in common use today.
Embedded systems are controlled by one or more main processing
cores that are typically either microcontrollers or digital signal processors (DSP).
The key characteristic, however, is being dedicated to handle a particular task,
which may require very powerful processors. For example, air traffic control
systems may usefully be viewed as embedded, even though they involve
mainframe computers and dedicated regional and national networks between
airports and radar sites. (Each radar probably includes one or more embedded
systems of its own.)
Since the embedded system is dedicated to specific tasks, design
engineers can optimize it to reduce the size and cost of the product and increase the
reliability and performance. Some embedded systems are mass-produced,
benefiting from economies of scale.
Physically embedded systems range from portable devices such as
digital watches and MP3 players, to large stationary installations like traffic lights,
factory controllers, or the systems controlling nuclear power plants. Complexity
varies from low, with a single microcontroller chip, to very high with multiple
units, peripherals and networks mounted inside a large chassis or enclosure.
Page No. 7
Page No. 8
concept
of
programmable
controllers
evolved
from
traditional
Page No. 9
Reliability
Page No. 10
2.2 Microcontroller
2.2.1 Microcontroller
Introduction to Microcontrollers
Page No. 11
applications in which cost and space are critical. The microcontroller used in this
project is AT89s52.
AT89S52
Features
Compatible with MCS-51 Products
8K Bytes of In-System Programmable (ISP) Flash Memory
Watchdog Timer
Power-off Flag
Page No. 12
Description
The AT89S52 is a low-power, high-performance CMOS 8-bit
microcontroller with 8K bytes of in-system programmable Flash memory.
The device is manufactured using Atmels high-density nonvolatile
memory technology and is compatible with the industry- standard 80C51
instruction set and pin out. The on-chip Flash allows the program memory
to be reprogrammed in-system or by a conventional nonvolatile memory
programmer. By combining a versatile 8-bit CPU with in-system
programmable flash on a monolithic chip, the Atmel AT89S52 is a
powerful microcontroller which provides a highly-flexible and costeffective solution to many embedded control applications.
The AT89S52 provides the following standard features: 8K
bytes of flash, 256 bytes ,of RAM, 32 I/O lines, Watchdog timer, two data
pointers, three 16-bit timer/counters, a six-vector two-level interrupt
architecture, a full duplex serial port, on-chip oscillator, and clock
circuitry. In addition, the AT89S52 is designed with static logic for
operation down to zero frequency and supports two software selectable
power saving modes. The Idle Mode stops the CPU while allowing the
RAM, timer/counters, serial port, and interrupt system to continue
functioning. The Power-down mode saves the RAM contents but freezes
the oscillator, disabling all other chip functions until the next interrupt or
hardware reset.
Page No. 13
Pin configuration
Page No. 14
Page No. 15
Pin Description
VCC:- Supply voltage.
GND:- Ground.
Port0:-Port 0 is an 8-bit open drain bidirectional I/O port. As an
output port, each pin can sink eight TTL inputs. Written to port 0 pins, the pins can
be used as high impedance inputs. Port 0 can also be configured to be the
multiplexed low-order address/data bus during accesses to external program and
data memory. In this mode, P0 has internal pull-ups. Port 0 also receives the code
bytes during Flash programming and outputs the code bytes during program
verification. External pull-ups are required during program verification.
Port 1:- Port 1 is an 8-bit bidirectional I/O port with internal pull-ups. The Port 1
output buffers can sink/source four TTL inputs. When 1s are written to Port 1 pins,
they are pulled high by the internal pull-ups and can be used as inputs. As inputs,
Port 1 pins that are externally being pulled low will source current (IIL) because of
the internal pull-ups. In addition, P1.0 and P1.1 can be configured to be the
timer/counter 2 external count input (P1.0/T2) and the timer/counter 2 trigger input
(P1.1/T2EX), respectively, as shown in the following table. Port 1 also receives the
low-order address bytes during Flash programming and verification.
Page No. 16
Port 2:- Port 2 is an 8-bit bidirectional I/O port with internal pull-ups. The Port 2
output buffers can sink/source four TTL inputs. When 1s are written to Port 2 pins,
they are pulled high by the internal pull-ups and can be used as inputs. As inputs,
Port 2 pins that are externally being pulled low will source current (IIL) because of
the internal pull-ups. Port 2 emits the high-order address byte during fetches from
external program memory and during accesses to external data memory that use
16-bit addresses (MOVX @ DPTR). In this application, Port 2 uses strong internal
pull-ups when emitting 1s. During accesses to external data memory that use 8-bit
addresses (MOVX @ RI), Port 2 emits the contents of the P2 Special Function
Register. Port 2 also receives the high-order address bits and some control signals
during Flash programming and verification.
Port 3 :-Port 3 is an 8-bit bidirectional I/O port with internal pull-ups. The Port 3
output buffers can sink/source four TTL inputs. When 1s are written to Port 3 pins,
they are pulled high by the internal pull-ups and can be used as inputs. As inputs,
Port 3 pins that are externally being pulled low will source current (IIL) because of
the pull-ups.
Page No. 17
RST:- Reset input. A high on this pin for two machine cycles while the oscillator
is running resets the device. This pin drives high for 98 oscillator periods after the
Watchdog times out. The DISRTO bit in SFR AUXR (address 8EH) can be used to
disable this feature. In the default state of bit DISRTO, the RESET HIGH out
feature is enabled.
ALE/PROG:- Address Latch Enable (ALE) is an output pulse for latching the low
byte of the address during accesses to external memory. This pin is also the
program pulse input (PROG) during Flash programming.
In normal operation, ALE is emitted at a constant rate of 1/6 the oscillator
frequency and may be used for external timing or clocking purposes. Note,
however, that one ALE pulse is skipped during each access to external data
memory. If desired, ALE operation can be disabled by setting bit 0 of SFR location
8EH. With the bit set, ALE is active only during a MOVX or MOVC instruction.
Otherwise, the pin is weakly pulled high. Setting the ALE-disable bit has no effect
if the microcontroller is in external execution mode
PSEN:- Program Store Enable (PSEN) is the read strobe to external program
memory. When the AT89S52 is executing code from external program memory,
PSEN is activated twice each machine cycle, except that two PSEN activations are
skipped during each access to external data memory.
EA/VPP:-External Access Enable. EA must be strapped to GND in order to enable
the device to fetch code from external program memory locations starting at
0000H up to FFFFH. Note, however, that if lock bit 1 is programmed, EA will be
internally latched on reset.
EA should be strapped to VCC for internal program executions.
This pin also receives the 12-volt programming enable voltage (VPP) during flash
programming.
XTAL1:- Input to the inverting oscillator amplifier and input to the internal clock
operating circuit.
SSJCET, Asangaon, EXTC
Page No. 18
Page No. 19
Page No. 20
a) Conversion of one form of electrical power to another desired form and voltage,
typically involving converting AC line voltage to a well-regulated lower-voltage
DC for electronic devices. Low voltage, low power DC power supply units are
commonly integrated with the devices they supply, such as computers and
household electronics.
b) Batteries.
c) Chemical fuel cells and other forms of energy storage systems.
d) Solar power.
e) Generators or alternators.
Page No. 21
Page No. 22
Features
Page No. 23
2.4 LED
A light-emitting diode (LED) is a semiconductor light source. LEDs
are used as indicator lamps in many devices, and are increasingly used for lighting.
Introduced as a practical electronic component in 1962, early LEDs emitted lowintensity red light, but modern versions are available across the visible, ultraviolet
and infrared wavelengths, with very high brightness. The internal structure and
parts of a led are shown in figures 2.4.1 and 2.4.2 respectively.
Page No. 24
Working
Page No. 25
2.5 Relay
The basis for relays, is the simple electromagnet the simplest relay, is the
Single Pole, Single Throw relay. It is nothing more than an electrically
controlled on-off switch. Its biggest property is the ability to use a very small
current, to control a much larger current. This is desirable because we can
now use smaller diameter wires, to control the current flow through a much
larger wire, and also to limit the wear and tear on the control switch.
Page No. 26
Applications
Relays are used to and for:
Page No. 27
GENERAL SPECIFICATION:
Drive method: 1/16 duty cycle
Display size: 16 character * 2 lines
Character structure: 5*8 dots.
Display data RAM: 80 characters (80*8 bits)
Character generate ROM: 192 characters
Character generate RAM: 8 characters (64*8 bits)
Both display data and character generator RAMs can be read from MPU.
Internal automatic reset circuit at power ON.
Built in oscillator circuit.
Page No. 28
PIN Configuration
JP1/JP14 Pins 1 Description
16
Pin1
Ground
Pin9
D2 (Not Used)
Pin2
VCC (+5)
Pin10
D3 (Not Used)
Pin3
Contrast
Pin11
D4
Pin4
Data/Command
Pin12
D5
(R/S)
Pin5
Read/Write (W)
Pin13
D6
Pin6
Enable (E1)
Pin14
D7
Page No. 29
Pin7
D0 (Not Used)
Pin15
VCC
(LEDSV+)
Pin8
D1 (Not Used)
Pin16
Ground
Page No. 30
Specification
Applications
i. Remote Keyless Entry (RKE)
ii. Remote Lighting Controls
iii. On-Site Paging
iv. Asset Tracking
v. Wireless Alarm and Security Systems
vi. Long Range RFID
vii. Automated Resource Management
viii. Wireless security systems
ix. Car Alarm systems
x. Remote controls.
xi. Sensor reporting
xii. Automation systems
Page No. 31
b. RF receiver-RWS-434
Specificatios
Page No. 32
Applications
i. Car security system
ii. Sensor reporting
iii. Automation system
iv. Remote Keyless Entry (RKE)
v. Remote Lighting Controls
vi. On-Site Paging
vii. Asset Tracking
viii. Wireless Alarm and Security Systems
ix. Long Range RFID
x. Automated Resource Management
Page No. 33
2.8.1 RF encoder
Page No. 34
Pin Description
1) A0~A7: Input pins for address A0~A7 setting. These pins can be
externally set to VSS or left open
2) D0~D3: Input pins for data D0~D3 setting and transmission enable, active
low. These pins should be externally set to VSS or left open
3) DOUT: Encoder data serial transmission output
4) OSC1 OSCILLATOR 1 Oscillator input pin
5) VCC Positive power supply
6) TE is a transmission enable pin of the HT12E
Specifications
Supply Voltage (HT12A) 0.3V to 5.5V
Supply Voltage (HT12E) 0.3V to 13V
Input VoltageVSS-0.3 to VDD+0.3V
Storage Temperature -50_C to 125_C
Operating Temperature -20_C to 75_C
Operation
The 212 series of encoders begin a 4-word transmission cycle upon receipt of a
transmission enable (TE for the HT12E or D0~D3 for the HT12A, active low).
This cycle will repeat itself as long as the transmission enable (TE or D0~D3) is
held low. Once the transmission enable returns high the encoder output completes
its final cycle and then stops Transmission enable For the HT12E encoders,
transmission is enabled by applying a low signal to the TE pin. For the
HT12A encoders, transmission is enabled by applying a low signal to one of the
data pins D0~D3.
SSJCET, Asangaon, EXTC
Page No. 35
B) RF decoder HT12F
Features
a. Operating voltage: 2.4V~12V
b. Low power and high noise immunity CMOS technology
c. Low standby current
d. Capable of decoding 12 bits of information
e. Binary address setting
f. Received codes are checked 3 times
g. Address/Data number combination
h. HT12F: 12 address bits only
i. Built-in oscillator needs only 5% resistor
j. Valid transmission indicator
k. Easy interface with an RF or an infrared transmission medium
l. Minimal external components
m. Pair with Holtek_s 212 series of encoders
General Description
The 212 decoders are a series of CMOS LSIs for remote control system
applications. They are paired with Holtek_s 212 series of encoders (refer to the
encoder/decoder cross reference table). For proper operation, a pair of
encoder/decoder with the same number of addresses and data format should be
chosen. The decoders receive serial addresses and data from a programmed 212
series of encoder that are transmitted by a carrier using an RF or an IR
transmission medium. They compare the serial input data three times
continuously with their local addresses. If no error or unmatched codes are
found, the input data codes are decoded and then transferred to the output pins.
The VT pin also goes high to indicate a valid transmission.
Page No. 36
2.8.1 RF decoder
Pin Description
i.
ii.
iii.
iv.
v.
vi.
vii.
viii.
Page No. 37
Description
The 212 series of decoders provides various combinations of addresses and data
pins in different packages so as to pair with the 212 series of encoders. The
decoders receive data that are transmitted by an encoder and interpret the first N
bits of code period as addresses and the last 12_N bits as data, where N is the
address code number. A signal on the DIN pin activates the oscillator which in turn
decodes the incoming address and data. The decoders will then check the received
address three times continuously. If the received address codes all match the
contents of the decoders local address, the 12_N bits of data are decoded to
activate the output pins and the VT pin is set high to indicate a valid transmission.
This will last unless the address code is incorrect or no signal is received. The
output of the VT pin is high only when the transmission is valid. Otherwise it is
always low. Output type of the 212 series of decoders, the HT12F has no data
output pin but its VT pin can be used as a momentary data output. The HT12D, on
the other hand, provides 4 latch type data pins whose data remain unchanged until
new data are received.
Applications
i. Burglar alarm system
ii. Smoke and fire alarm system
iii. Garage door controllers
iv. Car door controllers
v. Car alarm system
vi. Security system
vii. Cordless telephones
Page No. 38
2.9 DC Motor
A dc motor uses electrical energy to produce mechanical energy, very
typically through the interaction of magnetic fields and current-carrying
conductors. The reverse process, producing electrical energy from mechanical
energy, is accomplished by an alternator, generator or dynamo. Many types of
electric motors can be run as generators, and vice versa. The input of a DC motor
is current/voltage and its output is torque (speed).
2.9.1 DC motor
The DC motor has two basic parts: the rotating part that is called the armature and
the stationary part that includes coils of wire called the field coils. The stationary
part is also called the stator. Figure shows a picture of a typical DC motor, Figure
shows a picture of a DC armature, and Fig shows a picture of a typical stator. From
the picture you can see the armature is made of coils of wire wrapped around the
core, and the core has an extended shaft that rotates on bearings. You should also
notice that the ends of each coil of wire on the armature are terminated at one end
of the armature. The termination points are called the commentator, and this is
Page No. 39
where the brushes make electrical contact to bring electrical current from the
stationary part to the rotating part of the machine.
Operation
The DC motor you will find in modem industrial applications operates very
similarly to the simple DC motor described earlier in this chapter. Figure 12-9
shows an electrical diagram of a simple DC motor. Notice that the DC voltage
is applied directly to the field winding and the brushes. The armature and the
field are both shown as a coil of wire. In later diagrams, a field resistor will be
added in series with the field to control the motor speed. When voltage is
applied to the motor, current begins to flow through the field coil from the
negative terminal to the positive terminal. This sets up a strong magnetic field
in the field winding. Current also begins to flow through the brushes into a
commentator segment and then through an armature coil. The current continues
to flow through the coil back to the brush that is attached to other end of the coil
and returns to the DC power source. The current flowing in the armature coil
sets up a strong magnetic field in the armature.
Page No. 40
The magnetic field in the armature and field coil causes the armature to begin to
rotate. This occurs by the unlike magnetic poles attracting each other and the like
magnetic poles repelling each other. As the armature begins to rotate, the
commentator segments will also begin to move under the brushes. As an individual
commentator segment moves under the brush connected to positive voltage, it will
become positive, and when it moves under a brush connected to negative voltage it
will become negative. In this way, the commentator segments continually change
polarity from positive to negative. Since the commentator segments are connected
to the ends of the wires that make up the field winding in the armature, it causes
the magnetic field in the armature to change polarity continually from North Pole
to South Pole. The commentator segments and brushes are aligned in such a way
that the switch in polarity of the armature coincides with the location of the
SSJCET, Asangaon, EXTC
Page No. 41
armature's magnetic field and the field winding's magnetic field. The switching
action is timed so that the armature will not lock up magnetically with the field.
Instead the magnetic fields tend to build on each other and provide additional
torque to keep the motor shaft rotating.
When the voltage is de-energized to the motor, the magnetic fields in the armature
and the field winding will quickly diminish and the armature shaft's speed will
begin to drop to zero. If voltage is applied to the motor again, the magnetic fields
will strengthen and the armature will begin to rotate again.
Page No. 42
2.10.1 L293D IC
2.10.2 L293D
Pin diagram
Page No. 43
Page No. 44
General Description
The APR6016 offers non-volatile storage of voice and/or data in advanced MultiLevel Flash memory. Up to 16 minute s of audio recording and playback can be
accommodated. A maximum of 30K bits of digital data can be stored. devices can
be cascaded for longer duration recording or greater digital storage. Device control
is accomplished through an industry standard SPI interface that allows a
microcontroller to manage message recording and playback. This flexible
arrangement allows for the widest variety of messaging options. The APR6016 is
ideal for use in cellular and cordless phones, telephone answering devices, personal
digital assistants, personal voice recorders, and voice pagers. APLUS In targeted
achieves this high level of storage capability by using a proprietary analog multilevel storage techno logy implemented in an advanced non-volatile Flash memory
process. Each memory cell can typically store 256 voltage levels. This allows the
APR6008 voice t o reproduce audio signals in their natural form, eliminating the
need for encoding and compression which can introduce distortion.
PIN diagram
Page No. 45
Block Diagram
Page No. 46
you wish to record should be fed into the differential inputs ANAIN-, and
ANAIN+. After pre-amplification the signal is routed into the anti-aliasing filter.
The anti-aliasing filter automatically adapts its response based on the sample rate
being used. No external anti-aliasing filter is therefore required. After passing
through the anti-alias filter, the signal is fed into the sample and hold circuit which
works in conjunction with the Analog Write Circuit to store each analog sample in
a flash memory cell. When a read operation is desired the Analog Read Circuit
extracts the analog data from the memory array and feeds the signal to the Internal
Low Pass Filter. The low pass filter converts the individual samples into a
continuous output. The output signal then goes to the squelch control circuit and
differential output driver. The differential output driver feeds the ANAOUT+ and
ANAOUT- pins. Both differential output pins swing around a 1.23V potential.
The squelch control circuit automatically reduces the output signal by 6 dB during
quiet passages. A copy of the squelch control signal is present on the /SQLOUT
pin to facilitate reducing gain in the external amplifier as well. For more
information, refer to the Squelch section. After passing through the squelch circuit
the output signal goes to the output amplifier. The output amplifier drives a single
ended output on the AUDOUT pin. The single ended output swings around a
1.23V potential. All SPI control and hand shaking signals are routed to the
Master Control Circuit. This circuit decodes all the SPI signals and generates all
the internal control signals. It also contains the status register used for examining
the current status of the APR6016 .
Page No. 47
CHAPTER 3
PROJECT DESCRIPTION
3.1Block diagram
Page No. 48
Page No. 49
Page No. 50
3.2.1 Circuit
ircuit diagram of transmitter section
Page No. 51
3.2.2 Circuit
ircuit diagram of receiver section 1
Page No. 52
3.2.3 Circuit
ircuit diagram of receiver section 2
Page No. 53
CHAPTER 4
PCB FABRICATION
DEVELOPING THE PCB
Now that the Circuit Diagrams are ready, we can use them to develop the Printed
Circuit Boards.
1
Page No. 54
laser
board
printer.
"image"
is
with
laminating
Page No. 55
Page No. 56
isn't
absolutely
for
any
leaded
Page No. 57
Page No. 58
Concept
2100
Soldering
Station.
36
4.
Page No. 59
transmitting
mechanical
37
Page No. 60
7.
8.
9.
Page No. 61
CHAPTER 5
SOFTARE DISCRIPTION
5.1 Programming code for robot control
#include <stdio.h>
#include "89C51.h"
#include "Delay.h"
#include "LCD.h"
#include "APR6016.h"
#define Buzzer
P3_7
#define REC
P0_7
#define LR
P2_5
#define LB
P2_6
#define RR
P2_7
#define RB
P0_6
#define rfVT
P2_4
#define rfPort
P2&0x0f
Page No. 62
void Right();
void Left();
void RobotStop();
unsigned char idx;
unsigned int code Track[5]={0,80,160,240,320};
unsigned char Cmd;
unsigned char Dot
int main (void)
{
Beep(3,30000);
RobotStop();
SetAPR6016();
SetLCD();
if(REC==0)
{
LCD(1);printf("Recording Mode..");
LCD(2);printf("
VOICE
");
Beep(2,30000);
LCD(0);
for(idx=0;idx<3;idx++)
SSJCET, Asangaon, EXTC
Page No. 63
{LCD(1);printf("Track No:%3.3bu",idx);
if(REC==0)
{
Beep(1,10000);
LCD(2);printf("Recording.......");
SET_REC(Track[idx]);
DelayM(4000);
STOP();
LCD(2);printf("STOP............");
Beep(1,10000);
LCD(2);printf("Playing back....");
SET_PLAY(Track[idx]);
DelayM(4000);
STOP();
LCD(2);printf("STOP............");
}
else idx--;
DelayM(300);
}
}
SSJCET, Asangaon, EXTC
Page No. 64
ROBOT
");
DelayM(3000);
LCD(1);printf("Project Done by.");
LCD(2);printf("****************");
DelayM(3000);
LCD(1);printf("Navanath
LCD(2);printf("Pradeep
");
");
DelayM(3000);
LCD(1);printf("Deepak
LCD(2);printf("Gulabchand
");
");
DelayM(3000);
LCD(1);printf("Under Guidance..");
LCD(2);printf("Prof.Monali Patil ");
DelayM(3000);
LCD(1);printf("System Started..");
LCD(2);printf("****************");
SSJCET, Asangaon, EXTC
Page No. 65
DelayM(3000);
LCD(0);
START:
LCD(0);printf("Waiting for CMD.");
LCD(2);
Dot=0;
while(1)
{
printf(".");if(Dot++==16)goto START;
if((Cmd=ReadRF(30000))==0)continue;
if((Cmd!=1)&&(Cmd!=5)&&(Cmd!=6)&&(Cmd!=7)&&(Cmd!=8)&&(Cm
d!=9)&&(Cmd!=10))continue;
switch(Cmd)
{
case 5:
//forward
LCD(2);printf("
Forward.");
Forward();
break;
case 6:
//right
LCD(2);printf("
Right.");
Right();
SSJCET, Asangaon, EXTC
Page No. 66
break;
case 7:
//left
LCD(2);printf("
Left.");
Left();
break;
case 1:
//stop
LCD(2);printf("
Stop.");
RobotStop();
break;
case 8:
//stop
LCD(2);printf("Message - 1
");
RobotStop();
SET_PLAY(Track[0]);
DelayM(4000);
STOP();
break;
case 9:
//stop
LCD(2);printf("Message - 2
");
RobotStop();
SET_PLAY(Track[1]);
SSJCET, Asangaon, EXTC
Page No. 67
DelayM(4000);
STOP();
break;
case 10:
//stop
LCD(2);printf("Message - 3
");
RobotStop();
SET_PLAY(Track[2]);
DelayM(4000);
STOP();
break;
}//end switch
Beep(1,10000);
goto START;
}//end if
}
void Forward()
{
LR=1;
LB=0;
RR=0;
SSJCET, Asangaon, EXTC
Page No. 68
RB=1;
}
void Backward()
{
LR=0;
LB=1;
RR=1;
RB=0;
}
void Right()
{
LR=1;
LB=0;
RR=1;
RB=0;
}
void Left()
{
LR=0;
LB=1;
SSJCET, Asangaon, EXTC
Page No. 69
RR=0;
RB=1;
}
void RobotStop()
{
LR=0;
LB=0;
RR=0;
RB=0;
}
void Beep(unsigned char No,unsigned int Delay)
{
unsigned char tNo;
for(tNo=1;tNo<=No;tNo++)
{
Buzzer=0;
DelayI(Delay);
Buzzer=1;
DelayI(Delay);
}
SSJCET, Asangaon, EXTC
Page No. 70
}
unsigned char ReadRF(unsigned long SDelay)
{
unsigned long tSDelay;
unsigned char KeyCode=0;
for(tSDelay=0;tSDelay<=SDelay;tSDelay++)
{
if(rfVT)
{
KeyCode=rfPort;
break;
}
}
return(KeyCode);
}
Page No. 71
P3_7
#define RL1
P0_0
#define RL2
P0_1
#define RL3
P0_2
#define rfVT
P2_4
#define rfPort
P2&0x0f
Page No. 72
");
");
DelayM(3000);
LCD(1);printf("Deepak
LCD(2);printf("Gulabchand
");
");
DelayM(3000);
LCD(1);printf("Under Guidance..");
LCD(2);printf("Prof.Renu K. ");
DelayM(3000);
LCD(1);printf("System Started..");
LCD(2);printf("****************");
SSJCET, Asangaon, EXTC
Page No. 73
DelayM(3000);
LCD(0);
while (1)
{
RFID=ReadRF(30000);
if(RFID==0)continue;
//Read RFID
if((RFID!=2)&&(RFID!=3)&&(RFID!=4))continue;
LCD(0);LCD(1);printf("RFID:%bu",RFID);
switch(RFID)
{
case 2:
LCD(2);printf("Device-1 CTRL ");
RL1=~RL1;
break;
case 3:
LCD(2);printf("Device-2 CTRL ");
RL2=~RL2;
break;
case 4:
LCD(2);printf("Device-3 CTRL ");
SSJCET, Asangaon, EXTC
Page No. 74
RL3=~RL3;
break;
}
Beep(1,20000);
}
}
Page No. 75
P3_2
#define SW2
P3_3
#define SW3
P3_4
#define SW4
P3_5
Page No. 76
#define TE
P1_4
#define RFPort
P1
#define Buzzer
P3_7
Page No. 77
DelayM(2000);
}
if(SW2==0)
{
if(MODE==0)TxData=2;
if(MODE==1)TxData=5;
if(MODE==2)TxData=8;
RFPort=TxData;
TE=0;
Beep(1,100);
TE=1;
DelayM(2000);
}
if(SW3==0)
{
if(MODE==0)TxData=3;
if(MODE==1)TxData=6;
if(MODE==2)TxData=9;
RFPort=TxData;
TE=0;
SSJCET, Asangaon, EXTC
Page No. 78
Beep(1,100);
TE=1;
DelayM(2000);
}
if(SW4==0)
{
if(MODE==0)TxData=4;
if(MODE==1)TxData=7;
if(MODE==2)TxData=10;
RFPort=TxData;
TE=0;
Beep(1,100);
TE=1;
DelayM(2000);
}
}
}
void Beep(unsigned char No,unsigned int Delay)
{
SSJCET, Asangaon, EXTC
Page No. 79
Page No. 80
CHAPTER 6
ADVANTAGES, DISADVANTAGES AND APPLICATIONS
ADVANTAGES:
Robot can be controlled by the tongue movement.
Devices can be controlled by the same movement of the tongue.
Wireless controlling using RF communication.
Feedback status of the devices and robot movement can
be announced
DISADVANTAGES:
Input from tongue is very sensitive.
APPLICATIONS:
Useful for paralyzed persons.
Useful for handicapped persons
Page No. 81
CHAPTER 7
RESULTS
7.1 Result
The project Tongue Controlled Speaking Robot was designed
such that robot can move either forward or backward or right side or left side by
the movement of tongue. The tongue movement can be detected using connecting
copper plate and wireless communication through RF. The system can also be used
to control the electrical devices. The feedback status can be obtained using Voice
module.
Page No. 82
Page No. 83
Page No. 84
7.2 Conclusion
Page No. 85
7.4 References
Embedded Books & Websites
Myke
Customizing the
Predko,
Programming
and
8051
8051
8051,
Kenneth J. Ayala, The 8051 Microcontroller
ARCHITECTURE,
PROGRAMMING and APPLICATIONS, WEST PUBLISHIN
Page No. 86