Keywords

1 Introduction

Robot location is one of the most common problems in the mobile robot field and is extensively demanded in many domains such as mobile manipulation [1], warehouse logistics [2], and inspection work [3]. Based on traditional navigation technology, robots can repeat navigation and location tasks with high stability. However, the practical application requires the robot location to have high accuracy and reliability. Therefore, a variety of techniques have been developed to improve the positioning ability of the mobile robot [4].

With the development of the Simultaneous Localization and Mapping(SLAM) algorithms, a large amount of sensor information such as camera [5], laser [6], and WiFi [7] are fused to improve the positioning accuracy of the robot. The Adaptive Monte Carlo localization(AMCL) algorithm [8] is an efficient probabilistic localization method that is based on a laser sensor. Based on AMCL, enormous approaches have been developed [9, 10] to enhance the efficiency and precision of the autonomous mobile robot location. Accordingly, the accuracy of robot localization has been greatly improved and widely used.

However, with the demand for sophisticated operations in the industry such as assembly manipulation [11] and material handling [12], the accuracy of the robot localization needs further improvement. Although this is not particularly new and has been used for many years in the field of mobile robots, existing approaches need further improve localization accuracy and tackle the kidnapping problem, especially in highly similar environments. How to rapidly and accurately navigate to the target point is an important issue, which is still worthy of further investigation.

In this paper, we propose an improved particle generation method to improve the AMCL algorithm based on the Laser Reflector Landmarks(LRL) information. The new particles are continuously generated by triangular matching with LRL information. Depending on the new particles, the mobile robot achieves high-precision positioning in the progress of SLAM. Experiments on real robots verify the effectiveness of the proposed method.

2 Related Work

The SLAM problem is considered to be one of the keys to realizing autonomous robots [13]. How to locate the robot accurately is one of the key technologies. To better solve this problem, the researchers studied location techniques such as Zigbee [14] and GNSS [15]. Although robot localization technology has been widely used and obtained good results. However, high-precision positioning is still worth further study. To further improve the accuracy of the robot, in work [15], the particle weight in the Monte Carlo Localization(MCL) algorithm is adjusted by using the Karlman filter of Global Navigation Satellite System(GNSS) information. The fusion of GNSS data improves the accuracy of location in regions with fewer map characteristics and avoids the problem of kidnapped robots. Unlike previous work using GNSS to improve the particle filter, the authors Ahn et al. [16] applied the particle filter localization methods to autonomous vehicles, and the position of the autonomous vehicle is estimated accurately by using a 2D LiDAR and a features map of the road. The enhanced particle filter localization method can be used to improve both outdoor positioning accuracy and indoor positioning accuracy. Zhu et al. [17] improve the particle filter in the SLAM algorithm by using the formula of firefly position update to make the particle representation more reasonable and avoid particle weight degradation and particle depletion. In work [18], the authors propose linear kalman filter SLAM and extended kalman filter SLAM for localization and verification in simulation environments. The simulation results show that the landmark information improves the accuracy of the mobile robot positioning. Using WiFi routers as landmarks, the authors [19] propose a WiFi-based indoor mobile robot positioning system to improve positioning accuracy. This method solves the measurement noise and improves the positioning accuracy by using the component analysis-based extreme learning machine algorithm. Magnago et al. investigate the problem of effective landmark placement in work [20].

In this paper, we propose a method to estimate robot position by using LRL data and injecting the new particles according to the estimation result. The robot state estimation is based on the theory of triangle matching, which makes the new particles more accurate and reduces the measurement noise of the laser. Besides, we also retain some of the particles produced by AMCL to avoid the lack of LRL information and to stabilize the navigation system.

3 Method

High-precision localization is an important issue in an autonomous mobile robot. In this section, all those modifications are detailed and justified in integrating the LRL information into the original AMCL algorithm [8] to improve the accuracy of mobile robot localization.

3.1 Map Building and Matched Template Establishing

Laser range finder has been widely used in map building, locating and tracking. Traditionally, the robot navigates and locates itself in the environment based on the match result of the laser scan with the pre-build probability map. In this part, we utilize the LIDAR and Gmapping algorithm [21] to build the probability map as shown in Fig. 1. During the process of map building, we estimate the position of each laser reflector based on the least square algorithm and establish the topological map of LRL as shown in Fig. 2. Then, we randomly choose three non-colinear landmarks to form a triangle and calculate the length of the sides. All of the triangles are stored in the global matched template libraries and sorted by the longest side as shown in Fig. 2.

3.2 Landmarks Retrieve Based on Triangle Matching

The laser reflectors are easier to detect than other features during navigation. The matching process is as follows. First, the robot detects three or more reflectors and calculates the detection triangle. Second, retrieving the longest side of the detected triangle in the global matched template libraries established in the last section. Then, the location information of three laser reflectors is obtained based on the retrieved result. As shown in Fig. 3, the robot G detects the local triangle formed by the laser reflectors A, B, and D, and the local triangle \({\triangle }\) \({A}\) \({B}\) \({D}\) is matched with the triangle \({\triangle }\) \({3-4-25}\) in the template library. Therefore, the position of laser reflectors A, B, and D is obtained.

Fig. 1.
figure 1

Probability map. The red marks are the location of the laser reflector landmarks. (Color figure online)

Fig. 2.
figure 2

Topological map based on laser reflector landmarks

Fig. 3.
figure 3

Landmarks retrieve based on triangle matching and robot position estimation

3.3 Robot Position Estimation and New Particle Generation

As shown in Fig. 4, the robot detects the triangle \({\triangle }\) \({A}\) \({B}\) \({C}\) composed by the laser reflectors A, B and D. Through retrieving in the matched template libraries, the triangle \({\triangle }\) \({3-4-25}\) is the best-matched result. Therefore, the state of the robot can be estimated by laser reflectors A, B and C as follows:

$$\begin{aligned} \left\{ {\begin{array}{*{20}{c}} {{{({x_G} - {x_A})}^2} + {{({y_G} - {y_A})}^2} = r_A^2}\\ {{{({x_G} - {x_B})}^2} + {{({y_G} - {y_B})}^2} = r_B^2}\\ {{{({x_G} - {x_C})}^2} + {{({y_G} - {y_C})}^2} = r_C^2} \end{array}} \right. \end{aligned}$$
(1)

where \(({x_G},{y_G})\) is the estimation position of the robot, \(({x_i}, {y_i})(i= A, B, C)\) is the position of the matched reflectors, \({r_i}(i= A, B, C)\) is the distance between the robot and the reflector, and the formula can be further organized as:

$$\begin{aligned} Ap = R \end{aligned}$$
(2)

Therefore, the parameter p can be solved as below:

$$\begin{aligned} p = {({A^T}A)^{ - 1}}{A^T}R \end{aligned}$$
(3)

Besides, the estimation orientation of the robot can be obtained as follow:

$$\begin{aligned} \theta = \frac{1}{3}\sum \limits _{i = A}^C {a\tan 2({y_i}\mathrm{{ - }}{y_G},} {x_i}\mathrm{{ - }}{x_G}) - {\varphi _i} \end{aligned}$$
(4)

where \(({x_G},{y_G})\) is the estimation position of the robot, \(({x_i}, {y_i})(i= A,B,C)\) is the location of reflectors, \({\varphi _i} (i= A,B,C)\) is the orientation of the reflector. Finally, the estimation pose of the robot can be expressed as \(({x_G},{y_G},\theta )\).

In general, more than three triangles can be detected during the navigation period. Accordingly, the estimation state of the robot is the same as the triangle-matching results. To improve the accuracy of the robot localization, we empirically inject 600 new particles in each estimation position, which gives the best results in the environments tested.

4 Experiment

In the section, first, we introduce the hardware and control framework of the robot. Second, we describe the experimental environment setting. And then, we evaluate the performance of our proposed method on the robot in real-world scenarios. Finally, the results are discussed.

4.1 System Overview

The above-improved method is deployed on a real mobile robot and verified in the common indoor environment. The robot and environment settings are detailed below.

System Hardware and Control Framework. The mobile robot is a two-wheel differential moving platform and is equipped with a 2D laser range finder and a microcomputer, as shown in Fig. 4. The 2D laser can cover a 20 m distance and \({270^{\circ }}\) range, supported by HOKUYO. The microcomputer is used to process the localization programs and sensor data named Jetson TX2 and with 256 core-Pascal GPUs, manufactured by Nvidia. For the real robot, we use a Robot Operated System (ROS) based control system to communicate the data between the mobile base and sensors such as 2d laser and IMU. All control systems are built on the ROS system.

Fig. 4.
figure 4

The mobile robot platform

Environment Description. As shown in Fig. 5, the laser reflectors are non-equidistant and arranged in the scene and ensure that the robot can detect at least three reflectors at arbitrary positions. The size of the experimental environment is about 80 m \({\times }\) 80 m. We build the grid map and matching template library before experimenting as Fig. 1 and Fig. 2 shown.

Fig. 5.
figure 5

The real environment with laser reflector

4.2 Experiment Results and Discussion

To verify the proposed method, the experiments are performed and compared with the AMCL algorithm without the triangle match process. The euclidean distance and orientation error of each position and orientation is the evaluation criterion. For the real experiment, the position of the robot is randomly initialized. The robot is navigated to the target point with a speed of 0.2 m/s. As it is shown in Fig. 6, the localization error provided by our approach is better than the AMCL algorithm and the non-triangle-match method. According to the proposed method can improve the localization accuracy based on laser reflector landmarks information. And the error provided by the non-triangle-match method is also better than the AMCL. By adding the laser reflector into the environment, the laser can obtain more features to match the map to enhance the weight of particles and avoid the decay of particles. Our proposed approach obtains the accurate position of the laser reflector landmarks based on triangle matching and utilizes the match results to estimate the position of the robot, and adds the new accurate particles based on the state of the estimated position. Figure 7 shows the positioning error of the robot in the absence of the laser reflector landmarks information. In this case, in order to ensure the stability of the system, the robot keeps the navigation by switching to the AMCL algorithm. Therefore, the robot can achieve high-precision localization with the laser reflector landmarks information and maintain the same accuracy as AMCL with a lack of laser reflector landmarks information.

Fig. 6.
figure 6

Comparison between proposed method with AMCL algorithm.

Fig. 7.
figure 7

Comparison between proposed method with AMCL algorithm.

As the experiment results show, the proposed method achieves better performance compared to the AMCL and non-triangle-match method, improving the positioning accuracy of the robot. The high-precision positioning depends on the accuracy of triangular matching and the matching template library. Moreover, as Fig. 7 shows, our method can maintain the same accuracy as AMCL with a lack of landmarks information and provide always better results than the original AMCL algorithm.

5 Conclusions

In this work, we propose a novel localization method to improve the position accuracy of the mobile robot’s indoor positioning. This method achieves high-precision localization based on triangle matching of the laser reflector information with the matched template library. According to the experimental results, the proposed method gives better results than the original AMCL algorithm and maintains the same accuracy as AMCL with the lack of landmarks information. This method has good application value in the industry of high-precision autonomous navigation. It can also be applied to other navigation and positioning methods based on landmarks, such as vision and WiFi.