尤成熙, 杨叶梅
(福建师范大学 协和学院, 福州 350117)
近些年,虽然大学生人数不断增加,但是高校图书馆的资源变化却不大, 供学生使用的图书馆自习室空间还不够充裕。 很多学生在平时需要去图书馆自习和补充知识时,发现去了又没有位置,尤其是在期末考试复习周的时候, 都需要早早的在图书馆开门之前排队,很浪费大家的时间,而且还容易产生一些冲突[1]。 在使用图书馆自习室的时候发现,有的位置被占着但是没有人使用, 导致有时候有空位但是学生们又不能使用。 这方面在人为管理上也是比较麻烦,一是学生人数多不好管理,二是位置的使用率也不好管理。为了解决这些问题,有些高校图书馆管理上采用实名制或者领取自习室座位号等方式,但是效果不明显,操作也不方便,学生还是无法预先知道图书馆的位置使用情况。 为了提高图书馆自习室的座位利用率[2],研发了一款基于二维码的图书馆座位管理系统(以下简称本系统)。
本系统的控制芯片采用的是STM32F103Z 单片机,控制整个系统的运行。学生可以在手机终端注册会员,然后输入个人信息登陆系统,查询图书馆自习室座位的使用情况[3]。 选择可以预约的座位,预约成功之后,APP 会自动生成对应的二维码。在预约的时间内,到达图书馆自习室进行扫码,门禁系统打开就可以进入自习室学习。 同时系统会统计座位使用的总人数, 并在图书馆外的液晶显示上显示子自习室的一些信息, 比如使用总人数、 室内的温湿度情况等,方便学生了解实时的信息。在自习室的每个座位上都有位置的编号,方便在APP 上显示,如果学生要离开不再使用该位置, 就按下座位上的按键释放位置。 每个座位上配备的传感器会识别座位上是否有人, 超过预设时间检测无人则自动释放该位置信息。 图1 是本系统的整体设计图。
主控模块STM32F103Z 的内核为Cortex-M32,其工作频率为72MHz,足够支撑系统的整体运行。
二维码扫描器是北京微光互联旗下TX 系列的一款产品,型号为TX200,其识别的距离是3~10 厘米,无需对焦,扫描速度非常快,配备多种二次开发接口, 且兼容安卓系统、Linux 系统、Windows 系统等。 采用这款二维码扫描设备主要是为了获取预定图书馆自实习的学生信息和预约信息, 扫描成功则可进入自习室[4]。
图1 图书馆座位管理系统整体框图
液晶显示器采用的是TFT-LCD 显示屏,通过点脉冲直接控制每个像素,对比度和亮度很高。该屏幕的数据线是16 位,信号控制线6 条,主要是显示自习室的内部环境和位置使用情况等信息。
红外对管传感器采用的是QT50CM 完成对自习室的座位是否有人进行检测, 检测到无人的时候开始启动定时器, 预设超过半个小时说明无人使用该座位,对其释放后,将座位的编号显示在APP 上。
环境检测主要是对图书馆自习室的温湿度和烟雾进行检测,一方面是保证学习环境的舒适度,另一方面是保证环境的安全。采用DHT11 传感器检测环境中的温度和湿度数据, 数据输出端口DO 连接在STM32 板的PG11 脚。 采用MQ-2 传感器检测空气中的烟雾情况,其输出引脚AO 接到STM32 的ADC通道1 上。 当检测到异常情况会进行声光报警。
步进电机驱动模块由一块ULN2003 大功率达林顿芯片、电阻、电容和LED 组成[5]。 当有人需要进入自习室,扫描二维码成功时会开启门禁系统,控制电机转动模拟开门,开启一次会统计进入的人数加一。
采用的是ESP8266 WIFI 模块完成系统连网[6],该模块内部含有Tensilica L106 的MCU, 控制该模块是用AT 指令完成,本次使用的是AP 模式。 在电路连接时, 模块的CH_PD 管脚连接正电压供电,UTXD 接STM32 的PA3 引脚,URXD 接STM32 的PA2 引脚。 该模块主要是将图书馆自习室的位置信息通过网络传输到APP 上。
终端APP 的开发工具包括Hbuilder、Myeclipse等, 采用Java 编程语言、JavaEE 等开发技术完成。APP 软件的流程是, 属于该校的学生安装并完成用户注册,等待后台审核。 审核通过后,就可以登录进入个人界面,完善个人信息。 切换不同的界面,可以实时观察到自习室座位的最新动态信息, 选择座位完成预约,最后APP 会生成扫描所需的含有预约信息的二维码。 同时,还可以在APP 上浏览一些图书的内容,这个部分后期将继续开发借阅等功能。当预约的位置成功之后, 将通过网络将信息传递给单片机。 图2 是终端APP 的具体功能图。
图2 终端APP 功能图
STM32 控制端的程序设计是在Keil uVision5中完成,扫描二维码成功后,控制自习室电机门禁开启,并统计进入的人数。图书馆中的温湿度和烟雾等基本环境信息、人数的信息都会显示在液晶显示上。当检测到环境异常情况时,会启动蜂鸣器报警。当红外对管检测到座位有人坐下后, 对应的LED 会亮,同时APP 上的座位信息也会显示为红色。 当检测到离位半个小时或者学生使用完对应座位后会默认为空位, 在APP 中对应座位号显示为绿色。 硬件和APP 之间的网络通信是通过WIFI 模块完成。图3 是硬件控制端的具体功能图。
图3 单片机端的功能图
进入手机APP 的首页,先选择注册,注册后可以完成登录,在其他界面可以修改个人的信息等。录界面见图4 所示,修改个人信息界面见图5 所示。
登录系统后,可以查询当前自习室的人数,可以查询可预约的座位, 图6 中是显示的一张自习室的桌子的信息, 对应的硬件设计也是一桌6 个座位的使用告示灯。对应座位无人使用时,查询的座位显示绿色,LED 灯灭; 有人使用时查询的座位会显示红色,且LED 灯亮。
查询完可以开始预约座位, 可以点击任何绿色的座位,选择确认。 当预约成功之后,会弹出座位预约成功的提示界面。[7]同时在个人信息一栏可以查询所生成的预约二维码(见图7)。
图4 首页功能图
图5 修改个人信息图
图6 位置查询界面图
图书馆的电子版书籍放置网络上, 则该校的学生可以通过APP 在线查询有哪些图书,并且可以实现在线阅读。图8 前面两个界面是在线阅读界面,第三个界面是放在馆外液晶显示器显示统计的当前人数、室内的温度、湿度、烟雾情况等。
图7 座位成功预约图
图8 系统其他功能图
本系统设计在实际使用中效果良好, 不仅可以用于图书馆的座位管理,还可以用于会议、餐厅等的座位管理。 当然仅仅从图书馆自习室的座位使用情况来看,已经有效提高座位利用率,也节约了同学们的学习时间,避免了大家的徒劳奔波。 但是,系统不免还会存在一定的缺陷,主要是以下几点∶查询和预约都需要在有网络的地方;如果手机忘记带了,则无法扫描二维码; 是否为空位的识别仅靠半个小时无检测到人来判断还过于单一。 在后期将继续对系统进行改进,使得图书馆的价值能得到更好的提升。