基于RFID技术的学生考勤系统设计
随着电子信息技术的发展,智能卡(RFID/xinpin/zhinenka/' target='_blank'>IC卡)在生活中随处可见。而射频识别卡(简称射频卡、RFID卡)正逐渐取代传统的接触式IC卡,成为智能卡领域的新潮流。RFID卡由于成功结合了射频识别技术和IC卡技术,解决了无源(卡内无电池)和免接触的难题,因此,具有磁卡和接触式IC卡不可比拟的优点。 RFID卡由IC芯片、感应天线组成,完全密封在一个标准PVC卡片中,无外露部分。学生考勤系统设计利用无线射频识别(RFID)技术,实现对学生进行考勤、记录等功能。
通过点名、磁卡和接触式IC卡等方式对学生的到课情况进行考勤、记录管理,既耗时又容易相互干扰;而非接触式RFID学生考勤系统实现了利用无线射频识别技术对学生考勤管理,既方便快捷,又省时。学生考勤系统由应答器和阅读器组成,其中应答器由标签(即卡片)构成,阅读器(读卡器)由射频卡基站器件 U2270B及其支撑电路、主控器件MCU及其支撑电路和外围接口电路(键盘、液晶、时钟和串口模块)构成,如图1所示。
学生考勤系统的工作原理为:MCU工作于低功耗状态,标签因为没有能量而处于休眠状态。当按下键盘上的IRQ按钮时,MCU被换醒,同时激活U2270B 开始工作,U2270B的两个天线端子通过线圈将能量传输给外界。当有标签靠近线圈时,标签获得能量开始工作,并将其内部存储的信息发送到U2270B的输入端,U2270B经过转换后再将信息送至输出端口发送给MCU,MCU接收到信息后将其转换成可识别的数据,再将其送至液晶显示。本文着重介绍考勤系统中的射频卡基站器件U2270B及其支撑电路设计。
1 射频卡基站器件U2270B及其电路设计
U2270B是ATMEL公司生产的基站器件,是一个对IC卡进行读写操作的非接触式工作基站,内部由振荡器、天线驱动器、电源供给电路、频率调节电路、低通滤波电路、高通滤波电路、输出控制电路等部分组成。
1.1 频卡基站器件U2270B的射频频率
U2270B基站的射频频率要求在100~150 kHz范围内,在频率为125 kHz情况下标准的数据传输速率可以达到5000波特率,它可以采用曼彻斯特和双相调制两种方式。基站的工作电源可以是汽车电瓶或其他的5 V标准电源。U2270B具有可微调功能,与其他微控制器有很好的兼容接口,在低功耗模式下低能量消耗,并可以为IC卡提供电源输出。U2270B器件内部结构如图2所示。
U2270B的射频频率是通过调整U2270B内部结构中的RF引引脚所接电阻的大小,可以将内部振荡频率固定在特定的频率上(典型为125 kHz),然后通过天线驱动器的放大作用,在天线附近形成特定频率的射频场,当应答器进入该射频场内时,由于电磁感应的作用,在标签内的天线端会产生感应电势,该感应电势也是标签的能量来源。将数据写入应答器是采用场间隙方式,即由数据的“0”和“l”控制振荡器的肩振和停振,并由天线产生带有窄间歇的射频场,不同的场宽度分别代表数据“0”和“l”,这样完成将基站发射的数据写入标签的过程。
对场的控制通过控制器件的引脚6(CFE端)实现。应答器的负载调制会在基站天线上产生微弱的调幅,这样,通过二极管对基站天线电压的解调即可回收标签调制的数据流。U2270B的外围电路如图3所示。
1.2 射频卡基站器件U2270B的支撑电路
1.2.1 电源模块
U2270B的VS(电源)为内部电路提供电源,VEXT为天线和外部电路提供电压。对于U2270B基站电源有3种设计模式:第1种是单电压供电,即引脚DVS、VEXT、VS、VBall使用5 V电源;第2种是双电压供电,即引脚Vs使用5 V电压,而引脚DVS、VEXT、VBall使用7~8 V电压;第3种是电池电压供电,引脚VEXT和Vs由内部电池供给,而引脚DVS和VBall使用7~16 V外部电压,对于这种供电方式,U2270B的低功耗模式是可供选择的。该学生考勤系统设计采用第2种电源供给方案。
1.2.2 频率设置
该频率设置是U2270B输出的天线驱动频率,而天线端子线圈的发射频率最终是由线圈回路的电阻、电容决定的,这个频率越接近发射频率,则发射功率越强。 U2270B的天线驱动频率可自行设置,该系统设计频率设置是由流入RF端的电流值决定的,而Vs是由内部电源供给,所以可以通过改变Vs端和RF端之间的电阻值进行设定。
经过计算,设定的电阻值分别为R8=68 Ω,R9=43 Ω,这样射频频率为125 kHz。
1.2.3 天线模块
该系统设计的天线模块只涉及到电容,电阻和线圈,但是对于各个元器件的选值是比较精确的。从U2270B的Coil1和Coil2端口出来经电容,电阻和线圈组成一个IC串联谐振选频回路,其作用就是从众多频率中选出有用信号,滤除或抑制无用信号。由串联谐振电路的谐振角频率可知谐振频率:
当从Coil1、Coil2出来的脉冲满足该频率设置要求后,串联谐振电路就会启振,在回路两端产生一个较高的谐振电压VL=QVs。其中,Vs为 U2270B的Coil1、Coil2端的输出电压,线圈两端的谐振电压VL一般可能介于200~350 V之间,所以线圈两端的电容耐压值要高,热稳定性要好,因此对谐振回路的电容要求就比较高。当谐振电压达到一定数值就会通过感应电场给应答器供电,当应答器进入感应电场范围内,应答器内部电路就会在谐振脉冲的基础上进行非常微弱的调幅调制,再由U2270B读取。Q为谐振回路的品质因数,用于描述回路的储能与其耗能之比:
本设计中应答器标签的频率为125 kHz,线圈的电感L约1.35 mH,这样可由式(3)计算出电容C的容值。另外通过调节电阻R(注意线圈也含有一定的电阻)来调节品质因数Q,改变谐振电压,提高读写距离。
1.2.4 数据输入
这里的数据输入是U2270B从天线回路读回的数据。基站从应答器读入的是经过载波调制后的信号,它通过C7电容耦合输入到INPUT输入端,经过低通滤波器、放大器、施密特触发器等环节后,在OUTPUT端输出解调后的信号。低通滤波器的截止频率由fosc决定。引脚INPUT的耦合电容C7以及引脚 HIPASS的去耦电容C6的值决定解调电路的高通特性,有利于更进一步滤除无用及干扰信号。C6和C7的容值随射频卡的数据传输波特率的不同而不同,该学生考勤系统设计采用的波特率为focs/32,此时C6,C7分别为100 nF和680 pF。
C6与下限截止频率fCVT的关系:
式中,Ri=2.5Ω。
需要注意的是OUTPUT端输出的信号只是经过解调,并没有解码。解码需要通过单片机编程完成。
2 U2270B模块软件设计
U2270B模块提供给高层调用的主要有4个子函数,分别为初始化函数、停止工作函数、开启函数和解码函数。
1)U2270B初始化函数 U2270B的初始化主要就是将U2270B必要的控制端口提供满足条件的电平,由于不是马上开始解码,所以同时应将U2270B停止工作,并且默认是125 kHz的解码。
2)U2270B停止工作函数考虑到该系统设计的低功耗和具体功能,只有在光敏电阻中断被允许或按下“IRQ”键时才调用一次解码函数,在其他情况下一般U2270B处于空闲状态。
3)开启U2270B函数当“开始上课”按钮有效时,光敏电阻中断被允许,或者利用“IRO”按钮使读卡器从低功耗模式下被唤醒,U2270B处于工作状态。
4)U2270B解码函数解码部分完全由软件程序实现,通过输入捕捉接收到的脉冲进行解码,这也是U2270B的不足之处。
3 总结
学生考勤系统设计的核心是射频卡读写器,而射频卡读写器的关键是射频卡基站器件,该器件主要完成数据的调制、发射和射频接收以及数据解调任务。从射频识别卡的使用方便、交易速度快、便于维护和使用寿命较长等优点来看,射频识别卡正在逐渐替代目前广泛使用的接触式IC卡。这里所设计的学生考勤系统实现了方便、快捷、省时的学生考勤管理功能。