【组合导航代码ECL】状态预测函数predictCovariance.m

主函数

function P  = PredictCovariance(deltaAngle, ...
    deltaVelocity, ...
    states,...
    P, ...  % Previous state covariance matrix
    dt, ... % IMU and prediction time step
    param) % tuning parameters

其中变化的角度值与速度值都是经过预测函数改正的

确定过程噪声Q

IMU 系统偏差的过程噪声

σ Δ A n g _ B i a s = P a r a ( σ _ A n g ) ∗ d t 2 \sigma_{\Delta Ang\_Bias}=Para(\sigma\_Ang)*{dt}^2 σΔAng_Bias=Para(σ_Ang)dt2
σ Δ V e l _ B i a s = P a r a ( σ _ V e l ) ∗ d t 2 \sigma_{\Delta Vel\_Bias}=Para(\sigma\_Vel)*{dt}^2 σΔVel_Bias=Para(σ_Vel)dt2
σ m a g N E D = P a r a ( m a g N E D ) ∗ d t \sigma_{magNED}=Para(magNED)*{dt} σmagNED=Para(magNED)dt
σ m a g X Y Z = P a r a ( m a g X Y Z ) ∗ d t \sigma_{magXYZ}=Para(magXYZ)*{dt} σmagXYZ=Para(magXYZ)dt
Q b i a s = z e r o s ( 1 , 10 ) , σ Δ A n g _ B i a s , σ Δ V e l _ B i a s , σ m a g N E D , σ m a g X Y Z , [ 0 , 0 ] Q_{bias}={zeros(1,10),\sigma_{\Delta Ang\_Bias},\sigma_{\Delta Vel\_Bias},\sigma_{magNED},\sigma_{magXYZ},[0,0]} Qbias=zeros(1,10),σΔAng_Bias,σΔVel_Bias,σmagNED,σmagXYZ,[0,0]

确定其他过程噪声

IMU 过程噪声 Δ a n g \Delta_{ang} Δang Δ v e l \Delta_{vel} Δvel

V a r Δ a n g = ( P a r a ( σ a n g R a t e ) ∗ d t ) 2 Var_{\Delta_{ang}}=(Para(\sigma_{angRate})*dt)^2 VarΔang=(Para(σangRate)dt)2
V a r Δ v e l = ( P a r a ( σ a c c e l ) ∗ d t ) 2 Var_{\Delta_{vel}}=(Para(\sigma_{accel})*dt)^2 VarΔvel=(Para(σaccel)dt)2

计算F状态转移矩阵

通过函数calcF24.m计算,需要传入:变化的速度值、变化的角度值、四元素、速度变化值的系统偏差值与角度变化值的系统偏差值

计算Q(除了IMU系统偏差过程噪声)

通过函数calcQ24.m计算,需要传入:变化的角度值协方差、变化的速度值协方差、四元素

计算 P k P_{k} Pk

P k − = F ∗ P k − 1 ∗ F T + Q P_{k}^-=F*P_{k-1}*F^T+Q Pk=FPk1FT+Q
再加上IMU系统偏差噪声
P K − = P k − + Q b i a s P_{K}^-=P_{k}^-+Q_{bias} PK=Pk+Qbias

强制P阵为对称阵以及协方差>0

小结

  1. 函数分开两部分求,系统偏差与其他状态量,系统偏差状态的状态转移矩阵为单位阵,而其他状态量不是,也许这个是分开求的原因?
  2. 函数的步骤为:1)通过参数设置中得到系统偏差的噪声值;2)通过参数设置得到速度变化值与角度变化值的协方差,进计算F,Q,通过上一历元的P得到P(K)

疑问

  1. IMU过程噪声magXYZ是否是指mag偏差的噪声
  2. IMU系统偏差中的各项误差为什么没有平方,标准差没有变成协方差啊
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值