1 概述
随着电力系统进一步朝着“大电网、大容量、大机组”的方向发展,发、输、配电过程要求高度自动化已成为不可逆转的趋势。因此,对其对应的“发、输、配”环节的自动装置、继电保护装置、故障检测及诊断装置等性能提出了更新更高的要求。而数据采集卡系统作为这些装置的前向设备,其性能直接影响着这些装置的整体性能,同时,也在一定程度上影响着整个电力系统运行的“稳定性、安全性”。
在电力测控系统中,常常需要采集周期性交流模拟量信号,并对它们进行相应的处理。一般情况下,监控系统中用普通MCU(如196、296等单片机或控制型DSP)是可以完成系统任务的。本系统要求对6路交流信号进行采样,进行32次谐波分析并且对电力参数进行计算。如果仅仅依靠一个MCU(单片机或控制型DSP)既作为主系统的CPU对整个系统执行调度又要对信号进行采集和处理,而且随着监控系统功能的增加和信号量的增多,这样利用有限的MCU资源往往就不能完成任务,更不要说达到实时监控与响应的要求了。所以采用模块化设计的思想,将数据采集处理与主系统分开。由数据采集系统将数据采集并进行处理后,主系统只要通过总线就可以访问数据采集卡得到自己所需要的数据。数据的采集与处理完全通过FPGA由硬件执行实现,FPGA硬件的速度是ns级的,这是当前任何MCU都难以达到的速度。因此本系统将比其它系统更能实时地、快速地监测信号量变化,大大加快了处理速度,提高了实时性,同时也减少了对主系统资源的占用。
本系统中的外围电路设计相对简单、可靠。鉴于FPGA可编程实现的特点,系统具有较好的扩展性,在监控系统中也具有一定的通用性,而且通过通信口可有选择的将信号参量值送往主控单元或直接送往键盘显示单元。系统主要包括数据采集电路、ADC模块、FPGA模块,以及时钟电源和PROM代码下载电路等几部分,其结构如图1所示。
2 主要模块介绍
2.1 数据采集电路以及ADC模块
数据采集电路的采集对象为6路交流信号,交流信号经过PT或CT隔离,然后经移位放大后送入采样保持器LF398。如图1所示,本系统中,A/D转换器采用MAX125,其单通道转换时间为3μs,可同时对4路信号进行采样保持再依次进行转换,转换时间为12μs,而且可以在2个4路通道间进行相互切换。由于系统需要同时采样6路交流信号,所以在A/D转换前加上采样保持器,再通过MAX125分别对3路相电压和3路相电流进行转换。转换完成后,由INT发出中断通知FPGA读取转换结果,FPGA再将数据存放到各个信号所对应的区域中。总之,信号的采样保持与A/D转换的控制以及转换后数据的读取和存储都由FPGA来完成。
2.2 FPGA模块
本系统中的FPGA采用Xilinx公司Spartan-III系列的XC3S400-5PQ208。该系列具有低功耗、高性能的特点,内核采用3个独立1.2V电源进行供电,系统最高时钟可达326MHz;I/O端口供电从1.2-3.3V;内部带有乘法器,有着丰富的分布式RAM和块RAM;精确的时钟管理模块,以及性能优越、稳定成熟的IP核,有利于缩短开发周期。Xilinx公司的ISE软件为FPGA的设计与实现提供了很好的开发平台,通过VHDL、原理图和状态机相互结合的设计方法使设计更趋于完善。
FPGA模块是整个数据采集处理系统的核心,主要完成总线通信、数据采集控制、ADC数据的读取和存储、6路交流信号的谐波分析以及各项电力参数的计算。FPGA的内部工作结构如图2所示。从功能上分有:控制模块、运算模块、存储模块和接口模块。按照数据的传递方向有:ADC控制模块、ADC转换数据处理模块、ADC转换数据存储区、FFT工作模块、参数计算模块、运算结果修正模块、谐波系数及电力参数存储单元以及串行和并行通信模块。
(1)ADC控制模块与数据处理模块
如图3所示,ADC控制模块除了完成对MAX125及采样保持器LF398的控制外,还要响应MAX125的中断(INT)来读取转换结果,并将其保存到ADC采样数据保存区。如图3所示,为了更准确地产生控制时序,对系统的采样周期及相位的锁定都采取了相应的处理。待采样信号先经过方波转换电路,将其转换成0~+5V的方波信号,再经过FPGA中的数字倍频模块,将信号进行64倍频后得到的时钟信号作为采样信号,以此来消除频率漂移带来的采样周期误差所造成的频谱泄露现象。本系统采用的数字锁相环在FPGA中实现,其具体的性能为:锁相环的捕捉带Δfmax=10Hz,锁相频率为50Hz±10Hz=40~60Hz。随后产生的采样周期Ts能够满足实际应用的要求,由同步方波信号所产生的倍频信号是A/D转换事件的一个触发基准,在这一时钟基准下,各个模块按照所对应的时序执行相应的功能。同时,根据采样保持信号和计数器,产生ADC采样数据保存区地址,保存来自MAX125的14位数字量,分别将各个交流量存入相对应的存储区域。
数字倍频器的原理框图如图4所示,交流信号经整形后,转换为与输入信号同频率的方波,其频率为fs,要求对其进行K倍频。设置一标准的时钟信号,时钟频率为fc,采用可编程分频器对时钟信号进行分频,其分频系数由计数器提供,若分频系数为N,则输出频率为fc的N分频,即:
fo=fc/N (1)
时钟信号经K分频后送至计数器,计数器在输入信号的一个周期内对fc/K脉冲计数,若忽略各种误差因数其计数值为N,则:
N=(1/fs)×(fc/K) (2)
将(2)代入(1)式有fo=K×fs,实现了对输入信号频率的K倍频。数字倍频器中,计数器的实质是利用脉冲对输入信号的周期惊醒填脉冲计数,实现周期测量。由于该模块在工作过程中连续测量输入信号的周期,所以它又是一个频率计,兼有测频与测周期的功能。
经过A/D转换的数据暂时存放在一个区域内,通过ADC转换数据处理模块,同时利用对基准或0V电压的转换数据,对信号的A/D转换值进行修正。修正过后,再对其进行64点的FIR滤波,这里的FIR采用Spartan3系列自带的IP核,从而得到了经过修正后的信号A/D转换值,为后面的运算作好准备。
(2)谐波分析模块
在交流信号采集处理系统中,采用快速傅立叶变换(FFT)进行谐波分析。该模块采用的是S3系列中自带的IP核进行设计而成的,它主要由接口和IP核两大部分组成,接口主要负责将相应存储区域内的A/D转换数据送至IP核模块执行FFT,然后再将变换后得到的结果送到各自的存储区域内。
根据FFT运算的结果Z=XK_RE+j(XK_IM),计算各次谐波的系数 (其中,XK_RE为结果的实部,XK_IM为结果的虚部 。在进行开方运算时,若设计64M×3位长度的存储器进行查表计算,对于现有的可编程逻辑器件来说是很难实现的。因此,本次设计中采用了修正查表算法:将待开方的数据Z=((XK_RE)2+(XK_IM)2)左移m次(m为偶数),直到其最高2位不全为0,此时Z变为Z1,取Z1的高8位来查表(此时表长为28=256个字)得到t1,使用牛顿一次迭代公式t=(t1+Z1/t1)/2,对t1进行修正得到t,最后将t右移m/2次,得到开方结果。实验证明,上述修正后的查表法误差在允许的范围内,对本系统来说是可行的。
(3)电力参数值计算模块
交流信号采集处理系统可以测量与交流信号有关的16个参量,它们分别是:频率、功率因数、相电压、相电流、有功功率以及无功功率等。
◆电压、电流有效值的测量
电压u(t)和电流i(t)为周期性函数。它们的有效值U和I可表示为:
若在电网一周T内,等间隔采样N点(N=64、128、256等),则它们的有效值可由下式做近似计算:
式中Uk、Ik分别为第K点的电压、电流采样值。
◆有功功率和无功功率的测量
电网线路中某一相的有功功率可表示为:
由式(7)可知,有功功率是瞬间功率在电网一周T内的平均值,而瞬间功率是同一时刻电压与电流瞬时值的乘积,对电压和电流采用同步采样的方法即可获得同一时刻的瞬时值。对电压、电流模拟量进行离散采样后,有功功率可由下式近似计算得到,
式中Uk、Ik为同一时刻,第K点的电压和电流的采样值。
由分析可知,电网线路中某一相的无功功率可由下式近似计算得到,
式中I(k+N/4)是第(K+N/4)点电流采样值,比电压采样值Uk滞后1/4的电网周期。即相位滞后π/2。
◆功率因数
由同步采样得到的采样序列{Uk}、{Ik},K=1,2,3,……,N,即可由(5)、(6)、(8)、(9)、(10)计算得到线路中某相电压、电流有效值、有功功率、无功功率和功率因数等电力运行参数,进一步可获得某条三相线路的参数。参数值计算单元主要由时序控制、存储单元和计算单元等组成。其中,计算单元由加、减、乘、除四则运算模块以及平方根模块组成。这里求平方根模块的实现与上面的方法相同。
对于除法模块,由于在FPGA中实现二进制除法算法十分复杂,在实现除法时,采用了被除数与除数倒数相乘的方法。因此,在给定除数的同时必须计算出除数的倒数,由于除数的倒数是小数形式,所以将小数部分的16位与整数部分的1位组成一个17位二进制数,这样可以和被除数进行二进制乘法运算,乘积的低16位为小数部分,其余则为整数部分。在FPGA中,将除数作为寄存器地址,利用查表的方式查找其相应的倒数,这样求倒数就相当于一次寄存器寻址,其原理图见图5。通过除法运算得到的商精确到小数点后16位,达到了工程中对运算精度的要求。
(4)串、并行接口模块
为了使数据采集卡能与总线或其它系统灵活的连接,FPGA提供了两种通信方式:串行通信与并行通信。并行通信可以直接和系统机箱的背板总线相连接,可由主控系统的MCU对其进行访问或命令控制。串行通信可以方便的和各种MCU连接进行数据交换,也可以与键盘和显示单元组成单独的电能质量监测系统。
3 总结
本数据采集处理卡能直接投入到现场使用,由于采用模块化设计,所以也可以在原有的监控系统上工作,对遥测量进行采集和处理。它主要对多路的交流模拟信号进行采集并作谐波分析处理与电量的计算处理,FPGA作为协处理器,主要完成对交流信号的同步采样控制功能与谐波分析FFT的运算以及电力参数的计算功能;并带有通用的并行和串行接口。通过FPGA的设计使软件硬化,采用FPGA提供的IP核进行设计,缩短了开发周期,提高了系统的稳定性;同时也大大提高了主系统的效率,减少了资源的占用,节省了时间消耗。因为主控系统能与该系统并行运行,实时性将得到明显的提高。该采集处理系统在电力监控系统中有较好的应用前景。