APP下载

基于ARM的智能电表系统研究与设计

2019-03-14王子龙

电脑知识与技术 2019年1期

王子龙

摘要:为更好地解决电网中谐波对电能质量的影响,且针对ZigBee、WiFi等無线技术存在的传输距离有限、对应用环境的依赖性较高等不足,研究设计出一种基于ARM的智能电表系统。采用STM32F401RBT6微控制器,加上ATT7022E电能计量芯片作为系统的核心。利用LoRa无线模块进行组网,通过LoRa网关采集各个电表数据,进行远程充值缴费。同时,采取改进的FFT加窗插值算法来分析解决电网谐波。最后,确立系统总体设计方案,并完成软硬件调试及系统测试。

关键词:智能电表;ARM;电网谐波;LoRa;FFT

中图分类号:TP273      文献标识码:A      文章编号:1009-3044(2019)01-0259-03

Research and Design of Smart Meter based on ARM

WANG Zi-long

(School of Information and Electric Engineering, Hebei University of Engineering, Handan 056038, China)

Abstract: In order to better solve the influence of harmonics on power quality in power grid, and aiming at the shortcomings of ZigBee, WiFi and other wireless technologies, such as limited transmission distance and high dependence on Application environment, an intelligent ammeter system based on ARM is designed. STM32F401RBT6 microcontroller and ATT7022E power metering chip are used as the core of the system. LoRa wireless module is used for networking, and the data of each meter is collected through LoRa gateway for remote charging and payment. At the same time, the improved FFT windowed interpolation algorithm is adopted to analyze and solve the power grid harmonics. Finally, the overall design of the system is established, and hardware and software debugging and system testing are completed.

Key words: Smart Meter; ARM; Power grid harmonics; LoRa; FFT

1  引言

电网中产生的谐波会引起继电保护和自动装置误动作,使电能计量出现混乱,降低智能电表的电能计量精度[1]。而当前对谐波的分析主要是将数字乘法器为中枢或将模拟乘法器为中枢的功率变换器,而都存在着成本高、精准度低且不稳定等特点[2]。同时,智能电表一直面临的问题还有信息的传输问题。传统的电话线通信传输、电力线载波传输等已逐渐被淘汰,而随着物联网时代的到来,越来越多的无线技术应用到智能电表,但基于ZigBee、WiFi等技术的无线抄表方案均存在通信距离短、设备繁琐,网络路由复杂、抗干扰能力弱等缺陷[3]。针对目前智能电表不适用于要求测量准确度高、信息实时交互的场合,且通信距离有限、不具备谐波分析功能的现状,设计研究出一种基于ARM的智能电表系统。

2  系统总体方案设计

系统主要由系统供电、电量测量、LoRa数据传输和谐波分析处理四个部分构成。系统中,专用电量采集芯片ATT7022E通过电流采样和电压采样来收集数据,其中包括互感器和部分的电容、电阻。同时,电流、电压互感器发送到ATT7022E芯片输入引脚的模拟信号还能够转化为数字信号。STM32F401RBT6是整个系统的核心处理芯片,用于数据采集、按键操作检测、LoRa数据传输、谐波分析处理等功能。

在针对处理电力系统中的谐波时,采用FFT算法出现的混叠现象、频谱泄漏、栅栏效应等问题[4],通过加窗插值算法修正FFT运算。能有效地约束谐波以及一些杂波和噪声之间的干扰,从而达到各次谐波中电流、电压相位的精确计量。谐波分析处理流程图如图1所示。

3  系统硬件方案设计

3.1  信号采集电能计量模块

该模块采用的是STM32F401RB加上ATT7022E电能计量芯片作为系统的核心。计量芯片内部含有sigma-deltaADC,这种ADC结构通过不断地叠加计算差值可以实现较高精度的测量。同时还集成了包括电压、电流、功率因数等多种电路,能够采集分析电路中全部的电能参数和数字信号,例如电路中各相线电压、电流有效值、工作频率及功率因数等等,能够很好地完成该系统的电量采集、参数处理和数据分析等任务。

3.2  回路控制模块

系统中通过在各个回路配置了磁保持继电器,使得该智能电表系统能够实现自动控制各相线的开关和闭合。而根据磁保持继电器所具备的磁吸力,只有在启动状态下才会通电,系统在正常运行中不需要通过供电使其工作,因此相比传统的继电器更加节能。系统共配备了三个磁保持继电器,有效避免了因继电器自身的过流能力过高而引发的电路故障。当继电器运行时,在其中一个线圈断电的情况下才能够对另一个线圈提供12V电压使其通电,而线圈的通电与否决定着磁保持继电器的开关动作。

3.3 LoRa通信模块

LoRa 是无线通讯LPWAN广域網技术的其中一种,就目前国内来看,LoRa的应用并不多。该项目采用的是深圳华普微电子有限公司生产的RFM98模块,其体积小巧,成本低且集成度高,在相同应用场合与发射功率条件下,距离是普通FSK模块的3倍以上。系统的网络通信节点主要由中继节点、会聚节点以及末端采集节点三部分组成,通过LoRa无线技术传输手段,实现各节点之间相互通信,并完成电能计量和数据交换;终端采集到的信息发送到会聚节点,然后通过网关传输到服务器上。中继节点的作用是当受到信号干扰等故障时能够保证其他节点之间持续稳定通信。

LoRa集成了数字化扩频技术、数据分析处理功能和校正前端编码功能等[5]。其中,校正前端编码是指在电表信息发送之前会添加部分多余或者重复的信息,除了能够提高系统的可靠性之外,还可以在信息发送过程中及时地修正外来的错误代码。过去比较常用的方式是工作中还需要添加一个数据包,使其能够完成自动修正错误代码的功能。这种方法不仅操作繁琐,还有可能因途径繁多冗杂甚至出现更多的代码错误。而矫正前端编码技术则是将所添加的数据包存放在扩频器中,能够有效地避免工作状态下错误代码的产生。

4  系统软件方案设计

软件系统的开发流程主要包括:创建工程编写主控制程序;专用计量驱动程序;回路控制程序;LoRa驱动、收发程序;谐波处理功能程序。其中,LoRa驱动程序设计中包含SPI初始化,RFM98参数初始化、设置接收频率、无线接收代码、无线发射代码等。

系统软件结构框图如图2所示。

针对系统工作中出现的谐波,应先确定测试芯片是否实现了ADC功能,然后把一系列的数据位流发送到MCU。所以此时的MCU输入端会接受到一系列的位流,而MCU输出端基本由两个部分组成:其中一部分是输出信号脉冲,用来测量能量的精准程度;另一部分是串口端输出,用来输出通过计算求出或谐波处理得到的数据。MCU内部能够实现以下功能:把输入端采集到的一系列数据位流转化成其内部能够计算的数字信号;对这些数字信号进行相应的处理,从而得到系统能够计算和分析的数据;将这些数据进行分析和公式运算求出平均值;利用已知的参数运算得到相应的能量数据;通过输出端口输出能量脉冲信号;将谐波分析需要的电能参数进行采集和插值计算;将计算求出的电能数据作窗函数处理;通过FFT算法将窗函数处理后的信号变换成具体的信号值。

谐波分析功能程序设计具体分为两部分:循环体程序设计和DMA中断。循环体程序设计中,ADC电路的输入端接收的是通过MCU采集得到的数据,且这些电能数据每达到1000个会处理一次,ADC电路会把处理得到的数据转化为数字信号然后发送给SRAM,最后,再通过MCU转化得到系统能够进行分析计算的数据。经上述步骤并进行运算后能够求出数据处理的周期频率是2KHz,即每秒钟数据能够刷新两千次。再设计主程序循环时,每处理完一次数据会给出一个标记信号,主程序只有在收到该信号时才会继续下一步动作,否则将不予执行。总的来说,循环体程序设计的关键在于能否有效地解决数据分析与中断两者之间的关系,MCU当处于工作状态时,软件设计的逻辑关系必须明确合理,否则很有可能出现程序死循环或者先后顺序紊乱等突发状况。在进行中断部分设计的过程中利用DMA功能,可以实现数据的连续性。首先要明确系统此时已经具备的中断条件,然后再有序地完成接下来的指令。系统中设置的DMA内存空间是500个字节,当DMA中存储的字节达到一半时会执行此中断程序。每刷新一次数据会执行一次中断程序,通过运行中断程序,能够将输入到ADC中的电能信号进行转换,然后将数字信号进行采集存储。由于STM32内部具备的DMA功能,能够把数据通过USART、SPI等直接发送给SRAM,不需要以往的由内存再到数据总线来调用数据,能够很好地节省了内存空间,同时还有效地缩短了工作时间。

5  实验结果分析

系统最后采用PM3000A电力分析仪来分析该系统的准确性。PM3000A是一台具有500kHz的高品宽谐波分析仪,通过按键控制内部的低通滤波器通断来针对低频或高频的不同应用场合。利用PM3000A分析得到的谐波信号值就可认为是电网中用于分析谐波的标准值,所以该系统谐波分析的误差可以通过对比系统中经FFT算法得到的数值和标准值计算得出,从而判断能否符合国家标准。

根据上述实验方案,对系统进行了实验,实验所得数据如表1所示。

其中,1为电力分析仪测量数据,2为系统硬件测量数据。谐波值是相对于基波的百分比值。

依据实验所得数据能够看出,系统误差符合国家标准,证明了此设计方案的可行性。

6  总结

文章采用LoRa无线模块进行组网,有效地改善了目前应用到智能电表系统的无线技术所存在的通信距离有限、易受外界影响等问题,并确立了系统的总体结构设计方案。对硬件系统采取模块化设计,并建立和编写了底层驱动程序和应用程序,然后结合硬件平台联调,通过谐波测量实验,收集数据,分析谐波与电表计量精度的关系,验证了本课题采取的FFT加窗插值算法来分析解决谐波对电能质量影响的可行性。

参考文献:

[1] 宋良友.电力系统谐波治理技术[J].科技资讯,2013(12):125-126.

[2]  刘定国.宽频域多类型谐波理论分析及治理方法研究[D].湖南大学,2016.

[3] 范雄飞.基于ZigBee技术的单相智能电表的设计与实现[D].内蒙古大学,2014.

[4] 曾靖翔.间谐波的检测与处理方法[D].济南大学,2016.

[5] 赵文妍.LoRa物理层和MAC层技术综述[J].移动通信,2017,41(17):66-72.

[6] 郑欣.智能电表在智能电网中的功能及扩展应用研究[D].华北电力大学(北京),2016.

[7] 张晓伟.智能电表及集抄系统的运行维护策略[J].现代商贸工业,2016,37(32):196-198.

[8] 杨扬.无线远程智能电表系统研究与设计[J].科技经济导刊,2017(34):21.

[9] 孟庆宁.具有多控制功能的智能电表关键技术研究[D].中国地质大学(北京),2016.