Está en la página 1de 6

2016 Online International Conference on Green Engineering and Technologies (IC-GET)

Implementation ofVector Field Histogram Based


Obstacle A voidance Wheeled Robot
J Senthil Kumar R Kaleeswari
Assistant Professor, Department ofECE ME VLSI Design, Department ofECE
Mepco Schlenk Engineering College Mepco Schlenk Engineering College
Sivakasi, India Sivakasi, India
senthilkumarj@mepcoeng.ac.in kaleeswari2792@gmail.com

Abstract-This paper describes the navigation of mobile robots proper interpretation the robot can know its Localize itself that is
in a dynamic environment with obstacles, providing guaranteed where the robot presents (position) in the environment. The path
reach to the target. Ultrasonic Sensor mounted on the Mobile planning is made based on the localization. Localization provides
Robot is used for obstacle detection. VFH (Vector Field Histogram position information, based on this position the robot is mapped
method is used to avoid obstacles and make the navigation of the in the global environment. path planning algorithms are
robot smoother. Spartan 3 FPGA is used for controlling the robot. developed to aid the robot to reach the target position. The path
The FPGA is used because it can operate with low power and it can planning algorithm controls the robot in its working environment
provide parallelism operation, so the robot can do its work in a
autonomously. The robot needs to be controlled and navigated
faster manner. Experimental results show the robot navigation and
without colliding with obstacles.
obstacle detection implemented in the FPGA processor.
B. Wheeled Mobile Robot
Keywords-FPGA, ultrasonic sensor, low power
There are different types ofrobots available, except wheeled
mobile robot other three mobile robots are biological imitation.
I. INTRODUCTION
From these robots, wheel robot is only the human invention
Robotics achieved greatest success in the world if industrial robot, wh ich can design to work in various environments such as
manufacturing. The mobile robots are designed by the imitation smooth and hard floors , it is more energy efficient than other
of biological living things. These are developed to work in mobile robots, and designing of wheel control is less complex
dangerous and inhospitable environments. When designing a compare to the designing leg joint. This mobile robot uses the
mobile robot the designer should consider the 3 laws devised by "differential drive" system.
the seien ce fiction author Isaac Asimov. While designing a robot
some of the problems of controlling robots using embedded
systems are designing device drivers, provide network
communication, and control algorithms with hardware
limitations. When the parallel process is required, many
hardwares are required, which occupies larger area and more Fig. 1. Differential drive wheeled robot chassis
power. To overcome this problem FPGA can be used, wh ich
requires only less amount of power and area. Spartan 3 FPGA is Fig. 1. shows the differential drive mechanism, in which the
used in this paper because ofits low power consumption [I]. powered wheels have motors to drive independently. In this the
Using the reconfigurable logic components the complexity of rear wheels of mobile robot have the independent motors to
computing the logic function can be applied and tested on drive. It has 3 DOF (Degrees OfFreedom).
different platforms. Controlling the speed ofthe mobile robot and
obstacle detection by the mobile robot can be done with 11. DIFFERENTIAL DRIVE AND KINEMA TIC MODELLING
reprogrammable logic components (FPGA). Different modules
The Wheel kinematic model has two constraints, first
like Actuators, Sensors, wireless transmission can be interfaced
concept is the wheel must roll when motion takes place and the
using FPGA controller [3].
second concept is the wheel must not slide orthogonal to the
A. General control system of of a mobile robot wheel plane. The kinematic model predicts the overall speed in
The general control system of a Mobile Robot describes the the global reference frame [2] .
overview function of the robot. The Control system of mobile
robot describes how the robot sense and traverse in the
environment. The control sequences of such a system are
Perception, Localization, Cognition and Motion Control [2]. (1)
To acquire the knowledge ofthe environment, measurements
are done in the environment with the help of various sensors,
from this raw data is extracted. From the extracted value of

978-1-5090-4556-3/16/$31 .00 ©2016 IEEE


2016 Online International Conference on Green Engineering and Technologies (IC-GET)

Equation 1 is the mathematical expression for global


reference frame, in this equation If/; is the global reference frame,
x , y is the position information and B is the robot angle of The position of wheel in polar coordinates is expressed by
rotation. The mapping of robot from the global reference frame distance I, the angle ql ' q2 is the angle of the wheel plane
to local reference frame can be accomplished using the relative to the chassis, r is the radius of the wheel and cp is the
orthogonal rotation al matrix. velocity.

[cose III. PATH TRACKING AND OBST ACLE A VOIDANCE

~J
sine
cose (2) The navigation of mobile robots in its path is controlled by
Rot(e) = ~ sin e
FPGA and ultrasonic sensor [12]. The UItrasonic sensor is used
0 to navigate the path in the robot working environment. To avoid
obstac1es in the robot working environment "Vector Field
An equation 2 show the rotational matrix, the computation Histogram" approach is used. In this approach the robot working
ofthis operation is depends on the value ofo. environment is considered as grid and these grids hold a
certainty value, for each and every grid the certainty value is
Yi Moving Obstacle 0
Target
updated [7].
Setting the threshold value is important, with the reference of
~
,
Yr this threshold value the robot can move in its working
environment without colliding with obstac1es. If the threshold
value is too large, the robot is not aware of obstac1e and here is a
Obstacle chance of collision occurs, if the threshold is too low, the robot
cannot pass through narrow passages.
The cost function is applies to all grids and the lowest cost
function is chosen. [2]
Xi
~------------------------~ G = m.dl + n.o + k.d 2 (6)
Fig. 2. Differential drive robot in global frame
Equation 6 shows the cost functionG. In this the parameters
Fig. 2. Shows the robot in its global frame. Mapping the m , n , k used to tune the behavior of the robot, d , are the target
robot to local reference frame from the global reference frame is
direction, i.e alignment of the robot path to the goal, 0 is the
expressed in equation 3.
wheel orientation, which is the difference between the new
'1/,. = Rot(e)'I/, (3) direction and current wheel orientation, d 2 is the difference
Where, If/r is the local reference frame. between the previously selected direction and the new direction.

y IV. CONTROLLER DESIGN

To make the robot to work in real time the hardware setup is


essential; the controller design is explained with the block
diagram shown in Fig. 4.

UItrasonic .... ADe r--. FPGA


sensor
~~----~----------------..Xr

Fig. 3. standard wheel parameters

Fig. 3. explains the standard wheel parameter, with this Robot


parameters the rolling and sliding constraints for standard wheel motor ~ Motor
are given in equations 4 and 5. control driver

Fig. 4. Block dmgram of controller deSign


2016 Online International Conference on Green Engineering and Technologies (IC-GET)

A. Ultrasonic Sensor
Ultrasonic Senor is used to measure the distance between the ADD (0-2) DO
obstacle and the Robot. Ultrasonic transducers convert ultrasound Ultrasonic ....- I--
Sensor ,.. AO
waves to electrical signals or vice versa. It works on the principle Vcc Iri g echo gnd
of evaluating the attributes of a target by interpreting the echoes
ADC
from sound waves. ME007 ultrasonic sensor is used wh ich is a
passive sensor it can respond to the extern al environment A7 D7 ~
reaction. It can detect noise signals and it also converts the noise
signal into an electrical signal [12]. SOC ALE OE EOC
The distance of the object calculated based on the
propagation speed of sound and time of tlight. I I I I
Expansion connector AI A2 BI
eXIl
d=-- (7) FPGA
2
Flg. 5. ArchItecture ofmterfacmg sensor wlth FPGA
In equation 7 is used to calculate the distance of the object,
d is the distance ofthe object from sensor, c is the propagation D. Motor Driver
speed and t f is the time of tlight. FPGA produce output as 3.3v but the motor requires 5v to
Trigger pulse is applied to the sensor from the FPGA, by drive. So L293d driver IC is used to drive the motor wh ich can
dividing its clock frequency. When the trigger pulse is applied to drive the 5v motor. L293d works on the concept ofH-bridge. H-
the sensor, the sensor generates and sends eight numbers of bridge is a circuit which allows the voltage applied across the
40KHz square waves to detect the obstacle. load to be tlown in either direction. It is mostly used in robotic
applications for controlling DC motors due to its Slze.
B. ADC
FPGA processes the digital data. The analog data obtained E. Robot Motor Control
from the sensor has to be converted into digital data. In this paper DC motor is used because of its variable speed
ADC0809 is used, which is the 8 channel ADC, the input channel characteristics. ADC motor can develop full torque from zero to
of an ADC is decided with the ADD signal, for 8 channel ADC, base voltage. To drive this DC motor L293d driver IC is used.
ADD is limited to 3 pins, SOC (Start Of Conversion), Two DC motors are used for actuating the mobile robot.
ALE(Address Enable Latch) should enable as high to start the
conversion process of given analog data to digital data. After TABLE I. MOTOR VALUES OF ROBOT MOVEMENT
converting its process EOC (End Of Conversion) get high. To
obtain the equivalent digital output, OE (Output Enable) should Motor 1 Motor 2 Movemeut
be high. After this process the digital output for the
00 00 Stop
corresponding given analog input is obtained.
01 10 Turn Right
C. FPGA 10 01 Turn left
Spartan 3 FPGA is used in this paper due to its low 01 01 Forward
power operation with high performance and low cost device. It
10 10 Reverse
has many features such as, it can support DDR (Double Data
Rate), fast look-ahead carry adders, densities up to 74,880 logic TABLE I. shows the logical values to drive the motors in the
cells, frequency synthesis and etc. The expansion 110 connector robot and controlling them from the FPGA. The motors are
is used to give signals to FPGA and to give a trigger pulse to the connected to the L293d driver Ie. The input to the motor is 00
sensor. indicates, no supply to the driving motors which makes the robot
Fig. 5. shows the architecture of interfacing sensor and to be in stop mode. If the input to both the motors are 01 i.e.
an ADC with FPGA. To interface with FPGA expansion input voltage is given, it moves in the forward direction, if the
connector is used, which has 40 pins, pin 1 and 2 provides +5V input to both the motors are 10 then the motor rotate in the
power supply and pin 3 and 4 provide +3.3V power supply other reverse direction. Ifthe input to one motor is 01 and the other is
than this pin is 110 pins to provide signals to or from the FPGA. 10 then the robot turns right. If the input to one motor is 10 and
other is 01 then the robot turns left direction.
-=i
2016 Online International Conference on Green Engineering and Technologies (IC-GET)

V. EXPERIMENTAL RESULTS I
The result of interfacing motor, ADC and sensor are :•
-
I I I I I I
discussed here.
11 111 I
;::
1lII1
I I I I . -l!Jl.1L"J!.t_lL'ftU
1 ~ 1 ~ --'- I'Jlf, , JlfJL'JlfJLlJlf lf
.J";L.t.ili.l..T~il!U
=-::=-- ~~
--'- --'- --'- --'-
--'-
..L

,... r
I

;. ~
1
1
J
""

Fig. 7. Simulation result for interfacing ADC

Fig. 6. Simulation result for interfacing DC motor If any obstacle present in the robot trajectory, the ultrasonic
sensor receives an echo signal and then the echo time is
Fig. 6. shows the simulation result of interfacing DC motor monitored. Using this echo time the distance from the robot to
with FPGA. In figure rl , r2 mention the right side motor and 11, obstacle is calculated. When the sensor detects the distance
12 mention the left side motor. Inbuilt clock is used, reset (RST) below the threshold value within the robot and the obstacle, then
signal is used to reset the operation. the robot take decision to turn left or right. The result of

TABLE 11. D EVIC E UTlLlZATlON SUMMARY FOR DC ,.....


interfacing sensor is shown in Fig 8.

......
MOTOR
........,
Slice Logic Utilization Used Available Utilization 00 1 01
(%)

Number of slice 59 59 100


containing related logic

Number of 4 input 115 7168 1


LUTs Fig. 8. Result for interfacing sensor
Number ofbondeed 8 173 4 In the Fig. 8. dout signal is used to indicate the different
lOBs distance level. The threshold value is set at 20 cm, if the d istance
from the sensor is larger than the threshold value, dout indicates
Numberof 2 8 25 as "011" then the robot can move freely in its path, if the d istance
BUFGMUXs is less than the threshold value, dout indicates as "001" then the
robot should take decision to navigate in an environment without
TABLE 11. shows the result of devlce occupIed by FPGA and colliding with obstacles.
utilization percentage. It explains the number of utilized slice Obstacle
registers, slice LUTs (Look Up Table), bonded input, output pin, m ~o~ma ti on
multiplexers and etc,.
B. Result for interfacing ADe and Sensor.
Free from
Fig. 7. Shows the result for interfacing ADC, in this result
CLKpulse signal is given to sensor for triggering the sensor, this
obstacle
pulse is given after the inbuilt clock is divided. It is explained
with state diagram, at fIrst SOC, ALE enable as high, then the 20
conversion starts, after conversion fmished EOC get enabled, cm Obsta eIe
then the digital output can obtain. 1.1 I I prese nt
her e
Robot environment
Fig. 9. Polar histogram representation
2016 Online International Conference on Green Engineering and Technologies (IC-GET)

Fig. 9. Shows the polar histogram representation for the robot


navigation path result, the threshold is set for 20cm. if the
distance from the robot to object is below 20cm, then the robot
should take another path to reach the goal. If the distance from
the robot to obstacle is above 20 cm, then the robot can move
freely in its trajectory.

a d cv:1
DINq &- i - _

OOUT (7:O)

EOC

OE

CU<

--~~-----------+~~= ~

ae Fig. 11. Deisgned mobile robot with FPGA mounted.


Fig. 11. shows the hardware working model interfaced with
adcv FPGA. The ultrasonic sensor is interfaced in front of the robot to
detect the obstacle in front ofthe robot, standard wheel is used in
Fig. 10. Implementation result for interfacing ADC this robot, to drive the robot DC motor is connected with the
wheel and L293d driver is connected to drive the motor in the
Fig. 10. Shows the logic utilization of ADC interfacing in robot.
FPGA. This shows the connection of logic in LUT, trigger pulse
is given to the sensor by dividing the inbuilt clock, CLKpulse is a VI.CONCLUSION & FUTURE WORK

signal given to trigger the sensor. Signals SOC, OE, ALE given Mobile robot is designed with FPGA, all the components DC
to ADC from FPGA, input to ADC is given from the sensor echo motor, ultrasonic sensor and ADC are interfaced with FPGA and
pin. After converting the analog to digital EOC will enable and sirnulated the interfacing coding with modelsirn software and
output from ADC obtained. DIN is the input signal to FPGA get this coding is dumped into the FPGA with the help of Xilinx
from the output of the ADe. software. The obstacle avoidance is achieved with the help of
TABLE I. DEVICE UTILlZATlON SUMMARY FOR
Vector Field Histogram algorithrn. The hardware was designed,
INTERFACING SENSOR and this code was checked with obstacle avoidance.
Future work is interfacing a mobile phone controlled robot
Slice Logic Utilization Used Available Utilization and applying a Potential Field path planning algorithm to
(%) navigate the robot smoothly in its trajectory.
Number of slice 29 29 100
REFERENCES
containing related logic
[I] Shilpa Kaie and S. S. Shriramwar " FPGA-based Controller for a Mobile
Number of 4 input 31 7168 1 Robot" , International Journal of Computer Science and Information
LUTs Security, Vol. 3, No. 1, 2009.
[2] Roland Siegwart, IIIah R. Nourbakhsh, and Dev ice and Davide
Scaramuzza, " Introduction to Autonomous Mobile Robots" .
Number ofbonded 28 173 16 [3] Angku l Kongmunvattanaand PrabhasChongstitvatana, " A FPGA-based
Behavioral Control System for a Mobile Robot" IEEE Asia-Pacific
lOBs Conference on Circuits and Systems, Chiangmai, Thailand , 1998.
Number of 1 8 12 [4] Karim Jaber ChokriAbdelmou la, " Intelligent Mobile Robot using
Simplorer Simulator", International Journal of Computer Applications
BUFGMUXs (0975 - 8887) Volume 89 - No.l , March 2014
Table III shows the result of devlce occupled by FPGA and [5] Shabiul Islam, MukterZaman, BakriMadon, and Masuri Othman,
utilization percentage. It explains the number of utilized Slice "Designing Fuzzy Based Mobile Robot Controller using VHDL",
International Journal of mathematical models and method s in applied
registers, slice LUTs (Look Up Table), lOBs, LUT-FF (Flip sciences.
Flop) pairs and bonded lOBs. [6] Sesh Commuri & V.Tadigotla& L. Sl iger, "Task-based Hardware
Reconfiguration in Mobile Robots Using FPGAs", School ofElectrical and
Computer Engineering.
2016 Online International Conference on Green Engineering and Technologies (IC-GET)

[7] J.Borenstein & Y.Koren "The Vector Field Histogram - Fast Obstacle
Avoidance For Mobile Robots", IEEE Journal of Robotics and
Automation, Vol 7, No 3, June 1991 , pp. 278-288.
[8] Qian Zhang, Yong-Fei Zhang, Shi-Yin Qin, "Modeling and Analysis for
Obstacle Avoidance of a Behavior-Based Robot with Objected Oriented
Methods", JOURNAL OF COMPUTERS , VOL. 4, NO. 4, APRIL 2009"
[9] Kalmegh, S. K. , Samra, D. H., & Rasegaonkar, N . M. O " bstacle avoidance
for a mobile exploration robot using a single ultrasonic range sensor". In
Emerging Trends in Robotics and Communication Technologies
(lNTERACT), International Conference o n IEEE (pp. 8-11). 2010
[10] Felipe Kuhne et al , "Point Stabilization of Mobile Robots with Nonlinear
Model Predictive Control", International Conference on Mechatronics &
Automation, 2005.
[lI] Dr. Bahaa l.Kazem, Ali H. Hamad, Mustafa M. Mozael, "Modified Vector
Field Histogram with a Neural Network Learning Model for Mobile Robot
Path Planning and Obstacle Avoidance", International Journal of
Advancements in Computing Technology Volume 2, Nu mber 5, December
2010.
[12] Maki K. Habib, " Real Time Mapping and Dynamic Navigation for Mobile
Robots" ,International Journal of Advanced Robotic Systems, Vol. 4, No. 3
, pp. 323-338, 2007.
[13] Widodo Budiharto, Djoko Purwanto, and Achmad Jazidie, "A robust
obstacle avoidance for service robot using Bayesian approach",
International Journal of Advanced Robotic Systems, Vol. 8, No. I (2011)
ISSN 1729-8806, pp 37-44
[14] Qu Dongyue, Hu Yuanhang, and Zhang Yuting, "The Investigation of the
Obstacle Avoidance for Mobile Robot Based on the Multi Sensor
Information Fusion technology", International Journal of Materials,
Mechanics and Manufacturing, Vol. I, No. 4, November 2013
[15] Nils Gageik, Thilo Müller, Sergio Montenegro, " Obstacle Detection And
Collision Avoidance Using Ultrasonic Distance Sensors For An
Autonomous Quadrocopter", 2012
[16] http://www.xilinx.comlsupport/documentation/data_ sheets/ds099. pdf

También podría gustarte