DE2645460C2 - Verfahren und Vorrichtung zum Auswerten von selbsttaktierend codierten Signalen - Google Patents
Verfahren und Vorrichtung zum Auswerten von selbsttaktierend codierten SignalenInfo
- Publication number
- DE2645460C2 DE2645460C2 DE2645460A DE2645460A DE2645460C2 DE 2645460 C2 DE2645460 C2 DE 2645460C2 DE 2645460 A DE2645460 A DE 2645460A DE 2645460 A DE2645460 A DE 2645460A DE 2645460 C2 DE2645460 C2 DE 2645460C2
- Authority
- DE
- Germany
- Prior art keywords
- interval
- data
- pulse
- code
- pulses
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06K—GRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
- G06K7/00—Methods or arrangements for sensing record carriers, e.g. for reading patterns
- G06K7/01—Details
- G06K7/016—Synchronisation of sensing process
- G06K7/0166—Synchronisation of sensing process by means of clock-signals derived from the code marks, e.g. self-clocking code
Landscapes
- Engineering & Computer Science (AREA)
- Artificial Intelligence (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Signal Processing For Digital Recording And Reproducing (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
Description
T | -s | (2- | 2 + 0-Dv | + ■ | y |
nOj.r) | 2-y+jy | 4 | |||
worin ist: | -v+jv) · | ||||
die Zeit zwischen dem letzten festgestellten Übergang und dem Zeitpunkt, zu dem ein
weiterer Übergang auftreten kann;
5 die minimal zulässige Zeit zwischen zwei Übergängen;
γ die minimal erforderliche Zeitverschiebung, um einen Übergang in das nächstfolgende
Intervall fallen zu lassen;
/ eine ganze Zahl im Bereich 0</<m, und m
die Zahl der maximal für ein Zeichen des benützten Codes vorkommenden Intervalle;
j die Zahl im Bereich 0<j<m, die das die
Referenzzeit (Tr) umfassende Intervall bezeichnet.
5. Vorrichtung nach Anspruch 1 zum Auswerten von selbsttaktierend codierten Signalen, die auf
Leitungen (x, y, F i g. 10) zugeführt werden, gekennzeichnet durch:
— einen Takterzeuger (1) fester Frequenz, erste Zähler (3,4,5), die bei verschiedenen Vielfachen
der Taktfrequenz zählen,
— Wählschaltungen (11,12, 13), die auf ein Signal
(x) hin den Inhalt eines ersten Zählers auswählen,
— ein Register (16), das den Zählerinhalt speichert,
— zweite Zähler (18) in Verbindung mit dem Register zum wiederholten Auszählen des
ersten Zählerinhaltes,
— ein Schieberegister (23), das abzählt, wie oft der zweite Zähler den Inhalt des ersten Zählers
auszählt,
— UND-Schaltungen (30, 31, 32), die von dem Schieberegister beeinflußt, ein Ausgangssignal
liefern (2, 3, 4), wenn ein codiertes Signal in einem der zwischen den gezählten Vielfachen
der Taktfrequenz liegenden Intervalle auftritt,
sowie
— Steuermittel (25, 27, 29), die, von dem Schieberegister beeinflußt, die Auswahl des
Inhaltes eines der ersten Zähler veranlassen.
6. Vorrichtung nach Anspruch 5, dadurch gekennzeichnet, daß die verschiedenen Vielfachen der
Taktfrequenz durch die Gleichung bestimmt sind:
2S-
AW , . AW
—77-+y—TT-
wobei ist:
fo die feste Frequenz des Takterzeugers;
Δ W die minimale Differenz zwischen unterschiedlichen Intervallen des verwendeten Codes;
5 die minimale Intervallänge;
j eine ganze Zahl im Bereich 0 </<
m, und
m die maximale Zahl von Intervallen, die im gegebenen Code für ein Zeichen vorkommen.
Die Erfindung betrifft ein Verfahren zum Auswerten von selbsttaktierend codierten Signalen nach dem
Oberbegriff des Anspruchs 1 sowie eine Vorrichtung zur Durchführung dieses Verfahrens.
Zahlreiche Verfahren und Geräte zum Auswerten selbsttaktierender Streifen- oder Übergangssignalcodes
wurden schon entwickelt, die speziell auf den Code zugeschnitten waren. Viele Codes und die dafür
geeigneten Decodierverfahren haben schon spezielle Namen. Ein allgemeines Verfahren, das mit allen
bekannten selbsttaktierenden Codes arbeitet, und wobei es keine Rolle spielt, ob es sich um optische,
magnetische oder elektrische Signale handelt, und das außerdem jeden Code decodieren, d. h. auswerten kann,
wurde bisher noch nicht entwickelt
Bei vielen herkömmlichen Verfahren werden bestimmte Signale zum Ableiten von Taktsignalen, der
Synchronisationsinformation und der Daten abgelesen.
Eine Lösung für einen speziellen Streifencode mißt den Abstand von einer Vorderkante zur nächsten oder von
einer Hinterkante zur nächsten bei den Streifen im Code und definiert dann den Dateninhalt des Codes
entsprechend der relativen gemessenen Größen, verglichen mit einer Referenzstrecke oder einem Referenzmaß,
das in jedem Codezeichen enthalten ist. Ein solches Verfahren ist beispielsweise in der US-Patentschrift Nr.
37 23 710 beschrieben. Dafür wird jedoch eine Referenzstrecke oder ein Abstand gebraucht, der in jedem
Streifen von Codebits oder in jedes Zeichen eingeschlossen ist, und alle Abstände im Codestreifen oder in
jedem Zeichen müssen gemessen und verglichen werden, um den Referenzabstand herauszufinden. Die
übrigen Messungen werden mit diesem Referenzabstand verglichen, um die Abstände von einer Vorderkante
zur nächsten und von einer Hinterkante zur nächsten anhand der Referenz in Kategorien einteilen
und so den Code decodieren zu können.
Dieses an sich leistungsfähige Verfahren hat jedoch
Dieses an sich leistungsfähige Verfahren hat jedoch
«ο auch einige unerwünschte Eigenschaften. Zuerst einmal
muß die ganze Folge von Codeübergängen ungeachtet ihrer Länge abgetastet und gemessen werden, dann muß
der Referenzabstand aus der Meßgruppe isoliert
werden; dann müssen die übrigen Messungen anhand der Referenz in Kategorien unterteilt werden und
schließlich können die Daten entsprechend den festgestellten relativen Werten decodiert werden. Das
Verfahren ist jedoch anfällig gegen Verzer.-ungen durch Beschleunigung oder andere Frequenzänderungen im
Signaleingang, so daß insbesondere bei sehr langen Streifenketten von Datenbits die relativen Größen der
Übergänge oder Abstände so weit verzerrt werden können, daß Verwechselungen im Vergleich mit .1er
Referenz oder sogar bei der Identität des Referenzabstandes auftreten können. Zweitens müssen zuerst
einmal alle Abstände gemessen und später verarbeitet werden. Wenn ein Übergang fehlt, wird sein Fehlen erst
bei der Verarbeitung erkannt Es wäre vorteilhaft, Fehler bereits auf der Bitstufe oder der Impulsstufe
erkennen zu können, sobald sie auftreten, d.h., wenn
eine Abstandsmessung oder ein Kantenübergang fehlt, möchte man das sofort wissen. Dieses Ziel wurde jedoch
von dem oben erwähnten Patent nicht erreicht
Zur Isolierung der Datenimpulse von den Datenzeilen und/oder von den Taktimpulsabständen in verschiedenen
Typen von Datenströmen wie F2F-Code und Phasenverschiebungscode wurden verschiedene Verfahren
entwickelt Dazu dient im allgemeinen ein Suchtor, das zu einem entsprechenden Zeitpunkt den
Impuls feststellt, der den Dateninhalt der Bitzelle anzeigt Einige dieser Verfahren sind sehr leistungsfähig,
jedoch auf einen bestimmten zu decodierenden Code begrenzt Beispiele hierfür sind beschrieben in den
US-Patentschriften Nr. 37 23 710, 37 08 748 und 38 86 521. Alle diese Verfahren können jedoch nur auf
diejenigen Codes angewandt werden, für die sie speziell entwickelt wurden.
Einige Codeauswertverfahren benutzen bisher ein Referenzmaß, ein Zeichen oder einen Satz von
Übergängen vor jeder separaten Datenbitreihe. Beispiele hierfür finden sich in den US-Patentschriften Nr.
37 11853 oder 37 50108. Wenn man jedoch ein Referenzzeichen vor einen langen Strom von Datenbitübergängen
setzt, so ist die Wirkung nicht so gut, wenn die übrigen Bits Verzerrungsfehlern ausgesetzt sind, die
durch ungleichmäßige Abtastgeschwindigkeiten oder Schwankungen in der Übertragungsfrequenz entstehen.
Die Verzerrungsfehler durch Beschleunigung können bei der Handabtastung beispielsweise so groß werden,
daß die Breite oder der Abstand zwischen aufeinanderfolgenden Bits mit Erhöhung bzw. Erniedrigung der
Abtastgeschwindigkeit immer kleiner oder auch immer größer wird bis völlig unklar ist, welcher Abstand in
denjenigen Codes, die den Referenzabstand in sich tragen, der eigentliche Referenzabstand ist, oder es
können andere Schwierigkeiten bei der Trennung der Daten von den Taktimpulsen auftreten.
In anderen Verfahren wurden bestimmte Vorhersa- 3>
gemethoden für den F2F-Code festgelegt, in denen die verschiedenen Datenbits als Referenzbreite benutzt
werden können. Dadurch entsteht eine gute Korrekturmöglichkeit für die oben erwähnten Schwierigkeiten bei
der Beschleunigung oder Frequenzverzerrung. Diese mi Verfahren sind jedoch auf den F2F-Code beschränkt.
Die Aufgabe der vorliegenden Erfindung besteht darin, ein Verfahren und eine Vorrichtung zum
Auswerten aller selbsttaktierenden Codes zu schaffen, die Referenzmessungen außerhalb eines jeden Daten- t>>
bits haben oder Datenbits als Referenzmessungen für nachfolgende Datenbits benutzen. Weiterhin soll eine
verbesserte Einrichtung zur Decodierung selbsttaktierender Streifencodes geschaffen werden, die auch
Fehler auf der Bitstufe erkennen kann, bevor der ganze Bitstrom gelesen wurde. Bei der Decodierung mittels
der Streifen-Abstands-Übergänge selbsttaktierender Streifeni-Odes auftretende Zweideutigkeiten sollen
durch das verbesserte Verfahren der Erfindung vermieden werden.
Gelöst wird diese Aufgabe der Erfindung für das
Verfahren durch die in dem Hauptanspruch angegebenen Merkmale sowie für die Vorrichtung durch die im
Anspruch 5 aufgeführten Merkmale.
Vorteilhafte Weiterbildungen und Ausgestaltungen des Gegenstandes der Erfindung sind den übrigen
Patentansprüchen zu entnehmen.
Der Vorteil der Erfindung ist vor allem darin zu sehen,
daß durch das in ihr vorgeschlagene Verfahren und die zugehörige Vorrichtung im Zusammenhange mit fast
alle selbsttaktierende Codes ausgewertet werden können.
Darüber hinaus ist auf verbesserte Weise möglich, seibsttaktierende Codes zu lesen, die Bezugsmessungen
außerhalb jedes Bits haben oder daß Datenbits als Bezugsmessungen für ein nachfolgendes Datenbit
benutzt werden, wodurch die Kompatibilität zu anderen selbsttaktierenden Codes hergestellt werden kann.
Ein Ausführungsbeispiel der Erfindung ist in den Zeichnungen dargestellt und wird anschließend näher
beschrieben. Es zeigen:
F i g. 1 verschiedene bekannte selbsttaktierende Streifencodeschemata;
. Fig.2A—2E logische Decodiertabellen für verschiedene
bekannte selbsttaktierende Code,
Fig.3 ein SpezialZeichen zur Decodierung des
Datenanfangs oder -endes,
F i g. 4 eine Folge von Daten und SpezialZeichen zur Abgrenzung des Datenanfanges und -endes sowie die
Verwendung von Vorsatzzeichen,
Fig.5 Verwendungsmöglichkeiten von Spezialzeichen,
wie sie in Fig.6A und 6B gezeigt sind, zur Bezeichnung das Datenanfanges oder -endes in einem
Streifencode,
Fig.6A ein SpezialZeichen zur Identifizierung der Abtastrichtung oder zur Anzeige einer anderen
logischen Bedeutung dafür, daß es sich nicht um Daten handelt,
F i g. 6B eine andere Verwendungsmöglichkeit des in F i g. 6A gezeigten Zeichens;
F i g. 7 alle Streifencodekombinationen für einen doppelt breiten F2F-Code und die auftretenden
Abstände zwischen Daten- und Steuerimpuls,
Fig.8 einen allgemeinen Satz aus Streifencodeelementen
zum Aufbau von Streifencodes,
F i g. 9 einen aus den in F i g. 8 gezeigten Elementen aufgebauten Streifencodezeichensatz,
F i g. 1OA- IOC die Schaltung eines Decodiergerätes.
F i g. 11 das Prinzip des Zahlenmaßstabes, wie es im
Ausführungsbeispiel angewendet wird,
Fig. 12 das Bestimmungsprinzip für die Breite eines
Suchsegmentes oder Ausschnitte für einen Streifencode,
Fig. 13A eine logische Tabelle des decodierten
Inhaltes für einen S2S-Code,
F i g. 13B die Matrixanordnung im logischen Kreis der Fig. 13A,
Fig. 14 das Anwendungsprinzip des vorgezogenen Verfahrens auf jeden selbsttaktierenden Code und das
Auflösungsprinzip für Zweideutigkeiten,
Fig. 15 die Fehlererkennungsschaltung für das Ausführungsbeispiel des in Fig. 1OA-IOC gezeigter.
Decodiergerätes,
Fig. 16 ein weiteres Ausführungsbeispiel der Erfindung,
Fig. 17 die Arbeitsweise des in Fig. 16 gezeigten
zweiten Ausführungsbeispiels; und
Fig. 18A—18E den nach der logischen Matrix decodierten Dateninhalt für verschiedene Codes nach
der in F i g. 17 dargestellten Arbeitsweise, angewandt
auf das in den F i g. 1OA, 1 OB und 16 gezeigte Gerät.
Das Verfahren dient zum Decodieren, d. h. Auswerten des Dateninhaltes eines Signalstromes, der von einem
binären Fühler oder Abtaster oder von einer Übertragungsleitung kommt. Die Signale treten in Form
elektrischer Potentialschwankungen oder Stromschwankungen über der Zeit als Rechteckwellen auf.
Das notwendige Fühl- und Abtastgerät oder das Adaptergerät für die Übertragungsleitung werden nicht
dargestellt oder beschrieben, da diese allgemein bekannt sind.
Nach Empfang des Signalstromes erfolgt die Abtrennung und Auswertung der Impulse, die Daten in einem
bestimmten Code anzeigen. Der hereinkommende Datenstrom besteht aus einer Reihe unterschiedlicher
elektrischer Signalpegel oder Impulse, wobei der verwendete Code keine Rolle spielt Das Auftreten
eines Impulses oder ein Merkmal eines Impulses, wird beispielsweise die Polarität an einer durch die Frequenz
oder die Signalübergangsabstände festgelegten Stelle oder die Kombination der Breiten von Streifen und
Zwischenräumen wird in allen Codes zur Darstellung von Daten benutzt
Frequenzschwankungen im hereinkommenden Datenstrom wirken gleich wie Schwankungen in der
Streifenbreite auf dem codierten Medium. Die Streifenbreite, die Impulsabstände oder die Polaritäten des
Kantenübergangssignals können als datendarstellende Vorgänge abhängig vom verwendeten Codierschema
benutzt werden.
Im allgemeinen werden selbsttaktierende Datencode digital als Bits geschrieben, die in definierten Zellen
stehen. Die Zellen sind Intervalle in einer Datenaufzeichnung oder Abstände oder Zeiträume in einem
Signalstrom, in denen ein veränderliches von der Maschine feststellbares Signal auftritt oder nicht
auftritt, oder in denen ein Merkmal des Vorgangssignales so verändert wird, daß der Dateninhalt der Zelle
dadurch bezeichnet wird. Diese Codes werden allgemein von einem Medium gelesen oder als gesendete
Signale empfangen. In jedem Fall wird ein Signalstrom zur Verarbeitung an einen Decodierer gegeben, damit
dieser den Codeinhalt der verschiedenen Datenbitzellen bestimmen kann. Außerdem muß eine Möglichkeit
vorgesehen werden, um die Bitzellen mittels der Grenzen einer jeden Zelle so zu bezeichnen, daß die Bits
getrennt und decodiert werden können. In selbsttaktierenden
Codes treten im allgemeinen Datenvorgänge und Taktvorgänge auf. Die Datenvorgänge können mit
den Taktvorgängen verschachtelt sein, sie können aber auch getrennt sein oder sogar mit den Datenvorgängen
zusammenfallen. Immer müssen die Daten- und die Taktvorgänge getrennt oder zumindest getrennt erkannt
werden, und es muß der Dateninhalt im Signalstrom des Codes interpretiert werden.
Außerdem muß noch zwischen möglicherweise auftretenden Störimpulsen und Signalen unterschieden
werden, und Verzerrungseffekte in den Signalen müssen korrigiert oder kompensiert werden. Die Taktsignale in
selbsttaktierenden Codes ermöglichen das durch auto
«ο
matische Synchronisation für die Trennfunktion und/oder zur Ausschaltung von Störsignalen oder
Impulsen vom Datenstrom.
In einem Streifencode gedruckter oder magnetisch codierter Art kann man mit den Streifen oder mit den
Zwischenräumen Zeitintervalle oder Strecken definieren. Das magnetische Äquivalent wäre eine Magnetisierung
plus, minus, plus, etc. in verschiedenen räumlichen Intervallen. Das Zeitintervall oder die Strecke, die
zwischen der Hinterkante eines Streifens (Vorderkante eines Zwischenraumes) und der Vorderkante des
nächsten Streifens (Hinterkante des Zwischenraumes) liegt, ist eine Funktion des verwendeten Codes. Das
Intervall zwischen einer Vorderkante und der nächsten Vorderkante oder zwischen einer Hinterkante und der
nächsten Hinterkante in der Reihe ist ein kombiniertes Intervall aus Streifen und Zwischenraum, d.h. ein
kompletter Streifen und ein kompletter Zwischenraum. Alie Codes benutzen Bereiche abfühlbarer unterschiedlicher
Charakteristik auf dem Medium oder im Signalstrom, um die Übergangskanten zwischen Streifen
und Zwischenraum zu markieren.
Bei all diesen Codes sind die Bereiche unterschiedlicher
Charakteristik auf der Basis 1 :1 verschachtelt, obwohl in einem Streifen oder Zwischenraum entsprechend
dem verwendeten Code mehr als ein Datenbit enthalten sein kann. Einem Streifen oder einem
Zwischenraum mit einer zu identifizierenden Charakteristik folgt ein anderer Streifen bzw. Zwischenraum
einer anderen abfühlbaren Charakteristik.
Einige Codes benutzen eine relativ große Anzahl von Streifen- und Zwischenraumkombinationen, d. h, mehrere
Streifen und Zwischenräume jeweils unterschiedlicher Breite können benutzt werden, um verschiedene
Zeichen darzustellen. Einige einfache Codes verwenden nur einen Streifen und einen Zwischenraum miteinander
und verändern die Präsentationsreihenfolge von Streifen und Zwischenräumen. Andere können die relativen
Breiten von Streifen und Zwischenraum zusätzlich verändern.
In F i g. 1 sind von oben nach unten mehrere Zeilen mit Codemustern gezeigt, die als Eingangssignalstrom
zu einem Decodierer betrachtet werden können. Die verschiedenen Codearten sind der F2F-Mittenimpulscode,
der F2F-Taktimpulscode, der SKS-Code, der S2S-Code, der Deltadistanzcode und der Phasenverschiebungscode.
Aus F i g. 1 ist zu sehen, daß Streifen, die für die
vorliegende Beschreibung als positive oder hohe Pegel betrachtet werden, und Zwischenräume, während derer
das Signal niedrig ist, im Verhältnis 1 :1 verschachtelt
sind. Das Intervall zwischen aufeinanderfolgenden Vorderkanten der Streifen ist gleich der von einem
Streifen und einem Zwischenraum umspannten Strecke, das Intervall zwischen den entsprechenden Hinterkanten
ist gleich dem Intervall des nächsten Streifens plus demselben Zwischenraum. Die zur Erzeugung dieses
Musters notwendigen Intervalle benutzen drei Signalübergänge
zur Definition von zwei positiv verlaufenden Impulsen und einem negativ verlaufenden Impuls oder
umgekehrt (ein Streifen und ein Zwischenraum) und die Polarität der Obergänge ist für Vorderkanten respektive
Hinterkanten aufeinanderfolgender Streifen immer dieselbe.
Es wurde festgestellt, daß ungeachtet des verwendeten
Codes die Größen der Intervalle zwischen aufeinanderfolgenden positiven oder negativen Obergängen (Vorderkante zu Vorderkante oder Hinterkante
zu Hinterkante im Signalstrom) für jeden Code nur eine bestimmte Anzahl möglicher Intervallgrößen annehmen
kann. Wenn das so ist kann man, beginnend mit einem positiven oder negativen Übergang, das nächste
Auftreten eines ähnlichen positiven oder negativen Überganges an einer und nur einer von verschiedenen
möglichen Lagen oder Intervallen aufgrund der Daten im gegebenen Code vorhersagen. Außerdem wurde
festgestellt, daß die Kombination von Intervallen positiv bis positiv (Hinterkante zu Hinterkante) eindeutig den
Dateninhalt des betreffenden Segmentes definieren. Dieses Konzept ist bereits in der US-Patentschrift
37 23 710 beschrieben, und dort ist gezeigt, wie die Messungen auf einen Code angewandt werden, in dem
ein Referenzintervall innerhalb eines jeden codierten Zeichens enthalten ist. Dabei muß jedoch das ganze
Zeichen abgetastet und die verschiedenen Intervalle gemessen und verarbeitet und mit einer Referenz
verglichen werden, bevor der Dateninhalt zu erfahren ist.
Jetzt wurde festgestellt, daß der Signalstrom zu seiner Decodierung nicht kontinuierlich überwacht werden
muß. Man braucht nur zwei aufeinanderfolgende positive oder negative Signale, d. h. eine Referenzbreite,
zu isolieren, um aufgrund des bekannten Codes vorherzusagen, wo alle nächstmöglichen Intervalle
liegen können. Man braucht nur die Segmente des Signalstromes an diesen vorhergesagten Lagepunkten
oder Zeitpunkten zu überwachen, um festzustellen, welche der möglichen Lagen für die nächstfolgenden
positiven und negativen Impulse belegt wird. Je nachdem, welche der möglichen Lagen belegt wird,
kann dann auf einmal der Dateninhalt dieses Segmentes des Datenstrouies decodiert werden. Das gilt für alle
Codes.
Durch Auswerten zweier gleicher Signale am Anfang einer Decodieroperation auf ein Referenzintervall wird
eine Messung vorgenommen. Man kann aber auch eine feste Referenz benutzen und sie in den Decodierer fest
einbauen. Das Referenzintervall, welches nicht einen Teil des Datenzeichens oder Datenstroms bildet,
braucht nicht decodiert zu werden. Das Referenzintervall im Datenstrom muß wenigstens ein aus Streifen und
Abstand bestehendes Paar enthalten. Mehrere Paare können natürlich ebenso benutzt werden. Dann wird
aufgrund des bekannten Codes und der Referenz eine Vorhersage für alle möglichen Stellen der nächsten
unmittelbar folgenden Vorderkante und Hinterkante innerhalb des Änderungsbereiches getroffen, der im
gegebenen Code zulässig ist Es wird angenommen, daß am Decodierer bekannt ist, welcher Code zu decodieren
ist Suchtore werden dann vorbereitet, die die Suche um jeden der vorhergesagten gültigen Kantenübergangspunkte
sowohl für die nächste Vorderkante als auch für die nächste Hinterkante im Signalstrom festlegen. Die
Vorhersagen von Kanten basieren auf Intervallmessungen für Vorder- und Hinterkanten, um Druckstreuungsverzerrungen
zu vermeiden. Je nachdem, in welcher der verschiedenen möglichen Stellen die Vorderkante und
in welcher die Hinterkante des Signals gefunden wird,
wird der Dateninhalt des Streifenpaares entsprechend dem bekannten Code ausgewertet
Daten werden im allgemeinen durch Variationen eines sichtbaren oder von der Maschine feststellbaren
Effektes geschrieben. Optische oder magnetische Streifen oder deren Kombinationen können dafür
benutzt werden. Die Frequenz der Kantenabstände, festgestellt durch einen das entsprechende Medium
abtastenden Lesekopf oder von elektrischen Impulsen, die über eine Übertragungsleitung von einem Leser
geliefert werden, sind ebenfalls allgemein in Gebrauch.
Der Effekt, der wenigstens zwei verschiedene Zustände haben muß, zeigt seine Zustandsänderung als
Vorgang an. Hier wird angenommen, daß die Vorgänge gezählt und ihnen entsprechend der Zahl eine gerade
oder ungerade Bedeutung zugeordnet wird. Willkürlich werden dabei ungerade Vorgänge den Daten und
ίο gerade Vorgänge der Steuerinformation zugeordnet.
Durch die Definition dieses Zählschemas werden also Daten und Steuervorgänge im Verhältnis 1 :1 verschachtelt.
In jedem bekannten selbsttaktierenden Code besteht ein Mindestintervall von einem Zwischenraum, d. h. einem Zeitabschnitt zwischen aufeinanderfolgenden verschiedenen Vorgängen, innerhalb dessen keine Vorgänge auftreten. Das soll heißen, daß ein gewisser Mindestabstand von Vorgängen besteht, der nicht unterschritten werden darf. Das Mindestintervall ist für einen gegebenen Code gewählt, und alle anderen Intervalle zwischen den Vorgängen liegen über diesem Minimum.
In jedem bekannten selbsttaktierenden Code besteht ein Mindestintervall von einem Zwischenraum, d. h. einem Zeitabschnitt zwischen aufeinanderfolgenden verschiedenen Vorgängen, innerhalb dessen keine Vorgänge auftreten. Das soll heißen, daß ein gewisser Mindestabstand von Vorgängen besteht, der nicht unterschritten werden darf. Das Mindestintervall ist für einen gegebenen Code gewählt, und alle anderen Intervalle zwischen den Vorgängen liegen über diesem Minimum.
Das Mindestintervall zwischen zwei aufeinanderfolgenden gleichen Datenimpulsen oder Steuerimpulsen ist
nominell doppelt so groß, wie das Mindestintervall zwischen benachbarten Impulsen, weil die Intervalle im
Verhältnis 1 :1 verschachtelt sind. Die Bedeutung der in einem Datenintervall zwischen zwei Datenimpulsen
jo enthaltenen Daten wird bestimmt durch den Code, der
der Größe des Intervalls zwischen zwei aufeinanderfolgenden Datenimpulsen eine gegebene Bedeutung
zuordnet. Natürlich gibt es, wie schon gesagt, auch Intervalle anderer Größe zwischen unterschiedlichen
Signalen, die von der Mindestgröße verschieden sind und darauf bezogen sind.
Wenn P in einem gegebenen Code definiert ist als Anzahl von Intervallen, die von dem Mindestintervall
zwischen unterschiedlichen Signalen verschieden und größer als dieses sind, dann gibt es ein Maximum von
2P+1 gültigen Kombinationen von Streifen-Zwischenraum-Intervallen,
von denen man jeweils 2 nimmt Diese bilden Datenintervalle oder Steuerintervalle. Diese
kombinierten Streifen-Zwischenraumintervalle umfassen die Gesamtzahl der verschiedenen möglichen
Intervalle zwischen zwei aufeinanderfolgenden gleichen Vorgängen, seien es nun Datenvorgänge oder Steuervorgänge.
Vor den Daten werden häufig Steuerintervall- und
Vor den Daten werden häufig Steuerintervall- und
so Datenintervall-Vorgänge geschrieben, die verschachtelt
sind. Solche Intervalle werden als Vorlaufbitstrom oder -symbol codiert Diese vorläufigen Vorgänge liefern die
Referenzmessungen für wenigstens eines der 2P+ i möglichen Datenvorgangsintervalle und/oder Steuer-Vorgangsintervalle.
Wenigstens eines dieser Intervalle muß in dem Vorlaufsatz vorgesehen werden, wenn nicht
zuerst eine feste Referenz an den Decodierer gegeben wird. Die nachfolgenden Datenvorgänge können
ebenfalls zur Vorhersage der möglichen Pulspositionen oder Intervalle benutzt werden, die aus verschiedenen
ursprünglich für den Aufgau des Code ausgewählten Faktoren gewählt wurden. Die möglichen Lagen von
Daten- und Steuerimpulsen können entsprechend entweder von dem vorhergehenden Datenimpulsintervall
oder vom Steuerimpulsintervall vorhergesagt werden, da beide Intervalle in der Familie der möglichen
Intervalle liegen, die durch einen gegebenen Code bestimmt ist.
Die mögliche Lage für Daten- und Steuerimpulse kann aber auch von einer festen Referenz aus
vorhergesagt werden. Die vorhergesagten Intervalle sollten im Idealfall vom Auftreten des letzten gleichen
Impulses gemessen werden, um mögliche Verzerrungseffekte, beispielsweise, durch mangelhaften Druck der
Codestreifen, zu vermeiden. Einsparungen in der Logik sind jedoch möglich, wenn alle Tore jeweils auf den
letzten Datenimpuls oder auf den Steuerimpuls eingestellt sind.
Die Kombination des nächsten Steuervorganges mit dem nächstfolgenden verschachtelten Datenvorgang
definiert eindeutig den Datengehalt des Datenintervalles entsprechend dem Datenformat oder Code, die
dieser Erscheinungskombination von Datenvorgangslage und Steuervorgangslage zugeordnet sind. Zusätzlich
kann eine Definitionswahl oder ein Kriterium für den Dateninhalt, der auch als eine Kommandofunktion für
ein künftiges Auftreten einer spezifischen Kombination von Daten- und Steuervorgangsstelle benutzt werden
kann, einer oder mehreren der (2P+1)2 möglichen Steuer- und Datenvorgangs-Intervallagekombinationen
zugeordnet werden.
Diese Kombinationen können in einer Decodiermatrix entsprechend den Steuer- und Datenintervallen
engeordnet werden, wobei man jeweils zwei benutzt.
Wenn z. B. ein Datenvorgang in einem größeren als dem vorläufigen Referenzdatenintervall auftritt, kann
das Datenintervall reduziert oder normalisiert werden auf die ursprüngliche Größe, so daß es zum Referenz-Intervall
für die nächstfolgenden Datenintervallvorhersagen wird. Die vorläufigen oder Referenzvorgänge
oder die gegebenen für die Steuer- und Datenabfrageintervalle benutzten Messungen können aus einem
der 2P+1 möglichen Intervallfaktoren, einer Kombination derselben oder einer willkürlichen Länge bestehen.
Die Auswahl des Referenzintervallfaktors wird bestimmt durch Überlegungen, wie maximale Decodierprozesse
zulässigen Codeabtast- oder Beschleunigungseffekte.
Die F i g. 2A bis 2E zeigen fünf verschiedene (2P+1)2
Decodiermatrizen. Jede Decodiermatrix gilt für den
zugeordneten Code und gilt für vier Bitzeichen, die alle möglichen Bitkombinationen enthalten von 0000 bis
1111. Ein Beispiel ist in Fig.7 dargestellt für das
Codeformat S2S.
Die Daten- und Steuerimpulsintervalle bestehen aus zwei Streifen und zwei Zwischenräumen, wie sie in den
Fig.4 bis 7 gezeigt sind. Jede Decodiermatrix in F i g. 2A bis 2E zeigt einen gegebenen Code, der der
Größe des Intervalles zwischen aufeinanderfolgenden Daten- und Steuerpulsen eine Bedeutung zuordnet Jede
Decodiermatrix h.-».t drei Spalten und drei Zeilen. Das gilt für den Fall, in dem P, die Anzahl der verschiedenen
vom Grundminimum unterschiedlichen Intervallfaktoren, gleich 1 ist, was für alle gezeigten Codeformate
zutrifft Es gibt also zwei mögliche Streifen- oder Zwischenraumbreiten. Die Höchstzahl verschiedener
Intervalle, in denen ein Daten- oder Steuervorgang auftreten kann, ist demzufolge 2P+1=3. Diese Formel
ist jedoch allgemeiner Natur und andere Codes wie beispielsweise ein 3-Breiten-Code, können größere
Matrizen haben (die Matrix für einen 3-Breiten-Code wäre 5 χ 5; für einen 4-Breiten-Code 7x7, usw.).
Die Spalten in F i g. 2 sind willkürlich als Datenimpuls-Intervalle
DPI und die Zeilen als Steuerimpulsintervalle CPI bezeichnet In allen gezeigten Matrizen haben CPI
und DPI einen Wert, der zweimal, dreimal oder viermal
so groß ist wie die Mindestintervallbreite. Die Koordinatenschnittpunkte der Matrix entsprechen
einer der (2P+1)2 spezifischen Intervallkombination von CPI und DPI. Das CPI tritt zeitlich während der
r> Decodierung zuerst auf (gerade Impulse), und ihm folgt
die Komplettierung durch ein DPI. Die Bedeutung der im Datenintervall enthaltenen Daten wird geregelt
durch das Steuerintervall für jedes Codeformat.
Abgesehen von der Decodiermatrix in den F i g. 2B
ίο bis 2C ist durch jede Kombination von CPI und DPI ein
Datenbit eindeutig definiert. Zur Decodierung dieser Codeformate sind abgesehen von den genannten
Ausnahmen keine anderen Daten oder Steuerkriterien erforderlich. Die Matrizen in den F i g. 2B und 2C
ι i entsprechen jedoch den S2S-Codes mit absoluter Breite.
Die CPI-DPI-Coordinaten 3,3 haben 2-Bit-Datendarstellungen.
Eine Darstellung kann definiert sein als Typ A, ein beliebiger Name, die andere als Datendarstellung
vom Typ B. Die richtige Auswahl der Darstellungen muß decodiert werden, wenn eine 3,3-Intervallkombination
auftritt und wird gemäß Darstellung in der Matrixtabelle bestimmt durch das letzte Auftreten einer
Intervallkombination 3-2, 2-3, 3-4 oder 4-3. Die Bezeichnung Typ B wird zuerst gewählt, wenn vor dem
Lesen von codierten Indizes der vorläufige Vorgangsstrom begonnen hat und im Decodierer die vorher
decodierten Daten gelöscht sind.
In allen Decodiermatrizen der F i g. 2A bis 2E gibt es wenigstens zwei CPI-DPI-Koordinater.stellen, zu denen
keine Daten gehören. Diese stehen für Sonderfunktionen wie Abtastanzeige, Datenanfang, Datenende, rechts
nach links oder links nach rechts oder für Formatanzeigen wie Codewechsel zur Verfügung. Andere Codes mit
mehrfacher Breite haben für solche Zwecke noch mehr Leerstellen. Diese Leerstellenkombinationen wie 4,2
und 2,4 erhält man aus einer besonderen Konfiguration von Streifen- und Abstands-, bzw. Distanzintervallen,
wie sie in F i g. 3 gezeigt ist. Diese Kombination kann man als Vorlaufsatz benutzen, er wird hier Instruktionsindexkonfiguration
IIC genannt. Datenzeichen brauchen nicht mehr einer datenfremden Identitätsfunktion
wie einem Vorlauf zugeordnet zu werden.
Nach Darstellung in F i g. 3 besteht die IIC aus zwei Streifen mit Mindestbreite, die durch einen Abstand von
drei Mindestbreiten oder Zeitabschnitten getrennt sind. Vor und hinter der IIC muß ein Mindestabstand stehen,
der in den Codestrom so eingeschoben wird, daß eine Unterbrechung im verarbeiteten Signalstrom auftritt.
Diese Einschränkung garantiert, daß den Intervallfolgen
5n 2,4 als nächstes die Folge 4,2 folgt. Das Intervall
2,4—4,2 kann jeder Kombination von Datenbits zugeordnet werden in Verbindung mit der anderweitig
vorgesehenen spezifischen logischen Instruktion. Die Datenbus können alleine oder in Verbindung mit der
logischen Instruktion genommen werden. Beispiele für die Benutzung des IIC folgen.
In F i g. 4 ist ein Indexstrom gezeigt Der Signalstrom beginnt und endet mit einer Vorlaufindexkonfiguration.
Ein einziges fünf Bit großes Datenzeichen ist zwischen die beiden IIC's gepackt dargestellt Es können natürlich
anstelle dieses einen noch mehr Datenzeichen mit anderer Bitzahl gepackt werden. Bei der Abtastung der
codierten Indzies oder eines Signalstromes in Fig.5
von links nach rechts erzeugt das erste IIC eine Intervallkombination 2,\ und 4,2 in der Reihenfolge der
Signale am Datenanfang. Mit der nächsten IIC kann das
Datenende angezeigt werden. Wenn man die IIC auf diese Weise benutzt braucht man die Datenbits nicht zu
zählen, um das Datenende in einem gegebenen Codeformat zu bestimmen, das beispielsweise acht
Datenbits hat, oder man braucht auch nicht einen eindeutigen Strom binärer Einsen o. dgl. vor oder hinter
den Datenstrom zu setzen, um Datenanfang und Datenende zu bezeichnen.
F i g. 5 erweitert die Darstellung in F i g. 4. Der Strom codierter Indizes in F i g. 5 enthält zwei IIC's wie F i g. 4.
Die linke und rechte Vorlaufindexkonfiguration ist jedoch unterschiedlich. Dadurch kann man feststellen,
ob der Indexstrom von links nach rechts oder von rechts i.ach links abgetastet wird. Die IIC's haben jedoch
dieselbe Funktion, nämlich die codierten Datenindizes von den Anfangs- oder vorläufigen Indzides zu trennen
und die End- oder Abschlußindizes zu bilden. ι >
Mit der HC kann man auch einen Wechsel der Matrizen der F i g. 2 bezeichnen, um Zeit zu sparen, z. B.
indem man die Bedeutung einer langen Reihe abwechselnder doppelter Abstandstreifen und doppelter
Mindestabstände neu zuordnet. Das ist in den >u F i g. 2A, B und C dargestellt. Die Verdichtung gestattet
ein Herausziehen derselben Daten aus einem wechselnden Strom von Streifen, die durch Abstände mit einem
Minimum getrennt sind. Mit Hilfe des HC kann man also die Datendichte erhöhen. ;·ϊ
Auch kann ein Verzweigungsindex aufgebaut werden. Der Verzweigungsindex des BIC unterscheidet sich von
der IIC nur durch die Anwendungsregeln. Die 2,4 BIC muß hinter einem Abstand mit einem Minimum stehen,
und müssen zwei Abstände mit einem Minimum folgen, jn
Eine 2,4 BIC ist in F i g. 6B gezeigt.
F i g. 8 ist eine allgemeine Darstellung der Streifencodierung. Der einzelne Codestreifen beginnt mit einem
Streifen oder Abstandselement von Mindestbreite W, der in der obersten Zeile zwischen zwei benachbarten j-ί
Signalimpulsen dargestellt ist. Alle bekannten selbsttaktierenden Streifencodes arbeiten mit einem Streifen
oder Abstandselement mit Mindestbreite und wenigstens einem anderen Streifen- oder Abstandselement
mit einer anderen Breite. au
Im allgemeinen kann die Breite eines Codestreifens oder eines Abstandselements dargestellt werden als die
Breite W und die Breite des nächstgrößeren Streifens oder Abstandselements als Breite IV+zlW. Mit 5 wird
die Mindestbreite eines Streifens, d. h. der im Code benutzte Platz bezeichnet. W bezeichnet die tatsächliche
Länge eines solchen Streifens oder Abstandes. Δ W ist definiert als das verwendete Minimum oder die
abfühlbare kleinste Breitendifferenz zwischen zwei Streifen und/oder Abständen. Der Grenzfall für Δ H'ist v:
die kleinste abfühlbare Breitendifferenz für die Auflösungsfähigkeit des benutzten Abtastelemems.
Wenn man nach dem nächsten möglichen impuis an
einer bestimmten Stelle suchen will und ein Suchausschnittsegmeni zeitlich um die vorhergesagte Steile
gelegt wird, taucht die Frage auf, welches die mögliche Segment- oder Ausschnittbreite ist, mit der man
arbeiten kann, um eine Verwirrung durch Überlappung von Suchausschnitten mit anderen möglichen impulslagen
zu vermeiden.
Diese Frage wird im Zusammenhang mit Fig. 12
untersucht Oben in F i g. 12 sind zwei Codestreifen oder Abstandselemente mit Mindestbreite nebeneinander in
die Linie b gesetzt, und diesen folgt das nächstmögliche Intervall. In der Linie e ist der nächstgrößere
Streifen-Abstandsübergang gezeigt der von den gewählten Codeelementen vom Codeelementensatz in
F i e. 8 beschrieben werden kann.
Wenn man einen am Ende eines gegebenen Intervalls von zwei kombinierten Streifen- und Abstandselementen
auftretenden Impuls isolieren will, kann ein Suchausschnitt zeitlich um die vorhergsagten Zeitlage
Tn herum aufgebaut werden. Ein Suchausschnitt kann
beginnen zur vorhergesagten Zeit Tn minus einen Betrag txT„ und enden zur Zeit Tn lus einem Betrag a.Tn.
Überlappungen mit benachbarten Suchausschnitten oder Segmenten müssen bei der Suche nach Impulsen in
benachbarten möglichen Stellen natürlich vermieden werden.
Die beiden möglichen am dichtesten liegenden Impulsstellen sind in den Linien c und d der Fig. 12
gezeigt. Die Differenz zwischen diesen möglichen Impulslagen ist der Betrag vS, wie aus dem Diagramm
zu ersehen ist. γ S ist daher gleich dem Zeitbetrag, der eingeschlossen wird durch die Häifte eines Suchausschnittes,
der um die erste mögliche Impulslage herum (/=1) aufgebaut wird, und der Hälfte eines Suchausschnittes,
der um die zweite mögliche Impulslage herum 0=2) aufgebaut wird, so daß sich die Ausschnitte nicht
überlappen. Wenn ein gegebener Ausschnitt um eine vorhergesagte Impulsposition herum das Maß±amai
der Zeitdauer der vorhergesagten Lage Tn hat, dann hai
ein Suchausschnitt also eine Gesamtbreite von 2OcTn,
und das ist in den meisten Fällen gleich S. Der Höchstwert für χ ist dann gegeben durch 2Τη=γ S, und
da der kleinste Wert Tn= Γ0=2 S ist, ist 4<xS=ySoder
a = y/4. Das wird später noch im Detail bewiesen. 7o ist
das kleinste Intervall zwischen zwei gleichen Signalen und resultiert aus der Kombination eines Streifens und
eines Abstandes mit kleinster Breite.
In F i g. 8 ist die Beziehung verschiedener Codestreifenelemente oder Abstandselemente zueinander gegeben
durch den allgemeinen Ausdruck Wn = S+ PyS für den Bereich O<
P> n, worin γ die kleinste abfühlbare oder nutzbare Einheit der Breitenzunahme ist, d. h. γ ist
der kleinste gemeinsame Nenner aller Breitenzunahmen, der die Breitendifferenz eines Streifens oder eines
Abstandes gegenüber einem anderen definiert. Mil anderen Worten, γ mal Mindestbreite eines Streifens ist
gleich dem kleinsten Betrag der Breitenzunahme Δ W
Daher ist γ eine dimensionslose Zahl.
Im allgemeinen kann festgestellt werden, daß Δ W, de: Breitendifferenzbetrag zwischen einem Streifen ur;.
einem Abstand oder einem anderen Streifen, gleich γ ■ .' ist, worin 5 die Mindestbreite eines Streifens ode<
Abstandes ist die -im Code verwendet werden. ·
allgemein ist dann —.
In der oben gegebenen Gleichung ist der Ausdruck F eine ganze Zahl zwischen 0 und n. mit der die Anzahl de:
SireiiencurfeeieiTieiiic definiert wird, die äüS dein Satz ;r.
F i g. 8 ausgewählt wurden. Die Mindestbreite 5 ha; ζ. Β
den Wert P= 0, die nächstgrößere Breite hat den Wer. P=I usw. P definiert also die ganze Zahl eines
Codeelements und wird nur als Index benutzt um festzulegen, wieviele verschiedene Streifen im Codeelementensatz
verwendet werden. Viele Codes benutzen nur zwei verschiedene Breiten, und zwar eine
Mindestbreite und eine etwas größere Breite. Bei dieser Codetypen ist der Wert P= 1, & b_, es gibt ein Streifen
oder Abstandselement das eine vom Mindestabstanc1 oder von der Mindeststreifenbreite verschiedene Breite
hat
Die Formel Wn=S-I-PyS für 0<Ρ<λ ist dann alsc
davon abhängig, ob P eine ganze Schrittzahl ist unc
keine Sprünge auftreten, & h. P im Wert nicht mehr zL·
eine Einheit springt Das soll nicht heißen, daß alle Streifencodeelemente P-Zahlen haben müssen, die sich
voneinander in einer kontinuierlich ansteigenden Folie von ganzen Zahlen un.erscheiden, da Sprünge in der
Strsifenbreite oder in der Abstandsbreite wohl zulässig sind. Vielmehr soll P definiert sein als eine Zahl von
Mindesteinheiten der Zunahme γ ■ S, die zu dieser Mindestgrundbreite S addiert wird, so daß
Wn-S
ys
ist, wobei
ist, wobei
= P
AW
Bei derart bestimmten P-Werten können Sprünge in echten Schrittgrößen der Streifen- oder Abstandselemente
auftreten, und der P-Wert gibt diese Tatsache wieder. Die unbenutzten oder übersprungenen Streifen
oder Abstandselemente sind einfach kein Teil des zum Aufbau eines Codes gewählten Streifenelementensatzes.
Wichtig ist die Feststellung, daß die tatsächliche Zahl von Streifencodebreiten, die sich vom Minimum
unterscheiden, durch den größten P-Wert nur gegeben ist, wenn keine Sprünge im regulären Fortschritt der
Breiten auftreten.
In F i g. 9 ist ein verallgemeinerter selbsttaktierender Code gezeigt Er besteht aus zwei der in Fig.8
gezeigten Streifencodeelemente, wobei das Mindest-Übergangsintervall zwischen zwei Impulsen gleicher
Polarität gegeben ist als: T0 = 25. Das ist die kleinste
Kombinationsintervallänge, die aus dem Codesatz der Fig.8 aufgebaut werden kann. Die zweite Zeile der
F i g. 9 zeigt die erste Intervällkombination, die sich von der Kombination mit dem Mindestintervall unterscheidet.
Ihre Länge ist definiert als 2 5+ PyS, wobei P die Anzahl von Streifencodeelementen ist, die eine größere
Breite haben als die Mindestbreite. Diese Gleichung gilt jedoch nur für den Sonderfall, in dem zum Aufbau des
Codes keine Sprünge in den Breiten gemacht werden.
Eine nützliche Bezeichnung der Breitenkombinationen ist die Verteilung von Indexzahlen nach der
Beziehung, die sie zueinander haben. Dem kleinsten Übergangsintervall von 2 5 in der oberen Linie der
Fig.9 kann man somit eine Intervallindexzahl 1 zuteilen. Das ist bezeichnet mit Z= 1. Das nächstgrößere
Intervall S+yS erhält die Indexzahl /=2 usw. »Z« ist
daher definiert als die Indexzahl des Zeitintervalles zwischen zwei Impulsen gleicher Polarität. Es ist also
P=/-l.
Die Länge Tn einer Streifen- und Abstandskombination,
wie sie in Fig.9 gezeigt ist, beträgt dann 2 S+ (Zn-1) · y5 für den Bereich 1
< Z< n. Als Inlervallindexzahl kann 1 nur ganzzahlige Schrittwerte einnehmen.
Natürlich kann der Höchstwert von Z-=2P+1
werden, wenn man. Streifen der Breite S und Abstände
der Breite 5 wiederholen darf. Die Anzahl der verschiedenen Gesamtintervallängen T, die mit zwei aus
den Elementen in Fig.8 ausgewählten Streifen- und Abstandsbreiten aufgebaut werden können, ist gleich
2 P+1. P ist die Zahl verschiedener Streifenbreiten, die beim Aufbau des Codesatzes verwendet wurden, wobei
die Mindestbreite 5 nicht gezählt wird. Im allgemeinen ist Tn= 2 5+(Zn-I) ■ yS, wobei 0>n>2 P+l ist und P
die den Streifencodeelementen zugeordneten Werte einnimmt.
Das vorliegende Decodierverfahren basiert auf der Vorhersage aller möglichen Stellen, an denen ein Impuls
auftreten kann. Dabei wird das zeitliche Auftreten eines gegebenen Impulses berücksichtigt wobei Codetyp und
die Kenntnis des zum Aufbau des Codes verwendeten Codesatzes gegeben sind. Dann können Suchtore
eingerichtet werden, die zur vorhergesagten Suchzei nach einem Impuls suchen.
Eine Geschwindigkeitskorrektur erster Ordnung für Abweichungen in der Abtastgeschwindigkeit kann man
durch Verwendung des vorhergehenden Zeitintervalles zwischen zwei Impulsen gleicher Polarität bekommen.
Dieses Intervall muß jedoch in den richtigen Maßstab gesetzt werden durch Multiplikation mit dem Maßstabfaktor
R Der resultierende Ausdruck für eine Geschwindigkeitskorrektur erster Ordnung ist dann:
[B1,± a„]
Eine Geschwindigkeitskorrektur zweiter Ordnung mit den Gleichungen, die auf den vorhergehenden
zwei Übergangsintervallängen basieren, nimmt folgende Form an:
worin allgemein gilt:
Tn-I01., = Tn-, · R, T„-2jy = Tn.2 ■ R, usw.,
d. h., die beiden früheren Intervallängen Tn-I und T„.2 vor
dem Intervall Tn werden durch Multiplikationen mit dem Maßstabfaktor R mit der Standardbasis
Beziehung gebracht.
Beziehung gebracht.
Die folgende Tabelle I faßt die Algorithmen der Formel für drei Bedingungen zusammen:
a) Verwendung einer konstanten Referenzbreite,
b) Geschwindigkeitskorrekturformel erster Ordnung unter Verwendung der vorhergehenden Übergangsintervallänge,
die zu einem Normalwert als Referenzwert in Beziehung gesetzt wurde, oder
c) Verwendung zweier vorhergehender Übergangs intervallängen für eine Geschwindigkeitskorrektur
zweiter Ordnung.
Konstantes Referenzintervall (keine Geschwindigkeitskorrektur):
worin
T(r , = (T0)
_ (2 -v) + Jy
oder
vO'-i)
Fortsetzung
und
und
(P= nur ganze Zahlen) ι ο 2
für alle
ι =2/>+l(max)
j = 2P+ 1 (max)
T0 = Mindestintervall =2S
S = Abschnittsbreite (Mindest-Übergangsstrecke)
AW=yS
γ = Konstante für gegebenen Elementensatz Tabelle II
Y=I
Y=I
i i 16
2+ V-J)
Geschwindigkeitskorrektur erster Ordnung:
Tn-\ ~ letzte Länge Tn
1 2 3
20 1
2 3
25
1
1
1
2
2
2
3
3
3
1
1
2
2
2
3
3
3
1
1.5
1.5
2/3
4/3
1/2
3/4
a =
1/4 1/4 1/4 1/6 1/6 1/6 1/8 1/8 1/8
2[1+j]
In der nachstehenden Tabelle III sind die Werte für i,j B und α zusammengefaßt für den allgemeinen
Fall, in dem γ von 1 verschieden ist:
35
.,·) und αυ,,, wie oben.
Geschwindigkeitskorrektur zweiter Ordnung: und worin
' j
1
1
BUJ.r)
1
1
V+2
2
2
y+i
2
V + 2
V + 2
αν/4
V/4 y/4
=T,:..2Ru.
u.r)
2(y 2)
:'■,._ = frühere 7„- , und 7',_| = frühere T.
und /f(/jl wie oben.
Die nachfolgende Tabelle Il enthält die Werte für /./, und B sowie α zusammengefaßt für den Sonderfall,
in dem j' gleich 1 gesetzt wird, was normalerweise der Fall ist bei einem Breitenverhältniscode
2 : 1 wie etwa F2F oder S2 S. Bei diesen Codetypen ?·■>
werden nur zwei Sireilenbreiten verwendet (P = 1), und ein breiter Streifen oder Abstand ist doppelt so
aroß wie ein schmaler.
+ D
2(y+
2(y | ; + | 2) |
4(v | 4 | 1) |
4(v | Y | 1) |
+ | ||
4 0' | )' | D |
40'+ 1)
Untersatzformeln für einen Code P = 1 (Tn - ι nicht
im Maßstab zur Referenzbreite).
Für Referenzintervall bei j = 1 mit Geschwindigkeitskorrektur
erster Ordnung:
Daten- (oder Steuer-)
Suchsegment
Suchsegment
(3
3, r„,.,= r„_
15
Für Refeienzintervall beiy = 2 mit Geschwindigkeitskorrektur erster Ordnung:
Daten- (oder Steuer-)
Suchsegment
Suchsegment
V2 · Δ Vund somit Db = V ■ T, Δ W= - T0 (Δ Vl V). Dieser
letzte Audruck beschreibt die Abweichung in der vorhergesagten Erscheinungszeit der nächsten gewünschten
Vorhersage für den Übergang im Signalpegel proportional zur Nominalzeit To mit Prozent der
Geschwindigkeitsabweichung über den Intervall, das in dem vorhergehenden Intervall von einem Übergang
zum anderen, definiert als T„.\, festgelegt wurde. Die
Nominalzeit 7J ist hier das Intervall zwischen den Übergängen unmittelbar vor dem vorhergesagten
Übergangsintervall.
Eine allgemeine Form für eine Gleichung zur Vorhersage der Intervallänge Tn die äquivalent der
Vorhersage des Zeitpunktes ist, an dem ein gegebener Impuls auftreten sollte, ist wie folgt gegeben: Tn= T„.\
(1-ε) worin
C=Il-
für den Bereich O < A < 1.
Die Ableitung des Wertes für eist wie folgt: Wie oben
gezeigt wurde, ist
AV _
— —--ATZT0,
Für Refercnzintervall bei j = 3 mit Geschwindigkeitskorrektur erster Ordnung:
Daten- (oder Steuer-)
Suchsegment
Suchsegment
uT=(c TIc
0 + (0 T/r V)U V.
30
Die Formeln der Tabelle IV sind von den Grundformeln abgeleitet, um die Benutzung veränderlicher
Referenzlängen zu gestatten, d. h, eine Referenzlänge, die bei dem Intervall ;=1, 2 und 3 usw. festgelegt ist,
kann als Basis zur Vorhersage der nächsten gültigen Pulslagen benutzt werden. Die Formel muß aber diese
verschiedenen Referenzlängen benutzen.
In einem normalen Streifencode eines gegebenen Typs ist die Breite eines Abschnittes normalerweise
definiert als der Abstand zwischen zwei Übergängen oder Signalen. In den früheren Figuren wurde sie als
Breite Sbezeichnet, für nachstehende Ableitung wird sie jedoch Breite Do genannt.
Wenn ein Abtaster, wie z. B. ein Magnetlesekopf oder ein optischer Abtastkopf, über Streifencode läuft, wird
die Strecke für eine Abstandsbreite Do überstrichen in
einer Zeit, die gleich ist Do dividiert durch die Geschwindigkeit des Abtastkopfes = Do/ V. Nimmt man
die Gesamtdifferenz dieses Ausdruckes für die Zeit
Wenn kein Jitter oder unkontrollierte Abweichung im Kantenabstand der codierten Daten vorliegt, ist
iCT'r D11) ■ d /J1, = 0
und daher d T= — DJ V-. weil T= DnI V. Durch Einsetzen
dieses Ausdrucke? für PT in Bezug auf PV in der, vorhergehenden Ausdruck ergibt sich Δ Γ— — Do!
5)
fjfl Δ T ist jedoch die Zeit gemessen zwischen den beiden
vorhergehenden Übergangsintervallen. Angenommen, es wird ein festes Referenzintervall benutzt, das zufällig
gleich dem möglichen kleinsten Intervall im Code 7™0 ist,
so kann sich ergeben
-ATZT0 =
Γ.-
A,
n-l
worin A eine feste Zahl im Intervall 0 < A <
1 ist. Mit anderen Worten
ATZT0=Il-
A.
Da ε gleich ATIT0 ist, ist der Wert für ε wie oben
angegeben. Die Werte von Tn-, und T„-2 müßten zum
tatsächlich verwendeten Referenzintervall in Beziehung gesetzt werden, wenn das Referenzintervall nicht wie in
diesem Sonderfall gleich T0 ist. Der obige /\usdruck für
die verallgemeinerte Form Tn= T„-\ (1 —e) worin ε den
durch den gerade abgeleiteten Ausdruck gegebenen Wert einnimmt, kann in Ausdrücken verwendet werden,
die zur Vorhersage der möglichen Impulslagen in einem gegebenen Codeformat abgeleitet wurden, basierend
auf i,j und γ, indem man einfach den Ausdruck für Tn in
die vorhergesagten Impulslageformeln einsetzt und die Intervalle Tn-1, Tn-2 usw. mit dem Referenzmaßstabfaktor
R multipliziert. Das Ergebnis ist in der Tabelle 1 unter der Geschwindigkeitskorrekturformel zweiter
Ordnung aufgeführt. Der Wert von A in diesem Ausdruck muß im Bereich von 0
< A < 1 liegen und ist als Beschleunigungsfaktor definiert. Die Wahl des nominellen
Wertes für den Buchstaben A wird bestimmt durch spezifische Laser- oder Abiasteranwendungen, in den
Versuchen wurde jedoch festgestellt, daß ein Wert von 0,68 für A ein guter Nominalwert für handgeführte
Laser ist. Bei Anwendungen mit konstanter oder fast konstanter Geschwindigkeit wie etwa maschinellen
Abtastern kann der Wert von A auf 0 gesetzt werden. Für andere Anwendungen wie Abschnittslaser, wo
mäßige Beschleunigungen auftreten, kann man einen Wert A = 1 verwenden.
Wie schon früher erwähnt wurde, besteht die Möglichkeit, daß in einem allgemeinen Code mit zwei
oder mehr Elementenbreiten eine Zveideutigkeit -, auftritt, sobald eine Streifen-Abstandskombination eine
Gesamtintervallänge erreicht, die eine, andere Kombination
ebenfalls erzeugen kann, da es dann fraglich wird, welches Muster tatsächlich vorliegt Die in Fig. 14
gezeigte Situation gilt allgemein für ein Codesystem mit zwei Breitenslementen, für das die Zah! der Streifenbreitenelemente,
die sich von der Mindestbreite unterscheiden, gleich 1 ist, mit anderen Worten P= 1 wie
früher definiert In Fig. 14 hat das Element aus Codestreifen oder Abstand die Breite S+yS. In den
Zeilen a bis d in Fig 14 sind die möglichen gültigen Kombinationen aus zwei Elementen für die Gesamtlänge
aus Steuer- oder Datenintervallen gezeigt, die existieren können. Für /=1 und /=3 existiert nur eine
Kombination, die die Intervallänge erzeugen kann. Für /=2 gibt es jedoch zwei verschiedene gültige Kombinationen,
die dieselbe Gesamtlänge erreichen können, wie sie in den Zeilen b und c gezeigt ist. Mißt der Code der
absoluten Breite der Streifenelemente Bedeutung zu, dann taucht eine Frage nach dem Codemuster auf, d. h.,
die Zeilen b und c erscheinen identisch, wenn alles, was man sieht, die Gesamtintervallänge an der Position /= 2
ist. Wie nachfolgend gezeigt wird, gibt es einfache Regeln, die Zweideutigkeit zu lösen.
Es sei angenommen, daß γ in F i g. 14 gleich 1 ist. da jo
wir dann S und S+yS in ganzen Einheiten von 5 und
nicht in Brüchen ausdrücken können. Wenn γ gleich 1 ist
und S gleich eine Einheit, dann ist S+yS— zwei
Längeneinheiten. Der einzige gültige Streifen oder Abstand, der vor einem Streifen oder Abstand stehen
kann, ist daher durch Definition 5 oder S+yS. Das Raumintervall zwischen Steuerimpulsen oder Datenimpulsen,
das vor dem nächsten verschachtelten Daten- und Steuerimpulsintervall stehen kann, wäre daher
folgendes:
Für ein Datenpulsintervall von drei Einheiten kann das Muster in Linie b nur ein Gesamtintervall von zwei
oder drei Einheiten im Steuerimpulsintervall haben, das vor ihm verschachtelt steht. Das Steuerimpulsintervall
von vier Einheiten ist nicht mit einem Datenimpulsintervall
aus einer Einheit (zwei Einheiten) möglich, wie es in Linie b gezeigt ist und in Linie e klar gemacht wird. Das
Steuerimpulsintervall mit vier Einheiten ist mit einem Datenimpulsintervall eine Einheit — zwei Einheiten
nicht möglich, da der vorhergehende Streifen oder der Abstand, die das Steuerimpulsintervall bilden, nur eine
oder zwei Einheiten breit sein kann. Wenn der vorhergehende Streifen oder Abstand ein oder zwei
Einheiten breit ist, kann das resultierende Steuerimpulsintervall, wie in Linie e dargestellt, nur eine Gecamtlänge
von zwei oder drei Einheiten, aber nicht von vier Einheiten aufweisen. Wenn dss Steuerimpulsintervall
zufällig zwei Einheiten beträgt, kann es nur durch einen vorhergehenden Streifen oder Abstand von einer
Einheit erzeugt sein. Dieser Streifen oder Abstand kann w>
nur Teil des vorhergehenden Datenimpulsintervalles sein, das als eine Folge aus 2-1 oder 1-1 Einheiten
bestehen kann. Ein Steuerimpulsintervall gleich 2 ist nicht zweideutig in Verbindung mit einem anderen
Steuerimpulsintervall, nur auf eine Art erzeugt werden tv> kann. Die Kombination einer Zwei im Steuerimpulsintervall
und einer Drei an der Position /=2 im DatentHilsinterval! bezeichnet nach der Darstellung in
Linie b und e eindeutig das Muster im Datenpulsintervall sowie in Linie b als ein Muster 1-2, und nicht als
Muster 2-1, in der Gesamtlänge, da das vorhergehende Steuerimpulsintervall es von allen anderen trennt
Wenn das Steuerimpulsintervall drei Einheiten hat, kann es nur erzeugt werden durch ein Datenimpulsintervall
1-2 oder 2-2 vor einem Datenimpulsintervall 1-2, Linie e. Wenn eine dieser beiden Formen im
Steuerimpulsintervall auftritt, bezeichnen sie eindeutig das Datenimpulsintervall 1 -3, wie es in linie b gezeigt ist
und nicht das in Linie c gezeigte Intervall 3-1, da beide Kombinationen in dem Datenimpulsintervall, das dem in
Frage kommenden Datenimpulsintervall vorausgeht, nur in einer Art auftreten können, wenn ihnen ein
Datenimpulsintervall 1-2 folgt. Sie bezeichnen eindeutig das Datenimpulsintervall 1-2 in Linie b und nicht das
Intervall 2-1 in Linie c, da beim Auftreten eines der
Intervalle 1-2 oder 2-2 ein Steuerintervall in der Form des Codesymboles in Zeile c die Länge von vier
Einheiten hätte und sich daher leicht von einem SteuerimpuisintervaH mit drei Einheiten unterscheiden
läßt, das auftreten würde, wenn derselbe Codestreifen vor das Muster in Linie b geschrieben würde.
In Zeile /"ist die andere zweideutige Form der Länge
von drei Einheiten im Datenimpulsintervaü gezeigt Das gültige Steuerimpulsintervall, das vor einem solchen
Muster stehen kann, kann nur drei oder vier Einheiter, lang sein, da ein Steuerimpulsintervall von zwei
Einheiten nicht möglich ist auch mit einem Streifen oder einem Abstand der Mindestbreite, die vor dem
Datenimpulsintervall stehen können, wo der vorhergehende
Streifen oder Abstand nur ein oder zwei Einheiten breit sein kann. Wenn das Steuerimpulsintervall
gerade vier Einheiten lang ist, wie es durch ein vorhergehendes Symbolmuster 1-2 oder 2-2 erzeugt
würde, ergibt sich keine Zweideutigkeit, da kein anderes Steuerimpulsintervall von vier Einheiten Länge in
Kombination mit einem der zweideutigen Muster in b und c der F i g. 14 auftritt.
Wenn jedoch das Steuerimpulsintervall drei Einheiten lang ist, kann es nur durch ein vorhergehendes
Streifensymbol 2-1 oder 1-1 erzeugt sein. Wenn eine dieser Folgen auftritt, bezeichnen sie eindeutig das
Datenimpulsintervall 2-1 in Linie c und nicht die Form 1-2 in Linie b. Der Grund liegt darin, daß du*
Kombination 2-1 oder 1-1, die im vorhergehender. Symbol stehen muß, um ein Steuerimpulsintervall von
drei Einheiten Breite für das in /gezeigte Datenimpulsintervall zu erzeugen. Bei Verwendung in dem
Datenimpulsintervall vor dem in Linie e gezeigten Intervall ein Steuerimpulsintervall von zwei Einheiten
erzeugen würde, das nicht zweideutig ist.
Die Matrix in Fig. 13B ist für einen allgemeinen Zwei-Breiten-Code gezeichnet und die Zustande A und
B sind entsprechend beschriftet, so daß die Zweideutigkeit bei Auftreten eines Datenimpulsintervalles von drei
Einheiten gelöst werden kann.
Ähnliche Regeln können für ein Elementcodesystem mit drei verschiedenen Breiten (P= 2) oder mehr
aufgestellt werden. Das allgemeine Verfahren besteht darin, alle möglichen Streifen- und Abstandskombinationen
bei erlaubten Wiederholungen herauszuziehen, die nach der bereits abgeleiteten Forme! 2 P+1
definiert sind. Die eventuellen zweideutigen Kombinationen werden dann identifiziert als aus gleichen
Datenimpulsintervallängen resultierend. Die Zweideutigkeiten können gelöst werden, indem man die
vorhergehenden Datenmuster prüft, wie es oben für das
B, =
K/-1)
45
Der oben abgeleitete Ausdruck liefert einen Längenwert für jede Position eines günstigen Pulsüberganges
gleicher Polarität und sagt ein Segment oder einen Abschnitt mit der halben Breite Tn voraus. Diese
Koeffizienten berücksichtigen jedoch nur einen gegebenen Intervallausschnitt mit dem .AWert 1, 2, 3 usw.,
wobei angenommen wird, daß das Grundintervall T0 als
Basis für die Vorhersage der Lage künftiger Pulse benutzt wird. Um die Ausdrücke weiter zu verallgemeinern,
muß berücksichtigt werden, daß ein Intervall, auf dem Voraussagen basieren, nicht ein kleinstes Intervall
To ist, sondern irgendein Intervall, beispielsweise das
letzte Intervall, das man während der Codeverarbeitung gelesen hat ->o
Das als eine derartige Basis oder Referenz benutzte intervall wird y-tes Intervall genannt, um es vom /-ten
intervall zu unterscheiden, »j« nimmt daher nur Werte
1, 2, 3 usw. bis zum Höchstwert von 2 P+ i an genauso
wie i, j wird jedoch als Indexzahl des Intervalles aller möglicher Intervalle definiert, in denen der frühere
Impuls gefunden wurde. »/κ stellt daher eine Indexzahl
für das vorhergehende Intervall dar, das bei der Verarbeitung des Codes auftrat, der jetzt als Basisintervall
zur Vorhersage neuer Werte von Intervallstellen benutzt wird.
Wenn das j-te Intervall größer ist als das kleinste
Intervall To, muß der Ausdruck für
auf das kleinste Referenzintervall zurückgerechnet werden, indem man die echte Intervallänge, die jetzt als
Referenz benutzt wird, mit einem Referenzmaßstabfak-
allgemeine Codesystem mit zwei Breitenelementen gezeigt wurde.
Die allgemeine Länge eines lntervailes aus zwei kombinierten Streifen- und Abstandsbreiten ist, wie
abgeleitet in Verbindung mit F i g. 9,
T„=2S+[in-i]-yS.
Die Größe 2 S wurde früher schon als kleinste Kombination von zwei Breiten angeführt und ist gleich
To. Die allgemeine Länge eines vorhergesagten ι ο lntervailes kann daher jetzt geschrieben werden als
7V= F0[B,]
wobei Bi ein Multiplikationsfaktor ist, der dem Wert /'
der Indexzahl eines Längenintervalles abhängt, bei dem ein vorhergesagter Impuls möglicherweise auftritt,
wobei /gewählt wird aus dem Bereich 1 < /< 2 P+1.
Wenn um eine vorhergesagte Stelle Tn, ein Ausschnitt
aufgebaut werden soll, ist die allgemeine Form eines Ausdruckes zur Vorhersage von Anfangs- und Endpunkt
dieses Suchausschnittes gegeben durch 7"„,=[ß,±Oi]T0. Die Linie h in Fig. 12 zeigt eine
Kombination von Streifen- und Abstandselementen mit einer Breite von S+yS. Die Gesamtlänge des durch die
beiden Streifen- und Abstandselemente eingeschlosse- 2> nen lntervailes beträgt daher To ■ B, und das wiederum
ist, wie oben entwickelt, gleich
2 S+(Zn-1)5.
Nun ist aber nach Definition T0=2 S, und daher findet jo
man beim Einsetzen des Wertes 2 S für To in die obige Formel
tor Rj-, multipliziert, der definiert ist als gleich mit den
echten Referenzintervall T dividiert durch To, wobei da echte als Referenzintervall benutzte Intervall gegebei
ist in allgemeiner Form durch den Ausdruck
und wobei j die Indexzahl des lntervailes ist, in dem ei Impuls gefunden wurde, der die Länge des Referenz
intervalles definierte. Daher ist:
«1/11 —
25
_ 2+(J-I)Y _ Trl1
2 T0
und j ist die Nummer des Intervalles, in dem der echt
Referenzimpuls gefunden wird, der jetzt zur Definitioi der Länge des Referenzintervalles ausgewählt wird a
Basis für neuvorhergesagte Pulslagen.
Wenn ein konstantes Referenzintervall benutzt wird das sich von dem kleinsten Intervall To unterscheidet
dann ist:
[B±a\.
Das ist ein Beispiel dafür, wie das Referenzintervall zun kleinsten Grundintervall T0 in Beziehung gesetzt wird
da durch die Definition der Referenzmaßstabfakto
-— ist, wobei eine andere Referenz als das kleinst
Intervall T0 benutzt wird. Andererseits kann der Aus
druck auch wie folgt geschrieben werden:
Tn = T0[B1J.. + a.X
worin B und a in richtige Beziehung gesetzt werde:
durch Teilen der vorher für B und α entwickelten Aus drücke durch den Faktor R. Das ergibt:
(2-γ)+Jy
und für
a, 0 < OjY <
-γ)+Jy]
Diese Änderungen ergeben die in der obigen Tabelle Π
aufgeführten Formeln für einen Zwei-Breiten-Code
tntsprechend obiger Ableitung Kann eine Re.'erenz
breite oder -zeii Tr bekanntlich aurch das kk-nst
Intervall T0 und einen Faktor R ausgedrückt werden
so daß
Tr
To
Wie oben abgeleitet wurde, ist der Faktor R gleich
Wie oben abgeleitet wurde, ist der Faktor R gleich
60 worin γ wie oben definiert ist und j die Indexnumme
des Ausschnittes ist, der das Intervall der gewählte)
Referenzbreite definiert, wobei angenommen wird, dai
eines der normalerweise auftretenden möglichen gülti gen Intervalle als Referenzintervall gewählt wire
Außerdem kann die Lage T1 möglicher gültiger Impulse
bekanntlich vorhergesagt werden als
T1 = T11
Die Breite des Intervalles zwischen zwei Impulsen mit ähnlicher Polarität Tn wurde bereits definiert als
Funktion
und (Z1Jy) wurde bereits oben definiert als
V
V
aUv) *
-Y +Jy)
und weiter wurde definiert:
O(Jy)
2-y -rjy
Es ist außerdem bekannt, daß die Breite eines Suchabschnittes immer definiert ist als 2* Tn oder
(2 Toj.r) (Kj.r). Durch Einsetzen der Werte für ocj.r und
Vereinfachung erhält man daher «= — für alle
möglichen Fälle eines mit zwei Breiten aufgebauten Codes. In Fig. 12 sind diese Beziehungen weiter
definiert.
Die oberste Linie in Fig. 12 zeigt das kleinste Intervall 5 zwischen zwei benachbarten verschiedenen
Impulsübergärgen. Es bildet ein Codestreifenelement oder Abstandselement für einen gegebenen Code. Zwei
derartige Elemente nebeneinandergesetzt bilden das kleinste Zeitintervall Γο zwischen zwei gleichen Impulsen,
und dieses ist definiert als das kleinste Obergangsintervall im Codesatz.
Das Streifenelement der nächsten Größe ist S+yS,
Λ W
wobei γ = und Δ W der Betrag ist, um den das
wobei γ = und Δ W der Betrag ist, um den das
nächstgrößere Codestreifenelement die Größe des kleinsten Codestreifenelements übersteigt Im gezeigten
Fall ist ^- =1 oder AW=S. Daher ist )>=1. Im
unteren Teil der Fig. 12 sind verschiedene Codeelemente
gezeigt, die aus den Codestreifen S und yS
aufgebaut werden können. Drei mögliche Intervalle oder Impulsübergänge können geschaffen werden. Das
ist gegeben durch die Formel /=2 P+\, wobei P die Zahl der Streifenelemente im Code ist, die sich von dem
Minimum unterscheidet in diesem Falle ist bei F= ί die
Anzahl von erforderlichen Ausschnitten oder die Anzahl möglicher gültiger Pulspositionen gleich 3.
Aus Fig. 12 ist zu ersehen, daß das Intervall des
Abstandes zwischen dem kleinsten Codeintervall 7J und
dem nächstgrößeren Codeintervall 5 plus einem Codestreifen aus S+yS ein Betrag yS ist Die Breite
eines Suchausschnittes, der einen m der Position /= 1
oder /=2 oder /=3 auftretenden Impuls sucht, ist lot Tn.
Es wurde gezeigt, daß ac immer gleichest und daher
kann die Länge eines Intervalles in Alphaeinheiten gemessen werden. Die Suchtorbreite ist gleich—7i oder
Tn= zwei Suchtorbreiten dividiert durch γ. Für den hier
gezeigten FaH wie j>=l ist, ist Tn gleich zwei
Suchtorbreiten oder vier Alphaeinheiten. Das gilt ungeachtet des Wertes von γ und daher auch für alle
möglichen Konstruktionen eines Zwei-Breiten-Streifencodes. Da in Fig. 12 für alle Fälle Tn =4« ist, liegt der
Anfang des ersten Tores zur Isolierung des möglicherweise an der Position /= 1 auftretenden Impulses bei
3Λ Tn oder 3«. Das Ende des ersten Suchtores und der
Anfang des zweiten Suchtores, die miteinander zusammenhängen, liegt bei der Position 5A Tn oder 5«.
ίο Das Ende des zweiten Such tores und der Anfang des
dritten Suchtores liegt bei 7U Tn oder 7ot, und das Ende
des dritten Suchtores und der Anfang des vierten Suchtores, fall dieses gebraucht wird, usw. liegt bei VA Tn
oder 9a. Das gilt für alle Konstruktionen eines Zwei-Breiten-Streifencodes. Dieses Prinzip läßt sich
leicht auf Codes mit mehr als zwei verschiedenen Breiten ausdehnen, was aus der Tatsache hervorgeht,
daß Tn immer gleich 4« ist, wenn λ immer — ist.
Die in den F i g. 10A—C gezeigte logische Schaltung
stellt eine Ausführung des vorliegenden Verfahrens dar und wurde für den Betrieb mit einem Zwei-Breiten-Streifencode
ausgelegt, d. h. für einen Code, für den P=I ist. Sie erlaubt eine Geschwindigkeitskorrektur
erster Ordnung. Änderungen zur Geschwindigkeitskorrektur zweiter Ordnung für hohe Beschleunigung
werden später beschrieben.
Da in einem Geschwindigkeitskorrektursystem erster Ordnung das vorhergehende Intervall als Referenzintervall
für die nächste Vorhersage benutzt wird, muß entweder die vorgenommene Zeitmessung zur Basisreferenz
in Beziehung gesetzt werden, oder es muß ein anderer Algorithmus gewählt werden, um die gültigen
Pulslagen vorherzusagen. Die verschiedenen auswählbaren Algorithmen sind in Tabelle IV gezeigt Sie sind
Untersätze der gegebenen allgemeinen Ausdrücke, spezifische Werte für den Ausdruck Bftj,y) werden
jedoch anstelle des allgemeinen Ausdruckes benutzt Der spezifische Wert von B(ij.y) wird zur benutzten
Referenzbreite (dem letzten gefundenen Intervall). Die resultierenden Algorithmen für einen Code, in dem γ = 1
ist ein 2 :1-Breitenverhältniscode wie S2S, sind in der
obigen Tabelle IV gezeigt Der entsprechende Algorithmus wurde gewühlt abhängig von dem Intervall, in dem
der letzte Datenpuls gefunden wurde. Das würde Werte für j ergeben. E>ie Werte für / und γ werden gewählt
wenn γ nach dem verwendeten Code bestimmt ist weil es später noch genauer beschrieben wird. Es sei jedoch
einfacher, die allgemeinen Algorithmen der Tabelle I zu benutzen als neue Algorithmen für jede Vorhersage von
Suchsegmentstellen zu wählen. Dazu müssen die gemessenen Intervalle zuerst so in Beziehung gesetzt
werden, daß Bf1Jx) in der allgemeinen Form belassen
werden kann.
Das in den F i g. 10A—C gezeigte Schema wurde so
ausgelegt, daß die einzig gültigen Intervallängen vorbewertet werden, so daß bei Auftreten eines
Impulses innerhalb seines vorhergesagten Abschnittes ein bereits in dem richtigen Maßstab gesetztes
Längenintervall als Referenz für die folgende Impulspositionsvorhersage gewählt werden kann.
Die Zeit- oder Abstandsmessung von einem gegebenen Punkt bis zu einer vorhergesagten Stelle oder dem
Auftreten eines Impulses erfolgt durch Zählen der Taktimpulse von einer Takteinheit 1. Ein Fühler- und
Verstärkereinheit 2 ist in Fig. 1OB nur in Blockform
gezeigt Sie liefert Impulse auf dem Kanal X für die Vorderkante und dem Kanal Yfür die Hinterkante von
Das Intervall von einer Vorderkante zur nächsten zwischen zwei Impulsen auf dem Kanal X soll ein
Datenintervall definieren. Dieses Intervall umspannt einen Streifen und einen Abstand, die aus einem
Codeelementensatz ausgewählt wurden, in dem zwei mögliche Streifen- oder Abstandsbreiten zur Verfügung
stehen.
Die Impulse auf dem Kanal Ksind die Intervallimpulse von einer Hinterkante zur anderen und werden mit
den positiv verlaufenden Impulsen auf dem A"-Kanal
verschachtelt. Die Impulse auf dem y-Kanal erhalten willkürlich eine Bedeutung als Steuerimpulse zugeordnet.
Die F i g. 10A—C zeigen eine Schaltung zur Verarbeitung nur der Impulse, die vom ^f-Kanal kommen, wo der
Datenimpuls liegt. Zur Verarbeitung der Steuerimpulse vom y-Kanal wird eine identische Schaltung verwendet.
Wie später erklärt wird, kann ein anderes Decodierverfahren angewandt werden, welches nur die Λ-Schaltung
oder nur die V-Schaltung braucht, was zu wesentlichen
Einsparungen führt.
Wie schon erklärt wurde, ist es bequemer, Datenoder Steuerintervalle oder Segmente in Alphaeinheiten
zu zählen als die einzelnen mit einer Frequenz /o von der Takteinheit 1 kommenden Taktimpulse zu zählen. Die
Anzahl der gezählten Impulse während des Intervalles zwischen zwei vom Kanal X kommenden Impulse im
Abfühlerverstärker 2 ist ein digitales Maß der analogen
Zeit oder Strecke zwischen den beiden positiv verlaufenden Impulsen auf dem X-Kanal.
Im allgemeinen tritt die Anzahl der Impulse No mit
der Grundtaktfrequenz /o während des Zeitintervalles To auf und ist No=/i>
7J. Die Frequenz /b wird so gewählt,
daß die Anzahl von in einem Mindestintervall T0, das im
Code auftritt, enthaltenen Impulse in der Größenordnung von 100 Impulsen pro Intervall liegt So ist eine
Auflösung von einem Teil in 100 bei der Lokalisierung eines gegebenen Impulses auf dem Kanal möglich.
Ein Intervall 7} wird bei einer Frequenz k
Nn > 100 Impulse umfassen.
Wenn Impulse auf dem Kanal X in einem größeren Abstand als dem Referenzabstand 7} auftreten, dann ist
die über dem Intervall auftretende Zahl N>Nj. Diese
Möglichkeit führt zu einiger Komplikation, da man die Zahlen N, für jede mögliche Impulslage vorhersagen
und dann Taktimpulse mit der Frequenz /o zählen müßte, bis eine Zahl erreicht ist, die dicht an der für die
verhergesagte Position vorhergesagten Zahl liegt. Dann würde ein Daten- oder Steuersuchabschnitt geöffnet,
um einen an dieser Stelle auftretenden Impuls zuzulassen, während weiter gezählt wird. Das ist
mühsam.
Eine weniger kostspielige und einfachere Lösung besteht darin, mehrere Zähler mit unterschiedlichen
Geschwindigkeiten so zu betreiben, daß an jeder angenommenen Impulsposition ein Zähler die Zahl Ny
erreicht hat, die durch Zählen der Impulse mit der
Frequenz ig für ein Zeitintervall 7}erreicht würde, wobei
Tj gleich dem Referenzintervall ist Dadurch wird eine Vorbewertung der Intervalle erreicht, die zwischen
Impulsen vom Fühler 2 auf dem ΛΓ-Kanal auftreten.
F i g. 11 zeigt die Prinzipien.
In Fig. 11 ist ein beliebiger Streifencode mit einem
kleinsten Obergangsintervall 5 und einem P-Wert von 1 gezeigt, dh, es gibt ein Intervall mit einer anderen
Breite als der kleinsten Breite. Das kleinste Intervall zwischen zwei gleichen Impulsen ist die F i g. 11 gleich
Tj, also
2 S (oder 7o), wie oben beschrieben wurde, und die
Breite des nächsten davon verschiedenen Intervailes ist S+yS. Die resultierenden Kombinationen von 5 und ys
sind in den drei obersten Linien der F i g. 11 gezeigt und
das Ergebnis in der Pulspositionslage an drei verschiedenen Stellen, die durch die Suchtore um die
Indexpositionen /=1, /=2 und /=3 isoliert werden können, sind in Linie c/der F i g. 11 gezeigt.
Die abgelaufenen Zeiten vom ersten Startimpuls bis
ίο zu den Lagen eines möglichen gültigen Impulses sind
bezeichnet 7/_i, T,-2 und 7}_3. In der Linie e der
F i g. 11 ist eine Reihe beliebiger Frequenzimpulse gezeigt, die mit einer Taktrate k auftreten, wobei eine
bestimmte Anzahl von Impulsen Nj innerhalb einer
Länge eines Zeitintervalles T1 erfaßt wird, das gleich ist
dem Referenzintervall.
Das Referenzintervall 7} braucht keine bestimmte Beziehung zu den anderen Intervallen im Code zu
haben, es ist jedoch bequemer, ein Referenzintervall 7}
zu wählen, das gleich ist einer der möglichen gültigen
Erscheinungen innerhalb des Codesystems. Nj sollte nach Möglichkeit 100 oder mehr Impulse betragen, so
daß die Auflösung der Lage eines auftretenden Impulses im Referenzintervall Tj ein Teil von 100 oder kleiner ist.
Die Anzahl von Impulsen Nj kann definiert werden als die Frequenz einer Referenz f, multipliziert mit dem
Referenzintervall Tj
Andere Frequenzen sollen ebenfalls für das mögliche Auftreten in den Intervallen Ty gewählt werden, wobei i,
y'=l, 2, 3 ist, so daß bei Auftreten eines Impulses an seinen gültigen Lagen eine Zahl gleich Ny durch einen
Zähler erzeugt wird, der mit einer Frequenz /Ί, h, h zählt,
bis eine Impulserscheinung festgestellt wurde. Die Frequenz /ist natürlich niedriger als die Frequenz fu da
das Zeitintervall 7} länger ist
Die Zähler 3, 4 und 5 in Fig. 1OA zählen nur jeden vierten, sechsten oder achten Impuls, und so kann die
Kapazität der Zähler und auch der ganzen anderen Logikschaltung kleiner sein als sie zum Zählen bei der
Frequenz /b erforderlich wäre. Da die Zähler außerdem
in »bewerteten Raten« zählen und man dieselbe Zahl von Zählimpulsen Ny erhält wenn die möglichen
Impulslagen erreicht werden, ist der Inhalt jedes Zählers 3, 4 oder 5 ein Maß eines Intervalles Tn ausgedrückt in
Eine Geschwindigkeitskorrektur erster Ordnung ist somit in das in den F i g. 10A— IOC beschriebene System
eingebaut da der Inhalt der Zähler kontinuierlich eine bewertete Darstellung der tatsächlichen Längen eines
so auftretenden Intervalles überwacht Die Benutzung des Inhaltes des entsprechenden Zählers nach der Pulsposition, in der ein Puls tatsächlich gefunden wird, führt zu
einer bewerteten Messung von Tn ausgedrückt in Alphaeinheiten, zur Verwendung in einer Vorhersage
der nächstfolgenden drei möglichen Pulslagen. Die Schaltung in Fi g. 10A—C benutzt solch ein Verfahren.
Aus den Fig. 10A—C ist zu entnehmen, daß der Taktgenerator 1 Ausgangsimpulse mit einer Frequenz
/o,
/o
/o
und
Jl
für eine Decodierschaltung für zwei Streifenbreiten erzeugt Diese Ausgangsfrequenzen wurden gewählt
weil sie zur Erzeugung von Impulsen an jeder Position
gewählt werden, die eine Alphaeinheit definiert, und mit
einer Frequenz, daß die Zahl Ny in einem der Zähler in
jeder möglichen Pulsposition erreicht wird. Der
Bequemlichkeit halber wurde γ in F i g. 10 mit dem Wert
1 gewählt. Die Ausgangsfrequenzen können allgemein definiert werden mit
■ o,
wobei a = — ist.
4
4
Die von den verschiedenen Ausgängen im Taktgenerator 1 kommenden Impulse stellen daher Impulse dar,
die in Schritten von einer Alphaeinheit eines gegebenen Intervalles Tn auftreten. Diese Alphaeinheiten werden in
separaten Zählern 3, 4 und 5 gezählt, deren Eingänge durch die UND-Glieder 6, 7 bzw. 8 gesteuert werden,
und diese werden wiederum durch ein Startsignal gesteuert. Die Zahl in jedem der Zähler 3,4 oder 5 ist zu
einem gegebenen Zettpunkt gleich einem Faktor der Grundfrequenz, die nach dem Maßstabfaktor R gemäß
der Darstellung neben dem Taktgeber 1 in Relation gesetzt oder bewertet wurde.
Beim Auftreten der ersten möglichen Pulsposition ist die im Zähler 3 enthaltene Zahl gleich einer
Alphaeinheit, die gebraucht wird, um ein Längenintervall Tn exakt zu messen. Die Zahlen in den Zählern 4 und
5 sind kleiner, da diese Zähler niedrigere Taktfrequenzen zählen. Wenn ein konstantes Referenzmaß benutzt
und nicht mit der Geschwindigkeitskorrektur erster Ordnung bearbeitet werden soll, werden die Zähler 4
und 5 nicht gebraucht, und Zähler 3 würde T1 enthalten,
d. h. die feste Referenzzeit. Wenn die nächste mögliche Pulsposition erreicht ist, hat der Zähler 4 dieselbe Zahl
Nj erreicht das Abstandsintervall Tn ist jedoch gleich
dem zweiten möglichen Intervall definiert mit y'= 2 usw. für nachfolgende mögliche Impulspositionen.
Zum Start des in F i g. 1OA gezeigten Ausführungsbeispieles muß ein Streifencode mit einem Vorlaufzeichen
verarbeitet werden, das in sich zwischen zwei gleichen Impulsen ein Referenzzeitintervall enthält. Wenn
andererseits mit einer festen Referenz gearbeitet wird, muß der erste Impuls im Strom abgefühlt werden. Für
ein Vorlaufsystem erfolgt das durch Schreiben eines Vorlaufzeichens an den Anfang einer jeden zu
verarbeitenden Codereihe. Wenn dann der erste Impuls von der Codereihe auftritt (welches der Anfang des
Vorlaufzeichens ist), kann die Vorlaufleitverriegelung 9 wie dargestellt erregt werden und das Startsignal kann
gegeben werden.
Die Zähler 3, 4 und 5 beginnen somit bei verschiedenen Taktfrequenzen in Alphaeinheiten zu
zählen und messen das Vorlaufzeichenintervall genau ab. Wenn der dem Ende des Vorlaufzeichens entsprechende
Impuis auftritt, d.h. der impuls mit derselben
Polarität der das Vorlaufzeichen anfängt wird der X-Impuls an verschiedene Punkte angelegt.
Der A--ImPIiIs geht zuerst über eine Verzögerungseinheit
10 und erzeugt das Rückstellsignal R3, das die
Vorlaufleitverriegelung 9 zurückstellt und die Messung des Vorlaufzeichenintervalles nach der durch die
Verzögenmgseinheit 10 erzeugten Verzögerung been
det Die in einem der Zähler 3,4 oder 5 enthaltene Zahl
wird über das UND-Glied 11,12 bzw. 13 ausgegeben, als
erstes Referenzintervall aus dem VorlaufzeichenintervaD.
Die Auswahl, welcher Zählerinhalt als ReferenzintervaD zu benutzen ist wird bestimmt durch das
Vorlaufzeichen oder die feste Referenz. Die Auswahl ist
beliebig. In Fig. 1OA wird eine Referenz aus zwei Zeitabschnitten, oder ein Mindestübergangsintervall T0,
gewählt durch das ODER-Glied 14, das durch die Vorlaufleitverriegelung 9 gesteuert wird. Das UND-Glied
11 wird daher betätigt und der Inhalt des Zählers 3
r) auf N-Leitungen parallel durch das ODER-Glied 15 in
das Register 16 ausgegeben, das vorher leer war. Die jetzt im Register 16 stehende Zahl ist in Alphaeinheiten
ausgedrückt und stellt die Länge des Vorlaufsymbolintervalles
dar. Das Register 16 hält die Zahl, bis ein
ίο Rückstellsignal R angelegt wird.
Beim Auftreten des nächsten Impulses mit der Frequenz /o wird der Inhalt des Registers 16 ausgegeben
durch die UND-Glieder 17 auf N-Leitungen parallel an einen Zähler 18. Der Zähler 18 zählt seinen Inhalt mit
der Frequenz k herunter. Er wird gesteuert durch das UND-Glied 19, das durch den Taktimpuls, Startsignal
und den vom inverter 2ί invertierten Ausgang vom
UND-Glied 20 beeinflußt wird.
Die Taktfrequenz ist wenigstens viermal höher als die Anfangszählfrequenz im Zähler 3 und daher wird der
Inhalt des Zählers 18 auf 0 heruntergezählt genau in der Zeit, die als eine Alphaeinheit definiert ist. In diesem Fall
ist es T0 ■ — für den Fall, wo y= 1 ist. Wenn der Zähler
4
18 auf eine Eins in der wertniedersten Bitposition heruntergezählt wurde, wird das UND-Glied 22
aktiviert, um einen Schiebeimpuls an das Schieberegister 23 anzulegen, das am Anfang mit einer Null in der
ersten Zelle gesetzt wurde. Diese Null wird in die nächste Zelle verschoben als Anzeige dafür, daß eine
Alpha-Zeiteinheit nach dem Ende des Vorlaufzeichens abgelaufen ist.
Wenn der Zähler 18 einen Inhalt aus lauter Nullen erreicht hat, wird das UND-Glied 20 aktiviert und
schaltet über den Inverter 21 das UND-Glied 19 ab, um das Abwärtszählen zu beenden. Ein zweiter Inverter 24
kehrt den niedrigen Signalpegel wieder in einen hohen um und schaltet das UND-Glied 17 wieder ein, um die
im Register 16 enthaltene Zahl an den Zähler 18 anzulegen, woraufhin im Zähler 18 ein von Null
verschiedener Inhalt erscheint, das UND-Glied 20 abschaltet und das Abwärtszählen wieder beginnt Der
Inhalt des Zählers 18 wird wieder heruntergezählt und wenn eine Eins erreicht ist wird das UND-Glied 22
wieder betätigt um einen weiteren Schiebeimpuls an das Schieberegister 23 anzulegen und anzuzeigen, daß
zwei Alpha-Zeiteinheiten seit dem Ende des Vorlaufintervalles verstrichen sind.
Der Prozeß läuft weiter wie beschrieben, bis ein drittes Alpha-Zeitintervall über dem Vorlaufintervali
abgelaufen ist. Zu diesem Zeitpunkt wird eine Ausgabe von der dritten Zelle im Schieberegister 23 erzeugt zur
Betätigung des Haltekreises 25. Dieser erzeugt ein
Ausgangssignal unter der Bezeichnung 5Gi-
Dies ist der Anfang des ersten Suchtores, das um die aus zwei Zeitabschnitten bestehende Position (gleich To)
herum oder bei der Ausschnittposition des kleinsten Intervalles oder Segmentes auftritt. Dieses Signal wird
über das ODER-Glied 14 in diesem Fall an das UND-Glied 11 angelegt um den jeweiligen Inhalt im
Zähler 3 zu leiten. Diese Zahl wird zum Füllen des Registers 16 über das ODER-Glied 15 mit einer neuen
Zahl benutzt die die Länge, ausgedrückt in Alphaeinheiten, des tatsächlich zu diesem Zeitpunkt verstrichenen
Intervalles darstellt wenn ein weiteres X-Signal erzeugt
wird, das anzeigt daß ein Impuls derselben Obergangs
polarität innerhalb des Ausschnittes aufgetreten ist Das
ist zu ersehen aus der Steuerung des X-Sigaaleinganges
zum UND-Glied 11, in diesem Fall und aus der Tatsache,
daß die übrigen UND-Glieder 12 und 13 nicht betätigt sind, da die Suchtore 2 und 3 noch nicht aktiviert
wurden.
Tritt kein A"-Impuls auf, so läuft der Betrieb weiter,
und das Schieberegister 23 wird um weitere Positionen verschoben, bis das fünfte Alpha-Einheitenintervall
auftritt Dann wird eine Ausgabe auf der Leitung 26 erzeugt, um den Haltekreis 25 abzuschalten und den
Haltekreis 27 einzuschalten und den zweiten Suchtorausschnitt oder das Segmentsignal anzuheben. Dieses
wird an das UND-Glied 12 angelegt, damit bei Auftreten eines ^-Impulses während dieses Segmentes
oder Suchtorausschnittes die Ausgabe des Zählers 4 über das ODER-Glied 15 an das Register 16 angelegt
wird als gewichtetes Maß des Intervalles, wenn der Impuls in der zweiten möglichen Position erschien.
Nimmt man an, daß so ein Impuls nicht erscheint, so läuft der Zähler 18 weiter wie vorher, und das
Schieberegister 23 wird weiter verschoben, bis die siebte Alphaeinheit auftritt
Beim Auftreten der siebten Alphaeinheit erscheint eine Ausgabe auf der Leitung 28, die den Haltekreis 27
abschaltet und den Haltekreis 29 einschaltet und das dritte Suchtorsegment oder den Ausschnitt anhebt Die
Ausgabe des dritten Suchtorausschnittes wird an das UND-Tor 13 angelegt, damit bei Auftreten eines
AT-Impulses in der bei einem Code mit zwei Breiten
letzten möglichen Stelle die Zahl im Zähler 5 über das ODER-Glied 15 an das Register 16 als Maß des
aufgetretenen Intervalles in Alphaeinheiten angelegt wird.
Wenn in der zwischen der Anzeige der siebten Alphaeinheit und dem Ende der neunten Alphaeinheit
verstrichenen Zeit kein ^-Impuls abgefühlt wurde, wie es im Schieberegister 23 angezeigt ist, dann ist ein
Fehler aufgetreten. Am Ende der neunten Alphaeinheit im Register 23 wird der Haltekreis 29 abgeschaltet, und
wenn das Schieberegister 23 kufen gelassen wird, weil keine Impulse innerhalb der Suchtore gefunden wurden,
wird schließlich die Zelle 10 des Schieberegisters aktiviert und angezeigt, daß eine zehnte Alphaeinheit
verstrichen ist Dann werden ein Fehlersignal und ein Rückstellsignal R\ erzeugt
Im allgemeinen tritt jedoch irgendwo innerhalb der drei Suchtore ein ΛΤ-Impuls auf, und einer der Inhalte der
Zähler 3, 4 oder 5 wird in das Register 16 ausgegeben. Durch Verzerrung oder leichte Beschleunigungen
braucht natürlich das echte X-Signal nicht genau zu dem
durch die Gleichung für 7} festgelegten Zeitpunkt aufzutreten. Der Impuls tritt jedoch im allgemeinen
innerhalb seines Segmentes oder Ausschnittes 5Gi, SGi,
SGs usw. auf. Die Anzahl von Alphaeinheiten, die bis zum Impuls verstrichen sind, ist daher ein relatives Maß
für die Länge des aufgetretenen Intervalles und kann als neue Referenzlänge zur Vorhersage neuer Impulsstellen
für das nächste Intervall dienen. Da die Zähler mit unterschiedliche« Raten zählen, die entsprechend den
möglichen Impulslagen gewichtet sind, steht eine vorgewichtete Zahl zum echten Erscheinungszeitpunkt
des Impulses in jedem Zähler. Die Ausgabe des betreffenden Zählers wird durch das während der
Erscheinungszeit des Impulses aktivierte Suchtor oder Segment gesteuert und wird daher als entsprechend
gewichtete Zahl, verlängert oder verkürzt nach der tatsächlichen Erscheinungszeit des Impulses innerhalb
eines Suchabschnittes zur Vorhersage der nächsten drei möglichen gültigen Stellen der nächsten Impulspositionen
verwendet.
Aus Fig. 10 ist zu ersehen, daß durch jeden Rückstellimpuls Ru R2 oder A3 die Zähler 3, 4 und 5
sowie das Schieberegister 23 zurückgestellt werden, so
s daß eine neue Operation beginnen kann. Ri ist das
Fehlersignal und A3 ist das verzögerte Eingangssignal
vom Auftreten eines yf-Impulses, das die Zähler wieder
zum Zählen und das Schiegeregister zum neuen Beginn nach jedem Auftreten eines Λ-Impulses veranlaßt,
wobei es keine Rolle spielt, ob dieser nun im Datenstrom oder im Vorlaufzeichen liegt
Durch das Auftreten eines ^-Impulses wird auch ein
Teil eines jeden UND-Gliedes 30, 31 und 32 aktiviert, wenn die Haltekreise 25,27 oder 29 zu diesem Zeitpunkt
aktiviert sind. Ein Ausgangsimpuls für das Erscheinen eines X-Impulses innerhalb des bezeichneten Suchtores
wird erzeugt am Ende eines Zeitabschnittes 2,3 oder 4 für einen Code, in dem γ= 1 ist Durch das ODER-Glied
33 wird auch das Rückstellsignal Ä2 erzeugt
Die am rechten Rand der Fig. IOC erzeugten
Ausgänge 2, 3 und 4 zeigen an, daß ein A'-Impuls (ein
DPI), mit Daten identifiziert gefunden wurde für einen Code, in dem y=l ist, so daß Impulse am Ende des
Zeitabschnittes 2, 3 oder 4 erscheinen. Ein identischer Kreis wird benutzt für die ^-Impulse, die vom
Fühlerverstärker 2 kommen. Die V-Impulse sind
identifiziert als Steuersignale (CPI) und werden wie nachfolgend beschrieben in Verbindung mit den
,f-Signalen benutzt. Im Augenblick ist die Feststellung
wichtig, daß die Schaltung, die speziell in bezug auf die verwendeten Frequenzen und die Ausgänge mit den
Bezeichnungen 2, 3 und 4 dargestellt ist, für einen allgemeinen Code benutzt werden kann, in dem γ mit 1
gewählt ist, und daher die Ausgänge an den Zeitabschnitten 2 S, 3 S oder 4 5 auftreten. Die gezeigte
Schaltung arbeitet natürlich genauso für jeden anderen Wert von γ.
Dieselbe Art von Ausgängen, die einen Steuerimpuls auf dem y-Kanal bezeichnen, der in seinen Zeitabschnittspositionen
2,3, oder 4 erscheint, wird durch eine der in den F i g. 10A—C gezeigten Schaltung identische
Schaltung erzeugt, die die K-Ausgabe vom Fühler 2 verarbeitet Eine Modifikation des Systems ist für
Geschwindigkeitskorrekturen zweiter Ordnung gezeigt Diese ist in den gestrichelten Linien in den F i g. 1OA und
1OB durch die Recheneinheit 60 dargestellt. Diese Einheit erzeugt einen Multiplikationsfaktor für den
Wert T„-\(j.y), der in Tabelle I wie folgt wiedergegeben
ist:
1-/4
Die Ausgabe des ODER-Gliedes 15 wird an die Einheit 60 und von dort an das Register 16 gesendet, wo
die den Wert T„-\(jV) darstellende, in der zweiten
Ordnung geschwindigkeitskorrigierte Zahl gespeichert wird zum Abwärtszählen der Taktierung der Alpha-Einheitensuchsegmente.
In Fig. 13A ist eine Decodierlogik gezeigt, mit dei
der Dateninhalt aus dem Signalstrom gewonnen wird Die Ausgänge von den entsprechenden X- unc
Y-Kreisen 10 in den F i g. 10A—C werden an die Punkte
2,3 und 4 für die Datenimpulsintervalle (abgekürzt DPI' b5 und 2, 3, und 4 für die Steuerpulsintervalle (abgekürzt
CPI) angelegt. Diese Steuer- und Datenimpulseingänge werden an eine Serie von Steuerhaltekreisen unc
UND-Gliedern angelegt, die in äquivalenter logischei
Form die reduziert in Fig. 13B gezeigte Decodiermatrix enthalten. Die Decodiermatrix identifiziert Daten
nach einem S2S-Code (Code mit einer und zwei Breiten), ein Codetyp, der aufgebaut wird, wenn y=l
gewählt wird.
Wie schon früher ausgeführt wurde, herrschen gewisse Zweideutigkeiten in der Matrix über den
Dateninhalt, wenn man Decodiersignale CPI=3 und
DPI=3 empfängt Die Zweideutigkeit wird aufgelöst, indem man einen /!-Zustand wählt, sobald man ein
Signal CPI2, DPI 3 oder CPI3, DPI 4 erhält und indem
man einen S-Zustand wählt, sobald man den Signalsatz
CPI 4, DPI 3 oder CPI 3, DPI 2 erhält Wenn man dann den Signalsatz CPI3, DPI 3 erhält, wird der Inhalt
decodiert abhängig davon, ob im System dann der /4-Zustand oder der B-Zustand gehalten wird. Der
Haltekreis 34 liefert diese Funktion und erzeugt den A-Ausgang oder den B-Ausgang. In Fig. 13A wird
folgende Operation ausgeführt:
Die UND-Glieder 35 werden durch gleichzeitige DPI-Impulse und CPI-Impulse entsprechend den in
Fig. Ί3Β gezeigten Matrixwerten gesteuert Die UND-Glieder 35 sind mit der Steuerimpulsbezeichnung und
der Datenimpulsbezeichnung versehen. Mit der Ausgabe der UND-Glieder 35, die über die ODER-Glieder 38
geführt wird, werden Null- und Eins-Bitkombinationen erzeugt, die an die Pufferstufen eines Ausgaberegisters
43 angelegt werden. Der Inhalt des Ausgaberegisters 43 wird durch einen Doppel-Schiebeimpulsgenerator 40
zweimal verschoben, und dieser erhält durch das ODER-Glied 39 ein 2-, 3- oder 4-Signal vom
Steuerimpulsintervall gespeist um die letzten beiden Bits der gelesenen Daten auszuschieben.
Die Steuerimpulse werden an Haltekreise 36 angelegt, die die Betätigung von UND-Gliedgruppen 35
abhängig davon steuern, ob ein Steuerimpulsintervall 2, 3 oder 4 abgefühlt wurde. Die Haltekreise 36 werden
über die ODER-Glieder 37 durch das Auftreten eines Impulses abgeschaltet, der nicht das jeweilige Tor
aktivieren soll.
Die aus dem Auftreten eines 3,3-Steuerimpuls-Datenimpulsintervalles resultierende Zweideutigkeit wird
dadurch verarbeitet, daß man am Anfang den Haltekreis 34 auf die B-Ausgangsbedingung setzt, so daß beim
ersten Auftreten eines 3,3-Intervallsignals der B-Ausgang das jeweilige UND-Glied 35 betätigt, das den
B-Eingang hat Die entsprechende Decodierung erfolgt gemäß der Matrixtabelle. Wenn jedoch eine Steuerimpuls-Datenimpuls-Intervallfolge 3, 4 oder 2, 3 auftreten
sollte, wird der Haltekreis 34 auf den /4-Ausgabezustand geschaltet. Wenn eine Steuerimpuls-Datenimpuls-Intervallfoige
3, 2 oder 4, 3 auftreten sollte, wird der Kreis 34 auf den B- Ausgabezustand geschaltet.
In Fig. 15 ist eine weitere Fehlererkennungsschaltung
gezeigt, die so arbeitet, daß bei Empfang eines Impulses auf dem Datenkanal oder dem Steuerkanal
und Fehlen eines entsprechenden Datenimpuls- oder Steuerimpuls-Suchtorintervalles die UND-Glieder 48
bzw. 49 durch das ODER-Glied 50 durchgeschaltet werden und das Fehlerausgangssignal erzeugt wird, das
in der Verzögerungseinheit 51 etwas verzögert wird, um ein Rückstellsignal R für das System zu erzeugen. Die
Schaltung arbeitet durch Invertieren des Signales in einem Inverter 46 oder 47 für das betreffende
Datenimpulsintervall oder die Steuerimpulsintervallanzeige, die über das ODER-Glied 44 bzw. 45 angelegt
wird. Wenn ein Datenimpulsintervall oder ein Steuerimpulsintervall nicht angezeigt werden und ein A"-Signal
oder ein !^Signal auftritt, wird dadurch ein Fehler
signalisiert Wenn in der Zeit, in der ein Datenimpulsintervall vorliegt, kein X-Signal auftritt, wird auch das
Fehlersignal vom Ausgang der Zelle 10 des Schieberegisters23inFig. 10erzeugt
Wie bereits früher ausgeführt wurde, können die verschiedenen Segmente zeitlich auf das letzte Auftreten eines Datenimpulses oder eines Steuerimpulses
bezogen gesucht werden. Dadurch wird jedoch eine
ίο Empfindlichkeit gegenüber einer Streuungsverzerrung
eingeführt, wenn ein Störimpuls auftritt Das vorgezogene Ausführungsbeispiel, dargestellt in den
Fig. 1OA—C benutzt separate Suchabschnittsegmente,
die zeitlich vom letzten Auftreten eines Impulses
gleicher Polarität entfernt sind, dh, wenn Impulse
beispielsweise positiv verlaufen, werden Suchabschnitte für den nächsten positiv verlaufenden Datenimpuls
relativ zu dem letzten positiven Impuls gesetzt Wenn in ähnlicher Weise Steuerimpulse negativ verlaufen,
werden die zeitlich relativ zu dem letzten Auftreten eines negativ verlaufenden Impulses gesetzt
Eine ganze Schaltung zur Verarbeitung negativ verlaufender Steuerimpulse, die mit der für die positiv
verlaufenden Impulse in den Fig. 1OA-IOC gezeigten
Schaltung identisch ist, wurde im Ausführungsbeispiel als erforderlich erwähnt, jedoch nicht dargestellt daß
sie mit der gezeigten Schaltung identisch ist. Es kann ein System gebaut werden, das die Suchsegmente zeitlich
relativ zum letzten Auftreten entweder eines Datenim
pulses oder eines Steuerimpulses setzi, und es wird ein
Beispiel für ein System gegeben, das die Suchsegmente zeitlich nur auf den letzten Datenimpuls bezieht
Auf diese Weise lassen sich beträchtliche Ersparnisse in der Logik- und anderen Schaltung realisieren, da die
gesamte Verarbeitungsschaltung für die Taktierung separater Suchsegmente für den Steuerausschnitt
wegfallen kann, die im wesentlichen eine Duplizierung der gesamten Schaltung in den Fig. 10A—C für das
Steuerimpulssystem ist
In Fig. 17 ist das Verfahren graphisch dargestellt Wenn die oberste Linie einer Reihe beliebiger
Codestreifen mit einer Mindestbreite S und einer allgemeinen Breite 5+ PyS ist, dann handelt es sich hier
um einen Code mit zwei Breiten, und P und γ können
nach Bedarf spezifiziert werden. Weiterhin sollen
willkürlich die positiv verlaufenden Signalvorderkanten als Datensignale und die negativ verlaufenden Signalhinterkanten als Steuersignale bezeichnet werden. Die
Datensignale können ferner als X-Impulse und die
so Steuersignale als V-Impulse definiert werden.
Die zweite Zeile der Fi g. 17 zeigt den Fühlerausgang
in Form schmaler Impulse im X-Kanal und V-Kanal.
Zeitlich unter die Fühlerausgangslinie in F i g. 17 ist eine
Reihe von Suchsegmenten gelegt, die an Punkten erzeugt werden, die vom letzten Auftreten eines
A"-Impulses gemessen sind. Die Abschnitte haben eine
Gesamtbreite von 2*Tn, wie oben beschrieben. Tn ist das
letzte Intervall zwischen zwei Impulsen gleicher Polarität, in diesem Fall zwischen zwei ^-Impulsen. Die
allgemeine Formel zum Legen der Suchausschnitte ist in Tabelle 1 ausgeführt, und es kann keine Geschwindigkeilskorrektur,
eine Geschwindi6Aeitskorrektur erster
Ordnung oder eine Geschwindigkeitskorrektur zweiter Ordnung vorgenommen werden.
μ Für den gezeigten Code kann P definiert werden
gleich 1, so daß zwei verschiedene Breiten beim Aufbau des Codes verwendet werden, γ einen vorgeschriebenen
Wert haben, in diesem Fall wurde der Einfachheit halber
y=l gewählt Die verschiedenen möglichen Lagen
gültiger Impulse zeitlich hinter dem letzten Auftreten eines ^-Impulses können zur Erzeugung der Suchsegmentausschnitte
für die erste Suche in der Zeile benutzt werden, die unter der Fühlerausgabelinie in Fig. 17
folgt
Aus dem ersten Satz von Suchausschnitten ist klar zu sehen, daß die Lage gültiger Datenimpulse im zweiten,
dritten oder vierten Abschnitt, jedoch nicht im ersten Abschnitt, zu finden ist Das ist auch aus der Feststellung
zu verstehen, daß 2 P+1 mögliche gültige Lagen für Steuer- oder Datenimpulse existieren. Ein Steuerimpuls
kann im ersten Ausschnitt auftreten, der als Indexlage /=0 in den allgemeinen Formeln der Tabelle I
bezeichnet ist Ein Steuerimpuls kann vor der ersten möglichen Lage auftreten, in der ein Datenimpuls
auftreten kann, weil Steuer- und Datenimpulse im Verhältnis 1 :1 verschachtelt sind, und nach dem letzten
Auftreten eines Datenimpulses muß der erste Impuls, der auftritt, wieder ein Steuerimpuls ein.
Daraus folgt, daß insgesamt 2 P+2 Suchsegmente existieren, in die Daten- und Steuerimpulse fallen
müssen. Alle Segmente mit einer Indexzahl kleber gleich P enthalten nur Steuerimpulse, d. h., das erste
mögliche Suchsegment an der Position /=0 und alle folgenden Segmente bis zu einem Segment, dessen
Indexzahl kleiner oder gleich Pist, können nur mögliche
gültige Steuerimpulse enthalten, da die Lage des ersten möglichen gültigen Datenimpulses nur an einer Position
/= 1 oder höher für einen Code liegen kann, in dem P= 1 oder größer ist
Für das Segment mit der Indexzahl P+\ können entweder Steuerimpulse oder Datenimpulse auftreten,
aber nicht beide. Alle Intervalle mit einer Indexzahl größer als P+1 und kleiner als der Höchstwert 2 P+2
sind mögliche Lagen nur für Datenimpulse. Wenn ein Impuls an der Indexsielle P+l und kleiner in einem
Intervall an einer Position größer als P+l gefunden wird, muß es sich bei dem an der Stelle P+1 gefundenen
Impuls um einen Datenimpuls handeln, und daher muß der Steuerimpuls in einem früheren Intervall aufgetreten
sein, das kleiner oder höchstens gleich Pist Wenn in einem früheren Intervall kein Impuls auftrat, wurde kein
Steuerimpuls gefunden, und es muß ein Fehler vorliegen. Die mögliche Zweideutigkeit, die darin liegt,
daß an einer Stelle mit einer Indexzahl gleich P+l entweder ein Datenimpuls oder ein Steuerimpuls
auftreten kann, stellt kein Problem dar, da bekannt ist, daß sowohl ein Steuerimpuls als auch ein Datenimpuls
nicht in demselben Segment auftreten können und daß Steuerimpulse zeitlich vor den Datenimpulsen kommen
müssen, wenn die Ausschnitte relativ zum letzten Datenimpuls gelegt werden.
Wenn einmal ein Steuerimpuls und ein Datenimpuls gefunden wurden, werden weitere Suchsegmente
eliminiert, und die nächste Suche wird angefangen, basierend auf neuen Voraussagen von dem letzten oder
gerade abgefühlten Datenimpuls. Die zwischen dem letzten Segment in der Suche 1 und dem ersten Segment
in der Suche 2 in Fig. 17 dargestellte Überlappung tritt also in der Praxis des Systems nicht auf.
In Fig. 17 sind in die verschiedenen Suchsegmente
kleine Zahlen zur Bezeichnung der Segmente geschrieben, an denen Daten- und Steuerimpulse abgefühlt
werden. In der Suchzeile 1 beispielsweise findet sich ein Steuerimpuls im zweiten Segment und ein Datenimpuls
im dritten Segment. In der Suchzeile 2 findet sich ein Steuerimpuls im ersten Segment und ein Datenimpuls
im dritten Segment usw.
In den Fi g. 18A bis 18E sind verschiedene Decodiermatrizen
für die verschiedenen Codeschemata gezeigt, die mit dem in Fig. 17 gezeigten Verfahren decodiert
werden können. Die Decodiermatrize in Fig. 18A gilt
für den F2F-Code. Es gibt zwei Matrizen, da bei den Intervallen 1-3 CPI-DPI und 2-3 CPI-DPI für den
F2F-Code eine Entscheidung getroffen werden muß, ob für das Intervall 1-3 CPI-DPI eine 1,0-Datenausgabe
ίο oder für das Intervall 2-3 CPI-DPI eine 0,1-Ausgabe
dargestellt werden soll. Die Entscheidung ist frei, die entsprechende Matrixzahl 1 oder 2 in Fig. 18A oder
18B wurde jedoch so in die Decodierlogik eingebaut wie es in F i g. 13 A gezeigt ist
In F i g. 18C ist die Decodiermatrix für den S2S-Code
gezeigt, worin S als die Breite eines Abschnittes
definiert ist der geschrieben ist, um eine digitale Eins
auszudrücken und 25 ist die Breite eines Streifens oder Abstandes, der geschrieben ist, um eine digitale Null
auszudrücken.
F i g. 18D zeigt die Decodiermatrix für einen Deltadistanzcode, in dem bei Auffinden der gleichen Streifenoder
Abstandslänge wie der jeweils vorhergehenden eine Eins decodiert wird und bei verschiedener
Abst&ndslänge eine Null. Wegen dieser Charakteristik
des Deltadistanzcodes existiert eine Zweideutigkeit für jede mögliche Pulsintervallage. Die Wortmatrix zeigt
an, daß ein A-Ausgabezustand oder ein ß-Ausgabezustand
für jede der möglichen CPI-DPI-Intervallsequenzen
gewählt wird, in der Daten- und Steuerimpulse auftreten können. In jedem Kasten, zu dem Datenbits in
der Matrix gehören, ist auch eine Befehlsfunktion eingeschlossen, die einen bestimmten Befehl zum
Setzen eines Haltekreises gibt, die die Ausgabe der jeweiligen Möglichkeit steuert.
Bei Beginn der Decodierung mit den in der Matrix der Fig. 18C gegebenen Werten wird mit dem Zustand A
begonnen. Ein bestimmter Wert, wie beispielsweise 2-3 CPI-DPI würde daher einen Digitalwert 00 ausgeben
und eine Befehlsfunktion schaffen, die rechts von 00 im entsprechenden Kasten gezeigt ist, um die nächste
Ausgabe als ß-Zustand zu veranlassen. Wenn das nächste aufgetretene Intervall das Intervall 1-3 CPI-DPI
ist, würde in diesem Fall eine 0-0-Ausgabe für den ß-Zustand im entsprechenden Kasten an die Register
gesendet werden und außerdem ein Ä-Zustandsanzeigebefehl
erzeugt. Die Schaltung ist im wesentlichen ähnlich der in Fig. 13A gezeigten, wobei kleinere
Änderungen eingebaut sind, um vom Zustand A in den
so Zustand B hin- und herzuschalten, wie es in Fig. 13A
geschah.
Die Matrizen in den Fig. 18A—D bestehen nur aus
einer zweimal-drei-Matrix und nicht aus einer drei-maldrei-Matrix
wie in den Fig.2A —E. Die in Fig. 16
gezeigte Schaltung, die die Matrizen für die Decodieroperation enthält, ist nicht so ausgedehnt, da sie nur
sechs anstelle von neun möglichen Ausgabecodekombinationen umfaßt Noch größere Ersparnisse ergeben
sich zwangsläufig in einem System zur Decodierung des in Fig. 18E gezeigten Codes, da zwischen den
Zellengrenzen nur ein Impuls decodiert zu werden braucht
F i g. 18E zeigt die Decodiermatrix dür einen Streifencode 1/3-2/3. Dieser Code ist besonders vorteilhaft für
eine Einkanaldecodierung, da die Intervalle für DPI (oder CPI, da der Code geschrieben wird als
Abstand+ Streifen und nicht als Streifen + Abstand) immer 3 ist Das ergibt sich aus einem ganz bestimmten
Codeschema, das im allgemeinen optisch gedruckt wird
und jede Bitzelle mit einem gedruckten schwarzen Streifen von V3 oder 2Z3 Zellenbreite beginnt Das
Gegenteil gilt, wenn jede Zelle mit einem Abstand beginnt Da diese Regel nicht verletzt wird, ist das
Intervall von einer Vorderkante zur anderen (DPI) immer drei Breiteneinheiten. Die Decodiermatrix zeigt
das und gibt klar an, daß das DPI nicht benutzt werden muß, um solch einen Codesprung zu decodieren (wenn
es nicht gerade zur Erkennung von Taktfehlern oder Synchronisationsfehlern verwendet wird). Statt dessen
muß man nur das CPI finden, um augenblicklich solch einen Code zu decodieren, Ah, zum Decodieren der
Daten braucht man nur die Signale zwischen den Zellengrenzen.
Fig. 16 zeigt denjenigen Teil des Logikdiagrammes,
der anstelle der Schaltung in Fig. IOC benutzt wird,
wenn man die im Zusammenhang mit F i g. 17 beschriebene Grundtechnik implementieren will. Mit
anderen Worten, die in Fi g. 16 gezeigte Schaltung soll diejenige in Fig. 10 ersetzen, wenn Suchsegmente
relativ zum letzten Auftreten eines Datenimpulses oder eines Steuerimpulses gesetzt werden sollen. Die
zusätzliche Schaltung für die K-Impulse, die für das in
Fig. 10 beschriebene System benötigt wird, wird nicht länger gebraucht.
Eine Betriebssteuerung ist in die in Fig. 16 gezeigte
Schaltung so eingebaut, daß das System genau wie der Rest des Systems in F i g. IOC arbeitet wenn kein Signal
zur Betätigung der Betriebssteuerung anliegt. Das heißt mit anderen Worten, daß die UND-Glieder 50 nicht
eingeschaltet werden und keine CPI-Intervallanzeigen
gegeben werden, wenn die Betriebsartensteuerung nicht eingeschaltet ist. Wenn die Betriebsartensteuerung
eingeschaltet ist, entsteht automatisch die zur Durchführung der in Fig. 17 gezeigten Technik notwendige
Schaltung.
Für das Verfahren der Fig. 17 mittels Einstellung der
Suchsegmente in Bezug auf das letzte Auftreten des Steuerimpulses brauchten nur die Decodiermatrizen
geändert zu werden. Die Decodiermatrizen der F i g. 18A—C werden so geändert, daß die Datenimpulsintervalle
der Einheiten 1, 2 oder 3 und die Steuerimpulsintervalle an der Position 3 und 4
erscheinen, der Dateninhalt der Matrizen bliebe jedoch derselbe. Für die Matrix der F i g. 18E ist eine Änderung
notwendig, da die Konstante DPI = 3 keine Datenbedeutung hat und zur Decodierung nicht benutzt würde.
Das Bedeutet, daß die CPI 2,3,4 einfach unnummeriert
würde als 1, 2, da bei Festlegung der Suchsegmente so bezüglich der Zellengrenzen, die infolge ungenauen
Druckes streuen, die Datenimpulse zwischen den Grenzen nur im Segment 1 oder 2 auftreten können.
Vorzugsweise werden jedoch die Segmente bezüglich des letzten Signalimpulses gleichen Typs gemessen, um
eine Empfindlichkeit gegen Drucksteuerung zu vermeiden. Das führt zu möglichen Lageintervallsegmenten
mit 2, 3 oder 4 Einheiten, wie sie in Fi g. 18E gezeigt
sind.
In den Fig. IOC und 16 ist eine Modifikation zur
Du-chführung der Symbolgrenzensuchdecodierung oder der Mittelimpulsdecodierung eines F2F-Codes
gezeigt Insbesondere in F i g. 16 kann der Haltekreis 60 die Taktierung der notwendigen Suchsegmente liefern,
um den Mittenimpuls einer F2F-3itzclle zu isolieren. Die Haltekreise 25, 27 und 29 und die zugehörige
Schaltung werden für ein solches Ausführungsbeispiel nicht benutzt
Der Ausgang des Haltekreises 25 kann jedoch die Taktierung der notwendigen Suchsegmente übernehmen,
um die Symbolgrenzimpulse einer F2F-Zelle zu isolieren.
Die Linien A und B stellen Fehlererkennungssignale für den Mittenimpuls und den Symbolgrenzimpuls dar
und würden am Ende eines jeden Suchtores auftreten bzw. bei Bedarf benutzt werden.
Das beschriebene Verfahren ist insofern universell, als es jeden bekannten werttaktierenden Streifencode
mit mehreren Breiten lesen oder decodieren kann, wobei die Codevorgänge optisch, magnetisch oder
elektrisch sein können. Zweitens sind für Gerät und Verfahren keine komplexen Berechnungen zur Durchführung
oder komplexe Hardware erforderlich, und das System ist relativ preiswert, schnell und zuverlässig zu
bauen und zu betreiben. Ein dritter Vorteil liegt in der vorhersagenden segmentierenden Suchtechnik bei der
Erkennung des Codeinhaltes der Kombination der gerade gelesenen Streifen zum Zeitpunkt des Impulsempfanges.
Außerdem werden durch diese vorhersagende Suchsegmenttechnik augenblicklich Fehler identifiziert,
die durch fehlende oder verlorende Impulse entstehen. Diese Erkennung erfolgt bereits auf der
Bitebene. Fünftens braucht das beschriebene System nur ein Minimum an Vorlaufinformation oder Synchronisationsinformation.
Gewöhnlich genügen ein oder zwei Bits auch bei größter Geschwindigkeitsabweichung,
es kann aber auch eine feste Referenz ohne Vorlaufbits verwendet werden.
Durch die vorhersagende Suchsegmentiertechnik, die den Dateninhalt mittels logischer Operationen oder
durch eine Tabellensuche in einer Matrix erkennt, deren Koordinaten die abgefühlten Steuerimpulsintervalle
und Datenimpulsintervalle sind, ist schließlich die Lesetechnik selbst vom Code unabhängig und basiert
nur auf den empfangenen Streifenbreiten und Impulsabständen. Der Dateninhalt kann aus den Streifenbreiten
heraus interpretiert werden, die nach einer beliebigen Definition dessen abgefühlt werden, was innerhalb der
logischen Matrix liegt.
Hierzu 15 Blatt Zeichnungen
Claims (4)
1. Verfahren zum Auswerten von selbsttaktierend codierten Signalen, die aus Impulsen und Abständen
bestehen, zwischen welchen jeweils erkennbare Übergänge stattfinden, dadurch gekennzeichnet,
daß die Zeit nach dem jeweils letzten Obergang in Intervalle unterteilt wird, deren jedes
einen möglichen neuen Übergang zeitlich umfaßt, daß die Intervalldauer entsprechend der Frequenz
der Signale bemessen wird und daß das Auftreten oder Nichtauftreten eines Übergangs in einem
Intervall als binäres Zeichen gewertet wird.
2. Verfahren nach Anspruch 1, dadurch gekennzeichnet, daß die Intervalldauer aufgrund der Zeit
zwischen dem letzten und wenigstens einem der früheren Übergänge bemessen wird.
3. Verfahren nach Anspruch I, dadurch gekennzeichnet, daß die Intervalldauer aufgrund einer
vorbestimmten Referenzzeit (Tr^ bemessen wird.
4. Verfahren nach Anspruch 2, dadurch gekennzeichnet, daß die Bemessung vorgenommen wird
nach der Gleichung:
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US05/626,680 US3978319A (en) | 1975-10-29 | 1975-10-29 | Universal self-clocking code reading method and apparatus |
Publications (2)
Publication Number | Publication Date |
---|---|
DE2645460A1 DE2645460A1 (de) | 1977-05-12 |
DE2645460C2 true DE2645460C2 (de) | 1982-06-09 |
Family
ID=24511381
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE2645460A Expired DE2645460C2 (de) | 1975-10-29 | 1976-10-08 | Verfahren und Vorrichtung zum Auswerten von selbsttaktierend codierten Signalen |
Country Status (7)
Country | Link |
---|---|
US (1) | US3978319A (de) |
JP (1) | JPS5282021A (de) |
CH (1) | CH614080A5 (de) |
DE (1) | DE2645460C2 (de) |
FR (1) | FR2330207A1 (de) |
GB (1) | GB1522895A (de) |
IT (1) | IT1068107B (de) |
Families Citing this family (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4061900A (en) * | 1976-04-16 | 1977-12-06 | Data General Corporation | Indicia validation system |
US4125765A (en) * | 1977-06-27 | 1978-11-14 | International Business Machines Corporation | Label find method and circuit |
JPS5491400A (en) * | 1977-12-28 | 1979-07-19 | Omron Tateisi Electronics Co | Device for judging pages of bank pass-book |
US4260952A (en) * | 1979-07-17 | 1981-04-07 | Teletype Corporation | Circuit for decoding a diphase signal |
US4369516A (en) * | 1980-09-15 | 1983-01-18 | Motorola, Inc. | Self-clocking data transmission system |
FR2545631B1 (fr) * | 1983-05-06 | 1987-07-17 | Lewiner Jacques | Perfectionnements aux procedes et dispositifs de lecture des cartes magnetiques de controle d'acces ou analogues |
JPS6047861A (ja) * | 1983-08-26 | 1985-03-15 | Nissan Motor Co Ltd | 内燃機関の吸気路加熱装置 |
JPS6078976U (ja) * | 1983-11-04 | 1985-06-01 | ティーディーケイ株式会社 | 半導体ヒ−タユニツト |
JPS60187484U (ja) * | 1984-05-22 | 1985-12-12 | ティーディーケイ株式会社 | ハニカム加熱器 |
CA2044404C (en) * | 1990-07-31 | 1998-06-23 | Dan S. Bloomberg | Self-clocking glyph shape codes |
USRE38758E1 (en) * | 1990-07-31 | 2005-07-19 | Xerox Corporation | Self-clocking glyph shape codes |
MY106779A (en) * | 1990-09-07 | 1995-07-31 | Mitsubishi Heavy Ind Ltd | Magnetic recording method and circuit for toll road ticket. |
JP2824323B2 (ja) * | 1990-09-07 | 1998-11-11 | 三菱重工業株式会社 | 有料道路通行券の情報読取方法 |
US6636994B1 (en) * | 2000-05-26 | 2003-10-21 | Synthesys | Apparatus and method for examining bit values during bit error location measurements |
US8682077B1 (en) | 2000-11-28 | 2014-03-25 | Hand Held Products, Inc. | Method for omnidirectional processing of 2D images including recognizable characters |
US20220301228A1 (en) * | 2021-03-19 | 2022-09-22 | Intel Corporation | Variable width interleaved coding for graphics processing |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
NL6700438A (de) * | 1966-02-21 | 1967-08-22 | ||
US3708748A (en) * | 1970-04-27 | 1973-01-02 | Ibm | Retrospective pulse modulation and apparatus therefor |
US3761685A (en) * | 1971-05-24 | 1973-09-25 | Pitney Bowes Alpex | Data processing means with printed code |
US3723710A (en) * | 1971-06-28 | 1973-03-27 | Ibm | Method and device for reading and decoding a high density self-clocking bar code |
US3811033A (en) * | 1971-06-29 | 1974-05-14 | Monarch Marking Systems Inc | Coded record interpreting system |
JPS5248772B2 (de) * | 1971-11-05 | 1977-12-12 | ||
US3784792A (en) * | 1972-03-29 | 1974-01-08 | Monarch Marking Systems Inc | Coded record and methods of and apparatus for encoding and decoding records |
US3882464A (en) * | 1974-04-04 | 1975-05-06 | Computer Identics Corp | Size ratio label reading system |
US3947662A (en) * | 1974-12-31 | 1976-03-30 | International Business Machines Corporation | Distorted two frequency coded data interpreting method and apparatus |
-
1975
- 1975-10-29 US US05/626,680 patent/US3978319A/en not_active Expired - Lifetime
-
1976
- 1976-08-31 GB GB36049/76A patent/GB1522895A/en not_active Expired
- 1976-09-14 FR FR7628380A patent/FR2330207A1/fr active Granted
- 1976-09-17 CH CH1181276A patent/CH614080A5/xx not_active IP Right Cessation
- 1976-09-29 IT IT27745/76A patent/IT1068107B/it active
- 1976-10-08 DE DE2645460A patent/DE2645460C2/de not_active Expired
- 1976-10-27 JP JP12843076A patent/JPS5282021A/ja active Granted
Also Published As
Publication number | Publication date |
---|---|
DE2645460A1 (de) | 1977-05-12 |
JPS5282021A (en) | 1977-07-08 |
IT1068107B (it) | 1985-03-21 |
US3978319A (en) | 1976-08-31 |
FR2330207A1 (fr) | 1977-05-27 |
FR2330207B1 (de) | 1980-02-22 |
GB1522895A (en) | 1978-08-31 |
CH614080A5 (de) | 1979-10-31 |
JPS5751142B2 (de) | 1982-10-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE2645460C2 (de) | Verfahren und Vorrichtung zum Auswerten von selbsttaktierend codierten Signalen | |
DE3687285T2 (de) | Verfahren und anordnung zur modifizierung eines lauflaengenbegrenzten codes. | |
DE3742098C2 (de) | ||
DE2822667C2 (de) | Schaltungsanordnung und Verfahren zum Lesen von strichcodierten Daten | |
DE2228526B2 (de) | Verfahren und Anordnung zum Lesen und Decodieren von Strichmarken-Gruppen, die Daten in codierter Form darstellen | |
DE2231953A1 (de) | Verfahren und einrichtung zum auswerten von kodierten aufzeichnungen | |
DE2616753A1 (de) | Verfahren und vorrichtung zum einlesen von strichkodierten informationen | |
DE2519381B2 (de) | Verfahren und Informationsverarbeitungseinrichtung zum Komprimieren von aus mehreren seriell angeordneten Aufzeichnungen bestehender Information | |
DE2654765B2 (de) | Einrichtung zum Dekodieren von Daten, die in einer vorgegebenen Anzahl abwechselnd aufeinanderfolgender Striche und Leerfelder von verschiedenen Breiten kodiert sind | |
DE1512654C3 (de) | Verfahren und Codiereinrichtung zur Codierung grafischer Informationen mit verringerter Redundanz | |
DE1288144B (de) | ||
DE2146497C3 (de) | Segmentierungs-Vorrichtung für optische Zeichenleser | |
DE1774314B1 (de) | Einrichtung zur maschinellen zeichenerkennung | |
DE2318276A1 (de) | Verfahren und vorrichtung zum auswerten von kodierten aufzeichnungen | |
AT223668B (de) | Verfahren und Schaltungsanordnung zur automatischen Erkennung von Schriftzeichen | |
DE2629590A1 (de) | Schaltungsanordnung zur trennung aufeinanderfolgender muster bei der zeichenerkennung | |
DE3109288A1 (de) | Mit einer optischen leseeinrichtung lesbare balkencodeschrift und optische leseeinrichtung hierzu | |
DE2718490A1 (de) | Decodierung von signalwellenzuegen | |
DE2837862A1 (de) | Vorrichtung zum lesen von gedruckten zeichen | |
DE2534456C2 (de) | Lesevorrichtung | |
DE2461380C3 (de) | Lesevorrichtung für codierte Informationen | |
DE980077C (de) | Speicherverfahren und -anordnung fuer magnetomotorische Speicher | |
DE69303041T2 (de) | Schaltung zur Verbesserung des Signalübergangs | |
DE2355197C2 (de) | Schaltungsanordnung für die Erkennung von strichcodierten Zeichen | |
DE2822573C3 (de) | Verfahren zur Decodierung strichcodierter Daten |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
D2 | Grant after examination | ||
8339 | Ceased/non-payment of the annual fee |