原文中Global坐标系为:第0帧IMU坐标系旋转到与导航坐标系z轴重合时的坐标系。本文中的定义与其相差一个 R G h = R y R x R_G^h=R_y R_x RGh=RyRx
系统状态参量
引入GNSS后系统状态参量如下,其中
φ
\varphi
φ为导航坐标系
n
n
n系到
G
G
G系的航向角,此处所有参数均定义在Global坐标系下,即第0帧IMU坐标系:
G
X
=
[
G
p
,
G
R
,
G
v
,
G
b
a
,
G
b
g
,
G
g
,
d
t
r
,
d
t
r
˙
,
φ
]
^GX= [^Gp,^GR,^Gv,^Gb_a,^Gb_g,^Gg,d t_{r},\dot{d t_{r}},\varphi ]
GX=[Gp,GR,Gv,Gba,Gbg,Gg,dtr,dtr˙,φ]
GNSS提供的观测方程
- 伪距观测
伪距观测方程如下,其中 E E E为ECI坐标系 (地心惯性坐标系,不随地球旋转)
P ~ r , i s = ∣ ∣ E p r − E p s ∣ ∣ + c ( d t r − d t s ) + I r , i s + T r s + ε P (1) \tilde{P}_{r, i}^{s}=||^Ep_r-^Ep_s||+c\left(d t_{r}-d t_{s}\right)+I_{r, i}^{s}+T_{r}^{s}+\varepsilon_{P} \tag{1} P~r,is=∣∣Epr−Eps∣∣+c(dtr−dts)+Ir,is+Trs+εP(1)
因为:
E p r = R n e R G n ( G p + G l ) ^Ep_r=R_{n}^{e} R_{G}^{n} ({}^Gp+{}^Gl) Epr=RneRGn(Gp+Gl)
其中 G l {}^Gl Gl为杆臂; e e e为ECEF坐标系; E E E为ECI坐标系,定义为接收机接收到信号时的ECEF坐标系,则ECEF相对于 E E E系z轴以地球自转角速度 w E w_E wE旋转;由于信号传播时间 t f t_f tf的存在,得到的卫星坐标并不在 e e e系下,而在 e ′ e' e′坐标系,KaTeX parse error: Double superscript at position 16: ^Ep_s=R_{e'}^e ^̲{e'}p_s且 R e ′ e = R z ( − w E t f ) R_{e'}^e=R_z(-w_Et_f) Re′e=Rz(−wEtf); R n e R_{n}^{e} Rne由第0帧IMU的经纬度计算; R G n R_{G}^{n} RGn由初始化确定并与 φ \varphi φ角相关
观测噪声建模为零均值高斯分布 ε P ∼ N ( 0 , δ P ) \varepsilon_{P}\sim N(0,\delta_{P}) εP∼N(0,δP),其方差为:
δ P = n s × n p r s i n 2 θ e l \delta_{P}=\frac{n_s\times n_{pr}}{sin^{2}\theta_{el} } δP=sin2θelns×npr
其中 θ e l \theta_{el} θel为从接收机查看的卫星高度角; n s n_s ns为广播卫星空间精密指数,由广播星历给出; n p r n_{pr} npr为接收机报告的码伪距测量噪声指数
分析易知,该观测对 G p 、 d t r 、 φ ^Gp、d t_{r}、\varphi Gp、dtr、φ角可观 - 多普勒观测
多普勒观测方程如下,其中 E E E为ECI坐标系 (地心惯性坐标系,不随地球旋转):
D ~ r , i s = E κ r s T ( E v s − E v r ) + c ( d t r ˙ − d t s ˙ ) + ε D (2) \tilde{D}_{r, i}^{s}=^E\kappa_{r}^{sT} (^Ev_s-^Ev_r)+c\left(\dot{d t_{r}}-\dot{d t_{s}}\right)+\varepsilon_{D} \tag{2} D~r,is=EκrsT(Evs−Evr)+c(dtr˙−dts˙)+εD(2)
因为:
E v r = R n e R G n G v ^Ev_r=R_{n}^{e}R_{G}^{n}{}^Gv Evr=RneRGnGv E v s = R e ′ e e ′ v s ^Ev_s=R_{e'}^e{}^{e'}v_s Evs=Re′ee′vs
观测噪声建模为零均值高斯分布 ε D ∼ N ( 0 , δ D ) \varepsilon_{D}\sim N(0,\delta_{D}) εD∼N(0,δD),其中 n d p n_{dp} ndp为接收机报告的测量噪声指数
δ P = n s × n d p s i n 2 θ e l \delta_{P}=\frac{n_s\times n_{dp}}{sin^{2}\theta_{el} } δP=sin2θelns×ndp
分析易知,该观测对 G p 、 G v 、 d t r ˙ 、 φ ^Gp、^Gv、\dot{d t_{r}}、\varphi Gp、Gv、dtr˙、φ角可观 - 接收机零偏观测
d t r t k = d t r t k − 1 + ∫ t k − 1 t k d t r ˙ d t_{r}^{t_{k}}=d t_{r}^{t_{k-1}}+\int_{t_{k-1}}^{t_k}\dot{d t_{r}} dtrtk=dtrtk−1+∫tk−1tkdtr˙
其中 t k t_k tk表示第 k k k次观测的时间, τ t k − 1 t k \tau_{t_{k-1}}^{t_k} τtk−1tk为第 k − 1 k-1 k−1次观测与第 k k k次观测之间的时间间隔
d t r t k = d t r t k − 1 + d ˙ t r t k − 1 τ t k − 1 t k (3) d t_{r}^{t_{k}}=d t_{r}^{t_{k-1}}+\dot{d} t_{r}^{t_{k-1}} \tau_{t_{k-1}}^{t_k} \tag{3} dtrtk=dtrtk−1+d˙trtk−1τtk−1tk(3)
低成本接收机的时钟通常为TCXO,则零漂常被描述为一个随机游走过程,故有
d ˙ t r t k = d ˙ t r t k − 1 (4) \dot{d} t_{r}^{t_{k}}=\dot{d} t_{r}^{t_{k-1}} \tag{4} d˙trtk=d˙trtk−1(4)
相应的方差 δ d t , k \delta_{dt,k} δdt,k由零漂稳定性决定
GNSS初始化
初始化的过程主要是要求解 R G n R_{G}^{n} RGn,具体可以分解为 R G n = R z R y R x R_{G}^{n}=R_z R_y R_x RGn=RzRyRx分别表示航向、俯仰、横滚角对应的旋转矩阵
- 依据里程计估出的重力加速度
G
g
^Gg
Gg及当地重力加速度
n
g
=
[
0
,
0
,
−
9.81
]
^ng=[0,0,-9.81]
ng=[0,0,−9.81]构建约束求得旋转矩阵
R
G
n
R_G^n
RGn:
( R G n ) T n g = G g (R_G^n)^T {}^ng=^Gg (RGn)Tng=Gg
因为 n g ^ng ng与 z z z轴重合,绕 n n n系 z z z轴转动的方位角不可观。实际求得的旋转矩阵为 R G h = R y R x R_G^h=R_y R_x RGh=RyRx,其中 h h h为水平坐标系,有 R G n = R h n R G h R_G^n=R_h^n R_G^h RGn=RhnRGh,其中 R h n R_h^n Rhn只与方位角 φ \varphi φ相关
R h n = ( − s i n ϕ c o s ϕ 0 − c o s ϕ s i n ϕ 0 0 0 0 ) R_h^n=\begin{pmatrix}-sin\phi&cos\phi&0\\-cos\phi&sin\phi&0\\0&0&0\\\end{pmatrix} Rhn= −sinϕ−cosϕ0cosϕsinϕ0000 - 使用SPP单点定位获取第0帧IMU的粗略位置 e p 0 ^ep^0 ep0及接收机钟差 d t r 0 d t_{r}^0 dtr0
- 利用上节中的2.多普勒观测约束优化 φ \varphi φ角及钟差漂移 d t r ˙ 0 \dot{d t_{r}}^0 dtr˙0
- 使用上节中的1.伪距观测及3.接收机零偏观测优化位置 e p 0 ^ep^0 ep0及接收机钟差 d t r 0 d t_{r}^0 dtr0