嵌入式考场指纹识别系统设计 - 中国一卡通网
用户名密码 [免费注册] [找回密码] 推广技巧 发布求购 建商铺  发产品  会员体制比较  
 

嵌入式考场指纹识别系统设计

来源:中国一卡通网  作者:不详  发布时间:2013-03-26 09:38:50  字体:[ ]

关键字:指纹识别  身份识别  门禁  考试管理  

摘   要:   指纹识别在消费服务、考试管理、门禁安全、物品主人识别等方面得到了应用,以后将会在更广泛的领域得到应用。指纹识别的应用,提高了身份识别的客观性、公正性和效率等。考场指纹识别系统与其它指纹识别系统相比,需要满足识别的信息量大、能够便携移动、操作方便、最好能够脱离计算机独立使用等要求。

  指纹识别在消费服务、考试管理、门禁安全、物品主人识别等方面得到了应用,以后将会在更广泛的领域得到应用。指纹识别的应用,提高了身份识别的客观性、公正性和效率等。考场指纹识别系统与其它指纹识别系统相比,需要满足识别的信息量大、能够便携移动、操作方便、最好能够脱离计算机独立使用等要求。 

  从指纹识别方式来考查,当前主要有如下三种考场指纹识别系统: 

  第一种是指纹采集器直接连接计算机识别方式?。该方式的考试管理系统由计算机、考试管理软件和指纹采集器构成,其中的指纹采集器一般只有基本的指纹成像和A/D转换部分,而指纹的处理算法和指纹数据都在计算机中。在指纹的采集和识别时,采集器和计算机必须联合使用,通过串行接口或usB接口连接。这种方式的优点是指纹采集器造价低、可靠性高,不足之处是需要计算机数量大、造价高,并且在考场中使用体积较大计算机也不方便。
  第二种是网络计算机识别方式旧1。该方式与第一种方式的系统构成基本一样,不同之处在于采集器和计算机的连接使用RJ45接口,采集器所采集的指纹信息通过网络传送给计算机,计算机比对后将结果再返回到远端的采集器。该方式的优点是需要计算机数量少、造价低,不足之处是计算机负担重、网络传输信息量大、可靠性低。
  第三种是指纹卡识别方式¨1。该方式由计算机、考试管理软件、指纹采集器和指纹存储卡构成。
这里的指纹采集器功能比较强,不仅具有指纹采集功能,而且还具有指纹数据处理、运算比对和读写射频Ic卡功能。该系统的工作原理是:在计算机的控制下,将指纹采集器采集及处理后的指纹特征数据保存到计算机中,然后将指纹等考生信息写到IC卡中,在考场用指纹采集器采集考生指纹,并与Ic卡中的指纹信息比对识别身份。这种方式的优点是可靠性高,不足之处是需要制卡,致使工作量大,Ic卡仅一次性使用造成浪费,另外指纹采集器的造价较高。 

  以上三种考场指纹识别系统都存在不足,本文所设计的“基于ARM&Linux的考场指纹识别系统”(简称为“嵌入式考场指纹识别系统”),相对于第三种采集器,减少了IC卡功能而增加了数据库功能,使其具有存储姓名、指纹、身份证号等考生信息的数据库以及信息管理功能,使采集器能够脱离计算机,独立在考场比对指纹,从而克服了上述三种系统的不足。 

  1 系统设计 

  1.1 系统功能
  本文所设计的“嵌入式考场指纹识别系统”,主要具有如下功能:
  一是指纹采集、指纹比对和指纹数据处理功能;
  二是数据库与信息管理功能,能够保存和管理大量考生的信息;
  三是系统与Pc机数据库的数据交换功能;
  四是系统与PC机的数据传输功能;
  五是系统与用户的交互功能,具有较好的人机界面,便于操作使用。 

  1.2 系统组成
  根据上面所说的系统功能,对系统的软硬件都有较高的要求,因此,需要使用操作系统,设计选用Linux操作系统。在硬件方面,根据所使用的操作系统,选用ARM9微控制器,存储器使用64MB的nash和64MB的SDRAM,需要网络接口芯片、串行接口芯片、液晶显示屏,以及指纹模块等。 

  1.3系统工作原理
  “嵌入式考场指纹识别系统”中的学生信息,只是考试管理系统的一部分,安装在PC机上的考试管理系统中保存着考生的全部信息。对用户来说,系统的主要用途是指纹采集和指纹识别,在指纹采集前,需要将Pc机上的考生基本信息(如姓名、身份证号等)通过网络下载到系统中,对各个考生采集完指纹后,再将含有指纹信息的数据通过网络上传给PC机。在指纹识别时,把Pc机上包含有考生指纹的数据下载到嵌入式系统中,使系统能够使用数据库中的信息进行指纹比对。 

  2 硬件结构 

  根据系统功能的要求,其硬件主要由五个部分构成:微控制器模块、带触摸屏的液晶显示模块、指纹识别模块、网络接口模块、串行接口模块等。其电路构成如图l所示。 

  2.1 ARM9微控制器模块
  微控制器模块包括s3c2440微控制器H1、64MB同步DRAM、64MB的Nand nash ROM、2MB的Nornash ROM、基本的震荡电路和复位电路等。s3c2440微控制器功能强大,使用的是 ARM920T内核,具有16KB指令cache和16KB数据cache、存储器管理单元和外存控制器、LCD控制器、触摸屏控制器、3通道的uART接口等功能和外设。SDRAM选用2片32MB的HY57V561620,构成32位的存储器,接系统总线,其片选信号用nGcs6管理。Nand nash选用1片64MB的K9F1208,与S3C2440的Nand nash接口信号相连。Nor nash选用l片2MB的39VFl60l,接系统总线,片选信号接S3C2440的nGCSO引脚。 


  2.2液晶显示模块
  S3c2440的LCD控制器,可以控制4K色STN或16M色TFT液晶显示模块,本设计试验用的是3.5英寸的彩色液晶显示模块。S3C2440有专门的LcD控制器和接口信号,其信号主要是数据信号和视频控制信号,与液晶模块有一一对应关系。触摸屏控制器接口只有4个信号,控制测量触摸点x和y方向坐标的电压,电路连接比较简单。 

  2.3指纹采集与识别模块
  指纹识别模块使用的是广州迈科技术公司的“Mc—E指纹模块””3,该模块使用DsP作为处理器,采用先进的商业指纹识别算法,识别速度快,1:500比对需时不足1秒,识别率高达99.99999%。“Mc—E指纹模块”接口方便,使用标准的uART协议,rI’I'L电平。在系统中,MC—E与S3C2440的uARTl口的Rxdl、Txdl相连,应用程序通过uARTl口发送指纹操作命令和传送数据,控制Mc—E执行各种操作。 

  2.4网络接口模块
  网络接口使用的是高速以太网接口芯片“DM9000”,该芯片遵循IEEE的802.3以太网传输协议,自适应10M/100M网络速度;内部带有16K字节sRAM用作接收发送的FIFO缓存;支持8/16/32 bit三种工作模式;10ns I/O读写速度。“DM9000”与微控制器的接口比较简单,数据信号sDO~SDl5、读/写控制信号10R和IOw与s3C2440的相应信号相连接,片选信号、中断请求信号INT、数据/地址选择信号CMD分别接S3c2440的nGcs4、EINl7、ADDR2引脚。将DM9000作为一存储器,通过读/写操作进行网络数据收/发。 

  2.5串行接口模块
  为了使系统与PC机连接下载数据和调试系统,将s3c2440的uART0口接TTL—Rs232转换芯片MAX232。UARTl口接指纹识别模块。
另外,用s3c2440的GPB5一GPB8引脚接4个LED,用于显示指示。用定时器O的输出引脚TOUT0接一蜂鸣器,用于发声控制。 

  3 软件设计 

  该“嵌入式考场指纹识别系统”运行在Linux操作系统之上,使用嵌入式数据库SQLite做信息管理,使用嵌入式可视化编程软件Qt编写应用程序,在S3C2440微控制器上实现了图形界面的指纹采集、指纹识别、网络数据传输,以及与Pc机数据交换等功能。 

  3.1数据库设计
  sQLite是一款轻型的嵌入式数据库管理系统。sQ“te只需要几百KB内存,虽然小巧但却支持高达2TB的数据记录;支持Windows、Linux、Unix等操作系统;能够与多种程序语言相结合,如PHP、Java等,支持sQL语句;有ODBC接口等功能。sQLite在处理速度上,比Mysql、PostgresQL等著名数据库都快。
  可视化编程软件Qt¨o中集成了用户访问各种数据库的模块Qtsql,Qtsql模块具有与各种数据库连接的功能,还有使用sQL语句操作各种数据库的QSQuery类。在Qt中创建SQLite数据库的过程为:首先使用连接函数QsqlDatabase::addDatabase(“QsQLITE”)建立Qt与sQLite的连接,然后使用创建数据库函数QsqlDatabase.setDatabaseName(“DatabaseName”)创建sQLite数据库,之后就可以使用sQL操作函数QSqlQuery.open()打开数据库,使用函数QsqlQuery.exec()创建表、添加记录和数据等操作,操作之后使用函数QsqlQuery.close()关闭数据库。
  在“嵌入式考场指纹识别系统”的数据库中,建立了两个数表,一个是“Collect”,用于采集指纹,另一个是“Ident”,用于识别指纹,其字段分别为“姓名、性别、年龄、身份证号、照片、指纹、状态”和“姓名、性别、年龄、身份证号、准考证号、考场、照片、指纹、各个科目状态”。实际上这两个数表并不是在嵌入式系统创建的,而是在Pc机上创建并分发过来的。
  关于系统数据库的容量,每条记录5KB(包括照片),系统nash ROM能用空间按30MB计,系统数据库至少可以容纳5000人的信息,对于较大的考点也足够用了。 

  3.2指纹采集与识别程序设计
  “MC—E指纹模块”为用户应用开发提供了良好的接口,编程和应用都比较方便。在设计的系统中,主要使用的是指纹采集、指纹特征值下载、指纹比对等操作。
这些命令、应答信息和指纹特征值,都是通过ARM微控制器的串行口传递的,为确保指纹信息的可靠性,每个指纹需要采集三次,正确采集后,将指纹写到对应考生的记录中。
指纹采集开始——采集计数器0-I——采集指纹——应答为正确?——数据信号转化——读指纹特征值并写进数据库发出欢快声音——指纹采集技术。
对于指纹特征值下载,是将数据库中各个考生的指纹,下载到指纹识别模块中,每次可下载一个或多个考场的考生指纹,便于提高识别速度,其操作过程较简单,不再赘述。 

  3.3网络数据传输程序设计
  在设计的系统中,与Pc机中的数据文件交换,都是通过FTP服务传输的。在windows或Linux操作系统下,利用FTP的“get”和“put”命令,能够方便地实现从联网计算机中获取文件和发送文件,但是必须在Qt可视化应用程序中实现这些命令操作,不能让用户再回到Linux操作系统的命令行下进行操作。Qt中提供了操作Linux命令和运行脚本文件以及其它应用程序的“system()”函数。在设计的程序中,将文件上传和获取的FTP操作写成了脚本文件“ftpget.sh”,通过函数“8ystem(“/my/ftpget.sh”)”运行脚本文件“ftpget.sh”,实现了嵌入式系统与Pc机的数据文件交换。至于液晶触摸屏模块、网络接口模块、uART等模块的驱动,均由Linux操作系统来完成。

更多

新闻投稿合作邮箱:yktchina-admin@163.com    字体[ ] [收藏] [进入论坛]

推荐文章

论坛热帖