Skip to main content
Micromachines logoLink to Micromachines
. 2019 Mar 20;10(3):198. doi: 10.3390/mi10030198

Novel WiFi/MEMS Integrated Indoor Navigation System Based on Two-Stage EKF

Yi Cui 1, Yongbo Zhang 1,*, Yuliang Huang 1, Zhihua Wang 1, Huimin Fu 1
PMCID: PMC6470769  PMID: 30897800

Abstract

Indoor navigation has been developing rapidly over the last few years. However, it still faces a number of challenges and practical issues. This paper proposes a novel WiFi/MEMS integration structure for indoor navigation. The two-stage structure uses the extended Kalman filter (EKF) to fuse the information from WiFi/MEMS sensors and contains attitude-determination EKF and position-tracking EKF. In the WiFi part, a partition solution called “moving partition” is originally proposed in this paper. This solution significantly reduces the computation time and enhances the performance of the traditional Weighted K-Nearest Neighbors (WKNN) method. Furthermore, the direction measurement is generated utilizing WiFi positioning results, and a “turn detection” is implemented to guarantee the effectiveness. The navigation performance of the presented integration structure has been verified through indoor experiments. The test results indicate that the proposed WiFi/MEMS solution works well. The root mean square (RMS) position error of WiFi/MEMS is 0.7926 m, which is an improvement of 20.59% and 36.60% when compared to MEMS and WiFi alone. Besides, the proposed algorithm still performs well with very few access points (AP) available and its stability has been proven.

Keywords: indoor navigation, MEMS sensors, WiFi, extended Kalman filter, WKNN

1. Introduction

In recent years, location-based services (LBS) have become increasingly important. Location-based systems are required in various fields such as mobile commerce, parcel or vehicle tracking, discovering the nearest shops or restaurants, and social networking [1]. In LBS, positioning is one of the key issues to be addressed [2]. On the other hand, researches have shown that people spend about 70% of their time indoors [3]. The demand for indoor navigation is increasing rapidly in a number of applications. Therefore, indoor navigation has gained plenty of attention from companies and researchers.

While Global Navigation Satellite Systems (GNSS) based outdoor positioning and navigation has achieved great advances and high accuracy in the past few decades, indoor navigation still remains an unsolved problem [4,5]. The main challenges consist of the unavailability or degradation of GNSS signals, the complexity of indoor environments, and the necessity of using low-grade devices [6]. Under such a circumstance, various positioning techniques have been researched, such as IEEE 802.11 WLAN (WiFi) [7,8,9,10], Radio Frequency Identification (RFID) [11], ultrasound [12], Ultra Wideband Beacons (UWB) [13], Bluetooth [14], ZigBee [15], infrared [16], and pseudolites [17]. Sometimes, multiple signal types are utilized simultaneously [18,19]. Since WiFi access points (AP) are installed ubiquitously nowadays, the WiFi approach has been much favored in most cases. Furthermore, it is also suitable in terms of both cost and accessibility [1].

WiFi indoor navigation methods are essentially divided into two categories: trilateration and fingerprinting [2]. In the trilateration approach, a radio propagation model is established and distance is estimated through the propagation model and the received signal strength (RSS) between WiFi access points (AP) and mobile stations [1]. In order to locate a mobile user, at least three APs have to be seen [8]. In the fingerprinting approach, there are usually two phases: offline and online phases. In the offline phase, the measurements of RSS at a number of selected reference points (RP) are stored with the position coordinates of the RPs [9]. As a result, a database is founded. In the online phase, the mobile user (MU) measures the RSS at the positioning point. Then the measurements are compared with the data in the database using an appropriate matching algorithm and the position estimation is obtained [20]. Compared with trilateration, fingerprinting gives better results and avoids complex modeling of signal propagation [8]. Therefore, WiFi fingerprinting method has gained much attention [6]. In this paper, a novel WiFi fingerprinting approach is proposed to achieve a better performance than is standard.

As Micro-Electro-Mechanical Systems (MEMS) develop rapidly, producing chip-based sensors is no longer a conundrum. Inertial sensors including accelerometers and gyroscopes are one of those devices. Since MEMS inertial sensors are small size, light weight, low cost and power saving, they have been widely used in positioning and navigation applications nowadays [21]. For consumer portable devices, dead-reckoning (DR) is commonly the algorithm applied to positioning with inertial sensors [6]. There are two categories of DR algorithms: inertial navigation system (INS) mechanism and pedestrian dead-reckoning (PDR). INS uses inertial sensors that measure inertial forces or rates, performs navigation mechanization and provides user with necessary navigation parameters [22]. INS is a source-independent positioning system [23] and is typically implemented for the inertial navigation [24]. The shortcoming is that inertial sensors provide only short-term accuracy and suffer from accuracy degradation over time as there exist sensor errors [22]. Although some deterministic sensor errors can be removed through calibration [25], low-cost MEMS inertial sensors suffer from significant run-to-run biases and thermal drifts [26]. In order to improve the navigation performance for pedestrians, PDR is developed to reduce the accumulated errors [27]. PDR has four vital procedures: step detection, step or stride length estimation, heading estimation, and 2D position calculation [28]. It is the relative means of determining of a new position from a previous known position [6]. The defect lies in the fact that PDR does not consider the effect of the roll and pitch. In this paper, an integrated MEMS solution is proposed to combine the advantages of both algorithms.

For the integration of WiFi and MEMS solutions, the literature [29] uses the robust extended Kalman filter (EKF) to fuse the information from WiFi/MEMS sensors in a multi-floor environment, while the research [24] presents a pedestrian navigator based on tightly coupled integration of low-cost MEMS sensors and WiFi for handheld devices. Using the same data from WiFi/MEMS sensors, various information fusion structures may lead to different results [6]. This paper proposes a novel two-stage EKF structure to fuse the information from WiFi/MEMS sensors. The proposed WiFi/MEMS solution improves the positioning accuracy. In addition, it provides an accurate navigation solution even when WiFi APs are deployed sparsely, and its stability has been validated.

The rest of this paper is organized as follows. In Section 2, literature review is discussed. In Section 3, the system overview is presented. The WiFi solution and PDR solution are described in Section 4 and Section 5, respectively. Section 6 provides the EKF-based integration of WiFi and MEMS. Details of experiments and results are shown in Section 7. Section 8 makes the conclusion.

2. Literature Review

Various researches have been conducted regarding WiFi indoor navigation methods. In [30], Bisio et al. proposed a computational and energy efficient probabilistic fingerprinting procedure, suited to be employed over smartphone platforms. In [31], Bisio et al. presented a novel approach where the training data were obtained by means of finite-difference time-domain simulations of the electromagnetic propagation in the considered scenario. In [32], Du et al. proposed an Access Point-centred indoor positioning system that overcame common limitations presented in conventional positioning systems, such as an excessive involvement of Mobile Devices. In [33], Lim et al. established the theoretical base and developed a localization algorithm for building a zero-configuration and robust indoor localization and tracking system to support location-based network services and management.

For the integration of WiFi and MEMS solutions, there are a number of existed researches. Frank et al. [34] presented an indoor positioning system for pedestrians combining Wireless LAN fingerprinting with foot mounted inertial and magnetometer sensors. Xiao et al. [35] proposed a region-based fingerprinting approach for indoor positioning in WiFi wireless networks and a stochastic system model to track the target’s position with an inertial measurement unit (IMU) integrated with the WiFi tag. Evennou and Marx [36] presented an aided DR navigation structure and signal processing algorithms for self localization of an autonomous mobile device by fusing PDR and WiFi signal strength measurements. Schatzberg et al. [37] presented a highly accurate indoor positioning system which was based on a new WiFi technology (protocol) and on MEMS inertial sensors. Iwase and Shibasaki [38] proposed a solution to reduce the accumulative error of PDR carried out with only the low cost sensors and WiFi in smartphones by realizing cooperative positioning among multiple pedestrians. Li et al. [39] developed a navigation algorithm which fused the WiFi received signal strength indicator (RSSI) and smartphone inertial sensor measurements. Table 1 lists the positioning performances from current WiFi/MEMS integrated systems in literature [24,34,35,36,37,38,39].

Table 1.

Positioning performances from other systems. IMU– inertial measurement unit; RMS–root mean square.

System Algorithm Accuracy
[24] WiFi propagation model + Smartphone IMU RMS: 3.47 m
[34] WiFi fingerprinting + Shoe IMU RMS: 1.65 m
[35] WiFi fingerprinting + Trolley IMU Mean: around 2.00 m
[36] WiFi fingerprinting + Shoe IMU Mean: 1.53 m
[37] WiFi ToF + Strapped IMU Max: 2.50 m
[38] WiFi propagation model + Smartphone IMU + multi-person collaborative positioning RMS: around 5.00 m
[39] WiFi propagation model + Smartphone IMU Mean: 7.83 m

3. System Overview

The block diagram of the proposed EKF based WiFi/MEMS integration for indoor navigation is shown in Figure 1.

Figure 1.

Figure 1

Block diagram.

The proposed system mainly includes three modules: WiFi-based navigation, PDR-based navigation, and EKF-based WiFi/MEMS integration. In the presented WiFi solution, we pass RSS values to the fingerprinting scheme with “moving partition” to generate the MU position. Besides, if the turn detection fails, the MU direction measurement is obtained from WiFi positioning results. In PDR solution, the accelerometer data are utilized for step detection and step length estimation. Then PDR algorithm is applied to calculate the position of the MU. EKF-based integration includes an attitude-determination EKF and position-tracking EKF. In attitude-determination EKF, data from gyroscopes and accelerometers are used to generate the heading of the MU. In position-tracking EKF, results from WiFi and MEMS solutions are integrated to generate final navigation outcome.

4. WiFi-Based Navigation

4.1. Weighted K-Nearest Neighbors (WKNN) and Moving Partition

The whole process of WiFi fingerprinting is depicted in Figure 2. In fingerprinting scheme, to estimate the position of the MU, various matching algorithms have been proposed [8]. There are probabilistic methods [40,41], deterministic methods [42,43], and neural networks [44,45]. Among them, the Nearest Neighbor (NN) method is the most basic deterministic matching algorithm [9]. Firstly, the method calculates the distances between the measured RSS vector and the RSS vectors in the database. Then the position coordinates of the RP with the minimum distance is determined as that of the MU. Commonly, the distance is Euclidean distance [46], calculated by Equation (1). In other cases, Manhattan distance [2,47] and Mahalanobis distance [48] are used.

Di=SMi=j=1N|SjMi,j|2 (1)

where S and Mi are the measured RSS vector and the i-th database fingerprint, respectively; Sj and Mi,j are the j-th elements in S and Mi, respectively; N is the number of available APs.

Figure 2.

Figure 2

WiFi fingerprinting approach.

As the NN method has low stability and low accuracy, K-Nearest Neighbors (KNN) method has been developed [49], where K nearest neighbors (those with the shortest distance) are selected, and the arithmetic mean of position coordinates of the K RPs is regarded as estimate of the MU location [2], as shown in Equation (2).

(x^,y^)=1Ki=1K(xi,yi) (2)

Furthermore, Weighted K-Nearest Neighbors (WKNN) method has been presented [50]. Instead of using the arithmetic mean, WKNN method utilizes the weighted mean of position coordinates of the K RPs to estimate the MU location. There are a number of approaches to determine weights [9]. In most cases, the multiplicative inverse of the distance calculated by Equation (1) determines the weight, and the MU is located by Equation (3).

(x^,y^)=i=1K1Di×(xi,yi)i=1K1Di (3)

where Di is the Euclidean distance calculated by Equation (1).

The WKNN method takes full account of the effect of the current RPs for the estimated point. As a result, it performs better than KNN and NN methods [9]. However, it needs to search the overall space and go through the whole database fingerprints. For a big place and a huge database, the WKNN method seems to have low efficiency and the computation time can be unacceptable. In the current study, a partition solution is proposed and called “moving partition”. As shown in Figure 3, a circle located at the previous point is drawn with the given radius, and a partition in the circle is formed. The given radius is determined by the maximum moving distance of human in 1 s and can be set as 2.5 m. Suppose there are 10 RPs in the circle. These RPs are stored in an array. The current point is calculated within the scope of the 10 RPs using the WKNN method. Once the current point is located, a new partition is got with the same radius as the old one. The method to build the new partition is removing the last RPs in the array and putting in the new ones. The number of the changing RPs is determined by Equation (4).

n=[m|Rr|L] (4)

where [ ] means the function of rounding down to integer; L is the distance between adjacent RPs; m is the number of RPs in a row; R is the radius of the partition circle; r is the distance between the current point and the RP at the edge of the circle in the forward direction. If Rr, the partition moves forward. If R<r, it moves backward. Then the next point is calculated within the scope of RPs in the new partition.

Figure 3.

Figure 3

Moving partition.

With “moving partition”, the area of search space is greatly reduced. In addition, the work to update the partition is greatly reduced as well. Therefore, the computation time decreases significantly. The larger the test space is, the more obvious the effect is. In all, “moving partition” has the advantages of high efficiency and short computation time.

4.2. Direction from WiFi and Turn Detection

In the current study, the direction measurement of the MU is estimated utilizing the information from WiFi positioning results. As shown in Figure 4a, a line is drawn using the method of least squares with the information of 4 latest positioning points. If the coordinate of the kth point is larger than that of the (k-3)th point, the MU is moving forward, and vice versa. Since the MU walks straight most of the time, this method works in most cases. However, it becomes invalid at corner, as shown in Figure 4b. Therefore, a “turn detection” is necessary before the direction estimation. The detailed illustration is as follows.

Figure 4.

Figure 4

WiFi direction estimate. (a) Straight; (b) corner.

In the current study, the turn detection is utilized to guarantee the effectiveness of direction from WiFi, and it can be achieved with gyroscopes. When the step detection is accomplished, the vertical angular velocities obtained from gyroscope data are accumulated during the period of each step. The accumulated values are depicted in Figure 5. As shown, there are three singular points. Combining Figure 6, it can be seen that the three singular points represent the three turns of the MU during walking. The vertical angular velocities vary intensively in short time at corners. Therefore, the accumulated gyroscope values can be used to detect turns. To achieve this, a threshold can be set, and once an accumulated value exceeds the threshold, a turn is detected. The turn detection only concerns the range of turn and is independent of accumulated errors of gyroscope data. In addition, it is important to note that the mobile phone must be kept as horizontal as possible during the detection [51]. In the current study, this requirement is satisfied.

Figure 5.

Figure 5

Accumulated gyroscope values during each step.

Figure 6.

Figure 6

Turn detection.

5. Pedestrian Dead-Reckoning (PDR)-Based Navigation

5.1. Step Detection

Methods of step detection include peak detection, zero crossings, auto-correlation or template matching, and spectral analysis [52]. In the current study, peak detection is utilized. Firstly, the total acceleration can be calculated by

ai=aix2+aiy2+aiz2i=1,2,,L (5)

where aix,aiy,aiz are accelerations observed in the carrier coordinate system and L is the sampling number. Then the local gravitational acceleration can be obtained by

g=1Mi=1Mais (6)

where ais is the acceleration observed when the mobile phone is kept static and M is the corresponding sampling number. Next, the gravitational acceleration is eliminated and the smoothed value is calculated by

ai=12N+1j=iNi+N(ajg) (7)

where (2N+1) is the length of sliding window. Through sliding window and averaging, the high-frequency noise in acceleration signal can be restrained effectively. In addition, multi-peak waveform caused by body shake can be smoothed to single-peak waveform, which makes it easy to detect peaks [53].

The smoothed acceleration values calculated by Equation (7) are utilized to detect peaks. When detecting peaks, the following conditions must be obeyed. Firstly, the acceleration peak must be larger than a predetermined threshold. Secondly, the time interval between two adjacent peaks must be larger than a time threshold. The result of peak detection is illustrated in Figure 7, where red circles represent peaks detected.

Figure 7.

Figure 7

Peak detection.

5.2. Step Length Estimation

Step length estimation is used to estimate the moving distance of the pedestrian at each step [24]. In the current study, the practical model presented in [54] is utilized to estimate step length. This model assumes that the step length is proportional to the vertical movement of the human hip. The largest difference of the vertical acceleration at each step is used to calculate vertical movement [24]. The step length is estimated as follows.

Sacc=azmaxazmin4K (8)

where azmax and azmin are the maximum and minimum values of the vertical acceleration, respectively; K is a calibrated constant parameter. This technique has been shown to measure distance walked to within ±8% across a variety of subjects of different leg lengths [54]. In the current study, the value of K is obtained through training, as shown in Table 2.

Table 2.

K value and training parameters.

Distance (m) Step Counts Step Length (m) K
25.8 43 0.6 0.861

6. Extended Kalman Filter (EKF)-Based Integration

The EKF is usually utilized to fuse other information to reduce the drift of MEMS-based navigation approach [24]. It is a generalization of Kalman filter for nonlinear systems presenting small or moderate nonlinearities [55]. In this paper, a novel two-stage EKF structure to fuse the information from WiFi/MEMS sensors is proposed. The proposed structure contains attitude-determination EKF and position-tracking EKF, where the calculation of the former is used in the latter to generate final navigation results. The two-stage EKF structure has the advantage of high navigation accuracy. One thing to note is that all formulas in this section apply the International System of Units.

6.1. Attitude-Determination EKF

In the first stage, the information from gyroscopes and accelerometers is fused using the attitude-determination EKF to calculate the Euler angles between the carrier coordinate system and the navigation coordinate system. In the attitude-determination EKF, the system model is constructed utilizing the Euler angle differential equation and the measurement model is the conversion of tri-axial accelerations between the carrier coordinate system and the navigation coordinate system.

The state vector is written as:

Dk=[ψk  θk  γk]T (9)

where ψ is the heading angle, θ is the pitching angle, γ is the roll angle, and T denotes transpose.

The initial state vector is set at:

D^0=[0.5π  0  0]T (10)

The initial covariance matrix of the state vector is set at:

P10=diag([111]) (11)

The system model is as follows:

{ψk=ψk1+(sinγk1cosθk1ωx,k1cosγk1cosθk1ωz,k1)Δt+wψ,k1θk=θk1+(cosγk1ωx,k1+sinγk1ωz,k1)Δt+wθ,k1γk=γk1+(sinγk1tanθk1ωx,k1+ωy,k1cosγk1tanθk1ωz,k1)Δt+wγ,k1 (12)

where ωx,ωy,ωz are angular velocities observed in the carrier coordinate system, wψ,wθ,wγ are noise, and Δt is the sampling interval.

The covariance matrix of system noise is set at:

Q1=diag([111]) (13)

The measurement vector is written as:

Ak=[ax,k  ay,k  az,k]T (14)

where ax,ay,az are accelerations observed in the carrier coordinate system.

The measurement model is as follows:

Ak=Tk1[0  0  1]T+vk (15)

where Tk is the direction cosine matrix calculated by Equation (16), and vk is noise.

Tk=[cosψksinψk0sinψkcosψk0001][cosθk0sinθk010sinθk0cosθk][1000cosγksinγk0sinγkcosγk] (16)

The covariance matrix of measurement noise is set at:

R1=diag([111]) (17)

6.2. Position-Tracking EKF

In the second stage, the information from PDR and WiFi is fused using position-tracking EKF to calculate the MU position. In position-tracking EKF, the system model is established through PDR algorithm and the measurement model is the equivalence between WiFi results and PDR results. The heading angle obtained from attitude-determination EKF is utilized in position-tracking EKF.

The state vector is written as:

Bk=[xk  yk  Sk  ψk]T (18)

where x,y are position coordinates of the MU, S is the step length, and ψ is the heading angle calculated by attitude-determination EKF.

The initial state vector is set at:

B^0=[0.6  0  0.6  0.5π]T (19)

The initial covariance matrix of the state vector is set at:

P20=diag([0.010.010.010.01]) (20)

The system model is as follows:

{xk=xk1+Sk1cos(πψk1)+wx,k1yk=yk1+Sk1sin(πψk1)+wy,k1Sk=Sk1+wS,k1ψk=ψk1+Δψk1+wψ,k1 (21)

where wx,wy,wS,wψ are noise.

The covariance matrix of system noise is set at:

Q2=diag([0.010.010.00010.01]) (22)

The measurement vector is written as:

Ck=[xWiFi,k  yWiFi,k  Sacc,k  ψWiFi,k]T (23)

where xWiFi,yWiFi are position coordinates from WiFi results, Sacc is the step length calculated by Equation (8), and ψWiFi is the heading angle from WiFi results.

The measurement model is as follows:

Ck=Bk+uk (24)

where Bk is the state vector and uk is noise.

The covariance matrix of measurement noise is set at:

R2=diag([1000100010100]) (25)

The two-stage EKF algorithm for WiFi/MEMS integration is summarized in Algorithm 1.

Algorithm 1 Two-stage EKF for WiFi/MEMS integration.
Step 1: Initialize the attitude-determination EKF
D^0=[0.5π  0  0]T, P10=diag([111]), k=1
Step 2: Attitude-determination EKF
Fk1=(fk1/D)|D^k1+, where fk1(·) is the system model defined in Equation (12)
P1k=Fk1P1,k1+Fk1T+Q1,k1
D^k=fk1(D^k1+,uk1,0), where uk1=[ωx,k1  ωy,k1  ωz,k1]T
Hk=(Tk1/D)|D^k×[0  0  1]T
K1k=P1kHkT(HkP1kHkT+R1k)1
D^k+=D^k+K1k(AkTk1[0  0  1]T)
P1k+=(IK1kHk)P1k, where I is the identity matrix
Step 3: k=k+1 and return to Step 2
Step 4: Initialize the position-tracking EKF
B^0=[0.6  0  0.6  0.5π]T, P20=diag([0.010.010.010.01]), k=1
Step 5: Position-tracking EKF
Gk1=(gk1/B)|B^k1+, where gk1(·) is the system model defined in Equation (21)
P2k=Gk1P2,k1+Gk1T+Q2,k1
B^k=gk1(B^k1+,0)
K2k=P2k(P2k+R2k)1
B^k+=B^k+K2k(CkB^k)
P2k+=(IK2k)P2k
Step 6: k=k+1 and return to Step 5

7. Experiment Description and Results

7.1. Experiment Description and Comparison of “Moving Partition” and WKNN

To evaluate the performance of the proposed indoor navigation method, several experiments were performed. The experiment platform can be any Android smartphone equipped with an accelerometer triad, a gyroscope triad and a WiFi receiver. In the current study, a Samsung Galaxy S2 and a Mi 5s were used. The IMU data was collected through the app “Physics Toolbox Suite”, and the WiFi data was collected through the app “RSS Collection”.

The experiments were conducted in the ninth floor of Block C, New Main Building at Beihang University, as shown in Figure 8. The layout of the floor is shown in Figure 9. The size of test area is around 30 × 20 m2 and the loop corridor is 1.8 m wide. There were 158 RPs and 155 positioning points in all. A total of 270 APs were involved in testing. The exact positions of these APs are unknown. To eliminate the effect of randomness of human behavior [56], the offline training data were collected systematically using a 1.2-m grid in this study. At each of the 158 grid points, 40 observations were recorded, of which 10 were collected toward each direction of east, south, west and north. A five-order median filter was applied to the 40 observations, and then the mean value was calculated and stored in the database. In the online phase, the tester walked around the loop corridor and collected RSS values at each point. Then the RSS values received at each positioning point were sorted and the top 20 APs were selected. The position coordinate of the starting point is (0.6 m, 0) and the corresponding heading, pitching and roll angles are 0.5π, 0 and 0, respectively. Finally, a total of 155 points were recorded in one loop.

Figure 8.

Figure 8

Test environment.

Figure 9.

Figure 9

Floor layout.

The performance comparison of “moving partition” and the traditional WKNN method is illustrated in Table 3. As shown, the running time of “moving partition” and WKNN on the same device was 0.28 s and 0.62 s, respectively. With “moving partition”, the computation time decreased by more than half. Besides, the average positioning error reduced from 1.9840 m to 1.8857 m. Therefore, “moving partition” enhances navigation performance.

Table 3.

Performance comparison of “moving partition” and Weighted K-Nearest Neighbors (WKNN).

Moving Partition WKNN
running time (s) 0.28 0.62
average positioning error (m) 1.8857 1.9840

7.2. Comparison of WiFi, MEMS, and WiFi/MEMS Integration

Figure 10 depicts the navigation performance comparison of WiFi (with “moving partition”), MEMS, and WiFi/MEMS integration (with “moving partition”) in one loop. The “Ref” represents the actual trajectory which the tester walked along. As shown, the estimation of WiFi/MEMS integration proposed in this paper has a nice performance, making a good fit with the reference trajectory. Also, compared with WiFi, the phenomenon of reciprocating motion has been eliminated significantly. This figure depicts the estimation result of MEMS as well. As is known, the estimation error accumulates quickly for low grade MEMS sensors in smart devices which usually have large accelerometer and gyroscope biases. In the first part of the corridor, the MEMS estimation keeps good performance. However, when turning to the second part, the trajectory deviates. This phenomenon becomes more and more serious in the third and fourth parts of the corridor. Therefore, MEMS needs to be integrated with WiFi using the EKF to achieve a more accurate estimation, as illustrated in the above section. The result of WiFi/MEMS integration in Figure 10 has shown its advantage that it has the highest accuracy.

Figure 10.

Figure 10

Positioning results.

The detailed estimation errors and running time of these algorithms are listed in Table 4. As shown, the maximum error of WiFi/MEMS is 1.2498 m, which is 16.07% of MEMS and 23.97% of WiFi. The mean error of WiFi/MEMS is 0.6835 m, which is 24.67% of MEMS and 36.25% of WiFi. The root mean square (RMS) of WiFi/MEMS position errors is 0.7926 m, which is 20.59% of MEMS and 36.60% of WiFi. Therefore, the EKF-based WiFi/MEMS algorithm proposed in this paper has improved the estimation accuracy. Besides, it has low computational complexity as the running time is short.

Table 4.

Positioning errors and running time.

Maximum (m) Mean (m) RMS (m) Running Time (s)
WiFi 5.2147 1.8857 2.1657 0.28
MEMS 7.7754 2.7703 3.8502 0.81
WiFi/MEMS 1.2498 0.6835 0.7926 1.20

Furthermore, the error probabilities of these algorithms are depicted in Figure 11. As shown, the maximum error of WiFi/MEMS is far smaller than the other two. The cumulative error percentages of MEMS and WiFi/MEMS are close when the error is smaller than 0.5 m, but WiFi/MEMS solution quickly achieves the best performance when the error is larger than its mean error, showing a very stable estimation. In all, this figure illustrates the advantage of EKF-based WiFi/MEMS integration algorithm as well.

Figure 11.

Figure 11

Cumulative error percentages.

7.3. Results Using Different Numbers of Access Points (APs)

To further validate the navigation performance of the proposed WiFi/MEMS solution, estimation results using different numbers of APs and in different loops are discussed as follows.

As shown in Figure 12, the algorithms using 20 APs, 15 APs, 10 APs and 5 APs are compared. In this figure, the results of 20 APs and 15 APs are very close. The worst is the estimation using 5 APs. However, it still keeps good performance in most areas, illustrating that the WiFi/MEMS solution still works well when there are very few APs available.

Figure 12.

Figure 12

Positioning results using different numbers of APs. (a) 20 APs; (b) 15 APs; (c) 10 APs; (d) 5 APs.

The detailed estimation errors using different numbers of APs are listed in Table 5. As shown, the maximum error is the smallest when using 10 APs, while the mean error and the RMS of position errors are the smallest when using 15 APs. Therefore, the result of 15 APs fits the best. The mean error when using 15 APs is 0.6823 m, which is 82.66% of 5 APs, 94.41% of 10 APs, and 99.82% of 20 APs. The RMS of position errors using 15 APs is 0.7868 m, which is 84.12% of 5 APs, 99.27% of 20 APs, and 99.42% of 10 APs. As a result, more APs do not necessarily mean more accurate estimation.

Table 5.

Positioning errors using different numbers of APs.

Maximum (m) Mean (m) RMS (m)
20 APs 1.2498 0.6835 0.7926
15 APs 1.3027 0.6823 0.7868
10 APs 1.1806 0.7227 0.7914
5 APs 1.5388 0.8254 0.9353

The error probabilities using different numbers of APs are depicted in Figure 13. As shown, there is no big difference between the results of 20 APs and 15 APs. Obvious difference appears when the results of 10 APs and 5 APs are considered. In all, the positioning result using 15 APs has the best navigation performance and the result using 5 APs is the worst.

Figure 13.

Figure 13

Cumulative error percentages using different numbers of APs.

7.4. Results in Different Loops

To verify the stability of the proposed WiFi/MEMS solution, the tester walked along the loop corridor for four loops continuously. Also, a different smartphone was used to record the accelerations and angular velocities in order to prove the validity of the proposed WiFi/MEMS solution on various devices. The positioning results in different loops are shown in Figure 14. As shown, there is no obvious difference among the first three loops, and a little decrease of estimation accuracy occurs in the fourth loop. Since the proposed algorithm is the integration of WiFi and MEMS, it is inevitable that it is affected by the accumulated errors from MEMS. However, this algorithm can control these errors within a relatively lower level. Besides, further work should focus on how to compensate them at certain points.

Figure 14.

Figure 14

Positioning results in different loops. (a) Loop 1; (b) Loop 2; (c) Loop 3; (d) Loop 4.

The detailed estimation errors in different loops are listed in Table 6. As shown, the smallest of mean errors appears in Loop 2, while the maximum error and the RMS of errors are the smallest in Loop 3. The mean error in Loop 2 is 0.9895 m, which is 81.72% of Loop 4, 90.06% of Loop 1, and 99.85% of Loop 3. The maximum error in Loop 3 is 2.9834 m, which is 93.25% of Loop 4, 96.65% of Loop 1, and 98.26% of Loop 2. The RMS of position errors in Loop 3 is 1.1833 m, which is 83.76% of Loop 4, 94.03% of Loop 1, and 99.12% of Loop 2. As can be seen, the estimation of the proposed WiFi/MEMS solution keeps stable in the four loops.

Table 6.

Positioning errors in different loops.

Maximum (m) Mean (m) RMS (m)
Loop 1 3.0867 1.0987 1.2584
Loop 2 3.0363 0.9895 1.1938
Loop 3 2.9834 0.9910 1.1833
Loop 4 3.1994 1.2109 1.4127

The error probabilities in different loops are depicted in Figure 15. As shown, the order of the four loops varies in different intervals. Besides, the accuracy does not vary remarkably among the four loops. In all, the stability and validity on different devices of the proposed algorithm have been proven.

Figure 15.

Figure 15

Cumulative error percentages in different loops.

8. Conclusions

This paper presents a novel WiFi/MEMS fusion structure for indoor navigation. In the WiFi fingerprinting scheme, a partition solution called “moving partition” is originally proposed. With “moving partition”, the computation time decreases by more than half compared with the traditional WKNN method. Also, the direction measurement of the MU using the information of four latest positioning points from WiFi is presented, and a “turn detection” is applied before the direction fusion. Then a novel two-stage structure to integrate the information from WiFi/MEMS sensors using the EKF is proposed. In the first stage, the information from the gyroscope and the accelerometer is fused using attitude-determination EKF to calculate the Euler angles. In the second stage, the information from PDR and WiFi is fused using position-tracking EKF to calculate the MU position.

With these improvements, the navigation performance of the proposed WiFi/MEMS integration solution is compared with results from WiFi and MEMS. Experiment results show that the RMS position error of the proposed WiFi/MEMS solution is 0.7926 m, which is 20.59% of MEMS and 36.60% of WiFi. Furthermore, the presented WiFi/MEMS algorithm still works well when there are very few APs available and its stability has been proven. Therefore, the proposed WiFi/MEMS solution has been validated in indoor tests, and its performance is illustrated to be very competitive for indoor navigation. Furthermore, it can be easily applied on most handheld devices, such as smartphones, and presents broad market prospect.

Acknowledgments

This work was sponsored by the National Natural Science Foundation of China (grant number 11501022). The authors fully appreciate the financial support. The authors would like to thank the reviewers and the editor for many valuable suggestions that helped improve this paper.

Author Contributions

Conceptualization, Y.Z. and H.F.; methodology, Y.C. and Y.H.; software, Y.C. and Y.H.; validation, Y.Z. and Z.W.; formal analysis, Y.C.; investigation, Y.C.; resources, Y.C. and Y.H.; data curation, Y.C. and Y.H.; writing—original draft preparation, Y.C.; writing—review and editing, Y.Z. and Y.C.

Conflicts of Interest

The authors declare no conflict of interest.

References

  • 1.Shin B., Lee J.H., Lee T., Kim H.S. Enhanced weighted K-nearest neighbor algorithm for indoor Wi-Fi positioning systems. Int. J. Netw. Comput. Adv. Inf. Manag. 2012;2:15–21. [Google Scholar]
  • 2.Li B., Wang Y., Lee H.K., Dempster A., Rizos C. Method for yielding a database of location fingerprints in WLAN. IEE Proc.-Commun. 2005;152:580–586. doi: 10.1049/ip-com:20050078. [DOI] [Google Scholar]
  • 3.Rahim A. Ph.D. Dissertation. University of Nottingham; Nottingham, UK: 2012. Heading Drift Mitigation for Low-Cost Inertial Pedestrian Navigation. [Google Scholar]
  • 4.Li X., Wang J., Li T. Seamless positioning and navigation by using geo-referenced images and multi-sensor data. Sensors. 2013;13:9047–9069. doi: 10.3390/s130709047. [DOI] [PMC free article] [PubMed] [Google Scholar]
  • 5.Yassin A., Nasser Y., Awad M., Al-Dubai A., Liu R., Yuen C., Raulefs R., Aboutanios E. Recent advances in indoor localization: A survey on theoretical approaches and applications. IEEE Commun. Surv. Tutor. 2017;19:1327–1346. doi: 10.1109/COMST.2016.2632427. [DOI] [Google Scholar]
  • 6.Li Y., Zhuang Y., Zhang P., Lan H., Niu X., El-Sheimy N. An improved inertial/wifi/magnetic fusion structure for indoor navigation. Inf. Fusion. 2016;34:101–119. doi: 10.1016/j.inffus.2016.06.004. [DOI] [Google Scholar]
  • 7.Caso G., Nardis L.D. Virtual and oriented WiFi fingerprinting indoor positioning based on multi-wall multi-floor propagation models. Mob. Netw. Appl. 2017;22:825–833. doi: 10.1007/s11036-016-0749-x. [DOI] [Google Scholar]
  • 8.Khodayari S., Maleki M., Hamedi E. A RSS-based fingerprinting method for positioning based on historical data; Proceedings of the International Symposium on Performance Evaluation of Computer and Telecommunication Systems; Ottawa, ON, Canada. 11–14 July 2010; pp. 306–310. [Google Scholar]
  • 9.Wang B., Zhao Y., Zhang T., Hei X. An improved integrated fingerprint location algorithm based on WKNN; Proceedings of the 2017 29th Chinese Control and Decision Conference (CCDC); Chongqing, China. 28–30 May 2017; pp. 4580–4584. [Google Scholar]
  • 10.Tuta J., Juric M.B. A self-adaptive model-based Wi-Fi indoor localization method. Sensors. 2016;16:2074. doi: 10.3390/s16122074. [DOI] [PMC free article] [PubMed] [Google Scholar]
  • 11.Seol S., Lee E.K., Kim W. Indoor mobile object tracking using RFID. Future Gener. Comput. Syst. 2017;76:443–451. doi: 10.1016/j.future.2016.08.005. [DOI] [Google Scholar]
  • 12.Lindo A., García E., Ureña J., Pérez M.C., Hernández A. Multiband waveform design for an ultrasonic indoor positioning system. IEEE Sens. J. 2015;15:7190–7199. doi: 10.1109/JSEN.2015.2472978. [DOI] [Google Scholar]
  • 13.Chen P., Kuang Y., Chen X. A UWB/improved PDR integration algorithm applied to dynamic indoor positioning for pedestrians. Sensors. 2017;17:2065. doi: 10.3390/s17092065. [DOI] [PMC free article] [PubMed] [Google Scholar]
  • 14.Zhou C., Yuan J., Liu H., Qiu J. Bluetooth indoor positioning based on RSSI and Kalman filter. Wirel. Pers. Commun. 2017;96:4115–4130. doi: 10.1007/s11277-017-4371-4. [DOI] [Google Scholar]
  • 15.Aykaç M., Erçelebi E., Aldin N.B. ZigBee-based indoor localization system with the personal dynamic positioning method and modified particle filter estimation. Analog Integr. Circ. Sig. Process. 2017;92:263–279. doi: 10.1007/s10470-017-0969-4. [DOI] [Google Scholar]
  • 16.Wang K., Nirmalathas A., Lim C., Alameh K., Li H., Skafidas E. Indoor infrared optical wireless localization system with background light power estimation capability. Opt. Express. 2017;25:22923–22931. doi: 10.1364/OE.25.022923. [DOI] [PubMed] [Google Scholar]
  • 17.Li X., Zhang P., Guo J., Wang J., Qiu W. A new method for single-epoch ambiguity resolution with indoor pseudolite positioning. Sensors. 2017;17:921. doi: 10.3390/s17040921. [DOI] [PMC free article] [PubMed] [Google Scholar]
  • 18.Tuta J., Juric M.B. MFAM: Multiple frequency adaptive model-based indoor localization method. Sensors. 2018;18:963. doi: 10.3390/s18040963. [DOI] [PMC free article] [PubMed] [Google Scholar]
  • 19.Liu R., Yuen C., Do T.-N., Tan U.-X. Fusing similarity-based sequence and dead reckoning for indoor positioning without training. IEEE Sens. J. 2017;17:4197–4207. doi: 10.1109/JSEN.2017.2706303. [DOI] [Google Scholar]
  • 20.Hu J., Liu D., Yan Z., Liu H. Experimental analysis on weight K-nearest neighbor indoor fingerprint positioning. IEEE Internet Things. 2019;6:891–897. doi: 10.1109/JIOT.2018.2864607. [DOI] [Google Scholar]
  • 21.Shaeffer D.K. MEMS inertial sensors: A tutorial overview. IEEE Commun. Mag. 2013;51:100–109. doi: 10.1109/MCOM.2013.6495768. [DOI] [Google Scholar]
  • 22.Titterton D.H., Weston J.L. Strapdown Inertial Navigation Technology. 2nd ed. The Institution of Electrical Engineers; London, UK: 2004. [Google Scholar]
  • 23.Niu X., Ban Y., Zhang Q., Zhang T., Zhang H., Liu J. Quantitative analysis to the impacts of IMU quality in GPS/INS deep integration. Micromachines. 2015;6:1082–1099. doi: 10.3390/mi6081082. [DOI] [Google Scholar]
  • 24.Zhuang Y., El-Sheimy N. Tightly-coupled integration of WiFi and MEMS sensors on handheld devices for indoor pedestrian navigation. IEEE Sens. J. 2016;16:224–234. doi: 10.1109/JSEN.2015.2477444. [DOI] [Google Scholar]
  • 25.Bonnet S., Bassompierre C., Godin C., Lesecq S., Barraud A. Calibration methods for inertial and magnetic sensors. Sens. Actuators A Phys. 2009;156:302–311. doi: 10.1016/j.sna.2009.10.008. [DOI] [Google Scholar]
  • 26.Niu X., Li Y., Zhang H., Wang Q., Ban Y. Fast thermal calibration of low-grade inertial sensors and inertial measurement units. Sensors. 2013;13:12192–12217. doi: 10.3390/s130912192. [DOI] [PMC free article] [PubMed] [Google Scholar]
  • 27.Yu J., Na Z., Liu X., Deng Z. WiFi/PDR-integrated indoor localization using unconstrained smartphones. EURASIP J. Wirel. Commun. 2019;2019:41. doi: 10.1186/s13638-019-1365-9. [DOI] [Google Scholar]
  • 28.Zhuang Y., Lan H., Li Y., El-Sheimy N. PDR/INS/WiFi integration based on handheld devices for indoor pedestrian navigation. Micromachines. 2015;6:793–812. doi: 10.3390/mi6060793. [DOI] [Google Scholar]
  • 29.Tian Z., Fang X., Zhou M., Li L. Smartphone-based indoor integrated WiFi/MEMS positioning algorithm in a multi-floor environment. Micromachines. 2015;6:347–363. doi: 10.3390/mi6030347. [DOI] [Google Scholar]
  • 30.Bisio I., Lavagetto F., Marchese M., Sciarrone A. Smart probabilistic fingerprinting for WiFi-based indoor positioning with mobile devices. Pervasive Mob. Comput. 2016;31:107–123. doi: 10.1016/j.pmcj.2016.02.001. [DOI] [Google Scholar]
  • 31.Bisio I., Cerruti M., Lavagetto F., Marchese M., Pastorino M., Randazzo A., Sciarrone A. A trainingless WiFi fingerprint positioning approach over mobile devices. IEEE Antenn Wirel. Propag. 2014;13:832–835. doi: 10.1109/LAWP.2014.2316973. [DOI] [Google Scholar]
  • 32.Du X., Yang K., Bisio I., Lavagetto F., Sciarrone A. An AP-centred smart probabilistic fingerprint system for indoor positioning; Proceedings of the 2018 IEEE International Conference on Communications (ICC); Kansas City, MO, USA. 20–24 May 2018; pp. 1–6. [Google Scholar]
  • 33.Lim H., Kung L.-C., Hou J.C., Luo H. Zero-configuration indoor localization over IEEE 802.11 wireless infrastructure. Wirel. Netw. 2010;16:405–420. doi: 10.1007/s11276-008-0140-3. [DOI] [Google Scholar]
  • 34.Frank K., Krach B., Catterall N., Robertson P. Development and evaluation of a combined WLAN and inertial indoor pedestrian positioning system; Proceedings of the 4th ION GNSS; Savannah, GA, USA. 22–25 September 2009; pp. 1–9. [Google Scholar]
  • 35.Xiao W., Ni W., Yue K.T. Integrated Wi-Fi fingerprinting and inertial sensing for indoor positioning; Proceedings of the 2011 International Conference on Indoor Positioning and Indoor Navigation (IPIN); Guimarães, Portugal. 21–23 September 2011; pp. 1–6. [Google Scholar]
  • 36.Evennou F., Marx F. Advanced integration of WiFi and inertial navigation systems for indoor mobile positioning. EURASIP J. Appl. Signal. Process. 2006;2006:086706. doi: 10.1155/ASP/2006/86706. [DOI] [Google Scholar]
  • 37.Schatzberg U., Banin L., Amizur Y. Enhanced WiFi ToF indoor positioning system with MEMS-based INS and pedometric information; Proceedings of the IEEE/ION Position, Location and Navigation Symposium (PLANS); Monterey, CA, USA. 5–8 May 2014; pp. 185–192. [Google Scholar]
  • 38.Iwase T., Shibasaki R. Infra-free indoor positioning using only smartphone sensors; Proceedings of the 2013 International Conference on Indoor Positioning and Indoor Navigation (IPIN); Montbeliard-Belfort, France. 28–31 October 2013; pp. 1–8. [Google Scholar]
  • 39.Li W.W., Iltis R.A., Win M.Z. A smartphone localization algorithm using RSSI and inertial sensor measurement fusion; Proceedings of the IEEE Global Communications Conference (GLOBECOM); Atlanta, GA, USA. 11 December 2013; pp. 3335–3340. [Google Scholar]
  • 40.Liang W., Wang Y., Wu Z., Mao B., Cao J. Indoor region localization with asynchronous sensing data: A Bayesian probabilistic model. IEEE Sens. J. 2018;18:10174–10182. doi: 10.1109/JSEN.2018.2872825. [DOI] [Google Scholar]
  • 41.Mirowski P., Milioris D., Whiting P., Ho T.K. Probabilistic radio-frequency fingerprinting and localization on the run. Bell Labs Tech. J. 2014;18:111–133. doi: 10.1002/bltj.21649. [DOI] [Google Scholar]
  • 42.Tayebi A., Gomez J., Saez de Adana F., Gutierrez O. The application of ray-tracing to mobile localization using the direction of arrival and received signal strength in multipath indoor environments. Prog. Electromagn. Res. 2009;91:1–15. doi: 10.2528/PIER09020301. [DOI] [Google Scholar]
  • 43.Khordad M., Maleki M. K nearest neighbors based on lateration for WLAN location estimation; Proceedings of the IEEE, IET International Symposium on Communication Systems, Networks & Digital Signal Processing (CSNDSP); Newcastle, UK. 21–23 July 2010; pp. 301–305. [Google Scholar]
  • 44.Li Y., Gao Z., He Z., Zhuang Y., Radi A., Chen R., El-Sheimy N. Wireless fingerprinting uncertainty prediction based on machine learning. Sensors. 2019;19:324. doi: 10.3390/s19020324. [DOI] [PMC free article] [PubMed] [Google Scholar]
  • 45.Akram B.A., Akbar A.H., Shafiq O. HybLoc: Hybrid indoor Wi-Fi localization using soft clustering-based random decision forest ensembles. IEEE Access. 2018;6:38251–38272. doi: 10.1109/ACCESS.2018.2852658. [DOI] [Google Scholar]
  • 46.Wang Y., Xiu C., Zhang X., Yang D. WiFi indoor localization with CSI fingerprinting-based random forest. Sensors. 2018;18:2869. doi: 10.3390/s18092869. [DOI] [PMC free article] [PubMed] [Google Scholar]
  • 47.Li C., Qiu Z., Liu C. An improved weighted K-nearest neighbor algorithm for indoor positioning. Wireless Pers. Commun. 2017;96:2239–2251. doi: 10.1007/s11277-017-4295-z. [DOI] [Google Scholar]
  • 48.Zhou J., Yeung W.M., Ng J.K. Enhancing indoor positioning accuracy by utilizing signals from both the mobile phone network and the wireless local area network; Proceedings of the 22nd International Conference on Advanced Information Networking and Applications; Gino-wan City, Japan. 25–28 March 2008; pp. 138–145. [Google Scholar]
  • 49.Xu H., Ding Y., Li P., Wang R., Li Y. An RFID indoor positioning algorithm based on Bayesian probability and K-nearest neighbor. Sensors. 2017;17:1806. doi: 10.3390/s17081806. [DOI] [PMC free article] [PubMed] [Google Scholar]
  • 50.Fang X., Jiang Z., Nan L., Chen L. Optimal weighted K-nearest neighbour algorithm for wireless sensor network fingerprint localisation in noisy environment. IET Commun. 2018;12:1171–1177. doi: 10.1049/iet-com.2017.0515. [DOI] [Google Scholar]
  • 51.Liu C. M.S. Thesis. China University of Mining and Technology; Xuzhou, China: 2015. Study on the Pedestrian Indoor Positioning Algorithms Based on WIFI and Inertial Technology. [Google Scholar]
  • 52.Harle R. A survey of indoor inertial positioning systems for pedestrians. IEEE Commun. Surv. Tutor. 2013;15:1281–1293. doi: 10.1109/SURV.2012.121912.00075. [DOI] [Google Scholar]
  • 53.Chen W. Ph.D. Dissertation. University of Science and Technology of China; Hefei, China: 2010. Research on GPS/Self-Contained Sensors Based Seamless Outdoor/Indoor Pedestrian Positioning Algorithm. [Google Scholar]
  • 54.Weinberg H. Application Note AN-602. Analog Devices; Norwood, MA, USA: 2002. Using the ADXL202 in pedometer and personal navigation applications. [Google Scholar]
  • 55.Santos-Ruiz I., Bermudez J.R., Lopez-Estrada F.R., Puig V., Torres L., Delgado-Aguinaga J.A. Online leak diagnosis in pipelines using an EKF-based and steady-state mixed approach. Control Eng. Pract. 2018;81:55–64. doi: 10.1016/j.conengprac.2018.09.006. [DOI] [Google Scholar]
  • 56.Roos T., Myllymäki P., Tirri H., Misikangas P., Sievänen J. A probabilistic approach to WLAN user location estimation. Int. J. Wirel. Inf. Netw. 2002;9:155–164. doi: 10.1023/A:1016003126882. [DOI] [Google Scholar]

Articles from Micromachines are provided here courtesy of Multidisciplinary Digital Publishing Institute (MDPI)

RESOURCES