首页> 中国专利> 基于FPGA的高精度秒脉冲倍频出采样脉冲的方法

基于FPGA的高精度秒脉冲倍频出采样脉冲的方法

摘要

本发明公开了电力系统测控技术领域内的一种基于FPGA的高精度秒脉冲倍频出采样脉冲的方法,旨在现有技术中由振荡器提供采样脉冲导致采样精度偏低的技术问题。本发明将实际同步秒脉冲计数值与理想同步秒脉冲计数值进行比较,将偏差与采样频率进行累加计算,根据累加计算结果判断脉冲计数器是否进行校正,从而达到将实际同步秒脉冲的总偏差平均分布到实际采样脉冲中,显著降低了采样脉冲的误差,为模数信号采集提供了更加可靠稳定的采样脉冲信号;同时,本发明提供的操作方法简单易行,减少了FPGA芯片资源的占用,提高了FPGA的运行速度和可靠性。

著录项

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2016-06-08

    授权

    授权

  • 2014-08-20

    实质审查的生效 IPC(主分类):G05B19/042 申请日:20140428

    实质审查的生效

  • 2014-07-23

    公开

    公开

说明书

技术领域

本发明涉及一种高精度采样脉冲输出实现方法,特别涉及一种基于FPGA的高精度秒脉冲倍频出采样脉冲的方法,属于电力系统测控技术领域。

背景技术

随着电力系统的快速发展,电网的容量、结构都在发生巨大的变化,仪器仪表行业也在不断的进行改进。在电能质量监测中,对基本电力参数采样和计算的方法一般有两种,分别是交流采样法和直流采样法。直流采样法对采样值只做一次比例变换,其测量精度受限较多,误差大,不稳定,所以通常要想获得高精度高稳定性的电参数,需要进行交流采样。交流采样时按一定的规律对信号的瞬时值进行采样,按照采样的基本定理,采样频率需要高于被测信号最高频率的2倍以上。在电力系统中常用的是同步交流采样,采用秒脉冲信号对设备进行同步,设备在秒脉冲信号同步的基础上,产生用于AD采样控制的采样脉冲。传统的倍频方法是:假设设备内部的钟振是高稳定度和高精度的,在脉冲计数器的控制下,每间隔一个固定的计数值就输出一个采样脉冲。以4kHz的采样脉冲为例,每隔250微秒输出一个采样脉冲,则每秒钟共输出4000个脉冲,由于钟振存在偏差,假如每秒时间偏差5微秒,采样固定计数值的方法会在最后一个采样脉冲与实际的时间偏差达到5微秒,这一误差导致采样精度偏低,对于电力的同步系统要求来说是难以容忍的。

发明内容

本发明的目的是针对现有技术中的不足,提供一种基于FPGA的高精度秒脉冲倍频出采样脉冲的方法,解决了现有技术中直接由钟振提供采样脉冲导致采样精度偏低的技术问题。

为解决上述技术问题,本发明所采用的技术方案是:基于FPGA的高精度秒脉冲倍频出采样脉冲的方法,包括如下步骤:

步骤一:计算实际同步秒脉冲计数值Treal与理想同步秒脉冲计数值Trat的偏差,并计算两者偏差的绝对值,记为b,则b = |Treal-Trat|;

步骤二:判断b与0的大小:若b=0,则由标准采样脉冲触发输出实际采样脉冲;若b不等于0,则记录Treal与Trat两者差的正负标识S:若两者差值为正数,则令S=0;若两者差值为负数,则令S=1;

步骤三:当标准采样脉冲到来时,触发b与采样频率a进行减法运算,运算结果记为c,则c=b-a,将c加载至FPGA芯片内部的累加器;

步骤四:判断c与0的大小:若c大于等于0,则令c=c-a,并进入步骤五;若c小于0,则每个标准采样脉冲到来时,脉冲计数器的计数结果Tcnt=Tcnt+1,并进入步骤六;

步骤五:根据正负标识S的值,调整脉冲计数器的计数结果Tcnt:若S=0,则忽略1个计数,即令Tcnt=Tcnt;若S=1,则在Tcnt=Tcnt+1的结果上,再增加1个计数,即令Tcnt=Tcnt+2;

步骤六:对Tcnt与采样频率a的比进行求余运算:若Tcnt/a的余数为0,则输出1个实际采样脉冲;否则,等待下一个标准采样脉冲到来时,触发c与b进行加法运算,即令c=c+b,并返回步骤四。

与现有技术相比,本发明的有益效果是:在每个采样脉冲输出时判断是否进行校正,能够将钟振在一个采样周期内产生的总偏差平均分布到实际采样脉冲中,显著降低了实际采样脉冲与理想采样脉冲的时间偏差,使采样曲线更平滑,提高了采样精度,为模数信号采集提供了更加可靠稳定的采样脉冲信号。方法中避免了除法运算的使用,操作方法简单易行,大大减少了FPGA芯片资源的占用,提高了FPGA的运行速度和可靠性。 

附图说明

图1为本发明的操作流程图。

具体实施方式

本发明提供的秒脉冲倍频出采样脉冲的方法,其中,实际同步秒脉冲由外部时钟提供输出,理想同步秒脉冲则由有源钟振结合FPGA芯片中锁相环技术倍频产生,脉冲计数器对标准采样进行计数。若采样若实际同步秒脉冲比理想同步秒脉冲快,则脉冲计数器在计数时增加一个标准采样脉冲以进行计数补偿,否则,减少一个标准采样脉冲,本发明将实际同步秒脉冲与理想同步秒脉冲总的时间偏差均匀分布在多个时间片中,降低了实际采样脉冲与理想采样脉冲的时间偏差。以实际同步秒脉冲计数值Treal=60000004,理想同步秒脉冲计数值Trat=60000000,采样频率a=4000Hz为例,实际同步秒脉冲与理想同步秒脉冲的总时间偏差是:4×(1000000000 /60000004 ) 纳秒=66.67纳秒,若直接用于倍频采样脉冲,那么在第4000个采样点时,该采样点会快66.67纳秒,本发明的目的是将66.67纳秒的时间偏差分布在4个时间片中,即在第1000、2000、3000、4000个计数间隔时,进行技术补偿,使误差降低至(66.67/4)纳秒=16.67纳秒,以达到提高采样精度的目的。

下面结合附图对本发明作进一步详细描述:

如图1所示,基于FPGA的高精度秒脉冲倍频出采样脉冲的方法,包括以下步骤:

步骤一:计算实际同步秒脉冲计数值Treal与理想同步秒脉冲计数值Trat的偏差,并计算两者偏差的绝对值,记为b,则b = |Treal-Trat|。一个采样周期为1秒钟,以实际同步秒脉冲计数值Treal=60000004,理想同步秒脉冲计数值Trat=60000000为例,则b=|Treal-Trat|=|60000004-60000000|=4。理想同步秒脉冲可由20MHz有源钟振提供,偏差±1PPM。FPGA芯片使用锁相环技术将20MHz倍频成60MHz提供给内部逻辑使用。

步骤二:判断b与0的大小:若b=0,则由标准采样脉冲触发输出实际采样脉冲;若b不等于0,则记录Treal与Trat两者差的正负标识S:若两者差值为正数,则令S=0;若两者差值为负数,则令S=1。若b=0,则说明实际同步秒脉冲与理想同步秒脉冲之间不存在时间偏差,则可将理想采样脉冲直接作为实际采样脉冲输出使用。若b不等于0,则说明实际同步秒脉冲与理想同步秒脉冲之间存在时间偏差,此时,先记下Treal与Trat两者差的正负标识S,为下一步脉冲计数的调整作准备。由步骤一知,Treal大于Trat,两者差值为正数,此处,S=0。

步骤三:当标准采样脉冲到来时,触发b与采样频率a进行减法运算,运算结果记为c,则c=b-a,将c加载至FPGA芯片内部的累加器。此处假设采样频率a=4000Hz,即一秒钟发出4000个标准采样脉冲,则c=b-a=4-4000=-3996,将-3996作为初值加载至FPGA芯片内部的累加器。 

步骤四:判断c与0的大小:若c大于等于0,则令c=c-a,并进入步骤五,进行脉冲计数器计数调整;若c小于0,脉冲计数器正常计数,即每个标准采样脉冲到来时,脉冲计数器的计数结果Tcnt=Tcnt+1,并进入步骤六。由步骤三知,c=-3996,小于0,脉冲计数器正常计数,即每个标准采样脉冲到来时,脉冲计数器加一,然后进入步骤六。

步骤五:根据正负标识S的值,调整脉冲计数器的计数结果Tcnt:若S=0,则忽略1个计数,即令Tcnt=Tcnt;若S=1,则在Tcnt=Tcnt+1的结果上,再增加1个计数,即令Tcnt=Tcnt+2。若S=0,则实际同步秒脉冲计数值Treal大于理想同步秒脉冲计数值Trat,表示实际同步秒脉冲比理想同步秒脉冲快,脉冲计数器计数时需要忽略1个计数,假设Tcnt原有的计数结果为1,则下一标准采样脉冲到来时,Tcnt的计数结果仍为1。若S=1,则实际同步秒脉冲计数值Treal小于理想同步秒脉冲计数值Trat,表示实际同步秒脉冲比理想同步秒脉冲慢,脉冲计数器计数时需要增加1个计数,若Tcnt原有的计数结果为1,则下一标准采样脉冲到来时,Tcnt的计数结果直接增加至3。

步骤六:对Tcnt与采样频率a的比进行求余运算:若Tcnt/a的余数为0,则输出1个实际采样脉冲;否则,每个标准采样脉冲到来时,触发c与b进行加法运算,即令c=c+b,并返回步骤四。c小于0时,脉冲计数器每计数一次需要跳转至本步骤进行一次求余运算。理想同步秒脉冲计数值Trat=60000000,则脉冲计数器共需计数60000000次,a=4000,所以当Tcnt=4000,8000,12000,……60000000时,余数均为0,一个采样周期内(1秒钟)总计输出60000000/4000=15000个采样脉冲。若对Tcnt/a求余后,余数不等于0,则每个标准采样脉冲到来时,令c=c+b,由于b是大于0的数值,则c在循环加b后必然会大于或等于0,以a=4000为例时,则第1000,2000,3000,4000个标准采样脉冲到来时,c均为0,表明此时脉冲计数器均作出了计数调整,最终保证4000个实际采样脉冲总宽度与理想同步秒脉冲总宽度一致,经过调整后,每个实际采样脉冲信号与标准采样脉冲的偏差均不会超过一个时钟周期即1/60000000s=16.67ns,与调整前误差250微秒相比,本发明将误差降低到纳秒级别,从而使采样曲线更平滑,显著提高了采样精度。

以上是以差值为4表述的本发明功能,若以差值为8为例,则调整计数值点应在第500、1000、1500、2000、2500、3000、3500、4000点,实际运用中差值可能为任意值,但不可能超过1个采样点宽度计数值(值为15000),否则芯片有问题。若差值为其它值,则按本发明表述做相应调整。

本发明并不局限于上述实施例,在本发明公开的技术方案的基础上,本领域的技术人员根据所公开的技术内容,不需要创造性的劳动就可以对其中的一些技术特征作出一些替换和变形,这些替换和变形均在本发明的保护范围内。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号