👨🎓个人主页:研学社的博客
💥💥💞💞欢迎来到本博客❤️❤️💥💥
🏆博主优势:🌞🌞🌞博客内容尽量做到思维缜密,逻辑清晰,为了方便读者。
⛳️座右铭:行百里者,半于九十。
📋📋📋本文目录如下:🎁🎁🎁
目录
💥1 概述
文献来源:
状态监测(CM)信号中的脉冲特征通常意味着旋转机器中存在缺陷。为了准确捕获CM信号中的脉冲分量,该文提出一种基于时间重分配同步挤压变换(TSST)的集中时频分析(TFA)方法。首先,探讨了TSST方法在处理强频变信号方面的局限性。其次,引入一种迭代程序来解决TSST时频表示模糊问题;还分析了迭代算法的收敛性。最后,提出了一种脉冲特征提取算法进行信号重建,有助于故障类型的准确诊断。本文利用仿真噪声污染信号和3组实验数据对所提方法的性能进行了评价。本文的结果证实,所提方法在处理脉冲类信号方面比其他TFA方法具有更好的性能。
这篇文章,作者最大的贡献在于如何去理解瞬态信号。对一些存在时间极短的瞬态信号,确实不再适合使用时域模型进行分析。然而,频域模型却不受此影响。后面的模态分解算法其实也很有趣。以时频掩码的方式重构信号,常用于语音信号处理,瞬态信号分析中比较罕见。
📚2 运行结果
2.1 算例1
2.2 算例2
2.3 算例3
部分代码:
function som=integ2d(mat,x,y);
%INTEG2D Approximate 2-D integral.
% SOM=INTEG2D(MAT,X,Y) approximates the 2-D integral of
% matrix MAT according to abscissa X and ordinate Y.
%
% MAT : MxN matrix to be integrated
% X : N-row-vector indicating the abscissa integration path
% (default : 1:N)
% Y : M-column-vector indicating the ordinate integration path
% (default : 1:M)
% SOM : result of integration
%
% Example :
% S = altes(256,0.1,0.45,10000) ;
% [TFR,T,F] = tfrscalo(S,21:190,8,'auto') ;
% E = integ2d(TFR,T,F)
%
%
[M,N]=size(mat);
if nargin<1,
error('At least one parameter required');
elseif nargin==1,
x=1:N; y=(1:M)';
elseif nargin==2,
y=(1:M)';
end
[xr,xc]=size(x);
[yr,yc]=size(y);
if (xr>xc & xr~=1),
error('X must be a row-vector');
elseif (yc>yr & yc~=1),
error('Y must be a column-vector');
elseif (N~=xc),
error('MAT must have as many columns as X');
elseif (M~=yr),
error('MAT must have as many rows as Y');
end
mat = (sum(mat.').'-mat(:,1)/2-mat(:,N)/2).*(x(2)-x(1)) ;
dmat = mat(1:M-1)+mat(2:M) ;
dy = (y(2:M)-y(1:M-1))/2 ;
som = sum(dmat.*dy) ;
function [tfr] = LCT(x,c,fs,h);
% Linear Chirplet Transform
% x : Signal.
% c : Chirp Rate.
% fs : Sample Frequency.
% h : Window Function.
% tfr : Time-Frequency Representation.
% This program is free software; you can redistribute it and/or modify
% it according to your requirement.
[xrow,xcol] = size(x);
if (nargin < 3),
error('At least 3 parameter is required');
end;
N=xrow;
t=1:xrow;
[trow,tcol] = size(t);
[hrow,hcol]=size(h); Lh=(hrow-1)/2;
tt=(1:N)/fs;
tfr= zeros (N,tcol) ;
for icol=1:tcol,
ti= t(icol); tau=-min([round(N/2)-1,Lh,ti-1]):min([round(N/2)-1,Lh,xrow-ti]);
indices= rem(N+tau,N)+1;
rSig = x(ti+tau,1);
%rSig = Hilbert(real(rSig));
tfr(indices,icol)=rSig.*conj(h(Lh+1+tau)).*exp(-j * 2.0 * pi * (c/2) * (tt(ti+tau)-tt(icol)).^2)';
end;
tfr=fft(tfr);
tfr=tfr(1:round(end/2),:);
🎉3 参考文献
部分理论来源于网络,如有侵权请联系删除。