데이터 매트릭스

Data Matrix
"Wikipedia, 무료 백과사전"이라는 텍스트를 인코딩하는 데이터 매트릭스 코드의 예입니다.

데이터 매트릭스는 정사각형 또는 직사각형 패턴으로 배열된 흑백 "셀" 또는 점으로 구성된 2차원 코드입니다. 매트릭스라고도 합니다.부호화할 정보는 텍스트 또는 숫자 데이터일 수 있습니다.통상의 데이터 사이즈는, 수바이트에서 1556바이트까지입니다.부호화된 데이터의 길이는 매트릭스 내의 셀 수에 따라 달라집니다.오류 정정 코드는 신뢰성을 높이기 위해 자주 사용됩니다.하나 이상의 셀이 손상되어 읽을 수 없는 경우에도 메시지를 읽을 수 있습니다.데이터 매트릭스 기호는 최대 2,335자의 영숫자를 저장할 수 있습니다.

데이터 매트릭스 기호는 직사각형이며, 보통 정사각형 모양이며 비트를 나타내는 정사각형 "셀"로 구성됩니다.사용하는 코딩에 따라 "라이트" 셀은 0, "다크" 셀은 1을 나타냅니다.모든 데이터 매트릭스는 "L"자 모양의 두 개의 견고한 인접 경계선("파인더 패턴"이라고 함)과 어둡고 밝은 "셀" 또는 모듈("타이밍 패턴"이라고 함)이 번갈아 구성된 두 개의 다른 경계선으로 구성됩니다.이러한 경계 안에는 정보를 인코딩하는 셀의 행과 열이 있습니다.파인더 패턴은 기호를 찾고 방향을 지정하는 데 사용되는 반면 타이밍 패턴은 기호의 행과 열 수를 카운트합니다.더 많은 데이터가 기호로 인코딩될수록 셀(행 및 열)의 수가 증가합니다.각 코드는 고유합니다.기호 크기는 새 버전 ECC 200에서는 10×10 ~ 144×144이며, 이전 버전 ECC 000 ~ 140에서는 9×9 ~ 49×49입니다.

적용들

시리얼 번호 15C06E115AZC72983004를 부호화한 Mini PCI 카드의 데이터 매트릭스

데이터2 매트릭스의 가장 인기 있는 애플리케이션은 작은 항목에 마킹하는 것인데, 이는 코드가 2~3mm(0.003 또는 0.005 평방인치)에서 읽을 수 있는 기호로 50자를 인코딩할 수 있고 20%의 [1]대비비만으로 코드를 읽을 수 있기 때문입니다.데이터 매트릭스는 측정할 수 있습니다.상용 애플리케이션은 300마이크로미터(0.012인치)의 작은 이미지(600마이크로미터(0.024인치)의 실리콘 장치에 레이저 식각)와 1미터(3피트)의 정사각형(박스카 지붕에 도장)의 크기로 존재합니다.표시 및 판독 시스템의 충실도는 유일한 제한 사항입니다.US Electronic Industries Alliance(EIA)는 소형 전자 [2]부품에 라벨을 붙이기 위해 데이터 매트릭스를 사용할 것을 권장합니다.

데이터 매트릭스 코드는 라벨이나 레터 등의 인쇄 매체에서 일반화되고 있습니다.바코드 리더로 코드를 빠르게 읽을 수 있으므로, 예를 들어 소포가 수취인에게 발송된 경우 미디어를 추적할 수 있습니다.

표면 표시

산업 엔지니어링을 위해 데이터 매트릭스 코드를 컴포넌트에 직접 표시하여 데이터 매트릭스로 인코딩된 데이터로 원하는 컴포넌트만 식별할 수 있습니다.코드는 다양한 방법으로 컴포넌트에 표시할 수 있지만 항공우주산업에서는 일반적으로 산업용 잉크젯, 도트핀 마킹, 레이저 마킹 및 전해화학 식각(ECE)이 있습니다.이러한 방법은 구성 요소의 수명까지 지속되는 영구 표시를 제공합니다.

데이터 매트릭스 코드는 보통 전문 카메라 장치 [further explanation needed]및 소프트웨어를 사용하여 검증됩니다.이 확인을 통해 코드가 관련 표준을 준수하고 구성 요소의 수명 동안 가독성이 보장됩니다.컴포넌트가 서비스를 시작한 후 데이터 매트릭스 코드를 판독기 카메라로 읽을 수 있습니다.이 카메라는 데이터 매트릭스 데이터를 디코딩하여 이동 추적 또는 재고 확인과 같은 다양한 용도로 사용할 수 있습니다.

휴대전화로 데이터 매트릭스 코드 읽기(Semacode 프로젝트)

데이터 매트릭스 코드는 1D 바코드와 같은 다른 오픈 소스 코드와 함께 코드별 모바일 애플리케이션을 다운로드하여 휴대폰으로 읽을 수도 있습니다.많은 모바일 장치가 데이터 매트릭스 [3]코드를 포함한 2D 코드를 읽을 수 있지만, 디코딩을 확장하여 모바일 액세스와 상호작용을 가능하게 하는 경우는 거의 없습니다. 따라서 코드를 트랙 앤 트레이스, 위조 방지, e.govt, 뱅킹 솔루션 등 미디어 전반에서 안전하게 사용할 수 있습니다.

식품 산업

데이터 매트릭스 코드는 식품이 잘못 포장되고 날짜가 잘못 기재되는 것을 방지하기 위해 식품 산업에서 자동 코드 시스템에서 사용됩니다.코드는 식품 제조업체 데이터베이스에 내부적으로 유지되며, 각 고유한 제품(예: 성분 변형)과 관련지어집니다.각 제품을 실행할 때마다 고유 코드가 프린터에 제공됩니다.최적의 스캔을 위해 2D 데이터 매트릭스를 배치하려면 라벨 아트워크가 필요합니다.흑백 코드의 경우는, 인쇄 품질에 문제가 없는 한, 테스트는 필요 없습니다.다만, 모든 색상의 차이를 생산전에 테스트하고,[citation needed] 판독할 수 있도록 할 필요가 있습니다.

예체능

2006년 5월 독일의 컴퓨터 프로그래머 Bernd Hopfengértner는 크롭 서클과 유사한 방식으로 밀밭에 대규모 데이터 매트릭스를 만들었습니다.메시지는 "안녕, 세상!"[4]이라고 쓰여 있었다.2011년 6월, 파리의 타투 아티스트 K.A.R.L.는 발란틴의 스카치 [5]위스키 판촉의 일환으로서 [6][7]Facebook에 라이브로 스트리밍 된 콜라보레이션 프로세스로 데이터 매트릭스 코드를 이용한 세계 최초의 애니메이션 타투를 만들었습니다.

기술사양

데이터 매트릭스 코드의 예로서, 데이터(녹색), 패딩(노란색), 오류 정정(빨간색), 파인더 및 타이밍(자홍색), 사용되지 않는(주황색) 텍스트를 인코딩합니다.

데이터 매트릭스 기호는 주변 파인더 및 타이밍 패턴 내에 배치된 모듈로 구성됩니다.ASCII 문자 세트 전체(내선 번호 포함)에서 최대 3,116 문자를 인코딩할 수 있습니다.기호는 일반 배열에 설정된 모듈을 포함하는 데이터 영역으로 구성됩니다.큰 기호에는 여러 영역이 포함됩니다.각 데이터 영역은 파인더 패턴으로 구분되며, 이는 4변 모두 무음 영역 경계(마진)로 둘러싸여 있다.(주: 모듈은 원형 또는 정사각형일 수 있습니다.표준에는 특정 형상이 정의되어 있지 않습니다.예를 들어, 점으로 둘러싸인 셀은 일반적으로 둥글다.)

데이터 매트릭스 ECC 200

데이터 매트릭스의 최신 버전인ECC 200은 오류 및 삭제 복구에 Reed-Solomon 코드를 사용합니다.ECC 200은 매트릭스가 여전히 정확하게 위치할 수 있다고 가정하여 심볼이 30%의 손상을 입었을 때 부호화된 데이터 문자열 전체를 일상적으로 재구성할 수 있습니다.데이터 매트릭스의 에러율은,[8] 스캔 한 1000만 문자 중 1 문자 미만입니다.

기호에는 짝수의 행과 짝수의 열이 있습니다.대부분의 기호는 10 × 10 ~ 144 × 144 사이즈의 정사각형입니다.그러나 일부 기호는 크기가 8×18 ~ 16×48인 직사각형입니다(짝수 값만 해당).ECC 200 오류 보정을 사용하는 모든 기호는 오른쪽 상단 모서리 모듈이 배경색과 동일하게 인식할 수 있습니다. (2진수 0)

ECC 200 기호를 이전 표준과 구별하는 추가 기능은 다음과 같습니다.

  • 역판독 기호(어두운 배경의 밝은 이미지)
  • 문자 집합 지정(확장 채널 해석 사용)
  • 직사각형 기호
  • 구조화된 추가(최대 16개의 기호를 연결하여 대량의 데이터를 인코딩)

데이터 매트릭스 ECC 000–140

이전 버전의 데이터 매트릭스에는 ECC 000, ECC 050, ECC 080, ECC 100, ECC 140 등이 있습니다.ECC 200 등의 Reed-Solomon 코드를 사용하는 대신 ECC 000–140은 컨볼루션 기반의 오류 수정을 사용합니다.ECC 000은 없음, ECC 140은 가장 큰 오류 수정 기능을 제공하는 등 각각 오류 수정 기능이 다릅니다.디코딩 시 에러 검출을 위해서, ECC 000 의 경우에서도, 이러한 각 버전은 비트 패턴의 Cyclic Redundancy Check(CRC; 순회 용장 검사)도 부호화합니다.부가적인 척도로서 코드 내의 각 비트의 배치는 사양에 포함되는 비트 배치 테이블에 의해 결정된다.이러한 오래된 버전에는 항상 홀수 개수의 모듈이 있으며, 9 × 9 ~49 × 49 의 사이즈를 설정할 수 있습니다.ECC 000~140 오류 보정을 이용하는 모든 기호는 배경색과 반대인 오른쪽 상단 모서리 모듈에서 인식할 수 있습니다. (2진수 1)

ISO/IEC 16022에 따르면, "ECC 000–140은 단일 당사자가 기호의 생산과 판독을 모두 통제하고 전체 시스템 성능을 책임지는 폐쇄된 애플리케이션에서만 사용해야 한다."

표준

Data Matrix는 International Data Matrix, Inc.(ID Matrix)에 의해 발명되었으며, RVSI/Acuity CiMatrix합병되어 2005년 10월에 Siemens AG와 2008년 9월에 Microsan Systems에 인수되었습니다.데이터 매트릭스는 현재 여러 ISO/IEC 표준에서 다루어지고 있으며, 많은 애플리케이션에 대해 퍼블릭 도메인에 포함되어 있습니다.즉, 라이센스나 로열티 없이 사용할 수 있습니다.

  • ISO/IEC 16022:2006 - 데이터 매트릭스 바코드 심볼 사양
  • ISO/IEC 15415—2D 인쇄 품질 기준
  • ISO/IEC 15418:2016: 심볼 데이터 형식의 시멘틱스(GS1 응용 프로그램 식별자 및 ASC MH10 데이터 식별자 및 유지보수)
  • ISO/IEC 15424:2008 - 데이터 캐리어 식별자(심볼로지 식별자 포함) [다른 바코드 유형을 식별하기 위한 ID]
  • ISO/IEC 15434:2006: 고용량 ADC 미디어용 구문(스캐너에서 소프트웨어로 전송되는 데이터 형식 등)
  • ISO/IEC 15459: 일의 식별자

부호화

산업 데이터 매트릭스 코드 리더

부호화 프로세스는 ISO/IEC 표준 16022:[9]2006에 기술되어 있습니다.데이터 매트릭스의 ECC-200 변형을 인코딩 및 디코딩하기 위한 오픈 소스 소프트웨어가 [10][11]공개되었습니다.

아래 그림은 데이터 매트릭스 기호 내의 메시지 데이터 배치를 보여 줍니다.메시지는 "Wikipedia"로, 왼쪽 상단 모서리 부근에서 시작하는 다소 복잡한 대각선 패턴으로 배열되어 있습니다.첫 번째 W와 같이 두 조각으로 분할된 글자도 있고, 세 번째 i는 일반적인 L자 배열이 아닌 '코너 패턴 2'로 되어 있다.또한 메시지 종료 코드(End 마킹 완료), 패딩(P) 및 오류 수정(E) 바이트 및 미사용 공간(X)의 4개의 모듈도 표시됩니다.

Data Matrix Encoding.svg Datamatrixfilling.png

여러 종류의 메시지를 저장하기 위해 여러 인코딩 모드가 사용됩니다.디폴트 모드에서는 8비트코드워드당1개의 ASCII 문자가 저장됩니다.아래와 같이 모드를 전환할 수 있는 제어 코드가 제공됩니다.

코드워드 해석
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 텍스트 인코딩 시작
240 EDIFACT 인코딩 시작
241 확장 채널 해석 코드
242–255 사용하지 않음

텍스트 모드

C40, Text 및 X12 모드는 텍스트 메시지를 저장하기 위해 더 콤팩트할 수 있습니다.0 ~ 39 의 문자 코드를 사용하는 DEC Radix-50 와 비슷합니다.이들 코드 중 3 개가 조합되어 최대 403=64000 의 숫자가 됩니다.이 숫자는 다음과 같이 2 바이트(최대값 65536)로 압축됩니다.

V = C1 × 1600 + C2 × 40 + C3 + 1
B1 = 플로어(V/256)
B2 = V mod 256

B1의 결과값은 0 ~250입니다ASCII 부호화 모드로 돌아가기 위해 특별한 값 254가 사용됩니다.

문자 코드 해석은 다음 표에 나와 있습니다.C40 모드와 텍스트모드에는 4종류의 세트가 있습니다.세트 0이 기본값이며 일시적으로 다음 문자에 대해 다른 세트를 선택하는 코드가 포함되어 있습니다.유일한 차이점은 대소문자를 반대로 쓴다는 것입니다.C40은 주로 대문자이며 세트 3에는 소문자가 포함되어 있습니다.텍스트는 그 반대입니다.ASCII 제어 코드를 포함하는 세트 1과 구두점 기호를 포함하는 세트 2는 C40 및 텍스트 모드에서 동일합니다.

코드 0 을 설정 세트 1 세트 2 세트 3 X12
C40 본문 C40 본문
0 세트 1 없음 ! ` CR
1 세트 2 SOH " a A *
2 세트 3 STX # b B >
3 공간 ETX $ c C 공간
4 0 전원 % d D 0
5 1 ENQ & e E 1
6 2 ACK ' f F 2
7 3 ( g G 3
8 4 BS ) h H 4
9 5 HT * i I 5
10 6 LF + j J 6
11 7 VT , k K 7
12 8 FF l L 8
13 9 CR . m M 9
14 A a 그렇게 / n N A
15 B b SI : o O B
16 C c DLE ; p P C
17 D d DC1 < > q Q D
18 E e DC2 = r R E
19 F f DC3 > s S F
20 G g DC4 ? t T G
21 H h NAK @ u U H
22 I i 동기 [ v V I
23 J j ETB \ w W J
24 K k 할 수 있다 ] x X K
25 L l 전자파 ^ y Y L
26 M m 후보선수 _ z Z M
27 N n ESC FNC1 { N
28 O o FS O
29 P p GS } P
30 Q q RS 히비트 ~ Q
31 R r 미국 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 모드에서는 1 문자당6비트가 사용되며 4글자가 3바이트로 압축됩니다.숫자, 대문자 및 다수의 구두점을 저장할 수 있지만 소문자는 지원하지 않습니다.

코드 의미.
0–30 ASCII 코드 64 ~94
31 ASCII 모드로 돌아가다
32–63 ASCII 코드 32 ~63

베이스 256 모드

기본 256 모드 데이터는 길이 표시기로 시작하여 데이터 바이트 수로 이어집니다.1~249 의 길이를 1 바이트로서 부호화해, 긴 길이를 2 바이트로서 격납한다.

L1 = 바닥(길이 / 250) + 249, L2 = 길이 모드 250

코드화된 메시지에서 긴 0 문자열은 데이터 매트릭스 기호에서 큰 공백 영역이 되기 때문에 스캐너의 동기화가 손실될 수 있으므로 피하는 것이 좋습니다.(이 때문에, 디폴트의 ASCII 부호화에서는 제로는 사용되지 않습니다).그 가능성을 낮추기 위해 의사난수값 R(n)을 가산함으로써 길이와 데이터 바이트를 가린다.여기서 n은 바이트 스트림 내의 위치이다.

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

특허 문제

2007년 11월 미국 특허 5,612,524가 만료되기 전 지적재산권 회사인 아카시아 테크놀로지스는 데이터 매트릭스가 그 내용 중 일부에 해당한다고 주장했다.아카시아는 특허권자로서 데이터 매트릭스 이용자에게 특허와 관련된 라이선스 요금을 요구하는 연락을 취했다고 한다.

2D 바코드 장치의 대형 제조업체인 Cognex Corporation은 아카시아가 라이센스 요금을 요구하는 고객에게 연락했다는 정보를 받고 2006년 3월 13일 선언적 판결 제소를 제기했습니다.2008년 5월 19일 판사 Joan N.미네소타 지방법원의 에릭슨은 코그넥스의 [12]손을 들어주었다.판결은 2D 심볼코드를 캡처하고 판독하는 시스템을 커버한다고 주장한 524 특허는 특허 취득 과정에서 피고인들의 불공정한 행위 때문에 무효인 동시에 집행이 불가능하다고 판단했다.

특허 만료 후 판결이 내려졌지만 2007년 11월 이전 데이터 매트릭스 사용에 따른 침해 청구는 배제됐다.

독일 특허출원 DE 4107020은 1991년에 출원되어 1992년에 발표되었다.이 특허는 상기 미국 특허 출원에 인용되지 않으며 [citation needed]무효가 될 수 있습니다.

「 」를 참조해 주세요.

레퍼런스

  1. ^ "Data Matrix Barcode". Archived from the original on 14 September 2017.
  2. ^ Stevenson, Rick (December 2005). "Laser Marking Matrix Codes on PCBs" (PDF). Printed Circuit Design and Manufacture. Retrieved 31 May 2007.
  3. ^ 스테판, V. (2012년)데이터베이스와 함께 모바일 애플리케이션을 개발할 때 2D 코드를 사용합니다.Valahian Journal of Economic Studies, 3(2), 105-114.https://econpapers.repec.org/article/vlhjournl/v_3a3_3ay_3a2012_3ai_3a2_3ap_3a105-114.htm 에서 취득했습니다.
  4. ^ "German man programs "Hello World" into wheat field". arstechnica.com. Retrieved 22 February 2017.
  5. ^ "The World's First Animated Tattoo – Digital Buzz Blog". digitalbuzzblog.com. Retrieved 22 February 2017.
  6. ^ "First Ever Animated Tattoo – By K.A.R.L." youtube.com. Archived from the original on 12 December 2021. Retrieved 22 February 2017.
  7. ^ "Facebook". facebook.com. Retrieved 22 February 2017.
  8. ^ "Data Matrix and PDF417 Data Integrity Test" (PDF). idautomation.com. Archived from the original (PDF) on 20 August 2019. Retrieved 20 August 2019.
  9. ^ 이 표준의 ISO 전자 상거래 페이지 http://www.iso.org/iso/iso_catalogue/catalogue_tc/catalogue_detail.htm?csnumber=44230
  10. ^ "GitHub – zxing/zxing: Official ZXing ("Zebra Crossing") project home". google.com. Retrieved 22 February 2017.
  11. ^ "libdmtx Home". sourceforge.net. Retrieved 22 February 2017.
  12. ^ "Cognex Invalidates Acacia Patent '524; Next? Suing for Business Defamation". Groklaw. 23 June 2008. Archived from the original on 5 May 2010.

외부 링크