gs128条形码标准_第1页
gs128条形码标准_第2页
gs128条形码标准_第3页
gs128条形码标准_第4页
gs128条形码标准_第5页
已阅读5页,还剩9页未读 继续免费阅读

付费下载

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、UCC/EAN-128 条码及其应用UCC/EAN-12涤码符号是ANC(系统(即EAN- UCC系统)中使用的一种条码符号,也是一种商品条码符号。 UCC/EAN-128条码是普通128条码(即Code128码) 的子集。经原国际物品编码协会(EAN、美国统一代码委员会(UCC和国际自动 识别制造商协会(AIM)同意,把起始符后面的第一个字符是 Code128码中的“功 能1” ( FNC1字符的符号结构给EAN- UCC系统专门使用。UCC/EAN-128条码是EAN- UCCS统中唯一可用于表示附加信息的条码,可广泛用于非零售贸易项目、物流单元、资产、位置的标识。今年,UCC/EAN-1

2、28条码已被更名为 GS1-128条码。1. UCC/EAN-128条码的特点-UCC/EAN-128条码的编码字符集属于字母/数字式字符集。字符集中包括,ASCII 码(美国信息交换标准码 )中码值从 00至127的 128个码所代表的字符(这 正是128条码被称作Code128的原因、以及00至99这100个两位数字。其中的ASCII码字符包括,09这十个数字,全部英文大小写字母,“!”、“,”、“ +”、“-”、“*”、“/”、“、“空格”等符号以及“DEL、“ESC等控制字符。但是UCC/EAN-128 条码不使用“空格”符号。注:通过使用功能 4 ( FNC4字符,Code128条码

3、还能对 ASCII值为128255的字符编码,这一功能保留在将来使用,但UCC/EAN-128条码不使用。-UCC/EAN-128条码使用一个起始符加一个 FNC1字符的双字符起始图形,这是UCC/EAN-128条码的特殊标志。-除终止符外,每个条码字符由 3个条和 3个空构成。每个条或空由 14个 模块组成,每个条码字符的总模块数为 11。UCC/EAN-128码属于模块组配的条码, 又称“ n,k ”条码,即每个字符总模块数为11 (n=11)、由3个条和3个空(k=3) 组成。终止符由 4个条和 3个空构成。字符与字符是紧密相连的,不需要字符间隔,所以UCC/EAN-128码是连续型条码

4、。 UCC/EAN-12码是非定长的条码,字符的个数可根据实际需要确定,但是在符号的物理长度和数据字符的个数方面有一定的限制,即每个符号的最大物理长 度为165mm数据字符个数最多为48个。可双向译码,即从左至右或从右至左扫描都可以对UCC/EAN-128码译码。有字符自校验功能。有一个必需的符号校验字符。但符号校验字符不是数据的一部分,不在供 人识别字符中表示,也不在译码时输出。2. 符号结构UCC/EAN-12涤码符号由左侧空白区、一个起始符(Start A, Start B或Start C)和一个FNC1字符组成的双字符起始图形、数据字符(包括应用标识符)、一个 符号校验字符、终止符、右

5、侧空白区及供人识别字符组成,见图1。左侧空白区 双字符起始图形数据字符校验字符(17)终止符 右侧空白区3. 符号字符的结构和编码符号字符的结构如前所述,除终止符外,每个条码字符由3个条和3个空构成。每个条或空由14个模块组成,每个条码字符的总模块数为 11,示例见图2Start C ”字符“FNC1'字符符号字符值为35的字符图3终止符的结构由符号字符的结构可见,每个符号字符中所有条的模块总数为偶数,所有空 的模块总数为奇数,利用这一奇偶特性能够实现字符的自校验。符号字符集Code 128( UCC/ EAN-128条码的符号字符集(部分节选)见表 1。表1 Code 128 符号字

6、符集(部分节选)字符集A字符集B33A65A653311132334B66B663413112365SOH01a976512112466STX02b9866121421d I98SHIFTSHIFT9841131199COECCODE C99113141100COEBFNC4COE B114131Code 128 (UCC/EAN-128条码有三个符号字符集,分别是字符集 A、字符集 B和字符集G字符集A包括:ASCII值为0095的字符,即所有大写英文字母、 数字09、标点字符、控制字符;7个特殊字符。字符集B包括:ASCII值为32 127的字符,即所有大、小写英文字母、数字 09、标点字

7、符;7个特殊字符。字 符集C包括:100个两位的数字字符0099 (这样每个符号字符可以表示两个数 字);3个特殊字符。虽然Code 128 ( UCC/ EAN-128条码有三个符号字符集,但是实际上三个字符集共同使用着一套符号字符值和符号字符条空图形,也就是说,用一套符号字 符条空图形来表示三个符号字符集的字符。例如在表1中,字符值为65的符号字 符图形是“条空条空条空”的宽度(模块数)为“ 121124”的条空图形,它可以 表示字符集A中的“ SO”字符集B中的“a”和字符集C中的“65”。为了能实 现用一套符号字符图形来表示三个符号字符集的字符,需要使用一些起始定义字 符、切换字符和转

8、换字符来说明符号字符图形表示的是哪一个字符集的字符, 表 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

9、 ( UCC/ EAN-128码的符号字符中有四个功能字符:FNC1 FNC2FNC3和FNC4 FNC1的用途之一是紧跟在起始符 Start (A或B或C)后面,形成 特殊的Start (A或B或C) + FNC1的双字符起始符号供 UCC /EAN-128码专用, 作为区分UCCEAN-128码和普通128码的标志。FNC1的另一个用途是,当把多个 应用标识符及其数据域放在一个条码符号中时,FNC1作为分隔符使用。FNC3(初始化)用于指示条码识读设备将包含此字符的数据视为初始化或对条码识读设备 重新编程。FNC2(信息添加)和FNC4(扩展ASCII字符集)不在UCC- EAN系统中 使

10、用。注:如果FNC1出现在起始符后面的第一个位置或在数字区域的第奇数个位置,将其视为2 位数字,以确定合适的字符集。除终止符外,Code 128 (UCC/ EAN-128)码的每个符号字符都被赋予一个字 符值,字符值可以在确定 128码的符号校验字符的计算过程中使用。符号编码规则3.3.1 起始符、切换字符和转换字符的使用规则由于UCC/EAN-128码(或其它128码)有三个字符集可供编码使用,通过使 用不同的起始、切换和转换字符的组合,可以对相同的数据有不同的符号编码表 示。但是,编码有一个原则,就是应该使表示给定的数据时符号字符的个数最少, 从而使符号的长度最小。例如,在对多位数字的数

11、据进行符号编码时应优先采用 字符集C,这样每两位数字可用一个符号字符编码,减少了符号字符的个数。1、起始符(Start A、B或C)的确定a)如果数据以偶数位数字或 4位以上的数字开始,用 Start C 。b)如果数据以ASCII控制字符开始,用Start A 。c)其它情况下用 Start B 。2、切换字符(CODE A B或C)的使用a)如果使用了起始符 Start C ,且数据中连在一起的数字个数为奇数,应在 最后一位数字前加入切换字符 CODE A或 CODE B最后一位数字后面紧跟 的是ASCII控制字符加入 CODE A否则加入CODE Bb)当采用字符集A或B,数据中出现4个

12、或更多连在一起的数字时,若为偶 数个数字则在第一个数字前插入 CODC;若为奇数个数字则在第一个数字 后插入CODE C切换到字符集Coc)当采用字符集C,数据中出现一个非数字字符时,应在该字符前加入切换 字符CODE A或 CODE B该字符是ASCII控制字符加入 Code A,否则加入 CODE Bo3、转换字符(SHIFT)的使用a)当采用字符集B,数据中出现ASCII控制字符时,若该字符后有小写英文 字母,则在该字符前插入转换字符 SHIFT;否则在该字符前插入切换字符 CODE A切换到字符集Aob)当采用字符集A,数据中出现小写英文字母时,若该小写字母后面、另一 个小写字母前有

13、ASCII 控制字符,则在该小写字母插入转换字符 SHIFT; 否则在该小写字母前插入切换字符 CODE BU换到字符集Bo如前所述,使用不同的起始、切换和转换字符的组合,可以对相同的数据有不同的符号编码表示。例如,对数据“ (01) 067892”进行符号编码,按照规则, 用“ Start C+FNC1数据字符+校验符+终止符”是最佳方案,由此生成的条码符号 见图1,但我们常常见到用“ Start B+FNC1+CODCE数据字符+校验符+终止符”的 编码表示,这在EAN- UCC规范(GS1规范)中也屡见不鲜,这种编码生成的条码符 号见图4。比较图1和图4的条码符号可见,两个符号的起始符不

14、同;后一个符号 比前一个多一个“ CODET字符;两个符号的校验字符不同,前者为“ 17”,后者 为“ 68”。两个符号使用的字符和字符个数有差异,经计算得出的校验字符值就可 能不同,但由于校验字符不在供人识别字符中表示,也不在译码时输出,因此两 个符号的供人识别字符及译码结果都相同。但是后一种编码表示比前一种多用了 一个字符,并且有“多此一举”之嫌。究其原因,是编制者认为“FNC1是非数字字符,“FNC1不可在字符集C中使用,因此要以“ Start B ”开始。其实我们 看字符集便知,“ FNC1是三个字符集都有的字符,而且从中的注可知,“FNC1通常是被当作2位数字对待的,它当然可以在字符

15、集 C中使用。同一数据可能有不同的128条码符号编码表示,这常常使刚接触 128条码的 人迷惑不解。了解了上述编码原理就不难理解了。正像用各种方法都能正确解答 同一道数学题一样,各种符号编码表示只要能正确地表示数据、能正确被译码, 我们就不能评价哪一种对、哪一种错,只能说哪一种更简捷。敏手符喪竖字為備 煞止特(01 )0 6 901234567892 -供人识别字符图4相同的数据(同图1中)、不同的符号编码表示3.3.2单元数据串的编码规则如前所述,UCC/EAN-12码是非定长的条码,除了可表示贸易项目的标识(如全球贸易项目代码)外,还可用于表示批号、生产日期、贸易计量(重量、尺寸、 体积等

16、)、保质期等各种附加信息,从而广泛用于非零售贸易项目、物流单元、资 产、位置的标识。诸如贸易项目标识、批号、生产日期等这样的在结构和意义上 已经定义了的一条数据即单元数据串。每个单元数据串由一个标识部分(前缀码 或应用标识符)和一个数据部分组成。例如,“(01)067892”是表示定量贸易项目标识的单元数据串;“(11)060818'是表示生产日期的单元数据串,其中圆括 号中的数字是应用标识符,圆括号后的数据是数据部分。在供人识别字符中,应该用圆括号把应用标识符括起来,以便于识读,但这 些圆括号不是数据的一部分,不应在 128条码中编码表示这些圆括号。在把多个单元数据串编码于一个 12

17、8条码中时,要遵循“先预定义长度单元 数据串,后可变长度单元数据串”的原则。所谓预定义长度单元数据串是指那些 预先设定了数据串长度且长度不变的单元数据串,如贸易项目标识、生产日期等 单元数据串,这些单元数据串使用的应用标识符(前两位)和字符总数见表2。预定义长度单元数据串的后面不需要插入分隔符(FNC1字符);非预定义长度单元数据串(即可变长度单元数据串)的后面则必须插入分隔符,但128条码中最后一个单元数据串的后面不需要插入分隔符。“先预定义长度单元数据串”的目的就是 为了要减少分隔符的用量。表2预定义长度单元数据串的应用标识符及字符总数应用标识符数据串字符总数应用标识符数据串字符总数(前两

18、位)(含应用标识符)(前两位)(含应用标识符)0020178011618 *8021619 *803 *1620404 *18311011832101283310138341014 *835 *1015836 *1016 *84116注:打*号的是预留的、尚未分配的应用标识符。链接 所谓链接即在符号编码时把两个以上的单元数据串连在一起。链接时按 照“预定义长度单元数据串的后面不加分隔符(FNC1字符),可变长度单元数据串的后面加分隔符”的规则进行处理,然后看数据串接合部是否需要进行字符集的 转换(注),再把各单元数据串连接在一起即可。还要注意:最后一个单元数据串后 面不加分隔符;形成的条码符号

19、,数据字符的个数不超过48个,物理长度不大于165mm(注):在这方面我们又看到“多此一举”的例子(见 GS1规范),在两个均使用字符集 C的 可变长度单元数据串“单价 365”和“批号 123456”之间加入“ CODE B+FNC1+CODEC再 进行链接。其实只需加入“ FNC1'即可,原因请读者自行分析。4标准译码算法UCC/EAN-128条码的标准译码算法用测量符号字符中相邻两个条的同侧边(相 似边)之间距离、然后判断同侧边之间距离中所包含的模块宽度的个数的方法进 行译码。除终止符外,每个条码字符由3个条和3个空构成,因此每个字符有 4个需要测量的同侧边之间距离 8e4 (见

20、图5),每个字符的eie4相应的4个依 次排列的模块宽度数具有区别于其他字符的特征,根据这种特征就可以确定字符 的值。译码过程要求同侧边之间距离出现的偏差不超过土个模块宽度(11)。由于终止符由4个条和3个空构成,译码时只取终止符从左至右的6个单元即3个条和3个空(从左至右扫描时)或从右至左的 6个单元(从右至左扫描时)进行上 述测量、判断。如前所述,每个符号字符中所有条的模块总数为偶数,标准译码算法利用这 一特性来进行字符的自校验:求出被译码的符号字符中3个条应有的模块总数V,测量该字符中3个条的宽度之和(4+ b2+ b 3)及字符宽度P,核对式子(V- p/11v( bi+ b2+ b 3) ( V+p/11是否成立,如果不成立则字符是错误的1亠b1亠一 b2*b3*111-.-e2e4p图5符号字符与译码有关的尺寸5符号尺寸要求UCC/EAN-12涤码符号的X尺寸(设计模块宽度)应在0.250mm1.016m范围 内,在一个给定的符号中X尺寸应为一个定值。UCC/EAN-12涤码符号左、右空白区的最小宽度均为 10X。UCC/EAN-12涤码符号的条

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论