基于CSE7780的单相智能电表设计
Alu · 2011-04-03 07:23 · 18728 次点击
CSE7780是深圳市芯海科技有限公司继2007年推出高精度单相有功功率计量芯片CSE7755B实现低成本电表方案,以及2009年推出填补国内数模混合三相电能计量芯片空缺的三相电能计量芯片CSE7752后,又成功推出的能够测量电压有效值、电流有效值、平均有功功率等各种电气参数,且具有防窃电功能的单相多功能计量芯片。基于该芯片的电表方案完全符合国网新标准,从而使得芯海科技成为目前符合国网新标准的少数几个芯片供应商之一。
基于CSE7780设计的智能电能表旨在使设计方案更加合理,使之成为性价比更具优势的产品。本文对计量芯片CSE7780的性能特点和结构电路进行了分析,并从软、硬件两个方面给出符合国网智能电能表要求的设计方法。
符合国网新标准电能计量方案
CSE7780是一款高精度单相电能计量芯片,在动态范围(1500:1)内,非线性误差小于0.1%,提供两路电流有效值、一路电压有效值,在动态400:1的范围内,有效值误差小于0.5%。
该芯片能够提供有功功率、有功能量、电流有效值、电压有效值、线频率、过零中断等功能,以及提供全数字增益、相位、失调校准,有功能量脉冲从PF管脚输出。CSE7780通过一个SPI串行接口可以与外部的MCU进行通信;具有潜动阈值可调功能;内部具有电源监控电路,可以保障芯片的正常工作。CSE7780使用5V单工作电源,内置2.5V电压参考源,也可以使用外置的2.5V参考源。
CSE7780的内部功能结构框图如图1所示。在芯片工作时,将采样到的电流、电压信号先经过增益放大器,将采样信号放大,然后再通过高精度的Sigma-Delta、模数转换器(ADC)将模拟信号转换为数字信号,得到的数字信号通过低通滤波器、高通滤波器滤去高频噪声与直流增益,从而得到需要的电流、电压采样量化的数据。将这些数据相乘,经过低通滤波器输出平均有功功率;电流、电压量化后的数据通过平方电路、低通滤波器、开方电路得到电流、电压有效值。将有功功率按时间积分,计算出有功能量。通过能量频率转换器将得到的能量通过PF引脚输出,也可通过SPI总线获得经过数字信号处理得到的数字化数值。
[attach]45282[/attach]
图1:CSE7780结构框图软件设计
CSE7780寄存器的配置流程如图2所示,先设置好计量控制寄存器,能后再配置校表寄存器。
[attach]45283[/attach]
图2:参数配置流程图1.CSE7780ADC参数设计
以设计一款额定电压220V(Un)、10(60)A电流规格、表常数为1600imp/KWh的电表为例,由于电流输入通道允许输入最大信号为±700mV的峰峰值(有效值为495mVrms),10(60)A的表考虑到通道A发热的情况,可选择200~250微欧的锰铜,若以250微欧的锰铜来采样,在Imax=60A时,通道A的采样信号为60A*250μΩ=15mV,由于电流通道A的允许最大输入信号为495mV,因此电流通道的增益选择可配置成16,通道B采用2500:1的互感器;负载电阻10Ω,电流通道B增益设置为1。电压通道允许最大输入信号为±700mV的峰峰值,考虑到电压会有130%Un过压,可将电压采样信号通过网络电阻将220V交流电压信号降至220mV左右,电压通道增益选择为1。
通过上述的论述,我们需将电流通道A的增益设置为16,电流通道B的增益设置为1,电压通道的增益设置为1,因此SYSCON寄存器应设置为00C0H。
2.HFConst寄存器的设置
电表常数EC为1600imp/KWh;Vu=0.22V;Vi=10A*0.00025Ω*16=40mV;EC=1600;Un=220V;
Ib=10A。根据公式HFConst=INT,可得HFConst=2664H,因此写入HFConst寄存器的值应为2664H。
3.其他计量控制寄存器配置
启动电流的配置:在Un、Ib的情况下,有功功率寄存器PowerA的数值为1A375D7H,按照要求在0.4%Ib的情况下能够正常启动,则Pstar寄存器可配置为0.2%Ib有功功率对应的数值pstar=00D6H(Pstart对应的是PowerA的高24位,计算出的Pstart是16'h00D6)。
能量累加模式的配置:由于需要计量正反有功能量,因此我们须将能量累加模式配置成正反向功率都参与累加,累加方式是代数和方式,负功率有REVQ符号指示,使能PF脉冲输出及有功电能寄存器累加,即可将EMUCON配置为0001H。
4.校表寄存器的配置
a.有功功率校准
功率增益校正:在输入信号为Un、Ib的情况下,从校表台获得通道A的误差为err,[attach]45284[/attach]。如果Pgain>=0,则GPQA=INT,反之若Pgain=0,PHSA=INT(θ/0.020);如果θ