Binärcode sind Verschlüsselungen, in denen es
nur zwei Symbolzustände gibt, z.B. schwarz oder weiß, hell oder dunkel,
elektrisch leitend oder nichtleitend. Dargestellt wird dies symbolisch
als "1" oder "0". Die "1" bzw. "0" heißen Binärzeichen oder Bits. Durch
Aneinanderreihen mehrer solcher Bits kann man eine beliebige
Information verschlüsselt darstellen. Es gibt unterschiedliche
Möglichkeiten Werte zu codieren.
Dual Code
Der Dualcode bildet einen Zahlenwert aus Potenzen zur Basis 2. So stellt sich beispielsweise die Zahl 10 folgendermaßen dar:
Die entsprechende Dualzahl lautet also 1010.
Bei
dem Dual Code handelt es sich um einen sogenannten mehrschrittigen
Codes, d.h. beim Übergang von einer Position auf die nächste können
sich mehrere Bits gleichzeitig ändern. Bei der Abtastung eines solchen
Codes auf einer Codescheibe käme es zu Problemen, da aufgrund von
Fertigungstoleranzen die Änderung der Informationen auf den einzelnen
Spuren nie exakt gleichzeitig erfolgt. Dies würde dazu führen, daß beim
Wechsel kurzzeitig falsche Positionswerte ausgegeben werden. Z.B.
bestünde beim Übergang von Position 7 nach Position 8 durch eventuelle
Ungenauigkeiten die Möglichkeit, daß kurzfristig alle Bits durch
Dunkelfelder belegt wären und die fehlerhafte Position 15 ausgegeben
würde. Abhilfe schafft hier die Verwendung sogenannter einschrittiger
Codes, z.B. dem Gray-Code.
Gray-Code
Der
Gray-Code ist ein sogenannter einschrittiger Code, d.h. es ändert sich
beim Übergang von einer Position zur nächsten nur ein einziges Bit.
Durch ungenaue Abtastung wird demnach lediglich der Übergang von einer
Position zur nächsten etwas verschoben, es kann jedoch nicht zur
Ausgabe von völlig falschen Positionswerten kommen.
Ein
weiterer Vorteil des Gray-Codes ist die einfache Reflektierbarkeit,
durch Invertierung des höchstwertigen Bits kann so die Zählrichtung in
einfacher Weise geändert und an die Drehrichtung angepasst werden. Eine
Drehrichtungsumkehr kann somit problemlos durch Beschaltung des sog.
Complement-Eingangs erfolgen ? Werte clockwise steigend oder fallend.
Da
die einzelnen Bits des Graycode keine Wertigkeit besitzen, muß dieser
vor der Weiterverarbeitung zunächst in einen Binärcode umgewandelt, ein
Wert zugeordnet werden. Dies geschieht durch einen Codewandler, der in
diesem Falle aus einer Verkettung von XOR-Verknüpfungen besteht.
Gray-Excess-Code
Der
"gewöhnliche" einschrittige Graycode gilt für Auflösungen, die sich als
Potenz zur Basis 2 darstellen lassen. Sollen andere Auflösungen
realisiert werden, wird ein mittiger Ausschnitt aus dem Graycode
entnommen. Damit bleibt die Einschrittigkeit des Codes erhalten.
Allerdings beginnt der Darstellungsbereich nicht mehr bei 0, sondern er
verschiebt sich um einen bestimmten Betrag.
Bei
der Auswertung zieht man vom generierten Binärwert die Hälfte der
Differenz zwischen ursprünglicher und reduzierter Auflösung ab.
Auflösungen
wie z.B. 360° für Winkelbestimmungen werden häufig mit dieser Methode
der Codierung realisiert. Ein Gray-Code 9 Bit = 512 Schritte,
beidseitig gekappt um 76 Schritte = 360 Schritte, wird dazu verwendet.