news 2026/2/11 8:44:03

基于双路神经网络的滚动轴承故障诊断探索

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
基于双路神经网络的滚动轴承故障诊断探索

基于双路神经网络的滚动轴承故障诊断 融合了原始振动信号 和 二维信号时频图像 的多输入(多通道)故障诊断方法 单路和双路都可 时频图像算法可选小波变换,短时傅里叶变换,马尔可夫变迁场,格拉姆角场,S变换,递归图等 数据集可选凯斯西储大学,东南大学,江南大学等等 Pytorch和Tensorflow框架做的。 以下可视化结果适用小波和短时傅里叶变换,其它时频图像算法效果并没有这

在滚动轴承故障诊断领域,如何更精准、高效地识别故障一直是研究热点。今天咱就来聊聊基于双路神经网络,融合原始振动信号与二维信号时频图像的多输入故障诊断方法,并且用 Pytorch 和 Tensorflow 框架来实现。

一、数据准备

数据集咱可以选择凯斯西储大学、东南大学或者江南大学等公开的数据集。这些数据集里包含了不同工况下滚动轴承的振动数据,为我们的模型训练提供了丰富素材。

二、时频图像算法

时频图像算法有多种选择,像小波变换(Wavelet Transform)、短时傅里叶变换(Short - Time Fourier Transform, STFT)、马尔可夫变迁场、格拉姆角场、S 变换、递归图等等。不过可视化结果表明,小波变换和短时傅里叶变换效果相对较好。

1. 短时傅里叶变换代码示例(Python + Numpy)

import numpy as np import matplotlib.pyplot as plt from scipy.signal import stft # 假设我们有一段振动信号数据 fs = 1000 # 采样频率 t = np.linspace(0, 1, fs, endpoint=False) signal = np.sin(2 * np.pi * 50 * t) + np.sin(2 * np.pi * 120 * t) f, t, Zxx = stft(signal, fs=fs, window='hann', nperseg=128, noverlap=120, nfft=256) plt.pcolormesh(t, f, np.abs(Zxx), shading='gouraud') plt.title('STFT Magnitude') plt.ylabel('Frequency [Hz]') plt.xlabel('Time [sec]') plt.show()

代码分析

这段代码首先定义了采样频率fs和时间序列t,生成了一个简单的混合正弦信号signal。然后通过scipy.signal库中的stft函数进行短时傅里叶变换。window='hann'指定了窗函数为汉宁窗,nperseg=128表示每个段的长度,noverlap=120表示段与段之间重叠的点数,nfft=256表示傅里叶变换的点数。最后通过plt.pcolormesh将时频图绘制出来。

2. 小波变换代码示例(Python + PyWavelets)

import pywt import numpy as np import matplotlib.pyplot as plt # 假设同样的振动信号 fs = 1000 t = np.linspace(0, 1, fs, endpoint=False) signal = np.sin(2 * np.pi * 50 * t) + np.sin(2 * np.pi * 120 * t) coeffs = pywt.wavedec(signal, 'db4', level=5) approx = pywt.waverec(coeffs[:1], 'db4') detail = pywt.waverec([None] + coeffs[1:], 'db4') plt.figure(figsize=(12, 6)) plt.subplot(3, 1, 1) plt.plot(t, signal) plt.title('Original Signal') plt.subplot(3, 1, 2) plt.plot(t, approx) plt.title('Approximation Coefficient') plt.subplot(3, 1, 3) plt.plot(t, detail) plt.title('Detail Coefficient') plt.tight_layout() plt.show()

代码分析

这里使用pywt库进行小波变换。pywt.wavedec函数对信号signal进行小波分解,'db4'是选用的小波基函数,level=5表示分解的层数。之后通过pywt.waverec函数分别重构出近似系数和细节系数,并绘图展示原始信号、近似系数和细节系数。

三、双路神经网络模型(以 Pytorch 为例)

import torch import torch.nn as nn class DualPathNet(nn.Module): def __init__(self): super(DualPathNet, self).__init__() # 原始振动信号路径的卷积层 self.conv1_raw = nn.Conv1d(1, 16, kernel_size=5, padding=2) self.relu1_raw = nn.ReLU() self.pool1_raw = nn.MaxPool1d(kernel_size=2, stride=2) # 时频图像路径的卷积层 self.conv1_img = nn.Conv2d(1, 16, kernel_size=5, padding=2) self.relu1_img = nn.ReLU() self.pool1_img = nn.MaxPool2d(kernel_size=2, stride=2) self.fc1 = nn.Linear(16 * 250 + 16 * 125 * 125, 128) self.relu_fc1 = nn.ReLU() self.fc2 = nn.Linear(128, num_classes) def forward(self, x_raw, x_img): out_raw = self.conv1_raw(x_raw) out_raw = self.relu1_raw(out_raw) out_raw = self.pool1_raw(out_raw) out_raw = out_raw.view(-1, 16 * 250) out_img = self.conv1_img(x_img) out_img = self.relu1_img(out_img) out_img = self.pool1_img(out_img) out_img = out_img.view(-1, 16 * 125 * 125) out = torch.cat((out_raw, out_img), 1) out = self.fc1(out) out = self.relu_fc1(out) out = self.fc2(out) return out

代码分析

这个DualPathNet类定义了双路神经网络。初始化函数init中分别定义了原始振动信号路径(一维卷积层)和时频图像路径(二维卷积层)的网络结构。在forward函数中,分别对输入的原始振动信号xraw和时频图像ximg进行卷积、激活、池化操作,然后将两者展平并拼接起来,经过全连接层fc1fc2输出最终结果。

四、总结

基于双路神经网络,融合原始振动信号和二维时频图像的故障诊断方法,在理论和实践上都展现出一定优势。通过选择合适的时频图像算法和搭建有效的神经网络模型,有望在滚动轴承故障诊断中取得更好的效果。后续还可以进一步探索不同数据集、不同时频图像算法对诊断精度的影响,不断优化模型性能。

基于双路神经网络的滚动轴承故障诊断 融合了原始振动信号 和 二维信号时频图像 的多输入(多通道)故障诊断方法 单路和双路都可 时频图像算法可选小波变换,短时傅里叶变换,马尔可夫变迁场,格拉姆角场,S变换,递归图等 数据集可选凯斯西储大学,东南大学,江南大学等等 Pytorch和Tensorflow框架做的。 以下可视化结果适用小波和短时傅里叶变换,其它时频图像算法效果并没有这

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/2/11 8:22:58

深度解析:Redis如何解决大数据热点问题

深度解析:Redis如何解决大数据热点问题关键词:Redis、热点问题、缓存击穿、缓存穿透、热点发现、流量削峰、分布式锁摘要:在高并发场景下,Redis作为“内存数据库急先锋”,常因某个Key被百万次访问(热点Key&…

作者头像 李华
网站建设 2026/2/10 17:02:50

YOLO26涨点改进 | 全网独家首发,卷积创新改进篇 | TGRS 2025 | 引入FSConv频率–空间卷积模块,通过小波分解提取高频信息,突出图像中的细节与边缘,助力YOLO26有效涨点

一、本文介绍 🔥本文给大家介绍使用 FSConv 频率–空间卷积模块改进YOLO26 网络模型,能够显著增强网络对红外图像、小目标和复杂背景的感知能力。该模块通过小波分解提取高频和低频特征,分别建模细节纹理与全局结构,并利用轻量化卷积高效融合,从而提升特征表达质量。与标…

作者头像 李华
网站建设 2026/2/9 8:46:01

【计算机毕业设计案例】基于ssm的Web的摄影分享平台系统基于Web的摄影分享平台(程序+文档+讲解+定制)

博主介绍:✌️码农一枚 ,专注于大学生项目实战开发、讲解和毕业🚢文撰写修改等。全栈领域优质创作者,博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java、小程序技术领域和毕业项目实战 ✌️技术范围:&am…

作者头像 李华
网站建设 2026/2/11 1:20:14

SSM计算机毕设之基于ssm的英语四六级学习系统英语四六级模拟在线考试系统(完整前后端代码+说明文档+LW,调试定制等)

博主介绍:✌️码农一枚 ,专注于大学生项目实战开发、讲解和毕业🚢文撰写修改等。全栈领域优质创作者,博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java、小程序技术领域和毕业项目实战 ✌️技术范围:&am…

作者头像 李华