用MATLAB处理一个信号,求其相位

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了用MATLAB处理一个信号,求其相位相关的知识,希望对你有一定的参考价值。

有信号X和Y,分别求两个信号的相位,再求其相位差.怎么求?

1、电脑上点击打开Matlab软件。

2、点击“新建脚本”新建一个脚本文件(m文件),在脚本文件中编写程序方便修改。

3、利用Matlab中的int函数对速度信号v(t)=2t积分,在脚本文件中输入程序如下图所示。

4、点击左上方的“保存”菜单。

5、在编辑器页面的上方工具栏中点击“运行”菜单。

6、接着在Matlab的命令窗口中就可以看到对速度信号的积分结果。

参考技术A 直接angle(x)求x的相位,angle(y)求y的相位,当然这些都是以弧度表示,
若想以度数表示直接a=angle(x)*180/pi,b=angle(y)*180/pi,求他们相位差直接相减就行了,不过前提是这两个信号长度起点要对应本回答被提问者采纳

数字信号调制基于matlab多进制数字相位调制(4PSK)含Matlab源码 1001期

一、简介

相移键控法, 根据数字基带信号的两个电平使载波相位在两个不同的数值之间切换的一种相位调制方法。
产生PSK信号的两种方法:
1)、调相法:将基带数字信号(双极性)与载波信号直接相乘的方法:
2)、选择法:用数字基带信号去对相位相差180度的两个载波进行选择。
两个载波相位通常相差180度,此时称为反向键控(PSK)。
解调方法:只能采用相干解调。
类型:二进制相移键控(2PSK),多进制相移键控(MPSK)。

二、源代码

%4PSK解调与解调
%假设在T=1,加入高斯噪声
clear all
close all
% 调制
bit_in = randint(1e3, 1, [0 1]);
bit_I  = bit_in(1:2:1e3);
bit_Q  = bit_in(2:2:1e3);
data_I = -2*bit_I+1;
data_Q = -2*bit_Q+1;
data_I1=repmat(data_I',20,1);
data_Q1=repmat(data_Q',20,1);
for i=1:1e4
    data_I2(i)=data_I1(i);
    data_Q2(i)=data_Q1(i);
end;
f=0:0.1:1;
xrc=0.5+0.5*cos(pi*f);
data_I2_rc=conv(data_I2,xrc)/5.5;
data_Q2_rc=conv(data_Q2,xrc)/5.5;
f1=1;
t1=0:0.1:1e3+0.9;
n0=rand(size(t1));
I_rc=data_I2_rc.*cos(2*pi*f1*t1);
Q_rc=data_Q2_rc.*sin(2*pi*f1*t1);
QPSK_rc=(sqrt(1/2).*I_rc+sqrt(1/2).*Q_rc);
QPSK_rc_n0=QPSK_rc+n0;
% 解调
I_demo=QPSK_rc_n0.*cos(2*pi*f1*t1);
Q_demo=QPSK_rc_n0.*sin(2*pi*f1*t1);
% 低通滤波
I_recover=conv(I_demo,xrc);    
Q_recover=conv(Q_demo,xrc);
I=I_recover(11:10010);
Q=Q_recover(11:10010);
t2=0:0.05:1e3-0.05;
t3=0:0.1:1e3-0.1;
% 抽样判决
data_recover=[];
for i=1:20:10000
    data_recover=[data_recover I(i:1:i+19) Q(i:1:i+19)];
end;
bit_recover=[];
for i=1:20:20000
    if sum(data_recover(i:i+19))>0
        data_recover_a(i:i+19)=1;
        bit_recover=[bit_recover 1];
    else
        data_recover_a(i:i+19)=-1;
        bit_recover=[bit_recover -1];
    end
end

三、运行结果

在这里插入图片描述

四、备注

版本:2014a

以上是关于用MATLAB处理一个信号,求其相位的主要内容,如果未能解决你的问题,请参考以下文章

用matlab进行傅里叶变换。傅里叶变换得到的相位谱、幅值谱有啥用?怎么分析?

数字信号调制基于matlab多进制数字相位调制(4PSK)含Matlab源码 1001期

matlab设计复合信号不同频率的初相位

数字信号调制基于多进制数字相位调制(4PSK)matlab源码

数字信号调制基于二进制数字相位调制(2PSK)matlab源码

信号处理调相信号产生+解调matlab源码