产品电子代码EPC是GS1系统的一部分,是对GS1条码编码体系的扩展。EPC电子标签与阅读器之间可以通过无线通信自动进行数据交换,实现对单个商品的唯一标识,提高了产品处理的自动化程度,利用互联网构造了一个覆盖世界上万事万物的实物互联网,由此产生了物联网的概念。
EPC的产生基于RFID技术的发展,是对条码系统的改进。条码系统使用图像印刷标签,识别过程通常需要人工参与。EPC使用电子标签代替图像标签,一是提高了识别的自动化程度,二是提高了标签的信息存储容量,更重要的是标签内的信息不再固定不变,可在识读过程中实时修改,从而为物联网的各种应用提供技术支持。
EPC系统的最终目标是为每一单品建立全球的、开放的标识标准,即为世界上的每一件物品都赋予一个唯一的编号,该编号的载体是一个电子标签。当EPC标签贴在物品上或内嵌在物品中时,该物品与EPC标签中的唯一编号就建立起了一对一关系。当EPC标签通过射频识别系统时,阅读器就读取EPC标签所存储的信息,然后将信息送入互联网EPC体系中的EPC信息服务系统(EPCIS),实现物品信息的采集和追踪,接下来进一步利用EPC体系中的网络中间件等,对采集的EPC标签信息进行处理和应用。
1996年,EAN和UCC与国际标准组织ISO合作,陆续开发了RFID相关标准。1999年麻省理工学院成立Auto-ID Center,致力于自动识别技术的开发和研究,其在UCC的支持下将RFID技术与互联网结合,提出了EPC的概念。2003年,EAN和UCC成立了EPCglobal公司,正式接管了EPC在全球的推广应用工作,并将Auto-ID Center更名为Auto-ID Lab,为EPCglobal提供技术支持。2004年中国物品编码中心获得EPCglobal授权,成立了EPCglobal China,负责统一管理、注册、赋码和组织实施我国的EPC系统推广应用工作及EPC标准化研究工作。
目前第二代的EPCglobal标准(简称Gen2)是由RFID技术、互联网和EPC组成的EPCglobal网络的基础,包括标签数据转换(TDT)标准、标签数据(TDS)标准、空中接口协议标准、读写器协议标准和认证标准等。
EPC的编码结构是一个二进制位串,有64位、96位、198位和256位等几种结构,由标头和数字字段两部分构成,标头字段确定了码的总长度、结构和功能(标识类型)。EPC标签数据(TDS)标准V1.1中规定编码的标头为2位或者8位。
EPC编码体系分为3类:通用标识(GID)类型、基于EAN.UCC的标识类型和DOD标识类型。DOD标识类型用于美国国防部的货物运输。EPC的代码类型不同,编码结构也不同。
96位的EPC通用标识GID-96的编码结构如图2-6所示,包含了标头、通用管理者代码、对象分类代码和序列代码4个字段。
图2-6 GID-96编码的通用结构
8位标头的前两位必须是00。标头值0000 0000保留,以允许使用长度大于8位的标头。8位标头中有一些未定义,如0000 0000~0000 01xx,而其他则对应相应的编码方案,如0000 1000对应SSCC-64、0011 0000对应SGTIN-96、0011 0001对应SSCC-96等,其中64和96分别指编码长度为64位和96位。当前已分配的标头如果前两位非00或前5位为00001,则可以推断该标签是64位,否则该标签为96位。将来,未分配的标头可能会分配给现存或者其他长度的标签。
通用管理者代码通常就是厂商识别代码,由EPCglobal分配,用于标识一个组织管理实体,负责维护对象分类代码和序列代码。
对象分类代码用于识别物品的种类或类型,其在每个厂商识别代码下必须是唯一的。对象分类代码也包括消费性包装品的库存单元或高速公路系统的不同结构等。
序列代码则在每个对象分类代码内是唯一的,也就是说,管理实体负责为每个对象分类代码分配唯一的、不重复的序列代码。
EPC标签数据(TDS)标准定义了5种基于EAN.UCC的标识类型,即系列化全球贸易标识代码(SGTIN)、系列化货运包装箱代码(SSCC)、系列化全球位置码(SGLN)、全球可回收资产标识符(GRAI)和全球单个资产标识符(GIAI)。
SGTIN-96的编码结构如图2-7所示,由标头、滤值、分区值、厂商识别代码、对象分类代码和序列代码6个字段组成。
图2-7 SGTIN-96编码结构
标头的值固定为0011 0000,代表SGTIN-96。
滤值用来快速过滤和确定基本物流类型,如001表示零售消费者贸易项目、010表示标准贸易项目组合、011表示单件项目等。
分区值指出随后的厂商识别代码和产品分类代码两个字段各占多少位。例如,如果厂商识别代码为24位,对象分类代码为20位,则分区值为5(101)。
序列代码为一个数字,是厂商分配给每一件产品的唯一标识符。
EPC编码标准与EAN.UCC编码标准是兼容的,EAN.UCC代码可以顺利转换为EPC的相应代码。
EAN.UCC代码由厂商识别代码、商品项目代码和校验码组成,以条码作载体时被当作一个整体来处理,而EPC网络中则需要单独处理厂商识别代码和商品项目代码。在转换成EPC编码时,需要了解EPC编码厂商识别代码的长度,然后将EAN.UCC系统代码的十进制数转换成二进制编码。另外,EPC编码中不包含校验位,因此当从EPC编码转换成传统的十进制代码时,需要根据其他的位重新计算校验码。
下面介绍从EAN.UCC的GTIN代码到EPC的SGTIN代码的转换过程。GTIN用于标识一个特定的对象类,不能用于标识单品,转换为SGTN时,需要增加一个序列代码。
GTIN转换到SGTIN时,各字段的映射关系如图2-8所示。SGTIN厂商识别代码由GS1分配给管理实体,与GTIN十进制编码中的厂商识别代码相同。项目代码是由管理实体分配的一个特定对象的分类,可通过将GTIN的指示位和项目代码位连接成一个单一整数而获得。序列代码由管理实体分配给一个单一对象,是SGTIN相较于GTIN新增加的部分。
图2-8 GTIN转换为SGTIN的编码方案
假如GTIN的代码是1 0614141 00235 8,连同序列代码8674734转换为EPC的步骤如下。
1)标头(8位)为0011 0000。
2)设置零售消费者贸易项目(3位)为000。
3)由于厂商识别代码是7位十进制数(0614141),对应的二进制为24位,因此分区值(3位)是5,二进制表示是101。
4)0614141转换为EPC管理者分区,二进制(24位)表示为0000 1001 0101 1110 1111 1101。
5)首位数字(指示码)和项目代码确定成100235,二进制(20位)表示为0001 1000 0111 1000 1011,去掉校验码8。
6)将8674734转换为序列代码,二进制(38位)表示为0000 0000 0000 0010 0001 0001 0111 0110 1011 10。
7)按照SGTIN-96的格式“标头 滤值分区值厂商识别代码指示码项目代码序列代码”,串联以上数位为96位EPC(SGTIN-96):0011 0000 0001 0100 0010 0101 0111 10111111 0100 0110 0001 1110 0010 1100 0000 0000 0000 1000 0100 0101 1101 1010 1110。用十六进制表示为3014 257A F461 E2C0 0084 5DAE。
第2章EPC系统的组成2.3.4节
EPC系统由EPC编码体系、射频识别系统及信息网络系统组成,如图2-9所示。更多内容参考视频。
图2-9 EPC系统
EPC编码体系用于标识物品,其基础是GS1系统的EAN.UCC条码和EPC电子代码。
EPC射频识别系统由EPC标签和识读器(读写器)组成。标签用于承载EPC编码及其附加功能信息,贴在物品上或内嵌在物品中。识读器用于识读EPC标签,读取其中的代码信息。当EPC标签靠近EPC识读器时,二者之间就可自动进行数据交换。
EPC信息网络系统主要由EPC中间件、对象名称解析服务(Object Naming Service,ONS)和EPC信息服务(EPC Information Service,EPCIS)组成。EPC中间件用于加工和处理来自读写器的所有信息和事件流。ONS负责将EPC编码转化成一台EPCIS服务器的网络地址。EPCIS则对EPC信息进行存储和管理。
EPC系统在实现时,先进行产品信息采集,然后通过互联网技术向全球供应链中的授权贸易伙伴分享该信息。EPC系统的具体实现过程如下:先将EPC标签粘贴在集装箱、托盘、箱子或物体上,然后利用分布在整个供应链各处的EPC识读器在标签经过时读取各个标签所承载的信息,将EPC编码和读取日期、时间与地点传输给EPC中间件,再由EPC中间件在各点对EPC标签、识读器和当地基础设施进行控制与集成,过滤冗余信息,利用对象名称解析服务(ONS)技术将采集到的EPC标签相关信息传输给产品电子代码信息服务(EPCIS),由EPCIS对EPC标签中相关数据的存取进行管理。在这个过程中,企业可通过ONS访问EPCIS服务器获得相应EPC标签对应产品的相关信息,并指定哪些贸易伙伴有权访问这些信息,还可以通过中间件经过安全认证后访问企业伙伴的产品信息,从而最终形成包含并能实时显示各个产品移动情况的信息网络。EPC系统中的所有信息均以物体标记语言(Physical Markup Language,PML)文件格式来传送,其中PML文件可能还包含一些实时的时间信息和传感器信息等。