AI实时故障诊断系统(实时采集信号)

1.摘要

本文设计了一套“基于Labview的旋转机械信号分析与故障诊断系统(可部署AI模型和实时监测设备运行状态)。首先,LabVIEW 端构建了信号采集与设备状态实时监测模块本地数据故障诊断模块该系统实现了“数据采集、数据处理、时频域特征分析、实时监测和本地诊断”的一体化,具有跨平台融合、智能化、可扩展和可视化直观等特点,适用于旋转机械设备的状态监测与健康管理。

(1)对于信号采集与设备状态实时监测模块,系统能够实时采集设备的振动\电压\电流\声音等信号,并可以加载AI模型对采集到的信号进行实时故障诊断。系统界面集成信号时域监测、快速傅里叶变换(FFT)频谱分析和功率谱密度(PSD)计算,能够全面展示信号在时域与频域的特征系统支持均值、标准差、方差、偏度、峭度等多种时域特征自动提取并通过直方图直观显示诊断结果可实时反馈设备运行状态,提供正常/故障报警提示。(2)对于本地数据故障诊断模块,系统可以加载本地振动信号数据,调用训练好的AI模型进行故障识别与状态判断。同样地,该模块也具有上述的时频域分析模块。

其次,描述了凯斯西储大学的电机试验台在 0–3 hp 四种负载、12 kHz 采样率下采集了正常、内圈、外圈及滚动体共 10 类故障状态的振动信号,并按 7/14/21 mils 三种损伤直径建立数据集。接着,提出“FFT+归一化+重塑”的数据预处理流程,将 1024 点一维时域信号转换为 32 × 32 的二维频域张量,适配轻量级卷积网络。最后,模型端采用融合深度可分离卷积与反向残差结构的轻量化主干网络,并引入深度领域自适应网络(DAN)与最大均值差异(MMD)实现无监督跨工况领域自适应,完成跨工况迁移诊断

2.Labview智能诊断系统界面介绍

2.1信号采集与设备状态实时监测模块

数据采集与实时故障诊断的整体界面如下图所示。该界面需要连接NI的信号采集卡并采集数据,然后将实时采集的数据输入模型,模型可以实时输出设备的运行状态。由于无法采集CWRU轴承试验台的真实信号,因此本系统模拟采集电压信号进行实时诊断。用户若采集自己的试验台信号请连接真实的NI采集卡,然后更换设备状态监测的标签和试验台图片。

2.1.1函数调用与模型加载

首先设置Python 程序路径,并调用Python训练好的AI模型,进而实现对采集到的信号的实时诊断。

2.1.2信号实时监测

系统可以记录设备运行期间的整体信号,也可以实时显示正在被诊断的信号,如下图所示。

2.1.3信号的时频域特征分析

系统可以实时计算诊断信号的时域特征,并可以对诊断信号进行频域分析,如下图所示。

 2.1.4 Python集成

系统能调用Python脚本和已训练好的深度学习模型。支持模型加载与预测,结合LabVIEW界面实现人机交互。Labview调用的python脚本程序如下:

from models.Lightweight_model import Lightweight_model
import torch
import numpy as np
from scipy.fftpack import fft
from sklearn.preprocessing import normalize as normdef process_data(data):# Ensure the input is a numpy arraydata = np.array(data)# Take the first 1024 pointsdata = data[:1024]fft_norm = Trueif fft_norm:# FFT normalizationdata = abs(fft(data))data = norm(data.reshape(1, -1))else:pass# Reshape to (1, 1, 32, 32)data = data.reshape(1, 1, 32, 32)# Convert to a PyTorch tensortensor = torch.from_numpy(data).float()return tensordef predict(data, model_path):diagnostic_data = process_data(data)model = Lightweight_model(class_num=10)  # num_classes根据数据集类别数进行修改model.load_state_dict(torch.load(model_path, map_location='cpu'))  # 加载模型参数model.eval()with torch.no_grad():output, _, _, _, _ = model(diagnostic_data)_, predicted = torch.max(output.data, 1)return predicted

2.2本地数据故障诊断模块

该模块主要通过加载本地数据并对数据进行故障诊断。该模块实现了数据加载、分析到智能诊断的完整流程。以加载内圈0.2mm和外圈0.2mm轴承故障信号进行诊断为例,运行结果如下图所示。

2.2.1 数据加载与诊断

  • 系统支持加载本地旋转机械信号数据(例如CWRU轴承数据集)。可以调用Python训练好的AI模型,实现对新输入信号的自动故障识别。

2.2.2 信号监测与显示

可加载并显示诊断信号的时域波形。进行快速傅里叶变换(FFT),显示信号的频域特征。提供功率谱密度(PSD)分析,辅助判别故障特征频率。

2.2.3 特征提取与分析

自动计算时域统计特征(均值、标准差、偏度、峭度等)。提供直方图展示时域特征分布情况。

2.2.4 设备状态监测

系统通过AI模型的诊断结果输出设备运行状态(如Normal、Fault)。配置报警指示灯,若发现异常则红灯报警。

3. 深度自适应迁移学习网络介绍

基于Labview的智能诊断系统将调用深度自适应网络(Deep Adaptation Network,DAN)模型来完旋转机械的智能诊断。接下来将讲解从零开始搭建深度自适应网络(Deep Adaptation Network,DAN)算法,如下图所示。项目包括加载CWRU轴承原始信号,信号处理、数据集制作,模型搭建,DAN深度领域自适应算法设计、特征可视化,混淆矩阵等流程来帮助读者学习基于迁移学习/变工况/域适应的故障诊断。学懂本项目即可了解基于迁移学习的故障诊断基本流程。本项目中[*所有程序代码包含详细的注释*],适合新生小白学习。本项目CWRU数据集变工况迁移诊断准确率可达100%。

3.1试验台介绍

CWRU凯斯西储大学数据集包括四种轴承不同轴承健康状态,即正常状态、内圈故障、外圈故障和滚动体故障。分别有7mils、14mils和21mils三种故障直径(1mils=0.0254mm)。该电动机在0hp、1hp、2hp、3hp四种不同的负载和1730r/min、1750r/min、1772r/min、1797r/min四种不同转速下收集振动信号。

 3.2 数据预处理

数据预处理部分主要是将原始信号划分为训练集和测试集,以用于训练模型。该部分包括:

  •  加载原始信号,从.mat原始数据中加载信号数据;
  • 信号分割,即将原始信号分割为多个样本;
  • 信号变换,将时域信号转换为频域信号;
  • 信号归一化,将信号进行归一化处理;
  • 信号重塑,将信号转换为[batch, channel, height, weight]的数据,以便于输入卷积模型;
  • 数据集生成,将每个类别的样本和标签进行拼接,组成一个完成的训练集。 

3.2.1加载原始信号

从mat文件中加载原始的信号,如下图所示。

3.2.2信号分割

从原始信号中随机采样n个样本长度为1024的样本,如下图所示。

3.2.3对原始信号进行FFT变换

3.2.4信号重塑

将长度为[1024]的一维频域信号重塑为[32, 32]的二维信号,如下图所示。

3.3.模型介绍

3.3.1模型结构介绍

本项目使用的轻量化模型主要由标准卷积(Conv1和Conv2)、轻量化特征提取块(Block1和Block2)和分组卷积GC组成,如下图所示。

3.3.2模型结构参数介绍

具体的模型结构如下表所示。

结构

卷积核尺寸

步幅

Padding

输出通道

输出尺寸

信号

-/-

-/-

-/-

1

32×32

Conv1

3×3

2

1

48

16×16

PW

1×1

1

0

48

16×16

DW

3×3

2

1

48

8×8

PW

1×1

1

0

48

8×8

Avgpool

3×3

2

1

48

8×8

特征提取模块1通道拼接

96

8×8

PW

1×1

1

0

96

8×8

DW

3×3

2

1

96

4×4

PW

1×1

1

0

96

4×4

Avgpool

3×3

2

1

96

4×4

特征提取模块2通道拼接

192

4×4

GC

3×3

1

1

96

2×2

DW

3×3

2

1

96

1×1

PW

1

2

0

10

1×1

4.项目程序文件

5.说明文档

详细的说明文档如下,详细讲解了基于Labview的旋转机械AI智能诊断系统项目。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若转载,请注明出处:http://www.pswp.cn/web/94844.shtml
繁体地址,请注明出处:http://hk.pswp.cn/web/94844.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【51单片机】【protues仿真】基于51单片机篮球计时计分器数码管系统

目录 一、主要功能 二、使用步骤 三、硬件资源 四、软件设计 五、实验现象 一、主要功能 1、数码管显示 1、比赛时间为15:00,甲乙队比分默认000,通过按键修改 3、比赛运行的状态下,按开始暂停键,比赛暂停&#…

[读论文]Hunyuan 3D 系列

1.0: (adaptive clasisfier guidance,input 输入一个没cam的branch;提高triplane分辨率) 总结: 大规模再train zero123,但角度设置不同;adaptive clasisfier guidance(f…

深入理解文本向量嵌入(Vector Embeddings):原理、实践与应用场景

深入理解文本向量嵌入(Vector Embeddings):原理、实践与应用场景 1. 什么是向量嵌入? 文本向量嵌入(Vector Embedding)是一种将文本转化为数值向量的技术,使得字符串之间的关联性可以通过数值…

微论-神经网络中记忆的演变

从微突触到宏认知:论神经网络中记忆的生成、固化与演化人脑的智能,并非源于单个神经元的孤立活动,而是诞生于由万亿突触连接所构成的庞大而复杂的网络动态之中。在这个网络中,连接权重的强度分布——即强的约束与弱的变数——共同…

机器视觉学习-day07-图像镜像旋转

图像的镜像旋转分为三种,分别使用filpcode的参数表示:flipcode0,垂直翻转(x轴为中线) 垂直翻转可以把src沿着x轴翻转,坐标从(x,y)翻转为(x,-y)。flipcode>0,水平翻转&…

Python备份实战专栏第2/6篇:30分钟搭建企业级API认证系统,安全性吊打90%的方案

30分钟搭建企业级API认证系统,安全性吊打90%的方案 专栏导语:《从零到一:构建企业级Python Web自动化备份系统实战指南》第2篇 作者简介:madechango架构师,负责设计零安全事故的API认证系统,拦截100%非法请…

第6篇:链路追踪系统 - 分布式环境下的请求跟踪

项目地址:https://github.com/nemoob/atlas-log 开箱即用。前言 在微服务架构中,一个用户请求往往会经过多个服务的协作处理。本章将实现一个轻量级的链路追踪系统,让日志具备分布式追踪能力。 分布式链路追踪基础概念 链路追踪的核心价值 #m…

ubuntu25.04编译最新版本qgroundcontrol

编译系统版本: 编译器版本: 编译成功效果

如何在 Docker 和AKS上使用 IIS

前言 在我们的一个客户项目中,我们有一个混合 Swarm 集群,其中包含 Linux 和 Windows 节点。在 Windows 节点上,我们运行了许多 IIS 容器,这些容器运行着多个 Web 应用程序。在这篇博文中,我想向您展示在 Docker 容器中将网站部署到 IIS 上是多么简单。 Internet 信息服…

uniapp 页面favicon.ico文件不存在提示404问题解决

1. uniapp 页面favicon.ico文件不存在提示404问题解决 1.1. 场景 在uniapp中经常出现的&#xff0c;因为找不到 favicon.ico 而报404错误的问题。 GET http://localhost:5174/favicon.ico 404 (Not Found)1.2. 问题原因 在document.ejs中使用link标签相对路径引入文件。 <…

Magicodes.IE.Pdf 生成导出PDF文件 bytes Stream FileStreamResult 下载

1、ExporterAttribute&#xff1a;导出特性 Name&#xff1a;名称 HeaderFontSize&#xff1a;头部字体大小 FontSize&#xff1a;正文字体大小 MaxRowNumberOnASheet&#xff1a;一个Sheet最大允许的行数&#xff0c;设置了之后将输出多个Sheet AutoFitAllColumn&#xff1a;自…

Python LangChain RAG从入门到项目实战10.:质量评价指标体系

好的&#xff0c;RAG (Retrieval-Augmented Generation) 系统的评估是一个多维度的问题&#xff0c;需要同时对检索器 (Retriever) 和生成器 (Generator) 的性能进行衡量。 评估指标主要分为三大类&#xff1a;检索质量、生成质量 和 整体系统质量。下图清晰地展示了这些核心指…

【记录】Copilot|Github Copilot重新学生认证通过方法(2025年7月,包括2FA和认证材料、Why are you not on campus)

文章目录前言步骤最重要的一步前言 事实上&#xff0c;Github Copilot马上就要开源了&#xff0c;我原本的认证过期了。但是在我体验了众多的代码补全工具实在是太难用了之后&#xff0c;我觉得一天也等不了了&#xff0c;就去再一次认证了学生认证。 这次严格了很多&#xff…

【C语言16天强化训练】从基础入门到进阶:Day 13

&#x1f525;个人主页&#xff1a;艾莉丝努力练剑 ❄专栏传送门&#xff1a;《C语言》、《数据结构与算法》、C语言刷题12天IO强训、LeetCode代码强化刷题、洛谷刷题、C/C基础知识知识强化补充、C/C干货分享&学习过程记录 &#x1f349;学习方向&#xff1a;C/C方向学习者…

单元测试到底是什么?该怎么做?

&#x1f345; 点击文末小卡片&#xff0c;免费获取软件测试全套资料&#xff0c;资料在手&#xff0c;涨薪更快一、什么是单元测试&#xff1f;单元测试&#xff08;unit testing&#xff09;&#xff0c;是指对软件中的最小可测试单元进行检查和验证。至于“单元”的大小或范…

PostgreSQL【应用 04】加解密扩展 pgcrypto 使用实例(加密、导出、导入、解密流程说明)

加解密扩展 pgcrypto 使用实例1.需求说明2.工具说明2.1 环境说明2.2 插件添加3.实例分析3.1 测试数据3.2 进行加密3.3 数据导出3.3.1 Navicat 导出3.3.2 copy 命令导出3.4 数据解密3.4.1 Navicat 导入3.4.2 copy 导入3.5 坑1.需求说明 从内网导出敏感数据的时候&#xff0c;对…

SDK、JDK、JRE、JVM的区别

SDK、JDK、JRE、JVM的区别一、SDK二、JDK三、JRE四、JVM五、JDK、JRE、JVM三者关系图一、SDK SDK&#xff08;Software Development Kit&#xff0c;程序软件开发工具包&#xff09;&#xff0c;可以认为jdk只是sdk的一种&#xff08;子集&#xff09;&#xff0c;而当提及jav…

如何启动一个分支网络改造试点?三步走

在多云化、全球化的今天&#xff0c;企业的分支网络早已不仅仅是“能连”的问题。视频会议卡顿、ERP 响应延迟、跨境访问不稳、合规风险增大……这些都让 CIO 和 IT 负责人越来越清楚&#xff1a;分支网络改造是数字化的必修课。但是&#xff0c;面对几百甚至上千个分支机构&am…

四,设计模式-原型模式

目的原型模式的产生是为了解决一个问题&#xff0c;即复制对象时对被复制对象所属类的依赖。当需要复制一个对象时&#xff0c;需要遍历对象中的所有成员并进行复制&#xff0c;但存在一些问题&#xff1a;某些成员对象可能是私有的无法访问。同时要复制某个对象&#xff0c;那…

(笔记)Android窗口管理系统分析

概述 Android窗口管理系统是Android UI框架的核心组件&#xff0c;负责管理所有应用窗口的显示、布局、层级、焦点和输入事件分发。WindowManagerService&#xff08;WMS&#xff09;作为系统服务&#xff0c;协调Surface、Activity、View等组件&#xff0c;为用户提供流畅的界…