基于ARM面向校园的综合签到管理系统
扫描二维码
随时随地手机看文章
引 言
随着大学教育的普及,大学生的数量大大增加,同时因90后、95后受互联网等新媒体自由化思想的影响,大学普遍面临着到课率不高,逃课、缺课人数增加的困境,这是摆在教务管理人员面前的一道难题,抛开课堂互动性不高等问题, 签到系统的薄弱也是导致这种情况发生的原因之一,传统的签到无非是用纸签到或者点名,这两种方式无一例外的会占用同学、老师大量的时间。以200300人同时授课的校公共课为例,如果采用传统的点名方式,即使在学生能够完美配合老师的情况下,每个人仍需要10秒,即需要5分钟以上才能完成, 因此,在很多情况下,老师没有足够的时间点名,从而导致这些课变成了逃课、缺课的重灾区[1]。综上所述,一套行之有效的能够公平、高效地记录出勤情况的签到管理系统是大学普遍渴望配备的,通过新签到系统的使用,配合有力的奖惩措施, 能够在很大程度上减少逃课、缺课现象的发生,提升到课率。
1 功能分析
作为一款校园考勤系统,系统的典型用户有学生、授课教师和教务管理人员。对于学生,需要在上课前(或者下课后) 在签到机上签到;对于教师,需要能够很方便地查看某一天的考勤情况 ;对于教务人员,需要能够快捷的在所有考勤机上增加或删除一个学生的信息,并且在一个考勤机损坏的情况下,能够快速更换,并不影响其它考勤机的正常工作 [2]。
分析传统的指纹签到设备,我们发现,传统的指纹签到设备主要面向企业市场,强调打卡时间、排班、计时等企业管理所需要的功能,并且其考勤数据只记录在考勤机内,这意味着只能够单机考勤,对于几十名同学需要在课间 20 分钟内集体从一个教室离开,到另一个教室签到的学生来说,只有一个考勤机是不够的。通过对比,发现传统考勤机的功能与校园签到系统需求不符,因此需要一个专门针对校园考勤的系统, 该系统应具有如下功能与特性 [3] :
1 能够快速签到,识别速度快,识别准确率高。
2 能够适应同一个学生不同时间在不同教室上课这一使用场景。
3 能够实现多机考勤,学校可在大教室里设置24个考勤机,小教室设置12个。
4 能够在网页端查看实时的签到数据。
5 在考勤机发生损坏时,能够便捷替换。
2 硬件组成
硬件部分总体上分为考勤控制机和指纹识别终端两部分,考勤机采用基于ARM Cortex-A7 的树莓派,运行服务端程序,向下控制指纹识别终端,采集,存储数据,向上提供Web 管理接口。
2.1 基于树莓派的教室考勤控制机
鉴于需要存储指纹这种安全而敏感的信息,同时服务器不需要进行大规模的计算和存储,因此本地服务器采用处理器基于ARM Cortex-A7 的树莓派, 运行基于 Linux 的raspbain 操作系统[4],并且安装MySQL 数据库服务和TCP 服务端。服务器接入学校局域网,可由学校网络中心统一维护, 学生指纹库和签到情况等存储在服务器数据库中,系统通过TCP 服务与上层软件通讯,被授权的教务管理人员能够随时查看服务器上记录的签到情况并修改服务器端学生的信息。同时树莓派通过nRF24L01+ 芯片与下位多个指纹录入与识别设备无线通讯,实时获取各机的签到数据并加以处理和整合。
2.2 nRF24L01+ 无线传输模块
nRF24L01是由NORDIC公司出品的工作在 2.42.5GHz的ISM频段的单片无线收发器芯片。无线收发器包括频率发生器、增强型 SchockBurst模式控制器、功率放大器、晶体振荡器、调制器和解调器[5]。输出功率频道选择和协议的设置可以通过SPI 接口进行设置[6]。几乎可以连接到各种单片机芯片,并完成无线数据传送工作。它具有极低的电流消耗。当工作在发射模式下发射功率为 0 dBm 时,电流消耗为11.3 mA,接收模式时为12.3 mA,掉电模式和待机模式下电流消耗更低,其适合嵌入式设备使用。
2.3 基于STM32的指纹识别终端
本系统采用的指纹录入比对设备是微雪UART Fingerprint Reader,这是一款专用于二次开发集成应用的新型指纹开发模块,具有高速度、识别快、高稳定性等特点。
微雪 UARTFingerprintReader模块以 STM32F205高速数字处理器为核心,结合商用指纹算法,高精度光学传感器, 同时具有指纹录入、图像处理、特征值提取、模板生成、模板储存、指纹比对和搜索等功能,在指纹采集方面,该模块采用高精度光路和成像元件,使用时只需要手指轻轻一点,就能快速识别[7]。在识别比对方面,该模块采用STM32F205高级数字处理芯片作为处理器,低功耗,快速稳定,可满足教学楼人流量大、单位时间签到需求人数高的要求。
2.4 12864液晶显示模块
签到机与用户的交互模块为一块 12864 液晶屏,待机时显示当天的日期,星期,时间,教室号等信息,当用户将手按上指纹模块时,激活指纹模块,同时在液晶屏上显示出对比结果,例如:识别成功,XXX,欢迎您 ,签到失败,请重试! , 未到考勤时间,禁止签到! 之类的提示,方便用户使用。
3 软件系统设计
3.1 树莓派端的设计
树莓派端设计主要由Web 服务部分,数据库部分和无线传输服务部分组成。Web 服务部分通过服务器端运行的Web 服务,使教务管理人员能够便捷地通过 Web 浏览器管理,统计签到数据。数据库部分采用SQLlite 数据库存储同学们的各种信息,包括课程信息和指纹数据(或者指纹特征点数据) 等。无线传输模块通过使能树莓派系统自带的 SPI 总线,参考 nRF24L01+ 的参考手册配置无线模块的地址,实现 1 对多通讯,即一个树莓派控制机控制数个指纹录入比对设备。
3.2 指纹录入与识别设备的设计
指纹录入与识别设备也是主要由无线通讯模块、显示输出模块和指纹录入及识别模块组成,与上节中的无线传输服务部分类似,这里的无线通讯模块也采用nRF24L01+,通过STM32 使能自身的SPI 总线,参考 nRF24L01+ 参考手册,配置无线模块的地址,唯一与上一节不同的是,这里配置为多对 1通讯[8],即多个录入比对设计对应一个上层树莓派。显示输出方面,设备通过I/O口采用 8位并行传输方式控制 12864 液晶屏,输出所需要的文字和图像,满足交互需求。在指纹录入和识别模块,采用完整的微雪 UARTFingerprintReader 模块的UART串口通讯,通过产品说明书提供的串口API,控制模块进行识别、对比,上传指纹图片,上传特征点等操作。
4 系统测试
为了检测该签到系统的可行性,对系统进行了指纹识别系统和树莓派控制系统的测试。我们以一个班级(33 人)为测试对象,采用一个控制机控制两个签到机,3 分钟内完成了签到过程,经检测,该系统达到了预期效果,系统的软件和硬件都运行正常,能够完成指纹注册、比对、删除等功能;同时能够完成服务器通过控制多个树莓派,进而调取并传送不同教室的数据库内容。系统稳定可靠,通过率高。
5 结 语
文章采用UART Fingerprint Reader 指纹识别模块和基于ARM Cortex-M3 处理器的 STM32 单片机以及基于ARM Cortex-A7 处理器的树莓派[9],设计了一款指纹识别签到系统。该签到系统简单、实用、便携、识别精准,支持多机联合考勤。通过无线模块能够快速、稳定收发数据,并可实时传送到服务器,达到人员出席的考核。实验结果表明系统的硬件和软件都运行正常,达到了预期目标。此外,该指纹签到系统预留了I/O 扩展接口,并能够根据用户的需求将其不断完善,相信不久的将来,基于ARM 嵌入式微处理器的考勤控制管理系统将会有很好的前景。