DE2654765B2 - Einrichtung zum Dekodieren von Daten, die in einer vorgegebenen Anzahl abwechselnd aufeinanderfolgender Striche und Leerfelder von verschiedenen Breiten kodiert sind - Google Patents
Einrichtung zum Dekodieren von Daten, die in einer vorgegebenen Anzahl abwechselnd aufeinanderfolgender Striche und Leerfelder von verschiedenen Breiten kodiert sindInfo
- Publication number
- DE2654765B2 DE2654765B2 DE2654765A DE2654765A DE2654765B2 DE 2654765 B2 DE2654765 B2 DE 2654765B2 DE 2654765 A DE2654765 A DE 2654765A DE 2654765 A DE2654765 A DE 2654765A DE 2654765 B2 DE2654765 B2 DE 2654765B2
- Authority
- DE
- Germany
- Prior art keywords
- counter
- output
- time
- memory
- signals
- 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.)
- Granted
Links
- 230000007704 transition Effects 0.000 claims description 24
- 238000011156 evaluation Methods 0.000 claims description 5
- 238000000034 method Methods 0.000 description 13
- 230000006870 function Effects 0.000 description 8
- 230000003287 optical effect Effects 0.000 description 8
- 238000013480 data collection Methods 0.000 description 7
- 238000001514 detection method Methods 0.000 description 6
- 238000004364 calculation method Methods 0.000 description 5
- 230000008569 process Effects 0.000 description 5
- 238000013139 quantization Methods 0.000 description 5
- 230000001133 acceleration Effects 0.000 description 4
- 238000011161 development Methods 0.000 description 4
- 238000010586 diagram Methods 0.000 description 4
- 230000008901 benefit Effects 0.000 description 3
- 239000000872 buffer Substances 0.000 description 3
- 230000001186 cumulative effect Effects 0.000 description 3
- 238000002360 preparation method Methods 0.000 description 3
- 230000004044 response Effects 0.000 description 3
- 230000015572 biosynthetic process Effects 0.000 description 2
- 230000001934 delay Effects 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- 108010076504 Protein Sorting Signals Proteins 0.000 description 1
- 230000003213 activating effect Effects 0.000 description 1
- 230000004913 activation Effects 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 230000003139 buffering effect Effects 0.000 description 1
- 230000003111 delayed effect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 239000003814 drug Substances 0.000 description 1
- 229940079593 drug Drugs 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000000605 extraction Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 238000002310 reflectometry Methods 0.000 description 1
- 230000000717 retained effect Effects 0.000 description 1
- 230000002123 temporal effect Effects 0.000 description 1
- 230000004304 visual acuity Effects 0.000 description 1
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)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
- Character Discrimination (AREA)
- Electric Clocks (AREA)
Description
Die Erfindung betrifft eine Einrichtung zum Dekodieren von Daten, die in einer vorgegebenen Anzahl
abwechselnd aufeinanderfolgender Striche und Leerfelder von verschiedenen Breiten kodiert sind, mit einer
Lesevorrichtung, an die eine auf die Übergänge zwischen Strichen und Leerfeldern ansprechende
Steuerschaltung angeschlossen ist, mit einem Zeitsignalgenerator, der während einer von den Ausgangssignalen
der Steuerschaltung bestimmten Zeitspanne eine einem Logarithmus des Zeitmaßes dieser Zeitspanne
entsprechende Anzahl von Signalen an eine Auswerteschaltung abgibt, in welcher die Daten aus bestimmten
Differenzen jeweils zweier Anzahlen von Signalen aus dem Zeitsignalgenerator ermittelt werden.
In der US-PS 38 87 792 wird ein Verfahren und eine Vorrichtung zum Ablesen und Dekodieren von sogenannten
Strich-Codes beschrieben, bei welchem die Daten in Breitenverhältnissen aufeinanderfolgender
Leerfelder und Striche kodiert sind. Dabei werden die Ausgangssignale eines logarithmischen Zeitsignalgenerators,
welche während des Zeitraums zwischen zwei Übergängen an den Enden eines Siriches oder eines
Hellfeldes entfallen, in einem von zwei abwechselnd benutzten Zwischenspeichern gespeichert. Die Differenz
der in den beiden Zwischenspeichern aufeinanderfolgend gespeicherten Ausgangssignale des Zeitsignalgenerators
ergibt eine Darstellung des Breitenverhältnisses eines abgelesenen Hellfeld/Strich-Paares. Aus der
Dekodierung dieser Darstellung ergeben sich die im Strich-Code aufgezeichneten Daten. Beim häufig sehr
schnellen Ablesen und der dadurch erforderlich werdenden Erhöhung der Ausgangsfrequenz des Zeitsignalgenerators
erweisen sich die Zwischenspeicher als zu langsam, so daß die Ausgangssignale des Zeitsignalgenerators
nicht mehr richtig erfaßt werden und die Ablesung nicht dekodiert werden kann. Außerdem
ergeben sich häufig Schwierigkeiten beim Ablesen ungenau gedruckter Strichkodierungen, weil dadurch
eine gewisse Streuung der Breitenverhältnisse auftritt, die Schwierigkeiten bei der Zuordnung der Daten zu
den Breitenverhältnissen einstellen.
In der US-PS 37 71 132 ist ein tragbares batteriebetriebenes
Daten-Sammelsystem zum Aufsammeln von Daten aus Datenquellen in Einzelhandelsgeschäften,
Supermärkten, Drogerien und dergleichen für Inventurzwecke beschrieben. Diese Datensammeisysteme arbeiten
mit tragbaren optischen Abtastern. Die optischen Abtaster dienen zum optischen Lesen von Strichkodierungen
auf Zetteln und dergleichen und lesen die in einem Strich-Code kodierten Daten in das System ein,
wobei die Notwendigkeit entfällt, daß die Quellendaten durch eine, Arbeitskraft in das Sammelsystem eingegeben
werden müssen. Die einzelnen Posten werden mit bekannten linearen Strich-Codes allgemein kodiert, von
denen der Universal Product Code (UPC) oder ein 7-Bit-Strich-Code, bekannt als Codabar, verwendet
werden kann. Diese linearen Strich-Code besitzen gewöhnlich eine Reihe von schwarzen Strichen oder
Linien mit dazwischen angeordneten weißen Leerfeldern verschiedener Breiten, wodurch Nutzinformation
dargestellt wird. Die Nutzinformation, dargestellt in
Form eines linearen Strich-Codes, wird durch die Breitenverhältnisse und die Folge der schwarzen
Striche und der weißen Leerfelder kodiert Zum Lesen des Codes wird ein patronenförmiger Leser manuell
über den ganzen strichkodierten Teil einer beispielsweise zum Verkauf bestimmten Ware verfahren. Der Leser
ist mit einer Lichtquelle, die ein enggebündeltes Licht abgibt, sowie einem optischen Sensor ausgerüstet, so
daß bei Antreffen eines weißen Leerfeldes der Lichtstrahl reflektiert und vom optischen Sensor m
absorbiert wird. Wenn ein schwarzer Strich oder Balken vor den Leser kommt, wird der Lichtstrahl von dem
Strich absorbiert Dadurch entsteht ein elektronisches Signal am Ausgang des optischen Sensors, dessen
relative Amplituden eine Anzeige der Reflexionsfähig- J5
keit der vor dem Leser befindlichen Fläche darstellen. Das elektronische Signal aus dem Sensor ist ein
elektronisches Analogon der schwarzen Striche und hellen Leerfelder. Die Information in diesem Strich-Code
liegt nicht in der Größe der Signalpegel, sondern 4»
vielmehr in der relativen Zeitspanne, über welche jeder Pegel aufrechterhalten bleibt sowie in der speziellen
Folge dieser Zeitspannen oder der Breitenverhältnisse. Zur Entschlüsselung eines Strich-Codes müssen diese
Verhältnisse mit ausreichender Präzision gemessen werden, um die gültige Sequenz aufzunehmen und
folglich die nicht geltende zurückzuweisen.
Ein weithin verwendetes Verfahren zum Dekodieren eines strichkodierten Postens besteht in dem Messen
der Zeitspanne mit Hilfe von elektroniscnen Zählern. Ein Signalgeber wird über Gatter an einen Zähler
während der beispielsweise dunklen Strichperioden angeschlossen und von dem Zähler getrennt, wenn ein
helles Leerfeld festgestellt wird. Der gesamte aufgesam melte Zählstand stellt dann eine digitale Repräsentation
der Zeit dar, die beim Überqueren jenes dunklen Striches verstrichen ist Ein anderer Zähler dient zum
Aufsammeln des Zählstandes für einen nachfolgenden Strich. Der Inhalt eines Zählers wird dann durch den
Inhalt des anderen Zählers dividiert und der Quotient *>o stellt das zugehörige Verhältnis dar. Die Frequenz des
Zähltaktes und daher das Auflösungsvermögen der Zähler wird durch die Genauigkeit bestimmt, die bei der
höchsten erwarteten Lesegeschwindigkeit erforderlich sein wird, so daß Quantisierfehler nicht zu Dekodierfehlern
führen. In ähnlicher Weise muß die Kapazität der Zähler ausreichen, um den gesamten Zählstand ohne
Überlaufen bei der niedrigsten erwarteten Lese-Geschwindigkeit aufzusammeln. Ein derartiges Verfahren
ist in der US-PS 37 84 792 beschrieben. Um diese Art
bekannter Lese- und Dekodiertechnik von strichkodierten Daten zu vereinfachen und die mit den Teilen
verbundenen komplizierten Vorgänge bei der Bildung des gewünschten Verhältnisses zu vereinfachen, wurden
Verfahren und nach diesen arbeitende Geräte entwikkelt
die a\if logarithmischer Basis arbeiten. Die
Verwendung einer logarithmischen Zeitbasis ermöglicht
daß die Division auf eine einfache Subtraktion und die Multiplikation auf eine einfache Addition zurückgeführt
werden kann. Eine derartige Strich-Kodier- Technik,
die eine logarithmische Zeitbasis verwendet ist in der US-PS 38 87 792 beschrieben. In dem dort
erläuterten System wird ein logarithmischer Zeitgenerator gemäß US-PS 38 66 024 verwendet Dieser
logarithmisch arbeitende Strich-Code-Leser ermöglicht daß der gleiche Abtaster von einem schnellen
Leser-Strahl oder auch manuell von einem stiftförmigen Handleser aus dekodieren kann. Das in den letzten
beiden genannten US-Patentschriften beschriebene Verfahren arbeitet logarithmisch, ist jedoch nicht
durchgängig logarithmisch ausgelegt und der entwickelte Zeitgenerator zwingt den Leser als logarithmische
Basis zwei zu verwenden.
Der Erfindung liegt daher die Aufgabe zugrunde, eine Einrichtung zu schaffen, bei der gegenüber dem Stand
der Technik bei einem Mehrbit-Code ein Zwischenspeichern der den einzelnen Code-Segmenten entsprechenden
Impulszahlen entfallen kann.
Bei der eingangs genannten Einrichtung ist dazu erfindungsgemäß vorgesehen, daß die Auswerteschaltung
wenigstens einen Auf/Ab-Zähler enthält, dessen Eingang an den Ausgang des Zeitsignalgenerators
angeschlossen ist, und der in aufeinanderfolgenden Zeitspannen seine Zählrichtung umkehrt und daß eine
Adressiereinrichtung mit den die Breitenverhälinisse von Paaren aufeinanderfolgender Striche und Leerfelder
repräsentierenden Ergcbnis-Zählzuständen des Zählers einen Umsetzer zur Abgabe der zugehörigen
Datensignale ansteuert Die Erfindung hat unter anderem den Vorteil, daß der Umsetzer einen Ausgleich
genau gedruckter Code-Darstellungen ermöglicht, weil er gestattet, variable Zwischenergebnisse einem bestimmten
Verhältniswert zuzuordnen. Ferner ermöglicht die Verwendung eines Auf/Ab-Zählers bei der
Ermittlung der Verhältniszahlen eine Dekodiergeschwindigkeit, die auch bei sehr schnellen Ablesungen
eines aufgedruckten Strich-Codes zu zuverlässigen Ergebnissen führt.
Die Dekodiergeschwindigkeit läßt sich in Weiterbildung der Erfindung dadurch erhöhen, daß an den
Ausgang des Zeitsignalgenerators von einer Sequenzsteuerung gesteuerte Zählergatter angeschlossen sind,
die mehreren, parallelgeschalteten Auf/Ab-Zählern die Ausgangssignale des Zeitsignalgenerators derart zuführen,
daß den einzelnen Auf/Ab-Zählern die während der Ablesung eines Datenzeichens vom Zeitsignalgenerator
abgegebenen Zeitsignale zur Bestimmung mehrerer Differenzen zeitlich nacheinander zugeführt werden,
und daß die Ausgänge der Auf/Ab-Zähler über die von der Sequenzsteuerung gesteuerte Adressiereinrichtung
an den zweckmäßig als Lesespeicher ausgebildeten Umsetzer angeschlossen sind.
'Jm einen logarithmischen Zeitsignalgenerator, wie er etwa aus der US-PS 38 66 024 bekannt ist, mit der
nach der Erfindung ermöglichten höheren Ablesegeschwindigkeit mit einer auf die einzelnen Zeitintervalle
entfallenden höheren Anzahl von Ausgangsimpulsen schaffen zu können, ist für die eingangs genannte
Einrichtung bei einem logarithmischen Zeitsignalgenerator, der einen von einer Impulsquelle getriebenen
Zähler aufweist, erfindungsgemäli vorgesehen, daß der Zähler ein Abwärtszähler ist, der während des
Auftretens eines ersten Steuerimpulses die Ausgangsimpulse der Impulsquelle von einem voreingegebenen
Zählstand herabzählt und bei Erreichen eines vorbestimmten Sollstandes ein Zeitsignal abgibt, und daß der
das Zeitsignal führende Ausgang des Zählers mit einer Eingabevorrichtung zur Eingabe eines neuen voreingegebenen
Zählstandes in den Zähler angeschlossen ist, wobei die nacheinander in den Abwärtszähler eingegebenen
Zählstände auf der Basis eines Logarithmus des Zeitmaßes gewählt sind.
Als besonders schnelle Eingabevorrichtung empfiehlt sich in Weiterbildung der Erfindung ein Speicher, in
welchem die Zählstände gespeichert sind und dessen Ausgang mit einem ersten Eingang des Zählers
verbunden ist, wobei der Ausgang des Zählers an eine Eingabevorrichtung für den zweckmäßig ebenfalls als
Lesespeicher ausgebildeten Speicher gelegt ist.
Der Signallauf wird in Weiterbildung der Erfindung dadurch verkürzt, daß die Impulsquelle über ein
UND-Glied mit einem Auslöseeingang des Zählers verbunden ist, daß ein zweiter Eingang des UND-Gliedes
mit dem Ausgang eines Flip-Flops gekoppelt ist, und daß ein Eingang des Flip-Flops die Abwärlszählung
auslösende START-Impulse und ein zweiter Eingang des Flip-Flops die Zählung unterbrechende STOP-Impulse
aufnimmt. Eine besondere einfache Weiterbildung der Erfindung ergibt sich dadurch, wenn der Ausgang
des Zählers eine Taktimpulsquelle steuert, deren Ausgang mit einem Speicher und Zähler gekoppelten
Speicherausgangsregister sowie dem Zähleingang eines Aufwärtszählers verbunden ist, welcher die in einem
Adressenregister für den Speicher enthaltene Adresse bei Empfang jedes Zeitsignals um eine Einheit
inkrementiert.
Die Erfindung schafft einen relativ preiswerten Linear-Strich-Code-Leser und -Dekoder, basierend auf
dem logarithmischen Verfahren, der leicht, schnell und ohne besonderen Aufwand in ein tragbares Sammelsystem
für Quellendaten eingebaut werden kann, und der weniger Leistung verbraucht, als bislang nach den
bekannten Verfahren für möglich gehalten wurde. Durch Anpassen der Logarithmenbasis an die speziellen
Anforderungen des Systems und durch eine spezielle Ausgestaltung des Taktintervalls in einem Mikroprozessor-Befehlsspeicher
übersteigt die Erfindung bekannte Konzeptionen und schafft eine bedeutend höhere
Effizienz. Das erfindungsgemäße überlegene Konzept senkt sowohl die Kosten wie auch den Energieverbrauch
für tragbare Datensammelsystcme, die mit
tragbaren Lesern arbeiten. Die erhebliche Verbesserung der Wirtschaftlichkeit die die Erfindung ermöglicht, ist unter anderem durch die Verwendung von
Auf/Ab-Binärzählern zur Berechnung des Breitenverhältnisses der Code-Segmente zuzuschreiben. Dadurch
entfällt beispielsweise die Notwendigkeit, einen Zählerüberlauf oder eine mangelnde Zählerfüllung für die
Vorzeichen-Feststellung wahrzunehmen und reduziert die Speicherkapazität die zur Abdeckung des Verhältnisbereichs mit sehr nahe an der oberen Zählgrenze
liegenden Werten erforderlich ist
Das erfindungsgemäße Konzept kann in ein Datensammelsystem integriert werden, das relativ langsame
preiswerte Mikroprozessoren zum manuellen Ablesen der kodierten Information oder Daten benutzt.
Soweit sich die Erfindung in einer Vorrichtung verkörpert, umfaßt sie einen Leser für aufgezeichnete
Daten, die durch die verschiedenen Formen und Muster eines Linear-Strich-Codes repräsentiert werden. Der
Leser enthält eine Einrichtung, die das Abfühlen des die aufgezeichneten Daten repräsentierenden Linear-Strich-Codes
erlauben und für den abgelesenen Code repräsentative elektrische Signale erzeugen. An die
Abfühleinrichtung ist ein Sloppimpulsgeber angeschlossen, der in Abhängigkeit von dem Abgefühlten und der
Feststellung eines Übergangs zwischen Codesegmenten der aufgezeichneten Daten den Startimpuls nach einer
vorbestimmten Zeitspanne erzeugt. Der logarithmische Zeitsignalgenerator, der Zeitsignale auf logarithmischer
Basis erzeugt, spricht auf die Start- und Stoppimpulse an und wird bei jedem festgestellten Übergang entsprechend
gestartet und gestoppt. Zum Zählern der zwischen einem Startimpuls und einem Stoppimpuls
erzeugten Zeitsignale dient ein Auf-Abzähler (ein Startimpuls und ein Stoppimpuls werden für ein
vorgewähltes Paar von Codesegmenten vorgesehen) und liefert eine Ergebniszählung, die für das Verhältnis
der Breiten der vorgewählten Code-Segmente repräsentativ ist. Zwischen dem Zeitsignalgeber und dem
Zähler sind auf die Start-Stop-Impulse ansprechende
Einrichtungen gekoppelt, die die Weiterleitung der Zeitsignale zum Auf/Ab-Zähler steuern. Weiter sind
Einrichtungen dafür vorgesehen, daß der Ergebniszählung im Zähler eine Breiten-Verhältnis-Bewertung in
der Zähleinrichtung zugeordnet wird, um das abgefühlte Muster des Strich-Codes in sein alphanumerisches
Äquivalent umzusetzen.
Die vorstehend erläuterten Merkmale der Erfindung sowie weitere Eigenschaften derselben gehen aus der
nachfolgenden Beschreibung der in den Zeichnungen erläuterten Ausführungsform der Erfindung hervor. Im
einzelnen zeigt
F i g. 1 eine schematische Darstellung eines Zettels mit Strich-Codierung sowie einen optischen Leser in
Stiftform, der an eine Dekodiereinrichtung angeschlossen ist,
F i g. 2 eine schematische Darstellung einer Reihe von Strichen und Leerfeldern, die zwei kodierte Zeichen
bilden und als solche auf dem Zettel aus F i g. 1 aufgetragen sein könnten.
F i g. 3 eine schematische Darstellung eines Zeichens, das die Dezimalziffer Null repräsentiert, sowie die
zugehörige elektrische Signalfolge, die beim Abtasten des Zeichens erzeugt wird. Die Folge zugehöriger
Verhältnisse für die Striche und Leerfelder zum Ablesen der dezimalen Null ist sowohl für das Ablesen von rechts
nach links wie auch für das Ablesen von links nach rechts dargestellt
Fig.4 ein Blockdiagramm einer Verhältnis-Ermittlungsschaltung, die die strichkodierten Daten dekodiert
Fig.4A eine grafische Darstellung einer Aufzeichnung einer Dezimalziffer Null als Strich-Code, in
welcher die zum Dekodieren des Strich-Codes erforderlichen Verhältnisse sowie in Tabellenform die Funktionen und Ergebnisse des Zählers aus Fig.4 erläutert
sind,
F i g. 5 ein Blockdiagramm einer Schrittsteuerung, die
■ in der Schaltung aus F i g. 4 verwendet werden kann,
Fig.6 ein Blockdiagramm eines logarithmischen
Zeitsignal-Generators aus der Schaltung der F i g. 4 und
26 54 | t im einzelnen | beschrieben, | ( | 0 0000011 | bei dem die | 765 | 8 | die von drei | weißen | Leerfeldern | k | entnehmen kann. In dieser Tabelle I | ) und für | sind die | I | I | 0 | 1 | 11 I | 1 | S 1001000 | 1 | 100 1 | ■ | $ | ;— | • | 7-bit code | I | I I | !■ | 1 1 0 | 0 1 0 | 0 10 | α ι ι 1 |
|
und zwar zunächst in Form des beim | Ablesen des | W | TABELLE | für die Ziffern 0-< | gewisse i; | Strichfolge des Zeichen | 00 | ■■■■ ■ | 0000 | I Strichfolce des | |
M ' | 0100 ■ 1 |
IH I | Il 1 0 1 |
I I | oo 1 | ||||||||||||||||||||
eines Mikro-Prozessors mit einem Lese-Speicher aus | linearen Strich-Codes »CODABAR« verwendeten Ver- 5 | Strichen ,> | vorgewählte Buchstaben und | Symbole mit ihren [> | ^odes | 0000 1 | ■ I | Il | 0001100 | "odas | I I | 0 1 0 | 0 1 | I | 1 0 1 | ι I ρ | ||||||||||||||||||||
7 | dem logarithmischen Zeitsignal-Generator der F i g. 6. | fahrens. DerCODABAR-Strich-Code ist ein 7-Bit-Code | j 0000110 | sieben kodierten Elemente aus vier schwarzen | getrennt )' | CODABAR-Zuordnungen aufgeführt. | I | ■ | • | 1 0 | 000 | ■ | 1 0 1 ( | I 000 |
1 1 | I | I 1 | |||||||||||||||||||
Die Erfindung wird jetz | zur Darstellung alphanumerischer Daten, | 2 0001001 | bestehen, | werden, was man im einzelnen aus der nachstehenden P | o|o | • ■ * |
I | • | 1 1 0 | !■■ | Il | 1 1 | oo · ι | |||||||||||||||||||||||
Tabelle I | 1 0 I |
1 0 | 0011000 | Il | !■ I 1 000 1 |
00 | 000 | 001 10 IVl |
H | I ^ 0 1 \ |
||||||||||||||||||||||||||
Ziffer 7-bitcode | 3 ItQOOOO | Zeichen | 000 1 00 1 | I | + | 1000101 | 00 | ■ | Il | ■■■ Ά | ||||||||||||||||||||||||||
Il I | • | 1 | 0 1 | ο ι I | ||||||||||||||||||||||||||||||||
4 0010010 | 1 1 0 | 0 1 ■ |
a | 1010001 | Bi | I | Hi ι | |||||||||||||||||||||||||||||
■ ι | ■ I | I 00 | 1- ■ |
000 |
100 I
■ 1 i |
|||||||||||||||||||||||||||||||
5 1000010 | 00 1 00 | ■ 1 | b | 1010100 | 00 | Il | D Ί I | |||||||||||||||||||||||||||||
·. ■ 1 | I ■ I | 0000 | C | 0010101 | 000 | ■ ( | ||||||||||||||||||||||||||||||
1 0000 | Il | Il | 1 o I | |||||||||||||||||||||||||||||||||
■ II | 000 | d | 0011010 | I i | ||||||||||||||||||||||||||||||||
MB M | 0 1 I | |||||||||||||||||||||||||||||||||||
• 6 0100001 0 1 0 0 0 I Il |
11 | • t | 0101001 |
■ ι
1 F |
||||||||||||||||||||||||||||||||
7 0100100 ( | 0001011 | H i | ||||||||||||||||||||||||||||||||||
3 1 00 | • | η | 1 0 ϊ | |||||||||||||||||||||||||||||||||
I Il | 0001110 | ι ι | ||||||||||||||||||||||||||||||||||
8 0110000 I | 1 0 % 1 |
|||||||||||||||||||||||||||||||||||
D 1 1 | 00*11010 | |||||||||||||||||||||||||||||||||||
I ■ | 0 1 | |||||||||||||||||||||||||||||||||||
0101001 | ■ | |||||||||||||||||||||||||||||||||||
1 | ||||||||||||||||||||||||||||||||||||
0001011 | Hi | |||||||||||||||||||||||||||||||||||
ι 0' | ||||||||||||||||||||||||||||||||||||
0001110 | I | |||||||||||||||||||||||||||||||||||
Die Daten werden gemäß dem CODABAR-Strich-Code in den Breitenverhältnissen der Striche und
Leerfelder sowie ihrer sequentiellen Anordnung eindeutig dargestellt. Ein Dekodier-Algorithmus für den
CODABAR-Strich-Code ist in der US-PS 37 84 792 erläutert, so daß hier nur zusammenfassend darauf
eingegangen zu werden braucht.
Aufgrund variabler Verteilung des Farbstoffes beim Drucken werden Breitenvergleiche zwischen einem
Strich und einem benachbarten Strich sowie zwischen ι ο einem Leerfeld und dem benachbarten Leerfeld
durchgeführt, um gegenüber den Drucktoleranzen weniger empfindlich zu bleiben. Dieser Umstand ist für
die Erfindung nicht von wesentlicher Bedeutung, jedoch wird zur Vereinfachung jene Folge für die nachfolgende
Beschreibung der Ausführungsbeispiele zugrunde gelegt.
Wenn die Breiten zweier benachbarter Striche oder Leerfelder zur Bestimmung ihres Verhältnisses dividiert
werden, gibt es drei mögliche Verhältnisse, nämlich (1) die erste Breite ist kleiner als die zweite, (2) die erste
Breite ist größer als die zweite, und (3) die erste Breite ist ungefähr gleich der zweiten. Diese drei möglichen
Beziehungen werden in der erwähnten Patentschrift mit A, B und C benannt. Für die Dezimalziffer Null ergibt
sich damit aus der Tabelle I für das dort gezeigte CODABAR-Symbol beim Ablesen von links nach rechts
(.1,2,3...):
Strich l/Strich 2 = C jU
Strich 2/Strich 3 = C
Strich 3/Strich 4 = A
Strich 3/Strich 4 = A
Leerfeld 1/Leerfeld 2 = C
Leerfeld 2/Leerfeld 3 = A
Leerfeld 2/Leerfeld 3 = A
v>
Daher kann die Zahl Null auch so kodiert betrachtet werden:
Strichfolge CCA
Leerfeld-Folge CA
Wenn das gleiche Symbol von rechts nach links gelesen wird, dann ergibt sich die Kodierung für die
Ziffer Null so:
4r>
Strichfolge BCC
Leerfeld-Folge BC
Leerfeld-Folge BC
Wenn die Folgen dieser Breitenverhältnisse festgestellt worden sind, kann das zugehörige Zeichen in die
äquivalenten Daten mit Hilfe eines in geeigneter Weise kodierten Lesespeichers ROM oder eines programmierten
Logikfeldes PLA umgesetzt werden. Diese können außerdem nicht vereinbarte und damit ungültige Folgen
zurückweisen. Es ist wesentlich, wie die aufeinanderfol genden Verhältnisse zwischen Strichen und Leerfeldern
festgestellt werden.
Wie in der genannten Patentschrift 37 84 792, Spalte
11, Relationen 16—18, beschrieben, gilt
60
Relation Λ impliziert f„_2<
t£\/K)
Relation B impliziert in-2>
t„(K)
Relation Cimpliziert t„(K)> tn~2>
φ/Κ)
wobei tn-2 die zum Oberfahren eines Striches oder eines
Leerfeldes, das dem letzten zu messenden vorhergeht,
benötigte Zeit, U, die zum Oberstreichen des letzten
Striches oder Leerfeldes benötigte Zeit und K eine Konstante bedeuten, die für das CODABAR-System in
der genannten Patentschrift den Wert 1,6 annimmt.
Die Konstante K ist als optimale Entscheidungsschwelle zwischen breit/eng und ungefähr gleichen
Verhältnissen gewählt. Für die Zwecke der vorliegenden Beschreibung wird dies noch einmal in der
folgenden Form dargestellt:
Relation A impliziert (Βη-,/Βη)<[\/\,6);
Relations impliziert (Bn-. \IB„)> (1,6) und
Relation Cimpliziert
Relations impliziert (Bn-. \IB„)> (1,6) und
Relation Cimpliziert
wobei Bn die Breite des vorhergehenden Striches und
Bn-1 die Breite des Striches ist, der dem vorhergehenden
Strich vorhergeht.
Um die Beschreibung der Dekodiereinrichtung möglichst klar und kurz zu halten, werden nur Striche
erörtert, obgleich die wiedergegebenen Beziehungen auch für Leerfelder gelten.
Wenn schließlich der folgenden logarithmische Ausdruck
log (Bn-UBn)= log Bn-, - log Bn
daraufhin untersucht wird, die Breitenverhältnisse der kodierenden Segmente zu bestimmen, dann kann das
Verhältnis durch Subtraktion gewonnen werden, wenn die Logarithmen der Breiten verwendet werden.
Die aus Bn und Bn-1 aufgesammelten Werte könnten
zur Adressierung einer Tabelle dienen, in welcher die Logarithmen der Werte gespeichert sind. Dies erfordert
jedoch noch immer die Aufsammlung und das Bereithalten eines relativ großen Werte-Bereiches und
einer großen Tabelle. Es wäre wirtschaftlicher, den Logarithmus derjenigen Zeit zu messen, mit der die
Striche vor dem Leser vorbeilaufen, also der Lesezeit. Dies könnte direkt erreicht werden, wenn der zur
Messung der Lesezeit verwendete Takt nach einem logarithmischen Gesetz auftritt, etwa wie
/. = Tof
(i)
= N.
Diese logarithmische Zunahme schreibt vor, daß die durch t„ repräsentierte verflossene Zeit das erste
Taktintervall T0 mal / hoch N ist Dies kann deutlich
gemacht werden durch die Tabelle II, wobei die Basis des Logarithmus /=2 ist und die erste Taktperiode
T0= 1 Sekunde beträgt:
55
N 0
t. (sec) I
1 2 3
2 4 8
4
16
5
32
6
64
64
wobei die Werte von Jn= To/*, 7J= l,/=2 betragen.
Wenn t„Jtm—2 ist, dann wird N2-Ni = I, unabhängig, ob tn einen Wert von 4 Sekunden oder einen Wert
von 128 Sekunden annimmt.
Die Aufgabe besteht nun darin, einen Wert für /so zu
wählen, der für die gewünschte Auflösung und gewünschte Zahl von Verhältnissen geeignet ist Dies
kann erreicht werden, indem zunächst die Anzahl von Zuständen pro Verhältnis bestimmt wird, die für die
gewünschte Auflösung erforderlich sind. Da die
Zustände (Zahlen) eine quantisierte Darstellung der Verhältnisse sind, besteht ein Quantisier-Fehler. Wenn
nur ein Zustand pro Verhältnis vorlage, würde das Verhältnis nur innerhalb eines Bereichs von ±50%
ihres wahren Wertes bekannt sein. Die Anzahl von erforderlichen Zuständen ist das Reziproke des
Zweifachen des Quantisierfehlers. Wenn die Verhältnisse regulär sind, dann ist die Gesamtzahl der erforderlichen
Zustände das Produkt aus der Anzahl der Zustände pro Verhältnis und der Gesamtzahl der Verhältnisse.
Der Logarithmus der Basis 2 jener Zahl gibt die Anzahl Her binären Bits, die zur Darstellung sämtlicher
Zustände erforderlich ist
Wenn die Anzahl der Zustände bekannt ist, kann die Basis des logarithmischen Taktes bestimmt werden.
Wenn diese Zahl / in die Potenz erhoben wird, die die Grenze zwischen den Verhältnissen ist, dann sollte sie
gleich der Entscheidungsschwelle zwischen diesen Verhältnissen sein. Diese Bestimmung kann nach dem
folgenden Verfahren durchgeführt werden:
Man nehme das Reziproke der gesamten Verteilung des gewünschten Quantisierfehlers (Auflösung). Das
Ergebnis ist die Anzahl der Zustände, die zum Darstellen jedes Verhältnisses erforderlich sind. Diese
Anzahl mal der Anzahl der einzelnen Verhältnisse gibt die Gesamtzahl der erforderlichen Zustände. Man
nehme den Zweier-Logarithmus dieser Zahl und runde auf die nächst höhere ganze Zahl auf. Dies ist die Zahl
der binären Bits, die zur Darstellung sämtlicher Verhältnisse erforderlich ist Zur Vervollständigung der
logarithmischen Basis / nehme man die Entscheidungsschwelle K in eine solche Potenz, deren Hochzahl der
Kehrwert die Hälfte der Zustände pro Verhältnis SR ist.
J = KSRn .
Wenn beispielsweise der CODABAR-Strich-Code mit einem Quantisierfehler von ±10% dargestellt
werden soll, wird die Bestimmung auf folgende Weise durchgeführt:
Zustände pro Verhältnis = l/(o.i+o.i) = 5
Gesamtzahl der erforderlichen Zustände
=5x3=15
Gesamtzahl der erforderlichen Zustände
=5x3=15
Iog2 (15) = 3,91, sämtliche Verhältnisse können also
durch 4 binäre Bits dargestellt werden.
Die logarithmische Basis der Zählung,
H) _i_
J = (1,6)2·5 = 1,2068.
Wenn der Wert für einen schmalen Strich von dem Wert für einen breiten Strich subtrahiert wird, ist das
ir> Ergebnis positiv. Im umgekehrten Fall wird das
Ergebnis negativ. Die vier Binär-Bit-Darstellung muß in diesem Fa!! bipolaren Wert repräsentieren. Wenn, das
Verhältnis durch Aufwärtszählen eines 4-Bit-Binär-Zählers während des ersten Striches und Abwärtszählen
während des zweiten Striches berechnet wird, könnte der Zähler »unterfließen«, wenn auf einen schmalen ein
breiter Strich folgt Wenn beispielsweise der Zähler von Null ausgehend startet, dann um fünf Einheiten nach
oben und danach um sieben Einheiten abwärtszählt.
würde das Ergebnis in dem Zähler 14 (1110) betragen.
Tabelle III zeigt sämtliche Zustände eines 4-Bit-Binärzählers, die jedoch so verschoben sind, daß die Ziffer
Null in der Mitte lieg' (zentriert ist). Die obere Zeile I der Tabelle Hl führt die Binärzähler-Zustände auf, die
i» zweite Zeile II zeigt die numerischen Ergebnisse N der
Verhältnis-Berechnungen, die dritte Zeile III gibt die tatsächlichen Verhältnisse an für die unter den oben
stehenden Bedingungen gewählten Werte, und die vierte Zeile IV gibt die Breitenverhältnisse A, B oder C
r> dar, die den Verhältnissen und den Zählerzuständen zugeordnet sind. Man bemerke, daß die Relation B sechs
Werte besitzt während die anderen beiden nur fünf besitzen. Der Grund wird weiter unten erläutert
I | 1001 | 1010 | ion | 1100 | 1101 |
! | -7 | -6 | -5 | -4 | -3 |
I |
1
τττΊ |
1 37ÖT ' |
1 2756 |
1 2712 |
1 1776 |
1 | ' I | ■- | |||
1110 | 1111 | 0000 | 1 | 1,2068 | 0001 | 0010 |
-2 | -1 | 0 | 1 | 2 | ||
1 | 1 | 1,206 | 8 1,46 | |||
1,46 | ||||||
I | M | |||||
y 0011 | OiOO | 0101 | 0110 | Olli | 1000 |
/. ' | 4 | 5 | 6 | 7 | β |
1,76 | 2,12 | 2,56 | 3,09 | 3,73 |
Jetzt muß To ein Wert zugeordnet werden. Zur Ausführung dieser Bestimmung sei B\ gleich der
Lesezeit eines ersten Striches und B2 der Lesezeit eines zweiten Striches und /= 1,2068. Dann gilt:
N1-N2 = log, &- - log -^ = log, (^- ^) = log, -fj-/ο /o \ 'o D ß
woraus sich ergibt, daß der Wert für 7ö das Ergebnis für
das Verhältnis nicht beeinflußt Dies gilt nur für eine logarithmische Relation und wäre für eine lineare
Relation nicht richtig.
In dem einfachsten Mikro-Prozessor-System gibt es nur eine zentrale Verarbeitungseinheit, so daß sie
jeweils nur eine Aufgabe bearbeiten kann. Wenn sie zur Erzeugung einer logarithmischen Zeitbasis verwendet
wird, würde sie diese Aufgabe an jeder Übergangsstelle vom Strich zum Leerfeld oder vom Leerfeld zum Strich
kurz zu unterbrechen haben, um die Ergebnisse zu verarbeiten und zu speichern. Daher ist es sehr
erwünscht, eine feste Verzögerung (To) zu haben, ehe die logarithmische Zählung beginnt. Der Wert für To
wird durch Dividieren des schmälsten Strichs oder Leerfeldes durch die höchste Lesegeschwindigkeit
gewonnen. Wenn beispielsweise der schmälste Strich 0,152 cm breit ist und die größte Lesegeschwindigkeit
76,2 cm pro Sekunde beträgt, dann ist T0 200 Mikrosekunden, dem eine logarithmische Zählung von
Null zugeordnet wird. Jetzt können die Taktintervalle aus der Gleichung
i„=(200xl0-")(l,2068)/v
berechnet werden.
Die Tabelle IV enthält die Ergebnisse für 15 Millisekunden. Man bemerke, daß 200 Mikrosekunden
nach jedem Übergang für einfachere interne Aufgaben zur Verfügung stehen, was selbst für relativ langsam
arbeitende zur Zeit erhältliche Mikroprozessoren adäquat ist.
N | 200<1.2068)Λ | N | 200(1,2068 )N |
0 | 200 microscc. | 12 | 1910 |
1 | 240 | 13 | 2 300 |
2 | 290 | 14 | 2 780 |
3 | 350 | 15 | 3 360 |
4 | 420 | 16 | 4 050 |
5 | 510 | 17 | 4 890 |
6 | 620 | 18 | 5 900 |
7 | 750 | 19 | 7 120 |
8 | 900 | 20 | 8 590 |
9 | 1090 | 21 | 10 370 |
IO | 1310 | 22 | 12510 |
Il | 1580 | 23 | 15 100 |
Logiirithinischc Taktzeiten (gerundet auf volle
10 Mikrosekunden)
10 Mikrosekunden)
Man betrachte nun den Fall, bei dem ein Strich, dessen
Breite das 2.56fache der Breite eines schmalen Striches ist, dem schmalen Strich vorhergeht, und daß der Leser
mit maximaler Lesegeschwindigkeit bewegt wird. Ein Zähler wird während des ersten Striches aufwärts
zählen und während des zweiten Striches abwärts zählen. Wenn die Aufwärtszählung 5 beträgt und die
Abwärtszählung 0 beträgt, ergibt das das Ergebnis 5 (vgl. Tabelle III und IV). Wenn jetzt die Lesegeschwindigkeit
Vio der maximalen Geschwindigkeit ist, dann ergeben sich 17 Einheiten Aufwärtszählung und 12
Einheiten Abwärtszählung (Tabelle IV). Obgleich dies die Zählerkapazität überschreitet, bleibt das Ergebnis
richtig. Dies bedeutet, daß der Zähler einen Bereich von Verhältnissen enthalten muß, die angetroffen werden
können, jedoch nicht den gesamten Bereich der Zählungen fassen muß, d. h. Überlauf und »Unterlauf«
jo können ignoriert werden.
Während des Ablesens des ersten Teiles eines Strich-Codes wird der Leser gewöhnlich beschleunigt,
Verzögerungen sind klein. Während der Beschleunigung werden die Striche und Leerfelder in zunehmend
kürzeren Zeitspannen vorbeigeführt. Man betrachte den vorhergehenden Fall, bei dem ein breiter Strich in 5
Millisekunden vorbeigeführt wird und eine Zählung von 17 ergibt, daß jedoch der Leser beschleunigt wird.
Aufgrund der Beschleunigung nehme man jetzt an, daß
-in der schmale Strich eine Zählung von 9 statt von 12
ergibt. Dies würde eine sehr hohe Beschleunigung bedeuten, die jedoch bei Berücksichtigung von Drucktoleranzen
durchaus annehmbar ist. Das Ergebnis würde 1000 (8) sein, das gemäß Tabelle III das richtige Ergebnis
•n der Relation ß ergibt. Jedoch ist 8 ein Extrawert, der der
linken Seite der Tabelle III als eine Α-Relation mit einem Verhältnis von 1/4,5 zugeordnet werden könnte.
Wenn dies geschähe, würde die vorstehend erläuterte Situation ein falsches Ergebnis liefern. Er wird daher
Vi einem zusätzlichen B-Verhältnis zugeordnet, um eine
bessere Toleranz bei Beschleunigung zu erhalten.
Wähernd die Verhältnisse durch Auf-/Ab-Zählung besonders leicht berechnet werden können, wenn mehr
als ein Paar von Verhältnissen vorliegt, muß jedoch Auf-
■>-, und Abzählung gleichzeitig geschehen. Um ein CODA-BAR-Symbol
in der richtigen Weise zu dekodieren, müssen 5 Verhältnisse für jedes kodierte Symbol
berechnet werden, wobei eine der Gruppen von fünf Verhältnissen wie folgt zu notieren ist:
Verhältnis I
Verhältnis 2
Verhältnis 3
Verhältnis 4
Verhältnis 5
Verhältnis 2
Verhältnis 3
Verhältnis 4
Verhältnis 5
Strich|/Strich2
Leerfeld|/Leerfeld2
Striche/Strich
Leerfeld;/Leerfeldi
Strich i/Strich4
Leerfeld|/Leerfeld2
Striche/Strich
Leerfeld;/Leerfeldi
Strich i/Strich4
wobei alles weitere in Fig. 4A für die CODABAR-Darstellung
der Dezimalziffer Null angegeben ist. Man bedenke, daß. wie oben erwähnt, andere Verhältnisse
für diesen Zweck gewählt werden können. Diese Berechnung der ersten fünf Verhältnisse erfordert ein
Minimum von drei Zählern, wie F i g. 4 erläutert, und
ihre Sequenz und ihr Betrieb sowie die sich ergebenden Verhältnisse sind in Fig.4A angegeben, worauf noch
eingegangen wird.
In einem Mikroprozessor können diese Zähler Index-Register oder Speicherstellen sein, je nach dem
Aufbau des Mikroprozessors. Da Zählen kann in der praktischen Ausführung in einem Akkumulator geschehen
und das Zählergebnis bzw. die Zählstände können in geeigneten Registern gespeichert werden. Programmierbare
Verzögerungen können in dem Programmspeicher für einen Mikroprozessor zweckmäßig verwirklicht
sein. Mikroprozessoren werden in den zur Zeit ι5
im Handel befindlichen tragbaren Datensammelsystemen verwendet Ein derartiges System ist das
MSI-Datensammelsystem, Modell 2100, das mit einem optischen Leser zum Einlesen der strichkodierten Daten
in das System ausgerüstet ist
Unter Berücksichtigung des Vorstehenden kann die Dekodiereinrichtung anhand der Figuren leichter
verstanden werden. F i g. 1 zeigt das tragbare Datenerfassungssystem 10 schematisch in Blockform, an
welches ein manuell bedienter Leser 11 zum Einlesen der auf einem Zettel 12 notierten strichkodierten Daten
in das Datenerfassungssystem angeschlossen ist. Das Datenerfassungssystem enthält in diesem Beispiel einen
Mikroprozessor lOPzur Aufnahme der Signale aus dem Leser 11, welche bei der Relativbewegung zwischen
dem stabartigen Leser 11 und dem Zettel 12 und dem damit verbundenen Ablesen von dem strichkodierten
Zettel 12 erzeugt werden. Der strichkodierte Zettel 12 ist gemäß Darstellung mit zwei vollständigen Zeichen
und einem Teil eines dritten Zeichens beschriftet, wobei die Zeichen auf dem Zettel 12 in Längsrichtung
ausgerichtet sind. Der Strich-Code kann der lineare CODABAR-Strich-Code sein und aus sieben Binärbits
für jedes alphanumerische Zeichen bestehen. Dazu kann der Leser 11 ein optischer Leser sein, der von Hand über
einen stationär gehaltenen strichkodierten Zettel 12 hinweggeführt wird und auf diese Weise die Relativbewegung
zwischen Leser 11 und Zettel 12 erzeugt, so daß
die gewünschten Signale zum Dekodieren der strichkodierten Daten in verstehbare Information zur Weiterverarbeitung
in dem System 10 erzeugt werden. Die Teile von Wörtern, die auf dem Zettel 12 mittels
CODABAR-Strichcode kodiert sind, sind in Fig.2
erläutert. In der beispielhaft dargestellten Form sind die ersten beiden Zeichen eines mittels CODABAR-Code
aufgezeichneten Wortes die Dezimalziffern 0 und 1, welche durch die abwechselnde Anordnung von
schwarzen Strichen und weißen Leerfeldern in F i g. 2 wiedergegeben sind. Das Ablesen des die Binärzeichen
repräsentierenden Musters und das Vergleichen der Gruppe von Binärzeichen mit jenen aus Tabelle I zeigt,
daß die ersten zwei Zeichen auf dem Zettel 12 tatsächlich die Dezimalziffern 0 und 1 wie dargestellt
repräsentieren. Die Ausgangssignale aus dem Leser 11,
die in das Datenerfassungssystem 10 eingegeben werden, sind analoge Darstellungen der strichkodierten
Information.
Eine typische Reihe von elektrischen Signalen, die von dem Leser 11 erzeugt werden könnte, zeigt F i g. 3.
Die Dezimalziffer 0 wird im CODABAR-Code dargestellt zusammen mit den Ausgangssignalen, die bei dem
Darüberhinfahren des Lesers über den Abschnitt des Zettels erzeugt werden, der die Dezimalziffer 0 trägt.
Die Kodiersegmente des Strich-Codes für die in F i g. 3
dargestellte Dezimalziffer 0 sind als Striche 1,2,3, und 4
erläutert zwischen denen Leerfelder 1, 2 und 3 angeordnet sind. Die entsprechenden elektrischen
Ausgangssignale aus dem Leser 11 sind unmittelbar unterhalb der Striche und Leerfelder angegeben und
durch die Striche Si, Bi usw. und Leerfelder Si, Si usw.
bezeichnet Das analoge Äquivalent der auf einem Zettel aufgezeichneten Information wird erfindungsgemäß
so verarbeitet, daß die durch die Striche und Leerfelder dargestellte Information durch Feststellen
der relativen Breiten der Striche und Leerfelder für ein Zeichen sowie ihrer Folge gewonnen wird. Dazu
werden, wie bereits bemerkt, die Breiten zweier Striche
oder Leerfelder daraufhin verglichen, in welche der drei unterschiedlichen Verhältnisbeziehungen sie fallen. Die
Strich- oder Leerfeld-Kodiersegmente, die mit dem nächsten sequentiellen Segment verglichen werden,
werden in der Breite entweder äquivalent sein oder eine wird größer als die andere seia Diese oben definierten
Beziehungen werden als die Verhältnisbeziehungen A, B und C bezeichnet Die sequentielle Anordnung von fünf
zugeordneten Verhältnissen A, B und C für die sieben Binärbit-Kodiersegmente wird zur endgültigen Dekodierung
eines Zeichens in sein äquivalentes alphanumerisches Zeichen gemäß Tabelle I benutzt Die Sequenz
der sich ergebenden, zugeordneten Verhälinisbeziehungen
oder der sich ergebenden zugeordneten Verhältnisse A, B und C hängen von der Richtung ab, in der ein
Zeichen gelesen wird, d. h. von rechts nach links oder von links nach rechts. F i g. 3 zeigt die zwei Folgen der
Verhältnisse A, B und C für die Dezimalziffer Null, die
sich aus dem Lesen in beiden Richtungen ergeben. Wenn eine strichkodierte Information von links nach
rechts gelesen wird, stellt man beim Vergleich des Striches 1 mit Strich 2 und Leerfeld 1 mit Leerfeld 2 und
Strich 2 und Strich 3 usw. und Leerfeld 2 mit Leerfeld 3, fest, daß die sich ergebende Sequenz sich zu CCA für die
Striche und CA für die Leerfelder ergibt.
Wie man sich erinnern wird, stellt das Symbol C dar, daß die beiden verglichenen Kodiersegmente gleich
sind. Bei Betrachten der Strichsequenz sieht man, daß dies wahr ist, weil Striche Si und Bi und Ss gleich sind. In
ähnlicher Weise zeigt die Verhältniszuweisung A an, daß B4 breiter ist als B3. Nach der gleichen Logik ergibt
sich, daß die zugeordneten Verhältnisse für die Sequenz der Leerfelder zu CA gehören, was anzeigt, daß, soweit
das Verhältnis C betroffen ist, die Leerfelder Si und S2
gleich sind, während das Leerfeld S3 größer als das
Leerfeld S2 ist, letzteres als Folge der Zuweisung zu dem
Verhältnis A für diese Kodiersegmente. Durch visuellen Vergleich dieser zugeordneten Verhältnisse für die
Leerfelder aus Fig.3 erkennt man, daß die richtigen Ergebnisse sich einstellen, wenn man gemäß dieser
Logik vorgeht.
In ähnlicher Weise gilt die gleiche Logik, wenn die strichkodierte Information von rechts nach links
bezüglich F i g. 3 gelesen wird. Die gleichen Breitenverhältnisse gelten mit der Ausnahme, daß jetzt das
umgekehrte Verhältnis zwischen den Segmenten eines Paares besteht, wenn ein Segment breiter ist als das
andere. So merkt man beispielsweise für die Strichfolge, daß das zugeordnete Verhältnis B anzeigt, daß S4
größer ist als S3, was der richtigen, aufgezeichneten Relation entspricht. Die Relation Cist die gleiche für die
beiden Richtungen des Abtastens.
Es wird jetzt die Dekodiereinrichtung untersucht, die gemäß der speziellen, erwähnten Logik das hier
zugrunde liegende Konzept zur Feststellung der
Verhältnisse zwischen Kodiersegmenten verwirklicht Auf Fig.4 wird dabei besonders Bezug genommen.
Fig.4 zeigt ein Blockschaltbild der Verhältnis-Bildungsschaltung
zur Bestimmung der Verhältnisse zwischen aufeinanderfolgenden vorgewählten Kodiersegmenten
bei Verwendung einet logarithmischen Zeitsignalgenerators. Das Eingangssignal für diese
Verhältnisbildungsschaltung ist das Schwarz/Weiß-Analogsignal aus dem Leser 11 von der in Fig.3
gezeigtes Art. Das Signal aus dem Leser 11 wird einer
Sequenzsteuerung 20 zugeführt die ein Stoppsignal bei Feststellung eines Obergangs von einem Typ des
Kodiersegments zum anderen Typ oder bei einem Übergang zwischen einem Strich und einem Leerfeld
oder vom Leerfeld zum Strich erzeugt Das Sequenz-Ausgangssignal liefert ferner ein Startsignal nach einem
vorbestimmten Zeitintervall nach der Erzeugung eines Stoppsignals. Diese Stopp-Startsignale dienen zur
Betriebssteuerung der Verhältnis-Bildungsschaltung gemäß Fig.4. Im einzelnen werden die Start/Stopp-Signale
zur Steuerung der Erzeugung der Zeitsignale aus dem logarithmischen Zeitsignal-Generator 21 verwendet
Die Start/Stopp-Signale dienen ferner in Kombination mit dem Zeitsignal aus dem Zeitsignal-Generator
21 zum Steuern der Abgabe der Ausgangssignale aus Zählergattern 22. Die Zählergatter 22 bestimmen die
Weitergabe der Zeitsignale aus dem Zeitsigna'-Generator 21 zum einem von drei Auf/Ab-Zählern 23, 24 und
25, die mit dem Ausgang der Zählergatter 22 verbunden sind und deren Ausgangsimpulse aufnehmen und zählen.
Die Zählergatter 22 steuern ferner, welcher von den Auf/Ab-Zählern 23, 24 und 25 die Zeitsignale aus dem
Zeitsignal-Generator 21 aufnimmt, und bestimmen ferner, ob die Zähler aufwärts oder abwärts zählen, ob
ein Zählstand in einem speziellen Zähler gehalten wird, oder ob ein Zähler zurückgesetzt wird.
Die Zeitsignale aus dem logarithmischen Zeitsignal-Generator 21 werden während des Zeitintervalls
zwischen der Aufnahme eines Startimpulses am Zeitsignal-Generator 21 und einem nachfolgenden
Stoppimpuls erzeugt. Da die Start/Stopp-Impulse in Abhängigkeit von der Feststellung eines Übergangs von
einem Kodiersegmenttyp zum nächsten erzeugt werden, stellt die Anzahl der während eines Zeitintervalls
erzeugten Zeitsignale ein Maß für die Breite eines speziellen Kodiersegments dar, das von dem Leser 11
gelesen wurde. Die Anzahl der Zeitsignale für zwei Kodiersegmente kann zur Bestimmung ihrer relativen
Breiten dadurch herangezogen werden, daß diese Zeitsignale in den gleichen Zähler eingegeben werden.
Der Endzählstand des Zählers ergibt ein Endergebnis, das das Verhältnis der Breiten der beiden Segmente
entsprechend der oben im Zusammenhang mit Tabelle III erläuterten Logik repräsentiert. Die Ergebniszählungen
aus dem Zähler 23, 24, 25 werden dann unter Steuerung der Adressiereinrichtung 26 auf einen
Umsetzer 27 etwa in Form eines Lesespeichers (ROM) gegeben. Die Adressiereinrichtung 26 spricht auf
vorgewählte Zustände aus der Sequenzsteuerung 20 an und leitet die Endzählungen aus einem der Zähler bei
vorgewählten Intervallen dem als Lesespeicher dargestellten Umsetzer 27 zu. Der Umsetzer 27 ordnet eines
der Verhältnisse A, B oder Centsprechend der Angaben aus der Tabelle III der Ergebniszählung aus einem
Auf/Ab-Zähler zu, um das jeweilige, vom Leser 11 abgefühlte Zeichen zu dekodieren. Dazu werden fünf
Verhältnisse in Form der Verhältniszuweisung A, ßoder
C der Ergebniszählung aus den Zählern 23, 24, 25 zugeordnet und einem Dekodierer 28 zugeleitet der in
F i g. 4 in Blockform dargestellt ist Der Dekodierer 28 spricht auf die fünf Verhältnisse an und erzeugt ein
■> Ausgangssignal, das dem dekodierten alphanumerischen Zeichen entspricht
Nach dieser allgemeinen Beschreibung der Verhältnis-Bildungsschaltung
werden die einzelnen Elemente einschließlich des Verhältnis-Detektois, wie etwa die
ίο Sequenzsteuerung 20, der Zeitsignal-Generator 21
sowie die Betriebsweise der Auf/Ab-Zähler 23, 24 und 25 mehr im einzlenen erläutert Wie man insbesondere
aus Fig. 5 erkennt zeigt sie schematisch eine Ausführungsform der Sequenzsteuerung 20. Die Se-
quenzsteuerung 20 weist einen Ubergangsdetektor 30 auf, der auf festgestellte Übergänge oder Sprünge
zwischen den verschiedenen, obenerwähnten Kodiersegmentarten anspricht Dazu ist der Übergangsdetektor
30 an einen Stoppimpulsgeber 31 angeschlossen, welcher ein Stoppsignal in Abhängigkeit von der
Feststellung eines Übergangs zwischen einem Kodiersegment einer Art und einem Kodiersegment einer
anderen Art erzeugt Der Ausgang des Stoppimpulsgebers 31 gelangt zu einem Startimpulsgeber 32 über eine
Verzögerungsschaltung 33. Die aus dem Stoppimpulsgeber 31 erzeugten Stoppirnpulse werden am Ausgang
des Startimpulsgebers 32 eine vorgewählte Zeitspanne nach der Erzeugung der Stoppimpulse auftreten und
dieser Impuls wird als Startimpuls bezeichnet Die
jo Startimpulse dienen zum Aufwärtszählen eines 4-Bit-Zählers
34. Der Ausgang des Startimpulsgebers 32 wird dann direkt auf den Zählereingang des 4-Bit-Zähiers 34
gegeben, der die vom Startimpulsgeber 32 erzeugten Impulse zählt. Die Ausgangssignale aus dem 4-Bit-Zähler
34 entsprechen mehreren Binär-Zuständen, die dem jeweils angenommenen Zählstand entsprechen. Diese
Zustände des Zählers 34 werden dekodiert in einem Dekoder 35, der auf die Binärzustände des Zählers 34
anspricht und neun, diese repräsentierende Ausgangssignale erzeugt Die Ausgänge des Dekodierers 35
werden daher als die Zustände 0 — 8 in F i g. 5 bezeichnet Acht Zustände werden aus dem Zähler 34
zum Steuern des Lesens der sieben Kodiersegmente des Strichcodes verwendet, während der neunte Zustand
zum Rückstellen des Zählers 34 als Vorbereitung für die nächste Leseoperation benutzt wird. Dazu ist ein
UND-Gatter 36 ausgangsseitig mit dem Rückstelleingang des Zählers 34. verbunden. Die beiden Eingänge
des UND-Gatters 36 stammen einerseits von dem »8«-Ausgang des Dekoders 35 und andererseits direkt
vom Ausgang des Stoppimpulsgebers 31.
Aus der vorstehenden Beschreibung ergibt sich leicht der Betriebsablauf der Sequenzsteuerung 20. Man
bemerke, daß dann, wenn eine Dezimab.iffer 10 gemäß dem CODABAR-Code auf den Zettel 12 aufgezeichnet
ist, sieben Bits oder sieben Kodiersegmente auf dem Zettel 12 notiert sind. Dementsprechend werden acht
Übergänge beim Lesen eines Kodiersegments gemäß Fig.3 festgestellt werden. Bei jedem Übergang von
bo einem schwarzen Strich zu einem weißen Leerfeld oder
einem weißen Leerfeld zu einem schwarzen Strich wird der Stoppimpuls vom Stopp-Impulsgeber 31 abgegeben.
Nach einer vorgewählten kurzen Zeitspanne später, welche von der Verzögerungsschaltung 33 bewirkt wird,
wi/d ein Startimpuls vom Startimpulsgeber 32 abgegeben. Jeder Startimpuls wird vom Zähler 34 gezählt und
bei jeder Zählung wird ein entsprechend unterschiedlicher Zustand vom Dekoder 35 signalisiert. Die Zustände
sind als 0-8 von links nach rechts bezeichnet und entsprechen dem Aufwärtszählen von 0 — 8. Die
Zustände 0 — 7 aus dem Dekoder 35 dienen zur Weitergabe der Ergebniszählungen von den Auf/Ab-Zählern
23, 24, 25 zum Umsetzer 27. Während des neunten Zustands oder dem mit acht bezeichneten
Zustand in Fig. 5 befindet sich der Leser 11 in dem Zwischenraum zwischen aufgezeichneter Information
oder zwischen Zeichen, wie man aus einer Betrachtung der F i g. 2 unmittelbar erkennt. Während des Intervalls,
währenddessen der Leser 11 in dem Zwischenzeichen-Feld sich befindet und der Dekoder 35 den achten
Zustand signalisiert, wird der Zähler 34 auf Null zurückgesetzt, wenn die Vorderkante des ersten
Striches des nächsten Zeichens (des zweiten Zeichens in F i g. 2) von dem Übergangsdetektor 30 festgestellt
wird. Speziell während des in Fig. 2 dargestellten Zeitintervalls, wenn der Leser 11 vom letzten schwarzen
Strich des ersten Zeichens aus weitergeht, hat der Zähler 34 die sämtlichen Übergänge gezählt und der
Dekoder 35 signalisiert den neunten Zustand oder »8«. Der Leser 11 fährt über den Zwischenraum zwischen
den Zeichen zum ersten schwarzen Strich des zweiten aufgezeichneten Zeichens weiter fort. Bei Feststellung
des Übergangs aus dem Zwichenzeichen-Leerfeld zum ersten schwarzen Strich des zweiten Zeichens wird ein
Stoppimpuls vom Stopp-Impulsgeber 31 erzeugt, öffnet damit das UND-Gatter 36, wodurch der Zähler 34 auf
den Zählstand Null zurückgesetzt wird und es ermöglicht, daß das nächste Zeichen, d. h. das zweite
Zeichen, dekodiert wird, während der Dekoder 35 den Zustand »0« signalisiert.
Wenn man die Weitergabe der Steuersignale aus der Sequenzsteuerung 20 zu den Zählergattern 22 betrachtet,
wird deren logische Kombination mit den logarithrnischen Zeitsignalen aus dem Zeitsignsl-Generator
21 zur Steuerung der Auf/Ab-Zähler 23, 24, 25 leichter verständlich, wenn auf Fig.4 und Tabelle V
Bezug genommen wird.
Zustände des
Dekoders 35
Dekoders 35
Impuls
Zähler
Zähler Zähler
Umsetzer
Stop | Rücksetzen | Rücksetzen | Rücksetzen | - |
Start | Aufw. Zählen | - | - | - |
Stop | Halten | - | - | - |
Start | Halten | Aufw. Zählen | - | - |
Stop | Halten | Hallen | - | - |
Start | Abw. Zählen | Hallen | Aufw. Zählen | - |
Stop | Halten Rücksetzen |
Halten | Halten | Umsetzen B1ZB2 |
Start | Aufw. Zählen | Abw. Zählen | Halten | - |
Stop | Halten | Halten | Hallen | Umsetzen Si/S2 |
Start | Halten | Aufw. Zählen | Ahw. Zählen | - |
Stop | Halten | Aufw. Zählen | Halten | Umsetzen |
Start | Abw. Zählen | Halten | - | - |
Stop | Halten | Halten | - | Umsetzen |
Start | - | Abw. Zählen | - | - |
Stop | — | Halten | — | Umsetzen B,/BA |
Start | Zeichen zwischenraum |
Die Funktionen und Ergebnisse der Auf/Ab-Zähler 23,24 und 25 sind in F i g. 4A erläutert, und zwar für eine
typische: Verhältnisgewinnung für jedes der Segmente, die das CODABAR-Äquivalent einer Dezimalziffer (in
diesem Beispiel Null) repräsentieren. In F i g. 4 A sind die Kodiersegmente, die bezüglich ihrer relativen Breite bo
zum Vergleich gewählt werden, die aufeinanderfolgenden Striche, während die aufeinanderfolgenden Leerfelder verglichen werden. Man bemerke aus Fig.4A, daß
das VerSältnis der Striche B\ und Bi bei Lesung von links
nach rechts als das Verhältnis R\ bezeichnet ist In b5
ähnlicher Weise sind die Verhältnisse der Striche B2 bis
Bi sowie Bi bis ß» durch die jeweiligen Verhältnisse Ri
und Rs bezeichnet Das Verhältnis der sequentiellen Leerfelder wird durch die Verhältnisse /?2 und RA
ebenfalls in F i g. 4A angegeben.
Beim Lesen der aufgezeichneten Zeichen von links nach rechts und bei Feststellung der Vorderkante des
ersten Striches oder des Striches B, für dieses Zeichen
wird der Zeitsignalgenerator 21 durch ein Startsignal aus dem Startimpulsgeber 32 der Sequenzsteuerung 20
gestartet Der nunmehr aktivierte logarithmische Zeitsignalgenerator 21 erzeugt eine Anzahl von
Zeitsignalen, bis das Leerfeld Si festgestellt wird.
Während des Intervalls, währenddessen die Zeitsignale erzeugt werden, werden sie auf einen Auf/Ab-Zähler 23
gegeben, der sie aufwärtszählt Die Zeitsignale entsprechend dem Strich B1 sorgen dafür, daß der Zähler 23
aufwärtszählt, während die Auf/Ab-Zähler 24 und 25 in
ihrem zurückgesetzten oder Nullzustand verbleiben (vgl. F i g. 4A, Zeitspanne ft). Während dieses Zeitintervalls
nach Feststellung der Vorderkante des Striches ft wird der Stoppimpuls den Zähler 34 der Sequenzsteuerung
20 auf den Nullzustand zurückstellen. Wen das Leerfeld S\ festgestellt wird, werden Zeitsignale
entsprechend ihrer Breite durch den Zeitsignal-Generator 21 erzeugt und jetzt werden die Zähler so gesteuert,
daß diese Zeitsignale zum Aufwärtszählen des Auf/Ab-Zählers 24 auf diese gegeben werden. Dies findet
während des Zustands des Dekoders 35 statt, der gemäß Tabelle V als Zustand 2-Start bezeichnet ist. Während
dieser Zeitspanne Si wird der den Strich ft repräsentierende
Zählstand in dem Zähler 23 aufbewahrt, während der Auf/Ab-Zähicr 25 in seinem zurückgesetzten oder
Nullzustand verbleibt. Während der nächsten Zeitspanne wird der Strich ft abgetastet und die diesem Strich
entsprechenden Zeitsignale werden ebenfalls auf den Zähler 23 gegeben. In diesem Augenblick werden die
den Strich ft repräsentierenden Zeitsignale verwendet, um den Auf/Ab-Zähler 23 abwärtszählen zu lassen.
Während dieser Abwärtszählung in dem vorliegenden Zeitintervall wird der Zählstand in dem Zähler 24
behalten, während die gleiche Anzahl von ft-Zeitsignalen auf den Zähler 25 zu dessen Aufwärtszählen
gegeben werden. Wenn der Leser 11 sich von ft in das Leerfeld Si begibt, werden die Verhältnisse zwischen
den Strichen ft und ft berechnet worden sein und werden durch den Zählstand repräsentiert sein, der
dann in dem Auf/Ab-Zähler 23 enthalten ist. Dieses Ergebnis ist in Fig. 4A als Λι dargestellt, das das
Verhältnis zwischen den beiden Strichen repräsentiert und dem Zustand 3 Stop in Tabelle V entspricht.
Während dieses Intervalls wird der Ausgang des Zählers 23, der durch R\ repräsentiert ist, auf den
Umsetzer 27 gegeben, und zwar in Abhängigkeit von dem Zustand 3-Signal aus der Sequenzsteuerung 20, um
diesen Endzählstand in ein zugehöriges Verhältnis umzusetzen. In diesem Augenblick wird das diesem
Vergleich zugeordnete Verhältnis Csein, da die Striche ft und ft gleich sind, und das Ausgangssignal aus dem
Umsetzer 27 wird dies entsprechend repräsentieren.
Während des nächsten Zeitintervalls ausgehend vom Strich ft bis zum Leerfeld £2 werden die logarithmischen
Zeitsignale zur Definition der Breite des Leerfeldes S2 den Zählern 23 und 24 zugeführt. Diese
dem Zähler 24 zugeführten Zeitsignale lassen diesen abwärts zählen, während die dem Zähler 23 zugeführen
Signale diesen Zählstand aufwärtszählen. Wie aus Tabelle V hervorgeht, wird im Zustand 4 Start vor dem
Aufwärtszählen des Zählers 23 er zurückgesetzt, um das Endergebnis /?, auszulöschen, das durch die früher auf
ihn gegebenen, die Striche B\ und ft repräsentierenden Signale in ihm enthalten ist. Die auf den Zähler 24
gegebenen Zeitsignale werden jetzt von den früher eingegebenen, den Leerraum 1 oder S\ repräsentierenden Signalen subtrahiert Der Zählstand in dem
Auf/Ab-Zähler 25 wird während des Zeitintervalls, während das Leerfeld S2 gelesen wird, aufrechterhalten.
Am Ende des Zeitmtervalls, an dem das Leerfeld Sz
gelesen wird (Zustand 4 Stop) wird der Zähler 24 eine
Endzahhmg haben, die die Subtraktion und damit die
Berechnung des Verhältnisses zwischen dem Leerfeld S\
und Si, R2 repräsentiert. Wenn dementsprechend <das
Zustand 4-SignaI der Adressiereinrichtung 26 zugeführt
wird, wir die Endzahhmg R2 dem Umsetzer 27 zugeführt,
um die Zuordnung des Verhältnisses zu bewirken. In
gleicher Weise werden die Segmente ft, S? und Bz
bewirken, daß Zeitsignale erzeugt und jedem der Zähler 23, 24 und 25 entsprechend der in der Fig.4A und
Tabelle V angegebenen Logik gezählt werden. Daraus sieht man, daß bei Beendigung des Ablesens des Striches
Bi das Verhältnis Rj am Ausgang des Zählers 25
vorhanden ist, während das Verhältnis Ra am Zähler 23
am Ende des Abfühlens vom Leerfeld S3 vorhanden ist und das fünfte und letzte Verhältnis R5 am Zähler 24
nach Abfühlen des vierten Striches erzeugt wird. Wenn die Zustände 5,6 und 7 am Dekoder 35 erzeugt werden,
wird dadurch bewirkt, daß die Verhältnisse R2, Ra und Rs
auf den Umsetzer 27 gegeben werden, wo die zugehörigen Verhältniszuweisungen vorgenommen
werden. Man bemerke, daß die Ergebniszählung eines Auf/Ab-Zählers, die eines der Verhältnisse R1, R2, Ri
repräsentiert, die Zahl ist, die den Logarithmus der Differenz zwischen den aufgesammelten Zeitsignalen
repräsentiert. Kein Entlogarithmieren muß direkt
2» durchgeführt werden, da die Ergebniszahl in einer Umsetzertabelle in der Form des Umsetzers 27
enthalten ist, wobei das gewünschte von drei Verhältnissen zugeordnet werden kann. Wenn auf diese Weise
fünf Verhältnisse dem Endergebnis der Zähler 23, 24 und 25 zugeordnet worden sind, dann können die fünf
Größen dadurch benutzt werden, daß der Dekodierer 28 zur Erzeugung des dekodierten alphanumerischen
Zeichens verwendet wird, das in dem Datensammelsystem 10 benutzt wird. Jede der vorstehend erwähnten
in Funktionen der Zähler 23, 24 und 25 sowie der neun
Zustände des Dekoders 35 im Verhältnis zu den Stop-Start-Impulsen sind in der oben angegebenen
Tabelle V im einzelnen auseinandergesetzt.
Die Zählergatter 22 und die Adressiereinrichtung 26
3") sind in Blockform dargestellt und nur hinsichtlich ihrer
Funktion beschrieben. Natürlich kann auch ein anderes Gatter-Netzwerk benutzt werden, das nach den
Prinzipien der Fig.4A und Tabelle V arbeitet und die
Zeitsignale dem richtigen Auf/Ab-Zähler zur Einleitung der angegebenen Zählsequenzen zuführt. So kann die
Adressiereinrichtung 26 leicht so weitergebildet werden, daß sie logisch die Signale, die für den Zustand des
Dekoders 35 aus F i g. 5 repräsentativ sind, d. h. die Zustände 3, 4, 5, 6 und 7 mit der entsprechenden
Ergebniszählung des richtigen Auf/Ab-Zählers 23, 24, 25 kombiniert um die Ergebniszählung dem in F i g. 4 als
ROM dargestellten Umsetzer 27 zuzuführen.
Es wird jetzt auf Fig.6 Bezug genommen, welche
einen logarithmischen Zeitsignalgenerator 21 gemäß
5» der Erfindung darstellt. Man beachte, daß der logarithmische Zeitsignalgenerator 21 Zeitsignale erzeugt
deren zeitliches Auftreten nicht auf eine bestimmte Logarithmenbasis beschränkt ist, die vielmehr
nach einer vorgewählten logarithmischen Basis ausgerichtet werden können. Die logarithmische Basis,
die dem Strichablesen gemäß der Erfindung entspricht, wird entsprechend den Auflösungserfordernissen und
der benötigten Anzahl von Verhältnissen für die Kodiersegmente der strichkodierten Daten gewählt
Dazu weist der logarithmische Zettsignalgenerator 21
einen Abwärtszähler 40 auf, der durch von einer Impulsqnefle 41 abgegebene Impulse abwärtszählt Die
Impulsquelle 41 liefert kontinuierlich zu zählende Impulse, die mit vorgewählter Frequenz fo auftreten. Die
Impulse sind in diesem Beispiel so gewählt daß sie in 10 Mikrosekunden-Intervallen auftreten. Die Ausgangsimpulse aus der Quelle 41 werden an einen Eingang eines
UND-Gatters 42 gegeben. Das UND-Gatter 42 ist mit
seinem Ausgangsanschluß mit dem Zähleingang des Abwärtszählers 40 gekoppelt Der andere Eingang für
das UND-Gatter 42 liegt am (^-Ausgang eines Start-Stop-Flip-Flops 43. Das Start-Stop-Flip-Flop 43
ist mit seinem Setz- oder S- Eingang so geschaltet, daß es auf die Stopimpluse aus der Sequenzsteuerung 20
anspricht Der Abwärtszähler 40 wird durch eine Einrichtung gesteuert, mit der voreingestellte Zahlen
oder Zählstände an ihn übertragen werden, welche zur Erzeugung der logarithmischen Zeitsignale für die
Taktimpulse verwendet werden. Zu diesem Zweck sind ein Aufwärtszähler 44 und ein Speicher 45 vorgesehen.
Der Aufwärtszähler 44 ist ein Binärzähler, dessen Ausgangszustände dekodiert und zur Adressierung
eines Lesespeichers 45 verwendet werden. Dazu ist zwischen dem Zähler 44 und dem Eingang zu dem
Speicher 45 ein Adressenregister 46 eingeschaltet Der Speicher 45 kann ein Lesespeicher sein, in welchem
vorgewählte Zählstände aufgezeichnet sind, die in dem Abwärtszähler 40 in vorgewählter Folge eingegeben
werden sollen. Die vorgewählten Zählstände sind auf der Grundlage der Logarithmenbasis ausgewählt,
welche für das oben beschriebene System zugrunde gelegt ist
Aufwärtszähler 44 Eingestellte Zahl
(Λ0 0 | 19 | 20 |
1 | 3 | 24 |
2 | 4 | 29 |
3 | 5 | 35 |
4 | 6 | 42 |
5 | 8 | 51 |
6 | 10 | 62 |
7 | 12 | 75 |
8 | 14 | 90 |
9 | 18 | 109 |
10 | 21 | 131 |
11 | 26 | 158 |
12 | 32 | 191 |
13 | 38 | 230 |
14 | 47 | 278 |
15 | 57 | 336 |
16 | 68 | 405 |
17 | 83 | 489 |
18 | 100 | 590 |
19 | 121 | 712 |
20 | 146 | 859 |
1\ | 177 | 1037 |
22 | 213 | 1251 |
23 | 258 | 1510 |
Im einzelnen and die in dem Speicher 45 gespeicherten, vorher eingegebenen und sequentiell in den
Abwärtszähler 40 eingegebenen Zahlen in Tabelle VI unter der Spalte »Eingestellte Zahl« angegeben. Sie
werden in dem Zähler 40 sequentiell wie in Tabelle VI angegeben und entsprechend dem Zählstand des
Aufwärtszählers 44, wie ebenfalls in der Tabelle notiert, eingegeben. Mit dem Aufwärtszählen des Zahlers 44
Degt demzufolge eine Adresse am Adressenregister 46 zum Auslesen der voreingegebenen Zahlen ans dem
Speicher 45 in ein Speicheransgangs-Register 47 vor.
Das Speicheransgangs-Register 47 wird die ans dem Speicher 45 ausgelesenen Zahlen speichern, bis der
parallele Eingabeanschluß PE des Abwärtszählers 40 aktiviert wird. Die Aktivierung des /Έ-Anschlusses läßt
die in derr. Speicher-Ausgangs-Register 47 jeweils gespeicherten Zahlen parallel in den Abwärtszähler 40
zur Vorbereitung der Erzeugung der nächstfolgenden Zeitsignale übergehen.
Ein Unterlauf-Ausgangsanschluß-1 ist am Abwärtszähler
40 vorgesehen und mit einer Taktimpulsquelle 48
in verbunden. Bei Aktivierung des — 1-Zähler-Anschlusses
wird die Impulsquelle 48 einen Ausgangsimpuls abgeben. Diese Ausgangssignale sind die logarithmischen
Zeitsignale oder Taktsignale aus dem Generator 21. Bei einer Impulsdauer von 10 MikroSekunden für die
Quelle 41 treten die Impulse zu den Zeitintervallen auf, die in der oben angegebenen Tabelle IV notiert sind. Die
Ausgangsimpulse aus der Impulsquelle 48 gelangen weiter auf ein ODER-Gatter 49 als ein Eingangssignal
für dieses. Der Ausgangsimpuls aus dem ODER-Gatter 49 wird als Eingangssignal zum Aktivieren des
parallelen Eingabeanschlusses PE des Abwärtszählers 40 über die Leitung 50 verwendet Das gleiche
Ausgangssignal wird auf das Speicher-Ausgangsregister 47 zum Auslesen der in dem Speicher gespeicherten
Zahlen in dem Abwärtszähler 40 benutzt, wobei der Anschluß PE des Zählers aktiviert wird. In ähnlicher
Weise wird über Leitung 5OC der Ausgang des
Kumulative ODER-Gatters 49 auf den Zählereingangsanschluß des
Zählstände des Aufwärtszählers 44 gegeben. Dadurch kann der
Zählers 40 ,„ Aufwärtszähler 44 um einen Zählschritt weiter nach
oben zählen, und zwar jeweils in Abhängigkeit von dem vom Abwärtszähler 40 erzeugten Ausgangsimpuls. Der
verbleibende Eingangsimpuls für das ODER-Gatter 49 ist der Startimpuls, der aus der Sequenzsteuerung 20
S5 abgeleitet wurde. Dieser Startimpuls wird auf das
ODER-Gatter 49 über Leitung 51 gegeben und wird gleichzeitig auf den Rückstelleingangsanschluß des
Aufwärtszählers 44 zum Zurückstellen und auf den Rückstell oder R-Anschluß des Start-Stop-Flip-Flops 43
4« gegeben.
Ehe das Betriebsverhalten des logarithmischen Zeitsignalgenerators 21 im einzelnen betrachtet wird,
soll auf die Zahlen eingegangen werden, die in den Abwärtszähler 40 voreingegeben werden, um die
gewünschten Ausgangssignale zu erhalten. Die Zahlen können vorteilhafterweise in einem Lese-Speicher etwa
in der Form des Speichers 45 gemäß Fig.6A, eines
Mikroprozessors, gespeichert werden. Die intervalle von beliebiger Dauer, die von dem logarithmischen
5n Zeitsignalgenerator 21 erzeugt werden, können durch
die Reihe von Zahlen erzeugt werden, die aus dem Speicher 45 ausgewählt werden. Die Tabelle VI enthält
die Werte der Zahlen, die zur Erzeugung der Zeitsignale verwendet werden könnten.
Die Zahlen werden sequentiell in dem Speicher 45 gespeichert und aus diesem in Abhängigkeit von dem
Zuwachs der Zählstände des Aufwärtszählers 44 ausgelesen, der seinerseits auf die Ausgangsimpulse
anspricht die von dem Abwärtszähler erzeugt werden,
was schematisch in Fig.6A angedeutet ist Die
voreingestellten Zahlen können in dem Speicher 45 vorteilhafterweise in sequentieller Reihe und in der
gleichen Folge gespeichert werden, in welcher sie in das
Speicherausgangsregister 47 ausgelesen werden. Bei spielsweise sind die ersten drei Zahlen aus Tabelle VL
die gespeichert werfen sollen, und in den Abwärtszähler 40 eingesetzt werden sollen,die Dezimalzahlen 19,3 und
4. Es sind 24 derartige Zahlen in dem Speicher 45
gespeichert wobei die letzte Dezimalziffer, die dem Zählstand 23 des Aufwärtszählers entspricht, 258 ist. Die
Zahlen werden aus dem Speicher 45 mit Hilfe des Adressenregisters 46 ausgelesen. Das Adressenregister
46 adressiert in Speicher 45 sequentiell, wenn der Speicher die voreingestellten Zahlen sequentiell speichert,
so daß das Adressenregister 46 die richtige Adresse in Abhängigkeit von den Ausgangszuständen
des Aufwärtszählers 44 liefert. Demzufolge ist klar, daß dann, wenn ein Ausgangsimpuls vom Abwärtszähler 40
und damit von der Impulsquelle 48 erzeugt wird, der Aufwärtszähler 44 um einen Zählschritt erhöht wird,
wodurch eine neue Adresse in das Adressenregister 46 zum Auslesen der nächsten folgenden voreingegebenen
Zahl aus dem Speicher 45 in das Register 47 eingegeben wird. Bei Auftreten eines Signals aus dem ODER-Gatter
49 an dem Pß-Anschluß des Abwärtszählers 40 wird
diese Zahl in den Abwärtszähler 40 zur Vorbereitung des nächsten zu erzeugenden Zeitsignals eingegeben.
Die Zeitsignale werden durch das Abgeben von Impulsen aus der Quelle 41 an den Abwärtszähler 40
erzeugt Dazu werden die Impulse auf den Abwärtszähler 40 unter Steuerung eines UND-Gatters 42 gegeben.
Demzufolge gibt das UND-Gatter den Impuls auf den Zählereingangsanschluß des Abwärtszählers 40 in
Abhängigkeit von Start und Stopimpulsen, die von der Sequenzsteuerung 20 in Abhängigkeit von der Feststellung
von Obergängen zwischen den Kodiersegmenten verschiedener Arten erzeugt werden. Dies wird durch
das Setzen und Zurücksetzen des Start-Stop-Flip-Flops 43 gesteuert Jeder von der Sequenzsteuerung 20
erzeugte Stopimpuls wird durch Weiterleitung zum Abwärtszähler_ 40 gezählt und zwar als Folge des
Setzens des Q-Ausgangs auf eine niedrige Spannung. Bei Ankunft des sequentiellen Startimpulses am
Rückstell- oder R-Anschluß des Flip-Flops 43 wird der
(^-Ausgang auf hoher Spannung liegen und die Eingänge des UND-Gatters 42 öffnea so daß die zu
zählenden Impulse auf den Abwärtszähler 40 gelangen. Diese Zählung setzt sich fort bis der nächstfolgende
Übergang zwischen Kodiersegmenten festgestellt wird, und der nächstfolgende Stop-Impuls setzt das Flip-Flop
43 wieder zurück, so daß der Q- Ausgang des Flip-Flops
43 auf niedrige Spannung gelegt wird. In dem Maße, indem dieser Zählprozeß sich fortsetzt erhöht sich die
Anzahl der auf den Abwärtszähler 40 gegebenen Impulse und die kumulativen Zählungen der Impulse /Ό,
die auf den Abwärtszähler 40 gegeben werden, erzeugen jeweils die 23 Zeitintervalle N, die in der
dritten Spalte der Tabelle VI angegeber, sind. Man
bemerke, daß der Ausgangsimpuls erzeugt wird, wenn
die Anzahl der auf den Abwärtszähler 40 gegebenen Impulse äquivalent der eingegebenen Zahl plus 1 ist da
die vorgewählte Zählung, die das Ausgangssignal aus dem Abwärtszähler 40 liefert, von dem — 1-Unterlauf-
Anschluß kommt. Daher stellt die dritte Spalte in Tabelle Vl, bezeichnet mit »Kumulative Zählstände des
Zählers 40«, die Gesamtzahl der Impulse aus der Quelle
41, die auf den Zähler 40 nach dem Startimpuls bis zu dem Ende des Kodiersegments oder bis zu einem
erzeugten Stop-Impuls gegeben werden, welcher die
Feststellung des nächsten Obergangs angibt. Durch Vergleich der Tabelle VI mit der Tabelle IV wird man
feststellen, daß die aufgesammelte Zählung bei jeder
Zahlung des Abwärtszählers 40 der Gesamtzahl an Mikroseknnden zwischen den Ausgangsimpulsen aus
dem Abwärtszähler dividiert durch 1Ö entspricht und zwar aufgrund der 10-Mikroseknnden-IntervaDe, die als
Impuls-Periodendauer gewählt wurde. Daher werden bezüglich der Zählung 23 oder dem 23. Zeitintervall in
Tabelle VI 1510 Impulse auf den Zähler 40 während dieses Intervalls gegeben werden, was eine Zeitspanne
von 15 100 Mikrosekunden benötigt. In ähnlicher Weise
werden bei der Zählung 22 dann 1251 Zählschritte während eines Zeitintervalls von 12 510 Mikrosekunden
Dauer abgegeben. Aus dem gleichen Grunde kann die logarithmische Expansion durch Untersuchen der
ίο restlichen Zählungen und der entsprechenden vorgegebenen
Zahlen aus Tabelle VI eingeschätzt werden.
Der Betrieb des logarithmischen Zeitsignalgenerators 21 kann jetzt zusammenfassend dargestellt werden.
Wenn der Aufwärtszähler 44 auf den Zählstand Null in Abhängigkeit von einem Startimpuls zurückgesetzt
wird, der bei Feststellung der Vorderkante des ersten Strichs eines Zeichens erzeugt wird, wird die Zahl aus
dem Speicher 45 ausgelesen und in den Zähler 40 als Zahl 19 eingegeben. Diese erste voreingestellte Zahl
wird in den Abwärtszähler 40 eingegeben, da der PE-Anschluß des Zählers 40 wegen des an das
ODER-Gatter 49 angelegter. Startimpulses aktiviert ist. 200 Mikrosekunden nach der Feststellung des Übergangs
in das erste Kodiersegment werden 20 Impulse aus der Quelle 41 auf den Abwärtszähler 40 gegeben
worden sein, so daß nach diesen 20 Impulsen ein Ausgangssignal am —1-Unterlaufanschluß aus dem
Abwärtszähler 40 erzeugt wird. Dieser erste Ausgangsimpuls wird als der Ausgang aus der Taktimpulsquelle
48 abgegeben. Wenn dieses Ausgangssignal aus der Taktimpulsquelle 48 auf das ODER-Gatter 49 gelangt,
wird ein Ausgangssignal vom ODER-Gatter 49 für das Aufwärtszählen um einen Zählschritt durch den
Aufwärtszähler 44 erzeugt so daß die nächste
Ji vorgegebene Zahl, die Zahl 3, in das Adressenregister 46
für den Lesespeicher adressiert werden kann und die Zahl 3 aus dem Speicher 45 in das Register 47
ausgelesen werden kann.
Mit dem Speichern der Zahl 3 in dem Register 47 und dem Auftreten des Ausgangsimpulses aus dem ODER-Gatter
49 an dem PE-Anschluß des Abwärtszählers 40 wird die Zahl 3 in den Abwärtszähler 40 eingesetzt.
Wenn der Abwärtszähler 40 auf die Dezimalziffer 3 gesetzt wird, wird er nach Empfang von vier Impulsen
nach unten überlaufen und ein weiteres Ausgangssignal wird von der impulsquelle 48 bei dem 240-Mikrosekundenintervall
abgeleitet das in Tabelle IV als das Zeitintervall »1« unter »N«bezeichnet ist Dadurch wird
erneut der Aufwärtszähler zum Aufwärtszählen auf zwei veranlaßt so daß die nächste vorgegebene Zahl
aus dem Speicher 45 ausgelesen und danach in den Abwärtszähler 40 gegeben wird. Die nächste vorgegebene
Zahl ist vier, und nachdem fünf Impulse auf den Abwärtszähler 40 aus der Quelle 41 gegeben worden
sind, wird ein weiteres Ausgangssignal an dem — 1-Überlaufanschluß der Impulsquelle 48 erzeugt Dies
tirtt beim Zeitintervall zwei der Tabelle IV auf. Während des nächsten Zeitintervalls wird der Abwärtszähler 40 auf 5 gesetzt und läuft nach unten über,
nachdem der sechste Impuls gezählt wurde. Die Zahlen sind in dem Zähler in der Reihe 6, 8, 10, 12 usw.
voreingestellt and werden nach unten überlaufen und ein Ausgangssignal jedesmal dann erzeugen, wenn die
Anzahl der Impulse plus ein Impuls auf den Zähler 40 gegeben worden sind, nachdem er nrit einer Zahl vorher
geladen worden war. Die gleiche Sequenz setzt sich fort,
bis ein Obergang stgestellt wird, der das Ende eines
Kodiersegments und den Beginn eines anderen
Kodiersegments anzeigt Die Feststellung dieses Übergangs erzeugt den notwendigen Stopimpuls, der das
Slan-Stop-Flip-Flop 43 setzen wird und die weitere
Aufgabe von Impulsen aus der Quelle 41 auf den Abwärtszähler 40 verhindern wird. Folglich wird die
Anzahl der Signale, die vom Generator 21 während des Zeitintervalls von einem Startimpuls bis zur Erzeugung
des nachfolgenden Startimpulses erzeugt worden sind, das logarithmische Maß der Breite des Kodiersegments
sein, das gelesen worden ist Bei der Erzeugung der neuen Startimpulse nach dem eben erwähnten Stopimpuls,
welcher das Abtasten des nächstfolgenden Kodiersegments anzeigt wird der Startimpuls den
Aufwärtszähler 44 auf seinen Zustand 0 zurücksetzen und danach eine vorgegebene Zahl, d. h. die Zahl 19, in
den Zähler 40 einsetzen, damit die nächste Reihe von Zeitsignalen zur Messung der Breite des nächsten
Segments des abgefühlten Zeichens erzeugt werden kann.
Man sieht daß die beschriebene Ausführungsform der Erfindung das Ablesen und Dekodieren linearer
strichkodierter Information durch Verwendung eines logarithmischen Zeitsignalgenerators wesentlich verbessert
Die Erfindung umfaßt die Messung der verflossenen Zeit mit einer logarithmisch gedehnten
Zeitbasis und d?.is Berechnen der Verhältnisse der
Breiten der strichkodierten Segmente durch einfache Subtraktion. Die logarithmische Zeitbasis kann Zeitsignale
liefern, die einem logarithmischen Gesetz folgen, und zwar aufgrund einer Basis des Logarithmus, die so
gewählt ist, daß das Auflösungsvermögen und die Wirksamkeit des Kodierens der strichkodierten Daten
innerhalb der Beschränkungen des Bereichs und der Anzahl der gewählten Breitenverhältnisse optimiert
wird. Dazu schafft die Erfindung ein Konzept, dessen Leistungsfähigkeit den Bereich der erforderlichen
Verhältnisse, jedoch nicht die Gesamtzahl der erwarteten Zählungen abdeckt Bei Verwirklichung im Rahmen
eines Mikroprozessors wird der Beginn des zweiten Taktes verzögert um die erforderliche Zählkapazität zu
reduzieren und dem Mikroprozessor Zeit zu schaffen, Z-jvischenrechnungen ausführen und abschließen zu
können. Die Verzögerung des Beginns der Signalabgabe des logarithmichen Zeitsignalgenerators beträgt eine
Zeitspanne, die gleich der kürzesten noch annehmbaren Lesezeit ist Auch dadurch wird es dem Mikroprozessor
ermöglicht die strichkodierten Daten zu dekodieren und zu lesen, statt daß dazu eine besondere Schaltungslogik herangezogen wird, wodurch sich erhebliche
Vorteile bei manuell betätigten Lesern ergeben, die mit einem relativ langsamen, preiswerten Mikroprozessor
arbeiten können.
Bei der schaltungsmäßigen Ausführung der Berechnung der Breitenverhältnisse gemäß der Erfindung
entfällt die Notwendigkeit von Speicherregistern und Subtrahierern sowie die Notwendigkeit den Überlauf
und »Unterlauf« (= Überlauf nach unten) für die Bestimmung des Vorzeichens festzustellen, wobei
Auf/Ab-Zähltr mit besonderem Vorteil Verwendung finden.
Der erfimungsgemäße logarithmische Zeitsignalgenerator
ermöglicht die Optimierung des Auflösungsvermögens und des Wirkungsgrades, wobei unter
diesem Gesichtspunkt auch eine andere logarithmische Basis als die Basis 2 für den Generator gewählt werden
kann. Es kann an sich eine beliebige logarithmische Basis dazu dienen, einen Zähler kontinuierlich abwärtszählen
zu lassen, der sequentiell mit einer Gruppe von vorbestimmten Zahlen geladen wird, die logarithmisch
bezüglich einer gewählten logarithmischen Basis zusammenhängen, so daß dadurch logarithmisch verwandte
Zeitsignaie erzeugt werden können.
I lier/ii 4 Bhill Zeichnungen
Claims (8)
1. Einrichtung zum Dekodieren von Daten, die in
einer vorgegebenen Anzahl abwechselnd aufeinan- s derfolgender Striche und Leerfelder von verschiedenen
Breiten kodiert sind, mit einer Lesevorrichtung, an die eine auf die Übergänge zwischen Strichen und
Leerfeldern ansprechende Steuerschaltung angeschlossen ist, mit einem Zeitsignalgenerator, der ι ο
während einer von den Ausgangssignalen der Steuerschaltung bestimmten Zeitspanne eine einem
Logarithmus des Zeitmaßes dieser Zeitspanne entsprechende Anzahl von Signalen an eine
Auswerteschaltung abgibt, in welcher die Daten aus bestimmten Differenzen jeweils zweier Anzahlen
von Signalen aus dem Zeitsignalgenerator ermittelt werden, dadurch gekennzeichnet, daß die
Auswerteschaltung (22, 23, 24, 25, 26, 27, 28) wenigstens einen Auf/Ab-Zähler (23, 24, 25) enthält,
dessen Eingang an den Ausgang des Zeitsignalgenerators (21) angeschlossen ist, und der in aufeinanderfolgenden
Zeitspannen seine Zählrichtung umkehrt; und daß eine Adressiereinrichtung (26) mit den die
Breitenverhältnisse von Paaren aufeinanderfolgenden Striche und Leerfelder repräsentierenden
Ergebnis-Zählzuständen des Zählers (23, 24, 25) einen Umsetzer (27) zur Abgabe der zugehörigen
Datensignale ansteuert
2. Einrichtung nach Anspruch 1, dadurch gekenn- jo
zeichnet, daß an den Ausgang des Zeitsignalgenerators (21) von einer Sequenzsteuerung (20) gesteuerte
Zählergatter (22) angeschlossen sind, die mehreren, parallelgeschalteten Auf/Ab-Zählern (23, 24, 25) die
Ausgangssignale des Zeitsignalgenerators derart zuführen, daß den einzelnen Auf/Ab-Zählern die
während der Ablesung eines Datenzeichens vom Zeitsignalgenerator abgegebenen Zeitsignale zur
Bestimmung mehrerer Differenzen zeitlich nacheinander zugeführt werden, und daß die Ausgänge der
Auf/Ab-Zähler über die von der Sequenzsteuerung (20) gesteuerte Adressiereinrichtung (26) an den
Umsetzer (27) angeschlossen sind.
3. Einrichtung nach Anspruch 1 oder 2, dadurch gekennzeichnet, daß der Umsetzer ein Lesespeicher
ist.
4. Einrichtung nach Anspruch 1 oder 2, bei der der logarithmische Zeitsignalgenerator einen von einer
Impulsquelle getriebenen Zähler aufweist, dadurch gekennzeichnet, daß der Zähler (40) ein Abwärtszähler
ist, der während des Auftretens eines ersten Steuerimpulses (START) die Ausgangsimpulse der
Impulsquelle (41) von einem voreingegebenen Zählstand herabzählt und bei Erreichen eines
vorbestimmten Sollstandes ( — 1) ein Zeitsignal abgibt, und daß der das Zeitsignal führende Ausgang
des Zählers (40) mit einer Eingabevorrichtung (44, 46) zur Eingabe eines neuen voreingegebenen
Zählstandes in den Zähler (40) angeschlossen ist, wobei die nacheinander in den Abwärtszähler
eingegebenen Zählstände auf der Basis eines Logarithmus des Zeitmaßes gewählt sind.
5. Einrichtung nach Anspruch 4, dadurch gekennzeichnet, daß die Eingabevorrichtung einen Speicher
(45) enthält, in welchem die Zählstände gespeichert sind und dessen Ausgang mit einem ersten Eingang
des Zählers (40) verbunden ist; und daß der Ausgang des Zählers an eine Eingabevorrichtung (44, 46) für
den Speicher (45) gelegt ist.
6. Einrichtung nach Anspruch 5, dadurch gekennzeichnet, daß der Speicher (45) ein Lesespeicher ist
7. Einrichtung nach Anspruch 4, dadurch gekennzeichnet, daß die Impulsquelle (41) über ein
UND-Glied (42) mit einem Auslöseeipgang des Zählers (40) verbunden ist, daß ein zweiter Eingang
des UND-Gliedes (42) mit dem Ausgang eines Flip-Flops (43) gekoppelt ist, und daß ein Eingang
des Flip-Flops (43) die Abwärtszählung auslösende START-Impulse und ein zweiter Eingang des
Flip-Flops (43) die Zählung unterbrechende STOP-Impulse aufnimmt
8. Einrichtung nach einem der Ansprüche 4—7, dadurch gekennzeichnet, daß der Ausgang des
Zählers (40) eine Taktimpulsquelle (48) steuert, deren Ausgang mit einem Speicher (45) und Zähler
(40) gekoppelten Speicherausgangsregister (47) sowie dem Zähleingang eines Aufwärtszählers (44)
verbunden ist, welcher die in einem Adressenregister (46) für den Speicher (45) enthaltene Adresse bei
Empfang jedes Zeitsignals um eine Einheit inkrementiert
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US05/638,056 US4058708A (en) | 1975-12-05 | 1975-12-05 | Bar code reader and decoder |
Publications (3)
Publication Number | Publication Date |
---|---|
DE2654765A1 DE2654765A1 (de) | 1977-06-16 |
DE2654765B2 true DE2654765B2 (de) | 1981-07-16 |
DE2654765C3 DE2654765C3 (de) | 1982-04-01 |
Family
ID=24558455
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE2654765A Expired DE2654765C3 (de) | 1975-12-05 | 1976-12-03 | Einrichtung zum Dekodieren von Daten, die in einer vorgegebenen Anzahl abwechselnd aufeinanderfolgender Striche und Leerfelder von verschiedenen Breiten kodiert sind |
Country Status (5)
Country | Link |
---|---|
US (2) | US4058708A (de) |
JP (2) | JPS5284922A (de) |
DE (1) | DE2654765C3 (de) |
FR (1) | FR2334154A1 (de) |
GB (2) | GB1547268A (de) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0441280A1 (de) * | 1990-02-07 | 1991-08-14 | International Business Machines Corporation | Verfahren und Vorrichtung zum Dekodieren von Zweifrequenzdatensignalen (f/2f) |
Families Citing this family (26)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4199677A (en) * | 1977-01-10 | 1980-04-22 | Monarch Marking Systems, Inc. | Record decoding system and method utilizing logarithmic techniques |
GB1604063A (en) * | 1977-04-15 | 1981-12-02 | Msi Data Corp | Method and apparatus for reading and decoding a high density linear bar code |
US4496831A (en) * | 1980-02-29 | 1985-01-29 | Symbol Technologies, Inc. | Portable laser scanning system and scanning methods |
US4593186A (en) * | 1980-02-29 | 1986-06-03 | Symbol Technologies, Inc. | Portable laser scanning system and scanning methods |
JPS577634A (en) * | 1980-06-16 | 1982-01-14 | Victor Co Of Japan Ltd | Frequency dividing circuit |
US4329574A (en) * | 1980-06-25 | 1982-05-11 | International Business Machines Corp. | Bar code candidate select circuit |
US4308455A (en) * | 1980-06-26 | 1981-12-29 | E. I. Du Pont De Nemours And Company | Method for decoding bar-coded labels |
US4479050A (en) * | 1981-12-28 | 1984-10-23 | Bell And Howell Company | Sensor alignment circuit and method of operation |
US4673805A (en) * | 1982-01-25 | 1987-06-16 | Symbol Technologies, Inc. | Narrow-bodied, single- and twin-windowed portable scanning head for reading bar code symbols |
US5017765A (en) * | 1982-01-25 | 1991-05-21 | Symbol Technologies, Inc. | Hand held bar code scanner with automatic scanner deenergization |
US4845350B1 (en) * | 1982-01-25 | 1991-04-30 | Narrow-bodied,single-and twin-windowed portable laser scanning head for reading bar code symbols | |
GB8418668D0 (en) * | 1984-07-21 | 1984-08-22 | Lowe G | Safety inspection monitoring system |
US5545889A (en) * | 1985-02-28 | 1996-08-13 | Swartz; Jerome | Portable laser diode scanning head |
JPH02501867A (ja) * | 1986-12-12 | 1990-06-21 | メトロロジック・インストルメンツ・インコーポレーテッド | デジタル入力データを処理する処理装置 |
US5486944A (en) * | 1989-10-30 | 1996-01-23 | Symbol Technologies, Inc. | Scanner module for symbol scanning system |
US5247161A (en) * | 1990-03-05 | 1993-09-21 | Spectra-Physics, Inc. | Bar code scanning system with converter means and microprocessor means contained in a single integrated circuit |
JPH0466713A (ja) * | 1990-07-05 | 1992-03-03 | Hino Motors Ltd | ディーゼルパティキュレートフィルタの再生方法 |
US5298728A (en) * | 1991-11-01 | 1994-03-29 | Spectra-Physics Scanning System, Inc. | Signal processing apparatus and method |
US6299065B1 (en) | 1992-01-13 | 2001-10-09 | Metrologic Instruments, Inc. | Bar code processing system with multiport signal decoder |
US5457309A (en) * | 1994-03-18 | 1995-10-10 | Hand Held Products | Predictive bar code decoding system and method |
US5821520A (en) * | 1995-04-28 | 1998-10-13 | Symbol Technologies, Inc. | Bar code scanning system with the pre-decoding signal processing and method for bar code candidate selection for decoding |
US6843417B1 (en) * | 1998-09-11 | 2005-01-18 | L. V. Partners, L.P. | Aiming indicia for a bar code and method of use |
US6478224B1 (en) * | 2001-03-02 | 2002-11-12 | Psc Scanning, Inc. | Symbology-independent method and apparatus for identifying potential bar code data |
USD724592S1 (en) * | 2014-02-21 | 2015-03-17 | Amazon Technologies, Inc. | Scanner device |
US9412087B2 (en) | 2014-03-03 | 2016-08-09 | Aesynt Incorporated | System, method, and apparatus for mapping product identification to medication identification |
USD797107S1 (en) * | 2015-07-02 | 2017-09-12 | Datalogic Ip Tech S.R.L. | Portable terminal |
Family Cites Families (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3402285A (en) * | 1964-09-22 | 1968-09-17 | Wang Laboratories | Calculating apparatus |
US3581066A (en) * | 1968-03-06 | 1971-05-25 | Lear Siegler Inc | Programmable counting circuit |
US3835297A (en) * | 1970-02-05 | 1974-09-10 | Inoue Michiro | Microfilm provided with color codes and device for recording and reproducing such codes |
US3701886A (en) * | 1970-12-30 | 1972-10-31 | Ibm | Method of representing data codes with equal width bar and device for reading same |
US3701097A (en) * | 1971-01-20 | 1972-10-24 | Identicon Corp | Decoding bar patterns |
US3723710A (en) * | 1971-06-28 | 1973-03-27 | Ibm | Method and device for reading and decoding a high density self-clocking bar code |
BE791469A (fr) * | 1971-11-16 | 1973-03-16 | Monarch Marking Systems Inc | Enregistrement code et procede et systeme d'interpretation de cet enregistrement |
JPS4942253A (de) * | 1972-03-06 | 1974-04-20 | ||
US3784792A (en) * | 1972-03-29 | 1974-01-08 | Monarch Marking Systems Inc | Coded record and methods of and apparatus for encoding and decoding records |
US3849632A (en) * | 1972-06-19 | 1974-11-19 | Pitney Bowes Inc | Reading apparatus for optical bar codes |
US3824378A (en) * | 1972-09-13 | 1974-07-16 | Presin Co Inc | Electronic counter |
US3808407A (en) * | 1972-10-13 | 1974-04-30 | Honeywell Inc | Pulse difference counter |
US3866024A (en) * | 1973-10-23 | 1975-02-11 | Scope Inc | Digital log-time generator |
US3887792A (en) * | 1973-12-04 | 1975-06-03 | Scope Inc | Method and device for reading and decoding a delta-distance code |
-
1975
- 1975-12-05 US US05/638,056 patent/US4058708A/en not_active Expired - Lifetime
-
1976
- 1976-11-23 GB GB47465/77A patent/GB1547268A/en not_active Expired
- 1976-11-23 GB GB48785/76A patent/GB1547267A/en not_active Expired
- 1976-12-03 FR FR7636516A patent/FR2334154A1/fr active Granted
- 1976-12-03 DE DE2654765A patent/DE2654765C3/de not_active Expired
- 1976-12-06 JP JP14705076A patent/JPS5284922A/ja active Granted
- 1976-12-13 US US05/749,879 patent/US4104514A/en not_active Expired - Lifetime
-
1981
- 1981-09-11 JP JP56142595A patent/JPS5812619B2/ja not_active Expired
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0441280A1 (de) * | 1990-02-07 | 1991-08-14 | International Business Machines Corporation | Verfahren und Vorrichtung zum Dekodieren von Zweifrequenzdatensignalen (f/2f) |
Also Published As
Publication number | Publication date |
---|---|
JPS5284922A (en) | 1977-07-14 |
GB1547267A (en) | 1979-06-06 |
US4104514A (en) | 1978-08-01 |
JPS5735501B2 (de) | 1982-07-29 |
FR2334154A1 (fr) | 1977-07-01 |
US4058708A (en) | 1977-11-15 |
GB1547268A (en) | 1979-06-06 |
FR2334154B1 (de) | 1981-11-27 |
JPS5812619B2 (ja) | 1983-03-09 |
DE2654765A1 (de) | 1977-06-16 |
JPS57111674A (en) | 1982-07-12 |
DE2654765C3 (de) | 1982-04-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE2654765C3 (de) | Einrichtung zum Dekodieren von Daten, die in einer vorgegebenen Anzahl abwechselnd aufeinanderfolgender Striche und Leerfelder von verschiedenen Breiten kodiert sind | |
DE2228526C3 (de) | Verfahren und Anordnung zum Lesen und Decodieren von Strichmarken-Gruppen, die Daten in codierter Form darstellen | |
DE2315509C2 (de) | Verfahren und Vorrichtung zur Verarbeitung kodierterDaten | |
DE2717479C2 (de) | Impulsformeinrichtung | |
DE2616753B2 (de) | Vorrichtung zum Lesen von strichkodierten Informationen | |
DE3688904T2 (de) | Vorrichtung und Verfahren zum Massgerechtbringen der Zeitabstandsmesswerte eines optischen Strichkodeabtasters um die Dekodierleistung zu verbessern. | |
DE2914509A1 (de) | Verfahren und vorrichtung zum ablesen eines eine information in form eines balkenkode tragenden informationstraegers | |
DE2632206A1 (de) | Lesegeraet mit lampensteuerung | |
DE2202640A1 (de) | Vorrichtung und Verfahren zur Unterscheidung von Schriftzeichen verschiedener Breite | |
DE2706655B2 (de) | Verfahren zum Klassifizieren von Gegenstanden entsprechend ihrer Oberflächenleuchtstärke | |
DE2524495A1 (de) | Prozessor zum auswaehlen potentiell gueltiger codesignale | |
DE2652459C2 (de) | Umsetzvorrichtung für Binärsignale variabler Länge | |
DE2256007C3 (de) | Vorrichtung zur Verarbeitung kodierter Daten | |
DE2362329C3 (de) | Faksimilesystem | |
DE2147896B2 (de) | Gerat zum Erkennen normaler Schriftzeichen | |
DE2208309C3 (de) | Verfahren zur Auswertung von Informationen in Form gruppenweise zusammengefaßter Informationselemente aus einfarbig gedruckten Strichen, Anordnung zur Darstellung von Informationen zur Auswertung nach dem Verfahren und Schaltungsanordnung zur Durchführung des Verfahrens | |
DE3015449C2 (de) | Frequenzdekoder | |
DE2645460C2 (de) | Verfahren und Vorrichtung zum Auswerten von selbsttaktierend codierten Signalen | |
DE3145088C2 (de) | Verfahren und Vorrichtung zum Bestimmen der Stellung eines Lichtgriffels | |
DE2318276A1 (de) | Verfahren und vorrichtung zum auswerten von kodierten aufzeichnungen | |
DE3109288C2 (de) | Optische Leseeinrichtung für in Balkencodeschrift codierte Zeichen | |
DE68912557T2 (de) | Verfahren und gerät zum lesen von zeichen. | |
DE2754172C2 (de) | Einrichtung zum Erkennen eines vorbestimmten Datensymbols aus einer Menge von Datensymbolen | |
DE2461380C3 (de) | Lesevorrichtung für codierte Informationen | |
DE2534456C2 (de) | Lesevorrichtung |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
8228 | New agent |
Free format text: EISENFUEHR, G., DIPL.-ING. SPEISER, D., DIPL.-ING., PAT.-ANW., 2800 BREMEN |
|
C3 | Grant after two publication steps (3rd publication) | ||
8339 | Ceased/non-payment of the annual fee |