Kód 128
Code 128 je čárový kód , který vám umožňuje reprezentovat všech 128 znaků kódu ASCII (7 bitů). Referenční specifikace jsou vyjádřeny normou ISO / IEC 15417: 2007.
Obsahuje tři typy kódování, které mohou koexistovat současně v jediném čárovém kódu: Code 128A, Code 128B, Code 128C.
Velmi častou aplikací kódu 128 v oblasti logistiky je GS1-128 .
Aplikace
Podmnožinou kódu 128, velmi běžného v oblasti logistiky (doprava a balení), je GS1-128 (známý jako UCC / EAN-128). Slouží k identifikaci kontejnerů a palet v distribučním řetězci. Referenční norma je ISO / IEC 15417: 2007.
Specifikace
Čárový kód Code 128 má šest částí:
- počáteční znak
- kódování dat
- kontrolní kód
- zastavit charakter
- Tichá zóna nebo oblast mezi čárovým kódem a jinými svislými čarami
Řídicí kód je vypočítán výrobcem ( modulo 103) všech znaků.
Typy kódu 128
Kód 128 má 107 symbolů: 103 datových symbolů, 3 startovací symboly, 1 stop symbol. Pro reprezentaci všech 128 znaků ASCII existují tři znakové sady (A, B, C), které lze sloučit do jediného čárového kódu (pomocí kódů 98 a 99 mezi znakovými sadami A a B , 100 mezi znakovými sadami A a C , 101 mezi znakovými sadami B a C ):
- 128A (Sada kódů A) - ASCII kódy 00 až 95 (0-9, AZ a kontrolní kódy), speciální znaky a FNC 1-4
- 128B (sada kódů B) – kódy ASCII 32 až 127 (0-9, AZ, az), speciální znaky a FNC 1-4
- 128C (sada kódů C) - 00-99 (každý pár čísel je kódován jedním kódem) a FNC1
Tichá zóna
Tichá zóna označuje oblast mezi čárovým kódem a ostatními svislými čarami. Tichá zóna by měla být alespoň desetinásobkem šířky nejužšího pruhu/prostorového prvku. Je povinné na levé a pravé straně čárového kódu. Šířka klidové zóny nesmí být menší než 6,4 mm.
Počáteční bity / Stop bity a kódování dat
Každý znak čárového kódu:
- skládá se ze tří taktů a tří mezer. (stop bit má další přídavnou lištu délky 2)
- každý pruh nebo mezera má šířku 1, 2, 3 nebo 4 jednotky šířky
- součet šířek tyčí musí být sudý
- součet šířek mezer musí být lichý
- celkový součet lomítek a mezer se musí rovnat 11 jednotkám šířky na znak
Například kódování ASCII hodnoty 0 lze vidět jako 10011101100, kde číslice 1 (jedna) je lomítko a 0 je mezera. Kombinace obsahující jedinou 1 by byla nejtenčí čárou v čárovém kódu. Kombinace tří 1s (111) v sekvenci označuje pruh třikrát silnější než jeden pruh 1.
Výpočet kontrolního kódu
Kontrolní kód je kontrolní součet Modulo 103. Vypočítá se přidáním 'hodnoty' počátečního kódu k produktům každého znaku vynásobené jeho pozicí v řetězci čárového kódu. Počáteční znak a první kódovaná hodnota je na pozici 1. Součet hodnoty počátečního kódu a produktů se pak vydělí 103. Zbytek dělení je kontrolní číslice „hodnoty“, která se poté převede na znak přidán na konec čárového kódu.
Používám FNC4 ke kódování znaků Latin-1 (160-255)
Funkci 4 (FNC4) lze použít ke kódování, do čárového kódu Code 128, všech znaků standardu LATIN-1 ( ISO-8859-1 , tj. specifikace ISO-8859 ). V čárových kódech je uloženo 7 nejméně významných bitů znaku, který má být kódován; oddělovač FNC4 (jednoduchý nebo dvojitý) se používá k označení, že znaky jsou rozšířeny ASCII a že k hodnotě ASCII, která má být dekódována, je třeba přidat 128. Při dekódování (čárový kód na řetězec), kdy je v řetězci přítomen jeden FNC4, bude dalším znakem rozšířený znak ASCII (160-255). Abyste nemuseli používat FNC4 pro každý rozšířený znak ASCII, existuje způsob, jak přepnout ze standardního ASCII na rozšířený ASCII: veškerý text v rozšířeném ASCII musí být oddělen dvěma páry FNC4. Jeden FNC4 ve dvou párech FNC4 znamená, že další znak je standardní znak ASCII.
Šířky pruhů a mezer
Code128 poskytuje kombinaci 6 lomítek a mezer pro každý znak, kromě znaku stop, který používá 7. Každý znak tedy začíná lomítkem a končí mezerou (s výjimkou znaku stop, který končí pruhem) . V následujících tabulkách jsou uvedeny šířky spojené s každým pruhem a mezerou pro každý znak. Šířka každého pruhu nebo prostoru může být 1, 2, 3 nebo 4 jednotky. V následujících tabulkách bude 'A' reprezentováno vzorem 10100011000 nebo 111323 jako sekvence šířek pruhů a mezer.
| Hodnota | 128A | 128B | 128C | ASCII kód (Common / Barcodesoft) | Fonty (běžné / Barcodesoft) | Vzor taktů / mezer | Šířka pruhů / mezer |
|---|---|---|---|---|---|---|---|
| 0 | prostor | prostor | 00 | 0032 nebo 0212/252 | Mezerník nebo Ô / ü | 11011001100 | 212222 |
| 1 | ! | ! | 01 | 33 | ! | 11001101100 | 222122 |
| 2 | " | " | 02 | 34 | " | 11001100110 | 222221 |
| 3 | # | # | 03 | 35 | # | 10010011000 | 121223 |
| 4 | $ | $ | 04 | 36 | $ | 10010001100 | 121322 |
| 5 | % | % | 05 | 37 | % | 10001001100 | 131222 |
| 6 | & | & | 06 | 38 | & | 10011001000 | 122213 |
| 7 | ' | ' | 07 | 39 | ' | 10011000100 | 122312 |
| 8 | ( | ( | 08 | 40 | ( | 10001100100 | 132212 |
| 9 | ) | ) | 09 | 41 | ) | 11001001000 | 221213 |
| 10 | * | * | 10 | 42 | * | 11001000100 | 221312 |
| 11 | + | + | 11 | 43 | + | 11000100100 | 231212 |
| 12 | , | , | 12 | 44 | , | 10110011100 | 112232 |
| 13 | - | - | 13 | 45 | - | 10011011100 | 122132 |
| 14 | . | . | 14 | 46 | . | 10011001110 | 122231 |
| 15 | / | / | 15 | 47 | / | 10111001100 | 113222 |
| 16 | 0 | 0 | 16 | 48 | 0 | 10011101100 | 123122 |
| 17 | 1 | 1 | 17 | 49 | 1 | 10011100110 | 123221 |
| 18 | 2 | 2 | 18 | 50 | 2 | 11001110010 | 223211 |
| 19 | 3 | 3 | 19 | 51 | 3 | 11001011100 | 221132 |
| 20 | 4 | 4 | 20 | 52 | 4 | 11001001110 | 221231 |
| 21 | 5 | 5 | 21 | 53 | 5 | 11011100100 | 213212 |
| 22 | 6 | 6 | 22 | 54 | 6 | 11001110100 | 223112 |
| 23 | 7 | 7 | 23 | 55 | 7 | 11101101110 | 312131 |
| 24 | 8 | 8 | 24 | 56 | 8 | 11101001100 | 311222 |
| 25 | 9 | 9 | 25 | 57 | 9 | 11100101100 | 321122 |
| 26 | : | : | 26 | 58 | : | 11100100110 | 321221 |
| 27 | ; | ; | 27 | 59 | ; | 11101100100 | 312212 |
| 28 | < | < | 28 | 60 | < | 11100110100 | 322112 |
| 29 | = | = | 29 | 61 | = | 11100110010 | 322211 |
| 30 | > | > | 30 | 62 | > | 11011011000 | 212123 |
| 31 | ? | ? | 31 | 63 | ? | 11011000110 | 212321 |
| 32 | @ | @ | 32 | 64 | @ | 11000110110 | 232121 |
| 33 | NA | NA | 33 | 65 | NA | 10100011000 | 111323 |
| 34 | B. | B. | 34 | 66 | B. | 10001011000 | 131123 |
| 35 | C. | C. | 35 | 67 | C. | 10001000110 | 131321 |
| 36 | D. | D. | 36 | 68 | D. | 10110001000 | 112313 |
| 37 | A | A | 37 | 69 | A | 10001101000 | 132113 |
| 38 | F. | F. | 38 | 70 | F. | 10001100010 | 132311 |
| 39 | G. | G. | 39 | 71 | G. | 11010001000 | 211313 |
| 40 | H. | H. | 40 | 72 | H. | 11000101000 | 231113 |
| 41 | THE | THE | 41 | 73 | THE | 11000100010 | 231311 |
| 42 | J | J | 42 | 74 | J | 10110111000 | 112133 |
| 43 | K. | K. | 43 | 75 | K. | 10110001110 | 112331 |
| 44 | L | L | 44 | 76 | L | 10001101110 | 132131 |
| 45 | M. | M. | 45 | 77 | M. | 10111011000 | 113 123 |
| 46 | Ne. | Ne. | 46 | 78 | Ne. | 10111000110 | 113321 |
| 47 | NEBO | NEBO | 47 | 79 | NEBO | 10001110110 | 133121 |
| 48 | P. | P. | 48 | 80 | P. | 11101110110 | 313121 |
| 49 | Q | Q | 49 | 81 | Q | 11010001110 | 211331 |
| 50 | R. | R. | 50 | 82 | R. | 11000101110 | 231131 |
| 51 | S. | S. | 51 | 83 | S. | 11011101000 | 213113 |
| 52 | T. | T. | 52 | 84 | T. | 11011100010 | 213311 |
| 53 | U | U | 53 | 85 | U | 11011101110 | 213131 |
| 54 | PROTI. | PROTI. | 54 | 86 | PROTI. | 11101011000 | 311123 |
| 55 | W | W | 55 | 87 | W | 11101000110 | 311321 |
| 56 | X | X | 56 | 88 | X | 11100010110 | 331121 |
| 57 | Y | Y | 57 | 89 | Y | 11101101000 | 312113 |
| 58 | Z | Z | 58 | 90 | Z | 11101100010 | 312311 |
| 59 | [ | [ | 59 | 91 | [ | 11100011010 | 332111 |
| 60 | \ | \ | 60 | devadesát dva | \ | 11101111010 | 314111 |
| 61 | ] | ] | 61 | 93 | ] | 11001000010 | 221411 |
| 62 | ^ | ^ | 62 | 94 | ^ | 11110001010 | 431111 |
| 63 | _ | _ | 63 | 95 | _ | 10100110000 | 111224 |
| 64 | NUL | ` | 64 | 96 | ` | 10100001100 | 111422 |
| 65 | SOH | na | 65 | 97 | na | 10010110000 | 121124 |
| 66 | STX | b | 66 | 98 | b | 10010000110 | 121421 |
| 67 | ETX | C | 67 | 99 | C | 10000101100 | 141122 |
| 68 | EOT | d | 68 | 100 | d | 10000100110 | 141221 |
| 69 | ENQ | A | 69 | 101 | A | 10110010000 | 112214 |
| 70 | ACK | F | 70 | 102 | F | 10110000100 | 112412 |
| 71 | PĚKNÝ | G | 71 | 103 | G | 10011010000 | 122114 |
| 72 | BS | h | 72 | 104 | h | 10011000010 | 122411 |
| 73 | HT | a | 73 | 105 | a | 10000110100 | 142112 |
| 74 | LF | j | 74 | 106 | j | 10000110010 | 142211 |
| 75 | VT | k | 75 | 107 | k | 11000010010 | 241211 |
| 76 | FF | L | 76 | 108 | L | 11001010000 | 221114 |
| 77 | ČR | m | 77 | 109 | m | 11110111010 | 413111 |
| 78 | TAK | n | 78 | 110 | n | 11000010100 | 241112 |
| 79 | ANO | nebo | 79 | 111 | nebo | 10001111010 | 134111 |
| 80 | DLE | p | 80 | 112 | p | 10100111100 | 111242 |
| 81 | DC1 | q | 81 | 113 | q | 10010111100 | 121142 |
| 82 | DC2 | r | 82 | 114 | r | 10010011110 | 121241 |
| 83 | DC3 | s | 83 | 115 | s | 10111100100 | 114212 |
| 84 | DC4 | t | 84 | 116 | t | 10011110100 | 124112 |
| 85 | NAK | u | 85 | 117 | u | 10011110010 | 124211 |
| 86 | SYN | proti | 86 | 118 | proti | 11110100100 | 411212 |
| 87 | ETB | w | 87 | 119 | w | 11110010100 | 421112 |
| 88 | UMĚT | X | 88 | 120 | X | 11110010010 | 421211 |
| 89 | EM | y | 89 | 121 | y | 11011011110 | 212141 |
| 90 | SUB | z | 90 | 122 | z | 11011110110 | 214121 |
| 91 | ESC | { | 91 | 123 | { | 11110110110 | 412121 |
| devadesát dva | FS | | | devadesát dva | 124 | | | 10101111000 | 111143 |
| 93 | GS | } | 93 | 125 | } | 10100011110 | 111341 |
| 94 | RS | ~ | 94 | 126 | ~ | 10001011110 | 131141 |
| 95 | NÁS | Z | 95 | 200/240 | A | 10111101000 | 114113 |
| 96 | FNC 3 | FNC 3 | 96 | 201/241 | É / ñ | 10111100010 | 114311 |
| 97 | FNC 2 | FNC 2 | 97 | 202/242 | Ê / ò | 11110101000 | 411113 |
| 98 | Směna B | Směna A | 98 | 203/243 | Ë / ó | 11110100010 | 411311 |
| 99 | Kód C | Kód C | 99 | 204/244 | The | 10111011110 | 113141 |
| 100 | Kód B | FNC4 | Kód B | 205/245 | The | 10111101110 | 114131 |
| 101 | FNC 4 | Kód A | Kód A | 206/246 | The | 11101011110 | 311141 |
| 102 | FNC 1 | FNC 1 | FNC 1 | 207/247 | Ï / ÷ | 11110101110 | 411131 |
| 103 | Počáteční kód A | 208/248 | Ð / ø | 11010000100 | 211412 | ||
| 104 | Startovací kód B | 209/249 | Ñ / ù | 11010010000 | 211214 | ||
| 105 | Startovací kód C | 210/250 | Ň / ú | 11010011100 | 211232 | ||
| 106 | Zastavit (7 taktů / mezer) | 211/251 | Ó / û | 1100011101011 | 2331112 | ||
| - | nepoužívá se, aby se zabránilo chybám při čtení | - | - | 11010111000 | 211133 | ||
Další projekty
Wikimedia Commons obsahuje obrázky nebo jiné soubory na Code 128
Externí odkazy
- ( EN ) Code 128 / GS1-128 Barcode FAQ & Tutorial , na idautomation.com .