打印

相位差的测量

[复制链接]
4072|22
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
Enchanting|  楼主 | 2013-8-16 10:42 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
现在要测量50hz正弦交流电的电压与其负载电流间的相位,我的方案是:把电压,电流信号分别经过滞回比较器,然后用异或门电路取其相位差送单片机测其相位差.但是异或门出来的相位差抖动很大,没办法测准,请问有没有改善的方法?有哪位大侠做过这方面的项目,交流一下看有没有其它更好的方案,欢迎大家讨论!

相关帖子

沙发
qzlbwang| | 2013-8-16 10:53 | 只看该作者
整形——异或——限幅——滤波——测量(直流电压值——对应的是相位差)

使用特权

评论回复
板凳
qzlbwang| | 2013-8-16 10:58 | 只看该作者
最好在整形前也加滤波,以减弱输入波形畸变的影响。(两路输入要用相同的滤波电路参数,使得两路信号的移相相同,以消除滤波电路移相带来的影响)。
用单片机的话也可以用频率扑捉的办法计算相位差。

使用特权

评论回复
地板
Enchanting|  楼主 | 2013-8-16 10:59 | 只看该作者
qzlbwang 发表于 2013-8-16 10:53
整形——异或——限幅——滤波——测量(直流电压值——对应的是相位差) ...

也就是说异或出来还要限幅和滤波,在送入单片机测量是吗?

使用特权

评论回复
5
qzlbwang| | 2013-8-16 11:02 | 只看该作者
要求不高可以省去限幅环节,因为数字电路输出的幅度基本恒定。但滤波电路是必须的——保证被测量的直流电压纹波很小。否则你AD转换后指的是什么电压呢?

使用特权

评论回复
6
Enchanting|  楼主 | 2013-8-16 11:04 | 只看该作者
qzlbwang 发表于 2013-8-16 10:58
最好在整形前也加滤波,以减弱输入波形畸变的影响。(两路输入要用相同的滤波电路参数,使得两路信号的移相 ...

我再整形前面加了滤波的,但是异或门出来的波形脉宽还是有抖动呢。

使用特权

评论回复
评论
qzlbwang 2013-8-16 11:07 回复TA
异或后的滤波是必须的。属于原理性的。整形前的滤波是改善波形畸变的影响的,属于锦上添花。 
7
qzlbwang| | 2013-8-16 11:04 | 只看该作者
那怕是用了简单的RC滤波也与无滤波时改善了很多。

使用特权

评论回复
8
qzlbwang| | 2013-8-16 11:05 | 只看该作者
因为这个测相位差的原理是用测异或后的电压平均值来间接测量相位差的。

使用特权

评论回复
9
Enchanting|  楼主 | 2013-8-16 11:16 | 只看该作者
qzlbwang 发表于 2013-8-16 11:05
因为这个测相位差的原理是用测异或后的电压平均值来间接测量相位差的。

可是我测相位是根据异或门出来脉冲的脉宽的大小来测相位差的,这样的话与异或后的电压电平没有关系吧。

使用特权

评论回复
10
Enchanting|  楼主 | 2013-8-16 11:17 | 只看该作者
Enchanting 发表于 2013-8-16 11:04
我再整形前面加了滤波的,但是异或门出来的波形脉宽还是有抖动呢。

嗯嗯,谢啦!

使用特权

评论回复
11
qzlbwang| | 2013-8-16 11:30 | 只看该作者
Enchanting 发表于 2013-8-16 11:16
可是我测相位是根据异或门出来脉冲的脉宽的大小来测相位差的,这样的话与异或后的电压电平没有关系吧。 ...

你这个方法有点问题:如果简单的处理,那么原理上就有问题:①用中断处理的话,每次中断的响应时间不一定相同。②即便是用频率捕捉的办法,如果不同时测频率的话,那么频率的抖动也会引起相位差的测量值抖动。如果用频率捕捉又同时测频率然后计算相位差的话。那就没有必要再用异或,也减少了异或运算带来的误差(任何器件都不是理想器件,虽然这里异或带来的影响很小)。并且,你这个测量是相位差的准瞬时值(每半个周波的相位差),如果相位差本身有一定的抖动的话(何况计数还有±1的误差问题呢)那输出抖动是必然的。如果用测量异或后经滤波的直流电压值的话,那么测量的是在一定时间范围内(取决于滤波的时间常数)的平均值,显示就稳定很多。

使用特权

评论回复
12
Enchanting|  楼主 | 2013-8-16 11:44 | 只看该作者
qzlbwang 发表于 2013-8-16 11:30
你这个方法有点问题:如果简单的处理,那么原理上就有问题:①用中断处理的话,每次中断的响应时间不一定 ...

嗯嗯,你说的极是,我是测相位差的同时测频的,也可能是因为我异或门出来的相位差本来就有一定的抖动,但是有没有什么办法解决呢?

使用特权

评论回复
13
qzlbwang| | 2013-8-16 11:49 | 只看该作者
那就用软件做数字滤波!

使用特权

评论回复
14
qzlbwang| | 2013-8-16 11:58 | 只看该作者
比如说:本次显示值=上次显示值*9/10+本次测量值/10      (注:首次显示值=首次测量值)

使用特权

评论回复
15
qzlbwang| | 2013-8-16 12:08 | 只看该作者
据我估计你的主要原因是用中断所致。特别是当异或后的脉冲的上升沿或下降沿时刻如果有更高级的中断正在响应,那么必须等到该中断结束后才能响应测相位差的中断,就必然会造成很大的误差,且这个事件发生的时刻是随机的,所以会造成测量的值发生很大的波动。
一般来说用定时器测量频率或相位差最好用频率捕捉方式,以消除中断响应时间的影响。当然这个要看MCU是否有这个资源。

使用特权

评论回复
16
Enchanting|  楼主 | 2013-8-16 12:36 | 只看该作者
qzlbwang 发表于 2013-8-16 12:08
据我估计你的主要原因是用中断所致。特别是当异或后的脉冲的上升沿或下降沿时刻如果有更高级的中断正在响应 ...

恩,好,我试试!谢谢了!

使用特权

评论回复
17
Enchanting|  楼主 | 2013-8-16 12:42 | 只看该作者
qzlbwang 发表于 2013-8-16 11:58
比如说:本次显示值=上次显示值*9/10+本次测量值/10      (注:首次显示值=首次测量值) ...

为什么要这样显示啊?这不是多次测量求平均吧。

使用特权

评论回复
18
Enchanting|  楼主 | 2013-8-16 12:57 | 只看该作者
qzlbwang 发表于 2013-8-16 11:58
比如说:本次显示值=上次显示值*9/10+本次测量值/10      (注:首次显示值=首次测量值) ...

你这是一阶滞后数字滤波法吧?但是这种滤波**不会有缺点,比如相位滞后,灵敏度不高等?

使用特权

评论回复
19
qzlbwang| | 2013-8-16 15:24 | 只看该作者
滤波当然会带来缺点,问题是这缺点对你影响有多大?对于50Hz,异或后的脉冲信号频率是100Hz,10个脉冲的时间是0.1秒,对于显示来说滞后0.X秒又有多大关系呢?

使用特权

评论回复
20
Enchanting|  楼主 | 2013-8-16 18:43 | 只看该作者
qzlbwang 发表于 2013-8-16 15:24
滤波当然会带来缺点,问题是这缺点对你影响有多大?对于50Hz,异或后的脉冲信号频率是100Hz,10个脉冲的时 ...

恩,好的。谢谢你了!O(∩_∩)O

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

1

主题

11

帖子

0

粉丝