在线虚拟仿真实验平台的构建与实践

    马汉达 朱威汉

    

    

    

    摘 要:针对计算机硬件类课程实验设备昂贵和实验室开放的难题,特别是疫情期间计算机硬件类实验无法开展的情况,作者提出了利用信息技术构建在线虚拟仿真实验平台的方法。文章介绍了在线虚拟实验平台的系统架构、组成和优点,将在线虚拟实验平台应用到数字逻辑实验教学中,构建了虚实结合、线上线下混合式实验教学模式,实现了实验室的深度开放,解决了疫情期间的计算机硬件类课的实验教学。

    关键词:在线虚拟实验;数字逻辑;实验教学

    中图分类号:TP393? ? ? ?文献标志码:B? ? ? ? ? 文章编号:1673-8454(2020)24-0084-04

    一、引言

    《数字逻辑》是计算机类专业重要的专业基础课程,实验对学生理解和掌握数字逻辑理论,提高学生的实践动手能力具有举足轻重的作用[1]。为了提高实验效率,《数字逻辑》课程实验方式大部分高校都从传统的典型实验转为FPGA实验,由于实验教学任务安排的集中性问题,使得部分学生无法充分理解实验的原理和方法,造成部分学生在规定的时间内无法完成实验任务的情况,同时很多学生想扩展学习,虽然实验室已经进行了预约开放,但是学生认为时间上还不是充分自由,仍然感到不方便。实验教学的开放和共享一直是教学实践追求的目标,开放有利于营造自主学习环境,共享有利于提高实验室资源的利用率[2]。

    《数字逻辑》的在线实验教学模式保留了传统模式的优点,克服传统模式的不足,通过教育部产学研合作项目的研究,使用虚拟现实、多媒体、人机交互、数据库和网络通讯等技术构建的在线虚拟实验平台是解决实验室开放和共享问题最有效的手段。通过开发在线虚拟实验平台,学生利用互联网可以在任何时间、任何地点、进行任何种类的实验(4A:Anyone、Anytime、Anywhere、Anything),突破了传统实验教学的时空约束,践行“4A”实验教学新理念,为学生提供充分自主的操作空间,有利于创新能力的培养[3][4]。

    二、在线虚拟实验平台的系统结构

    在线虚拟实验平台分为硬件数据层、服务层和应用层,其系统架构[5-9]如图1所示。①硬件数据层是在线实验平台中的硬件、软件等基础资源,它支撑着整个系统的运行,主要有学生数据、实验项目数据等内容构成的数据库,以及平台中最为关键的STM32控制电路和FPGA实验板硬件资源。②服务层主要提供FPGA编程与配置、实验数据信息、在线实验操作、实验管理等在线实验服务功能,起着承上启下的作用。③应用层主要包含两大部分,一是学生用户的在线实验功能,能够实现目标文件的远程下载、硬件设备远程操控、实验设计的在线验证、实验报告的上传等;二是教师用户的学生信息管理、实验项目管理、信息的查询统计、实验成绩管理、系统公告管理等功能,应用层重点是将这些内容數据展现给用户进行操作,也就是前端页面的显示。

    三、在线虚拟实验平台组成

    本在线虚拟实验平台由服务端硬件系统平台和软件系统两部分组成:硬件包括基于FPGA 的在线开发的硬件实验板、STM32控制电路及相关设备;软件系统为学生提供实验登录、连接、实验列表信息、实验报告上传等在线实验要求的功能构成,在线实验教师端具有为学生在线虚拟实验进行发布实验、上传实验指导书等初始化操作及学生信息导入、实验板信息管理及实验成绩管理等功能。

    1.在线虚拟实验硬件系统平台

    在线实验服务端硬件平台由服务器、电源模块、网络模块、数据存储模块、FPGA实验电路模块、控制电路模块等构成,如图2所示。其中控制电路模块采用一款基于ARM cortex-M4内核的32位嵌入式微控制器STM32F407,它是整块实验板的核心,主要负责服务器和实验板之间进行通信,如从网络模块接收服务器传来的控制指令;采集FPGA电路模块输出管脚的状态数据,并将相应的结果通过网络模块返回至服务器;网络模块负责远程FPGA实验板与服务器之间的实验数据传输;数据存储模块则用于存储FPGA实验板的信息及运行状态;服务器接收到浏览器发送的实验电路文件配置请求后,服务器与FPGA实验板之间以规范的数据格式,将实验电路文件发送至实验板进行远程配置并返回配置进度及配置结果,同时服务器也是整个平台的软件系统管理机。

    2.在线虚拟实验平台软件系统

    软件系统提供在线实验服务和实验设备控制管理功能,包括在线实验的管理系统和控制软件。系统采用B/S架构,用户使用浏览器输入在线实验平台的域名或IP地址,选择用户类型,可分别进入学生在线实验页面和教师管理页面。学生用户登录到实验平台,可浏览系统的公告信息、选择课程实验和开放实验,可下载实验课件、进行在线虚拟实验。教师用户登录到在线虚拟实验平台,具有学生管理功能,主要是学生信息的增删改功能,列出远程服务端设备列表。学生使用信息包括登录信息、操作信息,学生端的实验项目管理功能及实验课件的上传,公告信息管理包括公告信息的增、删、改功能,实验板卡信息监控、学生实时操作监控及实验成绩管理等功能。

    3.在线虚拟实验平台的优点

    通过比较分析线下实验与线上虚拟实验的异同,可以得出在线虚拟实验具有以下优点:①实现了实验室的深度开放。传统的实验室很难实现24小时开放,而在线虚拟实验只要有网络就能进行实验,突破了传统实验教学的时空约束。②节省了实验设备资源。传统实验在实验箱上做实验验证,需要一人一台,而且在整个实验过程中独占设备,而线上虚拟实验方式整个的设计过程是在各自的终端上实现,只有在验证时才连接远程设备,不用时即可释放,可以多人共享实验设备;③减少了设备维护量。在实验设备维护上,由于是在线虚拟实验,实验者不直接操作仪器,只是通过虚拟实验面板来操作实验仪器,避免了由于不合理操作导致的设备损坏,有效地保护了实验设备,大大减轻了设备维护的工作量,提高了仪器设备的使用寿命[10-13]。

    四、在线虚拟实验的教学实践

    1.实验原理

    学生在客户端根据设计的任务要求,使用Quartus II开发系统进行实验项目的设计、综合、仿真验证功能、管脚分配,生成*.rbf的配置文件;使用浏览器输入服务端的URL,登录连接远程Web服务器并将实验程序通过互联网上传至服务端的FPGA硬件设备上;通过STM32操控服务端实验设备并将实验结果通过虚拟实验面板完成实验的验证。

    2.实验内容设置

    《数字逻辑》是一门理论和实际紧密结合的课程,具有很强的工程性与实践性。在线虚拟实验项目的开发根据《数字逻辑》课程的教学要求,开发的实验项目有基本逻辑门电路实验、组合逻辑电路实验(一位全加器实验、四位全加器电路、加减运算电路的设计、译码器电路的设计、编码器电路的设计、七人表决器电路设计、四人抢答器电路设计、多路选择器电路设计、BCD-七段码显示译码器电路的设计)、时序电路的设计(触发器实验、十进制计数器的设计、分频器电路的设计、序列检测器电路的设计、存储器的设计、动态数码管显示、简易电子钟的设计)等共16个实验。此外,学生可以根据自己的兴趣开发其他的创新实验。

    根据学院计算机科学与技术专业《数字逻辑》课程的教学大纲,选择了7个实验作为课程实验,8个实验作为课程的开放实验。在开展实验教学前,教师先将实验学生的信息导入到平台,将7个课程实验在系统中发布,在发布实验项目时,将实验需要的实验指导书和虚拟实验面板文件一同上传,供学生参加,图3所示为发布实验项目界面。

    3.虚拟实验面板的设计

    在线虚拟实验是通过虚拟实验面板操作远端的实验板,设计一个操作方便的虚拟面板是验证实验设计的前提,在系统中提供了基础器件、实物器件及逻辑器件,这些器件包含了常用的输入输出单元,如开关、按键、数码管、LED等输入输出资源,以及可自定义的逻辑单元,供设计虚拟面板文件使用。虚拟实验板设计好后,实验者对虚拟实验面板的操作信息通过浏览器发送给服务器;服务器会根据接收到的虚拟实验板生成实验板操作指令,与实验板进行实验数据交互,并将返回的数据解析后放于虚拟实验板返回至浏览器;浏览器接收到返回的虚拟实验板数据后,从中提取数据显示在图形界面上。因此虚拟实验板是浏览器与远端硬件层的实验数据交互服务之间虚拟出来的一个中间层。

    学生在进行课程实验时,可以直接使用教师设计好的虚拟面板文件进行验证;在进行课外开放实验时,学生需要自己设计虚拟面板文件,然后通过虚拟实验板进行设计的验证。图4所示为3-8译码器实验的虚拟实验面板。

    4.在线虚拟实验注意事项

    在线虚拟实验与线下实验的操作基本都是一样的,但在设计综合、器件编程与实验验证上需要注意以下几点:第一,在设计综合时,由于远程配置采用PS方式配置,因此需要生成rbf的二进制数据格式;第二,在器件编程时,需要在教师发布的课程实验中,先选择实验,然后系统按照策略分配FPGA实验板进行FPGA烧写(下载);第三,下载完成后运行实验是通过虚拟实验面板进行验证,而不是在硬件实验板上实际操作。

    五、结束语

    我院实验中心数字逻辑实验室配备35套FPGA实验箱+10套远程FPGA实验板。学校2018级计算机科学与技术专业5个班的《数字逻辑》课程利用该平台进行了实验教学。在计算机科学与技术专业的《数字逻辑》实验中,设置了7个必做的实验作为课内实验,8个课外开放实验供学生选做。每个班每周安排一次固定的时间进行线下实验,在实验室进行课内实验,在课内完不成实验的学生,可利用在线虚拟实验平台补做。课外8个开放实验采用线上实验,不安排统一实验时间,学生可根据自己的时间来完成。通过问卷调查,学生普遍反应实验时间更加自由了,课上完不成的任务,可以回到宿舍继续完成,也不需要往实验室跑,极大地方便了学生,同时也解决了实验室的开放难题。

    实践表明,利用在线虚拟实验平台,选做开放实验的学生更多了,学生可以开发更多感兴趣的实验或者更复杂的综合性实验,从而进一步激发他们的学习兴趣,有利于学生开展自主学习、创新。同时应用在线虚拟实验平台进行实验,可很方便地构建虚实结合、线上线下混合式实验教学模式,充分体现了以学生为中心的泛在化实验教学理念,提高了实验教学的质量与效果。今年疫情期间,很多计算机硬件类的实验都无法正常进行,但我校2018级通信工程专业3个班的《数字电子技术》利用该平台进行线上实验,很好地解决了疫情期间的实验教学问题。

    参考文献:

    [1]马汉达,张建明.高校混合式实验教学的应用研究[J].实验技术与管理,2015,32(9):170-172+175.

    [2]马汉达,鲍可进.计算机硬件课程实验教学改革与实践[J].实验室研究与探索,2013,32(10):360-362.

    [3]李林,陈宇峰,李凤霞,等.虚拟实验在大学计算机课程教学改革中的研究[J].中国教育信息化,2017(8):61-63.

    [4]李林,陳宇峰,李仲君,等.大规模在线虚拟实验教学平台的建设与实践[J].实验技术与管理,2018,35(7):144-147.

    [5]蒋伟杰:在线虚拟仿真实验平台架构设计与实现[J].重庆理工大学学报(自然科学),2017,31(12):156-159.

    [6]王莹.计算机虚拟仿真实验平台的设计及实现[J].北京印刷学院学报,2017,25(7):139-141.

    [7]屈泳,阮小军,王三华.计算机硬件虚拟仿真实验平台的建设与设计[J].实验室研究与探索,2018,37(12):116-119.

    [8]艾明晶,杨群芳.FPGA在线实验平台设计与在线实验方法研究[J].测控技术,2019,38(1):19-23+28.

    [9]张彦航,刘宏伟,陈惠鹏,等.基于FPGA的硬件类课程远程虚拟实验平台[J].实验技术与管理,2017,34(1):16-20.

    [10]刘来玉,陈晨,董焱,等.虚拟仿真实验教学助推双创教育的探索与实践[J].实验技术与管理,2017,34(12):128-131.

    [11]潘雪涛,邬华芝,蔡建文,等.创新虚拟实验教学模式培养自主学习能力[J].实验室研究与探索,2014,33(11):72-76.

    [12]明仲,蔡茂国,朱安民.虚实结合建设高水平虚拟仿真实验教学中心[J].实验室研究与探索,2017,36(11):146-150+165.

    [13]殷金曙,杜世民.虚实结合数字电路实验平台开发[J].实验室研究与探索,2019,38(1):108-112.

    (编辑:鲁利瑞)