首页 > 编程语言 >强噪声下基于mscnn-bigru-attention深度学习模型CWRU(凯斯西储大学)轴承故障诊断(Python代码,tensorflow框架,很容易替换模型和数据集,同时带诊断界面)

强噪声下基于mscnn-bigru-attention深度学习模型CWRU(凯斯西储大学)轴承故障诊断(Python代码,tensorflow框架,很容易替换模型和数据集,同时带诊断界面)

时间:2024-11-04 15:44:50浏览次数:3  
标签:CWRU 模型 样本 噪声 准确率 mscnn 测试 数据 代码

 1.效果视频(以0HP数据集为例,在-30DB下的测试准确率效果)强噪声下基于mscnn-bigru-attention深度学习模型CWRU(凯斯西储大学)轴承故障诊断_哔哩哔哩_bilibili

对原始信号分别添加不同强度的高斯白噪声,以模拟实验数据遇到的实际环境中干扰噪声。

原始信号(以0HP数据为例进行展示,可以明显看出十类原始信号非常纯净,有明显的冲击周期)

添加不同高斯白噪声图(CWRU数据集0hp负载下,内圈故障(IR07)的振动信号加入不同分贝噪声后变化情况)

添加高斯白噪声代码

高斯白噪声定义函数
def add_noise(x, snr):
        """输入原信号,信噪比,输出,加入高斯白噪声的信号
        :param x: 原信号
        :param snr: 信噪比
        :return: 加入高斯白噪声的信号
        """
        P_signal = np.sum(abs(x) ** 2) / len(x)
        P_noise = P_signal / 10 ** (snr / 10.0)
        return x + np.random.randn(len(x)) * np.sqrt(P_noise)

每种负载下均进行了抗噪实验实验结果

2.数据集介绍

2.1.西储大学滚动轴承数据集介绍

          西储大学滚动轴承振动信号的实验数据源自美国凯斯西储大学(Case Western Reserve University,CWRU)电气工程实验室,其提供的数据集已经成为轴承故障诊断领域的标准参考之一,并已广泛应用于各类过程控制与故障诊断实验。试验台包括电机、加速度传感器、转矩传感器、编码耦合器和负载构成。在实验中,滚动轴承振动信号数据以多变量振动序列形式存在,并由数据记录仪在采样频率为12kHz和48kHz的环境下收集。根据转速与负载的不同,可以得到4个工况下的滚动轴承数据集,如表1所示。

表 1      4个工况具体数据

表中(0hp)工况指在转速1797r/min,负载0马力下收集的滚动轴承数据,其他符号以此类推。

图2 数据采集试验装置图

数据集处理

                  CWRU数据集的每种工况共有四种状态:正常状态(N)、内圈故障状态(IF)、外圈故障状态(OF)和滚珠故障状态(BF),同时根据故障部分尺寸的大小可以划分为三种尺寸:小尺寸(0.18毫米)、中尺寸(0.36毫米)和大尺寸(0.53毫米)。因此根据轴承状态和故障尺寸,每个工况中存在十种轴承状态,详见表2。

表2 轴承状态分类

3.项目文件介绍

3.1.checkpoint文件保存的是训练好的模型参数,以供GUI调用,进行对未知数据进行诊断


 3.2.CWRU里面就是保存的原始数据


3.3.测试样本文件夹里面保存的样本数据集打乱后,形成的测试样本
每个样本具体形状:1024个点,因为对原始数据进行切割的时候,选择1024个点为一个样本(可以结合具体不同数据集,改变样本长度),也就是只要有1024个点的输入,GUI就可以诊断


3.4.测试样本真实标签:保存的是每个测试样本真实标签,目的是可以验证模型到底对某个样本预测是否正确。


3.5.main是主程序:308行代码,
主要有数据处理部分代码,模型的一些超参数(训练次数,批量,优化器,学习率等设置)代码,有准确率曲线可视化代码,损失曲线可视化代码,混淆矩阵(以样本个数和百分比呈现)代码,tnse可视化代码,梯形图可视化代码,F1-SCORE可视化代码。
3.6.confusion0和confusion1是混淆矩阵图
3.7.credentials是在GUI界面里点注册的时候,保存的注册账号和密码。
3.8.GUI.py文件:247行,主要有登录和注册的界面设计,有时域分析和频域分析( 时域的均值,方差,标准差,最大值和最小值,偏度,峰度指标,并写在时域图上。获取频率均值,频率峰峰值,频率方差,频率最大值,频率最小值并写在频域图上),还有调用保存好的模型对新的数据诊断,并依据诊断出来的类型给出建议代码
 
3.9.mscnn-bigru-attention.py:保存的是mscnn-bigru-attention模型,目的是为了被code600.py和GUI调用,也可以把模型直接写在main.py和GUI.py里面,但是显得累赘,所以把模型单独写在了一个脚本里。

3.10.add_noise_GUI:95行代码,实现的是对原始信号和添加不同分贝噪声信号进行展示。

4.实验结果

0HP数据集

10DB噪声背景下测试集准确率

-10DB 噪声背景下测试集结果

 

-20DB 噪声背景下测试集准确率

 

-30DB 噪声背景下测试集准确率

1HP数据集

-10DB 噪声背景下测试集准确率

-20DB 噪声背景下测试集准确率 

 

-30DB 噪声背景下测试集准确率  

 

 

 2HP数据集(为节省篇幅,只展示-30DB下结果)

3HP数据集(为节省篇幅,只展示-30DB下结果)

5.总结与反思

标签:CWRU,模型,样本,噪声,准确率,mscnn,测试,数据,代码
From: https://blog.csdn.net/2301_79699110/article/details/143484453

相关文章

  • 带界面下的基于mscnn-bigru-attention深度学习模型江南大学轴承故障诊断(Python代码,很
     1。效果视频:基于mscnn-bigru-attention深度学习模型江南大学轴承故障诊断带界面_哔哩哔哩_bilibili 2.江南大学轴承数据集介绍采样频率:50khz,采样时间:10s转速:6008001000/rpm内圈故障:ib外圈故障:ob滚动体故障:tb正常:N 以600转速下的内圈故障数据为例展示:开始数据......
  • 【学习】软件测试中V模型、W模型、螺旋模型三者介绍
    在软件工程的星辰大海之中,存在着三种独特的航路图:V模型、W模型以及螺旋模型。它们分别以各自的方式描绘了软件开发与测试的不同旅程。首先映入眼帘的是V模型——一个以垂直线条贯穿始终的简洁图形。这个模型如同一座倒立的“V”字形山峰,寓意着软件开发生命周期中的步步攀升与......
  • CMDB模型管理:构筑高效IT运维的坚实基础
    在CMDB中,模型是一个非常重要的概念,在前面的文章中我们提到了模型对于保障CMDB数据准确性的重要性。那么,要如何理解CMDB的模型呢?模型在CMDB中又是什么地位?能起到什么作用呢?一、模型概述在CMDB中,模型指的是对IT基础设施中各种配置项(ConfigurationItems,简称CI)的抽象表示,包括这些配......
  • 说说Java的类加载机制?究竟什么是双亲委派模型?6B
    首先引入一个概念,什么是Java类加载器?一句话总结:类加载器(classloader)用来加载Java类到Java虚拟机中。官方总结:Java类加载器(英语:JavaClassloader)是Java运行时环境(JavaRuntimeEnvironment)的一部分,负责动态加载Java类到Java虚拟机的内存空间中。类通常是按需加载,即第一次使......
  • 外网爆火的LLM应用手册来了!内行人都在学的大模型黑书,评分高达9.9!!!
    Transformer模型介绍朋友们如果需要可以微信扫描下方CSDN官方认证二维码免费领取【保证100%免费】Transformer是工业化、同质化的后深度学习模型,其设计目标是能够在高性能计算机(超级计算机)上以并行方式进行计算。通过同质化,一个Transformer模型可以执行各种任务,而不......
  • 基于模型预测控制(MPC)的微电网调度优化的研究(Matlab代码实现)
    ......
  • continue调用1.5B小模型实现代码fast-apply
    100tok/s生成速度,就问够不够fast?用过cursor的小伙伴一定对有个功能印象深刻,那就是fastapply功能。只要点一下,就可以把对话框中AI生成的代码快速地应用到编辑器的当前代码文件里,然后下一步就是对比变更,accept或者reject代码块,相比于要手动从对话框复制代码到编辑器里粘贴修改,这......
  • Unity网络开发基础(part4.数据通信模型)
    目录前言数据通信模型分散式集中式分布式C/S模型B/S模型P2P模型总结前言        在Unity网络开发中,数据通信模型是实现客户端与服务端之间数据交换的核心。不同的数据通信模型具有不同的特点和适用场景,选择合适的模型对于实现高效、稳定的数据通信至关重......
  • LLM大模型: Segment Anything Model原理详解
    meta在2023.4.5又发了imagesematicsegmentation的文章,名字就叫SegmentAnything;学术圈有个潜规则:title越简单,事情越大,比如7年前的那篇attentionisallyouneed,直接提升了nlp的层次!这次的SegmentAnything同样也很简单,这次又有哪些breakthroughinnovation?1、(1)论文......
  • 美团大模型一面面经,问了这些问题(很大程度凉哈哈)
    美团大模型一面一、大模型基础面试题目前主流的开源模型体系有哪些prefixLM和causalLM区别是什么?涌现能力是啥原因?大模型LLM的架构介绍?二、大模型进阶面试题lama输入句子长度理论上可以无限长吗?什么是LLMs复读机问题?为什么会出现LLMS复读机问题?如......