Kod kreskowy, kod paskowy (ang. barcode) – graficzna reprezentacja informacji poprzez kombinację ciemnych i jasnych elementów, ustaloną według symboliki reguł opisujących budowę kodu (np. jego wymiary, zbiór kodowanych znaków, algorytm obliczania cyfry kontrolnej i inne) danego kodu. Kod kreskowy przeznaczony jest dla czytników elektronicznych. Ma na celu umożliwienie automatycznego odczytywania informacji. Głównym zastosowaniem kodu kreskowego jest automatyczna identyfikacja produktów w szeroko pojętej logistyce.
thumb|Kod EAN-13: jeden z najczęściej występujących kodów na wyrobach konsumenckich. Prefiks 590 oznacza, iż dany produkt został zarejestrowany w polskiej organizacji GS1. Najczęściej oznacza to, że jest wyprodukowany w Polsce lub jest dystrybuowany przez polskie przedsiębiorstwo. thumb|Ręczny czytnik kodów kreskowych
Historia
1932 – Wallace Flint pisze na Uniwersytecie Harwardzkim pracę magisterską na temat automatycznych punktów kasowych w supermarketach 1948 – Joe Woodland i Berny Silver rozpoczynają badania nad technicznym aspektem odczytu i kontroli cen artykułów żywnościowych w handlu 1949 – Girard Feissel zgłasza w amerykańskim urzędzie patentowym wniosek dotyczący sposobu kodowania cyfr 7 października 1952 – przyznanie patentu 1970 – producenci i handlowcy z USA i Kanady tworzą stowarzyszenie do jednolitego kodowania towarów 1973 – oficjalne zatwierdzenie kodu kreskowego UPC (Universal Product Code) 1974 – powstanie tymczasowego komitetu badającego możliwość wprowadzenia jednolitego systemu identyfikacji towarów w Europie 26 czerwca – pierwszy towar oznaczony kodem kreskowym Universal Product Code (UPC) przechodzi przez kasę w domu towarowym Marsh w Troy, w hrabstwie Miami, w stanie Ohio; towarem tym był multipak gumy do żucia „Wrigley's Juicy Fruit” (zakładka dla roku 1974).Gavin Weightman: The History of the Bar Code., 23.09.2015, smithsonianmag.com. 1976 – powstaje Europejski System Kodowania Towarów EAN (European Article Numbering) 1976 – opracowanie pierwszego alfanumerycznego kodu kreskowego – Code 39 1977 – powołanie Stowarzyszenia Kodowania Towarów EANA (European Article Numbering Association) 1981 – przekształcenie systemu europejskiego w międzynarodowy – powstaje IANA 1984 – opracowanie przez organizację «Automotive Industry Action Group» (AIAG) pierwszego standardu zakładającego wykorzystanie kodu składającego się z czterech kodów Code 39 ułożonych piętrowo jeden nad drugim 1987 – wprowadzenie przez firmę «Intermec» pierwszego kodu dwuwymiarowego piętrowego Code 49 1990 – przyjęcie Polski do systemu EAN i powołanie organizacji narodowej «CKK – Centrum Kodów Kreskowych» w Instytucie Logistyki i Magazynowania w Poznaniu 1998 – organizacje EAN i UCC podjęły decyzję o kompleksowym scaleniu systemu UPC z systemem EAN, dzięki czemu obecnie funkcjonuje jeden globalny system EAN.UCC 2005 – globalne Forum GS1, podczas którego oficjalnie dokonano zmiany nazwy z EAN International na GS1 luty – zmiana nazwy organizacji krajowej z «CKK – Centrum Kodów Kreskowych» na «GS1 Polska» w Instytucie Logistyki i Magazynowania w Poznaniu
Zasady działania W trakcie odczytywania kodu techniką skanowania, światło pochodzące z czytnika, uformowane w cienką wiązkę (laser), przesuwa się wzdłuż czytanego kodu, w danym momencie oświetla niewielki punkt kodu, następnie światło to jest odbijane przez jasne elementy kodu (przerwy), a pochłaniane przez jego ciemne elementy (kreski, pola), co odczytuje fotodioda. Światło odbite od przerw powoduje powstanie w czytniku silniejszych sygnałów elektrycznych, natomiast w wyniku braku odbicia (kreski) powstają sygnały słabsze. W zależności od grubości kresek/przerw, różny jest też czas trwania poszczególnych sygnałów. Czas trwania każdego impulsu koduje informacje, które są tłumaczone przez dekoder czytnika na cyfry, litery lub inne znaki i przesyłane do komputera.
Występują również kody wykorzystujące więcej niż dwa kolory (np. Ultracode), co umożliwia zapisanie większej ilości informacji.
Odwzorowanie kodów paskowych w materiale plastycznym np. metal, plastik lub guma może być wykonane przez wgłębienia. Ma to miejsce w kodach Bumpy Bar CodeOpis kodów Bumpy Bar Code na stronach dataid.com . W tym przypadku czytnik analizuje kształty cienia w zagłębieniach przy skośnym ustawieniu źródła światła.
Zastosowanie kodów Kody kreskowe posiadają wiele zastosowań w różnych dziedzinach działalności. Do najważniejszych z nich można zaliczyć:
identyfikację jednostek handlowych (numery GTIN), przy czym w tym ujęciu za jednostkę handlową uważa się dowolny produkt lub usługę, której można nadać cenę i która przepływa przez łańcuchu dostaw. A zatem do kategorii tej zalicza się jednostki (produkty) w opakowaniach zbiorczych i jednostkowych, sprzedawane w hurcie i detalu, dostępne na rynku krajowym (wewnętrznym) lub międzynarodowym, o stałej lub zmiennej ilości, o jednorodnej lub niejednorodnej zawartości. Do kategorii tej zalicza się również oznaczenia wydawnictw ciągłych (ISSN), muzycznych (ISMN) lub książek (ISBN) identyfikację jednostek logistycznych (numery SSCC), czyli takich jednostek, które zostały utworzone dla potrzeb transportu i magazynowania (np. paletowe jednostki ładunkowe lub kontenerowe jednostki ładunkowe) oraz podlegają procesom identyfikacji, śledzenia i zarządzania podczas przepływu przez łańcuch dostaw. Związany z tym jest również termin Etykieta logistyczna, na której zawarte są podstawowe informacje o jednostce logistycznej identyfikację zasobów (numery GIAI), a konkretniej zasobów trwałych (o statusie zapasów) przedsiębiorstwa (np. opakowań zwrotnych wielokrotnego użytku, palet) identyfikację lokalizacji (numery GLN, SWIFT, DUNS, BSI/AFNOR), służącej do identyfikacji obiektów, którym można nadać adres (np. przedsiębiorstwa, konkretne pokoje, punkty sprzedaży, komunikaty EDI) identyfikację relacji usługowych (numery GSRN nadawane usługobiorcom) inne zastosowania, takie jak znakowanie kuponów, kwitów zwrotnych, rachunków, telefonów komórkowych, przesyłek kurierskich, recept, leków, stron internetowych i innych
Ze względu na fakt znakowania towarów w sprzedaży detalicznej oraz wydawnictw, do najczęściej spotykanych należą symboliki EAN (Europa) i UPC (Ameryka Północna).
Rodzaje kodów Występuje około 250 rozwiązań w dziedzinie kodów kreskowych. W związku z tym istnieje kilka sposobów ich podziału:
Podział według wymiarowości kodu: jednowymiarowe (liniowe, 1D) – informacje zapisane są w jednej linii (najczęściej w postaci kresek) dwuwymiarowe piętrowe – rozwinięcie kodów jednowymiarowych polegające na istnieniu kilku linii kodu, jedna pod drugą dwuwymiarowe matrycowe – informacja zapisana jest na określonej powierzchni, z tym że do zapisu nie są wykorzystywane kreski, lecz inne oznaczenia kody złożone – występują w nich zarówno elementy kodów jednowymiarowych, jak i dwuwymiarowych kody trójwymiarowe – zazwyczaj są to wytłaczane dowolne kody jednowymiarowe (Bumpy Bar Code). Różnica polega na tym, iż w zapisie/odczycie zamiast różnic w kolorach wykorzystuje się różnice głębokości tłoczenia Podział według szerokości kresek: kody o jednej szerokości kresek (np. PosiCode) – kodowanie polega na występowaniu, bądź nie, kreski w określonym miejscu kody o dwóch szerokościach kresek kody o wielu szerokościach kresek (modularne) Podział według rodzaju kodowanych symboli: numeryczne – kodowane są jedynie cyfry w systemie dziesiętnym alfanumeryczne – kodowane są cyfry i pozostałe znaki kodu ASCII, czasem również znaki występujące w niektórych alfabetach Podział według ciągłości kodu (nie dotyczy kodów matrycowych): kody ciągłe – nie występują w nich przerwy między kodowanymi znakami kody dyskretne – występują przerwy między kodowanymi znakami Podział według ilości kodowanych znaków: kody o ściśle określonej liczbie kodowanych znaków (o stałej długości) kody o różnej liczbie kodowanych znaków (o zmiennej długości) Podział według przyjętej metody weryfikacji odczytanych danych: kody samosprawdzalne (np. wszystkie kody typu m z n) – pewne procedury sprawdzania błędów są zaimplementowane w budowie kodu, np. poszczególne symbole są kodowane tak, aby różnić się od siebie maksymalnie, a zatem błędne odczytanie jednej kreski powoduje automatyczną niepoprawność kodu kody ze znakiem kontrolnym (np. z cyfrą kontrolną) kody samosprawdzalne z dodatkowym znakiem kontrolnym
Jednowymiarowe
+ Kody jednowymiaroweNazwa symbolikiNumeryczny/alfanumerycznyCiągły/dyskretnyDwie szerokości/modularnyStała/zmiennadługośćUwagi i wykorzystanie Codabar alfanumeryczny dyskretny dwie Włączony do USS przez AIM CODE 11 numeryczny dyskretny dwie Kod 2 z 5Opis symboliki Kod 2z5 na stronie barcode.ro (Code25) numeryczny ciągły dwie występuje w kilku odmianach Przeplatany 2 z 5(PDF)Specyfikacje symboliki ITF-14 na stronie gs1pl.org [dostęp: 2008.01.11].(Code25 Interleaved) numeryczny ciągły dwie zmienna(parzysta ilość,maks. 16) Włączony do USS przez AIM Kod 3 z 9(Code39) alfanumeryczny(43 znaki w podst. wer.) dyskretny dwie zmienna Włączony do USS przez AIM Code 93Opis symboliki Code93 na stronie morovia.com alfanumeryczny (ASCII) ciągły modularny zmienna Włączony do USS przez AIM Kod 128(PDF)Specyfikacja kodu GS1-128 na stronie organizacji GS1 [dostęp: 2008.01.11].(Code128) alfanumeryczny (ASCII) ciągły modularny zmienna Zaimplementowany przez GS1 jako GS1-128(PDF)Specyfikacje symboliki GS1-128 na stronie gs1pl.org [dostęp: 2008.01.11].. Występują odmiany A, B oraz C. EAN-8(PDF)Specyfikacje symboliki EAN/UPC na stronie gs1pl.org [dostęp: 2008.01.11]. numeryczny ciągły modularny stała (8) Zaimplementowany przez GS1, opakowania jednostkowe EAN-13 numeryczny ciągły modularny stała (13) Zaimplementowany przez GS1, opakowania jednostkowe, GTIN. Może występować z 2 lub 5 cyfrowym dodatkiem add-on. GS1-128 alfanumeryczny (ASCII) ciągły modularny zmienna Zaimplementowany przez GS1. Opakowania zbiorcze, etykieta logistyczna ITF-14 numeryczny ciągły dwie stała (14) Zaimplementowany przez GS1, opakowania zbiorcze MSI Plessey ciągły dwie UPC-A numeryczny ciągły modularny stała (12) Zaimplementowany przez GS1, opakowania jednostkowe UPC-E numeryczny ciągły modularny stała (6) Zaimplementowany przez GS1, opakowania jednostkowe PosiCode alfanumeryczny ciągły jedna zmienna Włączony do USS przez AIM POSTNET ciągły dwie GS1 DataBar(PDF)Specyfikacje symbolik RSS na stronach gs1pl.org [dostęp: 2008.01.11].(RSS) numeryczny lubalfanumeryczny ciągły modularny Zaimplementowany przez GS1; pełna implementacja w systemach skanujących od 2010 roku; do znakowania bardzo małych jednostek; licencja – domena publiczna; cechy kodu uzależnione są od wersji Telepen(PDF)Specyfikacje symboliki Telepen na stronie telepen.co.uk. alfanumeryczny(ASCII) ciągły dwie Wykorzystywany w bibliotekach. Włączony do USS przez AIM
Kraj rejestracji i umowne znaczenie prefiksu kodu EAN-13 i UPC-12 Według prefiksu.
Dwuwymiarowe