浙江工业职业技术学院数字媒体与信息工程分院 阮胜利
RFID是Radio Frequency Identification的缩写,即自动识别技术的一种,通过无线射频方式进行非接触双向数据通信,对目标加以识别并获取相关数据。射频识别的主要核心部件是读写器和电子标签,电子标签可以接收相距几厘米到几米距离内的读写器发射的无线电波,而读写器可以读取电子标签内存储的信息,识别电子标签代表的物品、人和器具的身份。
射频识别技术具有很多突出的优点:RFID可工作于各种恶劣环境,不需要人工干涉,不需要直接接触,不需要光学可视即可完成信息的输入和处理,可识别高速运动物体并且可以同时识别多个标签,操作快捷方便,实现了无源和免接触操作,应用便利,无机械磨损,寿命长;RFID的总体成本一直处在下降之中,越来越接近接触式IC卡的成本,甚至更低,这为其广泛,大规模的应用奠定了基础。如果RFID技术能与电子供应链紧密联系,那么它很有可能在几年之内取代条形码扫描技术。
射频识别的基本模型如图1所示。其中,电子标签又称为射频标签、应答器、数据载体;阅读器又称为读出装置、扫描器、读头、通信器、读写器(取决于电子标签是否可以无线改写数据)。电子标签与阅读器之间通过耦合元件实现射频信号的空间(无接触)耦合;在耦合通道内,根据时序关系,实现能量的传递和数据交换。
本系统的最初设想是实现一个基于RFID的嵌入式系统,根据嵌入式的可裁剪,便携等特点实现一个手持式的,能够有效防碰撞的使若干近距离物体条件下也可以有效识别的RFID系统。
由于本系统的集成度较高,防碰撞效果较好,所以可应用范围很广,比如图书馆图书管理和借还书本的应用。
本系统可以方便图书馆管理员随时携带来捕捉书上的智能标签的信息,快速搜索图书,将书架上放乱的书管理归类;图书借还部分无需图书管理员介入,读者自行到自助借还书计算机处完成借还书手续。
还有超市物品管理及价格扫描的应用,养殖场动物的管理应用。总而言之,在当前的硬件条件下,在不同的应用领域只需修改上位机上的相关软件便能将本系统有效地应用。当然任何一方面的应用都必须另外去开发相关的软件,本系统只是设计一个应用的总体模型,所以后续的开发还有待进一步的扩充和完善。
本系统主要由电源管理单元、单片机AT89C52、射频卡读写模块(主要由MFRC500构成)、无线模块、键盘显示电路及其他外围电路构成。
手持射频卡读写器的工作原理如下:整个手持机由电源管理单元给各个模块提供工作电压,由单片机控制射频卡芯片,并通过天线发射电磁波(区域大小取决于天线的设计质量),当有射频卡(也可以称作电子标签,RFID卡,非接触卡)进入天线发射的有效范围时,射频卡里有一个LC串联谐振电路,它的工作频率与射频卡读写器天线发射的频率相一致,由于电磁波提供的激励能量,使得射频卡里的LC谐振电路产生了感应电势,电压达到一定电压值,就作为卡内其它电路工作的电源,然后射频卡将数据通过内部电路以同样的频率发送回去,读写器通过天线接收到射频卡的信号后,进行解调解码,并根据冲突检测和校验,来判断有效的数据,接着通过单片机的串口发送数据给无线模块SIM900D,SIM900D可使用短信或者TCP/IP数据流两种方式来进行数据的无线传输,由于短信方式比较适合数据量少,单方向的场合,这里为了使该设计具有更广的使用,所以采用TCP/IP数据流的方式,与远程控制数据中心进行数据交互。
1.读写器的主要控制器
手持读写器的主要的CPU采用ATMEL公司的AT89C52。它是一款常用的51单片机。被应用到各种工业控制和消费电子领域中。其成本低,开发平台简单。当然在这个系统里理论上完全可以用其他单片机或者ARM控制器来替换。
2.射频卡读写器设计
射频卡读写主要通过射频卡芯片MF RC500及其必要的外围电路构成,射频卡芯片是整个读写器的核心,它可以实现读写射频卡(电子标签)所有必要的功能,包括射频信号的产生、调制、解调等。此芯片实际上是单片机与射频卡之间进行数据传输的关键。任何射频卡上的数据读写都要通过此芯片来传送。通过传送不同的命令给此芯片,就能实现不同的控制。此芯片需要在OSCSIN和OSCOUT引脚上外接13.56MHz晶振,当然也可使用其他外部时钟,但不推荐这样做,因为它本身的时钟已经足够稳定。
为了实现最佳性能,射频卡芯片的模拟部分使用单独的电源,它对内部的震荡器、模拟解调器和解码器提供工作电压,同时对驱动部分和数字部分也各使用单独电源供电,此读卡器,利用磁珠把各电源进行分开。此芯片支持不同的CPU接口,单片机通过控制射频卡芯片的NCS引脚来选择射频卡芯片,在射频卡芯片上电或硬件复位后,此芯片马上复位它的接口模式,并根据几个固定引脚上的逻辑电平来识别当前CPU接口的类型。我们这里选择了地址线与数据线分时复用的接口类型,其具体操作是:当ALE为逻辑1时,将地址锁存到内部的相应锁存器中,然后由读写信号完成对芯片的数据读写。
图1 RFID模型图
在这个部分,读写器的天线设计也相当的重要,它的设计质量将直接影响读写射频卡的有效距离,我们参考芯片的数据手册,采用直接匹配的天线,其有效距离最远可以达到10cm。在天线电路的设计里,我们主要考虑两个方面的问题:
第一个方面是对电磁干扰的滤波,由于这个读写器的工作频率为13.56MHz,由时钟电路产生,但它也伴随产生13.56MHz中的3次、5次等高次谐波。为达到国际EMC要求,良好地控制这些电磁干扰。本读写器使用低通滤波器来控制电磁干扰。
第二个方面是为了天线的性能达到最好,需要考虑天线电路的阻抗匹配。
3.电源的设计
由于本手持机在使用无线模块时,需要较大的电流。另外本设备为手持机,所以系统设计采用优科能源的可充电聚合物锂离子电池组件(2节串联,每节3.7V的标称电压),可充电(需另购充电器,充电电压为8.4V),电池电压通过降压型DCDC芯片AOZ1016A转换成5V电压输出,此芯片的输入电压范围较大(从4.5V~16V),最大可以输出3.6A的电流,完全满足本手持机的电压需要。
4.显示器的设计
显示部分采用160×96点阵液晶屏,这个液晶屏是总线型的,它与单片机的连接采用数据并行模式,直接与单片机的PO口相连,而液晶屏的读写控制信号R/W则直接连接单片机的读写信号上,另外液晶屏的片选信号CS,指令/数据寄存器选择信号A0,复位信号RESET和串并行选择端P/S,都需要分别连接到单片机的其他I/O口。
5.键盘的设计
键盘设计使用单片机P1口的八个I/O口实现,采用4×4矩阵动态扫描模式,可设计提供11个数字键(包括小数点)、确认键、取消键、退格键、2个功能键,共16个按键。满足一般手持设备的按键需求。
6.无线通讯模块
目前市场上提供的无线通讯模块有很多,为了适应更多的国家使用,我们使用刚刚推出的四频的无线模块SIM900D(它是SIM340DZ的替代品),此模块自带TCP/IP协议栈,无需其他CPU的支持就能利用TCP/IP数据流方式进行无线数据传输。当然它也使用标准的AT命令,性能稳定,使用方便。本手持机中,单片机通过串口与SIM900D进行通信,由于单片机AT89C52采用5V供电,而SIM900D使用4.3V供电,所以需要在5V电压的基础上进行降压,我们这里采用简单的二极管进行串接降压。当然此模块还需要SIM卡接口电路,由于SIM卡是经常被手碰到的地方,需要给SIM卡加上ESD保护电路。
手持机软件系统用C51进行直接编写,当然如果扩展外部储存器,也可考虑在本系统中采用嵌入式操作系统,并在操作系统的基础上编写自己的应用驱动程序,我们这里考虑到本手持机只是作为物流读写射频卡的中间设备,数据处理类型和任务较少,较复杂的应用处理可以由远程数据控制中心来实现,所以这里采用C51直接编写全部程序,系统的各个单元部分用单独的任务线程设计,在减少了软件设计的复杂度的同时,也增强了软件系统的稳定性和可读性。
本系统软件设计主要包括,系统初始化,键盘扫描处理,液晶显示,射频卡的读写,以及无线模块的控制与数据通讯等主要部分,由于系统初始化,键盘扫描处理,LCD显示,都是非常常见的应用设计,下面主要说明射频卡的读写部分的设计。
1.射频卡的读写软件设计
射频卡的读写,最主要是对芯片进行控制。因此读写程序也主要是完成单片机对射频卡芯片MF RC500的控制,从而实现芯片与射频卡之间的数据交互,工作流程如下:
1)单片机对射频卡芯片进行初始化,使其进入正常的工作状态;
2)等待中断信号(射频卡芯片通过天线检测到有效的射频卡进入有效范围后,产生中断信号给单片机);
3)由单片机发送相应的指令给射频卡芯片,进行请求,防碰撞,选择等操作;
4)单片机发送相应的指令对读写射频卡密码进行验证;
5)验证完毕后,读取射频卡指定块的内容或者写入相应地址块的数据;
6)完成数据读写后,向卡发送停止命令,并可判断卡有没有离开。
2.无线模块的数据传输的软件设计
由于无线模块SIM900D自带TCP/IP协议栈,在本手持读写器里,单片机通过其串口,利用AT命令就可以对SIM900D进行数据通讯。主要流程如下:
1)先由单片机通过I/O脚控制模块上电,使SIM900D上电复位;
2)单片机通过串口发送AT命令控制无线模块SIM900D与远程服务器建立TCP连接(预先需要知道远程数据控制中心服务器的IP地址和端口);
3)连接建立后,单片机把准备好的数据发送给无线模块SIM900D,通过前面建立好的数据通道进行数据传输;并读取无线模块SIM900D从远程数据中心返回的数据;
4)数据处理好后,关闭当前建立的TCP连接,然后再关闭无线模块SIM900D的电源,以节约耗电,继续等待下一次的通讯。
本手持机主要支持IS014443A协议的射频卡的读写,此射频卡目前已经被广泛使用。利用此设计方案,开发的物流手持射频卡读写器,具有携带方便,成本低,软件修改方便,可使用场合多的特点,随着物联网的发展,其应用前景一定非常广阔。
[1]姜波编著.WindowsCE.net程序设计[M].机械工业出版社,2007.
[2]谭浩强编著.C程序设计[M].清华大学出版社,1991.
[3]龚建伟,熊光明编著.VisualC++TurrboC串口通信编程实践[M].电子工业出版社,2005.
[4]魏忠.嵌入式开发详解[M].电子工业出版社,2003.
[5]陈大才.射频识别(RFID)技术-无线电感应的应答器和非接触IC卡的原理与应用[M].电子工业出版社,2001.
[6]周立功.ARM与嵌入式系统基础教程,广州周立功单片机发展有限公司,2004
[7]马忠梅.ARM嵌入式处理器结构与应用基础[M].北京航空航天大学出版社,2002.
[8]Microsoft Corporation.SQLServerCEB00ks online.2004.
[9]周立功.ARM嵌入式系统软件开发实例[M].北京航天航空大学出版社,2004.
[10]Transmission Control Protocol.RFC793.1981.50-62.