实验报告课程名称:无线网络通信技术实验项目:无线网络通信技术实验实验地点:致远楼B503教室专业班级:**********学号:**********学生姓名:******指导教师:张巍2017年4月2日23太原理工大学实验报告一学院名称专业班级实验成绩学生姓名学号实验日期课程名称无线网络通信技术实验题目实验一四相移相键控(QPSK)调制及解调实验一、实验目的和要求:1、掌握QPSK调制解调原理及特性。2、掌握利用MATLAB编程实现调制及解调的方法。二、实验内容:1、利用MATLAB编程实现QPSK调制及解调。2、观察I、Q两路基带信号的特征及与输入NRZ码的关系。3、观察I、Q调制解调过程中各信号变化。三、主要仪器设备Win1064位操作系统笔记本电脑及MATLABR2009a四、主要操作方法与实验步骤:%日期2017%功能QPSK的调制解调,基带信号点数t(限偶数),基波频率w0可设置clearall;nb=32;%传输的比特数T=1;%基带信号宽度,也就是基波频率fc=8/T;%载波频率ml=2;%调制信号类型的一个标志位c=4*nb;%单周期采样点数delta_T=T/c;%采样间隔fs=1/delta_T;%采样频率t=0:delta_T:nb*T-delta_T%限定t的取值范围c*nbN=length(t);%采样数%%%%%%%%%%%%%%%%%%%调制部分%基带信号的产生data=fix(2*rand(1,nb));%调用一个随机函数(0or1),输出到一个1*100的矩阵datanrz=data.*2-1;%变成极性码fori=1:nbdata1((i-1)/delta_T+1:i/delta_T)=datanrz(i);%将极性码变成对应的波形信号4end%将基带信号变换成对应波形信号fori=1:nbdata0((i-1)/delta_T+1:i/delta_T)=data(i);%将基带信号变成对应的波形信号end%串并转换,将奇偶位数据分开idata=datanrz(1:ml:(nb-1));%将奇偶位分开,因此间隔m1为2qdata=datanrz(2:ml:nb);%QPSK信号的调制fori=1:nb/2ich(2*((i-1)/delta_T+1):2*(i/delta_T))=idata(i);endforii=1:N/Ta(ii)=(1/sqrt(2))*cos(2*pi*fc*t(ii));endidata1=ich.*a;%奇数位数据与余弦函数相乘,得到一路的调制信号forj=1:nb/2qch(2*((j-1)/delta_T+1):2*(j/delta_T))=qdata(j);endforjj=1:N/Tb(jj)=(1/sqrt(2))*sin(2*pi*fc*t(jj));endqdata1=qch.*b;%偶数位数据与余弦函数相乘,得到另一路的调制信号st=idata1-qdata1;%%%%%%%%%%%%%%%%%%%%%%%%信道中SNR=0;%信噪比stn=awgn(st,SNR);%%%%%%%%%%%%%%%%%%%%%%%解调%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%设计滤波器%%%%%%%%[B,A]=butter(3,0.01,'low');[h1,w]=freqz(B,A);%%%%%%%%%%%%%%%%%%%%%%%%%%%%相干解调ist=stn.*a;p=length(ist)qst=stn.*(-b);%%%%%%%%%%%%%%%%%%%%滤波istl=filter(B,A,ist);qstl=filter(B,A,qst);%%%%%%%%%%%%%%%%%%%%%%%%%抽样判决%%%%%%%%%%fori=1:nb/2ifistl(2*(p/nb)*(i-1)+(1*(p/nb)))=05in(i)=1;elsein(i)=0;endifqstl(2*(p/nb)*(i-1)+(1*(p/nb)))=0qn(i)=1;elseqn(i)=0;endend%%%%%%%%%%%%%%%%%并串转换fori=1:nb/2y(2*i-1)=in(i);y(2*i)=qn(i);endfori=1:nbyy((i-1)/delta_T+1:i/delta_T)=y(i);enddatayNfigure;subplot(4,1,1)plot(data0*0.7),title('基带信号,4096维二进制序列,对应向量是data0');subplot(4,1,2)plot(data1*0.7),title('双极性信号,4096维双极性序列,对应向量是data1');subplot(4,1,3)plot(ich*0.7),title('I路数据,4096维双极性序列,对应向量是ich');subplot(4,1,4)plot(qch*0.7),title('Q路数据,4096维双极性序列,对应向量是qch');figure;subplot(4,1,1)plot(ist),title('相干解调I路信号,4096维且值为(-1,1)的序列,对应向量是ist');subplot(4,1,2)plot(qst),title('相干解调Q路信号,4096维且值为(-1,1)的序列,对应向量是qst');subplot(4,1,3)plot(istl),title('I路解调波形,4096维且值为(-1,1)的序列,对应向量是istl');subplot(4,1,4)plot(qstl),title('Q路解调波形,4096维且值为(-1,1)的序列,对应向量是qstl');%%%%%%%%%%%%%%%画图%%%%%%%%%%%%%%%%%%%%%%%%%%%figure;subplot(4,2,1);plot(data0*0.7),title('基带信号');subplot(4,2,2);psd(abs(fft(data0))),title('基带信号频谱');subplot(4,2,3);6plot(st),title('调制信号');subplot(4,2,4);psd(abs(fft(st))),title('调制信号频谱');subplot(4,2,5);plot(stn),title('stn信道波形');subplot(4,2,6);psd(abs(fft(stn))),title('经过高斯信道信号频谱');subplot(4,2,7);plot(yy*0.7),title('解调后的基带信号');subplot(4,2,8);psd(abs(fft(yy))),title('解调后的基带信号频谱');五、实验结果与分析78六、讨论、心得第一次使用MATLAB软件,在安装的过程中也遇到了一些问题,对于实验一QPSK调制与解调,老师在实验前就已经给出了代码,并对实验做了详细的讲解,通过结合老师的实验PPT,更深刻的理解了QPSK调制解调的原理及特性。通过对每条代码作用的思考,掌握了利用MATLAB编程实现调制及解调的方法和步骤。而且感受到了MATLAB软件的强大之处。七、辅导教师点评:教师签字:9太原理工大学实验报告二学院名称专业班级实验成绩学生姓名学号实验日期课程名称无线网络通信技术实验题目m序列产生及其特性实验一、实验目的和要求:通过本实验掌握m序列的产生方法、特性及应用。二、实验内容:1、按照课本P182图5-5,设计4阶m序列产生方法。并编写MATLAB程序,要求输出周期为15的m序列“000111101011001”2、编写程序验证m序列的相关性质,如平衡特性,游程分布特性,延位相加特性。要求至少验证一条性质。三、主要仪器设备Win1064位操作系统笔记本电脑及MATLABR2009a四、主要操作方法与实验步骤:1a2a3a4a移位时钟信号模2相加器序列输出图2-14阶移位寄存器序列生成器该序列生成器能够产生周期为15的0,1二值序列。设初始状态(a1,a2,a3,a4)=(1,0,0,0),则周期序列输出为:000111101011001。(1)按照图2-1,设计4阶m序列产生方法。(2)编写MATLAB程序并上机调试,最后要求输出周期为15的m序列“000111101011001”。(3)编写程序验证m序列的平衡特性:在m序列的一周期中,“1”的个数仅比“0”的个数多1,即“1”的个数为(N+1)/2,“0”的个数为(N-1)/2。(N为周期)程序代码:clearall;10a4=1;a3=0;a2=0;a1=0;aa=0;bb=0;s=[];fori=1:15b4=a4;b3=a3;b2=a2;b1=a1;a1=b2;a2=b3;a3=b4;a4=xor(b1,b4);ifb1==1s(i)=b1;aa=aa+1;elses(i)=0;bb=bb+1;endendfprintf('m序列为:')fori=1:15fprintf('%d',s(i))endfprintf('\n')fprintf('1的个数为:%d\n',aa)fprintf('0的个数为:%d\n',bb)五、实验结果与分析首先设置四个初始的状态值,再通过四个临时变量进行移位运算,将运算后结果保存在数组中,并在输出数组结果的同时统计序列中1和0的个数,最后输出统计结果,从而验证了m序列的平衡特性。六、讨论、心得在写这个实验之前,花费了一些时间来研究MATLAB的语法,在编写程序的过程中,虽然思路很明确,但也遇到了一些困难,对有些语法的理解不是明确,通过自己在网上查阅资料,解决了问题,经过不断的调试,达到了预期的输出结果,完成了题目的要求。通过这个程序的编写,感觉MATLAB和C语言在输出方面有些许的类似。11七、辅导教师点评:教师签字:12太原理工大学实验报告三学院名称专业班级实验成绩学生姓名学号实验日期课程名称无线网络通信技术实验题目信道编码一、实验目的和要求:1、学习并理解信道编码的目的、要求等基本概念2.学会使用MATLAB实现奇偶监督码的检错模拟与分析二、实验内容:1、输入任意行任意列的一个二进制序列,也即发送码组,再加上1位监督位,在接收端使用奇偶监督码中的偶数监督码进行检错。2、若发送码组为1100111,要求加上1位监督位,在接收端使用奇偶监督码中的偶数监督码进行检错。三、主要仪器设备Win1064位操作系统笔记本电脑及MATLABR2009a四、主要操作方法与实验步骤:程序代码:1、输入任意行任意列的一个二进制序列,也即发送码组,再加上1位监督位,在接收端使用奇偶监督码中的偶数监督码进行检错。clearall;m=input('请输入行数:');n=input('请输入列数:');s=randint(m,n);sfori=1:mnum=0;forj=1:nifs(i,j)==1num=num+1;endifrem(num,2)==0s(i,n+1)=0;elses(i,n+1)=1;end13endendfprintf('偶数监督码:\n')s2、若发送码组为1100111,要求加上1位监督位,在接收端使用奇偶监督码中的偶数监督码进行检错。clearall;s=[1100111];fprintf('发送码组为:')num=0;sfori=1:7ifs(i)==1num=num+1;endenda=rem(num,2);ifa==0s(8)=0;elses(8)=1;endfprintf('偶数校验:')s五、实验结果与分析1.2.14六、讨论、心得有了实验二的基础之后,对于实验三来说就简单的很多,感觉MATLAB的函数用起来很方便,仔细体会并理解了偶校验的实质和精髓。七.辅导教师点评:教师签字:15太原理工大学实验报告四学院名称专业班级实验成绩学生姓名学号实验日期课程名称无线网络通信技术实验题目基于Simulink的通信系统建模与仿真一、实验目的和要求:1、通过利用matlabsimu