Sie sind auf Seite 1von 0

24

th
International Symposium on Automation & Robotics in Construction (ISARC 2007)
Construction Automation Group, I.I.T. Madras

GUIDING ROBOTS USING MOBILE PHONE


Atish Kumar Patra
Department of Electrical Engg,
NIT Rourkela
atishp04@gmail.com
Soumitry Jagdev Ray
Department of Mechanical Engg,
NIT Rourkela
soumitry@gmail.com


Abstract
Communication via mobile phones is becoming increasingly common among humans but next in the
pipeline is communication between human and robots. This project promotes wireless connectivity which
makes it hassle free affair. In this paper we propose the concept of controlling a robot by a mobile phone
from a remote area. The robot supports two ways of communication as it can receive commands by a
mobile phone and in other way round it can send data through cell phone to the user. This prompted us to
use a PC and its serial port with RS232 protocol. The user sitting at a distant place can send smss to
control the robot placed far away from him (even in another continent). The sms is decoded in a PC by a
program which then sends command to the robot via serial port. Similarly the robot can send information
about the working environment condition received from its sensors. This data is converted to proper PDU
or TEXT mode as needed by the mobile phone which is forwarded to the operator by a sms. This involves
a NOKIA 6020 phone and an 8051 microcontroller (AT89C52). A RF module, connected to a computers
serial port, can operate at two frequencies, one for communicating with the robot and another for the
mobile. The cell phones TX and RX pins are connected to the serial port by the RF module and a
MAX232 IC. The RS232 protocol does not support TTL logic so a line driver such as MAX232 has to be
used to convert TTL logic levels to RS232 voltage level .The phone converses with the computer by AT
commands sent through the serial port. A practical implementation of this project may witness
applications such as home automation and security.
KEYWORDS
Mobile, AT Commands, Serial Port
1. INTRODUCTION
In this paper we present control of a robot by a cell
phone via a computer. It suits many needs as it
provides an implicit wireless communication
between the user and the robot notwithstanding the
distance between the robot and the user. It has
certain advantages over other wireless modes as
the user can control the robot and monitor
applications like home automation and security
without being physically present near the robot.
The user sends instructions from his mobile to
another mobile connected to a PC.The memory of
the latter is continuously scanned by a programme
running in the PC .The instructions received in
form of sms is compared with any predefined
instructions in the programme.If a match occurs
then computer sends appropriate commands to the
robot via serial port. Simultaneously the user
receives the desired information from the sensors.
2. COMPONENTS OF THE
AUTOMATED SYSTEM
The entire automated system can be divided
basically into two parts:
1. Hardware
2. Software
The hardware of this project is divided into two
parts:
1. Cell phone interfacing with the PC: The cell
phone is directly connected to the serial port of the
PC via RF module. It can also be connected to the
24th International Symposium on Automation & Robotics in Construction (ISARC 2007)
Construction Automation Group, I.I.T. Madras
Patra, A. K & S. J. Ray

usb of the PC as it facilitates faster data
transmission and supports the connectivity of as
many as 128 devices simultaneously.
2. Robot interfacing with the PC: The robot is
interfaced with the PC's serial port via RF module.
An 8051 microcontroller (MC) forms the heart of
the robot controlling and servicing the various
sensors of the robot. A MAX 232 chip is used to
facilitate communication between the MC and the
PC to commensurate TTL logic of the MC with the
RS 232 standard of the PC's serial port. The
sensors form a link between the MC and the
surroundings whose input data is forwarded to the
user.
The software demands of this project are:
1. A programme running on the PC to
continuously scan the phone/SIM memory of the
cell connected to the PC and to send (instructions)
and receive data (sensors) from the robot.
2.A programme for the MC to control the robot,
send instructions to the actuators, receive data
from the sensors and send data to the PC that the
user requests .

Figure 1

3. HARDWARE
The heart of the circuit is an 8051 MC (AT89C52)
and a dc motor driver BA6209.The block diagram
is given below. Sensors like heat, obstacle sensors
are connected to it which can send information
about environment to the pc which is forwarded to
the user via sms.But since hardware of robot is
very common thing this paper concentrates on the
controlling method of robot by mobile phone
rather than the hardware of robot.

Figure 2
4. MOBILE COMMUNICATION
For communication of mobile to a PC one first
needs to know the mobiles IO capabilities. If it
has IrDA or Bluetooth then things are much easier
because no cables are needed, but if the mobile (or
the PC) has no such features then an appropriate
data cable may be used provided the cell has port
for USB data cable. However the most common IO
capability is the serial line, though it is not in the
form of the well known RS-232-C standard of
PCs serial port but in the form of what is called as
FBUS and MBUS.The MBUS is a half-duplex
method used in older Nokia phones. With MBUS
it is possible to interface with almost all Nokia
mobile phones for service and adjustment
purposes. The FBUS is a newer solution and offers
high-speed full-duplex communication link
between the phone and the computer. The service
and adjustment operations which are traditionally
made over MBUS are available in FBUS too, but
usually much faster.
4.1 Mbus Method of Communication
The communication methods called FBUS and
MBUS are used in Nokia mobile phones for data
transmission, service, and adjustment. The MBUS
method that uses only a single pin is a half-duplex
method used in older Nokia phones. With MBUS
A.K. Patra & S. J. Ray 340
Guiding Robots Using Mobile Phone

it is possible to interface with almost all Nokia
mobile phones for service and adjustment
purposes. The FBUS is a newer solution and offers
high-speed full-duplex communication link
between the phone and the computer. The service
and adjustment operations which are traditionally
made over MBUS are available also in FBUS, but
usually much faster.
4.1.1 Details of Mobile Phone Hardware
The figure below describes the pin outs of data
cables of NOKIA phones.
Figure 3
The 14 pin pop-port contains signals for hands free
microphone, stereo speakers, FBus Rx/Tx or USB
signals for the phones supporting them, power
output for feeding the accessories that dont have
their own batteries, and the Accessory Control
Interface (ACI), a bidirectional serial control bus
for connection of phone accessories, with a
proprietary protocol.
Table 1
Pin
Number
Pin
Name
5 USB Vbus
6 FBus Rx/USB D+
7 FBus Tx/USB D-
8 GND
4.2 The Circuit Diagram
The whole project is implemented using NOKIA
6020 mobile so fig 4 shows the detailed circuit
connection.
5. AT COMMANDS
After connecting a mobile phone to a computer, it
can be controlled by sending instructions to it. The
instructions used for controlling the mobile phone
are called AT commands. Commands are to
control the sending and receiving of SMS
messages.
The following table lists the AT commands that
are related to the writing and sending of SMS
messages:
Table 2
AT command Meaning
+CMGS Send message
+CMSS Send message from storage
+CMGW Write message to memory
+CMGD Delete message
+CNMI SMS Alert
+CMMS More messages to send
The AT commands are written in vb6.First any
message received on the mobile is read. Then they
it is decoded into a user friendly format. From that
command is read and it is issued to the
microcontroller through serial port for further
action.
Figure 4 The Circuit Diagram
5.1 Use of SMS
Since short text messaging popularly known as
sms is the most widely used and the cheapest
service available in mobile service, it is used to
control our robot. The SMS message, as specified
by the Etsi organization can be up to 160
characters long, where each character is 7 bits
according to the 7-bit default alphabet. Eight-bit
messages (max 140 characters) are usually not
341 Guiding Robots Using Mobile Phone
Patra, A. K & S. J. Ray

viewable by the phones as text messages; instead
they are used for data. There are two ways of
sending and receiving SMS messages: by text
mode and by PDU (protocol description unit)
mode.
5.2 The PDU Format
The text mode (unavailable on some phones) is
just an encoding of the bit stream represented by
the PDU mode. Alphabets may differ and there are
several encoding alternatives when displaying an
SMS message. The most common options are
"PCCP437", "PCDN", "8859-1", "IRA" and
"GSM". These are all set by the AT command
AT+CSCS, when some one reads the message in a
computer application. If you read the message on
your phone, the phone will choose a proper
encoding. An application capable of reading
incoming SMS messages can thus use text mode or
PDU mode. If text mode is used, the application is
bound to (or limited by) the set of preset encoding
options. In some cases, that's just not good enough.
If PDU mode is used, any encoding can be
implemented.
5.2.1 Message in the PDU mode
The PDU string contains not only the message, but
also a lot of meta-information about the sender, his
SMS service center, the time stamp etc. It is all in
the form of hexa-decimal octets or decimal semi-
octets. A PDU looks like a long hexadecimal
string, representing the number of the network
operators SMS central (Service Centre Address,
SCA) chained to the whole packet used in the
SMS transport layer (often referred as Transport
Protocol Data Unit, TPDU). The latter includes
many sub-fields in addition to the message text
itself. Most data is packed to save bits.
The first packet is the SMS-SUBMIT, used for
sending a message; the second is the SMS-
DELIVER packet, for receiving. The subfields are
detailed in the following table:
5.2.2 Phone numbers packing
Phone numbers start with the numbers length,
intended as field length in bytes for the service
centre (SCA), and digits for the remaining
numbers (DA, OA). The second byte specifies the
numbering plan: 80 = unknown, 81 = national
number, 91 = international number.
Table 3
SCA
Service
Centre
Address
Network
operators Service Centre
number. Not required by
some mobiles. An hex
value of 00 or 01-80
means unknown: the
mobile will use the default
number stored in mobiles
settings.
1 or
2 to 12
bytes
ID
TPDU type
identifier
SMS-DELIVER or SMS-
SUBMIT identifiers and
flags (e.g. request of a
status report or presence
of VP field) .
1 byte
MR
Message
Reference
Progressive number (0 to
255).
1 byte
OA
or
DA
Originating
or
Destination
Address
Senders or destination
phone number. Note that a
different number encoding
from that of SCA is used.
2 to 12
bytes
PID
Protocol
Identifier
Nature of data transported
(FAX, voice, etc.), used
by the Service Centre for a
better routing.
1 byte
DCS
Data Coding
Scheme
Format of the data
transported (7 or 8 bits,
alphabet, etc.) and where
to store it (Mobile
memory, SIM module, or
for immediate display).
1 byte
SCTS
Service
Centre Time
Stamp
Year month, day, hour,
minute, seconds and time
difference with respect to
GMT.
7 bytes
VP
Validity
Period
How long the network
operator service centre
will hold the message, if
undelivered (A7=24
hours).
0, 1, or
7 bytes
UDL
User Data
Length
Length of data, prior to
encoding (e.g. 11 7-bit
characters fit into 10
bytes).
1 byte
UD User Data message data
0-140
bytes
Then follow the digits, swapped in pairs and each
occupying a nibble. If the length is odd, the unused
nibble (semi-octet in ETSI language) is padded
with $F. Some mobiles dont require the SCA, or
accept 00 or 01-80 as valid values for the service
centre address: in that case the mobile will use the
default service centre number.

A.K. Patra & S. J. Ray 342
Guiding Robots Using Mobile Phone

5.2.3 Message packing
A SMS message, according to ETSI specification,
can be up to 140 bytes long (octets in ETSI
terminology). The usual GSM alphabet requires
only 7 bits per character (a septet), allowing for the
packing of up to 140 * 8 / 7 = 160 characters. So
the received sms is packed as explained above. So
the mains algorithm keeps scanning the whole
PDU string containing hexadecimal numbers.
Then it separates out the senders no and then
compares with previously stored values. If the sms
is sent by authenticated person then it searches for
the message part. After saving the message into a
variable it compares with the previously stored
message. If the received message is exactly what is
stored then it issues commands accordingly to the
robot through serial port.
6. RADIO FREQUENCY
COMMUNICATION
Due to the need of controlling robots and cell
phone simultaneously through one serial port RF
communication is used. Details of RF
communication are explained below.
6.1 RF Transmitter Interface
For communicating the robot with pc TX-4-PC is
used. It connects the Holtek HT-12E remote
control encoder IC, Ming TX-99 RF transmitters.
It is connected directly to PCs serial port. The
advantage of using these transmitter modules is the
loop antenna designed into the RF module. The
loop antenna allows operation between 30-50' [or
more] without the addition of the external wire
antenna. Now since its connected to the PCs
serial port its fully controlled by the serial
commands written in our program.
Serial Commands to Control the TX-4-PC:
The Transmitter waits for a serial command string
consisting of three data bytes from the PC serial
port as shown below.
Byte #1 = Synchronization byte [170]
Byte #2 = 8-bit address of receiver to control [0
to 255]
Byte #3 = 4-bit data [0 to 15]


The synchronization byte 170 consists of an even
number of 1s' & 0s', or 10101010 in binary, and is
used to synchronize the transmitter with the PC
serial port. The address byte selects the receiver at
a specific "address" to control. Data packets not
preceded by the synchronization byte of "170",
will be ignored. This helps the TX-4-PC ignore
any noise signal that may otherwise be interpreted
as a beginning data packet. The 250mS pauses in
the VB application software is given to take into
account the 200mS time frame in which the
transmission occurs. An additional time of 50mS
per pause ensures the transmitter has returned to
the data input routine, and is ready for the next
inbound data/control packet. This causes four
transmissions from the TX-4-PC to help ensure
data packets reach the receiver in case of
interference.
6.2 RF RECIEVER
For receiver purpose the RX-5 receiver board is
designed for use with the TX-4-PC RF transmitter
board. The RX-5 receiver board is used with RF
receivers. Ming RE-99 RF transmitter module. The
advantage is that for instant remote control we just
need to plug-in the RF receiver modules .For
decoder purpose HT-12D is connected.
Address Feature:
The RX-5 receiver has an 8-position DIP switch
used for setting the receiver/decoder address.
Addresses from 0 to 255 are possible, allowing
control of up to 256 individually addressed
receivers, or combinations with multiple receivers
set to the same address.
A7 A6 A5 A4 A3 A2 A1 A0
All of the HT-12D decoder IC address pins are at
ground with each DIP switch in the ON position
for an address of "0". Switches in the down
position represent logic "1". In the up or ON
position at logic "0".So by the help of these
switches the address of the particular receiver is
set. Now if this receiver is connected to the robot
required for the job then accordingly this address is
sent through the transmitter by control software in
vb6.


343 Guiding Robots Using Mobile Phone
Patra, A. K & S. J. Ray

7. CONCLUSION AND FUTURE
WORKS
In this paper control of a robot by a mobile phone
kept at a remote distance is described. This
eliminates the necessity of physical presence of a
operator at the working area .With the help of this
one can easily control robot or any automated
device from anywhere in the world.
The control software is written in vb6 so that
itll work as a standalone application.
This algorithm is implemented with
microcontroller with low computational power
(e.g.8051/31) since they dont contain any
tedious calculation.
In order to get more information about
working environment sensors are connected to
the robot.
Future work:
It can be also carried out for the home
automation system as hardware requirement is
same, the difference being some relays
connected to the switches of home appliances.
A cellular platform can be developed where
user can himself set the commands to be sent
through serial port.
This technology can be empowered with
computer vision where with the help of image
processing pictures and videos of remote areas
can be sent to the user via mms.
8. REFERENCES
[1] Muhammad Ali Mazidi, Janice Mazidi,
and Rolin McKinlay, 8051
Microcontroller and Embedded Systems,
(2nd Edition)
[2] Jan Axelson Serial Port Complete
[3] www.pinouts.ru
[4] http://www.panuworld.net/nuukiaworld/in
dex.htm
[5] http://www.riccibitti.com/index.html
[6] www.bengkelprogram.com/download-
ATNOKIA.pdf
[7] Steve Holzner and Steven Holzner,
Visual Basic 6 Black Book

A.K. Patra & S. J. Ray 344

Das könnte Ihnen auch gefallen