m基于matlab的信息传输系统包括卷积编码,QPSK调制解调以及维特比译码

简介: m基于matlab的信息传输系统包括卷积编码,QPSK调制解调以及维特比译码

1.算法概述

    信息传输系统主要包括信号发送,信号传输模块,信号接收模块,其中信号发送包括信号的产生,信源的编码,信号的调制等模块,信号传输模块。主要设计了一个简单的信息传输系统,系统包括卷积编码,QPSK调制,信道传输,QPSK解调以及维特比译码。我们首先对系统做了简单的介绍,然后正对每个模块进行详细的理论分析,并利用MATLAB进行仿真与分析。得到了系统的误码率曲线和眼图变化图。最后我们以发送一个图像为例,来检测系统的性能。 整个系统的结构如下所示: 

1.png

   卷积编码的过程就是编码器状态沿着时间轴一级一级跳转的过程。维特比译码算法则是在网格图上搜索最可能的状态跳转路径的过程。维特比译码算法先读取t时刻的所有状态的幸存路径度量,再根据t+1时刻的输入,算出跳转路径的度量:根据这两类度量算出t+1时刻到状态S的所有路径的度量,比较选出一个具有较小路径度量的路径作为t+l时刻状态S的幸存路径。这样对每个状态都得到一个幸存路径,根据这些幸存路径和最终编码器所处的状态就可以得到编码器的状态转移路径即译码结果。维特比译码结果的可信度取决于幸存路径的深度和它的路径度量值。幸存路径越深、路径度量值越高,那么译出信息的可信度就越高。在译码过程中有些路径被抛弃了,有些路径被保留了下来。被以为是幸存路径的,也可能会在后面的搜索过程中被抛弃掉。这样随着搜索的深度不断加深,最终正确的路径将会被保留下来,所有的幸存路径都将收敛于一条路径。

   QPSK调制方法十分简单,调制器的基本工作过程是:输入的数字码序列经过数据预处理单元完成信号的信道编码,生成两路信号。这个序列再经过多级内插把序列采样速率提高到后面的复数乘法器的工作频率上,以便进行载频调制。使用多级内插滤波器的原因是可以通过调整内插因子,使系统支持的调制符号速率能在一定的范围内变化。

  QPSK接收机由一对共输入地相关器组成。这两个相关器分别提供本地产生地相干参考信号1(t)和2(t)。相关器接收信号x(t),相关器输出地x1和x2被用来与门限值0进行比较。如果x1>0,则判决同相信道地输出为符号1;如果x1<0 ,则判决同相信道的输出为符号0;类似地,如果正交通道也是如此判决输出。最后同相信道和正交信道输出这两个二进制数据序列被复加器合并,重新得到原始的二进制序列。

2.png
3.png

QPSK信号的表达式如式所示:

4.png

   其中T_s表示四进制符号的间隔,θ_i (i=1,2,3,4)为正弦载波的相位,有四种可能性信息。若θ_i=(i-1)*π/2,则θ_i为0,π/2,π,3π/2,此时初始相位为0的QPSK信号的矢量图如图(a)所示。

5.png

QPSK是目前最常用的一种卫星数字信号调制方式。

    优点:频谱利用率高、传输速率快、抗干扰能力强、频谱特性好等。

    在前面我们介绍了BPSK,它是用两个相位(0° 和 180°)来表示 0、1,而QPSK,我们可以将其看作是两个独立的BPSK,它是用四个相位(45°、135°、225°、315° )来表示数字信号(00、01、11、10)。

2.仿真效果预览
matlab2022a仿真

6.png
7.png
8.png

从误码率仿真结果可知,当SNR大于10db之后,误码率可以快速下降到10-3以下。

3.MATLAB部分代码预览

for i=1:Frame
        Information=(sign(randn(1,Number_symble))+1)/2;%产生随机信号作为测试信源       
        Information=[Information 0 0 0] ;              %为了满足仿真需要补三个0使其长度=length
        
        JuanJi_Information = JuanJi_Encode(Information,Length);  %卷积编码
         
        QPSKCode = QPSK_encode(JuanJi_Information, Length);      %QPSK调制
        
        a = 1:-0.1:0.1;
        p = 10*log10(a);
        
        error = zeros(10,10);
 
        for k = 1:length(p)
            Noise_add = wgn(1,2*Length,p(k));              
            Receive_information = QPSKCode + Noise_add; 
            
              DQPSKCode = QPSK_Decode(Receive_information, Length);         
              Decoder = Viterbi(DQPSKCode, Length);    
              
              error(i,k) = sum(abs(Decoder-Information));
        end
end
 
%眼图仿真
eyediagram(Information,2)
eyediagram(JuanJi_Information,2);
eyediagram(QPSKCode,2);
eyediagram(Receive_information,2);
eyediagram(DQPSKCode,2);
eyediagram(Decoder,2);
 
Number_error = zeros(1,10);
for i = 1:10
    for j = 1:100
        Number_error(i) = Number_error(i) + error(j,i);
    end
end
x = 1:10;
plot(x,Number_error./Number_symble,'r-*');
xlabel('Eb/N0')
ylabel('Pe')
grid on  
01-24M
相关文章
|
9天前
|
资源调度 监控 算法
基于扩频解扩+LDPC编译码的QPSK图传通信系统matlab误码率仿真,扩频参数可设置
该通信系统主要用于高质量图像传输,如无人机、视频监控等场景。系统采用QPSK调制解调、扩频技术和LDPC译码,确保复杂电磁环境下的稳定性和清晰度。MATLAB仿真(2022a)验证了算法效果,核心程序包括信道编码、调制、扩频及解调等步骤,通过AWGN信道测试不同SNR下的性能表现。
34 6
基于扩频解扩+LDPC编译码的QPSK图传通信系统matlab误码率仿真,扩频参数可设置
|
14天前
|
监控 算法 数据安全/隐私保护
基于扩频解扩+turbo译码的64QAM图传通信系统matlab误码率仿真,扩频参数可设置
该通信系统基于MATLAB 2022a仿真,适用于高要求的图像传输场景(如无人机、视频监控等),采用64QAM调制解调、扩频技术和Turbo译码提高抗干扰能力。发射端包括图像源、64QAM调制器、扩频器等;接收端则有解扩器、64QAM解调器和Turbo译码器等。核心程序实现图像传输的编码、调制、信道传输及解码,确保图像质量和传输可靠性。
47 16
|
13天前
|
编解码 算法 数据安全/隐私保护
基于BP译码的LDPC误码率matlab仿真,分析不同码长,码率,迭代次数以及信道类型对译码性能的影响
本内容介绍基于MATLAB 2022a的低密度奇偶校验码(LDPC)仿真,展示了完整的无水印仿真结果。LDPC是一种逼近香农限的信道编码技术,广泛应用于现代通信系统。BP译码算法通过Tanner图上的消息传递实现高效译码。仿真程序涵盖了不同Eb/N0下的误码率计算,并分析了码长、码率、迭代次数和信道类型对译码性能的影响。核心代码实现了LDPC编码、BPSK调制、高斯信道传输及BP译码过程,最终绘制误码率曲线并保存数据。 字符数:239
56 5
|
3月前
|
算法 5G 数据安全/隐私保护
MIMO系统中差分空间调制解调matlab误码率仿真
本项目展示了一种基于Matlab 2022a的差分空间调制(Differential Space Modulation, DMS)算法。DMS是一种应用于MIMO通信系统的信号传输技术,通过空间域的不同天线传输符号序列,并利用差分编码进行解调。项目包括算法运行效果图预览、核心代码及详细中文注释、理论概述等内容。在发送端,每次仅激活一个天线发送符号;在接收端,通过差分解调估计符号和天线选择。DMS在快速衰落信道中表现出色,尤其适用于高速移动和卫星通信系统。
|
3月前
|
编解码 算法 数据安全/隐私保护
基于BP译码的LDPC误码率matlab仿真,分析码长,码率,信道对译码性能的影响,对比卷积码,turbo码以及BCH码
本程序系统基于BP译码的LDPC误码率MATLAB仿真,分析不同码长、码率、信道对译码性能的影响,并与卷积码、Turbo码及BCH编译码进行对比。升级版增加了更多码长、码率和信道的测试,展示了LDPC码的优越性能。LDPC码由Gallager在1963年提出,具有低复杂度、可并行译码等优点,近年来成为信道编码研究的热点。程序在MATLAB 2022a上运行,仿真结果无水印。
64 0
|
5月前
|
算法 数据安全/隐私保护
基于LS算法的OFDM+QPSK系统信道估计均衡matlab性能仿真
基于MATLAB 2022a的仿真展示了OFDM+QPSK系统中最小二乘(LS)算法的信道估计与均衡效果。OFDM利用多个低速率子载波提高频谱效率,通过循环前缀克服多径衰落。LS算法依据导频符号估计信道参数,进而设计均衡器以恢复数据符号。核心程序实现了OFDM信号处理流程,包括加性高斯白噪声的加入、保护间隔去除、快速傅立叶变换及信道估计与均衡等步骤,并最终计算误码率,验证了算法的有效性。
164 2
|
5月前
|
算法 数据安全/隐私保护
基于星座图整形方法的QAM调制解调系统MATLAB误码率仿真,对比16,32,64,256四种QAM调制方式
本MATLAB 2022a仿真展示了不同QAM阶数下的星座图及误码率性能,通过星座图整形技术优化了系统性能。该技术利用非均匀分布的星座点提高功率效率,并通过合理布局增强抗干扰能力。随着QAM阶数增加,数据传输速率提升,但对信道质量要求也更高。核心程序实现了从比特生成到QAM映射、功率归一化、加噪及解调的全过程,并评估了系统误码率。
102 0
|
5月前
|
安全
【2023高教社杯】D题 圈养湖羊的空间利用率 问题分析、数学模型及MATLAB代码
本文介绍了2023年高教社杯数学建模竞赛D题的圈养湖羊空间利用率问题,包括问题分析、数学模型建立和MATLAB代码实现,旨在优化养殖场的生产计划和空间利用效率。
248 6
【2023高教社杯】D题 圈养湖羊的空间利用率 问题分析、数学模型及MATLAB代码
|
5月前
|
存储 算法 搜索推荐
【2022年华为杯数学建模】B题 方形件组批优化问题 方案及MATLAB代码实现
本文提供了2022年华为杯数学建模竞赛B题的详细方案和MATLAB代码实现,包括方形件组批优化问题和排样优化问题,以及相关数学模型的建立和求解方法。
147 3
【2022年华为杯数学建模】B题 方形件组批优化问题 方案及MATLAB代码实现
|
5月前
|
数据采集 存储 移动开发
【2023五一杯数学建模】 B题 快递需求分析问题 建模方案及MATLAB实现代码
本文介绍了2023年五一杯数学建模竞赛B题的解题方法,详细阐述了如何通过数学建模和MATLAB编程来分析快递需求、预测运输数量、优化运输成本,并估计固定和非固定需求,提供了完整的建模方案和代码实现。
117 0
【2023五一杯数学建模】 B题 快递需求分析问题 建模方案及MATLAB实现代码