捷联惯导系统学习2.6(圆锥误差补偿多子样算法)

若圆锥运动的四元数更新方程为:
Q ( t m ) = Q ( T m − 1 ) 。 Q ( T ) Q(t_m)=Q(T_{m-1})。Q(T) Q(tm)=Q(Tm1)Q(T)
。 。 四元数乘法)
Q ( T ) Q(T) Q(T)四元数周期内变化量)
得到:( Ω \Omega Ω震动频率; θ = ∣ ϕ ∣ \theta=|\phi| θ=ϕ
Q ( T ) = Q ∗ ( t m − 1 ) Q ( T m ) = M Q ∗ ( t m − 1 ) Q ( t m ) Q(T)=Q^*(t_{m-1})Q(T_{m})=M_{Q^*(t_{m-1})}Q(t_m) Q(T)=Q(tm1)Q(Tm)=MQ(tm1)Q(tm)
= [ 1 − 2 ( s i n ( θ 2 ) s i n Ω T 2 ) 2 − s i n θ s i n Ω T 2 s i n Ω ( t m − T 2 ) s i n θ s i n Ω T 2 c o s Ω ( t m − T 2 ) − s i n 2 θ 2 s i n Ω T ] ( 推 导 略 ) = [ c o s θ 2 u ∗ s i n ( θ 2 ) ] =\left[\begin{matrix} 1-2(sin(\frac{\theta}{2})sin\frac{\Omega T}{2})^2 \\ -sin\theta sin\frac{\Omega T}{2}sin\Omega(t_m-\frac{T}{2})\\ sin\theta sin\frac{\Omega T}{2}cos\Omega(t_m-\frac{T}{2})\\ -sin^2\frac{\theta}{2}sin\Omega T \end{matrix}\right](推导略)=\left[\begin{matrix} cos\frac{\theta}{2}\\ u*sin(\frac{\theta}{2})\\ \end{matrix}\right] =12(sin(2θ)sin2ΩT)2sinθsin2ΩTsinΩ(tm2T)sinθsin2ΩTcosΩ(tm2T)sin22θsinΩT()=[cos2θusin(2θ)]
若:在 [ t m − 1 , t m ] [t_{m-1},tm] [tm1,tm]时间内的等效旋转矢量为 ϕ ( T ) \phi(T) ϕ(T); u = ϕ ( T ) θ u=\frac{\phi(T)}{\theta} u=θϕ(T)
得到 ϕ ( T ) θ ( t ) ∗ s i n ( θ ( t ) 2 ) = [ − s i n θ s i n Ω T 2 s i n Ω ( t m − T 2 ) s i n θ s i n Ω T 2 c o s Ω ( t m − T 2 ) − s i n 2 θ 2 s i n Ω T ] \frac{\phi(T)}{\theta(t)}*sin(\frac{\theta(t)}{2})=\left[\begin{matrix} -sin\theta sin\frac{\Omega T}{2}sin\Omega(t_m-\frac{T}{2})\\ sin\theta sin\frac{\Omega T}{2}cos\Omega(t_m-\frac{T}{2})\\ -sin^2\frac{\theta}{2}sin\Omega T \end{matrix}\right] θ(t)ϕ(T)sin(2θ(t))=sinθsin2ΩTsinΩ(tm2T)sinθsin2ΩTcosΩ(tm2T)sin22θsinΩT
左右两边取模值,得到
s i n Ω T 2 = s i n 2 θ s i n 2 Ω T 2 + s i n 4 θ 2 s i n 2 Ω T sin\frac{\Omega T}{2}=\sqrt{sin^2\theta sin^2 \frac{\Omega T}{2}+sin^4\frac{\theta}{2}sin^2 {\Omega T}} sin2ΩT=sin2θsin22ΩT+sin42θsin2ΩT
θ 和 Ω T \theta和\Omega T θΩT均为小量时
s i n Ω T 2 ≈ s i n 2 θ s i n 2 Ω T 2 ≈ θ Ω T 2 sin\frac{\Omega T}{2}\approx\sqrt{sin^2\theta sin^2 \frac{\Omega T}{2}}\approx\frac{\theta \Omega T}{2} sin2ΩTsin2θsin22ΩT 2θΩT
从而进一步的到: θ ( t ) = θ Ω T \theta(t)=\theta\Omega T θ(t)=θΩT

多子样补偿算法
当使用角增量代替旋转矢量进行姿态更新时会在z轴产生误差,这个误差会随时间不断积累,常使用多子样补偿算法,弥补这一算法(证略)
[ t m − 1 , t m ] [t_{m-1},t_{m}] [tm1,tm]内采样N次, h = T N h=\frac{T}{N} h=NT为采样间隔
Δ θ m i = ∫ t m − 1 + ( i − 1 ) h t m − 1 + i h w ( t ) d t \Delta \theta_{mi}=\int_{t_{m-1}+(i-1)h}^{t_{m-1}+ih}w(t)dt Δθmi=tm1+(i1)htm1+ihw(t)dt
= [ − 2 s i n θ s i n Ω T 2 s i n Ω ( t m − 1 + i h − h 2 ) s i n θ s i n Ω T 2 c o s Ω ( t m − 1 + i h − h 2 ) − s i n 2 θ 2 s i n Ω T ] =\left[\begin{matrix} -2sin\theta sin\frac{\Omega T}{2}sin\Omega(t_{m-1}+ih-\frac{h}{2})\\ sin\theta sin\frac{\Omega T}{2}cos\Omega(t_{m-1}+ih-\frac{h}{2})\\ -sin^2\frac{\theta}{2}sin\Omega T \end{matrix}\right] =2sinθsin2ΩTsinΩ(tm1+ih2h)sinθsin2ΩTcosΩ(tm1+ih2h)sin22θsinΩT
λ = Ω T \lambda=\Omega T λ=ΩT得到在 [ t m − 1 , t m ] [t_{m-1},t_{m}] [tm1,tm]内的总角增量为:
Δ θ m = ∫ t m − 1 t m w ( t ) d t = ∑ i = 1 N Δ θ m i \Delta\theta_m=\int_{t_{m-1}}^{t_m}w(t)dt=\sum_{i=1}^N\Delta\theta_{mi} Δθm=tm1tmw(t)dt=i=1NΔθmi
求解不同子样的角增量之间的叉积( θ 和 λ \theta和\lambda θλ均为小量)
Δ θ m i × Δ θ m j = [ 8 λ s i n 2 θ 2 s i n θ s i n λ 2 s i n ( i − j ) λ 2 s i n Ω ( t m − 1 − i + j − 1 2 ) h − 8 λ s i n 2 θ 2 s i n θ s i n λ 2 s i n ( i − j ) λ 2 c o s Ω ( t m − 1 − i + j − 1 2 ) h − 4 s i n 2 θ 2 s i n 2 λ 2 s i n ( i − j ) λ ] \Delta \theta_{mi}\times\Delta \theta_{mj}=\left[\begin{matrix} 8\lambda sin^2\frac{\theta}{2}sin\theta sin\frac{\lambda}{2}sin\frac{(i-j)\lambda}{2}sin\Omega(t_{m-1}-\frac{i+j-1}{2})h\\ -8\lambda sin^2\frac{\theta}{2}sin\theta sin\frac{\lambda}{2}sin\frac{(i-j)\lambda}{2}cos\Omega(t_{m-1}-\frac{i+j-1}{2})h\\ -4sin^2\frac{\theta}{2}sin^2\frac{\lambda}{2}sin(i-j)\lambda\\ \end{matrix}\right] Δθmi×Δθmj=8λsin22θsinθsin2λsin2(ij)λsinΩ(tm12i+j1)h8λsin22θsinθsin2λsin2(ij)λcosΩ(tm12i+j1)h4sin22θsin22λsin(ij)λ
θ 和 λ \theta和\lambda θλ均为小量
≈ [ ( i − j ) ( θ λ ) 3 2 s i n Ω ( t m − 1 − i + j − 1 2 ) h − ( i − j ) ( θ λ ) 3 2 c o s Ω ( t m − 1 − i + j − 1 2 ) h − 4 s i n 2 θ 2 s i n 2 λ 2 s i n ( i − j ) λ ] \approx \left[\begin{matrix} \frac{(i-j)(\theta\lambda)^3}{2}sin\Omega(t_{m-1}-\frac{i+j-1}{2})h\\ -\frac{(i-j)(\theta\lambda)^3}{2}cos\Omega(t_{m-1}-\frac{i+j-1}{2})h\\ -4sin^2\frac{\theta}{2}sin^2\frac{\lambda}{2}sin(i-j)\lambda\\ \end{matrix}\right] 2(ij)(θλ)3sinΩ(tm12i+j1)h2(ij)(θλ)3cosΩ(tm12i+j1)h4sin22θsin22λsin(ij)λ
定义圆锥误差补偿系数
δ θ ∧ ( T ) = ∑ j = 2 N ∑ i = 1 j − 1 k i j Δ θ m i × Δ θ m j = ∑ i = 1 N − 1 k N − 1 ∗ Δ θ m i × Δ θ m j \delta\theta^\wedge(T)=\sum_{j=2}^N\sum_{i=1}^{j-1}k_{ij}\Delta\theta_{mi}\times\Delta\theta_{mj}=\sum_{i=1}^{N-1}k^*_{N-1}\Delta\theta_{mi}\times\Delta\theta_{mj} δθ(T)=j=2Ni=1j1kijΔθmi×Δθmj=i=1N1kN1Δθmi×Δθmj

k N − 1 = k 1 ( N − 1 ) ∗ k_{N-1}=k^*_{1(N-1)} kN1=k1(N1)
k N − 2 = k 1 ( N − 1 ) ∗ + k 2 ( N ) ∗ k_{N-2}=k^*_{1(N-1)}+k^*_{2(N)} kN2=k1(N1)+k2(N)

k 2 = k 13 ∗ + k 24 ∗ + k 35 ∗ + . . . + k ( N − 2 ) ( N ) ∗ k_{2}=k^*_{13}+k^*_{24}+k^*_{35}+...+k^*_{(N-2)(N)} k2=k13+k24+k35+...+k(N2)(N)
k 1 = k 12 ∗ + k 23 ∗ + k 34 ∗ + . . . + k ( N − 1 ) ( N ) ∗ k_{1}=k^*_{12}+k^*_{23}+k^*_{34}+...+k^*_{(N-1)(N)} k1=k12+k23+k34+...+k(N1)(N)
因为x,y轴上的误差为 ( θ λ ) 3 (\theta\lambda)^3 (θλ)3量级,不会起时姿态累计漂移,所以只用考虑z轴上的分量,将z轴分量,用泰勒级数展开为:
δ θ ∧ ( T ) z = ( ϕ ( T ) − Δ θ m ) z = 2 s i n 2 θ 2 ( Ω T − s i n Ω T ) \delta\theta^\wedge(T)_z=(\phi(T)-\Delta\theta_m)_z=2sin^2\frac{\theta}{2}(\Omega T-sin\Omega T) δθ(T)z=(ϕ(T)Δθm)z=2sin22θ(ΩTsinΩT)
= 4 s i n 2 θ 2 ∑ i = 1 ∞ ( − 1 ) i + 1 c i λ 2 i + 1 ( c i = N 2 i + 1 2 ( 2 i + 1 ) ! ) =4sin^2\frac{\theta}{2}\sum_{i=1}^{\infty}(-1)^{i+1}c_i\lambda^{2i+1}(c_i=\frac{N^{2i+1}}{2(2i+1)!}) =4sin22θi=1(1)i+1ciλ2i+1(ci=2(2i+1)!N2i+1)
δ θ ∧ ( T ) z = ∑ j = 2 N ∑ i = 1 j − 1 k i j Δ θ m i × Δ θ m j = s i n 2 θ ∑ i = 1 ∞ ( − 1 ) i + 1 ∑ j = 1 N − 1 A i j k j λ 2 i + 1 \delta\theta^\wedge(T)_z=\sum_{j=2}^N\sum_{i=1}^{j-1}k_{ij}\Delta\theta_{mi}\times\Delta\theta_{mj}=sin^2\theta\sum_{i=1}^{\infty}(-1)^{i+1}\sum_{j=1}^{N-1}A_{ij}k_j\lambda^{2i+1} δθ(T)z=j=2Ni=1j1kijΔθmi×Δθmj=sin2θi=1(1)i+1j=1N1Aijkjλ2i+1
使 λ 2 i + 1 \lambda^{2i+1} λ2i+1对应系数相等,建立线性方程求解 K K K可以得到:
A K = C AK=C AK=C
其中:(i,j=1,2,3,…,N-1)
A = ( A i j ) ( N − 1 ) ( N − 1 ) = ( j + 1 ) 2 i + 1 + ( j + 1 ) 2 i − 1 − ( 2 j ) 2 i + 1 ( 2 i + 1 ) ! A=(A_{ij})_{(N-1)(N-1)}=\frac{(j+1)^{2i+1}+(j+1)^{2i-1}-(2j)^{2i+1}}{(2i+1)!} A=(Aij)(N1)(N1)=(2i+1)!(j+1)2i+1+(j+1)2i1(2j)2i+1
K = ( k j ) ( N − 1 ) × 1 K=(k_j)_{(N-1)\times1} K=(kj)(N1)×1
C = ( c i ) ( N − 1 ) × 1 = N 2 i + 1 2 ( 2 i + 1 ) ! C=(c_i)_{(N-1)\times1}=\frac{N^{2i+1}}{2(2i+1)!} C=(ci)(N1)×1=2(2i+1)!N2i+1
误差漂移系数为:(只要 θ 2 ( Ω T ) 2 N + 1 T < 1 。 h \frac{\theta^2(\Omega T)^{2N+1}}{T}<\frac{1^。}{h} Tθ2(ΩT)2N+1<h1就能满足多数惯性导航系统要求)
ξ n = ρ n θ 2 ( Ω T ) 2 N + 1 T ( N ≥ 1 ) \xi_n=\rho_n\frac{\theta^2(\Omega T)^{2N+1}}{T}(N\geq1) ξn=ρnTθ2(ΩT)2N+1(N1)

圆锥误差补偿系数和漂移误差分数解
Nk1k2k3k4k5ρn
1-1/12
22/31/960
327/209/121/204120
4214/10592/10554/1051/82575360
51375/504650/504525/504250/5041/82575360
615797/46207834/46207296/46204558/46202315/46201/82575360

EX:四子样子求解等效旋转矢量
ϕ ( T ) = Δ θ m + δ θ ∧ ( T ) = ∑ i = 1 4 Δ θ m i + ∑ i = 1 4 − 1 k 4 − 1 ∗ Δ θ m i × Δ θ m j \phi(T)=\Delta\theta_m+\delta\theta^\wedge(T)=\sum_{i=1}^4\Delta\theta_{mi}+\sum_{i=1}^{4-1}k^*_{4-1}\Delta\theta_{mi}\times\Delta\theta_{mj} ϕ(T)=Δθm+δθ(T)=i=14Δθmi+i=141k41Δθmi×Δθmj
( Δ θ m 1 + Δ θ m 2 + Δ θ m 3 + Δ θ m 4 ) + ( k 1 Δ θ m 1 + k 2 Δ θ m 2 + k 3 Δ θ m 3 ) × Δ θ m 4 (\Delta\theta_{m1}+\Delta\theta_{m2}+\Delta\theta_{m3}+\Delta\theta_{m4})+(k_1\Delta\theta_{m1}+k_2\Delta\theta_{m2}+k_3\Delta\theta_{m3})\times\Delta\theta_{m4} (Δθm1+Δθm2+Δθm3+Δθm4)+(k1Δθm1+k2Δθm2+k3Δθm3)×Δθm4

  • 2
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值