1 简介
滚动轴承广泛应用于机械、电力、矿山及航空航天等行业中,轴承的工作状态直接影响设备的运行与安全,因此轴承的故障诊断是非常重要的。然而背景噪声却大大影响了故障诊断的效果。因此信号与噪声的有效分离是故障诊断的关键一环。轴承振动信号是一类典型的非平稳、非线性信号。
针对轴承振动信号夹杂的噪声极大影响有用信息的提取,提出了基于遗传算法的变分模态分解(variational mode decomposition,VMD)与小波阈值去噪方法。该方法首先利用遗传算法选择合适的VMD参数,然后用VMD方法对含噪声的信号进行自适应分解,最后对分解的模态分别进行小波阈值处理后重构信号,得到去噪后的信号。在实际轴承信号的实验结果表明,该方法与常用的去噪方法相比,得到能够得到更高的信噪比和更低的均方差。
2 部分代码
%% 基于遗传算法(Genetic Algorithm,GA)优化变分模态分解(variational mode decomposition,VMD)参数
clc
clear all
close all
% 读取数据
data=load('齿轮折断状态测试组1(6).txt');
%采样频率
fs=12800;
% 信号长度
len=1000;
s=data(1:len);
% 采样时间
t = (0:len-1)/fs;
%% 设定遗传算法参数
maxgen=10; % 进化代数,即迭代次数
sizepop=10; % 种群规模
pcross=0.8; % 交叉概率选择(Pc:0-1)
pmutation=0.1; % 变异概率选择(Pm:0-1)
nvar=2; % 优化参数个数为2,分别为VMD的alpha和K
lenchrom=ones(1,nvar); % 个体长度
% 参数范围(VMD的alpha和K)
bound=[500 2000;
subplot(m,1,i)
plot(t,u(i,:),'b-','linewidth',1)
ylabel(['IMF',num2str(i)]);
axis tight
end
subplot(m,1,m)
plot(t,u(m,:),'b-','linewidth',1)
ylabel('Res');
% figure
% for i=1:m-1
% subplot(m,1,i)
% hua_fft(u(i,:),fs,1)
% ylabel(['FFT of IMF',num2str(i)]);
% end
% subplot(m,1,m)
% hua_fft(u(m,:),fs,1)
% ylabel('FFT of Res');
figure
for i=1:m-1
subplot(m,1,i)
%% FFT 变换
[cc,y_f]=hua_fft(u(i,:),fs,1);
plot(y_f,cc,'b','LineWIdth',1.5);
% hua_fft(u(i,:),fs,1)
ylabel(['FFT of IMF',num2str(i)]);
axis tight
end
subplot(m,1,m)
[cc,y_f]=hua_fft(u(m,:),fs,1);
plot(y_f,cc,'b','LineWIdth',1.5);
% hua_fft(u(m,:),fs,1)
axis tight
ylabel('FFT of Res');
3 仿真结果
4 参考文献
[1]刘嘉敏, 彭玲, 刘军委,等. 基于遗传算法的VMD参数优化与小波阈值的轴承振动信号去噪分析[C]// 第二十七届全国振动与噪声应用学术会议论文集. 2016.
博主简介:擅长智能优化算法、神经网络预测、信号处理、元胞自动机、图像处理、路径规划、无人机等多种领域的Matlab仿真,相关matlab代码问题可私信交流。
部分理论引用网络文献,若有侵权联系博主删除。