zoukankan      html  css  js  c++  java
  • 陀螺仪误差分析、处理与选型

    imu误差的效果

    陀螺仪的偏移对于速度的影响是二次的,对于位置的影响是三次的。
    对于收敛的并且设计很好的滤波器,估计和去除imu的误差,能够提高姿态的精度和长期稳定性

    常见误差项:

    首先介绍几个常见的概念:
    1.重复性
    假设所有的条件一样,对于相同的输入,传感器输出相同的值的能力(对于每次启动都相同)。陀螺仪的零偏不具有重复性。
    2.稳定性
    对于同样的输入,在同一次启动,输出值都是相同的。
    3.漂移
    输出随着时间的变化(零漂是输入为0的时候的输出)

    确定性误差

    • 传感器非正交性(安装误差):
      三轴加速度计和陀螺仪的三个轴不是完全的正交的,例如对于加速度计,理想情况下其中一个轴测量重力,其他两个轴不应该有输出。传感器不正交会出现在安装和封装的时候。生产和标定能够一定程度的解决这个问题,在系统运行的时候持续的估计和矫正也是一种解决方法。
    • 尺度误差(scale)

    随机噪声

    《Notes on Stochastic Errors of Low Cost MEMS Inertial Units》
    陀螺仪的噪声分析不适用arma模型,应该使用allan variance。
    因为arma模型假设所有的误差都是完全客观的,然而在实际中:传感器的输出受到噪声的影响,而且是不同的独立随机过程的和;目前的arma模型能够解决噪声的影响,但是不能够解决独立随机过程的系数问题。误差中最主要的是:(1)零偏、温漂;(2)角速率噪声,也叫作随机游走

    所有噪声可以建模为:
    egin{equation}
    y(t) = u(t) +e(t)+b(T) + N(a,omega, T,t)
    end{equation}

    allan variance 建模

    • (b(T))表示温漂,一般不考虑,可以通过温度补偿来做

    • (N(a,omega, T,t))表示加速度,角速度,温度和时间等总的因素造成的影响((G) 的依赖性(加速度影响),对于mems陀螺仪来说,有可能受到重力的影响,可以通过建模并采用一定的方法去除这个影响)

    • (e(t)=ARW(t)+F(t)+Q(t)+S(t))表示随机噪声

    陀螺仪的误差分类

    a。量化噪声Q(t)(Quantization Noise)
    AD采样导致的噪声,量化噪声具有很宽的带宽,属于高频噪声,可以用低通滤波器处理或通过导航的积分环节去除,对精度的影响不大;
    量化噪声的分辨率为(Delta)(和AD的位数有关系),采样频率为(f=1/ au)(手册中会介绍采样的频率),( au)为采样时间,则量化噪声的功率谱密度为(S_{Delta}(f)= au_0Q^2),Allan方差为(sigma_{QN}^{2}( au)=frac{3Q^2}{ au^2})
    量化噪声属于高频噪声,在实际的应用中可进行低通滤波处理或大部分被导航的积分环节滤除。

    b。角度随机游走(ARW(t))(Angular Random Walk)
    高斯白噪声的影响,需要区别角速率输出还是角增量输出,mpu6050是角速度输出。
    角度随机游走的功率谱密度为(S_{Omega}(f)=N^2),Allan方差为(sigma_{ARW}^{2}( au)=frac{N^2}{ au})
    一般陀螺仪内部会有低通滤波器。白噪声功率谱密度的等效带宽,叫作陀螺仪的带宽;(惯性仪器,157页))通过高频采样和低通滤波能够降低mems陀螺仪的角度随机游走噪声;

    从另外一个角度分析:
    假设每次测量的角速度受到白噪声的影响,即(delta heta_k = delta heta + N_k * au),其中(N_k)为独立同分布的零均值白噪声,标准差(sigma),则经过时间(ncdot au)之后,误差为

    [e= au sum_{i=1}^{n}N_i ]

    从而(e)的数学特征为(E(e)=0)(Var(e)=delta t^2 n Var(N)=delta t cdot t cdot sigma^2)
    所以(sigma(e)=sigma cdot sqrt{delta tcdot t})
    因此,在手册中一般将上面的噪声常时间的积分的标准差记做

    [ARW=sigma_ heta(1) ]

    单位为({ }^circ/sqrt{h})

    c。零偏不稳定性(F(t))(Bias Instability) ,也叫作闪变噪声(Flicker Noise)
    准确的来说,并不是只有零偏导致偏移,零偏是没有运动时平均输出。零偏不稳定性即零偏会随着时间缓慢的变化。这是由于内部电磁的善变噪声和外部影响导致的,而且每次启动之初的零偏是不相同的。
    零偏不稳定性的功率谱为(S_{Omega}(f)=frac{B^2}{2pi f}),Allan方差为(sigma_{BI}^{2}( au)=frac{4B^2}{9})
    零偏的不稳定性描述一段时间之后,MEMS的零偏的变化情况。零偏稳定性通常定义为(1sigma)值,单位为({ }^circ/sqrt{h})。举例来说,假设当前时刻的零偏是已知的(B_t),经过100s后,零偏的均值为(B_t),标准差为({}0.01{}^circ/sqrt{h})。实际上,零漂并不是一个完全的随机游走,它的范围是有限的。零漂对角度的影响是线性的。

    d。速率斜坡(Rate Ramp)
    陀螺的角速率输出随着时间缓慢变化,通常由系统误差引起,比如环境温度的缓慢变化,可以通过严格的环境控制或引入补偿来降低此类误差。这个不应该存在,而且可以通过一定的措施去除掉。貌似就是b(T)温漂
    温度补偿和温度闭环两种方法比较:温度补偿很难做,而且效果不好,一般使用温度闭环;

    e。指数相关噪声(Exponential Correlation Noise)和正弦噪声(S(t))(Sinusoidal Noise)
    正弦噪声:由于mems单元在特定频率工作,所以一般受到正弦噪声的污染;

    从算法上需要解决的:(1)角度随机游走(2)零偏不稳定性
    图的来源: An introduction to inertial navigation

    陀螺仪选型相关参数

    陀螺仪选型需要主要两个主要的参数,一个是角度随机游走,另外一个是零偏不稳定性。
    陀螺仪手册说明:
    (1)Initial Zero Rate Output Tolerance: +/-40 °/s
    当陀螺仪静止的时候,陀螺会给出在(-{40}^circ/s)(+{40}^circ/s)之间的一个输出值,也就是初始的零漂值,值得注意的是每次启动的零漂值是不相同的。
    (2)ZRO Variation Over Temperature
    陀螺的零漂对于温度的敏感性
    (3)Power-Supply Sensitivity
    电磁的正弦信号的影响对于陀螺零偏的影响
    (4)Linear Acceleration Sensitivity
    线性加速度对于陀螺角速度的影响
    (5)RMS噪声
    多次采集的数据的均方根误差,相关的频率是低通滤波的频率,大小和采集的频率也有关系
    (6)Rate Noise Spectral Density
    速率噪声密度谱,感觉是角度随机游走相关的参数

    减少噪声的方法

    根据前面的噪声功率谱公式,可以显然的得到,为了减少噪声,可以进行过采样。此外,由于陀螺仪受到角度随机游走的影响,而角度随机游走可以看成是独立、同分布且不相关的,所以可以使用均值滤波。

    mems gyro实验相关的结果

    (1)不需要考虑地球自转;因为地球自转是7.27e-5 rad/d每秒,已经淹没在噪声中。
    imu水平:3分钟静止偏了70度左右;

  • 相关阅读:
    一个总成本花费100W的失败项目的小小反省
    从绝望中寻找希望
    一个合格程序员该做的事情——你做好了吗?
    Go to 北京!
    深入浅出Oracle分析函数
    最适合web开发人员使用的速查表
    采用axis2c进行webservice发布的流程4在生成的代码中添加事务处理逻辑
    采用axis2c进行webservice发布的流程1
    rhel6.0及centos6.0 忘记root密码解决办法
    采用axis2c进行webservice发布的流程3通过wsdl文件,自动生成C的服务端代码
  • 原文地址:https://www.cnblogs.com/jian-li/p/5618464.html
Copyright © 2011-2022 走看看