基于ARM Linux的WiFi智能终端门禁系统
eeskill 2021-10-22

引言

随着社会经济的快速发展,人们对室内人身财产安全要求越来越高,门禁系统作为智能建筑安防自动化体系中必不可少的一部分[1],发挥着极其重要的作用。当前常见的门禁系统包括:密码锁门禁系统、感应式IC卡门禁系统、基于电话短信方式的门禁系统以及生物特征识别门禁系统等。

随着科技的不断进步和人们生活水平的不断提高,移动智能终端越来越普及,包括智能手机、平板电脑等。为此,本文研究设计了一种基于嵌入式ARMLinux平台,并将用户已有的移动智能终端设备作为用户身份凭证的无线WiFi门禁系统。

1门禁系统总体结构

移动智能终端门禁系统主要由移动智能终端、门禁装置、控制部件(电锁)和PC终端组成。系统总体拓扑示意图如图1所示。

根据门禁系统的实际需求,系统每个部分的构成和功能略——编者注。

2系统硬件设计

门禁系统的硬件主要由门禁装置构成。门禁装置硬件采用S3C6410核心板,外围搭建相应功能的模块电路,包括无线WiFi模块、以太网模块、继电器控制模块和门禁UPS电源模块,外部接口主要有UART异步串口、10/100M网络接口、USB接口。系统硬件组成框图如图2所示。

(1) S3C6410核心板

核心板采用三星公司S3C6410核心处理器,该处理器是一款基于ARM11内核的低功耗、高性价比的RSIC处理器。

(2)无线WiFi模块

本系统的无线WiFi模块采用了腾达公司的150M高速无线USB网卡,该网卡采用RT3070网卡芯片,其与核心板之间主要通过USB接口来实现协议和数据交换,无线WiFi模块的接口电路按照相关协议进行设计。

(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平台上很多开源软件支持移植和二次开发。门禁装置服务器软件包括:无线WiFi热点的开发、门禁数据库设计、后台服务器程序设计以及门禁WEB数据管理系统设计。而用户移动智能终端软件主要是基于Android系统的智能终端设备开发门禁应用程序。

3.1无线WiFi热点开发

门禁装置作为门禁系统的服务器,需要实现无线路由的基本功能,为客户机移动智能终端提供稳定的网络热点。本系统开发的WiFi热点不受外部网络的影响,采用无线USB网卡实现,让无线网卡工作在Master模式下,使门禁装置成为无线接入点AP,提供无线接入服务和路由功能。门禁装置无线WiFi热点的开发主要包括:网卡驱动移植、网络热点认证服务器软件HOSTAP的移植、动态分配IP协议服务器软件DHCP的移植,具体过程略——编者注。其中对应的驱动源码包都可利用网络资源获取。

3.2门禁数据库的设计

3.2.1移植嵌入式数据库SQLite3

要在门禁Linux系统下建立门禁数据库,需要嵌入式数据库的支持。数据库SQLite是一款基于嵌入式平台开发的轻型数据库,在很多嵌入式产品中都使用了SQLite数据库。它占用资源非常少,在嵌入式设备中可能只需要几百K的内存就够了[10],支持Windows/Linux/Unix等操作系统,并且能够和很多程序语言相结合,比如TCL、C#、PHP、Java等;且有ODBC接口,比起MySQL、PostgreSQL这两款数据库管理系统,它的处理速度更快[12]。本系统开发采用的是SQLite3数据库。

3.2.2设计门禁数据库

门禁数据库主要是用来存储门禁用户基本信息、移动智能终端设备信息和门禁日志的,根据实际需求,在门禁数据库中,对应的实体有:用户实体、移动智能终端设备实体、系统配置信息实体、日志实体。设计的门禁系统数据库的ER图如图5所示。

根据数据库的需求分析和ER图,利用SQLIT3建立数据库文件存储门禁系统的基本信息,使用SQL语句建立4个表:用户基本信息表、移动智能终端设备信息表、门禁系统功能信息表、门禁日志基本信息表。

3.3门禁后台服务器程序设计

门禁后台服务器程序主要完成以下方面的功能:接受

用户移动智能终端设备的连接请求、获取智能终端设备的MAC地址和MEID移动设备识别码、获取用户发送的字符串信息(“动作命令#房门标签#设备MAC+MEID地址#设备类型”)、提取和分割字符串信息、进行数据库查询用户权限信息、进行用户设备注册、写门禁日志记录和发送开门信号等。

本门禁系统后台服务器程序的开发主要采用基于Linux系统C++的Socket网络编程,服务器监听端口为5 000,由于门禁服务器在同一时刻需要接收多个客户机的服务请求,所以采用Linux多线程编程技术解决多用户、多任务的需求。门禁后台服务器程序流程图略——编者注。

3.4门禁WEB数据管理系统设计

为了节约成本和降低系统功耗,门禁装置没有开发相应的显示器,而是在其ARMLinux平台上搭建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.5Android移动智能终端门禁应用程序设计

在门禁系统工作过程中,用户的移动智能终端设备主要完成连接门禁装置网络热点和向门禁服务器发送相应的命令信息,实现注册和完成开门操作。本系统基于Android系统的移动智能终端设备开发了一个门禁APP应用程序,在整个门禁系统的通信中,用户的手机作为客户机,通过使用Java语言结合网络套接字编程来实现与门禁服务器之间的数据传递。程序设计流程图略——编者注。

4系统测试

按照系统的设计思想,完成了门禁系统的软硬件设计,门禁系统软硬件略——编者注。

(1) 门禁WiFi热点测试

实际测试中,将笔记本电脑连接到门禁装置WiFi热点,通过查看无线网络连接状态可以得到无线网络的信号质量、网卡速度,通过Windows内置的“Ping”命令可以测试无线网络的速度。

在笔记本Windows的DOS下键入命令“Ping 192.168.1.10(门禁装置服务器IP)”,通过“Ping”命令测试得到的无线网络参数略——编者注。从图中可以看出发送了4个数据包,接收到的也是4个数据包,所以数据丢失率为0%,数据包环绕航行(发送到接收再到确认)时间最多为6 ms,最少为1 ms,平均用时2 ms,说明网络质量很好。

(2) 系统稳定性测试

为测试本门禁系统的实用性和稳定性,将其在西南科技大学计算机科学与技术学院部分实验室投入使用,安装使用到如今,系统各部分软硬件运行稳定,而且门禁装置安装简便,用户也不用配备额外的开门设备,利用自己的移动智能终端设备(如手机)就可以安全开门,因此深得用户的好评。

结语

基于ARMLinux的移动智能终端门禁系统,采用ARMLinux嵌入式平台,利用无线WiFi通信方式,整合了用户移动智能终端设备,将门禁数据库中用户的基本信息(姓名、性别、ID等)同移动智能终端设备进行绑定,并基于Android的移动智能终端设备开发门禁应用程序实现开门,同时为方便门禁系统的管理,开发了相应的门禁数据WEB管理系统。

声明: 本文转载自其它媒体或授权刊载,目的在于信息传递,并不代表本站赞同其观点和对其真实性负责,如有新闻稿件和图片作品的内容、版权以及其它问题的,请联系我们及时删除。(联系我们,邮箱:evan.li@aspencore.com )
0
评论
  • 【7.24 深圳】2025国际AI+IoT生态发展大会/2025全球 MCU及嵌入式技术论坛


  • 相关技术文库
  • 物联网
  • 蓝牙
  • WIFI
  • LoRa
  • 水质测量系统的参考设计

    Circuits from the Lab®参考设计Analog Devices公司的Circuits from the Lab®参考设计是Analog Devices公司熟练的工程师为各个领域最终产品而制作的包含基板、布局在内的全部设计信息、软件...

    2024-12-09
  • 使用手势传感器制作钥匙锁认证系统

    手势传感器用例子 – 钥匙锁认证系统 作为代替机械按钮和开关的新用户界面,手势传感器正在受到关注。但是,很多人不知道手势传感器实际上适用于哪个应用。将手势传感器用作用户界面的优势应用...

    2024-12-09
  • 智能家居的传统居住功能

    智能家居是未来发展趋势,在喜爱科技化的小伙伴家中,智能家居也是必不可少的组件。为增进大家对智能家居的认识,本文将对智能家居、智能家居系统的安装予以介绍。如果你对智能家居具有兴趣,不妨和小编一起继续往...

    2024-07-23
  • 工业物联网应用层如何实现所感知信息的应用服务?

    物联网" target="_blank">工业物联网的应用具有实时性、自动化、嵌入式(软件)、安全性、和信息互通互联性等特点,在上篇文章中,小编对工业物联网感知层、现场管理层、网络层有所阐述。为增进大家对工业物联网的认...

    2024-07-08
  • 物联网安全性:建立单独网络的重要性

    物联网IoT这个概念,已经发展了好多年了,想必大家对于物联网这3个字早已不再陌生了。为增进大家对物联网的认识,本文将对提升物联网安全性的10个技巧予以介绍。如果你对物联网或是本文内容具有兴趣,不妨继续往下...

    2024-07-08
  • 云存储的三大分类和两个隐患

    存储是各电子设备均存在的组件或者能力之一,通过存储,能够帮我们存储运行过程中产生的数据。依据存储的不同,可分为对象存储、文件存储等。目前,最火热的存储方式之一,便是云存储。为增进大家对云存储的认识,...

    2024-06-21
  • 云存储的3大类型

    云存储作为目前最火热的存储方式之一,自然受到不少人的关注。上篇文章中,小编对云存储的分类以及云存储的版本、隐私问题有所阐述。本文中,为增进大家对云存储的认识,将对云存储的选择、云存储的一些弊端予以介...

    2024-06-21
  • 云存储的优势及文件管控

    前两篇文章中,小编对云存储分类、云存储版权问题、云存储的选择以及云存储的弊端有所阐述。为增进大家对云存储的认识,本文将对云存储的优势以及云存储文件管控予以介绍。如果你对云存储具有兴趣,不妨继续往下阅...

    2024-06-21
  • BLE抗干扰的几种解决方案

    蓝牙作为常用技术,早已被现代居民所接受。但是,大家想过一个问题吗?蓝牙为什么被称为蓝牙呢?蓝牙的命名缘由是什么?本文中,小编将对该问题予以探讨。此外,小编还将介绍蓝牙技术存在的几个问题,以及蓝牙抗干扰的...

    2024-06-21
  • AGV远程控制及工作环境实时监控的实现

    1 总体方案设计 物流中心自动引导小车(AGV)控制系统由AGV智能控制模块、监视模块、及无线网络通讯模块等三大部分组成。工作过程是通过接入互联网的手机或者微机客户端通过无线网络向远程的AGV发送控制指令代码,期...

    2024-06-14
下载排行榜
更多
评测报告
更多
广告