物联传媒 旗下网站
登录 注册
RFID世界网 >  解决方案  >  其他  >  正文

基于RS485总线的智能门禁系统的实现方案

作者:杨莉 郑传涛 宋占伟 于枫
来源:RFID世界网
日期:2013-02-26 09:49:16
摘要:随着网络技术、数字技术,特别是射频通信识别技术的进步,门禁系统在安全性、方便性、易管理性等方面也得到了长足的发展,成为确保小区及其它重要部门出入口安全的有效措施,已广泛应用于交通、物流管理等多个领域。

  随着网络技术、数字技术,特别是射频通信识别技术的进步,门禁系统在安全性、方便性、易管理性等方面也得到了长足的发展,成为确保小区及其它重要部门出入口安全的有效措施,已广泛应用于交通、物流管理等多个领域。RS485总线主机调度网以其组网容易、造价低、软硬件丰富、添加节点方便快截、数据传输可靠稳定、误码率较低及传输距离适中等优点,仍是目前中小型网络管理系统的主流形式。本工作研究了一种基于RS485总线和RFID技术的智能门禁系统的硬件和软件实现方案。

1系统整体构成

  系统总体框图见图1,其结构采用集散式控制形式,各下位机分别监控各自节点内的操作状况,又统一受上位机的监控。该系统采用PC机作为上位机,主要负责住户信息的数据库管理、各节点住户实时操作的监控与信息记录等,具体信息包括:RFID卡信息、住户个人信息、密码信息、实时操作信息和历史记录及系统时间等。各下位机采用WINBOND公司生产的W77E58单片机作为微处理器,负责本节点内RFID卡的管理、用户权限的判定及门状态的控制等。各节点内的485收发器MAX485负责接收来自485总线的PC机控制数据或者通过总线向上位机发送实时操作信息见图2。各门禁控制器通过一个串口读取RFID卡信息,并通过另一个串口与485总线通信。上位机通过串口并经232—485电平转换后连接至485总线,统一管理各门禁控制器。     

图1 智能门禁系统总体框图

  系统工作过程为:用户将持有的RFID卡接近读卡器时,读卡器识别卡信息并通过串口将卡信息传送给单片机控制器。用户也可以通过键盘输入密码,单片机控制器将卡信息或键盘信息与外部EEPR0M中存储的信息比较,验证用户权限,进而控制门状态。单片机通过另一个串口经由485收发器通过总线与上位机通信,将卡信息、各时刻操作信息、键盘信息等传送到总线上,上位机通过总线对这些信息进行文件和数据库的存储;同时,上位机对各住户的卡、密码及个人信息以注册或者注销等形式进行数据库管理,以便于查询。    

图2 485收发器电路

2系统硬件设计

  2.1硬件组成

  上位机硬件是PC机和232—485转接卡。下位机硬件主要包括RFID读卡器、485收发器和门禁控制器。下位机节点结构见图3。   

图3 下位机门禁控制器总体框图

  下位机的核心部分是W77E58单片机微控制器,其主要特点是具有两个独立的串行通讯口。

  RFID读卡器采用周立功公司的ZLG500CMifare卡读写模块嘲,利用单片机控制器的P1.4引脚作为其复位信号。读卡器与控制器的接口引线还包括电源线、地线及RXD、TXD串口数据线,二者为串行通信方式。

  485总线收发器采用MAXIM公司的MAX485,其电路原理见图2。其中加入光隔离以实现抗干扰及保护功能。利用单片机的P2.3引脚对其内部的发送和接收驱动器进行控制,通过单片机的一个串口与之通信。

  2.2工作原理

  W77E58具有2个串口,这一点在该系统是至关重要的。

  单片机控制器既要通过串口与RFID读卡器通信,又要通过串口与485总线控制器MAX485通信,因此选择具有2个串口的单片机是解决这一矛盾的最佳方案。而且在相同的时钟频率下,它的指令执行速度比标准8051快2.5倍,这对于作为门禁控制器核心的单片机来说也是大有优势的。

  键盘具有12个按键,各按键的功能定义为:数字键0-9、确认键及取消键。用户可以通过键盘输入密码信息,也可以通过键盘呼叫开门。EEPROM存储器AT24C256用来存储用户密钥信息及RFID卡的卡号和密码信息,它具有IIC总线功能,可以在IIC总线的时序下对它进行读写操作;DS1302时钟芯片用来向系统提供时钟,为了方便,该时钟应与上位机一致;另外,采用MAX813看门狗芯片监视程序的运行;采用EA_D20040AR液晶显示器显示用户通过键盘输入的密码、实时操作信息及系统时间信息等;采用DS2Y—S继电器控制电门的开关状态。

3系统软件设计

  系统软件由上位机管理平台和下位机门禁控制程序组成。

  上位机管理软件是在WindowsXP操作平台上,利用VisualC++6.0开发的,功能包括RFID卡注册注销、住户信息添加、删除、查找、编辑、排序、显示、实时监控、管理员登录验证等,具有友好的人机交互界面,显示直观,操作方便。系统运行时,各门禁控制器将采集到的卡信息、键盘信息及实时操作信息以TxT文件的形式存储在上位机中;各小区的单元住户信息以“树”视图的形式显示在平台界面的左侧窗口中。点击相应的节点,各单元的住户信息以数据库表的形式显示在平台界面的右侧窗口中。平台下面的“Tab”控件用来实时显示各门禁控制器的实时操作信息。

  下位机控制程序采用8OC51语言编程,Wave6000编译仿真。该部分实现的主要功能包括:按键密码及卡信息的读取和验证、液晶LCD及LED显示、时间设置和读取、经由485总线接收及发送操作信息等。软件主程序流程见图4。   

图4 下位机主程序流程

  3.1 485通信

  通信波特率设为9600bit·S-1。通信协议为起始字符+本机地址+功能字符+数据长度+数据信息+结束字符其中,起始字符为’@@@’,结束字符为’$$$’,本机地址为:0~32(可以按照需要选择);广告地址为:Oxffo功能字符为:’0’~‘F’。

  3.2 串口中断处理

  串口的功能包括:其一,向上位机发送操作信息,例如刷卡或者密码认证信息等;其二,接收上位机发送的密码修改和卡注册注销信息,并依此修改EEPROM相应内容,达到实时更新。中断流程见图5。   

图5 下位机串口中断流程  

  3.3 卡及密码管理与认证机制

  一般情况下每个门禁控制节点的密码只有一个,该密码既存储在上位机的数据库里,也存储在EEPR0M里,当上位机修改此密码时,将修改信息经由总线发送给下位机,进行同步修改。

  用户的卡信息存储方式与密码相同,不同的是每个节点下的卡号信息不止一个,可以几十个。当用户通过上位机注册或者注销卡时,需要将改动信息经由总线发送给下位机,实现同步修改。认证过程如下:当住户通过键盘输入密码时,控制器将该信息与EEPROM中的密码信息进行校对。如果正确,则通过继电器将门打开,并经由总线按照协议向上位机发送密码开门正确信息;反之,则操作相反。刷卡操作与密码大致相同。 

  3.4 数据库与实时信息管理

  对用户信息(卡、密码)的管理采用数据库的形式。利用Access2000创建数据库,包括所有门禁控制节点的密码表和各门禁控制节点住户信息表。通过数据库类的成员变量In—pSet对数据库进行读写操作,可以通过管理平台添加或者删除用户信息。上位机以文件的形式记录各门禁节点的实时操作信息,文件格式为TxT格式,共创建4个文件,分别用来存储:实时操作信息、注册和注销信息、卡认证信息和键盘操作信息。

4结语

  本系统实现了射频RFID卡识别,门禁系统密码认证,实时信息显示,上位机数据库管理与存储等功能。该系统具有很大的扩展空间,根据需要不仅可以进行门禁控制器节点的扩展,而且在功能上可以加入摄像头等监控工具。经实验证明,系统设计合理、工作可靠、开发成本低、性价比高,具有很强的应用价值和广阔的市场前景。