1、实验报告模板 无线通信基姓名: 李 玓 学号: 13211108 同组成员: 刘传久 指导教师: 徐少毅 时间: 2016年4月 础课程研究性学习手册 目 录一实验任务 11. subMOD子程序 12、subPulseShaping和subMatchFilter子程序 23、subDemod子程序 2 4、实验结果验证 2二理论分析 3三实验步骤 4四结论及分析 7五遇到的问题及解决方法 10六扩展问题 11七. 心得 12八参考文献 12附录:程序 12一实验任务 本实验主程序的前面板是完整的,程序结构和大部分的子程序也都已经提供,需要自己完成的只有subMOD、subPulseShapi
2、ng、subMatchFilter、subDemod这四个子程序。需要按照下面的步骤正确的完成这四个子程序,在完成实验后上交完整的程序以及实验报告。1. subMOD子程序这个子程序的作用是实现BPSK或QPSK的基带调制,即将输入的信源bit序列映射到符号域,输出是复数形式的符号。以BPSK为例,BPSK把一个信息位表示成一个符号,即映射出的符号有两种可能的相位。在数学上,每比特调制信号表示为: (4.1) 式中,是基带调制的频率,是b=0或1时的相位偏移。如果我们选择的两个相位分别是/2和3/2的话,可以将调制信号表示为: (4.2) 对应前面所说的将每一个bit映射成一个复数符号,可以很
3、容易的看出BPSK的映射关系为:将信源0映射成0+i,信源1映射成0-i。 当调制方式为QPSK时,原理与BPSK类似。不同的是QPSK是将信源的2个bit映射成一个复数符号,因此有四种可能的表示符号。例如我们选择相位偏移分别为/4、3/4、5/4和7/4,则对应的复数符号分别为0.707 + 0.707i、-0.707 + 0.707i、0.707 0.707i和-0.707- 0.707i。因此你在subMOD子程序中需要做的就是把输入的信源bit数据流映射到符号域上。例如输入bit数据为11011000,调制方式为QPSK的话,则输出的符号应该为-0.707-0.707i、0.707-0
4、.707i、-0.707+0.707i和0.707+0.707i。2、subPulseShaping和subMatchFilter子程序这两个子程序的功能类似,分别是实现发端的脉冲成型滤波和收端的匹配滤波。信号通过滤波器就相当于信号和滤波器的时域脉冲响应做卷积。以发端为例,你首先需要做的就是根据设置的滤波器类型、滤波器长度等输入参数生成脉冲成型滤波器系数。然后根据设置的上采样率对输入符号进行上采样。最后将上采样后的信号与生成的滤波器系数做卷积。得到的便是成型滤波后的输出信号。接收端的实现过程与发射端类似,主要区别在于接收信号已经在发端进行了上采样,因此在收端匹配滤波前不再需要上采样操作。3、s
5、ubDemod子程序subDemod子程序实现对接收符号的解映射,即发送端subMOD子程序的逆过程。子程序的输入是同步后的数据符号,输出是解调后的bit数据。如果是BPSK调制,你需要将每个输入的数据符号解映射成一位bit数据;如果是QPSK调制,则需要将每个输入符号解映射成两位bit数据。要注意在发送端进行映射的图谱要与接收端解映射的图谱对应,这样才能够正确的解调出数据。4、实验结果验证 完成以上几个子程序后,可以通过运行主程序来验证编写的模块是否正确。首先你需要在前面板上合理的设置各项参数,例如信源为文本并使用QPSK调制,你还可以通过信噪比范围参数来设置所计算信噪比的最大值。之后运行程
6、序,如果程序正确的话你可以观察到星座图、误码率数据、接收端恢复的文本等输出信息。然后你可以改变参数,验证在不同参数下程序是否能够正确运行,并对比运行的结果有何异同。最后按照要求完成实验报告。2理论分析本实验的程序设计流程如图1所示。图1程序设计流程图在程序中首先要完成对信源的生成和调制方式的选择,再按照所选的调制方式对信源进行调制;然后对调制后的信号添加噪声;之后对信号进行数字解调来恢复信源信息;最后对比解调后的数据和原始的信源数据,计算误码率。本次试验的主要任务有四项基本的子程序: 1、第一个程序subMOD 它的作用是实现BPSK或QPSK的基带调制,即将输入的信源bit序列映射到符号域,
7、输出是复数形式的符号。在构造程序时,需要分辨BPSK和QPSK两种调制方式,在不同的条件下执行不同的程序,所以要用到条件框进行两种调制方式的判断。并且有控制键对调制方式进行控制。其次,程序允许多个输入,多个输出,因此需要用到循环进行多次调制,还需要计算出输入的个数以便控制调制的次数。 2、第二、三个程序subPulseShaping和subMatchFilter子程序 (1) 这两个程序作用类似,均为滤波器。首先是发端的脉冲成型滤波器,在通信系统中,脉冲成形滤波器还用于无线通信信道得两个重要条件: 1)产生限带信道。(2)降低由信号多径反射引起的符间干扰(ISI)。这两个条件都可以通过作用于每
8、个符号的脉冲成形滤波器来实现。实际上,下图所示的sync脉冲满足了上述两个要求,因为它仅占用一小部分频域,但却有效地利用了频域,还由于它对调制信号的每一个符号周期会产生一种加窗效应。 脉冲成形滤波器首先要使波形平滑,即使脉冲突变的上升沿和下降沿平缓,频带外的频率衰减加快。 3、第四个程序则为接收端的解码程序subDemod子程序 该程序为第一步编码程序的逆过程。同样的,我们也需要设计程序控制调至类型,并设计算法构造0+i、0-i到0、1,0.707+0.707i、-0.707+0.707i、0.707-0.707i、-0.707-0.707i到00、01、10、11的映射。三实验步骤1、按照要
9、求正确连接程序控件;2、调试程序,改变参数; QPSK调制: BPSK调制: SubPulseShaping(脉冲成形): subMatchFilter(匹配滤波): QPSK解调: BPSK解调:四结论及分析BSPK发端: 收端:改变参数:Samples per sympol (2改为8) QPSK五遇到的问题及解决方法:(1)怎样实现串并变换问题 解决方法:抽取一维数组”,抽取之后可以得到n,n-2,n-4和n-1,n-3,n-5之类的2个序列,直接拿这两个序列就行了。(2)调制类型和条件结构的条件进行相连的时候出现了红色的叉叉,如何解决? 解决方法:subMOD里面是蓝色的,直接连接就行
10、了,可是subDemod里面就是品红色的,连不上。查资料发现红色的是已捆绑的参数,需要使用按名称解除捆绑这个小工具来解除捆绑,就可以得到需要的参数。(3)脉冲成型和匹配滤波的问题 解决方法:实验指导书暗示我是用一些参数去控制滤波器生成一个滤波器的冲激响应然后与升采样之后的输入信号进行卷积运算,可是我找遍了LabVIEW中内置的所有滤波器,就是找不到一个我需要的模型;经过助教讲课后,我从助教共享的邮箱里下载控件包后安装到电脑上,终于从里面找到了自己需要的滤波器工具,成功实现了脉冲成型和匹配滤波。六扩展问题1、 Samples per symbol和Oversample factor这两个参数的物
11、理意义是什么,它们的取值与调制方式之间有什么关系? 答:由于要对信号进行最佳接收,一定要在信号的频率之上很高的频率进行采样,尽可能多的采集到样点,这样才能实现卷积之后的信号精确度较高,实现接收的效果和误码率的下降。Samples per symbol就是一个码元周期之内采样的次数,越多越好,但是处理器能力有限处理速度就慢了很多。Oversample factor是要想实现Samples per symbol所需的采样点的次数,还需要额外进行插值的数量,也是按照奈奎斯特脉冲函数的方式进行插值计算的,所以精度就会比以前更高。2、为什么要在发送端和接收端分别添加脉冲成型滤波器和匹配滤波器,它们有什么作用? 答:脉冲成型滤波器是用来减小码间串扰的,一般采用升余弦滚降特性。而匹配滤波器则是则是使得采样点信噪比最大的滤波器。七. 心得这是我们第二次使用Labview完成实验。由于有了一些经验,实验过程虽然依旧艰辛,依旧是一步一步完成了。非常感谢实验过程中老师和众多大神们给予我们的帮助。通过这一次实验,我们对labview的应用有了进一步的熟悉,从安装到使用,每一步都是照着资料一点一点弄懂,虽然花费了很多精力,但是学到了很多新的东西,非常值得,也很有成就感。还有很多需要改善的地方,在今后的实验中我们会多多注意。最后谢谢老师的悉心指导!八参考文献 实验指导书 网上文档附录:程序