滚动轴承广泛应用于机械、电力、矿山及航空航天等行业中,轴承的工作状态直接影响设备的运行与安全,因此轴承的故障诊断是非常重要的。然而背景噪声却大大影响了故障诊断的效果。因此信号与噪声的有效分离是故障诊断的关键一环。轴承振动信号是一类典型的非平稳、非线性信号。
针对轴承振动信号夹杂的噪声极大影响有用信息的提取,提出了基于遗传算法的变分模态分解(variational mode decomposition,VMD)与小波阈值去噪方法。该方法首先利用遗传算法选择合适的VMD参数,然后用VMD方法对含噪声的信号进行自适应分解,最后对分解的模态分别进行小波阈值处理后重构信号,得到去噪后的信号。在实际轴承信号的实验结果表明,该方法与常用的去噪方法相比,得到能够得到更高的信噪比和更低的均方差。
xue%% 最优参数
fs=12800;
% 采样时间
t = (0:len-1)/fs;
xxx=bestchrom;
alpha=round(xxx(1));
K=round(xxx(2));
tau = 0; % noise-tolerance (no strict fidelity enforcement)
DC = 0; % no DC part imposed
init = 1; % initialize omegas uniformly
tol = 1e-7;
%% VMD分解
[u, u_hat, omega] = VMD(s, alpha, tau, K, DC, init, tol);
[m,n]=size(u);
for i=1:m-1
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
% subplot(m,1,i)
% hua_fft(u(i,:),fs,1)
% end
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');
[1]刘嘉敏, 彭玲, 刘军委,等. 基于遗传算法的VMD参数优化与小波阈值的轴承振动信号去噪分析[C]// 第二十七届全国振动与噪声应用学术会议论文集. 2016.
博主简介:擅长智能优化算法、神经网络预测、信号处理、元胞自动机、图像处理、路径规划、无人机等多种领域的Matlab仿真,相关matlab代码问题可私信交流。
部分理论引用网络文献,若有侵权联系博主删除。