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脚本程序如下:

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 norm

def process_data(data):
    # Ensure the input is a numpy array
    data = np.array(data)
    # Take the first 1024 points
    data = data[:1024]
    fft_norm = True
    if fft_norm:
        # FFT normalization
        data = 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 tensor
    tensor = torch.from_numpy(data).float()
    return tensor

def 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智能诊断系统项目。

相关推荐
武子康13 小时前
AI-调查研究-96-具身智能 机器人场景测试全攻略:从极端环境到实时仿真
人工智能·深度学习·机器学习·ai·架构·系统架构·具身智能
Vizio<13 小时前
《基于 ERT 的稀疏电极机器人皮肤技术》ICRA2020论文解析
论文阅读·人工智能·学习·机器人·触觉传感器
小熊猫程序猿13 小时前
Datawhale 算法笔记 AI硬件与机器人大模型 (五) Isaac Sim 入门
人工智能·笔记·机器人
张较瘦_13 小时前
[论文阅读] AI+软件工程(需求工程)| 告别需求混乱!AI-native时代,需求工程的5大痛点与3大破局方向
论文阅读·人工智能·软件工程
TGITCIC17 小时前
AI Agent竞争进入下半场:模型只是入场券,系统架构决定胜负
人工智能·ai产品经理·ai产品·ai落地·大模型架构·ai架构·大模型产品
斐夷所非19 小时前
人工智能 AI. 机器学习 ML. 深度学习 DL. 神经网络 NN 的区别与联系
人工智能
Funny_AI_LAB21 小时前
OpenAI DevDay 2025:ChatGPT 进化为平台,开启 AI 应用新纪元
人工智能·ai·语言模型·chatgpt
深瞳智检21 小时前
YOLO算法原理详解系列 第002期-YOLOv2 算法原理详解
人工智能·算法·yolo·目标检测·计算机视觉·目标跟踪
深眸财经1 天前
机器人再冲港交所,优艾智合能否破行业困局?
人工智能·机器人
小宁爱Python1 天前
从零搭建 RAG 智能问答系统1:基于 LlamaIndex 与 Chainlit实现最简单的聊天助手
人工智能·后端·python