基于USB接口ID读卡器的设计
扫描二维码
随时随地手机看文章
1 引言
USB接口ID读卡器是射频识别RFID(Radio Frequency Identification)在125 kHz的具体应用,适用于网吧管理、会员系统、考勤消费发卡器、身份识别前端等。一般的USB接口ID读卡器大多采用射频接收模块和嵌入式微控制器,但成本高,同时解码程序采用定时查询或监测信号边沿状态的方法进行解码,这些解码方法对天线载波频率以及定时准确度要求较高,当载波稍微偏离规定范围时将不能正确读卡。为降低产品的成本同时提高解码的速度、准确率、敏感度等,笔者创新采用内嵌USB接口的单片机和EM4095设计USB接口ID读卡器,同时介绍一种新的解码技术,使得载波频率偏移不影响解码,而且无需检测信号的边沿状态,能够更可靠、快速读卡。
2 系统总体框架及硬件电路设计
2.1 系统总体框架
USB接口的125 kHz ID读卡器主要包括基于SN8P2201单片机的主控模块、基于EM4095的射频模块、通信模块(USB)、外部时钟、光显示模块(LED)、声音提示模块(蜂鸣器)、电源模块、天线,如图l所示。
ID读卡器工作过程:USB接通后,红色LED灯亮,伴随蜂鸣器鸣叫,表明读卡器准备就绪。若1 min内无ID卡靠近读卡器,读卡器将自动进入睡眠状态,此时红色LED灯自动熄灭,绿色LED灯点亮。当有ID卡接近读卡器时,读卡器自动激活,绿色LED灯熄灭,红色LED灯点亮。读卡器成功读取ID卡号后,蜂鸣器呜叫,同时数据通过USB传输至PC机。只需打开.txt文件,就可轻松接收数据,无需任何上位机。
2.2 系统硬件电路设计
2.2.1 主控和通信模块电路
主控和通信模块电路如图2所示。SONIX单片机SN8P2201的P1.0、P1.1、P0.0引脚分别控制射频器件EM4095工作状态、接收解码的同步时钟、接收解调数据。
SN8P2201引脚5连接复位电路,电阻R6和电容C8组成基本RC复位电路。该复位电路在系统上电时能够为复位引脚提供一个缓慢上升的复位信号,该复位信号上升速度低于VDD的上电速度,从而为系统提供合理复位时序,当复位引脚检测到高电平时,系统复位结束,进入正常工作状态;对于电源异常情况,二极管正向导通使C1快速放电并与VDD保持一致,避免复位引脚持续高电平,系统无法正常复位;R7是必不可少的限流电阻。
而通信电路USB,SN8P2201的D+、D一引脚只接适当电容和电阻,就可与单片机内部数据进行USB通信,电路简单。需注意的是:VREG和GND之间连接1μF电容有助于3.3 V稳压器稳定输出,应尽可能靠近SN8P2201放置。
2.2.2 射频收发电路设计
射频器件EM4095通过天线连续发射射频载波信号,为电子标签提供能量,激活电子标签;调制发射信号,将数据通过天线传送给电子标签;通过天线接收电子标签发射信号,并解调所接收的信号,从而得到电子标签中的数据,传送给单片机做进一步处理。图3为射频收发电路。
LA(天线电感值)、C4、C5、C9、C10和C11组成LC串联谐振天线,谐振频率为其中C0=C4||C10||C11+C5||C9。天线的工作电流与谐振电路Q值有关,可在天线线圈LA上并联一只电阻,调节Q值。
EM4095的DEMOND_IN引脚输入AM信号在VCO输出信号的同步控制下被采样,采样输出信号由引脚CDEC外接电容隔直和带通滤波采样(消除输出中的载频成分、高频和低频噪声)后,经异步比较得到对应的数字信号。接收时,天线感生信号经耦合电容输入引脚DEMOND_IN,该信号与天线驱动器的输入信号由相位比较器进行相位比较,形成与相位差对应的电压,作为压控振荡器的控制信号,最终锁定天线发射信号频率。RDY/CL发射的方波是同天线处载波的频率相同且同步,通过它传给单片机来计算同步载波的周期数。DEMOND_OUT是AM模块携带的数字信号的输出。SHD=1,EM4095为睡眠状态。上电后,先为高电平以便初始化,然后为低电平开始发送数据。MOD接地表示只读模式。
2.2.3 其他模块电路设计
该系统设计的天线电感值是345μH。天线采用铜制漆包线绕制,漆包线直径为0.29 mm。圆形(内径)直径为2 cm,115圈。读卡器直接通过USB提供+5 V电压,使单片机和EM4095正常工作,无需外接电源以及额外的5 V稳压器等,这样电源模块电路设计简单,且节省成本。采用6 MHz晶振为单片机提供外部高速时钟。
2.3 硬件测试
EM4095的调试首先检查有无时钟输出。不管电子标签是否靠近读写器,上电后RDY/CLK引脚始终输出时钟信号,否则说明EM4005未开始工作。当确定输出时钟后,可以把电子标签放在读写器的工作范围内,通过示波器观察SHD引脚的电平是否由高变低,DEMOD_OUT引脚是否有数据波形输出,若有则说明EM4005工作正常。此时,将RDY/CLK引脚接到示波器,观察其波形,通过调整C4,C10,C11的值,使输出方波的频率接近125 kHz。
3 系统软件设计
图4为软件设计总体流程。该流程基本说明读卡器工作的全过程。
图5中,wk05是帧头计数器,time是计算RDY/CLK引脚载波的周期数。在中断的第一个下降沿到来时,启动time周期计数。寻找帧头时,只要time≈64,都将其译码成1。在找到8个连续“1”后,这时下降沿间隔会出现上述3种情况,根据Tag标志位来译码。在找到9个“l”后,才会把译码的数据送入BUFFER,再经奇偶校验正确后,发送给PC机。
4 结束语
USB接口的125 kHz ID读卡器设计简单,成本低廉,而且在程序中就可将USB发送的数据转换成键盘数据,无需任何上位机就可接收数据,操作更简单。同时软件采用解码方法可以在读曼彻斯特码的同时进行同步解码,速度较快,而且由于对载波频率的变化不敏感,故读卡成功率非常高。读卡的距离可达5 em,时间小于200 ms。