Codabar ANSI

Bei dem Codabar unterscheidet man zwischen der Codabar ANSI und der Codabar Monarch (auch Codabar 18) Version. Codabar Monarch ist eine Version die 18 verschiedene Strichbreiten benutzt, die früher mit einem schreibmaschinenähnlichen Drucker erstellt worden sind. Die Codabar ANSI Version mit nur zwei Strichbreiten ist die modernere Weiterentwicklung.

Die Normen EN 798 wie auch ANSI/AIM BC3 sind in der Zwischenzeit zurückgezogen worden.  Es gibt noch die Spezifikation des Industrieverbandes AIM:  

Codabar AIM Spezifikation  

Üblicherweise wird empfohlen diesen Code nicht mehr zu benutzen, da u.a. mit dem Code 128 eine wesentlich leistungsfähigerer Strichcodetyp zur Verfügung steht. Für die Version Codabar Monarch hat es nie eine Norm gegeben. Dem Autor dieser Seite liegt eine Version der Spezifikation des Codabar Monarch aus dem Jahre 1981 der Firma Pitney Bowes vor.  
 

Der Codabar kann nur die Ziffern 0 bis 9  und die Zeichen "$",  "%",  "+",  "-", "." und "/" kodieren. Ein Zeichen wird immer in 4 Strichen und 3 Lücken kodiert. Zwischen  den Zeichen ist immer eine Lücke (Trennlücke, Intercharacter Gap)  enthalten damit der letzte Strich eines Zeichens nicht direkt, ohne Lücke, auf den ersten Strich des folgenden Zeichens anschließt. Bei anderen Codearten ist das geschickter gelöst. Ein Zeichen endet z.B. mit einer Lücke  und beginnt mit einem Strich. Eine Trennlücke wie dies beim Codabar (wie auch Code 39) zwingend ist wird dann nicht mehr benötigt.  
Als Besonderheit weist der CODABAR die vier Buchstaben A, B, C und D als Start und Stoppzeichen auf. Um in der Anwendung eine bestimmte Steuerung zu erzeugen kann man z.B. A/D, A/A, D/C und weiteres als Start/Stoppzeichenpärchen benutzen.

 

Zeichensatztabelle Codabar
ZeichenBSBSBSBBemerkung
00000011 
10000110 
20001001 
31100000 
40010010 
51000010 
60100001 
70100100 
80110000 
91001000 
-0001100 
$0011000 
:1000101 
/1010001 
.1010100 
+0010101 
A0011010Start/Stopp
B0101001Start/Stopp
C0001011Start/Stopp
D0001110Start/Stopp


Eine 0 in der Tabelle steht für ein schmales Element und eine 1 für ein breites Element. Die Breite der breiten Elemente legt die Ratio fest. B steht für einen Strich und S für eine Lücke.  

Anhand der folgenden Codebespiele wird der kompette Zeichensatz des Codabar gezeigt. Das obenliegende Raster aus blauen und roten Strichen zeigt das Modulraster an. Die rotbraunen, waagerechten Rechtecke markieren die Start- und Stoppzeichen und die Codewörter. Zwischen  jedem Codewort ist die Trennlücke zu erkennen, die sich als weiße Lücke bis zum Modulraster bewegt.  
 

codabar  
 

Der folgende Code ist ein Beispiel das den vollständigen Zeichensatz codiert hat. Es wird das Startzeichen A und das Stoppzeichen B verwendet.  


codabar1  
 

Das folgende Bild entspricht dem vorhergehenden Bild. Der einzige Unterschied ist dass als Startzeichen C und als Stoppzeichen D benutzt wird.  


codabar2  
 

Die Start- bzw. Stoppzeichen A, B, C und D dürfen innerhalb des Codes nicht verwendet werden da sonst der Dekoder den Codeanfang und das Codeende nicht ausreichend zuverlässig erkennen kann.  
 

Der Codabar gehört zu Kategorie der Codearten mit 2 Strichbreiten. Der breite Strich darf zwischen 2 bis 3 mal breiter sein als der dünne Strich. Das Verhältnis zwischen dünnen und breiten Strich wird als Ratio bezeichnet.  
Links und rechts des Strichcodes muss ein heller Bereich freibleiben. Man bezeichnet diesen hellen Bereich als Ruhezone oder Hellfeld. Die Mindestbreite des Hellfeldes ist eine relative Angabe in Bezug auf die Idealbreite eines dünnen Striches (Modulbreite). Mindestens 10 x der Breite des schmalen Striches muss links wie auch rechts des Codes freibleiben.  
Der Code kann eine Prüfziffer beinhalten. Die alte  EN Norm EN 798 überlässt die Definition dem Anwender und gibt die ISO 7064 als allgemeine Berechnungsvoreschrift vor. Die alte ANSI/AIM BC3 beschreibt eines Prüfziffer die im Modulo 16 Verfahren berechnet wird.  
 

Der Codabar benötigt etwas weniger Platz als der Code 39 weil nur 4 Striche und 3 Lücken (Code 39: 5 Striche, 4 Lücken) benutzt werden. Ein erweitertes Kodierschema wie "Full ASCII" beim Code 39 ist beim Codabar nicht vorgesehen.