基于ARM9+Linux的门禁监控系统设计
配合图形环境方便调试,本系统采用minigui嵌入式图形库。
MiniGUI下的通讯是一种类似于Win32的消息机制,是由某公司开发的自由软件,遵循LGPL协议,可以为嵌入式linux系统建立的一个快速,稳定和轻量级的图形用户界面支持系统。
3.2.2 监控模式
在工作模式下,后台驻留程序会时刻监视是否有刷卡信息,在检测到刷卡信息后,后台驻留程序通过访问数据库进行卡信息的比对,只有当比对通过后,方可进行门打开动作。
由于在开门的同时,需要保存图片至数据库,而此时,可能会存在客户端对系统存储图片的访问,这会造成对相同数据库的访问冲突,所以系统在接收到客户端访问系统存储图片请求的时候,前端CGI服务程序通过命名管道的进程间通信方式和后台监控程序通信,以获得数据库访问句柄,在客户端访问结束后,前端CGI服务程序会释放数据库句柄。
本系统中由于涉及到频繁的数据库存取操作,基于ARM9的硬件平台,选用数据库为Berkeley DB数据库,Berkeley DB是历史悠久的嵌入式数据库系统,主要应用在UNIX/LINUX操作系统上,其设计思想是简单、小巧、可靠、高性能,满足本系统的需求。
4 系统软件功能模块设计
4.1 用户信息录入及授权管理
用户信息录入及授权管理由具有管理员权限的用户设置,在客户端,具有管理员权限的用户通过浏览器输入管理员用户名及密码,发送至门禁控制器,门禁控制器在接受到请求后,通过调用相应的CGI服务程序,检验权限是否合法,确定合法后,进入下一级页面,在此页面可以完成用户信息录入及授权管理。
主要完成的功能有录入用户个人信息,及与特定卡绑定,同时授予其卡的权限,在用户刷卡开门的时候,首先检查卡是否有对应的持卡人信息以及持卡人信息是否与系统定义的格式吻合,这样可以防止非法卡的使用。如果这一步匹配成功的话,接下来检查的是卡所对应的权限信息,包括有此卡可以控制哪些大门的开启及在哪些时间段可以控制。
4.2 数据浏览
系统注册用户可以在客户端浏览系统授权信息,同时只有管理员权限的用户才可以对系统注册用户进行删除。
4.3 硬件设置
管理员用户可以在客户端对门禁控制器系统进行远程测试和设置。分别为根据门禁控制器地址检测控制器状态,对门禁控制器设置当前时间和星期,读取当前控制器时间,开门延时,手动开门,编辑和读取设备名称,清空授权文件,清空刷卡记录等功能。
4.4 圈像监控
当持卡人在进行大门开启的时候,门禁控制器会将合法的刷卡信息记录如数据库,并将刷卡瞬间的图像保存为jpg图片存入门禁控制器的存储设备中,系统注册用户可以在客户端通过浏览器,对门禁控制器所保存的图片进行浏览。系统日志界面如图4所示。
图4 系统日志界面
4.5 后台服务
门禁控制器启动后,通过持续检测读卡器是否有信号以验证是否需要进行大门的开启,当检测到读卡器有刷卡消息时,通过读取卡内信息,调用相应数据库进行匹配,若匹配成功,则一方面摄录此刻图像,保存到数据库相应目录,房门打开;若不成功,则发出报警信号,操作者无法打开房门。
5 结束语
门禁监控系统有效保障了企事业单位的安全。基于ARM9与linux的嵌入式门禁监控系统具有稳定、可配置的特性,支持基于Internet的数据传输,系统采用B/S架构体系,用户通过浏览器访问系统的工作方式。该方案详细叙述了实现此门禁监控系统的软件思想,并对实现过程进行了详细的描述。目前,该方案在生产和科研中已经投入使用。随着嵌入式技术的发展,门禁监控系统的性能会得到更进一步地提高。
参考文献:
[1].AT91RM9200datasheethttp://www.dzsc.com/datasheet/AT91RM9200_1.html.
[2].ARM920Tdatasheethttp://www.dzsc.com/datasheet/ARM920T_139814.html.
- 革新2410D开发板试用手记(04-21)
- 嵌入式Win CE中CAN总线控制器的驱动设计与实现(05-01)
- 嵌入式Web服务器移植与测试(03-03)
- 基于ARM9与Linux的门禁监控系统软件设计(03-08)
- 嵌入式Linux下基于ARM9的媒体播放的设计(03-27)
- SamsungS3C2440平台上的VxworksBSP移植(10-28)