您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 信息化管理 > matlab二进制数字调制与解调系统的设计课程设计报告
一.设计题目:二进制数字调制与解调系统的设计二.主要内容:二进制数字调制与解调系统的设计MATLAB及SIMULINK建模环境简介MATLAB是美国MathWorks公司出品的商业数学软件,用于算法开发、数据可视化、数据分析以及数值计算的高级技术计算语言和交互式环境,主要包括MATLAB和SIMULINK两大部分。Simulink是MATLAB最重要的组件之一,它提供一个动态系统建模、仿真和综合分析的集成环境。在该环境中,无需大量书写程序,而只需要通过简单直观的鼠标操作,就可构造出复杂的系统。Simulink具有适应面广、结构和流程清晰及仿真精细、贴近实际、效率高、灵活等优点,并基于以上优点Simulink已被广泛应用于控制理论和数字信号处理的复杂仿真和设计。同时有大量的第三方软件和硬件可应用于或被要求应用于Simulink。Simulink是MATLAB中的一种可视化仿真工具,是一种基于MATLAB的框图设计环境,是实现动态系统建模、仿真和分析的一个软件包,被广泛应用于线性系统、非线性系统、数字控制及数字信号处理的建模和仿真中。Simulink可以用连续采样时间、离散采样时间或两种混合的采样时间进行建模,它也支持多速率系统,也就是系统中的不同部分具有不同的采样速率。为了创建动态系统模型,Simulink提供了一个建立模型方块图的图形用户接口(GUI),这个创建过程只需单击和拖动鼠标操作就能完成,它提供了一种更快捷、直接明了的方式,而且用户可以立即看到系统的仿真结果。三.具体要求a.利用所学的《通信原理及应用》的基础知识,设计一个2ASK数字调制器。完成对2ASK的调制与解调仿真电路设计,并对其仿真结果进行分析。要求理解2ASK信号的产生,掌握2ASK信号的调制原理和实现方法并画出实现框图。b.设计一个2FSK数字调制器。要求给出2FSK的产生原理框图(调频法、键控法)、Matlab仿真调制解调的原理框图,给出信号的频谱图、调制前与解调后数据波形图c.设计一个2PSK数字调制器。给出信号的频谱图、调制前与解调后数据波形图.d.尽可能做出加噪前后相关波形。(加分项)2数字通信系统的基本模型从消息传输角度看,该系统包括了两个重要交换,即消息与数字基带信号之间的交换,数字基带信号与信道信号之间的交换.通常前一种交换由发收端设备完成.而后一种交换则由调制和解调完成.数字通信系统模型一、2ASK调制解调基本原理2ASK是利用载波的幅度变化来传递数字信息,而其频率和初始相位保持不变。其信号表达式为:,S(t)为单极性数字基带信号。2ASK幅移键控幅移键控(ASK)相当于模拟信号中的调幅,只不过与载频信号相乘的是二进数码而已。幅移就是把频率、相位作为常量,而把振幅作为变量,信息比特是通过载波的幅度来传递的。由于调制信号只有0或1两个电平,相乘的结果相当于将载频或者关断,或者接通,它的实际意义是当调制的数字信号1时,传输载波;当调制的数字信号为0时,不传输载波。由图可以看出2ASK信号的时间波形e2ASK(t)随二进制基带信号s(t)通断变化。所以又被称为通断键控信号2ASK信号的产生方法通常有两种:模拟调制法和键控法。模拟调制法使用乘法器实现ttSteccos)()(03键控法使用开关电路实现2ASK的调制方法2ASK有两种基本解调方法:相干解调法(同步检测法)和非相干解调法(包络检波法)。相干解调需要将载频位置的已调信号频谱重新搬回原始基带位置,因此用相乘器与载波相乘来实现。为确保无失真还原信号,必须在接收端提供一个与调制载波严格同步的本地载波,这是整个解调过程能否顺利完好进行的关键。相干解调非相干解调2ASK信号非相干解调过程的时间波形4振幅键控是利用载波的幅度变化来传递数字信息,而频率和初始相位保持不变。在2ASK中:S2ask=m(t)*cos(2*pi*f*t),其中m(t)为数字信号,后者为载波。载波在二进制基带信号控制下通断变化,所以又叫通-断键控(OOK)。2ASK的产生方法有两种:模拟调制和键控法而解调也有两中基本方式:非相干解调(包络检波)和相干解调(同步检测法)DS2ask=s(t)*cos(2*pi*f*t)=0.5*m(t)+0.5*m(t)*cos(2*wc*t)乘以相干载波后,只要滤去高频部分就可以了本次仿真使用相干解调方式:2ask信号带通滤波器与与载波相乘低通滤波器抽样判决输出以下就是matlab的仿真结果极其频谱图(省去了带通filter)可以看到解调后的信号与信源有一定的延时。通过观察频谱图,用放大镜可以清楚的看到,2ask实现了频谱的搬移,将基带信号搬移到了fc=150hz的频率上,而且若只计频谱的主瓣则有:B2ask=2fs,fs=1/Ts其中Ts为一个码元宽度即:2ask信号的传输带宽是码元传输速率的2倍Matlab程序实现clc;clearall;closeall;%信源a=randint(1,15,2);t=0:0.001:0.999;m=a(ceil(15*t+0.01));subplot(511)plot(t,m);axis([01.2-0.21.2]);title('信源');%载波f=150;carry=cos(2*pi*f*t);%2ASK调制st=m.*carry;subplot(512);plot(t,st)axis([01.2-1.21.2])title('2ASK信号')%加高斯噪声nst=awgn(st,70);5%解调部分nst=nst.*carry;subplot(513)plot(t,nst)axis([01.2-0.21.2]);title('乘以相干载波后的信号')%低通滤波器设计wp=2*pi*2*f*0.5;ws=2*pi*2*f*0.9;Rp=2;As=45;[N,wc]=buttord(wp,ws,Rp,As,'s');[B,A]=butter(N,wc,'s');%低通滤波h=tf(B,A);%转换为传输函数dst=lsim(h,nst,t);subplot(514)plot(t,dst)axis([01.2-0.21.2]);title('经过低通滤波器后的信号');%判决器k=0.25;pdst=1*(dst0.25);subplot(515)plot(t,pdst)axis([01.2-0.21.2]);title('经过抽样判决后的信号')%频谱观察%调制信号频谱T=t(end);df=1/T;N=length(st);f=(-N/2:N/2-1)*df;sf=fftshift(abs(fft(st)));figure(2)subplot(411)plot(f,sf)title('调制信号频谱')%信源频谱mf=fftshift(abs(fft(m)));subplot(412)plot(f,mf)title('信源频谱')%乘以相干载波后的频谱6mmf=fftshift(abs(fft(nst)));subplot(413)plot(f,mmf)title('乘以相干载波后的频谱')%经过低通滤波后的频谱dmf=fftshift(abs(fft(dst)));subplot(414)plot(f,dmf)title('经过低通滤波后的频谱');7二、2FSK调制解调频移键控是利用载波的频率来传递数字信号,在2FSK中,载波的频率随着二进制基带信号在f1和f2两个频率点间变化,频移键控是利用载波的频移变化来传递数字信息的。在2FSK中,载波的频率随基带信号在f1和f2两个频率点间变化。故其表达式为:{)cos()cos(212)(nntAtAFSKte典型波形如下图所示。由图可见。2FSK信号可以看作两个不同载频的ASK信号的叠加。因此2FSK信号的时域表达式又可以写成:)cos()]([)cos(])([)(2_12nsnnnnsnFSKtnTtgatnTtgats1011001taks1(t)cos(w1t+θn)s2(t)s1(t)cos(w1t+θn)cos(w2t+φn)s2(t)cos(w2t+φn)2FSK信号tttttt2FSK数字系统的调制原理2FSK调制就是使用两个不同的频率的载波信号来传输一个二进制信息序列。可以用二进制“1”来对应于载频f1,而“0”用来对应于另一相载频w2的已调波形,而这个可以用受矩形脉冲序列控制的开关电路对两个不同的独立的频率源w1、f2进行选择通。如下原理图:8载波f1载波f2二进制数据2FSK输出信号2FSK的调制原理图2FSK的解调方式2FSK的解调方式有两种:相干解调方式和非相干解调方式.下面我们将详细的介绍:1非相干解调经过调制后的2FSK数字信号通过两个频率不同的带通滤波器f1、f2滤出不需要的信号,然后再将这两种经过滤波的信号分别通过包络检波器检波,最后将两种信号同时输入到抽样判决器同时外加抽样脉冲,最后解调出来的信号就是调制前的输入信号。其原理图如下图所示:输入带通滤波器F1包络检波器带通滤波器F2包络检波器抽样脉冲抽样判决器非相干方式原理图输出2相干解调根据已调信号由两个载波f1、f2调制而成,则先用两个分别对f1、f2带通的滤波器对已调信号进行滤波,然后再分别将滤波后的信号与相应的载波f1、f2相乘进行相干解调,再分别低通滤波、用抽样信号进行抽样判决器即可。原理图如下:9输入带通滤波器F1带通滤波器F2cos2πf1t相乘器低通滤波器低通滤波器抽样脉冲抽样判决器输出cos2πf2t相乘器相干方式原理图Matlab程序实现Fc=150;%载频Fs=40;%系统采样频率Fd=1;%码速率N=Fs/Fd;df=10;numSymb=25;%进行仿真的信息代码个数M=2;%进制数SNRpBit=60;%信噪比SNR=SNRpBit/log2(M);%60seed=[1234554321];numPlot=15;x=randsrc(numSymb,1,[0:M-1]);%产生25个二进制随机码figure(1)stem([0:numPlot-1],x(1:numPlot),'bx');%显示15个码元,杆图,从x的前十五个随机数中选取title('二进制随机序列')xlabel('Time');ylabel('Amplitude');%调制y=dmod(x,Fc,Fd,Fs,'fsk',M,df);%数字带通调制numModPlot=numPlot*Fs;%15*40t=[0:numModPlot-1]./Fs;%数组除法(仿真时间)figure(2)10plot(t,y(1:length(t)),'b-');axis([min(t)max(t)-1.51.5]);title('调制后的信号')xlabel('Time');ylabel('Amplitude');%在已调信号中加入高斯白噪声randn('state',seed(2));%生成-2到+2之间的随机数矩阵y=awgn(y,SNR-10*log10(0.5)-10*log10(N),'measured',[],'dB');%在已调信号中加入高斯白噪声figure(3)plot(t,y(1:length(t)),'b-');%画出经过信道的实际信号axis([min(t)max(t)-1.51.5]);title('加入高斯白噪声后的已调信号')xlabel('Time');ylabel('Amplitude');%相干解调figure(4)z1=ddemod(y,Fc,Fd,Fs,'fsk/eye',M,df);title('相干解调后的信号的眼图')%带输出波形的相干M元频移键控解调figure(5)stem([0:numPlot-1],x(1:numPlot),'bx');holdon;stem([0:numPlot-1],z1(1:numPlot),'ro');holdoff;axis([0numPlot-0.51.5]);title('相干解调后的信号
本文标题:matlab二进制数字调制与解调系统的设计课程设计报告
链接地址:https://www.777doc.com/doc-4714732 .html