声振论坛

 找回密码
 我要加入

QQ登录

只需一步,快速开始

查看: 12868|回复: 12

[其他] 在Matlab中如何实现求两个信号的相位差?

[复制链接]
发表于 2007-8-17 11:30 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?我要加入

x
在matlab中如何实现两个多频率成分信号在各频率点的相位差?多谢。

本帖被以下淘专辑推荐:

回复
分享到:

使用道具 举报

发表于 2007-8-17 14:56 | 显示全部楼层
可对两信号分别作FFT变换,在频域上分别对每一个信号求出各频率点的初始相角,用相减的方法求出两信号之间在各频率点的相角之差。

[ 本帖最后由 zhlong 于 2007-11-14 11:13 编辑 ]
发表于 2009-1-11 10:55 | 显示全部楼层
我用FFT变换法求出来的误差很大啊,
n=1:100;
x=8*sin(2*pi*200/1000*n+pi/6);         %原信号
y=5*sin(2*pi*200/1000*n+pi/3);
X=fft(x);
Y=fft(y);
qx=atan(imag(X)./real(X));
qy=atan(imag(Y)./real(Y));
q=qy-qx;
plot(n,180*q/pi)
xlabel('信噪比')
ylabel('相位差(度)')
请问这样写程序有没有什么错误?为什么结果差距这么大?

[ 本帖最后由 Hyowinner 于 2009-1-11 10:59 编辑 ]
发表于 2009-4-10 16:24 | 显示全部楼层
你应该选取对应频率成分,再相减。
发表于 2009-4-28 15:06 | 显示全部楼层

回复 地板 Spire 的帖子

你对两信号用Hilbert变换求出瞬时相位再减
发表于 2009-5-21 10:22 | 显示全部楼层

回复 5楼 wisdomgirl 的帖子

请问下
Hilbert变换怎么求出瞬时相位?
在网上找了好久都没有找到
发表于 2009-5-24 15:38 | 显示全部楼层
信号为f;
在matlab中写下面语句:
H=hilbert(t); %Hilbert变换
ang=angle(H); %求折叠相位 ,这个就是瞬时相位
unwran=unwrap(ang);%求无折叠相位
发表于 2009-5-24 15:50 | 显示全部楼层

回复 楼主 dlchen 的帖子

help cpsd
它的相谱我觉得就是你要的答案
发表于 2009-10-2 18:32 | 显示全部楼层
能不能给出具体的程序。
发表于 2009-10-4 10:14 | 显示全部楼层
本帖最后由 VibInfo 于 2016-11-8 15:02 编辑
原帖由 lzk55882 于 2009-5-24 15:50 发表
help cpsd
它的相谱我觉得就是你要的答案

我也认为作互谱分析是最简单的方法,看它的相位谱就一目了然了
发表于 2012-3-14 16:40 | 显示全部楼层
回复 1 # dlchen 的帖子

楼主好,我现在也遇到同样的问题,如何求两路同源信号的相位差,恳请赐教啊!!谢谢啦!!
发表于 2012-3-15 08:46 | 显示全部楼层
楼主最后最后解决了吗?
发表于 2012-10-5 19:17 | 显示全部楼层

这个算法的问题不在于误差

根据复变函数的知识,相位p = angle (w)
是多值函数
这个函数的主值值域是(-pi,pi)
记主值为 p0,这个函数全部的值为 p0+k*2*pi;其中k为整数
于是上文算法得到的相位差p2-p1的值域为(-2*pi,2*pi)
要使值域在(-pi,pi),由复变函数知识,可以先对相位做除法运算
dp =angle (w2/w1)
由复变函数知识有angle(w2/w1) = angle(w2 *conj(w1))
即把
qx=atan(imag(X)./real(X));
qy=atan(imag(Y)./real(Y));
q=qy-qx;
改为
q = angle(qy *conj(qj))


但是这样算出来的也是主值,而不是真实值
一般碰到这种问题,真实值只能靠相位谱的连续性和经验判断了
您需要登录后才可以回帖 登录 | 我要加入

本版积分规则

QQ|小黑屋|Archiver|手机版|联系我们|声振论坛

GMT+8, 2024-12-25 22:08 , Processed in 0.376231 second(s), 20 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表