调制和解调单边带调制和解调的方法有多种,其中最常用的是滤波法。用滤波法实现单边带调制,是分双边带信号形成和无用边带抑制两步完成的。双边带信号由平衡调制器形成。由于调制器的平衡作用,载频电平被抑制到很低。对无用边带的抑制,是由紧跟在平衡调制器后面的边带滤波器完成的。边带滤波器是一带通滤波器,若下边带为无用边带,则恰当地选择其中心频率和通带宽度,让上边带信号通过而抑制下边带。当需要形成多路独立边带信号时,就需要有相应数目的单边带信号产生器,它们具有不同的载频和不同中心频率的边带滤波器。然后把这些占有不同频段的单边带信号线性相加,便可得到多路独立边带信号。
单边带信号的解调,除了载频全发送的兼容单边带和残留单边带可以用包络检波外,其他各类单边带的解调只能用单边带产生的相反过程来完成(图3b),即仍用平衡调制器完成单边带信号频谱向基带的平移,并通过紧跟在调制器后面的低通滤波器,提取有用的基带信号,抑制无用的边带信号。
用滤波法产生和解调单边带信号,通常都在低于工作频率的低载频上进行。因此,在单边带产生器后和单边带解调器前有一个频率搬移部分,把单边带信号频谱从低载频搬移到工作频率,或相反。除滤波法外,还有相位补偿法和合成法可以在工作频率上直接产生单边带信号,但由于性能都不如滤波法,所以很少采用。
本设计的具体程序如下:
(1)利用matlab绘制已知信号f(t)
t=-2:0.001:2 %%信号f(t)
y1=sinc(t*200)
subplot(2,3,1),plot(t,y1) %画出原始信号
title('已知信号')
xlabel('时间:s')
ylabel('幅度')
grid
xlim([-0.1,0.1])
(2)利用matlab绘制已知信号f(t)的频谱
fs=3000 %%信号频谱
t1=-2:0.0001:2
y11=sinc(t1*200)
yk=fft(y11,50000) %对信号做傅立叶变换
yw=2*pi/40000*abs(fftshift(yk)) %频谱搬移
fw=[-25000:24999]/50000*fs
subplot(2,3,2),plot(fw,yw)
title('已知信号的频谱')
xlabel('频率:hz')
ylabel('幅度')
grid
xlim([-30,30])
(3)利用matlab绘制载波信号
y3=cos(2*pi*200*t) %%载波信号
subplot(2,3,3),plot(t,y3)
title('载波信号')
xlabel('时间:s')
ylabel('幅度')
grid
xlim([-0.1,0.1])
(4)利用matlab绘制已调信号
y4=sinc(t*200).*cos(2*pi*200*t) %%已调信号
subplot(2,3,4),plot(t,y4,'r-')
title('已调信号')
xlabel('时间:s')
ylabel('幅度')
grid
xlim([-0.05,0.05])
(5) 利用matlab绘制已调信号的频谱
fs1=1000 %已调信号频谱
yk=fft(y4,5000) %对信号做傅立叶变换
yw=2*pi/4000*abs(fftshift(yk)) %频谱搬移
fw=[-2500:2499]/5000*fs1
subplot(2,3,5),plot(fw,yw,'r-')
title('已调信号的频谱')
xlabel('频率:hz')
ylabel('幅度')
grid
xlim([-400,400])
(6)利用matlab绘制DSB-SC调制信号的功率谱密度
[c,lags]=xcorr(y4,200) %%DSB信号自相关函数
Figure %200表示自相关函数时间т
subplot(211)
plot(lags/fs,c)
title('DSB信号自相关函数')
xlabel('t')
ylabel('Rxx(t)')
Grid
SDSBp=fft(c,5000) %%DSB功率谱
fw=[-2500:2499]/5000*fs1
yw=2*pi/4000*abs(fftshift(SDSBp))%频谱搬移
subplot(212)
plot(fw,yw)
title('DSB信号功率谱')
xlabel('w')
ylabel('Rxx(t)')
grid
(7)利用matlab绘制相干解调后的信号波形
y7=y4.*y3 %%解调信号
figure
subplot(211)
plot(t,y7)
title('解调信号')
xlabel('时间:s')
ylabel('幅度')
grid
xlim([-0.1,0.1])
Rp=0.1; %%滤波后的f(t)信号
Rs=80; %信号衰减幅度
Wp=40/100; %通带截止频率
Ws=45/100; %阻带截止频率,100为载波频率的一半
[n,Wn]=ellipord(Wp,Ws,Rp,Rs); %阶数n
[b,a]=ellip(n,Rp,Rs,Wn); %传递函数分子分母b,a
Xl=5*filter(b,a,y7);
figure;
subplot(211);
plot(t,Xl);
title('滤波后的f(t)信号');
xlabel('时间单位:s');
ylabel('幅度');
grid;
xlim([-0.1,0.1])
标签:频谱,plot,单边,边带,Matlab,信号,ylabel,SC,DSB From: https://blog.51cto.com/u_15815923/5744409