
Development and Implementation of Spline-based Path Planning Algorithm in ROS/Gazebo Environment
Author(s) -
Roman Lavrenov,
Evgeni Magid,
Fumitoshi Matsuno,
Mikhail Svinin,
Jackrit Suthakorn
Publication year - 2019
Publication title -
trudy spiiran
Language(s) - English
Resource type - Journals
SCImago Journal Rank - 0.242
H-Index - 9
eISSN - 2078-9599
pISSN - 2078-9181
DOI - 10.15622/sp.18.1.57-84
Subject(s) - motion planning , occupancy grid mapping , computer science , robot , mobile robot , any angle path planning , algorithm , spline (mechanical) , grid reference , obstacle avoidance , matlab , path (computing) , centroid , computer vision , artificial intelligence , mathematical optimization , mathematics , engineering , programming language , structural engineering , operating system
Path planning for autonomous mobile robots is an important task within robotics field. It is common to use one of the two classical approaches in path planning: a global approach when an entire map of a working environment is available for a robot or local methods, which require the robot to detect obstacles with a variety of onboard sensors as the robot traverses the environment.
In our previous work, a multi-criteria spline algorithm prototype for a global path construction was developed and tested in Matlab environment. The algorithm used the Voronoi graph for computing an initial path that serves as a starting point of the iterative method. This approach allowed finding a path in all map configurations whenever the path existed. During the iterative search, a cost function with a number of different criteria and associated weights was guiding further path optimization. A potential field method was used to implement some of the criteria.
This paper describes an implementation of a modified spline-based algorithm that could be used with real autonomous mobile robots. Equations of the characteristic criteria of a path optimality were further modified. The obstacle map was previously presented as intersections of a finite number of circles with various radii. However, in real world environments, obstacles’ data is a dynamically changing probability map that could be based on an occupancy grid. Moreover, the robot is no longer a geometric point.
To implement the spline algorithm and further use it with real robots, the source code of the Matlab environment prototype was transferred into C++ programming language. The testing of the method and the multi criteria cost function optimality was carried out in ROS/Gazebo environment, which recently has become a standard for programming and modeling robotic devices and algorithms.
The resulting spline-based path planning algorithm could be used on any real robot, which is equipped with a laser rangefinder. The algorithm operates in real time and the influence of the objective function criteria parameters are available for dynamic tuning during a robot motion.