安徽能源技术学校 安徽合肥 230036
摘要:本文介绍了基于RFID(射频识别技术)自动清点图书的系统。RFID芯片标签附在图书内,标签接收到RS232 标准协议读卡器产生无线之能量信号源后,芯片即响应预先存储的信息给他们,通过9孔插头RS232串口通讯与计算机进行数据传输,系统同步更新后台数据库记录,实现借书,还书,图书入库,查找图书,顺架盘点等自动清点功能。
关键字:RFID技术;RS232串口通信;自动清点
1 引言
随着现代物流管理信息化建设的发展,仓储管理信息化也越来越多地被关注,计算机和自动化技术被越来越多地引入到了仓库管理系统中。以RFID为代表的新技术正在深刻地影响着仓储管理系统,甚至孕育着一场“物流革命”。
与传统的条形码相比,RFID具有如下优势:不需要光源,甚至可以透过外部材料读取数据; 能在恶劣环境下工作;能够轻易嵌入或附着在不同形状、类型的产品上;读取距离更远[1,3,6]。
2 RFID简介
2.1工作原理
典型的RFID系统包括“标签”、“读取器”,以及一个主机系统或服务器。最常见的方法是,在与天线相连的微型芯片上存储识别产品的序列号和其他信息,芯片和天线一起被称作 RFID 标签。通过天线,芯片可以将识别信息传输到读取器[6]。接着,读取器将 RFID 标签返回的无线电波转换成所需的格式,然后将其传递到可以使用这种格式的计算机上。
2.1.1硬件系统构成与功能
(1)阅读器
阅读器的主要功能是通过天线对应答器进行数据读写操作,此外,阅读器还有附加的接口以便将所获得的数据传输给另外的系统。阅读器硬件系统由接口电路、控制单元、射频模块、天线组成[2]
上位机通过接口电路与阅读器的控制单元连接,向控制单元发送读/写卡等命令,接收来自控制模块的数据与操作报告。控制单元与射频模块相连,在控制单元上运行的主程序根据具体情况控制射频模块操作。射频模块对数据进行调制后通过天线发送至应答器,并对从天线上接收的应答器返回信号进行解调。
(2)射频卡
射频卡片采用无源的ISO14443IC卡,它是数据的存储载体。当有芯片卡片进入阅读器的天线工作范围内时,卡片被激活,阅读器发送读数据信号给卡片,卡片根据接收到的读数据信号将存储单元中指定的数据通过天线发送至阅读器,阅读器再将数据通过RS232 接口发送至上[2]。
2.1.2本系统的读卡器性能介绍
双向串口通讯,由电脑USB接口提供稳定的电源。一个LED指示灯和一个蜂鸣器,刷卡时蜂鸣器响一声,指示灯闪一下。支持μEM4001、4100或及其兼容的RFID,标准:ISO/IEC18000,频率:125kHz,感应距离为80mm-150mm。调用读卡函数读出14字节卡号,如data[0]到data[13]。
4.设计思想
4.1数据库的设计
4.1.1数据库概念设计
将需求分析得到的用户需求抽象为信息结构及概念模型的过程是概念结构设计。为了描述数据库结构的概念模式,这里采用E-R图来描述数据库的实体关系。在图书管理模块中,一个学生用户可以借多本书籍,每本书只能借给一个学生,因此学生用户与书之间是一对多的关系。
4.1.2数据库逻辑设计
在系统设计过程中,首先要建立的就是数据库。本数据库采用SQL Server 2000来构造,共使用了个表,它们分别是管理员信息表(admin)、学生信息表(student)、学生已借书籍信息表(borrow)、书库信息表(booksystem1)、藏书位置表(weizhi)。
4.2系统架构
4.2.1基本架构
三层结构是一种成熟、简单并得到普遍应用的应用程序架构,其结构如下图所示:

4.2.2系统硬件与软件接口模块实现
本次设计使用的射频卡里储存的卡号是十四位字符,MSComm1.RThreshold = 14 ,接收缓冲区收到每一个字符都会使 MSComm 控件产生 OnComm 事件,读卡一次,循环进行。这个语句至关重要,我这就要求在开发的同时要了解射频卡内储存的信息,否则读卡无效,我试过很多数据,如15,13都导致不能正常读取。
MSComm1.CommPort = 1;
MSComm1.PortOpen = true;//打开串口1
MSComm1.Settings = "9600,N,8,1"//9600 //波特,无奇偶校验,8 位数据,一个停止位。
MSComm1.InBufferSize = 1024;//设置MSComm1接收缓冲区为1024字节
MSComm1.OutBufferSize = 512;//设置MSComm1发送缓冲区为2字节
MSComm1.InputMode = comInputModeBinary;//设置接收数据模式为二进制形式
MSComm1.InputLen = 1;//设置Input 一次从接收缓冲读取字节数为1
MSComm1.SThreshold = 1;//设置Output 一次从发送缓冲读取字节数为1
MSComm1.InBufferCount = 0;//清除接收缓冲区
MSComm1.OutBufferCount = 0;//清除发送缓冲区
MSComm1.RThreshold = 1;//设置接收一个字节产生OnComm事件
MSComm1.InputLen = 0 //当输入占用时,告诉控件读入整个缓冲区运行。
参考文献
[1] 吴晞,马瑞.RFID系统在图书馆中的应用[J].图书馆论坛,2005,25(1):4-6.
[2] 王文珍.基于RFID超市智能库架管理系统设计[J].包装工程,2008,29(9):78-80.
[3] 孟凡明,贺立民.图书馆书库清点方法初探[J].中国环境管理干部学院学报2008,18(4):118-119.
[4] 杜玉梅.射频识别技术(RFID)在物流系统中的应用[J].企业技术开发,2004,11(10):12-15.
[5] 邱小勇,刘凯.RFID与现代物流管理发展的探讨[J].物流技术,2005,41(2):210-215.
[6] 赵崇荣.RFID在图书馆行业中的应用探讨[J]. 科技创新导报,2008,28(10):169-170.