gs1-128条形码标准
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
UCC/EAN-128条码及其应用
UCC/EAN-128条码符号是ANCC系统(即EAN·UCC系统)中使用的一种条码符号,也是一种商品条码符号。UCC/EAN-128条码是普通128条码(即Code128码)的子集。经原国际物品编码协会(EAN)、美国统一代码委员会(UCC)和国际自动识别制造商协会(AIM)同意,把起始符后面的第一个字符是Code128码中的“功能1”(FNC1)字符的符号结构给EAN·UCC系统专门使用。
UCC/EAN-128条码是EAN·UCC系统中唯一可用于表示附加信息的条码,可广泛用于非零售贸易项目、物流单元、资产、位置的标识。
今年,UCC/EAN-128条码已被更名为GS1-128条码。
1. UCC/EAN-128条码的特点
·UCC/EAN-128条码的编码字符集属于字母/数字式字符集。字符集中包括,ASCII码(美国信息交换标准码)中码值从00至127的128个码所代表的字符(这正是128条码被称作Code128的原因)以及00至99这100个两位数字。其中的ASCII码字符包括,0~9这十个数字,全部英文大小写字母,“!”、“,”、“+”、“-”、“*”、“/”、“@”、“空格”等符号以及“DEL”、“ESC”等控制字符。但是UCC/EAN-128条码不使用“空格”符号。
注:通过使用功能4(FNC4)字符,Code128条码还能对ASCII值为128~255的字符编码,这一功能保留在将来使用,但UCC/EAN-128条码不使用。
·UCC/EAN-128条码使用一个起始符加一个FNC1字符的双字符起始图形,这是UCC/EAN-128条码的特殊标志。
·除终止符外,每个条码字符由3个条和3个空构成。每个条或空由1~4个模块组成,每个条码字符的总模块数为11。UCC/EAN-128码属于模块组配的条码,又称“n,k”条码,即每个字符总模块数为11(n=11)、由3个条和3个空(k=3)组成。终止符由4个条和3个空构成。
·字符与字符是紧密相连的,不需要字符间隔,所以UCC/EAN-128码是连续型条码。
·UCC/EAN-128码是非定长的条码,字符的个数可根据实际需要确定,但是在符号的物理长度和数据字符的个数方面有一定的限制,即每个符号的最大物理长度为165mm、数据字符个数最多为48个。
·可双向译码,即从左至右或从右至左扫描都可以对UCC/EAN-128码译码。
·有字符自校验功能。
·有一个必需的符号校验字符。但符号校验字符不是数据的一部分,不在供人识别字符中表示,也不在译码时输出。
2. 符号结构
UCC/EAN-128条码符号由左侧空白区、一个起始符(Start A,Start B或Start C)和一个FNC1字符组成的双字符起始图形、数据字符(包括应用标识符)、一个符号校验字符、终止符、右侧空白区及供人识别字符组成,见图1。
图1 UCC/EAN-128条码的符号结构
3. 符号字符的结构和编码
符号字符的结构
如前所述,除终止符外,每个条码字符由3个条和3个空构成。每个条或空由1~4,示例见图2。
2
11 2 3 2
“Start C ”字符
4
1 1 13 1
1
3 1 3 2 1 符号字符值为35的字符 图2 符号字符的结构示例
终止符由4
左侧空白区 右侧空白区
双字符起始图形 校验字符(17) 数据字符 终止符 供人识别字符
2331112
图3 终止符的结构
由符号字符的结构可见,每个符号字符中所有条的模块总数为偶数,所有空的模块总数为奇数,利用这一奇偶特性能够实现字符的自校验。
符号字符集
Code 128(UCC/ EAN-128)条码的符号字符集(部分节选)见表1。
表1 Code 128 符号字符集(部分节选)
Code 128(UCC/ EAN-128)条码有三个符号字符集,分别是字符集A、字符集B和字符集C。字符集A包括:ASCII值为00~95的字符,即所有大写英文字母、数字0~9、标点字符、控制字符;7个特殊字符。字符集B包括:ASCII值为32~127的字符,即所有大、小写英文字母、数字0~9、标点字符;7个特殊字符。字符集C包括:100个两位的数字字符00~99(这样每个符号字符可以表示两个数字);3个特殊字符。
虽然Code 128(UCC/ EAN-128)条码有三个符号字符集,但是实际上三个字符集共同使用着一套符号字符值和符号字符条空图形,也就是说,用一套符号字符条空图形来表示三个符号字符集的字符。例如在表1中,字符值为65的符号字符图形是“条空条空条空”的宽度(模块数)为“121124”的条空图形,它可以表示字符集A中的“SOH”、字符集B中的“a”和字符集C中的“65”。为了能实现用一套符号字符图形来表示三个符号字符集的字符,需要使用一些起始定义字符、切换字符和转换字符来说明符号字符图形表示的是哪一个字符集的字符,表1字符值从98至105的字符中就有这样一些字符:
·起始符A(Start A)——定义符号以字符集A开始。
·起始符B(Start B)——定义符号以字符集B开始。
·起始符C(Start C)——定义符号以字符集C开始。
·切换字符(CODE A、CODE B、CODE C)——把先前定义的字符集切换到切换字符所定义的新的字符集。例如,CODE A切换到字符集A,依此类推。
·转换字符(SHIFT)——把紧跟其后的一个字符由字符集A转换到字符集B或由字符集B转换到字符集A,在被转换的那个字符后面的字符则自动恢复到转换字符之前定义的字符集A或B。
Code 128(UCC/ EAN-128)码的符号字符中有四个功能字符:FNC1、FNC2、FNC3和FNC4。FNC1的用途之一是紧跟在起始符Start(A或B或C)后面,形成特殊的Start(A或B或C)+ FNC1的双字符起始符号供UCC /EAN-128码专用,作为区分UCC /EAN-128码和普通128码的标志。FNC1的另一个用途是,当把多个应用标识符及其数据域放在一个条码符号中时,FNC1作为分隔符使用。FNC3(初始化)用于指示条码识读设备将包含此字符的数据视为初始化或对条码识读设备重新编程。FNC2(信息添加)和FNC4(扩展ASCII字符集)不在UCC·EAN系统中使用。
注:如果FNC1出现在起始符后面的第一个位置或在数字区域的第奇数个位置,将其视为