文档帮助中心
从振动信号中提取时域阶波形
XREC = ORDERWAVEFORM(X,FS,RPM,ORDERLIST)
xrec = orderwaveform (x, fs, rpm、orderlist rpmrefidx)
xrec = orderwaveform (x, fs, rpm、orderlist rpmrefidx,名称,值)
例子
XREC.= orderwaveform (x,fs,转速,orderlist)返回与输入信号中存在的一组指定顺序对应的时域波形,x.x在一组上测量转速每分钟转速表达的转速。fs是Hz中的测量采样率。矢量orderlist指定所需的订单,其中波形在相应的列中返回XREC..该函数使用Vold-Kalman滤波器进行计算。
XREC.= orderwaveform (x,fs,转速,orderlist)
XREC.
x
fs
转速
orderlist
XREC.= orderwaveform (x,fs,转速,orderlist,rpmrefidx)返回具有多个参考RPM信号的时域波形,存储在列中转速.rpmrefidx是否有一个向量将每个顺序联系起来orderlist到RPM信号。
XREC.= orderwaveform (x,fs,转速,orderlist,rpmrefidx)
rpmrefidx
XREC.= orderwaveform (x,fs,转速,orderlist,rpmrefidx,名称,价值)指定Vold-Kalman过程使用的进一步选项名称,价值对。
XREC.= orderwaveform (x,fs,转速,orderlist,rpmrefidx,名称,价值)
名称,价值
全部收缩
在600 Hz采样采样5秒的模拟信号。正在测试的系统在观察期间将其从10到40转的转速从10到40次转速增加到(或等效,每分钟600至2400转)。
生成转速表读数。
FS = 600;t1 = 5;T = 0:1 / FS:T1;F0 = 10;F1 = 40;RPM = 60 * LINSPACE(F0,F1,长度(T));
信号由四个谐波相关的啁啾,订单1,1 / 2,χ2和2.啁啾的幅度分别为1,1 / 2,χ2和2。要生成啁啾,请使用梯形规则以表达阶段作为转速的积分。
=[1 0.5根号(2)2];Amp =[1 0.5√(2)2];ph = 2 *π* cumtrapz (rpm / 60) / fs;x (1:) = amp (1) * cos(奥德(1)* ph值);: x (2) = amp (2) * cos(奥德(2)* ph值);x (3:) = amp (3) * cos(奥德(3)* ph值);x (4:) = amp (4) * cos(奥德(4)* ph值);xsum = (x)之和;
重建构成信号的时域波形。
XREC = ORDERWAVEFORM(XSUM,FS,RPM,ORD);
可视化结果。放大瞬态衰减后发生的时间间隔。
为kj = 1:4子图(2,2,kj)绘图(t,x(kj,:),t,xrec(:,kj))标题([“订单”num2str(奥德(kj))) xlim (2 [3])结束
创建一个由两个交叉指令组成的模拟振动信号,对应于两个不同的电机。信号以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.
X = [2 4] * SQRT(2)。* COS(2 * PI * CUMTRAPZ([1.2 * RPM1 0.8 * RPM2] / 60)/ FS);
使第一电动机在频率范围的中间激发共振。
y = (1 + 1. / (1 + linspace(-10、10、nsamp)。^ 4)“/ 2 (nsamp 1)]。* x;x = (y, 2)总和;
使用以下命令可视化rpmfreqmap.
rpmfreqmap
RPMFreqMap(x,fs,rpm1)
重建构成信号的时域波形。使用Vold-Kalman算法将交叉订单解耦。
XREC = ORDERWAVEFORM(X,FS,[RPM1 RPM2],[1.2 0.8],[1 2],“脱钩”,真正的);
绘制原始波形和重构波形。
为Kj = 1:2 figure(Kj) subplot(2,1,1) plot((0:nsamp-1)/fs,y(:, Kj))“原始”) 标题(['马达 'INT2STR(KJ)])子图(2,1,2)绘图((0:nsamp-1)/ fs,xrec(:,kj))图例('重建')结束
输入信号,指定为行或列向量。
例子:因为(π/ 4 * (0:159))+ randn (1160)指定嵌入高斯白噪声中的正弦信号。
因为(π/ 4 * (0:159))+ randn (1160)
采样率,指定为以Hz表示的正标量。
转速,以每分钟转数表示的正数矢量。转速长度必须和x.
如果你有转速计脉冲信号,使用Tachorpm.提取转速直接地。
Tachorpm.
如果您没有转速表脉冲信号,请使用rpmtrack.提取转速从一个振动信号。
rpmtrack.
例子:100:10:3000指定系统最初旋转100个每分钟转数,每分钟最多可增加3000次,增量为10。
100:10:3000
顺序列表,指定为向量。orderlist不得有比大于的值fs/(2×max (转速/ 60))。
数据类型:双倍的|单
双倍的
单
RPM列索引,指定为与orderlist.
指定可选的逗号分隔的对名称,价值论点。的名字参数名和价值是相应的价值。的名字必须出现在引号内。您可以以任何顺序指定多个名称和值对参数name1,value1,...,namen,valuen.
的名字
价值
name1,value1,...,namen,valuen
“解耦”,为真,“过滤器顺序”,2
“FilterOrder”
1
2
Vold-Kalman滤波顺序,指定为逗号分隔对组成“FilterOrder”和任何一种1或2.
“带宽”
近似半功率带宽,指定为包括的逗号分隔对“带宽”并且是一个真正的标量或一个具有相同元素数量的真实矢量orderlist.较小的值“带宽”产生平滑,窄带输出。然而,这个输出可能不能准确地反映顺序振幅的快速变化。
“脱钩”
错误的
真的
模式解耦选项,指定为逗号分隔的对,由“脱钩”和一个逻辑值。如果该选项设置为真的,然后orderwaveform同时提取订单波形,使其能够分离紧密间隔或交叉订单。
orderwaveform
数据类型:逻辑
逻辑
'secmentLength'
重叠段的长度,指定为逗号分隔对,由'secmentLength'和一个整数。如果指定了段的长度,那么orderwaveform将输入信号分成若干段。然后计算每个分段的重建波形,并将结果组合起来产生输出。如果段太短,函数可能无法正确捕获本地化的事件,如交叉顺序。
重建的时域顺序波形,作为矩阵作为矩阵,每个列中具有一个波形。
[1] Feldbauer,Christian和Roberthöldrich。“实现Vold-Kalman跟踪过滤器 - 最小二乘问题。”成本G-6数字音频效应会议的诉讼程序(DAFX-00).2000年12月7日至9日,意大利维罗纳。
[2] 沃尔德、赫瓦尔德和扬·鲁里丹。“使用卡尔曼跟踪滤波器在极端回转率下进行高分辨率顺序跟踪。”冲击和振动.第二卷,1995年,第507-515页。
使用说明和限制:
与MATLAB相比,生成的代码结果可能会显示出很小的数值差异®结果。
orderspectrum|ordertrack|rpmfreqmap|rpmordermap|Tachorpm.
orderspectrum
ordertrack
rpmordermap
您有此示例的修改版本。您是否希望使用您的编辑打开此示例?
你点击一个链接对应于这个MATLAB命令:
在MATLAB命令窗口中输入它来运行命令。Web浏览器不支持MATLAB命令。金宝app
选择一个网站,在那里获得翻译的内容,并看到当地的活动和优惠。根据您的位置,我们建议您选择:.
您还可以从以下列表中选择一个网站:
选择中国网站(中文或英文)以获得最佳网站性能。其他MathWorks国家站点没有针对您所在位置的访问进行优化。
联系您当地的办公室