基于python的信号集问题
题目
借助计算机编程分别给出下图所示的两个信号集的功率效率(BER与Eb/N0的关系),并通过比较其功率效率解释编码负增益现象。
原理
由于移动通信存在干扰和衰落,在信号传输过程中将出现差错,故对数字信号必须采用纠、检错技术,即纠、检错编码技术,以增强数据在信道中传输时抵御各种干扰的能力,提高系统的可靠性。对要在信道中传送的数字信号进行的纠、检错编码就是信道编码。
信道编码的基本思想是通过引入可控制的冗余比特,使信息序列的各码元和添加的冗余码元之间存在相关性。在接收端信道译码器根据这种相关性对接收到的序列进行检查,从中发现错误或进行纠错。对于相同比特的符号,则通过增大最小汉明距离达到信道编码的效果。
当信道条件十分恶劣时,就会出现编码负增益的现象,在同数量比特符号的条件下,采用信道编码的效果更差,即采用信道编码优化方案后,误比特率下降了,因为未经过信道编码优化的方案具有更大的最大汉明距离,而此时能分辨出两个最大汉明距离的符号才是使系统达到最优的方案。通过比较不同功率效率,比较仿真结果,我们应该能看到一个相交点。
工具选择
本次课设的目标是通过仿真结果探究信道编码在实际通信系统中的作用,所以仿真的精度和准度尤其重要,而精准度体现在仿真过程的模拟要和实际过程尽可能的接近。
于是通过前期的调研,选用的工具集在matlab和python间徘徊,其中matlab的封装性较好,产生高斯白噪声以及信号都有封装完全的函数,精度也可以通过控制采样点的数量来控制,但是由于封装性太好,无法看到内部的实现原理,并且限制了实际编程过程中的自由发挥。
Python是一种面向对象的、动态的程序设计语言,具有非常简洁而清晰的语法,既可以用于快速开发程序脚本,也可以用于开发大规模的软件,特别适合于完成各种高层任务。
随着NumPy、SciPy、matplotlib、ETS等众多程序库的开发,Python越来越适合于做科学计算。与科学计算领域最流行的商业软件MATLAB相比,Python是一门真正的通用程序设计语言,比MATLAB所采用的脚本语言的应用范围更广泛,有更多程序库的支持,适用于Windows和Linux等多种平台,完全免费并且开放源码。虽然MATLAB中的某些高级功能目前还无法替代,但是对于基础性、前瞻性的科研工作和应用系统的开发,完全可以用Python来完成。
为了编程的自由可控,也为了能更好地学习掌握整个系统的工作原理,我选择使用python进行仿真,从零开始设计整个通信系统。
步骤
第一步:确定采样频率fm>2fs 。以下为采样需满足的条件:
以下为一个成功采样频率的实例,学会如何用数字形式表示原来的模拟信号(将t写成n/f): 同时对数字周期建立一个概念。
第二步:将模拟信号写成数字信号的形式,确定采样的点数,即窗口N的大小,这里要满足1/(fm/N) > T,fm为采样频率,N为窗口大小,T为信号的周期,也可以改写成N>N0,N0为数字信号的周期(如上例N0为64,N为128)。
N的选取很重要,本例N取256时有一个频谱峰值就弱化成两个小峰了,可以在信号后面补256个0再做512点的fft。
参考文献
- 基于物联网数据仿真建模的关键方法研究及其应用(北京邮电大学·倪鹏)
- 基于知识图谱的基金问答系统设计与实现(中南财经政法大学·侯静怡)
- 基于知识图谱的问答系统设计与实现(江苏科技大学·高顺峰)
- 基于知识图谱的影视知识问答系统研究与实现(新疆大学·王文磊)
- 一种射频信号源的软件设计(电子科技大学·颜浩洋)
- 基于知识图谱的视觉问答系统设计与实现(河北科技大学·毛金莹)
- 基于深度学习的智能问答系统的研究与实现(沈阳师范大学·卓越)
- 基于网络爬虫的信息采集分类系统设计与实现(厦门大学·周茜)
- 基于Web的信息发布与信息交流平台的设计与实现(吉林大学·许昭霞)
- 中学python课程知识图谱构建及应用研究(华中师范大学·黄健)
- 基于增量反馈和自适应机制的主题爬虫系统的设计与实现(南京理工大学·王斐)
- 基于B/S结构的股票交易管理系统的设计与实现(吉林大学·钟辉斌)
- 文本综合处理平台的研究与实现(济南大学·王孟孟)
- 煤矿行业智能问答系统设计与实现(河北工程大学·张淑霞)
- 基于知识图谱的影视知识问答系统研究与实现(新疆大学·王文磊)
本文内容包括但不限于文字、数据、图表及超链接等)均来源于该信息及资料的相关主题。发布者:代码导航 ,原文地址:https://bishedaima.com/yuanma/35481.html