DataMatrix

Z Wikipedii, wolnej encyklopedii
Przejdź do nawigacji Przejdź do wyszukiwania
Przykład kodu DataMatrix
Symbole oznaczają tekst:
« Wikipedia, the free encyclopedia »
Przykład wykorzystania kodu Data Matrix do oznaczania procesorów firmy Intel Pentium 4 (Northwood) 3,06 GHz
Przykład wykorzystania kodu Data Matrix do oznaczania procesorów firmy AMD Athlon 64 X2

DataMatrix to dwuwymiarowy matrycowy kod kreskowy o zmiennej długości.

Został opracowany przez firmę International Data Matrix w pierwszej połowie lat dziewięćdziesiątych[1] .

Został opracowany przez firmę Robotic Vision Systems, Inc. Jest licencjonowany na zasadzie public domain, co oznacza, że za jego wykorzystywanie nie trzeba wnosić żadnych opłat[2].

Kod DataMatrix składa się z kwadratowych modułów ułożonych wewnątrz wzorca wyszukiwania stanowiącego obwód symbolu. Stosowane są dwa rodzaje kodów korekcyjnych: ECC 000-140 i ECC 200.

ECC 000-140 wykorzystuje kody splotowe, natomiast ECC 200 korzysta z kodów Reeda-Solomona. Najnowsza wersja Data Matrix ECC 200 z algorytmem korekcji błędów Reeda-Solomona oferuje duże bezpieczeństwo danych.

Standard DataMatrix jest wykorzystywany w systemie semacode.

Standard DataMatrix został przyjęty przez Międzynarodową Organizację Normalizacyjną (ISO) jako norma ISO 16022.

Po uzyskaniu statusu normy ISO/IEC 16022:2000 — International Symbology Specification, Datamatrix[3] oraz ISO/IEC 24720:2006 wykorzystywanie specyfikacji DataMatrix nie wiąże się z żadnymi opłatami licencyjnymi. Symbole DataMatrix mają postać kwadratów zawierających od 10*10 do 144*144 elementów. Generowanie symbolu odbywa się przy pomocy odpowiedniego oprogramowania, z zaimplementowanym algorytmem opisanym w normie.

DataMatrix został zaprojektowany w celu upakowania jak największej liczbie informacji na jak najmniejszej powierzchni. Dzięki korekcji błędów z redundancją danych odczyt kodu jest szybki i pewny, nawet w przypadku uszkodzenia do 25% wydrukowanego kodu.

Budowa[edytuj | edytuj kod]

Rodzaj dwuwymiarowej macierzy binarnej (kodu 2D) w kształcie kwadratu zbudowanego z punktów. Dwa sąsiednie boki, lewy oraz dolny tworzą granicę w kształcie litery L (finder pattern), co pozwala na orientację kodu. Natomiast boki górny oraz prawy składają się na przemian z elementów czarnych oraz białych, używane głównie do określenia rozmiaru fizycznego oraz zniekształceń symbolu. Wewnętrzna część symbolu zawiera zakodowaną informację. Wokół kodu DMC znajduje się tzw. pole ciszy (quiet zone), którego rekomendowana wielkość wynosi do 2 do 4 wielkości pojedynczego piksela. Do odczytania kodu DataMatrix potrzebny jest układ optyczny z przetwornikiem obrazu (np. kamera cyfrowa) oraz odpowiednie oprogramowanie analizujące obraz. Referencyjny algorytm dekodujący stanowi część normy ISO/IEC. Najpowszechniejszym urządzeniem zdolnym odczytać DataMatrix jest telefon komórkowy, wyposażony w aparat cyfrowy i odpowiednie oprogramowanie.

Wbudowane w oprogramowanie dekodujące algorytmy korekcji błędów, bazujących m.in. na kodach Reeda-Solomona, pozwalają na prawidłowe odczytanie nawet dość znacznie uszkodzonych symboli DataMatrix.

Właściwości[edytuj | edytuj kod]

Podstawowe cechy:

  • w kodzie tym można zawrzeć pełny, rozszerzony zestaw znaków ASCII, kod ECC200 umożliwia również zakodowanie znaków alfabetu arabskiego, greckiego, hebrajskiego i cyrylicy;
  • sześć schematów kodowania, dobieranych w taki sposób, aby powstający z danych kod był jak najmniejszy (wybierany jest jeden optymalny kod)
  • cztery poziomy korygowania błędów, możliwe również tylko wykrywanie błędów ;
  • w ECC 200 do korekcji błędów wykorzystuje się konstrukcję symbolu oraz specjalne korygujące słowa kodowe;
  • kod matrycowy, modularny;
  • rolę kreski znanej ze zwykłych kodów pełni tu komórka w kształcie kwadratu;
  • kody ECC 000-140 mają nieparzystą liczbę rzędów i kolumn, prawy górny róg kodu jest zawsze ciemny;
  • kody ECC 200 mają parzysta liczbę rzędów i kolumn, prawy górny róg kodu jest zawsze jasny;
  • w ECC 200 można zakodować do 2335 znaków alfanumerycznych, 1556 znaków ośmiobitowych lub 3116 znaków numerycznych (pojemność informacyjna);
  • w ECC 200 można łączyć w jeden komunikat do 16 kodów.

Zastosowania[edytuj | edytuj kod]

Data Matix Code jest używany często do oznaczania dokumentów. Stosowany jest także na przesyłkach w transporcie i spedycji. Często wykorzystywany jest także w przemyśle elektronicznym.

Najciekawszym zastosowaniem DataMatrix wydaje się znakowanie urządzeń, narzędzi i dokumentów wykorzystywanych w codziennej działalności, zarówno w celu inwentaryzacji, jak i powiązania przedmiotu z informacją dodatkową.

DataMatrix z powodzeniem można wykorzystać do znakowania dokumentów (dowody rejestracyjne[4], faktury, korespondencja seryjna, koperty, segregatory) bez konieczności stosowania specjalistycznych technik drukarskich.

Struktura kodu DataMatrix, system odczytu bazujący na analizie grafiki oraz technika drukowania bezpośredniego (grawerowanie laserowe, wytłaczanie, grawerowanie igłowe i drukowanie atramentowe) zapewniają stabilne funkcjonowanie kodowania na prawie wszystkich podłożach i powierzchniach.


Bibliografia[edytuj | edytuj kod]

  • ISO/IEC16022:2000. Information technology - International symbology specification – Datamatrix.

Przypisy[edytuj | edytuj kod]

  1. Kody dwuwymiarowe
  2. www.datamatrix.pl
  3. PN-ISO/IEC 16022:2008 Technologia informatyczna – Techniki automatycznej identyfikacji i gromadzenia danych – Wymagania dotyczące symboliki kodów kreskowych Data Matrix.
  4. W Polsce do oznaczania dowodów rejestracyjnych pojazdów stosuje się Aztec Code

Linki zewnętrzne[edytuj | edytuj kod]

  • libdmtx - biblioteka języka C oraz narzędzia umożliwiające odczyt i tworzenie symbolów DataMatrix; dostępny kod źródłowy
  • Generator kodów DataMatrix - Darmowy generator kodów DataMatrix online