杨彦杰,元晶晶,张 贺
(1. 河北工业大学省部共建电工装备可靠性与智能化国家重点实验室,天津 300132;2. 河北工业大学河北省电磁场与电器可靠性重点实验室,天津 300132)
随着电力电子技术的快速发展,三相桥式晶闸管整流电路是最广泛的功率变换装置。在励磁功率单元中,整流单元应该能够稳定地提供同步发电机的各种工况下所需要的励磁电流,从而确保了同步发电机和整个电力系统的正常运转[1]。若励磁系统长期工作在恶劣的工作环境下,极易受到损坏,对发电机的可靠运行以及维持发电机输出电能质量构成了严重威肋。因此,在励磁功率单元主回路中对晶闸管故障问题进行实时在线、准确可靠的故障诊断极为重要。
故障诊断方法可划分为数学模型[2,3]和人工智能[4,5]两种。文献[6]通过建立仿真模型获取输出电压Ud,并用傅里叶分析算法对波形分解、提取特征幅值,将其归一化后输入人工神经网络中,从而确定故障部位及故障点;文献[7]利用小波包分析方法对信号波进行分解、提取故障特征,然后利用支持向量机对故障向量进行分类,该方法可以快速有效地完成电力电子整流装置的故障诊断。但上述两种方法均要对波形进行分解、特征提取等操作,其过程相对复杂,且造成严重的误差,对分类结果也会产生较大的影响;文献[8]提出了AlexNet网络用于人脸识别,但该网络结构复杂,计算量大,结果的准确率和损失率曲线存在震荡问题。
因此,文章提出了一种改进的卷积神经网络(Convolutional Neural Networks,CNN)的网络故障诊断模型。该方法可以直接输入原始图片,不需要对信号进行特征分解与提取,具有很大的优势;且模型简单,运算速度快,可自动迭代更新参数,结果准确率稳定且收敛。主要工作如下:首先基于MATLAB/Simulink仿真软件平台,搭建三相桥式全控整流电路的仿真模型,了解每个晶闸管的正常工作状态和故障状态,完成负载整流电压波形和三相母线电流图的生成,并将其制作成网络模型的图片数据集;利用深度学习开源工具TensorFlow设计卷积神经网络(CNN)故障诊断模型;最后,针对结构参数优化诊断模型,实现网络模型训练和最优结果。
在励磁系统中,励磁功率柜的故障较为常见,尤其是励磁功率单元主回路[9]中的三相桥式全控整流电路。其工作原理如图1所示,工作结构简单,利用率高,应用广泛。
图1 三相桥式全控整流电路图
MATLAB是一款强大的商业数学软件工具,其Simulink是一个集成的软件包,用于动态系统的建模、仿真和综合分析,是MATLAB的重要组成部分。使用者可以简洁快速地搭建电路用来研究系统的各种运行状态。图2为搭建三相桥式全控整流仿真电路,仿真了电路的正常工作状态和各晶闸管故障状态的整流输出电压以及三相母线电流。
图2 三相桥式全控整流电路仿真图
仿真参数设置:三相电源UA、UB和UC电压有效值为220V,频率为50Hz,相位分别为0°、-120°、-240°;三相晶闸管整流器(SCR)参数使用默认值;RL负载参数设置:R=1Ω、L=1H;仿真时采用变步长方式下的ode23tb仿真算法。
三相桥式全控整流电路正常工作时,每个周期输出的直流电压波由大小相同的六个脉动波组成。当晶闸管发生故障时,根据波形的相似性可分为五大类。同一类晶闸管故障时,其输出电压波形相似,仅在时间上发生平移。
第一类:无晶闸管故障,即正常工作状态。
第二类:只有一个晶闸管故障。包括6种故障状态,即:VT1、VT2、VT3、VT4、VT5、VT6。
第三类:同一相的两个晶闸管故障。包括3种故障状态,即VT1-VT4、VT2-VT5、VT3-VT6。
第四类:不同相的上下组两个晶闸管故障。包括6种故障状态,即VT1-VT2、VT1-VT6、VT2-VT3、VT3-VT4、VT4-VT5、VT5-VT6。
第五类:不同相的同一组的两个晶闸管故障。包括6种故障状态,即VT1-VT3、VT1-VT5、VT2-VT4、VT2-VT6、VT3-VT5、VT4-VT6。
取三相电源UA、UB和UC电压有效值为220V,触发角为30°时的部分电压波形图如图3所示。整流桥正常运行时,在20ms(工频一个周期)内,有六个相同的波形成分,均是交流输入线电压波形的一部分,且输出电压的平均值是正值。当晶闸管发生不同的故障时,输出电压波各不相同,与正常波形有较大区别,因此将其作为故障诊断的依据。
图3 部分电压波形数据集
根据输出的电压波形,仅仅能识别出是哪种类型,并不能具体的诊断出每个晶闸管的工作状态,所以提出采用具有相差较明显的三相母线电流波形图进行故障诊断与识别。故障类型一共进行22种分类,即正常状态和故障状态VT1、VT2、VT3、VT4、VT5、VT6、VT1-VT2、VT1-VT3、VT1-VT4、VT1-VT5、VT1-VT6、VT2-VT3、VT2-VT4、VT2-VT5、VT2-VT6、VT3-VT4、VT3-VT5、VT3-VT6、VT4-VT5、VT4-VT6、VT5-VT6。取三相电源UA、UB和UC电压有效值为220V,触发角为30°时的部分三相母线电流波形图如图4所示。
图4 部分电流波形数据集
目前,卷积神经网络(CNN)已经成为许多科学领域的研究热点之一,尤其是在模式分类领域。CNN是由一系列层构成,数据在层与层之间流动。基本结构:输入层、卷积层、激活函数、池化层、全连接层,即INPUT-CONV-RELU-POOL-FC。
卷积层是一个特征提取层,每个神经元的输入连接到前一层的局部感受野,并提取局部的特征。卷积层的主要功能是根据卷积核卷积图像,并降低噪音[11],还具有“权值共享”原则。卷积层的计算公式如下所示:
(1)
激活函数是用于添加非线性因素,因为卷积方法来用于处理线性操作,即为每个像素点分配权值。线性模型的表达力不够,因而引入激活函数。常见的激活函数有Sigmoid函数、Tanh函数、ReLU函数、Leaky ReLU函数等。
池化层是特征映射层,通过对每个特征映射图的局部区域进行加权求和,增加偏置后通过一个非线性函数在池化层得到新的特征图[12]。池化的作用是:①减小特征图尺寸,简化网络计算复杂度;②进行特征压缩,提取主要特征。池化层的操作公式如下所示:
(2)
全连接层用来连接所有的特征并将输出值发送给分类器(如Softmax分类器)以用作分类。
最终输出模型的测试准确率和误差损失函数值。卷积神经网络结构和参数如图5所示。
图5 卷积神经网络结构
传统的AlexNet模型结构复杂,参数庞大,运行速度慢,与此同时,模型分类结果的收敛快慢还收到初始化参数的方法和网络权值更新的影响,且准确率和损失率曲线存在震荡问题。综上所述,文章进行了一下五个方面的改进,提出了性能更好的卷积神经网络模型,可以规避以上不足。
1)用卷积层替代三个全连接层。因卷积层的计算是并行的,不需要同时读入内存,这样不仅提高运行速度,也使模型得到优化。
2)将全连接层2的节点数由4096调整为2048,减少参数和权值跟新,提高运行速度,缩短计算时间。
3)删除了所有的LRN图层并更改初始值程序。经实践证明,经过简单的参数初始化并使用Batch Normalization的归一化操作。BN的使用有利于样本的收敛和网络的稳定。
4)使用Adam Optimization基于训练数据迭代地更新神经网络权值,根据输出结果可进行权值的迭代更新。
5)使用xavier_initializer初始化,经试验明比原random_normal_initializer会提升效果。
3.3.1 算法流程图
文章提出的改进卷积神经网络故障诊断模型的算法流程如图6所示,主要分为4个阶段:
图6 算法流程
1)样本图像预处理。首先定点、定间隔的构建样本数据集;其次对图像的颜色、大小进行处理,便于网络学习。
2)设计网络故障诊断模型。在Python编译环境及TensorFlow学习框架进行网络程序的编写与搭建。
3)训练优化网络模型。根据BP(Back Propagation,BP)算法进行权值和阈值的反复调整,使误差信号减小到最低限度。
4)将得到的优化模型进行样本图像数据集的试验,从而输出诊断结果。
3.3.2 数据预处理
本文是利用MATLABSimulink搭建整流电路,将负载整流输出的电压波形和三相母线电流波形作为网络故障模型的输入。对数据的预处理分为以下几个部分:数据采集,格式转换,数据归一化和图像剔除。
1)数据采集。在仿真电路中,通过对触发脉冲设置不同的触发角来输出负载整流电压波形和三相母线电流波形。此时,示波器以固定频率和采样时间进行数据采集,保存为.mat格式文件。
2)格式转化。基于Python语言使用TensorFlow框架中各种库,将仿真生成的.mat格式的数据据进行转化为网络所能识别的.JPG格式图片集。
3)图像剔除。将数据转化为.JPG格式图片后,会产生一些图像的重叠或特征模糊等问题,需要将这些有干扰的图像进行挑选剔除,保证网络训练和测试结果准确性。
4)数据归一化。由于图像的数量级之间存在的差异,这种差异性会影响到数据分析结果。为了消除量纲之间的影响,需要进行数据归一化处理。本文使用min-max标准化方法,是对数据的线性变换,是结果值映射到[0,1]区间,转换函数如下
(3)
式中:max为样本数据的最大值,min为样本数据的最小值。
通过以上数据的预处理后,将特征显著的图片集作为卷积神经网络的输入。CNN模型对图片集进行卷积、池化等各种操作处理,从而实现网络模型的输出。
本文使用WIN10系统、Python3.6.6编译环境以及TensorFlow学习框架进行网络程序的编写。由于本文所使用的图像数据集简单、规律性强,且数据量不是很大,所以采用了基于网络搜获[12]的方法进行调参来优化CNN模型。
4.1.1 学习率
在训练网络模型中,学习率是一个重要的超参数,控制着网络权值调整的速度。一般来说,学习率越大,网络的学习速率越快,但如果太大,超过了极值,将导致准确率降低,损失值停止下降并在某一位置反复震荡;学习率越小,损失梯度下降的速度越慢,所需收敛时间越长。因而选择合适的学习率至关重要。参考大量实验与文献,则该网络模型的学习率设置为0.0001。
4.1.2 批处理样本数量
通常将样本数据集划分为多个批次量实现网络模型对参数的更新优化。即每次处理样本的数量对模型的准确率有重要意义。在一定范围内,增大批处理数量,将会提高内存利用率,加快处理速度,但增大到某些时候,影响最终的收敛精度和泛化性。如表1所示为不同批处理样本数量下的时间结果,可选取批处理量为64时可达到最佳的测试结果。
表1 不同批处理数量的实验结果
4.1.3 迭代次数
迭代次数是指神经网络训练一个完整样本集的次数,每次迭代进行一次模型优化。因样本数据集数量多且具有一定的相似性。选取不同的参数进行实验,如表2所示,当迭代次数为200时,网络模型的准确度为最优。
表2 不同迭代次数的实验结果
经过多次实验参数的选择和网络结构的优化,最终得到了最优网络故障诊断模型,与原始提出的网络模型相比较,其晶闸管输出电压和三相母线电流识别分类的平均准确率分别高达99%、98%,该方法使得对晶闸管故障的诊断更加方便可靠。通过PyCharm、TensorFlow框架生成准确率accuracy变化图和损失值loss变化图分别如下图7和图8所示。
图7 CNN-电压、电流准确率
图8 CNN-电压、电流损失率
由图7和图8可知,随着训练次数的增加,虽然分类结果稍有波动,但该模型对电压、电流总的识别准确率呈增长的趋势,损失率呈下降趋势。在模型训练200次后,电压、电流的分类准确率平均高达99%、98%。结果表明,改进的卷积神经网络对励磁单元中晶闸管故障的识别具有良好的分类结果,在电力故障诊断领域将会有很好的发展前景。
文中对励磁励磁功率单元中整流部分的晶闸管进行了智能故障诊断识别。根据图像识别技术和深度学习的结合,提出了改进的卷积神经网络故障诊断模型,可以得出以下结论:
1)该模型可以直接对原始波形图像进行故障诊断,不依赖人工处理信号,网络模型稳定且收敛,运行速度快,从而准确定位故障的晶闸管。
2)使用了批量归一化BN层、Adam优化器以及xavier_initializer初始化方法等,自动迭代更新权值,防止梯度消失或爆炸、加快训练速度。
3)在实现励磁功率单元故障诊断的基础上,也可用于电力系统中其它部分故障的诊断。仿真结果表明,该方法在励磁装置故障诊断方面具有准确性和可靠性。