Next Article in Journal
An Improved Flexible Telemetry System to Autonomously Monitor Sub-Bandage Pressure and Wound Moisture
Next Article in Special Issue
Magnetic, Acceleration Fields and Gyroscope Quaternion (MAGYQ)-Based Attitude Estimation with Smartphone Sensors for Indoor Pedestrian Navigation
Previous Article in Journal
Face Recognition System for Set-Top Box-Based Intelligent TV
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

Locally-Referenced Ultrasonic – LPS for Localization and Navigation

Electronics Department, University of Alcalá de Henares, Escuela Politécnica. Ctra. Madrid-Barcelona, Km. 33,600, 28871 Alcalá de Henares, Spain
*
Author to whom correspondence should be addressed.
Sensors 2014, 14(11), 21750-21769; https://doi.org/10.3390/s141121750
Submission received: 17 September 2014 / Revised: 15 October 2014 / Accepted: 6 November 2014 / Published: 18 November 2014
(This article belongs to the Special Issue Sensors for Indoor Mapping and Navigation)

Abstract

: This paper presents a flexible deployment of ultrasonic position sensors and a novel positioning algorithm suitable for the navigation of mobile robots (MRs) in extensive indoor environments. Our proposal uses several independently-referenced local positioning systems (LPS), which means that each one of them operates within its own local reference system. In a typical layout, an indoor extensive area can be covered using just a reduced set of globally-referenced LPS (GRLPS), whose beacon positions are known to the global reference system, while the rest of the space can be covered using locally-referenced LPSs (LRLPS) that can be distributed arbitrarily. The number of LRLPS and their position can be also changed at any moment. The algorithm is composed of several Bayesian filters running in parallel, so that when an MR is under the GRLPS coverage area, its position is updated by a global filter, whereas when the MR is inside the LRLPS area, its position is updated using position increments within a local filter. The navigation algorithm has been tested by simulation and with actual data obtained using a real set of ultrasonic LPSs.

1. Introduction

The estimation of the position and navigation tasks of a mobile robot (MR) in indoor environments has been an important research topic during the last few years. Some systems try to replicate indoors the GPS behavior and performances outdoors. The most popular technologies used in order to implement an indoor positioning system are Ultrasound (US) [14] and Radiofrequency (RF) [57].

Usually, these technologies are used to build local position systems (LPS) [810] composed of a set of beacons, placed on known fixed positions that emit a signal (RF, US), which is captured by a mobile receptor in order to estimate its position. Using some kind of distance-dependent information included within the beacons' signals (i.e., time of flight, signal intensity), the receptor can estimate its position. If the recovered information is an absolute distance to each beacon, the estimation of the position can be obtained by a spherical trilateration [11]. The drawback of the spherical trilateration is that it is necessary to synchronize in time beacons and receivers. Alternatively, using the difference of distances to a reference beacon, the estimation of the position can be computed using a hyperbolic trilateration algorithm [12]. However, in such case of hyperbolic trilateration, the minimum set of beacons needed to estimate the receiver's position increases.

In the case of MR navigation, the most used positioning technique is odometry, based on the information provided by the encoders linked with their movement axes. Nevertheless, odometry is a relative positioning system whose estimations have an error that gets higher with time and that can also reflect impulsive error behavior related with skids or some other traction defects. Using process filtering, the odometry errors can be lowered to some grade. The most commonly used algorithms are based on Bayesian theory, like the unscented and extended Kalman filter (EKF, UKF) [13,14], the H-infinity [15] and the particle filter [16].

The best way to prevent heavy odometry errors is to fuse this source of information with complementary absolute positioning systems, like GPS outdoors. However, indoors, GPS cannot be used because of degradations in the reception from satellites, and that is why LPS are needed in those environments.

In extensive areas (for instance, inside large buildings), the deployed LPSs should cover most of the area, using as many additional LPS around as required by the degree of precision needed in the positioning task [10]. Ultrasonic beacons, for instance, give very good results when measuring distances by time of flight techniques (TOF), but the reduced range forces one to install several of these systems to cover large areas. Moreover, each LPS needs to be calibrated at their position after being deployed and before beginning the localization tasks. Therefore, the deployment of such systems is complicated when there are dynamic changes or a fast installation is required, for instance in emergencies or similar situations. If some or all of the LPSs in an extensive area could be installed without a previous calibration stage, many of those drawbacks would be avoided.

This paper presents a novel algorithm that allows one to navigate an MR in extensive areas using a set of LPSs, most of them without calibration. Section 2 describes the scenario and the statement of the problem. Section 3 introduces the proposed algorithm in both the spherical and the hyperbolic cases. Section 4 shows some simulated results. Section 5 presents real results. Section 6 describes the possibility to adapt the system for human tracking, and finally, Section 7 discusses some conclusions derived from the proposal.

2. Statement of the Problem and Definitions

The test scenario is an extended indoor area where it is necessary to locate an MR. This large area is covered using a set of calibrated and uncalibrated LPSs (Figure 1). A calibrated LPS is the one whose beacons have been referenced to a global system, for instance after a calibration procedure; we will denote it as globally-referenced LPS (GRLPS). Normally, a GRLPS will be placed in strategic waypoints, like, for instance, the main entrances to a section in a building. The uncalibrated LPS will be identified as locally-referenced LPS (LRLPS), because only the relative positions of the beacons inside each LRLPS are known, and they have been determined prior to the deployment; they only depend on the geometry of the LPS and not on the place in which it is installed. LRLPSs can be placed all around the movement area, and their number and positions can be changed dynamically (at any time).

Each LPS has to be composed of at least three beacons in the spherical case or four beacons in the hyperbolic one, in order to have enough distance measurements to apply the algorithms. Figure 2 shows a simulated scenario, where all beacons are placed on the ceiling, including GRLPSs, LRLPSs and their coverage areas on the ground. In this particular case, the GRPLS is composed of five beacons and the LRLPS of four beacons (so the GRLPS has more redundancy). Because of the performances achieved with the actual LPS used in real tests [9], we will suppose that for all of the LPSs, the coverage area is a circle on the ground with a radius of five meters.

The structure of each LPS must be known. In this case, we have used four beacons for each non-calibrated LPS structure (the LRLPS) composing a square with a side of 1 m; and five beacons, one more in the center of the square, for each calibrated LPS structure (the GRLPS). Some kind of overlapping between the LRLPSs' coverage area is recommended in order to reduce the positioning error of a mobile robot while navigating in the environment. If the MR moves outside the LPS coverage area (either a GR or LR LPS), it will only estimate its position using the odometry, so the error will increase accumulatively.

In order to make the paper more self-contained and to understand the proposed algorithm, some notations are included in this section:

G,k:Global state vector at instant k. This vector is composed of the global coordinates of the MR and its orientation. G indicates that the reference is global.
L,n,k:Local state vector at instant k. This vector is composed of the local coordinates of the MR and its orientation. L indicates that the reference is local, and n is the specific LRLPS.
̄G,kA priori global state vector at instant k.
̄L,n,k:A priori n-local state vector at instant k.
dpG,k,bG,m:Real distance measured between the global position of the MR at instant k and the m-th global beacon of GRLPS.
pG,k,bG,m:Estimated distance between the global position of the MR at instant k and the m-th global beacon of GRLPS.
dpL,k,bL,m:Real distance measured between the local position of the MR at instant k and the m-th local beacon of the n-LRLPS.
pL,k,bL,m:Estimated distance between the local position of the MR at instant k and the m-th local beacon of the n-LRLPS.
ΔdpG,k,bG,m:Real difference of distances measured between beacon m and beacon 1 of GRLPS to the global position of the MR at instant k.
ΔpG,k,bG,m:Estimated difference of distances between beacon m and beacon 1 of GRLPS to the global position of the MR at instant k.
ΔdpL,k,bL,m:Real difference of distances measured between beacon m and beacon 1 of the n-LRLPS to the global position of the MR at instant k.
ΔpL,k,bL,m:Estimated difference of distanced between beacon m and beacon 1 of the n-LRLPS to the global position of the MR at instant k.
AG,k:Global transition matrix of the dynamic model.
AL,n,k:n-local transition matrix of the dynamic model.
h(̄G,k):Global matrix observations obtained by the a priori information.
h(̄L,n,m):n-local matrix observations obtained by the n-local a priori information.
HG,k:Global measurement model matrix.
HL,n,k:n-local measurement model matrix.
PG,k:Global covariance matrix
PL,n,k:n-local covariance matrix.
QG,k:Global process noise covariance matrix.
QL,n,k:n-local process noise covariance matrix.
RG:Global measure noise covariance matrix.
RL,n:n-local measure noise covariance matrix.
σ w G 2:Global measure variance (variance of distance in spherical case or difference of distances in hyperbolic one).
σ w L , n 2:n-local measure variance.

3. Proposed Algorithm

The pseudocode of the proposed algorithm is presented in Algorithm 1, and it can be applied for both the spherical and the hyperbolic cases. Basically, this pseudocode points out which state vector (local or global) is updated depending on the measurements performed by the MR according to its localization and the coverage area of the different LPSs. The process for the main lines of this pseudocode is explained with more detail in the following paragraphs.

The algorithm estimates the 2D location and the orientation of a mobile node inside the global coordinates system. The estimated position values for the actual instant k are described by the global state vector (1):

X G , k = [ x G , k y G , k θ G , k ] T

When the mobile node is located inside the coverage area of a LRLPS, another local state vector (2) is defined additionally to the global vector:

X L , n , k = [ x L , n , k y L , n , k θ L , n , k ] T
where n = 1, 2, …, N is the specific LRLPS.

In order to have always a globally referenced position and orientation of the MR, let us suppose that the first iteration of this algorithm will be computed when the MR is inside the coverage area of a GRLPS. This is a convenient condition and is also quite easy to accomplish, because GRLPSs have been specified to be installed on the entry points of the main building sections' areas of interest.

Algorithm 1. Pseudocode of the proposed algorithm.
1:while the MR is navigating … do
2:  if (GRLPS coverage exists) then
3:   if (first iteration of GRLPS) then
4:    Global vector initialization
5:    Global covariance matrix initialization
6:   else
7:    Global state vector update using EKF
8:    Global covariance matrix update
9:   end if
10:  else if (LRLPS coverage exists) then
11:   for all LRLPS with coverage do
12:    if (first iteration of LRLPS(n)) then
13:     Local vector initialization
14:     Local covariance matrix update
15:    else
16:     Local state vector update using EKF
17:     Local covariance matrix update
18:    end if
19:   end for
20:   Global state vector update using the increment of distance and angle between k and k – 1 iteration of the local state vector that has the least value of its covariance matrix
21:  else
22:   Global state vector update using only odometry
23:   Global covariance matrix update
24:  end if
25:end while

3.1. Global Initialization for the GRLPS Area (Lines 4 and 5 in Algorithm 1)

When the MR goes into a GRLPS area for the first time, the global state vector (3) is obtained using a Gauss–Newton minimization algorithm in order to minimize the Equations (4) or (5) depending on the case (spherical or hyperbolic):

X G , 0 = [ x G , 0 y G , 0 θ G , 0 ] T
[ x G , 0 y G , 0 ] T = arg min m = 1 M ( | d p G , 0 , b G , m d ^ p G , 0 , b G , m | )
[ x G , 0 y G , 0 ] T = arg min m = 2 M ( | Δ d p G , 0 , b G , m Δ d ^ p G , 0 , b G , m | )
where m = 1, 2, …, M represents each specific beacon of this GRLPS. Note that in the hyperbolic case, m = 2, 3, …, M, because the first beacon is the reference one.

In the case of spherical trilateration, the estimated distance between the MR to each beacon for that specific GRLPS is used as defined in Equation (6):

d ^ p G , 0 , b G , m = ( x ^ G , 0 x b G , m ) 2 + ( y ^ G , 0 y b G , m ) 2 + ( z MR z b G , m ) 2
where zMR is the height of the MR.

For the hyperbolic trilateration, the differences of distances are used, as defined in Equation (7):

Δ d ^ p G , 0 , b G , m = ( x ^ G , 0 x b G , m ) 2 + ( y ^ G , 0 y b G , m ) 2 + ( z MR z b G , m ) 2 ( x ^ G , 0 x b G , 1 ) 2 + ( y ^ G , 0 y b G , 1 ) 2 + ( z MR z b G , 1 ) 2

3.3. Local Initialization for the LRLPS Area (Lines 13 and 14 in Algorithm 1)

When the MR moves into an LRLPS area, the first iteration of the n-local vector (22) is obtained using the same procedure as for the GRLPS case. The aim is to minimize the Equations (23) or (24) depending on the case, spherical or hyperbolic, respectively:

X L , n , 0 = [ x ^ L , n , 0 y ^ L , n , 0 θ ^ L , n , 0 ] T
[ x L , n , 0 y L , n , 0 ] T = arg min m = 1 M ( | d p L , n , 0 , b L , n , m d ^ p L , n , 0 , b L , n , m | )
[ x L , n , 0 y L , n , 0 ] T = arg min m = 2 M ( | Δ d p L , n , 0 , b L , n , m Δ d ^ p L , n , 0 , b L , n , m | )
where m = 1, 2, …, M represents each beacon of the LRLPS and the distances are calculated by Equations (25) and (26) in each case.
d ^ p L , n , 0 , b L , n , m = ( x ^ L , n , 0   x b L , n , m   ) 2 + ( y ^ L , n , 0   y b L , n , m   ) 2 + ( z MR   z b L , n , m   ) 2
Δ d ^ p L , n , 0 , b L , n , m = ( x ^ L , n , 0   x b L , n , m   ) 2 + ( y ^ L , n , 0   y b L , n , m   ) 2 + ( z MR   z b L , n , m   ) 2 ( x ^ L , n , 0   x b L , n , 1   ) 2 + ( y ^ L , n , 0   y b L , n , 1   ) 2 + ( z MR   z b L , n , 1   ) 2

3.4. Local Navigation inside an LRLPS Area (Lines 16 and 17 of Algorithm 1)

If the MR navigates inside a LRLPS area, the local state vector and the covariance matrix are updated with an extended Kalman filter (EKF) particularized to the specific LRLPS and run in parallel to the global one and other LRLPS in the case that the corresponding coverage areas intersect. The Equations are described as follows:

Prediction stage:

X L , n , k = f ( X L , n , k 1 , u k )
P L , n , k = A L , n , k P L , n , k 1 A L , n , k T + Q L

Update stage:

K = P L , n , k H L , n , k T [ H L , n , k P L , n , k H L , n , k T + H L , n , k T + R L ] 1
X ^ L , n , k = X ^ L , n , k + K ( Z L , n , k h ( X ^ L , n , k ) )
P L , n , k = ( Ι K H L , n , k ) P L , n , k

The a priori information of the n-local state vector is defined by Equation (32), in which, we have used the odometry information (Δdodo, Δθodo) in order to estimate this state:

X ^ L , n , k = [ x ^ L , n , k 1 + Δ d odo cos ( θ ^ L , n , k 1   + Δ θ odo ) y ^ L , n , k 1 + Δ d odo sin ( θ ^ L , n , k 1   + Δ θ odo ) θ ^ L , n , k 1   + Δ θ odo ]

The Expression (33) is obtained taking the derivative of the matrix (32) with respect to each one of the local state variables:

A L , n , k = [ f ( X ^ L , n , k , u k ) x ^ L , n , k   f ( X ^ L , n , k , u k ) y ^ L , n , k   f ( X ^ L , n , k , u k ) θ ^ L , n , k   ] = [ 1 0 Δ d odo sin ( θ ^ L , n , k 1   + Δ θ odo ) 0 1 Δ d odo cos ( θ ^ L , n , k 1   + Δ θ odo ) 0 0 1 ]

The local covariance matrix (34) represents the variance for each local state variable and is updated in every iteration of the local EKF:

P L , n , k = [ σ x L , n 2 σ x L , n , y L , n 2 σ x L , n , θ L , n 2 σ y L , n , x L , n 2 σ y L , n 2 σ y L , n , θ L , n 2 σ θ L , n , x L , n 2 σ θ L , n , y L , n 2 σ θ L , n 2 ]

Regarding the process noise, it is modeled by a diagonal matrix (35):

Q L , n = [ σ v L , n , x 2 0 0 0 σ v L , n , y 2 0 0 0 σ v L , n , θ 2 ]

The local matrix observations obtained by the a priori information is shown in Equation (36) for the spherical case. Its derivative represents the global measurement model matrix and is defined in Equation (37):

h ( X ^ L , n , k ) = [ h 1 ( X ^ L , n , k ) h M ( X ^ L , n , k ) ] = = [ ( x ^ L , n , k x b L , n , 1   ) 2 + ( y ^ L , n , k y b L , n , 1   ) 2 + ( z MR   z b L , n , 1   ) 2 ( x ^ L , n , k x b L , n , 1   ) 2 + ( y ^ L , n , k y b L , n , 1   ) 2 + ( z MR   z b L , n , m   ) 2 ]
H L , n , k = [ h 1 ( X ^ L , n , k ) ( X ^ L , n , k ) h M ( X ^ L , n , k ) ( X ^ L , n , k ) ] = [ h 1 ( X ^ L , n , k ) ( x ^ L , n , k ) h 1 ( X ^ L , n , k ) ( y ^ L , n , k ) h 1 ( X ^ L , n , k ) ( θ ^ L , n , k ) h M ( X ^ L , n , k ) ( x ^ L , n , k ) h M ( X ^ L , n , k ) ( y ^ L , n , k ) h M ( X ^ L , n , k ) ( θ ^ L , n , k ) ]

In the hyperbolic case, the observation matrix is defined by Equation (38):

h ( X ^ L , n , k ) = [ h 1 ( X ^ L , n , k ) h M ( X ^ L , n , k ) ] = = [ ( x ^ L , n , k x b L , n , 2   ) 2 + ( y ^ L , n , k y b L , n , 2   ) 2 + ( z MR   z b L , n , 2   ) 2 ( x ^ L , n , k x b L , n , 1   ) 2 + ( y ^ L , n , k y b L , n , 1   ) 2 + ( z MR   z b L , n , 1   ) 2 ( x ^ L , n , k x b L , n , M   ) 2 + ( y ^ L , n , k y b L , n , M   ) 2 + ( z MR   z b L , n , M   ) 2 ( x ^ L , n , k x b L , n , 1   ) 2 + ( y ^ L , n , k y b L , n , 1   ) 2 + ( z MR   z b L , n , 1   ) 2 ]

For the spherical case, the observation noise is Gaussian and uncorrelated Equation (39):

R L , n = [ σ w L , n 2 0 0 0 0 0 0 σ w L , n 2 ]

In the hyperbolic case, the noise is Gaussian, but correlated, and it can be simplified as indicated in Expression (40) according to [17]:

R L , n = [ σ w L , n 2 0.5 σ w L , n 2 0.5 σ w L , n 2 0.5 σ w L , n 2 0.5 σ w L , n 2 0.5 σ w L , n 2 0.5 σ w L , n 2 σ w L , n 2 ]

4. Simulated Results

In order to evaluate the performance of the algorithm, different trajectories have been simulated using the workspace shown in Figure 2. We have compared the proposed algorithm based on GRLPS and LRLPS to a case in which all LPSs were previously calibrated. Results are simulated for both the spherical and the hyperbolic cases.

In the first test, we simulated a trajectory where the MR follows a rectangular path. In this simulation, we have introduced Gaussian noises for the odometry and for the measurement of distances. The typical deviation of the odometry error for the MR increment of distance has been set to zero, while for the increment of angle, we have used a relatively high value (compared with real systems) in order to evaluate the effect of errors when the MR rotates in the corners of the rectangular path. Finally, for distance measurements, we have used a typical error of 1 cm, obtained from real measurements in an Ultrasonic Local Positioning System (ULPS), as seen in Equation (44):

σ Δ d = 0 m , σ Δ θ = 0.07 rad , σ w G = σ w L , n = 0.01 m

Figure 4 shows the trajectory with only odometry information (lines in black), the ground truth of the trajectory (lines in magenta), the navigation estimation supposing all beacons previously calibrated (lines in red) and the navigation estimation using the proposed algorithm (lines in blue). Obviously, the navigation errors supposing all LPS calibrated are less than the ones using the proposed algorithm, but in the last case, better than the case with only odometry information. The performance of each method can be better seen in Figure 4, where the accumulative mean error evolution is shown.

In order to evaluate the accumulative error, we have simulated 50 iterations per step of the trajectory assuming the errors described in Equation (44). Note that in Figure 4, only one of these iterations was represented. After all of the iterations, the simulation results are shown in Figure 5, where Step 1 corresponds to the starting point and Step 110 to the finishing point. It can be observed that the navigation errors assuming all LPS calibrated are close to zero and are not accumulative. The odometry has an accumulative error that gets higher right after the first turning of the MR (it is very sensitive to angle errors). Concerning the proposed algorithm, it has a relatively low accumulative error, even when the MR navigates inside LRLPS areas (less than 40 cm for the spherical case and double for the hyperbolic).

Let us pay attention to the navigation error evolution when the MR returns to GRLPS at the end of the trajectory. This happens roughly around Step 100. The error figures go suddenly to very low values again. This is because of the reduced absolute errors that can be obtained under the GRLPS coverage areas [10].

In the second test, an arbitrary route was defined to be followed by the MR. In this case, the odometry errors have been changed, considering typical errors obtained for our real MR and ultrasonic distance measurements based on empirical tests Equation (45):

σ Δ d = 0.07 m , σ Δ θ = 0.05 rad , σ w G = σ w L , n = 0.01 m

The defined trajectory covers almost all of the working area, and it was thought to be a practical route.

Figure 6 shows the results to compare the performance between the proposed algorithm using GRLPS and LRLPS and the case in which all of the LPSs were calibrated, as well as the case with only odometry.

Figure 7 shows the accumulative error for the trajectory in this simulation. Now, the trajectory is longer than in the previous simulation, and the accumulative error for the case of using only odometry increases until more than ten meters; while for the proposed algorithms, it remains below 1 m (and better for the spherical case). Finally, Figures 8 and 9 show the cumulative distribution function (cdf) in different error conditions.

For the first test, it can be observed that the variation of odometry errors does not degrade the system performance very much when the ultrasonic distance errors remain constant (Figure 7), whereas when the odometry errors are constant and the ultrasonic distance errors change, the navigation errors increase considerably, especially in the hyperbolic case. Note that in any case, the results for the hyperbolic trilateration show twice the errors that are obtained using the spherical trilateration.

5. Real Results

In order to evaluate the algorithm behavior in a real scenario, we have used two ultrasonic LPSs. One of them will work as a GRLPS, while the other will operate as an LRPLS. The layout and hardware of both LPSs are the same. Each LPS has the structure shown in Figure 10.

There are five emitters (beacons) placed, four of them on the corners of a square and the fifth one in its center. All of them emit a 1023-bit Kasami code in order to increase the detection performance. Full details of the system are explained in [10].

Figure 11 shows the test trajectory performed with a Pioneer 3-DX MR [18]. The coverage area of the GRLPS is shown in green, while the coverage area of the LRLPS is shown in magenta. To estimate the MR location, it is only possible to use the hyperbolic case, since there is no synchronization between the beacons and the receiver.

In this Figure 11, the red line (with squares) is the estimated path assuming all LPSs were globally referenced. As the position errors in this case are close to the ground truth, this path will be used as the reference one to be compared with the results obtained in other conditions. The black line (with crossings) represents the trajectory described by the odometry of the robot, while the blue line (with asterisks) illustrates the results obtained using our proposed algorithm. It can be observed that using this algorithm, the estimated trajectory is close to the one assuming that all LPS were calibrated.

6. Use of the System for Human Tracking

The approach presented in this paper is suitable for human navigation, provided that the equipment is conveniently adapted.

Regarding the US reception stage, the MR uses a receiver system developed by Avisoft [19] connected to a laptop. However, this receiver is too huge to be carried by a person, and thus, in [20] we proposed an ultrasonic signal acquisition module for mobile devices (smartphones, tablets).

Regarding the odometry data obtained from people walking, different approaches have been published. For instance, taking advantage of the smartphone sensors, some authors, as in [21], propose a pedestrian dead reckoning technique based on the accelerometer sensor, which permits the recognition of some step patterns. On the other hand, Inertial Measurement Units (IMUs) allow getting better estimations than smartphones; although the equipment required is more intrusive. Each IMU is usually composed of three accelerometers and tree gyroscopes and is mounted on the foot. An example of this approach can be found in [22].

As future work, we intend to use the ultrasonic signal acquisition module and a pedestrian dead reckoning method in order to apply the navigation algorithm presented in this paper for human tracking and navigation. A major challenge will be the adaptation of our algorithm to a smartphone due to real-time restrictions. Figure 12 shows a scheme of the adaptation for human tracking.

7. Conclusions

In this paper, we have proposed a novel algorithm that allows navigating with increased performance inside an extensive area covered by a set of LPSs, some of them with a global reference (GRLPSs) and most with a local reference system (LRLPSs). The main advantage of the proposed algorithm is the possibility of navigating in extensive indoor environments without calibration of all of the needed LPSs, useful in cases of changing environments or when a fast installation is required.

In the case that the MR navigates inside an LRLPS coverage area, the accumulative position error increases slowly (compared with the case of only using odometry), and usually, it can be admissible for MR indoor navigation; this error is reset (decreases to a low value) when the MR is inside a GRLPS coverage area. The performance of the system has been tested with different simulated and real trajectories. Finally, we have studied the possibility to adapt the system to human tracking as future work.

Acknowledgments

This work was possible thanks to the Spanish Ministry of Economy and Competitiveness (LORIS project, Ref. TIN2012-38080-C04-01) and the PhD fellowship program of University of Alcala (Madrid).

Author Contributions

David Gualda, Jesús Ureña and Juan C. García designed the proposal; David Gualda programmed the algorithm and obtained simulation results; Alejandro Lindo contributed obtaining and analyzing real results and the paper was written by David Gualda, Jesús Ureña and Juan C. García.

Conflicts of Interest

The authors declare no conflicts of interest.

References

  1. Want, R.; Hopper, A.; Falcao, V.; Gibbons, J. The active badge location system. ACM Trans. Inf. Syst. (TOIS) 1992, 10, 91–102. [Google Scholar]
  2. Priyantha, N.B.; Miu, A.K.L.; Balakrishnan, H.; Teller, S. The cricket compass for context-aware mobile applications. Proceedings of the 7th Annual International Conference on Mobile Computing and Networking, Rome, Italy, 16–21 July 2001; pp. 1–14.
  3. Hazas, M.; Hooper, A. Broadband ultrasonic location system for improved indoor positioning. IEEE Trans. Mob. Comput. 2006, 5, 536–547. [Google Scholar]
  4. Medina, C.; Segura, J.C.; de la Torre, Á. Ultrasound Indoor Positioning System Based on a Low-Power Wireless Sensor Network Providing Sub-Centimeter Accuracy. Sensors 2013, 13, 3501–3526. [Google Scholar]
  5. Ladd, A.M.; Bekris, K.E.; Marceau, G.; Rudys, A.; Wallach, D.S.; Kavraki, E.E. Using wireless Ethernet for localization. Intell. Robots Syst. 2002, 1, 402–408. [Google Scholar]
  6. Tarrío, P.; Bernardos, A.M.; Casar, J.R. Weighted Least Squares Techniques for Improved Received Signal Strength Based Localization. Sensors 2011, 11, 8569–8592. [Google Scholar]
  7. Boonsriwai, S.; Apavatjrut, A. Indoor WIFI localization on mobile devices. Proceedings of the 10th International Conference on Electrical Engineering/Electronics, Computer, Telecommunications and Information Technology (ECTI-CON), Krabi, Thailand, 15–17 May 2013; pp. 1–5.
  8. Kartowisastro, I.H. Local Positioning System of a Mobile Robot: A Practical Perspective. Proceedings of the 9th International Conference on Control, Automation, Robotics and Vision, (ICARCV '06), Singapore, 5–8 December 2006; pp. 1–6.
  9. Villladangos, J.M.; Ureña, J.; García, J.J.; Mazo, M.; Hernández, Á.; Jiménez, A.; Ruíz, D.; Marziani, C.D. Measuring Time-of-Flight in an Ultrasonic LPS System Using Generalized Cross-Correlation. Sensors 2011, 11, 10326–10342. [Google Scholar]
  10. Ruiz, D.; Garcia, E.; Ureña, J.; de Diego, D.; Gualda, D.; Garcia, J.C. Extensive Ultrasonic Local Positioning System for navigating with mobile robots. Proceedings of the 10th Workshop on Positioning Navigation and Communication (WPNC), Dresden, Germany, 20–21 March 2013; pp. 1–6.
  11. Ward, A.; Jones, A.; Hopper, A. A new location technique for theactive office. IEEE Pers. Commun. 1997, 4, 42–47. [Google Scholar]
  12. Deffenbaugh, M.; Bellingham, J.G.; Schmidt, H. The relationship between spherical and hyperbolic positioning. Proceedings of the MTS/IEEE on Prospects for the 21st Century (OCEANS '96), Fort Lauderdale, FL, USA, 23–26 September 1996; Volume 2, pp. 590–595.
  13. Kalman, R.E. A New Approach to Linear Filtering and Prediction Problems. J. Basic Eng. 1960, 82, 35–45. [Google Scholar]
  14. Wan, E.A.; van der Merwe, R. The unscented Kalman filter for nonlinear estimation. Proceedings of the Adaptive Systems for Signal Processing, Communications, and Control Symposium, Lake Louise, AB, Canada, 1–4 March 2000; pp. 153–158.
  15. Simon, D. To Game Theory Approach to Constrained Minimax State Estimation; Technical Report; Department of Electrical Engineering, Cleveland State University: Cleveland, OH, USA, 2005. [Google Scholar]
  16. Ristic, B.; Arulampalam, S.N. Beyond the Kalman Filter: Particle Filters for Tracking Applications; Artech House: London, UK, 2004. [Google Scholar]
  17. Chan, Y.T.; Ho, K.C. A simple and efficient estimator for hyperbolic location. IEEE Trans. Signal Process. 1994, 42, 1905–1915. [Google Scholar]
  18. Pioneer P3-DX. Available online: http://www.mobilerobots.com/ResearchRobots/PioneerP3DX.aspx (accessed on 10 September 2014).
  19. Avisoft Bioacoustics. Ultrasound Gate 116 Hm Product Specification. 2013. Available online: http://www.avisoft.com/usg/usg116hm.htm (accessed on 10 September 2014). [Google Scholar]
  20. Lindo, A.; Perez, M.C.; Urena, J.; Gualda, D.; Garcia, E.; Villladangos, J.M. Ultrasonic signal acquisition module for smartphone indoor positioning. Proceedings of the 19th IEEE International Conference on Emerging Technologies and Factory Automation, Barcelona, Spain, 16–19 September 2014; pp. 1–6.
  21. Pratama, A.R.; Widyawan; Hidayat, R. Smartphone-based Pedestrian Dead Reckoning as an indoor positioning system. Proceedings of the 2012 International Conference on System Engineering and Technology (ICSET), Bandung, Indonesia, 11–12 September 2012; pp. 1–6.
  22. Jimenez, A.R.; Seco, F.; Zampella, F.; Prieto, J.C.; Guevara, J. DR with a Foot-Mounted IMU and Ramp Detection. Sensors 2011, 11, 9393–9410. [Google Scholar]
Figure 1. Particular case of globally-referenced LPS (GRLPS) and locally-referenced LPS (LRLPS) structures, with five and four beacons, respectively. MR, mobile robot.
Figure 1. Particular case of globally-referenced LPS (GRLPS) and locally-referenced LPS (LRLPS) structures, with five and four beacons, respectively. MR, mobile robot.
Sensors 14 21750f1 1024
Figure 2. Simulated workspace based on the real plan of a building.
Figure 2. Simulated workspace based on the real plan of a building.
Sensors 14 21750f2 1024
Figure 3. Diagram that shows the update of the global position from the increments of distance and angle between two consecutive instants of time in the local reference system.
Figure 3. Diagram that shows the update of the global position from the increments of distance and angle between two consecutive instants of time in the local reference system.
Sensors 14 21750f3 1024
Figure 4. Evaluation of the algorithm for a rectangular trajectory. (Left) Spherical case; (right) hyperbolic case.
Figure 4. Evaluation of the algorithm for a rectangular trajectory. (Left) Spherical case; (right) hyperbolic case.
Sensors 14 21750f4 1024
Figure 5. Accumulative mean error evolution. (Left) Spherical case; (right) hyperbolic case.
Figure 5. Accumulative mean error evolution. (Left) Spherical case; (right) hyperbolic case.
Sensors 14 21750f5 1024
Figure 6. Simulated trajectory. (Left) Spherical case; (right) hyperbolic case.
Figure 6. Simulated trajectory. (Left) Spherical case; (right) hyperbolic case.
Sensors 14 21750f6 1024
Figure 7. Accumulative mean error evolution for trajectories in Figure 6. (Left) Spherical case; (right) hyperbolic case.
Figure 7. Accumulative mean error evolution for trajectories in Figure 6. (Left) Spherical case; (right) hyperbolic case.
Sensors 14 21750f7 1024
Figure 8. cdf of the navigation errors for different odometry error conditions assuming that the ultrasonic distance errors remain constant. (Left) Spherical case; (right) hyperbolic case.
Figure 8. cdf of the navigation errors for different odometry error conditions assuming that the ultrasonic distance errors remain constant. (Left) Spherical case; (right) hyperbolic case.
Sensors 14 21750f8 1024
Figure 9. cdf of the navigation errors for different ultrasonic distance error conditions assuming that the odometry errors remain constant. (Left) Spherical case; (right) hyperbolic case.
Figure 9. cdf of the navigation errors for different ultrasonic distance error conditions assuming that the odometry errors remain constant. (Left) Spherical case; (right) hyperbolic case.
Sensors 14 21750f9 1024
Figure 10. Structure of a real ULPS.
Figure 10. Structure of a real ULPS.
Sensors 14 21750f10 1024
Figure 11. Real results with a GRLPS and an LRLPS.
Figure 11. Real results with a GRLPS and an LRLPS.
Sensors 14 21750f11 1024
Figure 12. Proposed scheme for human tracking.
Figure 12. Proposed scheme for human tracking.
Sensors 14 21750f12 1024

Share and Cite

MDPI and ACS Style

Gualda, D.; Ureña, J.; García, J.C.; Lindo, A. Locally-Referenced Ultrasonic – LPS for Localization and Navigation. Sensors 2014, 14, 21750-21769. https://doi.org/10.3390/s141121750

AMA Style

Gualda D, Ureña J, García JC, Lindo A. Locally-Referenced Ultrasonic – LPS for Localization and Navigation. Sensors. 2014; 14(11):21750-21769. https://doi.org/10.3390/s141121750

Chicago/Turabian Style

Gualda, David, Jesús Ureña, Juan C. García, and Alejandro Lindo. 2014. "Locally-Referenced Ultrasonic – LPS for Localization and Navigation" Sensors 14, no. 11: 21750-21769. https://doi.org/10.3390/s141121750

Article Metrics

Back to TopTop