实验1 模拟调制解调一、实验要求1. 任意产生一个调制信号,画出其波形及其频谱;2. 产生一个余弦载波信号,画出其波形及其频谱;3. 分别采用AM,DSB,SSB的方式对调制信号进行调制,画出已调信号的波形及频谱;4. 采用适当的方式,分别对3中得到的已调信号进行解调,画出解调信号的波形;5. 产生一个高斯白噪声,叠加在已调信号上,然后进行解调,画出解调信号的波形;6. 比较4和5中的结果;二、实验原理①调幅(AM)如图1所示为调幅调制基本模型,假设调制信号m(t)平均值为0,将其叠加一个直流偏量0A后与载波相乘,即可形成调幅信号调幅信号时域表达式为:若m(t)为确知信号,则AM信号频谱为:其典型波形和频谱如图2所示:由图2中时域波形可以看出,当满足条件时,调幅波的包络与调制信号波形完全一致,因此用包络检波法将会很容易恢复出原始调制信号如未满足前述条件,将出现“过调幅”现象,此时用包络检波将发生失真、无法准确恢复原始波形,应当采用其他的解调方法解调,如同步检波 由图2中频域波形可看出AM信号频谱由载频分量、上边带、下边带三部分组成上边带的频谱结构与原调制信号频谱结构相同,下边带是上边带的镜像。
因此,AM信号是带有载波分量的双边带信号,带宽是基带信号带宽最大值的2倍,即②双边带调制(DSB)如图3所示,在AM调制模型中将直流分量A0去掉,即可输出抑制载波双边带信号、简称DSB信号,其时域和频域表达式如下:对应的典型DSB信号波形和频谱图如图4所示:同AM调幅信号相比,DSB信号有以下三点特点: 需采用相干解调(同步检波),不能采用简单的包络检波;节省了载波功率,全部功率都用于信号传输,调制效率为100%;DSB信号功率利用率提高了,但它的频带宽度仍是调制信号带宽的两倍③单边带调制(SSB)双边带信号两个边带中的任意一个都包含了调制信号频谱()Mw的所有频谱成分,因此仅传输其中一个边带即可这样既节省发送功率,还可节省一半传输频带,这种方式称为SSB单边带调制如图5所示滤波法产生SSB信号,先产生一个双边带信号,再让其通过一个边带滤波器滤除不要的边带,即可得到单边带信号图中,()Hw为单边带滤波器的传输函数,若它具有如下理想高通特性:则可滤除下边带,保留上边带(USB);若H(ω)具有如下理想低通特性:则可滤除上边带,保留上边带(LSB):因此,SSB信号频谱可表示为,边带滤波器H(ω)滤波特性存在如图6所示a、b两种情况。
相对应的,SSB信号频谱也存在两种情况如图7通常情况下选取保留上边带除了滤波法还可使用相移法产生SSB信号 SSB信号具备以下两点特点: a) 不但可节省载波发射功率,而且它所占用的频带宽度为== ; b) SSB信号的解调和DSB一样不能采用简单的包络检波,需采用相干解调三、实验结果:信号产生 4AM调制 4功率频谱密度 5AM相干解调 6DSB调制 7功率频谱密度 8DSB相干解调 9SSB调制 10功率频谱密度 11SSB解调 12VSB调制 13功率频谱密度 14VSB解调 15FM调制 16FM解调(鉴频器) 17函数BPF 18函数FFT_SHIFT 18函数GaussNB 19函数IFFT_SHIFT 19函数RECT_LPF 19函数vsbmd 20信号产生dt=0.001; %采样时间间隔fmax=1; %信源最高频率fc=10; %载波中心频率T=5; %信号时长N=T/dt;t=[0:N-1]*dt;A1=sqrt(2);ft=A1*cos(2*pi*fmax*t); %信源N0=0.1; %噪声功率AM调制A=2;s_am=(A+ft).*cos(2*pi*fc*t);BAM=2*fmax;noise=GaussNB(fc,BAM,N0,t); %高斯窄带噪声figure(1);subplot(211);plot(t,s_am);%画出AM信号波形hold on;plot(t,A+ft,'r--'); %标示AM的包络title('无噪声叠加AM调制信号及其包络');xlabel('t');s_am_n=s_am+noise; %噪声叠加subplot(212);plot(t,s_am_n,'r-');title('带噪声叠加AM调制信号');xlabel('t');功率频谱密度[f,Xf]=FFT_SHIFT(t,s_am);%已调信号频谱[fn,Xfn]=FFT_SHIFT(t,s_am_n);%带噪声已调信号频谱PSD=(abs(Xf).^2)/T;%调制信号功率密度函数PSDn=(abs(Xfn).^2)/T;figure(2);subplot(211);plot(f,PSD);axis([-2*fc 2*fc 0 1.5*max(PSD)]);title('AM信号功率谱');xlabel('f');subplot(212);plot(f,PSDn,'r');axis([-2*fc 2*fc 0 1.5*max(PSD)]);title('带噪声AM信号功率谱');xlabel('f');AM相干解调id_amt=s_am_n.*cos(2*pi*fc*t);%本地相乘器id_amt=id_amt-mean(id_amt);[f,AMf]=FFT_SHIFT(t,id_amt);[t,id_amt]=RECT_LPF(f,AMf,BAM);%低通滤波figure(3);subplot(211);plot(t,id_amt);title('AM信号');xlabel('t');subplot(212);plot(t,ft/2,'r--');title('AM解调信号');xlabel('t');DSB调制s_dsb=ft.*cos(2*pi*fc*t);BDSB=2*fmax;noise=GaussNB(fc,BDSB,N0,t); %高斯窄带噪声figure(4);subplot(211);plot(t,s_dsb); %画出DSB信号波形hold on;plot(t,ft,'r--'); %标示DSB的包络title('无噪声叠加DSB信号');xlabel('t');s_dsb_n=s_dsb+noise; %噪声叠加subplot(212);plot(t,s_dsb_n,'r-');title('带噪声叠加DSB信号');xlabel('t');功率频谱密度[f,Xf]=FFT_SHIFT(t,s_dsb); %已调信号频谱[fn,Xfn]=FFT_SHIFT(t,s_dsb_n); %带噪声已调信号频谱PSD=(abs(Xf).^2)/T; %调制信号功率PSDn=(abs(Xfn).^2)/T;figure(5);subplot(211);plot(f,PSD);axis([-2*fc 2*fc 0 1.5*max(PSD)]);title('DSB信号功率谱');xlabel('f');subplot(212);plot(f,PSDn,'r');axis([-2*fc 2*fc 0 1.5*max(PSD)]);title('带噪声DSB信号功率谱');xlabel('f');DSB相干解调id_dsbt=s_dsb_n.*cos(2*pi*fc*t); %本地相乘器id_dsbt=id_dsbt-mean(id_dsbt);[f,DSBf]=FFT_SHIFT(t,id_dsbt);[t,id_dsbt]=RECT_LPF(f,DSBf,BDSB); %低通滤波figure(6);subplot(211);plot(t,id_dsbt);title('DSB信号');xlabel('t');subplot(212);plot(t,ft/2,'r--');title('DSB解调信号');xlabel('t');SSB调制BSSB=fmax;s_ssb=real(hilbert(ft).*exp(j*2*pi*fc*t));noise=GaussNB(fc,BSSB/2,N0,t);figure(7);subplot(211);plot(t,s_ssb);title('SSB信号');xlabel('t');s_ssb_n=s_ssb+noise;subplot(212);plot(t,s_ssb_n,'r-');title('带噪声SSB信号');xlabel('t');功率频谱密度[f,Xf]=FFT_SHIFT(t,s_ssb); %已调信号频谱[fn,Xfn]=FFT_SHIFT(t,s_ssb_n); %带噪声已调信号频谱PSD=(abs(Xf).^2)/T; %调制信号功率密度函数PSDn=(abs(Xfn).^2)/T;figure(8);subplot(211);plot(f,PSD);axis([-2*fc 2*fc 0 1.5*max(PSD)]);title('SSB信号功率谱');xlabel('f');subplot(212);plot(f,PSDn,'r');axis([-2*fc 2*fc 0 1.5*max(PSD)]);title('带噪声SSB信号功率谱');xlabel('f');SSB解调id_ssbt=s_ssb_n.*cos(2*pi*fc*t);id_ssbt=id_ssbt-mean(id_ssbt);[f,SSBf]=FFT_SHIFT(t,id_ssbt);[t,id_mt]=RECT_LPF(f,SSBf,2*fmax);figure(9);subplot(211);plot(t,id_mt);title('SSB信号');xlabel('t');subplot(212);plot(t,ft/2,'r--');title('SSB解调信号');xlabel('t');VSB调制vsb=ft.*cos(2*pi*fc*t);BVSB=1.2*fmax;[f,vsbf]=FFT_SHIFT(t,vsb);[t,s_vsb]=vsbmd(f,vsbf,0.2*fmax,1.2*fmax,fc);noise=GaussNB(fc,BVSB,N0,t);figure(10);subplot(211);plot(t,s_vsb);title('VSB信号');xlabel('t');s_vsb_n=s_vsb+noise;subplot(212);plot(t,s_vsb_n,'r-');title('带噪声的VSB信号');xlabel('t'。