捷联惯导系统学习2.7(多项式条件下的等效旋转矢量精确求解)

在使用角增量多样子式求解等效旋转时,原理是使用Bortz方程2阶近似性得到的(忽略高阶项),导致原理上不可避免的会差生误差,使用Bortz方程给出基于多项时迭代的等效旋转矢量,可以避免原理性近似误差。
角运动的多项式描述:
假设:角速度 w ( t ) w(t) w(t)
w ( t ) = W [ t N − 1 t N − 2 . . . 1 ] w(t)=W\left[\begin{matrix} t^{N-1}\\ t^{N-2}\\ ...\\ 1\\ \end{matrix}\right] w(t)=WtN1tN2...1
W = [ W x W y W z ] = [ w n − 1 w n − 2 w n − 3 . . . w 0 ] = [ w n − 1 , x w n − 2 , x w n − 3 , x . . . w 0 , x w n − 1 , y w n − 2 , y w n − 3 , y . . . w 0 , y w n − 1 , z w n − 2 , z w n − 3 , z . . . w 0 , z ] W=\left[\begin{matrix} W_x\\W_y\\W_z \end{matrix}\right]=\left[\begin{matrix} w_{n-1}&w_{n-2}&w_{n-3}&...&w_{0}\\ \end{matrix}\right]=\left[\begin{matrix} w_{n-1,x}&w_{n-2,x}&w_{n-3,x}&...&w_{0,x}\\ w_{n-1,y}&w_{n-2,y}&w_{n-3,y}&...&w_{0,y}\\ w_{n-1,z}&w_{n-2,z}&w_{n-3,z}&...&w_{0,z}\\ \end{matrix}\right] W=WxWyWz=[wn1wn2wn3...w0]=wn1,xwn1,ywn1,zwn2,xwn2,ywn2,zwn3,xwn3,ywn3,z.........w0,xw0,yw0,z
假设:陀螺仪在时间段 [ 0 , T ] [0,T] [0,T]时间内采样N次,分别计为 θ i ( i = 1 , 2 , . . . , N ) \theta_i(i=1,2,...,N) θi(i=1,2,...,N)
积分可得:
Δ θ j = ∫ t j − 1 t j w ( t ) d t = t j N − t j − 1 N N w N − 1 + t j N − 1 − t j − 1 N − 1 N − 1 w N − 2 + . . . + ( t j − t j − 1 ) w 0 \Delta\theta_j=\int_{t_{j-1}}^{tj}w(t)dt=\frac{t_{j}^N-t_{j-1}^N}{N}w_{N-1}+\frac{t_{j}^{N-1}-t_{j-1}^{N-1}}{N-1}w_{N-2}+...+(t_j-t_{j-1})w_0 Δθj=tj1tjw(t)dt=NtjNtj1NwN1+N1tjN1tj1N1wN2+...+(tjtj1)w0

令:
Θ = [ Δ θ 1 Δ θ 2 . . . Δ θ N ] \Theta=\left[\begin{matrix} \Delta\theta_1&\Delta\theta_2&...&\Delta\theta_N\\ \end{matrix}\right] Θ=[Δθ1Δθ2...ΔθN]
Γ = [ t 1 N − t 0 N N t 2 N − t 1 N N . . . t N N − t N − 1 N N t 1 N − t 0 N N − 1 t 2 N − t 1 N N − 1 . . . t N N − t N − 1 N N − 1 . . . . . . . . . . . . t 1 − t 0 t 2 − t 1 . . . t N − t N − 1 ] \Gamma=\left[\begin{matrix} \frac{t_{1}^N-t_{0}^N}{N}&\frac{t_{2}^N-t_{1}^N}{N}&...&\frac{t_{N}^N-t_{N-1}^N}{N}&\\ \frac{t_{1}^N-t_{0}^N}{N-1}&\frac{t_{2}^N-t_{1}^N}{N-1}&...&\frac{t_{N}^N-t_{N-1}^N}{N-1}&\\ ...&...&...&...\\ t_1-t_0&t_2-t_1&...&t_N-t_{N-1}\\ \end{matrix}\right] Γ=Nt1Nt0NN1t1Nt0N...t1t0Nt2Nt1NN1t2Nt1N...t2t1............NtNNtN1NN1tNNtN1N...tNtN1
可以的得到:
Θ = W Γ \Theta=W\Gamma Θ=WΓ
W = Θ Γ − 1 W=\Theta\Gamma^{-1} W=ΘΓ1
等效旋转矢量的迭代求解:
ϕ j ( i + 1 ) = [ U j ′ ′ 0 ] ⊙ [ . . . 1 3 1 2 1 0 ] ( j = x , y , z ; ) \phi_j^{(i+1)}=\left[\begin{matrix} U''_j&0\\ \end{matrix}\right]\odot \left[\begin{matrix} ...&\frac{1}{3}&\frac{1}{2}&1&0\\ \end{matrix}\right](j=x,y,z;) ϕj(i+1)=[Uj0][...312110](j=x,y,z;)
⊙ \odot 表示两个相同阶次的多项式系数向量,之间的同幂次系数分量相乘结果
推导:
已知: ϕ ˙ = w + 1 2 ϕ × w + ( 1 12 + θ 2 720 + θ 4 30240 + . . . ) ( ϕ × ) 2 w \dot \phi=w+\frac{1}{2}\phi\times w+(\frac{1}{12}+\frac{\theta^2}{720}+\frac{\theta^4}{30240}+...)(\phi\times)^2 w ϕ˙=w+21ϕ×w+(121+720θ2+30240θ4+...)(ϕ×)2w
在[0,t]时间内对两式左右两边积分
ϕ − ϕ ( 0 ) = ∫ 0 t w + 1 2 ϕ × w + ( 1 12 + θ 2 720 + θ 4 30240 + . . . ) ( ϕ × ) 2 w d t \phi-\phi(0)=\int_0^tw+\frac{1}{2}\phi\times w+(\frac{1}{12}+\frac{\theta^2}{720}+\frac{\theta^4}{30240}+...)(\phi\times)^2 wdt ϕϕ(0)=0tw+21ϕ×w+(121+720θ2+30240θ4+...)(ϕ×)2wdt
ϕ ( 0 ) = 0 \phi(0)=0 ϕ(0)=0得到第i次迭代的后旋转矢量
ϕ ( i ) = [ ϕ x ( i ) ϕ y ( i ) ϕ z ( i ) ] [ . . . t 2 t 1 ] = [ . . . ϕ 2 , x ( i ) ϕ 1 , x ( i ) ϕ 0 , x ( i ) . . . ϕ 2 , y ( i ) ϕ 1 , y ( i ) ϕ 0 , y ( i ) . . . ϕ 2 , z ( i ) ϕ 1 , z ( i ) ϕ 0 , z ( i ) ] \phi^{(i)}=\left[\begin{matrix} \phi_x^{(i)}\\\phi_y^{(i)}\\\phi_z^{(i)}\\ \end{matrix}\right]\left[\begin{matrix} ...\\t^2\\t\\1 \end{matrix}\right]=\left[\begin{matrix} ...&\phi_{2,x}^{(i)}&\phi_{1,x}^{(i)}&\phi_{0,x}^{(i)}\\ ...&\phi_{2,y}^{(i)}&\phi_{1,y}^{(i)}&\phi_{0,y}^{(i)}\\ ...&\phi_{2,z}^{(i)}&\phi_{1,z}^{(i)}&\phi_{0,z}^{(i)}\\ \end{matrix}\right] ϕ(i)=ϕx(i)ϕy(i)ϕz(i)...t2t1=.........ϕ2,x(i)ϕ2,y(i)ϕ2,z(i)ϕ1,x(i)ϕ1,y(i)ϕ1,z(i)ϕ0,x(i)ϕ0,y(i)ϕ0,z(i)
W = Θ Γ − 1 W=\Theta\Gamma^{-1} W=ΘΓ1带入积分求得递推公式为:
ϕ i + 1 = ∫ 0 T [ W x W y W z ] [ t N − 1 t N − 2 . . . 1 ] + 1 2 [ U x U y U z ] [ t N − 1 t N − 2 . . . 1 ] + [ θ ′ ∗ U x ′ θ ′ ∗ U y ′ θ ′ ∗ U z ′ ] [ t N − 1 t N − 2 . . . 1 ] \phi^{i+1}=\int_0^T\left[\begin{matrix} W_x\\W_y\\W_z \end{matrix}\right]\left[\begin{matrix} t^{N-1}\\ t^{N-2}\\ ...\\ 1\\ \end{matrix}\right]+ \frac{1}{2}\left[\begin{matrix} U_x\\U_y\\U_z \end{matrix}\right]\left[\begin{matrix} t^{N-1}\\ t^{N-2}\\ ...\\ 1\\ \end{matrix}\right]+\left[\begin{matrix} \theta'*U_x'\\\theta'*U_y'\\\theta'*U_z' \end{matrix}\right]\left[\begin{matrix} t^{N-1}\\ t^{N-2}\\ ...\\ 1\\ \end{matrix}\right] ϕi+1=0TWxWyWztN1tN2...1+21UxUyUztN1tN2...1+θUxθUyθUztN1tN2...1
其中:
θ ′ = [ 1 12 ( θ ( i ) ) 2 720 ( θ ( i ) ) 4 30140 ( θ ( i ) ) 6 1209600 . . . ] \theta'=\left[\begin{matrix} \frac{1}{12}&\frac{(\theta^{(i)})^2}{720}&\frac{(\theta^{(i)})^4}{30140}&\frac{(\theta^{(i)})^6}{1209600}&...\\ \end{matrix}\right] θ=[121720(θ(i))230140(θ(i))41209600(θ(i))6...]
[ U x U y U z ] = [ ϕ y ( i ) ∗ W z − ϕ z ( i ) W y − ϕ x ( i ) ∗ W z + ϕ z ( i ) W x ϕ x ( i ) ∗ W y − ϕ y ( i ) W x ] \left[\begin{matrix} U_x\\ U_y\\ U_z\\ \end{matrix}\right]=\left[\begin{matrix} \phi_y^{(i)}*W_z-\phi_z^{(i)}W_y\\ -\phi_x^{(i)}*W_z+\phi_z^{(i)}W_x\\ \phi_x^{(i)}*W_y-\phi_y^{(i)}W_x\\ \end{matrix}\right] UxUyUz=ϕy(i)Wzϕz(i)Wyϕx(i)Wz+ϕz(i)Wxϕx(i)Wyϕy(i)Wx
[ U x ′ U y ′ U z ′ ] = [ ϕ y ( i ) ∗ U z − ϕ z ( i ) U y − ϕ x ( i ) ∗ U z + ϕ z ( i ) U x ϕ x ( i ) ∗ U y − ϕ y ( i ) U x ] \left[\begin{matrix} U_x'\\ U_y'\\ U_z'\\ \end{matrix}\right]=\left[\begin{matrix} \phi_y^{(i)}*U_z-\phi_z^{(i)}U_y\\ -\phi_x^{(i)}*U_z+\phi_z^{(i)}U_x\\ \phi_x^{(i)}*U_y-\phi_y^{(i)}U_x\\ \end{matrix}\right] UxUyUz=ϕy(i)Uzϕz(i)Uyϕx(i)Uz+ϕz(i)Uxϕx(i)Uyϕy(i)Ux
实际使用时需要对无穷级数,进行有限次处理:
w w w一般零次多项式不为0,当迭代次数 i > 0 i>0 i>0时, ϕ ( i ) \phi^{(i)} ϕ(i)不为0的最低次项为1;
如果存在不可交换误差, ( ϕ ( i ) × ) w (\phi^{(i)}\times) w (ϕ(i)×)w中最低幂次不为0应当为2;
如果存在不可交换误差, ( ϕ ( i ) × ) 2 w (\phi^{(i)}\times)^2 w (ϕ(i)×)2w中最低幂次不为0应当为3;
( ϕ ( i ) ) k ( ϕ ( i ) × ) 2 w (\phi^{(i)})^k(\phi^{(i)}\times)^2 w (ϕ(i))k(ϕ(i)×)2w中最低幂次不为0应当为k+3(k=0,2,4,6,…)
若忽略等效旋转矢量中,与 θ \theta θ有关不高于 k k k次项,等效旋转矢量只有 k + 3 k+3 k+3的精度,精度高于多子样法

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值