Download as pdf or txt
Download as pdf or txt
You are on page 1of 6

2017 International Conference on Advanced Computing and Applications

Path Planning and Path Following Using Arrival


Time Field for Nonholonomic Mobile Robot
Alfabi Muhlisin Sakti, Adha Imam Cahyadi, and Igi Ardiyanto
Department of Electrical Engineering and Information Technology
Universitas Gadjah Mada
Yogyakarta, Indonesia
e-mail: {adha.imam;igi}@ugm.ac.id

Abstract— Arrival-time-field based method for path planning the desired angle, and limiting the steering angle changes to
of non-holonomic mobile robot is proposed in this work. Path improve the stability of the robot and smooth out its motion [7].
following strategy using kinematics control is also presented. First, Many researchers have tried to overcome the path planning
map dilation at the obstacles region of the map is performed based and path following problem with various methods. In path
on mobile robot’s maximum radius to guarantee the mobile robot planning field, some researchers have used geometric methods
safety. Arrival time field is then generated which the source is at with various approaches, such as visibility graphs [8] and
the goal point. Collision-free path is obtained by applying gradient
descent to the arrival time field. In order to generate smoother and
triangulation of the environment [9], while another researchers
safer path, speed function variation is added into the arrival time has used graph-based methods which most of the algorithm are.
field. Mobile robot is also driven to follow the previously generated Graph-based also has various approach, such as Dijkstra [10],
path using kinematics control based on simplified kinematics A* [11], artificial potential field [12], and arrival time field [13]
model of mobile robot that has been converted to polar which are based on grid map, RRT [14] which are based on
coordinates. Numerical simulation are provided to verify all of sampling. Heuristic and meta-heuristic method were also able
these proposed methods. to be used such as genetic algorithm [15], particle swarm [16],
and ant colony [17]. However, some researchers did not take
Keywords— Path Planning, Arrival Time Field, Nonholonomic
any robot constraints into account, robot is modelled as point
Mobile Robot, Path Following
mass [18]. In the real application, the robot has kinematics and
dynamics constraints, such as velocity, acceleration, and
I. INTRODUCTION possible motion, researchers who take both kinematics and
Nowadays, the need of mobile robot application is largely dynamics constraints into account, which is known as
increasing since it can be used to handle various problems in kinodynamic path planning can be found at [12].
very wide area such as industry, science, education, Path following field is also challenging, many researchers
entertainment, military application [1], and even entertainment have proposed many methods to solve this problem. Some
such as robot soccer games [2]. In certain situations like researchers have used Serret-Frenet frame to define the path-
planetary and space explorations, military applications, mine following errors [19], i.e. the cross tracks and heading angle
excavation, nuclear inspection, deep-sea surveying, search and errors. Other researchers have used virtual robot moving on the
rescue operations [3], where human interference is limited due reference path. Others have used transverse feedback
to hazardous and incapability, the need of autonomous mobile linearization method [20] which converts the path following
robot becomes so crucial. Other than that, autonomous mobile problem to input-output feedback linearization problem.
robot has been widely used to assist human in repetitive or In this research, arrival time field for path planning is utilized
boring work both in industrial and home applications, such as to create collision-free path for non-holonomic mobile robot.
serving food, cleaning the house, transporting component This path then will be followed by mobile robot. Since the
between distant machining and disassembly sites. mobile robot has certain dimension, before arrival time field is
Path planning problem is simply defined as find collision- calculated, map which represents mobile robot’s environment is
free route from initial robot pose to the desired pose in an dilated at the obstacles region to guarantee that the generated
environment cluttered with obstacles while satisfying certain path for mobile robot will not collide with any obstacle. After
optimization criteria such as distance, computation time, delay that, arrival time field is generate in dilated map. The goal point
in the communication and energy consumption [4] [5] [6]. of mobile robot is assigned as arrival time field source point.
Moreover, path planning is not enough to make mobile robot Gradient descent method is utilized to find maximum gradient
applicable in real world. The next step after the path planner starting from mobile robot’s starting point to the goal point.
generates optimal path is designing control strategy so that the Since the mobile robot is non-holonomic, orientation of mobile
robot can follow the previously defined path. The objective are robot is also calculated during path planning phase utilizing
minimizing the distance between the robot and the desired path, gradient descent. After the path is generated, mobile robot is
minimizing the angle between the orientation of the robot and driven to follow the path using kinematics control.

978-1-5386-0607-0/17 $31.00 © 2017 IEEE 143


DOI 10.1109/ACOMP.2017.21
Our contribution is two-fold. First, unlike the previous work This approximation is a discretization of Eikonal equation. ,
[13] which is focused on the holonomic robot, we investigate the denotes the arrival time value at grid , which represents point
planning strategies on the non-holonomic robot. Later, we use a
separation principle for the path generation and path controlling, , in continues form. , is the velocity value at cell , .
which is differed from the work in [14]. Using such approaches,
we can optimize each problem separately. B. Fast Marching Method
The paper is organized as follows. In the section II, we The solution of equation (4) can be obtained using some
explain arrival time field method for path planning and our solvers such as Fast Marching Method [22], Fast Sweeping
proposed algorithm. Section III deals with the problem of Method [23], and Fast Iterative Method [24].
designing kinematics controller for mobile robot path In this research, we use Fast Marching Method to solve
following. In the section IV, several simulation results are discretized Eikonal equation, similar to [14]. Readers are
discussed. And finally, section V concludes this paper. directed to refer [14] for the detail of Fast Marching Method.

II. PATH PLANNING STRATEGY III. PATH FOLLOWING STRATEGY

A. Arrival Time Field A. Mathematical Model of Mobile Robot


The term arrival time field in path planning research is Consider a mobile robot in the form of dynamic unicycle-
coined by Ardiyanto [14], which defined arrival time field as a like robot. The mobile robot is non-holonomic and has only two
space that stores the information about time needed by each control input, its right motor and left motor velocities, while it
point in a defined environment to reach the target point. The has three degrees of freedom, because it moves in a 2-
environment in this research is restricted to two dimensional dimensional plane and it has orientation. We use the model
space that has two regions, i.e. free space region as well as proposed in [25].
obstacle region. To calculate arrival time field of an
environment, consider a simple kinematics equation that relates
velocity , position , and time as
∆ = ∆ , (1) (1)
With simple algebraic operation, this equation can be rewritten
as
∆ (2)
=

For higher dimension, equation (2) becomes


(3)
| |=
Fig. 1. Mobile Robot with differential driving model
Equation (2) known as Eikonal equation. This equation
represents the time needed by monotonic wave in a space for Figure (1) illustrated the mobile robot, where is the center
propagating with certain velocity value, started from its origin of mass, is the wheel baseline center, ℎ = [ ] is the point
point until certain point within the space. This equation can be that is required to track a trajectory, and are the longitudinal
solved using Godunov approximation [21]. For 2D case, the and lateral velocities of the center of mass; and are angular
equation is given by velocity and orientation of the robot, , , , and are
distances, and are the longitudinal and lateral tire
(4)
, , , , + , , , , forces of the right wheel, and are the longitudinal
and lateral tire forces of the left wheel, and are the
=
, longitudinal and lateral force exerted on by the castor wheel,
and are the longitudinal and lateral forces exerted on
where
by the tool (for example, a robotic arm or a gripper), and is
= −
, , , the moment exerted by the tool.
, = , − , The complete kinematic and dynamic of that mobile robot
, = , − , can be written as [25]
(5)
, = , − ,

144
− The control signals we used are linear velocity of the robot
̇ ⎡ ⎤ ⎡0 0
⎡ ̇⎤ ⎢

⎥ ⎢0 0⎤ ⎡ ⎤ and angular velocity . These control signal must be designed
⎢ ⎥ ⎥ ⎢ ⎥ to drive the robot from its actual configuration to the sub-goal
̇⎥ = ⎢ ⎥ + ⎢0 0⎥ +⎢0⎥ (6)
⎢ − 0⎥ position. From equation (11), it is clear that there is an
⎢ ⎢ ⎥ ⎢
̇⎥ ⎢ ⎥
⎣ ⎦ ⎢ ⎥ ⎢0 ⎥ discontinuity at = 0. Based on robot kinematics model in
̇ − − ⎣ ⎦
⎣ ⎦ ⎣ ⎦ polar coordinates that is shown by equation (11), Siegwart [26]
has proposed the linear control law as follow
where and are the robot linear and angular velocities,
=
respectively, = ( , ) is coordinate of the robot in the (12)
plane, is the robot orientation, and are the = +
desired values of the velocities. The equation (6) describing the Then closed-loop system described by
parameter , = {1, … , 6} were firstly presented in [25],
and we use the same value.
̇ − cos
B. Kinematics Control ̇ = sin − − (13)
Based on the kinematics model of the robot, the kinematics ̇ − sin
controller can be designed. Recall equation, by neglecting
lateral forces of the wheel of mobile robot and assuming that The system does not have any singularity at = 0 and has
the disturbance term in that equation is a zero vector, we obtain
unique equilibrium point at [ ] = [0 0 0] . Hence,
the simplified kinematics model as follows
mobile robot will be driven to the sub-goal point.
̇ If we utilize this control law without modification, robot
0
̇ = movement is not smooth, the velocity of the robot will be
0 (7)
̇ 0 1 smaller and approaching zero as the value is getting smaller.
This problem will occur unless mobile robot reaches the global
The next step is find the distance between robot current goal. To tackle this problem, we keep , , constant
position and next waypoints, and also its orientation difference with its initial value. We are not only considering the
between robot current orientation and next desired orientation. smoothness of mobile robot, but also the safety. Therefore, the
It is solved by converting cartesian coordinate with following control law is given by
equations
=
(8) (14)
= − + − = +

= − + (9)
− where is relative velocity obtained from velocity function.
=− −
(10) IV. SIMULATION AND RESULTS

where is the distance between the center of the robot's


wheel axle and the next waypoints/sub-goals, with and
is the next waypoint/sub-goal, while and are current
robot position. is difference angle between current
orientation and orientation in the next waypoint/sub-goal, with
is current orientation of mobile robot and is initial
orientation.
This conversion leads to kinematics equation in the polar
coordinates as given by

− 0 Fig. 2. Map Environment for Path Planning Simulation


⎡ sin ⎤
̇ −1⎥

̇ =⎢ ⎥ (11) To verify the performance of the algorithm, the resulted
̇ ⎢− sin ⎥ algorithm is simulated. We simulate the deployment of mobile
1
⎣ ⎦ robot with defined start and goal pose in a 20 m x 20 m square
We use control law from Siegwart [26] with slight environment with obstacles as shown by Figure (2).
modification and adjustment in order to be utilized in our case. Environment in path planning phase is represented by binary

145
digital image which white represents free space area, and black The generated path from uniform velocity function has
represents obstacle area. Initial and goal position as well the shorter distance to the goal than the generated path from with
orientation can be seen in Figure (2). First step to be done before non-uniform velocity function. However, it is not smooth path
generating arrival time field is map dilation on the obstacle and too close to the obstacles. Theoretically, the generated path
region based on maximum robot radius. This step is very is collision-free based on map dilation. To verify, the generated
important, because it able to guarantee that the generated path path is plotted in map without dilation in order to check whether
for mobile robot will not collide with any obstacles. Map the generated path for mobile robot is collision-free or not. It is
dilation can be seen on Figure (3). shown on Figure (6)

(a) (b)

`
Fig. 3. Dilated Map Environment for Path Planning
To generate arrival time field for dilated map above, we
define velocity function that will be used by Fast Marching
method. We use two velocity functions, uniform and non-
uniform, as also mentioned in [14]. Uniform velocity function
has the same velocity in free-space area of the map that denoted
by white color, and it has zero value in obstacle area of the map
denoted by black color. Non-uniform velocity function yields
velocity variation at free-space area and shown on Figure (4), (c) (d)
and it has zero value in obstacle area. Fig. 5. (a): Arrival Time Field Uniform Velocity, (b): Generated Path in Dilated
Map (c): Arrival Time Field Non-uniform Velocity, (d): Generated Path in
Dilated Map

Figure (6) above show generated path for mobile robot


considering the mobile robot dimension. Those two figures
show that the generated path is free of collision, it indicates that
arrival time field both using uniform and non-uniform velocity
function are able to generate collision-free path for mobile
robot. Figure (6b) has smoother and safer path than Figure (6a),
but its path is longer.

Fig. 4. Velocity Function of Arrival Time Field

Now, arrival time field of the map above is calculated using


Fast Marching method as shown on Figure (5). Source of arrival
time field, that is = 0, is denoted by small circle sign inside
the map, and stopping point of arrival time field, that is the
initial point of mobile robot, denoted by cross sign inside the
map. The color of each point inside the grid map represents the
arrival time on that point from source point as shown by color- (a) (b)
bar beside the Figures (5a) and (5c). After arrival time field is
generated, the shortest path from initial point of mobile robot is Fig. 6. Generated Path on Environment Map. (a): Uniform Velocity (b): Non-
uniform Velocity
extracted by applying gradient descent as shown on Figure (5b)
and (5d).

146
Path planning has been performed, safe and collision-free robot is passing through the long corridor, because the distance
path for mobile robot has been obtained. Now mobile robot is with the obstacle is not too far.
driven to follow the paths based on kinematics control in
section III. The environment we used in path following
simulation is shown on Figure (7).

(a) (b)

Fig. 8. Path Following Result. (a): Path created by Robot motion (b):
Comparison Actual and Reference Path

Fig. 7. Path Following Simulator Environment


Path generated by mobile robot when it was following the
reference path and its comparison are shown on Figure (8).
Figure (8a) shows that path following strategy works well,
mobile robot is able to follow the generated path from its initial
point until reaches the goal point. However, it is almost collide
the obstacle near the goal point. It indicates that arrival time
field with uniform velocity has bigger possibility to collide the
obstacle, especially when the accuracy of path following
algorithm is low. Our path following has good accuracy, (a) (b)
although the error is getting bigger before approaching goal
point. We extract the path of mobile robot into position
( ) and orientation as function of time, and compare
to the desired one from path planning phase. This comparison
is given by Figure (9). Those figures indicate that the accuracy
of path following is good, although there is small error.
Velocity profile of mobile robot when it is following the path is
also presented in Figure (9d), it is almost constant because the
velocity function used is uniform.
The path following strategy is also applied on generated path (c) (d)
with non-uniform velocity. It is shown by Figure (10). Figure
(10a) shows the actual path that generated by mobile robot Fig. 9. Actual and Reference Comparison. (a): X Position (b): Y Position. (c):
Orientation. (d): Velocity
when it is following the path, and Figure (10b) shows the
comparison between the actual path and reference path
generated by path planning algorithm.
Based on Figure (10a), path following strategy works well,
mobile robot is able to follow the generated path from its initial
point until reaches the goal point. Compare to figure (10a), it
has smoother and safer path. Our path following strategy has
good accuracy as indicated on Figure (10b), the error is small,
although it is getting bigger when before approaching the goal
point. To be concise, we extract the path of mobile robot into
position and orientation as function of time, and compare to the
desired one from path planning phase.
We can see that the accuracy is good enough, although there
(b) (b)
are small errors, but it can still be tolerated. Figure (11d)
indicates that the velocity level of mobile robot is smaller than Fig. 10. Path Following Result based on Arrival Time Field with Non-uniform
before (see Figure (9d)), and it is getting smaller when mobile Velocity (a): Path created by Robot motion (b): Comparison Actual and
Reference Path

147
[7] J. M. Snider, “Automatic steering methods for autonomous automobile
path tracking,” 2009.
[8] H.-P. Huang and S.-Y. Chung, “Dynamic visibility graph for path
planning,” in 2004 IEEE/RSJ International Conference on Intelligent
Robots and Systems (IROS) (IEEE Cat. No.04CH37566), vol. 3, Sept
2004, pp. 2813–2818 vol.3.
[9] H. Yan, H. Wang, Y. Chen, and G. Dai, “Path planning based on
constrained delaunay triangulation,” in 2008 7th World Congress on
Intelligent Control and Automation, June 2008, pp. 5168–5173
[10] H. Wang, Y. Yu, and Q. Yuan, “Application of dijkstra algorithm in robot
(c) (b) path planning,” in 2011 Second International Conference on Mechanic
Automation and Control Engineering, July 2011, pp. 1067–1069.
[11] C. Wang et al., "Path planning of automated guided vehicles based on
improved A-Star algorithm," 2015 IEEE International Conference on
Information and Automation, Lijiang, 2015, pp. 2071-2076.
[12] X. Chen and J. Zhang, "The Three-Dimension Path Planning of UAV
Based on Improved Artificial Potential Field in Dynamic
Environment," 2013 5th International Conference on Intelligent Human-
Machine Systems and Cybernetics, Hangzhou, 2013, pp. 144-147.
[13] I. A. Majid, A. I. Cahyadi, I. Ardiyanto and M. Saifussalam, "Arrival time
field based path planning algorithm for mobile robot," 2016 3rd
International Conference on Information Technology, Computer, and
Electrical Engineering (ICITACEE), Semarang, 2016, pp. 64-67.
[14] I. Ardiyanto, J. Miura, Real-time navigation using randomized
Fig. 11. Actual and Reference Comparison. (a): X Position (b): Y Position. kinodynamic planning with arrival time field, Robotics and Autonomous
(c): Orientation. (d): Velocity Systems, Volume 60, Issue 12, December 2012, Pages 1579-1591, ISSN
0921-8890
[15] E. Shan, B. Dai, J. Song and Z. Sun, "A Dynamic RRT Path Planning
VI. CONCLUSIONS Algorithm Based on B-Spline," 2009 Second International Symposium on
Arrival-time-field-based method for path planning of mobile Computational Intelligence and Design, Changsha, 2009, pp. 25-29.
robot and path following strategy using kinematics control are [16] V. de Carvalho Santos, C. F. M. Toledo and F. S. Osório, "An exploratory
path planning method based on genetic algorithm for autonomous mobile
presented in this paper. This work was divided into two main robots," 2015 IEEE Congress on Evolutionary Computation (CEC),
parts, the first is about how to generate collision-free path Sendai, 2015, pp. 62-69.
between initial pose of mobile robot and specified goal pose [17] M. S. Alam and M. U. Rafique, "Mobile robot path planning in
considering the geometry and kinematics of mobile robot. The environments cluttered with non-convex obstacles using particle swarm
optimization," 2015 International Conference on Control, Automation
second part explains how to control mobile robot which has and Robotics, Singapore, 2015, pp. 32-36
kinematics and dynamics to follow the previously generated [18] C. C. Hsu, R. Y. Hou and W. Y. Wang, "Path Planning for Mobile Robots
path. Through several simulation scenarios, we have verified Based on Improved Ant Colony Optimization," 2013 IEEE International
that mobile robot was able to follow the previously defined path Conference on Systems, Man, and Cybernetics, Manchester, 2013, pp.
with smooth motion. 2777-2782.
In the future, we will examine broader range of system, such [19] J. Płaskonka, "The path following control of a unicycle based on the
chained form of a kinematic model derived with respect to the Serret-
as Dubin Car, aerial vehicles, etc. Stability examination also Frenet frame," 2012 17th International Conference on Methods & Models
becomes possible interesting direction of the research. in Automation & Robotics (MMAR), Miedzyzdrojie, 2012, pp. 617-620a.
[20] Akhtar, C. Nielsen and S. L. Waslander, "Path Following Using Dynamic
REFERENCES Transverse Feedback Linearization for Car-Like Robots," in IEEE
[1] I. J. Cox, Autonomous Robot Vehicles. New York: Springer Science and Transactions on Robotics, vol. 31, no. 2, pp. 269-279, April 2015.
Business Media, 2012 [21] J. Sethian, “A fast marching level set method for monotonically
[2] J.-H. Kim, D.-H. Kim, Y.-J. Kim, and K. T. Seow, “Soccer robotics,” advancing fronts.” Proceedings of the National Academy of Sciences 93,
2004 1996, pp. 1591–1595.
[3] P. Kopacek and R. Probst, “New applications captured by intelligent [22] M.S. Hassouna, A.E. Abdel-Hakim, A.A. Farag, PDE-based robust
mobile robot platforms,” pp. 397–402, 1997 robotic navigation, Image and Vision Computing 27 (2009) 10–18.
[4] S. M. LaValle, Planning Algorithms. Cambridge, U.K.: Cambridge [23] H. Zhao, A fast sweeping method for Eikonal equations, Mathematics of
University Press, 2006. Computation 74 (2004) 603–627.
[5] X. Hu, C. Xie, and Q. Xu, “Robot path planning based on artificial [24] J. Won-Ki, W. Ross, A fast iterative method for Eikonal equations, SIAM
immune network,” pp. 1053–1057, 2007. Journal on Scientific Computing 30 (2008) 2512–2534.
[6] S. Liu, Y. Tian, and J. Liu, “Multi mobile robot path planning based on [25] C. De La Cruz and R. Carelli, “Dynamic model based formation control
genetic algorithm,” pp. 4706–4709 Vol.5, 2004 and obstacle avoidance of multi-robot systems,” Robotica, vol. 26, no. 03,
2008.
[26] R. Siegwart and I. R. Nourbakhsh, Introduction to Autonomous Mobile
Robots. Scituate, MA, USA: Bradford Company, 2004.

148

You might also like