基于二阶盲源分离方法执行模态识别研究(Matlab代码实现)

简介: 基于二阶盲源分离方法执行模态识别研究(Matlab代码实现)

👨‍🎓个人主页

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

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

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

💥1 概述

本文使用测量数据的分析信号,采用两步JAD算法(白化和旋转)。实质上是对振动响应数据的解析信号应用二阶盲识别(SOBI),以估计复杂的模态和模态响应。

image.gif 编辑

image.gif 编辑

基于二阶盲源分离方法执行模态识别研究

摘要

模态识别是结构动力学领域的关键技术,旨在提取结构的固有频率、阻尼比和振型等参数。传统方法依赖激励信号的精确测量或系统模型先验知识,而二阶盲源分离(Second-Order Blind Identification, SOBI)方法通过利用信号的二阶统计特性,在未知激励场景下实现模态参数的有效提取。本文系统阐述SOBI算法原理及其在模态识别中的应用流程,结合实验验证其准确性,并分析其优势与局限性,提出改进方向。

引言

模态识别的背景与意义

结构模态参数是评估其动力学特性、健康状态及振动控制的核心依据。传统方法如频域分解法、随机子空间法等,需假设激励为白噪声或已知系统模型,但在大型土木工程(如桥梁、高层建筑)和机械系统的实际监测中,环境激励复杂且难以测量,导致传统方法适用性受限。因此,开发无需激励信息的模态识别方法具有重要理论价值与工程意义。

盲源分离技术的引入

盲源分离(Blind Source Separation, BSS)是一种仅依赖观测信号分离独立源信号的技术,无需先验知识。二阶盲源分离(SOBI)作为BSS的典型方法,通过分析信号的时延相关矩阵实现源信号分离,具有计算高效、抗噪声能力强等优势,尤其适用于模态识别中的密集模态分离问题。

SOBI算法原理

算法核心思想

SOBI基于以下假设:

  1. 源信号为统计独立的平稳过程;
  2. 观测信号是源信号的线性混合,混合矩阵未知;
  3. 源信号的二阶统计特性(如自相关衰减特性)可区分。

其核心目标是通过联合对角化多个时延相关矩阵,找到解混矩阵 W,使得分离信号 s(t)=Wx(t) 的时延相关矩阵对角化,其中 x(t) 为观测信号向量,s(t) 为源信号向量。

算法步骤

  1. 预处理:对观测信号进行中心化(去除均值)和白化(消除方差差异),得到零均值、单位方差的信号。
  2. 时延相关矩阵计算:选择一组时延 τ1,τ2,…,τk,计算不同时延下的协方差矩阵 Rx(τi)。
  3. 联合对角化:通过Jacobi算法或迭代最小二乘法,找到正交矩阵 U,使得所有 UTRx(τi)U 近似对角化。
  4. 解混矩阵估计:利用白化矩阵 V 和正交矩阵 U,估计解混矩阵 W=VU。
  5. 源信号分离:通过 s(t)=Wx(t) 分离出独立源信号。

SOBI在模态识别中的应用

模态识别模型构建

image.gif 编辑

应用流程

  1. 数据采集:在结构上布置多个传感器,采集环境激励下的振动响应信号。
  2. 信号预处理:对采集信号进行滤波去噪(如小波降噪、经验模态分解)和中心化处理。
  3. SOBI分离:应用SOBI算法分离出独立模态响应信号 qi(t)。
  4. 模态参数提取
  • 固有频率:对分离信号进行频谱分析,峰值对应频率即为固有频率。
  • 阻尼比:通过半功率带宽法或对数衰减法计算。
  • 振型:分析各传感器信号的相对幅值关系,构建模态振型向量。
  1. 结果验证:将识别结果与理论模型或有限元仿真结果对比,评估准确性。

实验验证与结果分析

简支梁模型实验

以简支梁为对象,采用高斯白噪声激励,通过NI-PXI1052数据采集系统记录4个加速度传感器的响应信号。实验参数如下:

  • 梁尺寸:1200mm×40mm×5mm,材料为Q235钢;
  • 激励信号:零均值、标准差为1、频率范围1-200Hz的高斯白噪声;
  • 传感器布置:均匀分布于梁上。

实验结果

  1. 模态参数识别
  • SOBI算法成功分离出简支梁的前4阶模态响应,频谱分析显示峰值频率分别为23.5Hz、72.1Hz、146.8Hz和225.3Hz,与理论值误差小于2%。
  • 阻尼比识别结果在0.5%-1.2%范围内,与随机子空间法(SSI)结果一致。
  • 模态振型与有限元仿真结果高度吻合,验证了SOBI在振型提取中的有效性。
  1. 对比分析
  • 与独立分量分析(ICA)相比,SOBI在密集模态分离中表现更优,避免了ICA对高阶统计量的依赖。
  • 在噪声水平为-10dB时,SOBI仍能保持90%以上的识别准确率,而传统频域方法误差超过20%。

SOBI方法的优势与局限性

优势

  1. 无需激励信息:适用于环境激励、未知荷载等场景,突破传统方法对激励假设的依赖。
  2. 计算高效:基于二阶统计量,避免高阶统计量计算,适合大规模传感器阵列和实时监测。
  3. 抗噪声能力强:二阶特性对高斯噪声不敏感,在中等噪声水平下仍能保持高精度。
  4. 密集模态分离:通过时延相关矩阵差异分离近频模态,解决传统频域方法难以区分密集模态的问题。

局限性

  1. 模态阶数预估:需预先知道源信号数量,实际应用中阶数未知可能导致过分离或欠分离。
  2. 强噪声与非线性干扰:当噪声能量接近信号或结构存在非线性振动时,分离效果显著下降。
  3. 振型缩放不确定性:分离得到的振型存在幅值缩放问题,需结合参考点或其他方法校准。

改进方向与未来展望

改进方向

  1. 自适应阶数估计:结合信息论准则(如AIC、BIC)或机器学习方法,实现模态阶数的自动识别。
  2. 鲁棒SOBI算法:引入稀疏约束、正则化技术或时频分析,提升强噪声和非线性场景下的分离鲁棒性。
  3. 多传感器优化布置:研究传感器布置对SOBI识别精度的影响,提出最优配置策略。
  4. 融合其他方法:将SOBI与随机子空间法、小波变换等结合,发挥各自优势,提升复杂结构的模态识别性能。

未来展望

随着算法优化和应用场景拓展,SOBI有望成为结构健康监测和振动控制领域的核心技术之一。例如:

  • 大型桥梁监测:通过长期在线监测,实时评估结构损伤位置和严重程度。
  • 机械故障诊断:通过识别旋转机械的模态参数变化,早期预警轴承、齿轮等部件的故障。
  • 航空航天结构分析:在风洞试验或飞行振动数据中,分离出气动弹性模态,优化结构设计。

结论

基于二阶盲源分离的模态识别方法,通过利用信号的二阶统计特性,在未知激励场景下实现了结构模态参数的有效提取。实验验证表明,该方法在固有频率、阻尼比和振型识别中具有较高精度,尤其适用于密集模态和复杂环境激励下的结构分析。尽管存在模态阶数预估、强噪声敏感性等局限性,但通过自适应算法、多方法融合等改进方向,SOBI有望为工程结构的安全运行提供更可靠的技术支撑。

📚2 运行结果

image.gif 编辑

image.gif 编辑

image.gif 编辑 image.gif 编辑

部分代码:

[ld1,cd1]=size(dsine_m);

t=[1:ld1]'./fs;

%

% Call blind modal id algorithm

%

[AaI,Aa,sac,n,svl] = bmidga(dsine_m,fs,2.7,[0,0],20,[30,1]);

%

sa=real(sac); % could also use imaginary part

%

% Modal params by sdof frequency domain method

%

[lsa,csa]=size(sa);

np=7;nfft=2*lsa;

[frqd,frqn,zetap,h,f,sa,i1] = mrsp2mpfd(sa,fs,np,nfft);

Aa=Aa(:,i1);

[Aar]=real_ms2(Aa); % real-valued modeshapes from complex

%

% Plot modal responses

%

ipl=[5,8,10,11,12,13,16,17];

if 1

figure(1);subplot(2,1,1);

plot(t,dsine_m);

xlabel('Time [Sec]');

ylabel('Amplitude');

title('Measured Data');

%

figure(2);subplot(2,1,1);

plot(ff,abs(dsine_mf));

xlabel('Frequency [Hz]');

ylabel('Amplitude');

title('Measured Data');

set(gca,'xlim',[100,370]);

%

figure(1);subplot(2,1,2);

plot(t,sa(:,ipl));

xlabel('Time [Sec]');

ylabel('Amplitude');

title('Modal Response Estimates');

%

figure(2);subplot(2,1,2);

plot(f,abs(h(:,ipl)));

xlabel('Frequency [Hz]');

ylabel('Amplitude');

title('Modal Response Estimates');

set(gca,'xlim',[100,370]);

end

%

% Save

%

Aa1=Aa(:,ipl);Aar1=Aar(:,ipl);frqd1=frqd(ipl);zetap1=zetap(ipl);sa1=sa(:,ipl);

if exist('modes.mat','file') ~= 2

save modes.mat Aa1 Aar1 frqd1 zetap1 sa1

else

save modes.mat Aa1 Aar1 frqd1 zetap1 sa1 -append

end

🎉3 参考文献

部分理论来源于网络,如有侵权请联系删除。

[1]李岩,施雪晴,刘文.基于车桥接触点响应和盲源分离的桥梁模态识别[J/OL].湖南大学学报(自然科学版):1-10[2023-02-28].http://kns.cnki.net/kcms/detail/43.1061.n.20220830.1352.003.html.

[2]刘婷婷,任兴民,郭峰,杨永锋.卷积混合机械非平稳振动信号的二阶盲分离方法[资料获取,更多粉丝福利,MATLAB|Simulink|Python资源获取【请看主页然后私信】

相关文章
|
2月前
|
算法 定位技术 计算机视觉
【水下图像增强】基于波长补偿与去雾的水下图像增强研究(Matlab代码实现)
【水下图像增强】基于波长补偿与去雾的水下图像增强研究(Matlab代码实现)
132 0
|
2月前
|
算法 机器人 计算机视觉
【图像处理】水下图像增强的颜色平衡与融合技术研究(Matlab代码实现)
【图像处理】水下图像增强的颜色平衡与融合技术研究(Matlab代码实现)
118 0
|
2月前
|
机器学习/深度学习 算法 机器人
使用哈里斯角Harris和SIFT算法来实现局部特征匹配(Matlab代码实现)
使用哈里斯角Harris和SIFT算法来实现局部特征匹配(Matlab代码实现)
179 8
|
2月前
|
机器学习/深度学习 编解码 算法
基于OFDM技术的水下声学通信多径信道图像传输研究(Matlab代码实现)
基于OFDM技术的水下声学通信多径信道图像传输研究(Matlab代码实现)
173 8
|
2月前
|
机器学习/深度学习 算法 机器人
【水下图像增强融合算法】基于融合的水下图像与视频增强研究(Matlab代码实现)
【水下图像增强融合算法】基于融合的水下图像与视频增强研究(Matlab代码实现)
276 0
|
2月前
|
新能源 Java Go
【EI复现】参与调峰的储能系统配置方案及经济性分析(Matlab代码实现)
【EI复现】参与调峰的储能系统配置方案及经济性分析(Matlab代码实现)
134 0
|
2月前
|
机器学习/深度学习 数据采集 测试技术
基于CEEMDAN-VMD-BiLSTM的多变量输入单步时序预测研究(Matlab代码实现)
基于CEEMDAN-VMD-BiLSTM的多变量输入单步时序预测研究(Matlab代码实现)
|
2月前
|
机器学习/深度学习 算法 自动驾驶
基于导向滤波的暗通道去雾算法在灰度与彩色图像可见度复原中的研究(Matlab代码实现)
基于导向滤波的暗通道去雾算法在灰度与彩色图像可见度复原中的研究(Matlab代码实现)
189 8
|
2月前
|
编解码 运维 算法
【分布式能源选址与定容】光伏、储能双层优化配置接入配电网研究(Matlab代码实现)
【分布式能源选址与定容】光伏、储能双层优化配置接入配电网研究(Matlab代码实现)
178 12
|
2月前
|
人工智能 数据可视化 网络性能优化
【顶级SCI复现】虚拟电厂的多时间尺度调度:在考虑储能系统容量衰减的同时,整合发电与多用户负荷的灵活性研究(Matlab代码实现)
【顶级SCI复现】虚拟电厂的多时间尺度调度:在考虑储能系统容量衰减的同时,整合发电与多用户负荷的灵活性研究(Matlab代码实现)
133 9

热门文章

最新文章