门禁系统的读卡控制器设计.docx
《门禁系统的读卡控制器设计.docx》由会员分享,可在线阅读,更多相关《门禁系统的读卡控制器设计.docx(32页珍藏版)》请在冰豆网上搜索。
门禁系统的读卡控制器设计
门禁系统的读卡控制器设计
——总体方案设计和ds1991接口电路设计
1引言
1.1概述
21世纪是科学技术日新月异、飞速发展的信息时代。
当感受着高科技给我们带来的方便和益处的同时,人们对于高科技服务于生活的要求也越来越高。
但随着科技的发展,也带来了许多不安全的方面。
例如,运用高科技手段进行的盗窃、抢劫和间谍等犯罪行为日益增多。
怎样才能使人们的安全防范措施跟得上科技的发展、更有效的阻止这些犯罪行为的侵犯呢?
仅仅依靠普通的门锁、防盗门或者监控、报警等系统是不够的。
于是,智能门禁系统在千呼万唤中应运而生。
本次毕业设计以DS1991加密存储卡为基础实现门禁读卡控制器的设计。
1.2本设计的主要内容
[1]门禁读卡控制器样机设计
[2]储100张有效识别卡
[3]用户卡注册,注销及对用户信息查询
[4]CAN/RS-485
针对上述设计任务,我们确定了本次设计的工作流程,先总体方案设计再做软硬件设计,最后进行总体调试、样机组装、性能测试。
在本次毕业设计中,我主要负责总体方案设计。
2总体方案设计
2.1设计思想
本门禁控制系统的设计以一线制(1-wire)加密存储卡ds1991为基础,以高性能单片机系统为控制核心,以CA总线为纽带实现下位机与上位机的相互通信,以电磁锁、读卡器、功放电路等为外围的硬件系统。
在检测与控制软件的支持下实现对电磁锁的开与关,当检测到有卡接触时,读卡控制器对卡进行识别和认证,未经注册或被注销的卡被视为无效的卡。
外来人员(不具备识别卡)可以通过
门铃通知室内人员等待开门(通过CA总线把开门请求命令上传上位机。
管理员通过P(机VB软件发开门指令,其中CAN和PO间通过RS23进行协议转换)。
本门禁控制系统实现以下功能:
键盘可以实现对识别卡注册、注销、对系统的时间进行设置,以及对用户进入信息的查询。
门禁控制系统总体结构如图2-1所示。
1#N#
图2-1门禁控制系统总体结构
2.2器件选型
2.2.1选型概述
在本次设计中我们以设计稳定可靠和使用方便为前提,进行器件的选择。
智能门禁控制系统和传统的门禁系统相比,主要体现在:
(1)开门人性化,即不需要手持锁开门,通过识别卡(有接触式的,非接触式的两种)或者直接输入密码进行开门。
(2)安全性高,即开门需要通过密码验证或者识别卡验证,当验证通过后,然后输入密码正确方可进入。
2.2.2识别卡一一芯
本次设计识别卡的选型尤为重要,它是整个系统的“芯”,要求它稳定可靠,耐用,当然要同时具有使用方便和开发容易。
识别卡主要有两种:
接触式和非接
触式,非接触式的通信方式主要为无线传输方式,若采用非接触式识别卡,首先
价格高于接触式的,其次开发难度大。
根据以上对比我们选择使用接触式的识别卡,接触式的识别卡种类繁多,类新多样,进过一步一步筛选我们最终选择了ds1991.DS1991是Dallas公司的1-wire总线信息纽扣家族中的一员,是一种加
密存储器型信息纽扣。
它内部集成了1Kbit的非易失性存储器及加密保护逻辑,圭寸装于直径为16mm厚约6mm的不锈钢外壳中,体积小巧、操作便捷、防潮、抗震、防灰尘,可在恶劣的环境中实现带密码保护的数据传送。
223微控制器------核
常见的微控制器有单片机、ARMFPGA等。
选择微控制器要根据系统设计需
求,要考虑价格,开发难易程度等。
ARM是嵌入式微控制器,资源多使用方便,
但是我们以前未接触过ARM需要一个学习阶段,这样就加大了难度,而且这个系统用8位的单片机就可完成,所以我们未采用ARM进行设计。
FPGA属于可编程
123
逻辑门阵列,开发难度大,没有单片机使用方便灵活。
而单片机则具有使用方便,技术成熟,价格便宜等特点。
理所当然我们选择了单片机作为门禁控制系统的微控制器。
然而单片机的类型也是种类巨多,常见的有51系列、PIC系列、AVR
系列等。
其中51系列开发容易,使用方便。
我们选择的ATME公司的AT89S52单片机,如图2-2所示,他是一种低功耗、高性能CMOS位微控制器,具有8KISP(在系统可编程)Flash存储器。
使用Atmel公司高密度非易失性存储器技术制造,与工业80C51产品指令和引脚完全兼
容。
片上Flash允许程序存储器在系统可编程,亦适于常规编程器。
在单芯片上,拥有灵巧的8位CPU和在系统可编程Flash,使得AT89S52为众多嵌入式控制应用系统提供高灵活、超有效的解决方案。
AT89S52具有如下特点:
♦兼容MCS-51指令系统
♦32个双向I/O口
♦3个16位可编程定时/计数器
♦全双工UART串行中断口线
♦2个外部中断源
♦中断唤醒省电模式
♦看门狗(WDT电路
♦灵活的ISP字节和分页编程
♦4.5-5.5V工作电压
♦时钟频率0-33MHZ
图2-2AT89S52单片机
♦256x8bit内部RAM
♦低功耗空闲和省电模式
♦3级加密位
♦软件设置空闲和省电功能
♦双数据寄存器指
♦8k可反复擦写(>1000次)ISPFlashROM
任何有关单片机的设计都是从他的最小系统开始的,最小系统是个基础,其
他应用电路设计是建立这个基础上的。
这里的最小系统仅
指最简单的那种,包括单片机、时钟电路、复位电路和ISP
{5CKJP1.7
公口
GUO
下载口(如图2-3),其中ISP下载是为程序调试方便而设
lMIS01Pi.fi
•口
VCC
计的,同时也方便了日后的升级。
本系统虽然也有键盘和
■k1
eU
NC
显示电路,但是他们相对还是比较复杂的,因此没有将他
比
们放到最小系统的设计当中,而是作为单独的应用电路设
iUDSI.P1.5
p
io□
计的。
图2-3ISP
下载口
2.2.4通信方式纽带
此处的通信方式主要指:
下位机(门禁控制器)与上位机(PC)之间的数据通信方式。
考虑到上位机与下位机之间的距离有长有远,常用的通信方式有
RS-232,RS-485,CAN总线等。
[1]RS-232总线最佳传输距离15m满足不了本次设计。
[2]RS-485总线在要求通信距离为几十米到上千米时,广泛采用RS-485串行
总线标准。
RS-485采用平衡发送和差分接收,因此具有抑制共模干扰的能力。
加上总线收发器具有高灵敏度,能检测低至200mV勺电压,故传输信号能在千米以外得到恢复。
RS-485采用半双工工作方式,任何时候只能有一点处于发送状态,因此,发送电路须由使能信号加以控制。
RS-485用于多点互连时非常方便,
可以省掉许多信号线。
应用RS-485可以联网构成分布式系统,其允许最多并联32台驱动器和32台接收器。
[3]CAN总线具有十分优越的特点,其特点可概括如下:
CAN是到目前为止唯一有国际标准的现场总线;
CAN采用多主方式工作;
CAN的直接通信距离最长可达10km(速率5kbps以下),通信速率最高可达1Mbps(此时通信距离最长为40m;
在报文标识符上,CAN±的节点分成不同的优先级,可满足不同的实时需求;
CAN采用非破坏总线仲裁技术,优先级低的节点会主动地退出发送,而最高优先级的节点可不受影响地继续传送数据,从而大大节省了总线冲突仲裁时间;CAN的每帧信息都有校验及其他检错措施,具有极好的检错效果;
CAN节点在错误严重的情况下具有自动退出总线的功能;
报文不包含源地址或目标地址,仅用标识符来指示功能信息、优先级信息;
SJA1000是一个独立的CAN控制器,它在汽车和普通的工业应用上有先进的特征。
由于它和PCA82C在硬件和软件都兼容,因此它将会替代PCA82C20QSJA1000有一系列先进的功能,适合于多种应用,特别在系统优化诊断和维护方面非常重要。
利用51系列单片机和CAN控制器,SJA1000很容易实现CAN总线数据通信,然后同RS-232转换传送到PC机。
2.2.5器件选择总结
至吐匕门禁控制器的总体框架基本形成了,如图2-4所示,至于其他外围器
件(如ds1339,zlg7290等)的选型将在下一章硬件电路设计中详细介绍。
存储器时钟键盘
图2-4门禁控制器的总体框架
2硬件电路设计
2.1电源模块
设计了两套直流稳压电源,一套为单片机及其外设提供工作电源,另一套为电磁锁供电,两套电源分开,可以提高系统工作的稳定性。
3.1.1芯片供电模块
该电源按常规设计,即用降压变压器把220V市电变成较低的交流电,再通过整流桥将交流变为直流,并上电容滤波再接入7805和7812稳压块稳压,从而得到5V,12V的电压源。
3.1.2电磁锁供电模块
12
由于电磁锁瞬间吸合电流很大(1A以上),在变压器选型时,选了一个35W
的变压器以满足要求,电磁锁工作电压12V。
vcc
3.2
图3-1加密存储卡接口电路
加密存储卡接口电路
DS199伪一线制加密存储芯片,纽扣电池形状如图3-1所示外圆为地线,内圆为数据线数据端口DAT与单片机P1.0相连,如图3-1所示。
3.2.1DS1991的简介
DS199采用1-wire总线协议同外部进行数据交换,使用时只需要一根地线,一根数据线,在接触单片机系统采集数据的接口时,DS199能提供一个低电平,
这个电平可以用来提供作为中断信号,单片机系统需要提供给DS199一个复位信号脉冲,DS199接收这个信号后会返回一个就绪信号脉冲,完成这个复位过程后
DS199伺单片系统才开始数据传输。
3.2.2DS1991的功能特性
安全可靠的1,152位的读/写、非易失存储器
若64位密码不匹配,则安全存储器不会被译解
存储器被分成3个分区,每分区包含384位
每个分区都有64位的密码和识别码
512位的暂存器确保了数据传送的完整性
工作温度范围:
-40°C至+70°C
12
数据可保持10年以上
工作电流范围:
15〜30mA
3.2.3iButton概述
多密钥iButtonDS1991是进行读/写操作的数据载体,它有三个独立的电子密钥,提供1152位安全、非易失存储器。
每个密钥分区包括384位,具有独立的64位密码和公共识别区,密码区必须匹配才能访问安全存储器。
数据按照1-Wire协议传输,只需单条数据线和地回路。
512位的暂存器能够保证安全存储器的数
据完整性。
数据首先写到能读回的暂存器,数据被校验确认后,发出复制暂存器命令,以便将数据传送到存储器,这个过程确保了在改变存储器内容时的数据完整性。
每片DS199内部都有在工厂光刻的48位序列码,为唯一的身份验证提供了保证,也确保了可绝对跟踪功能,DS1991的家族码是02耳由于iButton采用了
MicroCan封装,所以具有防尘、防潮、抗震等特性,适用于在恶劣环境中工作。
另外,工程技术人员操作起来也很方便。
DS199紧凑的纽扣外型使其可以自动对准相应的接收器。
与DS199配套的附件使其可以装在塑料钥匙环上,图像身份证
上,印刷电路板或任何其它表面平滑的物体上。
应用领域包括:
安全访问控制、银行存储借贷信息、工作进程的跟踪、旅行者的电子支票和私有资料的保存等。
DS1991操作方式是以1-Wire协议为基础用一根数据线来传输数据。
总线上的主机必须首先发出四条ROM功能命令:
(1)ReadROM2)MatchROM3)SearchR0(4)SkipROM这些命令作用在每个器件的64位光刻ROM代码,以此能检测到目前1-Wire总线上有无特定的从机设备,如果总线上有多个设备,则可检测出这些从机设备的数目及其类型。
一条ROM功能命令执行完后,可实现作用在安全存储器和暂存器上的存储功能,总线上的主机会发出6条存储器功能命令中的任意一条来检测DS1991所有数据的读写操作都由最低有效位起始。
DS199侑6个特定的设备检测命令,包括3个中间结果暂存器命令:
WriteScratchpad、ReadScratchpad和CopyScratchpad;还有3个子密钥命令:
WritePassword、WriteSubkey和ReadSubkey。
当选中某个从机设备后,存储器功能命令就会写入DS1991中。
这些命令由三段组成,每段长为一个字节;第一个字节为功能代码段,它定义了6个可执行的命令;第二个字节是地址段,其中的前六位定义了命令的起始地址值,后两位是子密钥的地址代码;命令的第三个字节是第二个字节的补码。
初次使用时,无法确定存储在从机设备里的密码,所以需要先对DS1991进行初始化。
初始化时对选定的子密钥区利用WritePassword
命令直接写入新的识别码和密码(而不必通过暂存器),一旦新的识别码和密码存入从机设备里,再进行修改时,就要通过暂存器。
3.3电磁锁控制接口电路
电磁锁为工作电压范围9-12v,加电后电磁锁即可实现开门。
对电磁锁控制采用如图3-2所示电路继电器吸合后12v直流电压便加到电磁锁上。
单片机I/O口P2.7控制三极管导通实现继电器的吸合,当P2.7置1时,三极管导通,当P2.7置0时,三极管截止。
VCC_12V
图3-2电磁锁控制接口电路
3.4键盘接口电路
键盘接口芯片采用zlg7290ZLG7290最多可外接64个按键,本系统只用到16个按键,用单片机I/O口P2.3和P2.4分别与SCL和SDA相连以模拟IIC总线时序来对ZLG7290进行键值读取。
当有键按下时,ZLG7290中断输出脚输出底电平触发单片机进行键值处理。
ZLG7290B是广州周立功单片机发展有限公司自行设计的数码管显示驱动及
键盘扫描管理芯片。
能够直接驱动8位共阴式数码管(或64只独立的LED,同时还可以扫描管理多达64只按键。
其中有8只按键还可以作为功能键使用,就像
电脑键盘上的Ctrl、Shift、Alt键一样。
另外ZLG7290B内部还设置有连击计数
器,能够使某键按下后不松手而连续有效。
采用I2C总线方式,与微控制器的接口仅需两根信号线。
该芯片为工业级芯片,抗干扰能力强,在工业测控中已有大量应用。
3.5存储接口电路
3.5.1电路介绍
存储接口电路(如图3-4所示)
图3-4存储接口电路
采用IIC总线传输24C256占用单片机I/O口少,可以与键盘接口芯片,时钟接口芯片挂在同一总线上,可以达到节省I/O口资源,而且使用方便。
存储128个识别卡的信息。
用户卡信息全部存储在24C256中,及用户进入时间
3.5.224C256简介
2CAT24WC2是一个256K位串行CMOS2PRO,内部含有32768个字节,每字节
为8位。
CATALYS公司的先进CMO技术实质上减少了器件的功耗,CAT24WC256
有一个64字节页写缓冲器。
3.5.3存储器24C256的功能特性与1MHzI2C总线兼容
1.8到6.0伏工作电压范围
低功耗CMO战术
写保护功能
64字节页写缓冲器
自定时擦写周期
100,000编程/擦写周期
可保存数据100年
8脚DIPSOIC封装
温度范围商业级工业级和汽车级
3.6时钟接口电路
时钟电路如图3-5所示,时钟接口芯片种类繁多,有并行的也有串行的。
为了节省I/O口资源,时钟芯片采用l2C串行接口芯片ds1339c,由于有的时钟芯片需要外接
晶振,市场上卖的晶振质量良莠不齐,买来后时钟芯片不能起振,所以我们采用内置晶振的ds1339c,ds1339cSOC-16封装,外接备用电池,当系统掉电后,ds1339c通过电池供电,可以正常工作。
需要用到时间时,执行读ds1339c即可。
VCC
时钟电路
图3-5时钟接口电路
3.6.1DS1339的简介
DS133串行实时时钟(RTC)是低功耗的时钟/日历芯片,具有两个可编程日历闹钟与一路可编程方波输出,地址与数据通过i2c总线串行传送。
时钟/日历可以提供秒、分、时、日、月、年信息。
对于少于31天的月份,到每月的最后一天会自动进行调节,包括闰年修正。
该时钟可以通过AM/P指示器工作在24小时模式
或12小时模式。
DS133具有一个内部电源感应电路,可以检测到电源失效,并自动转换到备用电源
3.6.2DS1339的功能特性
实时时钟(RTC)记录秒、分、时、星期、日、月、年信息,具有有效至2100
年的闰年补偿
内置晶振(DS1339C),采用表面贴封装
I2C串行接口
2个日历闹钟
可编程方波输出
振荡器停止标志
自动电源失效检测与转换电路
提供涓流充电
通过UL认证
3.7CAN总线接口电路
CAN总线控制器采用SJA1000CAN收发器采用PCA82C250使用时注意
SJA1000是底电平复位,晶振匹配电容为15PF,使用时在CAN-H于CAN-L之间并联120电阻以实现阻抗匹配。
丄Y2
16M
C3
CAN总线电路
图3-6CAN总线接口电路
3.7.1CAN总线介绍
CAN(ControllerAreaNetwork)总线又称控制器局域网,是Bosch公司
在现代汽车技术中领先推出的一种多主机局部网。
由于其卓越的性能极高的可靠
性独特灵活的设计和低廉的价格,现已广泛应用于工业现场控制智能大厦小区安防交通工具医疗仪器环境监控等众多领域,CAN已被公认为几种最有前途的现场总线之一。
CAN总线规范已被ISO国际标准组织制订为国际标准,CAN协议也是建立在国际标准组织的开放系统,互连参考模型基础上的主要工作在数据链路层和物理层用户可在其基础上开发适合系统实际需要的应用层通信协议,但由于
CAN总线极高的可靠性从而使应用层通信协议得以大大简化。
CAN总线与其它几
种现场总线比较而言是最容易实现,价格最为低廉的一种,但其性能并不比其它现场总线差,这也是目前CAN总线在众多领域被广泛采用的原因。
节点是网络
上信息的接收和发送站。
所谓智能节点是由微处理器和可编程的CAN控制芯片
组成,它们有两者合二为一的如芯片P8XC592也有如本文介绍的独立的通信控制芯片与单片机接口,后者的优点是比较灵活,当然也有不要微处理器的节点。
下面以CAN®信控制器SJA1000为例,对CAN总线系统智能节点硬件和软件设计作一个全面的介绍。
3.7.2通信控制器SJA1000功能简介
CAN的通信协议主要由CANS制器完成,CAN控制器主要由实现CAN总线协议的部分和实现与微处理器接口部分的电路组成。
对于不同型号的CAN总线通信
控制器实现CAN协议部分电路的结构和功能大多相同而与微处理器接口部分的结构和方式存在一些差异,这里主要以SJA1000为代表对CANg制器的功能作一个简单介绍,SJA1000是一种独立CAN空制器,它是PHILIPS公司的PCA82C20GCAN控制器的替代产品SJA1000具有BasicCAN和PeliCAN两种工作方式,PeliCAN工作方式支持具有很多新特性的CAN2.0B协议。
SJA1000在软件和引脚上都是与它的前一款PCA82C200独立CAN空制器兼容的,在此基础上增加了很多新的功能,为了实现软件兼容SJA1000采用了两种工作方式。
BasicCAN方式,PCA82C20C兼容方式,PeliCAN方式是通过时钟分频寄存器中的CAN方式位来选择上电复位默认工作方式是BasicCAN方式
BasicCAN和PeliCAN方式的区别如下。
在PeliCAN方式下SJA1000有一个重新设计的,含很多新功能的寄存器组。
SJA1000包含PCA82C20中的所有位,同时增加了一些新的功能位PeliCAN方式,支持CAN2.0B协议规定的所有功能29位的标识符。
SJA1000的主要新功能如下:
标准结构和扩展结构报文的接收和发送
64字节的接收FIFO
标准和扩展帧格式都具有单/双接收滤波器含接收屏蔽和接收码寄存器
可进行读/写访问的错误计数器
可编程的错误报警限制
最近一次的错误代码寄存器
3.8液晶显示接口电路
液晶显示采用128*64液晶屏,内置汉字库,每行可以显示8汉字,共四行最多可显示64个汉字。
液晶有三个控制端口RSRWE分别与P2.0,P2.1,P2.2相连,8
C
位并行数据端口AD0-AD7分别与
P0.0-P0.7相连,如图3-7所示。
图3-7液晶显示接口电路
3.9语音接口电路
B
ISD1420B外围电路简单,喇叭与麦克可以直接与ISD1420B寸应管脚相连。
通过控制/PLAYL管脚为低电平实现放音。
通过控制/REC管脚为低电平实现放录音。
B0与B1为录放音地址选择控制端口,如图3-8所示
A
图3-8语音接口电路
2
1
3.9.1ZY1420简介
ZY1420B是广州致远电子有限公司出品的优质微型语音录放模块。
ZY1420B
内部使用ISD1420作为主控芯片,且具备ISD1420的全部优良性能,如大容量的EERO存储器,消噪的话筒放大器,自动增益调节AGC电路,专用语音滤波电路,高稳定性的时钟震荡电路和语音处理电路。
除此以外,ZY1420B还对ISD1420的
标准外围电路作了优化并全部集成于模块内部。
同用户使用标准ISD1420的
DIP40封装IC相比较,ZY1420B可以提供更加稳定可靠的性能,更低的价格,更方便的使用,同时还可以减小实际的体积。
ZY1420B使用有专利技术的模拟处理存储方式,使录放音质极佳,没有常见
的的背景噪音,且电路断电后语音内容仍不会丢失。
电路内部由振荡器、语音存储单元、前置放大器、自动增益控制电路、抗干扰滤波器、输出放大器组成。
一个最小的录放系统仅由一个麦克风、一个喇叭、两个按钮、一个电源就可以组成。
有如下特点:
重现优质原声
基本上不耗电信息存储
信息可保存100年,可反复录放10万次
选址处理多达4段信息
具有自动节电模式
图3-9声光报警接口电路
4软件设计
4.1软件设计说明
其资源成本低,在不影响系
软件是在硬件基础上对系统功能的补充和完善,
统性能的基础上尽量用软件来实现。
本系统软件较复杂,因此在软件设计之前,要对整个系统硬件做充分的了解,对功能模块进行详细的划分,做到程序模块编写的模块化,一个子程序的改动不影响其他的。
这样既有利于程序的编写和修改,也有利于程序功能模块的添加。
图4-1C51工具包的整体结构
KeilC51是美国KeilSoftware公司出品的51系列兼容单片机C语言软件开发系统,与汇编相比,C语言在功能上、结构性、可读性、可维护性上有明显的优势,因而易学易用。
用过汇编语言后再使用C来开发,体会更加深刻。
KeilC51软件提供丰富的库函数和功能强大的集成开发调试工具,全Windowj界面。
另外
重要的一点,只要看一下编译后生成的汇编代码,就能体会到KeilC51生成的目
标代码效率非