Vonalkód

A Wikipédiából, a szabad enciklopédiából
Vonalkód

A vonalkód olyan gépek által optikailag leolvasható kód, amelynél különböző vastagságú függőleges világos és sötét közök, illetve vonalak meghatározott váltakozása fejezi ki az információt. Általában alattuk számokat is elhelyeznek. Leggyakoribb felhasználási területe a kereskedelem, például az áruk csomagolásán, amely lehetővé teszi az áru következő adatainak gyors azonosítását:

  • a gyártó ország
  • a gyári szám
  • a termék cikkszáma

Vonalkód jelképekkel megjelenített azonosító számok lehetővé teszik a gépek számára az elektronikus leolvasást, melynek eredményeképpen használata nagyban segíti és gyorsítja az információ áramlását a bolti pénztáraknál, raktári átvételnél, illetve minden olyan helyen, ahol az üzleti folyamatokban szükséges.

Az egységes szerkezetű számozási, azonosítási rendszer és az automatikus adatgyűjtést biztosító vonalkódok mára sokféle méretben léteznek, és ha szükséges, a csökkentett helyigényű, úgynevezett DataBar (korábban RSS) kódok akár egy kis ampullán is elhelyezhetők. A klasszikus kereskedelmi alkalmazásokon kívül a vonalkódoknak jelentős szerepük van az élelmiszerek és gyógyszerek nyomon követésében.

A vonalkódos azonosítás a GS1 rendszer legismertebb eleme, amely a kereskedelmi folyamatok elválaszthatatlan része. A vonalkód jelképekkel megjelenített azonosító számok teszik lehetővé a gépek számára az elektronikus leolvasást (szkennelést), ami nagyban segíti és gyorsítja az információ áramlását a bolti pénztáraknál, raktári átvételnél, illetve minden olyan helyen, ahol az üzleti folyamatokban szükséges.

Magyar neve[szerkesztés | forrásszöveg szerkesztése]

Kezdetben magyartalanul „bar kód”-nak fordították. (Például Az Ezermester Kiskönyvtára 24., PC-től a teletext-ig, 1984.)

Kifejlesztése[szerkesztés | forrásszöveg szerkesztése]

A vonalkód leolvasó és kiértékelő rendszer szabadalmi leírását Classifying Apparatus and Method címmel 1949 októberében nyújtotta be feltalálója, Norman Joseph Woodland amerikai gépészmérnök (1921–2012) és munkatársa, Bernard Silver (1924–1963). A szabadalmi okiratot 1952. október 7-én állították ki, US Patent 2,612,994 szám alatt. A két feltaláló később eladta a találmány összes jogát 15 000 dollárért a Philco iparcikk-kereskedő vállalatnak.[1]

A vonalkód leolvasása[szerkesztés | forrásszöveg szerkesztése]

A vonalkód leolvasását erre kifejlesztett készülékek teszik lehetővé, elsősorban a pénztárosok számára. Legelőször az Amerikai Egyesült Államokban, Troy városban (Ohio állam) alkalmazták egy szupermarketben, egy Wrigleys rágógumin lévő kód leolvasásakor 1974. június 26-án. A vonalkód használata az 1990-es évek óta Magyarországon is elterjedt. Legelsőként a Skála vezette be, 1984-ben.

A vonalkódban nem a fekete vonalak, hanem a köztük lévő fehérek a „hasznosak”, mivel ezekről verődik vissza a leolvasó által kibocsátott impulzus. A különböző vastagságú és távolságú fehér vonalak egy számsorozatot kódolnak, amit általában számjegyekkel is kiírnak a vonalkód alatt.

Leolvasó eszközök[szerkesztés | forrásszöveg szerkesztése]

  • Fényceruzák
  • Kézi szkennerek
  • Pultba épített szkennerek
  • Lézerpisztolyok

Típusai[szerkesztés | forrásszöveg szerkesztése]

EAN-13[szerkesztés | forrásszöveg szerkesztése]

Egy EAN-13 típusú vonalkód

Az Európában használt kereskedelmi forgalomba kerülő vonalkód szabványa a GS-1 kódolás (régebben EAN kódolás, azaz European Article Numbering), ebben 13 számjegy jelöli az illető terméket. Ezen számsorozat utolsó jegye egy ellenőrző szám, ami egy speciális algoritmus eredményeképpen adódik az első 12 számjegyből.

Az első tizenkét számjegy az alábbi jellemzőket határozza meg:

  • 1-3. számjegyek: a gyártási ország (Magyarország esetében 599)
  • 4-12. számjegyek: egyrészről a gyártót jelölik, másrészről azt, hogy az adott termék hányadik a gyártó által készített listán

A gyártó számát aszerint határozzák meg, hogy hány darab termék (10000 vagy 100000) kódolási lehetőségét vásárolja meg. Természetesen, mivel csupán egy sorszám utal (az ország és a gyártó száma után) a termékre, külön kell a leolvasó (kereskedő) rendszerében hozzárendelni a termék valódi nevét. Így a fenti módon képzett számhoz a gyártón múlik, hogy mit is rendel hozzá, például csak a termék nevét, vagy eltérő kódokkal jelöli a méreteket is, esetleg ezen belül a színeket is külön kezeli.

Szerkezete[szerkesztés | forrásszöveg szerkesztése]

A vonalkód sötét vonalakból és fehér közökből áll. A vonalkódon belül három hosszabb vonalpár két részt határol el. A részeken belül 6-6 számjegy kódja látható. Egy-egy számjegyet két vonal kódol. A 13. számjegy - ami egyébként a kódolt számok közül az első - a kódvonalak szélességeinek paritásából állapítható meg.

A vonalak és a közök szélessége 1, 2, 3 vagy 4 egység. Minden számjegy kód szélessége 7 egység. A határoló vonalpárok vonalainak szélessége 1 egység. A két szélső határoló a közzel együtt 3 egységnyi, a középső pedig a 3 közzel együtt 5 egységnyi.

A vonalkód első része a 2.-7., a második része a 8-13. számjegyeket kódolja. Az 1. számjegy értéke abból olvasható le, hogy az első rész számjegyeinek kódolásában hogyan váltakozik az A illetve a B kódolási mód. A második rész minden számjegyének kódolási módja a C szerinti.

A három kódolási mód:

Számjegy A B C
0 0001101 0100111 1110010
1 0011001 0110011 1100110
2 0010011 0011011 1101100
3 0111101 0100001 1000010
4 0100011 0011101 1011100
5 0110001 0111001 1001110
6 0101111 0000101 1010000
7 0111011 0010001 1000100
8 0110111 0001001 1001000
9 0001011 0010111 1110100

A táblázatban 1 a sötét és 0 a világosabb egységet jelöli. Azt látjuk szélesebb vonalnak, ahol több sötét egység van egymás mellett.

Az A és a B kódolási módot az különbözteti meg egymástól, hogy míg az A kód szerint a számjegyek kódjában a sötétebb vonalak össz-szélessége páratlan (3 vagy 5 egység), addig a B kód szerint ugyanez páros (2 vagy 4 egység). A C kódolási mód szerint minden számjegy kódjában páros a sötét vonalak össz-szélessége.

Az A és a B kódolás váltakozása az első részben aszerint, hogy mennyi az 1. számjegy:

1. számjegy A 2.-7. számjegyek kódolása
0 AAAAAA
1 AABABB
2 AABBAB
3 AABBBA
4 ABAABB
5 ABBAAB
6 ABBBAA
7 ABABAB
8 ABABBA
9 ABBABA

Az első részben tehát mindig három A és három B kódolásu számjegy van, kivéve ha az 1. számjegy nulla, amikor mind a hat kódolása A.

Tehát míg az első részben mindig van olyan számjegy amiben a a sötét vonalak össz-szélessége páratlan egységnyi, addig a második részben minden számjegy kódjában páros a sötét vonalak össz-szélessége. A vonalkódok ez utóbbi tulajdonsága alapján tehát megállapítható, hogy a vonalkódot 'elölről' vagy 'hátulról' olvastuk le. Erre azért van szükség, hogy mindegy legyen, hogy a leolvasáskor a vonalkódot 'melyik oldalról' - alulról vagy felülről - nézzük.

Összefoglalva. A vonalkód mindig 95 egység széles és 30 sötét vonalból áll. A vonalakat szomszédos páronként kell értelmezni. Az 1., 8. és 15. vonalpár határoló vonal. A 2.-7. és 9.-14. párból az az első amelyikben van (3 vagy 6) olyan pár amire a két vonal össz-szélessége páratlan. Az első számjegy értéke abból adódik, hogy ebben az első részben hányadik jegyek vannak páratlan össz-szélességü vonalakkal kódolva. Az első rész vonalpárjait az A+B táblával, a második rész vonalpárjait a C tábla szerint kell dekódolni.

Példa[szerkesztés | forrásszöveg szerkesztése]

Ellenőrző szám kiszámítása[szerkesztés | forrásszöveg szerkesztése]

A vonalkód minden páratlan helyen álló (első, harmadik…) számjegyét eggyel, a páros helyeken állókat hárommal kell megszorozni, majd a kapott szorzatokat összeadni. A 13. számjegy az a szám, melyet ehhez az összeghez kell adni, hogy a következő, 10-zel osztható számot kapjuk.

Ez egy példán bemutatva egy EAN-13 rendszerű vonalkódon a következő: 629104150021?

6 2 9 1 0 4 1 5 0 0 2 1
×
1 3 1 3 1 3 1 3 1 3 1 3
=
 6  6  9  3  0 12  1 15  0  0  2  3

Ezek összege: 57 Ehhez 3-at kell adni, hogy megkapjuk a következő, tízzel osztható számot, a 60-at, tehát a vonalkód helyesen: 6291041500213.

6
291041
500213


Egyéb kódolások[szerkesztés | forrásszöveg szerkesztése]

Sokféle kódolás (Code39, Code128, stb) létezik, és ezeknek még annál is több alfajtája van. A speciálisabb kódokat például raktári rendszerekben, szállítmányozáskor belső azonosításra szokták használni. Van olyan kódolás, amelyik csak numerikus karakterekből, van olyan amelyik a teljes ASCII kódtábla elemeiből építkezhet.

A Code128 11 egység széles tömbökre és egy két egység széles záróvonalra bontható. Az első tömb azt adja meg, hogy a további tömböket, mint kódokat, a Code128 három lehetséges kódtáblája közül melyikkel kell értelmezni. Például a "C" kódtábla szerint a tömbök a másodiktól az utolsó kettőt kivéve a megadott számjegyeket kódolják, kettesével. (Vagyis a második tömb az első két számjegy együttes kódja, a harmadik tömb a 3. és 4. számjegy együttes kódja, a 4. tömb az 5. és a 6. számjegyé stb.) Az utolsó előtti tömb egy ellenőrző szám kódja. Az ellenőrző szám olyan, hogy ha a kódolt számpárokat a sorszámukkal szorozva összeadjuk, s az így kapott összeghez hozzáadjuk az első és a kontroll tömb számértékét, akkor egy 103-mal osztható számot kapunk. Az utolsó tömb az úgynevezett 'stop' kód, a plusz 2 egység széles záró vonallal együtt.

Tehát a C128 vonalkód struktúrája, ha számsort kódol akkor a következő:

  • 1. tömb: egy 'startC' kód (11 egység széles)
  • 2., 3., … tömbök: a páronként vett számjegyek kódjai (mindegyik 11 egység széles)
  • az utolsó előtti tömb: az ellenőrzőszám kódja (11 egység széles)
  • az utolsó tömb a 2 egység széles záró vonallal együtt: a 'stop' kód (13 egység széles)

A C128 mindhárom kódtáblája olyan felépítésű, hogy egy-egy tömbben 3 sötét és 3 világos rész látható. Minden tömb sötét egységgel kezdődik és világossal ér véget. A "B" kódtáblával betűk is kódolhatóak. Az "A" kódtábla kisbetűknek megfelelő részével speciális karakterek is kódolhatóak.

Lásd még[szerkesztés | forrásszöveg szerkesztése]

Irodalom[szerkesztés | forrásszöveg szerkesztése]

  • Automating Management Information Systems: Barcode Engineering and Implementation – Harry E. Burke, Thomson Learning, ISBN 0-442-20712-3
  • Automating Management Information Systems: Principles of Barcode Applications – Harry E. Burke, Thomson Learning, ISBN 0-442-20667-4
  • The Bar Code Book – Roger C. Palmer, Helmers Publishing, ISBN 0-911261-09-5, 386 pages
  • The Bar Code Manual – Eugene F. Brighan, Thompson Learning, ISBN 0-03-016173-8
  • Handbook of Bar Coding Systems – Harry E. Burke, Van Nostrand Reinhold Company, ISBN 978-0-442-21430-2, 219 pages
  • Information Technology for Retail:Automatic Identification & Data Capture Systems - Girdhar Joshi, Oxford University Press, ISBN 0-19-569796-0, 416 pages
  • Lines of Communication – Craig K. Harmon, Helmers Publishing, ISBN 0-911261-07-9, 425 pages
  • Punched Cards to Bar Codes – Benjamin Nelson, Helmers Publishing, ISBN 0-911261-12-5, 434 pages
  • Revolution at the Checkout Counter: The Explosion of the Bar Code – Stephen A. Brown, Harvard Univ Press, ISBN 0-674-76720-9
  • Reading Between The Lines – Craig K. Harmon and Russ Adams, Helmers Publishing, ISBN 0-911261-00-1, 297 pages
  • The Black and White Solution: Bar Code and the IBM PC – Russ Adams and Joyce Lane, Helmers Publishing, ISBN 0-911261-01-X, 169 pages
  • Sourcebook of Automatic Identification and Data Collection – Russ Adams, Van Nostrand Reinhold, ISBN 0-442-31850-2, 298 pages

Jegyzetek[szerkesztés | forrásszöveg szerkesztése]

Külső hivatkozások[szerkesztés | forrásszöveg szerkesztése]

Commons
A Wikimédia Commons tartalmaz Vonalkód témájú médiaállományokat.