摘要 :本文介绍了一种基于无线通信的非接触式IC卡门禁系统,阐述了系统中数据的多点跳传无线通信方式及通信协议。文章主要讨论了无线通信在IC卡门禁系统中的软、硬件实现方法,并给出了该系统的硬件电路框图和通信软件流程图。
关键词 :无线通信,门禁系统,非接触式IC卡
引言
在IC卡应用日益广泛的今天,IC卡门禁系统以其门禁管理的安全、可靠、高效、灵活、方便,已逐步取代其他现有各类门锁,成为目前门禁系统的主流方式。
IC卡门禁系统通常以用户IC卡的卡号为依据控制门的开启,为此发卡系统(中央控制PC机)必须将合法卡号(或黑名单)通过网络下载给所有门禁机。而门禁机也需将开门记录(卡号与时间)上传给中央控制PC机以实现各门禁点的集中管理。目前,IC卡门禁系统数据的传输基本是基于有线的网络, 如RS485, CAN 等。这些有线网络施工布线工作量大,网线易受人为破坏,线路损坏后,故障点不易查找,且易受雷击和过电压的影响。而数据采用无线传输方式又常常面临无法满足距离要求的难题,即使满足代价也非常大。
针对这种情况,本文提出了一种基于多点无线数据传输的IC卡门禁系统,采用单片无线收发芯片nRF903,数据采用多点跳传的方法,每个门禁点在作为本身数据的收发端的同时,又可做为其他门禁点数据的无线转发中继站,从而构成不受传输距离限制的无线通信链路。该系统无需敷设通信线路,以低成本的无线数传芯片保证足够的传输距离,可靠性高,便于维护,尤其利于现有老社区、旧办公楼的智能化改造。
1 系统硬件
系统采用Philips公司的非接触智能IC卡Mifare 1卡,以M1卡作为用户卡,以用户卡的序列号SN(全球唯一)为依据控制门的开启。系统工作流程如下:发卡系统(中央控制PC机)将用户的卡号及个人信息输入系统数据库,并将该卡号作为合法卡号下载给所有门禁机。当M1卡进入门禁机的有效工作范围内时,门禁机读取M1卡的序列号SN,判断收到的卡号是否合法,合法则驱动电磁门锁开门,并暂时保存其开门记录;如果是非法卡(未经授权或已挂失的卡)则拒绝开门并上传报警信息。系统定时采集各门禁点的出入记录并加以存储、分析、处理。
系统的硬件构成见图1 ,由若干个分布于各门禁点的无线IC卡门禁机和一个无线数据收发器及一台中央控制电脑构成。无线门禁机与无线数据收发器之间采用双向无线通讯,中央控制计算机通过无线数据收发器向门禁机发送命令、下载数据以及接收门禁机上传的信息。各门禁机门禁记录分时传送给无线数据收发器, 无线数据收发器与中央控制计算机间采用RS232 串口通讯,并可同时作为发卡器使用。系统所有的管理工作都由中央控制计算机完成,如发卡、查询、挂失、解挂、下传黑名单、接收门禁记录、统计分析、打印报表等。
图1 无线通信IC卡门禁系统硬件构成框图
图2 无线IC卡门禁机硬件电路框图
无线IC卡门禁机硬件电路主要由MIFARE卡读写模块ZLG500A及天线、主控制器AT89C52、键盘、显示器、门禁记录与授权卡号存储器、时钟电路、监控电路、NRF903无线通信接口电路以及电磁门锁等部分组成,其硬件电路框图见图2。PC机端的无线数据收发器硬件结构与无线IC卡门禁机类似,由MIFARE卡读写模块ZLG500A及天线、主控制器AT89C52、nRF903无线通信接口电路以及与PC机通信的RS232接口电路组成。
2 无线通信芯片nRF903
系统的无线通信模块采用了Nordic VLSI 公司的单片UHF多段无线收发芯片nRF903。nRF903工作于433/ 868/ 915 MHz ISM频段,无需申请频点,具体工作频率可以通过与之相连的单片机进行设置。它采用优化的GMSK调制解调技术,可在155.6KHz的有效带宽下传输最高76.8bps的数据;天线接口设计为差分天线,因而可采用低成本的PCB天线;最大发射功率+10 dBm,接收灵敏度为460 dBm ,在开阔地传输距离一般可达600m以上(在地形复杂时会缩短距离,这与使用环境、干扰、系统调谐有关)。nRF903片内集成了电源管理、晶体振荡器、低噪声放大器、频率合成器、功率放大器等模块,外围元件少;曼彻斯特编码/ 解码由片内硬件 完成,无需用户对数据进行曼彻斯特编码,因此使用非常方便。nRF903还具有待机模式,这样更节能和高效。
nRF903 采用SPI(串行外设接口) 与微控制器通讯,它自动处理字头和CRC校验 ,使用极为方便,只需将要发送的数据和接收机地址送给nRF903, nRF903 自动完成数据打包(加字头和CRC 校验码) 、发送,在接收中有载波侦测引脚,接收到正确的数据包时,自动移去字头、地址和CRC 校验码,然后通知微处理器取数据。nRF903与MCU的接口电路如图3所示。nRF903 的双向数据线DATA 分别连接在AT89C52 的RXD 和TXD 引脚,RXD 和TXD 之间通过一个10kΩ的电阻隔离。AT89C52 通过连接STBY 和PWR-DWN 的P1.5 和P1.6 对nRF903 进行工作模式设置,通过连接CFG-DATA、CFG-CLK 和CS 的P1.2、P1.3 和P1.4 对nRF903 工作参数进行配置,以串行方式将14 位的配置字移入nRF903 的寄存器中,从而实现对频段、通道、输出功率和输出时钟频率的配置。由于AT89C52 没有SPI 串行硬件接口,所以需要用软件方式模拟SPI 接口,具体软件实现方法可参考文献[4]。
3 多点跳传无线通信方式
3.1 多点跳传无线通信局域网
本系统由无线数据收发器和PC机构成的主机与若干无线门禁机工作点组成一个无线局域网,采用多点跳传方式实现点对多点的通信,传输链路分布示意图如图4 所示。由图4 可见,在0号链路中,工作点01、02、03除了自身数据的传输之外,还在链路中起着数据中继传输站的作用,工作点04的数据通过工作点03、02、01的跳传传输给主机。该链路各工作点的传输路径如表1所示。其他各链路以相同“的跳传方式传输数据。不同的系统可根据门禁点的实际分布来设计相应的链路结构。
图4 多点跳传传输链路分布示意图
3.2 多点跳传无线数据传输方式
nRF903 的通信信道是半双工的,这种方式首先需要设定当前发送端为主站,其他各工作点(接收端)均为从站, 主站及各从站的地址唯一。通信的协调完全由发送端控制,发送端采用带地址码的数据帧发送数据或命令,从站全部都接收,并将接收的地址码与本地地址码比较,不同则将数据全部丢掉,不做任何响应;地址码相同,则证明数据是给本地的,从站根据传过来的数据或命令进行不同的响应,将响应的数据发送出去。这种传输方式可保证在任何一个瞬间,通信网中只有一个电台处于发送状态,以免相互干扰。系统传输链路中,各工作点的地址码可根据工作点的数量采用不同的编排,使之有较大差异,以更好的抗干扰和误码。
表1 0号链路各结点路由表
4 系统通信软件
4.1 通信协议
采用多点跳传无线数据传输方式,数据必须进行规定格式的处理,数据包的格式如下:
其中D_ADD为数据传送目的地地址;S_ADD为数据源地址;LENTH为数据长度(字节数) ;Data1~Data n 为有效数据;CHECK 为纠错检错校验码(1个字节) 。该数据包由微控制器发给nRF903 后,nRF903 在对其加入字头和CRC 校验后发送出去。
4.2 门禁机通信软件
为避免多个工作点传输时发生冲突,发送端与接收端采用握手联络的方式通信。根据数据的传送目的地址,发送端可通过查路由表确定接收端(下一个结点)的地址码,例如:0号链路中工作点03给主机发送数据,由链路结构可知传输路径为03→02→01→主机,则工作点03先设定nRF903 的发送地址号为02,发送申请发送请求,发完后转入接收状态,等待工作点02返回允许发送信号后再启动数据发送。工作点02接收到数据后,校验有误可通知03重发,校验无误后对数据包的目的地地址进行判断,发现是主机编号,则将数据转发,将接收端地址码设为01,发送过程与工作点03过程相同。如此下去,数据再经工作点01二次转发给主机,主机检查发现目的地就是主机,即将数据接收下来。这样经过工作点02、01的收发中继,工作点03的数据就跳传给了主机。其他工作点与主机之间的通信过程与此类似。无线IC卡门禁系统中某工作点的通信子程序流程图如图5所示。
图5 无线门禁系统通信子程序流程图
5 结束语
本系统采用先进的无线通信技术实现IC卡门禁系统数据与控制信息的无线传输,该系统由于省去了集中器和485 布线,使工程造价大大降低,为门禁控制提供了安全可靠而又灵活方便的实施方案。