基于傅里叶变换的精确频率测量算法

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
0
∫ ∫ b =
2 T
T
x ( t) co s ωt d t ≈
0
2 T0
T0 x ( t) co s ω0 td t
0
(2)
将式 (1) 代入式 (2) ,并进一步展开 ,得展开后的
正弦项和余弦项分别为 :
∫ a =
2 T0
T0 U m sin (2πf 0 t + 2πΔf t +α0 ) ·
目前 ,频率跟踪测量方法主要可分为硬件法和 软件法 2 类[123] 。硬件法通过滤波整形电路和锁相 环实现 ,需要一定的成本 ,并且实现较复杂 ,不适应 微机保护装置微型化的发展方向 。软件测频方案无 需额外硬件电路 ,实现方式灵活 ,因而得到了广泛的 重视 。常用的软件跟踪测频算法有傅里叶算法 、最 小二乘法 、卡尔曼滤波 、小波分析法等多种算法[429] 。 传统的傅里叶频率测量算法 , 通过计算得到相邻 2 个周期的相位[10212 ] ,再用得到的频率偏差值进行 迭代修正 ,需多次迭代运算 ,计算量大且测量精度得 不到保证 。
用如下的近似计算方法[13 ] :
— 68 —
arcco s
x
1
= 1. 998 26 X 2
-
3
0. 641 06 X 2
+
5
7
0. 289 96 X 2 - 0. 076 5 X 2
式中 : X = (1 - x) / (1 + x) 。
采用该式计算时 ,其计算误差值约为 10 - 4 。
1. 2 符号选取
显然 P 和 Q 将在相同或相邻象限 。
若πΔf T0 +α0 和 3πΔf T0 +α0 这 2 个角度在相
同象限 ,即 P = Q ,显然可以通过三角函数的增减特
性判断角度 2πΔf T0 的符号 ,具体判据如下 :
1) P 和 Q 为第 1 或第 2 象限 , 余弦函数满足递
减特性 ,若 a > a′,则 2πΔf T0 为正 ;反之为负 。
的取值范围为 ( - π/ 2 π, / 2) ,且满足 :
2Um f 0 πT0 (2 f 0 +Δf )
>0
sinπΔf T0 Δf
>0
(16)
因此 , a 的符号完全取决于 co s (πΔf T0 +α0 ) ;
同理 , b 的符号取决于 sin (πΔf T0 +α0 ) , a′的符号取
迭代计算的关键是迭代次数与迭代算法的收敛 性 ,考虑到电网频率偏移通常不会很大 ,为加快迭代 计算速度 ,推荐将迭代频率初值设为额定值 50 Hz 。 由于初始基准频率选为 50 Hz ,刚开始采样计算时 若实际频率偏差较大则存在误差 ,但后续循环迭代 计算可很快减小此误差 ,一般迭代 2 次后即可满足 精度要求 。随着迭代次数的增加 ,测频的精度也将 大大提高 。大量仿真计算发现 ,以上迭代算法不存 在发散现象 ,并且迭代次数在 3 次以上时 ,频率精度 的提高将十分有限 ,因此实际应用时可以考虑将迭 代次数限制在 4 次~5 次 。
叶变换 ,则有 :
∫ ∫ a′=
2 T
2T
x ( t) sin ωt d t ≈
T
2 T0
2 T0 x ( t) sin ω0 td t
T0
∫ ∫ b′=
2 T
2T
x ( t) co s ωt d t ≈
T
2 T0
2 T0 x ( t) co s ω0 td t
T0
(6) 同理 ,可以得到式 (6) 展开后的正弦项和余弦项 分别为 :
(1)
式中 :Um 和α0 分别为输入正弦信号的幅值和初相
角。
由于ω在ω0 附近波动 ,所以在实际角频率ω未 知的情况下 , 通常采用理想角频率 ω0 近似计算 ,得 近似傅里叶变换为 :
∫ ∫ a =
2 T
T
x ( t) sin ωt d t ≈
0
2 T0
T0 x ( t) sin ω0 td t
0
1
50
50. 000 0
0
0
1
49
49. 000 0
0
0
1
45
45. 000 0
0
0
1
42
42. 000 1 0. 000 1 0. 000 25
1
38
38. 000 1 0. 000 1 0. 000 26
1
图 1 测频流程 Fig. 1 Flow chart of frequency measurement
关键词 : 频率测量 ; 傅里叶变换 ; 相位差
中图分类号 : TM935
0 引言
电力系统交流采样普遍采用傅里叶算法 ,要求 采样频率和原始信号严格同步 ,即采样频率是基波 频率的整数倍 ,否则会产生频谱泄漏 ,不能正确反映 被测信号的各种参数 ,引起傅里叶算法计算误差 。 为了减少傅里叶变换的频谱泄漏 ,提高傅里叶算法 的计算精度 ,频率跟踪技术成为现代微机保护装置 必不可少的重要组成部分 。
决 于 co s ( 3πΔf T0 + α0 ) , b′的 符 号 取 决 于
sin (3πΔf T0 +α0 ) 。为此 , 可首先根据 a 和 b 的符
号 ,判断πΔf T0 +α0 所在象限 ,记为 P; 然后 , 根据
a′和 b′的符号 ,判断 3πΔf T0 +α0 所在象限 ,记为 Q 。
图 1 所示 ,通过循环迭代计算 ,以软件方法实现频率 跟踪 、锁相 。其中 ε, 为迭代计算中设定的频率差门 槛值 。由式 (2) 、式 (6) 可知 ,迭代 1 次需 2 个周期的 采样数据 。
时 ,频率测量结果如表 1 所示 。
表 1 不含谐波时频率测量算法仿真结果 Table 1 Simulation results of frequency measurement for a
co s (πΔf T0 sin (πΔf T0
+α0 ) +α0 )
(13)
消去式 (12) 与式 ( 13) 中的 sin (πΔf T0 +α0 ) /
co s (πΔf T0 +α0 ) 项 ,化简得 :
co s 2πΔf T0
=
AB + 1 A +B
=
ab + a′b′ ab′+ a′b
sin (πΔf T0 +α0 ) sin (3πΔf T0 +α0 )
(11)
对式 (10) 和式 (11) 进一步展开分析 ,得
A=
1
co s 2πΔf T 0
-
si n
2πΔf
T0
sin (πΔf co s (πΔf
T0 T0
+α0 ) +α0 )
(12)
B=
1
co s 2πΔf T 0
+ sin 2πΔf T 0
考虑到余弦函数是偶函数 ,故式 (15) 中 Δf 取
正还是取负将取决于角度 2πΔf T0 的符号 。分析
式 (3) 得 :
a
=
πT0
2Um (2 f 0
f0
+Δf
)
si n πΔ f Δf
T0
co s (πΔf
T0
+α0 )
令Δf 的变化范围为 - 12. 5 Hz~12. 5 Hz ,该
区间已足够满足实际的测频应用要求 ,则 2πΔf T0
0
Δf ) +Δf
)
·
sin (πΔf T0 +α0 ) sinπΔf T0
(4)
相位φ的表达式如下 :
φ = arctan b = arctan
a
f 0 +Δf sin (πΔf T0 +α0 ) f 0 co s (πΔf T0 +α0 )
(5)
— 67 —
2008 , 32 (23)
进一步考虑在第 2 个采样周期进行的近似傅里
第 32 卷 第 23 期 2008 年 12 月 10 日
Vol. 32 No . 23 Dec. 10 , 2008
基于傅里叶变换的精确频率测量算法
牟龙华 , 邢锦磊
(同济大学电子与信息工程学院 , 上海市 200092)
摘要 : 传统的傅里叶频率测量算法 ,通过傅里叶算法求出相邻 2 个周期的相位 ,采用相位差对采样 频率进行修正和迭代 ,计算量大而精度差 。文中根据严格推导得到傅里叶算法计算值的准确数学 形式 ,通过对相位差的三角函数进行分解展开 ,代入傅里叶算法计算值 ,即可在不需要计算相位的 情况下得到相邻 2 个周期相位差的准确值 ,从而得到真实的信号频率 。仿真分析结果表明 ,该算法 精度高 ,计算量小 ,实现简单 ,完全适合于微机保护测控类装置的实际应用 。
2 算法仿真与分析
为验证本文所提出的算法的测频效果 ,对不同 输入信号情况下算法的性能进行了仿真 。式 (2) 和 式 (6) 的积分采用梯形法近似计算 ,各仿真中迭代频 率初值设为 50 Hz ,每周期采样点数 N = 24 。当测 量频率与上次测量频率之差ε< 0. 01 Hz ,则停止迭 代 ,并将该频率作为真实值 ;若迭代次数大于迭代上 限 ,则视最后一个测量频率为真实值 。 2. 1 不含谐波时的情况
signal without harmonics
实际频率/ 测量频率/ 绝对误差/ 相对误差/ 计算次数
Hz
Hz
Hz
( %)
62
62. 000 1 0. 000 1 0. 000 16
1
58
57. 999 9 0. 000 1 0. 000 17
1
55
55. 000 0
0
0
1
51
51. 000 0
0
本文在对傅里叶算法进行分析的基础上 ,介绍 了一种精确的傅里叶频率测量算法 。该算法能在电 力系统频率偏离额定值的情况下自动跟踪频率变化 测得其精确值 。
1 基本原理
1. 1 信号中仅含基波分量 假设输入电压或电流信号是理想的正弦波信
号 ,即仅含有基波分量 。令基波的理想频率为 f 0 =
收稿日期 : 2008205219 ; 修回日期 : 2008209208 。
arctan
f 0 +Δf sin (3πΔf T0 +α0 ) f 0 co s (3πΔf T0 +α0 )
(9)
分别考察式 (3) 与式 (7) 、式 (4) 与式 (8) ,可以得
到:
A
=
aa′=
co s (πΔf T0 +α0 ) co s (3πΔf T0 +α0 )
(10)
B
=
bb′=
频率固定为 N ×50 Hz ( N 为每周期采样点数) ,当 频率发生偏移时 ,谐波频率必然也发生偏移 ,在此情 况下傅里叶算法不能很好地抑制谐波分量 ,从而可 能导致测频误差的明显增大[1] 。
·研制与开发 · 牟龙华 ,等 基于傅里叶变换的精确频率测量算法
若傅里叶算法基于系统真实频率 ,采样频率以 上一次计算频率为基础进行自适应调整 ,采样间隔 得到修正 ,则可得到更佳的滤波效果 ,减少傅里叶变 换的误差 。实现采样频率自适应调整的测频流程如
a′=
π
2Um T0Δf (2 f
f
0
0

f
)
co
s
(
3πΔf
T0
+α0 )
·
sinπΔf T0
(7)
b′=
π
2Um ( T0Δf
f0 (2
+Δf ) f 0 +Δf
)
sin (3πΔf
T0
+α0 )
·
sinπΔf T0
(8)
根据第 2 个采样周期得到的相位φ′为 :
φ′= arctan ab′′=
0
si n
2πf 0 td t
=
π
T0Δ
2Um f (2 f
f
0
0
+
Δf
)
·
co s (πΔf T0 +α0 ) sinπΔf T0
(3)
∫ b =
2 T0
T0 U m sin (2πf 0 t + 2πΔf t +α0 ) ·
0
co s
2πf 0 td t
=
π
2Um ( T0Δf
f0 (2
f
+
50 Hz ,对应的理想角频率为 ω0 , 周期为 T0 。由于 电力系统的实际频率通常在 50 Hz 上下波动 ,故可 以设基波的实际频率为 f = f 0 +Δf , 对应的实际角 频率为 ω, 周期为 T ,Δf 表示频差 。输入信号可以
表示为 :
x ( t) = Um sin (2πf 0 t + 2πΔf t +α0 )
2) P 和 Q 为第 3 或第 4 象限 , 余弦函数满足递
增特性 ,若 a < a′,则 2πΔf T0 为负 ;反之为正 。
源自文库
若这 2 个角度在不同象限 ,具体判据如下 :
1) 若象限 P 与象限 Q 相邻 ,且 Q = P + 1 或Q =
P - 3 ,则 2πΔf T0 为正 。
2) 若象限 P 与象限 Q 相邻 ,且 Q = P - 1 或Q =
(14)
由此得到傅里叶频率测量算法的基本公式如
下:
| Δf
|
=
1 2πT0
a
r
cco
s
ab + a′b′ ab′+ a′b
(15)
f = f 0 ±| Δf |
在实际应用中 ,一般采用 C 语言作为开发工
具 ,可以直接采用 C 语言库函数中提供的反余弦函
数 ,具有相当高的计算精度 。为减少计算量 ,也可采
P + 3 ,则 2πΔf T0 为负 。
由于式 (15) 并不需要计算相邻 2 个周期的相位
以得到准确的相位差值 ,故无需根据频率偏差值对
算法进行迭代修正 ,即可求得系统的真实频率 f ,显
然优于根据相角变化值求频率的方法 。
1. 3 信号中含谐波分量 若傅里叶算法以额定频率 50 Hz 为基础 ,采样
相关文档
最新文档