这个例子展示了如何使用阿伦方差来确定噪声参数的MEMS陀螺仪。这些参数可以用来模拟仿真的陀螺仪。陀螺仪测量建模为:
三个噪声参数N(角随机游走),K(速率随机游走),B不稳定(偏见)估计使用数据记录从一个静止的陀螺仪。
阿伦方差最初是由大卫·w·艾伦测量精密振荡器的频率稳定度。它也可以被用来识别各种噪声源在静止的陀螺仪测量。考虑l样本的数据从一个陀螺仪样品的时间。表单数据集群的持续时间,、……并获得的平均每个集群中包含的数据点的总和在集群的长度。阿伦方差被定义为数据的方差两个示例集群平均集群时间的函数。下面的例子使用了重叠的阿伦方差估计量。这意味着计算集群重叠。估计执行比非重叠估计更大的值l。
Allan方差计算如下:
日志l静止的陀螺仪样品样本时期。让被记录的样本。
%加载三轴陀螺仪的记录数据从一个轴。这段录音%是在六小时内完成100 Hz采样率。负载(“LoggedSingleAxisGyroscope”,“ω”,“Fs”)t0 = 1 / f;
对于每一个样本,计算输出角:
对于离散样本,累计金额乘以可以使用。
θ= cumsum(ω,1)* t0;
接下来,阿伦方差计算:
在哪里和是统计平均值。
统计平均值可以扩展为:
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 *米));
最后,艾伦偏差用于确定陀螺仪噪声参数。
adev =√阿瓦尔人);图重对数(τ,adev)标题(“艾伦偏差”)包含(“\τ”);ylabel (“\σ(\τ)”网格)在轴平等的
阿伦方差也可以计算使用allanvar
函数。
[avarFromFunc, tauFromFunc] = allanvar(ω,m, Fs);adevFromFunc =√avarFromFunc);图重对数(τ,adev、tauFromFunc adevFromFunc);标题(“艾伦偏差”)包含(“\τ”)ylabel (“\σ(\τ)”)传说(手工计算的,“allanvar函数”网格)在轴平等的
获得陀螺的噪声参数,使用以下阿伦方差之间的关系和双边功率谱密度(PSD)噪声参数的原始数据集。的关系是:
从上面的方程,阿伦方差成正比的总噪声功率陀螺仪时经过滤波器的传递函数。这样做传递函数来自操作创建和操作集群。
使用这个传递函数解释,过滤带通取决于。这意味着不同的噪声参数可以确定通过改变滤波器的带通,或不同。
角度随机游走的白噪声谱特征是陀螺仪的输出。PSD为代表:
在哪里
N=角随机游走系数
替换到原始的PSD方程和执行集成收益率:
上面的方程是一条直线斜率的1/2时,重对数坐标图的绘制与。的价值N可以直接读到这一行的。的单位N是。
%找到该指数,对数的斜率艾伦偏差是相等的%到指定的斜率。斜率= -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为代表:
在哪里
K=速率随机游走系数
替换到原始的PSD方程和执行集成收益率:
上面的方程是一条直线斜率的1/2时,重对数坐标图的绘制与。的价值K可以直接读到这一行的。的单位K是。
%找到该指数,对数的斜率艾伦偏差是相等的%到指定的斜率。斜率= 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为代表:
在哪里
B=偏见不稳定系数
=截止频率
替换到原始的PSD方程和执行集成收益率:
在哪里
Ci=余弦积分函数
当远远超过截止频率的倒数,PSD方程是:
上面的方程是一条斜率为0时重对数坐标图的绘制与。的价值B可以直接读的这条线的比例。的单位B是。
%找到该指数,对数的斜率艾伦偏差是相等的%到指定的斜率。斜率= 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标准规范格式指南和单轴激光陀螺仪的测试程序