非同步采样的同步化谐波分析算法
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
第42卷第4期2008年4月
浙 江 大 学 学 报(工学版)
Journal of Zhejiang University (Engineering Science )
Vol.42No.4
Apr.2008
收稿日期:2006209227.
浙江大学学报(工学版)网址:/eng
作者简介:蔡忠法(1969-),男,浙江温岭人,讲师,博士生,从事电子测试和电能质量分析等方面的研究.E 2mail :zdczf @hot
通讯联系人:陈隆道,男,教授,博导.E 2mail :clongdao @
非同步采样的同步化谐波分析算法
蔡忠法,陈隆道,周 箭
(浙江大学电气工程学院,浙江杭州310027)
摘 要:为了消除采样过程中同步误差产生的频谱泄漏,提出一种基于搜索的同步化算法.该算法采用逆向搜索在非同步采样数据中截取整周期的采样序列,通过离散傅里叶变换(DFT )得到频谱,搜索频谱幅值得到基波谱线位置,计算基波及各次谐波的幅值和相位.误差分析和仿真结果表明,采样点数越多,算法精度越高,较高的采样频率有利于提高算法的分析精度.同步化谐波分析算法分为单周期和多周期两种方法,单周期法适合于非稳态周期信号的谐波测量,多周期法提供了一种精确分析稳态周期信号谐波的有效方法.关键词:谐波测量;非同步采样;离散傅里叶变换;同步化
中图分类号:TM935.2 文献标识码:A 文章编号:10082973X (2008)0420682204
Synchronizing harmonic analysis algorithm for asynchronous sampling
CA I Zhong 2fa ,C H EN Long 2dao ,ZHOU Jian
(College of Elect rical Engineering ,Zhej iang Universit y ,H angz hou 310027,China )
Abstract :A searching based synchronizing app roach was p roposed to eliminate t he spectral leakage genera 2ted by t he sampling synchro nization errors.The integral cycles of signals were t runcated by backward searching f rom t he original asynchronous data ,and t he f undamental component position was obtained by searching t he spect rum after discrete Fourier t ransform (DF T ),and at last t he amplit udes and p hases of all t he harmonic component s were calculated.Bot h t he error analysis and simulation showed t hat t he more sampling dot s ,t he more accurate t he algorit hm ,and higher sampling f requency helped to improve t he al 2gorit hm ’s accuracy.The proposed algorit hm can be divided into two types ,i.e.single 2cycle met hod and multi 2cycle met hod ,t he former is suitable for measuring t he harmonics of fluct uant periodic signals ,while t he latter p rovides a candidate way to accurately analyze t he harmonics of steady periodic signals.K ey w ords :harmonic measurement ;asynchronous sampling ;discrete Fourier transform (DFT );synchronization
离散傅里叶变换(DF T )是电参量频谱分析的
常用方法.离散傅里叶变换存在的主要问题是频谱泄漏影响了谐波分析的测量精度,而导致频谱泄漏的根本原因是采样中的同步误差.减小同步误差和频谱泄漏的方法大致可分为4个方向:1)同步采样法,如采用数字锁相环(DPLL )等硬件电路[1]或双速率采样等软件方法[2]减小同步误差;2)准同步采样法,通过准同步迭代算法来消除同步误差的影响[3];3)加窗插值法,通过对采样序列的加窗运算减小长范围频谱泄漏,通过插值运算消除短范围频谱
泄漏[425];4)数据修正法,对非同步采样序列采用插值[6]或自适应运算[7]进行二次同步化,使处理后的序列接近理想同步采样序列.以上这些方法各有特点,适合于不同的应用场合.
对于稳态周期信号的高精度谐波测量,同步采样法需要复杂的同步采样控制电路,但算法简单,可以直接采用快速傅里叶变换(FF T ),实时性好.准同步采样法对采样控制电路的要求较低,但算法复杂,需要多次的迭代运算,实时性差.加窗插值算法的精度与窗函数和采样长度密切相关.如基于Hanning
窗[4]和Blackman 2Harris 窗[5]的插值算法都需要4个基波周期以上的采样数据,当要求的精度较高时,通常需十几个基波周期的采样数据.数据修正法允许非同步采样,但存在计算量大及精度有限的缺点.
对于非稳态周期信号,如快速变动的过程信号,其频率和幅值的波动大,只有单周期的测量结果才有意义.同步采样法由于同步电路无法进入锁定状态,不适用于该场合.准同步采样和加窗插值方法都需要多周期的频率和幅度稳定,在非稳态周期信号的谐波测量中也无法应用.陈隆道等人[6]提出了一种基于插值重定位采样序列的同步化算法,通过适当的插值算法从非同步采样数据中得到同步采样数据.
本文提出一种基于搜索的同步化算法.该算法采用非同步采样,解决了非稳态周期信号无法同步采样的问题.该算法不存在数据插值过程中的运算误差,精度较高,对于稳态周期信号的高精度谐波测量,也是一种有效的方法.
1 同步化谐波分析算法
设包含各次谐波的连续周期信号为
x (t )=
∑∞
m =1
A
m
cos (2πf m t +φm ).(1)
式中:A m 、f m 、φm 分别为第m 次谐波的幅值、
频率和初始相位.以采样间隔T s 交流采样N 点,得到离散序列为
x (n )=x (n T s );n =0,1,…,N -1.
(2)由于采样序列总是有限的,采样过程相当于将无限长的信号进行了矩形窗截断,从而造成离散傅里叶变换的频谱泄漏.若能在N 点采样数据中截取整数周期的采样序列,如图1所示,则能使基波和各次谐波频率恰好与DF T 谱线的离散频点相重合,且此时信号中的基波和谐波在其他谐波频点上的分量也恰好为零,不会产生频谱泄漏和栅栏效应.
非同步采样的同步化谐波分析算法包括选择采样长度、整周期截取、DF T 变换、
确定基波谱线位置
图1 采样数据的整周期截取
Fig.1 Integral cycle truncation of sampling data
等步骤.算法的具体描述如下:
1)选取合适的采样长度.设截取的数据长度为
M ,则M 应满足
M T s =L T 0.
(3)
式中:L 为整周期数,T 0为信号的基波周期.为了保证能在非同步采样数据中截取到L 个周期的同步采样数据,由式(3)可知,N 应满足
N ≥L f s /f min .
(4)式中:f s 为采样频率,f min 为信号x (t )频率波动范围的下限值.当实际应用时,为了能在最坏情况下搜索到整周期数,还需额外增加1个数据点用于比较,因此式(4)应修正为
N ≥L f s /f min +1.
(5)
2)采用逆向搜索方法截取整周期采样数据:从
最后一个采样数据x (N -1)开始,逐个与x (0)比较,
直到确定整周期采样点x (M -1),从而得到同步采样序列x (0),x (1),…,x (M -1).若x (0)>x (1),即初始数据是下降的,如果搜索到满足
x (k -1)>x (0),x (k )≤x (0)
(6)的k 值,则整周期采样点x (M -1)=x (k -1).若x (0) x (k -1) (7)的k 值即可,整周期采样点x (M -1)=x (k -1). 3)对所截取的M 点数据进行DF T 变换.由于采样数据x (0),x (1),…,x (M -1)已经是输入信号x (t )的同步采样序列(实际上会存在很小的同步误差,见2章的分析),进行DF T 分析不会产生频谱泄漏.只要确定L ,就可直接从DF T 频谱中求出信号基波和各次谐波的相关参数. 4)在频谱中确定基波谱线位置k 1.由傅里叶变换理论可知,基波位置是由L 决定的,即k 1=L.然而,由于被测信号的频率在一定范围内波动,实际截取到的整周期数并不一定与预先设计的整周期数相等.因此应先确定截取序列的实际周期数L.L 可以通过信号频率的测量来确定,而测量频率有许多方法[8],如过零检测法.本文提出一种更简便的方法:通过搜索谱线确定基波位置.设f min ≤f ≤f max ,则L min ≤L ≤L max ,其中 L min =M f min /f s , (8)L max =M f max /f s . (9)以[L min ,L max ]内的整数为下标,搜索频谱幅值,幅值最大的谱线为基波谱线X (k 1),从而得到L =k 1. 5)计算基波和各次谐波的频率、幅值和相位.由DF T 变换原理可以得到 k m =m k 1, (10)3 86第4期蔡忠法,等:非同步采样的同步化谐波分析算法