|
RF信号经过tuner下变频之后,输出的IF是I、Q两路信号,请问此时这两路信号携带的信息是否一致,我只需要解调其中一路信号就可以了吗?还是说I、Q两路信号合起来才能完全恢复出我原始信号
我用matlab做了个程序仿真,
%multitone 信号下变频仿真
clear
close all
fc=666;%载频
fs=2000;
f1=5;
f2=15;
f3=25;
f4=35;
Delta_f=0.5;%频率间隔
T=1/fs;%采样间隔
L=1/Delta_f;%时间长度
N=floor(fs/Delta_f)+1;%采样点数
%t=0:1/fs:((4/f1)-(1/fs));
t=0:T:L;%时间轴
freq=0:Delta_f:fs;%频率轴
x1=0.3*cos(2*pi*f1*t)+0.4*cos(2*pi*f4*t)%I
x2=0.6*cos(2*pi*f3*t)+0.7*cos(2*pi*f2*t);%Q
%MODULATION
y=x1.*cos(2*pi*fc*t)+x2.*sin(2*pi*fc*t);
y_t_hanning=hanning(N).*y';%加窗
Y_w_hanning=T.*fft(y_t_hanning,N)+eps;%计算频谱
semilogy(freq,abs(Y_w_hanning));%绘制频谱
title('modulation signal Spectrum');
xlabel('frequency/Mhz')
axis([666,800,1e-4,1]);
grid on;
figure;
subplot(311);
plot(t,y);title('modulation signal');
xlabel('time/s')
%DEMODULATION
y1=y.*cos(2*pi*fc*t);
y2=y.*sin(2*pi*fc*t);
[b,a]=butter(10,2*pi*max(f1,f2)/fs);%设计滤波器
x1_rec=filter(b,a,y1);%I
x2_rec=filter(b,a,y2);%Q
subplot(312);plot(t,x1_rec);title('recovered message signal 1');
xlabel('time/s')
subplot(313);plot(t,x2_rec);title('recovered message signal 2');
xlabel('time/s')
figure
x1_t_hanning=hanning(N).*x1_rec';%加窗
X1_w_hanning=T.*fft(x1_t_hanning,N)+eps;%计算频谱
semilogy(freq,abs(X1_w_hanning));
title('demodulated signa of I Spectrum');
xlabel('frequency/Khz')
axis([0,200,1e-4,1]);
grid on;
figure
x2_t_hanning=hanning(N).*x2_rec';%加窗
X2_w_hanning=T.*fft(x2_t_hanning,N)+eps;%计算频谱
semilogy(freq,abs(X2_w_hanning));
title('demodulated signa of Q Spectrum');
xlabel('frequency/KHz')
axis([0,200,1e-4,1]);
grid on;
结果显示,当我下变频之后,I,Q两路的信号不是一致的。请大侠给分析一下<img src="attachments/dvbbs/2012-7/201271214203996588.jpg" border="0" onclick="zoom(this)" onload="if(this.width>document.body.clientWidth*0.5) {this.resized=true;this.width=document.body.clientWidth*0.5;this.style.cursor='pointer';} else {this.onclick=null}" alt="" />
<img src="attachments/dvbbs/2012-7/201271214204794963.jpg" border="0" onclick="zoom(this)" onload="if(this.width>document.body.clientWidth*0.5) {this.resized=true;this.width=document.body.clientWidth*0.5;this.style.cursor='pointer';} else {this.onclick=null}" alt="" />
<img src="attachments/dvbbs/2012-7/201271214205433395.jpg" border="0" onclick="zoom(this)" onload="if(this.width>document.body.clientWidth*0.5) {this.resized=true;this.width=document.body.clientWidth*0.5;this.style.cursor='pointer';} else {this.onclick=null}" alt="" />
[此贴子已经被作者于2012-7-12 20:08:12编辑过] |
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有账号?注册
×
|