You are on page 1of 4

A Model for Remote Controlled Mobile Robotic over Wi-Fi

Network Using Arduino Technology


Adel Aneiba, Khaled Hormos

Department of Computer Networks and Communication


Faculty of Information Technology, Benghazi University-Libya
a.aneiba@uob.edu.ly, k.hormos@uob.edu.ly

Keywords: Arduino, Java, Robotic, TCP, WiFi. consideration of at least one of the two well-known control
architectures – Deliberative Navigation Control and Reactive
Abstract Navigation Control or a combination of the two [14]. One of
the current challenges in the development of robot control
A robot is a machine designed to execute one or more tasks. systems is making them capable of intelligent and suitable
This paper presents the development of a robotic module responses to the changing environments. In addition, security
based on Arduino Uno technology. Communication between is also a fundamental issue especially in securing the
the robotic module and the operator (an end-user device) is transmission between the robot and the controller. The
done via a WiFi network for operation and control purposes.
contribution of this paper is to present a Remote Controlled
This communication occurs over a secured custom-made
Mobile Robotic (RCMR) model. This will be done through an
Encryption/Decryption Algorithm to prevent others from
experimental study by exploring the use of available
controlling the module. The distance between the module and
the operator depends on the adapter itself. A camera “eye of technologies such as Arduino [1, 15] and Wi-Fi networks.
robot” captures and transmits images/videos to the operator This involves the development of a robotic system that can be
who can then recognize the surrounding environment and controlled using a Wi-Fi based multi-platforms network. The
remotely control the module. The operator can control the developed robot running a Windows 7 OS to handle the
module from any development software, by using of the following: Wi-Fi connections, camera, and Arduino for
private Encryption/Decryption Algorithm, and the correct multi-functions, socket communication [9,10] and IP
controlling messages. The results have shown the feasibility handling, video streaming, serial communication, and a
of the proposed system. custom made/proprietary security algorithm called GIX
(Gone In eXchange).
1. Introduction
The Wi-Fi network is deployed as an access point to be used
In recent years the use of mobile robots has increased as a communication media, thus any authorized device will
significantly, with innovative solutions paving the way for use this access point to control the robot. Controlling
new applications. Besides commercial and personal commands are encrypted using GIX algorithm, which are then
uses, mobile robotics have emerged as fascinating learning sent using socket streams. At the other end “the robot” will
systems and research materials [17]. In many autonomous
receive those commands and decrypt them using GIX
mobile robotic operations, the complete and fast coverage of
algorithm. These decrypted commands are passed to Arduino
the workspace, scanned by an unpredictable trajectory, plays
over the USB connection, Arduino will then respond to this
a crucial role [5]. Mobile robots have the capability to move
around in their environment and are not fixed to one physical commands instantly. After receiving the first message, the
location. Robots are being used in variety of industrial software which runs the robot will reserve the end device’s IP
applications for various activities like pick and place, in order to stream the live video back [8]. The experiments
painting, assembling of subsystems and in hazardous places described in this paper address four key questions:
for material handling and etc.  Which controlling commands will be sent over, using
which transport protocol and why?
Mobile robots can be classified into two distinct groups:  Which Wi-Fi adapter type will be used and why?
robots controlled by humans and autonomous robots. The  Security is a big issue especially if the robotic system is
autonomous mobile robots have the ability to move in designed for sensitive business activities.
dynamic and known environments without human control.  Do the developed applications meet the hardware
However, this requires the development of algorithms that requirements, such as response time and other functions?
allow the definition of their location and movements [11- 13].
For mobile robots, the most fundamental and pressing issue is The remainder of the paper is organized as follows.
autonomous navigation. Successful navigation In Section 2, illustrates the proposed model. In Section 3, a
of mobile robots is closely dependent on four vitals concepts novel algorithm for secured data transmission is described.
Section 4 and Section 5, present the implementation phase of
i.e. perception, localization, cognition and motion control.
the proposed model. Section 6 presents the evaluation phase
Implementation of each of these vital blocks requires the
include the experimental results. Section 7 concludes the
paper.
2. RCMR Model 3. GIX Algorithm
In order to develop the RCMR, an initial design has been GIX is a customized algorithm, designed and implemented to
proposed as seen in Fig 1. The RCMR system consists of give a “private level” security in transferring the controlling
several components: Microcontroller, Distance sensor messages from and to the robot system. “GIX” is an acronym
mini-motherboard, Wi-Fi interface. which stands for “Gone In eXchange”, which means every
time that the controller module sends a message, the message
will then be encrypted by a random x key. On the receiving
side, the Robotic System uses GIX decryption function to
decrypt the received messages. GIX’s random key is a pre
shared key, so each encryption process is being decrypted by
a decryption algorithm. Just imagine that you and your friend
want to use a secret word to do something without letting
anyone knows what is going on, this can be easily done when
both parties agreed on a common key word – the Pre-shared
key. According to the authors’ knowledge and findings from
literatures, no one has developed such as a secured algorithm
with this mechanism within this public domain [3, 5, 8, 11,
14]. In addition to novelty, measuring the impact of an idea
lets the authors focus on those ideas that are important, or that
at least are interesting to a large number of people. Therefore,
our evaluation study of an original contribution combines
both novelty and impact. Fig 3 illustrates the working
mechanism of GIX at the source and destination.

Fig. 1 RCMR Prototype

As seen in Fig. 1, the mini motherboard handles the camera,


Wi-Fi and microcontroller. The microcontroller handles the
physical functions. Both the microcontroller and
mini-motherboard are running programs code to preform
those tasks. UML is used to illustrate the interaction among
these system components. Fig. 2 illustrates the interaction
among these parts (objects: home screen will show error
messages and video streaming. Input method describes the
process of physical interaction between the end-user device
(Controller) and robotic, and finally the robot system.

Fig. 3 GIX working mechanism.

4. RCMR Implementation
The RCMR system was implemented into two phases, firstly
it was the hardware component (both the microcontroller and
mini-motherboard), and secondly the software component.
Starting with writing the code on Arduino and the mini
motherboard for serial communication [1, 15].
An appropriate transmission protocol was critical, for
example UDP does not send back any acknowledgement in
order to assess the responsiveness of the robotic system,
therefore, TCP protocol has been utilized due it
connection-oriented nature [9, 10]. Two controller codes
were implemented, first one was to handle the Wi-Fi
Fig. 2 RCRM sequence diagram connection interfacing with Arduino board over the serial
communication, and the second code to handle the camera.
This separation has been done to avoid the entire system from In this case the speed is predefined as the speed of sound –
going down in case the camera failed. When deploying an 340.29 meter/per-second. The time is provided by pulseIn()
access point using IEEE802.11abg, android devices are not function in Arduino library; but the sensor’s range is only
able to find that network; this is why IEEE802.11n has been about four meters, so there is a need to convert from meter/
used. In addition, IEEE802.11n offer much higher speeds and per-second to microsecond/ per-centimeter. The conversion
significant improvements in term of range and signal steps: first convert meter to centimeter 340.29 × 100 = 34029
coverage. The selected speed for this experiment was 300 centimeter/ per-second. Now calculating time of pulse need
Mbps, and the software was developed using UTF-8 encoding for 1 centimeter: 1 second =million microsecond, 1000000 /
in order to handle multi-platforms. This choice was based on 34029= 29.386 microsecond, 29.38 without returns, so the
the experiments done on Nokia devices using Java ME, and wave moves until it hits an object and returns so it needs to be
on android devices using Java. Fig. 4 illustrates the RCRM's multiply by 2, which gives the time needed for 1 centimeter
software structure, and Fig. 5 illustrates the RCRM's distance is 58.77 microsecond. Finally the calculation of the
distance between the sensor and the object by using
pulsIn()[1,15] function to get the duration as in (1).

Distance in centimeter= duration/58.77 (1)

6. Model Evaluation

The RCMR system was completely tested for evaluation


purpose, therefore a simple equation was designed for this
purpose. The test was based on Test-driven development
methodology (TDD) [2], with test to pass and test to fail
strategy for each function. A set of tests has been carried out.
The first findings was the response time for both software and
hardware An equation calculates the time starting with
sending of the controlling message till that message is
received back. Two tests were executed, the first by using a
hardware structure. code on the end device to send the control messages
Fig. 4 RCRM's software structure continuously, and the second was by human interaction. The
results was as following: response time from machine
generated messages equals ~ 10 millisecond, and using
human interaction < 65 millisecond. Table 1 in this system
was ~10 millisecond within a range of 5 to 15 meters, and the
response time was up to 100 millisecond at the same range.

Table 1. Test results

Function Name Value


Response time between each
~10 millisecond
incoming control message
Video Frame send per one second From 17 to 29 frame
From 35 to 60
video streaming delay
millisecond

For verifications and validations purposes, [12] describes


various validation techniques and tests used in model
Fig. 5 RCRM's hardware structure verification and validation. These techniques are used to
verify and validate the sub-models and the overall model.
5. H Distance Sensor HC-SR04 Based on the above arguments, a verification and validation
strategy has been adopted and executed. For verification
The ultrasonic distance sensor is used to sense the distance in strategy, RCRM model code has been critically tested and
front of the developed RCRM prototype and within 30 degree verified by employing several scenarios, as seen in [12]. For
in range of almost four meters. It sends an ultrasonic wave and the validation strategy, two techniques (comparison to
waits until that wave returns. The calculation of the distance another validated model, and expert verification) have been
can be done using a well-known physics formula: speed selected due to their applicability and appropriateness to the
equals distance divided by time of waiting [7] as shown in (2). RCRM model.

S= d/t. (2)
 Comparison to another validated model: 7. Conclusion
A set of results produced by the experiment have been This paper has presented the development of a mobile robotic
validated by comparing the output of RCRM model to known system based on Arduino technology. The developed system
results of the experiments that have been validated by [3]. (RCRM) has shown its feasibility and capability in executing
This was done with respect to communication distance, the required tasks. The experimental results confirm that the
autonomy and response time. The comparison gave similar proposed prototype, with appropriate sensors and controls,
results in terms of the communication distance and the can obtain very satisfactory results with regard to the fast and
autonomy, although RCRM outperforms the proposed system secured communication scanning of the robot's surroundings
in [10] in terms of response time which it considered a key with unpredictable way. In addition, a novel security
metric for the robotic system. Table 2 shows the results. algorithm has been proposed to secure the transmission
between the robot and the controller. Three major conclusions
Table 2: A comparison of the results can be derived from results presented in this paper: (1) RCRM
Distance Response time (ms) as RCRM's Response system can be used in various tasks such as land mining and
(Meters) Measured in [3] time (ms) monitoring; (2) The software can be used on other system, and
5-15 <100 10 the only requirement is to reprogram the Arduino and the end
20 112 25 device, and to reset the controlling messages; and (3) The idea
25 115 30 of this project is applicable on UAV systems (except for their
30 122 38 mechanic and hardware theory).
35 129 43
40 140 50 References
45 148 55 [1] Banzi. M, Executive Editor: Brian Jepson, Designer: Brian Scott
50 162 62 Indexer: Ellen Troutman Zaig Illustrations: Elisa Canducci with Shawn
Wallace,” Getting Started with Arduino”, USA, O’Reilly Media,
October 2008: First Edition September 2011: Second Edition.
 Expert Verification : [2] Beck. K, “Test-Driven Development by Example”, Three Rivers
Institute, 2002.
This technique ensures that the model and / or its function are [3] Brawerman. A, Perretto. M, Przysiada. F, “Remote Controlled
reasonable by asking subject-matter experts. For example, Terrestrial Robotic Module”, ESA'12 - The 2012 International
Conference on Embedded Systems and Applications, July 16, 2012.
check if the logic in the theoretical model is correct and if the [4] Broadcom Corporation, “802.11n: Next-Generation Wireless LAN
model’s input-output relationships are reasonable. This is Technology” Irvine, California, April, 26, 2006
done at a consortium of expertise and the system was [5] Ch. K. Volos, I. M. Kyprianidis, and I. N. Stouboulos. 2013.
approved [18]. A real test of the proposed system (RCRM) Experimental investigation on coverage performance of a chaotic
autonomous mobile robot. Robot. Auton. Syst. 61, 12 (December
can be seen at [6]. Fig. 6 shows the completed RCRM. 2013), 1314-1322.
Finally, the following points summarise why MCDAA model [6] Hormos, K., Aneiba, A. (2014). A Model of a Remote Controlling a
can be considered verified and valid: Robot over Wi-Fi Network. [Online Video]. 09 August. Available
from: https://www.youtube.com/watch?v=5d9xpd6JDFM&feature=y
outu.be. [Accessed: 27 September 2014].
 An RCRM simulation model has been developed based on [7] Palma. L, RTAC Americas, Ultrasonic Distance Measurer, Feb., 2008.
the Arduino, Wi-Fi and Java ME guidelines. [8] Pavan.C, Dr. B. Sivakumar, “Wi-Fi Robot for Video Monitoring &
 The RCRM model has been looked at and verified by two Surveillance System”, IJSER, August-2012.
senior experts in the field at an industrial consortium. [9] Reid. F, “Network Programming in .NET” Elsevier Digital Press 200
Wheeler Road, Burlington, MA 01803, USA Linacre House, Jordan
 RCRM has been compared quantitatively with other similar Hill, Oxford OX2 8DP, UK, 2004.
validated research works and it has produced very [10] Reilly. D, Michael Reilly, “Java™ Network Programming and
positive results (less response time). Distributed Computing” Addison Wesley, March 25, 2002
 The RCRM code has been tested according to Test-driven [11] Sanchez, A.; Hernandez, X.; Torres, O. ; Alfredo Toriz, P.; Mobile
Robots Navigation in Industrial Environments; Mexican International
development methodology (TDD) Conference on Computer Science (ENC), 2009.
[12] Sargent, Robert G., "Verification and validation of simulation
models," Simulation Conference, WSC 2008, pp.157-169.
[13] Shakhatreh. F, “The Basics of Robotics”, Lahti University of Applied
Sciences, 2011.
[14] Sheikh, U.A; Jamil, M.; Ayaz, Y., "A comparison of various robotic
control architectures for autonomous navigation of mobile
robots," Robotics and Emerging Allied Technologies in Engineering
(iCREATE), 2014 International Conference on , vol., no., pp.239,243,
22-24 April 2014.
[15] Smith. A,” Introduction to Arduino: A piece of cake!” ISBN:
1463698348, September 30, 2011.
[16] Surmann, Hartmut; Worst, Rainer; Zimmermann, Erik; Wilkes,
Stefan; Liebelt, Tom-Marvin; Eulering, Christopher, "Simple Mobile
Robots and Self-Adaptive Wireless Networks," ISR/Robotik 2014;
41st International Symposium on Robotics; Proceedings of , vol., no.,
pp.1,6, 2-3 June 2014.
[17] Weinert, H.; Pensky, D., "Mobile robotics in education and student
engineering competitions," AFRICON, 2011, vol., no., pp.1, 5, 13-15
Sept. 2011.
Fig 6. RCRM the final product [18] Wining Award, International Conference on Electrical & Computer
Engineering 2013, ICECE 2013, March 2013, Benghazi, Libya.

You might also like