/home/algorithms/


Barcodes insb. EAN 13

- Einleitung
- Grundlagen (Europäische Artikelnummer, EAN 13)
- Die Codierung (EAN 8/13, UPC)
- Die Prüfziffer der europäischen Artikelnummer
- Historisches
- Übersicht weiterer Barcodes
- Links

Einleitung

Die Internationale Artikelnummer (EAN 13) (Abb. 1)
Beispielcode

Barcodes, Balkencodes oder Strichcodes werden bei der Produktion von Waren besonders bei sog. Markenartikel auf die Verpackung gedruckt. Diese Artikelnummer dienen zum automatischen Erkennen der Waren und des Preises durch Scanner, die die codierten Informationen auslesen. Die Informationen sind meist Herstellungsland, Hersteller, Produktart und Preis, es können jedoch beliebige andere Informationen codiert werden. Barcodes werden bereits bei mehr als 90% aller Waren genutzt. EAN steht für "Europäische Artikelnummer".

Heutzutage können mittlerweile die meisten Scanner auch Ziffern (0..9) erkennen, nur sind Lesefehler wahrscheinlicher als beim scannen von Balken. Durch dieser Art der Codierung wird eine sehr gute Ablesesicherheit erzielt, auch bei beschädigten oder verdreckten Artikeln.

Grundlagen

Abb. 2 (Informationsinhalt eines Balkencodes)
Informationsinhalt

- Barcodes bestehen aus zwei verschiedenen Stricharten. Zum einen die Balken, in denen
  die Zahlen kodiert sind und zum anderen einfache Trennbalken, die zur Orientierung
  dienen.

- Jeder Balkencode codiert zwölf (dezimal) Ziffern. In Abb. 1 sind dies folgende Ziffern:
  0 1 2 3 4 5 6 7 8 9 0 1

  Die Balken stellen eine machinenleserliche Codierung dieser 2x6 Ziffern dar und sind
  daher eine andere Schreibweise für die dezimale Codierung von Zahlen.

- Die drei längeren schmalen Doppelbalken stellen keine der dezimalen Ziffern dar.
- Die ganz links stehende Ziffer 4 (außerhalb der Balken) wird nicht direkt durch Balken,
  sondern durch einen dahinterliegenden sog. Metacode dargestellt. Diese Ziffer ist die
  dreizehnte Ziffer.

Die Codierung

- Eine Ziffer wird durch zwei schwarze Balken und zwei weiße Balken dargestellt, ein sog.
  Modul. Ein Modul entpricht also einer Ziffer.

- Jedes Modul teilt sich wiederum in 7 gleich große Abschnitte ein. Dies ist nicht einfach
  zu erkennen. Abb. 3 zeigt drei einzelne Module mit der 7er-Teilung. Diese 1/7 Abschnitte
  sind in der Abbildung durch dünne Linien gekennzeichnet. So muss man sich breite weiße oder
  schwarze Balken immer aus solchen gleichlangen Elementareinheiten aufgebaut denken.

- Eine Dezimalziffer kann durch drei verschiedene Module codiert werden. Diese drei Module
  sind Zeichensätze, die in A, B und C-Zeichensatz unterteilt werden (siehe Abb. 3).

  Zeichensatz B und C sind zueinander spiegelsymmetrisch. A ist invers zu C. Auf einen
  denkbaren Zeichensatz D, der spiegelbildlich zu A und invers zu B ist wurde verzichtet.

  Daraus ergibt sich nun eine maximale Balkenbreite von 4/7, da ein weiterer Balken und zwei
  Zwischenräume mit minimal je 1/7 Breite ein Modul ergeben.

- Die Zeichensätze A, B und C werden gleichzeitig innerhalb eines Barcodes verwendet.
  Allerdings werden für die ersten 6 Ziffern die Zeichensätze A und B und für die restlichen 6
  Ziffern ausschließlich der Zeichensatz C verwendet. Damit ist eine Unterscheidung der ersten
  und der zweiten Codehälfte gegeben und die Leserichtung ist damit eindeutig.

  Die Abwechslung von Zeichensatz A und B bildet den Metacode, mit dem die 13. vorangestellte
  Ziffer codiert wird. In unserem Beispiel ist es die Zeichensatzfolge A/B/A/A/B/B, der die
  Ziffer 4 codiert. Diese folge steht für Deutschland.

Abb. 4 soll nochmals den Beispielcode verdeutlichen, diemal aber mit allen 12 Modulen und der sonst nicht offensichtlichen 1/7tel-Teilung eines jeden einzelnen Moduls.

Abb. 4a zeigt den gleichen Balkencode zusammen mit einer Vergrößerung des 3. Moduls und der Zeichensatzfolge für Deutschland.

Eine vollständige Darstellung aller zehn Ziffern mit den dazugehörigen Zeichensätzen A, B, C: Codierung

Die Prüfziffer der europäischen Artikelnummer

EAN 13: ab cdefg hijkl P

ab:     Herstellungsland, Länderkennzeichen (z.B. 40, 41, 42, 43, 44 für Deutschland)
cdefg: 	Betriebsnummer, Hersteller
hijkl:	Artikelnummer
P:      Prüfziffer

Für die Prüfziffer muss folgende Gleichung gelten:
a + 3b + c + 3d + e + 3f + g + 3h + i + 3j + k + 3l + P º 0 (modulo 10)

Historisches

Die internationale Artikelnummer ist hervorgegangen aus dem EAN-Code (European Article Number). Ihre Entwicklung geht in erster Linie auf eine europäische Expertengruppe zurück, mit starker deutsch/französischer Beteiligung. Der EAN-Code baut auf der Technologie des UPC auf (Universal Product Code, Artikelnummerierung in den USA und Canada, Abb. 5). Die Planung zum UPC begann im April 1971, mit der Maßgabe, bis Freitag den 30. März 1973 ab- geschlossen zu sein. Der UPC wurde am Dienstag den 3. April 1973 offiziell eingeführt. Der EAN-Code, dessen Entwicklung so in die 70er Jahre zurückreicht, avancierte dann im folgenden zur internationalen Artikelnummer. Das heißt, dass diese Artikelnummer weltweite Gültigkeit hat. Es existieren der EAN 13, der hier beschriebene, sowie eine kleinere Inlandversion, der EAN 8 (Abb. 6).

In Deutschland besteht zur Zeit speziell für die Auszeichnung pharmazeutischer Produkte noch eine weitere Lösung, die nur in Deutschland Gültigkeit hat. Dies ist die PZN-Nummer, die Pharma- zeutische-Zentralnummer. Die PZN-Nummer wird in der näheren Zukunft auch gegen die internationale Artikelnummer ausgetauscht werden.

Beide hier gezeigten Formen (Abb. 5/6) benutzen die gleiche Codierung und die gleichen Zeichen- sätze. Ihre Verbreitung in Europa ist jedoch gering gegenüber der internationalen Artikelnummer (EAN 13). Die deutsche PZN-Nummer (ohne Abb.) verwendet keine ähnlichen Zeichen. Sie soll aber nicht lageunabhängig lesbar sein im Gegensatz zur internationalen Artikelnummer und ihren Sonderformen.

Übersicht weiterer Barcodes

1968 der einfache Code 25 1972 der Code 25 Interleaved und Codabar 1973 der UPC (Universal Product Code) 1974 der Code 39, der erste Barcode zur Ziffern-, Buchstaben- und Sonderzeichendarstellung 1976 der EAN Code (European Article Numbering) 198? Code 128 und EAN 128, die den vollen ASCII-Zeichensatz darstellen. 1994 SH-Barcode 1.0 revolutioniert die Einbindung von Barcodes in die tägliche Arbeit mit dem PC. 1997 ActiveBarcode als ActiveX-Steuerelement (ehemals OCX/OLE-Control) 1999 ActiveBarcode 4.x

EAN8 / EAN13 Numerischer Vierbereiten-Code
- Darstellbare Zeichen: 0 - 9.
- Darstellung: Jedes Zeichen hat die 11-fache Modulbreite.
- Informationsdichte: hoch
- Besonderheiten: Es stehen 10 verschiedene Größen zur Verfügung (definiert).
- Die offizielle EAN (Europäische ArtikelNummer) wird von der CCG (Centrale für Coorganisation)
  in Köln vergeben und verwaltet.

Codabar Numerischer Zweibreiten-Code mit 6 zusätzlichen Sonderzeichen
- Darstellbare Zeichen: 0 - 9,+, -, :, /, ., $.
- Darstellung: Jedes Zeichen wird mit 7 Elementen (4 Striche, 3 Lücken) dargestellt, die Lücke
  zwischen den einzelnen Zeichen enthält keine Information.
- Informationsdichte: niedrig. (6mm - 7mm)
- Druckverhältnis: 1 : 2,25 bis 1 : 3.
- Besonderheiten: Es stehen vier verschiedene Start-/Stopzeichen zur Verfügung (A, B, C, D).

Code 2 of 5 Standard Numerischer Zweibreiten-Code
- Darstellbare Zeichen: 0 - 9.
- Darstellung: Jedes Zeichen wird mit 5 Strichen (2 breiten und 3 schmalen) dargestellt. Die
  Lücken tragen keine Informationen.
- Informationsdichte: niedrig. (7mm)
- Druckverhältnis: 1 : 2 bis 1 : 3.
- Besonderheiten: "Anspruchslos", daher sind große Drucktoleranzen möglich.

Code 2 of 5 interleaved Numerischer Zweibreiten-Code
- Darstellbare Zeichen: 0 - 9.
- Darstellung: Jedes Zeichen wird mit 5 Elementen (2 breiten und 3 schmalen) dargestellt: Das
  erste Zeichen aus Strichen, das zweite nur aus Lücken, das dritte wieder aus Strichen usw.
  Das erste Element des zweiten Zeichens (Lücke) steht unmittelbar hinter dem ersten Strich des
  ersten Zeichens, die Zeichen sind 'ineinander geschoben'. So ist nur eine gerade Anzahl
  Zeichen darstellbar.
- Informationsdichte: hoch. (9mm / 2 = 4,5mm)
- Druckverhältnis: 1 : 2 bis 1 : 3.
- Besonderheiten: Start- und Stop-Zeichen bestehen aus nur zwei Elementen, daher Gefahr von
  Fehl- bzw. Teillesungen. Vorbeugung: Prüfziffer und/oder feste Codelänge beim
  Scannen sowie mehrfache Codeüberprüfungen. Sonst sehr unanfällig und sicher.

Code 39 Alphanumerischer Zweibreiten-Code
- Darstellbare Zeichen: 0 - 9, A - Z, $, -, +, /, ., %, , .
- Darstellung: Jedes Zeichen besteht aus 9 Elementen: 5 Striche und 4 Lücken, 3 breit
  und 6 schmal.
- Informationsdichte: niedrig. (8 mm)
- Druckverhältnis: 1 : 2 bis 1 : 3.
- Besonderheiten: Alphanumerisch, es können 26 (Groß-)Buchstaben dargestellt werden. Über
  Zeichenkombinationen können weitere Zeichen dargestellt werden.

Code 128 Alphanumerischer Vierbreiten-Code
- Darstellbare Zeichen: Voller ASCII-Zeichensatz (über 3 Zeichensatztabellen, die mit
  speziellen Zeichen ausgewählt werden können).
- Darstellung: Jedes Zeichen besteht aus 3 Strichen und 3 Lücken in vier verschiedenen
  Breiten (1- bis 4-fache Modulbreite) mit einer Gesamtbreite von 11 Modulen.
- Informationsdichte: relativ hoch (5,5 mm)
- Besonderheiten: Kann den gesamten ASCII-Zeichensatz nur mittels dreier Zeichentabellen
  darstellen.
  Sonderzeichen und Startzeichen steuern die Auswahl der Tabellen. Eine Mischung innerhalb
  eines Codes ist möglich. So sind auch Umlaute darstellbar.
- Benötigt stets eine Prüfziffer.

EAN 128 Code 128 mit spezieller Startzeichenkombination.

Links

- Strichcode-Arten
- Die Welt der Barcodes [PDF]
- Technische Infos - Strichcode-Arten
- Barcodes im Schweizer Buchandel