通信原理课程设计_第1页
通信原理课程设计_第2页
通信原理课程设计_第3页
通信原理课程设计_第4页
通信原理课程设计_第5页
已阅读5页,还剩32页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、课程名称:通信原理设计班 级:电1005-2班学 号: 20212484姓 名: 张 涛一 、实验目的在本实验中使用的软件工具是MATLAB。设计本实验的目的是希望在以下几方面有所收获:1.会MATLAB软件的最基本运用。MATLAB是一种很实用的数学软件,它易学易用。MATLAB对于许多的通信仿真类问题来说是比较合适的。2.了解计算机仿真的基本原理及方法,知道怎样通过仿真的方法去研究通信问题。3.加深对信号与系统和通信原理及其相关课程内容的理解。二、实验特点与硬件实验相比,软件实验具如下一些特点:1.软件实验具有广泛的实用性和极好的灵活性。在硬件实验中改变系统参数也许意味着要重做硬件,而在软

2、件实验中这只是该一两个数据,或者只是在屏幕上按几下鼠标。2.软件实验更有助于我们较为全面地研究通信系统。有许多问题,通过硬件试验来研究可能非常困难,但在软件实验中却易于解决。 3.硬件实验的精确度取决于元器件及工艺水平,软件实现的精确度取决于CPU的运算速度或者说是程序的运算量。4.软件实验开发周期短,成本低。三、上机实验要求1 掌握matlab的基本操作及了解基本的仿真方法,分析运行范例程序。2 按以下要求编制仿真程序并调试运行 (1) 基本信号的仿真(2) 模拟调制与解调的仿真(3) 数字基带传输码型的仿真(4) 数字基带系统的仿真(5) 数字调制与解调的仿真(6) 脉冲编码调制仿真四、实

3、验内容1、编程实现基本信号的仿真(1)产生并绘出以下信号:a单位脉冲序列b单位阶跃序列c正弦信号及其频谱d周期锯齿波sawtooth()e周期方波square()f实指数序列y(n)=2ng sin2f1t*cos2f2t f1=50Hz f2=2021 Hz(2)产生一条-2到2之间的Sa(200t)曲线。(3)产生下面信号,并绘出频谱 t 0tt0/4s(t)= -t+ t0/4 t0/4t 3t0/4 假设t0=0.5s t-t0 3t0/4t=0c正弦信号及其频谱t=-1:0.01:1;x=5*sin(2*pi*10*t);N=length(x);fx=fft(x);df=100/N;

4、n=0:N/2;f=n*df;subplot(211);plot(t,x);grid; subplot(212);plot(f,abs(fx(n+1)*2/N); grid;d周期锯齿波sawtooth()Fs=10000;t=0:1/Fs:1;x1=sawtooth(2*pi*50*t,0);x2=sawtooth(2*pi*50*t,1);subplot(2,1,1),plot(t,x1),axis(0,0.2,-1,1);title(锯齿波1);subplot(2,1,2),plot(t,x2),axis(0,0.2,-1,1);title(锯齿波2)f实指数序列y(n)=2na=2;x

5、=a.n; stem(n,x);title(实指数序列)e周期方波square()Fs=10000;t=0:1/Fs:1;x1=square(2*pi*50*t,20);subplot(211),plot(t,x1),title(周期方波);axis(0,0.2,-1.5,1.5);g sin2f1t*cos2f2t f1=50Hz f2=2021 Hzf1=50;f2=2021 ;t=0:0.02:10;a=sin(2*pi*f1*t);b=cos(2*pi*f2*t);y=a.*b; plot(t,y);title(sin2pif1t*cos2pif2t)(2)产生一条-2到2之间的Sa(

6、200t)曲线。t=linspace(-2,2); y=sinc(200*t); plot(t,y);title(y=sa(200t)(3)产生下面信号,并绘出频谱 t 0tt0/4s(t)= -t+ t0/4 t0/4t 3t0/4 t-t0 3t0/4t0&t=t0/4&t=3*t0/4&t=0&t=t0/3&t=2*t0/3);mt=fun(t);ut=1.5*mt.*ct;figure(1)subplot(3,1,1),plot(t,mt),title(mt-调制信号)subplot(3,1,2),plot(t,ct),title(ct-载波信号)subplot(3,1,3),plot

7、(t,ut),title(ut-已调信号) m,n=size(ut);ni=0.05*randn(m,n);u0=ut+ni;figure(2)subplot(3,1,1),plot(t,ni),title(ni-高斯白噪声)subplot(3,1,2),plot(t,u0),title(u0=ut+ni-已调信号+高斯白噪声)w1=2*dt*(fc-2*fm);w2=2*dt*(fc+2*fm);b,a=butter(4,w1,w2,bandpass);u1=filter(b,a,u0);subplot(3,1,3),plot(t,u1),title(u1-信号进入带通滤波器)figure(

8、3)u2=u1.*ct;subplot(3,1,1),plot(t,u2),title(u2-与载波相乘后的波形)B=2*fm;wn3=2*dt*B;b,a=butter(4,wn3,low);u3=filter(b,a,u2);subplot(3,1,2),plot(t,-u3),title(u3-解调后的信号)subplot(3,1,3),plot(t,-u3),hold on,title(解调后的信号与原调制信号比较)plot(t,mt,r);dt=t(2)-t(1); % 采样周期f=1/dt; % 采样频率(Hz)X=fft(ut); % 计算x的快速傅立叶变换XN=1/dt;F=X

9、(1:N/2+1); % F(k)=X(k)(k=1:N/2+1)f=f*(0:N/2)/N; % 使频率轴f从零开始figure(4)subplot(3,1,1),plot(f,abs(F),title(dsb调制信号频谱图);xlim(0,fc*2);xlabel(Frequency);ylabel(|F(k)|) 调制与解调的波形,频谱(2)SSB方式 clear all;close all;clc;t0=0.15;dt=0.0001;t=0:dt:1;fc=250;phi0=0;ct=cos(2*pi*fc*t+phi0); %载波信号fm=10;fun = (t)1.*(t=0&t=

10、t0/3&t=2*t0/3);mt=fun(t);mh=imag(hilbert(mt);b=sin(2*pi*fc.*t)ussb=mt.*ct-imag(hilbert(mt).*b;lssb=mt.*ct+imag(hilbert(mt).*b;figure(1)subplot(3,1,1),plot(t,mt),title(mt-调制信号)subplot(3,1,2),plot(t,ussb),title(ussb-载波信号)subplot(3,1,3),plot(t,lssb),title(lssb-已调信号) dt=t(2)-t(1); % 采样周期f=1/dt; % 采样频率(H

11、z)X1=fft(ussb); % 计算x的快速傅立叶变换XX2=fft(lssb);N=1/dt;F1=X1(1:N/2+1); % F(k)=X(k)(k=1:N/2+1)F2=X2(1:N/2+1);f=f*(0:N/2)/N; % 使频率轴f从零开始figure(4)subplot(3,1,1),plot(f,abs(F1),hold on,title(ussb调制信号频谱图);plot(-f,abs(F1);xlim(-fc*2,fc*2);subplot(3,1,2),plot(f,abs(F2),hold on,title(lssb);plot(-f,abs(F2);xlim(-

12、fc*2,fc*2);xlabel(Frequency);ylabel(|F(k)|)(3)高斯白噪声n0=30;fc=250;t=0:0.0005:0.15;u=cos(2*pi*fc.*t);M=length(u);x=sqrt(4*n0)*randn(1,M);plot(t,x(1:length(t); 2、数字基带通信系统的仿真(1)一个升余弦频谱的滤波器, t=-1/100+eps:1/10000:1/100;alfa=0.4;ts=1/1000;h_t=sin(pi*t/ts)./(pi*t/ts).*(cos(alfa*pi*t/ts)./(1-4*alfa2*t.2/ts2);

13、plot(t,h_t); (2) 利用matlab的SIMULINK功能建立一个基带传输模型,采用单极性, 或双极性码作为基带信号,发送滤波器为上述升余弦滤波器,发送数据率为1000bps,分别观察输出信号在无噪声干扰及有噪声干扰下波形及眼图。无噪声时眼图有噪声时的眼图注意:必须首先运行实验步骤1 中的程序得出h(t)后,才能运行该模型。(3)建立基带接收机模型,观察判决输出,与发送数码进行比较。(选做)3、(1)试做单极性归零码、双极性非归零码、单极性非归零码、双极性归零码,占空比50%(选择其中2种);(2)双相码、AMI码、HDB3码等的仿真(选其中2种)。单极性非归零码4、数字调制与解

14、调的仿真(选择两种调function y=snrz(x)%本函数实现将输入的一段二进制代码编为相应的单极性非归零码输出%输入x为二进制码,输出y为编好的码%给出计算每一个码元的点数,因为我们只有用离散的点来得出连续的函数表示。grid=300;t=0:1/grid:length(x);for i=1:length(x), %计算码元的值 if(x(i)=1), %如果信息为1 for j=1:grid, %该码元对应的点值取1 y(i-1)*grid+j)=1; end else for j=1:grid; %反之,信息为0,该码元对应的点值取0 y(i-1)*grid+j)=0; end;

15、end; endy=y,x(i);M=max(y);m=min(y);subplot(2,1,1);plot(t,y);axis(0,i,m-0.1,M+0.1);%采用title命令来实现标记出各码元对应的二进制信息title(单极性非归零码);实例图2、双极性归零码:源程序:%双极性归零码function y=drz(x)%本函数实现将输入的一段二进制代码编为相应的双极性归零码输出%输入x为二进制码,输出y为编好的码grid=300; t=0: 1/grid: length(x) %定义对应时间序列for i=1: length(x), %进行编码 if(x(i)=1), %如果信息为1

16、for j=1: grid/2 , y(grid/2*(2*i-2)+j)=1;%定义前半时间为1 y(grid/2*(2*i-1)+j)=0;%定义后半时间为0 end else for j=1: grid/2 %反之,信息为0,该码元对应的点值取0 y(grid/2*(2*i-2)+j)=-1;%定义前半时间为-1 y(grid/2*(2*i-1)+j)=0;%定义后半时间为0 end; end; endy=y,x(i);M=max(y);m=min(y);plot(t,y);axis(0,i,m-0.1,M+0.1);%采用title命令来实现标记出各码元对应的二进制信息title(1

17、0 0 1 1 0 0 0 0 1 0 1);Ami码源程序function y=ami(x)grid=300; t=0: 1/grid: length(x);k=-1;%定义对应时间序列for i=1: length(x), %进行编码 if(x(i)=1), k=-k;%如果信息为1 for j=1: grid/2 , y(grid/2*(2*i-2)+j)=k;%定义前半时间为1 y(grid/2*(2*i-1)+j)=k;%定义后半时间为0 end else for j=1: grid/2 %反之,信息为0,该码元对应的点值取0 y(grid/2*(2*i-2)+j)=0;%定义前半时

18、间为-1 y(grid/2*(2*i-1)+j)=0;%定义后半时间为0 end; end; endy=y,x(i);M=max(y);m=min(y);plot(t,y);axis(0,i,m-0.1,M+0.1);%采用title命令来实现标记出各码元对应的二进制信息title(1 0 0 1 1 0 0 0 0 1 0 1); 1、双相码源程序%双相码function y=mechester(x)%本函数实现将输入的一段二进制代码编为相应的双相码输出%输入x为二进制码,输出y为编好的码grid=300; t=0: 1/grid: length(x) %定义对应时间序列for i=1: l

19、ength(x), %进行编码 if(x(i)=1), %如果信息为1 for j=1: grid/2 , y(grid/2*(2*i-2)+j)=1;%定义前半时间为1 y(grid/2*(2*i-1)+j)=0;%定义后半时间为0 end else for j=1: grid/2 %反之,信息为0,该码元对应的点值取0 y(grid/2*(2*i-2)+j)=1;%定义前半时间为1 y(grid/2*(2*i-1)+j)=0;%定义后半时间为0 end; end; endy=y,x(i);M=max(y);m=min(y);plot(t,y);axis(0,i,m-0.1,M+0.1);%

20、采用title命令来实现标记出各码元对应的二进制信息title(1 0 0 1 1 0 0 0 0 1 0 1); 根据2FSK、2PSK、2DPSK等的调制和解调的原理框图,绘出的各点波形及其频谱或功率谱。加上噪声作对比。(发送的二进制信息序列可自己设定,例如假设发送的二进制信息序列为100110000101,一个码元周期内含有两个载波周期。)2PSK相干解调原理图如下:一个2FSK信号可以看成是两个不同载波的2ASK信号的叠加。其解调和解调方法和ASK差不多。2FSK信号的频谱可以看成是f1和f2的两个2ASK频谱的组合。FSK数字键控FSK调制原理图如下:e2psk(t)振荡器1f1振荡

21、器2f2选通开关选通开关反相器相加器基带信号FSK相干解调的原理图如下:%2PSK,2FSK 4、脉冲编码调制仿真(选作)若输入A律PCM编码器的正弦信号为x(t)=sin(1600t),抽样序列为x(n)=sin(0.2n),n=0,1,2,10,将其进行PCM编码,给出编码器的输出码组序列。绘出译码后的波形(选作)。%apcm.mx=0:1:10;y=sin(0.2*pi*x);z=Apcm(y,87.65)%求sin(0)sin(10)的量化值f=pcmcode(z);运行结果如下:z = Columns 1 through 10 0 0.9029 0.9908 0.9908 0.902

22、9 0.0000 -0.9029 -0.9908 -0.9908 -0.9029 Column 11 -0.0000f = 1 0 0 0 0 0 0 0 1 1 1 1 0 0 1 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 0 1 1 1 1 0 0 1 1 1 0 0 0 0 0 0 0 0 1 1 1 0 0 1 1 0 1 1 1 1 1 1 0 0 1 1 1 1 1 1 0 0 1 1 1 0 0 1 1 0 0 0 0 0 0 0 0三.实验总结,心得体会这段时间的基于matlab的通信原理课程设计让我获益颇深。更加深入的掌握了MATLAB软件的使用,了解了

23、数字调制的基本原理和主要过程,进一步学习了信号的传输的有关内容这段时间内我经常往返于图书馆,查阅相关资料,发现自己的知识水平有限,需要学习的东西还有很多很多。另外,在这次课程设计中,我充分利用了网络资源,终于让其发挥了有用的一面。设计过程中老师主要锻炼我们的自主能力,我们查阅资料的同时,当遇到不解的时候,老师的不吝指导,我的课程设计才得以在规定的时间内高效完成。通过这次课程设计,我学会了很多,收获了很多,并且加强了我的自主能力、动手能力和独立思考、团结协作的能力。通过这一周的通信原理课程设计实践,我复习了MATLAB编程语言的基本概念、语法、语义和数据类型的使用特点,加深了对课堂所学理论知识的

24、理解,初步的掌握的Matlab软件的使用,对信号的基本信号、模拟调制与解调、数字基带信号的码型、数字调制与解调、脉冲编码调制等课堂上学习的知识有了很深刻的理解,更重要的是培养了自己的自学能力。由于对matlab是初学者,在编写程序以及调试的过程中遇到了很多困难,但是我通过去图书馆查找资料,请教同学老师,再自己一点点改善程序,最终完成了实验要求。编写程序需要一个清醒的头脑,明确的思路,同时也要有耐心毅力。刚看到实验要求时感到很茫然,因为在之前的信号处理学习中,只是在一些例题中接触过MATLAB语言,所以初次遇到一个与通信原理相联系的实际问题,感觉无从下手。由于对MATLAB的基本语句一无所知,不

25、过通过请教老师和同学,一下子豁然开朗,掌握了基本设计思路之后,后面的编程就顺利多了。至此,我真真体会到清晰地思路对成功编写一个程序的重要性。当然成功编写一个程序绝非易事,之前,我总以为程序能够正常运行,就代表着编程成功,后来我才发现我大错特错了。我用了一天时间,完成了一个FSK调制解调程序的编写、改错,但我立刻发现尽管程序能够正常运行,部分功能却不完善,甚至不能实现。经过一次又一次调试、修改又修改,一点一点发现问题并改正,我才真正发现编程远没有想象中的简单。它需要的不仅是清晰地编程思路、编程技巧,还需要有耐心有毅力,不要放弃。我们在大学需要学习的不仅是基础知识、专业知识,更重要的是一种学习能力

26、。正如老师所说学习是终生的,因此学习能力也就能让我们受益终生。由于课堂时间有限,MATLAB课程只能靠我们自学,实践也证明我们是有自学的潜能的,通过自学课本,不理解的知识,通过查找资料,请教老师,最终掌握知识,因此,这次课程设计时间培养了我们的自学能力。要学会向他人请教,与他人合作。在编程过程中,我遇到了许多问题,通过查找资料也未能找到原因,所以有时候他人的帮助对于解决困扰我们的问题是至关重要的。在编程过程中,我与身边同学共同讨论,为对方查找错误,提示建议,在这个过程中我收获甚多,也培养了自己的合作精神。要学会总结,提高。在编程过程中,我发现自己的程序还有很多地方可以完善。我觉得编程的最终目的

27、不是达到实验要求或者实验结果正确,而是怎么把自己的方法变得更简练,怎么用更短的程序实现更复杂的功能,怎么在实践中提高自己,这才是小学期的最终目的。本次通信原理小学期不仅加强了我对课本知识的了解,而且大大增强了我们课外自学和思考能力,让我受益良多。四.参考文献通信原理基于Matlab的计算机仿真 郭文彬等编著 北京邮电出版社Matlab/Simulink通信系统建模与仿真实例分析 邵玉斌 北京:清华大学出版社, 2021现代通信实验系统的计算机仿真 陈平等编著国防工业出版社2021 Matlab电子仿真与应用 韩利竹等编著 国防工业出版社Matlab及其在电子信息类课程中的应用 唐向宏等主编 电子工业出版社 MATLAB仿真技术与实例应用教程 张森主编 机械工业出版社 2021 .1MATLAB仿真技术与应用 张葛祥主编 清华大学出版社 2021 .6 通信原理樊昌信,误成柯等编著 国防工业出版社2021 现代通信原理与技术 张辉等 西安电

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论