[硕士论文精品]二代证门禁控制系统软件的设计与实现_第1页
[硕士论文精品]二代证门禁控制系统软件的设计与实现_第2页
[硕士论文精品]二代证门禁控制系统软件的设计与实现_第3页
[硕士论文精品]二代证门禁控制系统软件的设计与实现_第4页
[硕士论文精品]二代证门禁控制系统软件的设计与实现_第5页
已阅读5页,还剩51页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

摘要摘要非接触IC卡CONTACT1ESSICCARD,又名射频卡由于其较好的便捷性和较高的性价比成为门禁监控系统中用户身份识别方式的主流。第二代居民身份证,作为射频卡的一种,完全继承了射频卡的优点。同时,由于采用了数字防伪技术和印刷防伪技术,其安全性又得到了较大程度的提高。随着国家换发二代证计划的顺利推广,二代证将逐步普及。因此,本文设计并实现了一款二代证门禁控制系统。本文在分析门禁系统发展的现状的基础上,设计并实现了一款符合当前门禁系统发展趋势的、现代化、智能化的二代证门禁控制系统。本文主要完成了以下工作1在深入分析门禁控制系统设计要求的基础上,完成了系统的需求分析,并给出了系统的总体设计方案。2根据控制器和管理机的总体设计方案,给出了系统运行过程中所需的数据库结构的设计,并且完成了控制器与管理机通信过程中所需的通信数据报文格式的设计。3完成了系统软件的详细设计与实现,详细的介绍了控制器和管理机两部分软件中主要功能模块的设计和实现方法。4从功能和性能两方面,对系统进行了详细的测试。测试结果表明,本二代证门禁控制系统完全满足设计要求,具有安全性高、实时性好、效率高等特点。关键词嵌入式门禁系统二代证设计ABSTRACTABSTRACTCONTACTLESSICC砌BECOMESMEMAILL、AYTOIDENTI鸟TLLESTATUSOFUSERMACCESSCOMROLSYSTEMASONEOFTHECONTACTLESSICCARD,TLLESECOND噜EILERATIONIDCARDIR山ERITSTLLEADV锄TAGESOFTHECONTACTLESSICC矾WITLLMEADOPTIONOFDIGITAL觚TIFORGEDRTECLLILOLOGYARLDPRINTING锄TICO吼TERFIEITTECHNOLOGY,TLLESECURITROFTLLESECONDGENERATIONIDCARDISGREATLYENHANCED111ESECOND唱ENERATIONIDCARD嘶NBE丽DESPREADUSEASMENATIONTRIESTOPOPULARIZE“FORTHEREASO玛ASECONDGENERATIONIDENTITYCARDACCESSCONTR01SYSTEMISDESIGNEDMTLLISTHESIST11ISTLLESIS肌ALYZESTHEC硼RENTSITUATIONOFTLLEACCESSCO曲OLSYSTEM,AILDDESIGILSARLDIMPLEMEMSASECONDGENERATIONIDC赳DACCESSCONL_JOLSYSTEM111EFOLLO、VINGTASKSAREACCOMPLISHEDINTHET11ESISFIRST,THEDEM锄DAMLYSISISMADEBASEDONTLLEREQUIREMENTSOFACCESSCONTROLSYSTEMTHEN,ANESSENTIALDESIGNOFMESYSTEMISPROPOSEDSECOND,BOTLLMEDA讪AUSESTNLCTU】陀AILDLEDA舾PACKETFOMATWHJCHISUSEDINMECOMMUNICATIOILSBETWREENTHECOMROLLERANDSUPEISORAREDESIGNEDBASED0N恤ESSENTIALDESI凹OF也ECONTROLLERANDSL磷IISORNIRD,MEDETAILEDDESI弘AILDTLLEIMPLEMENTATIONOFTLLESYSTEMAREACCOMPLISHEDFIRLAUY,NLEMCTIONANDPERFOMLANCEOFTHESYSTEMISTESTEDINDETAILTHETESTRESULTSSHOW廿LATMESECONDGENERATIONIDCARDACCESSCON佃OLSYSTEMMEETST11EDESIGNREQUIREMEMSTOTALLYTHISACCESSCONTROLSYSTEMISOFLLI曲SECURITR,REALTIMELY趴D岫出EMCIENCYKEYWORDEMBEDDEDACCESSCONTROLSECONDGENERATIONIDCARDDESIGN西安电子科技大学学位论文独创性或创新性声明秉承学校严谨的学风和优良的科学道德,本人声明所呈交的论文是我个人在导师指导下进行的研究工作及取得的研究成果。尽我所知,除了文中特别加以标注和致谢中所罗列的内容以外,论文中不包含其他人已经发表或撰写过的研究成果;也不包含为获得西安电子科技大学或其它教育机构的学位或证书而使用过的材料。与我一同工作的同志对本研究所做的任何贡献均已在论文中做了明确的说明并表示了谢意。申请学位论文与资料若有不实之处,本人承担一切的法律责任。本人签名堑L津日期2兰翠盟西安电子科技大学关于论文使用授权的说明本人完全了解西安电子科技大学有关保留和使用学位论文的规定,即研究生在校攻读学位期间论文工作的知识产权单位属西安电子科技大学。学校有权保留送交论文的复印件,允许查阅和借阅论文;学校可以公布论文的全部或部分内容,可以允许采用影印、缩印或其它复制手段保存论文。同时本人保证,毕业后结合学位论文研究课题再撰写的文章一律署名单位为西安电子科技大学。保密的论文在解密后遵守此规定本学位论文属于保密,在一年解密后适用本授权书。本人签名导师签名日期笃墨日期翌墨第一章绪论第一章绪论11背景和意义随着科技的进步和经济的发展,城市人口的数量急速上升,一栋办公大楼可能有数十甚至上百家公司办公,往来人员多且杂,这给传统的人员进出安全管理制度带来了严峻的挑战【19L。同时大量电气设备的使用也使得我们的周围环境存在着诸多不安全的因素,这些因素对人民的生命和财产安全构成了很大的威胁【2J,传统的用钥匙开门或专人巡逻看守的方式已经不能满足当代人对安防系统的需求。当今世界的安防发展的趋势是形成一个集成了门禁管理、防盗报警、电脑管理中心的现代化、多功能、全天候的动态综合管理系统,为人们的生活和工作提供一个安全、可靠的环境。智能门禁管理系统的兴起,使得这一安防问题得到了很好的解决,它利用现代化最新技术和最可靠的科技成果,为人们提供了安全、舒适、温馨的生活和工作环境。它采用科学可靠的管理和监控机制来管理特定场所的出入权限,辅助管理员及时准确的监视受控区域的出入情况以及烟火等异常紧急事件的发生,为企事业单位和小区物业管理提供了一套完善的、现代化的、高科技的智能门禁监控管理系统。在数字化网络化飞速发展的今天,门禁技术也得到了迅猛的发展,它已逐渐发展成为一套完整的出入管理系统,在生活环境安全、工作环境安全、人事考勤管理等管理工作中发挥着巨大的作用。在此基础上加上相应的辅助设施即可进行电梯控制、车辆管理控制、安全巡检管理等,实现真正的区域内智能管理。当前的门禁管理系统以目前国际上先进成熟的分布式体系理论和控制理论为基础,综合利用了现代计算机技术、现代控制技术、现代通信技术和现代图形显示技术的先进成果,采用了自动识别技术和现代安全管理措施,涉及电子、机械、计算机技术、生物技术和通信技术等诸多新技术【21,为人们提供了高质量、安全、舒适、快捷的综合服务功能。体现了门禁系统向现代化、智能化管理方向发展的趋势。目前,国内外研究和使用的门禁系统主要集中在密码识别门禁系统、生物识别门禁系统和感应卡门禁系统。密码识别方式的门禁管理系统只需使用者在进门前由键盘输入用户密码,门禁控制器将键盘传过来的密码和数据库中存储的密码进行比较判断后即可决定是否开门,这种方式的门禁系统操作方便、无需携带卡片且成本低,但存在着密码比较容易泄露的缺陷。为了提高这种门禁系统的安全性,出现了乱序键盘型门禁系统,这种系统提高了原始密码门禁系统的安全性,但是成本较高。基于生物识别技术的门禁系统通过检验人体生物特征的方式来识2二代证门禁控制系统软件的设计与实现别并控制人员进出。由于人的指纹、视网膜、虹膜等具有唯一、稳定、不可复制等这些其他介质无法取代的优点,使得采用生物识别技术的门禁系统安全性极好,可靠性极高,但是这种系统的成本很高,对环境要求高且使用不方便。感应卡式门禁系统可以通过读取事先存储在卡片包括磁卡、接触式IC卡、非接触式IC卡等上的持卡人信息来管理进出门权限,其中磁卡虽然成本低、使用方便,但信息存储量小、易磨损、寿命短、卡信息易丢失和被复制、安全性一般,接触式IC卡存储量大、不易被磁化、信息不易复制和丢失,但寿命短,非接触式IC卡在继承了接触式IC卡优点的同时还有较长的使用寿命。因此,基于非接触IC卡的门禁监控系统成为今后门禁发展的方向之一。在具体工程设计中,门禁系统有三种不同的管理模式单机版管理模式、服务器管理模式、单机版服务器管理模式。其中,单机版管理模式中各个门禁点之间是相互独立的,不需要任何联系;服务器管理模式和单机版管理模式的最大区别是所有的控制器和服务器相连,它采用服务器进行集中管理,所有的门禁点的设置和数据的下载由管理员统一完成;在服务器单机版管理模式中,服务器有服务器软件和数据库,可实现卡的授权、分配和权限设置,同时各个门禁点也有自己的软件和数据库,它具有一定的管理权限,可以实现对本部门人员的卡的分配和权限设置【L9。单机版管理模式的门禁系统不能协助管理员实现对系统的监视,服务器单机版管理模式功能齐全,但是设计复杂且可执行文件体积大,服务器管理模式中能协助管理员进行系统监控且可执行文件体积小。因此这种管理模式在门禁关系系统中得到了广泛的应用。根据上面介绍,我们可以看出,设计一套采用服务器管理模式的非接触式IC卡门禁识别系统将会有着很广泛的市场前景。第二代居民身份证是一种采用了IS014443TYPEB协议标准的非接触式IC卡,相对于第代居民身份证而言,它的安全系数大大增加。它主要采取了两方面的安全防伪措施,一是数字防伪措施,就是把个人的信息写入芯片,采用数字加密的办法,一个地区一个密码,每个公民拥有自己的一个密码,防伪技术是我们国家自己研制的,安全性非常高,这就能保证写入身份证芯片的信息是安全且不能被篡改的;第二个是印刷防伪技术,印刷层图案两面都有,印刷的防伪技术采取了很多措施。由于采用了数字防伪和印刷防伪这两种防伪措旌,使得身份证的安全性得到了很大的提高。与二代证相对应的二代证读卡器采用的是射频识别技术,只有在10厘米范围内才能读到卡片信息,超过10厘米将不能读出卡片上信息,加大磁场则读卡器将停止工作。而且作为读卡器最安全部件的安全模块是专控产品,模块生产出来之后必须到公安部的身份证密钥管理中心获取密码,没有安全模块的读卡机具是不能读出身份证信息的,这就保证了身份证信息不会在用户不知情的情况下被犯罪第一章绪论分子窃取,从而提高了信息的安全性。而且每个人的身份证号码自始至终都是唯一的,不会因为户口的迁移而发生变化。虽然至今仍未有官方消息宣布一代证的停止使用时间,但是公安部要求,全国各地在2008年底完成第二代居民身份证的换发工作。现在我国大多数居民已经拿到了代证。由于二代证的安全性和唯一性,使得这种采用了ISOL4“3TYPEB协议标准的非接触式IC卡能够被使用在门禁识别系统中。随着二代身份证的普及与推广,几乎已经达到了人手一证的地步。因此,在门禁系统中二代证的使用能大大降低以前的门禁控制系统中需要给每个用户分配一张身份识别卡的成本,而且在人员从一家单位换到另一家单位后,只需原单位将该用户的权限删除,新单位为该员工设置新的权限即可,从而避免了销毁原卡、重新制卡和发卡的麻烦。因此。将二代证和门禁系统相结合有着无可比拟的优越性,本文就是考虑到这种优越性,设计了一个基于二代证的嵌入式门禁控制系统。12本文的主要研究内容随着第二代居民身份证的普及和推广,二代证已经成为我们随身携带的物品之一。由于二代证的使用方便、信息难于被复制、成本低廉等优越性的存在,使得设计一种能够识别二代证的感应卡门禁系统是门禁系统发展的趋势。本文采用服务器的管理模式,设计并实现了一种基于二代证的嵌入式门禁控制系统如图11所示,使系统可以实现对门禁规定的控制区域进行高效、可靠、实时的控制和管理。N图L_I二代证门禁控制系统4二代证门禁控制系统软件的设计与实现该系统主要有控制器和管理机两部分组成,其中控制器部分是系统管制功能的主要实施者,也是本次设计的重中之重。本系统中,控制器可以独立的完成控制区域的管理及控制,也可以与管理机协作完成对系统的设置、管理和监控。管理机可以通过WIFI、ZIGBEE或以太网中的任一种通信方式和控制器进行通信,以完成对控制器的参数配置、用户的权限设置和系统运行的实时监控。控制器软件运行在嵌入式LINUX一2614内核平台下,通过SOCKET编程和串口通信的方式实现了控制器和管理机之间的通信,采用SQLITE数据库技术对控制器配置参数和权限及运行状态信息进行存储和管理,采用射频识别技术和小键盘输入技术来进行用户身份信息的读取,系统采用C编程语言编写了系统软件。系统主要实现了以下功能,授权用户可以在授权区域内自由进出,非授权用户的行为则受到严格的限制;有效地进行了门的开关管理;对非法用户进入区域、破坏控制器、强行闯入受控区域和由于各种原因引发的烟火警进行报警并通过网络传输将报警信息发送给管理机端供管理员处理的同时,还需将用户进入系统以及控制器报警事件进行记录和存储;另外,由于嵌入式系统的硬件资源有限,故需要每天在规定的时间将考勤数据库和事件记录数据库的信息上传给管理机进行备份管理并定期将控制器的记录数据库信息删除以便将有限的空间用来存储最新的事件触发信息。本人在该系统设计中主要完成了一下工作1结合国内外门禁系统的发展现状,根据用户需求信息撰写需求文档。2根据用户需求文档,结合LINU【平台下的门禁控制系统设计中的关键技术,进行了系统的总体设计,确定控制器和管理机中各个功能模块的划分,制定了ZIGBEE、以太网和WIFI这三种通信模式下的通信协议格式,并设计系统运行过程中所需的数据库。3完成了系统的详细设计,结合LINU【系统下所用到的一些关键技术,对系统运行的整个过程中所要实现的主要功能模块的设计和实现方法进行了详细的解释和说明。4在对系统进行了详细设计的基础上,完成了控制器和管理机软件的编写和调试工作。5在完成了系统软件的编写和调试后,从功能测试和性能测试两个方面对系统进行了全面的、系统的测试。13论文的工作安排结合上面对系统的分析,本文分五部分对所做的工作进行了详细的阐述。第一章绪论第一章介绍了选题的背景,并根据门禁系统当前发展现状分析了门禁系统的发展趋势,得出了本次二代证门禁控制系统的设计是必要和重要的这一结论。第二章阐述了系统的总体设计,根据系统的功能需求,介绍了系统的运行环境,对控制器和管理机运行过程中所要完成的功能迸行了模块划分,为了系统的正常运行确定了系统的数据库并制定了控制器和管理机间通信时所需要采用的通信协议的格式。第三章详细的介绍了系统的详细设计及其实现过程,具体的介绍了系统各个模块的详细设计及模块的运行过程。第四章介绍了系统的功能测试和性能测试方案及测试结果。第五章对当前所做的工作进行了总结,并针对系统的运行情况提出了一些改良的建议。第二章系统的总体设计7第二章系统的总体设计本章主要阐述了以下几个方面的内容。首先,在分析门禁系统的发展现状和用户的需求的基础上确定了当前系统的功能需求;其次,根据系统功能确定了该二代证门禁控制系统组成,接着确定了系统的总体设计以及系统的功能模块的划分;最后设计了在系统运行过程中需要采用的数据库格式以及通信协议格式。21需求分析211设计目标研发一款基于第二代身份证的嵌入式门禁控制系统,系统可以查询到输入端口的状态变化、用户刷卡信息和按钮输入信息,并将这些信息进行逻辑判断后发出相应的输出信号,在将处理结果及时的上传给管理机的同时还需存储到控制器数据库。系统要支持灵活的组网方式,协助管理员对控制器端参数进行设置并实时的监视系统的运行状态。总之,需要研发出一套具有防火、防盗、考勤等功能,并支持灵活的组网方式的嵌入式门禁控制系统。222功能需求本次设计中,控制器软件的主要需要实现以下几个功能1实现三种类型卡的识别15693卡、14443TYPEB卡即身份证卡、14443聊EA卡。2用户刷卡时,要能自动识别出卡的类型并读出卡片信息,通过查询数据库中存储的该卡的权限来判断是否要进行开门操作,如果有权限的话,需对用户进行考勤记录,若分区处于布防状态需要对分区进行撤防操作,若处于报警状态需要解除分区报警,若门处于关闭状态需要打开门。3用户按开门按钮时,若分区处于撤防状态且门处于关闭状态则要开门,若门所属分区处于布防状态则不能通过按钮开门。4用户输入编号和密码后,根据用户输入信息在数据库中查询用户开门权限,若无权限则不需处理,有权限的话则对用户进行考勤,并且门若处于关闭状态的话需要开门,如果分区处于分区布防和报警状态需进入布防状态并解除分区报警。5门打开后,若房间开启了延时关门功能,则需要在系统设定的延时时间后将门关闭。8二代证门禁控制系统软件的设计与实现6若有人蓄意破坏控制器,系统要能迅速识别出防拆被触发状态并进行报警。7受控区域内有烟火发生的时候要进行报警。8当受控区域进入布防状态时,红外传感器启用,此时软件如果检测到红外传感器有触发信号输入,需要触发报警操作。9区域在开启了强制开门报警的情况下,若在没有任何开门信号输入即无按钮开门、刷卡开门、密码开门时,门磁被触发则需要进行报警。10在系统有报警触发的情况下,在将报警信息写入到控制器端数据库的同时需要将触发信息发送给管理机,使得管理员能够实时监视到控制器的异常信息并可以对报警信息采取相应的措施进行处理。11控制器要能接收到管理机软件对控制器配置的修改信息,将信息保存到数据库的同时要将新的配置信息通知所有应用进程,使得进程及时的按新的配置情况运行。12通过三种通信方式实现控制器与管理机间的通信ZIGBEE无线模块通信、IFI无线模块通信、以太网通信。13管理机要对控制器能进行远程的软件升级、重启、时间校正、定时上传考勤和事件数据库。22系统组成221系统的软硬件组成根据系统的功能要求,我们设计出的门禁系统主要由以下几部分组成管理机、控制器、二代证读卡器、读卡器、出入凭证、报警器、门磁、电锁、红外传感器,烟火警传感器、按钮,以及网络传输设备、管理机软件和控制器软件组成。系统中的控制器默认配置硬件结构如图21所示。管理机通过运行管理机软件来实现对控制器的系统的配置和控制器运行状况的实时监视。控制器,作为门禁控制系统的核心部分,通过运行控制器软件来实现对门禁系统的管理,并通过与管理机通信来辅助管理员对受控区域进行设置和监视。二代证读卡器配置在管理机端,通过它在管理机端读出用户身份证信息,管理员在将信息进行相应的权限配置后,将用户信息保存在管理机端数据库并传输给控制器保存,供控制器进行权限查询。读卡器,属于控制器前端设备,主要用来读出用户持有的卡片上的信息并将数据传给控制器,以便控制器软件进行权限查询后进行相应的操作。出入凭证,即门禁系统开门的“钥匙”,该系统中主要有两种凭证,密码和卡第二章系统的总体设计9图21控制器硬件结构图片包括身份证卡即14443TYPEB卡和15693等。报警器是门禁系统的执行设备,当出现异常触发且系统判断需要进行报警则控制器软件将打开对应的报警器引发相关人员的注意来处理当前的报警信息。门磁,用来检测门的开关状态,作为门禁控制器的输入信号之一,为控制器的逻辑控制提供依据。电锁是门禁系统的执行设备,根据门的材料、出门要求的不同可选取不同的锁具,如电磁锁,阳极锁,阴极锁。红外传感器,作为系统的输入设备,用来检测当系统处于布防状态时系统中是否有人出没,有的话将需要控制器进行报警处理。烟火警传感器负责收集管制区域的烟火信号,并将触发结果传递给控制器,待其处理。按钮的使用方便了用户从室内进行开门操作,作为门禁控制器的输入信号,它给控制器提供了逻辑判断依据。按钮可以和读卡器搭配使用,当系统区域的安全性要求不高的时候,就可以门内按钮门外读卡器,如果要求高的话则需要门内外都安装读卡器。网络传输设备是用来完成控制器和管理机系统通信连接的设备,主要是指以太网口、ZIGBEE模块和WIFI模块。LO二代证门禁控制系统软件的设计与实现222系统的基本概念管理员每个系统有一个唯一的管理员,管理员的权限最大,可以对系统内所有功能模块进行管理,可以查看、修改用户卡号、密码等基本信息。识别卡是系统的介质,记录了持卡人的所有信息。识别卡种类包括普通卡和超级卡。其中普通卡只能控制系统的一个受控区域,超级卡可以控制系统的所有受控区域。识别卡状态包括有效卡、失效卡和无效卡。有效卡是指有开门权限的卡,失效卡是指超过了卡的使用期限的卡,无效卡是指没有在系统中进行登记或注册的卡。开门方式刷卡开门、密码开门和按钮开门三种。其中,刷卡开门是指用户在门外刷卡后通过查询卡号对应的权限即可判断是否需要进行开门操作;密码开门是针对用户忘记带卡情况下,可以通过输入自己的用户编号和密码来开门;按钮开门指的是当用户从室内出去时,无需刷卡,只需按开门按钮就可以打开门。分区分为独立分区和公共分区。独立分区是指归某个团体或个人独有的区域,通常是一个房间,公共分区是指归系统中所有用户共有的区域,主要指走廊在蟹号手O房间指的是分区中的独立分区。23总体设计231系统软件的总体设计思路本二代证门禁控制系统是一个可以控制多个门、具有远程监控和管理功能的复杂系统,由控制器和管理机两部分组成。由于门禁系统使用环境的比较特殊,这就要求控制器既可以脱离管理机单独使用又可以在多个控制器与管理机的组成的网络环境中正常运行。在独立运行时,要保证系统能对外界的信号进行正确的处理并将触发信息和考勤信息计入数据库,以备网络连通时将信息上传给管理机备份;当系统处于联网模式时,管理机要能根据控制器当前的配置情况对控制器进行正确的设置并接收应答,控制器在正确处理外界信号的时候要将报警信息上传给管理机供管理员监视并将信息记入控制器端数据库。在设计中我们采用了小巧灵活的嵌入式SQLITE数据库对系统的设置和运行现状进行了存储和记录。下面分别讲述了控制器和管理机两部分的功能模块设计方式。第二章系统的总体设计232控制器软件的功能模块设计及架构设计根据用户的需求,我们将控制器软件的功能进行了划分,如图22所示。主要分为以下几个模块与管理机通信模块、属性设置模块、读卡验证模块、密码验证模块、门禁处理模块、报警处理模块和事件记录模块,分别实现了以下功能。1与管理机通信模块通过WIFI、以太网和ZIGBEE通信方式来实现控制器与管理机的通信,用来接收管理机向控制器发送的的设置信息和升级等操作信息,控制器出现异常触发报警操作时能将报警信息及时上传给管理机,方便管理员对控制器进行实时监视。2属性设置模块当管理机有设置信息发送到控制器时,控制器要对收到的信息进行处理,在判断收到的信息合法后将信息存储到数据库,并将处理状态应答信息回传给管理机。3读卡验证模块用户在控制器的读卡器处刷15693、14443TYPEA和14443TYPEB的任意一种卡后,控制器要能自动识别出卡片类型并读出卡片的信息,在将卡信息与数据库中存储的信息进行比对后根据用户的权限做出相应的处理。4密码验证模块用户在小键盘处输入编号和密码后,控制器软件根据读到的信息进行数据库信息查询并根据数据库中存储的用户权限做出处理。5门禁处理模块用来处理按钮开门、门的定时打开、门的定时和延时关闭操作。6报警处理模块当控制器端的烟火警、红外报警、防拆报警或门磁报警触发时,软件要能对这些信息进行判断和处理,在将报警信息上传的同时还要保存到控制器端数据库。7事件记录模块记录用户开门等考勤信息和控制器的异常触发信息等。图22控制器功能模块设计图为了实现上述功能,我们采用了下面的方式对控制器软件进行架构设计。如图23所示,本文采用硬件层、驱动层、接口层和应用层四层结构对控制12_二代证门禁控制系统软件的设计与蜜现器软件进行设计。其中,硬件层涵盖了所有的硬件设备;驱动层则包括了1JNUX内核、文件系统和设备驱动接口层则包括了对应用程序的接口和所有的接收到信息的处理模块;应用层是主程序,它通过对接口的调用来实现整个系统的门禁管制功能。在接口层中,中间层实现了从控制嚣上接收到的所有信息的处理。在该层的设计中,我们按照设备类型对上述功能进行了优化。优化后的中间层包括进程间通信处理、输入输出设备信息处理、小键盘输入信息处理、读卡信息处理、数据库操作处理、网络通信处理等几个处理模块。其中的主要的逻辑处理部分为输入输出设备信息处理、小键盘输入信息处理、读卡信息处理和网络通信处理,这四部分的使用完成了门禁控制的主要功能。脚川“接口层_0_一一“圃圃碰件盛硬件醴备图2,控制器软件框架设计233管理机软件的功能模块设计管理机软件主要实现了五部分功能控制器信息设置、用户信息管理、系统更新、管理员信息管理和信息记录。管理机功能模块的划分如图24所示。具体功能如下1控制器信息设置主要是对控制器配置、输入输出端口、分区、房间属性和用户权限信息的设置。2用户信息管理用来添加、修改、删除用户的权限信息。本设计中,在管理机端不是采用写卡器将用户信息写入卡的方式,而是通过将用户卡号与用户权限信息进行绑定的方式来进行用户信息的管理。因此在添加用户信息时将卡号与用户权限信息进行绑定后保存到管理机端数据库的同时下传到控制器端,修改和删除用户信息则是根据用户的编号来进行用户信息管理的。一_至一第二章系统的总体设计3系统更新主要是进行系统的远程升级。当新版程序出现后,系统需要对控制器进行升级。这时,为了方便系统操作,要求能通过管理机端将新程序下载到控制器上,控制器端在完整接收后自动启动新的程序。4管理员信息管理该模块可以用来修改管理员的帐号和密码等信息。为了增强系统的安全性,管理员需要输入帐号和密码才能登陆进而对控制器的信息进行管理。5信息记录用来接收控制器上传的报警等信息。当控制器有报警触发的时候,管理机要能及时的接收到控制器端发送的信息并将信息无误的显示的界面上,使得管理员能正确识别出报警触发的情况。图24管理机功能模块设计24系统数据库设计在本系统中我们需要将系统的配置信息及系统的运行状况记录下来,这就要求我们选择一款适用于本系统的数据库软件,并进行数据库的设计。嵌入式系统开发环境决定了运行在嵌入式系统上的数据库软件的特点,该款数据库软件必须体积小、功能强、速度快、源码开放。SQLITE是一款可在嵌入式LINUX系统下使用的数据库软件,它具有简单易学、速度快、提供丰富接口、体积小的特性,而且它是开源的软件。因此,我们这里选用了嵌入式数据库SQLITE来进行的数据的管理。241数据库的设计依据【4】数据库模式是对数据库从逻辑上的总体描述,模式设计的结果直接影响着数据库的性能。为了系统、简便的设计出具有优良性能的数据库模式,EFCODD于1971年首先提出关系模式的规范化问题。就目前的研究结果和按照关系模式所达14二代证门禁控制系统软件的设计与实现到的不同的约束条件可将关系模式划分为非规范化、第一范式1NF、第二范式2NF、第三范式3NF、BC范式BCNF、第四范式4NF、第五范式5NF几种形式。下面分别介绍这些概念。当我们将现实世界的多种实体及其联系用关系的形式来表示时,这种关系通常是非规范化的。在一个关系模式REL中,如果REL的每个属性对应的域值都是不可再分的,则称REL属于第一范式。如果关系模式属于第一范式,且其中的各非主属性都完全依赖于它的候选键,着这个关系模式属于第二范式。如果一个关系模式属于第二范式,并且每个非主属性都不传递依赖于它的每一个候选键,则称这个关系模式属于第三范式。给定关系模式REL,当且仅当REL中的每个决定因素都是REL的候选键时,则称这个模式属于BC范式。给定关系模式REL,当且仅当REL中存在一个多值依赖A一一B,且REL的其他所有属性都函数依赖于A时,则称REL属于第四范式。给定的关系模式REL,当且仅当R中的每一个连接都被R的候选键所隐含时,REL属于第五范式。其中,处于第三范式的关系模式消除了非主属性和主属性间的部分依赖和传递依赖,解决了存储异常问题,一般情况下能满足实际应用的要求。因此,本系统采用了第三范式设计模式来进行数据库设计。242数据库结构在综合考虑了系统的执行情况和运行效率的前提下,根据第三范式的关系模式对系统数据库进行设计后,我们得出了如下系统几个数据库控制器配置信息数据库TBLCONTR011ER、输入端口属性数据库TBLJNPUT、输出端口属性数据库TBLOUTPUT、房间属性数据库TBLDOOR、分区属性数据库TBL一DEFEND、用户属性数据库TBLUSER、已发送考勤记录数据库TBL一RECORDED、未发送考勤记录数据库TBLRECORDUN、已发送事件记录数据库TBL一EVENTED、未发送事件记录数据库TBLEVENTUN。具体如下所示。1输入端口属性数据库输入端口数据库属性包括输入端口编号、端口类型等,具体如表21所示。2输出端口属性数据库输入端口数据库属性包括输出端口编号、端口类型等,如表22所示。3用户信息数据库用户信息数据库具体属性如表23所示。第二章系统的总体设计表21输入端口数据库字段名类型长度缺省值备注NOINTEGER输入端口编号主键USEFLAG玎QTEGER启用标志TYPEINTEGER端口类型DELAYTIMEN、ITEGER输入延时时间DEFENDN、ITEGER分区号0不属于任何分区DOORINTEGER门号O不属于任何门;1属于门L2属于门2表22输出端口数据库字段名类犁长度缺省值备注OUTPORNOINTEGER输出端口编号主键USEFLAGRNTEGER启用标志TYPERNTEGER端口类型DELAYTIMEINTEGER0输出延时时间0端口输出不关闭;NN秒后关闭端口输出表23用户信息数据库字段名类型长度缺省值备注NOINTEGER序号FAIG烈TEGERL标志0暂停,L启用,2挂失CARDIDTEXT8卡号主键USERNAINETEXT2用户姓名DOORNOTEXTL有权限的门号ENDDATETEXT10有效期4控制器配置信息数据库包括控制器编号、控制器序号、支持通信方式、当前通信方式、是否加密、密钥、主机IP、支持读卡类型、定时上传考勤时间等属性。5房间属性数据库包括启用标志、电锁输出端口、所属分区、定时开门时间等属性。6分区属性数据库包括分区启用标志、分区类型、报警输出端口,分区布防标志等属性。7已发送考勤记录数据库包括用户刷卡时间、用户编号、用户类型、门号等属性。用来记录已成功发送的信息。8未发送考勤记录数据库同上,用来记录当前未向管理机发送的考勤记录,控制器会每天在一个固定的时间向管理机发送该数据库信息。9已发送事件数据库16二代证门禁控制系统软件的设计与实现包括触发时间、事件类型、触发端口号等,用来记录成功发送的事件信息。LO未发送事件数据库同上,用来记录由于通信出现问题而未能及时向管理机发送的监视信息,这些信息将在下一次传送考勤记录后发送给管理机。25通信报文格式在本系统中,我们采用了WIFI、以太网、ZIGBEE三种通信方式看来实现控制器与管理机的通信,下面,分别介绍这三种通信方式采用的通信协议。因为以太网和WIFI都采用了TCPIP通信协议,因此下面介绍ZIGBEE和TCMP这两种协议的通信报文格式。251通信方式为了保证信息传输的可靠性,在通信中采用了二次通信的方式,首先发方将信息按通信协议组帧后通过通信接口传输给接收方并开始等待接收方的应答,接收方收到信息后要将处理结果传给发方,若在一定时间内发方未等到收方的应答,则视为发送失败,这时发方要将消息重新发送。2。52基于ZIGBEE协议的通信报文格式1发送方发送信息发送方发送命令的格式如表24所示。表24ZIBBEE通信发方发送信息序号字段名称取值范围长度字段说明LSTART0X7EL字节起始位2LENOEH56H2字节长度3ZBCMDOXL01字节命令4ID任意1字节封包ID5ADD8字节硬件地址6IP2字节网络地址7RADIUSOX00L字节“播半径8SELECT0X00L字节多播选项9CMD0LH53H1字节命令号10DATAXX待定数据11CKSUMXXHL字节校验位说明START在将消息组帧发送的时候,值为0X7E。LEN为不包括起始位、数据长度位和校验位的数据的长度。ZBCMDAPI指令,0X10表示ZIGBEE传输请求。第二章系统的总体设计17ID用来识别返回的响应是否是针对发出的,数值可任设,当设为“O“时则不发送响应。ADD是收端的硬件地址,高位在前,低位在后。发送广播时为0X000000000000FFFF。IP是收端的网络地址,高位在前,低位在后。当不知道网络地址时,设成0XFFFE,模块会用广播自动获取网络地址。之后,发端就知道了收端的IP,以后再发的时候IP即为接收端的IP。RADIUS设置广播传输的最大跳数,设为“0”时传输半径为最大值10SELECTED设为OX08时发送多播传输,其余情况都为“O”CMD为操作指令表中对应的命令的值,具体值见表25,该命令格式为ZIGBEE、WIFI和以太网通信方式通用的指令集。表25通信参数指令表1设置指令特征值设置指令特征值控制设备通信检测0XOL设备初始化0X02器基读取设备软件版本OX03控制器配置OX04本参设备复位OX05关闭连接OX06数设定时时间0XLO设置控制器硬件序列号OXLL置控制器读卡类型设置0X12设置设备网络通信参数OXL3设置设备时钟0X14读取设备网络时钟OXL5设置通信加密信息0X16设置维修标志0X17设置LCD参数0X18设置小键盘参数OXL9下传配置信息文件OXLA软件升级OXLB2端口设置输入端口属性021设置输出端口属性0X22参数设置门属性OX23设置分区属性0X24设置设置布防状态OX253实时设置输出端口状态0X31读取输入端口状态0X32监控报警信息监视0X334用户增加用户资料0X41修改用户资料OX42管理删除用户资料OX435记录考勤记录定时上传OX5L删除考勤记录0X52收集删除事件信息0X4LDATA为发端欲传往收端的内容,组成方式为数据类型加上数据内容组成。DATA数据报内容数据类型1一个字节数据内容118二代证门禁控制系统软件的设计与实现数据类型N一个字节数据内容NCKSUM校验和的计算不包括起始符号7E和数据长度部分,即只需计算封包数据FRAMEDATA部分。CKSUM校验方法发送时,将封包数据部分以字节为单位相加,最后的和取最低8位一个字节,再用FF减去,得到的结果就是校验和数据。接收模块接收到数据后将封包数据和校验和相加,结果为FF就认为传输无错,若不为FF会将结果丢弃,由发送端自动重传,故只要是收端接收到的信息一定是通过了ZIGBEE校验的。校验和计算方法如下所示VOIDCKSUMBYTESUM,BYTE木BU虢R,INTLENBYTEDATA0X00FO“INTI3;I1;IFNAGCODEPOLY;NAG0;PBYF眦LE;毒BYCLCODE0XOOFF;搴BYCRC1CODE0XFFOO8;RETUM;,2收端发送的响应信息收端在对收到的信息进行处理后,将处理结果发送给命令请求端。组帧格式如表210示。表210收端发送相应信息序号字段名称取值范围长度字段说明1LEN00。FFH1字节报文长度2STU01H53HL字节状态值3DATAXXN字节数据包4CRCSUMXXXXH2字节校验值说明STU表征的是执行结果,详细见表28。第三章系统的详细设计2L第三章系统的详细设计本门禁控制系统由控制器和管理机两部分组成,管理机主要用来进行控制器的信息设置和门禁系统运行状态的监视,门禁管制功能主要在控制器部分内完成。因此,这里主要讲了控制器软件的主流程和其中功能模块的详细设计与实现。31控制器软件设计在门禁控制器的软件设计中,本系统采用了多进程、多线程的方式来实现系统的功能。其中,多进程方式的采用是用来实现控制器软件的升级,父进程仅用来启动和杀死逻辑处理子进程,系统大多数功能都是在逻辑处理子进程实现的。当子进程收到升级命令时,在完整的新版的程序接收成功后,将发送重新启动子进程信号到父进程,父进程在接收到重启子进程的信号后将杀死子进程并重新启动新版程序。父进程工作流程如图31所示。图31父进程工作流程图其中,软件升级是指在获得新版的控制器运行软件后,将原来的程序杀死,并启用新版的软件。软件升级程序的注册是将一个信号和软件升级程序绑定在一起,绑定之后当父进程收到子进程发送过来的升级信号后将执行软件升级程序中的命令来杀死原来的子进程并运行新的子进程程序。在逻辑处理子进程的设计中,为了实现用户所需要的功能,我们按照设备类型来优化后的软件主要分为以下四个模块控制器初始化设计、通信模块设计、刷卡和密码开门处理以及输入输出端口处理。下面,介绍逻辑处理子进程的工作流程,该进程采用多线程处理的方式实现了本系统的逻辑功能。该线程为主线程,通过为通信模块、刷卡和按钮开门模块及输入输出端口处理模块创建处理线程的方式来将各个模块组织起来,其工作流程如图32所示。二代证门禁控制系统软件的设计与实现图32逻辑处理主进程流程图由于父进程只有当管理机对控制器进行升级且控制器完全收到新程序后将升级命令发出的时候才用到,主要的逻辑处理都是在逻辑处理进程里实现的,因此,我们在这里控制器软件设计部分主要讲逻辑处理进程的四个模块的设计与实现。311控制器初始化模块在控制器启动后,系统将自动加载内核和文件系统,加载成功后将自动运行控制器端应用程序。这时,为了使系统能够按照指定的配置运行,首先需要初始化控制器软硬件配置。这里,将按照数据库的存储信息或默认配置来初始化系统的配置。初始化系统的过程如图33所示。首先,若要根据数据库进行初始化配置,需要存在这个数据库。创建前需要检测指定位置是否存在一个保存了系统配置的数据库,如果存在的话可以直接进入下一步的初始化系统的配置部分,如果不存的话,则需要根据之前设计的数据库格式和系统的默认配置来创建一个数据库,使得系统能够在默认配置的情况下正常运行起来。其次,要根据数据库中的信息初始化系统配置,例如控制器基本属性、输入端口、输出端口、门和分区等信息,在成功的初始化配置之后,系统即可以根据当前的配置来进行正确的处理和判断,第三章系统的详细设计如果初始化失败的话则需要退出系统。第三,创建系统运行中需要调用和处理的设备文件句柄,包括输入输出设备文件、看门狗、小键盘、LCD设备,失败则退出系统,句柄创建成功之后,就可以像对文件操作一样对设备文件进行读写操作了。最后,所有配置初始化成功之后,将系统所有独立分区的门关闭,以确保系统启动后非法人员不能自由出入控制区域。图33初始化系统系统实现过程中调用的函数如下所示创建数据库函数硫CREATELABLEVOID初始化系统基本配置信息函数VOIDINITSYSVOID初始化系统设备文件信息INTINITIOVOID关闭系统所有门VOIDCLOSEDOO“VOID312通信处理模块为了方便用户在不同的通信条件下能够进行控制器与管理机之间的通信,本系统中实现了三种方式的通信以太网方式、WIFI方式和ZIGBEE方式,其中后两种是无线通信方式。管理员可以根据实际情况在系统初始运行的时候选择当前控制器需要使用的网络通信方式,选择完成后控制器就能及时的切换到新的通信方式下,随后的通信就是新的通信模式下的通信。下面分别介绍这三种通信网方式的实现情况。首先我们将介绍控制器在通信过程中是如何选择采用哪种通信方式与管理机进行通信的,选择方式如图34所示。24二代证门禁控制系统软件的设计与实现控制器运行的所有信息在配置信息数据库中都有存储,当前控制器采用的通信方式也保存在控制器基本信息数据库中保存,这时我们仅需要根据数据库中保存的当前采用通信方式来选择需要调用的通信模块即可。开始获得当前使用通信方式删F氯;苫、奎争Q芝要少ZIGBEER上以太网上WIFIZIGBEE通信模块以太网通信模块WIFI通信模块1箜他式刊铀I7L奇1寸D钞WJ1图34通信模块的选择模块的选择过程如上图所示,在控制器软件运行过程中,通信模块是始终运行的,中间出现通信方式的变换后,系统要能自动的结束原来的通信模式,切换到新的通信模式下,这里,我们采用了一个WHILE循环来完成这一转换。当通信方式改变后,结束原来通信方式,进入下一次通信模块的选择,这样就自动的完成了通信模式的转换。其中,调用的函数如下所示INTC伽DEALVOIDZIGBEE通信处理模块,ZIGBEE无线模块通过串口与控制器相连。通过对ZIGBEE设备旬柄进行读取操作来完成对管理机发送过来信息的读取,之后需要对收到的信息进行处理。同理,将信息按照第二章第五节的ZIGBEE通信报文格式将信息进行组帧后,将信息发送到ZIGBEE串口设备句柄,即可完成信息的发送。INTNETDEALVOID以太网通信处理模块,通过网口将控制器与交换机相连,初始化系统的IP后,即可用来实现通信。该通信是通过采用TCP协议的SOCKET编程来实现的。INTWIFIDEALVOIDWIFI通信处理模块,WIFI无线模块通过USB口与控制器相连。按照WIFI特有的初始化IP的方式,可以将控制器和管理机通过局域网连接起来。WIFI模块也是通过SOCKET编程来实现控制器和管理机问通信的。在正确的选择控制器采用的通信方式和处理函数后,即可进行通信了。下面我们将分别介绍这三种通信方式。1ZIGBEE通信模块1ZIGBEE基本信息介绍第三章系统的详细设计本模块的无线数据传输中,我们采用了一款基于ZIGBEE802154网络的、能提供可靠无线数据传输的通信模块XBEEOEMRF模块。此XBEE模块具有高无线性能、高性价比和结构紧凑的特点,是理想的无线数据传输应用解决方案。用户可以选用802154或ZNET25模块实现点对多点或者无线网状网拓扑。其中,模块的802154固件使之成为点对点、对等和点对多点星形拓扑的理想选择,可提供对网络节点的最大控制能力和最小时延;ZNET25模块则提供了实现无线自动路由、组成自愈网络完成路由器和低功耗终端设备的所有功能。鉴于ZNET25模块模块具有低功耗、低成本、低速率、短距离、高容量、高安全和免执照频段的特点,我们这里采用的是ZNET25模块来实现本系统的无线数据传输。它提供了以下功能提供了简单的AT命令或者API函数实现高级的用户配置,全球通用的24GHZISM频段实现可靠的无线数据传输,具有低功耗的休眠模式,户内传输距离为40米,户外为100米。2ZIGBEE通信的设计ZIGBEE模块的设计如图35所示,这里的通信,主要用来接收和处理管理机端发送过来的控制器配置信息。因此,第一步要创建ZIGBE

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论