Sonar Navigation System
Sonar Navigation System
Abstract
In this paper we present a new technique for on-line extraction of natural point landmarks in an indoor environment. The
landmarks are filtered out from sonar data taken from a mobile platform. By storing point landmark positions in a reference
map, we can achieve absolute robot localization by doing matching between recently collected landmarks and the reference
map. The matching procedure also takes advantage of compass readings to increase computational speed and make the
performance more robust. The technique is easily extended to also encompass local robot localization, which is used when the
robot navigates autonomously. The position accuracy of the robot as well as its capability to navigate using natural landmarks
is illustrated in a number of real world experiments. © 2000 Elsevier Science B.V. All rights reserved.
Keywords: Mobile robot; Autonomous navigation; Localization; Natural landmarks; Sonars
∗ Corresponding author. Fax: +468-7907329. Our method to obtain natural point landmark posi-
E-mail addresses: [email protected] (O. Wijk), [email protected] tions in an indoor environment is a two layered filter-
(H.I. Christensen) ing process of raw sonar data. The filtering process is
0921-8890/00/$ – see front matter © 2000 Elsevier Science B.V. All rights reserved.
PII: S 0 9 2 1 - 8 8 9 0 ( 9 9 ) 0 0 0 8 5 - 8
32 O. Wijk, H.I. Christensen / Robotics and Autonomous Systems 31 (2000) 31–42
Fig. 1. The filtering process for extracting natural landmarks. Raw sonar data is first filtered with the TBF algorithm to give triangulation
points (nt , T̂ ). The best triangulation points, with respect to the triangulation number nt , are then used to form competing landmark
hypotheses of which we extract the k best ones.
displayed in block form in Fig. 1 and is described in same object in the environment. The TBF algorithm
more detail in the following two subsections. is a simple voting scheme that solves this problem
and performs the correct triangulations (Fig. 3) to
2.1. Triangulation Based Fusion form so-called triangulation points (nt , T̂ ). Here nt
is the number of triangulations that have contributed
The first filter, TBF of raw sonar data, filters out to form the position estimate T̂ = (x̂T , ŷT ). The TBF
stable two-dimensional points in the world. To explain algorithm is computationally cheap and can easily be
briefly how the TBF algorithm works we consider two run in real time on a pentium 133 MHz PC. A com-
sonar readings that are known to originate from the plete description of the TBF algorithm can be found
same object in the environment. By taking the inter- in [8].
section point between the beam arcs of the sonar read-
ings, a position estimate T̂ of the object is obtained 2.2. Formation of competing landmark hypotheses
(Fig. 2). This operation is denoted triangulation in the
sequel. If several sonar readings are available from The second filter layer only considers the “best”
the object, combinations of triangulations could be triangulation points from the first filtering stage, i.e.
formed to improve the position estimate T̂ . However,
before triangulations can be done, one has to deter-
mine, which sonar readings that originate from the
Fig. 6. Landmark matching algorithm for obtaining absolute localization of a mobile platform. A more detailed version of the matching
algorithm can be found in [9].
O. Wijk, H.I. Christensen / Robotics and Autonomous Systems 31 (2000) 31–42 35
the robot uses both the absolute and local localization equipped with 16 sonars to cover the living room in
technique to autonomously navigate in a building. 11 different runs. The 20 best landmark positions col-
lected from the “zero run” were stored in a landmark
4. Localization experiments reference map Lref together with the mean value of
the sampled compass readings. In addition, a goal
The objective of this section is to evaluate the point position was stored in the reference map. This
matching algorithm presented in Fig. 6 in the previ- position was also marked out on the floor with tape
ous section. The evaluation is in terms of finding the and could later be used for checking position errors
absolute localization accuracy as well as investigating in the matching.
under what circumstances the algorithm might fail Between the runs 1–10 the robot was translated, ro-
(robustness aspect). The experiments presented were tated and reset in order to change the current robot
carried out in a living room shown in Figs. 7 and 8. coordinate system. The robot was driven around in the
The living room contains a number of objects and room, and when it had collected some landmarks the
hence there should be plenty of natural point land- technique described in Section 2 was used to match
marks in this setting. We used a Nomad 200 platform these landmarks (Lcurr ) with the reference map Lref .
Fig. 10. The second run in the living room. Note that the robot has only traveled a short distance before landmark matching. Among the
10 collected landmarks, 6 were successfully matched against the reference maps’ 20 landmarks. The scale on the axes is in millimeters.
Fig. 11. The third run in the living room. The robot trajectory is here longer than in the second run, since we have allowed the robot to
collect more landmarks. Among the 20 collected landmarks, 14 were successfully matched against the reference maps’ 20 landmarks.
38 O. Wijk, H.I. Christensen / Robotics and Autonomous Systems 31 (2000) 31–42
Fig. 12. In this corridor the same experiments were done as in the living room. The reference map covered the area between the black
stripes in the picture and was collected with the doors in wide open position.
Fig. 13. A failed absolute localization attempt in the corridor. The doors were closed during this run. The mismatch of landmarks is caused
by ghost landmarks along the walls. The scale on the axes is in millimeters.
O. Wijk, H.I. Christensen / Robotics and Autonomous Systems 31 (2000) 31–42 39
Fig. 14. Map over the building where the navigation experiments took place. In the first navigation task, the robot was supposed to go
from the living room out into the big corridor, visit the mail box at the end of the corridor and then go through the corridor entering an
office. In the second run the robot was supposed to go from the living room to the manipulator lab via the big corridor.
based on the ideas presented in the earlier sections. path of goal points leading to the room it was supposed
A map of the building where the experiments took to go to. To ensure that the robot did not bump into
place is shown in Fig. 14. The first experiment con- things when driving toward a goal point position, a
siders the robot going from the living room to a sonar based avoidance behavior was active. The land-
nearby office. On its way to the office, it visits a mark extraction algorithm was running all the time
mail box. In the second experiment, the robot goes during the navigation experiments and hence provided
from the living room to a lab at the other end of the robot with fresh landmark information. Once in a
the corridor. To be able to navigate, the robot used while, local localization was done (Section 3) in order
reference maps of the building. For each room there to correct the robot position from odometry errors.
is a reference map, while the big corridor is split Data produced during the two navigation experiments
up into several adjacent reference maps. Each ref- are presented in Figs. 15 and 16. Before the reader
erence map contained a number of landmark and studies these figures in detail it can be worthwhile to
goal point positions. The relation between the dif- know about the notation used these figures: The trian-
ferent coordinate systems in adjacent room reference gulation points which were produced when filtering
maps was known, since a mutual goal point position out the natural landmarks in the different reference
had been stored (for instance the connecting door maps are plotted with dark dots (·). The bright stars (∗)
position). are triangulation points filtered out from the robot as it
At the beginning of the navigation experiments, the is navigating through the environment. All plotted data
robot only had information of what room it was in, are in the current robot coordinate system. This means
i.e. the living room. To get more accurate position in- that we can actually see the odometry drift as the
formation, the robot explored the room using a sonar robot moves through the world. For instance straight
based explore behavior. At the same time, the natural lines in the corridor become curved and walls from
landmark extraction algorithm (Section 2) was run to separate rooms are not exactly parallel/perpendicular
collect a landmark set Lcurr to be matched against the to each other. The circles in the plots are matched
room reference map landmarks Lref . When absolute natural landmarks, helping the robot to keep itself
localization had been obtained, the robot followed a localized.
40 O. Wijk, H.I. Christensen / Robotics and Autonomous Systems 31 (2000) 31–42
O. Wijk, H.I. Christensen / Robotics and Autonomous Systems 31 (2000) 31–42 41
42 O. Wijk, H.I. Christensen / Robotics and Autonomous Systems 31 (2000) 31–42
Viewing Figs. 15 and 16 it is seen that the only [2] A. Elfes, Sonar-based real-world mapping and navigation,
useful landmarks in the corridor correspond to door IEEE Journal of Robotics and Automation RA 3 (3) (1987)
posts and window corners. This is because the corri- 249–265.
[3] A. Schultz, W. Adams, Continuous localization using
dor is quite empty of natural landmarks compared to evidence grids, in: Proceedings of the IEEE Conference on
other rooms like the living room, the office and the Robotics and Automation, Leuven, Belgium, May 1998, pp.
manipulator lab. As a result of this, we get quite many 2833–2839.
ghost landmark matches in the corridor. Occasionally, [4] B. Schiele, J. Crowley, A comparison of position estimation
techniques using occupancy grids, in: Proceedings of the
we experience the robot getting lost in the corridor be- IEEE International Conference on Robotics and Automation,
cause of mismatched (ghost) landmarks. Most of the San Diego, CA, 1994, pp. 1628–1634.
times this happens when the robot moves between ad- [5] W. Rencken, Concurrent localization and map building for
jacent reference maps in the corridor, because then it mobile robots using ultra-sonic sonars, in: Proceedings of the
IEEE 1993 International Conference on Intelligent Robotics
survives from localization information from the old
and Systems (IROS’93), Yokohama, Japan, July 1993, pp.
reference map until it has collected enough landmarks 2192–2197.
to match against the new reference map. A better ap- [6] W. Rencken, Autonomous sonar navigation in indoor,
proach would of course be to simultaneously mon- unknown and unstructured environments, in: Proceedings
itor the two nearest adjacent reference maps of the of the International Conference of Intelligent Robots and
Systems (IROS’94), Munich, Germany, September 1994, pp.
robot and keep track of the nearest located landmarks
127–134.
in these maps. In this way the robot could be more [7] J. Leonard, H. Durrant-Whyte, Directed Sonar Sensing for
continuously updated when moving between different Mobile Robot Navigation, Kluwer Academic Publishers,
reference maps. We will most certainly evaluate such Boston, MA, 1992.
[8] O. Wijk, P. Jensfelt, H. Christensen, Triangulation based
kind of methods in the future.
function of ultrasonic sensor data, in: Proceedings of the IEEE
Conference of Robotics and Automation, Leuven, Belgium,
May 1998, pp. 3419–3424.
6. Conclusions and future research [9] O. Wijk, H.I. Christensen, Extraction of natural landmarks
and localization using sonars, in: Proceedings of the
Sixth Symposium on Intelligent Robotic Systems (SIRS-98),
In this paper we presented a new algorithm for ex- Edinburgh, July 1998, pp. 231–240.
traction and matching of natural point landmarks fil-
tered out from raw sonar data. The technique can be
Olle Wijk received his M.Sc. degree in
used for absolute as well as local localization of a mo-
1996 from the Royal Institute of Technol-
bile robot. Concerning local localization which is im- ogy, Stockholm, Sweden. He is currently
portant when navigating the robot, it is our belief that a Ph.D. student within the Centre for Au-
better results can be obtained (especially in corridors) tonomous Systems. His research interests
by implementing Kalman filters with validation gates are primarily sensor fusion, mobile robot
localization and navigation.
that track the natural point landmarks.
Acknowledgements
Henrik I. Christensen is a Chaired
Professor of Computer Science at the
The research has been carried out at the Centre for
Royal Institute of Technology, Stock-
Autonomous Systems at the Royal Institute of Tech- holm, Sweden. He is also the Director
nology, and sponsored by the Swedish Foundation for of the Centre for Autonomous Systems
Strategic Research. that does research on mobile robotics for
domestic and outdoor applications. He
received M.Sc. and Ph.D. degrees from
Aalborg University in 1987 and 1989,
References respectively. He has held appointments at
Aalborg University, University of Pennsylvania, and Oak Ridge
[1] J. Borenstein, H. Everett, L. Feng, Navigating Mobile Robots. National Laboratory. His primary research interest is now in
A.K. Peters, Wellesley, MA, 1996. system integration for vision and mobile robotics.