版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、大连东软信息学院本科毕业设计(论文)论文题目论文题目:基于ARM的射频卡和指纹识别考勤系统 设计与实现系 所: 电子工程系 专 业: 电子信息工程(嵌入式系统工程方向) 学生姓名: 学生学号: 指导教师: 导师职称: 讲师 完成日期: 2014年 5月 2日 大连东软信息学院Dalian Neusoft University of Information大连东软信息学院毕业设计(论文) 摘要 V基于ARM的射频卡和指纹识别考勤系统设计与实现摘 要考勤管理是人力资源管理的一个重要组成部分。在当今信息化的社会,考勤管理的方式在不断的改变。公司需要一个合理、有效的考勤系统,集中统一的管理考勤信息,使
2、公司的人事管理更为简单方便。综合以往的考勤系统,考虑到传统考勤的不安全因素,因此,本次将设计一个射频与指纹同时兼容的考勤系统,旨在方便使用的同时保证其安全性。本控制电路由两大模块构成,即射频卡部分和指纹识别部分。射频卡部分是针对考勤的便捷性设计,通过射频卡显示人员信息并记录人员考勤时间;指纹识别部分是针对考勤的安全性设计,通过指纹识别确认是否为本人,是否有权限对此操作。射频与指纹考勤系统,是一个便捷的考勤系统,它可以对员工信息录入,员工考勤管理,对人员的进出有了一定的限制,作为人事、考勤管理,既便捷又安全。射频卡和指纹识别是当今社会考勤系统的重要组成部分,对于信息安全方面有了足够的保障。 关键
3、词:指纹识别,射频,考勤管理大连东软信息学院毕业设计(论文) AbstractDesign and Implementation of Radio Frequency and Fingerprint Attendance System Based on ARMAbstractAttendance management is an important part of human resource management. In todays information society, the way attendance management is always changing. Companie
4、s need a reasonable and effective attendance system. It is used for centralized management and attendance information to make the companys personnel management more simple and convenient. Comprehensive previous attendance system, I take into account the traditional attendance of insecurity. So it wi
5、ll be compatible with the design of radio frequency and fingerprint attendance system. It is designed to facilitate use while ensuring their safety.The control circuit consists of two modules, namely, radio frequency card section and fingerprint section. Radio frequency card section is designed for
6、ease of attendance, personnel information via radio frequency card display and record staff attendance time. The attendance systems fingerprint identification section is used for the safety of the design. People can use fingerprint identification to identify themselves to judge the permission.Radio
7、frequency and fingerprint attendance system is a convenient attendance system, which can input information to employees. Employee attendance management, personnel have access to certain restrictions, as personnel, attendance management both convenient and safe. Radio frequency card and fingerprint r
8、ecognition is an important part of todays society and attendance system. For information security it has adequate protection.Key words: Fingerprint, Radio Frequency, Attendance Management大连东软信息学院毕业设计(论文) 目录目 录 TOC o 1-3 u 摘 要 PAGEREF _Toc386530266 h IAbstract PAGEREF _Toc386530267 h II第1章绪 论 PAGEREF
9、 _Toc386530268 h 11.1 课题研究背景与意义 PAGEREF _Toc386530269 h 11.2 课题研究内容与方法 PAGEREF _Toc386530270 h 11.3 课题研究现状 PAGEREF _Toc386530271 h 11.4 论文结构 PAGEREF _Toc386530272 h 2第2章关键技术介绍 PAGEREF _Toc386530273 h 32.1 BootLoader启动流程 PAGEREF _Toc386530274 h 32.2 Linux内核子系统 PAGEREF _Toc386530275 h 32.2.1进程调度 PAGER
10、EF _Toc386530276 h 42.2.2内存管理 PAGEREF _Toc386530277 h 42.2.3虚拟文件系统 PAGEREF _Toc386530278 h 42.2.4网络接口 PAGEREF _Toc386530279 h 42.2.5进程间通信 PAGEREF _Toc386530280 h 42.3 文件系统的构建 PAGEREF _Toc386530281 h 52.3.1文件系统的类型 PAGEREF _Toc386530282 h 52.3.2 Linux根文件系统的目录结构 PAGEREF _Toc386530283 h 52.4 射频识别技术 PAGE
11、REF _Toc386530284 h 52.5 指纹识别技术 PAGEREF _Toc386530285 h 62.5.1指纹识别模块工作原理 PAGEREF _Toc386530286 h 62.5.2指纹识别模块工作模式 PAGEREF _Toc386530287 h 7第3章系统需求分析 PAGEREF _Toc386530288 h 83.1 系统设计目标 PAGEREF _Toc386530289 h 83.2 系统功能需求 PAGEREF _Toc386530290 h 83.3 系统非功能需求 PAGEREF _Toc386530291 h 93.4 系统开发环境 PAGERE
12、F _Toc386530292 h 93.5 系统可行性分析 PAGEREF _Toc386530293 h 93.5.1技术可行性 PAGEREF _Toc386530294 h 93.5.2经济可行性 PAGEREF _Toc386530295 h 9第4章系统设计 PAGEREF _Toc386530296 h 104.1 系统设计指导原则 PAGEREF _Toc386530297 h 104.2 体系结构设计 PAGEREF _Toc386530298 h 114.3 硬件设计 PAGEREF _Toc386530299 h 114.3.1 Cortex-A8核心板引脚 PAGERE
13、F _Toc386530300 h 114.3.2 Mini USB接口 PAGEREF _Toc386530301 h 124.3.3 UART 串口 PAGEREF _Toc386530302 h 124.3.4 LCD显示屏接口 PAGEREF _Toc386530303 h 134.3.5 ATS522射频卡模块 PAGEREF _Toc386530304 h 134.4 软件设计 PAGEREF _Toc386530305 h 144.4.1控制流程设计 PAGEREF _Toc386530306 h 144.4.2 UI界面设计 PAGEREF _Toc386530307 h 14
14、4.4.3功能模块设计 PAGEREF _Toc386530308 h 17第5章系统实现 PAGEREF _Toc386530309 h 185.1 环境配置 PAGEREF _Toc386530310 h 185.1.1 Qt的安装配置 PAGEREF _Toc386530311 h 185.1.2数据库选择及其安装配置 PAGEREF _Toc386530312 h 205.2 功能模块实现 PAGEREF _Toc386530313 h 215.2.1射频卡模块实现 PAGEREF _Toc386530314 h 215.2.2指纹识别模块的实现 PAGEREF _Toc3865303
15、15 h 225.3 系统集成与调试 PAGEREF _Toc386530316 h 24第6章系统测试 PAGEREF _Toc386530317 h 256.1 测试概述 PAGEREF _Toc386530318 h 256.2 测试用例 PAGEREF _Toc386530319 h 256.2.1人员信息录入测试 PAGEREF _Toc386530320 h 256.2.2射频卡考勤测试 PAGEREF _Toc386530321 h 256.2.3指纹识别考勤测试 PAGEREF _Toc386530322 h 266.2.4考勤信息检索测试 PAGEREF _Toc386530
16、323 h 266.3 最终成果 PAGEREF _Toc386530324 h 26第7章结论 PAGEREF _Toc386530325 h 28参考文献 PAGEREF _Toc386530326 h 29致 谢 PAGEREF _Toc386530327 h 30大连东软信息学院毕业设计(论文)- 第1章绪 论1.1 课题研究背景与意义随着社会的进步,科技的不断发展,人类使用的技术再也不仅限于传统的费时费力的人工作业。工作是人类创造财富的开始,有的公司不再是十几人的小规模公司,随着公司规模的壮大,员工数量的增多,员工考勤会变得更加复杂,管理员工必然是一个重要的问题。过去,人们使用人工登
17、记的方法考勤签到,毕竟人工登记效率低下,不是一个好的办法。紧接着,按键式传统考勤机的出现极大的节省了人力资源,还避免了错误记录的可能性。但是,按键式的考勤机存在着一些问题,针对一些大型公司,人员进出复杂,往往存在一些不安全因素。因此,为了方便管理,需要一个安全、简单、有效的管理模式,自动化的电子产品逐渐出现在人们的生活中。员工考勤直接关系着员工的管理、薪资等重要方面,每一个员工对公司带来的收益、公司对社会带来的效益都与之息息相关。随着指纹识别技术的出现,这种足以区分不同人物特征的技术对员工考勤管理方面是一个新的突破。对于之前提到的不能省时、准确的管理员工的问题,基于射频卡和指纹识别的考勤系统能
18、很好地解决这个问题。射频卡安全性高,考勤方便,指纹识别具有唯一性、终生不变性、难于伪造。这个作品旨在考勤的智能化,不需要耗费太大的人力资源影响正常工作。因此射频卡与指纹识别技术的结合,极大的提高了考勤的效率和安全。1.2 课题研究内容与方法实现设计的两大功能,射频卡及指纹识别双重控制。整个系统可以良好运转,射频卡以及指纹识别之间的切换设置。整体界面由QT实现。当有人使用射频卡在读卡器上刷卡时,终端显示该卡人员信息,考勤签到次数,并记录考勤具体时间,方便人事管理。如果当前工作地点较为重要,可以开启指纹识别模式,在进行射频卡签到后,会进一步实行指纹识别。如若指纹与预留指纹符合,终端提示成功人员即可
19、进入;当前指纹与预留指纹不符合,将有信息提示,禁止人员进入。1.3 课题研究现状对于考勤来说,为了省时省力且又能达到利益最大化,考勤的方法是尤为重要的一部分。传统的识别载体通常为按键,这种方法有一定的不安全因素。因此本系统着重卡体和指纹信息作为载体实现员工考勤。卡识别载体:通常考勤将卡插入读卡设备存在着不方便,因此我们选用的是非接触式智能卡(Contactless Integrated Circuit Card)或者称其为射频卡。这种卡片将信息存储于集成电路芯片中,通过L/C共振的原理,完成对信息的增删改查,并返回读卡器。多信息识别载体:为了满足对考勤系统的可靠性、便利性,生物识别中的一种指纹
20、识别技术的出现实现了这些要求。指纹识别与卡片载体共同应用在同一个考勤系统中,以达到考勤系统的方便、快捷、安全,使公司不再受限于单一的识别载体,满足了用户的需求。本系统正是采用这种模式实现的考勤系统。1.4 论文结构本次毕业设计主要完成一个射频与指纹识别的考勤系统。论文第一章主要阐述考勤机的现状以及射频卡、指纹识别的现状;第二章介绍了本次设计涉及到的关键技术,包括文件系统的移植、射频卡以及指纹识别技术;第三章描述了系统的整体功能需求以及可行性分析;第四章展示了本设计的软硬件设计;第五章介绍了各功能模块的实现;第六章为系统的整体测试;第七章是对本次设计的一个总结。 大连东软信息学院毕业设计(论文)
21、第2章关键技术介绍本项目在Cortex-A8开发板操作系统下完成,需要移植Bootloader,内核以及文件系统。考勤系统的识别方式有两种:射频卡识别和指纹识别。射频卡和指纹识别均不受季节、温度影响,以保证全年考勤系统的正常运行。2.1 BootLoader启动流程BootLoader的目的就调用内核以保证后续程序的正常运行。通常,Bootloader分为两个部分,stage1和stage2,这两部分各有各的功能,方便了Bootloader的运行。stage1主要是一些依赖于CPU体系结构的代码,比如硬件设备初始化代码等。这一阶段的代码主要是通过汇编来实现的,已达到短小精悍和高效的目的。sta
22、ge1 为位置无关代码,通常在 Flash 中运行。所以有的指令为相对寻址,可以在任何位置运行。 硬件设备初始化包括:关闭Watchdog、关闭中断、设置CPU的速度和时钟频率、配置SDRAM存储控制器及IO、关闭处理器内部指令/数据Cache等; 为加载 Bootloader 的 stage2 代码准备 RAM 空间(这个地址由链接脚本指定为运行域地址,通常为RAM的高端地址)测试内存空间是否有效; 将stage2中代码转入RAM; 跳转到函数的入口运行。stage2则是通常用C语言来实现,因为这样移植性强,更容易增加功能。初始化串口、网口等设备; 将内核映像从Flash转入RAM中;根据内
23、核的设置来进一步启动内核。2.2 Linux内核子系统Linux内核主要由五个部分组成:内存管理,进程调度,进程间通信,虚拟文件系统,网络接口。这些子系统虽然实现的功能相对独立,但存在着较强的依赖性(调用依赖模块中相应的函数),所以说Linux内核是单块结构的。图2.1是五个子系统间的互相关系。进程调度程序进程调度程序内存管理程序网络接口进程间通信虚拟文件系统图2.1 Linux子系统之间的关系2.2.1 进程调度 进程调度是对CPU的控制与访问,进程的优先级会影响到进程的调度。调度选择优先级高的程序先运行,其他进程进行等待,直到该程序运行完成或者CPU下达命令才可以继续执行。2.2.2 内存
24、管理Linux内存管理支持虚拟内存的使用。程序可运行超出系统实际内存,这时就需要用到虚拟内存。Linux操作系统还会执行磁盘与内存间交换程序块,与硬件相关的内存管理部分支持虚拟接口。2.2.3 虚拟文件系统 虚拟文件系统隐藏了各种硬件的具体细节,为所有的设备提供了统一的接口,VFS提供了多达数十种不同的文件系统。虚拟文件系统可以分为逻辑文件系统和设备驱动程序。逻辑文件系统指Linux所支持的文件系统,如EXT2,FAT等;设备驱动程序指为每一种硬件控制器所编写的设备驱动程序模块。 2.2.4 网络接口 网络接口由网络协议和网络设备程序组成。协议可保证网络的正常通信,设备驱动程序可保证硬件的兼容
25、性。2.2.5 进程间通信 进程间通信支持进程间各种通信机制。这些通信机制主要有以下部分:管道(Pipe)及有名管道(named pipe)、信号(Signal)、报文(Message)、队列(消息队列)、共享内存、信号量(semaphore)、套接口(Socket)。2.3 文件系统的构建2.3.1 文件系统的类型文件系统是存储文件的某种特定格式,它分为多种类型,常见的有FAT32、EXT3、NTFS等。同时Linux中还存在一些虚拟的文件系统,如proc,这种虚拟文件系统是由读取内核时产生,根据读取系统内核内容不同产生的proc文件也不会完全相同。本项目采用YAFFS2文件系统,对于大容量
26、的Flash芯片有了很大的优化和调整。通常一个Nand Flash存储设备由若干块组成,1个块由若干页组成。一般128MB以下容量的Nand Flash芯片,一页大小为528B,依次分为2个256 B的主数据区和16B的额外空间;128MB以上容量的Nand Flash芯片,一页大小通常为2 KB。由于Nand Flash出现位反转的概率较大,一般在读写时需要使用ECC进行错误检验和恢复。2.3.2 Linux根文件系统的目录结构根文件系统里的主要目录及用途:(1)/bin目录 这个目录下存放的一些可执行文件,通常这些是系统或用户命令。如我们常用的查看命令ls、复制命令cp、创建目录命令mkd
27、ir、删除命令rm等。(2)/sbin目录 这个目录下存放的是管理员命令,常常跟系统有密切关系。如重启命令reboot、关机命令shutdown、磁盘管理命令fdisk等。(3)/dev目录 这个目录存放的是设备文件,分为块设备文件和字符设备文件。Linux中设备是以文件形式存在的。文件将具象化,访问设备即访问某个文件。 (4)/etc目录 这个目录下存放的是配置文件。这些配置文件决定着系统启动时默认的环境变量和软件配置等。(5)/proc目录 这个目录是个虚拟文件系统,内容由内核临时产生,表示当前系统运行情况。(6)/tmp目录 这个目录存放临时文件,这个目录的权限一般是可以访问的。2.4
28、射频识别技术射频卡的信息由读卡器进行识别。RFID卡自身是无源器件,即自身并没有电源供电。当读卡器对射频卡进行操作时,读卡器将会发出信号。信号可分为两部分来看,一部分是将信号发给射频卡,然后产生电容电感谐振,产生了一瞬间的电流给芯片,芯片相当于获得电源供电,以完成后续步骤;另一部分信号则为数据传递,是对芯片内数据的增删改查,并将信息返回给读卡器,完成本系统中考勤的签到签退功能。2.5 指纹识别技术指纹识别采用指纹信息采集进行识别。指纹纹理中的中断、分叉和转折而形成的点就是细节特征点,而这些细节特征点,可以说就是提供了指纹唯一性的确认信息。其中典型的是终结点和分叉点和分歧点、孤立点、环点、短纹等
29、。通过记录这些指纹纹路方向,特征点位置(通过X/Y轴来确定位置)等,形成独一无二的指纹图。指纹由指纹模块FPM10A模块进行图像采集处理,通过串口进行程序验证,由此完成对安全信息的检验。2.5.1 指纹识别模块工作原理(1)指纹采集FPM10A使用光学采集,光线从模块内部射向棱镜并将光线折射出,手指表面指纹并不是光滑平缓的,手指指纹压在玻璃表面,纹线深度不同,不同凹凸程度的线利用折射角度和反射光线明暗得出不同指纹图像,完成图像的初步采集。但是采集的图像并不能作为最后图像进行特征提取。(2)预处理指纹模块最初采集到的指纹信息并不是特别明显的,一般需要一个预处理的过程。为了是采集到的原始图像更加清
30、晰,需要经过预滤波、区域检测、得出方位图等各种操作,将原始图像转换成线条类二值图案。指纹图像的预处理是为了能更好的为下一步指纹特征提取提供有利的条件,降低特这提取的错误率,是指纹处理过程中尤为重要的一步。(3)特征提取指纹特征的提取是为了区分不同手指指纹的纹路。通常来说指纹特征点可以分为局部以及全局特征。在同一个人的手指中,不同手指全局特征可能会大体相同,这种特征可以用来识别一个人的不同手指,但也因此全局特征误判率高,非本人的指纹也有可能会被识别。另一种局部特征,由于手指指纹并不是连续光滑的,因此可以依靠指纹的一些细节来判断的,这些细节包括纹路分叉点、纹路终点或者转折点等。通常使用分叉和终点来
31、判断,这些特征在指纹中获取相对容易,而且出现情况的比较多,不同指纹的这些细节各不相同,通过检测这些细节的相对节点位置,可以完成一个指纹的特征提取。(4)指纹比对指纹比对是一个模糊匹配的过程。因为当再次获取同一个手指的指纹时,由于手指位置、预处理差异性等问题,造成同一手指指纹不会完全相同。因此,想要比对指纹,需要依靠指纹特征点的数量以及相对位置,纹路方位等细节进行细致比对。当然,在比对过程中,并不是完全正确的,外界和算法都会影响指纹的匹配。2.5.2 指纹识别模块工作模式指纹识别模块工作模式相对简单。首先需要录入新的指纹信息,模块将收集到的指纹给一个指纹ID,并将信息压缩处理保存在Flash区域
32、,掉电后该指纹信息依然保存。当有指纹需要比对时,指纹模块获取指纹库中的信息,逐一比对,进行评分,来确认身份。如搜索成功,暂停搜索;反之,搜索到指纹库保存的最后一个ID。指纹验证过程如图2.2所示。指指纹库员工工号用户指纹指纹特征值指纹特征值对比图2.2 指纹验证过程第3章系统需求分析3.1 系统设计目标实现设计的两大功能,射频卡及指纹识别双重控制。整个系统可以良好运转,射频卡以及指纹识别之间的切换设置。3.2 系统功能需求根据需求调研结果确定本系统主要包括以下功能模块。(1)射频卡考勤模块射频卡考勤模块的描述如表3.1所示。表3.1 射频卡考勤模块功能功能编号功能名称功能描述优先级1射频卡读取
33、人员上班或者下班通过读卡器扫描22按键读取人员上班或者下班通过虚拟数字键盘录入员工号33签到/签退当有人员信息时点击按钮记录34当前时间显示当前时间1(2)指纹识别考勤模块指纹识别考勤模块的描述如表3.2所示。表3.2 指纹识别考勤模块功能功能编号功能名称功能描述优先级1更新指纹库当有新人员信息需要更新时32签到/签退人员上班或者下班指纹识别时记录33当前时间显示当前时间14搜索搜索整个指纹库检索信息25单一比对比对当前选中指纹库项与该指纹信息2(3)人员信息模块人员信息模块的描述如表3.3所示。表3.3 人员信息模块功能功能编号功能名称功能描述优先级1管理员登陆管理员需要账号密码登录后台12
34、管理员退出管理完成时注销管理员账户退出管理界面13录入射频卡及指纹识别人员信息录入24删除射频卡及指纹识别人员信息删除2(4)考勤信息模块考勤信息模块的描述如表3.4所示。表3.4 考勤信息模块功能功能编号功能名称功能描述优先级1管理员登陆管理员需要账号密码登录后台12管理员退出管理完成时注销管理员账户退出管理界面13查询所选日期考勤信息查询24筛选筛选出所选日期考勤异常的记录23.3 系统非功能需求(1)性能要求系统能多人使用,记录并识别射频卡及指纹识别,反应时间不超过5秒。(2)成本ARM开发板,指纹识别模块,射频卡识别模块。3.4 系统开发环境 硬件环境:Intel Core i7 CP
35、U/RAM 2G/Cortex-A8软件环境:Red Hat Enterprise Linux 5.1/QT 系统可行性分析3.5.1 技术可行性本系统使用Cortex-A8处理器的开发板,采用Linux系统的底层架构,人机交互界面使用7寸电容式触摸屏,采用QT进行界面设计,数据库采用SQLite。需要协同运行的功能,采用多个子进程的方式,方便使用,易于维护。3.5.2 经济可行性本系统采用Cortex-A8处理器,自带7寸电容显示屏,显示界面简洁方便,价格700元。指纹模块采用FPM10A光学指纹模块,价格为160元。射频模块采用ATS522读卡器,价格为40元。其次,本系统采用QT开发,可
36、移植在多平台上使用,后期维护及更新较为方便。综上,处理器选用有些偏贵,因为本系统运算要求不是很高,作为正式产品时可选用更便宜的ARM处理器作为平台,以达到经济的实用性。第4章系统设计4.1 系统设计指导原则(1)安全性设备的运行应当安全可靠,符合一定的安全标准,保护用户的信息在使用的过程中不泄露。系统在正常运行和正常使用条件下,应当能够承受可能出现的各种各样意外事件的作用,并且在突发事件发生的时后和发生后,应仍然能够保持必要的能够维持设备整体稳定性的能力。(2)稳定性考勤设备需要长时间不中断的运行,该设备的工作情况与应用范围内的公司考勤息息相关,因此需要保证在长期运行中的稳定可靠。(3)实用性
37、设备不必追求技术超前,导致华而不实,而应该仔细考量实际的需要,紧贴需求完成。因此实用性应当被遵循。(4)可靠性产品从广义上来讲,指所有的系统并没有领域之分、元器件设备系统之间。产品的可靠性含义的要素为三个规定;条件规定、时间规定与功能规定。条件规定:指产品或者系统在使用的时候所处在的工作条件和环境条件。时间规定:产品执行任务规定了时间;随着系统任务时间的加大,系统出现故障的概率将变大,系统的可靠性将是降低的。所以,讨论系统的可靠性不能脱离任务的规定时间。功能规定:指规定系统必须具备的功能和其性能指标。所要求系统功能的丰富度和其性能指标的好坏,直接影响系统可靠性指标的高低。(5)标准化和规范化原
38、则标准是对科学技术以及实践经验的总结。为了产品使用范围内得到最好的秩序,对实际的或者可能的问题制定相同的和循环使用规则的活动,称为标准化。它包含制定、公布以及标准实施的过程。伴随着科学技术的发展、技术的提升跟社会经济实践的发展,标准化为一个渐渐演进的动态过程。标准化的作用体现在:为了更好的节省人力、物力,科学使用资源和提高经济效益创造条件;为了科学管理的实施做铺垫,为了提高产品质量提供参考;有利于增加相互之间了解,减少国际贸易的技术瓶颈,加快贸易进展;能够保障人身财产的安全,提升环境卫生水平,和保护消费者合法利益。 规范化是用来改善关系模式,通过细化关系模式来去除其中不合理的数据联系,来解决更
39、新异常、删除异常、数据冗余和插入异常问题。规范化的含义是在科学、经济、技术和管理等社会实践中,对重复性概念和事物,通过实行、公布和制定标准实现统一,从而得到最佳的秩序跟社会利益。4.2 体系结构设计系统体系架构如图4.1所示。图4.1 系统体系结构硬件层分为两部分,射频卡和指纹识别。射频卡包括ATS522读卡器及RS232接口,将手持的射频卡放置读卡器上,进行射频卡信息收集。指纹识别包括FPM10A指纹模块及TTL接口,用户将手指轻轻按压指纹模块收集指纹信息。软件层主要包括射频卡识别和指纹校对两部分。通过前端的硬件设备来识别和读取射频卡的信息以及指纹信息校对,然后通过获取的信息在数据库内进行识
40、别,确定射频卡或者指纹信息是否正确。4.3 硬件设计4.3.1 Cortex-A8核心板引脚本系统采用S5PV210处理器的核心板,有多个接口,引出多个引脚为开发使用。如图4.2所示。图4.2 Cortex-A8核心板引脚引出电路图4.3.2 Mini USB接口U-BOOT、ZImage以及根文件系统移植到ARM板以及烧写进Nand Flash时,需要用Mini USB传输。使用Mini USB的有点是传输数据速度快。如图4.3所示。图4.3 Mini USB接口电路图4.3.3 UART 串口串口分TTL电平以及RS232电平。两者逻辑电平不同,RS232 HYPERLINK /searc
41、h?word=%E7%94%B5%E5%B9%B3&fr=qb_search_exp&ie=utf8&eid_gfrom=151 t _blank 电平为+12V为逻辑负,-12为逻辑正, HYPERLINK /search?word=TTL%E7%94%B5%E5%B9%B3&fr=qb_search_exp&ie=utf8&eid_gfrom=151 t _blank TTL电平为5V为逻辑正,0为逻辑负。RS232串口在本系统中主要用于与PC之间的调试以及ATS522射频卡的数据传输;TTL串口在本系统中主要用于FPM10A指纹识别模块的数据传输。如图4.4所示。 图4.4 UART串口
42、电路图4.3.4 LCD显示屏接口LCD显示屏采用7寸(800X480)的电容显示屏,可触摸进行程序的各项操作。如图4.5所示。图4.5 LCD显示屏接口电路图4.3.5 ATS522射频卡模块该射频模块用于读取员工RFID卡的信息,进行人员信息的记录和每日考勤,以完成公司的考勤签到的任务。如图4.6所示。 图4.6 射频模块电路图4.4 软件设计4.4.1 控制流程设计根据系统的功能需求,在使用者使用指定规格的射频卡靠近读卡器到一定距离以内时,读卡器能够立即对射频卡片做出反应,识别卡片信息,对卡片信息进行检索和相应处理。指纹识别为当需要指纹输入时,检测指纹进行检索处理,随后返回相应的动作。4
43、.4.2 UI界面设计(1)射频卡识别界面负责识别射频卡后的信息,备用功能,手动输入员工号。成功获得员工号或者射频卡号时,可进行签到签退。如图4.7所示。图4.7 射频卡识别界面(2)指纹识别界面负责指纹识别后读取的信息,可以更新指纹库信息。支持全部搜索以及单一比对搜索功能。成功获得指纹号后自动进行签到或者签退。如图4.8所示。图4.8 指纹识别界面(3)后台登陆界面负责登陆后台,修改人员信息以及查询人员考勤信息等。如图4.9所示。图4.9 后台登陆界面(4)人员信息界面负责新增或删除人员信息,需要至少射频卡或者指纹中的一种才可以进行录入。如图4.10所示。图 4.10 人员信息界面(5)考勤
44、信息界面负责查看或筛选考勤信息,了解考勤动态情况。如图4.11所示。图 4.11 考勤信息界面4.4.3 功能模块设计本系统软件框图主要分文三大模块:射频卡模块,指纹识别模块,后台管理模块,如图4.12所示。图4.12 系统软件功能框图射频卡模块主要功能为通过射频卡与ATS522读卡器的近距离感应,读取射频卡信息,进行数据库检索匹配,以及考勤信息的记录。指纹识别模块主要功能为手指置于FPM10A感应区,读取指纹信息,与指纹库进行匹配,并显示相应的指纹图像。后台管理模块主要功能为人员管理以及考勤信息管理。人员管理即为人员信息的增删,设置射频卡权限等;考勤管理即考勤信息的管理,记录着每一天的考勤信
45、息,由行政部或者人事部人员进行进一步的管理。大连东软信息学院毕业设计(论文)第5章系统实现5.1 环境配置5.1.1 Qt的安装配置(1)编译ARM版的Qt4 #cd /opt/webee210/arm /*进入arm目录*/ #./configure -opensource embeddedarm xplatform qws/linux-arm-g+ -no- webkit -qt-libtiff -qt-libmng -qt-mouse-tslib -qt-mouse-pc -no-mouse-linuxtp #make #make install (2)运行ARM版的Qt4 编译tsli
46、b对触摸屏支持: 解压tslib-1.4.tar.gz #cd /opt/webee210/tslib进入tslib目录 #./autogen.sh #./configure -prefix=/usr/local/outfile/ -host=arm-linux ac_cv_func_malloc_0_nonnull=yes #make #make install 执行下面命令安装autotools #apt-get install autoconf #apt-get install automake #apt-get install libtool 制作包含Qt4.6和tslib的文件系统
47、编译出了ARM版的Qt4和tslib,然后制作包含 Qt4.6 和tslib 的文件系统,新建一个文件系统然后在“/usr/local/Trolltech/”目录下新建一个名为“QtEmbedded -4.6.3-arm”的目录。复制“/usr/local/Trolltech/QtEmbedded-4.6.3-arm”目录下的“lib/”目录中的“*.so*”文件到前面建立的“QtEmbedded-4.6.3-arm”目录下,以及“lib/fonts/”目录下我们用到的字库文件,具体用到哪些视具体情况而定。 如图5.1所示。图5.1 查看并复制库文件然后复制“/usr/local/Trollt
48、ech/QtEmbedded-4.6.3-arm”目录下的“plugins/ imageformats/”目录到前面建立的“QtEmbedded-4.6.3-arm”目录下。然后在“/usr/local/ Trolltech/QtEmbedded-4.6.3-arm”目录下新建“bin”目录,将/usr/local/Trolltech/ QtEmbedded-4.6.3-arm/demos/mainwindow 下的mainwindow可执行文件复制到新建的“bin”目录下,然后就是添加 tslib的相关内容,复制上面编译好的“/usr/local/”目录下的“outfile/”目录到新建立的
49、文件系统的根目录。 #/outfile/bin/ts_calibrate /*执行较正触摸屏*/ 在文件系统的“bin/”目录下新建一个名为“qt4”的可执行脚本(设置其权限为可执行) ,内容如下 #!/bin/sh export QTDIR=/usr/local/Trolltech/QtEmbedded-4.6.3-arm export QPEDIR=/usr/local/Trolltech/QtEmbedded-4.6.3-arm export LD_LIBRARY_PATH=$QTDIR/lib:/usr/local/lib:$LD_LIBRARY_PATH export QT_PLUG
50、IN_PATH=$QTDIR/plugins/ export T_ROOT=/usr/local export PATH=$QTDIR/bin:$PATH export TSLIB_CALIBFILE=/outfile/etc/pointercal export TSLIB_CONFFILE=/outfile/etc/ts.conf export TSLIB_PLUGINDIR=/outfile/lib/ts export LD_LIBRARY_PATH=/usr/local/lib export TSLIB_CONSOLEDEVICE=none export TSLIB_FBDEVICE=/
51、dev/fb0 export PATH=/bin:/sbin:/usr/bin/:/usr/sbin:/usr/local/bin export QWS_SIZE=800 x480 export QWS_DISPLAY=LinuxFB:mmWidth95:0 export QWS_DISPLAY=LinuxFB:/dev/fb0 export QWS_MOUSE_PROTO=TSLIB:/dev/event0 export QT_QWS_FONTDIR=/usr/local/Trolltech/QtEmbedded-4.6.3-arm/lib/fonts export HOME=/root 5
52、.1.2 数据库选择及其安装配置嵌入式数据库在项目中起着非常重要的作用,在此我选择了SQLite数据库。SQLite是遵守的关系型数据库管理系统。SQLite有一种标准化的层次结构设计。顶层接口层是一个C语言库,即使在不同的平台或环境下使用了不同语言的API(如python、rails和Delphi都对SQLite有很好的支持),在底层执行的都是C语言库。通过若干个位于底层的源代码文件实现了SQLite库的公共接口函数,SQLite库中所有的外部符号都以sqlite3为前缀,以sqlite3 开始的符号形成了SQLite的API。由于SQLite的适用于嵌入式设备和便于移植等种种特性。 本项目
53、涉及的数据库内容较多,主要用于数据的增加、删除、查询以及更新等操作。共创建两个数据库文件,一个用于人员信息以及系统信息的操作,另一个用于考勤情况的记录。表5.1为人员信息数据库的字段含义,表5.2为考勤记录数据库的字段含义。表5.1 人员信息数据库字段含义表名字段类型作用peopleInfoidint序号jobnumbervarchar员工工号namevarchar员工姓名sexvarchar员工性别departmentvarchar员工部门postvarchar员工职位idnumbervarchar员工射频卡号finumbervarchar员工指纹号signflagint签到标志位signc
54、ountint同一天签到次数peopleNumberidint序号numberint员工总人数passWordidint序号pwdvarchar后台管理密码fiNumberidint序号numberint指纹库序号数dayTimeidint序号currentdatevarchar当前日期表5.2 考勤记录数据库字段含义attendanceInfojobnumbervarchar员工工号signindayvarchar签到日期signintimevarchar签到时间signoutdayvarchar签退日期signouttimevarchar签退时间signstatusvarchar考勤状态s
55、ignatureint随机数signcountint同一天签到次数5.2 功能模块实现5.2.1 射频卡模块实现射频卡模块是由读卡器不断进行扫描,当扫描到RFID卡时,读卡器收集到射频卡信息,并向数据库读取相关信息。如图5.2所示。图5.2 射频卡识别流程图射频卡模块的核心代码:unsigned char DataToValue(unsigned char *pBuf, long *pValue)unsigned char ucaBuf4;ucaBuf0 = pBuf4;ucaBuf1 = pBuf5;ucaBuf2 = pBuf6;ucaBuf3 = pBuf7;if (memcomp(pB
56、uf, ucaBuf,4) != 0)return STATUS_INVALID_VALUE;if (memcomp(pBuf, &pBuf8,4) != 0)return STATUS_INVALID_VALUE;*pValue = (pBuf3 24) + (pBuf2 16) + (pBuf1 8) +pBuf0;return 0;5.2.2 指纹识别模块的实现指纹模块需要输入指纹信息,才能与指纹库中已经存储的信息进行比较。如图5.3所示。图5.3 指纹识别流程图指纹识别模块的核心代码:/FINGERPRINT_GetImagevoid FINGERPRINT_Cmd_Get_Img(v
57、oid)unsigned char i;for(i=0;i6;i+) UART1_Send_Byte(FP_Pack_Headi);for(i=0;i6;i+) UART1_Send_Byte(FP_Get_Imgi);/Set Image to Buffer1void FINGERPRINT_Cmd_Img_To_Buffer1(void)unsigned char i; for(i=0;i6;i+) UART1_Send_Byte(FP_Pack_Headi); for(i=0;i7;i+) UART1_Send_Byte(FP_Img_To_Buffer1i);/search 999 f
58、ingerprintvoid FINGERPRINT_Cmd_Search_Finger(void)unsigned char i; for(i=0;i6;i+) UART1_Send_Byte(FP_Pack_Headi); for(i=0;i11;i+)UART1_Send_Byte(FP_Searchi); 5.3 系统集成与调试打开虚拟机,开发板上连接网线、串口、电源。启动开发板,通过SecureCRT软件查看输出信息。移植好U-BOOT,调整相应的serverip、ipaddr地址,将虚拟机的NFS服务打开,开发板通过tftp服务载入zImage,并以网络的方式启动Linux设置好的
59、根文件系统。输入命令查看串口设备名,修改代码,进行TTL串口调试。大连东软信息学院毕业设计(论文)第6章系统测试主要是对系统进行功能测试,测试系统是否完成预定的功能,保障系统满足员工上下班考勤系统的要求,确保硬件和软件的质量和可用性。6.1 测试概述系统本身可能存在一定的设计缺陷或者有些考虑不周全的地方,为了达到更好的用户体验,对以下四大部分人员信息录入、射频卡考勤、指纹识别考勤、考勤信息检索进行了测试。6.2 测试用例6.2.1 人员信息录入测试人员信息录入主要是通过员工的射频卡、指纹、及姓名等相关信息对人员资料进行完整的录入。人员信息录入测试用例如表6.1所示。表6.1人员信息录入测试用例
60、编号测试项操作步骤预期结果输入数据实际结果结果比较说明1录入信息员工姓名及工号处双击待输入框弹出虚拟键盘弹出虚拟键盘并可以输入中文虚拟全键盘输入,带中文输入法弹出虚拟全键盘,可输入中文符合2录入信息勾选射频卡或者勾选指纹选项,进行射频卡录入或者指纹录入当指纹信息框获得指纹库ID或者射频卡ID,录入按钮可点击射频卡信息或者指纹信息获得指纹信息“0007”,录入按钮可点击,并在人员列表显示信息符合6.2.2 射频卡考勤测试射频卡考勤主要是通过读取射频卡信息,显示人员资料并签到。同时也提供了虚拟按键输入员工号进行考勤。射频卡考勤测试用例如表6.2所示。表6.2射频卡考勤测试用例编号测试项操作步骤预期
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 人工智能标识制度
- 中国科学院武汉病毒研究所第四季度集中招聘20人备考题库附答案详解
- 2025-2030中西部地区铁路货运行业市场供需现状投资布局规划分析报告
- 2025至2030医疗器械注册审批制度改革对行业创新影响研究报告
- 中国千年词史研究
- 什邡市人力资源和社会保障局什邡市民政局关于2025年面向全市公开选调工作人员的备考题库含答案详解
- 2026年镇安镇人民政府公开招聘编外人员备考题库有答案详解
- 2026年浙江民泰商业银行台州玉环支行招聘备考题库及参考答案详解1套
- 2025-2030中国石墨烯纳米粉市场现状调查及未来竞争力剖析研究报告
- 2026年湛江市麻章中学招聘编外教师备考题库有答案详解
- 复方蒲公英注射液对心血管系统作用研究
- 2024年华能山东发电有限公司招聘笔试参考题库含答案解析
- 高三英语定语从句公开课课件
- 学前教育-幼儿园户外建构游戏安全与对策的研究论文
- 门急诊病历质控检查评分标准
- 04S519小型排水构筑物1
- 光纤激光打标机说明书
- 劳动者个人职业健康监护档案
- 《两角和与差的正弦、余弦、正切公式》示范公开课教学PPT课件【高中数学人教版】
- 境外宗教渗透与云南边疆民族地区意识形态安全研究
- GB/T 28920-2012教学实验用危险固体、液体的使用与保管
评论
0/150
提交评论