传感数据之误差-白噪声

误差的种类

系统误差和随机误差是误差的两个种类。系统误差是可以确定变化规律或引起原因的误差,通常意义上的误差补偿就是针对此种误差。随机误差是尚不能确定变化规律或艰难确定引起原因的误差。误差广泛的存在于各种传感数据中,伴随测量真值存在。

频谱分析法

高斯过程,

系统误差

随机误差

白噪声

白噪声是能量密度在频谱上均匀分布的误差种类。其平均值为零,偏移大小为随即值。二维位置白噪声生成代码如下:
生成数字的浮点型舍弃小数部分、取整。从而生成均值为零噪声,噪声点空间分布较为均衡。
在这里插入图片描述

噪声生成matlab代码

%% white_noise
clear all;
close all;
clc;

%% init_noise
set_num = 6000;
set_cyc = 8;
noiseT = zeros(set_num,1);

%% white_main_function
noise_S=6.5536;
noise_W=2.053;
noise_V=1.3849;
noise_T=0.0;
noise_R=0.0;

for ii_tempI = 1:set_num
    for i_temp = 1:set_cyc
        noise_R = noise_W*noise_R + noise_V;
        noise_M = floor(noise_R/noise_S);
        noise_R = noise_R - noise_M*noise_S;
        noise_T = noise_T + noise_R/noise_S;
    end
    move_P = noise_S/noise_W;
    noiseT(ii_tempI,1)=noise_R - move_P;
end

噪声生成C代码

class CWhiteNoise
{
  public:
    CWhiteNoise() : noise_S(6.5536), noise_W(6.5536), noise_V(1.3849), noise_T(0.0), noise_R(0.0),noise_rate(1.0) {}

    double whiteNoise()
    {
        for (int i_temp = 1; i_temp < set_cyc; i_temp)
        {
            noise_R        = noise_W * noise_R + noise_V;
            double noise_M = floor(noise_R / noise_S);
            noise_R        = noise_R - noise_M * noise_S;
            noise_T        = noise_T + noise_R / noise_S;
        }
        double move_P = noise_S / noise_W;
        return noise_R - move_P;
    }

    void setNoseRate(double f_rate){noise_rate = f_rate;};

  private:
    //>! init_noise
    int set_cyc = 8;

    //>! white_noise_param
    double noise_S;
    double noise_W;
    double noise_V;
    double noise_T;
    double noise_R;
    double noise_rate;
};

噪声生成python代码

import matplotlib.pyplot as plt
import numpy as np
import math
## white_noise

## init_noise
set_num = 6000
set_cyc = 8
noiseT = np.mat(np.arange(set_num).reshape(set_num,1).astype(float))

## white_main_function
noise_S=6.5536
noise_W=2.053
noise_V=1.3849
noise_T=0.0
noise_R=0.0

for ii_tempI in range(1,set_num):
    for i_temp in range(1,set_cyc): 
        noise_R = noise_W*noise_R + noise_V
        noise_M = math.floor(noise_R/noise_S)
        noise_R = noise_R - noise_M*noise_S
        noise_T = noise_T + noise_R/noise_S
    move_P = noise_S/noise_W
    noiseT[ii_tempI,1]=noise_R - move_P

plt.plot(noiseT)
plt.xlabel('err_ori(deg)')
plt.ylabel('err_later(dm)')   
plt.show()

IMU误差分析

IMU系统误差

一般构建惯性测量系统误差模型时,考虑零偏、刻度因子和正交性。
1 零偏
2 刻度因子
3 正交性
4 温漂
5 连带漂移(陀螺和加表相互影响)

IMU随机误差

随机误差构建方程时,考虑零偏不稳定性+随机游走。
1 零偏不稳定性
2 随机游走

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值