Voice Controlled Robot For Remote Data Access VOICE CONTROLLED ROBOT FOR REMOTE DATA ACCESS PROJECT REPORT Submitted in the partial fulfilment of the award of degree of Bachelor of Technology in Electronics and Communication Engineering of Cochin University of Science and Technology by ARAVIND SURESH KUMAR NIRUPAMA SREEDHARAN SANDEEP AJAYAN SARIKA R Under the guidance of Mr. GOPAKUMAR C Asst. Prof., Electronics and Communication Engineering College of Engineering, Chengannur May 2011 College of Engineering, Chengannur
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Voice Controlled Robot For Remote Data Access
VOICE CONTROLLED ROBOT FOR REMOTE DATA ACCESS
PROJECT REPORT
Submitted in the partial fulfilment of the award of degreeof
Bachelor of Technologyin
Electronics and Communication Engineeringof
Cochin University of Science and Technologyby
ARAVIND SURESH KUMAR
NIRUPAMA SREEDHARAN
SANDEEP AJAYAN
SARIKA R
Under the guidance of
Mr. GOPAKUMAR CAsst. Prof., Electronics and Communication Engineering
College of Engineering, Chengannur
May 2011
Department of Electronics EngineeringCollege of Engineering, Chengannur– 689121
13 DATA SHEETS.....................................................................................81
College of Engineering, Chengannur
Voice Controlled Robot For Remote Data Access
INTRODUCTION
VOICE CONTROLLED ROBOT FOR REMOTE DATA ACCESS
College of Engineering, Chengannur
Voice Controlled Robot For Remote Data Access
This system developed to gather data of atmospheric condition in hazardous or remote areas
where human intervention is at risk is designed with microcontroller (PIC), LCD, ADC,
USART, Zigbee, sensors and visual basic 6.0. Values of atmospheric temperature, pressure,
humidity, light intensity and also wind direction are measured. Each of these readings has its
own importance under different situations, and hence the system to be developed here will
find diverse applications such as coal mines, wind turbines, power stations, and to some
extent for rescue operations.
The system has got two sections- TRANSMITTER (ROBOT) and RECEIVER (operator).
The transmitter section runs over a trolley with inbuilt RF receiver and hence is not a part of
system design. The trolley may use portions of unlicensed spectrum in the 27 MHz or 49
MHz bands (VHF) and is never expected to make any interference with other radio devices
included. An RF camera provided at ROBOT transmits video as well as audio information to
the operator side. Camera has its own transmitter operating at 0.9 GHz (UHF) and receiver
module at operator side with an A/V output which may be connected to a TV system. The
camera system is also never expected to make any interference with other RF. The sensor
data handled by the controller on ROBOT side is send to the operator side as serial data via
Xbee modules operating on both sides at 2.4 GHz in ISM band. Xbee is expected not to face
any interference from other RF modules operating in other frequency bands.
Sensors include: LM35 as temperature sensor capable of measurements within -50 to 150
°C; Wind direction sensor which has been designed on ring potentiometer with a wane on its
knob towards one side, that turns the knob under wind pressure; LDR circuitry used to
measure light intensity on linear scale; Sensor ICs are used for measuring atmospheric
pressure and humidity. On chip ADC is used to acquire sensor data in digital form with 8-
bit resolution. On chip USART module handles serial transmission and reception of data via
Xbee module within 1Km radius.
The entire system receives regulated power supply at 12V, 5V and 3.3V for each of the
modules and sensors. The supply may have a centre tap rectifier or battery as source.
The RS232 serial communication interface provides serial link between PC and transmitter
section, with MAX232 used as voltage level converter; i.e. the up conversion and down
conversion between 5V on receiver section PIC side and 12V on RS232 side. The Visual
College of Engineering, Chengannur
Voice Controlled Robot For Remote Data Access
Basic 6 operator interface running on PC provide operator, the interface for viewing the
sensor data received as well as to control the motion of trolley with voice commands or
onscreen keypad. This is possible by making use of relays in place of joystick of remote
control of trolley at receiver section, and being controlled by the controller at receiver
section based on commands from PC. The system runs at its maximum speed 9600bps being
limited by MAX232
LCD displays and RS232 interface are provided on both sides to perform test and
refinements under any stage of the project development as well as to ensure regular state of
working during operation.
The system shall be encased in a protective case that can withstand the atmospheric
conditions prevailing in the area of operation.
College of Engineering, Chengannur
Voice Controlled Robot For Remote Data Access
PROBLEM DEVELOPMENT AND OPTIMISED
SOLUTION
It is difficult to collect data at hazardous or remote areas where human intervention is at risk.
For such situations in coal mines, wind turbines, power stations, and to some extent for
College of Engineering, Chengannur
Voice Controlled Robot For Remote Data Access
rescue operations, the atmospheric conditions could not be measured. So this project aims at
making a system that employs various techniques to measure values of atmospheric
temperature, pressure, humidity, light intensity and also wind direction. Each of these
readings has its own importance/applications under different situations, and hence the
system to be developed here is expected to find diverse applications.
The system is planned to be built around a trolley which will carry the transmitter (ROBOT)
section consisting of sensors to remote places for data acquisition. It also contains the
wireless module for wireless data communication. The transmitted signal is to be received at
an operator section and displayed on PC. RF camera is used at ROBOT side to give
guidance and video information of the situation to receiver section. The control of trolley
may be made using voice commands or by using keypad both provided on display user
interface (PC).
The sensors as well as other modules shall be so chosen/designed to withstand the
atmospheric conditions of temperature, pressure and humidity which the system should face
as a whole.
College of Engineering, Chengannur
Voice Controlled Robot For Remote Data Access
BLOCK DIAGRAM
3.1 TRANSMITTER SECTION
College of Engineering, ChengannurPOWER SOURCE
AIR TEMPERATURESENSOR
PIC
MICROCONTROLLER
A
D
C
HUMIDITYSENSORLIGHT
SENSORWIND DIRECTION
SENSORPRESSURE
SENSOR
Voice Controlled Robot For Remote Data Access
3.2 RECEIVER SECTION
College of Engineering, Chengannur
3.3 V
5 V
8 16*2 LCD DISPLAY
XBEEMODULE
USART
CAMERA
TROLLEY
Voice Controlled Robot For Remote Data Access
College of Engineering, Chengannur
5
2
12 V
5 V
3.3 V
5 V
12 V
5 V
PIC
MICROCONTROLLER
PC INTERFACEVB FRONTEND
USARTMAX232
RS232 8 16*2 LCD DISPLAY
XBEEMODULE
POWER SOURCE
ULN2003 & RELAY
TROLLEY REMOTE
BUZZER
5
Voice Controlled Robot For Remote Data Access
BLOCK DIAGRAM DESCRIPTION
4.1 TRANSMITTER SECTION
College of Engineering, Chengannur
Voice Controlled Robot For Remote Data Access
The block diagram shows the data acquisition system with different sections built around the Peripheral Interface Controller (PIC). The various sensors such as those used to acquire temperature, humidity, pressure, wind direction and light are connected to ADC of the PIC. The pin 25 the TX of USART is the serial data output to Xbee. An 8- bit PORT of PIC is dedicated for 16*2 LCD, in which out of 8 only upper 4 lines will carry data and lower 4 is for control functions. The camera is an independent module with its own RF transmission system.
The program running in the controller will initialize every modules, perform scan of one sensor, transmits calibrated data in ASCII format suitable for display at receiver section and then displays the data in its own LCD. In a similar way data acquisition from each sensors is performed one by one. The entire process repeats itself.The power supply has a 9V cell as its source and provides regulated 5V supply for controller, sensors, LCD and also 3.3V for Xbee module. Camera operates on its own dedicated 9V cell.
4.2 RECEIVER SECTION
The receiver section is built around PIC and handles trolley motion control and data reception from transmitter section on one side while command reception from and data out to PC interface on other side. The major blocks consist of PC interface which is possible through RS232 interface which uses a MAX232 chip to perform required voltage level conversions for signals (5V on PIC side equivalent to 12V on RS232). The system runs at its maximum speed of 9600bps being limited by MAX232, which also ensures error free data acquisition from beginning to end. The PC interface has Visual Basic 6 program running on it that provides the user interface with facilities to see the received sensor data as well as give commands as voice or by onscreen keypad. The commands from PC as well as data from Xbee are received on the same pin 26, the RX of USART. Here also a 16*2 LCD module is used to display received commands. An LED indication while command reception is ON. The activation of trolley remote with 5V supply and controlling by means of four 12V relays is based on signals commands and signals respectively from PC. A ULN2003 chip working at 12V actuates relays based on signals from PIC. Here the power supply has a 12V source consisting of a 230V-50Hz (60mA) transformer.
The program initializes every module and starts reception of data from transmitter section and during the same time checks for any signal to initiate voice command reception on the same pin. Upon reception of signal to initiate voice command reception program stops data reception from Xbee, switches ON relays with a buzzer indication and waits for command reception. Upon reception of commands the received command is displayed on LCD and necessary signals are issued to control the trolley motion to the relay circuitry. Only on reception of ‘exit’ command system returns for data reception. The entire process repeats.
The salt solution must be put into a glass container with a sealable top. With a couple
of cm. Salt solution on bottom the humidity above is constant and only depends on
temperature. Place the sensor into the air above the solution and close the access hole
College of Engineering, Chengannur
Voice Controlled Robot For Remote Data Access
carefully. Leave the sensor stabilizing for about half an hour and read afterwards the sensors
value. Be aware that the temperature of the container needs to be constant over the period.
Therefore it is recommended to use a well-isolated glass container. In case a two point
calibration is performed in general LiCl and NaCl solutions are used. In a three point
calibration LiCl, Mg(NO3) and K2SO4 solutions are recommended.
6.7.5 Pressure Sensor
Figure 6.7.5.1- The internal schematic (left) and pressure sensor module (right)
The pressure sensor used in this project is ‘MPXHZ6115A6U’ model on-chip signal
conditioned, temperature compensated and calibrated sensor from Motorola. Note that the
sensor is internally calibrated for working at 5V supply and hence further calibrations are
never needed.
Figure 6.7.5.2- Output source current operation circuit (Datasheet)
Significant Features:-
Supply Voltage : 5 VDC
College of Engineering, Chengannur
Voice Controlled Robot For Remote Data Access
Supply Current : 10mA
Pressure range : 15- 115Kpascal (Max. 400KPascal)
Temperature : -40° C- 125° C
Accuracy : +/- 1.5
Sensitivity : 45.9 mV/Kpascal
Output is calculated as:-
Vout= VS* (0.009* P - 0.095) ± (Pressure Error x Temp. Factor* 0.009* VS)
Where ‘VS’ is supply voltage (5.0± 0.25 VDC)
College of Engineering, Chengannur
Voice Controlled Robot For Remote Data Access
CIRCUIT IMPLEMENTATION
College of Engineering, Chengannur
Voice Controlled Robot For Remote Data Access
7.1 TRANSMITTER SECTION
7.1.1 Circuit Diagram
The schematic diagram of circuit of transmitter section is shown below.
College of Engineering, Chengannur
Voice Controlled Robot For Remote Data Access
7.1.2 PCB Layout
The following layout is that of the about circuit of receiver section. The layout generation was done with OrCAD 9 where the line width was choosen ‘8mm’.
College of Engineering, Chengannur
Voice Controlled Robot For Remote Data Access
7.2 RECEIVER SECTION
7.1.1 Circuit Diagram
The schematic diagram of circuit of receiver section is shown below.
College of Engineering, Chengannur
Voice Controlled Robot For Remote Data Access
7.1.2 PCB Layout
The following layout is that of the about circuit of receiver section. The layout generation was done with OrCAD 9 where the line width was choosen ‘8mm’.
College of Engineering, Chengannur
Voice Controlled Robot For Remote Data Access
SOFTWARE IMPLEMENTATION
College of Engineering, Chengannur
Voice Controlled Robot For Remote Data Access
8.1 FLOW CHART (TRANSMITTER SECTION)
College of Engineering, Chengannur
START
Allocate m/m for registers in data RAM
Initialize Program memory
Declare subroutines for data display on LCD
Set count=3
Configure USART,ADC,Timer and Ports for sensors and LCD
Initialize LCD
Count=Count-1
If Count
=0
Display “ZIGBEE BASED DATA ACQUISITION ROBOT”
A
Delays (15ms, 5ms, 50us)
No
Yes
D
Voice Controlled Robot For Remote Data Access
College of Engineering, Chengannur
Display TEMPERATURE
B
Take ‘TEMPERATURE’ data
Delay (1s, 10us)
Transmit ‘LIGHT INTENSITY’ data
Caliberate
Take ‘LIGHT INTENSITY’ data
Delay 1s
Transmit ‘TEMPERATURE’ data
Convert to ASCII
Delay 1s
Display LIGHT INTENSITY
Convert to ASCII
A
Caliberate
Voice Controlled Robot For Remote Data Access
College of Engineering, Chengannur
If Value>6
3
If Value>12
6
If Value>18
9
Delay 1s Delay 1sDelay 1s Delay 1s
Display “NORTH”
Display “WEST”
Display “EAST”
Display “SOUTH”
Transmit “NORTH”
Transmit“WEST”
Transmit“EAST”
Transmit “SOUTH”
Delay 1s
C
No
Yes
Yes
Yes
No
No
B
Take ‘WIND DIRECTION’ data value
Voice Controlled Robot For Remote Data Access
College of Engineering, Chengannur
Take ‘HUMIDITY’ data
Convert to ASCII
Display HUMIDITY
Transmit ‘HUMIDITY’ data
D
Take ‘PRESSURE’ data
Convert to ASCII
Transmit ‘PRESSURE’ data
Display PRESSURE
Delay 1s
C
Convert to ASCII
Caliberate
Voice Controlled Robot For Remote Data Access
8.2 FLOW CHART (RECEIVER SECTION)
College of Engineering, Chengannur
START
Allocate m/m for registers in data RAM
Initialize Program memory
Declare subroutines for data display on LCD
Set count=3
Configure USART,ADC,Timer and Ports for sensors, buzzer, relays and LCD
Initialize LCD
Count=Count-1
If Count
=0
Display “voice controlled x-bee robot”
Delays (15ms, 5ms, 50us)
No
Yes
Delay 1s
A
E
Voice Controlled Robot For Remote Data Access
College of Engineering, Chengannur
Receive data
A
If data= ‘*’ Transfer data to PC
No
Yes
Trolley remote ON
Buzzer ON
Delay 0.5s
Buzzer OFF
Display “waiting for voice commands”
Receive data
D
If data= ‘L’ Display “left”
Initiate trolley control 'left'
DB
No
Yes
Voice Controlled Robot For Remote Data Access
College of Engineering, Chengannur
B
If data= ‘R’
Display “right”
Initiate trolley control 'right'
D
If data= ‘F’ Display “front”
Initiate trolley control 'front'
D
If data= ‘B’
Display “back”
Initiate trolley control 'back'
D
If data= ‘S’ Display “stop”
Initiate trolley control 'stop'
D
If data= ‘A’
Display “straight”
Initiate trolley control 'staright'
D
No
No
No
No
Yes
Yes
Yes
Yes
Yes
C
No
Voice Controlled Robot For Remote Data Access
College of Engineering, Chengannur
If data= ‘E’
D
No
Yes
C
Display “VOICE MODE EXIT”
Trolley remote OFF
Delay 1s
E
Voice Controlled Robot For Remote Data Access
RESULTS AND DISCUSSIONS
College of Engineering, Chengannur
Voice Controlled Robot For Remote Data Access
This project which aimed at making a system that moves over a trolley and collect data from
remote areas, where the motion of the trolley being controlled by voice commands/keypad
from operator side was completed as expected and is therefore named- ‘VOICE
CONTROLLED ROBOT FOR REMOTE DATA ACCESS’.
The sensors, controllers, ‘xbee’ for data communication and trolley form the major parts of
the system. The sensors were installed and calibrated based on field study. However the
following challenges still exist:-
The calibration of humidity sensor could not be done as expected. However
this was pointed by the manufacturer also
The wind direction sensor was not purchased, instead it was handmade by
coupling a wind catching element with a pot. The minimum detectable wind speed as
well as accuracy is therefore seriously limited when compared to sensors available in
market. However the cost could be brought down to a very low value.
The sensors were calibrated based on rough field study and this is not a
standard practice. Otherwise calibration should have been done against a standard
device (sensors).
A serious limitation is put over the working range (distance) of the entire
system by the limited range (30m) of the trolley, though the data communication is
possible up to 1Km successfully. However this could be overcome using a trolley
with a longer range of operation, but this will increase the cost.
The project failed to make an efficient braking system for the trolley on
which the system moves.
The temperature sensor is capable of measuring up to 150° C. However for
practical applications, a higher range of operation is desired. But, choice of a similar
sensor with such a good sensitivity and accuracy for higher temperature ranges is
limited by cost constraints. Similarly, considering the operating temperature of other
modules the entire system is designed to work at an ambient temperature of 150° C.
College of Engineering, Chengannur
Voice Controlled Robot For Remote Data Access
FUTURESCOPES AND CONCLUSION
College of Engineering, Chengannur
Voice Controlled Robot For Remote Data Access
Sensors currently used may be replaced for higher range of operation (temperature, pressure
and humidity) while providing required mechanical support according to the requirement
and where cost doesn’t matter:-
ML 5.8GHz-1Km camera system (Cost: INR 70,000)
High temperature (Range -70 °C -500 °C) Platinum RTD-Pt100 (Cost: INR 600)
' After a perion of silence reset the last word heard
Detect.Caption = "<Nothing>"
End Sub
' Private Sub Timer2_Timer()
' Text1.Text = ""
' End Sub
Private Sub VoiceCmd_CommandOther(ByVal CmdName As String, ByVal Command As String)
' If commands other than those listed in our menu are heard Display them
Timer1.Enabled = False
Detect.Caption = Command
Timer1.Enabled = True
Timer1.Interval = 2000
End Sub
Private Sub Voicecmd_CommandRecognize(ByVal ID As Long, ByVal CmdName As String, ByVal Flags As Long, ByVal Action As String, ByVal NumLists As Long, ByVal ListValues As String, ByVal Command As String)
' One of our listed commands has been spoken
College of Engineering, Chengannur
Voice Controlled Robot For Remote Data Access
If MIDHU = 0 Then
MsgBox "click 'LISTEN' first"
Exit Sub
Else
Timer1.Enabled = False
' Display it.
Detect.Caption = Command
' Look for it in a list and execute the relavant commands
Select Case UCase(Command)
Case "EXIT"
Cmd_Exit_Click
Case "STOP"
Label2.BackColor = vbCyan
Label2.Caption = "STOP"
' MSComm1.PortOpen = True
MSComm1.Output = "S"
' MSComm1.PortOpen = False
Case "LEFT"
Label2.Caption = "LEFT DIRECTION"
Label2.BackColor = &H101FF
' MSComm1.PortOpen = True
MSComm1.Output = "L"
' MSComm1.PortOpen = False
Case "RIGHT"
' MSComm1.PortOpen = True
MSComm1.Output = "R"
College of Engineering, Chengannur
Voice Controlled Robot For Remote Data Access
' MSComm1.PortOpen = False
Label2.Caption = "RIGHT DIRECTION"
Label2.BackColor = &H1FF01
Case "FRONT"
Label2.Caption = "FORWARD"
Label2.BackColor = &HFF0101
' MSComm1.PortOpen = True
MSComm1.Output = "F"
' MSComm1.PortOpen = False
Case "BACK"
Label2.Caption = "REVERSE"
Label2.BackColor = vbMagenta
' MSComm1.PortOpen = True
MSComm1.Output = "B"
' MSComm1.PortOpen = False
Case "STRAIGHT"
Label2.Caption = "STRAIGHT"
Label2.BackColor = vbYellow
' MSComm1.PortOpen = True
MSComm1.Output = "A"
' MSComm1.PortOpen = False
End Select
' If we not exiting then reset the timer.
If Not (UCase(Command) = "EXIT") Then
Timer1.Enabled = True
Timer1.Interval = 2000
College of Engineering, Chengannur
Voice Controlled Robot For Remote Data Access
End If
End If
End Sub
Private Sub VoiceCmd_VUMeter(ByVal Level As Long)
' This Procedure is called +- every 8 seconds.
' Set the level of out vu meter..
If VU_Meter.Max < Level Then VU_Meter.Max = Level
VU_Meter.Value = Level
End Sub
12.4 BILL OF MATERIALS
S.No Item Name Specification Quantity Net Price (Rs)
1 PIC16F877A USART with 9 bit address detection, 4 operating frequency, PORT A (6bit), PORT B, PORT C, PORT D(8 bit), PORT E(3 bit) , 10 bit ADC (8 input channel), 8K FLASH program memory (14 bit words), 368bytes data memory, 256 Bytes EEPROM data memory.
2 500
2 LM317, L1117 Adjustable and fixed output voltage regulators with low drop out voltage (1.2V). Both can give a maximum output current (1A). Regulated input up to 30V and provide output up to 37V
1 each 60
3 XBEE module Data communication up to 1 mile (1.6 km) range. Low supply voltage of +3.3V
2 4500
4 MAX 232 RS 232/(TTL/CMOS)-voltage level converter with inbuilt capacitor boost output up to 12Vfrom a single 5V supply.
1 30
5 Crystal 4 MHZ crystal 2 5
6 LED 30mA 4 2
8 Resistors 1/4 watt resistors for current. limiting and circuitry uses
26 13
College of Engineering, Chengannur
Voice Controlled Robot For Remote Data Access
9 Capacitors 1uF, 10uF, 1000uF 15 60
10 LM35 Temperature sensor based on voltage variation across a diode with inbuilt signal conditioning Range : -50-150 °C
1 35
11 LDR Light sensor based on resistance variation. Dark resistance: 1-2 MOhm
1 7
12 Power Source 230V-18V/12V transformer with o/p maximum current of 600 mA. Cell (9 V, 400mAH)
2 200
13 Relays SPDT with excitation 12V 6 300
14 LDR 2 MOhm dark resistance 1 4
15 Humidity Sensor N/A 1 490
16 Pressure Sensor N/A 1 390
17 Wind direction Sensor
Wind catching element on a spindle attached to 10KOhm pot
1 10
18 ULN2003 Drive 12 V relays from 5 V inputs. Operates at 12 VDC