APP下载

基于STM32的非侵入式负荷监测系统设计①

2021-11-10磊,

关键词:卷积负荷神经网络

陆 磊, 梁 喆

(安徽理工大学电气与信息工程学院,安徽 淮南 232001)

0 引 言

随着国家节能减排深入推进,负荷监测技术受到了广泛关注。由于侵入式负荷监测方法有诸多缺陷,自上世纪80年代Hart[1]教授提出了非侵入式负荷监测的相关概念后,非侵入式负荷监技术逐步发展。中国海洋大学盛梦娇[2]提出了k-means聚类的改进算法应用到负荷监测,完成负荷识别,但其算法精度并不能保证。张玉天[3]等将电流数据转为图片并建立了能够识别二维图像数据的卷积神经网络进行负荷辨识,能够提取独特的负荷特征图,但运算量较大,算法普遍性不强。

虽然目前对负荷辨识算法的研究不断完善,但是对非侵入式负荷监测系统硬件装置的设计与研究较少,而该技术的最终发展目标肯定是商业化的终端装置,因此硬件设计与软件算法的结合成为目前非侵入式负荷监测研究的重点。吴万强[4]等基于SOPC技术设计了一种实验室负荷智能监测装置,将可编程片上系统应用于负荷监测,但其采集装置简单,采样精度较低且易受干扰。王爱囡[5]等采用负荷采集终端搭配算法设计了一种基于事件的非侵入式电力负荷监测系统,其主要依靠算法的优化提高辨识精度,没有改善负荷采集终端的采集精度。

针对上述问题,从硬件设计的角度思考,为了提高采集精度,更好地分析电力负荷特性,设计了一种基于STM32的非侵入式负荷监测系统,利用高精度的信号采集模块,实现实时稳定的负荷数据采集、处理及显示,并结合卷积神经网络算法识别电气设备工作状态。

1 系统总体设计

所设计的非侵入式负荷监测系统由下位机嵌入式系统和上位机处理软件两部分构成。下位机主要包括互感器,信号调理单元,AD转换单元,STM32微控制器单元和通信单元等。上位机处理软件则可以完成采集控制、数据显示、特征提取和负荷识别的功能。系统的结构框图如图1所示。

图1 系统总体设计

系统使用互感器进行电信号采集,采集到的信号经过信号调理单元处理后送入AD转换单元进行模数转换,微处理器通过SPI总线完成对AD转换的控制并获取信号,上位机与下位机通过USB通信模块进行双向通信,并采用Labview虚拟仪器完成数据实时显示,最后再应用辨识算法进行负荷识别。

2 辨识算法设计

系统采用了卷积神经网络作为负荷辨识算法。首先对采集的数据进行计算提取负荷特征量并建立数据集,之后搭建卷积神经网络模型,用数据集对模型进行训练,最后将训练好的模型用以负荷识别。

2.1 负荷特征参数选择及数据集建立

负荷监测实现的重要前提就是数据应覆盖电器运行的特征信息,负荷特征的提取也是实现负荷识别的基础。采用了稳态下的负荷特征参数。

稳态特征大致有以下几种:

XSS=[I,im,Pb,Qb,Sb,Δφb,Hin]

(1)

I表示电流有效值,im为稳态电流的峰值,Pb、Qb、Sb分别为基波的有功功率,无功功率和视在功率,△φb为基波电压电流相位差,Hin(n=1,3,5,7)为奇次谐波电流幅值。

电流和电压有效值计算如式(2),(3):

(2)

(3)

对于周期性的电信号,有功功率定义为瞬时功率在一个周期内的平均值,同理无功功率也是一样,具体公式如式(4),(5):

(4)

(5)

其中U,I是电压有效值和电流有效值,φ是相位差。

选用了电流有效值,有功功率、无功功率和功率因数这四种负荷特征量。并且 使用十进制的double型数据表示负荷特征参数数据集。选用了4种电气设备,有n(n=15)种不同的工作状态,每种组合提取m(m=100)组负荷特征。每个组合负荷特征向量表示如式(6):

Xn=[Xn1,Xn2,…,Xnm]

(6)

其中X=[I,P,Q,cosφ]T。

则所有组合的负荷特征数据集如式(7):

(7)

2.2 卷积神经网络模型的搭建

卷积神经网络的模型使用Python语言里的TensorFlow深度学习框架作为实现平台进行搭建。卷积神经网络模型主要由卷积层,池化层以及密集连接层和Droupout层组成。其中卷积层是由5×5的的矩阵作为卷积核组成,池化层用来降低分辨率从而减小分类误差,密集连接层用来特征提取完后进行分类任务,而Droupout主要用来防止过拟合。

其中卷积层计算用公式(8)描述:

(8)

池化层计算用公式(9)描述:

(9)

3 系统硬件设计

3.1 主控单元

考虑到系统进行实时信号采集需要高速的运算,各个模块也需要一定的接口,因此系统的主控芯片选用了STM32F103C8T6微处理器。该芯片是用64KB的flash作为程序存储器,供电电压2V~3.6V,工作温度在-40℃~85℃,工作频率为72MHz,总线宽度为32位,片上拥有37个输入输出口,RAM容量是20k×8。能够满足系统的工作要求,并且性价比较高。主控单元电路如图2所示。

图2 主控电路原理图

STM32微处理器与AD单元通过SPI总线连接,完成对AD采样的控制,并对采集的数据进行处理。PA11和PA12引脚接通信单元与上位机通信。NRST引脚用于复位,BOOT0和BOOT1用于选择复位后的启动模式。芯片接地需串联滤波电阻保护芯片。

3.2 信号调理单元

系统的AD转换芯片ADS1256的输入电压为0-5V,所以前端通过互感器采集的信号需要经过调理变为合适的信号以便于AD采样。信号调理电路是由AD8629运算放大器,AD8476全差分精密放大器和LTC6911-2可变增益放大器组成。其中AD8629是一款宽带宽、自稳零放大器,具有轨到轨输入和输出摆幅以及低噪声特性,并且有超低失调、漂移和偏置电流特性。系统利用AD8629提供的轨到轨输入和输出摆幅能力,降低输入偏置复杂度,使信噪比达到最大,使采集的信号更加精准。AD8476是功耗极低的全差分放大器,可以将单端信号转换为抗干扰能力更强的差分信号。LTC6911-2是一款低噪声,低输入失调电压,高开环增益的运算放大器,其采用3位数字增益控制,可以控制系统程控放大。信号调理电路如图3所示。

图3 信号调理电路原理图

根据采集的不同信号,LTC6911-2提供八种可变增益,增益可以通过3位IO接口进行调节,选择数值为 0、1、2、4、8、16、32和 64V/V的电压增益,通过引脚控制进行切换。

3.3 AD转换单元

负荷监测系统的工作场合难免会受到环境影响,为了保证AD采样的精度,系统的AD转换单元选用了ADS1256为电路主芯片。ADS1256芯片是高精度低功耗,24位的模数转换芯片。它测量范围广,采集频率高且精度高,体积小,抗干扰性强,稳定性和精度会更优于STM32自带的ADC,更适合用于本系统。AD转换电路如图4所示。

图4 AD转换电路原理图

电路可提供23bits的无噪声精度以及30kSPS的传输速率,为数据采集提供了完整且高精度的测量。支持差分4通道输入,通过SPI总线对其进行控制和通讯,其中CS为片选信号线,SCLK为时钟信号线,DIN和DOUT为输入输出信号线。再加上一根转换状态信号线和一根复位信号线分别接在DRDY引脚和RESET引脚。

ADS1256芯片内置诊断特性,系统采用精密带隙基准电压源ADR03对ADS1256的电压进行校准,减小ADC的误差,保证精度,VREFP和VREFN接基准电压电路。

3.4 通信单元

通信单元用于嵌入式系统与上位机的双向通信,通信单元采用微处理器STM32自带的USB功能进行信号传输,并加入光耦器件进行数字化的电气隔离。综合考虑使用环境等因素,系统选用了TLP521-1光耦器件,并采用了两光耦的设计,提高了系统抗干扰能力。通信单元电路如图5所示。

图5 通信单元电路原理图

4 系统软件设计

4.1 下位机软件流程

下位机软件流程如图6所示,首先对采集装置进行初始化的操作,然后开启中断进行数据采集,通过AD单元的DRDY信号来判断一次AD采集是否完成,当DRDY低电平时即采样完成,之后进行中值滤波,标量还原等处理并将数据上传至上位机,完成一次数据采集。

图6 数据采集流程图

4.2 上位机软件设计

上位机使用了虚拟仪器Labview对数据采集进行控制并显示,其提供很多与传统仪器类似的控件,同时可以下载各种适用于数据采集领域的Labview工具包,用户在此基础上进行开发会方便许多。Labview还可以通过控件调用其他软件进行混合编程,系统直接调用Tensorflow训练好的辨识算法模型,并用负荷特征数据集完成对卷积神经网络模型的训练,可以得到随迭代次数变化的收敛曲线,当迭代次数到200时,曲线趋于平稳,接近于收敛状态,正确率为0.943。训练好的模型可以直接用于负荷识别。

5 实验及分析

5.1 数据采集

将互感器接入线路测试下位机嵌入式系统的性能,设置采样范围±5V,采样频率为1000SPS,选择连续采样模式,采样点数为1024,然后开始采集。如图7所示为采集到的电脑主机的电流波形。

图7 采集装置实验结果

可以看出数据采集装置可以实现数据实时采集及显示的功能。之后通过采集的数据计算提取负荷特征值。

5.2 负荷识别

采用了独热码的方式对负荷进行标记,当系统中负荷进行工作时标签为“1”,没有工作时标签为“0”,如表1所示为四个负荷和他们的标签。通过各个负荷的不同工作状态进行组合,如当四个负荷都工作时标签为“1111”,都不工作时为“0000”,以此类推。

表1 选取的负荷及标签

用训练好的卷积神经网络模型进行负荷识别测试,识别结果用标签进行输出,测试结果如表2:

表2 负荷识别测试结果

通过测试结果可以看出,系统可以完成识别功能,但是随着工作负荷增多,正确率会降低,可以通过增加训练集数据量或增加负荷特征参数来提高其辨识率。

6 结 语

设计的基于STM32的非侵入式负荷监测系统,包括下位机嵌入式系统和上位机处理软件两个部分。通过实验验证,系统可以完成对居民用电负荷的实时监测和有效识别,拥有高精度,高稳定性、高可靠性和高性价比的特点。满足负荷监测需求,并且为非侵入式负荷监测系统的研究提供了硬件基础。

系统仍有几点不足和可改进之处,首先用电设备多种多样,选用的负荷不能代表所有的负荷。其次是系统只在上位机完成了监测功能,要将算法移植到嵌入式中才能使系统更完善且利于应用。

猜你喜欢

卷积负荷神经网络
基于神经网络的船舶电力系统故障诊断方法
人造革合成革拉伸负荷测量不确定度评定
3项标准中维持热负荷要求对比分析
MIV-PSO-BP神经网络用户热负荷预测
基于改进Hopfield神经网络的对地攻击型无人机自主能力评价
一种基于卷积神经网络的地磁基准图构建方法
基于3D-Winograd的快速卷积算法设计及FPGA实现
一种并行不对称空洞卷积模块①
Opening flexible resources by integrating energy systems: A review of flexibility for the modern power system
从滤波器理解卷积