Matrice de date

De la Wikipedia, enciclopedia liberă.
Salt la navigare Salt la căutare

Data Matrix este un cod de bare matricial bidimensional, format din celule (sau module) alb-negru dispuse într-un model dreptunghiular sau pătrat.

Prezentare generală

Informațiile care pot fi codate sunt date textuale sau date brute. Dimensiunea obișnuită a datelor variază de la câțiva octeți până la 2 kilobyți . Cantitatea de date codificate depinde de mărimea simbolului utilizat.

Există, de asemenea, un sistem de corectare a erorilor care adaugă octeți la mesajul codificat pentru a face citibil chiar și o Matrice de date parțial deteriorată. Un simbol Matrice de date poate stoca până la 2.335 de caractere alfanumerice.

Matricile de date au formă dreptunghiulară (adesea pătrată) și sunt împărțite în celule, fiecare dintre ele reprezentând un bit . În funcție de codificarea utilizată, o celulă de culoare deschisă poate reprezenta bitul 0 și o celulă de culoare închisă poate reprezenta bitul 1 (sau invers).

Marginile care delimitează o matrice de date au următoarea configurație:

  • două margini adiacente sunt uniform colorate și formează un "L" definit formal ca model Finder;
  • celelalte două margini adiacente apar întrerupte datorită alternanței celulelor albe și negre. Ele alcătuiesc modelul de sincronizare.

În aceste granițe găsim toate celulele, organizate în rânduri și coloane, care alcătuiesc informațiile codificate. Modelul Finder este utilizat pentru a permite dispozitivelor de decodificare să localizeze și să orienteze corect Matricea de date, în timp ce Modelul de sincronizare vă permite să numărați numărul de rânduri și coloane care îl alcătuiesc. Pe măsură ce crește numărul de date, crește numărul de rânduri și coloane. În general, dimensiunile sale variază de la 8x8 la 144x144.

Aplicații

În mod obișnuit, Matricea de date este utilizată ca un cod pentru a marca obiecte mici, de fapt poate include până la 50 de caractere pe o suprafață de doar 2 sau 3 mm 2 și un contrast de 20% este suficient pentru a distinge celulele sale (adică pentru a distinge celulele se luminează din cele întunecate) și, prin urmare, pentru a citi biții care alcătuiesc informația.

O Matrice de date este infinit scalabilă, în aplicațiile comerciale poate fi de până la 300 micrometri (de exemplu, o Matrice de date poate fi gravată cu laser pe un dispozitiv de siliciu de 600 micrometri) și de până la un metru. Nivelul de fidelitate al sistemului de gravare și acuratețea dispozitivelor de citire sunt singurele limitări tehnice.

EIA ( Electronic Industries Alliace ) recomandă utilizarea Matricelor de date pentru etichetarea componentelor electronice mici. Codurile Matricii de date fac parte dintr-un nou proces de trasabilitate răspândit în multe industrii, în special în industria aerospațială, unde controlul calității este rigid și există problema pieței negre a componentelor contrafăcute și nevandabile.

Codurile Matricei de date și datele alfanumerice suplimentare identifică detaliile componentelor, cum ar fi:

  • identificarea producătorului;
  • numărul de identificare al piesei;
  • un cod de serie unic și diferit pentru fiecare piesă produsă.

Departamentul Apărării din SUA a selectat standardul Data Matrix pentru a asigura identificarea unică și obligatorie pentru anumite produse. Multe articole, de la arme întregi până la componentele critice ale majorității sistemelor, trebuie să fie marcate permanent cu un cod unic de matrice de date de identificare în conformitate cu standardele militare 130.

O mare parte din industria aerospațială, în special membrii ATA (Air Transport Association) își propun să identifice toate componentele fiecărei aeronave prin utilizarea anumitor coduri Data Matrix. Matricele de date sunt, de asemenea, utilizate de Semacode pentru a codifica adresele paginilor web ( URL-uri ), astfel încât să poată fi citite cu ușurință de telefoanele mobile echipate cu camere .

Specificatii tehnice

Simbolurile Matricei de date sunt compuse din module definite într-un perimetru alcătuit din căutători și modele de sincronizare. Pot codifica până la 3.116 caractere Ascii (inclusiv extensii). Fiecare simbol este împărțit în regiuni de date, fiecare dintre ele conținând o gamă regulată de module. Simbolurile mari conțin mai multe regiuni.

Fiecare regiune de date este delimitată de modelul de căutare și, la rândul său, este înconjurat pe toate părțile de o zonă liberă (numită zonă liniștită) utilizată ca marjă. (Notă: modulele pot fi rotunde sau pătrate, nu există o formă specifică stabilită de standard).

Simbolurile au un număr par de rânduri și coloane. Majoritatea simbolurilor sunt pătrate cu dimensiuni cuprinse între 10x10 și 144x144. Cu toate acestea, unele simboluri sunt dreptunghiulare cu dimensiuni cuprinse între 8x8 și 16x48. Toate simbolurile care utilizează corectarea erorilor ECC200 (sistemul de corectare a erorilor ECC200 ) sunt recunoscute prin faptul că modulul din partea dreaptă sus a simbolului are aceeași culoare ca fundalul (alb, binar 0).

ECC200 este noua versiune prezentă în Data Matrix și acceptă algoritmi avansați de control și corectare a erorilor (cum ar fi Reed-Solomon ). ECC200 permite reconstrucția practică a până la 30% din întregul set de date codificate. Aceasta înseamnă că chiar și atunci când simbolul este deteriorat cu 30%, este încă lizibil, ceea ce ar fi imposibil folosind coduri de bare liniare.

Aplicații Data Matrix

Codurile Matricii de date devin frecvente și sunt, de asemenea, tipărite pe suport de hârtie, cum ar fi scrisori sau plicuri. Codul poate fi citit rapid de un scaner care permite urmărirea suportului atunci când se deplasează, de exemplu în cazul unui colet transmis către destinatar.

În scopuri de inginerie industrială, codurile Data Matrix pot fi marcate direct pe componente, asigurându-se astfel că fiecare componentă este identificată prin propriile date Data Matrix. Codurile pot fi marcate pe componente prin diferite metode: imprimarea cu jet de cerneală, gravarea cu ac, gravarea cu laser și procedurile de gravare chimică (electrolitică) sunt utilizate în mod obișnuit în industria aerospațială.

Aceste metode permit un marcaj permanent care ar trebui să dureze pe întreaga durată de viață a componentei. După aplicarea codului Data Matrix pe suport, acest lucru este de obicei verificat folosind camere speciale și software special. Această verificare asigură conformitatea standardului cu codul și asigură citirea acestuia pe durata de viață a componentei.

Mai mult, când componenta începe să fie utilizată, codul Data Matrix poate fi citit de o cameră specială capabilă să decodeze datele conținute în Data Matrix, care poate fi astfel utilizată pentru un număr mare de scopuri, cum ar fi urmărirea mișcărilor și gestionarea stocurilor de bunuri. Codurile Data Matrix, împreună cu alte coduri Open Source , cum ar fi codurile de bare unidimensionale, pot fi citite cu telefoane mobile, echipate cu camere, pur și simplu descărcând o aplicație compatibilă cu modelul dvs.

Deși majoritatea telefoanelor mobile sunt capabile să citească Data Matrix, doar câteva pot extinde procesul de decodare pentru a permite accesul la dispozitiv și, prin urmare, interacțiunea. Codurile pot fi utilizate în siguranță, indiferent de mediu, cu mai multe aplicații: de exemplu trasabilitatea produselor, sisteme anti-contrafacere, e-guvernare și soluții bancare.

În Italia, de exemplu, Matricele de date sunt utilizate de oficiul poștal pentru a urmări mișcările plicurilor și de Trezorerie în fișele lor de plată ca mecanism anti-contrafacere.

În Italia, datamatrix, în standardul GS1 datamatrix, a fost utilizat din 2008 pentru etichetarea medicamentelor veterinare [1] .

Standard

Data Matrix a fost inventată de International Data Matrix Inc (ID Matrix) care s-a alăturat cu RVSI / Acuity CiMatrix. Acestea au fost achiziționate ulterior de Siemens AG în octombrie 2005 și de Microscan în septembrie 2008.

Data Matrix este acoperit de mai multe standarde ISO / IEC și este în domeniul public pentru multe aplicații, ceea ce înseamnă că poate fi utilizat în mod liber fără a plăti licență sau regalități.

  • ISO / IEC 16022: 2006 - Specificație de simbolizare a codului de bare Matrice de date
  • Standard de calitate a tipăririi ISO / IEC 15415—2-D
  • ISO / IEC 15418: 2009 - Semantică a formatului de date simbol (identificatori de aplicații GS1 și identificatori de date ASC MH10 și întreținere)
  • ISO / IEC 15424: 2008 - Identificatori purtători de date (inclusiv identificatori de simbolologie) [ID-uri pentru a distinge diferite tipuri de coduri de bare]
  • ISO / IEC 15434: 2009 - Sintaxă pentru medii ADC de mare capacitate (format de date transferate de la scaner la software etc.)
  • ISO / IEC 15459 - Identificator unic

Codificare

Cititoare de matrice de date industriale

Procesul de codificare este descris în documentele publicate pe site-ul ISO . [2] A fost publicat software-ul open source pentru codificarea și decodarea standardului ECC-200 Data Matrix [3]

Următoarele diagrame ilustrează locația datelor mesajelor într-un simbol Matrice de date. Mesajul este „Wikipedia” și este aranjat într-o configurație diagonală oarecum complicată, începând din colțul din stânga sus. Unele caractere sunt împărțite în două bucăți, cum ar fi W inițial, iar al treilea „i” se află în „modelul cu 2 unghiuri”, mai degrabă decât în ​​forma obișnuită în L. Sunt afișate și codurile de la sfârșitul mesajului (marcat Sfârșit) , padding (P) și octeți pentru corectarea erorilor (E) și patru module de spațiu neutilizat (X).

Data Matrix Encoding.svg Datamatrixfilling.png

Există diferite moduri de codificare utilizate pentru a stoca diferite tipuri de mesaje. Modul implicit stochează caractere ASCII pe 8 biți. Codurile de control sunt destinate să comute între moduri, după cum se arată mai jos

Cuvânt de cod Interpretare
0 Nefolosit
1 - 128 Date ASCII (valoare ASCII + 1)
129 Sfârșitul mesajului
130 - 229 Perechi de cifre 00 - 99
230 Începutul codării C40
231 Codarea de bază 256 a început
232 FNC1
233 Anexă structurată. Permite împărțirea unui mesaj pe mai multe simboluri.
234 Programarea cititorului
235 Setați bitul mare al următorului caracter
236 05 Macro
237 06 Macro
238 Începeți codarea ANSI X12
239 Începeți codarea textului
240 Începeți codificarea EDIFACT
241 Cod de interpretare a canalului extins
242 - 255 Nefolosit

Moduri text

Modurile C40, Text și X12 sunt potențial mai compacte pentru stocarea textului. Sunt similare cu DEC Radix-50 , care utilizează caractere în intervalul 0-39 și trei dintre aceste coduri sunt combinate pentru a crea un număr de până la 40³ = 64000, care este stocat în doi octeți (valoare maximă 65536):

V = C1 * 1600 + C2 * 40 + C3 + 1
B1 = etaj (V / 256)
B2 = V mod 256

Rezultatul B1 este în intervalul 0–249. Valoarea specială 254 este utilizată pentru a reveni la modul ASCII

Tabelul de mai jos arată semnificația codurilor. Modurile C40 și Text sunt patru seturi separate. Setul 0 este implicit și conține coduri care selectează temporar un set diferit pentru următorul caracter. Singura diferență este că inversează cazurile. C40 folosește mai ales majuscule, cu litere mici în setul 3. Textul este opus. Setul 1, care conține coduri de control ASCII și setul 2 care conține simboluri de punctuație, sunt identice atât în ​​C40, cât și în Text.

Cod C40 Text X12
setul 0 setul 1 setul 2 setul 3 set 0 setul 3
0 setul 1 NUL ! ' setul 1 ' CR
1 setul 2 DECI H " la setul 2 LA *
2 setul 3 STX # b setul 3 B. >
3 spaţiu ETX $ c spaţiu C. spaţiu
4 0 EOT % d 0 D. 0
5 1 ENQ & Și 1 ȘI 1
6 2 ACK ' f 2 F. 2
7 3 GROZAV ( g 3 G. 3
8 4 BS ) h 4 H. 4
9 5 HT * the 5 THE 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 LA ASA DE / n la Nu. LA
15 B. DA : sau b SAU B.
16 C. DLE ; p c P. C.
17 D. DC1 < q d Î D.
18 ȘI DC2 = r Și R. ȘI
19 F. DC3 > s f S. F.
20 G. DC4 ? t g T. G.
21 H. NAK @ tu h U H.
22 THE SYN [ v the V. THE
23 J ETB \ w j W J
24 K. POATE SA ] X k X K.
25 L EM ^ y L Da L
26 M. SUB _ z m Z M.
27 Nu. ESC FNC1 { n { Nu.
28 SAU FS | sau | SAU
29 P. GS } p } P.
30 Î RS hibit ~ q ~ Î
31 R. S.U.A. AL r AL R.
32 S. s S.
33 T. t T.
34 U tu U
35 V. v V.
36 W w W
37 X X X
38 Da y Da
39 Z z Z

Mod EDIFACT

Modul EDIFACT folosește șase biți pe caracter, cu 4 caractere stocate în trei octeți. Numerele, literele mari, unele semne de punctuație pot fi stocate, dar nu acceptă litere mici.

Cod Sens
0 - 30 Coduri ASCII 64 - 94
31 Reveniți la modul ASCII
32 - 63 Coduri ASCII 32 - 63

Modul de bază 256

Modul de bază 256 începe cu specificarea lungimii, urmat de numărul de octeți. O lungime între 1 și 249 este stocată într-un octet, în timp ce lungimile mai mari sunt stocate în 2 octeți.

L1 = podea (lungime / 250) + 249, L2 = lungime mod 250

Șirurile lungi de zerouri din mesaje ar trebui evitate, deoarece suprafețele goale mari devin mari în codul Matricei de date, ceea ce ar putea determina cititorul să piardă sincronizarea (valoarea implicită a codificării ASCII nu folosește zero din acest motiv). Pentru a face acest lucru mai puțin probabil, lungimea și datele sunt ascunse prin adăugarea unei valori pseudorandom R (n), unde n este poziția în fluxul de octeți.

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

Cum functioneazã

Deși este un standard gratuit, nu există documente gratuite care să explice procesul de codificare. Documentația în format PDF sau hârtie poate fi achiziționată de pe site-ul ISO [4] .

Notă

Elemente conexe

Alte proiecte

linkuri externe

Informatică Portal IT : accesați intrările Wikipedia care se ocupă cu IT