主要内容

ordertrack

从振动信号中跟踪并提取数量级

描述

例子

玛格= ordertrack (xfsrpmorderlist返回一个矩阵,玛格,其中包含特定顺序集的随时间变化的均方根(RMS)振幅估计,orderlist,出现在输入信号中xx是在一个集合上测量的rpm以每分钟转数表示的转速。fs为测量采样率,单位为Hz。

玛格rpm时间= ordertrack(xfsrpmorderlist还返回的列对应的RPM和时间值的向量玛格

___= ordertrack(xfsrpmorderlistrpmrefidx使用一阶vord - kalman滤波器提取阶数,并返回以前语法中的任何输出参数。

例子

___= ordertrack(地图订单rpm时间orderlist计算从order-RPM映射开始的震级估计矩阵,地图,阶数向量,订单,和时间瞬间向量,时间.使用rpmordermap来计算地图订单,时间.返回的振幅和缩放与in相同地图

例子

___= ordertrack(___名称,值使用名称,值对。有些选项只适用于沃尔德-卡尔曼跟踪程序。

ordertrack (___在没有输出参数的情况下,在当前图中绘制随时间变化的顺序和RPM值。

例子

全部折叠

创建一个采样频率为600hz的模拟信号,持续5秒。在观察期间,正在测试的系统将转速从每秒10转增加到40转(或等效地从每分钟600转增加到2400转)。

生成转速表读数。

Fs = 600;T1 = 5;T = 0:1/fs:t1;F0 = 10;F1 = 40;RPM = 60*linspace(f0,f1,长度(t));

该信号由四个谐波相关的啁啾组成,阶为1,0.5,4和6。啁啾的振幅分别为1、1/2、√2和2。为了产生啁啾,用梯形法则将相位表示为转速的积分。

O1 = 1;O2 = 0.5;O3 = 4;O4 = 6;A1 = 1;A2 = 0.5;A3 =√(2);A4 = 2;Ph = 2*pi*cumtrapz(rpm/60)/fs;X = [a1 a2 a3 a4]*cos([o1 o2 o3 o4]'*ph);

提取和可视化的量级。

Ordertrack (x,fs,rpm,[o1 o2 o3 o4])

图中包含2个轴对象。坐标轴对象1包含2个line类型的对象。标题为Order Tracking的Axes对象2包含4个类型为line的对象。这些对象表示Order: 1, Order: 0.5, Order: 4, Order: 6。

创建一个模拟振动信号,由两个交叉顺序组成,对应于两个不同的电机。信号以300hz采样3秒。在测量过程中,第一个电机将其转速从每秒10转增加到100转(或等效地从每分钟600转增加到6000转)。第二个电机在同一时间内将转速从每秒50转增加到70转(或每分钟3000转到4200转)。

Fs = 300;Nsamp = 3*fs;Rpm1 = linspace(10,100,nsamp)'*60;Rpm2 = linspace(50,70,nsamp)'*60;

所测信号相对于第一个电机的阶数为1.2,振幅为2√2。对于第二个电机,信号为0.8阶,振幅为4√2。

4 x = [2] * sqrt(2)。* cos(2 *π* cumtrapz ([1.2 * 0.8 rpm1 * rpm2] / 60) / fs);

使第一个电机在频率范围的中间激发一个共振。

rs = (1 + 1. / (1 + linspace(-10、10、nsamp)。^ 4)“/ 2的(nsamp, 1)];X = sum(rs.* X,2);

可视化使用的顺序rpmfreqmap

rpmfreqmap (x, fs, rpm1)

图频率图包含uimenu, uitoolbar, uiflowcontainer类型的对象。

计算作为RPM函数的两个电机的量级。使用Vold-Kalman算法对交叉阶进行解耦。

Ordertrack (x,fs,[rpm1 rpm2],[1.2 0.8],[1 2],“脱钩”,真正的)

图中包含2个轴对象。坐标轴对象1包含2个line类型的对象。标题为Order Tracking的Axes对象2包含2个类型为line的对象。这些对象表示Order: 1.2, Order: 0.8。

分析直升飞机座舱中加速度计的模拟数据。

加载直升机数据。振动测量,vib,以500赫兹的频率采样10秒。对数据的检查表明,它有一个线性趋势。删除趋势以防止它降低顺序估计的质量。

负载(“helidata.mat”) vib =趋势(vib);

计算order-RPM映射。指定0.005的顺序分辨率。

[map,order,rpm,time,res] = rpmordermap(vib,fs,rpm,0.005);

计算并绘制信号的平均阶谱。找出光谱中最高的三个峰。

[spectrum,specorder] = orderspectrum(map,order);[~,pkords] = findpeaks(频谱,specorder,“SortStr”“下”“Npeaks”3);specorder findpeaks(光谱,“SortStr”“下”“Npeaks”3)

图中包含一个轴对象。axis对象包含2个line类型的对象。

跟踪三个最高峰值的振幅。

ordertrack(地图、秩序、转速、时间、pkords)

图中包含2个轴对象。Axes对象1包含一个line类型的对象。标题为Order Tracking的Axes对象2包含3个类型为line的对象。这些对象表示Order: 0.0517、Order: 0.066282、Order: 0.026513。

输入参数

全部折叠

输入信号,指定为行或列向量。

例子:因为(π/ 4 * (0:159))+ randn (1160)指定嵌入高斯白噪声中的正弦波。

数据类型:|

采样率,用正标量表示,单位为Hz。

数据类型:|

转速,表示为以每分钟转数表示的正数值的矢量或矩阵。如果rpm是一个向量,它的长度必须和x.如果rpm是矩阵,和rpmrefidx,则rpm必须至少有两列,并且每列必须有与x

  • 如果你有一个转速计脉冲信号,使用tachorpm提取rpm直接。

  • 如果您没有转速计脉冲信号,请使用rpmtrack提取rpm从振动信号。

例子:100:10:3000指定系统最初以每分钟100转的速度旋转,并以每分钟10转的增量运行到每分钟3000转。

数据类型:|

顺序列表,指定为向量。orderlist不能有大于的值fs/(2 × max(rpm/ 60))。

数据类型:|

RPM列索引,指定为大小相同的向量orderlist.此参数的存在指定使用Vold-Kalman算法。

数据类型:|

Order-RPM映射,指定为矩阵。使用rpmordermap来计算order-RPM映射。

数据类型:|

order-RPM映射语法中的order,指定为向量。的长度订单必须等于行数地图

数据类型:|

名称-值参数

指定可选参数对为Name1 = Value1,…,以=家,在那里的名字参数名称和价值对应的值。名称-值参数必须出现在其他参数之后,但对的顺序无关紧要。

在R2021a之前,使用逗号分隔每个名称和值,并将其括起来的名字在报价。

例子:“脱钩”,的确,“振幅”,“峰”同时提取指定的指令,并返回每个指令的峰值振幅。

振幅类型,指定为由逗号分隔的对组成“振幅”其中一个“rms”“高峰”,或“权力”

  • “rms”-返回每个估计订单的均方根振幅。

  • “高峰”-返回每个估计订单的峰值振幅。

  • “权力”-返回每个预估订单的功率级别。

大小缩放,指定为由逗号分隔的对组成“规模”,要么“线性”“数据库”

  • “线性”-返回以线性单位缩放的幅度值。

  • “数据库”-返回按对数缩放并以分贝表示的幅度值。

近似半功率带宽,指定为由逗号分隔的对组成“带宽”或者是一个实标量,或者是一个元素数相同的实向量orderlist.较小的值“带宽”产生平滑的窄带输出。然而,这个输出可能不能准确地反映阶幅的快速变化。这个论点只适用于Vold-Kalman算法。

数据类型:|

模式解耦选项,指定为由逗号分隔的对组成“脱钩”和一个逻辑值。如果此选项设置为真正的,然后ordertrack同时提取数量级,使其能够分离紧密间隔或交叉的数量级。这个论点只适用于Vold-Kalman算法。

数据类型:逻辑

重叠段的长度,指定为由逗号分隔的对组成“SegmentLength”一个整数。如果指定段长度,则ordertrack将输入信号分成若干段。然后计算每个片段的量级,并将结果结合起来产生输出。如果段太短,函数可能无法正确捕获局部事件,例如交叉顺序。这个论点只适用于Vold-Kalman算法。

数据类型:|

输出参数

全部折叠

量级矩阵,以矩阵形式返回。

转速,以每分钟转数为单位的正矢量返回。

时间瞬间,以矢量形式返回。

参考文献

勃兰特,安德斯。噪声与振动分析:信号分析与实验程序.英国奇切斯特:John Wiley & Sons出版社,2011年。

[2]菲尔鲍尔,克里斯蒂安,罗伯特Höldrich。沃尔德-卡尔曼跟踪滤波器的实现-最小二乘问题COST G-6数字音频效果会议记录(DAFX-00).2000年12月7日至9日,意大利维罗纳。

[3] Vold, Håvard,还有Jan Leuridan。“使用卡尔曼跟踪滤波器在极端回转速率下的高分辨率顺序跟踪。”冲击与振动.第2卷,1995年,第507-515页。

[4]特罗姆,Jiří。沃尔德-卡尔曼多阶跟踪滤波器算法第十四届国际喀尔巴阡控制会议论文集, 2013,第388-94页。https://doi.org/10.1109/CarpathianCC.2013.6560575

扩展功能

版本历史

在R2016b中引入