通信原理MATLAB仿真.doc

上传人:wj 文档编号:2490866 上传时间:2023-05-03 格式:DOC 页数:19 大小:2.68MB
下载 相关 举报
通信原理MATLAB仿真.doc_第1页
第1页 / 共19页
通信原理MATLAB仿真.doc_第2页
第2页 / 共19页
通信原理MATLAB仿真.doc_第3页
第3页 / 共19页
通信原理MATLAB仿真.doc_第4页
第4页 / 共19页
通信原理MATLAB仿真.doc_第5页
第5页 / 共19页
通信原理MATLAB仿真.doc_第6页
第6页 / 共19页
通信原理MATLAB仿真.doc_第7页
第7页 / 共19页
通信原理MATLAB仿真.doc_第8页
第8页 / 共19页
通信原理MATLAB仿真.doc_第9页
第9页 / 共19页
通信原理MATLAB仿真.doc_第10页
第10页 / 共19页
通信原理MATLAB仿真.doc_第11页
第11页 / 共19页
通信原理MATLAB仿真.doc_第12页
第12页 / 共19页
通信原理MATLAB仿真.doc_第13页
第13页 / 共19页
通信原理MATLAB仿真.doc_第14页
第14页 / 共19页
通信原理MATLAB仿真.doc_第15页
第15页 / 共19页
通信原理MATLAB仿真.doc_第16页
第16页 / 共19页
通信原理MATLAB仿真.doc_第17页
第17页 / 共19页
通信原理MATLAB仿真.doc_第18页
第18页 / 共19页
通信原理MATLAB仿真.doc_第19页
第19页 / 共19页
亲,该文档总共19页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

通信原理MATLAB仿真.doc

《通信原理MATLAB仿真.doc》由会员分享,可在线阅读,更多相关《通信原理MATLAB仿真.doc(19页珍藏版)》请在冰点文库上搜索。

通信原理MATLAB仿真.doc

通信原理——基于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是对的傅氏变换截短并采样所得的取样值矢量。

(三)程序流程图

正弦信号

傅里叶变换

傅里叶逆变换

作图

耳机插孔

PROBE

EZ_PROBE座

(四)仿真程序及运行结果

主程序:

sinx.m

globaldtdfNtfT%全局变量

closeall

k=input('取样点数=2^k,k=[10]');

ifk==[],k=10;end

N=2^k;%采样点数

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.m

functionX=t2f(x)

globaldtdfNtfT

%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.m

functionx=f2t(X)

globaldtdftfTN

%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后窗口出现:

取样点数=2^k,k=[10]。

输入10后,画出正弦信号波形图以及频谱图。

  通过傅里叶变换语句S=t2f(s)及傅里叶反变换语句a=f2t(S),得到正弦信号频谱并作图。

四.单极性归零(RZ)波形及其功率谱仿真

(一)通信原理知识

用矩形不归零脉冲作为发射波形(载波):

 

2PAM信号波形的幅度:

占空比:

(二)仿真原理及思路                                       

采用归零(RZ)矩形脉冲波形的数字信号,可以用简单的方法信号矢量s。

设a是码元矢量,N是总取样点数,M是总码元数,L是每个码元内的点数,Rt是要求的占空比,dt是仿真系统的时域采样间隔,则RZ信号的产生方法是

s=zeros(1,N);

forii=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.m

globaldttdfN

closeall

k=input('取样点数=2^k,k=[14]');

ifk==[],k=14;

end

N=2^k; %采样点数

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);

forjj=1:

100

a=round(rand(1,M));%产生M个取值0,1等概的随机码

s=zeros(1,N); %产生一个N个元素的零序列

forii=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后窗口出现:

取样点数=2^k,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];

holdon

forii=1:

Na*L:

N-N*L

plot(tt,s(ii+[1:

Na*L]));

end

(三)程序流程图

滚将系数为0.5的升余弦脉冲波形

升余弦信号的功率谱

作图

升余弦信号的眼图

(四)仿真程序及运行结果

程序如下:

scosx.m

globaldttdfN

closeall

N=2^14; %采样点数

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]');

ifalpha==[],alpha=0.5;

end

t=[-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])%设定窗口位置及大小

holdon

grid

xlabel('tinus')

ylabel('s(t)inV')

EP=zeros(size(f))+eps;

forii=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];

forjj=1:

Na*L:

N-Na*L

plot(tt,s(jj:

jj+Na*L));

end

end

运行结果:

(五)实验结果分析

打开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):

0-32份。

段内16小段,每小段2份

段落1(001):

32-64份。

段内16小段,每小段2份

段落2(010):

64-128份。

段内16小段,每小段4份

段落3(011):

128-256份。

段内16小段,每小段8份

段落4(100):

256-512份。

段内16小段,每小段16份

段落5(101):

512-1024份。

段内16小段,每小段32份

段落6(110):

1024-2048份。

段内16小段,每小段64份

段落7(111):

2048-4096份。

段内16小段,每小段128份

注意:

每小段的量化电平为该小段中点(均匀量化)

(二)仿真原理及思路              

PCM编码原理:

在PCM中,对模拟信号进行抽样、量化,将量化的信号电平值转化为对应的二进制码组的过程称为编码,其逆过程称为译码或解码。

在PCM中使用的是折叠二进制码。

(1)折叠二进制码

从理论上看,任何一个可逆的二进制码组均可用于PCM。

目前最常见的二进制码组有三类:

二进制自然码(NBC)、折叠二进制码组(FBC)、格雷二进制码(RBC)。

表3-1列出三种码的编码规律。

表3-1二进制码型

电平序号

自然二进制码

折叠二进制码

格雷码

0

1

2

3

4

5

6

7

0000

0001

0010

0011

0100

0101

0110

0111

0111

0110

0101

0100

0011

0010

0001

0000

0000

0001

0011

0010

0110

0111

0101

0100

8

9

10

11

12

13

14

15

1000

1001

1010

1011

1100

1101

1110

1111

1000

1001

1010

1011

1100

1101

1110

1111

1100

1101

1111

1110

1010

1011

1001

1000

由表3-1可见,如果把16个量化级分成两部分:

0~7的8个量化级对于于负极性样值,8~15的8个量化级对应于正极性样值。

自然二进制码就是一般的十进制正整数的二进制表示。

如电平序号13用自然码表示就是

(3.3-3)

其中下标表示是二进制数。

在折叠码中,左边第一位表示正负号(信号极性),第二位开始至最后一位表示信号幅度。

第一位用1表示正,

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 幼儿教育 > 少儿英语

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2