In today’s world it is easy to gain access to quality sensors and very high performance
computers and microcontrollers, thanks to recent advancements in technology. Reliable
and affordable robot hardware and software components are more widely available than
ever before. For these reasons, we have decided to develop a mobile robot that is able to
map and simulate its own environment, inside of this environment can determine its own
location, and is finally able to autonomously plan its own movement to arrive at certain
coordinates on the map.
To accomplish these goals we have developed a sensor system of our own, with the help
of which a map can be created in which the robot can perform its own localization. In
other words, we are replacing a costly LIDAR (laser scanner & rangefinder) sensor with
infrared distance sensors and servo motors. One of our main principles (and conditions) is
that all of our components throughout this development process must be easily obtainable.
To solve the problem of navigation we implement our own version of a Simultaneous
Localization and Mapping algorithm, published in scientific literature, and we use it to
process the data of the various sensors we employ. We use the EKF (Extended Kalman
Filter) variant of the widespread SLAM algorithm used in mobile robotics, which conceives
the core of the robot’s software. The input of the Kalman filter algorithm in our imple-
mentation consists of arrays of lines. The lines, in practice, represent the features of the
environment, and can be extracted from things such as walls and similar obstacles.
With the use of our sensor system, we gather point clouds and process them, using an
algorithm that was implemented by another student who also worked on the same robot,
to provide extracted line features for our SLAM algorithm. In addition to this, in order to
evaluate our SLAM method, we use the assistance of a path planning algorithm that was
also developed by this student.
The main goal of this study is to analyze these algorithms both in terms of simulation
and practical implementation. We perform the simulations using V-REP (Virtual Robot
Experimental Platform), in connection with our ROS nodes, and we employ a primitive
rover as our staring point, which from our perspective can be viewed as a partial solution for
our hardware problem. Our final objective is to demonstrate that a mobile robot equipped
with only simple sensors can be able to perform autonomous navigational functions as well.