Next Article in Journal
Dust Dispersion Characteristics of Open Stockpiles and the Scale of Dust Suppression Shed
Previous Article in Journal
Torsional Stress Analysis of Improved Composite Box Girder with Corrugated Steel Webs
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

Research on Indoor 3D Positioning Model Using Improved Triangular Centroid Position Algorithm Based on UWB

1
Key Laboratory of Catalysis and Energy Materials Chemistry of Ministry of Education, College of Chemistry and Materials Science, South-Central University for Nationalities, Wuhan 430074, China
2
Institute of Marine Sensing and Networking, Zhejiang University, Zhoushan 316021, China
3
School of Automotive Engineering, Wuhan University of Technology, Wuhan 430070, China
*
Authors to whom correspondence should be addressed.
Appl. Sci. 2022, 12(22), 11572; https://doi.org/10.3390/app122211572
Submission received: 19 September 2022 / Revised: 1 November 2022 / Accepted: 10 November 2022 / Published: 14 November 2022

Abstract

:
The indoor positioning technology of an ultra-wideband (UWB) can play an excellent supplementary role in satellite navigation and has broad application prospects. However, if strong interference exists, the measurement data based on UWB will fluctuate abnormally, which seriously affects the accuracy of positioning. In view of the above problems, based on the combination of mathematical modeling, this paper starts from the subject data, and proposes a positioning method suitable for non-interference/interference conditions and an abnormal data identification method to improve the positioning accuracy. The specific scheme includes data preprocessing model establishment and solution, positioning model establishment and solution, migration application of positioning model, interfering data identification model establishment and solution, and movement track positioning model establishment and solution.

1. Introduction

There are many methods of UWB positioning technology. This paper considers only the ranging principle based on time of flight (TOF) [1], which is one of the most common positioning methods in the UWB positioning method. TOF-ranging technology is a bidirectional-ranging technology. It calculates the flight time of the signal in the two modules, and then multiplies the distance between the two modules by the speed of light. The distance has an acceptable error and can result in satisfactory accuracy. Besides the distance, many objects in the environment will reflect the signals and affect the position accuracy. Different from line-of-sight (LOS) signals, signal transmission path delays contained in non-line-of-sight (NLOS) signals result in a positive range and position errors. Therefore, it is important to carry out the LOS/NLOS classification and NLOS mitigation before using ranging information from the channel to calculate the position [2,3]. Refs [4,5] conductede NLOS identification and mitigation for the position based on the UWB experimental data. In addition, as in traditional research, features extracted from the UWB channel impulse response (CIR) or some other signal properties would be used as input vectors for common machine learning methods. Different from common machine learning methods, Jiwoong Park et al. used a convolutional neural network (CNN) [6], and Changhui Jiang et al. used a novel convolutional neural network (CNN)-long short-term memory (LSTM) for the UWB NLOS/LOS signal classification and obtained the state-of-the-art classification performance [7]. Apart from the above machine learning methods, Tianyu Wang et al. proposed a semi-supervised learning approach for UWB ranging error mitigation, and the decrease in the ranging error was significant [8].
In the application of indoor positioning, UWB technology can achieve centimeter-level positioning accuracy (generally referred to as 2-dimensional plane positioning) and has good anti-multipath interference, weakening performance, and strong penetration ability [9,10,11,12,13,14]. However, due to the complex and changeable indoor environment, UWB communication signals are easily blocked. Although UWB technology has a penetrating ability, it will still generate errors. If strong interference exists, the data will fluctuate abnormally (usually time delay) and even cause serious errors [15,16,17,18]. Therefore, the problem of UWB precise positioning under signal interference has become an urgent problem to be solved [19].
Based on the above background, the research tasks of this paper can be shown as follows:
Task 1: Data Preprocessing (Cleaning)
Whether it is collecting data with or without signal interference, the Tag will collect multiple sets of data at the same coordinate point (648 data files in annex 1), capture the corresponding values of each data file, and capture the corresponding values of each data file. Convert into a two-dimensional table (matrix) form (“txt”, “Excel” or other data format), each row represents a set of data, and then preprocess (clean) these data files to remove some “useless” (abnormal, missing, identical, or similar) data.
Task 2: Positioning the Model
Use the data processed in task 1, design appropriate the mathematical models (or algorithms) for “normal data” and “abnormal data,” estimate (or predict) the exact position of the Tag, and explain the established positioning model (or Algorithm); at the same time, use the positioning model (or algorithm) to perform the precise positioning (3-dimensional coordinates) for the first 5 groups of (no signal interference) data and the last 5 groups of (signal interference) data provided in annex 2.
Where (1) the positioning model will reflect the experimental scene information. (2) The 3-dimensional (x, y, z) accuracy, 2-dimensional (x, y) accuracy, and 1-dimensional accuracy of the positioning model will be given.
Task 3: Application in Different Scenarios
The training data are only collected in the same experimental scene (experimental scene 1), but the positioning model should be able to be used in different actual scenes, and the established positioning model can be applied to different scenes. The 10 sets of data in annex 3 are collected in the following experimental scenario 2 (the first 5 sets of data signals have no interference, and the last 5 sets of data signals have interference). Use the positioning models established above to perform precise positioning (3-dimensional coordinate).
Experimental scenario 1:
Target (Tag) range: 5000 mm × 5000 mm × 3000 mm
Anchor position (unit: mm):
A0 (0, 0, 1300), A1 (5000, 0, 1700),
A2 (0, 5000, 1700), A3 (5000, 5000, 1300)
Experimental scenario 2:
Target (Tag) range: 5000 mm × 3000 mm × 3000 mm
Anchor position (unit: mm):
A0 (0, 0, 1200), A1 (5000, 0, 1600),
A2 (0, 3000, 1600), A3 (5000, 3000, 1200)
Task 4: Classification Model
The above positioning model is established under the condition of known signal interference or no interference. However, when the UWB collects data, it is unknown whether the signal has interference or not. Therefore, judging whether the signal has interference is the focus and difficulty of precise UWB positioning. Use the data processed by task 1, establish a mathematical model (or algorithm) to distinguish whether the data is collected from the signal with or without interference, and explain the validity of the established classification model (or algorithm). The classification model (or algorithm) of judging that the 10 sets of data provided in annex 4 (these 10 sets of data are also collected in the experimental scene 1) are collected from the signal with or without interference.
Task 5: Movement Track Positioning
Movement track positioning is one of the important applications of UWB. Using the static point positioning model and the target’s own movement law, the movement track of the dynamic target point can be obtained. Attachment 5 is the data collected on dynamic target points (multiple sets of data collected continuously over a period). When collecting these data, there will be random signal interference. Accurately position this movement track, and finally draw this movement track map (data collection is from experimental scene 1).
For this study, the following assumptions are made as follows:
  • Abnormal data with missing data contain less useful information.
  • When collecting information, the position and ranging performance of the anchor point are the same at continuous time, and the anchor point is repeated measurement with equal precision.
  • The ranging error of the anchor point includes only the measurement error and the interference error.
A description of the symbols in this paper is shown in Table 1.

2. Data Preprocessing Model Establishment and Solution

The key chip of the UWB positioning system is the DW1000 transceiver chip (RF frequency range from 3.5 GHz to 6.5 GHz, compliant with fcc and 2.8 V to 3.6 V, low power consumption, sleep current 1 A, data rate of 110 kbps/850 kbps/6.8 mbps) developed by Decawave, which has precise position recognition and data transmission functions. It can provide a new positioning method for real-time positioning and indoor positioning systems, position services, and wireless sensor networks. Apart from the transceiver chip, the architecture of the UWB positioning system includes the perception layer, network layer, solution layer, and application layer. In particular, the perception layer includes positioning labels, positioning anchors, exciters, and base stations. The network layer includes communication base stations, switches, and firewalls. The communication base station aggregates the ranging information to the firewall and transmits it to the intranet server through the Ethernet. The solution layer installs a solution platform and database on the server, which are mainly used to store and calculate the data reported by the acquisition terminal, and obtain the physical position coordinates, and the application layer is used for the display of real-time positioning. According to the introduction, this paper mainly considers positioning technology based on the ranging principle, and the target point positioning depends on the distance from the anchor point to the target point. Every 4 lines of data in the UWB provides 4 distance parameters from anchor point to target point for a group. Therefore, the distance value is first grabbed, redundant Tag identification and other information are removed, and character matching is used to convert it into a two-dimensional distance. Each row of the matrix represents a set of data.
The key to data cleaning is the identification of “useless” (abnormal, missing, identical, or similar) data. Among them, for sites that only contain part of the time points, if there are too many incomplete data and cannot be supplemented, the sites will be deleted; since the anchor points are essentially repeated measurements with equal precision, their abnormal data can be analyzed by 3σ criterion to identify [20,21].
The methods described above were used to identify and remove missing abnormal data from all 648 samples.
The experimental data are multiple sets of information measured at the same position. Ideally, the measured data should be equal each time. If there are points far from the mean, it may be “useless data”. Figure 1 shows the distance data extracted in the initial state. It can be clearly seen that there is an abnormal point that is different from other data.
The 3σ criterion is based on the repeated measurement of equal precision with the normal distribution (as shown in Figure 2), and it is difficult for the interference or noise of the singular data to satisfy the normal distribution, which is in line with the form of the anchor point range. Therefore, we use the 3σ principle to identify and filter useless data.
The normal distribution function formula is as follows:
f ( x ) = 1 2 π σ e ( x μ ) 2 2 σ 2
If the absolute value of the residual error of a certain measurement value in a set of measurement data is >3σ, the measurement value will be a bad value and will be rejected.
Usually, an error equal to ±3σ is regarded as the limit error. For the random error of normal distribution, the probability of falling outside ±3σ is only 0.27%. This is unlikely to occur in a limited number of measurements, so there is a 3σ criterion. The 3σ criterion is the most commonly used and convenient criterion for judging gross errors. It is generally used when the number of measurements is sufficiently large (n ≥ 30) or when n > 10 is used for rough judgment.
Based on this criterion, the following solutions are given:
In this paper, when collecting data with or without signal interference, Tag will collect multiple sets of data at the same coordinate point and record it in the txt file in annex 1. Use the “dir” function to read the data of the txt document into Matlab and keep the ranging value and serial number in it.
For “useless” data, since each “txt” file is a multiple measurement of a point, the more stable the data stand for the true value, so it is not included in the useless data. Useless data should be points far from the mean of the data, that is, “abnormal” or “missing” points.
Use the Matlab “built-in isoutlier” function to find these outliers, also known as outliers.
The key code is as follows:
“temp_TF_abnorm = isoutlier(temp_data_abnorm_sing,’mean’);”
This function returns the temp_TF_abnorm for all elements that deviate from the mean by more than three standard deviations, which can better clean the data. The cleaning results are shown in Figure 3.
After screening the useless data according to the 3σ principle, the outliers in the first and second groups have been screened out; the interference data in the third group have no obvious changes; the fourth group has interference data in the whole group data has been deleted.
Count the data before and after cleaning, and the results are shown in Table 2.

3. Positioning Model Establishment and Solution

Taking the anchor point as the center of the sphere, the actual measured distance is the radius to form 4 spheres. Under the ideal situation in which the signal is not disturbed and there is no error, it can theoretically intersect at a point that is the target point to be positioned. When there is a measurement error and it is disturbed, the four spheres intersect in a small area, and the target point is in this area. Since it is impossible to determine which anchor point is disturbed, therefore, an approximate point near the target point can be obtained by calculating the mean value of the coordinates of the four vertices of the intersection area.
Two-dimensional plane positioning requires at least three anchor points and one label; three-dimensional spatial positioning requires at least four anchor points and one label. The four anchor points need to be fixed in a certain corner of the indoor place, and the site selection of the anchor points should be placed symmetrically in the four corners; there is no obstacle in the middle. The distances from the target point to the four anchor points are measured under normal signal and interference conditions, respectively, and the target points need to be positioned in these two cases.
In this paper, the triangular centroid positioning algorithm is used to accurately position the data. When solving the three-dimensional positioning coordinates, due to the positioning accuracy problem caused by the geometric layout of the anchor points, an optimization algorithm is adopted, which replaces the inverse of the distance sum in the traditional algorithm with the square root of the difference between the actual value and the theoretical value.

3.1. Triangular Centroid Position Algorithm

3.1.1. Traditional Triangular Centroid Position Algorithm

The traditional centroid position algorithm is the distance-weighted centroid position algorithm [22,23,24], that is, to find several reference nodes closest to the unknown node, and to calculate the distance between the three reference nodes and the unknown node as a weight and introduce it into the position algorithm. Then, the centroids of these reference nodes are found as position estimates for the unknown nodes.
We take two-dimensional planes as an example; that is, the anchor points in the three two-dimensional planes of A, B, and C. After obtaining the distance from the tag to each anchor point, the trilateral positioning method can be used to calculate the position, as shown in Figure 4a. In trilateral positioning, three circles are drawn with each anchor point as the center and the distance from the anchor point to the tag as the radius intersects at a point, and this intersection is the position of the tag. However, the existence of the range error prevents the three circles from intersecting at one point, resulting in no solution for the positioning coordinates. To solve this situation, triangular centroid positioning can be used to obtain a real-time solution, and higher accuracy can be obtained when the ranging error is evenly distributed. The accuracy is shown in Figure 4b. When two circles A and B intersect, two feature points of coordinate estimation can be obtained. The third anchor point C is used as a reference, and the feature points with farther distances are discarded. The feature point D is obtained. When two circles A and C are tangent, the tangent point E is used as the feature point; when the two circles B and C are separated, the center point between the line connecting the circle centers B and C and the intersection of the two circles is taken as the feature point F, then the three feature points D, E, F determine a triangle ΔDEF, the coordinates of the three anchor points are known, and the calculated coordinates of D, E, and F are (xD, yD), (xE, yE) and (xF, yF), then the coordinates of the label (xO, yO) are obtained as follows:
{ x O = x D + x E + x F 3 y O = y D + y E + y F 3

3.1.2. Improved Triangular Centroid Position Algorithm

According to the principle of the traditional weighted centroid position algorithm, the weight part plays a crucial role in the positioning accuracy of the whole algorithm, and the reasonable selection of the weight value can avoid the phenomenon of information flooding. Different methods can be used for weight selection in the weighted centroid positioning algorithm. In this paper, the square sum of the distance is used to replace the algorithm of the reciprocal of the distance sum in the traditional algorithm. First, the received distance data is cleaned by 3σ criteria to remove interference points. Then, draw a circle with the three anchor points as the center and the distance between the unknown node and the beacon node as the radius. Since the actual measurement results have errors every time, the three circles will not intersect at one point but will produce common intersections, as shown in Figure 5b. At this point, the unknown node is positioned at the intersection of all circles.
Based on the centroid algorithm mentioned above, the triangle formed by the common intersection (ABC) of the three circles is analyzed, and the distance between the preferred reference node and the unknown node is used to add a weight to each coordinate to reflect the difference. Among vertex contribution, (xA, yA), (xB, yB), (xC, yC) are the coordinates of the three intersection points, which can be easily obtained. Not only is the RSSI data information added to the centroid operation, but the weight selection is also reasonably arranged. The information weight is adopted, and the concept of the correction coefficient is adopted so that the whole positioning accuracy has been greatly improved. However, in the actual test, the three circles often cannot meet at one point due to range error. Assuming that the mobile node is only active in the area of the reference node, the possible situation is shown in Figure 5.
In actual operation, it is first necessary to determine how many of the three circles intersect. The method used can be to combine the equations of the three circles in pairs to determine whether there is a solution:
{ ( x x 1 ) 2 + ( y y 1 ) 2 = r 1 2 ( x x 2 ) 2 + ( y y 2 ) 2 = r 2 2  
{ ( x x 1 ) 2 + ( y y 1 ) 2 = r 1 2 ( x x 3 ) 2 + ( y y 3 ) 2 = r 3 2
{ ( x x 2 ) 2 + ( y y 2 ) 2 = r 2 2 ( x x 3 ) 2 + ( y y 3 ) 2 = r 3 2
If Equation (3) has solutions (x12, y12) and (x21, y21), determine which point is close to the point (x3, y3), and select this point as point D; if equation has solutions (x13, y13) and (x31, y31), determine which point is close to the point (x2, y2), and select this point as point F; if Equation (5) has a solution (x23, y23) And (x32, y32), determine which point is close to the point (x1, y1), and select this point as point E, then the center of gravity of ΔDEF is the position of the mobile node we need to position. If there is no solution to Equation (3), the center of the two circles connecting the two circles, and the center of the two points where the circle intersects is point D; if Equations (4) and (5) have no solution, the coordinates of points E and F will be obtained in the same way. So, we can get 3 points D, E, and F regardless of whether the circles intersect or not, and get the coordinates of the moving node by finding the center of gravity.

3.2. Processing of Normal Data

According to task 2, position the 5 groups of data without interference. For the two-dimensional space, the anchor points A0, A1, and A2 are the centers of the three circles in Figure 6. The intersection of the two will form 6 intersections in the plane. In the absence of interference, the three intersection points can approximately converge into a point (the target point).
For the three-dimensional space, the anchor points A0, A1, A2, and A3 are the centers of the four spheres shown in Figure 6. In fact, in space, these four spheres intersect two by two, and they can indeed meet at one point, which is the target. Therefore, our goal is to find this point set in space by selecting the initial value of X, so that the distance to these four anchor points has a high degree of agreement with the distance we measured. Then, we can pass these distances. As a function, the sum of squares is used to filter out the minimum value of this function, which means that the distance from this point to the four anchor points A0, A1, A2, and A3 is very close to the actual detected distance.
According to the scene information given by task 2, the initial coordinate of X positions the mean value of the coordinates of the four anchor points, which is (2500, 2500, 1500), and defines the function “fmincon” to find the sum of the squares of the distances from the real target coordinates. The smallest intersection point coordinate; then, this point is the target point that needs to be obtained.
For normal data, after the minimum value of this function is obtained, the corresponding values of X, Y, and Z are mathematically the coordinates of the point corresponding to the extreme value of this function. For this paper, at the physical level, the point is very close to the target position, which is in line with the accuracy of the real detected data. The coordinates of the 324 points that are very close to the target point are obtained by calculation, and the coordinates of these 324 points are compared with the Tag coordinate information given in annex 1, as shown in Figure 7. It can be found that 324 points are very similar to the coordinate results of Tag, so it can be approximated that the calculated points are the target points that need to be obtained in task 2.
Due to some uncertainties in the process of the experiment, there is a slight error in the distance between the measured target point and the 4 anchor points. By calculating the distance between the Tag coordinate information provided in annex 1 and the 4 anchor points, it is found that the calculated distance value does have a slight deviation from the normal distance data provided in annex 1 (Figure 8), thus verifying the existence of the error.

3.3. Processing of Abnormal Data

As shown in Figure 9, when the signal is disturbed in the two-dimensional space, the anchor points A0, A1, and A2 are the centers of the three circles, and the intersection of the two forms six intersection points in the plane. By defining an initial value of X to screen out the three points A, B, and C that are far away, the initial value of X is based on the scene given by task 2, and the center point of the anchor points A0, A1, A2, and A3 is (2500, 2500, 1500). By solving the norm of the difference between the theoretical distance and the real distance from these 6 points to A0, A1, and A2, 4 values can be obtained, and the norm of the difference between the theoretical distance and the actual distance between the real target point and A0, A1, and A2 is obvious, which is smaller than the values obtained by the other three points, so the point with the smallest norm of the distance difference needs to be screened out by the “fmincon” function in Matlab, and the position of this point is the position of the target point to be positioned.
For the three-dimensional space, the anchor points A0, A1, A2, and A3 are the centers of the four spheres in Figure 8. Similarly, the norm of the difference with the real distance is screened from the point set obtained by the intersection of them. The coordinates of the target points can be accurately positioned by weighting the coordinates of the smallest points.
Although it can be determined by calculation that one of the four data is disturbed during the signal transmission process, it cannot be clearly determined which data is disturbed. Simplified into two dimensions, if one of A0, A1, and A2 is disturbed, the circle formed by these three anchor points will form a small area DD1D2, and the specific position of the target point in this area cannot be determined, as shown in Figure 10.
When selecting three random spheres to meet at a point, only one of the four intersection points is the real target point. Since we cannot determine which of the four points is the real target point, we take the average by weighting. To reduce the error caused by interference, the purpose is to reduce the interference caused by abnormal. A schematic diagram of abnormal data error is shown in Figure 11.
The maximum distance between the z-axis coordinates of the anchor point is 1700 • 1400 = 300 mm. The smaller z-axis distance causes the target point to be easily separated from the target point, thereby reducing the z-axis positioning accuracy of the target. In order to further improve the z-axis positioning accuracy, this paper is based on BP algorithms, and calculations obtain coordinate values and generate z-axis compensation terms. The neural network after normal data training is shown in Figure 12 [25,26].

3.4. Model Accuracy

In this paper, one-dimensional, two-dimensional, and three-dimensional RMSE (Root Mean Square Error, root mean square error) are used to evaluate the results and illustrate the validity of the model. The main calculation formulas for each index are as follows [27,28]:
One - dimensional :   { RMSE   x = i = 1 n ( x i ^ x i ) 2 n RMSE   y = i = 1 n ( y i ^ y i ) 2 n RMSE   z = i = 1 n ( z i ^ z i ) 2 n
Two - dimensional :   d i = ( x i   x - ) 2 + ( y i   y - ) 2
RMSE xy = i = 1 n ( d i   d - ) 2 n
Three - dimensional :   d i = ( x i x - ) 2 + ( y i y - ) 2 + ( z i z - ) 2
RMSE xyz = i = 1 n ( d i d - ) 2 n
According to the results of the above prediction indicators, we compare the final positioning results of the above two models. The main indicators of the models are compared, as shown in the following Table 3:
The above results show that the position model in this paper has good advantages and effectiveness and can position the position of the target well. In addition, the effectiveness of the model is demonstrated by comparing the theoretical coordinates in each direction with multiple sets of real coordinates, and the results are shown in Figure 13.
At the same time, its own model characteristics (such as continuously updating and querying other samples, extracting features through many variables, etc.) are also very suitable for the use of actual projects, and its own model framework has begun to be valued and used in the signal positioning and transmission process.

3.5. Model Results

Perform precise positioning on the first five groups of data (without signal interference) and the last five groups (with signal interference) provided in annex 2, and the positioning coordinates are shown in Table 4.

4. Migration Application of the Positioning Model

The positioning prediction model based on experimental scene 1 cannot determine whether it can be applied to different scenes. Therefore, the coordinate positions of different anchor points can be set, and the range of the anchor points can be basically selected near experimental scene 1. Annex 3 sets different coordinates. The four anchor point positions below, according to the four anchor point positions of different scenes:
A0 (0, 0, 1200), A1 (5000, 0, 1600)
A2 (0, 3000, 1600), A3 (5000, 3000, 1200)
Modify the initial value of X to (2500, 1500, 1400), substitute it into the positioning prediction model derived from experimental scenario 1, establish a positioning model for each of the five groups of data before and after it according to whether the data signal is disturbed, and predict the precise positioning under these 10 sets of data. By changing the position of the anchor point, iterating the initial value, and then substituting it into the positioning model of the previous chapter.
First, the coordinates of the four anchor points in the new scene need to be re-determined, and then the ten groups of data signals given in annex 3 and the initial value of the target point solved by the least square method are brought into the second model of the problem, and ten sets of target coordinates can be obtained, as shown in Table 5.

5. Interfering Data Identification Model

Since the above problems are based on the existing information to determine whether the signal has interference in the actual situation, the UWB simply records the sample data in the process of collecting the signal, and it cannot be judged, which may cause problems in the modeling process of large error. In order to reduce the error, a normal “lostfunction” function containing four target points is used to solve each dataset, and a function value is obtained. Randomly remove one target point and solve the problem with the remaining three target points. You will get the coordinates of four intersection points. If the signal is disturbed, the four intersection points formed by the intersection of the spherical surfaces generated by the four anchor points produce a large deviation.
Therefore, the threshold is determined according to the empirical formula. If the fluctuation range of these five values is less than the threshold, the data will be regarded as normal data. If the data fluctuation is greater than or equal to the threshold, this will indicate that there are problematic data.
For normal distance data that is not disturbed, the coordinates of the four anchor points can be used to position the specific coordinates of a target point; if one anchor point is removed, the remaining three anchor points will calculate the coordinates of 4 close to the target point. A total of five coordinates can be derived from the coordinates of one anchor point. Here, a fluctuation level is defined to judge whether this set of data is disturbed. If the fluctuation level is lower than a given threshold, this means that this set of data is not disturbed; on the contrary, when the fluctuation level is higher than the given threshold, it means that the set of data is not disturbed. Data are disturbed. The formula for the volatility level is as follows:
Volatility   level = Coordinate   maximum Coordinate   minimum Mean   coordinate  
According to the 10 groups of data in annex 4, a fluctuation level can be obtained by calculating each group. If the fluctuation range of these five values is small, the data will be regarded as normal data. If the data fluctuate greatly, it will mean that there are problematic data.
f ( x ) = { normal ,   set   to   0 ,     fluctuation   level < threshold Abnormal ,   set   to   1 ,     fluctuation   level     threshold
The key to solving the problem is how to take an appropriate threshold to determine the fluctuation level of a set of data. Here we use the 324 sets of normal data and 324 sets of abnormal data given in chapter 2 for BP neural network training, and the first 300 sets are used for training, and the last 24 groups were tested to judge the accuracy of the threshold.
Through training, we can obtain a threshold with an accuracy rate of 82.6%. The value of the threshold is 0.380772; that is, if 10 groups of data are input, it will be accurately determined that 8 groups are normal data or abnormal data. Finally, use the established classification model to judge whether the 10 groups of data provided in annex 4 have interference or no interference signal. The calculation results are shown in Table 6.
It can be seen from the calculation results that the first group and the last 6–10 groups are interference signals, and the second-5 groups are normal signals.

6. Movement Track Positioning Model

The positioning model of static points based on a certain number of samples can characterize the spatial positions of these targets through an algorithm and combine them with the target’s own movement law to obtain the movement track of dynamic targets. According to the sample data provided in annex 5, it is judged by the interference data identification model to determine whether the data is interfered, and then substituted into the two positioning models in chapter 3 to calculate the position of the target point, and then the required movement track can be obtained.
The positioning model obtained in chapter 3 should have adaptability to different base point coordinates and anchor points. In order to verify whether the above model has the same high positioning for different anchor points, another 10 sets of data were collected because it is known that the measured whether the data is disturbed, the first 5 groups and the last 5 groups of data are brought into the positioning model for calculation.

6.1. Modeling Route

In order to describe the movement trajectory of the target point when collecting data, it is first necessary to determine the position of the target point at each moment according to the collected distance data. Therefore, it is necessary to use the classification model established in chapter 5 to judge the collected data, first determine whether the data is disturbed during the collection, and then put the normal data and abnormal data into the two positioning models in chapter 3. The group is positioned to the position of the target point to obtain the movement trajectory of the target point. In summary, the main technical route of the movement track positioning model modeling process is shown in Figure 14 below:

6.2. Model Establishment

The movement track positioning model is based on the positioning model and the interference data recognition model. First, the collected data is classified by the classification model, and divided into undisturbed data and disturbed data. The disturbed data are marked in red, and the normal data without disturbance are marked in green. The disturbed signal and the undisturbed signal are substituted into the two positioning models to realize the positioning of the target point; finally, the coordinates of the positioned target points are connected in sequence to obtain the movement trajectory of the target point so as to realize the target point under different conditions.

6.3. Model Solution and Result Analysis

Substitute the data collected by the dynamic target points in annex 5 into the interference data identification model for judgment, and first identify whether the signal is disturbed. If the fluctuation level is greater than the threshold in the model, it will mean that the target point is disturbed when it moves to this position, through the abnormal data model in chapter 3 to achieve the target position; if it is judged that the target is not disturbed, then the target position will be achieved through the normal data position model.
Under normal circumstances, the target should be interfered with for a continuous period, not intermittently. The accuracy of the interference data recognition model can be roughly judged according to the fluctuation of the label. The interference situation is shown in Figure 15, and a value of 1 means disturbed data, and a value of 0 means normal data. It can be seen from the figure that the continuity between disturbance and normal data is better.
By substituting the data into the model coupled with the classification model and the positioning model, the movement track of the dynamic target can be obtained, as shown in Figure 16.
It can be found from Figure 16 that in the XOY direction, the movement trajectory of the target point is in a “Z” shape, and during the movement, it will be interrupted intermittently, and the disturbed part is the red area in the figure; from the XOZ direction and the YOZ direction It can be found in the direction that when the target point is disturbed in the process of movement, the value of the Z-axis direction will fluctuate to a certain extent, but generally it presents a relatively gentle trajectory.
Therefore, the reliability and stability of the movement track positioning model can be determined, and relatively accurate positioning of the target point in movement can be achieved.

6.4. Comparative Test

To verify the advantages of the proposed method, we apply both the proposed method and the Kalman filter to a moving target, and the average value of the RMSE of the proposed method and the Kalman filter is shown in Table 7. Moreover, to verify the efficiency of the proposed method, the UWB positioning system in this paper and the Kalman filter were coded in Matlab (2020a) and run on a PC (Intel Core i5-11500, 4.60 GHz; Memory, 16.00 G). The operation time of the proposed method is shown in Table 7.
Table 7 shows that the RMSE of the proposed method is 3.6471 lower than that of the Kalman filter. This means that, compared to the Kalman filter, the localization accuracy performance of the proposed method is improved by 100%−92% = 8%. The running time of the proposed method is about the same as the Kalman filter.
The full details of the Program addendum is available in the Supplementary File.

7. Conclusions

The model established in this paper has the following advantages:
(1)
Because the model based on measurement data has passed the verification of different sample data, it has high accuracy and reliability.
(2)
The model can adjust the corresponding parameters according to different usage scenarios for precise positioning, which has strong flexibility.
(3)
After the model is trained with many samples, it can dynamically output the movement track of the target point, and at the same time, through pre-processing, the disturbed data is corrected, the noise points are knocked out, and the dynamic law of the static sample points is found; thereby, it can predict the spatial three-dimensional coordinates of the target within a given range, which has a certain degree of advancement.
The state-of-the-art section is as follows: when a receiver signal in three-dimensional space is interfered, the positioning information of the receivers may conflict with each other. To solve the above problem, in this paper, a new 3D positioning method is developed based on triangulation and a BP neural network. For an indoor target, the proposed method first finds the initial positioning position based on the weighted average method, and then uses the BP neural network to correct the positioning error. We apply the method to a 3D moving target, and the results show that the proposed method has higher localization accuracy than the Kalman filter.
The model constructed in this paper can be widely used in indoor positioning and has a certain reliability and stability, and its modeling ideas can also be used for reference in other fields.

Supplementary Materials

The following are available online at https://www.mdpi.com/article/10.3390/app122211572/s1.

Author Contributions

Y.F.: investigation, methodology, writing—original draft preparation. W.M.: supervision, writing—review and editing. M.C.: supervision, writing—review and editing. C.C.: methodology, validation. X.Z.: data curation, investigation. All authors have read and agreed to the published version of the manuscript.

Funding

This research was supported by the National Natural Science Foundation of China (No. 51575416), the China Postdoctoral Science Foundation (2020M672429), and the Fundamental Research Funds for the Central Universities (WUT: 2021IVB009) for the support given to this research.

Institutional Review Board Statement

Not applicable.

Informed Consent Statement

Not applicable.

Conflicts of Interest

The authors declare no conflict of interest.

References

  1. Saigo, Y.; Ko, S.; Takayama, J.; Ohyama, S. Precise Asynchronous RF ToF Measurement Based on Two-Way-Ranging Using Heterogeneous Clocks. In Proceedings of the SICE Annual Conference (SICE), Akita, Japan, 20–23 August 2012; IEEE: Piscataway, NJ, USA, 1963; pp. 1437–1442. [Google Scholar]
  2. Khodjaev, J.; Park, Y.; Malik, S.A. Survey of NLOS identification and error mitigation problems in UWB-based positioning algorithms for dense environments. Ann. Telecommun. 2010, 65, 301–311. [Google Scholar] [CrossRef]
  3. Yang, X. NLOS mitigation for UWB localization based on sparse pseudo-input Gaussian process. IEEE Sens. J. 2018, 18, 4311–4316. [Google Scholar] [CrossRef]
  4. Marano, S.; Gifford, W.M.; Wymeersch, H.; Win, M.Z. NLOS identification and mitigation for localization based on UWB experimental data. IEEE J. Sel. Areas Commun. 2010, 28, 1026–1035. [Google Scholar] [CrossRef] [Green Version]
  5. Wymeersch, H.; Maranò, S.; Gifford, W.M.; Win, M.Z. A machine learning approach to ranging error mitigation for UWB localization. IEEE Trans. Commun. 2012, 60, 1719–1728. [Google Scholar] [CrossRef] [Green Version]
  6. Park, J.W.; Nam, S.C.; Choi, H.B.; Ko, Y.E.; Ko, Y.B. Improving deep learning-based UWB LOS/NLOS identification with transfer learning: An empirical approach. Electronics 2020, 9, 1714. [Google Scholar] [CrossRef]
  7. Jiang, C.; Shen, J.; Chen, S.; Chen, Y.; Liu, D.; Bo, Y. UWB NLOS/LOS classification using deep learning method. IEEE Commun. Lett. 2020, 24, 2226–2230. [Google Scholar] [CrossRef]
  8. Wang, T.; Hu, K.; Li, Z.; Lin, K.; Wang, J.; Shen, Y. A semi-supervised learning approach for UWB ranging error mitigation. IEEE Wirel. Commun. Lett. 2020, 10, 688–691. [Google Scholar] [CrossRef]
  9. Zhou, T.; Xiao, M.; Liu, Y.; Cheng, Y.; Liu, Y. Research on Indoor UWB Positioning Based on Expectation Maximization in NLOS Environment. Concurr. Comput. Pract. Exp. 2021, 33, e6278. [Google Scholar] [CrossRef]
  10. Albaidhani, A.; Morell, A.; Vicario, J. Anchor Selection for UWB Indoor Positioning. Trans Emerg. Tel. Tech. 2019, 30, e3598. [Google Scholar] [CrossRef]
  11. García, E.; Poudereux, P.; Hernández, Á.; Garcia, J.J.; Urena, J. DS-UWB Indoor Positioning System Implementation Based on FPGAs. Sens. Actuators Phys. 2013, 201, 172–181. [Google Scholar] [CrossRef]
  12. Cheng, Y.; Zhou, T. UWB Indoor Positioning Algorithm Based on TDOA Technology. In Proceedings of the 10th International Conference on Information Technology in Medicine and Education (ITME), Qingdao, China, 23–25 August 2019; IEEE: Piscataway, NJ, USA, 1963; pp. 777–782. [Google Scholar]
  13. Ridolfi, M.; Vandermeeren, S.; Defraye, J.; Steendam, H.; Gerlo, J.; Clercq, D.D.; Hoebeke, J.; Poorter, E.D. Experimental Evaluation of UWB Indoor Positioning for Sport Postures. Sensors 2018, 18, 168. [Google Scholar] [CrossRef] [Green Version]
  14. Minne, K.; Macoir, N.; Rossey, J.; van der Brande, Q.; Lemey, S.; Hoebeke, J.; Poorter, E.D. Experimental Evaluation of UWB Indoor Positioning for Indoor Track Cycling. Sensors 2019, 19, 2041. [Google Scholar] [CrossRef] [PubMed] [Green Version]
  15. Kunhoth, J.; Karkar, A.; Al-Maadeed, S.; Al-Ali, A. Indoor Positioning and Wayfinding Systems: A Survey. Hum. Cent. Comput. Inf. Sci. 2020, 10, 18. [Google Scholar] [CrossRef]
  16. Yao, L.; Yao, L.; Wu, Y. Analysis and Improvement of Indoor Positioning Accuracy for UWB Sensors. Sensors 2021, 21, 5731. [Google Scholar] [CrossRef]
  17. Zhao, Y.; Zou, J.; Guo, J.; Huang, G. A Novel Ultra-Wideband Double Difference Indoor Positioning Method with Additional Baseline Constraint. ISPRS Int. J. Geo-Inf. 2021, 10, 634. [Google Scholar] [CrossRef]
  18. Li, Z.; Zhang, Y. Constrained ESKF for UAV Positioning in Indoor Corridor Environment Based on IMU and WiFi. Sensors 2022, 22, 391. [Google Scholar] [CrossRef] [PubMed]
  19. Jia, W. UWB Underground Personnel Positioning Technology and System Research Based on Decision-Prediction. Energy Technol. Manag. 2021, 5, 166–168. (In Chinese) [Google Scholar]
  20. Cao, H.; Zhou, K.; Chen, X.; Zhang, X. Early chatter detection in end milling based on multi-feature fusion and 3σ criterion. Int. J. Adv. Manuf. Technol. 2017, 92, 4387–4397. [Google Scholar] [CrossRef]
  21. Yao, Q.; Song, D.; Xu, X. Robust finger-vein ROI localization based on the 3 σ criterion dynamic threshold strategy. Sensors 2020, 20, 3997. [Google Scholar] [CrossRef]
  22. Verdicchio, F.; Adeniran, A. Reach Centroid Localization Algorithm. Wirel. Sens. Netw. 2017, 9, 87–101. [Google Scholar]
  23. Li, M.; Jiang, F.; Pei, C. An Improved Triangle Centroid Localization Algorithm Based on PIT Criterion. EURASIP J. Wirel. Commun. Netw. 2020, 2022, 19. [Google Scholar] [CrossRef]
  24. Kim, K.; Shin, Y. A Distance Boundary with Virtual Nodes for the Weighted Centroid Localization Algorithm. Sensors 2018, 18, 1054. [Google Scholar] [CrossRef]
  25. Ma, D.; Ma, W.; Jin, S.; Ma, X. Method for simultaneously optimizing ship route and speed with emission control areas. Ocean Eng. 2020, 202, 107170. [Google Scholar] [CrossRef]
  26. Ma, W.; Zhang, J.; Han, Y.; Zheng, H.; Ma, D.; Chen, M. A chaos-coupled multi-objective scheduling decision method for liner shipping based on the NSGA-III algorithm. Comput. Ind. Eng. 2022, 174, 108732. [Google Scholar] [CrossRef]
  27. Draper, C.; Reichle, R.; de Jeu, R.; Naeimi, V.; Parinussa, R.; Wagner, W. Estimating root mean square errors in remotely sensed soil moisture over continental scale domains. Remote Sens. Environ. 2013, 137, 288–298. [Google Scholar] [CrossRef] [Green Version]
  28. Ćalasan, M.; Aleem, S.H.E.A.; Zobaa, A.F. On the root mean square error (RMSE) calculation for parameter estimation of photovoltaic models: A novel exact analytical solution based on Lambert W function. Energy Convers. Manag. 2020, 210, 112716. [Google Scholar] [CrossRef]
Figure 1. Data in the initial state.
Figure 1. Data in the initial state.
Applsci 12 11572 g001
Figure 2. Normal distribution curve.
Figure 2. Normal distribution curve.
Applsci 12 11572 g002
Figure 3. Four sets of data to remove “useless” points.
Figure 3. Four sets of data to remove “useless” points.
Applsci 12 11572 g003aApplsci 12 11572 g003b
Figure 4. Triangulation and centroid positioning ((a)without interference, (b)with interference).
Figure 4. Triangulation and centroid positioning ((a)without interference, (b)with interference).
Applsci 12 11572 g004
Figure 5. Four possible situations in trilateration calculation ((ad) present different positions).
Figure 5. Four possible situations in trilateration calculation ((ad) present different positions).
Applsci 12 11572 g005
Figure 6. Schematic diagram of the positioning of normal data (The letters on the figure indicate the centers of the three circles or the points of intersection on the circles).
Figure 6. Schematic diagram of the positioning of normal data (The letters on the figure indicate the centers of the three circles or the points of intersection on the circles).
Applsci 12 11572 g006
Figure 7. Target position obtained from normal data.
Figure 7. Target position obtained from normal data.
Applsci 12 11572 g007
Figure 8. Schematic diagram of normal data measurement error.
Figure 8. Schematic diagram of normal data measurement error.
Applsci 12 11572 g008
Figure 9. Schematic diagram of abnormal data position (The letters on the figure indicate the centers of the three circles or the points of intersection on the circles).
Figure 9. Schematic diagram of abnormal data position (The letters on the figure indicate the centers of the three circles or the points of intersection on the circles).
Applsci 12 11572 g009
Figure 10. Any anchor point in a two-dimensional space is disturbed (The letters on the figure indicate the centers of the three circles or the points of intersection on the circles).
Figure 10. Any anchor point in a two-dimensional space is disturbed (The letters on the figure indicate the centers of the three circles or the points of intersection on the circles).
Applsci 12 11572 g010
Figure 11. Schematic diagram of abnormal data error.
Figure 11. Schematic diagram of abnormal data error.
Applsci 12 11572 g011
Figure 12. Schematic diagram of abnormal data error.
Figure 12. Schematic diagram of abnormal data error.
Applsci 12 11572 g012
Figure 13. Schematic diagram of XOY and XOZ projections. (a) Comparison of theoretical coordinates and actual coordinates of target points in the XOY direction; (b) Comparison of theoretical coordinates and actual coordinates of target points in XOZ direction.
Figure 13. Schematic diagram of XOY and XOZ projections. (a) Comparison of theoretical coordinates and actual coordinates of target points in the XOY direction; (b) Comparison of theoretical coordinates and actual coordinates of target points in XOZ direction.
Applsci 12 11572 g013aApplsci 12 11572 g013b
Figure 14. Movement track positioning technology route.
Figure 14. Movement track positioning technology route.
Applsci 12 11572 g014
Figure 15. Schematic diagram of trajectory interference.
Figure 15. Schematic diagram of trajectory interference.
Applsci 12 11572 g015
Figure 16. The movement track of the target. (a) Movement track of target point on XOY plane; (b) Movement track of XOZ plane target; (c) Movement track of YOZ plane target.
Figure 16. The movement track of the target. (a) Movement track of target point on XOY plane; (b) Movement track of XOZ plane target; (c) Movement track of YOZ plane target.
Applsci 12 11572 g016aApplsci 12 11572 g016b
Table 1. Description of the symbols.
Table 1. Description of the symbols.
NumberVariableVariable Description
1μExpectation
2σStandard deviation
3RMSERoot mean square error
Table 2. Statistics of the number of samples before and after cleaning.
Table 2. Statistics of the number of samples before and after cleaning.
Before CleaningAfter Cleaning
Normal Data Sample Abnormal Data SampleNormal Data Sample Abnormal Data Sample
77,12279,17676,14578,269
Table 3. Main index comparison results.
Table 3. Main index comparison results.
Evaluation Indicators (RMSE)
1D2D3D
xyz(x,y)(x,y,z)
Without interference7.61687.457913.741610.732116.6531
With interference169.826397.5270140.5821226.3231334.3860
Table 4. Normal/abnormal target coordinate results.
Table 4. Normal/abnormal target coordinate results.
Normal Target CoordinatesAbnormal Target Coordinates
NumberX (mm)Y (mm)Z (mm)NumberX (mm)Y (mm)Z (mm)
11156.134664.3231143.15962083.379717.629747.945
23166.6841722.6031135.26174288.5601640.898945.884
32722.5361171.2911233.50381769.3241267.5672400.749
42462.3411009.2291938.67093560.7072006.8562242.047
51480.0312554.4631731.295104823.9892074.4671184.086
Table 5. Ten sets of target coordinates.
Table 5. Ten sets of target coordinates.
Normal Target CoordinatesAbnormal Target Coordinates
NumberX (mm)Y (mm)Z (mm)NumberX (mm)Y (mm)Z (mm)
13688.8212230.0011285.94764747.9712107.5511027.347
24203.0461748.9471225.70672482.4861539.052757.827
33185.9881745.9611297.82681730.9151410.5601847.548
42591.1121879.3852099.19592026.283830.003914.749
5511.4988.2011705.062101207.771836.1352107.460
Table 6. Calculation results.
Table 6. Calculation results.
Data Labels with a Threshold of 0.380772
Number12345678910
Label0111100000
Table 7. Comparison results between the proposed method and the Kalman filter.
Table 7. Comparison results between the proposed method and the Kalman filter.
MethodsRMSE/mmPercentage of RMSEOperation Time/s
Kalman filter45.8143100.0% (Base value)0.9726
Proposed method42.167292.0%0.9492
Publisher’s Note: MDPI stays neutral with regard to jurisdictional claims in published maps and institutional affiliations.

Share and Cite

MDPI and ACS Style

Fang, Y.; Ma, W.; Chen, M.; Chai, C.; Zhang, X. Research on Indoor 3D Positioning Model Using Improved Triangular Centroid Position Algorithm Based on UWB. Appl. Sci. 2022, 12, 11572. https://doi.org/10.3390/app122211572

AMA Style

Fang Y, Ma W, Chen M, Chai C, Zhang X. Research on Indoor 3D Positioning Model Using Improved Triangular Centroid Position Algorithm Based on UWB. Applied Sciences. 2022; 12(22):11572. https://doi.org/10.3390/app122211572

Chicago/Turabian Style

Fang, Yuan, Weihao Ma, Mingzhang Chen, Cong Chai, and Xuancheng Zhang. 2022. "Research on Indoor 3D Positioning Model Using Improved Triangular Centroid Position Algorithm Based on UWB" Applied Sciences 12, no. 22: 11572. https://doi.org/10.3390/app122211572

Note that from the first issue of 2016, this journal uses article numbers instead of page numbers. See further details here.

Article Metrics

Back to TopTop