​【故障诊断分析】基于 FFT轴承故障诊断matlab代码

1 简介

快速傅里叶变换( FFT) 是 1965 年 J W Cooley 和 J W Tukey 巧妙地利用 WN 因子的周期性和对称性,构造了离散傅里叶变换( DFT) 的快速算法,即快速离散傅里叶变换( FFT) 。DFT 的运算过程如下:

2 部分代码

%% 提取FFT谱作为故障特征向量
clc;close all;clear
%%
load data_process
%% 2、加载数据
x1=train_X(1,:);
% 采样点
L=length(x1);
%采样频率
fs=48000;
%采样间隔
Ts=1/fs;
%采样点数
t=Ts:Ts:L*Ts;
%轴承信号
% 3、对原始信号作图
figure
plot(t,x1)
title('原始信号')
xlabel('采样点/n')
ylabel('幅值')

% 4、fft频谱
Y = fft(x1);
P2 = abs(Y/L);
P1 = P2(1:L/2+1);
P1(2:end-1) = 2*P1(2:end-1);
f = fs*(0:(L/2))/L;

figure
bar(f,P1)
title('FFT频谱')
xlabel('频率/Hz')
ylabel('幅值')
%% 训练集
TZ=[];
for IIII=1:size(train_X,1) %依次对每个样本进行处理
   x1=train_X(IIII,:);%轴承信号
   Y = fft(x1);
   L=length(x1);
   P2 = abs(Y/L);
   P1 = P2(1:L/2+1);
   P1(2:end-1) = 2*P1(2:end-1);
   TZ(IIII,:)=P1/max(P1);
end
disp('训练集提取完毕')
train_X=TZ;
%% 验证集
TZ=[];
for IIII=1:size(valid_X,1) %依次对每个样本进行处理
   x1=valid_X(IIII,:);%轴承信号
   Y = fft(x1);
   L=length(x1);
   P2 = abs(Y/L);
   P1 = P2(1:L/2+1);
   P1(2:end-1) = 2*P1(2:end-1);
   TZ(IIII,:)=P1/max(P1);
end
disp('验证集提取完毕')
valid_X=TZ;

%% 测试集
TZ=[];
for IIII=1:size(test_X,1) %依次对每个样本进行处理
   x1=test_X(IIII,:);%轴承信号
   Y = fft(x1);
   L=length(x1);
   P2 = abs(Y/L);
   P1 = P2(1:L/2+1);
   P1(2:end-1) = 2*P1(2:end-1);
   TZ(IIII,:)=P1/max(P1);
end
disp('测试集提取完毕')
test_X=TZ;
%% 输入数据归一化
% [xs,mapping]=mapminmax(train_X',-1,1);train_X=xs';
% xs=mapminmax('apply',valid_X',mapping);valid_X=xs';
% xs=mapminmax('apply',test_X',mapping);test_X=xs';
%% 保存结果
save data_feature train_X valid_X test_X train_Y valid_Y test_Y

3 仿真结果

4 参考文献

[1]唐良宝, and 姜锐红. "基于FFT的循环自相关函数算法在滚动轴承故障诊断中的应用." 轴承 9(2009):5.

  • 1
    点赞
  • 17
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
轴承故障诊断中,基于MatlabFFT(快速傅里叶变换)方法可以用于获取轴承的包络谱。该方法能够帮助我们识别并分析轴承故障的特征频率。 首先,我们需要获取轴承的振动信号数据。这些数据可以通过加速度传感器等装置获得。然后,利用Matlab进行数据导入和预处理,确保数据的准确性和完整性。 接下来,通过FFT算法将时域信号转换为频域信号。这样可以将振动信号转化为频谱图。其中,包络谱表示了振动信号的幅值与频率之间的关系。 为了进行轴承故障诊断,我们需要从包络谱中提取出故障特征频率。这些特征频率通常与轴承故障类型和严重程度有关。例如,滚珠轴承可能出现内圈和外圈的故障频率,而滚针轴承一般会有滚珠极点频率。 在Matlab中,我们可以使用峰值检测算法来寻找包络谱中的主要频率峰值。这些峰值对应着故障特征频率,可以用于诊断轴承故障类型。 最后,根据故障特征频率的分析结果,我们可以判断轴承是否存在故障,并确定其严重程度。这些分析结果可以帮助我们制定维修计划,避免发生更严重的故障并提高轴承的寿命。 总而言之,基于MatlabFFT轴承故障诊断方法利用了快速傅里叶变换和包络谱分析技术,能够有效地分析轴承振动信号,提取特征频率并判断轴承故障类型和严重程度,从而有助于轴承的维修和保养工作。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Matlab科研辅导帮

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值