中文标准名称:商品条码 128条码
英文标准名称:Bar code for commodity―128 bar code
- 发布日期:2014-09-03
- 实施日期:2015-02-01
- 主管部门:国家标准化管理委员会
- 归口单位:全国物流信息管理标准化技术委员会
- 发布单位:中华人民共和国国家质量监督检验检疫总局、中国国家标准化管理委员会
本标准规定了GS1系统128条码(以下称GS1-128条码)的结构、条码字符集、条码符号尺寸、质量保证,以及GS1-128条码的应用参数、字符串编码和译码规则等内容。
本标准适用于商品条码系统中的自动识别和数据采集。
GS1-128 条码 符号结构
GS1-128条码符号的组成,由左至右如下所示:
- a)左侧空白区;
- b)双字符起 始图形包括-一个起始符(Start A.Start B或Start C)和FNC1字符;
- c)表示数据和特殊字符的-一个或多个条码字符(包括应用标识符);
- d)校验符;
- e) 终止符;
- f)右侧空白区。
条码符号所表示的数据字符,以可供人识别的字符表示在符号的下方或上方。GS1-128条码符号的基本格式如图1所示。
条码字符集表
GS1-128条码字符集见表1,其中单元宽度列中的数值表示模块的数目。
条码字符结构
每个条码字符(终止符除外)由6个单元11个模块组成,包括3个条、3个空,每个条或空的宽度为1个~4个模块。终止符由4个条、3个空共7个单元13个模块组成。
在条码字符中条的模块数为偶数,空的模块数为奇数,这一奇偶特性使每个条码字符都具有自校验功能。
条码数据子符编码
GS1-128条码的3个字符集A、B、C见表1所示。其字符集与GB/T 18347所示字符集相同。
字符集A、B和C给出了数据字符的条、空组合方式,字符集的选择依赖于起始符Start A(Start B或Start C)、切换字符CODE A(B或C)或转换字符(SHIFT)的使用。如果条码符号以起始符START A开始,则最先确定了字符集A;如果条码符号以起始符START B开始,则最先确定了字符集B;如果条码符号以起始符START C开始,则最先确定了字符集C。
通过使用切换字符CODE A(B或C)或转换字符(SHIFT)可以在符号中重新确定字符集(这些特殊字符的使用见4.2.4)。
通过使用不同的起始符、切换字符和转换字符,同一数据可表示为不同的GS1-128条码符号。具体应用中无须规定所要使用的字符集。附录A给出了使任何给定数据的符号长度最小的规则及示例。译码器应能够通过与附录A中说明的起始符、切换和转换字符不同的有效组合来对符号进行译码。
每个条码字符对应- -个数值,见表1。该数值用于计算符号校验字符的值,同时也可用于与ASCII值之间的转换(参见附录B)。
GS1-128 字符集
字符集 A
字符集A包括所有标准的大写英文字母、数字字符0~9、标点字符、控制字符(ASCII值为00至95的字符)和7个特殊字符。
字符集 B
字符集B包括所有标准的大写英文字母、数字字符0~9、标点字符、小写英文字母字符(ASCII值为32r~127的字符)和7个特殊字符。
字符集 C
字符集C包括100个两位数字00~99和3个特殊字符。采用字符集C时,每个条码字符表示两位数字。
使用应用标识符和链接的GS1-128条码基本结构
GS1-128条码符号的基本结构(不包括空白区)
所有使用GS1应用标识符的GS1条码都拥有特定的符号字符,以表示该条码是按照GS1应用标识规则进行编码的。GS1-128 条码在紧跟起始符后的位置上使用FNC1字符,在全球范围内这一双字符起始图形仅供GS1系统使用。这样可以将GS1-128条码与128条码区分开来。
所有使用GS1应用标识符的GS1条码允许多个单元数据串编码在一个条码符号中,这种编码方式称为链接。链接的编码方式比分别对每个字符串进行编码节省空间,因为只使用一次符号控制字符。
同时,一次扫描也比多次扫描的准确性更高,不同的元素串可以以一个完整的字符串供条码扫描器中传送,具体参照图6。
对于从链接的条码符号中传送的不同字符串需要进行分析和加工,为简化操作并缩减符号的长度,对–些字符串的长度进行了预先的设定(见表4)。表4中没有出现的字符串如果不是处于符号的最后(校验符之前)时,必须在其后紧跟一个FNC1字符,用来标识字符串的边界并与后面的字符串区分开来。
应用标识符的前2位 | 字符数(应用标识符和数据域) | 应用标识符的前2位 | 字符数(应用标识符和数据域) |
---|---|---|---|
00 | 20 | 17 | 8 |
01 | 16 | (18) | 8 |
02 | 16 | (19) | 8 |
(03) | 16 | 20 | 4 |
(04) | 18 | 31 | 10 |
11 | 8 | 32 | 10 |
12 | 8 | 33 | 10 |
13 | 8 | 34 | 10 |
(14) | 8 | 35 | 10 |
15 | 8 | 36 | 10 |
(16) | 8 | 41 | 16 |
识符。
GS1-128条码符号长度最小的字符集选择及应用示例
A.1一 般要求
在GS1-128条码符号(或其他128条码)中,通过使用不同的起始、切换和转换字符的组合,可以对相同的数据有不同的表示。
将以下规则置于打印机控制软件中,可以使给定的数据符号的条码字符数最少(符号宽度最小)。
A.2起始符的选择
起始符的选择–.般遵循以下原则:
- a)如果数据以4位或4位以上的数字型数据符开始,则使用起始符C;
- b)如果数据中在小写字母字符之前出现ASCII控制字符(如NUL),则使用起始符A;
- c)其他情况,使用起始符B;
A.3如果使用起始符C,并且数字个数为奇数,则在最后一个数字前插人字符集A或字符集B。具体
使用字符集A或字符集B,参照A.2 b)和A.2 c)。
A.4如果在字符集A或字符集B中同时出现4位或4位以上的数字字符:
- a)如果数字型数据字符的个数为偶数,则在第–个数字之前插人CODEC字符将字符集转换为
- 字符集C。
- b)如果数字型数据字符的个数为奇数,则在第-一个数字之后插人CODEC字符将字符集转换为
- 字符集C.
A.5当 使用字符集B,并且数据中出现ASCII控制字符时:
- a)如果在该控制字符之后,在另-一个控制字符之前出现一个小写字母字符,则在该控制字符之前
- 插人转换字符;
- b) 否则,在控制字符之前插人CODE A将字符集转换为字符集A。
A.6当使用字符集 A,并且数据中出现小写字母字符时:
- a)如果在该小写字母字符之后 ,在另-一个小写字母字符之前出现- – 个控制字符,则在该小写字母字符之前插人转换字符;
- b) 否则,在小写字母字符之前插人CODE B将字符集转换为字符集B.
A.7如果在字符集 C中出现一个非数字字符,则在该非数字字符之前插人CODE A或CODE B,具体应用参照A.2 b)和A.2 c)。
- 注1:在以上规则中,“小写字母”的含义为字符集B中字符值为64~95(ASCII值为96~127)的字符。即所有的小.写字母字符和字符“’,,|,},~,DEL”。“控制字符”的含义为字符集A中字符值为64~95< ASCII值为00~31)的字符。
- 注2:如果FNC1出现在起始符之后的第1个位置或在数字字段中的第奇数个位置时,将FNC1视为2位,以确定合适的字符集。
A.8应用实例
图A.1为只考虑“4位或4位以上的数字型数据使用CODEC”,而未考虑A.3中数字型数据字符的个数奇偶性的情况,符号长度未达到最小的应用示例,造成字符串多-一个条码字符。
表A.1为图A.1对应的条码数据结构。
标识代码 | (10)001135(21)013037001(240)00008744 |
---|---|
单元数据串 | StartC F110 00 11 35 F121 01 30 37 00 CodeB1 Fr CodeC 24 00 00 08 74 CodeB4 B Stop |
字符及模块数 | 24+ 1(终止符)个条码字符,76条和75空 |
更多详细介绍请参阅《标准号:GB/T 15425-2014》