实验名称:QPSK调制与解调一、实验目的:1、学会QPSK调制与解调系统的构成2、学会QPSK调制与解调系统的各模块的构建3、学会误码率与误符号率的统计方法以及Matlab算法二、实验原理:1、QPSK:四进制绝对相移键控,也称为多进制数字相位调制,利用载波的四种不同相位状态来表征数字信息的调制方式。2、QPSK的调制方法有正交调制方式(双路二相调制合成法或直接调相法)、相位选择法、插入脉冲法。调制与解调系统的构成:3、各模块的实现方法:0,1序列产生器QPSK映射AWGN产生器AWGN产生器QPSK反映射比较器误比特统计误符号统计判决器IsQscnsnIrQrbˆb(1)、信源的产生:使用randint(m,n,2)函数产生一个m行n列的随机二进制数列(2)、QPSK符号映射:将产生的0,1比特流按照QPSK调制方式进行映射,本实验采用π/4QPSK的调制方式,图为:(3)、AWGN信号产生:AWGN产生器就是产生满足均值为0,方差为1的高斯白噪声。实验中使用randn(m,n)函数产生一个m行n列的高斯噪声序列。(4)、信号幅度控制:根据AWGN信道模型,接收信号可以分别表示为α就是当噪声功率归一化为1(0均值,方差为1)时,根据信噪比关系而计算出来的信号平均幅度00100111IIIrsnQQQrsn22210log10^10ssnnvSNRSNRvsqrtvv(5)、QPSK反映射及判决:对接收到的信号在4种可能的四种信号向量[(1,0),(0,1),(-1,0),(0,-1)]上投影(即进行点积)。投影最大的值所对应的信号向量就是所发送信号的符号值,然后恢复出比特流(6)、误码率及误符号率统计:误码率:将检测出来的比特流和发送的原始比特流进行比较,统计出出现错误的比特数误符号率:将检测出来的比特流变成两组,构成符号,和发送端符号映射后的符号流进行比较,只要符号中任错一bit,就算该符号出错。统计出现错误的符号数三、实验内容:1、建立QPSK的Matlab仿真模型2、对仿真模型中各个组成部分进行函数设计和功能仿真randn('seed',10);mark=randn(1,LENGTH);subplot(2,2,1);plot(mark);title('watermarc:Gaussiannoise');3、成型滤波器的设计4、带限信道中的QPSK调制解调四、实验步骤:1、开机,设置好本次仿真目录2、进入matlab环境,设置工作路径和目录3、按照实验方法,一步步进行QPSK各个模块的设计sv(1)、Bit流产生:globalpp=0.5;产生随机二进制序列(2)、QPSK符号映射:[m_qpsk1,m_qpsk2]=qpsk_modulation(s_qpsk);figure(2),判断所在的相限。(3)、AWGN噪声产生:编写实部部信号和虚部信号的幅值语句。(4)、产生QPSK调制后+AWGN的符号流:通过平方根升余弦滤波器滤波得到QPSK实部输出信号的10个周期。(5)、反映射和判决:plot(10*log10(abs(power_qpsk(1:(length(power_qpsk)+1)/2)))-max(10*log10(abs(power_qpsk(1:(length(power_qpsk)+1)/2)))))(6)、SER和BER统计,曲线绘制,分析:把数据通过循环控制分别求出错误的bit数和符号数,与总的bit数和符号数相比,得出BER和SER,再与理论值比较。五、出现问题及解决方案qpsk_modulation函数调用出现错误,修改后没有问题。六、实验心得通过研究对QPSK的调制和解调原理,以及利用MATLAB对其调制和解调进行了编程和编译仿真,得到的结论和理论上是一致的。