基于Linux系统的指纹识别门禁系统

发布者:leader4最新更新时间:2020-02-29 来源: eefocus关键字:Linux系统  指纹识别  门禁系统 手机看文章 扫描二维码
随时随地手机看文章

简介:对于在Linux 系统下的由FPI 指纹识别模块、Raspberry Pi 主控模块、AVR 模块组成的,采用无线通讯方式定时向用户发送邮件来监控门锁状态的指纹识别系统的研究至今未见诸报端。本文在不改变现有门锁结构的前提下,通过设计编程,开发了一套基于指纹识别的门禁系统,定时检测门锁状态并向用户发送报警邮件,大大增强了门锁的安全性。


指纹作为人体的身体特征,具有唯一性、稳定性和不易盗用等特点。随着指纹识别理论逐渐成熟、指纹采集工具这一难题得到解决,指纹识别已经成为目前最广泛应用的生物识别之一,逐渐取代了传统的认证识别方式,广泛应用于金融、公安、证券、门禁系统等领域。指纹识别技术的研究已经成为当前建筑智能化研究的热点。但是对于在Linux 系统下的由FPI 指纹识别模块、Raspberry Pi 主控模块、AVR 模块组成的,采用无线通讯方式定时向用户发送邮件来监控门锁状态的指纹识别系统的研究至今未见诸报端。本文在不改变现有门锁结构的前提下,通过设计编程,开发了一套基于指纹识别的门禁系统,定时检测门锁状态并向用户发送报警邮件,大大增强了门锁的安全性。


1 指纹识别的技术原理


指纹识别的技术原理是从指纹数据库中查找与采集指纹是否匹配的指纹数据,达到通过辨别身份实现开关门锁的目的。其基本原理如图1 所示,指纹识别系统由指纹图像采集、指纹图像预处理、指纹特征提取、指纹特征匹配、特征数据库等几部分组成。指纹图像预处理采用了Gabor 滤波的方法进行灰度图滤波去噪,通过将图像滤波后,对其进行二值化处理使各种噪声得到滤除或者修正。指纹特征提取是建立在对该点8 邻点统计分析基础之上,特征点通过计算CN(CroosingNumber)得到。指纹特征匹配的过程是计算两幅指纹相似程度的过程,在做指纹匹配前必须把不同的指纹图像校准,找到输入特征点集和模板特征点集之间的最佳变换。


指纹识别系统大体上可分为两个内容:指纹注册和指纹比对。指纹注册主要包括指纹采集、指纹图像预处理、特征点提取和特征值存储。指纹比对的前3 步操作与指纹注册完全相同,在特征点提取后,生成的指纹特征值将与存储在指纹特征数据库的特征值作特征匹配,最后输出匹配结果。


图1 指纹识别技术的基本原理


2 指纹识别系统硬件开发


指纹识别系统主要由FPI 指纹识别模块、Raspberry Pi 主控模块、AVR 模块3 部分组成,该硬件结构如图2 所示。三方通讯实现用户的指纹录入和匹配,以及门锁的开关,并且以发送邮件的方式来监控门锁的状态。FPI 指纹识别模块强大的图像处理功能对指纹识别非常灵敏,及时处理接收到的指纹信息,并与Raspberry Pi 通讯;Raspberry Pi 模块,一方面控制AVR 去检测门的开关状态以及开关门锁,另一方面控制FPI 指纹录入和匹配,并在Raspberry Pi 上建立数据库记录用户信息;控制器AVR 反馈给Raspberry Pi 门的开关状态,并且控制电机来开关门锁,加强了在硬件方面的拓展,可通过硬件在更多方面对门进行监测。此外,使用了无线通讯模块,避免了过多布线可能对原本门锁结构的破坏,使该系统的硬件组成方便快速。

图2 系统的硬件结构


2.1 指纹识别模块


指纹模块基于TI 公司的TMS320VC5509高级数字DSP处理器为主核,芯片结构框图如图3 所示。高精光学采集头(TFS-D0307),高速、稳定; 标准UART 接口通讯,标准8 字节通讯协议, FPI 完成处理接收到的指纹信息, 并与Raspberry Pi主控模块通讯的工作。

图3 指纹识别芯片FPI


2.1.1 图像采集芯片


FPI 芯片上集成了图像采集芯片FPC1011F,FPC1011F指纹传感器是电容式半导体传感器件,该电容式指纹传感器利用了反射式探测技术,属于平面式采集指纹传感。相比传统的电容式传感器,它采集的是指头的真皮层,且对干湿手指有良好的适用性。FPC1011F 的指纹采集原理:FPC1011F指纹传感器是由152×200 个传感器阵列组成的,每一个阵列是一个金属电极,充当电容器的一极,安在传感面上的手指头的对应点则作为另外一极,其工作原理是基于变极板间距的电容式传感器,其电容量由式(1)确定:

(式中:C 为电容量;d 为极板间距;ε0为真空介电常数;εr为极板间介质的相对介电常数;s 为极板的有效面积)


当手指接触传感器导电框以后,由式(1) 可知, 谷和脊因为离传感器阵列的距离不同, 产生了不同的电容值C,经过运算放大电路, 形成不同的电压值, 通过内部的A/D 转换,获得高质量的数字指纹图像。


2.1.2 处理器


该系统采用的主处理器是TMS320VC5509 的32 位定点高速数字DSP 处理器,开发板的硬件包括:USB2.0FullSpeed接口用以传输图像、视频等高速数据; 片外外扩1M BytesFLASH;RTL8019AS网络接口芯片,实现以太网通讯太网电路;开发接口:UART(RS232)与上位机实现通讯;2 路10 位A/D 输入接口。


2.2 主控模块


该系统采用的主控模块Raspberry Pi,代替了体积庞大的电脑实现控制功能。Raspberry Pi 是一款基于ARM,操作系统采用开源的Linux 系统的个人电脑,配备一枚700MHz 的处理器,支持SD 卡和Ethernet, 拥有两个USB 接口,以及HDMI 和RCA 输出支持。Raspberry Pi 一方面控制AVR 去检测门的开关状态以及开关门锁,另一方面控制FPI 的指纹录入以及匹配并在Raspberry Pi 上建立数据库记录用户信息。


利用这些硬件便可以进行嵌入式开发,快速的建立起指纹识别系统的硬件系统。


3 指纹识别系统软件开发


该系统基于Linux 操作系统,将自动指纹识别系统移植到嵌入式Linux,在Linux 上进行指纹识别系统的软件设计,指纹识别系统的软件设计包括四个方面:上位机与AVR 串口通讯、上位机与指纹模块串口通讯、维护MYSQL 以及脚本发送报警。


3.1 指纹识别的处理过程


如图4 所示:首先对串口进行初始化,打开串口设备0、1,设置串口参数,恢复串口未阻塞状态,串口初始化成功后执行用户选择功能:注册开门账号或注册关门账号或运行门禁服务[N/C/R]。选择系统功能N 后注册新开门用户,对同一指纹共获取3 次图像,与传统采集一次图像相比,杜绝了随意采集造成的注册指纹不精和验证时不易识别的问题。采集指纹成功后输入用户个人信息,注册来自上位机数据库的新ID号并把该用户指纹信息存入数据库,然后选择是否继续添加用户。同理用户选择系统功能C后完成注册关门用户的操作。


用户选择系统功能R 后运行门禁服务,一方面AVR 查询当前门锁状态, 例如把开门的命令赋给门的匹配状态,如果指纹匹配操作FPI 和门的匹配状态相同,则由继电器接收来自AVR 的开门命令,带动电机执行开门动作,并且记录当时时间,向本地数据库添加一条新的用户使用记录并写进日志里。同理执行关门命令。另一方面AVR 查询当前电机电流等级,将门锁的实时开关状态,由谁执行开关门动作和当前门锁电机电流状态通过邮件的方式发送给用户,实现对门的实时监控,大大增强了门禁系统的安全性。


3.2 邮件的发送

图4 系统工作方式流程图


Raspberry Pi 上的ARM 通过RS 232 串口接收来自AVR定时地对门禁状态和电流状态的查询信息,并编写Shell 脚本程序,利用wifi 通过串口传送给邮件发送模块,将报警内容发送到指定的用户邮箱中来定时监控门锁的状态。程序如下:

这一部分完成信息的打包并将报警内容发到指定邮箱中的功能。AVR 定时检测门的状态和当前电流的状态,当没有人执行开关门操作时,door.log 的内容为“0”,当有人执行开关门操作或者电流超过一定数值时,door.log 内容为“1”,其中开关门锁包含两种情况:一是已注册的用户通过指纹识别成功实现开关门锁;二是没有注册过的用户指纹识别失败但是打开了门锁。文件夹从数据库调用这一数据并将数据发送到指定用户的邮箱里,然后door.log 重新变为“0”,如此循环检测门的状态。


Raspberry Pi 上的ARM 通过RS232 串口接收来自AVR定时地对门禁状态和电流状态的查询信息,并编写Shell 脚本程序,利用wifi 通过串口传送给邮件发送模块,将报警内容发送到指定的用户邮箱中来定时监控门锁的状态。


4 系统测试


为检验该指纹识别门禁系统的性能,打开Linux 程序,注册登记4 个不同的指纹, 然后用不同的手指作指纹识别测试。分别观察指纹识别成功和失败时执行机构的动作,一共测试50 次,部分系统测试结果的邮件正文内容如表1 所示。


表1 系统测试结果表

由表1 可以看出,邮件的内容包括ID、Name、Action、Date四项。其中前七行是已注册过的用户通过指纹识别成功实现开关门锁,所以邮件中会有他们的ID 号和姓名信息,而最后一行的用户指纹识别失败但是打开了门锁,所以邮件中将他们的ID 和姓名设置为NULL,提醒管理员特别注意当时门锁状态以实现管理员对门状态的定时监控。


5 结论


文中基于指纹识别技术采用FPI 指纹识别模块,结合Linux 设计了指纹识别门禁系统,设计的一个特点是基于Linux 操作系统,建立并发执行环境,提高CPU 的利用率,并且用Raspberry Pi 主控模块和无线通讯模块使得整个结构更加简单,对系统性能有一个明显的提高。另外一个特点是定时检测门锁状态并采用无线通讯方式向用户发送报警邮件,大大增强了门锁的安全性。实用测试结果表明,系统运行良好,能够进行可靠安全的指纹识别,准确、快速地完成个人身份的验证实现开关门功能和定时快速的邮件报警操作。在后续的工作中,系统可以实现现有程序的稳定性提升,以提高系统的性能使指纹门锁功能更加完善。

关键字:Linux系统  指纹识别  门禁系统 引用地址:基于Linux系统的指纹识别门禁系统

上一篇:AVR单片机驱动CH451实例程序_C语言
下一篇:AVR 存储器组织结构及内部EEPROM读写范例

推荐阅读最新更新时间:2024-11-07 08:23

测口臭/辐射/紫外线 手机比你想的要奇葩
    几周前联想发布了ZUK Z2 Pro,与之同时诞生的就是那听起来格外响亮的“九大全球第一”。这其中包括了“全球第一个能用心跳拍照的旗舰手 机”、“全球第一个能湿手指纹解锁的旗舰手机”、“全球第一个能测心率、血氧、紫外线的旗舰手机”等等看起来让人觉得有点小奇葩的功能点。但说实话,所有 “全球第一”的新功能刚出来的时候多少都会让人觉得有些奇葩,而谁又能想到这些功能在几年之后还真就普及成了日常呢?所以下面我们就来说说在手机产品中的那些“奇葩”们。只不过这些奇葩中有一些尚未普及,有一些却已经变得司空见惯了。 测口臭/辐射/紫外线 手机比你想的要奇葩   既然文章开头提到了ZUK Z2 Pro这次“测心率、血氧、紫外线”的功能,我
[手机便携]
手机指纹识别屡遭破解 国内产业链观望
    三星智能手机Galaxy S5于4月11日起在全球125个国家开卖,其配备的指纹识别技术可支持PayPal支付,然而不到一周,三星Galaxy S5指纹传感器即遭破解,重蹈了去年iPhone5S的覆辙。目前国内移动终端指纹识别产业链公司,尚处于观望阶段,未来发展还面临指纹数据库健全和银行认证等问题。 便利性先于安全性 三星Galaxy S5上市尚未满一周,德国柏林Security Research Labs (安全研究实验室,以下简称SRL)研究员就上传了指纹破解视频,演示了如何利用可拍照手机和橡胶膜制作了一副“假指纹”,骗过了Galaxy S5指纹传感器,并获得该手机的主页面访问权以及在线支付PayPal应用的访问权。而P
[手机便携]
家庭公寓双升温,智能门锁如何避免技术性踏空?
智能门锁 因为同时满足了用户便利性和运营方管理效能提升的双重诉求,自2016年快速起量。   根据思锐达咨询近期发布的《2017—2020年中国智能门锁技术与应用市场分析报告》统计,2017年智能门锁(须带有生物识别或联网功能)市场规模接近800万把,预计2020年将会有超过6000万把智能门锁,年增长率均超过100%。   目前在家庭应用端 指纹识别 技术基本已经成为标配。除此之外,智慧产品圈在市场调研中了解到,在公寓市场,尤其短租公寓,公安部门已经在推动指纹锁的应用,以指纹识别对个人身份鉴定的精准性来管理流动人口,以打击逃犯、吸毒、聚赌等不法分子和社会治安犯罪事件。   比如,去年一家知名的短租平台公司因为相关事件被公安部门罚
[嵌入式]
Linux系统启动时间优化方案
(1)首先是对Linux启动过程的跟踪和分析,生成详细的启动时间报告。 较为简单可行的方式是通过PrintkTime功能为启动过程的所有内核信息增加时间戳,便于汇总分析。PrintkTime最早为CELF所提供的一个内核补丁,在后来的Kernel 2.6.11版本中正式纳入标准内核。所以大家可能在新版本的内核中直接启用该功能。如果你的Linux内核因为某些原因不能更新为2.6.11之后的版本,那么可以参考CELF提供的方法修改或直接下载它们提供的补丁:http://tree.celinuxforum.org/CelfPubWiki/PrintkTimes 开启PrintkTime功能的方法很简单,只需在内核启动参数中增加“tim
[嵌入式]
从传统门禁到云控——新一代门禁系统势在必行
    门禁作为整个安防体系的重要系统,可以有效阻止外来闲杂人员进入管控区域扰乱正常秩序,保证企业及员工财产的安全,成为安防体系的重要支柱。传统的PACS体系结构已历经二十年,由于硬件处理能力和通信速度的限制,这些系统通常具有很高的维护和替换成本。由于传统架构的安全漏洞越来越多,也给用户提供了不必要的限制。新一代门禁体系架构,更易集成到它的基础设施,采用先进的云计算方法,具有虚拟化和移动性的特点,可减少安全攻击的威胁。   新一代云控门禁体系结构是一次新的产业革命,从根本上与传统门禁是不同的,并不是简单的增量变化就能实现商业上的成功。它是最大限度地建立在互联网+、云计算等信息基础设施上,完成在计算、通信和设备的技术更新,并提供强大的
[安防电子]
配置曝光:诺基亚9 (2018)或将支持屏内指纹识别
    去年年底的时候,有外媒曝光了诺基亚9 (2018)的渲染图,而在本月早些时候,外媒又曝光了这款手机的配置细节,若曝光消息属实,那么这款手机将是诺基亚的年度旗舰。该机将采用一块5.7吋大小的无边框显示屏,而屏幕比例则是18:9,并搭载骁龙845处理器。   此前还有消息称诺基亚9 (2018)还将支持屏内指纹识别功能,现在又有“可信赖”资源透露该机的确将采用屏下指纹识别功能。目前,vivo为唯一一家发售屏下指纹识别的手机制造商。 屏下指纹识别功能   除此之外,诺基亚9(2018)在设计、相机等方面都将迎来突破性创新,或还将引用iPhone X的“刘海”屏。   那么,事实的真相是否如呢?我们还将拭目以待。
[手机便携]
嵌入式Linux系统中的快速启动技术研究
       嵌入式Linux系统主要特点在于使用Bootloader替代了桌面系统的BIOS,同时对系统进行了规模上的裁剪,但硬件上的劣势往往导致系统启动速度较慢,而嵌入式产品使用者又对系统的开机速度比较敏感,样就产生了对于提高嵌入式Linux系统启动速度的需求。本文对系统启动时执行哪些阶段的操作,以及缩短这些操作时间的方法进行了探讨。    1 嵌入式Linux系统启动时序   目前,嵌入式系统的硬件平台和应用方向区别很大,但总体启动流程一致的。这里的系统启动是指从用户执行上电/复位操作,到系统开始提供用户可接收的服务水平所需要的过程。典型的上电/复位时序如表1所列。        表1 嵌入式Linux系
[嵌入式]
被动门禁系统的RF设计注意事项
被动门禁 (Passive Entry, PE)系统在汽车舒适度和安全性方面正在引领一个新的发展趋势。就完全性而言,遥控无匙门禁(Remote Keyless Entry, RKE)系统是交互式的,即用户必须按下钥匙才能打开车门;而被动门禁系统则是被动式的,也就是说,它们无需用户做出任何交互式动作就可以打开车门。当用户准备进入车辆时,通过拉门柄的动作触发PE系统发射低频Low frequency, LF)信号。几毫秒内密钥卡接收到LF信号,并对接收到的数据包进行加密,然后经由射频(RF)信道把加密信号发送给车辆作确认。 被动门禁系统还可以包含一个被动式引擎发动功能,即被动门禁启动(Passive Entry Go, PEG)。只要
[模拟电子]
被动<font color='red'>门禁系统</font>的RF设计注意事项
小广播
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved