王 永, 许梦姣, 张 毅, 蒋 青
(重庆邮电大学 通信与信息工程学院, 重庆 400065)
基于Web的通信系统教学平台的构建
王 永, 许梦姣, 张 毅, 蒋 青
(重庆邮电大学 通信与信息工程学院, 重庆 400065)
本文通过分析通信系统传统实践教学方式存在的问题,构建了一套基于Web的远程仿真实验平台,该平台采用Matlab Builder JA、JSP、Servlet和JavaScript技术开发。运行在远程服务器中的Matlab仿真程序通过Web接受可变的参数,并采用WebFigure技术直观的呈现仿真结果。该平台对客户端系统的软件和硬件环境不做要求,因此学生可以通过任何安装了标准浏览器的设备进行访问。
实践教学;Matlab Builder JA;远程实验
在通信工程专业的课程设置中,实践教学是不可或缺的重要环节,而对通信技术和链路进行仿真分析则是实践环节中最为常用的教学手段[1]。各大高校也通过开设基于仿真的实践课程,通过Matlab等仿真工具,帮助学生加深对通信技术中基本概念的理解,把握通信链路的结构,了解有关通信系统中的技术指标及改善系统性能的基本技术措施,为学生全面、系统地了解通信系统提供了重要的渠道。实践课程的优化,可以增强学生的感性认识,实现由课本知识向实际能力的转化,提高实践动手能力[2]。
在当前通信系统实践课程中,功能齐全的大型Matlab仿真系统已经成为实践教学和训练的有效方法和手段。但由于系统软件有限的生命周期,硬件成本和维护成本高、学习场地、学习时间无法灵活制定,以及硬件数量有限等原因的限制,使得传统教学方式存在着下列问题[3]:
(1)仿真工具运行环境单一。传统的课程实验基于单机,因此必须在所有开放实验室的PC终端上安装仿真工具,系统维护工作量大,难以保证环境一致性。此外,仿真工具支持的软硬件平台相对单一,仅能在安装有Windows和Linux等系统的PC上运行,无法支持大量的移动掌上终端,不利于学生随时随地运行仿真代码和查阅仿真数据。
(2)实践时间地点固定。多数高校的实验室并不能做到全天开放,学生使用相关设备需要按照课表安排或者提前预约。有限的实验室资源增加了学生参与实践所需花费的时间成本,同时也难以同学生自主学习的时间安排保持同步和一致。另外,学生在认识过程中,有大量“碎片化”的仿真需求,这些需求往往只需要花少量的时间,运行有限的几个仿真流程即可巩固认知,当前的实践课程模式显然无法满足此类需求[4]。
(3)实验设备维护工作量巨大。当前开放实验室机房存放大量的终端,当学生进行课堂实践后,需要将终端环境复位,以迎接下一批学生。虽然有相应系统软件的支持,但是在实际运行过程中,由于系统软硬件环境的复杂性,学生操作过程的随意性和一些误操作,导致课前、课后,维护人员都需要花费大量人力和时间来维护实验环境。
(4)难以进行数据分析。在当前的课堂实践课程中,每个学生在相对独立的环境中编写和调试代码,指导教师通过集中讲授和实时巡场的方式来提供指导。这种方式交互性强,灵活性高,能提供差异化的教学服务。但是,学生整体在实践中的表现,普遍存在的难点,以及学生的学习热点等统计数据仅能通过教师的主观感受来获得,导致数据不够客观,难以记录,难以量化,从而无法进行大数据统计分析。
鉴于上述现有的教学方式存在的诸多弊端,以及当前网络技术尤其是移动互联网技术的飞速发展,在现有课堂实践的基础上,将仿真实验虚拟化、网络化、Web化成为必然。
使用Matlab Builder JA和基于Java的Web后台技术,我们可以将调制解调、信源编译码、信道编译码、加解密编码、A/D转换等等通信关键技术移植到网络上[5]。学生在初学阶段,可以暂时不去考虑繁琐的代码细节,通过Web页面访问预置的仿真流程,在页面上填写仿真参数,通过后台实时运行,在浏览器中获取仿真结果。通过该平台,学生甚至可以在理论课的课堂上,迅速通过掌上终端运行仿真程序,从而在第一时间获取对通信技术的感性认识,消除陌生感和恐惧感。在学习的高级阶段,学生可以通过平台修改仿真代码,加入自己设计的算法,验证理论分析的结果。从而满足学生在不同学习阶段,随时随地的仿真需求[6]。
2.1平台的技术原理
创建远程实践平台所需要的核心技术为Matlab Builder JA和Java Web服务端技术。Matlab Builder JA技术允许开发者将Matlab代码编译为Java代码,创建基于Matlab的Java类,部署在服务器上接受远程调用。这种方式可以充分利用Matlab在数值计算和图像处理等工程技术领域的强大优势和广泛的资源,方便快捷的创建用于通信链路仿真的代码。而编译后的Java类则可以方便的被Java程序调用,从而利用Java在Web服务器端的强大技术优势和各种通用框架,快速地构建服务端逻辑,搭建Web服务器。平台的整体结构如图1所示,Servlet接受用户的仿真请求,并将请求分派给Matlab服务器的相应模块;获得返回值后,通过JSP页面展示给用户。
图1 平台整体框图
搭建平台的基本步骤如下:
1)创建Matlab代码
创建用于通信关键技术仿真的Matlab代码,对于已经开设仿真实践课程的高校,这部分代码是已有的,仅需将仿真函数的输出转化为WebFigure即可;
2)编译仿真代码
将仿真代码通过Matlab Builder JA工具编译为Java类,并打包为JAR文件;
3)编写服务端Servlet
在Web服务端编写Servlet,用于处理远程用户提供的参数,将网页格式的参数转换为符合Matlab函数调用要求的格式,并根据用户的POST信息,调用正确的仿真函数。同时,该Servlet还需要解析Matlab函数的仿真输出,将其中的数据和图像通过表格或者WebFigure的形式投射到输出页面上;
4)编写输入端JSP页面
提供用户访问仿真的入口,在此页面上还需提供各种参数的输入界面[7];
5)编写输出JSP端页面
编写输出页面,将Servlet输出的仿真结果合理且美观的呈现给用户;
6)编写服务端高级调用接口
在服务端通过Java代码,实现对用户输入、调用等行为的数据收集、处理并形成报表。提供用户替换内置仿真程序的接口,让学生有机会验证自己设计的算法并与预置算法进行对比[8]。
2.2平台实现的功能
该远程平台可以照顾不同基础学生的能力和潜力,既让所有学生有信心,又让学生感到有挑战性,并有助于教师掌握学生的学习过程。平台将实现如下几个方面的内容:
(1)平台将提供模拟调制系统、信源编码和信道编码、数字信号基带和频带传输、数字基带眼图等一系列经典实验的代码。对于初学者或基础较薄弱的同学,只需输入相关参数,即可得到仿真结果,无需输入冗长复杂的实验代码。
(2)平台同时提供标准接口,允许学生自主编写模块。在开发模式下,学生可以自主开发模块并入平台链路,观察运行结果,并与预置结果进行对比。锻炼了学生自己设计和独立完成实验项目的能力,符合现在开放性的管理教育模式和创新的新趋势。
(3)平台将提供学生实践行为的大数据分析,通过搜集学生在使用平台过程中的行为特征,结合大数据分析算法,平台可以向主讲教师提供学生在学习过程中的热点和难点,帮助教师调整教学计划。
2.3平台示例
本节通过数字基带信号的眼图仿真,展示了该系统的使用方法。用户通过手机浏览器访问Web服务器的眼图仿真模块,在参数页面填写仿真参数,包括码元速率、滚降系数和信噪比,如图2所示。用户提交参数后,服务器将在后台运行仿真,并将仿真结果返回用户的浏览器,如图3所示。通过该示例可见,手机端无需安装任何特殊软件,即可访问仿真平台。
图2 眼图参数设置页面截图
图3 眼图仿真输出页面截图
教学手段和环境是教学过程中重要的教学要素之一,为了解决传统教学方式存在的问题,我们搭建一套基于B/S架构的通信链路仿真平台。该平台融合了Web技术和Matlab仿真技术,旨在为教师和学生提供一种基于浏览器访问的、轻量级的教学演示手段和实验手段。通过该平台,理论课教师授课时可以随时通过浏览器运行仿真,直观地展示结果,增强授课效果;学生课后可以随时登录平台做实验,巩固知识,验证猜想;实验、实践课上,学生可以自主编写模块来并入平台链路,降低其学习难度,增强成就感,激发学习动力。因此,该平台的实施具有以下好处:
(1)便于进行碎片化学习。该平台对于用户的终端软硬件平台没有任何限制,只需能运行浏览器即可,降低了运行仿真的门槛和时间成本,为学生学习提供了极大的便利。学生甚至可以通过手机、平板等掌上设备来运行仿真,符合移动互联时代学生“碎片化”的学习习惯。移动网络使随时、随地运行仿真成为可能。
(2)提供更简便的操作体验。Web化的平台,将给学生带来更简便的操作体验,学生只需进行登录操作,就可以进行Matlab代码的仿真实验,该平台会将服务器反馈结果呈现在学生的操作界面上。
(3)有利于学生构建整体的知识体系。学生可以运行单模块的仿真,把握通信系统中的关键技术;也可以运行链路仿真,构造完整的知识体系,让学生很好地建立起对通信系统整体的概念,有利于学生从全局角度把握通信系统。
(4)具有极高的开放性和交互性。该平台对于进入平台学习的用户没有限制,只需注册账号或者用学生账号进行登录即可。平台根据用户的操作进行快速的反馈,并搜集学生的仿真行为进行后台分析。
(5)支持多用户。该平台可以支持多个用户访问,同时运行多个任务并将不同的结果呈现给不同的用户,实时性好,灵活性高,功能强大而稳定。
(6)实现远程实验教学。学生可以自主开发模块并入平台链路,观察运行结果。通过不同模式的切换,该平台在学生学习的不同阶段提供了难度不同的学习辅助手段,培养学习兴趣,增强学习效果,也将大大减少了对教育资源的消耗。
本文介绍的基于Web的虚拟仿真平台无论是在远程教学过程中,还是在校园数字化建设以及课程建设中,它的重要性都日益突出。虚拟仿真实践教学,加深了学生对课堂知识的理解,提高了学生的专业兴趣和创新思维,有助于培养与加强学生的工程实践能力。在实验平台上学生可以随时随地进行实践,而教师则可以便捷的进行过程和行为管理,为教学相长提供了理想途径。 同时该平台也降低了办学成本,提高了教学资源的利用率[9]。
[1] 樊昌信,曹丽娜.通信原理(第六版)[M]. 北京:国防工业出版社, 2006年9月.
[2] 刘宏波, 李丽华, 刘琴涛. .Matlab在通信原理课程教学中应用案例[J]. 北京:实验技术与管理, 2009,26(10): 87?89.
[3] 钟丽辉,吕丹桔.基于Matlab的通信原理实验教学改革[J]. 西安:电子设计工程, 2012(6): 76-78.
[4] 马冬梅, 朱正伟. 通信原理实验教学的改革与探索[J]. 实验室科学,2010(4): 17-19.
[5] 高博, 杨燕, 胡建军. 基于Matlab的QPSK系统设计仿真[J]. 北京:科学技术与工程, 2010, (5): 1124-1127.
[6] 杨达亮,卢子广,杭乃善. 电力电子技术实验改革与实践创新平台建设[J]. 北京:实验技术与管理, 2013,30(8):171-174.
[7] David Flanagan. JavaScript权威指南第6版[M]. 北京:机械工业出版社, 2012年10月.
[8] 杭海梅. 基于Web的网络化虚拟仪器技术及应用[J]. 苏州:企业技术开发, 2010, (11): 10-12.
[9] 田莹,卢金玉,刘宴涛.基于Matlab/Simulink的通信原理虚拟仿真实验教学方法研究[J]. 西安:现代电子技术,2015(14):28-30.
ConstructionofTeachingPlatformofCommunicationSystembasedonWeb
WANGYong,XUMeng-jiao,ZHANGYi,JIANGQing
(SchoolofCommunicationandInformationEngineering,ChongqingUniversityofPostsandTelecommunications,Chongqing400065,China)
Based on the problems existing in the practice teaching of communication system, a Web-based remote simulation system about communication experiment is developed, by using the tools of Matlab Builder JA, JSP, Servlet and JavaScript. By running parameters changeable Matlab program on the remote web server, the experimental result is simulated and displayed in the browser by WebFigure. The client is hardware and software independence, so that the students can visit the remote server by any device with standard web browser.
practice teaching; Matlab Builder JA; remote experiment
2016-10-09;
2017-01-09
基于网络的通信原理虚拟实验仿真平台的设计与实现(CIE-JG2015-0104)
王 永(1979-),男,硕士,讲师,主要从事无线移动通信系统和通信软件开发的教学和研究工作,E-mail:wangyong@cqupt.edu.cn
G434
A
1008-0686(2017)05-0142-04