基于51单片机的城市书房智能门控系统
2019-02-03李墨岩陈亚龙
李墨岩 陈亚龙
摘 要:随着现代社会的发展,人们的精神境界不断提高,本文立足于城市书房,设计了基于51单片机的智能门控系统。通过超声波测距模块控制门的开合,DS1302时钟芯片显示时间,方便市民进出与作息调整。同时,设立了工作人员管理模式,将矩阵键盘与EEPROM存储模块相结合,以输密码的形式控制超声波模块的打开与关闭,方便工作人员管理。
关键词:单片机;智能门控;超声波测距;城市书房
一、绪论
随着社会经济的不断发展,对于大部分人而言,不再过分担心温饱问题,对物质生活的追求也逐渐被对精神世界的追求取代。在这样的大背景下,作为城市文明象征的图书馆也在适应着人们心理上的变化,许多地区的图书馆都开始设立24小时开放的城市书房,以满足市民们对精神文明的追求。
基于这种现状,如何有效地解决市民进出与工作人员管理成为了新的问题。本文通过对门控系统进行设计加以解决。
二、设计概述
项目自动门控制分为两个部分:市民自由进出状态,工作人员管理状态。
设定的环境为:超声波测距模块安装在大门合适高度处,主控芯片STC89C52与DS1302时钟芯片,4*4矩阵键盘等为一个整体安装在书房内合适位置处。
(一)市民自由进出状态
在此状态下,书屋内通过STC89C52驱动DS1302芯片在数码管上显示当前时间,超声波测距模块正常工作,当检测到有人通过且距离小于30cm门自动打开,5s后门自动关闭。
(二)工作人员管理状态
自动门检测到有人经过,门打开。工作人员进入后,按下书屋内矩阵键盘的密码输入按钮,显示页面停止显示时间并进入等待密码输入界面,密码输入完成后按下确认键,超声波测距功能关闭,此时如有人想要进入门并不打开。
工作人员完成工作后,再次输入密码,超声波测距功能打开,进入自由进出状态。
在输密码过程中如输入的密码与存储不一致在EEPROM特定地址内的密码,超声波测距功能并不关闭。
此外,在矩阵键盘上有一个设置键是用于修改密码的,当按下此键后就进入等待输入旧密码显示界面,旧密码输入完成后按下确认键,进入新密码输入状态。新密码输入完成后按下确认键完成新密码设置。再修改密码完成之前按下退出键回到时钟显示状态。
三、硬件模块设计与分析
利用单片机驱动DS1302实时时钟在数码管上显示当前时间。E2PROM模块用于存储密码,MAX7219控制驱动数码管,继电器模块的指示灯亮灭表示门的开合状态,超声波模块用来检测是否有人想要进入,4*4矩阵键盘进行密码输入与更换等。
(一)DS1302时钟芯片
DS1302在数据传送时需要进行初始化,即将复位引脚设为高电平,并且在移位寄存器中装入8位地址和命令信息。数据通过时钟引脚的上升沿时进行串行输入,指定的访问地址为前8位,当移位寄存器中载入命令字后,之后的时钟周期里,想要输出数据就进行读操作,想要输入数据就进行写操作。
进行时间显示时DS1302芯片的引脚需要与数码管相连,其中,时钟显示页面为第一、二位数码管显示小时,第三、六位数码管显示横杆,第四、五位数码管显示分钟,第七、八位数码管显示分钟。
(二)E2PROM芯片
EEPROM为电可擦除可编程只读程序存储器,其特点是内存小,只能存储简单数据,掉电非易失。EEPROM按总线形式可以分为IIC、SPI、Microwire三种,项目中使用的是IIC总线形式。
在具体应用时能够确保密码的存储。在项目具体设计时,需要使用六位密码,但EEPROM的一个单元并不能存储六位数据,因此分要多个单元分开存储。值得注意的是,有的单片机并不支持往EEPROM里连续写入数据,这时,需要在两个写入程序之间执行delay延时操作,保证数据正常写入。
(三)超声波模块
项目采用的超声波模块型号为HC-SR04+,其中非接触式距离感测功能的应用范围为2cm-400cm,能够达到的测量精度为3mm,可以保证检测结果的准确性。且其相对于传统的HHC-SR04模块具有更宽的工作电压,在同样的测距下具有更小的工作电流。
项目中,考虑实际生活需求,测距模块检测到与人的距离小于30cm时,门自动打开,停留5s后自动关闭。
四、总结
结合当前社会发展趋势,本文设计了基于51单片机的城市书房智能门控系统。能够切实解决人们的生活需要。在硬件方面,项目利用片上现有的数码管、继电器LED灯、矩阵按键、独立按键等资源可以实现输入显示等基本功能。采用DS1302、超声波、E2PROM等外设能够实现显示时间、感应市民到来、存储密码等功能。这些外设在市面上都较为普遍,且性价比较高,保证了此设計的可实施性。
参考文献:
[1]王俊峰,孟令启.现代传感器应用技术[M].北京:机械工业出版社,2006.
[2]王东,王海洋.基于单片机的自动门控制系统设计[J].黑龙江科技信息,2011,10(32):73.
[3]叶帆.公共图书馆打造“城市书房”案例研究[D].合肥:安徽大学,2018.
基金:南京工程学院本科生科技创新训练项目(TB201906067)