搜索
您的当前位置:首页正文

基于单片机的指纹识别门禁系统设计

2023-02-20 来源:欧得旅游网
中文摘要

摘要

人们在生活中需要安全的门禁设施,来保证自己的财产安全,各种各样的门禁系统随之而生。但随着数字化和网络化的不断发展,以前的门禁方式在鉴别方式、速度和性能方面越来越不能满足人们的需要,比如射频卡、数字密码等方式,其安全性不够高。在新的方式开发的过程中,由于人的身体特点具有不可复制性,所以人们把目光转移到这上面来,开始了生物识别的门禁系统的开发。指纹识别作为生物特征识别,它是独特的,它的特点是不易伪造,以为它的这些特点目前已被广泛应用于安全访问。

对于企业来说,办公楼的安全性和规范性就显得尤为重要,对于进入楼内的人员需要严格的管理,并且需要保密的楼层也需要限制人员的进入。指纹识别技术正好可以解决这个问题,每个人的指纹就相当于每个人的身份标识,对指纹的识别和管理,就能够实现对人员的管理。本文设计的系统是基于单片机的指纹识别门禁系统,它是在指纹识别技术的基础上加以开发扩展得来的,主要目的是加强人员的出入管理和提高门禁的安全性。整个门禁系统主要包括上位机和下位机两部分,对于下位机,单片机作为主体,另带多个子模块,包括指纹识别模块、液晶显示模块、网络模块、继电器和蜂鸣器等;对于上位机,主要负责用户信息的管理,并且通过网络模块,对多个下位机行进远距离控制。

论文基于对指纹识别技术和指纹识别系统的发展研究的意义的分析,介绍了指纹识别门禁系统总体框架,阐述了各子模块的硬件和软件资源。论文首先简要介绍了指纹识别算法,重点介绍了指纹识别模块(FM-180)的使用方法,包括它的硬件连接和软件指令的使用方法。在此基础上,设计了以STC89C52单片机为核心的指纹识别门禁系统,指纹识别模块负责识别指纹,并传输给单片机结果,单片机根据结果来控制液晶显示和蜂鸣器的声音提示,再控制继电器的开闭,单片机还能通过网络模块与上位机实现远程通讯。之后,介绍了软件部分的设计,包括单片机、液晶屏、指纹识别模块和上位机的软件设计。系统测试部分,通过对系统的模型样机的测试表明,系统能够完成基本功能并具有较好的稳定性,初步达到了预期的设计目标。在论文最后,做出了简单的总结与期望。

关键词:指纹识别;门禁;单片机

- I -

英文摘要

Abstract

People need in life safety entrance guard facilities, to ensure the safety of their property, and all kinds of entrance guard system. But with the continuous development of digitalization and networking, the entrance guard before way in terms of speed of identification methods, and performance is more and more can't satisfy people's needs, Such as radio frequency card, digital code, its security is not high. In a new way in the process of development, because of the human body characteristics is replication, so people focus to this, started the biometric access control system development. Fingerprint identification as a kind of biometric recognition, it has the characteristics of uniqueness and difficult to counterfeit, make it widely used in security access.

For enterprises, building security and standardization is particularly important, for people entering the building needs to strict management, and need to be kept secret floor also need to limit personnel to enter. Fingerprint identification technology can solve the problem, each person's fingerprints are equivalent to each person's identity, the fingerprint identification and management, can realize the management of the personnel. In this paper, based on fingerprint identification technology is introduced, and design a set of fingerprint entrance guard system based on STC89C52 single-chip computer, to realize the unification of the building entrance guard management and personnel management of permissions. The entrance guard system mainly includes two parts of the upper machine and lower machine .For the machine, including fingerprint identification module, liquid crystal display module, network module, relay and buzzer, controlled by single chip microcomputer. For PC, is mainly responsible for user information management, and through the network module, a machine under the multiple remote control.

Papers on the analysis of the fingerprint recognition technology development present situation and research significance of fingerprint entrance guard system, on the basis of introduced the overall framework of fingerprint entrance guard system, this paper expounds the each module's hardware and software resources. Paper first

- II -

英文摘要

briefly introduces the fingerprint identification algorithm, and introduced the use of the fingerprint identification module, including the hardware connection and the use of the software instructions. On this basis, designed a STC89C52 MCU as the core of fingerprint entrance guard system, fingerprint identification module is responsible for identifying fingerprint, and transfer to the single chip microcomputer as a result, as a result of the single-chip microcomputer to control the liquid crystal display and a buzzer voice prompt, and the opening of the control relay, microcontroller can realize the remote communication module and the upper machine through the network. Later, the paper introduces the design of the software part, including MCU, LCD screen, fingerprint identification module and PC software design. System test part, through to the model of the system prototype test show that the system can complete the basic function and has good stability, preliminary achieved the expected design goal. In finally, the thesis has made the simple summary and expectation.

Key words: fingerprint identification; Entrance guard; Single chip microcomputer

- III -

英文摘要

- IV -

目录

目录

摘要 ................................................................................................................................ I Abstract ......................................................................................................................... II 第一章 绪论 ............................................................................................................ - 1 -

1.1引言 ............................................................................................................ - 1 - 1.2指纹识别技术的发展状况 ........................................................................ - 2 - 1.3课题的研究内容 ........................................................................................ - 3 - 第二章 指纹识别技术介绍与整体设计方案 ........................................................ - 4 -

2.1 指纹特征 ................................................................................................... - 4 - 2.2指纹识别技术介绍 .................................................................................... - 6 - 2.3 整体设计方案 ........................................................................................... - 7 - 2.4本章小结 .................................................................................................... - 8 - 第三章 系统的硬件设计 ...................................................................................... - 10 -

3.1硬件系统具体架构设计 .......................................................................... - 10 - 3.2 系统硬件的模块实现 ............................................................................. - 11 -

3.2.1 STC89C52核心处理器 ............................................................... - 11 - 3.2.2 FM-180指纹识别模块 ................................................................ - 14 - 3.2.3 LCD12864液晶显示模块 ........................................................... - 18 - 3.2.4 继电器模块 .................................................................................. - 20 - 3.2.5 蜂鸣器模块 .................................................................................. - 21 - 3.2.6按键模块 ....................................................................................... - 22 - 3.2.7 ZLSN3000 串口联网模块 .......................................................... - 22 - 3.3 本章小结 ................................................................................................. - 24 - 第四章 系统软件实现 .......................................................................................... - 26 -

4.1 指纹识别模块的程序设计 ..................................................................... - 26 - 4.2 液晶显示模块的程序设计 ..................................................................... - 30 - 4.3 单片机的程序设计 ................................................................................. - 33 - 4.4 上位机的程序设计 ................................................................................. - 35 - 4.5 本章小结 ................................................................................................. - 37 - 第五章 系统测试与结果分析 .............................................................................. - 38 -

5.1 系统测试 ................................................................................................. - 38 -

- IV -

目录

5.2 结果分析 ................................................................................................. - 40 - 结论 ........................................................................................................................ - 41 - 参考文献 ................................................................................................................ - 42 - 致谢与声明 ............................................................................................................ - 43 - 附录 ........................................................................................................................ - 44 -

- V -

第一章 绪论

第一章 绪论

1.1引言

随着社会的进步,计算机技术的飞速发展,信息技术,电子技术的改进程度

越来越高,越来越融入人们的生活,同时,安全技术也越来越受到人们的重视。而解决安全技术问题,首先要解决的是门禁的安全问题。人们的财产安全问题仅仅依靠传统的门锁和防盗锁是远远不够的,于是各种新式的门禁系统应运而生,比如数字密码、射频卡等。各种门禁方式有其自己的优点,但大多不能同时实现既安全又方便,比如说数字密码锁,锁的密码容易忘记,并且容易被人盗取。

面对这些问题,人们把视线转移到了生物识别技术上去。一种以人体的特征进行识别的技术——生物识别技术,凭借它自身的各种优点,而且每个人的特征都是不一样的,所以在门禁方面生物识别技术有很大的优势。而在人体特征中,指纹又具有唯一性、稳定性和难以伪造性得特点,用指纹来做门禁的密码,人们便可以不用再去记忆那长长的密码,也不会出现遗忘的问题,于是指纹识别技术凭借其安全性和方便性在门禁系统的开发中迅速崛起。在各式各样的生物识别方法中,与其他的识别技术相比较起来,指纹识别技术具有以下几个特点:

(1)安全性:人的指纹在人出生之后就确定了,并且终生不变,最重要的是每个人的指纹都是不相同的,具有惟一性,这就确保了用指纹来做门禁的密码是十分安全的。

(2)可传输性:指纹识别技术中利用模板来进行识别,系统对模板库的要求较小,并且便于远距离传输。

(3)便捷:利用指纹识别技术来开发门禁,人们便可以不用再像以前一样去记忆长长的密码,也不用整天携带射频卡,只要人在指纹就在,就可以开锁,十分的方便快捷。

鉴于指纹识别技术具有以上的优点,所以利用人的指纹特征进行人身识别是十分优秀的,并且在各个领域都有广阔的应用前景和无比巨大的市场潜力,值得去进行开发。

- 1 -

第一章 绪论

1.2指纹识别技术的发展状况

在中国的古代,手指的指纹就被用做辨别每个人的标记,比如说,古代犯人需要签字画押,画押就用到了指纹。所以说,对人体手指指纹的应用,不是近代才有的,而是从古代就开始了。

到近代,科学技术发展迅速,生物领域迅速崛起,有关手指的秘密不断被挖掘出来,比如说:1.对于指纹纹脊,每个人的纹脊的形状都不相同;2.人体的手指指纹不会随着年龄的增长而变化,也就说会一直保持不变。这两个特点就是经常说的指纹的唯一性和不变性,正是因为这两个特点,使得在许多犯罪的案件中,罪犯所留下的指纹被用作识别犯人的证据,指纹得以正式应用。 最开始的时候,将指纹用作每个人的身份识别的想法早就成熟,但是在硬件上却达不到。随着光学扫描技术的发展,能够完成捕获清晰手指图像的功能,由此,指纹识别技术开始飞速发展。图像获取的设备不断改进,获得的图像越来越清晰,而且计算机的功能也变得很强大,处理图像的能力也越来越好,这些因素使得指纹识别技术实现了打跨步的前进,而且指纹图像的识别算法也是越来越全面,推动着全面的发展。

与国外相比,国内的指纹识别技术起步是比较晚的,但发展的速度却是很快,到目前指纹识别技术已经很成熟。特别是北京大学的两位院士(程民德和石青云)在这方面取得了很高的成就,在国内具有很高的知名度和影响。 目前市场上的出售的指纹模块种类有很多,比如半导体电容式指纹模块、光学指纹模块、射频真皮识别指纹模块、刮擦式真皮识别指纹模块等等。在指纹识别算法方面,不断地被优化,以及硬件平台的不断升级,使指纹识别技术相应的造价不断降低,应用方面越来越广。指纹识别技术不在只用在警用领域,而是进入到人们的日常生活中来。因为指纹识别在门禁方面的前景十分的广阔,利润高,这使得很多的公司和研究机构都投入了大量的人力去开发,使得指纹识别门禁的发展空前迅速,而且这些产品已经在各个领域被应用。目前广泛应用的指纹识别都是基于单片机的,而单片机技术又在飞速发展,这就支撑着指纹识别技术在越来越多的领域中飞速发展。总而言之,指纹识别技术的具有十分广阔的发展前景。

- 2 -

第一章 绪论

1.3课题的研究内容

本文的研究内容大致分为指纹识别模块、单片机控制门的硬件实现以及上位机的网络通信和控制部分。

首先,确定指纹识别门禁系统的结构组成,设计出符合实际需要的门禁系统,并分析指纹的特征和识别方法,以及各种指纹识别模块的优缺点,确定出一种合适的指纹识别模块。

其次,完成基于单片机的门禁控制硬件设计,以及上位机的控制。完成单片机外围电路的设计。

- 3 -

第二章 指纹识别技术与整体设计方案

第二章 指纹识别技术介绍与整体设计方案

2.1 指纹特征

指纹是指的是在手指末端正面的皮肤上线条构成的纹路,线条的方向不同,

弯曲程度不同,就构成了不一样的指纹。一条线条,就会产生几百上千中的变化,一个手指上有很多条线,这就使得每个人的指纹都不同,每个人的指纹都是独一无二的,而且不会改变。指纹的线条有很多的特征,其中纹线的起点、终点、结合点和分叉点,被称为指纹的细节特征点。 指纹图像分为两大类:总体特征和局部特征两大类。

一、总体特征:指的是指纹的宏观上面所体现出来的特征,也就是说那些用肉眼可以直接观察到的特点,这些特点比如有:纹形、模式区、核心点、三角点和纹数等。

图2-1 指纹总体特征图

(1)纹形:万事都有规律,指纹也不例外,虽然指纹变化万千,但还是有规律可循。指纹的脊线走向是比较有规律的,弯曲的大致方向有规律,根据其规律可以将指纹分为三大类——环型、弓形和螺旋形。指纹最主要的是中心的部分,指纹都趋向于这里,这里是模式区,识别指纹的特点都集中在这里,指纹识别技术的识别就是通过这里来进行识别。

- 4 -

第二章 指纹识别技术与整体设计方案

图2-2 指纹纹形图

(2)核心点:指纹的中间通常都有一个中心点,四周的指纹都是围绕着这里的,就好像是周围的纹路都发源于此,在进行指纹识别的时候,通常都以这个核心点作为识别图像的参考位置,以此来作对比。

(3)三角点:指纹的纹线在延伸的时候不是一直平行的,有的纹线会出现交叉或者是断开,当两条纹线交错连接,就会形成类似于三角形的图形,像这样的点,就成为三角点。

(4)纹数:就是指纹的纹路的总数,一般都是从核心点处开始记录,一直到边缘的纹路的数量,不一样的指纹所具有的指纹的纹路都是不同的。 二、局部特征:手指指纹的有许多不能一眼看出来的小细节,这些细节需要仔细区看才能分辨出它的区别,这些特征就是局部特征。手指的指纹的纹线,不是一直连续的,会出先一些分叉和中断,这些小的细节使得指纹进一步区别。相同的指纹在总体特征上面可能一致,但在局部特征上面却是不同的,这就为指纹的唯一性提供了确认信息。

指纹的特征点可以从四个方面去区别:

(1)类型。特征点可以分为很多的类型,具体如下图所示:

图2-3 指纹特征点类型

终结点:指纹的纹路再此终结,断开。

分叉点:指的是一条纹线会分叉成为两条线,分叉的那个点就被称为分叉点。

- 5 -

第二章 指纹识别技术与整体设计方案

分歧点:原本两条平行的纹路,会出现弯曲变向的情况,开始出现这种情况的点就是。

孤立点:没有形成纹路,就只有单独的一个点。 环点:纹路弯曲连成一个小圆圈,就像是一个环形的点。 短纹:比较短的一小段纹路,就像是线段。

(2)方向。每一个特征点的方向都不同,同一类型的特征点,其方向不同,所代表的信息也就不同。

(3)曲率。纹路会有弯曲,纹路的弯曲程度就用曲率来表示。

(4)位置。就是指特征点在指纹图像的位置,用横纵坐标来表示,一般是用相对的坐标来表示的特征的位置。

2.2指纹识别技术介绍

指纹识别技术的目标就是能够识别手指的指纹并能够将不同指纹的模板进行对比判断,主要分为两部分:1.指纹图像获取。2.指纹图像对比判断

(1)指纹图像获取:识别并获取指纹图像,需要能够获取指纹图像的指纹传感器,目前主要有三类:1.光学指纹传感器:通过光学手段获取指纹的技术是最早用于指纹识别技术的,光学指纹感器的优点是方便快捷,它的缺点就是对采集手指和取像的镜片要求比较高,质量好的镜片才能够获取到清晰的指纹图像,并且光学指纹传感器的体积一般都比较大,对于小巧的嵌入式设备来说不适用;2.半导体指纹传感器:对于半导体指纹传感器来说,它的价格低、体积小,对于嵌入式设备来说,小巧的便于使用。自从上世纪 90 年代中期出现以来,发展十分的迅速,代表的有产品有:压感指纹传感器、固态指纹传感器、电容式指纹传感器、温度型指纹传感器等等。3.基于超声波扫描技术的指纹传感器:超声波遇到皮肤会反射回来,而且皮肤表面凹凸不平,反射回来的声波也是不同的,超声波识别就是利用反射回来的声波的不同来识别不同的指纹。它的优点有:在不同的情况下都能获取到清晰的图像,对于不同粗糙程度的手指也都能获得清晰地图像。缺点:就目前来说,这种传感器的价格比较昂贵,不太适合普及。

- 6 -

第二章 指纹识别技术与整体设计方案

(2)指纹图像对比判断:获取到指纹图像之后,为了判别出获取到的指纹到底是谁的指纹,就需要对指纹与指纹数据库中的指纹进行对比判断。进行对比判断就需要一个算法,这就是指纹识别算法。指纹识别算法是指纹识别技术的关键,算法的好坏,直接影响到拒识率和误识率,以及系统的运行速度等。整个指纹识别算法分为三部分:指纹图像预处理、提取指纹特征和指纹匹配。先获得手指的指纹,再利用指纹识别算法将数据库的指纹和得到的指纹相对比,判断出获取的指纹是不是数据库中的指纹,若是,给出相匹配的是数据库中哪一个指纹。

通过指纹图像获取和指纹对比判断两个部分,便可以对给出手指的指纹进行识别,得到识别结果,这就是指纹识别技术的大体构造。

2.3 整体设计方案

根据以上所介绍的指纹识别技术,设计基于单片机的指纹识别门禁系统,实现对大楼所有门禁的整体管理,并且能够管理用户信息和权限。所以系统主要分为上位机和下位机两部分,上位机作为主要的控制部分,通过网络对多个下位机进行控制,并且实现用户等级的设定。指纹录入端位于大楼的入口处,对进入者进行指纹录入工作。下位机则是门禁的实际控制端,通过指纹识别模块,对用户进行识别,进而控制门锁的开闭。整体框架可以为如下图所示:

上位机下位机下位机图2-4 整体框图

下位机 上位机与下位机各自分工,上位机与下位机通过网络模块进行通讯。下位机是与门直接相连的部分,通过指纹识别模块对用户的指纹进行识别,并将结果传输给单片机,单片机再进一步控制液晶显示结果,并通过蜂鸣器发出声音提

- 7 -

第二章 指纹识别技术与整体设计方案

示,用户还能够进行按键调节。下位机的框架如下所示

指纹识别模块网络通信模块蜂鸣器单片机按键液晶显示模块电源供电图2-5 下位机整体框图

继电器模块 各个子模块的具体硬件选择和使用方法在后面具体介绍。本系统的主要功能特点:

(1) 拥有高效的指纹识别模块,可以十分快捷的利用指纹开锁,高效方便,

且安全性高。

(2) 上位机部分由科学的管理软件,能够实现门禁的科学化管理。 (3) 上位机与下位机的通信采用以太网模块,可以实现远距离的控制。 (4) 门禁系统的用户采用权限分割,不同的用户拥有的权限不同,能够进入

的门也不同,从而实现用户的逐级权限管理。

2.4本章小结

本章主要介绍了指纹识别技术的主要工作原理,工作的原理主要包括三部分,分别为:指纹的特征、指纹图像的获取和指纹识别算法。其中,指纹的特征又分为总体特征和局部特征两类,指纹图像传感器大致有三类,指纹识别算

- 8 -

第二章 指纹识别技术与整体设计方案

法包括指纹图像的预处理、提取特征值和指纹匹配三部分,先后并对各个部分做了简要概述,在此之后,又对系统的整体设计方案做了介绍。

- 9 -

第三章 系统的硬件设计

第三章 系统的硬件设计

3.1硬件系统具体架构设计

本次的基于单片机的指纹识别门禁系统的硬件部分需要完成一系列复杂的任务,包括图像采集、图像处理、图像对比等,还需要在与上位机通信时上传指纹模板,以及控制外围器件等工作。所以要实现这样一个复杂的任务,需要处理器具有比较强的计算能力和控制能力,并且储存器资源要大。

本文的指纹识别系统,就是利用指纹识别技术,通过单片机的硬件和软件管理实现对门禁的控制。工作人员不必携带钥匙,也不必进行纸张登记,只需手指一按,便可以完成身份识别和进入记录。所以整个系统需要满足:

(1) 体积小,便于安装。所以在选择硬件时就要考虑硬件的体积问题。 (2) 用户界面要简单,便于操作。

(3) 处理速度要快,指纹的辨识率要高。所以在处理的选择和指纹识别

模块的选择上,要注重其性能。

(4) 良好的网络通信。由于需要进行指纹图像的数据通信,所以需用用

到TCP/IP通信,就需要选择网络模块来完成。

基于第二章的整体设计方案,已经确定了系统的模块组成,再根据各个模块需要实现的功能,确定各模块硬件的选择和使用。对于指纹识别模块需要有高辨识率、处理速度要快、准确率高,所以确定使用FM-180光学指纹采集仪。液晶显示模块有LCD1602和LCD12864,但LCD12864能够显示4*8汉字,且界面清晰,所以采用LCD12864,来文字显示录入模式、识别模式转换。单片机需要快速计算和控制,以及较大存储空间,所以选择STC89C52。由于上位机需要控制管理大楼内所有的下位机,通信距离较远,RS232不能够满足远距离传输,RS485能够满足远距离传输,但其在传输较大量数据时安全性不够高,所以采用网络传输形式,使用ZLSN3000网络模块。按键采用独立式按键。

- 10 -

第三章 系统的硬件设计

上位机ZLSN3000FM-180STC89C52独立按键LCD12864继电器图3-1 系统硬件架构

蜂鸣器

3.2 系统硬件的模块实现

根据前面得到的硬件具体规划,下面就对各个模块进行逐个介绍。包括核心处理器、指纹识别模块、网络模块、液晶显示模块等等,下面将对各个子模块进行介绍。

3.2.1 STC89C52核心处理器

一:主要性能

STC89C52是STC公司生产的一款8位的MCU,它的内部组件有8KB的Flash芯片和512B的RAM。相比较于原先的51单片机,52的内存更大,还具有第三个定时器,在各方面的性能方面都有了较大的进步。对于单片机能够很方便的各个模块相连接,比如说指纹识别模块,只需要用P30和P31两个端口,与模块串口相连,在给模块上电,就能够实现对模块非管理和使用。程序可以下载到Flash中存着,即使掉电也不会丢失,能够一直保存,直到下次下载时才会清除。

二:引脚介绍

STC89C52的引脚结构图如下所示:

- 11 -

第三章 系统的硬件设计

图3-2 STC89C52引脚图

各个引脚功能介绍: (1)电源引脚 VCC :电源电压 VSS :接地 (2)输入输*引脚

P0 P1 P2 P3总共4*8=32个引脚,这些引脚主要用作I/O输入输出,控制一些外接器件,例如LED灯、开关等等。其中P3口有特殊用途,可用于串口传输以及中断和定时器,本次的设计主要用到P3口。具体功能如下所示:

表3-1 P3口第二功能 端口 P3.0 P3.1 P3.2 P3.3 P3.4 P3.5

- 12 -

第二功能 RXD(串行输入口) TXD(串行输出口) INT0(外部0中断) INT1(外部1中断) T0(定时器0) T1(定时器1) 第三章 系统的硬件设计

(3)控制引脚

RST:复位输入。这个引脚用来使单片机复位,令单片机初始化。 EA :当有外部RAM时,需要访问外部的存储器,就需要EA引脚来控制是否选择外部存储器。

(4)时钟引脚

XTAL1:外部振荡器的时钟输入的第一个引脚。 XTAL2:外部振荡器的时钟输入的第二个引脚。 三: 外围电路

STC89C52作为单片机,想要运行起来,就需要最基本的一些外围电路的支持,比如供电模块、时钟模块。本设计使用5V电源供电,时钟信号采用12MHZ晶振。

(1)电源电路首:先要将220V城市交流供电转换成5V的直流供电,需要经过变压、整流、滤波过程,再传输给单片机。原理图如下所示:

图3-3 5V电源电路

电源电路左端接入220V交流市电,经过变压器降压,将电压降下来。在经过一个由四个二极管组成的整流桥式电路,将交流电转换成为直流电。转换之后得到的直流电电压波动比较大,不够稳定。所以并联一个电解电容,起到滤波的作用,是电流进一步稳定。进过滤波之后的电流仍然稳定度不够,所以再接上一个三端稳压器,其内部由三极管和电阻构成,能够实现随着所加电压的波动而电阻发生变化,这样在稳压器的右边,电压就可以保持稳定。在稳压器之后再接电容,起到进一步滤波的作用。电源电路的右端,接一个开关,来控

- 13 -

第三章 系统的硬件设计

制电流的接通,即电源开关。二极管起到保护作用。VCC端便得到一个5V直流电源,可以接到单片机VCC引脚上面供电。

(2)时钟电路:时钟电路是单片机的心脏,是动力源,控制着单片机的工作,单片机就是通过时钟信号来给其他的部件发送信号,推动者单片机整体的运行。晶振电路如下:

图3-4 晶振电路

本设计采用12MHZ的外部晶振来供给单片机时钟信号,晶振连接到单片机的XTAL1和XTAL2上面,在并联两个电容C1和C2,这两个电容可以使频率降低波动,还有助于起振。起到以为晶振为12MHZ,所以时钟周期为1/12M=1/12us,机器周期为12*时钟周期=1us。

3.2.2 FM-180指纹识别模块

对于本系统指纹识别模块的选用,采用FM-180指纹识别模块。该模块是一个完整的指纹识别模块,能够完成指纹图像的获取、指纹对比匹配和指纹模板的存储功能。模块内部含有高性能的DSP处理器和用于储存的FLASH芯片等,具体能够完成指纹图像处理、模板生成、模板匹配、指纹储存和指纹搜索对比的功能。每个指纹模块都有自己的一些独特的功能,FM-180具有以下特点:

(1)适应度强。不管模块处在什么环境下,手指是干的还是湿的,模块都能够很好地调节,使得到的图像变得很清晰。

- 14 -

第三章 系统的硬件设计

(2)价格低廉。设备采用低价的光学采集仪,使成本大幅降低。而且,处理器在不断更新换代,价格也随之而降低。还有其他组成部分,例如FLASH芯片等,价格都在下降,使得模块整体的造价低廉。

(3)算法性能优异。模块的算法是经过不断改进变化的,对于粗糙的指纹还有变形的指纹,都做出了相应的特殊处理,使模块能够应对各种各样的不同指纹。

(4)简单易用。模块具有自己的指令系统,用户不需要自己去设计底层的东西,只需要按照指令去做即可。你可以使用指纹识别模块,方便用户无需专业知识为指纹识别的需要,可以按照模块提供了指导,开发出功能强大的指纹识别系统。

FM-180的外部引脚共四个,各个引脚的功能如下表所示:

表3-2 FM-180的引脚介绍 引脚号 名称 类型 功能描述 1 VCC in 电源正输入 2 3 TXD RXD Out in 串行数据输出 串行数据输入 4 GND - 电源接地

- 15 -

第三章 系统的硬件设计

图3-5 FM-180 实物图

FM-180指纹识别模块内部已经集成了足够的器件,能够自己完成足够多的功能,只需要从单片机通过串口向模块发送指令就能够实现功能。具体的过程是:扫描指纹,获取指纹的图像,在将图像合成模板,模板中存的就是指纹的特征的数据。数据库中所存的指纹数据就是指的是模板,每个人的指纹构成一个模板,一个模板代表一个人,指纹的识别也是通过获取指纹的模板,在与数据库中的模板向对比,一样的话就是匹配成功。

指纹识别模块的使用命令主要为:(1)录入图像、生成特征、合成指纹模板、存储指纹模板。(2)搜索指纹、匹配指纹。具体的指令格式和使用方法,在后面的软件设计部分做详细介绍。

指纹识别模块与单片机的引脚连接如下所示

- 16 -

第三章 系统的硬件设计

图 3-6 指纹识别模块与单片机的连接

指纹识别模块的VCC端接到5V电源,GCD端接地,RXD串行数据输入接到单片机的P3.0口(TXD),TXD串行数据输出端接到单片机的P3.1口(RXD)。模块与单片机需要通信,通信方式采用串行通讯,从单片机发送指令,指令以字节为单位从串行口发送出去,模块接收指令,在运行指令,实现功能。单片机的指令、模块的应答和指纹数据的传输都要满足模块的规定包的格式。

(1)指令包/数据包。指令包和数据包共分为三类:命令包,包标头=01;数据包,且有后续包,包标头=02;数据结束包,包标头=08。数据包都需要添加前置的标头,标头都是0xEF01。

(2)应答包。模块在接收到单片机的指令后,就根据指令开始工作,当任务完成后,就需要向单片机返回指令执行的结果,这时就需要应答包,应答包有自己的格式和相应的确认码的定义。

(3)通讯波特率。指纹识别模块的波特率为9600bps,与单片机进行串口通信,单片机的波特率也要相应设置为9600bps。

(4)指令集。指纹识别模块具有自己完整的指令集,通过这些指令集,可以完成所有的功能。

指纹识别模块的指令集、应答包以及数据包在后面软件设计的部分作详细介绍。

- 17 -

第三章 系统的硬件设计

3.2.3 LCD12864液晶显示模块

液晶显示模块是面向用户界面的,所以需要充分显示所要表达的内容,还要简洁,所以本系统采用的液晶显示模块为QC12864B,这个模块带有中文字库,不需要用户自己定义,只需要定义好位置显示即可,能够显示的汉字有32个,一个汉字相当于两个字符,所以,字符可以显示64个。LCD12864液晶显示模块共有20个引脚,通讯方式有串口和并口两种,串行可以用SID口通讯,并口是有8个数据口,实现8位并口传输。 1.模块的20个引脚的定义如下所示:

表3-3 LCD12864引脚介绍 管脚号 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 管脚名称 VSS VCC VO RS(CS) R/W(SID) E(SCLK) DB0 DB1 DB2 DB3 DB4 DB5 DB6 DB7 PSB NC RESET VOUT 电平 0V 5V - H/L H/L H/L H/L H/L H/L H/L H/L H/L H/L H/L H/L - H/L - - 18 -

管脚功能描述 模块电源地 模块电源正 对比度调整 并行指令、数据选择端;串行片选端 并行读写选择信号;串行的数据口 并行的使能信号;串行的同步时钟 数据口0 数据口1 数据口2 数据口3 数据口4 数据口5 数据口6 数据口7 并/串行接口选择 空脚 复位端 空脚 第三章 系统的硬件设计

19 20 LED_A LED_K VDD VSS 背光源正极 背光源负极 单片机与液晶模块连接如下所示:

图3-7 液晶模块也单片机的连接

并行传输主要涉及7到14引脚,并行数据口DB0~DB7连接到P0.0~P0.7,串行数据口5连到P11,串行时钟6连接到P12,串并行的方式选择引脚15连接到P16。

2.LCD12864是完整的模块,在它的内部有自己的RAM和ROM,如下所示:

(1)字型产生ROM:屏幕是由很多个小的晶体管组合显示的,通过控制一部分小的晶体管的开关,就能够构成很多形状的字符。

(2)显示数据RAM:内部数据存储的是需要显示的字符的编码内容,对于有字库的,只需要把代码放到里面就能够显示出来

(3)字型产生RAM:如果想要显示图像,中文库里面没有图像的代码,这时就可以通过字形产生的RAM,把需要显示的图形的编码放到上面,之后再放到显示数据RAM中去,就可以显示到屏幕上去。 3.指令控制

LCD12864模块的提供两种指令来控制芯片,基本指令和扩充指令,单片机

- 19 -

第三章 系统的硬件设计

在让模块实现功能的时候,就需要根据模块的指令的格式,来向模块发送指令,实现功能。在单片机项目模块发送指令之前,为了防止出现冲突的问题,就需要先判断模块是否处于空闲的状态,只有当模块处于空闲状态下才能够接受新的指令;如果想要在发送指令之前不去检查标志位,就需要在发送新的指令之前,延时足够长的一段时间,来保证前一个指令能够确实执行完成,这样才能够实现不判断忙也能够不冲突的发送指令。模块使用基本指令还是扩充指令,是由RE来决定的,RE的数值就代表使用哪一种指令,要想改用另一种指令,就需要来改变RE的数值,这样才能够实现。 4.串行通信

图3-8 串行时序图

本次设计采用单片机与液晶模块串行通信的方式,引脚主要用到4、5、6三个引脚,来实现片选(4)、同步时钟(6)和串行数据口(7)。串口控制—格式 11111ABC ,其中后面三位用于控制,A用来表示数据往哪里传,高电平表示从模块向单片机;B表示数据类型,高电平表示传输的是数据,低电平表示传输的是指令;C固定为0。串行发送数据时,需要按照这样的格式才能够实现正确的数据和指令发送。

3.2.4 继电器模块

门禁的门体部分,用电控锁来控制门的开闭,电控锁实际上是由一个电磁铁来控制,电磁铁则可以用继电器来控制电流的开闭,继电器选用松乐继电器。

- 20 -

第三章 系统的硬件设计

图3-9 继电器部分

继电器部分的控制端连接到P14,P14连接到PNP型的三极管的基极上面,当P14处于高电平时,三极管不导通,继电器处于打开状态,指示灯灭;当P14处于低电平时,三极管导通,指示灯亮,电磁铁通电,使开关打开,继电器处于闭合工作状态。利用软件编程,控制P14引脚的电平高低变化,来实现继电器的控制。

3.2.5 蜂鸣器模块

门禁控制系统在与用户交互时,需要声音提示,声音提示选用蜂鸣器,模式切换时响一声,指纹录入成功和匹配成功时响两声,指纹录入失败和匹配失败时响三声。蜂鸣器的驱动采用直流驱动,只需要利用一个三极管,将电源、引脚和蜂鸣器连接,就可以通过控制引脚电平,来实现控制蜂鸣器驱动电压的控制。驱动电路如下图所示:

图3-10 蜂鸣器部分

- 21 -

第三章 系统的硬件设计

蜂鸣器通过一个PNP型的三极管连接到P15引脚上去,单片机复位后引脚都是高电平,所以用PNP型三极管。若用NPN型三极管,在单片机复位之后就会处于导通状态,蜂鸣器就会发出声音,为了避免这种情况,就采用PNP型三极管。当P15引脚处于高电平时,三极管不导通,蜂鸣器不响;当P15引脚处于低电平时,三极管导通,蜂鸣器工作,发出声音。

3.2.6按键模块

门禁系统的人机交互界面,需要实现用户的按键设置,能够实现模式转换,指纹识别等的按键设置。在本系统中,只需要采用多个独立式的按键即可。

图3-11 按键部分

三个按键的作用分别为:删除指纹,模式切换和指纹录入。三个按键连接到P32,P33和P34引脚上面,软件设计上不停扫描这三个引脚的电平变化,当没有按键按下时,电平不发生变化,不会触发子程序;当有按键按下时,电平变为0,触发按键子程序。

3.2.7 ZLSN3000 串口联网模块

本次实现的指纹识别系统是针对整个大楼内的系统,所以下位有多个,并且距离很远,这就要求上位机与下位机进行通信时,能够保证通信的速度和安全性,所以选用网络模块ZLSN3000,来实现上位机与下位机的通信,如下图:

- 22 -

第三章 系统的硬件设计

图3-12 ZLSN3000模块

TTL电平连接型系列模块的zlsn3000,它的网络协议部分不需要用户自己设计,已经内部集成了。串口部分,通过四根引线便可以将模块与单片机部分相连接,分别为VCC(5V)、GND、TXD、RXD四根。ZLSN3000省去了用户自己设计底板的过程,可以直接使用,方便快捷,为用户提供经济、快捷的嵌入式联网解决方案,可以减少用户自己用于开发的时间和投入,并且增加稳定性。模块的通讯方式是全双工的,在合适的波特率下,模块可以实现没有任何数据丢失的传输,而且模块的价格也很公道,比较适合系统。

具体的引脚定义如下图所示:

表3-4 ZLSN3000引脚 引脚号 1 2 3 4 5 6 7 8 引脚定义 MODE GND VCC RST SPA SPR CTS RTS - 23 -

引脚功能 为0,模块内部数据不能修改 电源接地 电源正极 复位 模块参数修改应答引脚 模块参数修改请求引脚 串口流量控制 串行流量控制 第三章 系统的硬件设计

9 10 11 12 13 14 15 16 17 18 19 RXD TXD LED_S LED_R TPIN+ IN TPIN- IN TPOUT- OUT TPOUT+ OUT DEF ACT LINK 串行输入 串行输出 数据发送指示灯 数据接收指示灯 网络输入+ 网络输入- 网络输出- 网络输出+ 为0,模块采用默认参数 为0,表示数据正在接收 连接指示 将模块的各个引脚连接好之后,便可以将单片机与上位机实现远距离通信,并且通信稳定,传输速度快。

网络模块需要先进行UART转串口的工作,电路图如下所示:

图3-13 串口电路

3.3 本章小结

本章主要对基于单片机的嵌入式指纹识别门禁系统的硬件设计做出了介绍,包括硬件整体构架的分析和选择,以及各个模块的硬件实现,包括STC89C52

- 24 -

第三章 系统的硬件设计

核心处理器、FM—180指纹识别模块、 LCD12864液晶显示模块、继电器模块、蜂鸣器模块、按键模块和ZLSN 3000 串口联网模块,详细介绍了各个模块具体硬件类型的选择和所选类型的功能做出了介绍。还对各个模块的使用做出了介绍,包括硬件的连接和各个引脚具体介绍。

- 25 -

第四章 系统软件实现

第四章 系统软件实现

本系统采用C语言编程,软件使用KEIL C51版本,将程序模块化,便于功能的进一步扩展,模块化还有利于错误的检查和后期的优化。软件系统主要分为以下几个模块:指纹识别模块、液晶显示模块、单片机模块和上位机模块,下面针对各个模块分别介绍了程序流程。

4.1 指纹识别模块的程序设计

FM-180作为一个指纹识别模块,它的内部已经很完整,用户只需要对模块下达合适的命令就能够实现对模块的控制,进而实现相应的功能。不同的功能,需要不同的指令来实现,而每一条指令都有其规定的格式,用户必须按照其规定个格式来进行。

指纹识别模块需要完成的工作有:获取指纹图像,生成指纹特征模板,储存指纹特征模板和匹配指纹等工作,单片机根据模块的指令系统,给模块发送指令信息,来控制模块完成相应的工作。工作过程如下所示:

一:指纹录入过程。

指纹录入过程的流程图如下所示:

- 26 -

第四章 系统软件实现

开始发送获取图像指令PS_GetImage否读取到图像?是发送生成特征文件指令PS_GenChar生成特征文件发送储存指令PS_StoreChar储存特征文件结束

图4-1 指纹录入过程

指纹录入过程,用于新用户的注册,当有新用户需要注册时,就先在指纹头处获取用户的指纹图像,在将之生成指纹特征模板,在储存起来,这样就完成了新用户的注册。

在指纹录入过程中主要的指令有:

(1)录入图像 PS_GetImage:扫描探测到的手指,并将其形成图像,用于后面步骤的进行。指令格式如下所示:

- 27 -

第四章 系统软件实现

表4-1 指令PS_GetImage格式 包头 2字节 芯片地址 4字节 包标识 1字节 包长度 2字节 指令码 1字节 校验和 2字节 指令包格式 0xEF01 xxxx 01H 03H 01H 05H 应答包格式 0xEF01

(2)生成特征 PS_GenChar:将获取的指纹原始图像生成指纹特征文件。指令格式如下所示:

表4-2 指令PS_GenChar格式 xxxx 07H 03H xxH sum 包头 2字节 芯片地址 4字节 包标识 1字节 包长度 2字节 指令码 1字节 校验和 2字节 指令包格式 0xEF01 xxxx 01H 04H 02H sum 应答包格式 0xEF01

(3)储存模板 PS_StoreChar:将生成的指纹的特征的文件存放到flash中去,掉电不会丢失。指令格式如下所示:

表4-3指令PS_StoreChar格式 xxxx 07H 03H xxH sum 指令包格式 2字节 包头 0xEF01 4字节 1字节 2字节 1字节 1字节 缓冲区 BufferID 2字节 2字节 芯片地址 包标识 包长度 指令码 xxxx 01H 06H 06H 位置号 校验和 PageID Sum 应答包格式 2字节 包头 4字节 1字节 2字节 1字节 2字节 校验和 芯片地址 包标识 包长度 指令码 - 28 -

第四章 系统软件实现

0xEF01 xxxx 07H 03H xxH Sum 按照这三个指令的格式,在单片机的程序内设计相应的子程序,加以调用,便可以完成以上功能。 二:指纹识别过程。

指纹识别过程的流程图如下所示:

开始发送获取图像指令PS_GetImage否读取到图像?是发送生成特征文件指令PS_GetChar生成特征文件发送搜索对比指令PS_Search搜索到指纹?是否返回指纹ID返回匹配失败结束 - 29 -

第四章 系统软件实现

图4-2 指纹识别过程

指纹识别过程与指纹录入过程部分相似,都是需要先获取指纹图像,在将获得的指纹图像生成为特征模板。指纹识别过程在得到指纹特征模板之后,将之与指纹库中的模板向对比,若对比成功,就返回对应指纹模板的ID;若失败,就返回失败。指纹识别过程用于门禁系统的开锁,当有用户时,首先在指纹头处获取指纹,在与指纹库中指纹相对比,若成功,就打开门;失败,就液晶提示指纹匹配失败。

搜索指纹 PS_Search:以charbuffer中的指纹特征文件来搜索整个指纹库,并返回结果。指令格式如下所示:

表4-4 指令 PS_Search 格式 指令包格式 2字节 包头 0xEF01 4字节 1字节 2字节 1字节 1字节 2字节 2字节 2字节 参数 校验和 Page Sum 芯片地址 包标识 包长度 指令码 缓冲区 参数 xxxx 01H 08H 04H Buffer Stage 应答包格式 2字节 包头 0xEF01

利用FM-180指纹识别模块给出的指令系统,设计出指纹识别模块部分的程序,通过这样的指纹录入和识别过程,便可以实现用户的指纹录入和指纹识别功能,进而利用单片机来控制门锁和与上位机通信等工作。

4字节 1字节 2字节 1字节 2字节 2字节 2字节 得到 校验和 sum 芯片地址 包标识 包长度 确认码 页码 xxxx 07H 07H xxH PageID Match 4.2 液晶显示模块的程序设计

液晶显示模块选用QC12864B型号,它是一个完整的模块,只需要对其发布指令便可以完成相应的工作。

LCD12864液晶模块内涵字库和处理器,具有自己的一套指令系统,用户只需要根据使用手册给出的指令系统,依照规定的指令格式,给模块发送指令,完成相应的功能。因为模块是带字库的,所以用户不需要自己定义字形,只需

- 30 -

第四章 系统软件实现

要设定好显示字符的坐标,再将字符发送过去即可。发送汉字时,因为是双字节,所以要先发送高字节,再发送低字节。并且当单片机向模块发送指令之前,需要检查模块是否处于忙状态,也就是需要读取BF标志位,当标志位为0时才能够发送新的指令。如果不想判断忙碌状态,就需要在发送指令之前先延时足够长的一段时间,确保上一条指令发送完毕。

液晶模块程序流程如下所示:

开始LCD初始化是查询液晶忙?否写指令写数据是确定坐标显示字符显示新内容?否结束

- 31 -

第四章 系统软件实现

图4-3 液晶模块使用流程

LCD12864模块提供两套指令系统来应对各种情况,分别为基本指令和扩展指令,当RE=0时,调用的为基本指令,当RE=1时,调用的是扩展指令。

模块的通信方式为8位并行方式和串行方式,本次选择串行方式,串行发送字节的子程序如下所示:

void SendByte(unsigned char Dbyte) {

unsigned char i; for(i=0;i<8;i++) {

SCK = 0;

//拉低时钟电平

Dbyte=Dbyte<<1; //左移一位,移出位给CY,右边填0 SID = CY; //移出的位给SID 串行数据口,发送数据 SCK = 1; SCK = 0; } }

其中SCK为串行时钟端,SID为串行数据端。无论是发送指令还是发送数据,都通过调用这个发送字节的子程序来完成的。常用指令如下所示:

表4-5 指令格式

//一个脉冲时钟发送一位

//for循环,将参数Dbyte 发送出去 (一个字节)

指令 RS R/W D7 清除显示 地址归位 0 0 0 D6 0 指令码 D5 0 D4 0 D3 0 D2 0 D1 0 D0 1 指令功能 将DDRAM填满20H,并将AC至00H 将AC地址计数器移至00H 0 0 0 0 0 0 0 0 1 X - 32 -

第四章 系统软件实现

读取忙0 标志位和地址 写数据 1 功能设定 设定DDRAM地址 0 1 BF AC6 AC5 AC4 AC3 AC2 AC1 AC0 确认是否忙并读地址 写入数据 0 0 0 0 1 数据 DL X RE X X DL=0/1表示4/8位数据;指令集选择 设定显示地址 0 0 1 0 AC5 AC4 AC3 AC2 AC1 AC0

再向模块发送指令时,只需要按照上述指令规则,给模块发送指令即可,例如液晶初始化时需要发送一些指令,如下所示:

void LcmInit( void ) //液晶的初始化子程序 {

WriteCommand(0x30); //发送0x30,启用基本指令集 WriteCommand(0x03); //发送0x03,将AC地址归0 WriteCommand(0x0C);

WriteCommand(0x01); //发送0x01,将地址归0

WriteCommand(0x06); //当有指令写入时,游标向右移动 }

指纹模块需要显示一些汉字内容,如在指纹录入模式时,需要显示“指纹录入模式”,还需要显示“录入成功”和“录入失败”;在指纹识别模式时,需要显示“指纹识别模式”和“指纹号”等。

4.3 单片机的程序设计

单片机采用STC89C52,单片机的主程序主要是完成上位机与下位机通信、单片机与模块通信的任务,首先要将波特率设置为9600bps(与模块相对应),

- 33 -

第四章 系统软件实现

然后在根据模块的指令包格式,来发送命令。软件使用Keil C51版本,主程序采用c语言编写。单片机对指纹识别模块发送命令,得到识别结果,在根据这个结果来控制显示模块、语音模块和电子锁模块。程序的主流程图如下所示:

开始单片机初始化按键模式选择按键2按键1指纹识别模式指纹录入模式调用指纹识别子程序调用指纹录入子程序匹配成功?否储存用户信息是开锁提示失败结束 图4-4 单片机部分程序流程

单片机的初始化主要包括波特率的设置、定时的设置以及中断的设置,如下所示:

void main(void) {

ET0=1; //定时器0开中断

TL0=0x97; //设定定时器的初始值,TL为低8位,TH为高8位

- 34 -

第四章 系统软件实现

TH0=0xBD;

SCON=0x50; //串行通讯的控制寄存器,设置串行的相关事项; PCON=0x00; //设置波特率的大小,当SMOD=0时,波特率保持 TMOD=0x21; //设置定时器T1的相关属性 TH1=0xFD;

TL1=0xFD; //设置波特率,此处设置波特率为9600 TR1=1;

TR0=1;// 开定时器0

IT0=0;//中断0低电平中断 IT1=1;//中断1低电平中断 EX0=1;//开中断0 EX1=1;//开中断1 EA=1; }

完成单片机的初始化后,根据按键来触发子程序,比如按键选择指纹录入,就调用采集指纹子程序,再调用生成特征文件的子程序,再调用储存指纹子程序,这样一连串下来便完成了整个的指纹录入过程;如果按键选择指纹识别,就先调用采集指纹子程序,进而调用特征文件生成子程序,最后调用指纹对比子程序,返回对比结果,完成指纹识别功能;如果按键选择删除功能,就调用删除子程序,并返回删除结果。

4.4 上位机的程序设计

上位机的软件部分使用VC++工具,上位机需要完成的工作主要是对所有的下位机进行统一的管理,能够实现用户权限级别的设定和用户信息的统一管理,包括用户指纹信息的注册、等级设定和注销功能。上位机软件功能框架如下所

- 35 -

第四章 系统软件实现

示:

用户添加门禁使用记录上位机用户删除用户等级设定图4-5 上位软件功能框架

上位机需要完成的工作有:(1)新用户的添加删除;(2)对下位机发送“注册用户的指令”,并由下位机上传新用户的指纹数据;(3)对下位机发送“删除用户指令”,下位机接受指令,删除用户信息;(4)对不同的用户信息作出权限设定,需要权限的门禁,只能识别有权限的用户信息,这些用户的信息由上位机传送下去。

上位机在与下位机通信时,通过ZLSN3000网络模块,需要安装ZL Vircom软件,对模块进行调试。上位机主要就是对数据库进行管理,接收下位机传输来的用户指纹数据,将之分配标记。用户的权限等级设定,就是将获得权限的指纹数据发送至需要权限区别的门禁下位机中,没有权限的用户的指纹信息不被发送,这样,这个下位机中就只存有满足权限等级的用户的指纹信息,也就只能这些人来开门。

上位机指纹录入端网络通信下位机下位机 - 36 -

第四章 系统软件实现

图4-6 上位机通信流程

当上位机需要删除用户时,就给下位机发送指令,让下位机启动删除指纹子程序,删除指纹识别模块库中的指纹

开始发送删除指纹指令指定下位机接收指令下位机调用删除子程序否删除完成?是向上位机返回消息结束

图4-7 上位机删除用户流程

4.5 本章小结

本章主要介绍了系统的软件部分,包括液晶显示模块程序设计、指纹识别模块程序设计、单片机程序设计和上位机程序设计,程序主要是利用KEIL C51来进行得C语言编写。便可以实现完整的系统功能。

- 37 -

第五章 系统测试与结果分析

第五章 系统测试与结果分析

前面几章对系统的整体设计方案做出了介绍,包括硬件系统的架构设计以及软件系统的设计,下面就对系统进行实际测试。根据之前的设计,在STC89C52开发板上面搭建平台,进行测试,测试主要内容有:测试指纹录入功能、测试指纹识别功能。平台如下所示:

图5-1 开发板平台

5.1 系统测试

(1)指纹录入功能测试。

当有新用户需要注册时,就按模式切换键,将模式切换到指纹录入模式。按开始录入键,将手指放到指纹头处,等待几秒,录入两次,蜂鸣器响,液晶屏上显示录入结果。

- 38 -

第五章 系统测试与结果分析

图5-2 录入模式液晶显示

当切换到录入模式时,液晶显示如上图所示。再按开始录入按键,录入指纹,成功后,指纹号处就显示录入的指纹的排序号。

(2)指纹识别功能测试。

当用户需要开锁时,系统处于指纹识别模式,将手指放到指纹头上面,等待几秒,若匹配成功,液晶显示成功,并打开继电器。若失败,只提示失败,继电器不打开。

图5-3 识别模式液晶显示

当切换到指纹识别模式时,开始识别指纹,如果识别成功,就显示相应的

- 39 -

第五章 系统测试与结果分析

指纹号,并打开继电器。

5.2 结果分析

通过开发板搭建系统进行测试,先后对多人的指纹进行了测试,并且通过液晶显示和按键,实现了人机交互。测试过程中,系统的启动和初始化正常,各个模块的启动也正常,工作状态稳定。对具体功能进行测试,系统能够很好地录入指纹并且正确的识别指纹,速度快,效率高。系统能够实现相应的功能,并且稳定工作,这表明系统的设计是符合要求的。

- 40 -

结论

结论

生物识别技术的前景十分广阔,而其中的指纹识别技术,由于其的特性,在门禁方面应用广泛,它的开发十分受欢迎。而现在指纹识别的模块,功能十分的广泛,本次的设计就是基于单片机,利用指纹识别模块,设计指纹识别门禁系统。

1.设计的主要工作:

本次设计利用STC89C52、FM-180、LCD12864、ZLSN3000以及继电器和蜂鸣器等,组合开发指纹识别门禁系统,能够对整栋大楼的所有门禁进行总体控制和用户权限等级设定。整个系统采用模块方式,便于维护。论文分章对各个模块的软硬件进行了阐述,重点研究了指纹识别模块、单片机和液晶显示的硬件实现和软件实现。

2.需要进一步研究的工作:

本文所设计的方案需要进一步的优化,LCD12864显示屏可以进一步优化为触屏;核心处理器可以进一步采用更先进的ARM处理器,来提高运算速度;指纹识别模块可以进一步选用更大储存空间的模块,来提高指纹储存数量;上位机的软件,还能够进一步优化,开发更多的功能以及优化界面等。

- 41 -

参考文献

参考文献

[1]. 张丽娜.51单片机系统开发与实践.北京航空航天大学出版社, 2013.40-50 [2]. 范红刚.51单片机自学笔记:第二版.北京航空航天大学出版社, 2013.66-84 [3]. 程昱.Protel DXP电路设计.清华大学出版社 ,2003. 10-40

[4]. 李昊.物联网:指纹识别系统算法及实现.人民邮电出版社 ,2011.50-90 [5]. 石东海,单片机数据通信技术从入门到精通.西安电子科技大学出版社 ,2002.100-108

[6]. 董传岱.数字电子技术基础 第三版. 中国石油大学出版社 ,2009.70-100 [7] 朱建新, 杨小虎. 基于指纹的网络身份认证. 计算机应用研究,2001, 12: 14-17 [8] K. C. FAN, C. W. LIU, Y. K. WANG. A Randomized Approach with Geometric Constraints to Fingerprint Verification. Pattern Recognition, 2000, 33: 1793-1803

[9] Y. C. CHEN, L. K. CHEN, M. D. TSAI, et al. Fingerprint Verification on Medical Image

[10] 赵娟, 王典洪. 指纹图像匹配的算法研究及其实现. 计算机工程与应用,2005.66-69 [11]鲁士文.计算机网络协议和实现技术.清华大学出版社,2000

[12]夏继强,邢春香.现场总线工业控制网络技术.北京航空航天大学出版社,2005 [13]任作新.网络化监督与控制系统.国防工业出版社,2007.55-89

[14]王平,谢昊飞,肖琼,向敏,陈敏娜.工业以太网技术.科学出版社,2007.100-130 [15]颜志军.VisualC一数据库开发典型模块与实例精讲.电子工业出版社,2007.78-105 [16]12864LCD模块使用手册,大连东显电子有限公司

[17] Maio D,Maltoni D.Direct Gray-Scale Minutiae Detection in Fingerprints.IEEE Trans Pattern Analysis and Machine Intelligence,1997

[18] Leec-J,Wang S-D.Fingerprint Feature Extraction Using Gabor Filters.Electronics Letters 1999

[19] A.K Jain,L.Hong and S.Pankanti,Biometrics Identification,Comm.ACM,Page91-98,Feb.2000

[20] 陈玲, 实验室指纹门禁系统的研究.哈尔滨工程大学硕士论文.2003.12.

- 42 -

致谢与声明

致谢与声明

在此论文能够完成,首先要感谢老师对我的悉心指导,老师严谨的治学态度和渊博的知识对我的成长产生了巨大的影响,使我受益颇大。在此,我向老师表达最诚挚的感谢。

大学四年,在不知不觉中就过去了,感谢一直支持我的父母,能够在这么长的时间里一直支持者我。

最后感谢在我撰写论文过程中给予我帮助的同学们。

- 43 -

附录

附录

- 44 -

整机图

因篇幅问题不能全部显示,请点此查看更多更全内容

Top