有功电能计量IP核的设计
扫描二维码
随时随地手机看文章
摘 要: 对有功电能计量的数学模型进行了分析,给出了相应的IP核实现模型,并详细讨论了CIC抽取滤波器、IIR高通滤波器、FIR低通滤波器、数字频率变换等模块的原理与设计。利用Simulink模型进行了仿真,用VHDL作为设计语言,在QuartusII软件下完成综合和仿真,并在Altera公司的FPGA芯片CycloneII EP2C35F484C8目标板上实现设计。
关键词: 有功功率;FPGA;CIC抽取滤波器;DFC
有功电能是电力市场收费的基本依据,也是电能表计量的首要数据。目前,电能计量的实现基本都是利用单片机控制现成的电能计量芯片及其外围电路[1]。这样实现的电能计量方法处理能力有限,可扩展的存储空间不大、应用范围小、可移植性差,由于受采样速率的限制,难以达到很高的精度,无法满足客户更高的要求[2]。
基于FPGA实现有功电能计量的IP核是一种全新的设计思路和实现方案。FPGA作为一种可以由用户自行配制的高容量密度的专用集成电路,具有全硬件的用户可定制性及重配置性。而IP核是一段具有特定电路功能的硬件描述语言程序,该程序与集成电路工艺无关,可以移植到不同的半导体工艺中生产集成电路芯片。因此基于FPGA的有功电能计量IP核实现的电能计量芯片,设计灵活可靠、功能强大、降低了设计开发的成本,从而更能满足市场的需求。
本文提出一种有功电能计量IP核的FPGA设计方案,并着重讨论了CIC抽取滤波器、去直流高通滤波器、FIR低通滤波器和数字频率变换器等模块的原理与设计,用VHDL实现了各个功能模块。使用Simulink建模对该系统进行验证,并在Altera公司的FPGA芯片CycloneII EP2C35F484C8上完成了硬件验证,最终结果应用到某电能计量芯片设计中。
1 有功电能计量IP核总体方案的设计
1.1 有功电能计量的原理
电能计量主要是把电压和电流信号按照时间相乘,得到功率随时间变化的信息[3]。假设电压信号为:
可见,瞬时功率包括直流分量和交流分量两部分。交流分量的频率为2ω,直流分量就是有功功率,是电能计量的首要数据。由式(3)可知,无论电压电流的相位是否相同,只要将直流分量分离出来就能得到电能的有功功率。
1.2 IP核的结构设计
根据有功电能计量的原理,设计有功电能计量的系统框图如图1所示。该设计包括两个CIC抽取滤波器、两个IIR高通滤波器、一个乘法器、一个FIR低通滤波器和一个DFC数字频率变换器。
电压信号和电流信号经过数据采集模块转变为采样速率为32 kHz的16位精度的数字信号。为了提高后续电路信号处理的速度,采用CIC抽取滤波器对信号进行降采样。降采样之后的电压和电流信号经过IIR高通滤波器滤除由系统偏移产生的直流分量,从而消除由于电压和电流失调造成的系统误差。将电压和电流相乘即可得到瞬时功率信号,因此通过一个乘法器将电压和电流信号相乘。有功功率即瞬时功率中的直流分量,可以通过FIR高通滤波器对瞬时功率进行低通滤波。由于瞬时功率中含有谐波分量,而低通滤波器又非理想滤波器,因此低通滤波器输出的有功功率会含有瞬时功率的信息。采用DFC数字频率变换器,不但可以产生与有功功率成正比的输出脉冲,还可以起到平均作用,从而抑制瞬时功率信息。对DFC产生的与频率成正比的脉冲计数,即可得到有功电能[4]。
2 IP核各模块的实现
2.1 CIC抽取滤波器
CIC抽取滤波器主要由积分器、抽取器和梳状滤波器三部分组成[5],其基本结构如图2所示。积分器工作在较高的采样频率,由n个反馈系数为1的单极点IIR滤波器组成,其差分方程为:
抽取器将最后一级积分器的输出数据速率降为原来的1/R,R为抽取的系数,一般取整数,也是CIC抽取滤波器的抽取倍数。梳状器部分由N个梳状滤波器组成,工作频率为积分器的1/R,每一微分延迟M个采样点。梳状滤波器相应的差分方程为:
由CIC抽取滤波器的传输函数可以看到,该滤波器实现比较简单,不需要乘法器即可实现。
滤波器运算的有限字长决定寄存器的长度,每一级都有截断和舍入误差,每一级要保留的位数是从头到尾单调递减的。CIC所需要的寄存器长度除了与参数N和R有关外,也和输入的位数有关。为了保证运行时不会产生溢出,需要的内部自宽应该满足:
在本设计中,输入的数据为16位,即其中l=16,N=3,R=5,因此滤波器的长度至少为25位。根据以上分析,可以得到3阶采样率为5的抽取滤波器,其结构图如图3所示。
由以上分析和结构图可知,CIC滤波器需要两种不同的采样频率,即图中不同的使能信号的生成。可以采用两种方法解决:一种是对时钟进行分频,通过设置分频比得到不同的时钟信号;另一种就是采用时钟使能信号,由时钟产生不同分频比的使能信号,每一级的梳状器和积分器都采用相同的时钟,通过不同的使能信号来控制采样频率。本设计采用第二种方法,因为采用分频时钟会使布线复杂化,并且降低最高频率[6]。
2.2 去直流高通滤波器
电网中的信号是频率为50 Hz的工频信号,因此要求滤波器截止频率很低,过渡带窄。经过FDATool(Filter Design&Analysis Tool)设计的滤波器为级联型4阶IIR椭圆高通滤波器,截止频率为30 Hz,采样频率为6 400 Hz,其阻带衰减为60 dB,通带纹波为1 dB。滤波器的系统函数表示为:
将设计的滤波器的系数进行量化,转化为16位的定点数。该滤波器采用十六进制表示的16位定点系数,如表1所示。
利用级联型IIR滤波器,可以使乘法次数和延迟单元降到最低,同时能够有效降低直接型定点实现对系数量化效应的敏感性。该滤波器在采样频率为6.4 kHz输入下具有良好的幅频特性。该滤波器的相频特性曲线如图4所示。
2.3 FIR低通滤波器
FIR数字滤波器可以满足滤波器对幅度和相位的严格要求,具有良好的性能,容易用硬件实现,系统稳定,同时利用其对称的结构特点,可进行算法优化。因此FIR滤波器在信号处理中被广泛应用。本论文使用EDA工具及IP核设计基于FPGA的FIR数字滤波器,采用去伪延迟控制器,截除了因滤波器延迟产生的伪信号[7]。
利用FDATool设计滤波器,考虑到实现的难度和精度,采用等值纹波(equiripple)法设计滤波器,生成直接I型38阶对称系数的FIR数字滤波器。通带截止频率30 Hz,波纹1 dB;阻带截止频率95 Hz,波纹10 dB。图5是FIR滤波器的频率特性曲线。
将设计的滤波器系数保存在fir.txt;然后在Altera公司提供的集成开发环境Quartus中,建立新工程,调用 IP核参数的配置;导入滤波器系数fir.txt文件,设置好输入输出位数;然后选择数据存储方式、系数量化位数和存储方式。为了功率计算的速度和准确性,在此采用full parallel结构来实现[8]。
2.4 DFC数字频率变换器
DFC数字频率转换器用来产生来自总的有功功率的脉冲,通过对脉冲计数可计算有功电能,同时可用于电能表的校表。
设计中DFC数字频率中频率转换是利用四位二进制比例乘法器实现的。该乘法器的主要功能是输出的脉冲数等于输入时钟脉冲数乘以一个系数。该系数的范围为1/16~15/16,由四位二进制输入端A0~A3的外部的置数确定。如当量数为13(A3、A2、A1、A0=1101)时,每输入16个时钟脉冲,在输出端可得到13个脉冲。该比例乘法器可完成各种数字运算、A/D和D/A转换及分频功能等。四位二进制比例乘法器的电路特性可以表示为:
式中:M为在一定时间内“CLOCK”脉冲数;F为在该时间段内乘法器的输出脉冲个数;N为乘法器的数据输入端的数据值。
在本电路中,把4个乘法器级联在一起就构成了一个16位的D/F转换电路。设16位输入数据为:
其中:N4为高4位数据,N3为次高位数据,N2为中间4位数据,N1为低4位数据。根据级联方式有:
这样,如果M是一个固定频率的脉冲,对于一个任意的16位二进制数据都可以得到一个线性对应的频率脉冲,从而完成了D/F的转换。
将模块的时钟频率设为16 Hz,则每秒钟输出的脉冲数即为有功功率N。数据的采样速率为6.4 kHz, 一小时所采数据为3 600×6 400个周期,一个脉冲代表0.001°。所以只要对输出的脉冲数进行累加,然后采用累加溢出的方式,计数达到1°便对累加器清零,同时输出一个脉冲,代表1°, 对该脉冲进行计数累加就能够得到电能值。
3 Simulink平台下的建模与仿真
有功电能计量芯片在Simulink环境下的结构模型如图6所示。为了计算方便,电压信号和电流信号为:100 cos(100πt)+30,同时加入高斯白噪声作为输入信号,IIR和FIR滤波器用FDATool设计,设置仿真时间为1 s,累加显示结果4 995,误差0.1%。
4 有功计量模块仿真分析
本设计采用自顶向下的设计方法,在顶层进行系统功能模块的划分和结构设计。各功能模块的行为规则采用VHDL语言描述,并逐个进行仿真和纠错,然后进行系统级的功能验证。最后,将生成的门级逻辑电路的网表下载到所选的FPGA芯片上,从而完成整个系统的设计。
在Quartus II平台下建立波形文件并仿真得到时序图如图7所示,由图可见电压电流输入数据x1、x2,仍按100sin(2×pi×50×t)+30的输入。经过滤波处理后的数据m和n输送到乘法器相乘,mul_result是乘法器输出, y1为DFC模块中的累加值,y是产生脉冲信号。
本文在研究电能计量算法的基础上,利用VHDL硬件描述语言实现了该有功电能计量芯片的模型,并利用QuartusII软件对系统进行了仿真,最后选用Altera Cyclone II FPGA新型芯片EP2C35F484C8完成了硬件测试。使用964个LE,占总数的2%,58 502个存储单元,占总数的12%,设计具有很好的扩展性,且精度高,可以利用此算法构成0.2S级三相电能计量芯片。
参考文献
[1] 吴涛,周有庆,龚伟.基于新型电子式电流互感器的多功能电能表的设计[J].电力系统自动化,2008,32(16):58-60.
[2] 黄聚永,袁慧梅,张志忠,等.基于ADE7758芯片的GPRS网络电能表的设计.微计算机信息,2007,16(8):49-51.
[3] 王月志.电能计量[M].北京:中国电力出版社,2006.
[4] 刘亚男,缑刚.电能计量芯片的数字系统设计及其仿真[J].电子与封装,2006,6(8):26-29.
[5] HOGENAUER E.B.An economical class of digitalfilters fordecimation and interpolation[J].IEEE Transactions on Acoustic,Speech and SignalProcessing,1981,29(4):155-162.
[6] 赵玉磊,张效义.新型CIC滤波器的优化设计及其仿真[J].计算机仿真,2008,25(1):324-327.
[7] Altera Corp.FIR compiler megacore function user guide.Altera Corp,2003.
[8] 潘松,黄继业,王国栋.现代DSP技术[M].西安:西安电子科技大学出版社,2003.