《基于Cortex—M的指纹考勤系统上位机管理软件的设计.doc》由会员分享,可在线阅读,更多相关《基于Cortex—M的指纹考勤系统上位机管理软件的设计.doc(42页珍藏版)》请在三一办公上搜索。
1、 毕业设计(论文)题目名称:基于Cortex-M3的指纹考勤系统上位机管理软件的设计院系名称:电子信息学院班 级:学 号:学生姓名: 指导教师: 20一三年 6月论文编号: 基于Cortex-M3的指纹考勤系统上位机管理软件的设计Designed about fingerprint attendance system PC management software based on Cortex-M3学院名称: 班 级:学 号:学生姓名: 指导教师: 20一三年 6月摘要为了适应现代企事业单位对考勤系统的快速、稳定、安全的要求,设计并实现了这一指纹考勤管理系统。本系统基于C/S模式,采用Visu
2、al Basic 6.0和SQL Server 2005开发工具进行开发设计,根据实际需求,本系统采用串口与考勤机进行通讯采集考勤数据,系统设计了系统管理、人事资料、考勤管理、统计报表四大模块,其中包括用户的登陆管理,公司人事信息的查询与设置,考勤规则的设置以及根据各种常见异常条件进行考勤查询等功能。经过测试,本系统基本满足考勤需要,系统界面友好,简单易操作,查询数据准确高效,应用效果良好。关键词:指纹考勤;Visual Basic 6.0;SQL Server 2005;C/S模式;串口通讯AbstractIn order to adapt to the requirements of mo
3、dern enterprises attendance system fast, stable, secure, this fingerprint attendance management system is designed and implemented. The system is based on C / S mode, using Visual Basic 6.0 and SQL Server 2005 development tools for development and design. Based on actual demand, the system uses the
4、serial port to the terminal with communication and collect attendance data. The system is designed four modules of the system management, personnel data, attendance management, statistical reports. Including the users login management, personnel information query set and attendance rules set and que
5、ry attendance, according to a variety of common abnormal conditions and other functions. Tested, the system basically meet the attendance requirements, system user-friendly, easy to operate, accurate and efficient query data, with good results.Keywords:Fingerprint attendance; Visual Basic 6.0;SQL Se
6、rver 2005;C / S mode;serial communication 目录第一章 概述11.1 考勤技术概述11.2 国内外研究现状11.2.1 国外发展状况11.2.2 国内发展状况21.3 本文研究的主要内容3第二章 系统分析42.1 系统需求分析42.2 系统可行性分析4第三章 系统总体设计53.1 上下位机通讯系统框图53.2 软件的功能分析及系统框图53.3 系统流程图63.4 下位机系统框图7第四章 开发工具及相关技术介绍94.1 开发工具介绍94.1.1 Microsoft Visual Basic 6.0介绍94.1.2 Microsoft SQL Server
7、2005介绍114.2 Client/Server模式介绍124.3 串口通信协议与MSComm控件介绍一三4.3.1 串口通信协议介绍一三4.3.2 MSComm控件介绍一三4.3.3 MSComm控件的引用14第五章 数据库设计一五第六章 系统详细设计196.1 VB与SQL Server的连接196.2 软件界面及功能设计196.2.1 数据库设置界面设计196.2.2 主界面设计206.2.3 登陆界面的设计206.2.4 用户管理界面的设计236.2.5 人事资料界面的设计236.2.6 考勤管理界面的设计246.2.7 考勤报表界面的设计256.2.8 设备通讯界面的设计266.2
8、.9 数据转换界面的设计266.2.10 补录确认界面的设计27第七章 系统测试287.1 数据库登陆测试287.2 用户登陆测试297.3 人事资料编辑测试297.4 员工日报表查询测试30第八章 总结31参考文献32致谢33IV中原工学院毕业设计(论文)第一章 概述1.1 考勤技术概述目前使用的考勤方式有人工考勤和系统考勤,人工考勤显然已无法满足大型单位的要求。而现有考勤系统主要为刷卡的方式,而磁卡需要员工携带,易于遗失,而且,此方式难以杜绝代人考勤等舞弊现象。因此,传统的考勤方式已逐渐不再满足现代化管理的要求。指纹作为人的一种生物特征,具有惟一性和不变性, 可以用于人的身份认证。将指纹识
9、别技术用于单位考勤,可以有效地解决上述考勤问题。现在越来越多的科学研究者和技术开发人员致力于这个领域,取得了较为显著的成绩,但仍然存在着不足,系统通用性不好,造价昂贵。现在企、事业管理的一项重要组成部分就是其人事考勤制度,它的好坏直接影响到单位的经济、社会效益以及员工的薪资等诸多方面。因此,对单位员工的出勤情况进行有效、科学地管理已经成为每个单位面临的重要课题。传统的考勤方式如手工签到、打卡钟、IC卡或磁卡考勤方式,经常出现代打卡现象。即便采用人工干预方式,但由于受到技术手段本身的限制,这就决定了传统考勤方式是一种低效率、难管理、易假冒、高人情的不科学管理手段,因此考勤管理起不到较好的效果。随
10、着生物技术的发展,尤其是随着指纹识别技术发展的相对成熟,该项技术也被逐步应用到身份识别其中就包括指纹考勤等领域。指纹的最大优势就在于其不可替代性,并且相对固定、不易发生改变,通过分析指纹特征点,获得的信息就足以可靠地确认一个人的身份。 指纹考勤系统利用指纹识别技术,并集成先进计算机考勤管理软件。单位员工不必保管和携带各种证件(如纸卡或IC卡等),只要轻轻一按手指就可自动记录员工的考勤情况。管理人员可随时通过管理系统轻松打印人事考勤报表,财务部门根据考勤数据进行处理,轻松输出薪资报表,从考勤到工资管理全部电脑化,保证了企业考勤管理的公证性、严肃性、纪律性。实现人、地、时三者合一,从而去除了虚假考
11、勤,提高了考勤效率。1.2 国内外研究现状1.2.1 国外发展状况指纹识别系统主要涉及四个功能:指纹图像采集,指纹预处理,特征提取和匹配。随着科学技术的发展,图像输入设备日益向高速度、高分辨率、多功能、智能化方向发展! 目前,采集设备大致分为光学设备、硅晶体传感器和超声波扫描。预处理就是减弱噪声,增强脊和谷的对比度,去除噪声并不破坏图像的重要信息,处理后的图像不变形,而且应有较好的对比度和清晰度,这一过程包括图像滤波、二值化等过程,其中图像的二值化最为重要。特征提取的结果一般保存为特征模板,它包括端点和分叉点的类型、位置坐标以及该特征的方向,一般的指纹图像提取的特征在10-100之间,大多数文
12、献均认为至少应该有12个特征点才能进行匹配。目前,指纹匹配分两步进行,首先是利用指纹的类别信息进行粗匹配,然后利用指纹的细节点信息进行精确的匹配,即通常所说的细节点匹配,细节点匹配是将待识指纹所提取的特征信息与指纹库中模板指纹的特征点信息进行比较,计算其特征点的相似度,从而得到两枚指纹匹配的相似度值,选取一适当的阀值与该相似度值进行比较,从而判断两枚指纹是否来自同一手指。目前,利用计算机进行指纹识别的技术在国外已很成熟,并且已经开始大规模推广。许多大公司有专门的机构从事该项技术的研究、开发、应用,包括IBM、Intel、Microsoft、Digitalpersona、Identix、Moto
13、rola、韩国现代、朝鲜培富士、法国THOMSONCSF、台湾Aetex公司、Veridicom、BAC等,其中Identix公司在生物识别技术领域独树一帜,韩国现代、朝鲜培富士在识别算法上都达到世界先进水平。1.2.2 国内发展状况近年来,特别是从1998年来,我国在指纹识别技术方面得到较大发展,可以说是日新月异,除有引进技术外,还有国内公司独立研究开发出的自主知识产权的多项指纹识别类产品。从事该项目开发的公司1998年不到10家,2000年已经发展到近30家,其中有几家拥有自主知识产权的产品、技术,其余的基本是国外公司的代理或系统集成商。这些公司看到指纹识别技术在中国具有很好的市场前景,所
14、以都在加大技术和产品开发的投入,以期尽快实现产品地产化,努力适应中国市场的发展。国内有西安青松等公司开发出了有自主知识产权的指纹识别模块,其算法有的达到国际先进水平。西安青松是国内活体指纹产品规模最大的研制与生产企业,市场占有率居全国第一。有不少公司通过做国外公司的代理,引进了国外比较先进的技术和产品,这些公司有北京中控、厦门宝利铬、北京培富士、同飞资讯、深圳数码、深圳乾诚科技等,他们主要引进美国Digitalpersona、Identix、韩国现代、朝鲜培富士、法国TLOMSOMCSF、BAC、Veridicom、台湾Aeter等公司的技术。从研究开发实力看,目前国内公司都拥有一批有实力的技
15、术人员,许多公司里还拥有不少博士,并与大学合资合作开发该项技术,这也是该项技术在国内能快速发展的因素之一。目前国内公司多以指纹门禁作为主导产品,并开发出适合考勤、证券、银行内部授权、保管箱、计算机开启等应用产品。有的产品还不太成熟,特别是应用到网络上的产品。不管是引进技术还是自己开发的,由于其成本太高,市场接受能力有限,市场推广难度大,所以需要开发出适合我国国情、又与国际标准接轨的指纹识别技术及其应用产品。目前,应用到卡、证系统的产品市场启动较快,特别是将指纹与IC卡、条形码结合的产品市场前景非常广阔。虽然目前的产品性能还满足不了市场需要,但国内市场已启动,发展也是非常快的。据有关资料介绍,我
16、国对该项技术的需求正逐步增大,比如公安部金盾工程中,有相当大的一部分要用此项技术来支持,有约10多亿人民币的市场容量。国家从市场培育、技术成熟度、研究开发实力上,已为市场推广创造了条件,为其产业化做好了市场准备。因此,开发出具有完全知识产权的指纹识别算法,满足一般小型的嵌入式及大容量比对的需要,在此基础上研制基于DSP及大规模可编程器件的独立识别模块,利用此核心模块开发出系列指纹门禁,卡证应用系统和条形码防伪系统,这些都具有很好的市场前景。1.3 本文研究的主要内容本文主要阐述了指纹考勤的研究目的和意义,目前国内外的研究现状,以及本系统的研究思想和具体实现的方法。指纹考勤系统的设计与实现是应用
17、指纹识别技术和单片机控制以及上位机管理软件综合开发的一个课题。下位机是用STM32单片机和指纹头进行指纹的处理和识别,以及记录员工考勤信息,考勤数据定期通过232串口发送到上位机。上位机是用Microsoft Visual Basic 6.0中文版和SQL Server 2005进行开发设计的,包括数据库的设计、软件登陆界面、查询界面、管理界面、数据通讯、数据库连接、报表查询的设计等,主要功能有公司,部门,员工等的信息查询与设置,考勤管理规则的设置以及考勤报表的统计。第二章 系统分析系统分析的主要任务是将在系统详细调查中所得到的文档资料集中到一起,对组织内部整体管理状况和信息处理过程进行分析。
18、它侧重于从业务全过程的角度进行分析。分析的主要内容是:业务和数据的流程是否通畅,是否合理;数据、业务过程和实现管理功能之间的关系;老系统管理模式改革和新系统管理方法的实现是否具有可行性等等。系统分析的目的是将用户的需求及其解决方法确定下来,这些需要确定的结果包括:开发者关于现有组织管理状况的了解;用户对信息系统功能的需求;数据和业务流程;管理功能和管理数据指标体系;新系统拟改动和新增的管理模型等等。系统分析所确定的内容是今后系统设计、系统实现的基础。系统分析方法的具体步骤包括:限定问题、确定目标、调查研究收集数据、提出备选方案和评价标准、备选方案评估和提出最可行方案。2.1 系统需求分析指纹考
19、勤管理软件要定时的接收指纹考勤机传过来的考勤数据,并进行相应的考勤辅助工作。根据任务书的要求,该软件要实现添加管理员和考勤统计功能。结合市面上已经存在的考勤管理软件,考勤管理软件要实现的基本功能有,用户的登录、增加和删除,密码的修改,人事资料的统计,考勤规则的设置以及报表的输出。要实现上下位机的通讯还要有数据库设置、通讯设置等模块。由于本系统是基于本地服务器,而且对应的设备是一台考勤机,他们之间的通讯是采用RS232串口通信,在通信距离上有所限制,但在初步开发阶段这些基本满足开发需要。2.2 系统可行性分析可行性分析是在用户的要求和系统调研的基础上进行的,对新系统的开发从社会、技术、经济、管理
20、等方面进行分析,并得出新系统的开发工作可行、不可行、需要修改、暂缓开发、分步实施等方案和结论,最后完成可行性分析。由于本系统采用本地服务器,所以对硬件的要求是个人PC机一台。软件资源包括操作系统、编译系统、数据管理系统、高级语言等。该系统经过与老师沟通后选择了VB6.0+SQL Server 2005开发环境,软件资源完全满足需要。第三章 系统总体设计3.1 上下位机通讯系统框图上位机管理系统主要包括计算机及应用软件、通讯模块和数据库系统组成。下位机控制终端包括单片机控制系统和通讯模块。上位机管理系统运行在Windows操作系统的PC机上,采用Microsoft公司完全面向对象的开发工具Vis
21、ual Basic6.0进行开发,与SQL Server数据库技术相结合,通过RS232来完成对终端的控制。系统示意图如图3-1所示。图3-1 通讯系统框图3.2 软件的功能分析及系统框图设计本系统的主要目的是为企业减轻员工考勤方面的繁琐工作,减少不必要的劳动力,提高工作效率,实现企业考勤的规范化、自动化、快速化。本系统主要分系统管理、人事资料、考勤管理、统计报表四个模块。其系统框图如图3-2所示。图3-2 指纹考勤软件系统框图 (1)、系统管理包括清除过期数据、修改密码、添加用户、删除用户四个功能。只有以管理员身份登录系统才能进行系统管理模块的操作。 (2)、人事资料模块包括公司信息设置、部
22、门信息设置、员工信息设置、员工工种设置、员工宿舍设置,可分别对公司、部门、员工、工种、宿舍进行查看,修改和删除的操作。 (3)、考勤管理包括上下班时间设置、考勤规则设置、请假登记、出差登记、手工补录功能,上下班时间设置对应三种班制类别,第一种是一天两次上班刷卡,两次下班刷卡,第二种是一天一次上班刷卡,一次下班刷卡,第三种是夜班,一次上班刷卡,一次下班刷卡。考勤规则设置用来设置早退,迟到,加班等的判断标准。手工补录用来处理因特殊原因造成的考勤机没用录上的上下班记录。 (4)、统计报表模块包括员工出勤表、部门日出勤表、部门月出勤表、公司日出勤表。可以根据不同的条件进行查询,如日期、部门、是否迟到等
23、。3.3 系统流程图图3-3为系统流程图,系统启动后先进行数据库设置,设置后会弹出登陆界面,如果数据库设置正确,登录用户正确的话,就可以对系统进行有效的操作了。除系统管理、人事资料、考勤管理、统计报表四大模块外,系统还有调用本地计算器,设备通讯,帮助等功能。其中设备通讯设置包括通讯端口的设置,波特率设置等,从下位机接收到的数据先保存到数据库接收表中,进行报表的查询时再从接收表把数据读出,并进行相应的处理。数据库设置登陆考勤系统提示错误,重新登录登陆成功 N Y主界面:系统管理,人事资料,考勤管理,统计报表,通讯设置,帮助,退出。帮助或者退出统计报表考勤管理人事资料系统管理公司、部门、员工等资料
24、设置帮助窗体退出系统考勤规则设置等员工、部门、公司报表统计增加用户,密码修改等 根据不同条件显示统计结果设置上下班时间;请假、出差登记;手工补录;对人事资料查看;对人事资料编辑并保存到数据库。管理员可以对用户进行编辑;密码修改; 图3-3 系统流程图3.4 下位机系统框图指纹考勤系统下位机是由另外一个同学所做。上位机和下位机是通过RS232串口通信,下位机为上位机提供考勤数据,上位机进行处理和统计。下位机是以Cortex-M3为核心处理器,以新型的指纹传感器ZFM-206采集指纹,外围扩展了16MFlash供存储指纹数据,两个RS232串口用来调试,最后配备了2.4寸TFT真彩LCD并带有触摸
25、板显示及操作,系统框图如图3-4所示:触摸屏指纹传感器ZFM-20616M FLASH 处理器STM32RS232串口通信电源2.4寸TFTLCD显示图3-4 下位机系统框图第四章 开发工具及相关技术介绍根据系统分析,指纹考勤系统采用Microsoft Visual Basic 6.0和Microsoft SQL Server 2005进行开发设计,下面对用到的开发工具和相关技术做简要的介绍。4.1 开发工具介绍4.1.1 Microsoft Visual Basic 6.0介绍Visual Basic是一种可视化的、面对对象和条用事件驱动方式的结构化高级程序设计,可用于开发Windows环境
26、下的种类应用程序。它简单易学、效率高,且功能强大,可以与Windows的专业开发工具SDK相媲美,而且程序开发人员不必具有C/C+编程基础。在Visual Basic环境下,利用事件驱动的编程机制、新颖易用的可视化设计工具,使用Windows内部的应用程序接口(API)函数,以及动态链接库(DLL)、动态数据交换(DDE)、对象的链接与嵌入(OLE)、开放式数据访问(ODBC)等技术,可以高效、快速地开发出Windows环境下功能强大、图形界面丰富的应用软件系统。Visual Basic 6.0作为Visual Studio 6.0的一员发布,证明微软正在改变Visual Basic的产品定位
27、,他想让Visual Basic成为企业级快速开发的利器。Visual Basic 6.0在数据访问方面有了很大的改进,新的ADO组件让对大量数据快速访问成为可能。数据环境和新的报表功能也让数据开发有了全新的体验一三。(1)、可视化编程用传统程序设计语言设计程序时,都是通过编写程序代码来设计用户界面,在设计过程中看不到界面的实际显示效果,必须编译后运行程序才能观察。如果对界面的效果不满意,还要回到程序中修改。有时候,这种编程-编译-修改的操作可能要反复多次,大大影响了软件开发效率。Visual Basic提供了可视化设计工具,把Windows界面设计的复杂性“封装”起来,开发人员不必为界面设计
28、而编写大量程序代码。只需要按设计要求的屏幕布局,用系统提供的工具,在屏幕上画出各种“部件”,即图形对象,并设置这些图形对象的属性。Visual Basic自动产生界面设计代码,程序设计人员只需要编写实现程序功能的那部分代码,从而可以大大提高程序设计的效率。(2)、结构化程序设计语言Visual Basic是在BASIC语言的基础上发展起来的,具有高级程序设计语言的语句结构,接近于自然语言和人类的逻辑思维方式。Visual Basic语句简单易懂,其编辑器支持彩色代码,可自动进行语法错误检查,同时具有功能强大且使用灵活的调试器和编译器。Visual Basic是解释型语言,在输入代码的同时,解释
29、系统将高级语言分解翻译成计算机可以识别的机器指令,并判断每个语句的语法错误。在设计Visual Basic程序的过程中,随时可以运行程序,而在整个程序设计好之后,可以编译生成可执行文件(.EXE),脱离Visual Basic环境,直接在Windows环境下运行。(3)、事件驱动编程机制Visual Basic通过事件来执行对象的操作。一个对象可能会产生多个事件,每个事件都可以通过一段程序来响应。例如,命令按钮是一个对象,当用户单击该按钮时,将产生一个“单击”(CLICK)事件,而在产生该事件时将执行一段程序,用来实现指定的操作。在用Visual Basic设计大型应用软件时,不必建立具有明显
30、开始和结束的程序,而是编写若干个微小的子程序,即过程。这些过程分别面向不同的对象,由用户操作引发某个事件来驱动完成某种特定的功能,或者由事件驱动程序调用通用过程来执行指定的操作,这样可以方便编程人员,提高效率。(4)、访问数据库Visual Basic具有强大的数据库管理功能,利用数据控件和数据库管理窗口,可以直接建立或处理Microsoft Access格式的数据库,并提供了强大的数据存储和检索功能。同时,Visual Basic还能直接编辑和访问其他外部数据库,如DBASE,FoxPro,Paradox等,这些数据库格式都可以用Visual Basic编辑和处理。Visual Basic提
31、供开放式数据连接,即ODBC功能,可通过直接访问或建立连接的方式使用并操作后台大型网络数据库,如SQL Server,Oracle等。在应用程序中,可以使用结构化查询语言SQL数据标准,直接访问服务器上的数据库,并提供了简单的面向对象的库操作指令和多用户数据库访问的加锁机制和网络数据库的SQL的编程技术,为单机上运行的数据库提供了SQL网络接口,以便在分布式环境中快速而有效地实现客户/服务器(client/server)方案。(5)、ADO技术简介微软公司的ADO (ActiveX Data Objects) 是一个用于存取数据源的COM组件。它提供了编程语言和统一数据访问方式OLE DB 的
32、一个中间层。允许开发人员编写访问数据的代码而不用关心数据库是如何实现的,而只用关心到数据库的连接。访问数据库的时候,关于SQL的知识不是必要的,但是特定数据库支持的SQL命令仍可以通过ADO中的命令对象来执行。ADO被设计来继承微软早期的数据访问对象层,包括RDO (Remote Data Objects) 和DAO(Data Access Objects)。以前的对象模型,如DAO和RDO是层次型的。也就是说一个较低的数据对象如Recordset是几个较高层次的对象,如Environment和QueryDef,的子对象。在创建一个QueryDef对象的实例之前,你不能创建DAO Record
33、set 对象的实例。但ADO却不同,它定义了一组平面型顶级对象. 最重要的三个ADO对象是Connection, Recordset和Command. 本文将主要介绍Connection和Recordset这两个对象。每个Connection的属性定义了与数据源的连接。Recordset对象接收来自数据源的数据。Recordset可以与Connection一起起使用,先建立一个连接,然后获取数据。尽管如此,Recordset也可以被单独创建,其Connection参数可以在Open属性定义。4.1.2 Microsoft SQL Server 2005介绍Microsoft SQL Serve
34、r 2005 是一个全面的数据库平台,使用集成的商业智能 (BI)工具提供了企业级的数据管理。Microsoft SQL Server 2005数据库引擎为关系型数据和结构化数据提供了更安全可靠的存储功能,使您可以构建和管理用于业务的高可用和高性能的数据应用程序17。Microsoft SQL Server 2005的10个特点:特点描述.NET 框架主机使用SQL Server 2005,开发人员通过使用相似的语言,例如微软的Visual C# .NET和微软的Visual Basic,将能够创立数据库对象。开发人员还将能够建立两个新的对象用户定义的类和集合。XML 技术在使用本地网络和互联
35、网的情况下,在不同应用软件之间散步数据的时候,可扩展标记语言(XML)是一个重要的标准。SQL Server 2005将会自身支持存储和查询可扩展标记语言文件。ADO.NET 2.0 版本从对SQL类的新的支持,到多活动结果集(MARS),SQL Server 2005中的ADO.NET将推动数据集的存取和操纵,实现更大的可升级性和灵活性。增强的安全性SQL Server 2005中的新安全模式将用户和对象分开,提供fine-grain access存取、并允许对数据存取进行更大的控制。另外,所有系统表格将作为视图得到实施,对数据库系统对象进行了更大程度的控制。Transact-SQL 的增强
36、性能SQL Server 2005为开发可升级的数据库应用软件,提供了新的语言功能。这些增强的性能包括处理错误、递归查询功能、关系运算符PIVOT, APPLY, ROW_NUMBER和其他数据列排行功能,等等。SQL 服务中介SQL服务中介将为大型、营业范围内的应用软件,提供一个分布式的、异步应用框架。通告服务通告服务使得业务可以建立丰富的通知应用软件,向任何设备,提供个人化的和及时的信息,例如股市警报、新闻订阅、包裹递送警报、航空公司票价等。在SQL Server 2005中,通告服务和其他技术更加紧密地融合在了一起,这些技术包括分析服务、SQL Server Management Stu
37、dio。Web服务使用SQL Server 2005,开发人员将能够在数据库层开发Web服务,将SQL Server当作一个超文本传输协议(HTTP)侦听器,并且为网络服务中心应用软件提供一个新型的数据存取功能。报表服务利用SQL Server 2005, 报表服务可以提供报表控制,可以通过Visual Studio 2005发行。全文搜索功能的增强SQL SERVER 2005将支持丰富的全文应用软件。服务器的编目功能将得到增强,对编目的对象提供更大的灵活性。查询性能和可升级性将大幅得到改进,同时新的管理工具将为有关全文功能的运行,提供更深入的了解。4.2 Client/Server模式介绍
38、C/S(Client/Server)结构,即大家熟知的客户机和服务器结构。它是软件系统体系结构,通过它可以充分利用两端硬件环境的优势,将任务合理分配到Client端和Server端来实现,降低了系统的通讯开销。目前大多数应用软件系统都是Client/Server形式的两层结构,由于现在的软件应用系统正在向分布式的Web应用发展,Web和Client/Server应用都可以进行同样的业务处理,应用不同的模块共享逻辑组件;因此,内部的和外部的用户都可以访问新的和现有的应用系统,通过现有应用系统中的逻辑可以扩展出新的应用系统。这也就是目前应用系统的发展方向。C/S模式简单地讲就是基于企业内部网络的应
39、用系统,与B/S模式相比,C/S模式不依赖于外网,即使企业不能够上网,也不影响系统的使用。服务器通常采用高性能的PC、工作站或小型机,并采用大型数据库系统,如ORACLE、SYBASE、InfORMix或SQL Server。客户端需要安装专用的客户端软件。本系统拟采用C/S模式,用户通过客户机在网络系统上向服务器提出服务请求,服务器根据请求向客户机提供处理后的数据,客户机也承担部分的信息管理,本文所研究的系统主计算机作为服务器,主要保存考勤信息,考勤机和其他计算机作为客户机。但由于硬件环境的限制,系统以下的设计和测试均在个人PC上进行。4.3 串口通信协议与MSComm控件介绍4.3.1 串
40、口通信协议介绍串口通信是指外设和计算机间,通过数据信号线 、地线、控制线等,按位进行传输数据的一种通讯方式。这种通信方式使用的数据线少,在远距离通信中可以节约通信成本,但其传输速度比并行传输低。串口通信(Serial Communications)的概念非常简单,串口按位(bit)发送和接收字节。尽管比按字节(byte)的并行通信慢,但是串口可以在使用一根线发送数据的同时用另一根线接收数据。它很简单并且能够实现远距离通信。比如IEEE488定义并行通行状态时,规定设备线总长不得超过20米,并且任意两个设备间的长度不得超过2米;而对于串口而言,长度可达1200米。典型地,串口用于ASCII码字符
41、的传输。通信使用3根线完成,分别是地线、发送、接收。由于串口通信是异步的,端口能够在一根线上发送数据同时在另一根线上接收数据。其他线用于握手,但不是必须的。串口通信最重要的参数是波特率、数据位、停止位和奇偶校验。对于两个进行通信的端口,这些参数必须匹配。4.3.2 MSComm控件介绍Microsoft Communications Control,简称MSComm,是Microsoft公司提供的简化Windows下串口通信编程的ActiveX控件,它通过串行端口传输和接收数据,为应用程序提供串行通信功能。MSComm控件提供两种处理通信问题的方式:事件驱动方式(Event-driven)和查
42、询方式。(1)、事件驱动方式。它是一种功能很有效的处理串口活动的方法。例如,当在CD(Carrier Detect)线或RTS(Request To Send)线上有字符到达或发生了改变,在这种情况下,可以使用MSComm控件的OnComm事件捕获和处理这些通信事件。OnComm也可以捕获和处理通信中的错误。每个MSComm控件对应一个串行端口,因此程序如果要访问多个串口,必须使用多个MSComm控件。(2)、查询方式。在程序的每个关键功能之后,可以通过检查CommEvent属性的值来查询时间和错误,对于应用程序较小,并且是自保持的,这种方法更实用。4.3.3 MSComm控件的引用以Visu
43、al Basic 6.0为例,鼠标左键点击“工程”-“部件”,选择“Microsoft Comm Control 6.0”,在前面方框内打勾,如图4-1所示,点击确定按钮,此时在工具箱里会出现一个类似电话的图标,它就是MSComm控件5。图4-1 添加MSComm控件第五章 数据库设计本系统采用Microsoft SQL Server 2005数据库进行设计开发。基于系统的功能要求,需要建立以下几个数据表:用户表、公司表、部门表、员工表、职务表、工种表、宿舍表、请假表、出差表、补录表、上下班时间表、考勤规则表、考勤日报表。以下将做详细介绍。(1)、用户表用户表包括用户名、密码、用户级别等字段,
44、具体设置如表5-1。表5-1 用户表(2)、公司表公司表包括公司中文名称、公司英文名称、公司地址、公司电话、公司传真、公司负责人等字段,具体设置如表5-2。表5-2 公司表(3)、部门表部门表包括部门号、部门名、上级部门号、负责人等字段,具体设置如表5-3。表5-3 部门表(4)、员工表员工表包括工号、姓名、性别、年龄、民族、籍贯、部门等字段,具体设置如表5-4。表5-4 员工表(5)、职务表职务表包括职务号、职务名等字段,具体设置如表5-5。表5-5 职务表(6)、工种表工种表包括工种号、工种名等字段,具体设置如表5-6。表5-6 工种表(7)、宿舍表宿舍表包括宿舍号、宿舍名等字段,具体设置
45、如表5-7。表5-7 宿舍表(8)、请假表请假表包括工号、请假原因、起始日期、终止日期等字段,具体设置如表5-8。表5-8 请假表(9)、出差表出差表包括工号、出差原因、起始日期、终止日期等字段,具体设置如表5-9。表5-9 出差表(10)、补录表补录表包括工号、姓名、补录时间、补录说明等字段,具体设置如表5-10。表5-10 补录表(11)、上下班时间表上下班时间表包括DTP1s、DTP1x、DTP2ss、DTP2sx等字段,具体设置如表5-11。表5-11 上下班时间表(12)、考勤规则表考勤规则表包括c1、c2、z1、z2、j1等字段,具体设置如表5-12。表5-12 考勤规则表(一三)
46、、考勤日报表考勤规则表包括工号、姓名、部门、班次类别、日期、上班1、下班1、上班2、下班2、迟到分钟、早退分钟、请假小时、备注等字段,具体设置如表5-一三。表5-一三 考勤日报表(14)、接收表接收表包括工号、上班1、下班1、上班2、下班2字段,具体设置如表5-14。表5-14 接收表第六章 系统详细设计指纹考勤系统详细设计包括软件与数据库的连接,软件登陆功能的实现,人事资料查询设置的实现,考勤规则的设置,报表统计功能的实现,以及上下位机的通讯实现。6.1 VB与SQL Server的连接企业的考勤管理离不开数据库技术,数据库也是本系统的核心,本系统采用字符串进行数据库的连接,具体实现代码如下:Dim objCnct As New Connection 定义并实例化连接对象 With ob