课题学习(十九)----Allan方差:陀螺仪噪声分析

一、介绍

  Allan方差是一种分析时域数据序列的方法,用于测量振荡器的频率稳定性。该方法还可用于确定系统中作为平均时间函数的本征噪声。该方法易于计算和理解,是目前最流行的识别和量化惯性传感器数据中存在的不同噪声项的方法之一。该方法的结果与适用于惯性传感器数据的五个基本噪声项有关。这些是量化噪声、角度随机游走、偏置不稳定性、速率随机游走和速率斜坡。
  时域信号Ω(𝑡)的Allan方差分析是计算其根Allan方差或Allan偏差作为不同平均次数的函数,然后分析Allan偏差曲线的特征区域和对数曲线,以识别不同的噪声模式。

二、建立用于陀螺仪噪声识别的Allan偏差图

  下面描述了创建Allan偏差图所需遵循的步骤。本文采用重叠Allan方差法计算Allan方差并生成Allan偏差图进行噪声分析。
  步骤如下:

  1. 使用实验装置获取陀螺仪输出的时间序列Ω(𝑡)(保持陀螺仪静态)。设样本个数为N,采样周期为 τ 0 τ_0 τ0
  2. 设置平均时间为: τ = m τ 0 τ=mτ_0 τ=mτ0,m为平均因子。𝑚的值可以任意选择,并且保证𝑚<(N- 1)/2。
  3. 将信号的时间序列(即陀螺输出数据随时间的序列)划分为时间长度为 τ = m τ 0 τ=mτ_0 τ=mτ0的有限集合。
    在这种重叠Allan方差方法中,两个连续数据集合之间的时间跨度始终等于样本周期𝜏0。这种重叠方法利用平均时间来形成所有可能重叠的样本集合,最大限度地利用了数据集。如下图所示。
    在这里插入图片描述
    如上图所示为平均因子𝑚= 3的重叠方法的样本集合。两个相邻集合具有重叠的样本。每个集合关联的持续时间为3个。每个集合之间通过采样周期为𝜏0 (Stride)隔开。
  4. 一旦集合形成,就可以用两种方法计算Allan方差(通过重叠法):
    ①使用输出速率样本的平均值,见第2.1节
    ②输出角θ对应于每个陀螺速率样本,见第2.2节
  5. 最后,计算该特定值的Allan偏差值,然后对多个值重复上述步骤得到Allan偏差图,见第2.3节。

2.1 使用输出速率样本的平均值计算Allan方差

  Allan方差可以根据每个数据集上输出速率样本的平均值来计算。
  1. 在 K τ 0 Kτ_0 Kτ0 K τ 0 + τ Kτ_0+τ Kτ0+τ之间对每个数据集的输出速率样本取平均值。
在这里插入图片描述
  同样,在2.2节“使用输出角计算Allan方差”中会计算了θ的值,使用输出角计算平均输出速率 Ω ˉ K ( τ ) \bar \Omega_K(τ) ΩˉK(τ。在 K τ 0 Kτ_0 Kτ0 K τ 0 + τ Kτ_0+τ Kτ0+τ次之间,以输出角 θ K \theta_Κ θK表示的平均产出率为:
在这里插入图片描述
  例如: Ω ˉ 2 ( τ ) \bar \Omega_2(τ) Ωˉ2(τ)和假设𝑚= 3表示平均陀螺的输出之间的集群乘以2𝜏0和2𝜏0+3𝜏0=5𝜏0。这就等于:
在这里插入图片描述
  通过上面三式,对一个特定的值计算出Ω的所有可能值(在每个数据集上)。由于在这种方法中有𝑚可能形成的数据集,因此计算Ω的值。
  Ω的所有可能值(每个簇上)都是已知的,Allan方差可以计算如下:
在这里插入图片描述
  这是艾伦方差的定义。 δ 2 ( τ ) \delta^2(τ) δ2(τ)表示Allan方差是的函数,< >为集合平均值。将上式展开,得到:
在这里插入图片描述
  这个方程表示陀螺仪对一个特定值τ的最终速率Allan方差(重叠法),通过使用输出速率值的平均值, Ω ˉ ( τ ) \bar\Omega(τ) Ωˉ(τ)在每个数据集上。

2.2 使用输出角度计算Allan方差

  Allan方差可以根据输出角θ来计算,对应于每个陀螺速率采样值。
  1.计算每个陀螺输出样本对应的θ。这可以通过以下方式计算:
在这里插入图片描述
  有时这些角度测量是由𝑡𝑡=𝑘𝜏0(𝜏0,2𝜏0,3𝜏0…),𝑘变化从1到𝑁。对于一个离散的样本集,累积和也可以用来给出θ的N值。在这里,取每个𝑘𝜏0上陀螺仪输出样本的累积和,然后将得到的每个和乘以样本周期𝜏0来得到θ的二进制操作值。

示例:计算θ的三个值,假设𝑘在1到3个样本之间变化。
假设观测到的 Ω k \Omega_k Ωk值分别为10、12和15。
通过使用累积和,可以得到以下值:10,10 +12=22和10 + 12 + 15 = 37。
进一步乘以𝜏0,我们现在得到的相应值: θ k : θ 1 = 10 τ 0 , : θ 2 = 22 τ 0 , : θ 3 = 37 τ 0 \theta_k:\theta_1=10τ_0,:\theta_2=22τ_0,:\theta_3=37τ_0 θk:θ1=10τ0,:θ2=22τ0,:θ3=37τ0

  2. 一旦计算了θ的N值,使用下式计算Allan方差。
在这里插入图片描述
   δ 2 ( τ ) \delta^2(τ) δ2(τ)表示Allan方差是的函数,< >为集合平均值。将上式展开,得到:
在这里插入图片描述
  这里的二进制操作是样本总数,𝑚是平均因子,τ=𝑚 τ 0 τ_0 τ0是平均时间,𝐾是一组从1到N的离散值。
  上式利用陀螺仪的输出角θ计算出某一特定值下的最终速率Allan方差(通过重叠法)值。一旦我们知道了θ的输出角度值、样本周期和𝑚的值,我们就可以用这个方程来计算Allan方差。

2.3 计算Allan偏差并创建Allan偏差图

  最后,对2.1节或2.2节的结果取平方根,就可以得到某一特定值的根Allan方差或Allan偏差的值。这个结果现在将被用来表征陀螺仪中的噪声。
在这里插入图片描述

三、噪声识别

  不同类型的随机过程导致Allan偏差图上出现不同梯度的斜率。不同的过程通常出现在不同的区域,使得它们的存在很容易被识别。确定了一个过程之后,就可以直接从绘图中读取其数值参数。对于像陀螺仪这样的MEMS器件,要测量的重要过程是随机游走和偏置不稳定性(有时也称为偏置稳定性),其可以识别和读取如下:

  • 白噪声/随机游走:在Allan方差图上显示为梯度为-0.5的斜率。该噪声的随机游走测量(速率陀螺仪的ARW,加速度计的VRW)是通过斜率拟合一条直线并读取其在= 1处的值获得的。陀螺仪的ARW是陀螺仪噪声的度量,单位为dps/rt(Hz)。
  • 偏置不稳定性:在图上表现为最小值周围的平坦区域。数值是Allan偏差图上的最小值。对于陀螺仪,偏置稳定性测量陀螺仪的偏置如何在恒定温度下在指定的时间内变化。这通常以dps/秒或dps/小时为单位。
      下图显示了从艾伦偏差图中可以观察到的各种不同的噪声过程。从下图中可以看出,陀螺仪需要观察、计算和分析的噪声过程是角度随机游走和偏置不稳定性。
    在这里插入图片描述
      下图显示了飞思卡尔陀螺仪FXAS21002C对应的Allan方差曲线。偏置稳定性和ARW值在下图中有明显的标记。
    在这里插入图片描述
      Allan方差代码:
function [T,sigma] = allan(omega,fs,pts) 
[N,M] = size(omega); % figure out how big the output data set is 
n = 2.^(0:floor(log2(N/2)))'; % determine largest bin size
maxN = n(end); 
endLogInc = log10(maxN); 
m = unique(ceil(logspace(0,endLogInc,pts)))'; % create log spaced vector average factor 
t0 = 1/fs; % t0 = sample interval
T = m*t0; % T = length of time for each cluster
theta = cumsum(omega)/fs; % integration of samples over time to obtain output angle θ
sigma2 = zeros(length(T),M); % array of dimensions (cluster periods) X (#variables)
for i=1:length(m) % loop over the various cluster sizes
 for k=1:N-2*m(i) % implements the summation in the AV equation
 sigma2(i,:) = sigma2(i,:) + (theta(k+2*m(i),:) - 2*theta(k+m(i),:) + theta(k,:)).^2; 
 end
end
sigma2 = sigma2./repmat((2*T.^2.*(N-2*m)),1,M); 
sigma = sqrt(sigma2) 

  代码解释:

  • omega是陀螺速率输出。
  • m任意选取,τ定义为M *样本周期。
  • 在上面的代码中,使用2.2节中描述的方法来计算Allan方差。
  • theta由输出速率数据的累积和除以采样频率得到。这个θ是对应于每个样本得到的输出角度。
  • 由于m是可用的,每个输出速率样本对应的输出角度也是可用的,因此在上述代码中直接实现式(3)来计算Allan方差(代码中的sigma2)。
  • Allan偏差(代码中的sigma)然后通过取AVAR的平方根,即用2.3节公式来计算。

四、往期回顾

课题学习(一)----静态测量
课题学习(二)----倾角和方位角的动态测量方法(基于磁场的测量系统)
课题学习(三)----倾角和方位角的动态测量方法(基于陀螺仪的测量系统)
课题学习(四)----四元数解法
课题学习(五)----阅读论文《抗差自适应滤波的导向钻具动态姿态测量方法》
课题学习(六)----安装误差校准、实验方法
课题学习(七)----粘滑运动的动态算法
课题学习(八)----卡尔曼滤波动态求解倾角、方位角
课题学习(九)----阅读《导向钻井工具姿态动态测量的自适应滤波方法》论文笔记
课题学习(十)----阅读《基于数据融合的近钻头井眼轨迹参数动态测量方法》论文笔记
课题学习(十一)----阅读《Attitude Determination with Magnetometers and Accelerometers to Use in Satellite》
课题学习(十二)----阅读《Extension of a Two-Step Calibration Methodology to Include Nonorthogonal Sensor Axes》
课题学习(十三)----阅读《Calibration of Strapdown Magnetometers in Magnetic Field Domain》论文笔记
课题学习(十四)----三轴加速度计+三轴陀螺仪传感器-ICM20602
课题学习(十五)----阅读《测斜仪旋转姿态测量信号处理方法》论文
课题学习(十六)----阅读《Continuous Wellbore Surveying While Drilling Utilizing MEMS Gyroscopes Based…》论文
课题学习(十七)----姿态更新的四元数算法总结
课题学习(十八)----捷联测试电路设计与代码实现(基于MPU6050和QMC5883L)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/337961.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

131. 分割回文串 - 力扣(LeetCode)

问题描述 给你一个字符串 s&#xff0c;请你将 s 分割成一些子串&#xff0c;使每个子串都是 回文串 。返回 s 所有可能的分割方案。 回文串 是正着读和反着读都一样的字符串。 输入示例 s "aab"输出示例 [["a","a","b"],["…

PS滤镜插件:Adobe Camera Raw 16 for Mac中文激活版

Adobe Camera Raw是Adobe公司开发的一款用于处理数码相机RAW格式文件的软件插件。它可以在Adobe Photoshop、Adobe Bridge和Adobe Lightroom等软件中使用&#xff0c;用于调整RAW文件的曝光、白平衡、对比度、色彩饱和度、锐化等参数&#xff0c;从而得到更好的图像质量。 软件…

STM32之模数转换器(ADC)

一、模数转换器介绍 1、模数转换器简介 为什么使用模拟转换器&#xff1f;&#xff1f; 因为MCU只能识别01010101的数字信号&#xff0c;而外部物理信号均为模拟信号&#xff0c;如声音、光、电等&#xff0c;所以为了让计算机能够处理外部物理的信息&#xff0c;必须要通过…

增加CO气体报警、氢气报警以及烟雾报警

标题&#xff1a;增加CO气体报警、氢气报警以及烟雾报警。 内容&#xff1a;通过ADC采集通道&#xff0c;实现传感器电压的采集&#xff0c;通过对电压进行判断是否报警&#xff0c;&#xff08;理论上应该可以计算出气体浓度&#xff0c;通过气体浓度来判断是否报警&#xff…

入门分布式事务,2PC 3PC

分布式事务 什么是分布式一致性 在分布式系统中&#xff0c;为了保证数据的高可用&#xff0c;通常&#xff0c;我们会将数据保留多个副本(replica)&#xff0c;这些副本会放置在不同的物理的机器上。为了对用户提供正确的增\删\改\查等语义&#xff0c;我们需要保证这些放置…

VRRP协议负载分担

VRRP流量负载分担 VRRP负载分担与VRRP主备备份的基本原理和报文协商过程都是相同的。同样对于每一个VRRP备份组,都包含一个Master设备和若干Backup设备。与主备备份方式不同点在于:负载分担方式需要建立多个VRRP备份组,各备份组的Master设备可以不同;同一台VRRP设备可以加…

骑砍战团MOD开发(39)-RTS塔防保卫卡拉迪亚大陆

骑砍1战团mod开发-RTS塔防保卫卡拉迪亚大陆_哔哩哔哩bilibili_骑马与砍杀https://www.bilibili.com/video/BV1hw411E7bP/骑砍战团MOD开发(28)-骑砍联盟之RTS大规模军团竞技-CSDN博客文章浏览阅读369次&#xff0c;点赞11次&#xff0c;收藏7次。【代码】骑砍战团MOD开发(28)-骑…

SpringCloud Alibaba 深入源码 - Nacos 分级存储模型、支撑百万服务注册压力、解决并发读写问题(CopyOnWrite)

目录 一、SpringCloudAlibaba 源码分析 1.1、SpringCloud & SpringCloudAlibaba 常用组件 1.2、Nacos的服务注册表结构是怎样的&#xff1f; 1.2.1、Nacos的分级存储模型&#xff08;理论层&#xff09; 1.2.2、Nacos 源码启动&#xff08;准备工作&#xff09; 1.2.…

java steam 的使用

说steam 前看下kotlin的一个写法如果用java怎么写 fun main() {// 创建一个列表val fruits listOf("Apple", "Banana", "Cherry", "Date", "Elderberry")// 使用 Sequence 进行过滤和映射操作val uppercaseFruitLengths …

《机器学习》客户流失判断-python实现

客户流失判断 题目赛题描述数据说明赛题来源-DataCastle 问题描述解题思路Python实现读取数据并初步了解导入宏包读取数据查看数据类型检查缺失值描述性统计分析 可视化分析用户流失分析特征分析任期年数与客户流失的关系&#xff1a;服务类属性分析特征相关性分析 数据预处理类…

二叉树的直径(LeetCode 543)

文章目录 1.问题描述2.难度等级3.热门指数4.解题思路参考文献 1.问题描述 给你一棵二叉树的根节点&#xff0c;返回该树的直径 。 二叉树的 直径 是指树中任意两个节点之间最长路径的长度 。这条路径可能经过也可能不经过根节点 root 。 两节点之间路径的长度由它们之间边数…

安卓平板局域网内远程控制工控机方法

安卓平板局域网内远程控制工控机方法 将所需要远程控制的工控机通过网线连接到具有WiFi功能的路由器上&#xff0c;将安卓平板连接上WiFi&#xff0c;如下图所示 下载NoMachine远程软件安装包&#xff0c;官网地址&#xff1a;https://www.nomachine.com/ 点击Download now按钮…

C++实战:类的包含编译模型

文章目录 一、实战概述二、实战步骤&#xff08;一&#xff09;C普通类的包含编译模型1、创建普通类定义文件2、创建普通类实现文件3、创建主程序文件4、运行主程序&#xff0c;查看结果 &#xff08;二&#xff09;C模板类的包含编译模型1、创建模板类定义文件2、创建模板类实…

微前端框架篇一,了解qiankun

微前端框架篇一&#xff0c;了解qiankun ① 前置知识补充Ⅰ 什么是微前端&#xff1f;Ⅱ 什么是JS CSS沙箱&#xff1f;Ⅲ 什么是spa单页面应用&#xff1f;Ⅳ SystemJS 与 import-html-entryⅤ 现有的微前端方案 ② 了解single-spa 微前端框架③ 了解qiankun框架 ① 前置知识补…

[超级详细系列]ubuntu22.04配置深度学习环境(显卡驱动+CUDA+cuDNN+Pytorch)--[1]安装显卡驱动

[写在前面] &#x1f447;&#x1f447;&#x1f447; 如果这篇博客写的还可以的话&#xff0c;希望各位好心的读者朋友们到最下面点击关注一下Franpper的公众号&#xff0c;或者也可以直接通过名字搜索&#xff1a;Franpper的知识铺。快要过年了&#xff0c;Franpper想制作一…

腾讯云代金券如何领取?详细领取教程来了!

随着云计算的快速发展&#xff0c;越来越多的用户意识到云服务的重要性。腾讯云作为国内领先的云服务提供商&#xff0c;为广大用户提供了丰富的云计算解决方案。为了吸引用户上云&#xff0c;腾讯云推出了代金券活动&#xff0c;让用户在购买云服务时可以享受到更多的优惠。 那…

【Linux】Linux基本操作(二):rm rmdir man cp mv cat echo

承接上文&#xff1a; 【【Linux】Linux基本操作&#xff08;一&#xff09;&#xff1a;初识操作系统、ls、cd、touch、mkdir、pwd 】 目录 1.rmdir指令 && rm 指令&#xff1a; rmdir -p #当子目录被删除后如果父目录也变成空目录的话&#xff0c;就连带父目录一…

线性表的案例引入 | 稀疏多项式的运算

#include <iostream> using namespace std;#define TRUE 1 #define FALSE 0 #define OK 1 #define ERROR 0 #define INFEASIBLE -1 #define OVERFLOW -2typedef int Status;// 定义单链表 typedef struct PNode {float coef; //系数int expn; //指数struct PNode *nex…

「优选算法刷题」:查找总价格为目标值的两个商品

一、题目 购物车内的商品价格按照升序记录于数组 price。请在购物车中找到两个商品的价格总和刚好是 target。若存在多种情况&#xff0c;返回任一结果即可。 示例 1&#xff1a; 输入&#xff1a;price [3, 9, 12, 15], target 18 输出&#xff1a;[3,15] 或者 [15,3]示例…

windows下载安装ImageMagick

windows环境搭建专栏&#x1f517;点击跳转 win系统环境搭建&#xff08;十七&#xff09;——windows下载安装ImageMagick 文章目录 win系统环境搭建&#xff08;十七&#xff09;——windows下载安装ImageMagick1.下载2.安装3.验证3.1 依赖缺失问题3.2 依赖缺失解决 1.下载 …