《指纹识别门禁系统开发实例.ppt》由会员分享,可在线阅读,更多相关《指纹识别门禁系统开发实例.ppt(15页珍藏版)》请在得力文库 - 分享文档赚钱的网站上搜索。
1、指纹识别门禁系统开发实例基于嵌入式的指纹识别门禁系统数据存储CPU处理器控制器I/O外部设备指纹传感器应用环境与硬件设计概要本指纹识别门禁系统采用电容式压感指纹传感器(FPS200 芯片)并且基于网络的指纹门禁考勤系统1.系统功能概述(1)指纹门禁/考勤指纹门禁:在终端上录入指纹,当指纹合法时,可以开门指纹考勤:在终端上录入指纹,做上班或者下班的考勤记录,用这个记录可以计算用户的工资,出勤情况(2)分布式和非分布式分布式:终端将采集的指纹原始数据发送到服务器,有服务器进行指纹识别算法,计算完毕以后,服务器决定是否想终端发送开门指令。非分布式:非分布式指一个终端系统可以进行指纹算法等复杂功能,基
2、本不需要服务器帮助处理。(3)终端和服务器终端有指纹采集、屏幕输出、键盘输入、声音报警、LED灯指示功能。服务器中的服务程序能够和终端机进行数据交换、指纹对比算法、查询数据库等复杂动能。指纹合法,发送开门指令;非法,则报警。2.系统的主要功能描述(1)门禁功能如果门禁功能被激活,当按下手指以后,服务器将判断是否发送开门指令。(2)考勤功能如果考勤功能被激活,则当按下手指以后,服务器首先判断ID和指纹是否相符,然后再看这个终端机是否在这个时间允许这个用户考勤,如果是就做一次考勤记录,并且查询数据库,显示是否迟到、个人留言等信息。3.系统的硬件结构这里的硬件只针对终端的硬件,3部分:指纹传感器、核
3、心处理板以及外部控制板。指纹识别门禁系统的终端结构示意图电源 CPU GAL器件 网卡芯片 SRAM I2C接口 Flash芯片调式接口液晶屏接口RJ-45键盘接口控制输出指纹芯片接口门锁及LED指示Internet/IntranetRS232 指纹识别原理框图指纹图像预处理获取指纹图像提取指纹特征点对比特征点计算方向图图像二值化图像细化图像滤波设备驱动编写框架在嵌入式Linux操作系统内核中提供了驱动程序的框架,在嵌入式指纹驱动程序是,根据FPS200芯片实现的功能,编写FPS200的驱动。然后把FPS200硬件驱动程序嵌入Linux中。设备驱动的框架如下:#define MODULE#in
4、clude#include#include#include#include#include#include#include int init_module(viod)clps_writel(0 x01,PDDR);return 0;void cleanup_module(void)clps_writel(0 x01,PDDR);指序芯片驱动FPS200芯片的功能采集,它的工作方式是用户把手指放在采集板上之后,采集板产生一个硬件中断通知ARM,此时用户程式可以通过读取中断标准位的方纹得到该响应。为了能够使用FPS200驱动,还需要在/dev目录下创建一个设备文件,创建方法如下:#cd/arm/a
5、rmroot/dev#mknod fps200 c 240 0用户程序1.打开/dev/fps200设备文件2.读取中断标志3.发送ioctl控制字得到指纹图片4.保存指纹图片为bmp位图驱动程序1.初始化FPS2002.申请内存空间3.申请中断4.定义Open、ioctl、release操作/dev/fps200对FPS操作的基本函数fps200_openfps200_ioctlFps200_releaseFPS200驱动框图FPS200硬件驱动程序正确结果:1.运行程序以后串口输出ID:2022(对veridicom公司的芯片),其他公司20XX。2.输出reg ok表示指纹芯片测试无误。
6、3.从串口发送一个字符,程序将以Hex形式从串口输出一次采集指纹数据,再从串口发送一个字符采集继续进行。将所有接受到得数据存在I2C.txt中,并放到CtoHex.exe所在的目录,运行CtoHex.exe程序,产生finger.dat文件,用PFProcess.exe程序查看finger.dat所存储的指纹图像。基于ARM Linux的指纹识别门禁系统1.FPS200D的内部结构 FPS200传感器的每一列都有两个采样保持电路,一个用来存储放电前电容两端的电压。另一个用来存储放电后电容两端的电压。两个采保持电路的差值可以度量电容的变化。先指定行高阶地址寄存器(RAH)和行低阶地址寄存器(RA
7、L)中的数据以指定待读取的行,再指定列地址寄存器(CAL)从而启动行捕获,等待一段时间(行捕获时间)后,连续读取控制寄存器(CTRLA)、获得某一点的指纹采样值,读完会自动触发下一次A/D转换,读完一行后再写入RAH、RAL以读取下一行,直至最后一个像素。FPS200内部控制逻辑256x300传感器阵列采样控制A/D转换模拟多振荡晶振功能寄存器控制数据寄存器索引寄存器SPIUSBD7:0A0RDWRCS0CS1EXTINT TESTMode1Mode2AINFSETXTAL2.系统硬件电路结构图D7D6D5D4D3D2D1D0A0nSDCASnSDWEnCS3nEINT22019181716151413121110987654321+C46 33uFVCC3系统简单工作流程终端系统初始化通过网卡像服务器发送联络数据包,然后等待回应是否收到服务器回应?联机工作,等待按键或者指纹输入是否有键按下?是否有手指按下?获取指纹数据并发送到服务器进行比对,根据返回的结果进行相应显示和控制各部件复位,重新连接根据按键进行相应的处理和显示否是否是是否结束