DE69835660T2 - Zeit- und Abtastspiegellagedetektor für einen Strichcodeabtaster - Google Patents

Zeit- und Abtastspiegellagedetektor für einen Strichcodeabtaster Download PDF

Info

Publication number
DE69835660T2
DE69835660T2 DE69835660T DE69835660T DE69835660T2 DE 69835660 T2 DE69835660 T2 DE 69835660T2 DE 69835660 T DE69835660 T DE 69835660T DE 69835660 T DE69835660 T DE 69835660T DE 69835660 T2 DE69835660 T2 DE 69835660T2
Authority
DE
Germany
Prior art keywords
time
scan
bar code
motor
data
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 - Lifetime
Application number
DE69835660T
Other languages
English (en)
Other versions
DE69835660D1 (de
Inventor
John Baird Duluth Keys
Denis Michael Duluth Blanford
Kenneth Joseph Grayson Fabian
Barry Myron Lawrenceville Mergenthaler
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NCR International Inc
Original Assignee
NCR International Inc
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by NCR International Inc filed Critical NCR International Inc
Application granted granted Critical
Publication of DE69835660D1 publication Critical patent/DE69835660D1/de
Publication of DE69835660T2 publication Critical patent/DE69835660T2/de
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K7/00Methods or arrangements for sensing record carriers, e.g. for reading patterns
    • G06K7/10Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation
    • G06K7/10544Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation by scanning of the records by radiation in the optical part of the electromagnetic spectrum
    • G06K7/10821Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation by scanning of the records by radiation in the optical part of the electromagnetic spectrum further details of bar or optical code scanning devices
    • G06K7/10851Circuits for pulse shaping, amplifying, eliminating noise signals, checking the function of the sensing device
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K7/00Methods or arrangements for sensing record carriers, e.g. for reading patterns
    • G06K7/10Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation
    • G06K7/10544Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation by scanning of the records by radiation in the optical part of the electromagnetic spectrum
    • G06K7/10554Moving beam scanning
    • G06K7/10594Beam path
    • G06K7/10603Basic scanning using moving elements
    • G06K7/10613Basic scanning using moving elements by rotation, e.g. polygon
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K7/00Methods or arrangements for sensing record carriers, e.g. for reading patterns
    • G06K7/10Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation
    • G06K7/10544Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation by scanning of the records by radiation in the optical part of the electromagnetic spectrum
    • G06K7/10821Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation by scanning of the records by radiation in the optical part of the electromagnetic spectrum further details of bar or optical code scanning devices
    • G06K7/10861Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation by scanning of the records by radiation in the optical part of the electromagnetic spectrum further details of bar or optical code scanning devices sensing of data fields affixed to objects or articles, e.g. coded labels

Description

  • Die vorliegende Erfindung bezieht sich auf Strichcode-Scanner. Insbesondere bezieht sich die Erfindung auf Verfahren und Vorrichtungen zum Aufnehmen und Aufzeichnen von Zeit- und Spiegelpositions-Informationen während eines Strichcode-Scans.
  • Strichcode-Scanner werden gegenwärtig in einer Vielzahl von Anwendungen verwendet, und tragen dazu bei, die Effizienz und die Genauigkeit überall dort, wo sie eingesetzt werden, zu erhöhen. Die Verwendung von Strichcode-Scannern in Transaktionen des Einzelhandels verringert die Zeit für das Eingeben einer Transaktion und verringert die Wahrscheinlichkeit eines Fehlers während einer manuellen Eingabe von Daten. Wenn sie sachgerecht eingesetzt werden, erlauben Strichcode-Scanner eine erhöhte Effizienz beim Einsatz von Arbeitskräften, eine erhöhte Kundenzufriedenheit wegen einer Verringerung von Wartezeiten und unzutreffenden Abrechnungen und eine verbesserte Qualität des Ablaufs, die aus einer Reduzierung von Auszeichnungsfehlern herrührt. Das Scannen von Strichcodes erlaubt zudem ein sofortiges, genaues Aktualisieren des. Inventars, was zu einer stark verbesserten Effizienz der Abläufe beiträgt.
  • Heutige Strichcode-Scanner zeigen eine recht große Häufigkeit fehlgeschlagener Scans. Das erfordert es, dass der jeweilige Gegenstand erneut gescannt oder dass der Code des entsprechenden Gegenstandes manuell eingegeben wird. Das verlangsamt den Scan-Vorgang und vermindert dessen Effizienz.
  • Um die Scan-Effizienz zu verbessern und die Zahl der fehlgeschlagenen Scans zu vermindern, nehmen heutige Hochleistungs-Strichcode-Scanner Teile von Scans von Strichcodes neben kompletten Scans auf. Wenn lediglich Teile eines Scans oder Fragmente eines Strichcodes zur Verfügung stehen, wird der Versuch unternommen, einen gültigen Strichcode aus diesen zu rekonstruieren.
  • In Strichcode-Scannern nach dem heutigen Stand der Technik werden lediglich numerische Informationen aus dem Strichcode selbst aufgenommen. Heutige Scanner sind, in andern Worten, nicht in der Lage, Informationen über die Position des Strichcodes oder die Geschwindigkeit oder die Zeitabfolge des Scans aufzunehmen. Die Information, die für eine Rekonstruktion von Teilen eines Scans zur Verfügung steht, ist daher begrenzt, was die Zahl erfolgreicher Strichcode-Rekonstruktionen aus Teilen von Scans reduziert.
  • Strichcode-Scanner umfassen typischerweise einen Laserstrahl, der durch Spiegel und/oder Linsen auf eine zu scannende Fläche oder ein zu scannendes Objekt gerichtet ist. Licht vom Laser wird von dieser Fläche oder diesem Volumen aufgenommen und unter Verwendung vergleichbarer Mittel zu einem Fotodetektor geleitet. Das Signal vom Fotodetektor wird durch eine Rechnereinheit analysiert, die versucht, gültige Strichcodes aus den ankommenden Signalen zu konstruieren. Beispielsweise führt bei einer Supermarktkasse der Kassierer jeden zu kaufenden Gegenstand an einem Scanner, wie beispielsweise dem NCR 7875 Scannermodell, das von der NCR Corporation, Dayton, Ohio, USA erhältlich ist, vorbei.
  • Es würde die Fähigkeit von Strichcode-Scannern, Informationen zu erfassen und Informationen aus Teilen eines Scans zu rekonstruieren, deutlich verbessern, wenn der Scanner die Zeit, innerhalb derer das Strichcodefragment aufgenommen wurde und den Winkel der drehbaren Spiegelanordnung zu dem Zeitpunkt, an dem die Daten aufgenommen wurden, erfassen würde. Das würde die verfügbaren Informationen deutlich vergrößern, aus der ein vollständiger Strichcode rekonstruiert werden könnte. Beispielsweise könnte so die vermutliche Position des Etiketts, sowie die Geschwindigkeit und die Richtung der Bewegung des Etiketts ermittelt werden, so dass die Effizienz des Scan-Vorgangs deutlich verbessert würde.
  • Darüber hinaus existiert eine große Vielzahl an Möglichkeiten für Zweideutigkeiten und Störungen während des Scanners von Strichcodes. Wenn beispielsweise zwei Gegenstände zum gleichen Zeitpunkt in das Gesichtsfeld des Scanners gelangen, ist es nicht möglich, beide von ihnen zu scannen. Es ist vielmehr sehr viel wahrscheinlicher, dass der Scanner nicht in der Lage sein wird, die Informationen von beiden Strichcodes getrennt aufzulösen, und der Scan-Vorgang fehlschlagen wird. Das Hinzunehmen von Positions- und Zeitabfolge-Informationen würde die Wahrscheinlichkeit erhöhen, dass zwei Objekte unterschieden und erfolgreich erkannt werden können.
  • Es besteht daher im Stand der Technik ein substantielles Bedürfnis nach einem Strichcode-Scanner, der Zeitabfolge- und Spiegelwinkel- oder Positions-Informationen während eines Scans aufnimmt und speichert, um die Informationen zum Erhöhen der Wahrscheinlichkeit eines erfolgreichen Scans zu erhöhen.
  • Die GB-A-2310066 offenbart einen Strichcode-Scanner nach dem Oberbegriff der unabhängigen Ansprüche der vorliegenden Erfindung. Insbesondere offenbart dieses Dokument einen Strichcode-Positionsdetektor, der eine optische Anordnung mit einem drehbaren Abschnitt, der an einen Motor angekoppelt ist, auf weist. Die Position des Motors wird durch einen Motor-Referenzpositionssensor bestimmt, der bestimmt, wann sich der Motor in einer Referenzposition befindet, und umfasst einen Zeitmesser, der präzise die Zeit bestimmt, die vergangen ist, seitdem der Motor in der Referenzposition war. Der Strichcode-Scanner beinhaltet zudem ein einzelnes Videosystem zum Aufnehmen von Strichcode-Scan-Informationen und einen Prozessor, der in der Lage ist, die Position eines Strichcodes aus den Motorpositions-Informationen und den Strichcode-Scan-Informationen zu bestimmen.
  • Die US-A-5 633 488 offenbart einen Strichcode-Scanner, der ausgebildet ist zum Ermöglichen einer Bewertung der Qualität von Strichcodedaten mit hoher Geschwindigkeit durch Verarbeiten eines Reflexionsprofil-Signals eines Scans, der von einer Scanner-Einheit erzeugt wurde. Das Reflexionsprofil des Scans wird verarbeitet, um den höchsten positiven Peakwert und den größten negativen Peakwert für jedes Element des Strichcodes zu erhalten. Die vorstehend erwähnten Peakwerte werden weiter verarbeitet, um einen Kennwert bezüglich der Qualität des Strichcodes zu erhalten.
  • Die US-A-5 510 605 offenbart einen Strichcode-Scanner mit einer Vielzahl von Halbleiterlaserdioden, die angeordnet sind, um Scan-Muster zum Lesen eines Strichcodes bereitzustellen.
  • Die US-A-5 361 158 offenbart einen optischen Scanner mit mehreren Quellen, der eine Mehrzahl von Scan-Lichtquellen verwendet, um die Gesamtschärfentiefe und die Dichte des Gesamt-Scan-Rasters zu erhöhen. In einer ersten Ausführungsform weisen die Laser verschiedene Wellenlängen auf und sind alle angeschaltet. Deren individuelle Schärfentiefen sind aneinander angrenzend oder auf überlappende Art und Weise zueinander orientiert. In einer zweiten Ausführungsform weisen die Laser alle die gleiche Wellenlänge auf und werden einzeln und aufeinander folgend aktiviert. Beide Ausführungsformen verwenden kollimierende und fokussierende Optiken, um Scan-Strahlen herzustellen, verwenden Sammeloptiken, um von einem ein Strichcode-Etikett aufweisenden Artikel reflektiertes Licht zu sammeln und Verarbeitungsschaltkreise zum Erzeugen von Signalen, die Informationen, die auf den Intensitäten des reflektierten Lichts beruhen, über die Artikel zu erzeugen. Die erste Ausführungsform verwendet zudem Filteroptiken zum Separieren der individuellen Wellenlänge des reflektierten Lichts. Jede Wellenlänge von reflektiertem Licht wird durch ihren eigenen Kanal innerhalb der Verarbeitungsschaltkreise verarbeitet. Die zweite Ausführungsform verwendet eine Modulation und Verarbeitungsschaltkreise zum Ein- und Ausschalten der jeweiligen Quelle. Zum Dekodieren wird ein einzelner Kanal verwendet.
  • Gemäß einem ersten Aspekt betrifft die vorliegende Erfindung einen Positionsdetektor für einen Strichcode-Scanner, wobei der Strichcode-Scanner eine optischen Anordnung, die einen drehbaren Abschnitt aufweist, und einen Motor, der mit der optischen Anordnung verbunden ist, umfasst, und wobei der Detektor ausgebildet ist, um die Zeitabfolge eines Scans eines Strichcodes zu erfassen, der vom Strichcode-Scanner gelesen wird und einen Winkel des drehbaren Abschnitts der optischen Anordnung zum Zeitpunkt des Scans zu bestimmen, wobei der Positionsdetektor umfasst: einen Motor-Referenzpositionssensor zum Ermitteln eines Motor-Referenzpositionssignals, wenn der Motor sich in einer Referenzposition befindet; einen Zeitmesser zum genauen Messen der Zeit, die seit dem Zeitpunkt vergangen ist, zu dem der Motor in der Referenzposition war; ein Video-System zum Aufnehmen von Strichcode-Informationen von einem Strichcode-Scan und einen Prozessor zum Aufnehmen von Informationen vom Zeitmesser über die seit dem Zeitpunkt ver gangene Zeit, zu dem der Motor in der Referenzposition war, und des Motor-Referenzpositionssignals, wobei der Prozessor den Drehwinkel des Motors zu dem Zeit-punkt berechnet, an dem die Strichcode-Information empfangen wurde, dadurch gekennzeichnet, dass der Positionsdetektor zusätzlich ein zweites Video-System, das parallel zum ersten Video-System arbeitet, und einen analogen Video-Prozessor umfasst, der ausgebildet ist, um verschiedene Filter und Schwellenwerte auf die Signale der beiden Video-Kanäle anzuwenden, umfasst, und wobei das Video-System zusätzlich eine Intervallmessschaltung zum Messen des Intervalls zwischen dem Anfang und dem Ende von Segmenten eines Strichcodes umfasst, und wobei das Video-System zusätzlich einen Filter umfasst, der ausgebildet ist, um einen Strichcode-Scan in Abhängigkeit von dem Verhältnis verschiedener benachbarter Intervalle, die während eines Scans aufgezeichnet wurden, zu akzeptieren oder zurückzuweisen.
  • Gemäß einem zweiten Aspekt betrifft die Erfindung ein Verfahren zum Bestimmen der Zeitabfolge eines Strichcode-Scans und der Winkelposition eines drehbaren Abschnitts einer optischen Anordnung zum Zeitpunkt des Scans, wobei die optische Anordnung an einem Motor angebracht und durch diesen gedreht wird, wobei der Motor eine zugeordnete Pulserzeugungseinheit aufweist, die immer dann einen Referenzpuls erzeugt, wenn der Motor durch eine Referenzposition dreht, wobei das Verfahren die folgenden Schritte umfasst: Überwachen der Zeit, die seit dem Zeitpunkt vergangen ist, zu dem der Motor die Referenzposition erreicht hatte; Scannen eines Strichcodes und Aufnehmen von Strichcode-Informationen eines Strichcode-Scans mit einem Video-System; für jeden Scan Aufnehmen der Daten über die vergangene Zeit und Verknüpfen der Daten zur vergangenen Zeit mit dem Scan und Verarbeiten der Daten zur vergangenen Zeit zum Bestimmen der Winkelposition des Motors und der Zeit des Scans, gekennzeichnet durch den Schritt des Aufnehmens von Strichcode-Informationen von einem Strichcode-Scan mit einem zweiten Video-System, das parallel zu dem ersten Video-System arbeitet und Verwenden eines analogen Video-Präprozessors zum Bereitstellen verschiedener Filter- und Schwellenwertanwendungen für die Signale der beiden Videokanäle und Messen des Intervalls zwischen einem Anfang und einem Ende eines Segments eines Strichcodes unter Verwendung einer Intervall-Messschaltung und Akzeptieren oder Zurückweisen eines Strichcode-Scans in Abhängigkeit von dem Verhältnis verschiedener benachbarter Intervalle, die während eines Scans aufgenommen wurden, unter Verwendung eines Filters.
  • Durch das Rekonstruieren der wahrscheinlichen Position eines Strichcode-Etiketts in Zeit und Raum zum Zeitpunkt des Scannens kann eine große Anzahl von Vorteilen erreicht werden. Beispielsweise kann mehr als ein Strichcode-Etikett zur gleichen Zeit gelesen werden, unabhängig davon, ob die beiden Etiketten an dem gleichen Gegenstand oder an zwei verschiedenen Gegenständen angebracht sind, und sogar dann, wenn beide die gleichen Strichcodedaten aufweisen. Die Zeit- und Raumdaten erlauben es, zwischen zwei Gegenständen der gleichen Art, die schnell hintereinander oder sogar im Wesentlichen gleichzeitig gescannt werden, und einem schnell auftretenden doppelten Lesen des gleichen Gegenstands zu unterscheiden.
  • Die Rekonstruktion der Position eines Strichcode-Etiketts in Zeit und Raum erlaubt das Bestimmen der Geschwindigkeit und der Richtung des Etiketts, während es über den Scanner geführt wird. Das erlaubt es, den Strichcode-Scanner so zu programmieren, dass er dem Kassierer eine Rückmeldung gibt, um so beim Selbsttraining bezüglich der Effizienz im Umgang mit dem Strichcode-Scanner Unterstützung zu geben. Die Zeit- und Raumdaten ermöglichen es zudem, verbesserte Messdaten über erfolgreiches Lesen im ersten Versuch zu erhalten, was es dem Manager eines Kaufhauses erlaubt, festzustellen, welche Kassierer die effizientesten sind und welche zusätzlichen Trainings bedürfen.
  • Zusätzlich werden eine verbesserte Sicherheit beim Kassieren und eine höhere Genauigkeit beim Kassieren erreicht. Die Wahrscheinlichkeit, dass ein falscher Code aus Teilen von Scans von zwei verschiedenen Etiketten rekonstruiert wird, ist signifikant geringer. Etiketten, die die Scan-Zone verlassen und danach zurückkehren, können erkannt und ignoriert werden. Wird beispielsweise ein Gegenstand von rechts nach links über den Strichcode-Scanner bewegt und ein guter Scan erhalten, und wird er dann von links nach rechts in die Scan-Zone und danach zurück nach links und aus der Scan-Zone hinaus bewegt, so kann das Etikett, das zum zweiten Mal gescannt wird, ohne Probleme ignoriert werden. Der vorliegende Ansatz kann daher verwendet werden, um das doppelte Scannen unter diesen und unter anderen Umständen zu vermeiden. Des Weiteren kann die Verzögerung zwischen zwei Scans von Gegenständen reduziert oder vollständig eliminiert werden.
  • Des Weiteren können Daten, die durch Multifilterschaltungen aufgenommen werden, vorteilhaft erfasst und korreliert werden. Daten, die unter bestimmten Winkeln oder für bestimmte Flächen der Scan-Zone aufgenommen wurden, können ignoriert werden, wenn die zugehörigen Daten nicht in anderen Abschnitten der Scan-Zone detektiert werden, um Fehl-Scans zu vermeiden, wie beispielsweise Scans auf dem Förderband. Filtermoden für bestimmte Bereiche der Scan-Zone können selektiv verändert werden. Durch das Aufzeichnen von Zeit- und Positionsdaten kann daher eine Vielzahl von substantiellen Verbesserungen erreicht werden.
  • Eine Ausführungsform der vorliegenden Erfindung wird nun exemplarisch mit Bezug auf die beigefügten Zeichnungen beschrieben, wobei:
  • 1 ein Diagramm ist, das einen Strichcode-Scanner darstellt, der die Verwendung von aufgenommenen Zeit- und Spiegelwinkeldaten gemäß der vorliegenden Erfindung verkörpert,
  • 2 ein Diagramm ist, das eine Regel- bzw. Steuer- und Positionsdaten-Erfassungsschaltung gemäß einem Aspekt der vorliegenden Erfindung zum Regeln bzw. Steuern eines Strichcode-Scanners und zum Erhalten von Zeitabfolge- und Spiegelwinkeldaten darstellt,
  • 3 ein Diagramm ist, das eine Videoschaltung darstellt, die verwendet wird, um Spiegelwinkeldaten in einem Strichcode-Scanner gemäß einem Aspekt der vorliegenden Erfindung zu erhalten, und
  • 4 ein Flussdiagramm ist, das ein Verfahren zum Erhalten von Zeitabfolge- und Spiegelwinkeldaten gemäß einem Aspekt der vorliegenden Erfindung darstellt.
  • 1 ist ein Diagramm, das einen Strichcode-Scanner 10 zeigt, der die Verwendung von aufgenommenen Zeit- und Spiegelwinkeldaten gemäß der Lehre der vorliegenden Erfindung enthält. Der Strichcode-Scanner 10 beinhaltet vorzugsweise einen ASIC (application specific integrated circuit, einer Anwendung angepasster, integrierter Schaltkreis) 12. Der ASIC 12 beinhaltet eine Master-Regel- bzw. Steuerschaltung, eine erste Videoschaltung 17 und eine zweite Videoschaltung 19, die detaillierter im Zusammenhang mit den 2 und 3 unten erläutert wird. Der dargestellte Strichcode-Scanner 10 beinhaltet bevorzugt des Weiteren eine Messanordnung 16, auf die ein Objekt, beispielsweise eine variable Masse 21 abgelegt werden kann, um sie zu wägen. Die variable Masse 21 kann beispielsweise eine Tüte mit Äpfeln oder anderen Produkten sein, die nach Kilogramm von einem Obst- und Gemüsegeschäft verkauft wird. Die Messanordnung 16 stellt dem ASIC 12 Gewichts-Informationen bereit.
  • Der Strichcode-Scanner 10 umfasst zudem bevorzugt eine Messwertanzeige und eine Kommunikationsschaltung 18, eine erste dezentrale Kommunikationsschaltung 20, eine zweite dezentrale Kommunikationsschaltung 22, eine Messwert-zu-Host-Terminal-Übermittlungsschaltung 24 und eine Scanner/Messwert-zu-Host-Terminal-Übermittlungsschaltung 26, wobei jede der Schaltungen 18 bis 26 dem ASIC 12 Signale bereitstellt, wobei das Signal von jeder der Schaltungen 18 bis 26 zunächst durch einen Spannungsregler (line conditioner) 28 läuft. Der ASIC 12 stellt einem Laser 29 zudem ein Laser-Regel- bzw. -Steuersignal bereit und stellt zudem einem Motor 30 Ansteuerbefehle bereit. Der Motor 30 umfasst eine Motorwelle 30a, an die eine optische Anordnung 32 angebracht ist, die daran angebrachte Spiegel umfasst, die sich drehen, wenn sich die Motorwelle 30a dreht. Zusätzlich angebrachte Linsen und Spiegel können ggf. eingesetzt werden, um die gewünschte Anzahl und Orientierung von Scan-Linien auf bekannte Art und Weise zu erzeugen. Während die vorliegende Erfindung zum Beispiel mit einer Vielzahl bestehender Strichcode-Scanner und Strichcode-Scannern, die noch nicht entworfen sind, verwendet werden kann, kann die Erfindung in einer zum jetzigen Zeitpunkt bevorzugten Ausführungsform auf geeignete Art und Weise als Aufrüstung zum NCR-Strichcode-Scanner, Modell 7875 eingesetzt werden.
  • Da der Motor 30 in Abhängigkeit von Signalen vom ASIC 12 angetrieben ist, wird die optische Anordnung 32 durch den Motor 30 bewegt. Wenn Licht vom Laser 29 emittiert wird, tritt das Licht durch die optische Anordnung 32, um auf ein Strichcode-Etikett 34 zu treffen, wenn ein Strichcode-Etikett 34 innerhalb des Gesichtsfelds des Strichcode-Scanners vorhanden ist.
  • Wenn das Licht ein Strichcode-Etikett 34 trifft, wird das Licht zur optischen Anordnung 32 zurückreflektiert und von der optischen Anordnung 32 gesammelt. Es wird ein elektrisches Signal aus dem gesammelten optischen Signal erzeugt und an eine analoge Video-Präprozessorschaltung 52 weitergeleitet, die dem ASIC 12 ein digitales VIDEO0- und VIDEO1-Signal bereitstellt.
  • Der Strichcode-Scanner 10 umfasst zudem einen Mikroprozessor 42. Interrupts, Verarbeitungssignale, Universal Asynchronous Receiver Transmitter (UART-) Signale und andere Input-/Output-(I/O)-Signale werden zwischen dem ASIC 12 und dem Mikroprozesor 42 ausgetauscht. Der Strichcode-Scanner 10 beinhaltet des Weiteren eine Input-/Output-Baugruppe 40, die Frontpanelschalter, einen Fotodetektor und LEDs umfasst. Der Mikroprozessor 42 kann Einstellwerte von den Frontpanelschaltern erhalten, indem er ein Signal, das die Schalterstellung wiedergibt, von der Input-/Output-Baugruppe 40 empfängt. Der Mikroprozessor setzt den Status der LEDs auf der Input/Output-Baugruppe 40 durch Übermitteln eines LED-Statussignals an die Input-/Output-Baugruppe 40.
  • Der Strichcode-Scanner 10 beinhaltet bevorzugt zudem Einrichtungen zur Tonerzeugung, die eine Tonausgangsschaltung 48 und einen Lautsprecher 50 beinhaltet. So kann beispielsweise ein Piepen einen geglückten Strichcode-Lesevorgang anzeigen. Es kann auch eine Rückmeldung, wie beispielsweise eine Trai ningsrückmeldung, die auf Zeit- und Positionsdaten beruht, bereitgestellt werden. Der Strichcode-Scanner 10 beinhaltet zudem einen Schreib-/Lesespeicher (random access memory, RAM) 44 und einen Nur-Lese-Speicher (read only memory, ROM) 46.
  • Der Strichcode-Scanner 10 erzeugt Töne und Geräusche in Form von Stimmen, um mit dem Bediener zu kommunizieren. Die Tonausgangsschaltung 48 empfängt Signale von dem ASIC 12 und vom Mikroprozessor 42 bezüglich der Anweisungen, welche Töne und wann diese zu erzeugen sind. Die Töne werden an den Lautsprecher 50 weitergeleitet. Wie oben bereits ausgeführt, kann eine Vielzahl von Rückmeldungen an einen neuen Bediener auf der Basis der Zeit- und Positionsdaten bereitgestellt werden.
  • Ein Datenbus verläuft zwischen dem ASIC 12, dem Mikroprozessor 42, dem Schreib-/Lesespeicher 44, dem Nur-Lese-Speicher 46 und der Tonausgangsschaltung 48. Ein Adress- und Steuerbus verläuft ebenfalls zwischen dem ASIC 12, dem Mikroprozessor 42, dem Schreib-/Lesespeicher 44 und dem Nur-Lese-Speicher 46.
  • Der Motor 30 treibt den drehbaren Abschnitt der optischen Anordnung 32 an. Der Motor umfasst vorzugsweise eine Hall-Effekt-Einheit, die eine festgelegte Zahl an Pulsen immer dann abgibt, wenn der Motor um eine Umdrehung gedreht hat. Es ist anzumerken, dass jeder Sensor, der in der Lage ist, die Motorposition genau zu messen, einsetzbar ist. Die Pulse werden an den ASIC 12 und an den Mikroprozessor 42 in Form eines Motorpulssignals übertragen. Der ASIC 12 und der Mikroprozessor 42 sind ausgebildet, um das Motorpulssignal mit einer Referenzposition des Motors zu korrelieren. Eine Zeitzählung (count time), die aus schnellen Takt- bzw. Uhrimpulsen abgeleitet ist, wird generiert, wenn sich der Motor 30 mit einer bekannten Geschwindigkeit dreht, und dessen Position kann be rechnet und mit Ereignissen korreliert werden, beispielsweise Strichcode-Scans oder Strichcode-Intervallen.
  • Das Motorpulssignal wird daher verwendet, um zu einem bestimmten Zeitpunkt einen Zeitmesser zu synchronisieren, der im Prozessor 42 enthalten ist und den Winkel des Motors 30 zu einer bestimmten Zeit angibt. Zu einem geeigneten Zeitpunkt vor Aufnahme des Betriebs des Strichcode-Scanners 10 wird der Prozessor 42 mit Informationen programmiert, wie beispielsweise der Anzahl der Pulse während einer Motorumdrehung und dem Puls, der als Referenz für den Beginn einer Scan-Umdrehung zu verwenden ist. Der ASIC 12 verwendet diese Informationen, um die Gesamtheit aus Zeitpunkt eines Ereignisses und Umdrehung des Motors zu synchronisieren, wie im Weiteren detailliert beschrieben wird.
  • 2 ist ein Diagramm, das weitere Details der Master-Regel- bzw. Steuerschaltung 15a darstellt, die in dem ASIC 12 enthalten ist. Die Master-Regel- bzw. Steuerschaltung 15 umfasst eine Schaltung zum Dekodieren und Auswählen 102, eine Vorderflanken-Erkennungsschaltung 104 und eine Hinterflanken-Erkennungsschaltung 106. Die Master-Regel- bzw. Steuerschaltung 15 umfasst zudem ein Voreinstellregister 108, ein Motorkonfigurationsregister 110, einen Multiplexer 112, ein Motorgeschwindigkeitsregister 114, ein Laser-Aus-Register 116 und eine Laser-Regelung bzw. -Steuerung 118, die mit der Schaltung zum Dekodieren und Auswählen 102 und auch mit dem Datenbus 43 verbunden sind.
  • Während eines typischen Betriebs des ASICS 12 erhält die Master-Regel- bzw. Steuerschaltung 15 Adress-, Regel- und Dateneingaben vom Mikroprozessor 42. Die Schaltung zum Dekodieren und Auswählen 102 wählt in Abhängigkeit von Adress- und Steuersignalen vom Mikroprozessor 42 das Voreinstellregister 108, das Motorkonfigurationsregister 110, das Motorgeschwindigkeitsregister 114, das Laser-Aus-Register 116 und die Laser-Regelung bzw. -Steuerung 118 aus. Gleichzeitig werden durch den Mikroprozessor 42 Daten auf den Datenbus 43 gebracht, wobei die Daten in die ausgewählte Einheit geladen werden.
  • Die Master-Regel- bzw. Steuerschaltung 15 umfasst zudem eine Zeitstempeluhr (time stamp clock) 130, die einen Zeitstempelwert erzeugt, der bis zu 14 Bit lang sein kann. Die Zeitstempeluhr 130 wird durch einen Uhrenvoreinsteller (clock prescaler) 120 gesteuert. Der Uhrenvoreinsteller empfängt ein gleichbleibendes Uhreneingangssignal und die Frequenz, mit der der Uhrenvoreinsteller eine Ausgabe erzeugt, wird durch einen Wert gesteuert, der im Voreinstellregister 102 abgelegt ist. Der Voreinstellwert ist so eingestellt, dass der Maximalwert für die Bits von 0 bis 9 gerade größer ist als die Zeit für eine volle Umdrehung des Motors 30, wenn er mit einer voreingestellten Minimalgeschwindigkeit dreht, wie weiter unten beschrieben ist. Der Uhrenvoreinsteller liefert ein Uhreneingangssignal an den Zeitstempelzähler bzw. die Zeitstempeluhr 130, so dass die Uhr des Zeitstempelzählers 130 jedes Mal dann aktiviert ist, wenn der Uhrenvoreinsteller inkrementiert. Der Zeitstempelzähler 130 erzeugt ein Signal TS, nämlich die Überlaufbits 10 bis 13, das an den Eingang A eines Motorgeschwindigkeits-Komparators 126 geliefert wird. Der Motorgeschwindigkeits-Komparator 126 ist ein A > B-Komparator und erhält seine Eingabe bezüglich B vom Motorgeschwindigkeitsregister 114, das eine erste, vorgegebene minimal erlaubte Geschwindigkeit des Motors 30 angibt. Wenn der Motor sich langsamer als die minimal erlaubte Geschwindigkeit dreht, überschreitet der Wert TS den im Motorgeschwindigkeitsregister gespeicherten Wert und die Eingabe A des Komparators 126 übersteigt seine Eingabe B. Der Komparator 126 erzeugt dann ein Interrupt-Signal an den Mikroprozessor 42, der dieser Bedingung entsprechend reagieren kann. Das erlaubt es dem Mikroprozessor 42, die Geschwindigkeit wie gewünscht anzupassen, um speziellen Scan-Bedingungen Rechnung zu tragen, beispielsweise wenn Strichcodes leichter bei Drehgeschwindigkeiten gemessen werden können, die geringer als normal sind.
  • Das Signal TS wird auch als das A-Eingangssignal des Laserkomparators 128, einem A < B-Komparator, zugeführt, der als sein B-Eingangssignal Daten vom Laser-Aus-Register 116 empfängt, die ein zweites, vorgegebenes Minimum angeben, nämlich die minimal zulässige Geschwindigkeit des Motors 30, bei der der Laser 29 in Betrieb sein darf. Das Ausgangssignal des Laserkomparators 128 wird dem UND-Gatter 134 zugeführt, das auch ein Eingangssignal von der Lasersteuerung 118 erhält. Das UND-Gatter 134 liefert ein Laser-AN-Signal, das steuert, ob der Laser 20 eingeschaltet oder ausgeschaltet ist. Der Laser 29 kann entsprechend nur in Betrieb sein, wenn die Lasersteuerung 118 den Laser 29 auf AN ansteuert und wenn der TS-Wert anzeigt, dass die Geschwindigkeit des Motors 30 sich innerhalb der vorgegebenen Grenze bewegt. Ist die Geschwindigkeit des Motors 30 kleiner als die minimal erlaubte Geschwindigkeit, überschreitet das Eingangssignal A des Laserkomparators 128 das Eingangssignal B, das Ausgangssignal des Laserkomparators 128 wird auf AUS gesetzt und bewirkt, dass das UND-Gatter 134 ebenfalls auf AUS gesetzt wird und der am Signal hängende Laser wird ebenfalls auf AUS gesetzt, was dazu führt, dass der Laser 29 abgeschaltet wird.
  • Das Motorkonfigurationsregister 110 speichert Daten, die die Zahl der Pulse pro Umdrehung und die Polarität der Flanke, auf die zu synchronisieren ist, anzeigt. Die Information bezüglich der Flanke, auf die zu synchronisieren ist, wird dem Multiplexer 112 bereitgestellt, der das Signal, dass die richtige Kante detektiert wurde, vom Detektor 104 oder 106 an den Zeitstempelzähler 130 multiplext. Der Pulskomparator 122 empfängt eine Anzahl von Pulsen pro Umdrehung und liefert ein Reset-Eingangssignal an einen Takt-/Motor-Pulszähler 124 und an den Zeitstempelzähler 130 und liefert einen Zeiteingabewert an den Motorumdrehungszähler 132.
  • Wenn sich der Motor 30 dreht, wird ein Motorpulssignal an den ASIC 12 gesendet, der dieses an seiner Vorderflankenerkennungsschaltung 104 bzw. seiner Hinterflankenerkennungsschaltung 106 empfängt. Die Vorderflankenerkennungsschaltung 104 und die Hinterflankenerkennungsschaltung 106 produzieren jeweils ein Ausgangssignal, das an den Multiplexer 112 übermittelt wird. Der Multiplexer 112 liefert dann ein Ausgangssignal, das an den Takt-/Motor-Pulszähler 124 geleitet wird. Der Takt-/Motor-Pulszähler 124 zählt das Eingangssignal, das vom Multiplexer 112 empfangen wird, und sendet den Zählwert an einen Pulskomparator 122. Der Pulskomparator 122 empfängt, wie oben ausgeführt, auch ein Eingangssignal vom Motorkonfigurationsregister 110, wobei das Eingangssignal vom Motorkonfigurationsregister 110 die Anzahl an Pulsen pro volle Umdrehung angibt. Wenn der vom Takt-/Motor-Pulszähler 124 erzeugte Zählwert dem Wert entspricht, der im Motorkonfigurationsregister 110 gespeichert ist, erzeugt der Pulskomparator 122 einen Puls, der den Zeitstempelzähler 130 und den Takt-/Motor-Pulszähler 124 zurücksetzt und den Wert der Uhr des Motorumdrehungszählers 132 inkrementiert. Der Motorumdrehungszähler 132 liefert einen Zählwert MR, der mit dem Signal TS vom Zeitstempelzähler kombiniert wird, um den Zeitstempelzählwert zu erhalten, der wie weiter unten in Verbindung mit der Erläuterung von 3 näher beschrieben wird.
  • 3 ist ein Diagramm, das die erste Videoschaltung 17 detaillierter beschreibt. Die erste Videoschaltung 17 ist identisch mit der zweiten Videoschaltung 19, die hier aus Gründen der Übersichtlichkeit nicht detailliert beschrieben wird, und arbeitet parallel zu dieser.
  • Die erste Videoschaltung 17 umfasst einen Intervallzähler 302, einen Flankendetektor 304, eine Filteröffnungs-/Grenzwert-Register-Schaltung 306 und einen Vorpuffer 308. Der Vorpuffer 308 umfasst des Weiteren einen Flag-Vorpuffer 308a und ein Intervall-Vorpuffer-Shiftregister 308b. Die Videoschaltung 17 umfasst zudem ein Zeitstempel-Vorpuffer-Shiftregister 310, eine Komparatorschaltung 312, eine Intervallsummenschaltung 314, eine FIFO-Steuerschaltung 316 (FIFO, first in first out, Speicherung bei dem diejenigen Elemente, die zuerst gespeichert werden, auch zuerst wieder entnommen werden), einen Multiplexer 318, einen UPC-Filter 320 (universal product Code) und eine Intervall-FIFO-Schaltung 322.
  • Die erste Videoschaltung 17 empfängt ein Videoeingangssignal, das in den Flankendetektor 304 geleitet wird. Der Flankendetektor 304 erzeugt ein Uhrenänderungsausgangssignal, das dem Flag-Vorpuffer/Shiftregister 308a und dem Zeitstempel-Vorpuffer-Shiftregister 310 zugeführt wird. Das Uhrenänderungsausgangssignal wird zudem dem Intervallzähler 302 als Rücksetz-Eingangssignal zugeführt. Der Flankendetektor 304 bewirkt, dass der Intervallzähler 302 bei einem Bildübergang, einem 12-Bit-Signal-INT, das den Wert und die Videopolarität auf dem Intervall darstellt, gestartet wird. Das Signal INT wird beim nächstfolgenden Übergang des Videosignals in das Intevall-Vorpuffer/Shiftregister verschoben, wobei der Übergang des Videosignals auch den Intervallzähler 302 zurücksetzt und so die Zeitsteuerung des nächsten Intervalls startet. Diese Intervalle repräsentieren das Zeitintervall oder im Endeffekt die Breite der Striche und Zwischenräume, die einen Strichcode ausmachen, der gerade gescannt wird.
  • Gleichzeitig wird das Zeitstempelsignal, das den 10-Bit-Zeitstempel und die vier am wenigsten signifikanten Bits des Motorumdrehungszählers 132 repräsentieren, in das Zeitstempel-Vorpuffer-Shiftregister 310 verschoben. Die Zeitdauer für jedes Videointervall, die Polarität und das zeitliche Verhältnis relativ zur Motorposition werden so für jeden Videoübergang aufgenommen.
  • Die Videointervalle werden auch durch die Intervallsummenschaltung 314 und die Filterschaltung 320 geschickt, die ermitteln, ob der Videodatenstrom vorgegebene zeitliche Verhältnisse erfüllt, die anzeigen, dass der Videodatenstrom Daten eines gültigen Strichcodes darstellt. Weitere Details der hier bevorzugten Videodatenbearbeitung werden im US-Patent Nr. 5 262 625 beschrieben. Ist beispielsweise das Zeitintervall zwischen dem Anfang und dem Ende der Videodaten zu lang, so stammen sie nicht von einem gültigen Scan eines Strichcodes und werden verworfen. Der Anfang und das Ende von zulässigen Strichcode-Daten werden durch das Setzen von Flag-Bits im Flag-Vorpuffer-Shiftregister 308a markiert. Die Flag-Bits werden dann zur zugehörigen Intervalldatenzeichenfolge addiert, die im Intervall-Vorpuffer-Shiftregister 308b gespeichert sind. Die Flags werden von der FIFO-Steuerschaltung 316 verwendet, um zu ermitteln, welche Intervalle in die Intervall-FIFO-Schaltung 322 zu schreiben sind, die die Intervalldaten für den Mikroprozessor 42 puffert. Wird der Anfang eines Blockintervalls in die Intervall-FIFO-Schaltung 322 geschrieben, so wird auch der korrespondierende Zeitstempelwert der Intervalldatenzeichenkette vorangehend in die Intervall-FIFO-Schaltung 322 geschrieben. Das geschieht dadurch, dass das Zeitstempelsignal vom Zeitstempel-Vorpuffer-Shiftregister 310 und dem Ausgang des Vorpuffers 318 in den Multiplexer 318 weitergereicht wird, der unter der Steuerung der FIFO-Steuerung 316 arbeitet und steuert, ob der Zeitstempel oder die Intervalldaten selektiv in den Komparator 312 geschrieben werden. Der Zeitstempelwert wird zudem an die Komparatorschaltung 312 gesendet, wo das Signal mit dem Inhalt in den Registern der Filteröffnungs-/Grenzwert-Register-Schaltung 306 verglichen wird.
  • Die Filteröffnungs-/Grenzwert-Register-Schaltung 306 umfasst vier Sätze an Filteröffnungs-/Grenzwert-Registern, in die der Mikroprozessor 42 Zeitwerte zum Vergleich mit den Zeitstempelwerten laden kann, die aus dem Zeitstempel-Vorpuffer erhalten werden. Der Mikroprozessor 42 kann beim Analysieren der Intervalldaten, die von der Intervall-FIFO-Schaltung 322 eingeladen werden, feststellen, dass mehr Intervalle als vom Satz digitaler Filter 320 erlaubt sind, notwendig sind, um die Strichcodedaten angemessen zu dekodieren. Das ermöglicht eine effiziente Echtzeit-Steuerung der Filterregister, die an die beobachteten Scan-Bedingungen angepasst ist.
  • Der Mikroprozessor 42 errechnet dann die Zeitwerte für benachbarte Laser-Scan-Strahlen und lädt diese Grenzwerte in ein oder mehrere der Filteröffnungs-/Grenzwert-Register in der Filteröffnungs-/Grenzwert-Register-Schaltung 306. Der Inhalt der Register in der Filteröffnungs-/Grenzwert-Register-Schaltung 306 wird zum Vergleich mit dem Zeitstempelsignal in die Komparatorschaltung 312 geladen. Wenn das Zeitstempelsignal sich innerhalb der Zeitgrenzen befindet, die von der Filteröffnungs-/Grenzwert-Register-Schaltung 306 erhalten wurden, sendet die Komparatorschaltung 312 ein Filteröffnungssignal an die FIFO-Steuerschaltung 316, was dazu führt, dass die FIFO-Steuerschaltung 316 allen folgenden Intervallen erlaubt, in die interne FIFO-Schaltung 322 geschrieben zu werden, solange das Filteröffnungssignal andauert. Dieses Signal überschreibt ein Start-Flag-Bedingungssignal oder ein End-Flag-Bedingungssignal aus dem Flag-Vorpuffer 308a.
  • Wie in 2 gezeigt, umfasst der ASIC 12 den Block der zweiten Videoschaltung 19, die parallel zum Block der ersten Videoschaltung 17 arbeitet. Die Blöcke der beiden Videoschaltungen 17 und 19 werden vorteilhafterweise mit Signalen VI-DEO0 und VIDEO1 beschickt, die mit verschiedenen Filter- und 5chwellenwertverfahren in einem analogen Video-Präprozessor 52 bearbeitet wurden. Die empfangenen Videosignale werden daher mit unterschiedlich eingestellten analogen Schaltungen aufgenommen. Eine geeignete Wahl der verwendeten Filterung und der Verarbeitung im Block der ersten Videoschaltung 17 und der zweiten Videoschaltung 19 ergibt eine breitere Abdeckung für das Lasersignal, das vom Strichcode 34 reflektiert worden ist.
  • 4 ist ein Flussdiagramm und stellt ein Verfahren 400 der zum Detektieren von Zeit- und Winkelpositionen einer optischen Anordnung, die in einem Strichcode-Scanner nach den Grundsätzen der vorliegenden Erfindung verwendet wird. Bei Schritt 402 wird der Strichcode-Scanner gestartet. Der Strichcode-Scanner umfasst vorzugsweise eine optische Anordnung, die einen drehbaren Abschnitt umfasst. Dieser drehbare Abschnitt der optischen Anordnung wird vorzugsweise durch einen Motor angetrieben, der eine mit diesem verbundene Pulserzeugungseinheit aufweist. Bei Schritt 404 wird der Motor gestartet. Ein Puls oder Pulse werden durch die Pulserzeugungseinheit erzeugt, die mit dem Motor verbunden ist. Es ist anzumerken, dass jeder geeignete Positionssensor verwendet werden kann. Bei Schritt 406 wird eine Uhr gestartet und die Zeit wird überwacht. Bei Schritt 408 werden Zeitpulse bzw. Taktpulse gezählt und ein Zeitstempel wird generiert. Schritt 408 setzt sich auf einer sich wiederholenden Basis fort. Das heißt, dass die Taktpulse weitergezählt werden und dass ein Zeitstempel solange weitererzeugt wird, wie der Strichcode- Scanner in Betrieb ist oder der Zeitstempel auf Null zurückgesetzt wird.
  • Bei Schritt 410 wird ein Scan eines Strichcodes durchgeführt. Bei Schritt 412 wird der Scan auf seine Gültigkeit hin überprüft. Ist der Scan ungültig, wird ein Steuersignal zu Schritt 414 gesendet und der Scan wird verworfen. Ist der Scan gültig, wird ein Steuersignal zu Schritt 416 gesendet und der Zeitstempel wird überprüft, um den Zeitpunkt des Scans zu ermitteln. Die Zeitdaten werden dann abgespeichert. Bei Schritt 418 wird die Pulszählung des Pulszählers erfasst und abgespeichert. Bei Schritt 420 wird der gesamte Drehwinkel des Motors von seinem Startpunkt aus entsprechend der Synchronisationspulse, die während der Zeitmessung durch den Zeitstempel erzeugt wurden, berechnet. Bei Schritt 422 werden die Zeit und die assoziierten Intervalldaten für ein interessierendes Ereignis kombiniert, um so einen kombinierten Informationsblock herzustellen. Bei Schritt 424 wird der Informationsblock einem Mikroprozessor zugeführt und wird dann vom Mikroprozessor dazu verwendet, die Genauigkeit des Scans dadurch zu verbessern, dass ein Strichcode aus geeigneten Strichcode-Fragmenten zusammen mit Zeitablauf- und Positionsdaten rekonstruiert wird, die darauf hinweisen, dass sie vom gleichen Strichcode stammen oder durch Unterscheiden zwischen zwei Strichcodes, die innerhalb einer Zeit gelesen wurden, die kürzer ist als das normalerweise akzeptable Intervall. Alternativ können die Zeitablauf- und Positionsdaten dazu verwendet werden, um eine Rückmeldung für den Bediener bereitzustellen oder um andere Vorteile zu erlangen, die oben bereits diskutiert wurden.
  • Obwohl die vorliegende Erfindung im Zusammenhang mit einem zur Zeit bevorzugten Ausführungsbeispiel offenbart wurde, ist zu erkennen, dass die vorliegende Erfindung eine weitgefä cherte Anwendbarkeit auf Strichcode-Scanner hat und es im Allgemeinen ermöglicht, eine große Bandbreite von Verbesserungen im Betrieb zu ermöglichen, die zum jetzigen Zeitpunkt noch nicht verfügbar sind.

Claims (8)

  1. Positionsdetektor für einen Strichcode-Scanner (10), wobei der Scanner eine optische Anordnung (32), die einen drehbaren Abschnitt aufweist, und einen Motor (30), der mit der optischen Anordnung verbunden ist, umfasst, und wobei der Detektor ausgebildet ist, um die Zeitabfolge eines Scans eines Strichcodes zu erfassen, der vom Strichcode-Scanner gelesen wird, und um einen Winkel des drehbaren Abschnitts der optischen Anordnung zum Zeitpunkt des Scans zu bestimmen, wobei der Positionsdetektor umfasst: einen Motor-Referenzpositionssensor zum Erzeugen eines Motor-Referenzpositionssignals, wenn der Motor sich in einer Referenzposition befindet, einen Zeitmesser zum genauen Messen der Zeit, die seit dem Zeitpunkt vergangen ist, zu dem der Motor in der Referenzposition war, ein Video-System (17) zum Aufnehmen von Strichcode-Informationen von einem Strichcode-Scan und einen Prozessor (42) zum Empfangen von Informationen von dem Zeitmesser über die vergangene Zeit und des Motor-Referenzpositionssignals, wobei der Prozessor den Drehwinkel des Motors zu dem Zeitpunkt berechnet, an dem die Strichcode-Information empfangen wurde, dadurch gekennzeichnet, dass der Positionsdetektor zusätzlich ein zweites Video-System (19), das parallel zum ersten Video-System (17) arbeitet, und einen analogen Video-Präprozessor (52) umfasst, der ausgebildet ist, um verschiedene Filter und Schwellenwerte auf die Signale aus den beiden Video-Kanälen anzuwenden, und wobei das Video-System zusätzlich eine Intervallmessschaltung (332) zum Messen des Intervalls zwischen einem Anfang und einem Ende von Segmenten eines Strichcodes umfasst, und wobei das Video-System zusätzlich einen Filter (320) umfasst, der ausgebildet ist, um einen Strichcode-Scan in Abhängigkeit von dem Verhältnis verschiedener benachbarter Intervalle, die während eines Scans aufgezeichnet wurden, zu akzeptieren oder zurückzuweisen.
  2. Positionsdetektor nach Anspruch 1, wobei das Motor-Referenzpositionssignal eine Serie von Pulsen ist und der Detektor einen Pulszähler (124) zum Zählen der Pulse und einen Motor-Umdrehungszähler zum Empfangen der Pulse-Zählung vom Pulszähler und zum Konvertieren der Pulse-Zählung in eine Motor-Umdrehungszählung, die eine Zählung der Zahl der Umdrehungen des Motors (30) angibt, umfasst.
  3. Positionsdetektor nach Anspruch 2, wobei die Umdrehungszählung mit der Zeitmessung kombiniert ist zum Erzeugen eines Zeitstempels, der Zeit- und Umdrehungszahl-Informationen enthält.
  4. Positionsdetektor nach einem der vorstehenden Ansprüche, wobei der Filter (320) auf Basis von Positionsdaten abgeglichen ist, die vom Prozessor (42) errechnet worden sind.
  5. Positionsdetektor nach einem der vorstehenden Ansprüche, wobei das zweite Video-System (19) einen Filter umfasst, wobei der Filter Einstellungen aufweist, die von den Einstellungen des Filters des ersten Video-Systems verschieden sind, wobei das erste und das zweite Video-System (17) parallel arbeiten, um die Verlässlichkeit von Informationen zu verbessern, die vom Positionsdetektor bereitgestellt werden.
  6. Verfahren zum Bestimmen der Zeitabfolge eines Strichcode-Scans und einer Winkelposition eines drehbaren Abschnitts einer optischen Anordnung (32) zum Zeitpunkt des Scans, wobei die optische Anordnung an einen Motor (30) angebracht und durch diesen gedreht wird, wobei der Motor eine zugeordnete Pulserzeugungseinheit aufweist, die immer dann einen Referenzpuls erzeugt, wenn der Motor durch eine Referenzposition dreht, wobei das Verfahren die folgenden Schritte aufweist: Überwachen der Zeit, die seit dem Zeitpunkt vergangen ist, zu dem der Motor die Referenzposition erreicht hatte; Scannen eines Strichcodes und Aufnehmen von Strichcode-Informationen eines Strichcode-Scans mit einem Video-System (17); für jeden Scan Erfassen der Daten über die vergangene Zeit und Verknüpfen der Daten über die vergangene Zeit mit dem Scan, und Verarbeiten der Daten über die vergangene Zeit zum Ermitteln der Winkelposition des Motors und des Zeitpunkts des Scans, gekennzeichnet durch den Schritt des Aufnehmens von Strichcode-Informationen von einem Strichcode-Scan mit einem zweiten Videosystem (19), das parallel zu dem ersten Videosystem (17) arbeitet und Verwenden eines analogen Video- Präprozessors (52) zum Bereitstellen verschiedener Filter und Schwellenwerte für die Signale der beiden Videokanäle und Messen des Intervalls zwischen einem Anfang und einem Ende eines Segments eines Strichcodes unter Verwendung einer Intervall-Messschaltung (332) und Akzeptieren oder Zurückweisen eines Strichcode-Scans in Abhängigkeit von dem Verhältnis verschiedener benachbarter Intervalle, die während eines Scans aufgenommen wurden, unter Verwendung eines Filters (320).
  7. Verfahren nach Anspruch 6, zusätzlich mit dem Schritt: Verwenden der Winkelpositions- und Zeitdaten der Scan-Daten von zwei Scan-Fragmenten zum Rekonstruieren eines vollständigen Strichcodes.
  8. Verfahren nach Anspruch 7, zusätzlich mit dem Schritt: Verwenden der Winkelpositions- und Zeitdaten der Scan-Daten von zwei Strichcode-Scans zum Unterscheiden zwischen einem doppelten Lesen eines einzelnen Strichcodes und dem Lesen von zwei unterschiedlichen Strichcodes innerhalb eines kurzen Zeitabschnitts.
DE69835660T 1997-12-31 1998-12-22 Zeit- und Abtastspiegellagedetektor für einen Strichcodeabtaster Expired - Lifetime DE69835660T2 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US1369 1993-01-07
US09/001,369 US6394351B1 (en) 1997-12-31 1997-12-31 Methods and apparatus for enhanced scanner operation employing bar code and bar code fragment time and position of data collection

Publications (2)

Publication Number Publication Date
DE69835660D1 DE69835660D1 (de) 2006-10-05
DE69835660T2 true DE69835660T2 (de) 2007-09-20

Family

ID=21695696

Family Applications (1)

Application Number Title Priority Date Filing Date
DE69835660T Expired - Lifetime DE69835660T2 (de) 1997-12-31 1998-12-22 Zeit- und Abtastspiegellagedetektor für einen Strichcodeabtaster

Country Status (4)

Country Link
US (2) US6394351B1 (de)
EP (1) EP0930578B1 (de)
JP (1) JP4491082B2 (de)
DE (1) DE69835660T2 (de)

Families Citing this family (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6497366B1 (en) * 1997-12-31 2002-12-24 Ncr Corporation Methods and apparatus for dual channel video recovery in bar code scanners
US6394351B1 (en) * 1997-12-31 2002-05-28 Ncr Corporation Methods and apparatus for enhanced scanner operation employing bar code and bar code fragment time and position of data collection
AUPQ439299A0 (en) * 1999-12-01 1999-12-23 Silverbrook Research Pty Ltd Interface system
US6857567B2 (en) * 2000-10-17 2005-02-22 Psc Scanning, Inc. System and method for training and monitoring data reader operators
US6827271B2 (en) * 2001-06-11 2004-12-07 Ncr Corporation Methods and apparatus for determining a position of a rotating optical element in a bar code scanner
US6698658B2 (en) * 2001-07-12 2004-03-02 Psc Scanning, Inc. Method and apparatus to prevent reporting multiple reads of optical coded items
US6874688B1 (en) * 2004-03-22 2005-04-05 Symbol Technologies, Inc. Data collection signal processing for increased performance in electro-optical readers
US7389923B2 (en) * 2005-12-29 2008-06-24 Ncr Corporation Methods and apparatus for tracking the direction of a moving item by a bar code scanner
US7380719B1 (en) * 2006-09-21 2008-06-03 Ncr Corporation Barcode scanner with configurable video modes
US8226007B2 (en) 2007-03-23 2012-07-24 Ltt, Ltd Method and apparatus for using a limited capacity portable data carrier
US8270303B2 (en) 2007-12-21 2012-09-18 Hand Held Products, Inc. Using metadata tags in video recordings produced by portable encoded information reading terminals
US20100198876A1 (en) 2009-02-02 2010-08-05 Honeywell International, Inc. Apparatus and method of embedding meta-data in a captured image
US8939369B2 (en) 2011-01-24 2015-01-27 Datalogic ADC, Inc. Exception detection and handling in automated optical code reading systems
US20130077641A1 (en) * 2011-09-22 2013-03-28 Harley F. Burger, Jr. Systems, Circuits and Methods for Time Stamp Based One-Way Communications
US20130204689A1 (en) * 2012-02-02 2013-08-08 R-Evolution Industries Llc Controlled distribution of digital payloads
US20150144692A1 (en) * 2013-11-22 2015-05-28 Hand Held Products, Inc. System and method for indicia reading and verification

Family Cites Families (30)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4409469A (en) * 1980-01-21 1983-10-11 Sharp Kabushiki Kaisha Optical bar code reader
US4800256A (en) * 1986-12-08 1989-01-24 International Business Machines Corporation Halographic scanner having adjustable sampling rate
JP3077616B2 (ja) * 1997-01-31 2000-08-14 富士通株式会社 バーコード読取方法
US5004916A (en) * 1989-07-28 1991-04-02 Ncr Corporation Scanning system having automatic laser shutdown upon detection of defective scanning element motion
US5013899A (en) * 1989-07-28 1991-05-07 Ncr Corporation Scanning system having low quiescent current scanning mirror motor driver circuitry
US5552592A (en) 1989-10-30 1996-09-03 Symbol Technologies, Inc. Slim scan module with dual detectors
JP2718240B2 (ja) * 1990-03-20 1998-02-25 富士通株式会社 読取装置
CA2096635A1 (en) 1990-12-21 1992-06-22 Dwight G. Baldwin Two-channel xor bar code and optical reader
US5278397A (en) 1991-07-25 1994-01-11 Symbol Technologies, Inc. Multi-resolution bar code reader
JPH0512480A (ja) * 1991-07-05 1993-01-22 Nec Corp バーコード読み取り装置
US5332892A (en) 1991-07-25 1994-07-26 Symbol Technologies, Inc. Optical systems for bar code scanners
US5365048A (en) * 1992-02-20 1994-11-15 Olympus Optical Co., Ltd. Bar code symbol reading apparatus with double-reading preventing function
US5361158A (en) * 1992-09-14 1994-11-01 At&T Global Information Solutions (Fka Ncr Corporation) Multiple source optical scanner
JPH06162249A (ja) * 1992-09-28 1994-06-10 Nippondenso Co Ltd 光学情報読み取り装置
JPH0798473A (ja) * 1993-05-10 1995-04-11 Olympus Optical Co Ltd カメラの手ぶれ量検出装置
US5404002A (en) 1993-05-17 1995-04-04 At&T Global Information Solutions Company Backup method for multiple source optical scanner
JPH07114630A (ja) * 1993-10-19 1995-05-02 Matsushita Electric Ind Co Ltd イメージ処理機能付小型情報端末装置
JPH07141458A (ja) * 1993-11-19 1995-06-02 Fujitsu Kiden Ltd 多段バーコードの読取り方式
JPH07200714A (ja) * 1993-12-28 1995-08-04 Nec Corp 光学記号読取装置
JPH07282177A (ja) * 1994-04-06 1995-10-27 Omron Corp バーコード読取り装置
JPH07319989A (ja) * 1994-05-25 1995-12-08 Sumitomo Electric Ind Ltd 光学式符号読取り装置
US5742042A (en) * 1994-09-26 1998-04-21 Allen-Bradley Company, Inc. Bar code reader having a position sensor in communication with a raster mirror
US5484995A (en) * 1994-09-26 1996-01-16 Allen-Bradley Company, Inc. Pulse drive circuit for bar code reader resonant oscillator
JPH0991368A (ja) * 1995-07-20 1997-04-04 Fujitsu Ltd 光学読取装置
US5633488A (en) * 1995-12-19 1997-05-27 Webscan, Inc. Method and apparatus to enable the high speed evaluation of bar code indicia
JP3005465B2 (ja) * 1996-02-07 2000-01-31 富士通株式会社 バーコード読取方法、及び、バーコード読取装置
JP3526370B2 (ja) * 1996-05-29 2004-05-10 株式会社東芝 バーコード読取方法およびバーコード読取装置
US5988505A (en) * 1996-06-03 1999-11-23 Symbol Technologies, Inc. Omnidirectional reading of two-dimensional symbols
US6394351B1 (en) * 1997-12-31 2002-05-28 Ncr Corporation Methods and apparatus for enhanced scanner operation employing bar code and bar code fragment time and position of data collection
JP2000035547A (ja) * 1998-07-17 2000-02-02 Fujitsu Ltd 光学ユニットを載置する傾斜可能なステージを有する光学読取装置

Also Published As

Publication number Publication date
JP4491082B2 (ja) 2010-06-30
US6394351B1 (en) 2002-05-28
EP0930578A2 (de) 1999-07-21
EP0930578A3 (de) 2003-05-28
JPH11250170A (ja) 1999-09-17
US20020117548A1 (en) 2002-08-29
US6695211B2 (en) 2004-02-24
EP0930578B1 (de) 2006-08-23
DE69835660D1 (de) 2006-10-05

Similar Documents

Publication Publication Date Title
DE69835660T2 (de) Zeit- und Abtastspiegellagedetektor für einen Strichcodeabtaster
DE69634217T2 (de) Vorrichtung zur Kontrolle der Schnittkante von Rasierklingen
DE602005002690T2 (de) Optisches Messgerät
DE3101827C2 (de) Optisches Strichcode-Lesegerät
DE2935668C2 (de)
DE2524495C3 (de) Schaltungsanordnung zur Formatpriifung von Codesignalen eines Streifencodes
DE602005002763T2 (de) Kodierer und Steuervorrichtung für Motor
DE2450859B2 (de) Vorrichtung zum automatischen lesen und auswerten von aufgezeichneten kurven
DE2449958B2 (de) Code-lesevorrichtung
DE2632206A1 (de) Lesegeraet mit lampensteuerung
DE2331952A1 (de) Anordnung zum feststellen von fehlern mit einer laserabtasteinrichtung
DE4114925A1 (de) Strichcode-lesegeraet
DE3202820A1 (de) Optische strichcode-lesevorrichtung
EP0896290A2 (de) Verfahren und Vorrichtung zum Lesen eines aus einer vorgegebenen Anzahl von Codeelementen bestehenden Strichcodes
DE69830138T2 (de) Verfahren und Einrichtung zur Ermittlung der Ortsbestimmungsinformation eines Streifencode-Etikettes
EP1222055B1 (de) Verfahren und vorrichtung zum prüfen einer schneidengeometrie eines drehantreibbaren werkzeugs
DE602005003607T2 (de) Bildaufzeichnungsgerät
DE2629590A1 (de) Schaltungsanordnung zur trennung aufeinanderfolgender muster bei der zeichenerkennung
DE4100267C2 (de) Digitaler Torsionsmesser
DE2146497C3 (de) Segmentierungs-Vorrichtung für optische Zeichenleser
DE4002627C2 (de)
DE4108916C2 (de) Strichcode-System
DE3904061A1 (de) Verfahren zur erfassung einer mechanischen behinderung bei der steuerung einer vielzahl von mechanischen systemen
DE69833536T2 (de) Verfahren und Gerät zur Rückgewinnung eines zweikanaligen Videosignals in Streifenkode-Abtastgeräten
DE2245734A1 (de) Vorrichtung zum feststellen von oberflaechenfehlern

Legal Events

Date Code Title Description
8364 No opposition during term of opposition
8320 Willingness to grant licences declared (paragraph 23)