北邮通信原理软件实验报告(包含一部分思考题)(中)_北邮通信原理实验报告
北邮通信原理软件实验报告(包含一部分思考题)(中)由刀豆文库小编整理,希望给你工作、学习、生活带来方便,猜你可能喜欢“北邮通信原理实验报告”。
编程题实验三:
通过仿真测量占空比为25%、50%、75%以及100%的单双极性归零码波形及其功率谱。(编程)
源程序: clear all
exec t2f.sci;
exec f2t.sci;
M=1000;
//观察码元个数
L=2^5;
//每个码元间隔内的采样点数 N=M*L;
//总采样点数 Rs=5;//采样速率 Ts=1/Rs;//码元间隔 T=M*Ts;//观察时间 fs=N/T;//频率分辨率
t=[-(T/2):1/fs:(T/2-1/fs)];EP=zeros(1,N);//累计初值,单,为全零向量 EPs=zeros(1,N);//累计初值,双,为全零向量 for loop=1:1000
//1000个样本 a=round((rand(1,M)));as=2*round((rand(1,M)))-1;tmp=zeros(L,M);tmps=zeros(L,M);//L1=L*0.25;//占空比25% //L1=L*0.5;//占空比50% //L1=L*0.75;//占空比75% L1=L*1;//占空比100% tmp([1:L1],:)=ones(L1,1)*a;tmps([1:L1],:)=ones(L1,1)*as;s=tmp(:)';=tmps(:)';S=t2f(s,fs);Ss=t2f(,fs);P=abs(S).^2/T;Ps=abs(Ss).^2/T;EP=EP*(1-1/loop)+P/loop;EPs=EPs*(1-1/loop)+Ps/loop;end;xset(“window”,1)title(“单极性不归零码信号的波形”)plot(t,s,'LineWidth',2);mtlb_axis([-2,2,-1.1,1.1]);xlabel(“t/ms”)ylabel(“s(t)(V)”)mtlb_grid df=1/T;f=[-fs/2:df:fs/2-df];xset(“window”,2)title(“单极性不归零码信号的功率谱”)xlabel(“f/KHz”)plot(f,EP);mtlb_axis([-40,40,0,0.5]);xset(“window”,9)title(“双极性归零码信号的波形”)plot(t,);mtlb_axis([-2,2,-1.1,1.1]);xlabel(“t/ms”)ylabel(“s(t)(V)”)df=1/T;f=[-fs/2:df:fs/2-df];xset(“window”,4)title(“双极性归零码信号的功率谱”)xlabel(“f/KHz”)plot(f,EPs);mtlb_axis([-40,40,0,0.5])
实验结果: A.占空比为100%
、B、占空比为75%
C、占空比50%
D.、占空比为25%的时候:
实验结论:
(1)、关于码的极性的讨论:
当是单极性码的时候,功率谱具有连续谱,直流分量,和谐波分量(若占空比为25%和75%,功率谱中没有4n次谐波分量;若占空比为50%,功率谱中没有偶次谐波分量)。当是双极性码的时候,功率谱只有连续谱,没有直流分量和谐波分量。、(2)、关于占空比的讨论:
随着占空比的增加,功率谱的主瓣宽度逐渐减小,且减小的越慢。
实现数字基带传输系统
实验目的:
利用编程实现数字基带传输系统(参考第2章编程语法-实验题-附录.pdf中例5)
1)画出发送端输入码序列波形和功率谱、发送滤波器输出波形和功率谱
2)画出接收端采样判决后码序列波形和功率谱、接收滤波器输出波形和功率谱
3)画出接收滤波器输出信号眼图(在升余弦滚将系数分别为0、0.5、1的情况下)4)分别画出升余弦滚将系数为0、0.5、1,采样判决点在眼图最大处的系统的实际误码曲线(Pe~s/n0曲线),并在同坐标系中画出理论误码曲线
5)改变采样点重复1)~4)。
程序代码:
主程序: clear all exec t2f.sci;exec f2t.sci;exec eyes.sci;
k=13;N=2^k;//采样点数
L=16;//每码元的采样点数 M=N/L;//码元数 Rb=2;//码速率是2Mb/s Ts=1/Rb;//码元间隔 dt=Ts/L;//时域采样间隔 fs=1/dt;//采样速率
df=1/(N*dt);//频域采样间隔 T=N*dt;//截短时间 Bs=N*df/2;//系统带宽
f=[-Bs+df/2:df:Bs];//频域横坐标 t=[-T/2+dt/2:dt:T/2];//时域横坐标
alpha=1;//升余弦滚降系数 Hcos=zeros(1,N);ii=find(abs(f)>(1-alpha)/(2*Ts)&abs(f)
for l1=1:20;
Eb_N0(l1)=(l1-1);//信噪比
eb_n0(l1)=10^(Eb_N0(l1)/10);
Eb=1;
n0=Eb/eb_n0(l1);//信道的噪声谱密度
sita=n0*Bs;//信道中噪声功率
n_err=0;//误码计数
for loop=1:100
a=sign(rand(1,M,“normal”));
tmp1=RECT*a;
seq_send=tmp1(:)';
//发送端产生序列!
S1=t2f(seq_send,fs);
P1=abs(S1).^2/T;//样本信号的功率谱密度
EP1=EP1*(1-1/loop)+P1/loop;//随机过程的功率谱是各个样本的功率谱的数学期望
EP11=20+10*log10(EP1+%eps);
sp=zeros(1,N);//产生冲激序列
sp(1:L:N)=a/dt;
SP=t2f(sp,fs);
SH=SP.*GT;
sh=real(f2t(SH,fs));
//通过发送滤波器后的信号!
PB=abs(SH).^2/T;//过升余弦后能量谱密度
EPB=EPB*(1-1/loop)+PB/loop;//求平均
EPBB=20+10*log10(EPB+%eps);
nw=sqrt(sita)*rand(1,N,“normal”);//信道噪声
SY=SH.*GR;
sy=real(f2t(SY,fs));
r=sy+nw;//接收信号
R=t2f(r,fs);
PC=abs(R).^2/T;
EPC=EPC*(1-1/loop)+PC/loop;//收端
EPCC=20+10*log10(EPC+%eps);
sd=r(L/4:L:N);//*取样!!
sdp=sign(sd);//判决
tmp2=RECT*sdp;
seq_reci=tmp2(:)';
//接收端信号!
S2=t2f(seq_reci,fs);
P2=abs(S2).^2/T;//样本信号的功率谱密度
EP2=EP2*(1-1/loop)+P2/loop;
EP22=20+10*log10(EP2+%eps);
n_err=n_err+length(find(sdp~=a));//错误累计 end Pe(l1)=n_err/(M*loop);
xset(“window”,5)
plot(Eb_N0,log10(Pe+%eps),'g');//Pe~Eb/N0曲线画图
xlabel('Eb/N0');ylabel('Pe');title(“Pe~Eb/N0曲线”);
eb_n0=10.^(Eb_N0/10);
set(gca(),“auto_clear”,“off”)
k = log10(0.5*erfc(sqrt(eb_n0)));
plot(Eb_N0,k)
mtlb_axis([0,15,-3.5,0]);
xlabel('Eb/N0')
ylabel('Pe')
legend('实际的','理论的');
set(gca(),“auto_clear”,“on”)end
xset(“window”,1)subplot(2,2,1)plot(t,seq_send)title(“最初产生序列输出波形”)mtlb_axis([0,L,-1.5,1.5])xgrid subplot(2,2,2)plot(t,sh)title(“通过发送滤波器后的信号波形”)xlabel(“t(ms)”)ylabel(“s2(t)(V)”)mtlb_axis([0,L,-2.5,2.5])xgrid subplot(2,2,3)plot(t,sy)title(“采样前的信号波形”)xlabel(“t(ms)”)ylabel(“y(t)(V)”)mtlb_axis([0,L,-2,2])xgrid subplot(2,2,4)plot(t,seq_reci)title(“判决后输出序列”)mtlb_axis([0,L,-1.5,1.5])xgrid xset(“window”,2)subplot(2,2,1)plot(f,EP11)xlabel(“f/kHz”)ylabel(“|FMf|/(V/Hz)”)mtlb_axis([-10,10,-20,max(EP11)])title(“发送序列频率谱”)xgrid subplot(2,2,2)plot(f,EPBB)title(“发送滤波器输出功率谱”)xlabel(“f(kHz)”)ylabel(“功率谱(W/kHz)”)mtlb_axis([-10,10,0,max(EPBB)])xgrid subplot(2,2,3)plot(f,EPCC)title(“判决后输出功率谱”)xlabel(“f(kHz)”)ylabel(“功率谱(W/kHz)”)mtlb_axis([-10,10,0,max(EPCC)])xgrid subplot(2,2,4)plot(f,EP22)xlabel(“f/kHz”)ylabel(“|FMf|/(V/Hz)”)mtlb_axis([-10,10,-20,max(EP22)])title(“接收序列频率谱”)xgrid xset(“window”,3)subplot(2,1,1)title(“发送端眼图”)eyes(sh,L,3)xgrid subplot(2,1,2)title(“接收端眼图”)eyes(sy,L,3)xgrid
眼图程序:
function eyes(result,L,Na)N=length(result);tt=0:1:Na*L;set(gca(),“auto_clear”,“off”)for jj=1:Na*L:N-Na*L
plot(tt,result(jj:jj+Na*L));end
set(gca(),“auto_clear”,“on”);endfunction
实验结果: 滚降系数为1:
滚降系数为0.5:
滚降系数为0:
思考题:
(1)数字基带系统中的升余弦滚降滤波器对输入信号进行的什么处理?结合扩展实验(1)和(2)的实验结果,从频域和时域的角度叙述。
答: 实现匹配滤波,满足奈奎斯特采样定理,提升接收端信噪比。
(2)根据扩展实验(3)的实验结果,分析滚降系数大小对眼图清晰度和眼睛大小的影响。
答:滚降系数越大,眼图越清晰,眼睛越大。
(3)比较并分析扩展实验(5)的结果与扩展实验(1)~(4)的结果的异同。
答:更改采样点数,图形大致相同,但是由于采样点数减少,图形失真相对明显,眼图质量降低。
(4)结合扩展实验结果分析滚降系数大小与误码性能、信道带宽的关系。
答:滚降系数越大,信道带宽越宽。改变滚降系改变滚降系数对误码率不产生影响。
(5)计算机仿真精度与哪些因素有关?
答:总采样点数、码元采样点数、时域采样密度、频域采样密度。
QPSK调制与解调
调制部分:
【实验目的:】 了解QPSK调制的作用及其调制原理;理解QPSK调制各模块的内部结构,以及它们各自的作用;学会使用QPSK调制模块搭建复杂通信系统
【实验原理】
QPSK也称为四进制移相键控,该信号的正弦载波有4个可能的离散相位状态,每个载波相位携带2个二进制符号,其信号表示式为
QPSK的信号表示形式也可以写为:
【实验步骤】: 模块搭建:
参数设置,见讲义。
【思考题】
1、QPSK调制中,delay模块起到的作用是什么?
答:延时,产生OQPSk信号。
2、QPSK调制有哪些缺点?
答:可能在利用四次方环或科斯塔环解调提取载波的时候会有恢复载波四重相位模糊对相干解调输出的现象。
解调部分: 【实验目的】
1、了解QPSK解调的作用及其调制原理
2、理解QPSK解调各模块的内部结构,以及它们各自的作用
3、学会使用QPSK解调模块搭建复杂通信系统
【实验原理】
在加性高斯白噪声信道条件下,QPSK信号的最佳接收框图如下:
图
【实验步骤】
1、根据QPSK解调原理,下面对二进制随机码进行QPSK解调,将各模块按如下方式连接:
图
参数设置见讲义。
结果:
开始的时候,因为时延的关系,解调输出比输入超前:
调节时延后,输出和输入基本同步:
没有时延的时候,解调输出和输入的关系图:
【思考题】
1、找到QPSK解调超级模块的判决部分,查看其参数设置情况,看是否可以在合理范围内更改其判决条件。
答:不可以。
2、查看放大器前后波形的变化。并思考放大器对于判决起到的作用。
答:放大过小,会使判决失效。当放大过大的时候,会引起判决错误。
3、延时器Delay①在解调过程的必要性。
答:主要为使输入和解调输出时钟同步,方便观察。
扩展实验:数字基带系统的仿真(综合)
【实验目的】
1.了解在理想限带及加性白高斯噪声信道条件下数字基带系统的基本原理和设计方法,完成在仿真平台上的系统搭建与仿真。2.进一步熟悉SCICOS 下的复杂系统设计。
3.运用工具库现有的通信工具模块搭建系统,利用其功能全面且封装性强的特点,针对数字基带系统进行横向功能分解,使系统设计更加精炼、准确。
4.深入学习数字基带系统核心传输节点的性能,并掌握眼图示波器的使用方法,观察接收滤波器输出的眼图和功率谱密度,判断系统传输的正确性和精准性,调试以达到最佳传输效果。
【实验原理】 若使得在接收端抽样时刻码间干扰为零,则系统的合成传递函数必须满足以下条件:
则接收到的确定信号的频谱仅取决与发送滤波器的特性,所以接收滤波器的应与发送滤波器共轭匹配,即:
这样,在理想限带信道情况下,既要使接收端抽样时刻的抽样值无码间干扰,又要使得在抽样时刻抽样值的信噪比最大,则
综上所述,数字PAM 信号通过限带信道、并受到加性噪声干扰的情况下,在限带信道为理想低通条件下,最佳基带传输的发送及接收滤波的设计原则为:总的收发系统的传递函数要符合无码间干扰基带传输的升余弦特性;且又要考虑在抽样时刻信噪比最大的收、发滤波共轭匹配的条件。
可得无码间干扰的条件下,其系统框图如图5.150:
【实验步骤】 方案
一、编程实现理想基带传输系统的升余弦特性
1、按图5.151 所示将各模块连接成数字基带传输系统。
2、在同一参数被不止一个模块调用的情况下可以统一利用一个符号表示,不过需要在 Diagram菜单中的Context中对这个符号进行预先定义。
在本次系统设计中,需要在【Diagram】中的“Context”中进行内容设置。具体设计见讲义。
3:“sending filter”与“receiving filter”的实现 具体的参数设计见讲义。
实验结果:
仿真结果对比:
眼图:
方案
二、利用根升余弦滤波器模块实现基带传输系统的升余弦特性
1、按照图5.156搭建数字基带系统
2、Contex内容设置。
3、参数设置如
实验结果: 眼图仿真:
采样信号频谱图:
接收滤波器输出的频谱图:
仿真结果对比:
原信号(黑)与接收匹配滤波器的输出信号(绿)波形:
------------------------------结束
心得体会
通信原理是门以实验为辅助的学科,实验、学习和观察等实践环节对我们掌握知识、科学方法、培养我们的动手能力和怀疑的精神都起到了至关重要的作用。
说实话,通信原理软件实验的整个实验周期很长,看起来我们拥有的时间很充足,但其实不是这个样子的。因为,当时的实验,好多东西还没有学过,所以堂而皇之的去仿真,根本不知道是在干什么。所以,提前预习成了必要的条件,这样就可以先熟悉熟悉,然后等老师讲完课后,才发现,原来我所理解知识还是和老师理解的有着一些偏差,和实验过程有和一些偏差。也就是说,实验在某种程度上和理论不是一回事,这就是为什么要做实验的目的所在,也就是说,我们所学习的理论要完完全全的应用于理论是多么的困难。读书一月,不如实践一天,实践一天,不如在时间后思考几分钟。
因为可以用自己的笔记本,感觉通原软件实验比硬件实验的机动性更强,这样,在保持实验惯性的前提下,一下子就能做完一个实验,这样就很有成就感,能激发更大的兴趣。记得在昨晚平常的实验后,为了做拓展实验,晚上不睡觉都能利用笔记本画图,仿真和分析。课件,兴趣对人的学习主动性的促进作用是多么的大。在这个过程中,我发现自己对于图形和数字之类的实验结果很是敏感,注意力在这些东西上面比较集中,这样,我觉得对于自己擅长干什么应该是比较清楚的了。
在这中间,我也发现我的动手能力还有待进一步提升,当有些实验需要很强的动手能力时我还不能从容应对不足归不足,但是有提升空间还是好的;我的探索方式还有待改善,当面对一些复杂的实验时有时候会不细致,导致仿真结果错误或者根本没法仿真,这样排查的时间占去了实验时间的一部分,排查错误的过程也是比较枯燥的,不过能坚持下来也是很好的;我的结果分析还得提高,这样就能以更多的思考方式获得更多的知识,这些知识不只是理论性的,不只是客观的,还有主观的。
总之,通信原理软件实验我收获颇丰。因为我不仅仅是获得了知识,更重要的是让我发现了自身的不足,包括将理论应用于实践的能力。如果能将学习的知识,举一反三,灵活运用,莫不是人生一件很有价值的事情。通过这几次的实验,我们对通信原理有了一定的认识,不再对通信局限于信息传递这样的概念。也让我们真正认识到科学技术是第一生产力的重要性,也认识到我所接触的是这些技术和领域是多么的令人赞叹。
本学期实验,开阔了我的视野,理论和实践结合,使我对课本概念和原理的抽象之处有了更深刻的理解,使我们巩固了所学知识,也接触了从未学过的东西,比如SCILAB 4的应用。我的实践能力得到了提高,知识积累也变得更加丰富,我比较满意,同时我还要再接再厉,为以后的专业学习打下坚实的基础。