Przejdź do głównej treści

Kod kreskowy 128 (Code 128) – co to jest i jak jest zbudowany?

Code 128 (zapisywany też Code128), czyli kod kreskowy 128 (kod 128, ang. barcode 128), to liniowy (1D) kod o wysokiej gęstości, który zapisuje cały zestaw 128 znaków ASCII – cyfry, wielkie i małe litery, znaki specjalne i sterujące. To dziś jeden z najczęściej używanych kodów w logistyce, magazynach i na etykietach przesyłek.

Poniżej wyjaśniamy, jak zbudowany jest kod 128, czym różnią się jego zestawy znaków A, B i C, jak liczy się znak kontrolny i czym Code 128 różni się od GS1-128.

W tym artykule omówimy:

Co to jest Code 128?

Code 128 opracowała w 1981 roku firma Computer Identics Corporation. Nazwa pochodzi od liczby znaków ASCII, które kod potrafi zapisać. Jest kodem o zmiennej długości, a dzięki zestawowi C zapisuje cyfry parami, więc długie numery zajmują w nim mało miejsca.

Przykładowy kod kreskowy Code 128

Budowa kodu 128

Animacja: budowa kodu Code 128 – znak startu B, dane HDWR, znak kontrolny modulo 103, znak stopu i odczyt czytnikiem

  • Strefa ciszy – jasny margines przed kodem i za nim (co najmniej 10 modułów).
  • Znak startu – Start A, Start B albo Start C. Wybiera zestaw znaków, od którego zaczyna się kod.
  • Dane – każdy znak ma 11 modułów i składa się z 3 kresek i 3 przerw o szerokości od 1 do 4 modułów. Znaki stoją jeden przy drugim, bez odstępów.
  • Znak kontrolny – obowiązkowy, liczony modulo 103.
  • Znak stopu – 13 modułów (ze znakiem kończącym kod).

Kod 128 ma 107 symboli: 103 znaki danych o wartościach 0–102, trzy znaki startu (103, 104, 105) i znak stopu. Spośród kodów alfanumerycznych 1D – kod 39, kod 93 i Code 128 – to Code 128 zapisuje dane najgęściej, zwłaszcza długie ciągi cyfr.

Zestawy znaków A, B i C

ZestawCo zapisujeKiedy
Awielkie litery, cyfry, znaki interpunkcyjne i znaki sterujące ASCII (0–95)dane ze znakami sterującymi, np. tabulator
Bwielkie i małe litery, cyfry, znaki interpunkcyjne (ASCII 32–127)zwykły tekst
Cpary cyfr 00–99 – jeden znak to dwie cyfrydługie numery – kod jest o połowę krótszy

Zestaw można zmienić w środku kodu znakiem CODE (na stałe) albo SHIFT (dla jednego znaku). Programy do etykiet wybierają zestawy same, tak żeby kod był jak najkrótszy.

Znak kontrolny

  1. Weź wartość znaku startu (Start A = 103, Start B = 104, Start C = 105).
  2. Do niej dodaj wartość każdego znaku danych pomnożoną przez jego pozycję: pierwszy znak po starcie × 1, drugi × 2 itd.
  3. Podziel sumę przez 103 – reszta to wartość znaku kontrolnego.

Przykład dla tekstu HDWR w zestawie B (wartość znaku = kod ASCII − 32: H = 40, D = 36, W = 55, R = 50): 104 + 40×1 + 36×2 + 55×3 + 50×4 = 581, a 581 mod 103 = 66. Znak kontrolny ma wartość 66 – w zestawie B to litera „b”. Czytnik sprawdza go i nie przekazuje dalej.

Code 128 a GS1-128

GS1-128 – dawniej kod kreskowy EAN 128 – to nie osobny kod, tylko Code 128 ze znakiem FNC1 po starcie i danymi w formacie GS1: numerem GTIN, numerem partii, datą ważności czy numerem SSCC palety, każde poprzedzone identyfikatorem zastosowania (AI). Każdy GS1-128 jest więc kodem 128, ale nie każdy kod 128 jest GS1-128.

Czy wiesz, że...

  • Nazwa Code 128 pochodzi od 128 znaków ASCII, które kod potrafi zapisać.
  • W zestawie C jeden znak kodu zapisuje dwie cyfry, więc długi numer przesyłki zajmuje o połowę mniej miejsca.
  • Numery przesyłek UPS (zaczynające się od 1Z) na etykietach są zapisane właśnie w Code 128.

Zastosowanie kodu 128

  • Etykiety przesyłek – numery przesyłek kurierskich i pocztowych.
  • Logistyka i magazyn – etykiety palet (SSCC w GS1-128), lokalizacje, numery części i dokumentów.
  • Produkcja – numery seryjne i partie, także z literami.
  • Opieka zdrowotna – opaski identyfikacyjne pacjentów i etykiety próbek.

Na produktach w sklepie stosuje się natomiast kod EAN – Code 128 służy do oznaczeń wewnętrznych i logistycznych.

Gdy danych jest więcej, niż zmieści kod 1D, zamiast Code 128 stosuje się kod 2D – kod QR albo kod DataMatrix.

Jak odczytać i wygenerować kod 128?

Code 128 odczyta każdy czytnik kodów 1D i 2D – laserowy, liniowy i obrazowy – zwykle bez zmiany ustawień. Kod stworzysz za darmo: generator kodów kreskowych 128 HDWR ma Code 128 i GS1-128, a wydrukujesz go na drukarce termicznej do etykiet.

Drukujesz albo skanujesz kody 128?

Sprzęt HDWR do kodów kreskowych – czytniki odczytają kod 128 na etykietach przesyłek i palet, a drukarka termiczna wydrukuje etykiety bez tuszu i tonera.

Podsumowanie

Code 128 to gęsty kod 1D z pełnym zestawem ASCII, trzema zestawami znaków (A, B, C) i obowiązkowym znakiem kontrolnym modulo 103. Znak ma 11 modułów, a zestaw C zapisuje cyfry parami. To podstawa kodu GS1-128 i standard etykiet logistycznych i przesyłek.

Dołącz do naszego newslettera i zgarnij 20 zł rabatu. Zapisz się teraz!