通信原理实验报告.docx
- 文档编号:25003792
- 上传时间:2023-06-03
- 格式:DOCX
- 页数:11
- 大小:130.30KB
通信原理实验报告.docx
《通信原理实验报告.docx》由会员分享,可在线阅读,更多相关《通信原理实验报告.docx(11页珍藏版)》请在冰豆网上搜索。
通信原理实验报告
天津农学院
计算机与信息工程学院
通信原理教学实习报告
实习名称:
单双极性归零码波形及功率谱仿真
专业:
物联网工程
班级:
2014级1班
******
*******
二0一六年一月十一日
1教学实习的内容………………………………………………1
2教学实习的目的………………………………………………1
3教学实验的基本原理…………………………………………1
4仿真思路………………………………………………………2
5程序框图………………………………………………………3
6仿真源代码……………………………………………………3
7结果及分析……………………………………………………8
1教学实习的内容
单双极性归零码波形及功率谱仿真程序设计,调试及运行。
通过仿真测量占空比为25%、50%、75%以及100%的单双极性归零码波形及其功率谱。
2教学实习的目的
加深对单双极性归零码波形及功率谱的理解与认识,了解单双极性归零码波形及功率谱仿真方法。
首先理解单双极性归零码波形及功率谱的基本原理,根据实际问题,设计好仿真程序,并上机调试运行,写出实习报告。
3教学实验的基本原理
3.1单极性归零码
当发
码时,发出正电流,但持续时间短于一个码元的时间宽度,即发出一个窄脉冲;当发
码时,仍然不发送电流。
单极性归零码在符号等概出现且互不相关的情况下,功率谱主瓣宽度为
,其频谱含有连续谱、直流分量、离散始终分量及其奇次谐波分量。
3.2双极性归零码
其中
码发正的窄脉冲,
码发负的窄脉冲,两个码元的时间间隔可以大于每一个窄脉冲的宽度,取样时间是对准脉冲的中心。
双极性归零码在符号等概且不相关的情况下,功率谱仅含有连续谱,其主瓣宽度为
。
3.3各种码的比较
不归零码(NoneReturnZeroCode)在传输中难以确定一位的结束和另一位的开始,需要用某种方法使发送器和接收器之间进行定时或同步。
归零码(ReturnZeroCode)的脉冲较窄,根据脉冲宽度与传输频带宽度成反比的关系,因而归零码在信道上占用的频带较宽。
单极性码会积累直流分量;双极性码的直流分量大大减少,这对数据传输是很有利的。
4仿真思路
4.1产生RZ码
采用归零矩形脉冲波形的数字信号,可以用以下方法产生信号矢量
。
设
是码元矢量,N是总取样点数,M是总码元数,L是每个码元内的点数,
是要求的占空比,
是仿真系统的时域采样间隔,则RZ信号的产生方法是
4.2仿真功率谱密度
任意信号
的功率谱的定义是
其中
是
截短后的傅氏变换,
是
的能量谱,
是
在截短时间内的功率谱。
对于仿真系统,若
是时域取样值矢量,X是对应的傅氏变换,那么
的功率谱便为
。
针对随机过程
,其平均功率谱密度定义为各样本功率谱密度的数学期望
4.3作出仿真图
由于需要作出的图形较多,且图形间需要对比,故采用了两种视图进行绘图,一是各个占空比的RZ码波形图和其功率谱进行横向对比,二是分别作出各占空比下的单双极性归零码波形,以便于观察。
另外,各个占空比的RZ码波形和其频谱变换后的结果使用多行的矩阵进行存储,方便最后作图,因而代码显得有些冗余。
可改用定义函数,输入参数的方式给出不同占空比下的计算与绘图。
5程序框图
对于单极性归零码:
对于双极性归零码:
6仿真源代码
%%Thisisexp11ofcommunicationmatlabexperiment.
%Simulatedigitalcodingwaveanditspowerspectrum
%dutyratio25%,50%,75%,100%
%bothbipolarandunipolarRZcode
%Prepareworkspace
clearall
closeall
%--------------------------------------------------------------------
%commondefinitions
ratio=[0.25,0.5,0.75,1];
L=128;%samplepointseverybitinterval
N=2^14;%totalsamplepoints
M=N/L;%totalbits
Rs=10;%kbit/s
Ts=1/Rs;%bits'timeinterval
T=M*Ts;%period
fs=N/T;%samplingrate
t=-T/2:
1/fs:
T/2-1/fs;%timedomain
df=1/T;%minimumfrequency-domainresolution
f=-fs/2:
df:
fs/2-df;%frequecydomain
%--------------------------------------------------------------------
%%generateunipolarRZcode
%prelocatespaceforspeed
ratiolen=length(ratio);
Frz_unipolar=zeros(ratiolen,length(f));
Frz_bipolar=zeros(ratiolen,length(f));
rz_unipolar=zeros(ratiolen,L*M);
rz_bipolar=zeros(ratiolen,L*M);
%looptogenerateRZcodeindifferentdutyratio
EP1=zeros(size(f))+eps;
EP2=zeros(size(f))+eps;
forii=1:
ratiolen
forloop=1:
200
%generateunipolardata
unip=(randn(1,M)>0);
%generatebipolardata
bip=sign(randn(1,M));
tmp1=zeros(L,M);%zeromatrix:
LbyM
tmp2=zeros(L,M);
Lii=L*ratio(ii);%applydutyratio
tmp1(1:
Lii,:
)=ones(Lii,1)*unip;%unipolarRZcodematrix
tmp2(1:
Lii,:
)=ones(Lii,1)*bip;%bipolarRZcodematrix
rz_tmp1=tmp1(:
)';%unipolarrzcodearray
rz_tmp2=tmp2(:
)';%bipolarrzcodearray
Frz_tmp1=t2f(rz_tmp1,fs);%FourierTransform
Frz_tmp2=t2f(rz_tmp2,fs);
%P1=abs(Frz_tmp1).^2/T;
P1=Frz_tmp1.*conj(Frz_tmp1)/T;%PowerSpectrum
P2=Frz_tmp2.*conj(Frz_tmp2)/T;
EP1=(EP1*(loop-1)+P1+eps)/loop;
EP2=(EP2*(loop-1)+P2+eps)/loop;
end
%differentdutyratiocodeindifferentrow
EP11=10*log10(EP1);
EP22=10*log10(EP2);
rz_unipolar(ii,:
)=rz_tmp1;%timedomain
Frz_unipolar(ii,:
)=EP11;%frequecydomain
rz_bipolar(ii,:
)=rz_tmp2;
Frz_bipolar(ii,:
)=EP22;
end
%--------------------------------------------------------------------
%%visualizeunipolarRZcode
picnum=1;
%%firstview
%allinonefugure,subplot4by2
figure
(1)
forjj=1:
ratiolen
%plotwaveintime-domain
subplot(ratiolen,2,picnum),plot(t,rz_unipolar(jj,:
)),
xlabel('t'),ylabel('s(t)'),gridon,axis([-1,+1,0,+1.1]),
title(['UnipolarRZcode:
dutyratio',
num2str(ratio(jj)*100),'%']),
picnum=picnum+1;
%plotpowerspectruminfrequency-domain
subplot(ratiolen,2,picnum),plot(f,Frz_unipolar(jj,:
)),
axis([-100,+100,-80,+10]),
title(['UnipolarRZpowerspectrum:
dutyratio',
num2str(ratio(jj)*100),'%']),
xlabel('f'),ylabel('S(f)'),gridon
picnum=picnum+1;
end
%%secondview
%fourfigureswitheachdutyratio,bothwaveandspectrum
forkk=1:
ratiolen
figure(kk+1)
%plotwaveintime-domain
subplot(2,1,1),plot(t,rz_unipolar(kk,:
)),
xlabel('t'),ylabel('s(t)'),gridon,axis([-1,+1,0,+1.1]),
title(['UnipolarRZcode:
dutyratio',
num2str(ratio(kk)*100),'%']),
%plotpowerspectruminfrequency-domain
subplot(2,1,2),plot(f,Frz_unipolar(kk,:
)),
axis([-100,+100,-80,+10]),
title(['UnipolarRZpowerspectrum:
dutyratio',
num2str(ratio(kk)*100),'%']),
xlabel('f'),ylabel('S(f)'),gridon
end
%--------------------------------------------------------------------
%%visualizebipolarRZcode
figure(6)
picnum1=1;
%%firstview
%allinonefugure,subplot4by2
forgg=1:
ratiolen
%plotwaveintime-domain
subplot(ratiolen,2,picnum1),plot(t,rz_bipolar(gg,:
)),
xlabel('t'),ylabel('s(t)'),gridon,axis([-1,+1,-1.1,+1.1]),
title(['BiploarRZcode:
dutyratio',
num2str(ratio(gg)*100),'%']),
picnum1=picnum1+1;
%plotpowerspectruminfrequency-domain
subplot(ratiolen,2,picnum1),plot(f,Frz_bipolar(gg,:
)),
axis([-100,+100,-80,+10]),
title(['BipolarRZpowerspectrum:
dutyratio',
num2str(ratio(gg)*100),'%']),
xlabel('f'),ylabel('S(f)'),gridon
picnum1=picnum1+1;
end
%%secondview
%fourfigureswitheachdutyratio,bothwaveandspectrum
formm=1:
ratiolen
figure(mm+6)
%plotwaveintime-domain
subplot(2,1,1),plot(t,rz_bipolar(mm,:
)),
xlabel('t'),ylabel('s(t)'),gridon,axis([-1,+1,-1.1,+1.1]),
title(['BipolarRZcode:
dutyratio',
num2str(ratio(mm)*100),'%']),
%plotpowerspectruminfrequency-domain
subplot(2,1,2),plot(f,Frz_bipolar(mm,:
)),
axis([-100,+100,-80,+10]),
title(['BipolarRZpowerspectrum:
dutyratio',
num2str(ratio(mm)*100),'%']),
xlabel('f'),ylabel('S(f)'),gridon
end
%--------------------------------------------------------------------
7结果及分析
图1不同占空比单极性归零码波形和功率谱全图
图2不同占空比双极性归零码波形和功率谱全图
从仿真图1和图2可以清楚地看到,仿真结果与原理部分介绍的波形和功率谱相吻合。
比较明显的特点是双极性码不含离散分量,单极性码含有。
这是因为在符号等概且不相关的情况,双极性码均值为零,即不含直流成分。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 通信 原理 实验 报告