Przemysłowy Generator Code 39
Code 39 był pierwszym kodem kreskowym, który radził sobie z literami, nie tylko cyframi — i dekady później wciąż jest wszędzie tam, gdzie żyją starsze systemy: logistyka wojskowa, zakłady motoryzacyjne, naklejki inwentarzowe na tyłach sprzętu biurowego.
Dlaczego przetrwał
Jego siłą jest czysta prostota. Nie ma obowiązkowej sumy kontrolnej, zestaw znaków jest mały i przewidywalny (A–Z, 0–9 i garść symboli: - . $ / + %), a praktycznie każdy skaner, jaki kiedykolwiek wyprodukowano, czyta go bez specjalnego firmware'u. Każdy znak jest też samokontrolujący — pojedynczy źle wydrukowany pasek daje znak nieprawidłowy, a nie inny — i właśnie dlatego formatowi zaufano na samym początku. Jest szerszy i mniej gęsty niż Code 128, ale dla krótkiego numeru regału albo systemu, który działa od dwudziestu lat, to rzadko ma znaczenie.
Przy życiu trzymają go dwa standardy instytucjonalne: specyfikacja LOGMARS Departamentu Obrony USA dla etykiet zaopatrzenia wojskowego oraz etykiety HIBC w części łańcucha dostaw ochrony zdrowia. Jeśli klient wręcza Ci specyfikację z napisem „Code 39" — to właśnie dlatego.
Specyfikacja techniczna
| Zestaw znaków | 43 znaki: A–Z, 0–9, spacja oraz - . $ / + % |
| Długość | Zmienna — ale każdy znak potrzebuje 13–16 szerokości pasków, więc krótko |
| Cyfra kontrolna | Opcjonalna (modulo 43); większość wdrożeń ją pomija |
| Znak start/stop | Gwiazdka (*) na obu końcach, dodawana automatycznie — nigdy nie wpisuj jej sam |
| Minimalny wymiar X | Technicznie 0,19 mm; w praktyce zalecane 0,25 mm+ |
| Strefa ciszy | 10× wymiar X z obu stron |
Uwagi do druku
Niska gęstość Code 39 to w druku wręcz zaleta: szerokie paski przetrwają zgrubny nadruk, zwietrzałe powierzchnie i tanie skanery. Ceną jest szerokość etykiety — dziesięć znaków Code 39 zajmuje mniej więcej tyle, co dwadzieścia w Code 128. Zaplanuj rozmiar etykiety, zanim zdecydujesz się na format, zwłaszcza przy wąskich naklejkach inwentarzowych.
Najczęstsze pytania
Dlaczego skaner dodaje albo oczekuje gwiazdek?
Gwiazdka to znak start/stop tej symboliki. Część skanerów jest skonfigurowana tak, że ją przekazuje, większość ją usuwa. Nigdy nie umieszczaj * w danych — generator sam dodaje właściwe znaki startu i stopu.
Czy Code 39 koduje małe litery?
Nie natywnie — dane są zamieniane na wielkie litery. Istnieje tryb „rozszerzony", który mapuje pełen zestaw ASCII na pary znaków, ale podwaja szerokość symbolu i nie każdy skaner ma go włączony. Jeśli potrzebujesz małych liter — użyj Code 128.
Czy dodawać opcjonalną cyfrę kontrolną?
Jeśli Twoja specyfikacja (np. LOGMARS) wymaga modulo 43 — tak. W innym razie większość współczesnych systemów ją pomija i polega na samokontroli symboliki. Upewnij się tylko, że konfiguracja skanera jest zgodna — skaner oczekujący cyfry kontrolnej zniekształci kody, które jej nie mają.
Wybierasz między klasykami? Przeczytaj Code 128 vs Code 39. A przy znakowaniu sprzętu i środków trwałych — śledzenie zasobów kodami kreskowymi.