关于相位差测量的算法

[复制链接]
4216|6
 楼主| boboluoluo 发表于 2009-9-22 19:23 | 显示全部楼层 |阅读模式
要测量以上两路波(如图)的相位差,其中方波为参考电压,频率为25Hz,设其上升沿的相位为0,要用软件计算正弦波相对于方波的相位差,都有哪些算法呢?


我现在用的算法是:STM32F103 TIM4捕获方波的上升沿,在捕获中断中触发TIM2定时中断,TIM2定时频率为2500Hz,即一个周期读取正弦波的采样值100次,并记下最大采样值所对应的采样是第几次(假设为a),则相位差为(a/100)*2*3.14。但由于正弦波轻微的波动就会带来a的大幅度变化,所以由此方法算出的结果误差很大(十几度)。


希望大家能给我点建议。

相位差测量.rar

22.42 KB, 下载次数: 109

jinjing999 发表于 2009-9-23 14:47 | 显示全部楼层
相位差可以通过两路同步AD采集的数据就可以计算出,相位差。你这种计算方法需要硬件支持,精度也会低,同时如果谐波比较大,你测的数据会不准确
如果你是在电网中应用的话,还会有个问题,电网中的电流有可能会很小,出现潜动电流的时候,估计这种方法是测不出相位的
again_gyf 发表于 2009-9-23 19:52 | 显示全部楼层
FFT+校准至少可以做到0.01度
jinjing999 发表于 2009-9-24 12:12 | 显示全部楼层
楼上的,有点吹
如果功率因数做到0.2级别
也就是功率因数的跳动是正负0.002
以COSA= 0.500和COSB= 0.502算
acos(0.5)-acos(0.502) = 0.0023弧度*57.29578= 0.1324度
按照你说的0.01度的话,你做的功率因数精度级别是在0.02级的

我不信12位AD能做出0.02级的仪表
again_gyf 发表于 2009-9-24 15:48 | 显示全部楼层
可以用软件校准出来的!呵呵!
again_gyf 发表于 2009-9-24 15:50 | 显示全部楼层
数学是很神奇的!呵呵!
jinjing999 发表于 2009-9-25 09:04 | 显示全部楼层
呵呵
想听你的高论?
想知道你的测量范围是0~6A吗?
还有你的采样率是多少?
我做过,就是用FFT计算后,用软件校验出来,做出0.02级是比较难的
您需要登录后才可以回帖 登录 | 注册

本版积分规则

17

主题

51

帖子

1

粉丝
快速回复 在线客服 返回列表 返回顶部