基于MSCOMM控件的实时抓取RFID标签ID方法研究

(整期优先)网络出版时间:2023-11-07
/ 2

基于MSCOMM控件的实时抓取RFID标签ID方法研究

魏绍蓉

(青海大学 计算机技术与应用系,青海 西宁 810016)

摘要:RFID(Radio Frequency Identification )系统的广泛应用, 使得RFID信息系统的研究比重逐渐超越硬件设备研究,信息系统的开发与整合占据了RFID系统的大部分工作,也是RFID系统能否正常运行的核心。文章通过研究MSCOMM控件的属性、事件及方法,巧妙利用MSCOMM 控件的 OnComm事件捕获并处理通信事件,检查和处理通信错误。编写程序建立通信通道实时抓取RFID标签ID,显著提高RFID系统的运行效率,增加系统稳定性、实时性、可靠性。

关键词:RFID; MSCOMM;读写器;标签ID

中图分类号:TP 391 文献标识码:A

0 引 言

RFID技术利用无线传输读写器(reader)和标签(tag)之间的信息,并在身份识别、生产制造、军事、医药、交通以及动物跟踪等许多领域应用。基本的RFID系统是由读写器(reader)、标签(tag)及信息系统(information system)三者构成。标签由一块微小的晶片和天线加上一个简单的基板(inlay)组成。标签的芯片中有一组标识码(ID),使用读写器通过无线通讯方式读写标签内的标识码或数据信息,而这些操作都必须由信息系统负责驱动与管理。信息系统用于接收读写器传送进来的数据或驱动读写器将数据写入标签,过程中搭配编码、解码、数据库与网络等信息技术。所以,RFID系统的重点不在RF上,而在ID上,如何利用读写器读取到标签的ID,如何让数据库系统得到从硬件收集到的信息,是RFID系统稳定、实时、可靠运行的关键。

1 RFID技术标准及编码

1.1 RFID技术标准

世界通用的技术标准多是由国际标准组织(International Organization for Standardization,ISO)负责制定与公布,RFID技术的标准也不例外,针对不同频段分别可以在ISO中查询到对应的标准。目前,低频和高频部分的标准已经相对成熟,所以现在研究最多的是超高频的标准,因为超高频的标准仍有开发与改进的空间。超高频标准由美国麻省理工学院自动识别中心(Auto-ID center)研发,主要是标签的电子商品编码与通讯技术上,最后将电子商品编码透过RFID技术加以实现。麻省理工学院自动识别中心分为两个部分,一个是专注研发工作的自动识别中心;一个是由5所研发大学及100家企业联合组成的EPCglobal组织,该组织主要负责透过RFID电子商品编码的商业活动与标准制定工作。EPCglobal组织由国际组织EAN(European Article Numbering;欧洲商品编码)及UCC(Uniform Code Council;编码规范会议)合资而成,主导电子商品编码网络的建立与发展。

1.2 电子商品编码标准

电子商品编码格式定义分为四个部分:

标头(header):是电子商品编码的第一部分,主要是定义电子商品编码长度、辨识类型和该标签的编码结构。

公司代码(manufacturer):是一个组织代码,即公司代码,具有唯一性,负责维护结构中最后两组连续号码。

商品类别码(product):识别商品的形式以及类型,具有唯一性。

序列号(serial number):连续号,具有唯一性,是商品类别中最后一层,可以让同一商品得以区别不同的个体。

电子商品编码是在供应链系统中,以一个数字来识别特定一项商品,再通过RFID读写器读取标签上的数据进行识别。读写器将这个数字传送到电脑或是应用系统中,传送到网络上进行数据的查询与交换。

2 RFID信息系统

RFID信息系统是整个RFID系统能否正常运行的核心,所有硬件的数据都通过信息系统收集并进行分析、处理、储存与再次通过读写器发送到标签

读写器有两种分类方式,一种是搭配使用的标签频段不同进行分类,分为低频、高频、超高频的读写器。另一种是按照信息系统通讯接口的不同可以分为:RS232\RS485\RS422、USB、PCMCIA、CF、SD、Ethernet与Wiegand等。

RFID信息系统开发主要包含四个部分:与硬件沟通的程序编写、与数据库沟通的程序编写、开发WIN、WEB、PDA Base的系统 、整合现有管理系统。

3 MSCOMM控件抓取RFID标签ID

MSCOMM (Microsoft Communication Control) 控件是主要用于串行通信编程的 Active 控件,是微软基于组件对象模型(COM)开发的一个事件驱动的全双工高级通信接口。

3.1 MSCOMM控件重要属性

MSCOMM 作为一个串行通讯控件提供了一系列标准通信命令的接口,允许建立串口连接,可以连接到其他通信设备、还可以发送命令、进行数据交换以及监视和响应在通信过程中可能发生的各种错误和事件,从而可以用它创建全双工的、事件驱动的、高效实用的通信程序。本研究中将涉及MSCOMM控件的属性为: CommPort 设置并返回通讯端口号;Settings 以字符串的形式设置并返回波特率、奇偶校验、数据位、停止位,Settings属性的默认值是“9600,N,8,1”,它表示所使用的通信端口是以每秒9600位的速率进行传输,不进行奇偶校验,每个数据单元是8位,停止位是1位;PortOpen 设置并返回通讯端口的状态,也可以打开和关闭端口。

3.2 MSCOMM控件的通信方式

3.2.1事件驱动通信方式

处理串行端口交互作用的有效方法是事件驱动通信。事件发生时需要有通知,类似在 Car-rier Detect(CD) 或 Request To Send(RTS) 线上有一个字符到达或一个变化发生, 然后利用 MSComm 控件的 OnComm事件处理通信事件; OnComm 事件还可以检查和处理通信错误。在编程过程中, 通过在 OnComm 事件处理函数中加入相应处理代码, 实现应有的功能。

3.2.2查询通信方式

查询方式需要在用户程序中定时或不定时地查询MSComm 控件的 CommEvent 属性是否发生变化,进行相应的处理。本质上仍然是事件驱动,但是在应用程序较小或程序空闲时间较多时,查询通信方式更可取,并且可控性好,传输稳定。因为必须实时监控端口状态,所以查询方式可以使用定时器或DO … Loop 程序模式实现。

3.2 开启系统与硬件读写器的通讯接口:

根据RFID信息系统特点分析,本研究中采用事件驱动通信方式。

将MSCOMM控件从工具箱中拖放到Form1的窗体中,默认名称为AxMSComm1。

将RFID读写器与电脑相连,并确认读写器可以正常连接通讯接口COM。

首先在Form_Load事件中编写MSCOMM控件的通讯协议,其中包括通信速率(Baud rate具体信息参考硬件供应商)、Threshold设定成1等参数,然后将通讯接口COM开启。

3.2 OnComm事件接收读写器的数据程序

关键的步骤是在MSCOMM控件的OnComm事件中撰写程序接收来自读写器的数据。其中,CommEvent属性为通信事件或错误返回值,在该控件的对象库中可以找到这些常量。如果读写器正常,将返回CommEvent=2的状态;相反,如果读取错误将返回CommEvent=7的状态,程序将关闭通讯接口,并提示错误信息,问题可能会发生在读写器的连接及损坏状况。MSCOMM控件接收数据的方法Input 从接收缓冲区返回和删除字符。但是接收的是属于数据封包,也就是并非一次就传送完整ID号,而是将ID号切割成小段来进行传输,而每完整段落的结尾都有vbCrlf标记。因此,需要依靠vbCrlf这个结束符号来判断一个完整的数据,并加以组合后,显示在相应的控件中。

4 结 论

本文针对RFID系统中Windows Form架构的开发方式,研究MSCOMM串行通讯控件,连接通信设备、发送命令、进行数据交换,监视和响应在通信过程中发生的错误和事件,从而创建全双工的、事件驱动的、高效实用的通信程序。利用MSCOMM控件实时抓取RFID读写器读取到的标签的ID号,由此才能将硬件采集到的数据,配合后端数据库,通过RFID信息系统进行分析、处理、储存与再次通过读写器发送到标签。通过利用MSCOMM控件实时抓取RFID标签ID方法,大大加快开发周期, 增加系统的实时性、可靠性,提高了RFID系统的运行效率和稳定性。

参考文献(References):

[1]章辉,叶建芳,叶建威. 基于MSComm控件串口通信的实现[J].电子测量技术,2011,34(8):145-148.

[2]王华,岳丽全. MSComm控件在VC++6.0串口通信中的应用[J].长春工程学院学报.2012,10(1):73-78.

[3]姚运志.RFID辅助生产实时监控的复杂事件处理研究[J].现代制造工程,2015,16(1)24-29.

[4]樊华.面向物联网的RFID不确定数据清洗与存储技术研究[D].国防科技大学,2013.

[5]吴江洲.基于RFID的公交客流信息采集系统设计与实现[D].重庆大学,2013.

[6]吴紫涵.无芯片RFID标签编码方式设计[D].西安电子科技大学,2014

[7]薛宇航.仓储管理手持终端RFID功能的开发[D].陕西科技大学,2014

[8]黄慧冬,王建中,李甫标.自主标准超高频RFID读写器的基带编解码设计[J].工业控制计算机,2015.28(1):77-80.

[9]魏峰,山磊.MSComm在嵌入式系统串行通信中的应用研究[J].连云港职业技术学院学报.2014(04):57-60

[10]唐晓彧.面向肉品追溯体系的RFID中间件技术研究及实现[D].南京农业大学,2014