当前位置: 首页 > news >正文

基于Labview的旋转机械AI智能诊断系统

1.摘要

本文基于 CWRU 公开轴承数据集提出了一套“AI 轻量级模型 + LabVIEW 智能诊断系统”。

首先,LabVIEW 端构建了可视化、可交互的智能诊断平台。系统能够加载本地振动信号数据,调用训练好的深度学习模型进行故障识别与状态判断界面集成信号时域监测、快速傅里叶变换(FFT)频谱分析和功率谱密度(PSD)计算,能够全面展示信号在时域与频域的特征。系统支持均值、标准差、方差、偏度、峭度等多种时域特征自动提取,并通过直方图直观显示。诊断结果可实时反馈设备运行状态,提供正常/故障报警提示。该系统实现了数据处理、特征分析与智能诊断的一体化,具有跨平台融合、智能化、可扩展和可视化直观等特点,适用于旋转机械设备的状态监测与健康管理。

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

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

本系统是一个基于LabVIEW与Python融合的旋转机械信号分析与智能故障诊断平台,如下图所示。该系统主要面向旋转机械设备的状态监测与智能故障诊断,结合 LabVIEW的可视化界面Python的深度学习模型,实现了从信号采集、分析到智能诊断的完整流程。

图1. 智能诊断系统运行界面

Labview智能诊断系统的具体功能如下:

2.1 数据加载与诊断

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

2.2 信号监测与显示

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

2.3 特征提取与分析

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

2.4 设备状态监测

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

2.5 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

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.dtcms.com/a/346796.html

相关文章:

  • docker:compose
  • 科技赋能,宁夏农业绘就塞上新“丰”景
  • 前端 H5分片上传 vue实现大文件
  • vue实现小程序oss分片上传
  • 2025年Java在中国开发语言排名分析报告
  • AI Common Notify :统一 AI 编程工具通知的小工具
  • LLM - Agent核心架构:四大“身体”部件
  • 【Spring Boot】集成Redis超详细指南 Redis在Spring Boot中的应用场景
  • GEO优化服务:智能时代营销新赛道的中国引领者——全球行业格局与发展趋势观察
  • react相关知识
  • 鸿蒙中内存泄漏分析
  • 爬虫基础学习-robots协议,以及request各种请求方式的实操
  • 解决Conda访问官方仓库失败:切换国内镜像源的详细教程
  • Python爬虫入门指南:从零开始的网络数据获取之旅
  • 【51单片机】【protues仿真】基于51单片机冰箱系统
  • MYSQL-约束
  • 自学嵌入式第二十六天:数据结构-哈希表、内核链表
  • 【Day 11】238.除自身以外数组的乘积
  • Trae 编辑器在 Python 环境缺少 Pylance,怎么解决
  • 构建现代高并发服务器:从内核机制到架构实践
  • Spring把「手动」的复杂裹成了「自动」的温柔
  • PostgreSQL15——查询详解
  • 【51单片机】【protues仿真】基于51单片机宠物投食器系统
  • Qt图像裁剪实时显示尺寸实现
  • Qt5 高级功能
  • 当 AI 学会 “理解” 人类:自然语言处理的进化与伦理边界
  • 商品与股指类ETF期权买卖五档Tick分钟级历史行情数据分析
  • 【KO】前端面试三
  • GPT-5:天变了吗?还是风停了?
  • 基于Python的农作物病虫害防治网站 Python+Django+Vue.js