ARM-Linux与Wi-Fi的移动智能终端门禁系统设计
2015-07-02赵思蕊吴亚东杨文超蒋宏宇
赵思蕊,吴亚东,杨文超,蒋宏宇
(西南科技大学 计算机科学与技术学院,绵阳 621010)
赵思蕊,吴亚东,杨文超,蒋宏宇
(西南科技大学 计算机科学与技术学院,绵阳 621010)
设计了一种基于嵌入式ARM-Linux平台和Wi-Fi通信的移动智能终端门禁系统,包括门禁装置和用户移动智能终端设备,其中门禁装置采用S3C6410处理器,并以嵌入式Linux为软件开发平台。移动智能终端设备则作为用户开门凭据,基于Android系统开发门禁APP,实现用户身份认证、注册和开门功能。测试结果表明,与现有门禁系统相比,该设计在安全性、可操作性和成本上有明显优势。
门禁系统;ARM-Linux;S3C6410;Wi-Fi;移动智能终端
引 言
随着社会经济的快速发展,人们对室内人身财产安全要求越来越高,门禁系统作为智能建筑安防自动化体系中必不可少的一部分[1],发挥着极其重要的作用。当前常见的门禁系统包括:密码锁门禁系统、感应式IC卡门禁系统、基于电话短信方式的门禁系统以及生物特征识别门禁系统等。
随着科技的不断进步和人们生活水平的不断提高,移动智能终端越来越普及,包括智能手机、平板电脑等。为此,本文研究设计了一种基于嵌入式ARM-Linux平台,并将用户已有的移动智能终端设备作为用户身份凭证的无线Wi-Fi门禁系统。
1 门禁系统总体结构
移动智能终端门禁系统主要由移动智能终端、门禁装置、控制部件(电锁)和PC终端组成。系统总体拓扑示意图如图1所示。
图1 门禁系统总体拓扑示意图
根据门禁系统的实际需求,系统每个部分的构成和功能略——编者注。
2 系统硬件设计
门禁系统的硬件主要由门禁装置构成。门禁装置硬件采用S3C6410核心板,外围搭建相应功能的模块电路,包括无线Wi-Fi模块、以太网模块、继电器控制模块和门禁UPS电源模块,外部接口主要有UART异步串口、10/100M网络接口、USB接口。系统硬件组成框图如图2所示。
图2 门禁系统硬件结构框图
(1) S3C6410核心板
核心板采用三星公司S3C6410核心处理器,该处理器是一款基于ARM11内核的低功耗、高性价比的RSIC处理器。
(2) 无线Wi-Fi模块
本系统的无线Wi-Fi模块采用了腾达公司的150M高速无线USB网卡,该网卡采用RT3070网卡芯片,其与核心板之间主要通过USB接口来实现协议和数据交换,无线Wi-Fi模块的接口电路按照相关协议进行设计。
(3) UPS电源模块
电源模块是整个系统的能源动力机构,所以良好的电源供给是系统稳定运行的前提,本系统电源主要有12 V、5 V和3.3 V三种,为了使门禁装置在意外掉电后仍能正常工作,针对门禁系统的前级12 V电源模块采用UPS技术进行设计。其设计电路图如图3所示。
(4) 继电器控制模块
房门的控制信号是简单的开关量信号,所以本系统采用控制器输出I/O信号驱动继电器实现开门。为保障房门不受单一I/O口信号的误动作被打开,开门使能信号采用两个I/O输出不同电平(一高一低),经过同或门CD4077才能驱动硬件装置板上的光耦隔离开关,从而控制电锁开门。继电器控制模块电路如图4所示。
3 系统软件设计
系统软件主要由门禁装置服务器软件和用户移动智能终端门禁APP两个部分组成。其中门禁装置服务器软件平台采用嵌入式Linux系统,内核版本为3.0.1,具有体积小、效率高、网络功能稳定的特性,同时Linux平台上很多开源软件支持移植和二次开发。门禁装置服务器软件包括:无线Wi-Fi热点的开发、门禁数据库设计、后台服务器程序设计以及门禁WEB数据管理系统设计。而用户移动智能终端软件主要是基于Android系统的智能终端设备开发门禁应用程序。
图3 UPS电源模块电路
图4 继电器控制模块电路
3.1 无线Wi-Fi热点开发
门禁装置作为门禁系统的服务器,需要实现无线路由的基本功能,为客户机移动智能终端提供稳定的网络热点。本系统开发的Wi-Fi热点不受外部网络的影响,采用无线USB网卡实现,让无线网卡工作在Master模式下,使门禁装置成为无线接入点AP,提供无线接入服务和路由功能。门禁装置无线Wi-Fi热点的开发主要包括:网卡驱动移植、网络热点认证服务器软件HOSTAP的移植、动态分配IP协议服务器软件DHCP的移植,具体过程略——编者注。其中对应的驱动源码包都可利用网络资源获取。
3.2 门禁数据库的设计
3.2.1 移植嵌入式数据库SQLite3
图5 门禁数据库E-R图
要在门禁Linux系统下建立门禁数据库,需要嵌入式数据库的支持。数据库SQLite是一款基于嵌入式平台开发的轻型数据库,在很多嵌入式产品中都使用了SQLite数据库。它占用资源非常少,在嵌入式设备中可能只需要几百K的内存就够了[10],支持Windows/Linux/Unix等操作系统,并且能够和很多程序语言相结合,比如TCL、C#、PHP、Java等;且有ODBC接口,比起MySQL、PostgreSQL这两款数据库管理系统,它的处理速度更快[12]。本系统开发采用的是SQLite3数据库。
3.2.2 设计门禁数据库
门禁数据库主要是用来存储门禁用户基本信息、移动智能终端设备信息和门禁日志的,根据实际需求,在门禁数据库中,对应的实体有:用户实体、移动智能终端设备实体、系统配置信息实体、日志实体。设计的门禁系统数据库的E-R图如图5所示。
根据数据库的需求分析和E-R图,利用SQLIT3建立数据库文件存储门禁系统的基本信息,使用SQL语句建立4个表:用户基本信息表、移动智能终端设备信息表、门禁系统功能信息表、门禁日志基本信息表。
3.3 门禁后台服务器程序设计
门禁后台服务器程序主要完成以下方面的功能:接受用户移动智能终端设备的连接请求、获取智能终端设备的MAC地址和MEID移动设备识别码、获取用户发送的字符串信息(“动作命令#房门标签#设备MAC+MEID地址#设备类型”)、提取和分割字符串信息、进行数据库查询用户权限信息、进行用户设备注册、写门禁日志记录和发送开门信号等。
本门禁系统后台服务器程序的开发主要采用基于Linux系统C++的Socket网络编程,服务器监听端口为5 000,由于门禁服务器在同一时刻需要接收多个客户机的服务请求,所以采用Linux多线程编程技术解决多用户、多任务的需求。门禁后台服务器程序流程图略——编者注。
3.4 门禁WEB数据管理系统设计
为了节约成本和降低系统功耗,门禁装置没有开发相应的显示器,而是在其ARM-Linux平台上搭建WEB服务器,并编写相应的后台网页程序,这样门禁管理员就可以通过PC浏览器接口对门禁数据库进行有效的管理。
3.4.1 搭建WEB服务器
目前,在Linux系统中大多采用Apache服务器、PHP网页编程和MySQL的组合方式来搭建WEB服务器,但由于Apache和MySQL本身运行占用的系统内存和资源就很大[10],而嵌入式ARM的存储空间一般都是很有限的,所以这种组合方式不适用于本系统的WEB服务器搭建。因此选择对系统资源要求较低且功能相当的APPWEB和SQLite3来代替Apache与MySQL,最终利用APPWEB、PHP5和SQLite3三者的组合构建门禁装置的WEB服务器。
3.4.2 开发门禁系统管理网站
为了方便门禁管理员管理门禁系统,采用PHP结合C++语言操作数据库的方式,编写相应的动态网页程序,其中包括门禁管理平台的登录网页、用户管理页面、移动智能终端管理页面、系统配置页面以及管理人员的个人信息页面、门禁日志页面等。
3.5 Android移动智能终端门禁应用程序设计
在门禁系统工作过程中,用户的移动智能终端设备主要完成连接门禁装置网络热点和向门禁服务器发送相应的命令信息,实现注册和完成开门操作。本系统基于Android系统的移动智能终端设备开发了一个门禁APP应用程序,在整个门禁系统的通信中,用户的手机作为客户机,通过使用Java语言结合网络套接字编程来实现与门禁服务器之间的数据传递。程序设计流程图略——编者注。
4 系统测试
按照系统的设计思想,完成了门禁系统的软硬件设计,门禁系统软硬件略——编者注。
(1) 门禁Wi-Fi热点测试
实际测试中,将笔记本电脑连接到门禁装置Wi-Fi热点,通过查看无线网络连接状态可以得到无线网络的信号质量、网卡速度,通过Windows内置的“Ping”命令可以测试无线网络的速度。
在笔记本Windows的DOS下键入命令“Ping 192.168.1.10(门禁装置服务器IP)”,通过“Ping”命令测试得到的无线网络参数略——编者注。从图中可以看出发送了4个数据包,接收到的也是4个数据包,所以数据丢失率为0%,数据包环绕航行(发送到接收再到确认)时间最多为6 ms,最少为1 ms,平均用时2 ms,说明网络质量很好。
(2) 系统稳定性测试
为测试本门禁系统的实用性和稳定性,将其在西南科技大学计算机科学与技术学院部分实验室投入使用,安装使用到如今,系统各部分软硬件运行稳定,而且门禁装置安装简便,用户也不用配备额外的开门设备,利用自己的移动智能终端设备(如手机)就可以安全开门,因此深得用户的好评。
结 语
基于ARM-Linux的移动智能终端门禁系统,采用ARM-Linux嵌入式平台,利用无线Wi-Fi通信方式,整合了用户移动智能终端设备,将门禁数据库中用户的基本信息(姓名、性别、ID等)同移动智能终端设备进行绑定,并基于Android的移动智能终端设备开发门禁应用程序实现开门,同时为方便门禁系统的管理,开发了相应的门禁数据WEB管理系统。
[1] 伍银波,周卫,施金鸿.一种门禁系统设计方案[J].中国教育技术装备,2012,27(12): 105-108.
[2] 薛琳,魏兰磊,朱述川.基于GPRS和RFID技术的门禁控制系统[J].计算机技术与应用,2012,38(6):145-148.
[3] 严锡君,张腾宇,严研.基于ARM的无线门禁控制系统的研究与设计[J].微型电脑应用,2012,28(3):33-5.
[4] 徐勇.基于ARM门禁系统的设计与实现[J].通信技术,2010,10(43):117-119.
[5] 杨文浩,杨罕.交互式实验室门禁及管理系统的设计与研究[D].长春:吉林大学,2012.
[6] 孙际鹏,将朝根.基于ARM9和嵌入式Linux的门禁系统软件设计[D].成都:西南交通大学,2012.
[7] II-Kyu Hwang,Jin-Wook Back.Wireless access monitoring and control system based on digital door lock[J].Consummer Electronics,2008:1724-1730.
[8] Song Wei,Li Ming.A wireless access control system based on CDMA and DTMF technologies[C]//Computer Science and Network Technology (ICCSNT),International Conference on,2011.
[9] 哈尔滨工业大学.基于蓝牙的门禁系统及门禁控制方法:中国,2013010246771[P].2013-09-11.
[10] 杨萍.基于ARM-Linux的AppWeb+PHP+Sqlite嵌入式Web服务器技术[J].考试周刊,2011,75:159-160.
[11] Jouni Malinen.Hostapd and Wpa_supplicant Introduction[EB/OL].[2014-12]. http://www.w1.fi/.
[12] 刘祥,邓中亮.SQLite3在基于WinCE平台的移动智能终端的应用[J].工业控制计算机,2009,22(3):19-20.
[13] SAMSUNG Electronics Inc.S3C6410X RISC Microprocessor User’s Manual[M].Korea: Printed in the Republic of Korea,2009.
赵思蕊(硕士研究生)、杨文超、蒋宏宇,研究方向为嵌入式系统、人机交互;吴亚东(教授),研究方向为图形图像处理、人机交互。
Zhao Sirui,Wu Yadong,Yang Wenchao,Jiang Hongyu
(School of Computer Science and Technology,Southwest University of Science and Technology,Mianyang 621010,China)
An access control system of mobile intelligent terminal based on ARM-Linux platform and Wi-Fi communication is designed,which includes access control device and user mobile intelligentx terminal equipment.The access control device uses S3C6410 processor and embedded Linux as the software development platform.Mobile intelligent terminal device is the proof of opening door,mobile intelligent terminal development access APP base on Android,which realizes the functions of user authentication,registration,and opening door.Results of the test indicate that the program design has obvious advantages on security,easy operation and low cost compared with the existing techniques and solutions.
access control system;ARM-Linux;S3C6410;Wi-Fi;mobile intelligentx terminal
四川省科技创新苗子工程资助项目(2014-044),项目名称为智慧家庭管家。
TP39/TP312
A
士然
2014-12-30)