GNSS定位的经典算法Gauss-Newton迭代法对初始位置依赖性强,若初值设置不当则迭代次数增加,而每次迭代涉及矩阵乘法和矩阵求逆,计算量剧增,直接影响系统冷启动首次定位时间。直接解算定位法无需初值和迭代计算,计算量小但定位精度较差。针对上述问题,本文提出了一种两步快速定位法,首先用直接解算法解算出用户的概略位置,然后将距离方程组在该位置处进行泰勒展开,用加权最小二乘算法计算用户位置的修正量,概略位置修正后即为用户位置。新算法与传统Gauss-Newton迭代定位算法相比,在保证相同定位精度前提下大幅降低运算量,具有重要的工程意义。仿真结果证明了新算法的有效性。
Classic GNSS pseudo-range positioning algorithm, Gauss-Newton iteration algorithm, largely dependent on the initial-value. A bad initial-value of Gauss-Newton iteration algorithm will need more iterations calculation for algorithm con- verging and each iterative calculation involves matrix multiplication and inversion, which will lead to a calculation surge. An important parameter of receiver, TI'FF (Time to First Fix), is directly affected. Direct calculation method doesn't require initial-value and iteration calculation, characteristic of small amount of calculation, however it' s positioning accuracy worse than Gauss-Newton iteration' s. To address the issue mentioned above, a two-step fast positioning algorithm is proposed in this paper. The first, calculate the initial position by the direct solution algorithm. The second, expand the distance equations using Taylor expansion at the initial position, then calculate corrective position with weighted least squares. Initial position adjusted with corrective position is the receiver position. The new algorithm significantly reduces computation under the premise of guarantee of positioning accuracy. The new algorithm has important engineering significance. Simulation resuits show the effectiveness of the new algorithm.