Kod 49

Przykład kodu "Kod 49"

Kod 49 (Code 49) – alfanumeryczny dwuwymiarowy piętrowy ciągły modularny samosprawdzalny kod kreskowy o zmiennej długości opracowany w 1987 przez firmę Intermec Corporation. Była to pierwsza symbolika dwuwymiarowa, która została wprowadzona do powszechnego użytku[1]. W chwili obecnej jest dostępna na licencji public domain. Symbolika została włączona do Wykazu Ujednoliconych Symbolik (ang. USS – Unform Symbol Specyfications) przez organizację AIM (Global Trade Association of the Automatic Identification & Data Capture Industry).

Kod ten powstał w oparciu o Kod 3 z 9 poprzez ustawienie kilku (od dwóch do ośmiu) kodów w rzędach jeden nad drugim. Obecnie specyfikacja zawiera również pewne elementy symboliki UPC[1]. W kodzie tym wymagane jest stosowanie znaków kontrolnych. Kod został opracowany w celu zamieszczania na małych produktach (np. na lekach, podzespołach elektronicznych, na kasetkach z filmami fotograficznymi w systemie Kodaka o nazwie Advanced Photographic Systems lub do śledzenia części podczas procesu produkcji[2]). Wadą symboliki jest jej skomplikowana charakterystyka, co wiąże się z większymi wymaganiami wobec urządzeń odczytujących. Teoretyczna gęstość kodu wynosi 170 znaków alfanumerycznych na cal2[1]. Rzeczywista maksymalna gęstość kodu wynosi 93,3 znaków alfanumerycznych lub 154,3 znaków numerycznych na cal2[3].


Budowa kodu

Kod składa się z od dwóch do ośmiu rzędów pasków, z których każdy jest oddzielony poziomą ciemną kreską, której szerokość wynosi jeden moduł (wymiar modułu to 0,191mm). Długość pojedynczego rzędu kresek jest stała, z marginesami wynosi 81 modułów (tworzących 18 kresek ciemnych i 17 jasnych) oraz koduje cztery dwuznakowe słowa kodowe. Jedno słowo kodowe jest budowane przez 16 modułów ułożonych w cztery ciemne i cztery jasne kreski. Dodatkowo w każdym rzędzie jest umieszczona informacja o jego numerze oraz suma kontrolna dla danych w nim zakodowanych. Liczba rzędów uzależniona jest od ilości kodowanych informacji. Specyfikacja symboliki zezwala na łączenie pojedynczych kodów celem zakodowania większej ilości danych. Wysokość kresek w jednym rzędzie jest zmienna i zależna od liczby rzędów oraz miejsca przeznaczonego na umieszczenie kodu, jednakże zaleca się, by minimalna ich wysokość wynosiła 8 modułów. Zachowanie kolejności skanowania rzędów nie jest obowiązkowe. Wymagane jest stosowanie znaków START/STOP oraz marginesów (cichych stref) po prawej i lewej stronie kodu.

Tryby kodowania znaków

Kod może być użyty w trzech trybach kodowania znaków:

  • jako kod numeryczny (w trzech słowach kodowych jest wtedy kodowane pięć cyfr, a zatem w jednym kodzie można zapisać do 81 cyfr).
  • jako kod alfanumeryczny wykorzystujący tablicę 49 znaków (część tablicy ASCII, można zakodować do 49 znaków w jednym kodzie[4]).
  • jako kod alfanumeryczny kodujący tablicę 128 znaków ASCII.

W celu umożliwienia kodowania wszystkich 128 znaków tablicy ASCIIw kodzie wykorzystuje się znaki Shift 1 oraz Shift 2, które zmieniają znaczenie znaku, z którym są połączone. Dodatkowo występuje znak NS określający tryb kodowania (numeryczny/alfanumeryczny) oraz symbole funkcyjne FNC1, FNC2 i FNC3.

Mechanizmy wykrywania błędów

W kodzie wykorzystuje się znaki kontrolne występujące przed oznaczeniem STOP w każdym rzędzie. Wartość tych znaków oblicza się na podstawie algorytmu modulo 49. Dodatkowo obliczane są znaki kontrolne dla całego symbolu. W przypadku, gdy liczba rzędów w kodzie jest mniejsza od siedmiu – są to dwa znaki. Natomiast, gdy jest większa lub równa siedem, liczba ta wynosi trzy znaki.

Linki zewnętrzne

Bibliografia

Przypisy

  1. a b c Russ Adams: 2-Dimensional Bar Code Page. [dostęp 2011-08-27]. [zarchiwizowane z tego adresu (7 lipca 2011)]. (ang.).
  2. Strona opisująca użycie kodów 2D na aimglobal.org. aimglobal.org. [zarchiwizowane z tego adresu (2006-10-05)]. (ang.)
  3. Glosariusz na stronie Intermec.com (ang.)
  4. Informacje o kodzie na stronie code49.dlawas.com

Content Disclaimer

Informasi ini disarikan dari Wikipedia dan disajikan kembali untuk tujuan edukasi. Konten tersedia di bawah lisensi CC BY-SA 3.0. Kami tidak bertanggung jawab atas ketidakakuratan data yang bersumber dari kontribusi publik tersebut.

  1. The information displayed on this website is sourced in part or in whole from Wikipedia and has been adapted for the purpose of restating it. We strive to provide accurate and relevant information, however:
  2. There is no guarantee of absolute accuracy. Wikipedia is an open, collaborative project that can be edited by anyone, so information is subject to change.
  3. It is not intended to constitute professional advice. The content displayed is for informational and educational purposes only. For important decisions (e.g., medical, legal, or financial), please consult a professional.
  4. Content copyright. Wikipedia is licensed under the Creative Commons Attribution-ShareAlike License (CC BY-SA). This means that content may be reused with appropriate attribution and shared under a similar license.
  5. Responsible use. Any risk arising from the use of information from this website is entirely the responsibility of the user.