主要内容

惯性传感器噪声使用阿伦方差分析

这个例子展示了如何使用阿伦方差来确定噪声参数的MEMS陀螺仪。这些参数可以用来模拟仿真的陀螺仪。陀螺仪测量建模为:

$ $ \ω(t) = \ Omega_{理想}(t) + Bias_N (t) + Bias_B (t) + Bias_K (t) $ $

三个噪声参数N(角随机游走),K(速率随机游走),B不稳定(偏见)估计使用数据记录从一个静止的陀螺仪。

背景

阿伦方差最初是由大卫·w·艾伦测量精密振荡器的频率稳定度。它也可以被用来识别各种噪声源在静止的陀螺仪测量。考虑l样本的数据从一个陀螺仪样品的时间美元\ tau_ {0} $。表单数据集群的持续时间美元\ tau_ {0} $,2美元\ tau_ {0} $、……$ m \ tau_ {0}, (m <美元(l - 1) / 2)并获得的平均每个集群中包含的数据点的总和在集群的长度。阿伦方差被定义为数据的方差两个示例集群平均集群时间的函数。下面的例子使用了重叠的阿伦方差估计量。这意味着计算集群重叠。估计执行比非重叠估计更大的值l

阿伦方差计算

Allan方差计算如下:

日志l静止的陀螺仪样品样本时期美元\ tau_ {0} $。让ω\美元被记录的样本。

%加载三轴陀螺仪的记录数据从一个轴。这段录音%是在六小时内完成100 Hz采样率。负载(“LoggedSingleAxisGyroscope”,“ω”,“Fs”)t0 = 1 / f;

对于每一个样本,计算输出角\θ美元:

$ $ \θ(t) = \ int ^ {t} \ω(t) dt $ $

对于离散样本,累计金额乘以美元\ tau_ {0} $可以使用。

θ= cumsum(ω,1)* t0;

接下来,阿伦方差计算:

$ $ \σ^ 2(\τ)= & # xA; \压裂{1}{2 \τ^ 2}< (\ theta_ {k + 2 m} 2 \ theta_ {k + m} + \ theta_ {k}) ^ 2 & # 62; $ $

在哪里\ \τ=美元tau_ {0} $< & # 62;美元是统计平均值。

统计平均值可以扩展为:

$ $ \σ^ 2(\τ)= & # xA; \压裂{1}{2 \τ^ 2 (L-2m)} \ sum_ {k = 1} ^ {L-2m} (\ theta_ {k + 2 m} - 2 \ theta_ {k + m} & # xA; + \ theta_ {k}) ^ 2 $ $

maxNumM = 100;L =大小(θ,1);maxM = 2。^地板(log2 (L / 2));m = logspace (log10 (1) log10 (maxM) maxNumM)。”;m =装天花板(m);% m必须是一个整数。m =独特(m);%删除重复值。τ= m * t0;阿瓦尔人= 0(元素个数(m), 1);i = 1:元素个数(m) mi = m (i);:阿瓦尔人(我)=总和((θ(1 + 2 * mi: L) - 2θ* (1 + mi: L-mi) +θ(1:l2 * mi))。^ 2,1);结束阿瓦尔人=阿瓦尔人。/(2 *τ。^ 2。* (L - 2 *米));

最后,艾伦偏差大概{$ \σ(t) = \ \σ^ 2 (t)} $用于确定陀螺仪噪声参数。

adev =√阿瓦尔人);图重对数(τ,adev)标题(“艾伦偏差”)包含(“\τ”);ylabel (“\σ(\τ)”网格)平等的

阿伦方差也可以计算使用allanvar函数。

[avarFromFunc, tauFromFunc] = allanvar(ω,m, Fs);adevFromFunc =√avarFromFunc);图重对数(τ,adev、tauFromFunc adevFromFunc);标题(“艾伦偏差”)包含(“\τ”)ylabel (“\σ(\τ)”)传说(手工计算的,“allanvar函数”网格)平等的

噪声参数识别

获得陀螺的噪声参数,使用以下阿伦方差之间的关系和双边功率谱密度(PSD)噪声参数的原始数据集ω\美元。的关系是:

$ $ \σ^ 2(\τ)= 4 \ int_ {0} ^ {\ infty} S_ \ω(f) & # xA; \压裂{罪^ 4 f(\π\τ)}{(f \ \πτ)^ 2}df $ $

从上面的方程,阿伦方差成正比的总噪声功率陀螺仪时经过滤波器的传递函数罪^ 4美元(x) / (x) ^ 2美元。这样做传递函数来自操作创建和操作集群。

使用这个传递函数解释,过滤带通取决于\τ美元。这意味着不同的噪声参数可以确定通过改变滤波器的带通,或不同\τ美元

角随机游走

角度随机游走的白噪声谱特征是陀螺仪的输出。PSD为代表:

$ $ S_ \ω(f) = N ^ 2 $ $

在哪里

N=角随机游走系数

替换到原始的PSD方程和执行集成收益率:

$ $ \σ^ 2(\τ)= \压裂{N ^ 2}{\τ}$ $

上面的方程是一条直线斜率的1/2时,重对数坐标图的绘制\σ(\τ)美元\τ美元。的价值N可以直接读到这一行的\τ= 1美元。的单位N$ (rad / s) / \√{赫兹}$

%找到该指数,对数的斜率艾伦偏差是相等的%到指定的斜率。斜率= -0.5;logtau = log10(τ);logadev = log10 (adev);dlogadev = diff (logadev)。/ diff (logtau);[~,我]= min (abs (dlogadev -斜率));%找到直线的截距。b = logadev (i) -坡* logtau(我);%确定线的角度随机游走系数。logN =坡*日志(1)+ b;N = 10 ^ logN%绘制结果。较= 1;亚麻= N。/√(τ);图重对数(τ,adev,τ、亚麻、“——”较,N,“o”)标题(“艾伦偏差角随机游走的)包含(“\τ”)ylabel (“\σ(\τ)”)传说(‘\σ’,“\ sigma_N”)文本(较,N,“N”网格)平等的
N = 0.0126

速率随机游走

速率随机游走特征是红色的噪音(布朗噪音)的频谱陀螺仪输出。PSD为代表:

$ $ S_ \ω(f) =(\压裂{K}{2 \π})^ 2 \压裂{1}{f ^ 2} $ $

在哪里

K=速率随机游走系数

替换到原始的PSD方程和执行集成收益率:

$ $ \σ^ 2(\τ)= \压裂{K ^ 2 \τ}{3}$ $

上面的方程是一条直线斜率的1/2时,重对数坐标图的绘制\σ(\τ)美元\τ美元。的价值K可以直接读到这一行的\τ= 3美元。的单位K$ (rad / s \√{赫兹}$

%找到该指数,对数的斜率艾伦偏差是相等的%到指定的斜率。斜率= 0.5;logtau = log10(τ);logadev = log10 (adev);dlogadev = diff (logadev)。/ diff (logtau);[~,我]= min (abs (dlogadev -斜率));%找到直线的截距。b = logadev (i) -坡* logtau(我);%确定线路的速率随机游走系数。logK =坡* log10 (3) + b;K = 10 ^ logK%绘制结果。tauK = 3;lineK = K。* sqrt(τ)/ 3);图重对数(τ,adev,τ,lineK,“——”tauK, K,“o”)标题(“艾伦偏差与速率随机游走”)包含(“\τ”)ylabel (“\σ(\τ)”)传说(‘\σ’,“\ sigma_K”)文本(tauK, K,“K”网格)平等的
K = 9.0679 e-05

偏见不稳定

偏差不稳定为特征的粉红噪声(闪烁噪声)的频谱陀螺仪输出。PSD为代表:

$ $ S_{\ω}左(f) = \ \{\{数组}{lr}开始(\压裂{B ^ 2}{2 \π})\压裂{1}{f} & # xA; & # 38;:f \ leq f_0 \ \ 0 & # 38;:f & # 62;f_0 \结束数组{}\ $ $

在哪里

B=偏见不稳定系数

f_0美元=截止频率

替换到原始的PSD方程和执行集成收益率:

$ $ \σ^ 2(\τ)= \压裂{2 b ^ 2}{\π}[\ ln {2} + \ \ & # xA; - \压裂{罪^ 3 x} {2 x ^ 2} (sinx + 4 xcosx) + Ci (2 x) - Ci (4 x)) $ $

在哪里

$ x = \πf_0 \τ美元

Ci=余弦积分函数

\τ美元远远超过截止频率的倒数,PSD方程是:

$ $ \σ^ 2(\τ)= \压裂{2 b ^ 2}{\π}\ ln {2} $ $

上面的方程是一条斜率为0时重对数坐标图的绘制\σ(\τ)美元\τ美元。的价值B可以直接读的这条线的比例$ \√6{\压裂{2 \ ln{2}}{\π}}\大约0.664美元。的单位Brad / s美元

%找到该指数,对数的斜率艾伦偏差是相等的%到指定的斜率。斜率= 0;logtau = log10(τ);logadev = log10 (adev);dlogadev = diff (logadev)。/ diff (logtau);[~,我]= min (abs (dlogadev -斜率));%找到直线的截距。b = logadev (i) -坡* logtau(我);%确定线的偏差不稳定系数。scfB =√2 *日志(2)/ pi);logB = b - log10 (scfB);B = 10 ^ logB%绘制结果。陶布=τ(i);lineB = B * scfB *的(大小(τ));图重对数(τ,adev,τ,lineB,“——”陶布,scfB * B,“o”)标题(“艾伦偏差与偏差不稳定”)包含(“\τ”)ylabel (“\σ(\τ)”)传说(‘\σ’,“\ sigma_B”)文本(陶布scfB * B,“0.664”网格)平等的
B = 0.0020

现在所有的噪音参数计算,绘制艾伦偏差的所有行用于量化参数。

tauParams =(较tauK,托布);params = [N, K, scfB * B];图重对数(τ,adev、τ(亚麻、lineK lineB),“——”,tauParams参数,“o”)标题(“艾伦与噪声参数的偏差)包含(“\τ”)ylabel (“\σ(\τ)”)传说(“\σ(rad / s)的美元,“美元\ sigma_N ((rad / s) / \√{赫兹})的美元,“美元\ sigma_K (rad / s \√{赫兹})的美元,“美元\ sigma_B (rad / s)的美元,“翻译”,“乳胶”)文本(tauParams params, {“N”,“K”,“0.664”})网格平等的

陀螺仪模拟

使用imuSensor对象来模拟陀螺仪测量噪声参数的确定。

%模拟陀螺仪测量需要一些时间。为了避免这种情况,% MAT-file测量生成并保存。默认情况下,这个%的例子使用了MAT-file。相反,生成测量变化%这个逻辑变量为true。generateSimulatedData = false;如果generateSimulatedData%设置的陀螺参数噪声参数确定%以上。陀螺= gyroparams (“NoiseDensity”N“随机散步”、钾、“BiasInstability”,B);omegaSim = helperAllanVarianceExample (L, Fs,陀螺);其他的负载(“SimulatedSingleAxisGyroscope”,“omegaSim”)结束

计算模拟艾伦偏差和记录数据进行比较。

[avarSim, tauSim] = allanvar (omegaSim,“八度”Fs);adevSim =√avarSim);adevSim =意味着(adevSim, 2);%使用模拟的均值。图重对数(τ,adev、tauSim adevSim,“——”)标题(“HW和仿真的艾伦偏差”)包含(“\τ”);ylabel (“\σ(\τ)”)传说(“HW”,“SIM卡”网格)平等的

情节表明陀螺模型的创建imuSensor生成与类似的艾伦偏差测量记录数据。模型测量包含较少噪声自量化和温度参数没有设置使用gyroparams。陀螺仪模型可以用于生成测量使用运动与硬件不是很容易的被捕获。

引用

  • IEEE Std。647 - 2006年IEEE标准规范格式指南和单轴激光陀螺仪的测试程序