相位差
本文基于《正弦量频率相位测量的新方法——高金峰》所提出的方法。此方法对上篇博客中所提的方法进行了改进,计算精度有所提升,但是对于被测信号进行了限制,具体见下文分析
1.理论基础
假设输入的两个模拟信号的表达式分别为:
从表达式中可得:两个信号的频率为
设观察时刻
结合信号的表达式我们可以得到
由和差化积公式
将
将
将
由
这样当
当
由
又由三角公式
令
所以两个模拟信号的初始相位为
最终我们得到两个信号的相位差为
2.流程图
3.Matlab仿真实现
clear all;
F=1;%被采样信号频率1Hz
Ts=0.1;%采样间隔
%对下列信号进行处理
u1=inline('2*sin(2*pi*t)');
u2=inline('3*sin(2*pi*t+pi/3)');
n=-2:2;
nTs=n*Ts;%采样序列
f1=u1(F*nTs);
f2=u2(F*nTs);
if(f1(3)==0)
angle1=0;
else
t11=(f1(4)+f1(2))/(f1(4)-f1(2));
t12=sqrt((2*f1(3)-f1(5)-f1(1))/(2*f1(3)+f1(5)+f1(1)));
angle1=atan(t11*t12);%信号1的相位
w=(f1(2)+f1(4))/(2*f1(3));
end
if(f2(3)==0)
angle2=0;
else
t21=(f2(4)+f2(2))/(f2(4)-f2(2));
t22=sqrt((2*f2(3)-f2(5)-f2(1))/(2*f2(3)+f2(5)+f2(1)));
angle2=atan(t21*t22);%信号2的相位
w=(f2(2)+f2(4))/(2*f2(3));
end
angle=abs(angle1-angle2)%两个信号的相位差
W=acos(w)/Ts;%求出角速度W
F=W/(2*pi)%求出模拟信号的频率
T=1/F;%求出周期
4.思考
4.1对于信号的要求
从实现原理中我们可以看出,此方法对于初始相位为0的模拟信号无法进行求解,我用自己的理解已将此部分的解决方法放到代码中,但正确性还待验证。
4.2异步采样
此方法的前提是对于两路信号采样的时间相同,即同步采样。而现实情况中实现理想情况的同步采样是较难实现的。文中给出了校验的方法。在频率
以上就是我对这篇文章的理解和实验,有不足之处还望大家多多指教。