现代通信原理与技术信号与通信仿真设计实习报告姓名:班级:学号:一实验目的在本实验中使用的软件工具是MATLAB。
设计本实验的目的是希望在以下几方面有所收获:1.会MATLAB软件的最基本运用。
MATLAB是一种很实用的数学软件,它易学易用。
MATLAB对于许多的通信仿真类问题来说是比较合适的。
2.了解计算机仿真的基本原理及方法,知道怎样通过仿真的方法去研究通信问题。
3.加深对信号与系统和通信原理及其相关课程内容的理解。
二实验特点与硬件实验相比,软件实验具如下一些特点:1.软件实验具有广泛的实用性和极好的灵活性。
在硬件实验中改变系统参数也许意味着要重做硬件,而在软件实验中这只是该一两个数据,或者只是在屏幕上按几下鼠标。
2.软件实验更有助于我们较为全面地研究通信系统。
有许多问题,通过硬件试验来研究可能非常困难,但在软件实验中却易于解决。
3.硬件实验的精确度取决于元器件及工艺水平,软件实现的精确度取决于CPU的运算速度或者说是程序的运算量。
4.软件实验开发周期短,成本低。
三上机实验要求1.掌握matlab的基本操作及了解基本的仿真方法,分析运行范例程序。
2.按以下要求编制仿真程序并调试运行(1)基本信号的仿真(2)模拟调制与解调的仿真(3)数字基带传输码型的仿真(4)数字调制与解调的仿真(5)脉冲编码调制仿真四实验内容1、基本信号的仿真(1)产生并绘出以下信号:a单位脉冲序列b单位阶跃序列c正弦信号及其频谱d 周期锯齿波sawtooth()e 周期方波square()f 实指数序列y(n)=2ng sin2πf1t*cos2πf2t f1=50Hz f2=2000Hz (2)产生一条-2到2之间的Sa(200t)曲线。
(3)产生下面信号,并绘出频谱t 0<t<t0/4s(t)= -t+ t0/4 t0/4<t< 3t0/4 假设t0=0.5s t-t0 3t0/4<t< t0 2、模拟调制与解调的仿真高斯噪声的产生:设高斯噪声限带为(-Bs,Bs ),双边带功率谱密度为2on ,则总功率为s o Bn ,设高斯噪声幅度为x ,则有:2x =s o B n ,so B n x ,所以高斯噪声可表示成x=sqrt(Bs*no)*randn(1,M)(M 为随机码元个数) (1)DSB 调制与解调设消息信号m(t)的表达式为:m(t)= sin(2*pi.*t),已调信号的时域表达式为:u(t)=m(t)c(t)=Ac*m(t)cos(2πfct) 。
假设用信号m(t)以DSB 方式调制载波c(t)=cos(2πfct),所得到的已调信号记为u(t)。
绘制调制信号、已调信号和解调信号等各相关点处的时域波形和频谱,加上高斯白噪声进行对比。
(2)AM 调制与解调AM 调制信号的时域表达式为:u(t)= AC[1+amn(t)]cos(2πfct)。
这里a 是调制指数,mn(t)是经过归一化处理的消息信号,式中mn(t)=m/max(abs(m))。
给定的调制指数a=0.8,绘制调制信号、已调信号和解调信号等各相关处点的时域波形和频谱。
3、数字基带信号的码型的仿真 (1(2)编程实现双极性归零码,占空比50% 原理流程图如下:(3)编程实现双相码原理流程图如下:(4)编程实现AMI码原理流程图如下:奇数位T(i)=1,s(i)=1(3)画出a=0,0.5,1的升余弦滚降系统频谱,并画出其各自对应的时域波形。
(4)设基带传输系统响应是a=1的升余弦滚降系统,画出在接收端的基带数字信号波形及其眼图。
实现原理如下:4、数字调制与解调的仿真1. 2FSK调制和解调发送的二进制信息序列为100110000101,根据2FSK调制和解调的原理框图,绘出的各点波形及其频谱或功率谱,加上噪声作对比。
原理流程图如下:2. 2PSK调制和解调发送的二进制信息序列为100110000101,根据2FSK调制和解调的原理框图,绘出的各点波形及其频谱或功率谱,加上噪声作对比。
原理流程图如下:五 实验结果1、基本信号的仿真(1)产生并绘出以下信号: a 单位脉冲序列%单位脉冲序列,maichong.M n=1:50; %定义序列的长度是50 x=zeros(1,50)%MATLAB 中数组下标从 1 开始 x(1)=1;plot(n,x); stem(x); title('单位冲击信号序列');b 单位阶跃序列 %单位阶跃序列,jieyue.mfor i=1:50; %定义序列的长度是 50 if i>0 x(i)=1; else x(i)=0; end endplot(i,x); stem(x); title('单位阶跃序列'); axis([-10 30 0 1]);c 正弦信号及其频谱 %正弦信号及其频谱,sine.m x=0:0.1:2*pi; y=sin(x); Y=fft(y,100) subplot(2,1,1);plot(x,y) %绘制信号图形 title('正弦信号') axis([0 6 -1 1]) subplot(2,1,2);stem(Y) %绘制信号的频谱 title('正弦信号频谱')axis([0 20 -20 20]);d周期锯齿波sawtooth()%周期锯齿波,jizhibo.mn=[-3.14*4:0.01:3.14*4];x=sawtooth(n);plot(n,x)title('周期锯齿波')e周期方波square()%周期方波,fangbo.my=square(n);plot(n,y)title('周期方波')axis([0 10 -2 2])f实指数序列y(n)=2n%实指数序列y(n)=2.^n,shizhishu.mn=1:0.1:20;y=2.^n;stem(y);title('实指数序列y(n)=2.^n');axis([0 200 0 100000])g.y=sin2πf1t*cos2πf2t(f1=50Hz f2=2000Hz)%g.mn=[-1:0.01:1];f1=50; f2=2000;y=sin(2*pi*f1*n).*cos(2*pi*f2*n; plot(n,y)title('y=sin2πf1n cos2πf2n (f1=50Hz f2=2000Hz)')心得体会:通过实验熟悉了matlab的一些基本指令的使用,知道了一些产生基本信号的编程方法,为后续实验打下了基础。
(2)产生一条-2到2之间的Sa(200t)曲线。
%产生一条-2到2之间的Sa(200t)曲线.sinc.mt=[-2:0.01:2];x=sinc(200*t/pi);plot(t,x)title('x=Sa(200t)')(3)产生下面信号,并绘出频谱t 0<t<t0/4s(t)= -t+ t0/4 t0/4<t<3t0/4t-t0 3t0/4<t< t0 (假设t0=0.5s)%st.mt0=0.5;ts=0.001; %时间采样间隔Fs=1/ts; %采样频率df=0.3; %频率分辨率t=0:ts:t0;for i=1:length(t)if t(i)>=0&t(i)<t0/4y(i)=t(i);elseif t(i)>=t0/4&t(i)<=3*t0/4y(i)=-t(i)+t0/4;elseif t(i)>3*t0/4&t(i)<=t0y(i)=t(i)-t0;else continueendend[Y,y,df1]=fft_seq(y,ts,df);f=[0:df1:df1*(length(y)-1)]-Fs/2;%频率矢量subplot(2,1,1);plot(t,y(1:length(t))) title('St信号');subplot(2,1,2);plot(f,abs(fftshift(Y))); title('St信号频谱'); % DSB调制,DSB.m%调制信号时域表达式u(t)=m(t)c(t)=Ac*m(t)cos(2πfct) %函数[M,m,df]=fft_seq(m,ts,df)求取频谱函数%高斯噪声可表示成x=sqrt(Bs*no)*randn(1,M)Bs=10; %高斯噪声限带no=0.01; %单边带功率谱密度t0=1; %信号持续时间ts=0.001; %时间采样间隔Fc=250; %载波中心频率Fs=1/ts; %采样频率df=0.3; %频率分辨率t=[0:ts:t0]; %时间矢量m=sin(2*pi.*t); %调制信号c=cos(2*pi*Fc.*t); %载波信号u=m.*c; %已调信号[M,m,df1]=fft_seq(m,ts,df);M=M/Fs; %缩放[U,u,df1]=fft_seq(u,ts,df);U=U/Fs;[C,c,df1]=fft_seq(c,ts,df);f=[0:df1:df1*(length(m)-1)]-Fs/2; figure(1);subplot(3,2,1);plot(t,m(1:length(t))); axis([0 1 -1 1]);title('调制信号'); subplot(3,2,3);plot(t,c(1:length(t))) axis([0 0.1 -1 1]);title('载波信号'); subplot(3,2,5);plot(t,u(1:length(t))); axis([0 1 -1 1]);title('已调信号'); subplot(3,2,2);plot(f,abs(fftshift(M))); title('调制信号频谱');subplot(3,2,4);plot(f,abs(fftshift(C))); title('载波信号频谱');subplot(3,2,6);plot(f,abs(fftshift(U))); title('已调信号频谱');%相干解调,加入高斯白噪声noise noise=sqrt(Bs*no)*randn(1,length(u); [Y,y,df1]=fft_seq(y,ts,df);Y=Y/Fs; y=(u+noise).*c;%低通滤波f_cutoff=150; %滤波器截止频率n_cutoff=floor(150/df1);f=[0:df1:df1*(length(m)-1)]-Fs/2;H=zeros(size(f));H(1:n_cutoff)=2*ones(1,n_cutoff);H(length(f)-n_cutoff+1:length(f))=2*ones(1,n_cutoff);DEM=H.*Y; %滤波器输出频谱dem=real(ifft(DEM))*Fs;figure(2);subplot(2,2,1);plot(t,y(1:length(t))); title('滤波器输入信号');subplot(2,2,2);plot(f,abs(fftshift(Y))); title('滤波器输入信号频谱'); subplot(2,2,3);plot(t,dem(1:length(t)); title('滤波器输出信号');subplot(2,2,4);plot(f,abs(fftshift(DEM)));title('滤波器输出信号频谱');%AM调制,AM.m%AM调制信号的时域表达式为:u(t)= AC[1+amn(t)]cos(2πfct)% a是调制指数,mn(t)是经过归一%化处理的消息信号,函数%[M,m,df]=fft_seq(m,ts,df)求取频谱%函数,高斯噪声可表示成Bs=10; %高斯噪声限带no=0.01; %单边带功率谱密度a=0.8; %调制指数t0=1; %信号持续时间ts=0.001; %时间采样间隔Fc=250; %载波中心频率Fs=1/ts; %采样频率df=0.3; %频率分辨率t=[0:ts:t0]; %时间矢量m=sin(2*pi.*t); %调制信号c=cos(2*pi*Fc.*t); %载波信号u=(1+a*m).*c; %已调信号[M,m,df1]=fft_seq(m,ts,df);[U,u,df1]=fft_seq(u,ts,df);[C,c,df1]=fft_seq(c,ts,df);f=[0:df1:df1*(length(m)-1)]-Fs/2; figure(1);subplot(3,2,1);plot(t,m(1:length(t))); axis([0 1 -1 1]) title('调制信号'); subplot(3,2,3);plot(t,c(1:length(t))) axis([0 0.1 -1 1]) title('载波信号'); subplot(3,2,5);plot(t,u(1:length(t))); axis([0 1 -2 2]) title('已调信号'); subplot(3,2,2);plot(f,abs(fftshift(M))); axis([-10 10 0 1])title('调制信号频谱');subplot(3,2,4);plot(f,abs(fftshift(C))); axis([-300 300 0 200])title('载波信号频谱');subplot(3,2,6);plot(f,abs(fftshift(U))); axis([-300 300 0 1]);title('已调信号频谱');%相干解调,加入高斯白噪声noisenoise=sqrt(Bs*no)*randn(1,length(u);y=(u+noise).*c;[Y,y,df1]=fft_seq(y,ts,df); Y=Y/Fs;%低通滤波f_cutoff=150; n_cutoff=floor(150/df1);H=zeros(size(f)); H(1:n_cutoff)=2*ones(1,n_cutoff);H(length(f)-n_cutoff+1:length(f))=2*ones(1,n_cutoff); DEM=H.*Y; %滤波器输出频谱dem=real(ifft(DEM))*Fs; %滤波器的输出figure(2);subplot(2,2,1);plot(t,y(1:length(t)));axis([0 1 -4 4]); title('滤波器输入信号');subplot(2,2,2);plot(f,abs(fftshift(Y)));axis([0 10 0 0.5]); title('滤波器输入信号频谱');subplot(2,2,3);plot(t,dem(1:length(t));axis([0 1 -1 4]); title('滤波器输出信号');subplot(2,2,4); plot(f,abs(fftshift(DEM)));axis([-10 10 0 1]);title('滤波器输出信号频谱');心得体会:通过AM与DSB实验,我对模拟调制解调的方法及原理有了清晰直观的认识,知道了各类调制解调方法的优缺点和相互之间的区别。