基于单片机指纹识别的电子密码锁设计.docx
《基于单片机指纹识别的电子密码锁设计.docx》由会员分享,可在线阅读,更多相关《基于单片机指纹识别的电子密码锁设计.docx(31页珍藏版)》请在冰豆网上搜索。
基于单片机指纹识别的电子密码锁设计
毕业设计(论文)
论文题目:
基于单片机指纹识别的电子密码锁设计
系部:
自动控制系
专业:
楼宇智能化工程技术
班级:
学生姓名:
学号:
指导教师:
2016年4月20日
摘要
随着社会的发展和科技的进步,传统的安全防盗系统面临极大的挑战。
生物识别技术的蓬勃发展,让人们对于安防系统的设计有了另一种灵感,指纹锁应运而生。
可供二次开发的指纹模块已经解决了指纹图像的处理问题,如何实现这种技术的实际应用已经成为急需解决的问题,本设计利用单片机对指纹模块的控制实现了这种技术的应用。
设计以指纹传感器对指纹图像的采集为基础,通过单片机控制指纹模块实现对指纹图像的组合处理,系统的各项具体功能皆建立在相应的指纹图像的组合处理基础之上,系统主要实现了指纹模板的录入以及指纹匹配功能。
关键词:
指纹识别技术;指纹锁;系统设计;单片机
ABSTRACT
Withthedevelopmentofthesocietyandtheprogressofscienceandtechnology,Thetraditionalsecuritysystemfacedwithgreatchallenges.WiththevigorousdevelopmentofBiometricIdentificationTechnology,peoplehaveanotherkindofinspirationtodesignthelock,Fingerprintlockarisesattheveryhistoricalmoment.Thefingerprintmoduleforsecondarydevelopmenthassolvedtheproblemofimageprocessing,Theremainingproblemishowtotakeadvantageofthetechnologyinpractice.Thisdesignhasrealizedtheapplication,whichmainlybasedonthecontrolfromMCUtothemoduleoffingerprint.Thefoundationofthisdesignisfingerprintcollection,ThroughthecontrolfromMCUtothemodulecanrealizethecombinationofimageprocessing,basedonthecombinationofimageprocessingcanrealizethevariousfunctionsofthesystem.Themainlyfunctionsofthesystemincludethelandingandmatchingoffingerprinttemplate.
Keywords:
Fingerprintidentificationtechnology;Fingerprintlock;Systemdesign;singlechip
第1章引言
1.1课题研究意义
随着社会的发展和技术的进步,传统的安全防盗系统面临极大的挑战。
长久以来,安防系统验证身份的方法是验证一个人是否持有有效的信物,如照片、密码、钥匙、磁卡和IC卡等。
因此从本质上来看,这种方法验证的是该人持有的某种“物”,而不是验证该人本身。
只要“物”的有效性得到确认,则持有该“物”的人的身份也就随之得到确认。
这种通过“物”来确认人的身份的办法存在的漏洞是显而易见的:
“物”的丢失或出错都会导致合法的人无法被认证,并且各种信物容易被伪造、破译[2]。
在网络化时代的今天,我们每个人都拥有大量的认证密码,比如开机密码、邮箱密码、银行密码、论坛登陆密码等等;密码作为身份识别的标志已被广泛采用。
密码容易被遗忘,也有被人窃取的可能,无论是在智能化还是安全性能方面都已经不能满足需求,现在的各种钥匙,如门锁钥匙,汽车钥匙,保险柜钥匙等也如同密码一样存在显而易见的漏洞。
这些传统的安全系统所采用的方式,随着社会的发展,其安全性越来越脆弱不堪一击。
但是我们不能回避这个尴尬的问题,我们的生活中随时都需要进行个人身份的确认和权限的认定,尤其是在信息社会,人们对于安全性的要求越来越高,同时也希望认证的方式简单快速。
为了解决这一存在已久的问题,人们把目光转向了近年来兴起的生物识别技术,希望能借助人体的生理特征或行为动作来进行身份识别。
这样就可以不必携带大串钥匙,也不用费心去记各种密码。
生物特征和钥匙、密码相比具有唯一性,不可复制性,例如指纹,专家推论以全球60亿人口计算,300年内都不会有两个相同的指纹出现[2]。
以电子商务、电子银行的安全认证为例,目前在电子商务中经常出现他人假冒当事人的身份,如果通过生物特征进行认证,就可有效防止此类事件的发生。
另外,网络、数据库和关键文件等的安全控制,机密计算机的登陆认证,银行ATM、POS终端等的安全认证,蜂窝电话,PDA的使用认证等等,都可以依靠生物特征来认证。
可见,生物特征识别不但有可观的经济效益,还有不可估量的国家信息安全效益。
1997年比尔·盖茨曾这样预言:
“生物识别技术即利用人的生理特征,如指纹、虹膜等来识别个人的身份,将成为未来几年IT产业的重要革新”[2],指纹识别技术在生物识别技术中相对来看是发展的最成熟的识别技术,指纹锁则是指纹识别技术的代表作品,指纹锁在当今安防系统中应运而生成为继机械锁、密码锁、感应锁之后另一代门锁的代表,单体指纹代替钥匙或者密码成为开锁工具,大大降低了安防系统的潜在安全隐患,主要是因为指纹的独特生理附属性,在一段比较长的历史时期内避免了遗失、被盗、被复制的隐患,因此目前看来指纹锁几乎完美的解决了传统门锁存在的问题,但是一把合格的指纹锁,须采用国际领先水平的智能芯片和高标准的安装材料,这就决定了其刚性成本很高,同时由于拥有极高的科技附加值,指纹锁市场价格普遍比较昂贵,近年来指纹识别产品在各个行业的大规模开始应用,以及人们对于智能化和安全性能的追求为指纹锁的市场拓展创造了有利条件,因此可以预见,指纹锁将迎来一个改变安防系统的历史机遇。
1.2指纹识别简介
1.2.1指纹识别原理
指纹识别可谓历史悠久,本是一种古老的身份识别技术。
几千年前,中国人、盎格鲁—撒克逊人和古叙利亚人就曾经采用其作为身份鉴别的方法。
而随着现代计算机技术和信息处理与识别技术的不断进步,现代指纹识别技术已发展成为一种成熟、应用广泛的生物特征识别技术,而且指纹具有唯一性、稳定性、随身性、便于采集等优点,这使得指纹识别技术优于其他人体生物特征识别技术目前,全球范围已建立了指纹数据库和鉴定机构,而且在国内外几十年的研究与应用中,其有关芯片模块的开发已达到了技术成熟、识别率高和价格低廉的要求。
国外方面,美国、日本早已研制和生产出多种指纹自动识别设备并投入使用,比如美国SECOM、日本嘉士通、松树株式会社等公司开发的指纹锁和指纹认证装置。
国内率先进入这一领域的高校是清华大学,在90年代中期开发出了指纹IC卡,其后又有广东粤安集团、浙江中正、北大高科等高科技集团纷纷进入该领域,其中浙江中正于2000年开发出的超小指纹识别系统,标志着我国在这一领域已经达到了世界领先水平。
指纹采集原理主要是根据指纹的几何特性或生理特性,通过各种传感技术把指纹表现出来,形成数字化表示的指纹图案。
首先,通过指纹采集模块采集到人体指纹的图像,并对原始图像进行初步的处理,这样使指纹图像中蕴涵的特征信息更明显。
然后,运用指纹特征提取算法建立指纹的数字表示特征数据。
这种转换是单向进行的,只能从指纹转换成特征数据但不能从特征数据转换成为指纹,而且两枚不同的指纹绝对不会产生相同的特征数据,这就保证了人本身指纹的安全性。
指纹纹路的分叉、终止或转弯处的坐标位置,也就是通常被专家称为“细节点”(minutiae)的数据点,同时拥有7种以上的唯一特征。
有的算法把节点和方向信息组合产生了更多的数据,这些方向信息能够表明各个节点之间的关系,有的算法还可以处理整幅指纹图像。
这些数据通常称为模板,保存为1k或者0.5k大小的记录。
最后,我们通过计算机模糊比较的方法,把两个指纹的模板进行比较,计算出它们之间的相似程度,最终得到两个指纹的匹配结果。
指纹特征值匹配原理是对指纹图案的整体特征和细节特征按模式识别的原理进行比对匹配。
匹配是在已注册的指纹和当前待验证的指纹之间进行的。
匹配运算不是对两个指纹图像进行比较,而是对已形成数字模板的指纹特征值进行匹配。
1.2.2指纹识别应用
指纹识别技术是最早的通过计算机实现的身份识别手段,它是应用最为广泛的生物特征识别技术。
过去,它主要应用于刑侦系统。
近几年来,它逐渐走向市场更为广泛的民用市场。
指纹技术在现代生活和工作中的应用已越来越普遍,指纹考勤机、指纹社保、指纹银行、指纹商场、指纹投票、指纹保护电脑、等等生活中和工作中的新现象已广为人知,其应用相当广泛,指纹技术正在日益刷新着我们的现代化生活方式。
指纹识别技术是目前国际公认的应用广泛、价格低廉、易用性高的生物认证技术。
指纹只是人体皮肤的小部分,但是它却蕴涵了大量的信息。
这些皮肤的纹路在图案、断点和交叉点上是各不相同的,在信息处理中将它们称作"特征"。
医学上已经证明这些特征对于每个手指都是不同的,而且这些特征具有唯一性和永久性。
因此我们就可以把一个人同他的指纹对应起来,通过比较他的指纹特征和预先保存的指纹特征,就可以验证他的真实身份。
1.3国内外指纹锁发展的历史和现状
生物识别技术在传统安防系统面临尴尬的时候,给人们带来了希望,并且在今后一个很长的历史时期都将是缓解了安防压力的有力保障,生物识别技术主要包括指纹识别、人脸识别、掌形识别、指静脉识别、红膜识别、视网膜识别、声音识别等,由于各种生物识别技术的差异,只有基于指纹识别技术的产品有希望在近几年大规模的投入民用的市场,因此指纹识别产品将是世界各国在生物识别技术领域发展和投入的重点。
一方面,指纹识别产品的快速发展得益于低价位取像设备的引入及其飞速发展,以及可靠的比对算法的研究发展,另一方面,指纹识别技术和其他的很多技术一样,也是从专用走向公用,逐渐成为人们关注的前沿高科技之一,而现在俨然已经成为了各种高科技产品的标识。
苹果公司计划推出带有指纹登陆模块的手机,微软公司推出了可单独操作的指纹辨认器;IBM开始出售附有指纹辨认器的手提电脑;韩国LG电子公司也推出了一种通过指纹启动的手机。
但是必须指出的是指纹科技产业作为新兴的高科技智能产业,其技术上存在难以逾越的高度,迄今为止,全球指纹科技产品也刚刚处于起步阶段,国内市场上还没有产生真正意义上的指纹科技产品强势品牌,目前在中国市场上已经有一些指纹锁厂家进入市场开发阶段,如杭州锦江科技、新加坡玺玛克、深圳爱迪尔和长春鸿达等,但这些公司的全国性业务还没有完全做开,一般的指纹锁厂家都是通过直销方式为政府机关、金融系统提供产品[1]。
目前世界上指纹锁主要以德国与韩国为代表,无论是在技术还是工艺方面都占据着优势,而国内的岭南锁系主要是做组合安装,自主技术和工艺水平偏低。
国外的指纹锁品牌借助北京奥运会登陆中国,强势的占据了指纹锁的高端市场,而国内技术和工艺偏低的指纹锁产品只是艰难的占据着低端市场,因此和国外品牌的利润相比相距甚远,传统的门锁需要新一代的锁来更替,在这样巨大的市场需求下,国内许多企业纷纷研制开发指纹安防产品,然而经过最初几年的市场突围,指纹锁却一直没有大规模的普及应用。
众多厂家倒在了市场引导阶段,成为指纹锁市场开拓大军的先烈。
而现在指纹锁市场已经基本被打开,指纹锁将迎来一个快速发展的时期。
1.4本论文的研究内容及结构
基于指纹识别的电子锁系统设计主要由单片机、指纹模块、电子锁、液晶显示屏、ADC键盘、时钟几个部分构成,围绕指纹锁为核心功能设计的一个系统,在第二章中对设计方案的选择作重点介绍。
第三章介绍系统硬件电路设计,第四章介绍系统软件设计,第五章介绍实物制作与调试。
第2章整体设计方案
2.1系统功能设计
目前,德国和韩国的主流指纹锁厂商对于指纹锁的功能设计主要是指纹加密码,然后加以严格的工艺设计形成高质量的指纹锁,国外的指纹锁品牌借助2008年北京奥运会登陆中国,借助奥运会的广泛影响力,极大地宣传了指纹锁产品,指纹锁的功能和设计也同样被宣传,指纹锁的功能的主流设计也被公众接受。
在奥运会期间广泛的应用于奥运会的各个建筑的安防系统的指纹锁产品获得广泛好评,经过几年的发展,现在指纹锁市场上的产品在功能设计上几乎是如出一辙,对于大多数指纹锁产品用户能够看到的主要是三部分,指纹传感器的采集窗口、键盘以及液晶显示屏。
不同指纹锁的差异也主要存在于制作工艺以及电路设计上。
基于指纹识别的电子锁系统是针对以指纹图像采集、识别为核心而开发出的系统。
该系统包括ADC键盘,用户在ADC键盘上输入开锁密码,系统就会控制指纹模块开始搜索是否有手指放上,一旦感应到有手指,就立即采集指纹图像,并将采集到的图像转化成特征并存储下来。
通过比对该特征和模版特征来控制是否开锁。
该系统利用人体指纹各异性和不变性,为用户提供加密手段,使用时只需用户将手指放在指纹传感器的采集窗口上,即可完成采集任务,操作十分方便快捷。
系统的液晶显示屏可以显示出指纹模块采集、转化、合并、存储、比对各个流程的结果,系统另外还有指纹模版的存入功能,用户可以随意存入或者删除指纹模块中的模版,只要指纹模块中有该用户的指纹模版,该用户就可以通过指纹开锁。
同时该系统还有开锁记录查询功能,可以通过ADC键盘输入密码之后查询之前的记录。
该系统的核心功能有以下两个方面:
1.指纹模板登陆:
系统通过指纹模块连续采集用户一个手指的指纹两次,并将采集到的指纹图像合成指纹模板存储,存储之后的指纹模板断电保存,存储之后的每一个指纹模板都有一个ID号。
2.指纹的比对:
当系统采集到待验证的指纹图像之后,系统将该图像转化为指纹特征文件,然后把该指纹特征文件与已存储的指纹模版特征文件相对比,比对之后给出结果,系统控制电子锁作出相应的动作并控制液晶显示比对结果。
2.2系统总体框架
基于指纹识别的电子锁系统主要以指纹模块ZFM-206-SA、单片机ATmega16、ADC键盘、液晶RX12864ZW、时钟芯片DS1302、电子锁KL-03等组成,系统的总体框图如下图2-1所示:
图2-1系统总体框图
指纹模块只有在指纹采集对比等操作的时候才需要处在工作状态,而其他时候,指纹模块就不需要处于工作状态,指纹模块如果一直处于工作状态,对于指纹传感器的寿命会有影响,因此设计ADC键盘,用户必须先在ADC键盘上输入,之后才能启动指纹模块,进行相应的操作,同时时钟模块DS1302用以提供系统的时间的显示和记录,液晶显示模块会显示指纹锁运行各个环节的运行结果和提示信息。
第3章系统硬件的选择及电路设计
系统的硬件电路设计主要是根据系统整体框图来具体的设计各个部分的电路,主要包括ATmega16单片机外围电路设计、指纹模块ZFM-206电路、ADC键盘电路、液晶RX12864ZW电路、DS1302电路几部分。
3.1单片机的选择
单片机微型计算机是微型计算机的一个重要分支,也是颇具生命力的机种。
单片机微型计算机简称单片机,特别适用于控制领域,故又称为微控制器。
通常,单片机由单块集成电路芯片构成,内部包含有计算机的基本功能部件:
中央处理器、存储器和I/O接口电路等。
因此,单片机只需要和适当的软件及外部设备相结合,便可成为一个单片机控制系统。
20世纪末,电子技术获得了飞速的发展,在其推动下,现代电子产品几乎渗透了社会的各个领域,有力地推动了社会生产力的发展和社会信息化程度的提高,同时也使现代电子产品性能进一步提高,产品更新换代的节奏也越来越快。
时间对人们来说总是那么宝贵,工作的忙碌性和繁杂性容易使人忘记当前的时间。
忘记了要做的事情,当事情不是很重要的时候,这种遗忘无伤大雅。
但是,一旦重要事情,一时的耽误可能酿成大祸。
目前,单片机正朝着高性能和多品种方向发展趋势将是进一步向着CMOS化、低功耗、小体积、大容量、高性能、低价格和外围电路内装化等几个方面发展。
单片机应用的重要意义还在于,它从根本上改变了传统的控制系统设计思想和设计方法。
从前必须由模拟电路或数字电路实现的大部分功能,现在已能用单片机通过软件方法来实现了。
这种软件代替硬件的控制技术也称为微控制技术,是传统控制技术的一次革命。
单片机经过1、2、3代的发展,正朝着多功能、高性能、低电压、低功耗、低价格、大存储容量、强I/O功能及较好的结构兼容性方向发展。
其发展趋势不外乎以下几个方面:
1.单片机中尽可能地把所需要的存储器和I/O口都集成在一块芯片上,使得单片机可以实现更多的功能。
比如A/D、PWM、PCA(可编程计数器阵列)、WDT(监视定时器---看家狗)、高速I/O口及计数器的捕获/比较逻辑等。
有的单片机针对某一个应用领域,集成了相关的控制设备,以减少应用系统的芯片数量。
例如,有的芯片以MEG16为核心,集成了USB控制器、SMARTCARD接口、MP3解码器、CAN或者I*I*C总线控制器等,LED、LCD或VFD显示驱动器也开始集成在8位单片机中。
2.高效率和高性能
为了提高执行速度和执行效率,单片机开始使用RISC、流水线和DSP的设计技术,使单片机的性能有了明显的提高,表现为:
单片机的时钟频率得到提高;同样频率的单片机运行效率也有了很大的提升;由于集成度的提高,单片机的寻址能力、片内ROM(FLASH)和RAM的容量都突破了以往的数量和限制。
由于系统资源和系统复杂程度的增加,开始使用高级语言(如C语言)来开发单片机的程序。
使用高级语言可以降低开发难度,缩短开发周期,增强软件的可读性和可移植性,便于改进和扩充功能。
AVR内核单片机具有丰富的指令集和32个通用工作寄存器。
所有的寄存器都直接与算逻单元(ALU)相连接,使得一条指令可以在一个时钟周期内同时访问两个独立的寄存器。
这种结构大大提高了代码效率,并且具有比普通的CISC微控制器最高至10倍的数据吞吐率。
ATmega16L有如下特点:
16K字节的系统内可编程Flash(具有同时读写的能力,即RWW);
512字节EEPROM,1K字节SRAM;
32个通用I/O口线;
32个通用工作寄存器;
用于边界扫描的JAG接口,支持片内调试与编程;
三个具有比较模式的灵活的定时器/计数器(T/C);
片内/外中断,片内经过标定的RC振荡器;
可编程串行USART,有起始条件检测器的通用串行接口;
8路10位具有可选差分输入级可编程增益(TQFP封装)的ADC;
具有片内振荡器的可编程看门狗定时器;
一个SPI串行端口;
四通道PWM,两路8位,两路16位;
六个可以通过软件进行选择的省电模式:
空闲模式、ADC噪声抑制模式、省电模式、掉电模式、Standby模式以及扩展的Standby模式;
速度等级:
0-8MHz;
工作电压:
2.7-5.5V;
工作于空闲模式时CPU停止工作,而USART、两线接口、A/D转换器、SRAM、T/C、SPI端口以及中断系统继续工作;
掉电模式时晶体振荡器停止振荡,所有功能除了中断和硬件复位之外都停止工作;
在省电模式下,异步定时器继续运行,允许用户保持一个时间基准,而其余功能模块处于休眠状态;
ADC噪声抑制模式时终止CPU和除了异步定时器与ADC以外所有I/O模块的工作,以降低ADC转换时的开关噪声;
Standby模式下只有晶体或谐振振荡器运行,其余功能模块处于休眠状态,使得器件只消耗极少的电流,同时具有快速启动能力;
扩展Standby模式下则允许振荡器和异步定时器继续工作。
本芯片是以Atmegal高密度非易失性存储器技术生产的。
片内ISPFlash允许程序存储器通过ISP串行接口,或者通用编程器进行编程,也可以通过运行于AVR内核之中的引导程序进行编程。
引导程序可以使用任意接口将应用程序下载到应用Flash存储区(ApplicationFlashMemory)。
在更新应用Flash存储区时引导Flash区(BootFlashMemory)的程序继续运行,实现了RWW操作。
通过将8位RISCCPU与系统内可编程的Flash集成在一个芯片内,ATmega16成为一个功能强大的单片机,为许多嵌入式控制应用提供了灵活而低成本的解决方案。
3.2ATmega16单片机外围电路设计
基于指纹识别的电子锁系统设计采用的单片机是ATmega16,ATmega16是基于增强的AVRRISC结构的低功耗8位CMOS微控制器。
由于其先进的指令集以及单时钟周期指令执行时间,ATmega16的数据吞吐率高达1MIPS/MHz,从而可以减缓系统在功耗和处理速度之间的矛盾。
在总体电路中,单片机部分电路只设计外围经典电路即可,包括复位电路、晶振电路、ISP下载电路几部分,电路设计如图3-1所示:
图3-1单片机及其外围电路
外部复位由外加于RESET引脚的低电平产生。
当复位低电平持续时间大于最小脉冲宽度时即触发复位过程。
ISP程序下载的接口电路,方便之后用ISP下载线下载程序进行编译调试。
晶体振荡电路中XTAL1与XTAL2分别为用作片内振荡器的反向放大器的输入和输出,为了保证系统稳定性和串口传输质量所以选用外部晶振,晶振选用6.0MHZ。
3.3指纹模块ZFM-206电路
基于指纹识别模块选择的是ZFM-206-SA,ZFM-206系列光学指纹模块以高性能高速DSP处理器AS601为核心,结合光学指纹传感器,在无需上位机参与管理的情况下,具有指纹录入、图像处理、指纹比对、搜索和模板储存等功能的智能型模块。
指纹图像读取过程中,对干湿手指都有较好的成像质量,适用人群广泛。
无需具备指纹识别专业知识即可应用。
用户根据ZFM-206模块提供的丰富控制指令,可自行开发出功能强大的指纹识别应用系统。
并且面对不同应用场合,用户可自行设定不同安全等级。
模块与用户设备采用串行通讯,有四个引脚,分别是电源正输入端、串行数据输出、串行数据输入、信号地(与电源地相连)。
模块通过串行通讯接口,可直接与3.3V或者5V电源的单片机进行通讯:
模块数据发送脚(2脚TD)接上位机的数据接收端(RXD),模块数据接收脚(3脚RD)接上位机的数据发送端(TXD)。
由于指纹模块的供电为3.3V,而电源为5V,因此需要一个电压转换电路,采用了AMS1117转换芯片,AMS1117将5V电压转化为3.3V给指纹模块供电。
指纹模块接口电路以及3.3V电压转换电路如图3-2所示:
图3-2指纹模块及电压转换模块电路
3.4ADC键盘电路
系统的4x4键盘采用的是ADC键盘,如果采用普通4x4键盘需要八个I/O口控制,会对单片机的引脚占用过多,如果采用ADC键盘只需要一个AD转换的I/O口即可检测,并且ATmega16自带AD转换,容易实现键盘检测功能。
ADC键盘采用电阻分压的方式,不同的键按下之后会输出不同的电压,通过对电压进行AD转换之后就可以判断键值。
ADC键盘电路如图3-3所示:
图3-3ADC键盘电