【无线创意秀】【原创】嵌入式无线指纹考务管理系统
0赞这个系统是我的得意之作,曾经获得过全国大奖,已经申请了专利,首先把这个系统简单给大家介绍一下:
引言
当前,在考试中主要使用准考证、学生证或者身份证验证考生的身份。但是,伪造准考证和身份证请“枪手”进行替考的事情时有发生。要杜绝代考舞弊行为,就要对考生身份真实性进行认证,这是当前考试工作中迫切需要解决的问题。
计算机指纹身份自动识别技术是众多身份识别技术中起步最早、最为成熟的技术,是当今世界上先进的身份识别方式之一。人的指纹作为一个随身携带的“特殊印章”具有独特的单一性和排他性,不能假冒。指纹身份识别同传统的身份手段(如IC卡、密码等)相比,具有不可替代、不可假冒、不易丢失、便于携带等众多优点。因而,将指纹自动识别技术应用与考生身份识别,可以解决“替考”这一长期捆扰考试管理部门的问题,从而保证考试制度的公平、公正,确保考试的严肃性,维护广大考生的利益。
本系统以嵌入式微处理器ARM9为硬件核心,应用无线通信网络技术和以太网技术,通过移植操作系统Linux,并在其上开发相应的驱动程序、应用程序和数据库程序,实现一个便携式、可软实时无线通信的指纹采集及验证装置。
完整的考务管理系统由基于ARM9的考务管理器、无线/有线数据中继器和考务中心组成(服务器)。考务中心是数十台考务管理器的后台管理中心,考务管理器通过无线/有线数据中继器与考务中心进行数据通信。由于采用了有线和无线的组网方式,在不方便连线的地方可以以无线的方式组网,方便快捷。
总体设计
本系统以嵌入式微处理器ARM9为硬件核心,应用无线通信网技术和以太网技术,通过移植嵌入式、操作系统Linux,实现一个便携式、可软实时通信的指纹采集及验证装置,将采集到的指纹数据进行相应的处理,然后通过Ethernet、USB无线网卡等多种方式向服务器传送。服务器可以与原有的数据库信息进行匹配,通过软件获得指纹图像的相关信息,结构如图1所示:
本系统选用基于ARM9的UP-NETARM2410-S的硬件开发平台(如图2所示)、嵌入式操作系统选用Linux,其中UP-TECHPXA270的硬件开发平台主要特性如下:
(1) 8寸640*480TFT真彩LCD触摸屏
(2) 4 个主USB口、1个从USB口
(3) 2 个JTAG接口
(4) 一个100M网卡,预留一个100M网卡
(5) 两个串口、一个485接口
(6) CAN 总线接口
(7) PCMCIA 接口
(8) IDE 硬盘接口
(9) CF 卡接口
(10) 8 个用户自定义LED数码管
(11) 17 键键盘
(12) PS2 鼠标、键盘接口
(13) 高性能立体声音频模块,支持放音、录音
(14) 一个168Pin的扩展插座,硬件可无限扩展
操作系统平台:
本考务管理系统选用Linux操作系统,与采用Windows CE和其他商用的嵌入式系统相比,源代码开放的Linux操作系统可以大大的降低开发的成本。Linux 正在嵌入式开发领域稳步发展。Linux使用GPL,所有对特定开发板、PDA、掌上机、可携带设备等使用嵌入式Linux感兴趣的人都可以从因特网上免费下载其内核和应用程序,并开始移植和开发。许多Linux改良品种迎合了嵌入式市场,它们包括RTLinux(实时Linux)、UCLinux(用于非MMU设备的Linux)、Montavista Linux(用于ARM、MIPS、PPC的Linux分发版)、ARM-Linux(ARM上的Linux)和其它Linux系统。Linux操作系统本身的微内核体系结构相当简单。网络和文件系统以模块形式置于微内核的上层。驱动程序和其它部件可在运行时作为可加载模块编译到或者是添加到内核。这为构造定制的可嵌入系统提供了高度模块化的构件方法。
2.2 指纹采集模块
考务管理系统采用紫牛科技公司的BIG1080P系列指纹模块。BIG1080P系列指纹模块是由西安紫牛科技公司(Zineu Tech.国内首家指纹技术方案提供商)面向广阔的锁具市场、保险箱(柜)、安防及工控市场,推出的业界第一个“可编程指纹模块”。它是由32位高性能可编程处理器、活体指纹采集芯片和指纹识别核心固件等构成的一个独立的嵌入式指纹识别系统。
该系列指纹模块具有250枚以上指纹存储能力,可扩展到上千枚,具备1秒以内的指纹比对性能,支持1:1和1:N两种比对模式,能够任意兼容各类指纹传感芯片,允许客户内置应用程序,简化应用方案,节省开发成本。
该系列指纹模块为了适应不同的应用场景,提供了两种工作模式。一是从属工作模式,二是独立工作模式。从属工作模式下,该指纹模块需要与外部MCU配合,由外部MCU通过串口协议通讯方式来驱动指纹模块。指纹模块完成指纹比对,并通过串口返回结果给MCU。独立工作模式下,无需外部MCU,用户可以在指纹模块中直接写入应用程序,在应用程序中直接调用比对接口。在考务管理系统中,指纹模块工作在从属模式下。指纹模块将采集的指纹图像经ARM嵌入式系统初步处理后,通过无线或有线网络传给服务器进行存储或匹配等进一步处理。
2.3 以太网和无线通信模块
Linux已经对以太网有了很好的支持,插上网线就能用了。在ARM开发板端有主USB,可以插遵循802.1l无线局域网协议的USB无线网卡。在linux中加载相应的设备驱动程序,就可以完成无线网络的数据传输。与ARM开发板相连的无网卡向AP接入点注册之后,在AP和ARM端无线网卡就形成了无线网络:为了拥有更多的资源,可以从无线接入到有线LAN和Intemet如图3所示:
这种混合式接入方式,网络上的每个设备都可以和其他的网络节点进行交换,而不用管它们的连接方式。接入lntemet以后,数据就可以进行长距离的网络传输了。
本系统的指纹识别算法原理:从采集仪采集来指纹图像,如图A所示,对此图像进行一系列的图像预处理如滤波、二值、细化,二值后的指纹图像如图B所示,细化后的指纹图像如图C所示,然后计算指纹中心点,以中心点为坐标原点,计算指纹的分叉点和分歧点相对于中心点的极坐标,作为指纹的特征点,通过比较特征点识别指纹。
对于指纹识别硬件模块的选择,由于考虑到所需实现的功能、成本和处理速度的要求,选用BIG1080P-H 指纹模块,该模块是由西安紫牛信息技术有限公司面向广阔的锁具市场、保险箱(柜)、安防及工控市场,推出的业界第一个“可编程指纹模块”。它是由32 位高性能可编程处理器、活体指纹采集芯片和指纹识别核心固件等构成的一个独立的嵌入式指纹识别系统。
本指纹模块具有250 枚指纹存储能力,具备1 秒以内的指纹比对性能,支持1:1 和1:N 两种比对模式,能够任意兼容各类指纹传感芯片。
该系统主要由DSP,指纹采集仪,CPLD,SDRAM,Flash及其它外围器件组成。其中Flash存储指纹算法程序和模板指纹库;CPLD进行Flash和SDRAM的地址译码及其它外围电路的控制;DSP进行指纹核心算法的处理;RS232主要完成和上位机的通讯。硬件框图如图所示:
软件流程
软件分为服务器端和客户端,服务器端在PC机上实现,客户端在开发板上实现。
客户端软件流程如下:
硬件特色
本系统采用的是有北京博创公司提供的硬件平台,其中的指纹识别模块是采用紫牛科技公司的BIG1080P系列指纹模块,本模块由32位高性能可编程处理器、活体指纹采集芯片和指纹识别核心固件等构成的一个独立的嵌入式指纹识别系统。模块具有200枚以上指纹存储能力,可扩展到上千枚,具备1秒以内的指纹比对性能,支持1:1和1:N两种比对模式,能够任意兼容各类指纹传感芯片,允许客户内置应用程序,减化应用方案,节省开发成本。
本系统中的指纹识别模块以DSP处理器为处理中心,基本集成了指纹处理方面的所有过程,能独立完成指纹的录入、图像的处理、特征的提取、模板的生成、模板的存储、指纹的对比以及指纹的搜索,精度高,操作简单、快捷,使用安全。并且对变形的或质量差的指纹均有较好的校正和容错性能。
由于无线局域网具有可移动性、安装简易、费用低、网络维护容易等很多优点,可以不受线缆的束缚,深得人们的喜爱。并且传输数据方便,组网简单,在ARM9的开发板上有USB接口,可以插USB无线网卡,并且USB无线网卡使用起来十分方便,即插即用、移动性好。在Linux中加载相应的驱动程序后就可以完成无线网络的数据传输,与ARM9开发板相连的无线网卡向AP接入点注册之后,在AP和ARM9端就形成了无线网络。
软件特色
本系统运行稳定、故障率低,系统启动无异常,启动速度正常,启动好后系统连续正确运行不崩溃。指纹识别的拒真率低于0.1%;指纹识别的认假率低于0.01%。终端具备数据缓存能力,缓存记录数为最多250条,在一定程度上可以保证在数据库故障情况下正常使用。管理系统具有数据备份功能,方便管理员维护系统。本系统在服务器和终端闪存(FLASH)同时存储用户原始指纹信息,使用时,先试图从服务器数据库中读取用户原始指纹信息,如果数据库故障,则会试图从终端闪存中查找指纹信息,找到则正常工作,没找到则报告出错。终端的本地存储采用先来先存的原则。如此设计可以保证在终端中还存有指纹的用户在数据库发生故障时正常使用。
使用时,用户只需手指在指纹采集仪器上轻轻划过,即可确认用户身份,而不需要传统的出示一大堆证件等繁琐步骤。这为考生免了不少麻烦,因为把学生证或身份证等证件随身带着走,万一掉了就不能参加考试,而且补办这些证件通常又非常麻烦。不仅如此,本系统运行速度快,指纹采集验证时间在1秒钟之内完成,缩短了用户的等待时间。