伪距单点定位算法原理以及利用最小二乘法计算实例
即该公式:建立下列代价函数满足最佳估值的条件为:即:可解得未知参数 X 的最佳估值由于每个可见卫星观测量的精度可能不一样,这时,需要对不同观测量赋予一个权重系数,称为加权。
目录
1.伪距单点定位原理
由伪距观测量建立的定位方程为:
每个伪距测量方程都是关于用户位置的非线性函数,不能通过直接解方程求得用户位置。
因此要对观测方程进行线性化:
b是接收机钟差,B是卫星钟差,左边是要求的4个参数:三个坐标改正数、一个接收机钟差
l:常数项、自由项,如下图所示:
将之前的式子改写为:
写成矩阵形式:
X是待定系数矢量,也就是我们要求的参数量,包括:接收机位置改正数和接收机钟差。
问:为什么要求接收机钟差?
答:只有求出接收机钟差,接收机位置改正数才能求出来,两者的求解不可分离。
在观测方程的求解中,需要估计接收机的位置和钟差,因为接收机的时钟差异会对测量结果产生影响。接收机对卫星信号的接收时间是基于接收机自身的时钟来计算的,如果接收机的时钟有偏差,那么计算得到的接收时间也会有误差。
通过估计接收机的钟差,可以对接收机接收时间进行校正,从而提高位置估计的准确性。
A为系数矩阵,方向余弦矩阵,可以根据已知参数求解出来。
L是自由项矢量,包含观测量(伪距观测值)、根据接收机概略位置和卫星位置计算的星站距离,以及卫星钟差、电离层误差、对流层误差等各种可以通过模型解算出来的误差,所有项合起来就可以组成自由项或者称为常量项。
V为残差向量,也就是测量噪声和其他未建模因素引起的误差。
显然只有当 n ≥ 4 时,方程才可能有解。下面根据观测到的可见卫星数分两种情况进行说明:
问:为什么当观测的可见卫星数 n=4 时,此时要忽略掉观测随机误差?
答:当观测卫星数较少时,这些随机误差会对位置估计的准确性产生较大的影响。因此,在观测卫星数较少时,通常会忽略掉这些随机误差,以避免对位置估计结果造成过大的不确定性。
2.最小二乘法介绍
即该公式:
建立下列代价函数
满足最佳估值的条件为:
即:
可解得未知参数 X 的最佳估值:
由于每个可见卫星观测量的精度可能不一样,这时,需要对不同观测量赋予一个权重系数,称为加权。
由下图可以得到观测值加权后未知参数 X 的最优估值为:
3.利用最小二乘法进行伪距单点定位的实例
下面通过一个例子,说明伪距定位算法及其解算步骤。
利用最小二乘法的定位解算可以分解为以下几个步骤:
(1)设置初始值
最简单、最理想的一种情况:
然而,如果接收机在此刻的前一段时间内尚未实现定位,那么此刻对接收机来说是首次定位。对于首次定位,钟差初始值一般可设置为 0,而接收机坐标初始值的估算可分为以下几种情况。
(2)准备数据
(3)非线性方程线性化
k-1是当前历元已完成的迭代次数
L又称为自由项或者常数项,由原始伪距观测值、(卫星钟差、电离层延迟、对流层延迟等)可通过模型计算出来的误差改正项、接收机概略位置与卫星空间位置之间的距离所组成。
A称为雅可比矩阵或者几何矩阵,只与各颗卫星相对于用户接收机的几何位置有关。
接收机初始概略位置是设置为0的,即xyz均等于0
接收机钟差初始值也设置为0
(4)求解线性方程
(5)更新非线性方程的解
问:钟差这里是怎么由钟差修正量(单位:m)转变为钟差(单位:s)的?
答:
光速 c 的值为299792458 米/秒(m/s)
钟差 = 钟差修正量 / 光速
(6)判断牛顿迭代的收敛
开放原子开发者工作坊旨在鼓励更多人参与开源活动,与志同道合的开发者们相互交流开发经验、分享开发心得、获取前沿技术趋势。工作坊有多种形式的开发者活动,如meetup、训练营等,主打技术交流,干货满满,真诚地邀请各位开发者共同参与!
更多推荐
所有评论(0)