本文基于《正弦量频率相位测量的新方法——高金峰》所提出的方法。此方法对上篇博客中所提的方法进行了改进,计算精度有所提升,但是对于被测信号进行了限制,具体见下文分析
1.理论基础
假设输入的两个模拟信号的表达式分别为:
μ1(t)=U1msin(ωt+θ1)
μ2(t)=U2msin(ωt+θ2)
从表达式中可得:两个信号的频率为
ω2π
,相位差为
θ=θ1−θ2
设观察时刻
t=0
,则以
t=0
为中心,以时间间隔为
△t
对
μ1(t)
和
μ2(t)
进行同时采样可得采样序列:
⋯μ1(−3△t),μ1(−2△t),μ1(−△t),μ1(0),μ1(△t),μ1(2△t),μ1(3△t),⋯
⋯μ2(−3△t),μ2(−2△t),μ2(−△t),μ2(0),μ2(△t),μ2(2△t),μ2(3△t),⋯
结合信号的表达式我们可以得到
μ1(0)=U1msin(θ1)(1)μ1(△t)=U1msin(ω△t+θ1)(2)μ1(−△t)=U1msin(−ω△t+θ1)(3)μ1(2△t)=U1msin(2ω△t+θ1)(4)μ1(−2△t)=U1msin(−2ω△t+θ1)(5)
由和差化积公式
sina+sinb=2sina+b2cosa−b2sina−sinb=2cosa+b2sina−b2
将
(2)+(3)
可得
2U1msinθ1cos(ω△t)=μ1(△t)+μ1(−△t)(6)
将
(2)−(3)
可得
2U1mcosθ1sin(ω△t)=μ1(△t)−μ1(−△t)(7)
将
(4)+(5)
可得
2U1msinθ1cos(2ω△t)=μ1(2△t)+μ1(−2△t)(8)
由
(1)
和
(6)⇒cos(ω△t)=μ1(△t)+μ1(−△t)2μ1(0)⇒ω=arccos(μ1(△t)+μ1(−△t)2μ1(0))/△t(9)
这样当
μ1(0)≠0
时,我们就可以通过三个采样点的数值计算出模拟信号的角频率
ω
当
μ1(0)≠0
且
μ1(△t)−μ1(−△t)≠0
时,由
(6)(7)⇒
tanθ1tan(ω△t)=μ1(△t)+μ1(−△t)μ1(△t)−μ1(−△t)⇒tanθ1=μ1(△t)+μ1(−△t)μ1(△t)−μ1(−△t)tan(ω△t)(10)
由
(1)
和
(8)⇒cos(ω△t)=μ1(2△t)+μ1(−2△t)2μ1(0)(11)
又由三角公式
tana=1−cos2a1+cos2a−−−−−−−−−√
(取正值)可得
tanθ1=μ1(△t)+μ1(−△t)μ1(△t)−μ1(−△t)2μ1(0)−μ1(2△t)−μ1(−2△t)2μ1(0)+μ1(2△t)+μ1(−2△t)−−−−−−−−−−−−−−−−−−−−−−−−−−√(12)
令
t11=μ1(△t)+μ1(−△t)μ1(△t)−μ1(−△t)t12=2μ1(0)−μ1(2△t)−μ1(−2△t)2μ1(0)+μ1(2△t)+μ1(−2△t)−−−−−−−−−−−−−−−−−−−−−−−−−−√t21=μ2(△t)+μ2(−△t)μ2(△t)−μ2(−△t)t22=2μ2(0)−μ2(2△t)−μ2(−2△t)2μ2(0)+μ2(2△t)+μ2(−2△t)−−−−−−−−−−−−−−−−−−−−−−−−−−√
所以两个模拟信号的初始相位为
θ1=arctan(t11t12)θ2=arctan(t21t22)
最终我们得到两个信号的相位差为
θ=∣θ1−θ2∣
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异步采样
此方法的前提是对于两路信号采样的时间相同,即同步采样。而现实情况中实现理想情况的同步采样是较难实现的。文中给出了校验的方法。在频率
ω
确定的形况下,只要选定一个信号的
t=0
的位置,另一路信号
t=0
的位置就可以由第一路信号
t=0
的位置确定。若两路信号的采集时间相差
△t2
,且第二路信号
t=0
的采集点在第一路采集点之后,则计算两路信号相位差的公式由
θ=∣θ1−θ2∣
变为
θ=∣θ1−θ2+ω△t2∣
以上就是我对这篇文章的理解和实验,有不足之处还望大家多多指教。