当前位置:文档之家› 实验一 模拟通信的MATLAB仿真

实验一 模拟通信的MATLAB仿真

实验一 模拟通信的MATLAB 仿真姓名:左立刚 学号:031040522简要说明:实验报告注意包括AM ,DSB ,SSB ,VSB ,FM 五种调制与解调方式的实验原理,程序流程图,程序运行波形图,simulink 仿真模型及波形,心得体会,最后在附录中给出了m 语言的源程序代码。

一.实验原理1.幅度调制(AM )幅度调制(AM )是指用调制信号去控制高频载波的幅度,使其随调制信号呈线性变化的过程。

AM 信号的数学模型如图3-1所示。

图2-1 AM 信号的数学模型为了分析问题的方便,令δ=0,1.1 AM 信号的时域和频域表达式()t S AM=[A 0+m ()t ]cos t cω (2-1)()t S AM =A 0π[()()ωωωωδC C ++-]+()()[]ωωωωc c M M ++-21(2-2)AM 信号的带宽2=BAMfH(2-3)式中,fH为调制信号的最高频率。

2.1.3 AM 信号的功率P AM 与调制效率ηAMP AM=()2222t m A +=PP mc + (2-4)式中,P C=2A为不携带信息的载波功率;()22t m P m=为携带信息的边带功率。

()()t t m A m PP AMCAM222+==η(2-5) AM 调制的优点是可用包络检波法解调,不需要本地同步载波信号,设备简单。

AM 调制的最大缺点是调制效率低。

2.2、双边带调制(DSB )如果将在AM 信号中载波抑制,只需在图3-1中将直流 A 0去掉,即可输出抑制载波双边带信号。

2.2.1 DSB 信号的时域和频域表达式()()t t m t cDSB S ωcos= (2-6)()()()[]ωωωωωC C DSBM M S ++-=21 (2-7) DSB 信号的带宽fB BHAM DSB2== (2-8)DSB 信号的功率及调制效率由于不再包含载波成分,因此,DSB 信号的功率就等于边带功率,是调制信号功率的一半,即()()t t m PS P CDSB DSB 2221=== (2-9) 显然,DSB 信号的调制效率为100%。

2.3、单边带调制(SSB )产生SSB 信号最基本的方法有滤波法和相移法。

2.3.1 SSB 信号的时域表达式()()()t t mt t m t c c SSB S ωωsin ˆ21cos 21μ= (2-10) 式中,“-”表示上边带信号,“+”表示下边带信号;()t mˆ是()t m 的希尔伯特变换。

2.3.2 SSB 信号的带宽、功率和调制效率fB B HDSBSSB ==21(2-11)由于SSB 信号仅包含一个边带,因此其功率为DSB 信号的一半,即()t mP P DSB SSB 24121==(2-12) 显然,SSB 信号的调制效率也为100%。

2.4、残留边带调制(VSB )单边带传输信号具有节约一半频谱和节省功率的优点。

但是付出的代价是设备制作非常困难。

为了解决这个问题,可以采用残留边带调制(VSB )。

VSB是介于SSB 和DSB 之间的一个折中方案。

在这种调制中,一个边带绝大部分顺利通过,而另一个边带残留一小部分。

如何选择残留边带滤波器的滤波特性使残留边带信号解调后不产生失真呢?为了在接收端不失真地恢复原基带信号,要求残留边带滤波器传输特性必须满足下述条件()()常数=-++ωωωωCVSBCVSBH HωωH ≤ (2-13)式中,ωH是基带信号的最高截止角频率。

2.5频率调制(FM)2.5.1 FM 解调模型的建立:调制信号的解调分为相干解调和非相干解调两种。

相干解调仅仅适用于窄带调频信号,且需同步信号,故应用范围受限;而非相干解调不需同步信号,且对于NBFM 信号和WBFM 信号均适用,因此是FM 系统的主要解调方式。

在本仿真的过程中我们选择用非相干解调方法进行解调。

非相干解调器由限幅器、鉴频器和低通滤波器等组成,其方框图如图5所示。

限幅器输入为已调频信号和噪声,限幅器是为了消除接收信号在幅度上可能出现的畸变;带通滤波器的作用是用来限制带外噪声,使调频信号顺利通过。

鉴频器中的微分器把调频信号变成调幅调频波,然后由包络检波器检出包络,最后通过低通滤波器取出调制信号。

2.5.2 解调过程分析:设输入调频信号为()()cos(())tt FM c f S t S t A t K m d ωττ-∞==+⎰微分器的作用是把调频信号变成调幅调频波。

微分器输出为[]()()()()sin(())i FM d tc f c f dS t dS t S t dt dtK m t t K m d ωωττ+-∞===-+⎰包络检波的作用是从输出信号的幅度变化中检出调制信号。

包络检波器输出为[]()()()o d c f d c d f S t K Km t K K Km t ωω++==d K 称为鉴频灵敏度(V Hz ),是已调信号单位频偏对应的调制信号的幅度,经低通滤波器后加隔直流电容,隔除无用的直流,得()()o d f m t K K m t =2.5.3 高斯白噪声信道特性设正弦波通过加性高斯白噪声信道后的信号为()cos()()c r t A t n t ωθ=++其中,白噪声()n t 的取值的概率分布服从高斯分布。

MATLAB 本身自带了标准高斯分布的内部函数randn 。

randn 函数产生的随机序列服从均值为0m =,方差21σ=的高斯分布。

正弦波通过加性高斯白噪声信道后的信号为()cos()()c r t A t n t ωθ=++故其有用信号功率为22A S =噪声功率为2N σ=信噪比S N 满足公式1010log ()S B N=则可得到公式2210210B A σ=•我们可以通过这个公式方便的设置高斯白噪声的方差。

二.程序流程图(利用microsoft office visio 2003画出的)2.1 AM 程序流程图2.2 DSB 程序流程图2.3 SSB 程序流程图2.4 VSB 程序流程图开始VSB 信号傅里叶变换FFT VSB 信号功率谱高斯窄带噪声VSB 解调信号低通滤波LPF 相乘本地载波cos(wc*t)调制信号f(t)+相乘本地载波cos(wc*t)残留边带滤波器2.5 FM 程序流程图开始FM 信号带通滤波器BPF微分低通滤波LPF相乘c(t)=-sin(wc*t)调制信号f(t)积分器本地载波cos(wc*t)相乘-90移相-+FM 解调信号当然,这些程序流程图也可以利用word 自带画图工具作出,个人认为用visio 画流程图操作方便一些。

三.程序运行结果图(代码略)图3.1 AM 波形图图3.2 DSB波形图图3.3 SSB波形图图3.4 VSB波形图图3.5 VSB相干解调图图3.6 FM波形图四.Simulink仿真模型及波形4.1各模型图图4.1 上面是AM模型,下面是DSB模型图4.2 上面是SSB模型,下面是VSB模型图4.3 FM模型4.2各波形图图4.4 AM波形图图4.5 DSB波形图图4.6 SSB波形图图4.7 VSB波形图图4.8 FM波形图五.心得体会1.“实践是检验真理的唯一标准”。

对于实验课,毫无疑问是建立在一定理论基础之上的,正确的理论对实验起积极的指导作用,反过来,实验又可以验证理论的正确性,而进一步丰富、发展与完善理论。

所以,在做实验之前,必须理解与掌握相关的理论知识,做实验之时,不至于“盲人摸象”;2.在编辑m语言程序代码时,严谨仔细当然是必备的素质,例如大小写,逗号与分号。

初始化输出数据后,就进行常规调幅(AM)的程序编写,通过观察DSB,SSB,VSB,FM等程序模块时,发现有大量相似之处,这时没有不要一个一个代码敲击,后续适当修改参数即可;3.在编写与调用子程序时,特别注意:子程序和主程序一定要在用一个文件夹中,以便正确调用;另外,子程序所在路径的名字一定要和调用子程序的名字一样,包括大小写;4.这次试验又学会基本m语言的调试方法,利用cell分别执行每个模块;利用Debug或设置断点,单步执行,进行查错。

另外又了解一个在simulink中专门进行通信仿真的工具:communication block。

5.最重要的是,理解并掌握了AM,DSB,SSB,VSB,FM等的调制与解调的基本方法。

附录源程序:%Signal generationclcdt=0.001;fmax=1;fc=10;T=5;N=T/dt;t=[0:N-1]*dt;Al=sqrt(2);ft=Al*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(311);plot(t,s_am);hold on;plot(t,A+ft,'r--');title('无噪声叠加AM调制信号及其包络');xlabel('t');s_am_n=s_am+noise;hold on;plot(t,s_am_n,'r');%%%功率谱密度[f,Xf]=FFT_SHIFT(t,s_am_n);[fn,Xfn]=FFT_SHIFT(t,s_am_n);PSD=(abs(Xf).^2)/T;PSDn=(abs(Xfn).^2)/T;subplot(312);plot(f,PSD);axis([-2*fc 2*fc 0 1.5*max(PSD)]);title('AM信号功率谱');xlabel('f');hold on;plot(f,PSDn,'r');%%%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);title('AM信号');xlabel('t');subplot(313);plot(t,id_amt);hold on;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(2);subplot(311);plot(t,s_dsb);hold on; %画出DSB信号波形plot(t,s_dsb,'r--');%标示DSB的包络title('无噪声叠加DSB信号');xlabel('t');s_dsb_n=s_dsb+noise;%噪声叠加hold on;plot(t,s_dsb_n,'r-');%%%功率频谱密度[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;subplot(312);plot(f,PSD);axis([-2*fc 2*fc 0 1.5*max(PSD)]);title('DSB信号功率谱');xlabel('f');hold on;plot(f,PSDn,'r');%%%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);%低通滤波title('DSB信号');xlabel('t');subplot(313);plot(t,id_dsbt);hold on;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(3)subplot(311)plot(t,s_ssb);title('ssb信号');xlabel('t'); s_ssb_n=s_ssb+noise;hold on;plot(t,s_ssb_n,'r--');%%%功率谱密度[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;subplot(312);plot(f,PSD);axis([-2*fc 2*fc 0 1.5*max(PSD)]);title('ssb信号功率谱');xlabel('f');hold on;plot(f,PSDn,'r');%%%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,ids_mt]=RECT_LPF(f,SSBf,2*fmax);subplot(313);plot(t,ids_mt);hold on;plot(t,ft/2,'r--');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(4)subplot(221)plot(t,s_vsb);title('VSB信号');xlabel('t');s_vsb_n=s_vsb+noise;subplot(222)plot(t,s_vsb_n,'r--');title('带噪声的VSB信号');xlabel('t');%%%功率谱密度[f,sf]=FFT_SHIFT(t,s_vsb);PSD=(abs(sf).^2)/T;subplot(223);plot(f,PSD);axis([-2*fc 2*fc 0 1.5*max(PSD)]);title('VSB信号功率谱');xlabel('f');subplot(224);[f,sfn]=FFT_SHIFT(t,s_vsb_n);PSDn=(abs(sfn).^2)/T;hold on;plot(f,PSDn,'r');axis([-2*fc 2*fc 0 1.5*max(PSDn)]);title('带噪声的功率谱');%%%VSB解调vsbd=s_vsb_n.*cos(2*pi*fc*t);vsbd=vsbd-mean(vsbd);[f,VSBf]=FFT_SHIFT(t,vsbd);[t,vsb_t]=RECT_LPF(f,VSBf,2*fmax);figure(5);plot(t,vsb_t);title('VSB相干解调');hold on;plot(t,-ft/2,'r');%%%%FM解调和调制Kf=5;%FM调制mti=1/2/pi/fmax*sin(2*pi*fmax*t); %ft积分函数FMt=A*cos(2*pi*fc+2*pi*Kf*mti);figure(6);subplot(311);plot(t,FMt);hold on;plot(t,ft,'r--');xlabel('t');ylabel('FM信号');subplot(312);[f,sf]=FFT_SHIFT(t,FMt);plot(f,abs(sf));axis([-25 25 0 3]);xlabel('f');ylabel('调频信号幅度谱');%%%FM解调(鉴频器)N=length(FMt);dFMt=zeros(1,N);for k=1:N-1;dFMt(k)=(dFMt(k+1)-dFMt(k))/dt;endenvlp=A*2*pi*Kf*ft+A*2*pi*fc;subplot(313);plot(t,dFMt);hold on;plot(t,envlp,'r--');xlabel('t');ylabel('调频信号微分后包络');[t,st]=IFFT_SHIFT(f,Sf)df=f(2)-f(1);fmax=(f(end)-f(1)+df);dt=1/fmax;N=length(f);t=[0:N-1]*dt;Sf=fftshift(Sf);st=fmax*ifft(Sf);st=real(st);[t,st]=vsbmd(f,sf,B1,B2,fc)df=f(2)-f(1);T=1/df;hf=zeros(1,length(f));bf1=[floor((fc-B1)/df):floor((fc+B1)/df)];bf2=[floor((fc+B1)/df)+1:floor((fc+B2)/df)]; f1=bf1+floor(length(f)/2);f2=bf2+floor(length(f)/2);stepf=1/length(f1);hf(f1)=0:stepf:1-stepf;fh(f2)=1;f3=-bf1+floor(length(f)/2);f4=-bf2+floor(length(f)/2);hf(f3)=0:stemf:1-stemf;fh(f4)=1;yf=hf.*sf;[t,st]=IFFT_SHIFT(f,yf);st=real(st);[out]=GaussNB(fc,B,N0,t)dt=t(2)-t(1);Fmax=1/dt;N=length(t);p=N0*Fmax;rn=sqrt(p)*randn(1,N);[f,rf]=FFT_SHIFT(t,rn);[t,out]=BPF(f,rf,fc-B/2,fc+B/2);[f,sf]=FFT_SHIFT(t,st)dt=t(2)-t(1);T=t(end);df=1/T;N=length(t);f=[-N/2:N/2-1]*df;湖北民族学院—信息工程学院-通信原理实验报告sf=fft(st);sf=T/N*fftshift(sf);[t,out]=BPF(f,Sf,fc,B)df=f(2)-f(1);N=length(f);NC=flooor(N/2);Nfc=floor(fc/df);NB2=floor(B/df/2);bpfH=zeros(1,N);N1=[NC-Nfc+[-NB2:NB2],NC+Nfc+[-NB2:NB2]];bpfH(N1)=1;yF=BPFh.*Sf;[t,out]=IFFT_SHIFT(f,Yf);[t,st]=RECT_LPF(f,Sf,B)df=f(2)-f(1);fN=length(f);RectH=zeros(1,fN);BN=floor(B/df);BN_SHIFT=[-BN:BN-1]+floor(fN/2);RectH(BN_SHIFT)=1;Yf=RectH.*Sf;[t,st]=IFFT_SHIFT(f,Yf);21。

相关主题