FPGA的RFID读写器设计_第1页
FPGA的RFID读写器设计_第2页
FPGA的RFID读写器设计_第3页
FPGA的RFID读写器设计_第4页
FPGA的RFID读写器设计_第5页
已阅读5页,还剩1页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、【Word版本下载可任意编辑】 FPGA的RFID读写器设计 设计并提出一种高频射频识别系统读写器设计的新方案。读写器采用MF RC500射频读写芯片,以FPGA作为处理器,符合ISOIECl4-443标准,工作频率为13.56MHz,读写距离为10cm左右。给出了读写器硬件系统的组成和软件工作流程,对同时读取多张卡的情况开展了分析,实现了防冲突算法。 0 引言 射频识别技术(RFID)是一种非接触的自动识别技术,通过无线射频的方式开展非接触双向数据通信,对目标加以识别并获取相关数据,可用来追踪和管理几乎所有物理对象。与条形码识别技术、光学符号识别技术、生物识别技术、IC卡识别技术等自动识别技

2、术相比,RFID以它特有的无接触、抗干扰能力强、可同时识别多个物体等优点而逐渐成为自动识别中秀和应用广泛的技术之一。在工业自动化、商业自动化、交通运输控制管理、防伪等众多领域,甚至军事用途都具有广泛的应用前景。RFID系统一般包括应用系统(PC主机)、读写器和电子标签三个部分。RFID电子标签(Tag)由微芯片与天线组成,每个标签具有的电子编码。标签附在物体上以标识目标对象。读写器(Reader)控制射频模块向标签发射读写信号,接收标签的应答,并将信息传输到主机以供处理。用户可以通过相关控制主机或者本地终端发布命令以改变或者定制其工作模式以适应具体应用的需求。本文重点介绍读写器的开发。 1 读

3、写器硬件构造设计 其设计以现场可编程门阵列(FPGA)作为处理器,MF RC500收发芯片作为射频模块,通过RS232串行通信模块和电平转换接口MAX232与上位机相连。系统硬件原理见图1。 1.1 射频模块 读写器对标签的读写是通过发送射频能量和对回波的接收实现的。射频模块一方面将数字模块送来的信息完成调制放大并发送,另一方面接收回波信号将其解调成基带信号,送到数字模块。读写器的RF前端子系统主要负责对电子标签数据的读取与写入。芯片MF RC500由飞利浦公司生产,主要应用于13.56MHz射频信号的产生、调制、解调等功能。它支持ISO14443A所有的层,适用于各种基于ISOIEC 144

4、43A标准并且要求低成本、小尺寸、高性能以及单电源的非接触式通信的应用场合。MF RC500负责与电子标签的射频通信,通过并行数字接口直接连接到处理器。内部的发送器部分不需要增加有源电路就能直接驱动近距离操作的天线(可达10cm)。接收器部分提供一个牢固而有效的解调电路,用于ISOl4443A兼容的应答器信号。 射频接口MF RC500芯片上带有A0、A1、A2三根地址线,用于对内部存放器的寻址,同时DOD7八根数据线支持地址线、数据线复用。在本设计中不采用数据线、地址线复用的接法,采用独立的数据线、地址线的接法。芯片内有64个存放器,由处理器向芯片相应的存放器位配置数据;由处理器读取存放器的

5、相应状态标志来监控芯片当前所处的状态,从而决定下一步的操作。由于片内的64个存放器寻址需要6根地址线,当采用独立的地址线时,由于地址线只有3根,支持不了64个存放器的寻址,为此芯片采用了分页机制。64个存放器被分成8页,每页8个,3根地址线恰好可以实现对每一页内的8个存放器寻址,而对于存放器页的选择,需要配置Page存放器的0、l、2位。Page存放器的第7位用来选择是否采用独立的地址线,芯片复位后,Page存放器的默认值为80H,即默认采用独立的地址线寻址方式,Page存放器的0、l、2位仅当第7位为1时才有效。芯片上的双向数据线DOD7同处理器的IO口直接相连,用来实现芯片间数据的双向并行

6、传输。 1.2 天线 天线在整个系统中起着重要的作用,在非接触式卡与读写器之间的能量与数据传递要通过天线线圈产生的磁通量实现。可以选择2种不同的天线连接到读卡器上:50 匹配的天线或者直接匹配的天线。本方案中采用的是YW-300天线,工作距离可以到达10cm。 1.3 数字模块 数字模块由处理器、存储器组成。处理器的功能有:实现与PC机通信,接收PC机命令并完成解析;将送来的EPC卡号加算CRC校验上传PC机;解决多卡碰撞,实现多卡读取;实现对射频模块的锁相环频率控制以及功率控制。 FPGA的工作过程:上电复位后,接收上位机初始化配置命令和数据,开展相应配置;若有命令传送过来,则通过接口模块接

7、收上位机传送过来的命令;命令接收完后,进入指令分析状态,对接收到的命令开展分析判断。 在主控状态机的控制下,发送模块将把命令和内容组成数据块,开展基带编码、循环冗余校验生成,并打包成符合协议规定的数据帧,传送给射频收发模块,由其完成对信号的调制、放大、发射。电子标签根据接收的数据帧,开展指令分析,根据指令执行相应的功能。接收模块检测回波数据,当检测到回波数据的帧头有效时接收数据。同时将接收到的数据送CRC校验模块校验,校验成功即产生CRC K=1表示读卡成功。 1.3.1 发送编码模块 在ISOIECl4443 Type A协议中,读写器到标签的通信采用改良的Miller编码方式,其标准中定义

8、了三种序列:(A)经64个时钟后应有一个凹槽;(B)1个位内(128个时钟)没有调制;(c)1个位起始时有一个凹槽。这三种序列用于进一步编码。逻辑1用序列(A)表示。逻辑0通常用序列(B)表示,但在a.有两个或两个以上连续的0时,从第二个0开始要用序列(c)来表示所有相连的0;b.直接与起始帧相连的所有0用序列(c)表示。通信开始用序列(c)表示。通信结束用逻辑0跟序列(B)表示。无信息用至少两个序列(B)表示。如图2所示改良的Miller编码波形。 从波形中可以看出,若输入1,则64个时钟后输出一个脉冲,若输入0,则128个时钟内没有脉冲输出,而当有两个连续的0输入时,则在第二个0起始处输出

9、一个脉冲。通过对照理论波形,可以看出编码完全正确,符合设计要求。 1.3.2 接收解码模块 在射频收发模块中开展解调处理而得到的基带信号将被送入FPGA开展Manchester解码、CRC校验,并在主控状态机的控制下通过RS232将数据传送给上位机。在ISOIECl4443 Type A协议中,电子标签到读写器的通信采用Manchester编码方式,其编码规则是:某比特位的值由该比特长度内半个比特周期时电平的变化来表示,负跳变表示1,正跳变表示0。Manchester解码即对Manchester编码信号位的14和34处采样,若采样结果为(1,0),则解码数据为1;若采样结果为(0,1),则解码

10、数据为0。如图3所示Manchester解码波形。输入数据l00100l1,解码所得数据为147,用二进制表示也即100100ll,可见解码完全正确,符合设计要求。 2 系统软件设计 2.1 主程序 读写器上电复位后,对各功能模块开展初始化,然后发出询卡应答指令寻找有效范围内的电子标签。电子标签在读写器的阅读范围外为无电状态,不能开展任何操作。当进入读写器的载波有效范围内时,电子标签上电复位,进入等待接收询卡应答指令的状态。收到询卡指令后,电子标签会发出自己独有的ID码,读写器根据收到的IDR码发出选卡指令,选择该标签开展下一步的通信。 在应用中可能会遇到多个电子标签同时在读写器的有效工作范围内的情况,这些标签就会在收到询卡指令后,同时发出自己的ID码时发生互相冲突,因此就要求系统能够具有防冲突的机制,才能从多个标签中选择出其中一个。主程序流程见图4。 2.2 防碰撞算法 A型射频卡采用了ISOIECl4443系列协议,配合读写器共同实现防碰撞的快速交互通信。为了从多张电子标签中快速识别出一张来单独开展通信,A型卡采用了位碰撞监测协议实现防碰撞过程,即阅读器对卡返回的识别号(即UID)数据帧中的每一位开展冲突监测。当多张A型射频卡在同一时刻向读写器传送UID数据帧时,一定会在同时返回的某一位上有不同的位值。根据Manchester编码规则,这一位正负边沿抵消了,故读写器

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论