DE102005058740B4 - Vorrichtung zum Lesen eines optischen Datencodes - Google Patents

Vorrichtung zum Lesen eines optischen Datencodes Download PDF

Info

Publication number
DE102005058740B4
DE102005058740B4 DE102005058740A DE102005058740A DE102005058740B4 DE 102005058740 B4 DE102005058740 B4 DE 102005058740B4 DE 102005058740 A DE102005058740 A DE 102005058740A DE 102005058740 A DE102005058740 A DE 102005058740A DE 102005058740 B4 DE102005058740 B4 DE 102005058740B4
Authority
DE
Germany
Prior art keywords
image
brightness
image pickup
optical data
specified
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 - Fee Related
Application number
DE102005058740A
Other languages
English (en)
Other versions
DE102005058740A1 (de
Inventor
Gaku Shiramizu
Takuya Murata
Katsuki Nakajima
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.)
Omron Corp
Original Assignee
Omron Corp
Omron Tateisi Electronics Co
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 Omron Corp, Omron Tateisi Electronics Co filed Critical Omron Corp
Publication of DE102005058740A1 publication Critical patent/DE102005058740A1/de
Application granted granted Critical
Publication of DE102005058740B4 publication Critical patent/DE102005058740B4/de
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

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/10712Fixed beam scanning
    • G06K7/10722Photodetector array or CCD scanning
    • G06K7/10732Light sources
    • 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/10712Fixed beam scanning
    • G06K7/10722Photodetector array or CCD scanning
    • 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/14Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation using light without selection of wavelength, e.g. sensing reflected white light
    • G06K7/1404Methods for optical code recognition
    • G06K7/146Methods for optical code recognition the method including quality enhancement steps
    • G06K7/1478Methods for optical code recognition the method including quality enhancement steps adapting the threshold for pixels in a CMOS or CCD pixel sensor for black and white recognition

Abstract

Optischer Datencodeleser (1), welcher aufweist:
eine Beleuchtungsvorrichtung (104) zur Beleuchtung eines auszulesenden optischen Datencodes;
eine Bildaufnahmevorrichtung (101) zur Aufnahme eines Bilds des optischen Datencodes;
eine Auslesevorrichtung (114, 115) zur Decodierung des optischen Datencodes durch Verarbeitung von durch die Bildaufnahmevorrichtung (101) erzeugten Bilddaten; und
eine Einstellvorrichtung (111) zur Durchführung eines Einstellvorgangs durch Einstellen wenigstens einer Bedingung, ausgewählt aus der Gruppe bestehend aus Beleuchtungsbedingungen der Beleuchtungsvorrichtung (104) und Bildaufnahmebedingungen für die Bildaufnahmevorrichtung (101), derart, dass die Bilddaten für ein Ausgelesenwerden geeignet werden;
wobei die Einstellvorrichtung (111) dazu dient, Bereiche auf durch die Bildaufnahmevorrichtung (101) ausgegebenen Bilddaten einzurichten, eine Änderungsamplitude der Helligkeit in jedem der Bereiche herauszuziehen und den Einstellvorgang unter Verwendung der Bilddaten von wenigstens einem der Bereiche auszuführen, in welchem die herausgezogene Änderungsamplitude größer als ein spezifizierter Schwellenwert ist.

Description

  • Die Erfindung bezieht sich auf eine Vorrichtung zum Lesen eines Datencodes bzw. einen optischen Datencodeleser, der für die Aufnahme eines Bildes eines optischen Datencodes, wie etwa eines Strichcodes oder eines zweidimensionalen Codes (nachfolgend einfach als „Code" bezeichnet), eingerichtet ist, um so einen Bildbearbeitungsvorgang auf dem Code innerhalb des erzeugten Bildes auszuführen und damit die in diesem Code codierten Daten auszulesen. Im Einzelnen bezieht sich die Erfindung auf einen optischen Datencodeleser, der mit der Funktion einer Einstellung auf optimale Bedingungen zur Aufnahme von Bildern und der Beleuchtung für die Ausleseverarbeitung unter Verwendung des erzeugten Bildes versehen ist.
  • Die meisten optischen Datencodeleser sind aus einem Bildaufnahmeteil, der ein Bildaufnahmeelement, wie etwa eine CCD oder einen MOS, enthält, und einem Beleuchtungsteil, der eine LED enthält, aufgebaut und so eingerichtet, dass sie ein Bild ansprechend auf ein Auslösesignal erzeugen und einen optischen Datencode aus einem solchen Bild decodieren. Zur Aufrechterhaltung eines hohen Niveaus an Auslesegenauigkeit bei einer Vorrichtung dieser Art müssen ihre Bildaufnahmebedingungen, wie etwa die Verschlussgeschwindigkeit, und die Beleuchtungsbedingungen, wie etwa die Beleuchtungsintensität, auf optimale Bedingungen eingestellt werden. Insbesondere wenn ein optischer Datencode auszulesen ist, der direkt auf der Oberfläche eines Werkstücks mit Laserlicht oder einer Markierungspresse markiert ist, schwankt die Helligkeit des Bildes deutlich, weil das Reflexionsvermögens und die Ausbreitungsrichtung des reflektierten Lichts sich abhängig vom Oberflächenzustand des Werkstücks und der Markierungsmethode ändern.
  • Die Bildaufnahme- und Beleuchtungsbedingungen müssen also individuell nach der Art des Werkstücks und der für den Code verwendeten Markierungsmethode eingestellt werden.
  • Einstellungen der oben beschriebenen Art sind meistens manuell durch einen Anwender ausgeführt worden, da aber die Justiereinstellung nach einer solchen Methode zeitraubend ist und da unterschiedliche Bediener dazu neigen, Einstellungen unterschiedlich vorzunehmen, werden zunehmend automatische Verfahren zur Vornahme von Einstellungen in Betracht gezogen. Verfahren zur automatischen Einstellung der Verschlussgeschwindigkeit, wie etwa AEC (auto-exposure control) und AGC (auto-gain control), können für diesen Zweck verwendet werden.
  • In JP Nr. 2004-194172 A ist ein Verfahren zur Optimierung der Verschlussgeschwindigkeit durch Wiederholen einer Anzahl von Zyklen von Vorgängen der Aufnahme eines Bildes eines optischen Datencodes, des Herausziehens eines bestimmten Merkmals eines Pixelniveaus aus dem erzeugten Bild und der Einstellung der Verschlussgeschwindigkeit beruhend auf dem herausgezogenen Merkmal beschrieben. Nach diesem Verfahren wird ein maximales Helligkeitsniveau aus einem Bild herausgezogen und das Verschlussniveau so lange eingestellt, bis dieses Maximalniveau einen spezifizierten nummerischen Bereich erreicht. Wenn ein Abschnitt mit einem sehr hohen Reflexionsvermögen im Hintergrund eines optischen Datencodes vorhanden ist (entsprechend beispielsweise einer Kante eines Werkstücks oder einer Stufe auf einem Werkstück), kann es jedoch sein, dass die Einstellung auf der Grundlage der Helligkeit eines solchen Abschnitts vorgenommen wird und die Helligkeit des Codeteils daher nicht optimiert wird.
  • Aus US 5 784 102 ist ein Datencodeleser bekannt, der die Helligkeitsamplitude im gesamten Abtastbereich zur Entscheidung über einen Einstellvorgang heranzieht, wobei mögliche Fehler durch Kanteneffekte nicht vermieden werden können.
  • Die Erfindung wurde im Hinblick auf diese Probleme gemacht, und es liegt ihr die Aufgabe zugrunde, die Auslesegenauigkeit durch Durchführen einer Einstellung beruhend auf der Helligkeit des auszulesenden optischen Datencodes zu verbessern.
  • In Obigem kann „optischer Datencode" als ein Symbol bedeutend verstanden werden, das ein visuell erkennbares Muster, das bestimmte Daten codiert aufweist, einschließt. Zu repräsentativen Beispielen für einen optischen Datencode gehören Strichcodes und zweidimensionale Codes. Visuell erkennbare Daten, die durch einen optischen Datencode wiedergegeben werden, wie Anordnungen von weißen und schwarzen Bereichen, werden nachfolgend als optische Daten bezeichnet werden.
  • Die Erfindung bezieht sich auf einen optischen Datencodeleser, welcher aufweist: eine Beleuchtungsvorrichtung zur Beleuchtung eines auszulesenden optischen Datencodes; eine Bildaufnahmevorrichtung zur Aufnahme eines Bilds des optischen Datencodes; eine Auslesevorrichtung zur Decodierung des optischen Datencodes durch Verarbeitung von durch die Bildaufnahmevorrichtung erzeugten Bilddaten; und eine Einstellvorrichtung zur Durchführung eines Einstellvorgangs durch Einstellen wenigstens einer Bedingung, ausgewählt aus der Gruppe bestehend aus Beleuchtungsbedingungen der Beleuchtungsvorrichtung und Bildaufnahmebedingungen für die Bildaufnahmevorrichtung, derart, dass die Bilddaten für ein Ausgelesen werden geeignet werden. Die Einstellvorrichtung dient dazu, Bereiche auf durch die Bildaufnahmevorrichtung ausgegebenen Bilddaten einzurichten, eine Änderungsamplitude der Helligkeit in jedem der Bereiche herauszuziehen und den Einstellvorgang unter Verwendung der Bilddaten von wenigstens einem der Bereiche auszuführen, in welchem die herausgezogene Änderungsamplitude größer als ein spezifizierter Schwellenwert ist.
  • In Obigem können die Beleuchtungsvorrichtung, die Bildaufnahmevorrichtung, die Auslesevorrichtung und die Einstellvorrichtung alle an einem einzelnen kastenartigen Aufbau angebracht sein, dies ist jedoch keine Notwendigkeit. Die Beleuchtungsvorrichtung und die Bildaufnahmevorrichtung können beispielsweise unabhängig voneinander als Sensorkopf ausgebildet sein. Die Einstellvorrichtung kann auch in einem solchen Sensorkopf enthalten sein. Der optische Datencodeleser gemäß der Erfindung kann vorzugsweise auch Ausgabemittel zur Anzeige oder externen Ausgabe verschiedener durch die Auslesevorrichtung decodierter Daten enthalten.
  • Die Beleuchtungsvorrichtung kann nicht nur eine Lichtquelle, wie etwa eine LED, sondern auch eine Schaltung zur Steuerung von deren Ein- und Ausschalten enthalten. Eine Art, die in der Lage ist, die Beleuchtungslichtmenge zu verändern, ist bevorzugt. Sie kann so eingerichtet sein, dass Richtung und Farbe der Beleuchtung verändert werden können.
  • Die Bildaufnahmevorrichtung enthält ein Bildaufnahmeelement, wie etwa eine CCD oder einen MOS, sowie eine Linse, eingerichtet zur Aufnahme eines Bildes eines optischen Datencodes zur Erzeugung eines Bildes zur Verwendung im Einstellvorgang und Auslesevorgang. Eine Treiberschaltung zur Ansteuerung dieses Bildaufnahmeelements sowie eine A/D-Wandlerschaltung zur Umwandlung des vom Bildaufnahmeelement ausgegebenen analogen Bildsignals in ein digitales Signal können ebenfalls in der Bildaufnahmevorrichtung enthalten sein.
  • Die Auslesevorrichtung dient zur Durchführung von Vorgängen der Hereinnahme von durch die Bildaufnahmevorrichtung erzeugten Bilddaten und zur Decodierung der Daten, die in den in diesem Bild enthaltenen optischen Datencode codiert sind. Sie kann durch einen Rechner gebildet sein, der ein Programm zur Durchführung all dieser oben erwähnten Vorgänge enthält, wenigstens ein Teil dieser Vorgänge kann aber auch durch eine eigens dafür vorgesehene Rechenschaltung ausge führt werden. Ein Speicher, der zu diesem Rechner gehört, kann zur Speicherung des zu bearbeitenden Bildes dienen.
  • Die Einstellvorrichtung kann als der als Auslesevorrichtung identifizierte Teil des Rechners ausgebildet sein, es ist aber bevorzugt, sie als eigene Rechenschaltung vorzusehen, weil die Zeit, die für die Einstellung benötigt wird, verkürzt werden kann, indem sequentiell die gleichen Bilddaten, die von der Bildaufnahmevorrichtung ausgegeben werden, hereingenommen und verarbeitet werden, während sie auch in den Speicher eingegeben werden. Wenn gleichzeitig mit der Speicherung der Bilddaten im Speicher bestimmt werden kann, ob sie eine Einstellung benötigen oder nicht, kann ferner der Auslesevorgang auf den Bilddaten, für die bestimmt worden ist, dass sie keine Einstellung benötigen, unmittelbar begonnen werden. Die Bildaufnahmevorrichtung kann auf der Verschlussgeschwindigkeit, der Ausgabeverstärkung oder der Blendenöffnung eingestellt werden. Die Beleuchtungsvorrichtung kann mittels Intensität, Richtung und/oder Farbe der Beleuchtung eingestellt werden.
  • Der mit den Einstellmitteln einzustellende Bereich kann jede Größe haben, er sollte vorzugsweise jedoch so groß sein, dass er ausreichend das Muster von Helligkeit-Dunkelheit-Variation eines optischen Datencodes enthält, wenn ein Bereich so eingestellt worden ist, dass er die den Code darstellenden Pixel enthält. Im Falle eines zweidimensionalen Codes wird die Größe so eingestellt, dass sie mehrere Zellen überdeckt. Im Falle eines Strichcodes kann die Größe so eingestellt werden, dass sie mehrere seiner Striche überdeckt. Der vorgenannte Bereich kann ein eindimensionaler Bereich sein, der sich in horizontaler oder vertikaler Richtung erstreckt, oder ein zweidimensionaler Bereich, der eine spezifizierte Größe in jeder der beiden Richtungen hat. Nicht alle diese Bereiche brauchen die gleiche Größe zu haben. Die Größe der Bereiche kann variabel gemacht werden, derart, dass diejenigen, bei denen es wahrscheinlich ist, dass sie einen Code enthalten, größer als die anderen sind.
  • „Änderungsamplitude der Helligkeit in einem Bereich" kann als Absolutwert der Differenz zwischen dem maximalen und minimalen Helligkeitswert innerhalb des Bereichs gewonnen werden. Wenn mehrere Helligkeitsspitzen innerhalb eines Bereichs vorhanden sind, kann die Differenz zwischen der mittleren Helligkeit der Spitzen und der mittleren Helligkeit der Täler gewonnen werden. Als weiteres Beispiel kann die Gesamtsumme der Höhen der Spitzen gewonnen werden. Als wiederum weiteres Beispiel können Differenzen von aneinander angrenzenden Paaren von Pixeln gewonnen werden und die Änderungsamplitude der Helligkeit kann als kumulative Summe dieser Differenzen gewonnen werden.
  • Im Falle der Verarbeitung eines optischen Datencodes mit angeordneten weißen und schwarzen Bereichen, wie etwa eines zweidimensionalen Codes oder eines Strichcodes, können Änderungen in der Helligkeit und Dunkelheit als in Bereichen erscheinend betrachtet werden, die an Positionen eingerichtet sind, die den Code darstellende Pixel enthalten. Anders ausgedrückt, kann man annehmen, dass die Änderungsamplitude der Helligkeit größer sein wird in einem Bereich, der den Code darstellende Pixel enthält, als in einem Bereich, der nur einen Hintergrundabschnitt des Codes enthält. Die vorliegende Erfindung beruht auf dieser Beobachtung, und die Bildaufnahme- und Beleuchtungsbedingungen werden eingestellt, indem Bilddaten eines Bereichs, wo die Änderungsamplitude der Helligkeit größer als ein spezifizierte Schwellenwert ist, verwendet werden. Es wird also eine Einstellung ermöglicht, die die Helligkeit eines optischen Datencodes widerspiegelt.
  • Der einzelne Bereich, in dem die Änderungsamplitude der Helligkeit am größten ist, kann für den Einstellvorgang verwendet, wenn aber mehrere Bereiche vorhanden sind, in denen die Änderungsamplitude der Helligkeit größer als der Schwellenwert wird, kann der Einstellvorgang auch durchgeführt werden, indem die Bilddaten dieser mehreren Bereiche verwendet werden. In einer solchen Situation können der maximale und der minimale Helligkeitswert aus jedem der Bereiche herausgezogen und der Einstellvorgang beruhend auf den Mitteln dieser Werte ausgeführt werden.
  • Ein optischer Datencodeleser gemäß der Erfindung kann so ausgebildet sein, dass die Bildaufnahmevorrichtung dazu dient, seriell die Bilddaten einzelner Pixel auf die Einstellvorrichtung auszugeben, und die Einstellvorrichtung dazu dient, die von der Bildaufnahmevorrichtung ausgegebenen Bilddaten zu empfangen und nach Empfang von Bilddaten einer spezifizierten Anzahl von Pixeln eine Änderungsamplitude der Helligkeit für einen Bereich herauszuziehen, der aus der spezifizierten Anzahl von Pixeln aufgebaut ist.
  • Gemäß dieser Ausführungsform der Erfindung ist ein Bildaufnahmeelement des Seriellausgabetyps, wie eine CCD, in der Bildaufnahmevorrichtung enthalten, und der Vorgang des Herausziehens der Änderungsamplitude der Helligkeit für jeden Bereich kann unter Verwendung der von dieser Bildaufnahmevorrichtung ausgegebenen Bilddaten nahezu gleichzeitig mit demjenigen der Speicherung des Bildes durchgeführt werden.
  • Ein optischer Datencodeleser gemäß einer weiteren Ausführungsform der Erfindung kann so aufgebaut sein, dass die Bildaufnahmevorrichtung dazu dient, Bilddaten eines spezifizierten Pixels auszugeben, und die Einstellvorrichtung dazu dient, sequentiell Pixel zu spezifizieren, die der Anzahl von Bereichen entsprechen, um dadurch zu bewirken, dass die Bilddaten eines jeden der Bereiche auf die Bildaufnahmevorrichtung ausgegeben werden und eine Änderungsamplitude der Helligkeit für jeden der Bereiche herausgezogen wird.
  • Gemäß dieser Ausführungsform der Erfindung kann ein Bildaufnahmeelement eines Typs mit wahlfreiem Zugriff, wie etwa ein MOS, in der Bildaufnahmevorrichtung enthalten sein. Auch in diesem Fall kann der Vorgang des Herausziehens der Änderungsamplitude der Helligkeit für jeden Bereich unter sequentiellem Auslesen der Bilddaten aus jedem Bereich nahezu gleichzeitig mit demjenigen des Speicherns des Bilds durchgeführt werden. Da ferner Bilddaten eines Pixels durch Spezifizieren eines Bereichs ausgelesen werden können, lässt sich die zu verarbeitende Datenmenge reduzieren, wenn die Bereiche eingerichtet werden, indem Intervalle dazwischen vorgesehen werden, mit der Folge, dass sich der Einstellvorgang schneller durchführen lässt. Da die Positionen und Größen der Bereiche variiert werden können, können ferner die Bereiche entsprechend der Größe des auszulesenden Codes eingestellt werden.
  • Gemäß einer bevorzugten Ausführungsform der Erfindung dient die Einstellvorrichtung dazu, Helligkeitsdifferenzen zwischen aneinander angrenzenden Pixeln herauszuziehen und die Helligkeitsdifferenzen für jeden der Bereiche zu integrieren, um danach einen der Bereiche herauszuziehen, in dem der integrierte Wert am größten ist, und den Einstellvorgang beruhend auf dem maximalen Helligkeitswert des herausgezogenen Bereichs auszuführen. Gemäß dieser Ausführungsform wird die Helligkeitsdifferenz zwischen aneinander angrenzenden Pixeln über einen Grenzteil, wo sich die Helligkeit ändert, groß. In einem Bereich, der eingerichtet ist, wo die Helligkeit des optischen Datencodes sich ändert, kann erwartet werden, dass der integrierte Wert der Helligkeitsänderungen groß wird. In einem Bereich, der eingerichtet ist, wo die Helligkeitsänderung klein ist, wie etwa in einem Hintergrundabschnitt, andererseits kann erwartet werden, dass der integrierte Wert der Helligkeitsänderungen kleiner wird, obwohl er heller als seine Umgebung ist. Wenn also angenommen werden kann, dass ein optischer Datencode im Gesichtsfeld der Bildaufnahmevorrichtung enthalten ist, sind Pixel, die den Code wiedergeben, in dem Bereich enthalten, wo der integrierte Wert der Helligkeitsdifferenzen am größten ist. Wenn der Einstellvorgang beruhend auf der maximalen Helligkeit in dem Bereich, wo dieser integrierte Wert am größten ist, durchgeführt wird, kann daher der Einstellvorgang in einer Weise ausgeführt werden, die am besten für das Auslesen des optischen Datencodes geeignet ist.
  • Die Einstellvorrichtung kann eingerichtet sein zu beurteilen, ob die Helligkeit der von der Bildaufnahmevorrichtung ausgegebenen Bilddaten sich innerhalb eines spezifizierten nummerischen Bereichs befindet, und die Verschlussgeschwindigkeit der Bildaufnahmevorrichtung beruhend auf einer spezifizierten Bedingung einzustellen, wenn die Helligkeit der Bilddaten als außerhalb des spezifizierten nummerischen Bereichs liegend beurteilt wird. Dieser nummerische Bereich kann gemäß dem Helligkeitsniveau eingestellt werden, bei welchem der Datencode ausgelesen werden kann. Anders ausgedrückt, kann der Bereich so eingerichtet werden, dass Niveaus ausgeschlossen werden, bei welchen das Vorhandensein eines Codes kaum festgestellt werden kann, wie etwa Bilder mit einem Helligkeitsniveau im Sättigungszustand oder Bilder mit einem Helligkeitsniveau, das zu gering ist, als dass helle und dunkle Abschnitte desselben unterschieden werden könnten. Es kann also eine Einstellung in großem Maßstab durchgeführt werden, beispielsweise durch signifikantes Ändern der Verschlussgeschwindigkeit im Falle eines Bildes, auf welchem der Code kaum ausgelesen werden kann, so dass die Niveaueinstellung rasch durchgeführt werden kann.
  • Die Einstellvorrichtung kann so aufgebaut sein, dass sie nach Ansteuerung der Bildaufnahmevorrichtung ansprechend auf ein eingebenes Auslösesignal für einen Auslösevorgang den Einstellvorgang ausführt, bis die Änderungsamplitude der Helligkeit in wenigstens einem einer Anzahl von Bereichen größer als ein spezifizierter Schwellenwert wird, und die Bildaufnahmevorrichtung unter den einregulierten Bedingungen erneut ansteuert. In diesem Fall kann die Auslesevorrichtung dazu dienen, den Auslesevorgang, abhängig vom Ende des Einstellvorgangs mit der Einstellvorrichtung, unter Verwendung der aktuell neuesten Bilddaten durchzuführen.
  • Bei Obigem kann das Auslösesignal durch den Benutzer oder aus einer externen Vorrichtung oder einem Sensor zur Inspektion eines Werkstücks eingegeben werden. Der „spezifizierte Schwellenwert" kann gemäß der herausgezogenen Änderungsamplitude der Helligkeit im Falle eines optischen Datencodes mit geeigneter Helligkeit eingerichtet werden. Gemäß dieser Ausführungsform kann der Einstellvorgang, nachdem die Bildaufnahme- und Einstellvorgänge für mehrere Zyklen wiederholt worden sind, nachdem das Auslösesignal eingegeben wurde, und zu dem Zeitpunkt, zu dem die Helligkeit des Codes im Bild passend geworden ist, abgeschlossen werden. Die „aktuell neuesten Bilddaten" aus Obigem können also als die Bilddaten meinend interpretiert werden, die durch den Bildaufnahmevorgang in dem Zustand nach Ausführung des abschließenden Einstellvorgangs gewonnen sind.
  • Es kann ein Bedienteil zur Eingabe des Auslösesignals vorgesehen sein. In diesem Fall dient die Einstellvorrichtung zur Beurteilung der Geeignetheit einer Fokussierungsbedingung der Bildaufnahmevorrichtung unter Verwendung von maximalen und minimalen Helligkeitswerten in dem für den Einstellvorgang verwendeten Bereich, und die Einstellvorrichtung dient dazu, die Bildaufnahmevorrichtung erneut anzusteuern, wenn beurteilt wird, dass die Fokussierungsbedingung geeignet ist. In Obigem bedeutet „für den Einstellvorgang verwendeter Bereich" den Bereich, in welchem die Änderungsamplitude der Helligkeit größer als der spezifizierte Schwellenwert wird.
  • Im Falle eines optischen Datencodelesers als Handgerät kann der Bedienteil einen Knopf (oder Knöpfe) zur Eingabe eines Auslesebefehls, d. h., es werden eine spezifizierte Anzahl von Zyklen der Bildaufnahme- und Einstellvorgänge durchgeführt, wenn der Bediener den Knopf (oder einen der Knöpfe) bedient, während er einen Auslesekopf, der die Beleuchtungsvorrichtung und die Bildaufnahmevorrichtung enthält, gegen ein zu bearbeitendes Zielwerkstück hält, wobei der Auslesevorgang unter Verwendung des Bildes nach Durchführung des Einstellvorgangs ausgeführt wird.
  • Gemäß dieser Ausführungsform ist nicht nur eine geeignete Änderungsamplitude der Helligkeit, sondern auch eine geeignete Fokussierungsbedingung eine notwendige Bedingung für den Beginn des Auslesevorgangs. Wenn der Codeleser nicht in einer geeigneten Position angeordnet ist, kann das Decodieren fehlschlagen, weil die Fokussierungsbedingung ungeeignet ist und daher die Unterscheidung zwischen dunkel und hell nicht angemessen möglich ist, obwohl gar kein Problem betreffend das Helligkeitsniveau vorliegt. In einer solchen Situation mit einer ungeeigneten Fokussierungsbedingung wird der Bildaufnahmevorgang erneut ausgeführt, statt den Einstellvorgang durchzuführen. Wenn der Anwender die Einstellposition des Codelesers justiert und die Fokussierungsbedingung geeignet wird, wird es möglich, den Auslesevorgang unter Abschluss des Einstellvorgangs durchzuführen. Geeignetheit der Fokussierungsbedingung kann unter Verwendung der Steigung zwischen den Maximal- und Minimalwerten der Helligkeit in dem vorgenannten Bereich bestimmt werden. Wenn mehrere solche Maximal- und Minimalwerte vorliegen, werden Steigungen zwischen aneinander angrenzenden Paaren von Maximal- und Minimalwerten gewonnen und ihr Mittelwert berechnet.
  • Zusammenfassend bietet die Erfindung mit Erfolg einen optischen Datencodeleser dar, der in der Lage ist, seine Bildaufnahmebeleuchtungsbedingungen beruhend auf der Helligkeit des optischen Datencodes geeignet innerhalb eines Bildes einzustellen, womit ein Bild durch Einstellen von Bedingungen, die für ein Auslesen des darin enthaltenen Codes geeignet sind, gewonnen werden kann.
  • 1 ist eine Schrägansicht von hinten eines Zweidimensionalcodelesers einer Ausführungsform der Erfindung.
  • 2 ist eine Schrägansicht von vorne des Zweidimensionalcodeleser der 1.
  • 3 ist eine Skizze, die den Aufbau des optischen Systems des Zweidimensionalcodelesers der 1 und 2 zeigt.
  • 4 ist ein Funktionsblockdiagramm des Zweidimensionalcodelesers der 1 bis 3.
  • 5 ist eine Zeichnung zur Wiedergabe eines Beispiels eines für ein Zielbild zur Verarbeitung eingestellten Bereichs.
  • 6A und 6B zeigen die Helligkeitsverteilung in Bereichen A und B der 5.
  • 7 ist eine Zeichnung zur Wiedergabe eines Verfahrens zur Einstellung der Verschlussgeschwindigkeit.
  • 8 ist eine Zeichnung zur Wiedergabe eines Beispiels eines Verfahrens zum Herausziehen eines Parameters zur Beurteilung der Geeignetheit einer Fokussierungsbedingung.
  • 9 ist ein Blockdiagramm des Optimierungsverarbeitungsteils 111 zur Wiedergabe seines Grundaufbaus.
  • 10 ist ein Flussdiagramm eines Bildaufnahmevorgangs.
  • 11 ist ein Flussdiagramm der Vorgänge für einen Zweidimensionalcodeleser.
  • 12 ist eine Zeichnung zur Wiedergabe eines weiteren Beispiels eines für ein Zielbild zur Verarbeitung eingestellten Bereichs.
  • Die 1 und 2 zeigen Außenansichten eines Codelesers 1 gemäß einer Ausführungsform der Erfindung, wobei 1 seine Rückseite und 2 seine Vorderseite wiedergibt. 10 bezeichnet ein Gehäuse, das als Grundkörper des Codelesers 1 dient und ein Lesefenster 11 im oberen Teil seiner Vorderseite und einen Monitor 12 mit einem Flüssigkristallfeld 12a in einem oberen Abschnitt seiner Rückseite aufweist. Die untere Hälfte des Gehäuses 10 dient als Griffteil 13 mit einer zurückgesetzten Vorderseite. Bedienungsknöpfe 14 sind an beiden Seitenflächen des Gehäuses 10 zur Angabe des Beginns eines Auslesevorgangs vorgesehen.
  • Ein nachstehend zu beschreibendes optisches System und eine (nicht gezeigte) Basisleiterplatte, die mit verschiedenen Arten von Schaltkreisen bestückt ist, sind im Inneren des Gehäuses 10 enthalten. Diese Basisleiterplatte ist mit einer Hostvorrichtung 2 (gezeigt in 4) über ein Kabel 15 verbunden, das Eingabe-Ausgabe-Leitungen und eine Spannungsversorgungsleitung enthält und am unteren Ende des Gehäuses 10 herausgeführt ist.
  • 3 zeigt den Aufbau des im Codeleser 1 hinter dem Lesefenster 11 eingebauten optischen Systems, welches ein Bildaufnahmeelement 101, eine Abbildungslinse 102, einen Spiegel 103, einen Illuminator 104 mit einer Lichtemissionsoberfläche und eine LED-Lampe 105 enthält. In 3 gibt „W" ein Werkstück an, auf dem sich ein zweidimensionaler Code befindet.
  • Der Illuminator 104 ist so angeordnet, dass seine Lichtemissionsoberfläche parallel zum Lesefenster 11 ist. (Nicht gezeigte) Chip-LEDs für verschiedene Farben sind im Inneren dieses Illuminators 104 angeordnet. Farbe und Helligkeit des abgegebenen Lichts kann durch Steuerung der Anzahl und Positionen der LEDs, die eingeschaltet werden, verändert werden.
  • Die LED-Lampe 105 dient dazu, das Werkstück W schräg zu beleuchten und ist in einem vorgegebenen Abstand zum Illuminator 104 mit um einen vorgegebenen Winkel geneigten optischen Achse eingerichtet. In 3 ist nur eine LED-Lampe 105, es können aber auch mehrere solche Lampen vorgesehen sein, wobei ihre optischen Achsen in unterschiedlicher Weise orientiert sein können.
  • Das vom Illuminator 104 und der LED-Lampe 105 abgegebene Licht wird nach Reflexion an der Oberseite des Werkstücks W mittels des Spiegels 103 und der Linse 102 zum Bildaufnahmeelement 101 geleitet. Das Bildaufnahmeelement 101 arbeitet unter diesem Lichtempfangszustand dahingehend, ein Bild des Werkstücks W mit zweidimensionalem Code zu erzeugen. Das erzeugte Bild wird auf die Verarbeitungsschaltung auf der Basiskarte zur Durchführung einer Einstellungs- und Ausleseverarbeitung, die nachstehend zu beschreiben ist, übertragen.
  • Die Funktionen des Codeleser 101 werden als nächstes unter Bezug auf 4 erläutert.
  • Der Codeleser 1 ist aus einem Bildaufnahmesteuerteil 108, einem Beleuchtungssteuerteil 109, einem A/D-Wandler 110, einem Optimierungsverarbeitungsteil 111, einem Anzeigeverarbeitungsteil 112, einem Bildspeicher 113, einem Bildverarbeitungsteil 114, einem Decodierteil 115, einem Eingabe-Ausgabe-Verarbeitungsteil 116 und einem Ausgabeteil 117 aufgebaut. Von diesen stellt der Bildverarbeitungsteil 114, der Decodierteil 115 und der Eingabe-Ausgabe-Verarbeitungsteil 116 jeweils eine Funktion dar, die in einer CPU eines Mikrocomputers eingerichtet ist, während die anderen jeweils als spezieller Schaltkreis für die betreffende Funktion realisiert sind. In der Figur gibt „Auslösesignal" ein Signal an, das erzeugt wird, wenn die oben genannten Bedienungsknöpfe 114 betätigt werden. Die im Illuminator 104 enthaltenen Chip-LEDs und die LED-Lampe 105 zur Diagonalbestrahlung sind durch eine Anzahl von Lichtquellen 107 dargestellt.
  • Das Bildaufnahmeelement 101 ist gemäß dem vorliegenden Beispiel eine CCD und so eingerichtet, dass Bilddaten aus Pixeln ansprechend auf Ansteuersignale des Bildaufnahmesteuerteils 108 seriell aus gegeben werden. Die Bilddaten werden nach ihrer Umwandlung in Digitaldaten mittels des A/D-Wandlers 110 im Bildspeicher 113 gespeichert und werden auch auf den Optimierungsverarbeitungsteil 111 übertragen. Jede der Lichtquellen 107 wird ansprechend auf Ansteuersignale des Beleuchtungssteuerteils 109 ein- und ausgeschaltet.
  • Nach Herausziehen eines zweidimensionalen Codemusters aus dem im Bildspeicher 113 gespeicherten Bild trennt der Bildverarbeitungsteil 114 weiße und schwarze Zellen durch einen Binarisierungsvorgang voneinander und codiert die durch die einzelnen Zellen dargestellten optischen Daten. Der Decodierteil 115 dient zur Decodierung der optischen Daten des zweidimensionalen Codes, beispielsweise durch Trennen dieser codierten Datenfelder in bestimmte Einheiten (wie 8 Bits). Die decodierten Daten (nachfolgend als „Auslesedaten" bezeichnet) werden vom Eingabe-Ausgabe-Verarbeitungsteil 116 auf den Ausgabeteil 117 zur nachfolgenden Ausgabe auf die Rostvorrichtung 2 übertragen.
  • Der Anzeigeverarbeitungsteil 112 dient zur Anzeige des auszulesenden Bildes des zweidimensionalen Codes oder der vorgenannten Auslesedaten auf dem Monitor 12. Der Zeitpunkt dieses Anzeigevorgangs und die anzuzeigenden Dateninhalte werden durch die vorgenannte CPU gesteuert.
  • Das durch Betätigen der Bedienungsknöpfe 14 ausgegebene Auslösesignal wird auf den Bildaufnahmesteuerteil 108, den Beleuchtungssteuerteil 109, den Optimierungsverarbeitungsteil 111 und den Eingabe-Ausgabe-Verarbeitungsteil 116 übertragen. Ansprechend auf dieses Auslösesignal arbeiten der Bildaufnahmesteuerteil 108, der Beleuchtungssteuerteil 109 und der Optimierungsverarbeitungsteil 111 dahingehend, einen nachstehend zu beschreibenden Bildgewinnungsvorgang durchzuführen, um damit ein Bild zu gewinnen, das für einen Auslesevorgang geeignet ist. Der Eingabe-Ausgabe-Verarbeitungsteil 116 ande rerseits wartet, wenn das Auslösesignal empfangen wird, bis Auslesedaten vom Decodierteil 115 empfangen werden. Wenn die Auslesedaten empfangen werden, arbeitet der Eingabe-Ausgabe-Verarbeitungsteil 116 so, dass die empfangenen Auslesedaten über den Ausgabeteil 117 auf die Rostvorrichtung 2 ausgegeben werden.
  • Im Folgenden wird die Folge von Verarbeitungen, die vom Bildverarbeitungsteil 114 und Decodierteil 115 ausgeführt werden, als Ausleseverarbeitung bezeichnet werden. Nachdem das Auslösesignal empfangen ist und der Bildaufnahmevorgang ausgeführt ist, benutzt der Optimierungsverarbeitungsteil 111 das erzeugte Bild zur Einstellung der Verschlussgeschwindigkeit und der Beleuchtungsintensität. Der Auslesevorgang wird begonnen, wenn die Bildaufnahme- und Einstellvorgänge in einer vorgegebenen Anzahl von Zyklen wiederholt und ein zum Auslesen geeignetes Bild erzeugt ist.
  • Als nächstes wird der vom Optimierungsverarbeitungsteil 111 ausgeführte Justier- bzw. Einstellvorgang erläutert.
  • Die Helligkeitsdaten zu den Pixeln, die vom Bildaufnahmeelement 101 ausgegeben und vom A/D-Wandler 110 umgewandelt werden (nachfolgend als Pixeldaten bezeichnet), werden sequentiell dem Optimierungsverarbeitungsteil 111 eingegeben. Während der Optimierungsverarbeitungsteil 111 diese Pixeldaten aufnimmt, teilt er sie in eine Anzahl von Bereichen und zieht einen von diesen, wo die Eigenschaft des zweidimensionalen Codes am besten wiedergegeben wird, heraus. Die Bildaufnahme- und Beleuchtungsbedingungen werden unter Verwendung der Bilddaten dieses herausgezogenen Bereichs eingestellt.
  • 5 zeigt ein Beispiel dafür, wie ein Bereich für ein Bild 200 eines zweidimensionalen Codes eingestellt werden kann. In diesem Beispiel enthält das zu verarbeitende Bild 200 (Zielbild) 640 Pixel in der horizontalen Richtung (längs der X-Achse) und 480 Pixel in der vertikalen Richtung (längs der Y-Achse), und die Pixeldaten werden sequentiell längs der X-Richtung ausgegeben. Der Optimierungsverarbeitungsteil 111 ist so eingerichtet, dass er Berechnungen ausführt, indem er diese Pixeldaten hereinnimmt und sie in Einheiten von 64 Pixeln separiert. Genauer erläutert, werden ein Differenzierungsberechnung zur Gewinnung der Helligkeitsdifferenz zwischen zueinander benachtbarten Pixeln und eine Integrationsberechnung zur Gewinnung des Gesamtwerts dieser Helligkeitsdifferenzen für jeden Bereich ausgeführt.
  • Die Vorgänge, wie sie oben beschrieben sind, werden in insgesamt 4800 Bereichen (10 in Richtung der X-Achse und 480 in Richtung der Y-Achse), die jeweils 64 eindimensional in Richtung der X-Achse ausgerichtete Pixel enthalten, ausgeführt, und dabei die Breite der Änderungen der Helligkeit innerhalb des Bereichs herausgezogen.
  • 5 zeigt zwei solche Bereiche A und B, wobei Bereich A im Hintergrundteil liegt und Bereich B einen zweidimensionalen Code 201 enthält. Die Helligkeitsverteilungen über Abschnitte der Bereiche A und B sind in 6A bzw. 6B gezeigt. Zur einfacheren Beschreibung stellt jede Zelle in den 6A und 6B (sowie in der nachstehend zu beschreibenden 8) 5 Pixel dar.
  • Wenn der keinen zweidimensionalen Code aufweisende Hintergrundteil als gleichförmige Helligkeit aufweisend betrachtet wird, ist kaum eine Helligkeitsänderung in dem im Hintergrund eingerichteten Helligkeitsbereich A vorhanden, wie dies in 6A gezeigt ist. Die Helligkeitsunterschiede zwischen zueinander benachbarten Pixeln sind extrem klein und ihr Gesamtwert (ihr Integrationswert) kann als nahe bei null liegend betrachtet werden.
  • In einem Bereich über einem zweidimensionalen Code andererseits tritt eine starke Helligkeitsänderung an Grenzen zwischen einem weißen Pixel und einem schwarzen Pixel auf. In einem über einem zweidimensionalen Code eingerichteten Bereich B wird daher die Helligkeits differenz zwischen Pixeln an einem solchen Grenzabschnitt groß, und solche Differenzwerte spiegeln sich im Integrationswert wider.
  • Beruhend auf diesem Prinzip wird gemäß diesem Beispiel der Bereich, in welchem der Gesamtwert (integrierter Wert) der Helligkeitsdifferenzen am größten ist, aus dem 4800 Bereichen ausgewählt und als der Bereich herausgezogen, der am besten die Eigenschaft des zweidimensionalen Codes widerspiegelt, wobei die Bilddaten dieses Bereichs zur Einstellung der Verschlussgeschwindigkeit des Bildaufnahmeelements 101 verwendet werden.
  • Die Verschlussgeschwindigkeit wird unter Verwendung des maximalen Helligkeitswerts (nachfolgend als Spitzenwert bezeichnet) eingestellt. Aus praktischen Gründen wird hier der Helligkeitswert in „Gradationen" ausgedrückt. Für vollständige Dunkelheit ist die Gradation 0, wobei die Gradationszahl mit zunehmender Helligkeit zunimmt. Wenn die Bilddaten beispielsweise 8-Bit-Daten sind, wird die Verschlussgeschwindigkeit so eingestellt, dass der Mittelwert aller Spitzen in dem Bereich (nachfolgend als mittlerer Spitzenwert bezeichnet), wie in 7 gezeigt, nahezu 255. Gradation wird.
  • Im Falle einer Spitze mit dem Spitzenwert von nahezu gleich 255 Gradationen vor Einstellung besteht jedoch eine Wahrscheinlichkeit für das Auftreten eines Halo-Effekts, weil zuviel Licht in das Bildaufnahmeelement 101 eintritt. Da ein Signal von ungefähr 30 Gradationen vom Bildaufnahmeelement 101 auch dann ausgegeben wird, wenn überhaupt kein einfallendes Licht vorhanden ist, lassen sich Helligkeit und Dunkelheit kaum unterscheiden, wenn die Helligkeit des Bildes ungefähr 30 Gradationen ist. Dieser Zustand wird als Dunkelheitszustand bezeichnet. Aus diesem Grund wird gemäß diesem Beispiel die Verschlussgeschwindigkeit auf ein Viertel (1/4-mal) des aktuellen Werts eingestellt, um die Belichtungszeit zu reduzieren, wenn der kleinste Helligkeitswert des Bildes vor Einstellung 250 Gradationen oder mehr ist, und für eine längere Belichtung auf viermal länger, wenn der größte Helligkeitswert des Bildes vor Einstellung 35 Gradationen oder weniger ist.
  • Auch nachdem die Verschlussgeschwindigkeit eingestellt ist und die Bildhelligkeit geeignet geworden ist, wird die Genauigkeit des ausgelesenen Codes schlechter, wenn die Scharfeinstellung nicht exakt auf dem zweidimensionalen Code liegt. In diesem Beispiel wird daher die Amplitude von Helligkeitsschwankungen für jeden Bereich selbst aus einem Bild, nachdem die Verschlussgeschwindigkeit eingestellt worden, herausgezogen und die Geeignetheit der Fokussierungsbedingung unter Verwendung des minimalen Helligkeitswerts in dem Bereich mit maximaler Änderungsamplitude (nachfolgend als Boden bezeichnet) und der vorgenannten Spitze bestimmt. Genauer erläutert, wird die Steigung der Helligkeitsänderung, wie in 8 gezeigt, vom Boden (angegebenen durch einen schwarzen Kreis) zur Spitze (angegeben durch einen weißen Kreis) gewonnen und die Fokussierungsbedingung als geeignet betrachtet, wenn diese Steigung größer als ein vorgegebener Schwellenwert ist.
  • Da der Codeleser 1 dieses Beispiels den Aufbau eines Handgerätes hat, ist vorgesehen, dass die Fokussierungseinstellungsbearbeitung vom Anwender ausgeführt wird. Wenn die Fokussierungsbedingung geeignet ist, wird unter Verwendung des Bildes zu diesem Zeitpunkt der Auslesevorgang gestartet. Wenn die Fokussierungsbedingung nicht geeignet ist, wird der Auslesevorgang nicht ausgeführt, sondern ein Bildaufnahmevorgang erneut ausgeführt. Wenn der Anwender die Position des Codelesers 1 einjustiert und der Brennpunkt geeignet eingestellt ist, wird das nach der Einstellung gewonnene Bild für die Ausleseverarbeitung verwendet.
  • 9 ist ein Blockdiagramm zur Wiedergabe der Hauptfunktionen des Optimierungsverarbeitungsteils 111, der eine (erste) Differenzbildungsschaltung 121, eine Integrierschaltung 122, eine (erste) Ver gleichsschaltung 123, eine Spitzenfeststellungsschaltung 124, eine Bodenfeststellungsschaltung 125, eine weitere (zweite) Differenzbildungsschaltung 126, zwei Dividierschaltungen 127 und 128 und eine weitere (zweite) Vergleichsschaltung 129 enthält. 130 in der Figur gibt einen (ersten) Zähler zum Zählen von Pixeln an, die einen einzelnen Bereich bilden, wobei sein Zählwert C1 sich im Bereich von 0 bis 64 ändert. 131 gibt einen weiteren (zweiten) Zähler zum Zählen der Anzahl verarbeiteter Bereiche an, wobei sein Zählwert C2 sich im Bereich von 0 bis 4800 ändert.
  • Das Datenfeld der einzelnen Pixeldaten, die das Bild bilden (nachfolgend als Pixeldatenfeld bezeichnet) wird auf den ersten Zähler 130 und die erste Differenzbildungsschaltung 121 übertragen. Es wird auch mittels einer Verzögerungsschaltung 132 netzaufwärts der ersten Differenzbildungsschaltung 121 verzögert, wobei die erste Differenzbildungsschaltung 121 die Differenz zwischen dem Datenwert des vorhergehenden von der Verzögerungsschaltung 132 gehaltenen Pixels und dem aktuell eingegebenen Pixeldatenwert berechnet.
  • Eine Vergleichsschaltung zur Beurteilung des Vorzeichens (positiv oder negativ) des Ergebnisses der vorgenannten Berechnung und eine Schaltung zur Umwandlung eines negativen Berechnungsergebnisses in einen positiven Wert (beide nicht gezeigt) sind in der Integierschaltung 122 enthalten, welche dazu dient, die Absolutwerte der durch die Differenzbildungsschaltung 121 festgestellten Differenzen zu berechnen. Diese Integrationsberechnung wird in Einheiten von 64 Pixeln beruhend auf dem Zählwert C1 des ersten Zählers 130 durchgeführt. Wenn die kumulative Addition auf dem 64. Pixel abgeschlossen ist, wird der in diesem Zeitpunkt gewonnene Integrationswert netzabwärts ausgegeben und der Inhalt der Schaltung gelöscht, um sie für die nächste Integrationsberechnung bereit zu machen. Auf diese Weise wird der Änderungsamplitudenwert für jeden der 4800 Bereiche herausgezogen.
  • Diese Änderungsamplitudenwerte der Bereiche, die durch die Integrationsschaltung 122 gewonnen sind, werden sequentiell von der Vergleichsschaltung 123 erhalten und mit dem Änderungsamplitudenwert eines vorher verarbeiteten Bereichs verglichen. Der größere der Vergleichswerte wird gemäß diesem Beispiels ausgewählt, und dieser ausgewählte Wert und der entsprechende Wert des Zähler C2 werden zusammen durch ein (nicht gezeigtes) Register gespeichert. Diese Vergleichsvorgänge werden begonnen, wenn die Zählung des Zählers C2 gleich 2 ist. Im ersten dieser Vorgänge erfolgt der Vergleich mit dem unmittelbar vorher gewonnenen Integrationswert, der in der vorgelagerten Verzögerungsschaltung 133 gespeichert ist (der Änderungsamplitude im ersten Bereich). Danach erfolgen Vergleiche mit dem Änderungsamplitudenwert, der im vorgenannten Register aufbewahrt wird.
  • Am Ende schließlich zieht die Vergleichsschaltung 123 die größte der Änderungsamplituden der Helligkeit der Bereiche heraus (nachfolgend als maximale Änderungsamplitude bezeichnet) und gibt die Zählzahl C2, die dieser maximalen Änderungsamplitude entspricht und den Ort des Bereichs angibt, wo die maximale Änderungsamplitude gewonnen wird, aus. Dieser durch die Zählzahl C2 angegebene entsprechende Bereich wird nachfolgend als Objektbereich bezeichnet.
  • Als nächstes stellt die Spitzenfeststellungsschaltung 124 eine Helligkeitsspitze beispielsweise durch Differenzieren der Ausgabewerte der Differenzbildungsschaltung 121 fest. Ein weiterer (dritter) Zähler 134 ist der Spitzennachweisschaltung 120 nachgelagert und dient dazu, die Zahl C3 der festgestellten Spitzen zu zählen.
  • Die Dividierschaltung 127 dient dazu, den vorgenannten mittleren Spitzenwert durch Dividieren der Gesamtsumme der Spitzenwerte durch C3 zu berechnen. Ein weiterer (vierter) Zähler 135, der zur Zählung der Zahl C4 von Ausgaben der Differenzbildungsschaltung 121 dient, wird wie der oben beschriebene erste Zähler 130 alle 64 Pixel gelöscht. Diese Berechnung des mittleren Spitzenwerts wird jedesmal ausgeführt, wenn durch den vierten Zähler 135 bis zur Zahl C4 gezählt worden ist. Der mittlere Spitzenwert für jeden Bereich wird also von der Dividierschaltung 127 ausgegeben. Diese mittleren Spitzenwerte werden auf eine (nicht gezeigte) Auswahlschaltung übertragen, die für eine Auswahl des mittleren Spitzenwertes des vorgenannten Objektbereichs eingerichtet ist. Dieser mittlere Spitzenwert wird zur Einstellung der Verschlussgeschwindigkeit verwendet.
  • Die Bodenfeststellungschaltung 125 dient zur Feststellung des Helligkeitsbodens durch Durchführen eines Vorgangs der ähnlich demjenigen der Spitzenfeststellungschaltung 124, ausgenommen auf den Ausgabewerten der Differenzbildungsschaltung 121, ist.
  • Die Zählzahl C4 des vierten Zählers 135 wird jedesmal, wenn ein Nachweis durch die Bodenfeststellungsschaltung 125 oder die Spitzenfestellungsschaltung 124 erfolgt, in einem Register oder dergleichen als die Nachweisposition wiedergebender Datenposten aufbewahrt. Die zweite Differenzbildungsschaltung 126 dient zur Eingabe des mit der Spitzenfeststellungsschaltung 124 festgestellten Werts der Spitze, des mit der Bodenfeststellungsschaltung 125 festgestellten Bodens und ihrer Nachweispositionen und zur Kombination einer Spitze und eines Bodens in der Reihenfolge, in der sie festgestellt werden, womit die Differenz zwischen diesen Werten gewonnen wird. Als nächstes dividiert die zweite Dividierschaltung 128 den Ausgabewert der Differenzbildungsschaltung 125 durch den Abstand zwischen der Spitze und dem Boden, um so die Steigung einer Helligkeitsänderung zwischen diesen zu gewinnen. Der Spitze-Boden-Abstand kann aus den durch den Zähler C4 wiedergegebenen Nachweispositionen gewonnen werden. Die Dividierschaltung 128 enthält eine Schaltung zur Mittelung der Steigungen der Helligkeitsänderungen, die für alle Spitze-Boden-Kombinationen für alle Bereiche gewonnen worden sind.
  • Die Differenzbildungsschaltung 126 und die Dividierschaltung 128 führen ihre Rechnungen auch für jeden Bereich jedesmal aus, wenn der Zähler 135 fertig gezählt hat und gelöscht wird. Von den Ausgaben der Dividierschaltung 128 wird diejenige, die dem Objektbereich entspricht, von der Vergleichsschaltung 123 hereingenommen und mit einem spezifizierten Schwellenwert verglichen. Diese Vergleichsausgabe dient zur Angabe der Geeignetheit der vorgenannten Fokusbedingung.
  • Wenngleich in 9 nicht gezeigt, ist der Optimierungsverarbeitungsteil 111 ferner mit einer Schaltung, die zur Hereinnahme von Pixeldatenanordnungen und zur Feststellung maximaler und minimaler Helligkeitswerte aus dem gesamten Bild eingerichtet ist, und einer Schaltung zur Beurteilung des Auftretens eines Halo-Effekts oder einer Dunkelbedingung versehen. Wenn das Bildaufnahmeelement 101 aktiviert wird und Pixeldatenanordnungen ausgegeben werden, werden alle diese Schaltungen des Optimierungsverarbeitungsteils 111 ebenfalls aktiviert, um parallele Vorgänge zur Berechnung des mittleren Spitzenwerts an der Stelle der maximalen Änderungsamplitude, Beurteilung, ob die Fokussierungsbedingung geeignet ist, und Bestimmung, ob der Halo-Effekt oder eine Dunkelbedingung aufgetreten ist, durchzuführen. Ergebnisse dieser Vorgänge werden auf eine (nicht gezeigte) Steuerschaltung übertragen, die dafür eingerichtet ist, Zahlen, die diese Ergebnisse angeben, mit spezifizierten Schwellenwerten in einer speziellen Folge zu vergleichen und einen Wert beruhend auf den Ergebnissen solcher Vergleiche auszuwählen. Auf der Grundlage dieses ausgewählten Werts und des durch diesen Wert angegebenen Datentyps wird ein Einstellvorgang ausgeführt.
  • 10 ist ein Flussdiagramm zur Wiedergabe von Einzelheiten von Vorgängen, die vom Optimierungsverarbeitungsteil 111 ansprechend auf die Eingabe des Auslösesignals ausgeführt werden.
  • Wenn das Auslösesignal eingegeben wird, werden Anfangswerte für die Verschlussgeschwindigkeit und für die Beleuchtungsintensität vom Optimierungsverarbeitungsteil 111 an den Bildaufnahmesteuerteil 108 und den Beleuchtungssteuerteil 109 geliefert (Schritt ST101) und ein Bild eines zweidimensionalen Codes gewonnen (Schritt ST102). Nachdem eine Amplitude von Helligkeitsänderungen aus jedem Bereich, wie oben erläutert, durch diesen Bildaufnahmevorgang herausgezogen worden ist, werden eine maximale Änderungsamplitude und ein Objektbereich identifiziert, und ein mittlerer Spitzenwert an diesem Objektbereich, die Beurteilungsergebnisse zur Geeignetheit des Fokussierungszustands und des Auftretens eines Halo-Effekts und einer Dunkelbedingung erzeugt.
  • In Obigem wird, wenn die maximale Änderungsamplitude an dem Objektbereich (wie von der Vergleichsschaltung 123 ausgegeben) oberhalb eines spezifizierten Schwellenwerts liegt (JA in Schritt ST103), die Verschlussgeschwindigkeit unter Verwendung des mittleren Spitzenwerts dieses Objektbereichs eingestellt (Schritt ST104) und der zweite Bildaufnahmevorgang danach beruhend auf der eingestellten Verschlussgeschwindigkeit ausgeführt (Schritt ST105).
  • Jede Schaltung des Optimierungsverarbeitungsteils 111 arbeitet für diesen zweiten Bildaufnahmevorgang in der gleichen Weise wie für den ersten Bildaufnahmevorgang, und wenn die maximale Änderungsamplitude oberhalb des Schwellenwerst liegt (JA in Schritt ST106), wird das Bild zu diesem Zeitpunkt auf dem Monitor 12 angezeigt (Schritt ST107). Die Steuerung dieser Anzeige wird durch eine CPU ansprechend auf ein Signal vom Optimierungsverarbeitungsteil 111 ausgeführt. Wenn die in Schritt ST105 gewonnene Fokussierungsbedingung danach als geeignet beurteilt wird (JA in Schritt ST108), wird ein „Endsignal" auf die CPU ausgegeben (Schritt ST109), um den Vorgang abzuschließen.
  • Wenn die maximale Änderungsamplitude auf dem mit dem ersten Bildaufnahmevorgang gewonnenen Bild unterhalb des spezifizierten Schwellenwerts liegt, werden Einstellungen beruhend auf maximaler und minimaler Helligkeit des Bildes als ganzen ausgeführt. Wenn der minimale Wert 150 Gradationen oder darüber ist und das Vorliegen eines Halo-Effekts angenommen wird (JA in Schritt ST110), wird die Verschlussgeschwindigkeit auf 1/4 des aktuellen Werts eingestellt (Schritt ST112). Wenn der Maximalwert unter 35 Gradationen liegt und eine Dunkelbedingung als vorliegend angenommen wird (JA in ST111), wird die Verschlussgeschwindigkeit auf das Vierfache des aktuellen Werts eingestellt (Schritt ST113). Wenn sowohl der Maximalwert als auch der Minimalwert im Bereich von 35 bis 250 Gradationen liegt (NEIN in den Schritten ST110 und ST111), wird die Verschlussgeschwindigkeit nicht geändert, während die Beleuchtungsintensität einreguliert wird (Schritt ST114). Diese Einjustierung kann beispielsweise durch Einschalten einer bestimmten Anzahl von Lichtquellen, die gerade abgeschaltet sind, oder Ausschalten einer spezifizierten Anzahl von Lichtquellen, die gerade eingeschaltet sind, bewirkt werden, derart, dass der Maximalwert auf ein spezifiziertes Standardniveau zu liegen kommt.
  • Wenn die maximale Änderungsamplitude nicht ausreichend groß ist (NEIN in Schritt ST106), wird der Schritt ST102 der Aufnahme eines Bildes, nachdem diese Einstellungen durchgeführt sind, d. h., unter einregulierten Bedingungen, wiederholt. Wenn die maximale Änderungsamplitude mit diesem neu aufgenommenen Bild sich als oberhalb des spezifizierten Schwellenwerts befindend erweist (JA in Schritt ST103), werden die Vorgänge von Schritt ST104 und folgende durchgeführt.
  • Wenn die Fokussierungsbedingung des in Schritt ST105 gewonnenen Bildes als nicht geeignet beurteilt wird (NEIN in Schritt ST105), wird das „Endsignal" auf die CPU nicht ausgegeben und ein weiteres Bild in Schritt ST102 aufgenommen. Die oben beschriebenen Einstell- bzw. Justierschritte werden danach auf diesem neu aufgenommenen Bild wiederholt.
  • Gemäß diesem Beispiel enthalten die Bedingungen zur Beurteilung der Fokussierungsbedingung als geeignet nicht nur, dass die Fokussierungsbedingung der Ausgabe der Vergleichsschaltung 129 geeignet sein sollte, sondern auch, dass der mittlere Spitzenwert des Objektbereichs oberhalb eines spezifizierten Wertes liegen sollte.
  • Dieser Bildaufnahmevorgang, wie er oben beschrieben wurde, ist auch in einer Situation angemessen, wo der Anwender irrtümlich eine Änderung der Lage des Codelesers 1 bewirkt hat. Wenn es passiert, dass der Codeleser 1 zum Zeitpunkt des Schritts ST105, nachdem die Verschlussgeschwindigkeit eingestellt worden ist, versetzt wird, so dass kein zweidimensionaler Code in dem zu fotografierenden Bereich mehr vorhanden ist, erreicht die maximale Änderungsamplitude auf dem Bild, die zu diesem Zeitpunkt gewonnen wird, den Schwellenwert nicht, und die Beurteilung in Schritt ST106 wird ein NEIN, was es erforderlich macht, dass ein weiteres Bild aufgenommen wird (Schritt ST102) und die Justierschritte wiederholt werden.
  • Der Anwender wird also, wenn die Fokussierungsbedingung nicht geeignet ist oder der Zielcode aus dem Gesichtsfeld verschwindet, die Position des Codelesers 1 so einjustieren, dass ein geeignetes Bild gewonnen werden kann. Da das Bild, das in Schritt ST107 wiedergegeben wird, gespeichert wird, bis der Schritt ST107 das nächste Mal ausgeführt wird, kann der Anwender die Justiervorgänge unter Prüfung der Geeignetheit der Fokussierungsbedingung durchführen.
  • 11 zeigt eine Folge von Vorgängen, die von dem Codeleser 1 ausgeführt werden. Wenn zu seiner Aktivierung Spannung zugeführt wird, wird der Anzeigebildschirm eingeschaltet (Schritt ST1). Wenn danach ein Auslösesignal eingegeben wird (JA in Schritt ST2), wird der in 10 gezeigte Bildaufnahmevorgang ausgeführt (Schritt ST3). Nach dem damit ein Bild mit geeigneter Helligkeit und Fokussierungsbedingung gewonnen ist, beginnen der Bildverarbeitungsteil 114 und der Decodierteil 115 einen Auslesevorgang (Schritt ST4).
  • Wenn optische Daten mit diesem Auslesevorgang erfolgreich ausgelesen sind (JA in Schritt ST5), werden die gewonnenen Auslesedaten durch den Monitor 12 angezeigt und auf die Hostvorrichtung 2 ausgegeben (Schritt ST12). Wenn der Auslesevorgang fehlschlägt (NEIN in Schritt ST5), wird ansprechend auf das nächste Auslesesignal (JA in Schritt ST6) die Beleuchtungsbedingung geändert (Schritt ST7) und der Bildaufnahmevorgang des Schritts ST3 erneut ausgeführt.
  • Der Vorgang in Schritt ST7 wird beispielsweise ausgeführt, indem die Zerstreuungsbeleuchtung durch den Illuminator 104 in die Sichtungsbeleuchtung durch die LED-Lampe 105 geändert wird oder durch die Farbe des Illuminators 104.
  • Wenn kein Auslösesignal innerhalb einer spezifizierten Zeitdauer (t Sekunden) nach der Aktivierung (JA in Schritt ST8) eingegeben wird, erlischt der Bildschirm des Monitors 12 (Schritt ST9). Wenn kein Auslösesignal innerhalb der spezifizierten Zeit (t Sekunden) nach dem Auslösefehlschlag (JA in Schritt ST8) eingegeben wird, erfolgt eine Fehleranzeige durch den Monitor 12 und es wird auf die Eingabe eines Auslösesignals gewartet (ST2). Wenngleich in 11 nicht gezeigt, wird, wenn das Auslösesignal nach Erlöschen des Monitorbildschirms (Schritt ST9) eingegeben wird, der Bildschirm erneut eingeschaltet.
  • Mit einem so aufgebauten Codeleser 1 werden, wenn der Anwender einen der Bedienungsknöpfe 14 bei in Richtung des Werkstückes W weisendem Lesefenster 11 betätigt, der Bildaufnahmevorgang und der Einstellvorgang für die Verschlussgeschwindigkeit für eine spezifizierte Anzahl von Zyklen wiederholt ausgeführt und ein für den Auslesevorgang geeignetes Bild gewonnen. Ein großer Teil der Zeit für den Einstellvorgang wird auf das Hereinnehmen vorgenannter Bilddatenfelder verwendet. Nachdem die so gewonnenen Bilddatenfelder im Bildspeicher gespeichert sind, sind dann nur noch Schritte zur Einstellung der Verschlussgeschwindigkeit und der Beleuchtungsbedingungen da, die extrem schnell abgeschlossen werden können. Die Verarbeitungszeit wird also, verglichen mit der Methode der Vornahme von Einstellungen unter Verwendung von im Bildspeicher 113 gespeicherten Daten, deutlich verkürzt.
  • Durch die Verarbeitung gemäß 10 kann ein für das Auslesen geeignetes Bild durch zwei Bildaufnahmevorgänge gewonnen werden, wenn die Beleuchtungsbedingung und die Fokussierungsbedingung adequat sind, und die Verarbeitungszeit kann noch stärker reduziert werden.
  • Als in Schritt ST1 der 10 einzustellende Anfangswerte können vorab eingestellte Standardwerte verwendet werden. Werte, die unmittelbar vorher eingestellt werden, können verwendet werden. In diesem Fall kann, wenn die maximale Änderungsamplitude des mit dem ersten Bildaufnahmevorgang (des Schritts ST102) gewonnenen Bilds oberhalb des Schwellenwerts und der mittlere Spitzenwert oberhalb des spezifizierten Niveaus liegt, der Auslesevorgang ohne Einregulierung der Verschlussgeschwindigkeit ausgeführt werden.
  • Durch ein solches Einstellverfahren kann der Vorgang deutlich beschleunigt werden, wenn für eine vielmalige Wiederholung von Auslesevorgängen auf Werkstücken ähnlicher Arten der Codeleser 1 nicht mit der Hand gehalten werden muss, sondern an einer festen Position eingerichtet werden kann. Dies liegt daran, dass wenn die Bildaufnahmeund Beleuchtungsbedingungen für das erste Werkstück geeignet bestimmt werden können, der Vorgang auf den nachfolgenden Werkstücken unter ungefähr den gleichen Bedingungen wiederholt werden kann. Die Erfindung wurde oben unter Bezug auf nur ein Beispiel beschrieben, dies soll den Rahmen der Erfindung jedoch nicht einschrän ken. Viele Abwandlungen und Variationen sind im Rahmen der Erfindung möglich. Es wurde oben ein Beispiel erläutert, bei dem die Helligkeit des Bildes hauptsächlich durch Verändern der Verschlussgeschwindigkeit eingestellt wird, dies kann aber auch durch Änderung der Ausgangsverstärkung des Bildaufnahmeelements 101 geschehen. Die Helligkeit kann ferner durch Steuerung einer (nicht gezeigten) Öffnungsvorrichtung eingestellt werden.
  • Anstelle einer CCD kann auch ein Bildaufnahmeelement, das zu einem wahlfreiem Zugriff fähig ist, wie ein MOS, verwendet werden. In diesem Fall können, wie in 12 gezeigt, Bereiche 20 in spezifizierten Intervallen auf einem zu verarbeitenden Bild 200 eingestellt werden, wobei die Änderungsamplitude der Helligkeit eines jeden Bereichs durch sequentielles Auslesen der diesen Bereichen 20 entsprechenden Pixeldaten gewonnen werden. Die zu verarbeitende Datenmenge lässt sich also vermindern und die für den Einstellvorgang erforderliche Zeit kann deutlich verkürzt werden. Diese Verarbeitungsmethode kann nicht nur für einen Bereich, in welchem die Pixel eindimensional angeordnet sind, sondern auch für Verarbeitungsbereiche mit zweidimensional angeordneten Pixeln verwendet werden.
  • Es versteht sich, dass es wünschenswert ist, einen Auslesevorgang nach der Einstellverarbeitung durchzuführen, indem ein Bild beruhend auf der abschließenden Einstellung aufgenommen wird, und damit ein Gesamtbild des zweidimensionalen Codes zu gewinnen.

Claims (17)

  1. Optischer Datencodeleser (1), welcher aufweist: eine Beleuchtungsvorrichtung (104) zur Beleuchtung eines auszulesenden optischen Datencodes; eine Bildaufnahmevorrichtung (101) zur Aufnahme eines Bilds des optischen Datencodes; eine Auslesevorrichtung (114, 115) zur Decodierung des optischen Datencodes durch Verarbeitung von durch die Bildaufnahmevorrichtung (101) erzeugten Bilddaten; und eine Einstellvorrichtung (111) zur Durchführung eines Einstellvorgangs durch Einstellen wenigstens einer Bedingung, ausgewählt aus der Gruppe bestehend aus Beleuchtungsbedingungen der Beleuchtungsvorrichtung (104) und Bildaufnahmebedingungen für die Bildaufnahmevorrichtung (101), derart, dass die Bilddaten für ein Ausgelesenwerden geeignet werden; wobei die Einstellvorrichtung (111) dazu dient, Bereiche auf durch die Bildaufnahmevorrichtung (101) ausgegebenen Bilddaten einzurichten, eine Änderungsamplitude der Helligkeit in jedem der Bereiche herauszuziehen und den Einstellvorgang unter Verwendung der Bilddaten von wenigstens einem der Bereiche auszuführen, in welchem die herausgezogene Änderungsamplitude größer als ein spezifizierter Schwellenwert ist.
  2. Optischer Datencodeleser (1) nach Anspruch 1, wobei die Bildaufnahmevorrichtung (101) dazu dient, seriell die Bilddaten einzelner Pixel auf die Einstellvorrichtung (111) auszugeben, und die Einstellvorrichtung (111) dazu dient, die von der Bildaufnahmevorrichtung (101) ausgegebenen Bilddaten zu empfangen und nach Empfang von Bilddaten einer spezifizierten Anzahl von Pixeln eine Änderungsamplitu de der Helligkeit für einen Bereich herauszuziehen, der aus der spezifizierten Anzahl von Pixeln aufgebaut ist.
  3. Optischer Datencodeleser (1) nach Anspruch 1, wobei die Bildaufnahmevorrichtung (101) dazu dient, Bilddaten eines spezifizierten Pixels auszugeben, und die Einstellvorrichtung (111) dazu dient, sequentiell Pixel zu spezifizieren, die der Anzahl von Bereichen entsprechen, um dadurch zu bewirken, dass die Bilddaten eines jeden der Bereiche auf die Bildaufnahmevorrichtung (101) ausgegeben werden und eine Änderungsamplitude der Helligkeit für jeden der Bereiche herausgezogen wird.
  4. Optischer Datencodeleser (1) nach Anspruch 1 bis 3, wobei die Einstellvorrichtung (111) dazu dient, Helligkeitsdifferenzen zwischen aneinander angrenzenden Pixeln herauszuziehen und die Helligkeitsdifferenzen für jeden der Bereiche zu integrieren, um danach einen der Bereiche herauszuziehen, in dem der integrierte Wert am größten ist, und den Einstellvorgang beruhend auf dem maximalen Helligkeitswert des herausgezogenen Bereichs auszuführen.
  5. Optischer Datencodeleser (1) nach Anspruch 1, wobei die Einstellvorrichtung (111) dazu dient, zu beurteilen, ob die Helligkeit der von der Bildaufnahmevorrichtung ausgegebenen Bilddaten sich innerhalb eines spezifizierten numerischen Bereichs befinden, und die Verschlussgeschwindigkeit der Bildaufnahmevorrichtung (101) beruhend auf einer spezifizierten Bedingung einzustellen, wenn die Helligkeit der Bilddaten als außerhalb des spezifizierten numerischen Bereichs liegend beurteilt wird.
  6. Optischer Datencodeleser (1) nach Anspruch 2, wobei die Einstellvorrichtung (111) dazu dient, zu beurteilen, ob die Helligkeit der von der Bildaufnahmevorrichtung (101) ausgegebenen Bilddaten sich innerhalb eines spezifizierten numerischen Bereichs befinden, und die Verschlussgeschwindigkeit der Bildaufnahmevorrichtung (101) beruhend auf einer spezifizierten Bedingung einzustellen, wenn die Helligkeit der Bilddaten als außerhalb des spezifizierten numerischen Bereichs liegend beurteilt wird.
  7. Optischer Datencodeleser (1) nach Anspruch 3, wobei die Einstellvorrichtung (111) dazu dient, zu beurteilen, ob die Helligkeit der von der Bildaufnahmevorrichtung (101) ausgegebenen Bilddaten sich innerhalb eines spezifizierten numerischen Bereichs befinden, und die Verschlussgeschwindigkeit der Bildaufnahmevorrichtung (101) beruhend auf einer spezifizierten Bedingung einzustellen, wenn die Helligkeit der Bilddaten als außerhalb des spezifizierten numerischen Bereichs liegend beurteilt wird.
  8. Optischer Datencodeleser (1) nach Anspruch 4, wobei die Einstellvorrichtung (111) dazu dient, zu beurteilen, ob die Helligkeit der von der Bildaufnahmevorrichtung (101) ausgegebenen Bilddaten sich innerhalb eines spezifizierten numerischen Bereichs befinden, und die Verschlussgeschwindigkeit der Bildaufnahmevorrichtung beruhend auf einer spezifizierten Bedingung einzustellen, wenn die Helligkeit der Bilddaten als außerhalb des spezifizierten numerischen Bereichs liegend beurteilt wird.
  9. Optischer Datencodeleser (1) nach Anspruch 5, wobei die Einstellvorrichtung (111) dazu dient, zu beurteilen, ob die Helligkeit der von der Bildaufnahmevorrichtung (101) ausgegebenen Bilddaten sich innerhalb eines spezifizierten numerischen Bereichs befinden, und die Verschlussgeschwindigkeit der Bildaufnahmevorrichtung (101) beruhend auf einer spezifizierten Bedingung einzustellen, wenn die Helligkeit der Bilddaten als außerhalb des spezifizierten numerischen Bereichs liegend beurteilt wird.
  10. Optischer Datencodeleser (1) nach Anspruch 6, wobei die Einstellvorrichtung (111) dazu dient, zu beurteilen, ob die Helligkeit der von der Bildaufnahmevorrichtung (101) ausgegebenen Bilddaten sich innerhalb eines spezifizierten numerischen Bereichs befinden, und die Verschlussgeschwindigkeit der Bildaufnahmevorrichtung beruhend auf einer spezifizierten Bedingung einzustellen, wenn die Helligkeit der Bilddaten als außerhalb des spezifizierten numerischen Bereichs liegend beurteilt wird.
  11. Optischer Datencodeleser (1) nach Anspruch 1, wobei die Einstellvorrichtung (111), nach Ansteuerung der Bildaufnahmevorrichtung (101) ansprechend auf ein eingegebenes Auslösesignal für einen Auslesevorgang, dazu dient, den Einstellvorgang auszuführen, bis die Änderungsamplitude der Helligkeit in wenigstens einem der Anzahl von Bereichen größer als der spezifizierte Schwellenwert wird, und die Bildaufnahmevorrichtung (101) unter den einregulierten Bedingungen erneut anzusteuern; und wobei die Auslesevorrichtung (114, 115) dazu dient, den Auslesevorgang, abhängig vom Ende des Einstellvorgangs mit der Einstellvorrichtung (111) unter Verwendung der aktuell neuesten Bilddaten auszuführen.
  12. Optischer Datencodeleser (1) nach Anspruch 2, wobei die Einstellvorrichtung (111), nach Ansteuerung der Bildaufnahmevorrich tung (101) ansprechend auf ein eingegebenes Auslösesignal für einen Auslesevorgang, dazu dient, den Einstellvorgang auszuführen, bis die Änderungsamplitude der Helligkeit in wenigstens einem der Anzahl von Bereichen größer als der spezifizierte Schwellenwert wird, und die Bildaufnahmevorrichtung (111) unter den einregulierten Bedingungen erneut anzusteuern; und wobei die Auslesevorrichtung (114, 115) dazu dient, den Auslesevorgang, abhängig vom Ende des Einstellvorgangs mit der Einstellvorrichtung (111) unter Verwendung der aktuell neuesten Bilddaten auszuführen.
  13. Optischer Datencodeleser nach Anspruch 3, wobei die Einstellvorrichtung (111), nach Ansteuerung der Bildaufnahmevorrichtung (101) ansprechend auf ein eingegebenes Auslösesignal für einen Auslesevorgang, dazu dient, den Einstellvorgang auszuführen, bis die Änderungsamplitude der Helligkeit in wenigstens einem der Anzahl von Bereichen größer als der spezifizierte Schwellenwert wird, und die Bildaufnahmevorrichtung (101) unter den einregulierten Bedingungen erneut anzusteuern; und wobei die Auslesevorrichtung (114, 115) dazu dient, den Auslesevorgang, abhängig vom Ende des Einstellvorgangs mit der Einstellvorrichtung (111) unter Verwendung der aktuell neuesten Bilddaten auszuführen.
  14. Optischer Datencodeleser (1) nach Anspruch 4, wobei die Einstellvorrichtung (111), nach Ansteuerung der Bildaufnahmevorrichtung (101) ansprechend auf ein eingegebenes Auslösesignal für einen Auslesevorgang, dazu dient, den Einstellvorgang auszuführen, bis die Änderungsamplitude der Helligkeit in wenigstens einem der Anzahl von Bereichen größer als der spezifizierte Schwellenwert wird, und die Bild aufnahmevorrichtung (101) unter den einregulierten Bedingungen erneut anzusteuern; und wobei die Auslesevorrichtung (114, 115) dazu dient, den Auslesevorgang, abhängig vom Ende des Einstellvorgangs mit der Einstellvorrichtung (111) unter Verwendung der aktuell neuesten Bilddaten auszuführen.
  15. Optischer Datencodeleser (1) nach Anspruch 6, wobei die Einstellvorrichtung (111), nach Ansteuerung der Bildaufnahmevorrichtung (101) ansprechend auf ein eingegebenes Auslösesignal für einen Auslesevorgang, dazu dient, den Einstellvorgang auszuführen, bis die Änderungsamplitude der Helligkeit in wenigstens einem der Anzahl von Bereichen größer als der spezifizierte Schwellenwert wird, und die Bildaufnahmevorrichtung (101) unter den einregulierten Bedingungen erneut anzusteuern; und wobei die Auslesevorrichtung (114, 115) dazu dient, den Auslesevorgang, abhängig vom Ende des Einstellvorgangs mit der Einstellvorrichtung (111) unter Verwendung der aktuell neuesten Bilddaten auszuführen.
  16. Optischer Datencodeleser (1) nach Anspruch 7, wobei die Einstellvorrichtung (111), nach Ansteuerung der Bildaufnahmevorrichtung (101) ansprechend auf ein eingegebenes Auslösesignal für einen Auslesevorgang, dazu dient, den Einstellvorgang auszuführen, bis die Änderungsamplitude der Helligkeit in wenigstens einem der Anzahl von Bereichen größer als der spezifizierte Schwellenwert wird, und die Bildaufnahmevorrichtung (101) unter den einregulierten Bedingungen erneut anzusteuern; und wobei die Auslesevorrichtung (114, 115) dazu dient, den Auslesevorgang, abhängig vom Ende des Einstellvorgangs mit der Einstellvor richtung (111) unter Verwendung der aktuell neuesten Bilddaten auszuführen.
  17. Optischer Datencodeleser nach Anspruch 15 oder 16, welcher ferner einen Bedienteil zur Eingabe des Auslösesignals aufweist, wobei die Einstellvorrichtung (111) dazu dient, die Geeignetheit einer Fokussierungsbedingung der Bildaufnahmevorrichtung (101) unter Verwendung maximaler und minimaler Helligkeitswerte in dem für den Einstellvorgang verwendeten Bereich zu beurteilen, und wobei die Beurteilungsvorrichtung dazu dient, die Bildaufnahmevorrichtung (101) erneut anzusteuern, wenn beurteilt wird, dass die Fokussierungsbedingung geeignet ist.
DE102005058740A 2004-12-08 2005-12-07 Vorrichtung zum Lesen eines optischen Datencodes Expired - Fee Related DE102005058740B4 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2004-354900 2004-12-08
JP2004354900A JP3846501B2 (ja) 2004-12-08 2004-12-08 光学情報コード読取装置

Publications (2)

Publication Number Publication Date
DE102005058740A1 DE102005058740A1 (de) 2006-06-14
DE102005058740B4 true DE102005058740B4 (de) 2009-07-16

Family

ID=36500385

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102005058740A Expired - Fee Related DE102005058740B4 (de) 2004-12-08 2005-12-07 Vorrichtung zum Lesen eines optischen Datencodes

Country Status (3)

Country Link
US (1) US7475822B2 (de)
JP (1) JP3846501B2 (de)
DE (1) DE102005058740B4 (de)

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8336778B2 (en) * 2008-08-19 2012-12-25 The Code Corporation Graphical code readers that provide sequenced illumination for glare reduction
US9639727B2 (en) * 2008-12-12 2017-05-02 The Code Corporation Graphical barcode readers that are configured for glare reduction
US8011584B2 (en) * 2008-12-12 2011-09-06 The Code Corporation Graphical code readers that are configured for glare reduction
EP2638505B1 (de) * 2010-11-10 2019-04-24 Datalogic USA, Inc. Adaptives datenlesegerät und betriebsverfahren dafür
JP5252023B2 (ja) * 2011-03-30 2013-07-31 カシオ計算機株式会社 コード読取装置及びプログラム
US8636212B2 (en) * 2011-08-24 2014-01-28 Metrologic Instruments, Inc. Decodable indicia reading terminal with indicia analysis functionality
ITMI20112454A1 (it) 2011-12-30 2013-07-01 Datalogic Scanning Group Srl Apparecchiatura di lettura di informazioni ottiche
JP2014056382A (ja) * 2012-09-12 2014-03-27 Mitsubishi Electric Corp 2次元コード読取装置および2次元コード読取方法
CN105027140B (zh) * 2013-01-31 2018-10-09 电装波动株式会社 便携式信息码读取装置
JP6523908B2 (ja) * 2015-03-12 2019-06-05 ワム・システム・デザイン株式会社 コード読取装置、コード読取方法、およびプログラム
US9594936B1 (en) 2015-11-04 2017-03-14 Datalogic Usa, Inc. System and method for improved reading of data from reflective surfaces of electronic devices

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5784102A (en) * 1995-05-15 1998-07-21 Welch Allyn, Inc. Optical reader having improved interactive image sensing and control circuitry
JP2004194172A (ja) * 2002-12-13 2004-07-08 Omron Corp 光学コード読取装置における撮影条件決定方法

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3001304B2 (ja) * 1991-09-27 2000-01-24 オリンパス光学工業株式会社 バーコード読取装置
AU3283597A (en) * 1996-05-06 1997-11-26 Cimatrix Smart progressive-scan charge-coupled device camera
JP2003006568A (ja) * 2001-06-18 2003-01-10 Seiko Epson Corp エリアコード読取装置、及びエリアコード読取方法
US20030156121A1 (en) * 2002-02-19 2003-08-21 Willis Donald Henry Compensation for adjacent pixel interdependence
JP3548783B2 (ja) * 2002-12-10 2004-07-28 オムロン株式会社 光学コード読取方法及び装置

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5784102A (en) * 1995-05-15 1998-07-21 Welch Allyn, Inc. Optical reader having improved interactive image sensing and control circuitry
JP2004194172A (ja) * 2002-12-13 2004-07-08 Omron Corp 光学コード読取装置における撮影条件決定方法

Also Published As

Publication number Publication date
JP2006163858A (ja) 2006-06-22
US20060118629A1 (en) 2006-06-08
US7475822B2 (en) 2009-01-13
DE102005058740A1 (de) 2006-06-14
JP3846501B2 (ja) 2006-11-15

Similar Documents

Publication Publication Date Title
DE102005058740B4 (de) Vorrichtung zum Lesen eines optischen Datencodes
DE69533491T2 (de) Automatische elektrische Kamera für Etikettenbildaufnahme
DE69723799T2 (de) Vorrichtung zur Bildaufnahme und Bildverarbeitung
DE69932250T2 (de) Optische symbolanzeige
DE602005006375T2 (de) Bildaufnahmevorrichtung und Steuerverfahren dafür
DE60209454T2 (de) Bildbearbeitungsvorrichtung und -verfahren
DE69725021T2 (de) Verfahren und system zum darstellen eines objektes oder musters
DE112013000571B4 (de) Verfahren zum Decodieren eines Strichcodes innerhalb eines Bilderzeugungssichtfelds eines Bilderzeugungssystems und Vorrichtung
EP1583022A2 (de) Verfahren und Anordnung zur Aufnahme interessierender Bereiche von beweglichen Objekten
DE602004011145T2 (de) Vorrichtung und Verfahren zum Lesen von optischen Informationen
DE112012004493B4 (de) Steuerungsverfahren für die Farbbeleuchtung zur Verbesserung der Bildqualität in einembildgebenden System
DE202006020599U1 (de) Optische Erfassung von bewegten Objekten und Vorrichtung
DE202012013713U1 (de) Vorrichtung zur Dual-Target-Autobelichtung
DE60223693T2 (de) Standbilderfassungseinrichtung und standbilderfassungsverfahren
DE112015003527T5 (de) System und Verfahren zum Steuern einer Zielbeleuchtung für ein Abbildungs-Lesegerät
DE69814105T2 (de) Verfahren zur automatischen Regulierung der Eigenschaften eines optischen Codelesesystems
DE102010037746A1 (de) Verfahren zum optischen Antasten einer Kante in oder an einem Oberflächenbereich
DE69936607T2 (de) Beurteilungseinheit für ophthalmologisches Gerät
DE102014113487A1 (de) Verfahren und Vorrichtung zum Überprüfen des Erscheinungsbildes eines Objekts
DE60202831T2 (de) Methode zur Prüfung einer gekrümmten Oberfläche und Vorrichtung zur Prüfung einer Leiterplatte
DE10246368B4 (de) Kameramodul und Verfahren zum elektronischen Aufnehmen von Bildern
DE112019002006T5 (de) Dekodieren eines bestimmten strichcodes im sichtfeld eines strichcodelesers
WO2005029052A1 (de) Verfahren und vorrichtung zur inspektion eines wafers
DE10237426B4 (de) Verfahren und Vorrichtung zum Vermessen von Werkzeugen
DE102022109916A1 (de) Systeme und verfahren zur schnellen automatischen einstellung von industriellen festsicht-kameras

Legal Events

Date Code Title Description
OP8 Request for examination as to paragraph 44 patent law
8364 No opposition during term of opposition
R082 Change of representative

Representative=s name: KILIAN KILIAN & PARTNER, DE

R119 Application deemed withdrawn, or ip right lapsed, due to non-payment of renewal fee
R119 Application deemed withdrawn, or ip right lapsed, due to non-payment of renewal fee

Effective date: 20140701