某供应商供货批次的本地费控智能电能表由于软件程序设计缺陷,在频繁断电时会出现金额负跳变现象。 故障原因分析:电能表在掉电时使用电解电容的储能为ESAM供电,使用时钟电池为MCU供电。当电能表检测到掉电时,MCU发起指令对ESAM执行扣费操作,当ESAM扣费成功后,而电解电容储能恰于此时耗尽,ESAM未能将扣费结果返回MCU,MCU误认为ESAM扣费未成功。在电能表再次上电时,由于电能表软件程序设计存在缺陷,未读取ESAM的剩余金额进行判断,MCU再次发送ESAM扣费指令,导致对ESAM中金额重复扣费,造成ESAM中的剩余金额低于EEPROM的剩余金额。 1).电能表与ESAM设计基本原理 现有智能电能表CPU与ESAM之间一般采用7816接口总线连接,以实现两者之间的数据传输。基本原理图如下: 电源检测基本原理图 现有电能表电源检测一般分为两种: 1) 采用电源检测芯片,当表计上电工作电源VDD降低到某个阀值时,电源检测芯片输出管脚置低(低电平),当表计上电工作电源VDD高于某个阀值时,电源检测芯片输出管脚置高(高电平)。此时,表计CPU通过判断引脚电平,为低电平时,表计为掉电状态,高电平时,表计为上电状态。 2) 将变压器整流后的电压,通过电阻分压后,得到检测电压,该电压随着外部市电电压变化而变化,表计可设置某个阀值,并定时采样检测电压,当检测电压低于该阀值时,表计为掉电状态,当检测电压高于该阀值时,表计为上电状态。 一般更好合理采用后一种方式,以便更及时检测到掉电状态,CPU及时处理相关掉电程序,保证掉电处理任务完成。 2).造成故障原因深层次分析 造成故障的根本原因是程序设计和硬件设计配合,未充分考虑下电过程CPU供电和ESAM供电的协调,程序流程上不够完善,没有程序容错设计,本故障是典型的上下电程序缺陷和测试、试验不到位引起。 ①.硬件设计上: A、 系统电源设计余量不足,未能保证系统掉电过程所需电能; B、 两个电路不是同一个电源,导致CPU处理时序失效,CPU又未能容错造成; ②.软件设计上: A、软件设计流程上进行保证,下图给出一个错误的流程,解释错误原因。 下图给出一个正确流程图,解释预防的内容; 3).技术和管理防范措施 安全认证功能是电能表数据安全的核心功能,我公司基于二十多年的丰富设计经验,强调风险管控前置模式,对计量相关的故障预防经验丰富,措施有效,从研发设计上、设计测试上、工艺控制上多管齐下防患于未然。 ①.研发设计上 a) 硬件上设计中,对涉及相关计量部分电路,使用标准原理图库,经过市场充分运行验证;电路设计经过公司内部专家评审模式确认;设计采用统一标准,有效运用运行经验; b) 软件上:对涉及相关计量的软件有专用的共享函数库,采用经过运行充分验证的计量函数,结合的规范数据接口,严谨的处理流程和构架,确保计量程序无任何隐患。 ②.设计测试上 a) 硬件上提高标准等级进行测试,小批测试,中批抽样测试; b) 软件上采用大量的标准测试用例,自动化测试软件进行大规模数据加载测试;模拟计量加速测试;对于非标部分,多轮次测试; c) 可靠性测试:模拟现场大负载、程控上下电试验、快速上下电、慢上慢下电实验;及时发现设计和生产上产品缺陷。 模拟现场测试装置 d)载波、RS485通讯帧测试 电能表也容易在载波、RS485通讯帧测试时,由于现场干扰引起数据帧纷乱或限长度,导致程序堆 出错,程序飞走和用电数据出错。公司模拟通讯时非常态帧测试,保证程序可靠和稳定运行。 e)快速插拔CPU卡测试 对带CPU卡产品,由于不同插拔卡速度差异,影响CPU、ESM和CPU卡通讯可靠和数据可靠。公司制定了CPU卡的测试流程,严格进行常规测试和快速插拔等非常规测试,保证CPU卡、ESM和EEPROM数据,保障电能表可靠运行。 f) 成熟产品长期监控,定期抽检进行全性能试验; 3)③工艺质量管控上 a) 关键节点软件自动监控,系统及时预警,及时发现异常; b) 生产中的所有数据通过信息采集,系统自动分析监控; c)校表参数及预置参数经过多重比对,避免错误设定; d)常温和高温老化,系统自动实时监控比对,确保批量质量; |
|