您好,欢迎访问三七文档
当前位置:首页 > 临时分类 > DSB抑制载波双边带幅度调制、相干解调系统的MATLAB实现
抑制载波双边带幅度调制、相干解调系统的MATLAB实现目录一、作业要求.......................................................................................................................1二、DSB-SC原理描述.........................................................................................................1三、DSB-SC实现框图.........................................................................................................2四、MATLAB程序及注释....................................................................................................3五、仿真结果.....................................................................................................................11一、作业要求用MATLAB程序开发设计抑制载波双边带幅度调制、相干解调系统。系统参数如下:信源为频率为3K、幅度为1的正弦信号,载波频率为信源频率的30倍。要求有如下输出和显示:(1)调制前后的信号波形、信号频谱;(2)在信道输入信噪比分别为0dB和10dB两种情况下,解调器的输入和输出波形各有何不同;(3)绘出输入信噪比与输出信噪比之间的关系(不能直接使用制度增益的公式来绘制)。二、DSB-SC原理描述所谓线性调制是指信号的频谱为调制信号(即基带信号)频谱的线性平移及变换,而非线性调制时已调信号与输入调制信号之间不存在这种对应关系,已调信号频谱中将出现与调制信号无线性关系的分量。在常规双边带调幅(DSB)时,由于已调波中含有不携带信息的载波分量,故调制效率较低。为了提高调制效率,在常规调幅的基础上抑制掉载波分量,使总功率全部包含在双边带中。这种调制方式称为抑制载波双边带调制(DSB-SC)。在抑制载波双边带调幅(DSB-SC)中,实现双边带调制就是完成调制信号与载波信号的相乘运算,输出已调信号时域表达式为:()()()DSBcStftcoswt其中f(t)为调制信号,可确切知道也可以为随机信号,通常认为平均值为0。ωc为载波频率。双边带解调只能采用相干解调,把已调信号乘上一个与调制器同频同相的载波,将已调信号的频谱搬回到原点位置,时域表达式为:21()()()()(12)2DSBcccStcoswtftcoswtftcoswt然后通过低通滤波器,滤除高频分量,使得无失真地恢复出原始调制信号。三、DSB-SC实现框图DSB_SC信号的产生:DSB_SC信号的解调:四、MATLAB程序及注释clc;clear;tic;fm=3*10^3;%premodulationfreqfc=30*fm;%carrierfreqfs=2*2^10*fc;%samplingfreqT=1/fs;%samplingintervalL=256*2^10;%lengthofsignalt=(0:L-1)*T;%timevectorft=sin(2*pi*fm*t);%pre-modulationsignalplot(t,ft);title('premodulationsignal');xlabel('t/s');f(t)cos(wt)H(f)S(t)BPFcos(wt)载波同步BPFf(t)ylabel('f(t)');saveas(gcf,'premodulationsignal.bmp','bmp');s_dsb=ft.*cos(2*pi*fc*t);%modulatedsignalplot(t,s_dsb);title('modulatedsignal');xlabel('t/s');ylabel('dsb(t)');saveas(gcf,'modulatedsignal.bmp','bmp');NFFT=2^nextpow2(L);fw_ft=fft(ft,NFFT)/NFFT*2;%showrealityampltitudef=fs/NFFT*(0:1:NFFT-1);abs_fw_ft=abs(fw_ft);plot(f(1:NFFT/2),abs_fw_ft(1:NFFT/2));saveas(gcf,'premodulationsignalspectrum.bmp','bmp');plot(f(1:ceil(10*fm*L*T)),abs_fw_ft(1:ceil(10*fm*L*T)));%bettereffectfw_dsb=fft(s_dsb,NFFT)/NFFT*2;abs_fw_dsb=abs(fw_dsb);plot(f(1:NFFT/2),abs_fw_dsb(1:NFFT/2));saveas(gcf,'modulatedsignalspectrum.bmp','bmp');plot(f(1:ceil(2*fc*L*T)),abs_fw_dsb(1:ceil(2*fc*L*T)));%bettereffect%--------------------------------------q2dsb_n0=awgn(s_dsb,0);%addnoiseplot(t,dsb_n0);dsb_n10=awgn(s_dsb,10);plot(t,dsb_n10);fw_dsb_n0=fft(dsb_n0,NFFT);%fftabs_fw_dsb_n0=abs(fw_dsb_n0);plot(f(1:NFFT/2),abs_fw_dsb_n0(1:NFFT/2));fw_dsb_n10=fft(dsb_n10,NFFT);abs_fw_dsb_n10=abs(fw_dsb_n10);plot(f(1:NFFT/2),abs_fw_dsb_n10(1:NFFT/2));[max_n0,locat_n0]=max(abs_fw_dsb_n0(1:NFFT/2));%bpf_n0w_bpf=11;%适当的取带通滤波器的带宽,会影响最后的制度增益abs_fw_dsb_n0(:,1:(locat_n0-w_bpf))=0;abs_fw_dsb_n0(:,(locat_n0+w_bpf):NFFT-locat_n0-w_bpf)=0;abs_fw_dsb_n0(:,NFFT-locat_n0+w_bpf:NFFT)=0;fw_dsb_n0(:,1:(locat_n0-w_bpf))=0;fw_dsb_n0(:,(locat_n0+w_bpf):NFFT-locat_n0-w_bpf)=0;fw_dsb_n0(:,NFFT-locat_n0+w_bpf:NFFT)=0;[max_n10,locat_n10]=max(abs_fw_dsb_n10(1:NFFT/2));%bpf_n10%w_bpf=5;abs_fw_dsb_n10(:,1:(locat_n10-w_bpf))=0;abs_fw_dsb_n10(:,(locat_n10+w_bpf):NFFT-locat_n10-w_bpf)=0;abs_fw_dsb_n10(:,NFFT-locat_n10+w_bpf:NFFT)=0;fw_dsb_n10(:,1:(locat_n10-w_bpf))=0;fw_dsb_n10(:,(locat_n10+w_bpf):NFFT-locat_n10-w_bpf)=0;fw_dsb_n10(:,NFFT-locat_n10+w_bpf:NFFT)=0;%tic;%bpf1%slowtimewasting,noloop%fori=1:size(fw_dsb_n0,2)%max_abs_fw_n0=max(abs_fw_dsb_n0);%ifabs_fw_dsb_n0(i)0.1*max_abs_fw_n0%fw_dsb_n0(i)=0;%abs_fw_dsb_n0(i)=0;%end%end%toc;%tic;%bpf2%fori=1:size(fw_dsb_n10,2)%max_abs_fw_n10=max(abs_fw_dsb_n10);%ifabs_fw_dsb_n10(i)0.1*max_abs_fw_n10%fw_dsb_n10(i)=0;%abs_fw_dsb_n10(i)=0;%end%end%toc;fti_n0=ifft(fw_dsb_n0);%inputsignalfti_n10=ifft(fw_dsb_n10);fti_n0=real(fti_n0);fti_n10=real(fti_n10);plot(t,fti_n0);plot(t,fti_n10);dsb_n0_temp=fti_n0.*cos(2*pi*fc*t);fw_dsbi_n0=fft(dsb_n0_temp,NFFT);fw_dsbi_n0(:,ceil((1.5*fm)*L*T):NFFT-ceil((1.5*fm)*L*T))=0;%lpf%适当的取低通滤波器的带宽,会影响最后的制度增益abs_fw_dsbi_n0=abs(fw_dsbi_n0);plot(f(1:NFFT/2),abs_fw_dsbi_n0(1:NFFT/2));fto_n0=ifft(fw_dsbi_n0);%outputsignalfto_n0=real(fto_n0);plot(t,fto_n0);dsb_n10_temp=fti_n10.*cos(2*pi*fc*t);fw_dsbi_n10=fft(dsb_n10_temp,NFFT);fw_dsbi_n10(:,ceil((1.5*fm)*L*T):NFFT-ceil((1.5*fm)*L*T))=0;%lpfabs_fw_dsbi_n10=abs(fw_dsbi_n10);plot(f(1:NFFT/2),abs_fw_dsbi_n10(1:NFFT/2));fto_n10=ifft(fw_dsbi_n10);%outputsignalfto_n10=real(fto_n10);plot(t,fto_n10);plot(t,fto_n10-fto_n0);%differencebtwn10&n0%------------------------------------q3sini=zeros(1,201);sono=zeros(1,201);forsnr=0:200dsb_n_snr=awgn(s_dsb,snr);%addnoiseplot(t,dsb_n_snr);fw_dsb_n_snr=fft(dsb_n_snr,NFFT);%fftabs_fw_dsb_n_snr=abs(fw_dsb_n_snr);plot(f(1:NFFT/2),abs_fw_dsb_n_snr(1:NFFT/2));[max_n_snr,locat_n_snr]=max(abs_fw_dsb_n_snr(1:NFFT/2));%bpf_n_snr%w_bpf=5;abs_fw_dsb_n_snr(:,1:(locat_n_snr-w_bpf))=0;abs_fw_dsb_n_snr(:,(locat_n_snr+w_bpf):NFFT-locat_n_snr-w_bpf)=0;abs_fw_dsb_n_snr(:,NFFT-locat_n_snr+w_bpf:NFFT)=0;fw_dsb_n_snr(:,1:(locat_n_snr-w_bpf))=0;fw_dsb_n_snr(
本文标题:DSB抑制载波双边带幅度调制、相干解调系统的MATLAB实现
链接地址:https://www.777doc.com/doc-3867497 .html