1. Introduction
With the characteristics of small size, flexible mobility, broad application scenarios, and low cost, unmanned aerial vehicles (UAVs) provide solid support for the construction of smart cities in the field of express logistics, smart agriculture, emergency rescue, remote sensing mapping [
1,
2]. Satellite positioning is one of the main navigation technologies used in UAVs. Positioning and navigational accuracy have a great impact on the performance of UAVs, such as safety, stability, flexibility and attitude control [
3]. However, the positioning and navigational accuracy are affected greatly by the low update frequency of receiver data. Traditionally, to obtain high-precision positioning data needs acquire enough epochs of data over a long time. Therefore, fast positioning generally cannot reach high accuracy.
To improve the positioning accuracy of satellites, error sources need to be analyzed and compensated [
4,
5]. There are many sources of positioning errors in GNSS, such as receiver clock error, satellite clock error, satellite orbit error, tropospheric error, etc. Due to the lack of reference information, the influence of various errors must be considered in the traditional single-point positioning method, and its positioning accuracy is from meter level to decimeter level. Studies show that the error of observation data between stations with short distances is similar [
6], thus, using a station with a known accurate position as a reference station to differ the observation data between the reference station and the station close to it can eliminate most of the observation errors of the station and get high-precision positioning results in real-time. That is the core idea of RTK (Real Time Kinematic), a carrier-phase difference technology, that provides real-time three-dimensional positioning results with centimeter-level accuracy. Differential positioning can be divided into pseudo-range difference and carrier-phase difference according to the different types of observations. The pseudo-range difference is a differential processing of the pseudo-range observation, which can be positioned at an epoch moment with positioning accuracy of meters scale. The carrier-phase difference is a differential processing of the carrier phase observation, which can obtain a positioning accuracy of centimeters scale. Compared with pseudo-range signals, carrier-range signals are cosine waves without any markers, which will lead to the problem of unknown cycle ambiguities in receivers. In addition to the algorithm based on RTK, more powerful hardware and satellite receivers, etc., are also effective ways to improve linearity, positioning, and resolution. Moreover, increasing the number of satellite observations and extending the observation time can reduce the pathology of the parameter identification matrix and obtain precision integer ambiguity, which is commonly used in static poisoning for they need more than 1 h to observe enough data. To achieve fast accuracy positioning, this manuscript proposes to improve the success rate of the integer ambiguity solution.
In fast positioning, unknown cycle calculation must be finished in several seconds or minutes with a few periods of observation data. However, the spatial structure of the satellites in a short time is of little change and great similarity. Thus, the ambiguity parameter identification matrix composed of these data is seriously ill-conditioned, which leads to great error or even unable to converge in the identification. There are two steps to get the integer ambiguity. The floating-point solution of integer ambiguity can be obtained first by identification. Then, the integer solution will be calculated by taking the floating-point solution as the initial value. Therefore, fast and accurate identification of the integer ambiguity is the key to improving positioning accuracy and is also the research focus in the field of GNSS position.
Traditionally, there are two methods for ill-conditioned problems i.e., ridge estimation [
7] and truncated singular value decomposition (TSVD) [
8]. While improving the ill-condition of the matrix, ridge estimation excessively introduces bias, which reduces the reliability of the solution results. While restoring the main properties of the solution, some precision information will be lost in TSVD. Thus, these two methods are not suitable for the identification of integer ambiguity in fast positioning. On the basis of analyzing the structural characteristics of the integer ambiguity identification matrix, Wang [
9] proposed a construction method of regularization matrix based on the principle of Tikhonov regularization [
10], in which the ill-condition of the integer ambiguity identification matrix is weakened by using a new regularization matrix. Then, a more accurate integer ambiguity floating-point solution and its corresponding mean square error matrix are obtained.
To calculate the integer solution of integer ambiguity, there are mainly three methods: Fast Ambiguity Resolution Approach (FARA) [
11], Cholesky [
12] and Least-square Ambiguity Decorrelation Adjustment (LAMBDA) [
13], With the modernization of GNSS, the use of multi-frequency data for positioning has also been put into practice [
14]. LAMBDA can reduce the correlation between integer ambiguities and the search range of integer ambiguities through integer transformation. It is a widely used integer ambiguity search algorithm with fast search speed and good effect. However, LAMBDA searches the solution from an initial value in the solution space, which has low fault tolerance and cannot directly correct the search results. Intelligent evolution algorithms and swarm intelligence algorithms have also achieved good results in solving the integer ambiguity [
15] for their global search characteristics. Li [
16] combined integer Gaussian transform and particle swarm optimization algorithm to search the integer ambiguity. However, optimization algorithms have the problem of falling into local optimal solutions. Grey Wolf Optimization (GWO) algorithm is a new kind of swarm intelligence optimization algorithm proposed in 2014 [
17,
18], which has the characteristics of simplicity, less parameter setting, strong global search ability, etc. It has been proven to be superior to particle swarm optimization algorithms in solution accuracy and convergence speed [
19].
After the integer ambiguity of the solution is obtained, an effective confirmation method is required to determine whether the integer ambiguity is correct. The early method to confirm the integer ambiguity is to judge whether there is a significant difference between the optimal solution and the suboptimal solution of integer ambiguity through hypothesis testing, but the threshold value is often set according to experience [
20]. The currently developed integer ambiguity confirmation method based on integer aperture estimation theory [
21] cannot be applied to fast positioning due to the huge amount of calculation. According to the continuity and slow change of Total Electron Content (TEC), Han [
22] used the TEC double difference of adjacent epochs to test the integer ambiguity. For the failed epoch, the ambiguity is searched again by removing one or more satellites with low altitude angles, but this method is limited by the number of satellites. Therefore, the traditional LAMBDA cannot directly correct the integer ambiguity, and the intelligent optimization methods also cannot guarantee the solution is globally optimal. And even if the global optimal solution is obtained under the designed objective function, it may not be the correct value. Thus, an efficient search strategy and reasonable integer ambiguity test means are necessary for the rapid positioning of GNSS.
To improve the solution efficiency and accuracy of the integer ambiguity in fast positioning, a search strategy based on LAMBDA-GWO is proposed in this paper, and the correctness test method of integer ambiguity with prior coordinate accuracy information and TEC as feedback index is introduced into the integer ambiguity solving process. Consequently, the problem of search efficiency of traditional methods and the low accuracy caused by the lack of checking and correction is solved.
To improve the solution efficiency and accuracy of the integer ambiguity in fast positioning, a search strategy based on LAMBDA-GWO is proposed in this paper, and the correctness test method of integer ambiguity with prior coordinate accuracy information and TEC as feedback index is introduced into the integer ambiguity solving process. Consequently, the problem of search efficiency of traditional methods and the low accuracy caused by the lack of checking and correction is solved. Finally, experimental verification and comparative analysis are then carried out.
4. Experiments
To verify the effectiveness of the proposed method, three known control points on campus were selected as the prior coordinates. Certain receivers were used to process the satellite signal. The processed observation data was acquired. The receivers at both ends of the baseline were required to acquire data at the same time during the data acquisition process. The data acquisition device was shown in
Figure 2.
In the experiment, the carrier phase observation data of two baselines of 522 m and 975 m were collected for differential positioning modeling, and the sampling interval is 5 s. For the baseline of 522 (baseline 1), the total sampling time was 1 h, and 305 consecutive sampling values which can observe 5 satellites were selected. Every 6 values formed an epoch for position solving, so we can obtain 300 epochs. Similarly, for the baseline of 975 m (baseline 2), the total sampling time is 30 min, and 165 consecutive sampling values are selected. We can obtain 160 epochs. Each epoch is solved independently. Whether the epoch is solved correctly is determined by the value of deviation. If the deviation is more than 10 cm, the solution of the epoch is considered incorrect. The ratio of the correctly solved epoch number to the total epoch number is used as the success rate of the solution.
With the above two sets of data, LAMBDA was used to solve the integer ambiguity first. Then TEC test and prior coordinate accuracy test were used to analyze the correctness of the integer ambiguity solution. And GWO was used to correct the solution units that fail the test. The identification calculation results are shown in
Figure 3,
Figure 4,
Figure 5,
Figure 6,
Figure 7 and
Figure 8.
Figure 3 and
Figure 4 show the deviation between the coordinates obtained by the traditional LAMBDA and the actual coordinates for the two baselines. Since traditional LAMBDA cannot correct the erroneously solved epochs, we can see there are many cases in
Figure 3 and
Figure 4 where the coordinates of the epoch have far deviated from the median for the solved integer ambiguity value is incorrect.
Figure 5 and
Figure 6 show the Ionospheric delay residual of satellite 32 for the two baselines solved according to the traditional LAMBDA. The ionospheric delay residual value between adjacent epochs is similar due to the slow change of the ionosphere. When the integer ambiguity is incorrect, there will be a jump in the ionospheric delay residual between adjacent epochs, which is also the basis of ionospheric testing. The locations where the jump occurs in
Figure 5 and
Figure 6 also correspond to the epochs in
Figure 3 and
Figure 4 where the integer ambiguity is incorrect.
Moreover, if the ionospheric delay residual is used alone for testing, the calculation of the ionospheric delay residual of the first epoch is very important, because the subsequent test is also based on the first epoch. It can be seen from
Figure 4 that the integer ambiguity solution value of the first epoch is incorrect, so the ionospheric delay residual in the first epoch is incorrect as shown in
Figure 6. Finally, the coordinate deviation of the two baselines is solved by the proposed test method and correction strategy, as shown in
Figure 7 and
Figure 8, which can correct the incorrect solution in traditional LAMBDA method shown in
Figure 3 and
Figure 4. To further verify the effectiveness of the method proposed in this paper, LAMBDA, IPSO-AR [
16] and LAMBDA-GWO are used to solve the two sets of data collected, respectively. The results of the three methods are compared in
Table 1.
The results show that the solution success rates of the two baselines using LAMBDA are 87.33% and 76.25%, respectively. The solution success rates using IPSO-AR are 83.67% and 76.87%, respectively. The solution success rates using the proposed LAMBDA-GWO are 99.33% and 99.38%, respectively. The solution success rates are improved by 12% and 23% compared with LAMBDA. It can be seen that the success rates of LAMBDA and IPSO-AR are similar, but LAMBDA has a higher solving efficiency. With the increase of the baseline length, the success rate of the two solution methods decreases, but the proposed method (LAMBDA-GWO) is not significantly affected by the baseline distance. Therefore, while ensuring the solving efficiency, it has a higher success rate, which is also one of the advantages of the proposed method.
5. Conclusions
A carrier-phase differential positioning model is established based on RTK theory. To achieve fast accuracy positioning, this manuscript proposes to improve the success rate of the integer ambiguity solution. Experiments have shown that the proposed method (LAMBDA-GWO) is not significantly affected by the baseline length. While ensuring the solving efficiency, it also has a higher success rate. The main innovations of the work are as follows: (1) To solve the problem of low fault tolerance and no feedback of the traditional LAMBDA, TEC test, and station prior coordinate accuracy are used to test the identified integer ambiguity, and an intelligent optimization algorithm is used to search the optimal integer solution when the test results are invalid to improve the accuracy of parameter identification. (2) A parameter identification method for integer solution of the integer ambiguity based on LAMBDA- GWO is proposed to solve the problems of poor solution accuracy and algorithm instability of the traditional method when the measurement error is large.
However, the GNSS system cannot completely determine the flight state, position, and attitude of a UAV, especially in complex environments. Therefore, multi-sensor fusion such as GNSS and inertial navigation systems should be considered to obtain more reliable position and attitude information, which will be studied the future work.