PMCCPMCCPMCC

Search tips
Search criteria 

Advanced

 
Logo of sensorsMDPI Open Access JournalsMDPI Open Access JournalsThis articleThis JournalInstructions for authorssubscribe
 
Sensors (Basel). 2017 March; 17(3): 651.
Published online 2017 March 22. doi:  10.3390/s17030651
PMCID: PMC5375937

Indoor Positioning System Using Magnetic Field Map Navigation and an Encoder System

Vittorio M. N. Passaro, Academic Editor

Abstract

In the indoor environment, variation of the magnetic field is caused by building structures, and magnetic field map navigation is based on this feature. In order to estimate position using this navigation, a three-axis magnetic field must be measured at every point to build a magnetic field map. After the magnetic field map is obtained, the position of the mobile robot can be estimated with a likelihood function whereby the measured magnetic field data and the magnetic field map are used. However, if only magnetic field map navigation is used, the estimated position can have large errors. In order to improve performance, we propose a particle filter system that integrates magnetic field map navigation and an encoder system. In this paper, multiple magnetic sensors and three magnetic field maps (a horizontal intensity map, a vertical intensity map, and a direction information map) are used to update the weights of particles. As a result, the proposed system estimates the position and orientation of a mobile robot more accurately than previous systems. Also, when the number of magnetic sensors increases, this paper shows that system performance improves. Finally, experiment results are shown from the proposed system that was implemented and evaluated.

Keywords: magnetic field map, particle filter, indoor navigation, absolute position estimation

1. Introduction

As the need for indoor navigation grows, various techniques for indoor navigation are rapidly developing. Many businesses provide customers with various services based on a positioning system for their own purposes. In particular, industrial mobile robots, such as auto-guided vehicles, are widely used, and the market is gradually increasing. Also, home appliance robots, like the robot cleaner, are supplied in homes. In order to use these services, a navigation system needs to know the absolute position of the robot or smart device.

Navigation systems are classified into two categories [1]. One category uses absolute positioning, and the other uses relative positioning. In general, absolute position is estimated using external devices, such as beacons, landmarks, etc. Outdoors, the global positioning system (GPS) is mostly used to estimate absolute position. Recently, GPS standard positioning services have provided 3.1 m horizontal accuracy at a 95% confidence level [2]. But the GPS has to use four or more satellites [3]. This system is not suitable indoors, because the GPS signal cannot reach there. In order to use an absolute positioning system indoors, various positioning systems, such as ultrasonic [1,4,5], Bluetooth [6,7], and Wi-Fi [8,9] positioning systems, have been developed. However, these systems must be installed in the area where the positioning system is serviced. The relative positioning system does not need infrastructure because relative positioning sensors, such as an encoder system and an inertial navigation system (INS) [10], are only installed in the mobile robot. Also, the output rate of these systems is higher than with an absolute positioning system. However, the relative positioning system has a divergence problem when the position is calculated, so these systems need to correct for position error [1].

Magnetic field map navigation is able to estimate absolute position without infrastructure and the divergence problem. Indoors, the geo-magnetic field is refracted by structures like pillars, steel structures, and fixed large objects [11,12]. As a result of this refraction, a magnetic field map can be obtained and used in various methods [13]. These methods have one thing in common: that is, the use of a likelihood function. Many likelihood techniques have been researched to estimate absolute position. There are three types of likelihood method [13]. The first is maximum likelihood estimation (MLE), which selects the position with the maximum value. The second method is maximum likelihood ratio (MLR), which estimates the position of a mobile robot by using the distance between the first maximum position and the second maximum position. If the distance is shorter than a threshold value, the first maximum position is selected. If not, the estimated position is ignored. Finally, there is the aggregate bin likelihood (ABL) method, which uses an n-by-n moving average mask (bin). After moving-average computation, the position with the maximum value is selected as the estimated position. Depending on the size of the mask, system performance is determined. Above all, if many likelihoods have a high value, these three methods may also select a position with a large position error from among many candidate positions.

The methods based on a particle filter can estimate the optimal position, even though there are many candidate positions with a high value. The particle filter is one of the recursive Bayesian estimators, and is robust against nonlinear/non-Gaussian filtering problems [14,15]. Since the measurement probability density function (PDF) is non-Gaussian in magnetic field map navigation, a particle filter was used for this paper [13,16]. Described briefly, the particle filter, which is sequential importance resampling (SIR) in this system, can be divided into two steps [14]. The first step is importance sampling. The particles are propagated according to a dynamic model. Also, the weights of particles are updated by a measurement probability density function. The final step is resampling. In order to avoid the problem of degeneracy, the effective number of particles is calculated to determine whether to resample [14,15,16]. If the effective number is smaller than a threshold value, the particles are resampled. Finally, all steps are repeated. There are various methods based on the particle filter, depending on how to propagate the particles, how to make the measurement probability density function, and how to resample the particles. Self-localization magnetic field map methods based on a particle filter have been researched. These systems propagate the particles by specific situations, such as the speed limit, without any other positioning system in the propagation step [13,16]. However, if the mobile robot motion is outside a fixed specific situation, particle propagation is inaccurate and inefficient. A magnetic map navigation system combined with an INS was introduced [17]. The combination with the INS can make the system more stable than a self-localization system, because the INS is used to know the user’s forward velocity and angular velocity to propagate particles. However, the INS has a divergence problem due to cumulative error and velocity, and the angular velocity results of the INS need to be corrected by other means.

In order to solve these problems and to increase performance, we propose a particle filter system that integrates magnetic field map navigation and an encoder system. In the propagation step, the proposed system determines velocity by using encoders instead of the INS to avoid the divergence problem without error correction. In order to use the encoder, the error characteristics of the encoder must first be known. The encoder system has two categories of error [18,19]. One is systematic errors from unequal wheel diameters, misalignment of wheels, or limited encoder resolution and limited sampling rates. The other is non-systematic errors from travelling over uneven floors and from wheel-slippage. If these errors accumulate over time, the estimated position of the mobile robot can diverge from the real position [20,21]. However, the encoder system is free from the divergence problem when velocity is calculated because the current velocity of the encoder system is not affected by the previously measured velocity. Therefore, the particles can be propagated by using the velocity of the encoder system without encoder error correction. In the measurement update step, multiple magnetic sensors and three magnetic field maps (a horizontal intensity map, a vertical intensity map, and a direction information map) are used to make the measurement PDF, which update the weights of particles. Also, in this paper the mobile robot’s orientation is computed by using only the magnetic field map without any other sensor, such as the encoder or the INS.

The organization of this paper is as follows: The magnetic-field map-building system is introduced in Section 2.1, and the magnetic field maps are introduced in Section 2.2. The various coordinate systems are described in Section 2.3. In Section 2.4, magnetic field map navigation using the particle filter is discussed. Section 3 shows the results from evaluation of the proposed system. Finally, Section 4 offers conclusions.

2. Positioning System

2.1. The Magnetic-Field Map-Building System

In order to use magnetic field map navigation, a magnetic field map should be obtained in advance. Since the mobile robot moves with a constant height on an even floor, the magnetic field map should be built on the horizontal plane. In order to build the magnetic field map efficiently, a magnetic-field map-building system is needed. This system consists of a magnetic field sensor array, odometry, and a magnetic field data alignment system. When the system moves in the test area, the position of the system is estimated by odometry, and the magnetic field data is measured at the same time. Finally, the magnetic field map is built when the measured magnetic field data are aligned to position, estimated by odometry in the magnetic field data alignment system. In a previous study, an encoder system was used for odometry [22]. However, odometry using encoders has a divergence problem with estimated position rodometry because of cumulative error. Therefore, an integration system is needed to calibrate this error [20,21,22,23,24]. In order to calibrate the position error from odometry, we used an integration system with a capacitive binary proximity sensor, which is the PR30-10DN. Figure 1 shows the magnetic-field map-building system in this paper. This system consists of the sensor, a pre-processing segment, an integration system, and the magnetic field data alignment system. The sensors (the magnetic sensor array, two encoders, and a proximity sensor) are mounted in the mobile robot. The magnetic field data and the encoder data are measured at regular intervals. However, the proximity sensor does not output the signal at a regular time interval, because the proximity sensor generates a signal when the distance from a landmark that is installed at a known position in the test area is within 10 mm. The measured sensor data are processed during pre-processing, which consists of odometry and the proximity sensor positioning system. After pre-processing, rodometry from odometry and rprox from the proximity sensor positioning system are transmitted to the integration system. The estimated position, rodometry from odometry, is compensated for with the integration system when the new proximity sensor position data, rprox, are received. Also, the this system calculates reference orientation Ψref,k, which is expressed as

Ψref,k=tan1(rref,y,krref,y,k1rref,x,krref,x,k1)
(1)

where [rref,x,k,rref,y,k]T=rref,k, and k is the time index.

Figure 1
The magnetic-field map-building system.

The maximum error from the proximity sensor is within 5 mm because the test area is not perfectly flat. However, this system has an acceptable level of error in the position estimating reference system of the mobile robot. Finally, a magnetic field map is built completely by the magnetic field data alignment system using the measured magnetic field data, m, reference position, rref, and reference orientation, Ψref. Since the position of each magnetic sensor is known in mobile robot’s body frame, the position of each magnetic sensor in main frame is computed using reference position and orientation. The magnetic field measured at each sensor is first mapped to each sensor position in the main frame. Also, the measured X, Y direction magnetic field should be rotated by the reference orientation. Since the magnetic field map is constructed at constant interval, the magnetic field of each coordinate in the magnetic field map is computed by a bilinear interpolation about four reference positions near each coordinate. After interpolation, the magnetic field map is obtained using a 3 × 3 mean filter.

2.2. The Magnetic Field Map

The magnetic field map used in this paper was built with magnetic field data from the 7th floor corridor of the 10th engineering building in Pusan National University. This area is shown in Figure 2. The reference system moves from position (0, 0) to position (11.58, −1.32) in the corridor. The magnetic field was measured with 55.88 mm spacing in the direction of mobile robot movement with a width of 0.94996 m (=55.88 mm×17). In order to reduce the error in the magnetic field map, every magnetic sensor was calibrated [13], and the magnetic field was measured several times by changing the position of the sensor. Finally, the magnetic field maps about each axis can be obtained. The magnetic maps created are composed of X, Y, and Z-direction magnetic field maps [13,16,22]. These maps are represented as MX(r), MY(r), and MZ(r), where r=[rx,ry]T.

Figure 2
The test area for magnetic field map navigation: (a) map of the test area divided into four sections: A, B, C, and D; and (b) photos of the test corridor.

If all three magnetic field maps are used for estimating position, the estimation error is reduced remarkably, compared to magnitude magnetic field map MXYZ(r)=(MX(r),MY(r),MZ(r)). But the amount of computation increases in proportion to the number of magnetic field maps used. If the mobile robot moves on an even floor, the X-Y magnetic field map, MXY(r), which is the intensity map of the horizontal plane, is used. Then, the amount of calculations can be reduced, compared to using three magnetic field maps. Also, an angle map of the magnetic field, Mφ(r), is needed. This angle map is not directly used to compute the measurement probability density. It is used to refer to the rotation transformation in this proposed method. This will be explained in detail in the next section. The X-Y magnetic field map and the angle map are indicated by

MXY(r)=(MX(r))2+(MY(r))2
(2)

Mφ(r)=tan1(MY(r)/MX(r))
(3)

The intensity magnetic field maps MXY(r) and MZ(r), and the direction magnetic field map, Mφ(r), about the test area are shown in Figure 3.

Figure 3
The magnetic field maps. (a) The X-Y magnetic field map, which is the intensity magnetic field map of the horizontal plane; (b) Z-direction magnetic field map; (c) Direction of the magnetic field in the horizontal plane.

In magnetic field map navigation, the performance of the system depends on variation of the magnetic field maps. The variation of the magnetic field maps can be evaluated by the variance and gradient. If the variance of the magnetic field intensity is larger, it is easy to distinguish between true and false positions. The gradient magnitude of a magnetic field affects the resolution when estimating position. However, if the variance and gradient magnitude of the direction magnetic field map are large, the estimated orientation has a large error. This is explained in detail in the next section. For the above reasons, the variance and gradient magnitude of the magnetic field map at each point are important elements in magnetic field map navigation. Table 1 shows the statistics of the magnetic field maps in the test area. Also, the histograms of the magnetic field maps are shown in Figure 4.

Figure 4
The histograms of the magnetic field maps. (a) The X-Y magnetic field map; (b) Z-direction magnetic field map; (c) Direction magnetic field map in the horizontal plane.
Table 1
Statistics of the magnetic field map.

2.3. Frame Definition

The estimated position is expressed in relation to the main frame in this paper. Since the sensor data are measured in the body frame, axis definitions and transformations are required. Figure 5 shows various frames. The mobile robot position is rk=[rx,k,ry,k]T at time k in the fixed main frame. The navigation frame is parallel to the main frame, but the center of the navigation frame is at the center of the mobile robot [25]. The body frame is the center of the robot. The X-axis of the body frame is the same direction as the head direction of the robot. The Y-axis is the direction to the right, and the Z-axis is directed down the mobile robot. Angle Ψk is the difference in the angle between the X-axis of the body frame and the X-axis of the navigation frame.

Figure 5
The various frames.

2.4. Particle Filter

When a mobile robot moves on an even floor where three magnetic field maps have already been acquired, the magnetic field data and the encoder velocity data are measured at constant intervals. And then, the particle filter system estimates the position of the mobile robot whenever the magnetic field data are measured. First, one thousand particles are propagated by measured encoder velocity vk and the statistical information of the system. The distribution of the encoder velocity error is assumed to be Gaussian. The propagation model equation is expressed as:

r^k(j)=rk1(j)+vkΔt+e(j)
(4)

where e=Ν(0,δENC2)Δt, and j is the particle index.

Second, measurement probability density function p(mk|rk) that is able to update the weight of a particle has to be evaluated. PDF p(mk|rk) presents the outcomes, which include information on the actual position in statistical inference. The magnitude of the outcomes near the actual position is relatively higher than other outcomes. If the distribution of the magnetic field measurement error is Gaussian, the PDF by using one sensor is represented as:

p(m|r)=γexp(12δe2(mM(r))2)
(5)

where γ=1(2π)δe2 and where m is the magnetic field measurement by the sensor, M(r) is the magnetic field magnitude value at r in the map, and δe2 is the measurement error variance [16]. In order to consider the orientation of the mobile robot, the direction magnetic field map, Mφ(r), and the measured direction of the magnetic field in the horizontal plane are used. If the i-th magnetic field sensor is placed at rib in the body frame, which is located at rk and rotated about Ψk in the main frame, the sensor position in the main frame is expressed as

ri,k=Rot(Ψk)rib+rk
(6)

where Rot(Ψk) is rotation matrix about Ψk. The measurement of the magnetic field at ri,k is expressed as

mi,kb=[Rot(Ψk)001][MX(ri,k)MY(ri,k)MZ(ri,k)]+Ν(0,δe2)
(7)

with the measurement of the i-th sensor represented as mi,kb=[mi,x,kb,mi,y,kb,mi,z,kb]T. However, to calculate ri,k, it is necessary to know the mobile robot’s orientation, Ψk. The orientation can be estimated by using the direction magnetic field map, Mφ(rk), and the direction of the measured magnetic field, φkb, at the center of the body frame. The relationship is expressed as follows [26]:

Ψk(rk)=Mφ(rk)φkb
(8)

In order to overcome the sensor noise, the direction of measured magnetic field φkb is estimated with the mean of the magnetic field direction from each sensor because the sensors are located close each other in the mobile robot. This direction is expressed as:

φ^kb=1ni=1ntan1(mi,y,kb/mi,x,kb)
(9)

where n is the number of sensors used, and i is the sensor index. However, if the variation of the direction magnetic field map is large, the estimated direction of magnetic field φ^kb has a large error, because the directions measured by each magnetic sensor are greatly different from each other. After the mobile robot orientation, Ψk(rk), is computed, ri,k is expressed as:

ri,k=Rot(Ψk(rk))rib+rk
(10)

The two PDFs about the X-Y magnetic field and Z-direction magnetic field are expressed as:

p(mi,xy,kb|rk)exp(12δe,xy2(mi,xy,kbMXY(ri,k))2)
(11)

p(mi,z,kb|rk)exp(12δe,z2(mi,z,kbMZ(ri,k))2)
(12)

where mi,kb=[(mi,x,kb)2+(mi,y,kb)2,mi,z,kb]T=[mi,xy,kb,mi,z,kb]T.

If the PDFs about mi,xy,kb and mi,z,kb are assumed to be an independent distribution, the joint PDF is expressed as:

p(mi,kb|rk)=p(mi,xy,kb|rk)p(mi,z,kb|rk)C
(13)

where C is a normalizing constant. Also, if the measurement PDFs of each sensor can be assumed to be an independent distribution, the final joint PDF is represented as:

p(m1:n,kb|rk)i=1np(mi,kb|rk)
(14)

with m1:n,kb [triangle, equals] m1,kb,,mn,kb.

After p(m1:n,kb|rk) is evaluated by measurement, the importance weights of the particles are updated. The measurement update step is expressed as:

wk(j)=wk1(j)p(m1:n,kb|r^k(j))
(15)

After the measurement update step, the updated weights of particles are normalized so they sum to 1. Since the particles are normalized, we do not have to calculate the constant C in order to reduce processing time.

Finally, the mobile robot position is estimated by means of the particles where the equation is represented as:

r^k=j=1Nr^k(j)wk(j)
(16)

Figure 6 shows the updated importance weights in the measurement update step. The particles propagated by the encoder in the previous step are updated to a new weight through computation with the measurement PDF. When the mobile robot position is (23.25, 0) in Figure 6, the particles are gathered near (2, 0), (18.34, −9.16), and the real position of the mobile robot. However, since the probability density near the real position is higher than the others, the estimated position of the mobile robot is able to be near the real position of the mobile robot. Using Equation (16), the position is estimated as (23.23, −0.03). Over time, the particles near (2, 0) and (18.34, −9.16) will gradually be cleaned up, because these particles have very low weight.

Figure 6
The updated importance weights in the measurement update step.

If the position of the mobile robot can be estimated, the orientation of the mobile robot is also determined. The estimated orientation of the particles is expressed as:

Ψ^k(i)=Mφ(r^k(i))φ^kb
(17)

Also, the orientation of the mobile robot is estimated with the following equation:

Ψ^k=j=1NΨ^k(j)wk(j)
(18)

In order to avoid the degeneracy problem of importance weights, the resampling step is required. If the effective number of particles, N^eff, is smaller than threshold number Nth, residual resampling is performed. This condition is expressed as

N^eff=1j=1N(wk(j))2<Nth=N/2
(19)

where N is the number of particles, and N = 1000 in this system. After the residual resampling, the weight of all particles is equalized to 1/N. Figure 7 shows the flowchart of the proposed particle filter system.

Figure 7
The proposed system flowchart.

3. Experiments and Results

3.1. Experimental Environment

In order to evaluate the proposed system, a reference system and odometry using encoders were used. Figure 8 shows a block diagram of these systems. The reference system that was used to build the magnetic field map prints reference position rref and reference orientation Ψref. Also, odometry using encoders prints position rodometry. Finally, the proposed system estimates position r^ and orientation Ψ^ for the mobile robot. For this paper, we used a Stella B2 mobile robot as a platform to obtain the information of the encoders, the magnetic field data, and the proximity sensor output. This mobile robot, shown in Figure 9, is divided into a control unit and a measurement and data transmission unit. The control unit consists of the two encoders and a line tracking system that controls the mobile robot’s motion. The acquired encoder information is transmitted to the measurement and data transmission unit. The measurement and data transmission unit has a magnetic sensor array board and a proximity sensor. The magnetic sensor array board is composed of six LSM303 magnetic field sensors (STMicroelectronics, Geneva, Switzerland), which are arranged on the Yb axis at intervals of d (=55.88 mm), as seen in Figure 10. This unit transmits the received encoder data, the measured magnetic data, and the proximity sensor data to a personal computer (PC).

Figure 8
Block diagram of the proposed system and the reference system.
Figure 9
The mobile robot system. (a) Section 1 is the measurement and data transmission unit, and Section 2 is the control unit; (b) The magnetic sensor array board.
Figure 10
The estimated position of the mobile robot.

Figure 2 shows the path of the mobile robot in the corridor. A tracking line was installed along the center of the corridor. The proximity sensor’s landmarks were installed at known positions. The mobile robot moved from (0, 0) to (11.58, −1.32). Before the mobile robot departed, the particles were updated many times. The system was then able to operate stably. When the mobile robot moved along the predetermined path in the corridor, each sensor’s data and the reference data were transmitted periodically. Finally, the proposed algorithm was executed by the PC twice per second.

3.2. Results

The results of the proposed method are shown in Figure 10, Figure 11 and Figure 12. Figure 10 shows that the mobile robot position was estimated near the path. However, the estimated position from odometry using the encoders was off the path. Figure 11 shows the position error of the mobile robot. Comparison of the odometry position errors and the proposed method’s position errors are shown in Figure 11a. At the beginning of the experiment, the estimation results from odometry using the encoders was less than with the proposed system, but the estimated position from odometry diverged over time. We can see that the proposed method prevents divergence by the encoder. Figure 11b shows the distance error with the proposed method. The distance error occurs largely in the vicinity of 90 s, passing through the second corner between sections B and C. Also, the variance of the distance error in sections C and D is larger than in section A. Because the variation of the direction in the magnetic field map is large as shown in Figure 3c. In the process of estimating the position, the estimated direction of the magnetic field φ^kb is used as shown in Equations (8)–(10). In order to reduce the influence of noise, the magnetic field direction from each sensor is averaged, as shown in Equation (9). However, if the variation of direction is large, the mean of the magnetic field direction φ^kb has large error. As a result, the error of estimated position becomes large. In the case of section B, the variation of direction is small, but the distance error is larger than in section A. Because the distance error is also affected by the variation of intensity. As shown in Figure 3a, the variation of X-Y intensity in section B is lower than in section A. If the variation of intensity is small, the variance of the measurement PDF becomes large. Since the weight of particle is updated by the measurement PDF as shown in Equation (15), if the variance of the measurement PDF is large, the estimated position is able to have a large error. Therefore, the smaller the variation of direction and the larger the variation of intensity, the better the performance of the position estimation.

Figure 11
The position error of the mobile robot. (a) Comparison of the odometry position errors and the proposed method’s position errors; (b) The distance errors of the proposed method. A, B, C, and D are the sections of the test corridor, as shown in ...
Figure 12
The estimated orientation from the proposed method. A, B, C, and D represent the sections of the test corridor, as shown in Figure 2. (a) The estimated orientation and the reference orientation; (b) The errors from the estimated orientation.

For the same reason, the variations of intensity and direction affect the performance of orientation estimation. Figure 12 shows the estimated orientation of the mobile robot. The orientation error in sections B, C, and D is larger than in section A. If the variation of direction is large, the error of estimated magnetic field direction φ^kb becomes large. As a result, the estimated orientation has a large error as shown in Equation (17). Also, the variation of the intensity affects the variance of the measurement PDF, and the weight of particles updated by PDF affects the orientation estimation as shown in Equation (18). If the variation of the intensity is small, the estimated orientation has a large error. Finally, the experimental results show that the smaller the variation of direction and the larger the variation of intensity, the better the performance of the position and orientation estimation. The error statistics of the proposed method are shown in Table 2. The mean distance error is within 0.1 m, and the maximum distance error is about 0.4 m. The mean orientation error is 0.0386 rad, and the maximum error in orientation is approximately 0.13 rad.

Table 2
The error statistics of the proposed method.

Figure 13 shows the distance and orientation error results, depending on the number of sensors used. Experiments were performed by increasing the number of sensors from one to six, and each experiment was performed 10 times. For distance error in the estimated position, as the number of sensors increased, the performance improved, and the distance error converged at about 0.1 m. However, when three or more sensors were used, there was little difference in performance. The results of orientation error were similar in the experiment. The maximum and minimum orientation errors are shown in Figure 14. When more sensors are used, the maximum error tends to decrease. Since the processing time is proportional to the number of sensors used, it is reasonable to use three sensors in this system.

Figure 13
The results depending on the number of sensors used. The upper figure shows the mean of the distance error for the estimated position. The mean of the orientation error is shown in the lower figure.
Figure 14
The maximum and minimum orientation error results depending on the number of sensors used.

4. Conclusions

In this paper, we proposed a positioning system using a magnetic field map navigation and an encoder system. Before estimating the position of a mobile robot, a magnetic-field map-building system was implemented to efficiently obtain three magnetic field maps: a horizontal intensity map, a vertical intensity map, and a direction information map. After the three magnetic field maps were built, the position of the mobile robot was estimated by using the particle filter. We show that the particles are propagated by the velocity of the encoder without error correction in the propagation step, and the weights of particles are updated by using the three magnetic field maps and multiple magnetic sensors. As a result of processing with the particle filter, the position of the mobile robot was estimated, and the position estimation performance was better than with odometry. Also, the proposed system estimated the orientation of the mobile robot without help from any other sensor system. As a result of the experiment, we confirmed the relationship between the variation of magnetic field maps and the performance of this system. The smaller the variation of direction and the larger the variation of intensity, the better the performance of the position and orientation estimation. Also, we confirmed that system performance is likely to improve when the number of sensors increases. In this paper, when six magnetic field sensors which are aligned in a line are used, the mean distance error is less than 0.1 m and the mean orientation error is 0.0386 rad.

In order to further improve the performance of the proposed system, the sensors must be calibrated accurately, and the various placement methods for the sensors must also be studied. An integration method with other systems can also be considered, and more research is needed into building a magnetic field map more accurately.

Acknowledgments

This work was supported by BK21PLUS (Brain Korea 21 Program for Leading Universities & Students), Creative Human Resource Development Program for IT Convergence.

Author Contributions

Author Contributions

K.-R.B. and H.-S.K. conceived the main idea of this paper. H.-S.K. implemented the hardware system, developed the program of the mobile robot system, and wrote the paper. H.-S.K. and W.S. performed the experiments and analyzed data.

Conflicts of Interest

Conflicts of Interest

The authors declare no conflict of interest.

References

1. Cho B., Seo W., Moon S., Baek K. Positioning of a Mobile Robot Based on Odometry and New Ultrasonic LPS. Int. J. Control Autom. Syst. 2013;11:333–345. doi: 10.1007/s12555-012-0045-x. [Cross Ref]
2. William J. Global Positioning System (GPS) Standard Positioning Service (SPS) Performance Analysis Report. Hughes Technical Center; Atlantic City, NJ, USA: Apr, 2016. Report #93.
3. Misra P., Enge P. Global Positioning System: Signals, Measurements, and Performance. Ganga-Jamuna Press; Lincoln, MA, USA: 2011.
4. Villadangos J.M., Urena J., Mazo M., Hernandez A., Alvarez F., Garcia J.J., De Marziani C., Alonso D. Improvement of ultrasonic beacon-based local position system using multi-access techniques; Proceedings of the 2005 IEEE International Workshop on Intelligent Signal Processing; Faro, Portugal. 1–3 September 2005; pp. 352–357.
5. Seo W., Cho B., Moon S., Baek K. Intelligent Robotics and Applications. Volume 7101. Springer; Berlin/Heidelberg, Germany: 2011. Position Estimation Using Time Difference of Flight of the Multi-coded Ultrasonic; pp. 604–609.
6. Chawathe S. Beacon Placement for Indoor Localization using Bluetooth; Proceedings of the 11th International IEEE Conference on Intelligent Transportation Systems; Beijing, China. 12–15 October 2008; pp. 980–985.
7. Wang Y., Ye1 Q., Cheng J., Wang L. RSSI-based Bluetooth Indoor Localization; Proceedings of the 2015 11th International Conference on Mobile Ad-hoc and Sensor Networks (MSN); Shenzhen, China. 16–18 December 2015; pp. 165–171.
8. Biswas J., Veloso M. WiFi Localization and Navigation for Autonomous Indoor Mobile Robots; Proceedings of the 2010 IEEE International Conference on Robotics and Automation (ICRA); Anchorage, AK, USA. 3–8 May 2010; pp. 4379–4384.
9. Olivera V.M., Plaza J.M.C., Serrano O.S. WiFi localization methods for autonomous robots. Robotica. 2006;24:455–461. doi: 10.1017/S0263574705002468. [Cross Ref]
10. Cho B., Moon W., Seo W., Baek K. A dead reckoning localization system for mobile robots using inertial sensors and wheel revolution encoding. J. Mech. Sci. Technol. 2011;25:2907–2917. doi: 10.1007/s12206-011-0805-1. [Cross Ref]
11. Storms W., Shockley J., Raquet J. Magnetic field navigation in an indoor environment; Proceedings of the Ubiquitous Positioning Indoor Navigation and Location Based Service (UPINLBS); Kirkkonummi, Finland. 14–15 December 2010; pp. 1–10.
12. Gozick B., Subbu K.P., Dantu R., Maeshiro T. Magnetic Maps for Indoor Navigation. IEEE Trans. Instrum. Meas. 2011;60:3883–3891. doi: 10.1109/TIM.2011.2147690. [Cross Ref]
13. Shockley J.A., Raquet J.F. Navigation of Ground Vehicles Using Magnetic Field Variations. Navigation. 2014;61:237–252. doi: 10.1002/navi.70. [Cross Ref]
14. Doucet A., Freitas N., Gordon N. Sequential Monte Carlo Methods in Practice-Statistics for Engineering and Information Science. Springer; New York, NY, USA: 2001.
15. Gustafsson F. Particle Filter Theory and Practice with Positioning Applications. IEEE Aerosp. Electron. Syst. Mag. 2010;25:53–82. doi: 10.1109/MAES.2010.5546308. [Cross Ref]
16. Haverinen J., Kemppainen A. Global indoor self-localization based on the ambient magnetic field. Robot. Auton. Syst. 2009;57:1028–1035. doi: 10.1016/j.robot.2009.07.018. [Cross Ref]
17. Grand E.L., Thrun S. 3-Axis Magnetic Field Mapping and Fusion for Indoor Localization; Proceedings of the 2012 IEEE Conference on Multisensor Fusion and Integration for Intelligent Systems (MFI); Hamburg, Germany. 13–15 September 2012; pp. 358–364.
18. Abbas T., Arif M., Ahmed W. Measurement and Correction of Systematic Odometry Errors Caused by Kinematics Imperfections in Mobile Robots; Proceedings of the 006 SICE-ICASE International Joint Conference; Busan, Korea. 18–21 November 2006; pp. 2073–2078.
19. Borenstein J., Feng L. Measurement and Correction of Systematic Odometry Errors in Mobile Robots. IEEE Trans. Robot. Autom. 1996;12:869–880. doi: 10.1109/70.544770. [Cross Ref]
20. Choi B., Lee J., Lee J. Localization and Map-building of Mobile Robot Based on RFID Sensor Fusion System; Proceedings of the 6th IEEE International Conference on Industrial Informatics; Daejeon, Korea. 13–16 July 2008; pp. 412–417.
21. Lee S., Song J. Robust mobile robot localization using optical flow sensors and encoders; Proceedings of the 2004 IEEE International Conference on Robotics and Automation (ICRA’04); Barcelona, Spain. 18–22 April 2004; pp. 1039–1044.
22. Angermann M., Frassl M., Doniec M., Julian B.J., Robertson P. Characterization of the Indoor Magnetic Field for Applications in Localization and Mapping; Proceedings of the 2012 International Conference on Indoor Positioning and Indoor Navigation (IPIN); Sydney, Australia. 13–15 November 2012; pp. 1–9.
23. Mohanalakshmi K., Arun B. NFC Signals Based on an Effective Mobile Robot Localization. Elysium J. 2015;2:1–5.
24. Goel P., Roumeliotis S.I., Sukhatme G.S. Robust Localization Using Relative and Absolute Position Estimates; Proceedings of the IEEE/RSJ International Conference on Intelligent Robots and System; Lausanne, Switzerland. 30 September–4 October 2002; pp. 1134–1140.
25. El-Sheimy N., Chiang K.W., Noureldin A. The Utilization of Artificial Neural Networks for Multisensor System Integration in Navigation and Positioning Instruments. IEEE Trans. Instrum. Meas. 2006;55:1606–1615. doi: 10.1109/TIM.2006.881033. [Cross Ref]
26. Navarro D., Benet G. Magnetic Map Building for Mobile Robot Localization Purpose; Proceedings of the IEEE Conference on Emerging Technologies & Factory Automation; Palma de Mallorca, Spain. 22–25 September 2009; pp. 1–4.

Articles from Sensors (Basel, Switzerland) are provided here courtesy of Multidisciplinary Digital Publishing Institute (MDPI)