宋雨蒙
(上海五零盛同信息技术有限公司,上海 200331)
电能是现代工业以及生活的主要能源。电网电能质量的好坏越来越受到关注[1]。因此,提高计量精度、减少误差、提高用户的用电安全等,是目前亟需解决的难题。传统的感应式电表难以满足未来电力市场的发展要求。因此,电子式电表获得了巨大的发展[2]。文献[3]~文献[4]结合 ZigBee 和通用分组无线服务技术(general packet radio service,GPRS)这两种通信方法,对电能进行远程监控。文献[5]采用了RS-485与 WiFi 设计电能测控系统,其可在多种工作模式之间切换。该系统能实现的功能有:电能计量、实时电流感应顺(currect transformer,CT)开路检测、谐波测量等。其不足之处是计量功能与其他功能并没有相互独立,无法保证电能表的计量功能不受其他功能更新的影响。
因此,本文设计了一款高精度三相电能采集板,可以扩展应用于市场上的照明监控终端。其计量功能与其他功能相互独立,可以确保电能表的计量功能不受其他功能更新的影响,且测量精度更高。
照明监控系统如果缺乏电能采集模块,将无法对电能进行计量。目前,市场上的电能计量产品质量参差不齐,精度不高,稳定性差。所以,亟需研发一款稳定性强、精度高且能独立于其他功能的电能采集模块。
三相电能采集板作为照明监控终端的一个功能模块,完成进线总回路(即所有负载回路)A/B/C三相的有功电能、无功电能计量,以及功率因数、频率、有功功率、无功功率、电流、电压采样的功能[6]。
本电能采集板以STM32F0系列芯片为核心。交流采样电路由电压互感器、电流互感器构成。主芯片采集三相电压、电流、功率因数、有功功率、无功功率、有功电能、无功电能等电能数据[7]。软件程序进行电能值累加计算,并通过I2C接口存储到片外EEPROM。
电能采集板系统如图1所示。
图1 电能采集板系统示意图
系统硬件电路主要包括电压电流采样电路[8]、晶振电路、串行外设接口(serial peripheral interface,SPI)通信接口电路、基准电压电路、电源电路。
①采样电路。采样电路采用电压互感器对交流电压前端进行采样,实现了采样数字电路与输入电压零线的完全隔离。因此,可以节省采样前端和CPU的光耦隔离电路、采样芯片的电源隔离电路,有效降低成本。交采电压接口加防浪涌器件保护。电源输入第一级用自恢复保险丝进行保护,第二级压敏电阻钳位。印制电路板布局将强电与弱电隔离,干扰源与信号线分开,避免环形走线,采用电磁兼容性设计。
②晶振电路。电能采集芯片系统时钟为8.192 MHz。因此,系统使用8.192 MHz晶振。
③SPI通信接口电路。电能采集芯片支持SPI与CPU之间通信,最高速率3.5 MHz。SPI含有4根线,分别是片选信号CS、时钟信号SCLK、数据输入DIN、数据输出DOUT。
④基准电压电路。计量芯片内置1.25(1±1%)基准电压,设计时在芯片的REF引脚上加两个电容。一个为1~10 μF电容,另外一个为0.1 μF电容。
⑤电源电路。模拟电源与数字电源间接10 Ω电阻以减少数字噪声,并在靠近AVDD和DVDD引脚处各接一个 0.1 μF去耦电容。
本系统的CPU为STM32F0,编程环境为Keil5。
系统主程序流程是:①初始化系统(系统时钟更新、定时器初始化、USART串口通信初始化、IIC初始化、程序运行指示灯初始化、地址更新函数);②电能采集芯片端口初始化(SPI初始化、端口初始化);③电能采集芯片初始化(芯片参数初始化、EEPROM初始化、从EEPROM读取累计电能值、从EEPROM读取电压电流校准参数、芯片寄存器配置);④每隔1 s,通过SPI读取电能芯片上的电能信息,电能芯片设置为读后清零型,所以MCU需要将电能进行累加计算,存入EEPROM;⑤当主机板下发指令,按协议回复主机板的命令。协议会对指令进行帧头、标志符、地址、长度、命令、循环冗余校验(cyclic randundancy eheck,CRC)等进行判断。命令种类包括软件版本信息、电能数据、EEPROM测试、电压电流校准等。
根据计量芯片的功能,电能采集板对采样数据进行本地累加计算,并写入EEPROM保存,再将累计值上报到主板机,优化了系统的功能。
电能采集芯片对采集的信号进行处理,计算电压电流间的相角、功率、频率、电压相序、谐波等电能信息,存储在对应的寄存器中[9]。MCU通过SPI实现与电能芯片的通信。为了避免因SPI传输受干扰而出现抖动,设计RC滤波电路。主芯片STM32把每秒从电能芯片读取的三相电能和上次存入EEPROM中的三相电能值进行累加运算后,通过IIC接口写入片外EEPROM。下一秒主芯片通过IIC接口读取上次的电能累加值。然后,循环以上的流程。
电能计量优化设计依据:通过空间换寿命,充分利用EEPROM的全部空间,通过对所有地址轮流写电能值,延长了EEPROM的写次数[10],是固定地址写参数寿命的253倍。利用该片外EEPROM,实现电能板对电能的累加功能,可以与其他功能模块独立开。
全局变量P表示页码。其中,page0、page1、page2存储其他参数,page3~page255用于循环储存电能累计值。所以,页码的取值范围是3≤flagN≤255。当标志为5 A时,此页的上一页存放了最新的电能累计值,其默认值是00。它用于断电重新上电后寻找上次电能累计值的存储位置。
将电能板上的EEPROM共分为256页,每页有32个字节,空间一共是8 KB。每页内的32个字节的地址,分别表示为0x20×P,0x20×P+0x01,…,0x20×P+0x1E,0x20×P+0x1F。每页的首地址0x20×P存放标志flag。0x20×P+0x01到0x20×P+0x18共24个字节存放A、B、C三相有功和无功电能累计值。每页的地址0x20×P+0x19处存放下一次电能累计值该写的地址处页码P。电能累计值写EEPROM流程如图2所示。
图2 电能累计值写EEPROM流程
电能采集系统最重要的是稳定、可靠,要免于经常性维护。因此,进行了参数校验设计。
将校准参数存在EEPROM的3个区域,同时计算并存入校验值[11]。当系统每隔一段时间读取参数时,需要判断三个区域值的校验值是否一致。若有一个与其他两个不一致,说明这个区域存储的参数已经不可靠,那么将让其余两个一致区域的参数值覆盖出错区域的参数值,然后读出正确参数值。这样可以保证参数稳定,实现软件硬件化。
执行写EEPROM的操作时,进行写后反读参数校验:写参数之后,延时,再读出参数,比较读出的值与写入值是否一致。若一致,结束;若不一致,则重复3次,仍不成功,则标志出错。
本文加上以上两种参数校验,并且通过软件对通信接口进行定期重置,可以大大提高系统的稳定性和可靠性。
与传统的脉冲校表法相比,功率法校表更简单、快捷[12]。校表系统只需一台高精度电流电压源。
功率法校表流程如下所示。
①计算额定输入时标准的U、I寄存器值,计算F=1.0 L和F=0.5 L时的标准有功功率值,并根据电表常数计算芯片的HFConst。
②搭好校表环境并设置参数,如配置好芯片的模数转换器(analog to digital converter,ADC)增益、HFConst、阈值寄存器等。
③标准源额定输出,读出A相实际电压、电流有效值,计算与理论值的误差,再根据此误差计算出A相电压、电流通道增益寄存器的值,填入并比对校正结果,完成A相U、I通道增益校正。
④标准源电流空载,读空载有效值、功率值,根据空载值计算相应的OFFSET值并填入相应的OFFSET寄存器,完成A相OFFSET校正。
⑤采用相同的方法,完成其他相的增益、OFFSET校正。
⑥校表结束。
通过以上校准流程,对电能芯片的电压电流校准寄存器写校准参数,就可以使测量误差精确到0.3%以下。
试验设备:三相电能采集板,主机板,高精度电压电流源,笔记本安装有串口调试助手软件,RS-485串口调试工具。
试验过程:设置高精度电压电流源输出电压220 V、电流2 A,将设备上电,打开串口调试软件。
用串口调试助手软件发出以下错误协议帧:帧头错误、标识错误、地址错误、命令错误、CRC错误,电能采集板均不会回复。
通过以上协议测试,电能采集板可以稳定工作,并与其他功能模块稳定通信。
设置高精度电压电流源输出220 V、2 A,将电能板软件校准前后的数据通过RS-485串口上报主机板。
通过测试可以看出,校准后电能采集板采集电能数据误差不超过0.3%,精度相对校准前有显著提高。
为测试电能采集板的性能,还进行了包括复位功能测试、设备参数存储测试、温升试验、高低温准确度与湿热试验、快速脉冲试验、冲击耐压试验等试验。以上试验均成功通过。
试验要求:电能累计值每秒钟进行一次累加与EEPROM存储。当发生系统复位、掉电重启或定期参数CRC异常时,从EEPROM中重新读取更新电能累计值。重新读取的累计值与上一次存储的累计值应保持一致。
重复4.1节中的试验过程:通过RS-485串口观察电能数据中的当前累计电能,对电能采集板进行手动系统复位操作或掉电重启;同时,对高精度电压电流源断电,待电能采集板重新启动后,再通过串口调试助手观察当前累计电能。将本次读取到的电能累计值与复位前的电能累计值进行对比,试验结果符合上述试验要求。
本文提供了一种简单三相电能采集板的设计方法。采用该方法设计的电能表稳定性好、准确性高。本文采用了三相电能计量芯片结合意法半导体STM32,通过硬件电路设计、软件程序设计,最终实现了对电压、电流、功率、功率因数等电能数据的采集、存储与上报。加上软件校准以后,经过长时间的试验测试,系统可以稳定工作、正常通信,并且所有的电能数据误差都在0.3%以下,满足设计要求。