互动教学系统教师端与转发器的设计*
2017-09-03刘河源焦瑞莉
刘河源,焦瑞莉,胡 峰
(北京信息科技大学 信息与通信工程学院,北京 100101)
互动教学系统教师端与转发器的设计*
刘河源,焦瑞莉,胡 峰
(北京信息科技大学 信息与通信工程学院,北京 100101)
针对教师使用传统教学手段时学生课上学习效率不高的现状,设计了一种基于互动教学方式的系统。互动教学系统源于哈佛大学的Peer-Instruction教育方法,旨在利用计算机和无线网络建立一个高效的教学环境。该系统使用LabVIEW软件开发教师端,使用Cortex-M0内核的ARM微处理器和CC2530射频板设计基于ZigBee技术的数据转发器。此外,系统采用自定义通信帧的方式完成不同软件间的信息交互,利用JKI状态机与多线程同步技术相结合的方法实现了一对多通信。测试结果表明,该系统能够有效地完成课堂互动教学的目的,并且对于促进教育模式的多样化也具有参考价值。
互动教学;LabVIEW;ZigBee;教师端;转发器
0 引言
课堂是开展教学活动的主要场所,课堂的教学质量对高校实现培养人才的目标有重要的影响[1]。但在传统的教学方式中,由于班级人数较多,教师核查出勤率通常会消耗大量的教学时间。在剩余时间内,教师无法就教学内容与学生进行深入的沟通,导致教师不能全面了解学生对每个问题和知识点的掌握程度,影响接下来的授课内容,久而久之使教学效率大大降低。Peer-Instruction教学法由哈佛大学Eric Mazur教授创立,即利用计算机系统对专门设计的概念测试题进行投票,使学生能够自主学习和协作探究,有效地改变了传统课堂的教学手段、教学模式[2]。LabVIEW是应用较广的数据采集开发环境,它具有大量测控领域的控件,能够缩短系统教师端的开发周期。ZigBee是新一代无线网络技术,它具有低复杂度、低成本和低功耗的特点,非常适用于互动教学系统转发器的设计。
1 系统总体设计
本文中的互动教学系统主要由教师端、数据转发器和学生端3部分构成,其总体结构示意图如图1所示,其主要功能就是实现Peer-Instruction教学。此系统采用星型拓扑网络实现教师端与学生端设备间的通信,其中包含一个数据转发器节点与若干端设备节点。系统教师端软件负责数据的储存与处理以及整个教学系统的运行,它可通过WiFi(Wireless Fidelity)或USB连接线与转发器进行通信,数据转发器利用ZigBee无线网络与学生端互联。数据转发器是系统通信的重要枢纽,它具备以下功能:建立ZigBee无线通信网络;与ZigBee端设备建立通信链路并转发教师端PC(Personal Computer)对学生端的控制指令;收集学生端反馈的信息并上传给教师端PC。
系统主要功能如下:
(1)上下课签到。以此来核查学生的出勤状况,并保存至记录中。
(2)问答功能。题目分为抢答题、选择题和判断题,在一定时间内学生提交答案,系统将自动判断答案对错并将正确率反馈给教师,教师可依此对授课内容进行调整,这可以很大程度上提升学生课上的学习质量。
(3)教学评价。学生可对本次的教学内容进行匿名评分。
(4)统计和查询。统计学生的到课情况、题目的正确率和对教学内容的评分,并可供查询与参考。
图1 系统总体结构示意系
2 教师端软件设计
2.1 总体架构搭建
系统教师端软件选择用LabVIEW进行图形化编程。LabVIEW软件具有庞大的函数库,能够完成包含信息采集和汇总、端口控制等在内的多种功能,并且有着成熟的模块化底层控件,可用流程图所表示的信息流向来指派代码和指令的执行顺序,能够大大缩短项目的开发时间。
状态机由状态、事件、行为三要素构成,LabVIEW的状态机是一个while循环,其中包含代表系统不同状态的case结构,case结构分支里的条件变量与系统事件相对应,所完成的功能对应状态的具体行为[3]。本系统教师端的软件设计采用模块化和层次化相结合的思想,根据具体需求,将系统划分为各个功能模块。这样不仅可以使程序流程更加清晰明了同时也易于维护。
图2为教师端程序示意图,它采用生产/消费者的设计架构,具有3个相互联系的功能模块,它们通过缓存区进行信息交互,其中生产者模块提供数据,消费者模块处理数据,另有通信模块负责建立通信。它们完成信息交换的过程如下:当两个功能模块需要进行通信时,首先会将数据发送到缓存区中,另一方空闲的状态机会一直循环读取缓存区中的数据,如果接收到消息就会解析并执行。
图2 教师端程序示意图
2.2 子VI设计
在系统教师端软件缓存区中,使用消息队列的方法完成不同VI间的信息交互。为了方便消息队列的统一运行,将各功能整合到一起,如图3所示。Operation表示队列的操作命令;index表示队列数组索引(最小值为0);Queue Refs Out为队列数组;CmdString_in/CmdString_ out分别表示要插入/获取队列的元素;Timeout(10 ms)表示队列操作的超时时间为10 ms。
图3 队列管理VI
此外,“队列状态解析”和“队列状态添加”是JKI状态机的两个基本功能。其中队列状态解析是指从状态字符串中提取出要跳转的下一个状态以及相应参数;而队列状态添加能够在代表状态的字符串中加入待转入的状态和参数。在教师端软件设计中,为了简化程序安装过程,没有使用第三方工具包,而是自行编写了两个子VI来代替上述两个控件的功能,这样可以使调用以及后续开发更加方便。
3 基于ZigBee的数据转发器
3.1 ZigBee
ZigBee是基于IEEE802.15标准的低功耗局域网协议[4],它具有低功耗、短时延、网络容量大、安全可靠的优点,已在物联网中得到了广泛应用[5]。将ZigBee技术应用于数据转发器的设计具有以下优势:
(1)部署方便。因为学生端设备一般处于待机状态,所以转发器使用电池供电就能够正常工作较长时间,降低了安装费用。
(2)易于扩展端设备。ZigBee网络容量大,可使用星型、网型和树型等多种网络拓扑结构,其中主节点能够管理多个子节点,同时它还由上一级进行控制。因此可满足学生端人数多、规模大的需求。
(3)容易对学生端进行定位。每一个学生端都具有IEEE地址,通过它可以方便地从网络中获取其位置。
3.2 硬件设计
数据转发器由NUC120主控模块、CC2530射频模块和可供选择使用的WiFi模块构成,当系统不使用WiFi模块时,转发器可通过USB串口与教师端直接通信。转发器组成模块如图4所示,其中,NUC120模块负责系统供电和对其他模块的控制,CC2530射频模块用于构建ZigBee网络,WiFi模块用于对外接收和发送数据。本设计的WiFi模块采用亚信公司出品的AXM22001-2A-C型可编程模组,它提供了完整的网络解决方案,适用于转发器简单易用、低成本的特点。下面对其他主要模块进行介绍。
图4 转发器组成模块
NUC120模块是数据转发器的核心模块,其软件设计是基于Nuvoton提供的NUC100 Series BSP支持包进行开发的,它具有以下功能:系统供电、通过UART串口与其他模块进行通信、利用USB接口与教师端软件进行VCOM(虚拟串口)通信、通过GPIO控制蜂鸣器和LED指示灯来显示系统的工作状态。
CC2530模块主要完成ZigBee无线通信的功能。CC2530是TI公司开发的芯片,内置增强型8051CPU和RF收发器[6],它不仅具有高性能、低功耗的特点而且只需要添加少量元件就能够满足数据转发器无线通信的需求。本软件的设计是基于德州仪器的开源协议栈ZigBee ZStack-CC2530进行的二次开发,其工作流程图如图5所示。当射频模块接收到数据时,直接将数据通过UART串口转发给NUC120模块,当CC2530模块从UART串口接收到数据时,首先对数据按照自定义帧的格式进行解析,如果是ZigBee网络接入命令则由数据转发器处理,否则将数据通过射频模块进行转发。
图5 CC2530模块工作流程图
3.3 自定义通信帧制定
图6 通信帧格式
为了保证数据转发器与教师端软件的信息交互,需要有统一格式的通信协议对数据包进行封装和解析。本设计通过制定自定义通信帧的方式提高了信息传输的可靠性,上位机软件设计并实现了一种能够管理代码的链表队列,用于存储待发送的数据帧[7]。通信帧的格式如图6所示。
帧头:占1 B,用于帧同步。
长度字段:占1 B,规定了全局帧的总长度。
命令字段:占1 B,表示帧数据的具体含义,即用于执行何种操作。
标志字段:占1 B,表示帧数据的地址类型和处理对象。
通信地址字段:长度不定,用于表示通信双方的地址。
校验帧:占2 B,使用CRC16的校验方式。
4 结论
本文针对现有教学手段单一的现状,完成了基于互动教学模式的系统设计。采用软硬件结合的方法构建了低成本却实用高效的教学系统。通过实际操作证明,学生通过学生端硬件即可在教室内高效地使用该系统,这不仅大大地提高了课堂学习效率,同时对于Peer-Instruction教学模式的推广也有积极的作用。此外,本系统的设计框架和编程思想对于同类型的应用开发也具有一定的参考价值。
[1] 杨瑞龙.集成课堂互动教学系统设计与实现[J].现代教育技术,2015,25(5):115-120.
[2] 张萍, MAZUR E.Peer-Instruction—哈佛大学物理课程教学新方法[J].中国大学教学,2010(8):69-71.
[3] 李超,焦瑞莉,陈家田.基于LabVIEW的并行数据采集系统设计[J].辽宁工程技术大学学报:自然科学版,2012,31(1):89-92.
[4] 牟欣.基于ZigBee无线技术的家用电器自动控制的研究[J].科技创新与应用,2016(16):73.
[5] 柴淑娟,赵建平.基于ZigBee技术的无线数据传输系统[J].通信技术,2010,43(8):30-34.
[6] 章伟聪,俞新武,李忠成.基于CC2530及ZigBee协议栈设计无线网络传感器节点[J].计算机系统应用,2011,20(7):184-187.
[7] 李会,王宜怀,王磊.基于CAN的数据无损代码更新方法设计与应用[J].电子技术应用,2016,42(1): 40-43.
Design of teaching terminal and transponder for interactive teaching system
Liu Heyuan, Jiao Ruili, Hu Feng
(College of Information and Communication Engineering, Beijing Information Science & Technology University, Beijing 100101, China)
Aiming at the present situation that students′ learning efficiency is not high when teacher uses the traditional teaching method, a system based on interactive teaching mode was designed. The interactive teaching system is based on the Peer-Instruction teaching method of Harvard University, which aims to establish a highly effective teaching environment by using computer and wireless network. The system used LabVIEW to develop the teaching terminal, used ARM processor based on the Cortex-M0 kernel and CC2530 RF board to design transponder based on ZigBee. Besides, the system used the custom communication frame to realize the information exchange between different software, used the method of combining the JKI state machine and the multi thread synchronization technology to realize one-to-many communication. Test results show that the system can effectively complete the purpose of interactive teaching, and has a reference value for promoting the diversification of educational model.
interactive teaching; LabVIEW; ZigBee; teaching terminal; transponder
国家自然科学基金重大科研仪器设备研制专项(41327803);北京信息科技大学校内项目(5111624105)
TP311;TN911.7
A
10.19358/j.issn.1674- 7720.2017.15.028
刘河源,焦瑞莉,胡峰.互动教学系统教师端与转发器的设计[J].微型机与应用,2017,36(15):97-99.
2017-01-13)
刘河源(1992-),男,硕士研究生,主要研究方向:信号与信息处理。
焦瑞莉(1966-),通信作者,女,硕士,副教授,主要研究方向:信号与信息处理、虚拟仪器技术。
胡峰(1992-),男,硕士研究生,主要研究方向:信号与信息处理。