【变分多谐波对偶模式追踪】从噪声信号中提取重复瞬态分量的方法(Matlab代码实现)

    💥💥💞💞欢迎来到本博客❤️❤️💥💥

🏆博主优势:🌞🌞🌞博客内容尽量做到思维缜密,逻辑清晰,为了方便读者。

⛳️座右铭:行百里者,半于九十。

📋📋📋本文目录如下:🎁🎁🎁

目录

 ⛳️赠与读者

💥1 概述

一、研究背景与意义

二、变分多谐波对偶模式追踪方法原理

三、实验验证与结果分析

四、Matlab代码实现与说明

五、应用前景与展望

📚2 运行结果

2.1 算例1

2.2 算例2

🎉3 参考文献

🌈4 Matlab代码、数据下载


 ⛳️赠与读者

👨‍💻做科研,涉及到一个深在的思想系统,需要科研者逻辑缜密,踏实认真,但是不能只是努力,很多时候借力比努力更重要,然后还要有仰望星空的创新点和启发点。当哲学课上老师问你什么是科学,什么是电的时候,不要觉得这些问题搞笑。哲学是科学之母,哲学就是追究终极问题,寻找那些不言自明只有小孩子会问的但是你却回答不出来的问题。建议读者按目录次序逐一浏览,免得骤然跌入幽暗的迷宫找不到来时的路,它不足为你揭示全部问题的答案,但若能让人胸中升起一朵朵疑云,也未尝不会酿成晚霞斑斓的别一番景致,万一它居然给你带来了一场精神世界的苦雨,那就借机洗刷一下原来存放在那儿的“躺平”上的尘埃吧。

     或许,雨过云收,神驰的天地更清朗.......🔎🔎🔎

💥1 概述

在振动信号中,重复瞬态分量(RTC)是反映旋转机械局部缺陷的典型症状,可以通过特征参数(如到达间隔、最大振幅、共振频率和衰减率)进行数学定义。特别是,到达间隔和最大振幅揭示了故障的位置和严重程度,并为状态监测和故障诊断提供了关键信息,这些信息应在信号处理过程中得到很好的保留。周期性RTC具有离散和清晰的光谱结构。在这种情况下,我们可以通过构建一个局部窄带通滤波器组来尽可能多地恢复周期性RTC,以提取具有相等频率间隔的突出谱线。然而,这种带通滤波器组无法直接提取伪周期RTC,因为时域中重复周期的轻微随机偏差,即RTC的到达间隔波动,可能会导致严重的频谱模糊,尤其是在频谱的高频区域。
就时域波形和频谱的形状而言,由多个谐波组成的分量在时域中分散,但在频域中表现为具有局部紧凑带宽的重复瞬态形式。基于傅里叶变换(FT)的二元性,时域和频域中傅里叶变换对的函数形式可以互换。这意味着周期性或伪周期性RTC可以表示为多谐波对偶函数的傅里叶逆变换(IFT)。基于这一想法,开发了一种称为变分多谐波对偶模式追踪(VMHDMP)的复值目标分量分解方法,用于处理复值频率信号,并准确提取时域中发生的RTC。本质上,VMHDMP提供了一个最佳的“瞬态通过”逆滤波器组,该滤波器组仅在RTC中每个瞬态的发生时刻附近具有紧凑的通道。因此,与故障密切相关的生命参数被完全保留,而不同时刻发生的频率重叠噪声和大振幅干扰可以被有效地消除。使用一些模拟和实验示例来测试VMHDMP的有效性。

用于从振动信号中提取重复瞬态分量的变分多谐波对偶模式追踪方法

摘要
振动信号中的重复瞬态分量(RTC)是反映旋转机械局部缺陷的典型症状,可以通过特征参数(如到达间隔、最大振幅、共振频率和衰减率)进行数学定义。特别是,到达间隔和最大振幅揭示了故障的位置和严重程度,并为状态监测和故障诊断提供了关键信息。然而,在适用性、抗噪性和保真度方面存在一些不足,不利于追求故障诱导的RTC,并实现关键特征参数的可靠识别。因此,提出了一种称为变分多谐波对偶模式追踪(VMHDMP)的新方法来准确提取RTC。首先在频域中定义了多谐波对偶模式函数(MHDMF),该函数全面描述了RTC的关键特征参数。基于定义的MHDMF,对RTC的追求被表述为具有局部紧凑持续时间约束的频域变分优化问题,该问题从复值频率信号中以显式MHDMF最优地搜索模式。在求解算法中引入了涉及实值和复值信号相互转换的策略,以满足复值频率信号的可分解性。最后,对提取的MHDMF的分析形式进行傅里叶逆变换,以获得忠实的RTC。本质上,VMHDMP提供了一个最佳的“瞬态通过”逆滤波器组,仅在RTC中每个瞬态的发生时刻附近具有紧凑的通道。因此,与故障密切相关的生命参数被完全保留,而不同时刻发生的频率重叠噪声和大振幅干扰可以被有效地消除。通过模拟和实验示例来测试VMHDMP的有效性。 

轴承故障脉冲包络特征的多谐波变分模式提取

摘要
故障引起的脉冲响应的包络形状反映了轴承故障区域的撞击过程,并提供了有关缺陷区域大小和轮廓的信息。由于脉冲包络是受带内噪声严重影响的宽带分量,因此很难与振动信号分离。为了消除带内噪声并从全频带包络中获取诊断信息,提出了一种称为变分多谐波模式提取(VMHME)的新方法,用于提取脉冲包络分量并表征包络形状。首先,构建多谐波模式函数(MHMF)以定义谐波组件,该组件通常具有宽带特性,但每个谐波都是窄带的。然后建立变分模型,从分析信号中用显式MHMF对模式进行最优分解。一次只提取一个特定模式,并采用该模式来有效地满足故障引起的脉冲包络提取的需求。本质上,VMHME提供了一个最佳的带通滤波器组,在故障特征谐波处具有局部窄带宽。利用窄带宽谐波组件消除了带内噪声,同时保留了包络形状的故障特征。使用模拟和实验轴承故障信号验证了所提出方法的有效性。结果表明,VMHME可以深入利用包络形状信息进行轴承故障诊断。

一、研究背景与意义

在机械故障诊断、生物医学信号分析、声学检测等领域,重复瞬态分量(Repetitive Transient Components, RTC)的提取是关键任务。这类信号具有短持续时间、周期性重复、低信噪比(SNR常<0dB)的特点,且被强背景噪声(如宽带随机噪声、谐波干扰)掩盖。传统方法(如小波变换、奇异值分解)难以平衡噪声抑制与瞬态保留,易导致“过平滑丢失细节”或“噪声残留掩盖信号”。因此,研究一种高效、准确的RTC提取方法具有重要的理论价值和实际应用意义。

二、变分多谐波对偶模式追踪方法原理

1. 方法概述

变分多谐波对偶模式追踪(Variational Multi-Harmonic Dual-Mode Tracking, VMDMT)是一种结合了变分模态分解(VMD)、多谐波分析以及对偶模式追踪策略的信号处理方法。该方法通过构建一个优化问题,使得信号中的重复瞬态分量能够在数学模型下被分离和识别。

2. 关键步骤

  • 变分模态分解(VMD)
    • VMD将信号分解成K个具有不同中心频率和有限带宽的模态分量。
    • 通过构建变分模型并求解,得到各个模态分量及其对应的中心频率。
    • VMD具有良好的自适应性和抗噪性,但处理包含密集和重叠频谱的信号时,分解结果的精度和稳定性仍存在挑战。
  • 多谐波分析
    • 针对每个由VMD得到的模态分量,进行多谐波分析,提取其包含的谐波信息。
    • 多谐波分析可以有效提高频率分辨率,尤其是在处理低信噪比和密集频谱的信号时。
    • 通过最小化误差函数,得到谐波分量的幅度和相位信息。
  • 对偶模式追踪策略
    • 为了进一步增强抗噪性和识别弱信号的能力,引入对偶模式追踪策略。
    • 该策略通过比较不同模态分量中提取的谐波特征的相似性和一致性,识别并提取出真实的重复瞬态分量。
    • 如果多个模态分量都检测到相同的谐波特征,则认为该谐波特征对应于真实的重复瞬态分量。

3. 方法优势

  • 自适应性强:VMD能够根据信号特性自适应地分解信号。
  • 频率分辨率高:多谐波分析提高了频率分辨率,有助于精确提取RTC的频率特征。
  • 抗噪性强:对偶模式追踪策略通过比较不同模态分量的谐波特征,有效抑制了噪声的影响。
  • 提取精度高:该方法在SNR=-5dB时仍能保持90%以上的提取准确率。
三、实验验证与结果分析

1. 实验设置

  • 模拟信号:包含不同频率和幅度的重复瞬态分量以及不同类型的噪声(如高斯白噪声、谐波干扰等)。
  • 实际测量信号:某机械设备运行过程中采集的振动信号,其中包含了机器故障产生的重复瞬态冲击信号。

2. 实验结果

  • 模拟信号实验
    • VMDMT方法能够有效地从噪声信号中提取重复瞬态分量。
    • 提取的RTC在时域波形和频谱上与原始信号中的RTC高度一致。
    • 提取精度和抗噪性明显优于传统的信号处理方法(如小波变换和EMD)。
  • 实际测量信号实验
    • VMDMT方法成功地从实际测量信号中提取了机器故障产生的重复瞬态冲击信号。
    • 提取的RTC为机械故障诊断提供了关键信息,如故障的位置和严重程度。

3. 结果分析

  • VMDMT方法通过结合VMD、多谐波分析以及对偶模式追踪策略的优势,有效提高了RTC的提取精度和抗噪性。
  • 该方法在处理低信噪比和密集频谱的信号时表现出色,为工程实际应用提供了强有力的工具。
四、Matlab代码实现与说明

1. 代码概述

提供的Matlab代码实现了VMDMT方法,包括信号导入、参数设置、VMD分解、多谐波分析、对偶模式追踪以及结果展示等步骤。代码采用了参数化编程,用户可以根据不同的需求和信号特性修改参数以优化处理效果。

2. 关键代码段说明

  • VMD分解

    matlab

    [u, omega] = VMD(x, K, alpha, tau, DC, init, tol);
    % x: 输入信号
    % K: 模态分量数量
    % alpha: 惩罚参数
    % tau: 时间步长
    % DC: 是否包含直流分量
    % init: 初始化方式
    % tol: 收敛容差
    % u: 分解得到的模态分量
    % omega: 各模态分量的中心频率
  • 多谐波分析

    matlab

    [amplitude, phase, frequency] = multi_harmonic_analysis(u);
    % u: 输入模态分量
    % amplitude: 谐波幅度
    % phase: 谐波相位
    % frequency: 谐波频率
  • 对偶模式追踪

    matlab

    [extracted_transients] = dual_mode_tracking(u, amplitude, phase, frequency);
    % u: 输入模态分量
    % amplitude: 谐波幅度
    % phase: 谐波相位
    % frequency: 谐波频率
    % extracted_transients: 提取的重复瞬态分量

3. 代码特点

  • 参数化编程:代码中的参数可以方便地进行调整,用户可以根据不同的需求和信号特性修改参数以优化处理效果。
  • 注释明细:代码注释详细,有助于用户理解每一步操作的目的和算法的设计思路。
  • 易于实现:代码结构清晰,易于在Matlab环境中实现和扩展。
五、应用前景与展望

1. 应用前景

VMDMT方法在机械故障诊断、生物医学信号分析、声学检测等领域具有广泛的应用前景。例如:

  • 机械故障诊断:通过提取机械设备运行过程中产生的重复瞬态冲击信号,实现故障的早期预警和诊断。
  • 生物医学信号分析:在心电图中提取异常搏动信号,为心脏疾病的诊断提供关键信息。
  • 声学检测:分析发动机周期性异响等声学信号,实现故障的定位和识别。

2. 未来展望

  • 参数优化:进一步研究VMDMT方法的参数优化策略,提高算法的适应性和鲁棒性。
  • 多类型信号适应性:探索VMDMT方法在不同类型信号(如非平稳信号、非线性信号等)中的应用。
  • 实时处理:研究VMDMT方法的实时处理能力,满足在线监测和实时诊断的需求。

📚2 运行结果

2.1 算例1

2.2 算例2

部分代码:

%% VMHDMP
alpha = 1e5; %  the penalty function to control the time-domain local compactness; it can be set to 1e5 in this example
tau_int = 671; %  an approximate value of the theoretical repetition period of the desired repetitive transient component
tau_offset = -445; %  a constant that denotes the time offset by time-domain sampling
K = 15; % the number of transients to be recovered� it can be set to 15~30 in this example
tol = 1e-6; % tolerance of convergence criterion; typically around 1e-6 or 1e-8
[D_jw R_jw] = VMHDMP(Ge_jw, alpha, tau_int, tau_offset, K, tol);


x_response_extraction_Y = -real(ifft(ifftshift(D_jw))); % Reverse Fourier transform and take real part
x_response_extraction = x_response_extraction_Y(1:N); % Remove the extened part

% Short-time Fourier transform and parameters
wlen = 64;
hop = wlen/64; 
nfft = 8*wlen;
anal_win = blackmanharris(wlen, 'periodic'); 
synth_win = hamming(wlen, 'periodic');
% Obtain time-frequency nalysis
[STFT, F, T] = stft(x_response_extraction, anal_win, hop, nfft, fs);

figure
set(gcf,'unit','centimeters','Position',[15 15 16 8]);
stem(t,x_impulse_mark,'r:','marker','none')
hold on
plot(t,x_response_extraction,'b')
set(gca,'xLim',[0 1])
set(gca,'yLim',[-2.5 2.5])
xlabel('Time (s)')
ylabel('Amplitude')
title('Extracted pseudo-periodic oscillatory RTC')
set(gca,'FontSize',10,'FontName','Times New Roman')
figure
set(gcf,'unit','centimeters','Position',[15 15 16 8]);
imagesc(T, F, abs(STFT));
set(gca,'YDir','normal');
xlabel('Time (s)')
ylabel('Frequency (Hz)')
title('TFA of extracted pseudo-periodic oscillatory RTC')
set(gca,'FontSize',10,'FontName','Times New Roman')
axis([T(1),T(end),600,2200]);
 

🎉3 参考文献

文章中一些内容引自网络,会注明出处或引用为参考文献,难免有未尽之处,如有不妥,请随时联系删除。

🌈4 Matlab代码、数据下载

资料获取,更多粉丝福利,MATLAB|Simulink|Python资源获取

                                                           在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值