标签芯片 | 读写器 | 天线 | 中间件 | 智能卡 | 生物识别 | 条码 | 制造设备 | 物流 | 零售 | 防伪 | 交通 | 停车 | 资产管理 | 动物 | 身份识别 | 军事 | 航空 | 门禁 | 一卡通
供求商机 资讯中心 产品中心 企业资料 人才招聘
 
 首页 >> 技术中心>> 正文
实现以RFID卡仿真磁卡的模块设计
来源:国一卡通网   2008-1-9 15:55:32
关键词: rfid卡  射频识别卡  u2270b  磁卡  仿真模块  射频卡  


提要设计一种能从射频识别(RFID)卡读取数据,而后又仿真磁卡格式输出的模块,借助这种模块,能在不改变原有应用系统的基础上,将系统的磁卡替换为RFID卡.本文介绍的模块选择H4001作为替代磁卡的RFID卡,模块本身则主要由天线、非接触式射频卡读写基站芯片U2270B和单片机AT89C2051构成.在介绍应用电路的同时,分析了RFID卡、磁卡的相关编码格式,提出实现RFID卡信息读取、磁卡仿真输出的方法和步骤,并给出了相应的程序流程图.

    2O世纪8O年代,以磁卡和条形码作为信息载体,各种身份识别逐渐广泛应用于我国服务领域、物流与企业管理领域.射频识别(radio frequency identification,RFID)卡具有非接触、操作方便、可靠、识别率高、寿命长等突出优点,2O世纪9O年代起大规模应用于众多领域.目前仍有大量基于磁卡和条码的应用系统正在或即将投入使用,这些系统在设计时不少是把磁卡或条码解码部分作为独立的模块加以考虑.基于此,提出以下设想:若能够采用廉价只读RFID卡取代磁卡或条码,而让RFID卡阅读模块直接替换原来的磁卡机芯或条码解码模块,那么,整个系统不需做什么改动,即可投入运行或继续使用.这样,不论改造旧系统或过渡到采用RFID卡的新系统,都可提高效率,减少浪费,在当前仍有市场和积极的意义.本文介绍的模块只考虑以只读的RFID卡替代不需修改信息的磁卡(其他情况读写卡程序有所不同).

1 模块组成和工作原理 

   本仿真模块的功能就是解码读取只读RFID卡的信息(通常就是简单的序列号,并仿真磁卡机芯输出美国银行家协会(American banker S association,ABA)磁卡格式数据,其组成框图见图1. 

图1 仿真模块的组成框图

    模块的关键部分是天线、ATMEL的射频卡读写基站芯片U2270B和单片机AT89C2051.工作时,基站芯片U2270B通过天线(一般使用铜制漆包线绕制直径3 cm、线圈100圈即可,电感值为1.35 mH)以约125 kHz的调制射频信号为RFID卡提供能量(电源),同时能接收来自H4001的信息,并以曼彻斯特编码(Manchester)输出.而AT89C2051则是从U2270B得到H4001卡的64位信息,根据曼彻斯特编码规则进行解码,对数据加以校验,获取其中代表1O位十进制序列号的32位二进制数,并转换成对应的ABA磁卡格式数据,再从/CLD、CLK、DATA 3根信号线仿真磁卡机芯输出数据.

2 RFID卡H4001及曼彻斯特编码 

    图1所示模块中,配套使用的RFID卡是EM Microelectronic公司的H4001,该卡属于无源的低频RFID卡,典型工作频率为125 kHz,工作所需要的能量是通过电磁耦合单元或天线,以非接触的方式传送.当获得足够能量后,H4001便不断循环地往外部发送其自身的序列号等64位信息.

    发送时要对数据进行曼彻斯特编码和信号调制.规则如下:在每个时钟周期(对应1位数据)的中间位置,当数据位为“0”时电平由高向低跳变,而数据位为“1”时电平由低向高跳变;本模块的另一种表示方法则恰好相反,其波形如图2所示.

图2 一个典型数据序列的Manchester编码波形图

    对于采用曼彻斯特编码的H4001,其数据速率为RF/64.假设基站工作时的射频频率是125 kHz,则对应1位的时钟(CLOCK)的周期( T)µs.

3 基站芯片U2270B与模块电路 

    射频卡的读写需要由射频卡基站芯片来完成数据的调制、发射和射频的接收以及数据的解调任务.ATMEL公司生产的U2270B是一种低成本、性能完善的低频(100—150 kHz)射频卡基站芯片,采用Man—chester编码和双相编码,可用于读取H4001 RFID卡.参照文献[3]和[5],针对H4001 RFID卡,采用U2270B设计的射频识别卡读取模块的电路见图3.

图3 基于U2270B的REID卡读取模块电路图

    通过调整U2270B的第15脚(RF端)所接电阻的大小,可将内部振荡频率固定在125 kHz.计算公式如下:

    读卡时,RFID卡发射来的经过125 kHz载波调制后的信号由基站天线接收后,馈送到U2270B的第4 脚(Input)处,在第2脚(Output)输出解调后的Manchester编码的数据信号,送给微处理器.应当说明,射频卡H4001返回的是采用Manchester编码的数据流,基站U2270B负责信号的接收、整流和解调工作,而解码工作由单片机AT89C2051完成.


4 磁卡的磁道及ABA编码 

    根据ISO有关标准规定,磁卡或存折上的磁条划分为3个磁道.第2道数据标准最初由ABA规定,第2磁道上记录信息包含SS、PAN、FS、ADATA、ES和LRC等6项内容.其中,SS为起始标志,其代码0BH;PAN为主帐号;FS为域分隔符0DH;ADATA为附加数据;ES为结束标志,其代码0FH;LRC为纵向冗余校验字符,低4位分别是从SS到ES各字符的值按位异或操作的结果.具体应用时可根据实际情况做些修改,在本模块中用RFID卡的序列号取代PAN,无需FS域和ADATA域.在SS之前及LRC之后都增加若干同步时钟.

    ISO有关标准还规定了该磁道编码字符集(表1).

表1 第2道数据编码字符集

    表1中各字符编码由BCD码(4位二进制数)另加1位奇校验表示,即用P、B3、B2、B1、B0表示1个十进制位或控制/标志符,且P+ B3+B2+B1+B0=1.如ES(结束标志)的代码是0FH,加了校验的BCD码则为1FH,对应的字符是‘?’.

    刷卡时按上述规定解码磁卡信息,各字符的装配顺序由低位到高位.这需要磁头、放大整形电路、时钟与数据分离解码电路(可用专门电路或软件解码),解码后由3根信号线CLK、DATA和/CLD 把信息传递给有关处理单元进行解释处理.本模块并不需要解码磁卡信息,但是要求仿真ABA磁卡信息,并由CLK、DATA、/CLD信号线输出.3根信号线的用途如下.(1)CLK(CLOCK)同步时钟信号,1个周期对应1位二进制.(2)DATA数据输出端,在各CLK周期中间位置之前,确定其输出电平.若发送“0”,则DATA置为高;反之,发送“1”则DATA置为低.(3)/CLD(CARD LOAD),有效(低电平)时表示已检测到磁卡,正在刷卡.接收处理单元应做好接收准备.它必须比CLK、DATA先有效,后撤消. 

    手工刷卡速度范围一般是10—120 cm·s-1,对应的CLK周期变化范围很大.为了便于后续处理,仿真输出可取一个稳定的较大值,满足绝大多数应用系统的要求,因此,本模块设定为3 ms.

5 模块的软件设计 

    参照图1,U2270B接收114001的信息,并通过U2270B的Output脚把解调的数据输出给AT89C2051 进行解码.AT89C2051除了对H4001卡信息解码,还需进行二进制到十进制数据转换,仿真ABA编码格式输出数据等.本文介绍AT89C2051软件核心部分的设计思路和程序流程.

5.1 H4001输出的64位数据的解码 

    参照图2的Manchester编码,其解码方法如下:在每个位时钟周期的中间位置检测电平的变化情况,如果检测到电平由低变高则该位解码为“0”;反之,电平由高变低则解码为“1”.若未发生变化则视为信号异常进行出错处理. 

    这里存在如何检测、界定时钟周期的起始位置、中间位置问题,各种卡的做法并不一致.H4001没有专门的硬同步信号,不能检测特殊信号作为起始标志,而是规定64位数据位的前9位固定为全“1”,最后1位设定为“0”,作为起始和结束标志或设定为同步信息.分析连续的若干位“1”和连续若干位“0”,其波形非常相似,所以实际解码时,应该先检测到1位“0”,再接着检测连续的9位“1”,那么可以肯定,后续的54 个信息位便是40位真正的数据和14位相关的奇偶校验位,有关数据排列顺序见文献[4].可以想象,这里不应该实际上也不可能再次出现1位“0”后跟随连续的9位“1”.接下来是最后1位,必须是“0”,如此继续下一循环,否则便是出错.为了提高效率,可以在循环内边检测校验,边解码保存H4001卡的信息,其程序流程如图4所示.

图4 H4001卡数据的解码程序流程图

    图4未对解码得到的40位二进制(BIN)数据进一步分解.其中前8位是客户标识代码,用于区别不同的系或客户;后32位表示该卡的序列号,一般需要转换为l0 位的十进制数.例如,在该模块上检测到某卡的64位二进制数据串如下:111111111 00011 10001 00000 00000 10010 10100 00000 10111 10010 0001l 1001 0.其中最先出现的是起始标志9位“1”,然后l0组5位的数据,各组的最后1位是本组的偶校验码(从实际解码得到的数据看,它们都是正确的),接着的1组4位数据“1001”是这l0组数据的纵向冗余校验码(LRC)或偶校验码,最后1组是1位的结束标志“0”.第1组、第2组数据“0001”、“1000”(剔除校验码,下同)代表客户编号或版本号,第3组到第1O组数据是以二进制表示的本卡号:0000 0000 1001 1010 0000 1011 1001 0001(高位在先),转换成十进制,得到的序列号是0010095505.再分别计算这l0组第1,2,3,4位的偶校验码,应该分别是1,0,0,1,正好是解码得到的LRC.所以,这64位数据串是正确读出的0010095505号H4001 RFID卡上数据.


5.2 仿真ABA格式磁卡的解码输出 

    在得到l0位十进制的序列号后再仿真ABA磁卡格式数据输出.先把每1位十进制数位以BCD码再加1位奇校验码表示(统称字符),输出时在这些表示序列号的字符前后还需增加其他附加字符或代码,用作同步信号、起止标志、校验码.典型的输出卡号的程序流程如图5所示.

图5 仿真ABA格式磁卡输出卡号的程序流程图

    无数据输出时,/CLD信号应一直为高电平,检测到正确卡号后准备发送数据时把它置低,并维持到发送过程结束;CLK信号线在延时3—5 ms后开始以设定的频率发出占空比为50% 的方波(时钟),直到全部发送完毕;DATA在具体数据的前后,要发送5位以上“0”,作为同步信号,起始标志0BH(加校验位,发送顺序ll010),数据之后发送结束标志0FH(加校验位,发送顺序11 1 11),5位LRC,还有5位以上“0”.⋯0’的表示方法是在CLK上半周结束前,把DATA线置高,一直维持到下一CLK周期;“1”则是在CLK上半周结束前,把DATA线置低,一直维持到下一CLK周期.

6 结束语 

    根据上述方案设计的模块能较好地读取H4001的信息并仿真ABA磁卡格式输出数据(卡号).在调试过程中发现,即使卡片没有进人模块发送与接收的有效区域,或者说模块未真正收到H4001的信息,在U2270B的OUTPUT端也偶有信号输出,但是没什么规律;在卡片进人有效区后,信号渐渐变得有规律,信号周期接近标准的512信号.在判断“O1”信号时一定要确认其周期在512左右,如果不合则应舍去,继续等待,直到检测出满足符合周期要求的“O1”才开始接着往下解码,提取数据. 

    另外,不排除在接收过程中由于干扰等因素造成错误.由于H4001不断循环发送64位卡内信息,因此,可以直接放弃本循环的解码与转换,而等待下一轮(相隔约33 ms)再进行解码与转换.这样牺牲33 ms时间换取低误码率、漏码率,整体性能远超出磁卡阅读器.这种模块实现方案性能可靠,具有高性价比,完全满足应用需求.

作者简介:沈文龙(1963一),男,福建莆田学院电子信息工程系,高级工程师.研究方向:嵌入式系统及其应用.
Emafl:
williptxy@126.com

参考文献
[1]晓玲,王正华.从Ic卡到RFID[J].中国集成电路,2007,16(4):75.
[2]陈大才.射频识别(RFID)技术[M].北京:电子工业出版社,2001:193.
[3]王文理,田云霞,王丽.TEMIC系列射频卡读写器的开发设计[J].自动化技术与应用,2006,25(7):39—40.
[4]朱伟,薛有为,高玉.H4001非接触式Ic卡读卡程序的研究[J].电子工程师,2002,28(7):39—40.
[5]马秀丽,李莹,华宇宁.一种非接触式射频卡基站读写电路的设计与应用[J].金卡工程,2003,7(8):53—55.
[6]许丹,徐平.维根及ABA磁卡编码产生器[J].金卡工程,2004,8(5):5l一52.



作者:沈文龙


      
推荐 】【 打印 】【 发表评论 】【 加入收藏

 相关文章
· 利用MEMS技术实现移动电话射频设计
· 基于RFID的预付费电能表管理系统的设计
· 射频卡水控终端的设计
· 射频卡技术在数字式预付费电表系统中的应用
· 一种采用曼码调制的非接触IC卡读写程序编制
· 实现以RFID卡仿真磁卡的模块设计
· 第二代身份证专用芯片噪声检测及标定方法研
· 基于W78E516的射频读卡器实现
· 可读/写射频卡芯片e5550及其应用
· 基于EM4469射频卡的手持式读写设备的开发
 最新供求
·求枪支离位报警项目合作
·求购类似马来西亚身份证卡
·求购远距离读写器(固定与手持两种)及配套标
·求医院用13.56特殊标签和读写器
·求车辆管理系统方案和报价
·buy 2.5 Million RFID Tag for library use
·大量采购2.45G有源电子标签和读写器
·求购915MHz电子标签(量大)
·求购PA薄膜
·井下人员定位招标
 相关关键词搜索
·资讯中心rfid卡  射频识别卡  u2270b  磁卡  仿真模块  射频卡  
·技术中心rfid卡  射频识别卡  u2270b  磁卡  仿真模块  射频卡  
 
 
 
业界资讯 纵深报道 技术学院
国际资讯 | 国内资讯 | 国内企业 | 国外企业 | Global News
  重点专题
· 自动识别协会射频工作组 · RFID圈内企业动态
· RFID行业高层访谈 · 智能卡与一卡通
· RFID与食品安全 · Scan China展会专题
· 远望谷IPO之路 · RFID与医疗卫生
· NFC手机与支付 · RFID联盟产业园建设介绍
· RFID与智能交通 · 各国RFID频段标准与政策
· 出租车停运以及解决办法 · 863计划RFID专项
  相关产品

AT-570远距离手持读写器
Intermec CK3 耐用型移动计算机
图书馆管理系统
CS-771圆极化天线
SATO CX400条形码打印机
图书馆标签转换工作站
Csl-461超高频远距离读写器
Alien-9900读写器
图书馆自助借还工作站
  推荐文章
· 1GHz以下全球免许可频段短距离无线系统的设
· 德国租赁公司使用RFID技术管理物品
· 美包伯·琼斯大学使用RFID系统加强校园安全
· 美国社区居民利用RFID技术回收垃圾
· 美国港口运用RFID技术减少空气污染
· 拉美零售巨头使用RFID改善服装库存管理
· 沙特珠宝商利用RFID改善库存管理
· 基于RFID技术的运输车辆及汽车衡称重防作弊
· 加拿大宠物用品公司采用RFID系统快速满足沃
· 美诊所采用无源RFID系统减少标本瓶贴标错误
  相关案例和方案
· 智能办公大厦射频卡“一卡通” 系统方案
· 基于2.4G有源射频卡超低功耗防冲突算法解决
· 同济大学加油站射频卡卡机联动管理系统
  相关资讯文章
· 新疆和田农村将逐步推行IC卡自动饮水收费管
· 生物认证待整合 RCG K8力开安防新局
· 支付终端机增添新的功能部件不断改变市场面
· 伦敦Oyster卡系统瘫痪使许多卡片无法使用
· 威尔推出网络型射频卡考勤机S6
· 日本RFID标签市场:尚需努力
快 报 论 坛
· 监狱管理腕带电子标签
· 煤矿井下人员定位电子标签
· RFID在防伪领域的应用
· RFID基本工作原理
· 教你让一台电脑只能上允许的QQ
· 干燥冬季,如何消除静电?
快 报 问 吧
· 是否可以通过中继的方式,提高识别距离
· 标签读取的时候能读远读不了近?
· 请教门禁卡有哪几部分组成?
· private string RFID_CM的意思是什么?
· 解析服务、目录服务及信息发布技术研究
· 资产管理一般用什么频率的?
快 报 博 客
· 手掌静脉--告诉你到底是谁?
· 看了一遍我哭了,希望珍惜眼前人。。!!!!!(结
· 如何把条码引入固定资产管理系统?
· 如何利用条码来防伪防窜货管理系统?
· 喷码机(旗舰型)
· 基于RFID技术的服装管理系统

关于我们 | 广告服务 | 帮助中心 | 联系我们 | 友情链接 | 版权申明
客服电话:0531-82679069   编辑部电话:0531-82679328   节假日电话:0531-89180705   客服QQ:651127860 QQ群:41109672  47658979  MSN:RFIDinfo@126.com
版权所有©2003-2008  RFID射频快报 鲁ICP备05021498号 增值电信业务经营许可证鲁B2-20050166号