Data Matrix

一种二维码

Data Matrix(数据矩阵),是一种由黑色白色的色块(单元格)以正方形长方形组成的二维条码(也可称矩阵),于1994年8月由美国国际资料公司所研发出,主要用于零件、印制电路板等等,美国国际资料公司于2008年被Microscan公司收购。[1][2][3]被编码的信息可能是文本或数字数据。数据大小通常是几个至1556字节。被编码数据的长度决定了矩阵中色块的数量。编码时经常使用纠错码来增加可靠性:即便一个或多个色块被损坏而不可读,里面的信息仍然可被读取。一个数据矩阵可以存储最多2,335个数字或字母

一例Data Matrix编码,其中是文本:“Wikipedia, the free encyclopedia”

应用

 
一个Mini PCI板卡上的数据矩阵,编码了序列号15C06E115AZC72983004

Data Matrix最流行的应用是小物件的标签,因为该编码能在2或3平方毫米的面积上编码50个字符,且在20%对比度下仍然可读。[4]Data Matrix的大小不受限制,商业应用的图像包括小至300微米(在一台600微米装置上激光蚀刻)和大至1(涂在棚车顶上)的平面。绘制与读取系统的保真度是其唯一的限制。

美国电子工业联盟(EIA)建议使用Data Matrix标注小型电子元件[5]

将Data Matrix编码打印在标签书信上正日益普遍。使用一台条码读取器英语Barcode reader即可快速读取该编码,从而便于跟踪物品,例如跟踪包裹的邮递。

 
平面标注

对工业工程来说,此条码也可直接在组件上标记,从而使用Data Matrix编码数据来识别组件。厂商可以用各种方法在在组件上完成,但在航空航天工业中,条码通常以工业喷墨、点阵打标、激光打标和电解化学蚀刻(ECE)完成,使用这些方法来得到可延续到组件寿命的永久性标记。

Data Matrix编码通常使用专业摄像设备及软件进行验证。这种验证确保编码符合相关标准,并确保组件使用寿命期间的可读性。在组件投入使用后,该代码仍可被读取镜头读取、解码,解码后的信息可用于多种目的,例如移动跟踪和库存检查。

 
使用手机扫描Data Matrix条码(Semacode项目)

Data Matrix编码与其他开源编码(例如1D Barcodes)一样,也可以在手机上使用特定的移动应用来读取。

食品工业

艺术

2006年5月,德国计算机程序员Bernd Hopfengärtner创作了一个大型的数据矩阵麥田圈,内藏信息为:“Hello, World!”。[6]

技术规格

Data Matrix符号是由排列在周长查找器和定时模式内的模块组成的。它可以编码多达3116个ASCII(含扩展)字符。符号由包含模块的数据区域组成,这些数据区域以规则阵列的形式排列。大型符号包含多个区域。每个数据区域都由一个查找模式划定,其四面都被一个安静的区域边界(边缘)所包围。(注意:模块可以是圆形或方形——标准中没有定义具体的形状。例如,点状排列的单元一般是圆形的)。

 
Data Matrix编码的一个示例,被编码的文本:“Wikipedia”。各颜色分别代表:数据(绿色),填充(黄色),纠错(红色),查找器和校定(品红色),未使用(橙色)。

Data Matrix ECC 200

1826 DFR50-IC-U

Data Matrix ECC 000–140

标准

Data Matrix是由International Data Matrix公司(ID Matrix)发明的,该公司被并入RVSI/Acuity CiMatrix英语Acuity CiMatrix,后者于2005年10月被西门子股份公司收购,2008年9月被Microscan Systems收购。今天,数据矩阵已被若干ISO/IEC标准所涵盖,并在许多应用中属于公共领域,这意味着它可以在没有任何许可或特许权使用费的情况下使用。

  • ISO/IEC 16022:2006-Data Matrix码符号学规范
  • ISO/IEC 15415-2-D印刷质量标准
  • ISO/IEC 15418:2009-符号数据格式语义(GS1应用识别码和ASC MH10数据识别码和维护)。
  • ISO/IEC 15424:2008-数据载体标识(包括符号学标识)[用于区分不同条码类型的标识] 。
  • ISO/IEC 15434:2006-大容量ADC介质的语法(从扫描仪传输到软件的数据格式等)。
  • ISO/IEC 15459-独特的识别码

编码

多种编码模式用于存储不同种类的信息。默认的模式是每8位码字存储一个ASCII字符。提供控制代码在不同的模式之间切换,如下表所示。

 
工业Data Matrix编码读取器
代码字 解释
0 未被使用
1–128 ASCII 数据 (ASCII 值 + 1)
129 消息结束
130–229 数位对00-99
230 基础 C40编码
231 开始 Base 256 编码
232 FNC1
233 结构追加。允许消息被分在几个符号中。
234 读者编程
235 设置下一字符的最高位
236 宏 05
237 宏 06
238 开始 ANSI X12 编码
239 开始 Text 编码
240 开始 EDIFACT 编码
241 Extended Channel Interpretation 编码
242–255 未使用

文字模型

Code C40 Text X12
set 0 set 1 set 2 set 3 set 0 set 3
0 set 1 NUL ! ' set 1 ' CR
1 set 2 SOH " a set 2 A *
2 set 3 STX # b set 3 B >
3 space ETX $ c space C space
4 0 EOT % d 0 D 0
5 1 ENQ & e 1 E 1
6 2 ACK f 2 F 2
7 3 BEL ( g 3 G 3
8 4 BS ) h 4 H 4
9 5 HT * i 5 I 5
10 6 LF + j 6 J 6
11 7 VT , k 7 K 7
12 8 FF - l 8 L 8
13 9 CR . m 9 M 9
14 A SO / n a N A
15 B SI : o b O B
16 C DLE ; p c P C
17 D DC1 < q d Q D
18 E DC2 = r e R E
19 F DC3 > s f S F
20 G DC4 ? t g T G
21 H NAK @ u h U H
22 I SYN [ v i V I
23 J ETB \ w j W J
24 K CAN ] x k X K
25 L EM ^ y l Y L
26 M SUB _ z m Z M
27 N ESC FNC1 { n { N
28 O FS | o | O
29 P GS } p } P
30 Q RS hibit ~ q ~ Q
31 R US DEL r DEL R
32 S s S
33 T t T
34 U u U
35 V v V
36 W w W
37 X x X
38 Y y Y
39 Z z Z

EDIFACT模式

EDIFACT英语EDIFACT模式为每个字符使用6个位元,每4个字符封装在3个字节。它可以存储数字、大写字母以及许多标点符号,但不支持小写字母。

代码 含义
0 – 30 ASCII代码 64 – 94
31 返回ASCII模式
32 – 63 ASCII代码32 – 63

基本256模式

Base 256模式的数据以长度指示器开始,然后是数据字节数。1到249的长度被编码为一个字节,更长的长度被存储为两个字节。

L1 = floor(length / 250) + 249, L2 = length mod 250

最好避免在编码信息中出现长串的零,因为它们会成为数据矩阵符号中的大片空白区域,这可能会导致扫描仪失去同步。(由于这个原因,默认的ASCII编码不使用零。)为了减少这种可能性,长度和数据字节被添加一个伪随机值R(n)来掩盖,其中n是字节流的位置。

R(n) = (149 × n) mod 255 + 1

专利问题

参见

参考资料

  1. ^ Microscan Celebrates 20 Years of Data Matrix Codes August 13, 2014 (PDF). [2017-10-10]. (原始内容存档 (PDF)于2016-04-02). 
  2. ^ Microscan Celebrates 20 Years of Data Matrix Codes. [2017-10-10]. (原始内容存档于2019-01-23). 
  3. ^ Michael, Katina, etc (2009), Innovative Automatic Identification and Location-Based Services: From Bar Codes to Chip Implants 1st Edition pg.92, IGI Global, ISBN 978-1599047959.
  4. ^ Data Matrix Barcode. [2017-09-19]. (原始内容存档于2018-01-02). 
  5. ^ Stevenson, Rick. Laser Marking Matrix Codes on PCBs (PDF). Printed Circuit Design and Manufacture. December 2005 [2007-05-31]. (原始内容存档 (PDF)于2007-09-28). 
  6. ^ German man programs "Hello World" into wheat field. arstechnica.com. [22 February 2017]. (原始内容存档于2009-01-22). 

外部链接