通信原理MATLAB仿真.doc_第1页
通信原理MATLAB仿真.doc_第2页
通信原理MATLAB仿真.doc_第3页
通信原理MATLAB仿真.doc_第4页
通信原理MATLAB仿真.doc_第5页
免费预览已结束,剩余6页可下载查看

下载本文档

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

文档简介

通信原理基于Matlab的计算机仿真报告小 学 期 报 告 实习题目 通信原理Matlab仿真 专 业 通信与信息工程班 级 学号 学生姓名 实习成绩 指导教师 2010年通信原理Matlab仿真目录一、实验目的-2二、实验题目-2三、正弦信号波形及频谱仿真-2(一)通信原理知识-2(二)仿真原理及思路-2 (三)程序流程图- 3(四)仿真程序及运行结果-3(五)实验结果分析-5四、单极性归零波形及其功率谱密度仿真-5(一)通信原理知识-6(二)仿真原理及思路- -6(三)程序流程图-6 (四)仿真程序及运行结果-6(五)实验结果分析- -6五、升余弦滚降波形的眼图及功率谱密度仿真-8(一)通信原理知识-8(二)仿真原理及思路- -9(三)程序流程图- -9(四)仿真程序及运行结果-10(五)实验结果分析-11六、PCM编码及解码仿真-12(一)通信原理知识- -12(二)仿真原理及思路- - 13(三)程序流程图- -14(四)仿真程序及运行结果-15(五)实验结果分析-18七、实验心得- -18 一、实验目的1、学会MATLAB软件的最基本运用。MATLAB是一种很实用的数学软件,它易学易用。MATLAB对于许多的通信仿真类问题来说是很合适的。2、了解计算机仿真的基本原理及方法,知道怎样通过仿真的方法去研究通信问题。3、加深对通信原理课有关内容的理解。二实验要求1. 正弦信号波形及频谱的仿真;2. 单极性归零(RZ)波形及其功率谱,占空比为50%的仿真;3. 升余弦滚降波形的眼图及其功率谱的仿真。滚降系数为0.5。发送码取值为0、2;4. PCM编码及解码的仿真。三正弦信号波形及频谱仿真(一)通信原理知识(二)仿真原理及思路MATLAB中关于傅里叶变换的有关函数,利用MATLAB提供的函数编写两个函数t2f及f2t。t2f的功能是作傅氏变换,f2t的功能是作傅氏反变换,它们的引用格式分别为X=t2f(x)及x=f2t(X),其中x是时域信号截短并采样所得的取样值矢量,X是对的傅氏变换截短并采样所得的取样值矢量。(三)程序流程图正弦信号傅里叶变换傅里叶逆变换作图耳机插孔PROBEEZ_PROBE座(四)仿真程序及运行结果主程序:sinx.mglobal dt df N t f T %全局变量close allk=input(取样点数=2k,k=10);if k=,k=10;endN=2k; %采样点数 dt=0.01; %时域采样间隔 df=1/(N*dt);%频域采样间隔 T=N*dt; %截短时间 Bs=N*df/2; %系统带宽 t=linspace(-T/2,T/2,N); f=linspace(-Bs,Bs,N);f0=1;s=cos(2/3*pi*f0*t); S=t2f(s); a=f2t(S); figure(1) set(1,position,10,50,500,200)%设定窗口位置及大小 figure(2) set(2,position,350,50,500,200);%设定窗口位置及大小 figure(1) as=abs(S); %求模 plot(f,as,r-) grid; axis(-2*f0,+2*f0,min(as),max(as); xlabel(f(kHZ); ylabel(S(f)(V/kHZ); figure(2) plot(t,a,b-) grid axis(-4,+4,-1.5,1.5); xlabel(t(ms); ylabel(s(t)(V); 傅式变换程序:t2f.mfunction X=t2f(x)global dt df N t f T%X=t2f(x)%x为时域的取样值矢量%X为x的傅氏变换%X与x长度相同,并为2的整幂。%本函数需要一个全局变量dt(时域取样间隔)H=fft(x);X=H(N/2+1:N),H(1:N/2).*dt;End傅式反变换程序:f2t.mfunction x=f2t(X)global dt df t f T N%x=f2t(X)%x为时域的取样值矢量%X为x的傅氏变换%X与x长度相同并为2的整幂%本函数需要一个全局变量dt(时域取样间隔)X=X(N/2+1:N),X(1:N/2);x=ifft(X)/dt;%x=tmp(N/2+1:N),tmp(1:N/2);End运行结果: (五)实验结果分析打开MATLAB运行程序sinx.m后窗口出现:取样点数=2k,k=10。输入10后,画出正弦信号波形图以及频谱图。通过傅里叶变换语句S=t2f(s)及傅里叶反变换语句a=f2t(S),得到正弦信号频谱并作图。四单极性归零(RZ)波形及其功率谱仿真(一)通信原理知识用矩形不归零脉冲作为发射波形(载波):2PAM信号波形的幅度:占空比:(二)仿真原理及思路 采用归零(RZ)矩形脉冲波形的数字信号,可以用简单的方法信号矢量s。设a是码元矢量,N是总取样点数,M是总码元数,L是每个码元内的点数, Rt是要求的占空比,dt是仿真系统的时域采样间隔,则RZ信号的产生方法是s=zeros(1,N);for ii=1:Rt/dt, s(ii+0:M-1*L)=a;,end任意信号的功率谱的定义是,其中是截短后的傅氏变换,是的能量谱,是在截短时间内的功率谱。对于仿真系统,若x是时域取样值矢量,X是对应的傅氏变换,那么x的功率谱便为矢量P=(X.*conj(X)/T。(三)程序流程图产生M个取值0,1等概的随机码产生占空比为0.5的单极性归波形单极性归零码的功率谱密度作图(四)仿真程序及运行结果程序如下:rz.mglobal dt t df N close all k=input(取样点数=2k,k=14); if k=,k=14;end N=2k;%采样点数 L=64;%每码元的采样点数 M=N/L;%码元数 Rb=2;%码速率为2Mb/s Ts=1/Rb;%码元间隔 dt=Ts/L;%时域采样间隔 Rt=0.5; %占空比 df=1/(N*dt); %频域采样间隔 T=N*dt; %截短时间 t=linspace(-T/2,T/2,N);%时域横坐标 Bs=N*df/2;%系统带宽 f=linspace(-Bs,Bs,N);%频域横坐标 EP=zeros(1,N); for jj=1:100 a=round(rand(1,M);%产生M个取值0,1等概的随机码 s=zeros(1,N);%产生一个N个元素的零序列 for ii=1:Rt*Ts/dt s(ii+0:M-1*L)=a;%产生单极性归零码 end Q=t2f(s);%付氏变换 P=Q.*conj(Q)/T; %P为单极性归零码的功率 EP=(EP*(ii-1)+P)/ii; %累计平均 aa=30+10*log10(EP+eps);%加eps以避免除以零,标量eps相当于无穷小。end figure(1) set(1,position,10,50,500,200) %设定窗口位置及大小 figure(2) set(2,position,350,50,500,200)%设定窗口位置及大小 figure(1) plot(f,aa,r) xlabel(f(MHZ) ylabel(Ps(f)(MHZ) axis(-15,+15,-50,50) grid figure(2) plot(t,s,b)xlabel(t(ms) ylabel(s(t)(V) axis(-10,10,-0.5,1.5) grid运行结果: (五)实验结果分析打开MATLAB运行程序rz.m后窗口出现:取样点数=2k,k=14。输入14后,画出占空比为50%的单极性归零(RZ)码的波形图及其功率谱图。本题通过rand(1,M)函数产生M个取值0,1等概的随机码,然后根据0.5占空比,生成单极性归零码。最后对其傅里叶变换,用语句P=Q.*conj(Q)/T生成单极性归零码的功率。五升余弦滚降波形的眼图及功率谱密度仿真 (一)通信原理知识接收二进制波形时,在一个码元周期Ts内只能看到一只眼睛;若接收的是M进制波形,则在一个码元周期内可以看到纵向显示的(M-1)只眼睛;另外,若扫描周期为nTs时,可以看到并排的n只眼睛。(二)仿真原理及思路升余弦滚降信号的基本脉冲波形为:。用和产生升余弦滚降信号。通过运行此程序,我们可以观察到不同滚降系数时升余弦滚降信号的眼图及功率谱。在通信原理的模型中,加入到升余弦滚降滤波器输入端的信号是冲激序列,而实际当中原始的数字信号一般是NRZ(不归零)信号,为了使升余弦滚降滤波器的输出仍为我们期望得到的信号,此时需要在滚降滤波器之前加入一个网孔均衡滤波器(如下图所示)眼图是数字信号在示波器上重复扫描得到的显示图形。若示波器的扫描范围是Na个码元,那么画眼图的方法是:tt=0:dt:Na*L*dt;hold onfor ii=1:Na*L:N-N*Lplot(tt,s(ii+1:Na*L);end(三)程序流程图滚将系数为0.5的升余弦脉冲波形升余弦信号的功率谱作图升余弦信号的眼图(四)仿真程序及运行结果程序如下:scosx.mglobal dt t df N close all N=214; %采样点数 L=32; %每码元的采样点数 M=N/L %码元数 Rb=2; %码速率是2Mb/s Ts=1/Rb; %码元间隔 dt=Ts/L; %时域采样间隔 df=1/(N*dt) %频域采样间隔 T=N*dt %截短时间 Bs=N*df/2 %系统带宽 Na=4; %示波器扫描宽度为4个码元 alpha=input(滚降系数=0.5); if alpha=,alpha=0.5;endt=-T/2+dt/2:dt:T/2;%时域横坐标 f=-Bs+df/2:df:Bs; %频域横坐标 g1=sin(pi*t/Ts)./(pi*t/Ts); g2=cos(alpha*pi*t/Ts)./(1-(2*alpha*t/Ts).2); g=g1.*g2*2; %升余弦脉冲波形 G=t2f(g); figure(1) set(1,position,10,50,500,200) %设定窗口位置及大小 figure(2)set(2,position,350,50,500,200)%设定窗口位置及大小 hold on grid xlabel(t in us) ylabel(s(t) in V) EP=zeros(size(f)+eps; for ii=1:100 a=sign(randn(1,M); imp=zeros(1,N); %产生冲激序列 imp(L/2:L:N)=a/dt; S=t2f(imp).*G; %升余弦信号的傅氏变换 s=f2t(t2f(imp).*G); %升余弦信号的时域波形 s=real(s); P=S.*conj(S)/T; %升余弦信号的功率谱 EP=(EP*(ii-1)+P+eps)/ii; figure(1) plot(f,30+10*log10(EP),r); grid axis(-3,+3,-200,50) xlabel(f (MHz) ylabel(Ps(f) (dBm/MHz) figure(2) tt=0:dt:Na*L*dt; for jj=1:Na*L:N-Na*L plot(tt,s(jj:jj+Na*L); endend运行结果: (五)实验结果分析打开MATLAB运行程序scosx.m后窗口出现:M =512,df =0.0039,T =256,Bs =32滚降系数=0.5。输入0.5后,画出升余弦滚降系数为0.5的波形的眼图及其功率谱密度图。升余弦滚降信号的基本脉冲波形为:。本题用和产生滚降系数为0.5的升余弦滚降信号。然后对其进行傅里叶变换,得到功率谱密度与眼图。六PCM编码及解码仿真(一)通信原理知识PCM采用A律编码规则:A律压扩特性曲线在(-1,+1)上,这种压扩特性可用13折线逼近。注意:本来是分成了16段,但0附近的4个线段斜率相同,可视为1条对量化后的有限个取值进行编码,常见的二进制码:自然码,折叠码,格雷码。PCM中使用的是折叠码:用第一位表示量化电平极性(正为1,负为0),后面几位表示信号量化电平绝对值的大小。量化:先用对数A律特性将量化范围分成16个段落(对数量化),在段落内则使用均匀量化(即将每个段落均匀分成16个小段)。编码:每个值用8比特进行量化。将整个量化范围均分成8192等份,正负部分各4096份且相互对称。下面以正极性部分进行说明:段落0(000):032份。段内16小段,每小段2份段落1(001):3264份。段内16小段,每小段2份段落2(010):64128份。段内16小段,每小段4份段落3(011):128256份。段内16小段,每小段8份段落4(100):256512份。段内16小段,每小段16份段落5(101):5121024份。段内16小段,每小段32份段落6(110):10242048份。段内16小段,每小段64份段落7(111):20484096份。段内16小段,每小段128份注意:每小段的量化电平为该小段中点(均匀量化)(二)仿真原理及思路PCM编码原理:在PCM中,对模拟信号进行抽样、量化,将量化的信号电平值转化为对应的二进制码组的过程称为编码,其逆过程称为译码或解码。在PCM中使用的是折叠二进制码。(1)折叠二进制码从理论上看,任何一个可逆的二进制码组均可用于PCM。目前最常见的二进制码组有三类:二进制自然码(NBC)、折叠二进制码组(FBC)、格雷二进制码(RBC)。表3-1列出三种码的编码规律。表3-1 二进制码型电平序号自然二进制码折叠二进制码格雷码012345670 0 0 00 0 0 10 0 1 00 0 1 10 1 0 00 1 0 10 1 1 00 1 1 10 1 1 10 1 1 00 1 0 10 1 0 00 0 1 10 0 1 00 0 0 10 0 0 00 0 0 00 0 0 10 0 1 10 0 1 00 1 1 00 1 1 10 1 0 10 1 0 0891011121314151 0 0 01 0 0 11 0 1 01 0 1 11 1 0 01 1 0 11 1 1 01 1 1 11 0 0 01 0 0 11 0 1 01 0 1 11 1 0 01 1 0 11 1 1 01 1 1 11 1 0 01 1 0 11 1 1 11 1 1 01 0 1 01 0 1 11 0 0 11 0 0 0由表3-1可见,如果把16个量化级分成两部分:07的8个量化级对于于负极性样值,815的8个量化级对应于正极性样值。自然二进制码就是一般的十进制正整数的二进制表示。如电平序号13用自然码表示就是 (3.3-3)其中下标表示是二进制数。在折叠码中,左边第一位表示正负号(信号极性),第二位开始至最后一位表示信号幅度。第一位用1表示正,用0表示负。绝对值相同的折叠码,其码组除第一位外都相同,并且相对于零电平(第7电平和第8电平之间)呈对称折叠关系,因此这种码组形象地称为折叠码。PCM编码规则:电话语音信号的频带为3003400Hz,抽样速率为8000Hz,对每个抽样值进行律或者律非均匀量化,在编码时每个样值用8位二进制码表示。这样,每路标准话路的比特率为64kbps。编码时是按照CCITT建议的PCM编码规则进行的。在律13折线编码中,正负方向共16个段落,在每一个段落内有16个均匀分布的量化电平,因此总的量化电平数。编码位数,每个样值用8比特代码来表示,分为三部分。第一位为极性码,用1和0分别表示信号的正、负极性。第二到第四位码为段落码,表示信号绝对值处于那个段落,3位码可表示8个段落,代表了8个段落的起始电平值。上述编码方法是把非线性压缩、均匀量化、编码结合为一体的方法。在上述方法中,虽然各段内的16个量化级是均匀的,但因段落长度不等,故不同段落间的量化间隔是不同的。当输入信号小时,段落小,量化级间隔小;当输入信号大时,段落大,量化级间隔大。第一、二段最短,归一化长度为,再将它等分16段,每一小段长度为,这就是最小的量化级间隔。根据13折线的定义,以最小的量化级间隔为最小计量单位,可以计算出13折线律每个量化段的电平范围、起始电平、段内码对应电平、各段落内量化间隔。具体计算结果如表3-2所示。表3-2 13折线A律有关参数表段落号i=18电平范围段落码段落起始电平量化间隔段内码对应权值()8102420481 1 110246451225612864751210241 1 051232256128643262565121 0 12561612864321651282561 0 0128864321684641280 1 1644321684332640 1 032216842216320 0 1161842110160 0 0018421假设以非均匀量化时的最小量化间隔=1/2048作为均匀量化的量化间隔,那么从13折线的第一段到第八段所包含的均匀量化级数共有2048个均匀量化级,而非均匀量化只有128个量化级。均匀量化需要编11位码,而非均匀量化只要编7位码。通常把按非均匀量化特性的编码称为非线性编码;按均匀量化特性的编码称为线性编码。可见,在保证小信号时的量化间隔相同的条件下,7位非线性编码与11位线性编码等效。(三)程序流程图正弦信号A律PCM编码A律PCM译码作图(四)仿真程序及运行结果主程序:pcm.m%show the pcm encode and decodeclear all;close all;t = 0:0.01:10;x = sin(t);v = max(x);xx = x/v; %normalizesxx = floor(xx*4096);y = pcm_encode(sxx);yy = pcm_decode(y,v);drawnowfigure(1) set(1,position,10,50,500,200)%设定窗口位置及大小 figure(2) set(2,position,350,50,500,200);%设定窗口位置及大小 figure(1) plot(t,x,r);title(sample sequence);figure(2)plot(t,yy,b)title(pcm decode sequence);编码程序:pcm_encode.mfunction out=pcm_encode(x)%x encode to pcm code n=length(x);%-4096x0out(i,1)=1;elseout(i,1)=0;endif abs(x(i) =0 & abs(x(i)32out(i,2)=0;out(i,3)=0;out(i,4)=0;step=2;st=0;elseif 32=abs(x(i)&abs(x(i)64out(i,2)=0;out(i,3)=0;out(i,4)=1;step=2;st=32;elseif 64=abs(x(i)&abs(x(i)128out(i,2)=0;out(i,3)=1;out(i,4)=0;step=4;st=64;elseif 128=abs(x(i)&abs(x(i)256out(i,2)=0;out(i,3)=1;out(i,4)=1;step=8;st=128elseif 256=abs(x(i)&abs(x(i)512out(i,2)=1;out(i,3)=0;out(i,4)=0;step=16;st=256;elseif 512=abs(x(i)&abs(x(i)1024out(i,2)=1;out(i,3)=0;out(i,4)=1;step=32;st=512;elseif 1024=abs(x(i)&abs(x(i)2048out(i,2)=1;out(i,3)=1;out(i,4)=0;step=64;st=1024;elseif 2048=abs(x(i)&abs(x(i)4096out(i,2)=1;out(i,3)=1;out(i,4)=1;step=128;st=2048;elseout(i,2)=1;out(i,3)=1;out(i,4)=1;step=128;st=2048;endif abs(x(i)=4096out(i,2:8)=1 1 1 1 1 1 1;elsetmp=floor(abs(x(i)-st)/step);t=dec2bin(tmp,4)-48;%函数dec2bin输出的是ASCII字符串,48对应0out(i,5:8)=t(1:4);endend

温馨提示

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

评论

0/150

提交评论