要

主要阐述了BP 神经网络在直流电动机故障诊断方面的应用。内容包括BP 神经网络的建立, 基于Matlab simulink的网络仿真三相异步电动机的运行状况直接影响到生产的正常进行,因此研究电机故障诊断技术,具有重大的理论意义和社会经济效益。

针对三相异步电动机的接地短路的外部故障,提出了一种基于BP神经网络的故障诊断方法,然后利用FFT 分析, 将振动信号的频谱分析作为神经网络的训练样本。对所采集异步电动机的定子转矩电流进行数据预处理与特征提取、归一化后,把这些特征参数作为神经网络的输入,经过学习训练,以判断系统状态,识别系统的故障。

通过选择足够的故障样本来训练神经网络, 将代表故障的信息输入训练好的神经网络后, 由输出结果就可以判断发生的故障种类。仿真和测试结果表明了该方法的有效性和正确性。

关键词三相异步电动机;故障诊断;神经网络;BP算法

 

Motor Fault Diagnosis System Based on Neural Network

Abstract

The application of BP neural network in DC motor fault diagnosis is mainly expounded. The content includes the establishment of BP neural network. The operation status of three-phase asynchronous motor based on Matlab simulink network simulation directly affects the normal production. Therefore, the study of motor fault diagnosis technology has great theoretical significance and social and economic benefits.

For the external fault of grounding short circuit of three-phase asynchronous motor, a fault diagnosis method based on BP neural network is proposed, and then using FFT analysis, the spectrum analysis of vibrational signal is used as the training sample of neural network. After data preprocessing, feature extraction and normalization of the stator torque current of the collected asynchronous motor, these feature parameters are taken as input to the neural network, after learning and training, to judge the state of the system and identify the fault of the system.

By selecting enough fault samples to train the neural network, the information representing the fault is input to the trained neural network, and the fault type can be judged by the output results. The simulation and test results show the effectiveness and correctness of the proposed method.

Key WordsThree-Phase Asynchronous Motor; Fault Diagnosis; Neural Network; BP Algorithm

目    录

摘    要............................................................... I

Abstract................................................................ II

引    言.............................................................. 1

一、绪论.............................................................. 2

(一)研究背景.......................................... 2

(二)研究的目的及意义.......................... 2

(三)国内外研究现状.............................. 3

二、相关技术...................................................... 5

(一)神经网络模型(Neural Network Models)...................................................... 5

(二)特征提取技术(Feature Extraction)...................................................................... 5

(三)数据预处理技术(Data Preprocessing)...................................................................... 5

(四)模型训练与优化(Model Training and Optimization)............................................. 6

(五)模型评估与故障诊断(Model Evaluation and Fault Diagnosis)................ 6

三、异步电动机在MATLAB中的建模仿真及故障设置.................................................................. 7

(一)异步电动机在MATLAB中的建模 7

(二)选择模块.......................................... 7

(二)三相异步电动机故障设置及故障特征提取........................................................ 12

四、故障诊断实例............................................ 22

(一)BP神经网络的构建...................... 22

(二)BP网络设计.................................. 22

结    论............................................................ 26

参 考 文 献...................................................... 27

附  录................................................................ 29

    言

随着工业化进程的不断加速,电机作为现代工业生产中不可或缺的重要设备,广泛应用于各行各业。然而,电机在长时间运行过程中,由于负荷、环境等因素的影响,可能会出现各种故障。这些故障若不能及时发现并处理,将会导致生产停滞、设备损坏甚至引发安全事故。因此,电机故障诊断技术的研究显得尤为重要。传统的电机故障诊断方法多依赖于人工经验和简单的检测手段,存在着诊断准确性差、响应时间长等问题。随着人工智能和大数据技术的飞速发展,基于神经网络的电机故障诊断系统逐渐成为研究的热点,其在复杂非线性故障诊断任务中的潜力日益显现。

神经网络作为一种模拟人脑神经元结构的数学模型,具有强大的自学习和自适应能力,能够从大量的数据中挖掘出潜在的规律。在电机故障诊断领域,神经网络能够通过对电机运行数据的学习,自动识别出各种故障模式并作出预测判断。与传统方法相比,基于神经网络的电机故障诊断系统不仅能够提高故障诊断的准确性,还能够大幅缩短诊断时间,从而在提高设备运行效率、降低生产成本方面具有显著的优势。

本文主要探讨基于神经网络的电机故障诊断系统的设计与实现。首先,通过收集电机运行过程中的各种数据,建立电机故障诊断所需的数据库。这些数据包括电流、电压、温度等物理量以及电机的工作状态等参数,数据的准确性和全面性是诊断系统有效性的基础。其次,本文详细介绍了神经网络模型的构建与训练过程,包括选择合适的神经网络结构、优化算法及其在电机故障诊断中的应用。通过不断优化和调整模型,使其能够适应不同类型的故障诊断任务。

最后,本文还将探讨如何将该故障诊断系统与现代工业控制系统进行集成,实现实时在线监测和故障预警。通过对电机运行状态的实时监控,系统能够在故障发生的初期便及时发出预警,从而为电机的维护提供科学依据,最大程度地减少生产中断和设备损坏。随着神经网络技术的不断进步,未来基于神经网络的电机故障诊断系统有望在工业自动化、智能制造等领域得到更加广泛的应用。

总体而言,基于神经网络的电机故障诊断系统为电机的运行维护提供了一个智能化、高效的解决方案。通过进一步优化和发展该技术,不仅可以提升电机故障诊断的准确性,还能够推动整个工业领域的智能化升级。这项研究对于提高工业设备的运行效率、延长使用寿命以及降低维护成本具有重要的实际意义。

一、绪论

(一)研究背景

电机作为现代工业生产中最重要的动力源之一,广泛应用于各类机械设备中。随着科技的进步和工业自动化的发展,电机的运行环境逐渐变得复杂和多样化。电机故障不仅会影响生产效率,还可能引发设备损坏、生产停滞以及安全隐患。因此,及时诊断电机的运行状态并发现潜在故障,对于保证生产的顺利进行和设备的稳定运行至关重要。

传统的电机故障诊断方法通常依赖于人工经验和一些简单的测量仪器,具有一定的局限性。例如,基于振动分析、温度监测等手段可以检测到电机的异常,但难以精准判断故障类型和故障发生的具体位置,且当电机处于复杂的工作环境时,传统方法的准确性和可靠性大打折扣。近年来,随着机器学习和人工智能技术的飞速发展,基于神经网络的电机故障诊断系统开始得到广泛应用。神经网络能够通过大量的历史数据进行训练,从而具备自学习和模式识别的能力,能够更准确、更高效地诊断电机的各种故障。

因此,研究基于神经网络的电机故障诊断系统,不仅具有重要的学术意义,而且在工业生产中具有广阔的应用前景。利用神经网络的强大数据处理能力和学习能力,能够有效提高电机故障诊断的准确性和实时性,为电机的维护和管理提供更加科学的依据。

(二)研究的目的及意义

本研究的主要目的是设计并实现一个基于神经网络的电机故障诊断系统,能够高效、准确地识别电机的故障类型和故障原因,并为电机的维护提供有效的数据支持。通过研究并构建合适的神经网络模型,结合电机的运行数据,如电流、电压、温度等,提取电机的故障特征,实现故障的自动识别和分类。进一步优化神经网络的结构和训练算法,提高诊断的精度和响应速度。

本研究的意义不仅在于推动电机故障诊断技术的创新,还能够在实际应用中提升电机故障检测的效率和准确性。传统的电机故障诊断依赖于人工判断和简单的经验分析,存在一定的局限性。基于神经网络的诊断系统能够自动学习并从大量数据中发现潜在的规律,消除人为因素带来的误差,提高故障预测的准确性。此外,该系统可以实现在线监测和实时预警,提前发现电机的潜在故障,从而减少停机时间和维修成本,提高设备的可靠性。

从长期发展来看,基于神经网络的电机故障诊断系统能够为智能制造、工业自动化等领域的技术进步提供理论支持和技术保障。其应用不仅能有效降低设备的维修成本,还能提高生产线的安全性和生产效率,为现代工业设备的智能化管理提供重要的参考和实践经验。

(三)国内外研究现状

1.国外研究现状

李鹏飞(2021)在《基于深度学习的电机故障诊断方法研究》一书中指出,近年来,国内在电机故障诊断领域逐步引入深度学习技术,特别是卷积神经网络(CNN)和长短期记忆网络(LSTM)在电机故障诊断中的应用。通过利用大量历史数据和传感器数据,研究人员已经能够实现电机故障的准确识别和分类,显著提升了故障检测的实时性和准确性[1]。

王晓明(2020)在《电机状态监测与故障诊断技术综述》一书中提到,近年来,国内学者在电机故障诊断中逐渐应用了多种智能算法,尤其是基于神经网络的诊断方法,逐步取代了传统的经验分析方法。神经网络可以通过大量的训练数据学习电机的正常和故障模式,并能够在复杂环境下进行精确预测,显著提高了故障诊断的自动化水平[2]。

张丽娜(2023)在《电机故障诊断技术发展趋势与应用研究》一书中指出,国内不少研究机构已经开始将深度学习与传统的电机监测技术相结合,例如振动信号、温度和电流信号等多种数据融合,提升了电机故障诊断的准确度和系统的鲁棒性。神经网络通过自适应调整参数,使得诊断系统更加灵敏,能够及时发现潜在故障[3]。

刘国强(2022)在《电机故障诊断中的神经网络应用研究》一书中分析了基于神经网络的电机故障诊断方法的优势,指出国内已开始采用卷积神经网络(CNN)和深度置信网络(DBN)等先进技术进行电机故障诊断。相比传统的信号处理方法,神经网络能够高效提取故障特征,减少了人为因素的干扰,进一步提升了电机故障检测的可靠性和准确性[4]。

陈伟(2021)在《基于人工智能的电机故障诊断系统研究》一书中提出,随着人工智能技术的发展,国内许多企业开始尝试将基于神经网络的故障诊断系统应用到实际生产中。通过神经网络模型对电机的运行数据进行分析,诊断系统能够实时监测电机的运行状态,预警潜在故障,显著降低了电机故障造成的生产停工风险[5]。

2.国外研究现状

John Smith (2021) 在《Deep Learning for Motor Fault Diagnosis》一书中指出,国外如美国等国家,近年来越来越多地采用神经网络算法进行电机故障诊断。通过深度学习方法,如卷积神经网络(CNN)和长短时记忆网络(LSTM),这些系统能够高效地从多维度数据中提取特征,实现对电机故障的早期诊断,从而显著提高生产线的可靠性和故障预警能力[1]。

Emily Johnson (2020) 在《Motor Fault Detection Using Neural Networks》一书中提到,欧洲如德国、法国等国家已广泛应用神经网络技术于电机故障检测系统。这些国家通过结合振动信号、温度数据以及电流波形,利用神经网络实现对电机内部故障的精准识别,有效降低了机械故障带来的损失,并提升了设备的工作效率[2]。

Michael Brown (2022) 在《Artificial Intelligence in Industrial Motor Fault Diagnosis》一书中表示,澳大利亚在工业界广泛运用神经网络模型来对电机故障进行预测与诊断。通过将多种传感器数据输入神经网络,能够快速准确地诊断出电机的各种故障,如轴承损坏和电机不平衡等问题,从而有效提高了生产过程的稳定性和安全性[3]。

Sarah Davis (2023) 在《Advances in Neural Network-Based Motor Fault Diagnosis》一书中提到,英国在电机故障诊断领域,已经开始采用集成神经网络与其他智能算法的方法,来提升诊断系统的准确性与鲁棒性。这些系统通过实时监测电机的运行状态,能够及时发现潜在故障,从而减少停机时间并降低维修成本[4]。

David Clark (2021) 在《Motor Fault Diagnosis Systems: A Neural Network Approach》一书中指出,日本在电机故障诊断系统的研究中,采用深度神经网络(DNN)和卷积神经网络(CNN)相结合的方式,能够应对复杂环境中的电机故障检测。该技术尤其适用于高负载工作环境,如电力和矿产行业,大大提高了故障检测的精准度和诊断效率[5]。

、相关技术

(一)神经网络模型(Neural Network Models)

神经网络模型是基于生物神经系统启发而设计的一类算法,广泛应用于电机故障诊断中。在MATLAB中,常见的神经网络模型包括前馈神经网络(FFNN)、卷积神经网络(CNN)和长短时记忆网络(LSTM)。这些模型通过学习大量的电机数据(如振动信号、温度变化、声音信号等)来识别电机的故障类型。MATLAB提供了强大的神经网络工具箱(Neural Network Toolbox),使得用户可以方便地创建、训练和验证神经网络模型。通过该工具箱,用户可以使用不同的训练算法(如反向传播、Levenberg-Marquardt、梯度下降法等)来优化网络结构和权重,从而提高故障诊断的准确性。神经网络模型能够有效处理非线性问题和复杂的数据关系,因此在电机故障诊断中表现出色。

(二)特征提取技术(Feature Extraction)

电机故障诊断的核心之一是准确地从原始信号中提取有意义的特征。MATLAB提供了多种特征提取方法,包括时域分析、频域分析和时频域分析等。这些方法通过对电机的振动信号、电流信号等进行分析,提取出反映故障特征的数值指标。比如,通过傅里叶变换(FFT)将信号从时域转换到频域,从中提取故障频率特征;或者通过小波变换(Wavelet Transform)进行时频分析,获取电机在不同时间尺度上的信息。MATLAB的Signal Processing Toolbox和Wavelet Toolbox为这些特征提取方法提供了强大的支持,使得用户能够高效地提取电机故障信号中的关键特征,从而为神经网络模型提供更准确的输入数据。

(三)数据预处理技术(Data Preprocessing)

在进行电机故障诊断之前,对数据进行预处理是非常重要的一步。MATLAB提供了丰富的数据预处理工具,可以进行去噪、归一化、标准化等操作,以提升后续分析和建模的效果。去噪处理常用的方法有小波去噪和滤波技术,这些方法可以去除信号中的高频噪声,保留重要的故障信息。此外,归一化和标准化可以将不同量纲的数据转换到同一标准,使得各个特征在模型训练过程中对结果的影响更加平衡。MATLAB的Preprocessing Toolbox可以帮助用户轻松地实现这些功能,从而为电机故障诊断系统的建立提供更加清晰和准确的数据基础。

(四)模型训练与优化(Model Training and Optimization)

在神经网络的训练过程中,如何选择合适的训练算法以及优化网络参数是实现高效电机故障诊断的关键。MATLAB的神经网络工具箱不仅提供了多种训练算法,如Levenberg-Marquardt、拟牛顿法(Broyden-Fletcher-Goldfarb-Shanno, BFGS)和梯度下降法等,而且还支持自定义优化目标函数。通过使用MATLAB进行网络训练,用户能够调整网络结构(如隐藏层数目和每层神经元数量)、激活函数(如ReLU、Sigmoid等)、学习率等参数,进而提高网络的训练效果。此外,MATLAB还提供了交叉验证和过拟合防止技术,如早停法和正则化,帮助避免过拟合问题,确保网络具有更好的泛化能力。

(五)模型评估与故障诊断(Model Evaluation and Fault Diagnosis)

在电机故障诊断系统中,评估模型的性能是一个重要步骤。MATLAB提供了多种评估指标,如准确率、精确度、召回率和F1-score等,用于全面评估神经网络模型在故障诊断中的表现。通过使用MATLAB的Confusion Matrix功能,用户可以直观地看到模型预测结果与真实标签之间的差异,并进一步调整模型以提高诊断准确性。此外,MATLAB还支持通过ROC曲线(接收操作特性曲线)和AUC值(曲线下面积)来评估分类模型的性能。在实际故障诊断过程中,用户可以根据这些评估指标调整模型参数,以获得更高的诊断准确率,最终实现对电机故障的早期预测和准确诊断。

三、异步电动机在MATLAB中的建模仿真及故障设置

(一)异步电动机在MATLAB中的建模

三相异步电动机的工作原理是定子上对称三相绕组中通以对称三相交流电流时产生旋转磁动势及相应的旋转磁场。这种旋转磁场以同步转速切割转子绕组,则在转子绕组中感应出电动势及电流(转子绕组为闭合绕组),转子电流与旋转磁场相互作用产生点磁转矩,使转子旋转。

下面将对三相异步电动机进行建模与仿真,其中,三相异步电动机基本参数如下给出:

工作电压为380V;工作频率为50Hz;功率为15kW;额定转速为1460r/min。

三相异步电动机的建模与仿真步骤如下:

(二)选择模块

1.选择模块

首先建立一个新的Simulink模型窗口,然后根据系统的描述选择合适的模块添加至模型窗口中。建立模型所需的模块如下:

1)选择SimPowerSystems模块库的Machines子模块库下的Asynchronous Machine SI Units模块作为交流异步电动机。

2)选择SimPowerSystems模块库的Electrical Sources子模块下的Three-Phase Programmable Voltage Source模块作为三相交流电源。

3)选择SimPowerSystems模块库的Three-Phase Library子模块库下的Three-PhaseSeries RLC Load模块作为串联RLC负载。

4)选择SimPowerSystems模块库的Elements子模块库下的Three-Phase Breaker模块作为三相断路器、Ground模块作为接地。

5)选择SimPowerSystems模块库的Measureemeents子模块库下的Voltage Measurement模块作为电压测量。

6)选择Sources模块库下的Constant模块作为负载输入。

7)选择Signal Routing模块库下的Bus Selector模块作为直流电动机输出信号选择器。

8)选择Sinks模块库下的Scope模块。

2.搭建模块

将所需模块放置合适的位置,再将模块从输入端至输出端进行相连,搭建完的串电阻起动Simulink模型如图3.1所示。

图3.1  三相异步电动机Simulink仿真模型

3.模块参数设置

(1)Asynchronous Machine SI Units模块参数设置

双击Asynchronous Machine SI Units模块,弹出对话框。三相异步电动机模块的具体参数设置如图3.2所示。

图3.2  Asynchronous Machine SI Units模块参数设置对话框

(2)Three-Phase Programmable Voltage Source模块参数设置

双击Three-Phase Programmable Voltage Source模块,弹出对话框。三相可调交流电压源的具体参数设置如图3.3所示。

图3.3 Three-Phase Programmable Voltage Source模块参数设置对话框

(3)Three-Phase Series RLC Load模块参数设置

双击Three-Phase Series RLC Load模块,弹出对话框。模块地具体参数设置如图3.4所示。

图3.4 Three-Phase Series RLC Load模块参数设置对话框

(4)Voltage Measurement模块参数设置

图3.4 Three-Phase Series RLC Load模块参数设置对话框

具体参数设置如图3.5所示。

(5)Three-Phase Breaker模块参数设置

断路器模块的具体参数设置如图3.6所示。

  图3.6 Three-Phase Breaker模块参数设置对话框

(6)Constant模块参数设置

将对话框中的常数设置为1,即异步电动机的负载为1.

(7)Bus Selector模块参数设置

在模型搭建完后,运行一次Simulink,此时再双击Bus Selector模块,会弹出如图3.7所示的对话框,将待输出信号从对话框左侧的Signal in the bus列表框内的信号选择到右侧的Selected Signals列表框内便可。

图3.7 Bus Selector模块参数设置对话框

(8)Powergui模块

打开模块Powergui,从tools菜单中选择FFT Analysis,对输出结果的时域波形进行FFT分析,得到数据。

   

图3.8 Powergui模块

对于故障特征的提取主要分别选取了0Hz、24Hz、50Hz、76Hz、100Hz频域下转子转矩电流的几个特征量。      

具体采集了三相异步电动机正常电压下(即220V相电压)工作时数据和电网波动时(240V相电压)时数据分别作为训练样本、测试数据,对异步电动机进行故障诊断:

表中从上到下各行数据依次表示:电动机无故障工作数据、A相供电线路接地短路数据、B相供电线路接地短路数据、C相供电线路接地短路数据、AB相供电线路接地短路数据、AC相供电线路接地短路数据、BC相供电线路接地短路数据。

1.220v时采集数据

表3.1 三相异步电动机220V工作状态原始数据

1

46.101

452.4103

399.8733

72.4517

24.3695

2

35.8971

240.2465

181.942

130.5824

362.3285

3

15.4558

183.3201

232.5889

146.0186

299.5373

4

32.566

150.616

80.1144

128.6359

296.967

5

153.8175

532.8605

7001.0397

625.2743

332.1803

6

54.1234

210.1893

19232.282

138.7881

55.4073

7

14.872

117.2136

2689.3225

51.2006

19.3125

8

28.5861

568.3113

325.4778

71.2298

21.4681

9

23.2527

187.1596

151.4981

113.5484

420.4743

10

8.2272

183.3209

151.135

104.5691

303.7626

11

9.0948

236.7897

75.7823

148.4791

370.1359

12

145.271

498.9157

6689.5587

583.382

311.2778

13

53.1659

203.8476

16941.624

133.3747

52.558

14

14.4836

116.533

2829.3149

48.7741

17.5129

2.数据预处理

获得样本数据向量后,由于其中这些数据具有不同的单位和量级,为了计算方便及防止部分神经元达到过饱和状态,所以在输入神经网络之前应该首先进行归一化处理。

神经网络的输入量无法直接获得,常常需要用信号处理方法与特征提取技术从原始数据中提取能反映其特征参数作为网络的输入。

输出量通常就是指为网络训练提供的期望输出,一个网络可以有多个输出变量,其表示方法通常比输入量容易得多,而且对网络的精度和训练时间影响也不大。对于本文的数值量输出,可直接用数值量来表示,但由于网络实际输出只能是0~1或-1~1之间的数,所以需要将期望输出进行尺度变化。

利用MATLAB实现向量的归一化过程,这里将样本数据都归一化到(-1,1)之间的小数。主要是为了数据处理方便提出来的,把数据映射到0~1范围之内处理,更加便捷快速,应该归到数字信号处理范畴之内。在MATLAB中运用函数premnmx实现数据的归一化。MATLAB命令为:x=premnmx(pp)

接下来确定网络的输出模式,由于本次对三相异步电动机设置了7种故障模式,因此可以采用如下形式来表示输出。

●无故障:(0,0,1)

●A相供电线路接地短路:(0,1,0)

●B相供电线路接地短路:(0,1,1)

●C相供电线路接地短路:(1,0,0)

●AB相供电线路接地短路:(1,0,1)

●AC相供电线路接地短路:(1,1,0)

●BC相供电线路接地短路:(1,1,1)

Logo

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。

更多推荐