提高同步采样精度的一种改进算法梅永(河海大学电气工程学院南京210098)摘要本文讨论了几种交流采样方法的特点,重点研究了同步采样法。由于同步采样在实际情况中很难实现严格同步,当采样信号与待测信号不严格同步时,必将产生频谱泄漏误差和截断误差。为了克服同步采样法的这一缺点,本文给出一种改进算法,其基本思想是修改采样序列使之接近理想采样序列。仿真研究表明,改进算法提高了测量精度,计算量较少,实时性也有所提高。关键词:交流采样同步采样有功功率测量ANewAlgorithmforImprovingtheAccuracyofSynchronizeSamplingAbstractInthispaper,severalcurrentsamplingmethodsaredescribedandsynchronizesamplingisintroducedchiefly.Digitalperiodicsignalanalysisoftenrequiressynchronizedsamplingwiththesignalbeinganalyzed.Incertainpracticalsituation,however,thisconditionisdifficulttosatisfy.Asaresult,anumberofundesirableeffectssuchasthespectralleakageandthetruncationerrorsareproduced.Anewapproachwhichattemptstoremedytheunderlyingproblemsisdeveloped.Thebasicideaoftheproposedmethodismodifythesampledsequencetodesiredsequence.Thismethodreducecomputationalburdenandmakesitsuitableforreal-timesignalprocessing.Simulationresultsshowthatthisalgorithmiscapableofreducingboththespectralleakageandthetruncationerrors.Keywords:ACSampleMethodSynchronizeSamplingActivePowerMeasurement1几种交流采样方法的比较[1][2][3]对含有谐波的周期信号的数字信号处理主要有三步:首先,模拟信号通过A/D转换成数字信号,即把连续信号离散化。第二,获取一段时间内的采样数据。最后对采样的数据进行数字信号处理如(DFT)得到所要的结果。目前所用的采样方法主要是交流采样法.交流采样法,即是按一定规律对被测信号的瞬时值进行采样,再用一定的数值算法求得被测量,它与直流采样的差别是用软件功能代替硬件功能。交流采样法包括同步采样法、准同步采样法、非整周期采样法、非同步采样法等几种。同步采样法是指采样时间间隔Ts与被测交流信号周期T及一个周期内采样点数N之间满足关系式T=N·Ts。同步采样法又被称作等间隔整周期采样或等周期均匀采样。同步采样法需要保证采样截断区间正好等于被测连续信号周期的整数倍。同步采样法的实现方法有两种:一是硬件同步采样法;二是软件同步采样法。1971年美国国家标准局的R.S.Turgel博士将计算机采样数值计算用于精密测量领域,研制出第一台同步采样计算式功率表。从对周期信号的复原与频谱分析角度考虑,当采样频率和信号基频不同步时,模拟信号用离散信号代替会出现泄漏误差。为此,常采用锁相环来构成频率跟踪电路实现同步等间隔采样。如目前研制出的一种应用数字锁相环路(DPLL)原理,基于倍频器的同步采样脉冲发生装置,它能产生完全同步于被测信号基频的采样脉冲,当信号基频发生漂移时,装置还能自动跟踪信号基频并产生新的同步于信号基频的脉冲,这样从根本上消除了泄漏误差产生的根源。软件同步采样法该方法省去了硬件环节,结构简单,但由于信号的频率是在一定范围内变化,对其周期T不能准确测量,按不准确的周期T计算的采样间隔进行N次采样后,不能与实际信号的周期同步,即存在同步误差。为减少同步误差,可采用“准同步采样法”和“加窗函数法”,其中“加窗函数法”是把时域被测函数与某种低旁瓣特性的函数相乘之后,再进行所需的数据运算或处理。采用这种方法的优点是采样周期不要求与被测信号周期严格同步,但它以较长的测量时间为代价,而且也会带来有效频率加宽或变模糊等不良后果。另外,用软件方法很难得到理论上的采样间隔。这是因为采样间隔由单片机定时器控制,其时钟周期Td取决于晶振频率的限制,由定时器给出的采样间隔与理论计算所得采样值相比将存在着截断误差,该误差积累N点后,必然引起周期误差和方法误差。可以采用“双速率同步采样法”或在采样过程中修改定时器的计数值,动态确定采样周期,来减小周期误差,提高准确度。八十年代初东南大学戴先中先生提出了准同步采样法,即在|Δ|不太大的情况下,当满足N>(2π+Δ)/2π·M时,通过适当增加采样数据量和增加迭代次数来提高测量准确度的新方法。它不要求采样周期与信号周期严格同步,不要求同步环节,对第一次采样的起点无任何要求。准同步采样不仅降低了对信号频率的要求,而且也降低了对采样时间间隔的要求,降低了对振荡器振荡频率的要求。因此准同步采样技术可以用要求低的振荡器代替同步采样中要求高的同步环节,使测量装置简单,简化电路。与同步采样法一样,两者均要求被测信号在短时间内是稳定的。准同步采样法的不足之处在于:它需要通过增加采样周期和每周期的采样点数并采用迭代运算的方法来消除同步误差,其所需数据较多,计算量远大于同步采样,运算时间较长,不适合多回路、多参量实时性要求高的在线交流测量系统,而且受短暂突发性干扰影响的可能性要比同步采样大。针对以上缺点,清华大学的邓春先生提出了“快速准同步一次加权法”,东南大学的潘文先生提出了减少迭代次数的三种方法:“寻优法”、“补偿法”、“数字滤波法”。这些方法缩短了测量时间,加快了数据处理速度,但需要准确地测量信号周期,并且采样起始点的选择将影响测量的准确度非整周期采样法针对同步偏差对谐波分析产生误差,人们使用准同步采样、加窗技术和加窗-插值技术等来抑制频谱泄漏误差,但在原理上它们多少存在着测量方法误差。因此,哈尔滨工业大学的张建秋、陶然等提出了一种“非整周期采样理论”。所谓非整周期采样就是以采样时间间隔TS=K(1-Δ)T/N(-1<Δ<1﹞称为同步偏差,T为信号周期,N为采样次数,K为采样周期数,对连续周期信号进行采样。非整周期采样谐波分析方法所需要的数据可以仅为约一个周期,从而使谐波分析有可能跟踪信号的波动,而且不管实际采样是否同步,均能准确地分析谐波。由于所需数据可以在一个周期内获得,该方法适合于快速测量,算法实时性较好。但采样/保持误差、A/D转换器误差、外部或内部随机干扰以及计算机舍入误差对非整周期采样谐波分析方法的影响,还有待于进一步研究。非同步采样法是使用固定的采样间隔,通过调整采样值,使采样周期与信号周期(或信号周期的整数倍)的差值小于一个采样间隔的测量方法。1981年,M.F.Matouka使用非同步采样的方法研制出非正弦波形系统的功率、电能宽带采样数字式系统,测量准确度优于0.5%,1983年美国国家标准局用非同步采样研制出“宽带功率表”,当畸变信号频率从1Hz~10kHz变化时,通过适当调整采样周期和增加采样频率(2.34kHz~300kHz),使样机的测量准确度达到0.1%,该表的准确度较高,但它使用16位的A/D转换器和微处理器,电路复杂,成本较高。综上所述,针对测量系统的实际情况,合理选择采样技术及相关算法进行数据处理是提高测量准确度的重要环节。由于插值法,准同步法,特殊窗函数法等这些方法处理过程复杂,需要十倍甚至数十倍地增加测量时间和数据处理时间,计算量大,很难满足实时性的要求,因此很难被工程人员采用。从计算量考虑,本文给出了一种简单的算法。算法的实质是修改采样序列使之尽可能接近理想的采样序列,尽可能满足同步条件。2同步采样及其算法[3]按真有效值算法,对周期信号某些特征的测量可看作是进行一种积分求均值运算,即:TTTrmsdttuTU0021TTTrmsdttiTI0021;TTTdttituTP001;式中,rmsU是电压有效值,rmsI是电流有效值,P是有功功率,T为信号的周期、0T为积分起点。不考虑开方或其它运算并作变量代换则有如下形式:dxxfTxfTxx00)(1)(如等分积分区间[],00Txx为N段,均匀采样N个数据f(xi),I=1,2,…,N。可以证明,当NM(M为f(x)的最高次谐波数)时,有)()(11iNiixfxfN这就是同步采样算法的理论基础。3.改进算法[4]我们将同步采样算法作如下改进:改进前的平均功率为:10)(1NnnpNP改进后的平均功率为:)]}()([)({1101NnpnpnNnnpNPNn本算法是假定信号处于稳态下推导的。推导过程如下:当采样信号与被测信号不严格同步时,设eTTss,NTeS2;sT为实际采样间隔,Ts为理想采样间隔,代表模。不失一般性我们假设采样其始点)0(f=)0(0f,也就是说采样起始点是理想的,对于后面的采样点将有个时间偏差,并且随着采样点数的增加而增加,第二个实际采样时间与理想采样时间差e,第三个相差2e,依次类推:第n个相差(n-1)e。因此我们可以得到如下关系:)()()(0nenTfnTfnfSasa(1)根据数学知识f(x)按基数形式展开,省去高阶部分。得nenTfnTfnfsasa)()()(0(2)于是我们需要计算)(sanTf,根据(1)式有:)(})({)()()})({(}){()(ssassassassasasaNTNenTfNTNeeTnfNTNenenTfNeneNTnTfeTNnfTNnfNnf(3)根据(1)式和(3)式有:)}()({)(1)()'(}'()()'()'()'('nFNnfenNenNnenTfNTNenTfenNnenTfNTNenTfnTfsassasassasa(4)把(4)式代入(2)得)}()({)()(0NnfnfnNnnfnf(n=0,1,2,…M;M为总共采样的点数)(5)4仿真研究我们所用的仿真模型是:)510sin(2)146sin(4)152sin(10)()1510sin(2)606sin(8)452sin(10)(ftftfttIftftfttU在数字表中,可以证明,有功功率的算法可以用上面的理论来补偿同步误差。因为0000)()(1TdttituTP经过离散化后平均功率10)(1NnnpNP采样点为n的瞬时功率为)()()(ninunp补偿前的误差是00PPPEt。补偿后的瞬时功率)}()({)()(1NnpnpnNnnpnp补偿后的平均功率为)]}()([)({1101NnpnpnNnnpNPNn补偿后的误差是0011PPPEt。本文对信号基频频率发生微小变化时补偿前后误差做了比较。N为一个周期内的采样点数,n为第n个采样点。这里取N=128,采样频率为6400HZ.通过MATLAB我做如下仿真分析程序:symstu=10*sin(2*50*pi*t+45/180*pi)+8*sin(300*pi*t+60/180*pi)+2*sin(500*pi*t+15/180*pi);i=10*sin(2*50*pi*t+15/180*pi)+4*sin(300*pi*t+14/180*pi)+2*sin(500*pi*t+5/180*p