admin 管理员组

文章数量: 1086019


2024年4月30日发(作者:彩票网站大全排行下载)

I

互联网+通信

nternet Communication

基于Python的在线通信原理仿真实验平台

文|王一楠 韦峻峰(通讯作者)

【摘要】 《通信原理》是一门理论性很强的课程,传统教学方式学生对复杂抽象的知识掌握程度有限。针对教材

中难以展示信号传输过程中时域波形和频谱结构,通过实验操作需要花费较多的时间且不易调整信号的时、频参数,

提出了以二进制数字调制系统为例,采用了Python语言实现了在线通信原理仿真实验平台。该平台前后端使用了

Django框架和Sqlite数据库,仿真部分采用NumPy、Scipy库,并将结果用Matplotlib渲染成图片,可以部署于互联

网或局域网。该平台可提供多个用户账户,可随时修改仿真参数、实时观察实验结果,是传统实验教学的有力补充。

【关键字】 在线通信仿真 数字调制系统 Django Python

引言:

《通信原理》不仅是通信专业和电子信息工程类

专业的学生的专业必修课,也是网络工程、物联网工

程等专业的重要学科。该课程与前期的基础课程联系

紧密,又是后续课程的重要基础。因此学好这门课对

学生进行更深层次的学习研究有着重要影响。

该门课程综合了电路、高等数学、随机过程、信

号与系统的相关知识,理论性强,抽象概念较多,导

致了学生学习起来比较困难,基础概念不易理解。针

对以上存在的问题,由Python作为前后端而开发出来

的网站式数字带通虚拟仿真实验在教学中具有重要的

意义。该平台采用Web设计风格,操作简单,可通过

点击框图修改仿真参数,快速直观地看到仿真结果,

帮助学生理解和掌握课程中的重要概念和知识点,激

发学生的学习兴趣,提升学生的学习质量。

[1-3]

一、现有的通信原理课程虚拟仿真实验教学方案

(一)基于实验箱的实验教学

目前许多学校采用实验箱进行通信原理实验教

学。该方式要求学生根据模块图或电路图进行线路连

接,使用示波器、计算机或频率分析仪等设备观察各

个信号接口处的波形或频谱。这种教学方式的优点是

可以锻炼学生的实际操作动手能力,但可能存在设备

成本和维护成本较高、连接线路耗时较长、参数调整

不便、做实验会受到时间地点的限制等问题。

[4]

(二) 基于Matlab或Simulink的仿真实验教学

Matlab是科学研究和教育行业常用的数值仿真软

件,其软件经历了多年演化功能丰富,对计算机硬件

要求较高,且许可证费用高昂。使用Matlab编写程序

需要一定的编程基础,学生熟练掌握编程之前可能会

遇到较多的问题,因而更适合于在高年级本科生或研

究生中使用。

Simulink是Matlab中的一种可视化仿真工具,它

提供图形编辑器、可自定义的模块库以及求解器,能

够进行动态系统建模和仿真,常被用于通信仿真的教

学中。

[5-7]

(三) 基于Python的仿真实验教学

Python是一种面向对象的、解释型的、通用的、

开源的脚本编程语言。程序编写简洁快速,代码的开

发效率较高。良好的图形功能和强大的后台Python 标

准库和第三库众多,功能强大,既可以开发小工具,

也可以开发企业级应用。因此,适用于大学通信原理

教学仿真实验平台的开发。

[8-9]

二、仿真实验平台的设计与实现

为了更加的方便学生进行通信仿真实验,方便学

生的操作,尝试开发出了基于Python的在线通信原理

仿真实验平台,该平台的使用学生只需要登录网站的

首页,输入仿真的信号以及信号的相关参数,就可以

得到相应的仿真结果。如需参数的更改,则直接对参

数修改,再次进行仿真即可,操作方便快捷。大大方

便了学生的操作,节省了师生的时间。

(一)平台架构

图 1 通信原理仿真平台主要功能与组成

王一楠(1996-),男,汉族,硕士研究生,研究方向:语音识别;

韦峻峰(1984-),男,汉族,工程师,研究方向:信号处理。

15

Copyright©博看网 . All Rights Reserved.

I

互联网+通信

nternet Communication

图2 主界面

平台由一个主界面构成,所有的仿真实验皆可

在该主界面上完成。主界面由四个实验模块组成,四

个固定的实验模块涵盖了通信原理数字调制的四种键

控,分别是二进制振幅键控(2ASK)、二进制频移键控

(2FSK)、二进制相移键控(2PSK)等,二进制差分相移

键控(2DPSK)。四大键控按钮对应四个子界面,每

个子界面相互独立,可以在子界面中输入相应的参数,

然后进行实验仿真。实验平台相应框图如图1所示。

[10]

(二)平台的功能模块

结合通信原理的实验课程,需要安装用于科学

计算的 NumPy、SciPy 扩展库和实现绘图与可视化

的Matplotlib 扩展库。数值计算库 NumPy 以数组为数

据处理对象。SciPy是数学、科学和工程计算包,在

NumPy 基础上添加了科学计算所需要的各种工具,

如:线性方程组求解、特征值和特征向量求解等与

线性代数相关问题使用的 LAPACK 库、快速傅里叶

变换使用的 FFTPACK 库、常微分方程求解使用的

ODEPACK 库、 非线性方程组求解和最小值求解等使

用的 MINPACK 库等。SciPy 中signal 模块提供了信号

处理方面的很多函数,包括卷积运算、滤波及滤波器

设计等方面的内容。本平台的涉及用到了signal模块

中的firwin、lfilter、lfilter_zi、freqz,从而对信号进行

处理。

(三)平台的主界面

数字带通虚拟仿真实验是《通信原理》中的重要

章节,包含二进制振幅键控(2ASK)、二进制频移键控

(2FSK)、二进制相移键控(2PSK)等,二进制差分相移

键控(2DPSK)。仿真平台实现了这四种调制解调方

式的在线仿真,在这四个模块下分别可以实现信源、

载波、信道、解调、抽判的参数调整和波形查看。平

台首页展示如图2所示。

顶部提供用户注册和登录功能,在其下方有四个

按钮,对应的是四种数字带通键控方式。默认使用振

幅键控(ASK)方式进行仿真。发送文本框内可填入

文本作为信源,经编码、调制、信道传输、解调、抽

样判决等模块的仿真计算后,将在接收文本框中显示

出接收端得到的文本信息。

当点击不同的调制方式时,下方框图将变更为所

选制式的框图。点击框图中某个环节,在框图之下的

参数列表将显示该环节相关的仿真参数。图中展示了

信源{

a

n

}部分的参数。学生可根据需要修改码元速率,

而后在右侧“波形展示”板块看到不同码元速率下

s

(

t

)

波形的变化,整体操作简单直观。

[11]

(四)仿真教学流程

选中2FSK(二进制频移键控)按钮,输入“大家好”,

点击“调制解调原理框图”中的{

a

n

},在“参数列表”

可见默认码元速率为1600。使用“查看信源信号”按

钮可以看到已输入的文字作为信源的实际波形,如图

3所示。在“调制解调原理框图”中点击

n

(

t

)可以修改

信道中的噪声幅度,并可使用“信道波形”按钮观察

波形被噪声干扰的情况。在接收端使用了相干解调,

其时域波形、频谱、抽样判决门限和判决结均可以用

图形方式展现出来,使学生在仿真实验初期能够先建

立系统各个环节的参数对通信系统的影响。以此为基

础,对于部分学有余力的学生还可以结合平台,讲解

其中模块的具体实现。

将白噪声幅度从0调到0.5,判决门限设为0.25,

此时出现误码,误码率为2%,仿真结果由“大家好”

变为“大家

”。抽样与判决结果如图4所示,误码

结果如图5所示。调整判决门限,将0.25调整到0.1,

此时误码率变为0,输出为“大家好”,正确的抽样

与判决波形如图6所示。

16

Copyright©博看网 . All Rights Reserved.

I

互联网+通信

nternet Communication

图 3 “大家好”序列波形

图6 调整后的抽样与判决波形

(五)教学管理

学生的使用情况老师可以通过后台进行管理,老

师可以清晰地通过后端进行查询。如图7所示。

图7 后台管理系统

三、结束语

该仿真平台基于Python开发出来的仿真网站。针

对应用型本科院校通信原理教学问题,采用该系统与

理论教学相结合,简单明了地将可视化的仿真结果展

示在学生 面前。由于该系统操作简单,上手快,适合

初学者使用等优点,大大提高了学生的实践能力和教

学质量,推动了应用型人才培养。此教学模式已在我

校通信工程、电子信息、网络工程(移动通信)、物联

网工程等专业试用和实践,取得了较好的效果,获得

了广大师生的一致好评。

[12]

作者单位:王一楠 韦峻峰 广西民族大学

参 考 文 献

[1]翟双,刘丽伟,王昕.《通信原理》实验教学改革与探索[J].才智,2019(29):13.

[2]肖力.基于Python的航空发动机仿真平台开发[J].计算机应用与软件,2021,38(06):9-13+38.

[3]杨丞.通信原理课程实验教学模式的研究与实践[J].教育教学论坛,2019(31):279-280.

[4]刘美玲,张志岩.通信原理实验箱数字信号源模块的改进设计[J].实验室科学,2019,22(03):87-92+98.

[5]田莹,卢金玉,刘宴涛.基于Matlab/Simulink的通信原理虚拟仿真实验教学方法研究[J]. 现代电子技术, 2015,(14).

[6]张鸣,李白萍.Matlab仿真在通信原理课程中的应用[J].实验技术与管理,2012(11):87-89.

[7]王志鹏,谢渝闽. 基于MATLAB的信号与系统课程综合演示平台[J]. 南阳师范学院学报,2020, 19(3): 71

74.

[8]张若愚. Python科学计算[M]. 北京:清华大学出版社,2016.

[9]赵广辉. 面向新工科的Python程序设计交叉融合案例教学[J]. 计算机教育,2017(8): 23

27.

[10]陈娟,陈雯,石飞,等.基于Python的信号与系统实验教学改革与实践[J].实验技术与管理,2021,38(05):196-200.

[11]尹园威,马俊涛,史林,等.基于MatLab的IIR数字滤波器设计与应用[J].中国现代教育装备,2021,(21):31-33+42.

[12] 阎群,李擎,崔家瑞,等.大学生解决复杂工程问题能力的培养[J]. 实验技术与管理,2017, 34(11): 178

181, 186.

图4 抽样与判决波形

图5 误码图

17

Copyright©博看网 . All Rights Reserved.


本文标签: 实验 学生 平台 原理 课程