DE202011111120U1 - Ausführbare maschinenlesbare Symbologie - Google Patents

Ausführbare maschinenlesbare Symbologie Download PDF

Info

Publication number
DE202011111120U1
DE202011111120U1 DE202011111120.6U DE202011111120U DE202011111120U1 DE 202011111120 U1 DE202011111120 U1 DE 202011111120U1 DE 202011111120 U DE202011111120 U DE 202011111120U DE 202011111120 U1 DE202011111120 U1 DE 202011111120U1
Authority
DE
Germany
Prior art keywords
encoded
information
instructions
character
characters
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
DE202011111120.6U
Other languages
English (en)
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.)
Metrologic Instruments Inc
Original Assignee
Metrologic Instruments 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 Metrologic Instruments Inc filed Critical Metrologic Instruments Inc
Publication of DE202011111120U1 publication Critical patent/DE202011111120U1/de
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Images

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/10881Methods 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 constructional details of hand-held scanners
    • 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/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/1093Methods 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, after transfer of the image of the data-field to an intermediate store, e.g. storage with cathode ray tube

Landscapes

  • Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Electromagnetism (AREA)
  • Artificial Intelligence (AREA)
  • Toxicology (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Stored Programmes (AREA)
  • Information Transfer Between Computers (AREA)
  • Image Input (AREA)
  • Selective Calling Equipment (AREA)
  • Editing Of Facsimile Originals (AREA)

Abstract

Vorrichtung umfassend:
eine Vielzahl von Beleuchtungsquellen, wobei die Vielzahl von Beleuchtungsquellen so konfiguriert ist, dass sie ein Ziel mit einem Strahl oder einem Muster beleuchten;
einen Bildsensor, der konfiguriert ist, um von dem Ziel reflektiertes Licht in ein Ausgangssignal umzuwandeln, wobei der Bildsensor eine Reihe von Pixeln umfasst, die angepasst sind, um in einem Global-Shutter-Modus zu arbeiten; und
einen Prozessor und einen Speicher, wobei der Speicher von einem Computer codierte Anweisungen enthält, wobei die vom Computer codierten Anweisungen so konfiguriert sind, dass, wenn sie auf dem Prozessor ausgeführt werden, die Vorrichtung veranlassen zum:
Lesen eines ersten informationstragenden Zeichens aus dem Ausgabesignal, wobei das erste informationstragende Zeichen codierte Anweisungen umfasst, wobei zumindest ein Teil der codierten Anweisungen einen ausführbaren Code in Form einer Skriptsprache umfasst;
bewirken, dass die codierten Befehle in dem Speicher gespeichert werden; und Interpretieren der codierten Anweisungen, wobei die codierten Anweisungen bewirken, dass Konfigurationseinstellungen auf der Vorrichtung eingestellt werden.

Description

  • GEBIET DER ERFINDUNG
  • Die vorliegende Erfindung betrifft eine maschinenlesbare Symbologie, und insbesondere eine maschinenlesbare Symbologie mit codierter lauffähiger Software.
  • HINTERGRUND
  • Zeichenlesegeräte (auch bezeichnet als Scanner, Laserscanner, Bildleser, Zeichenlesegeräte, etc.) lesen in der Regel Daten dargestellt durch gedruckte oder angezeigte informationstragende Zeichen, (auch bezeichnet als Symbole, Symbologie, Strichcodes, etc.). Zum Beispiel ist eine Art eines Symbols eine Anordnung von rechteckigen Balken und Zwischenräumen, die auf eine bestimmte Weise angeordnet sind, um Elemente von Daten in maschinenlesbarer Form darzustellen. Zeichenlesegeräte übertragen typischerweise Licht auf ein Symbol und empfangen Licht, das von einem Strichcodesymbol oder- zeichen gestreut oder zurückreflektiert wird. Das empfangene Licht wird von einem Prozessor interpretiert, der eine Signal - und/oder Bildverarbeitung durchführt, um die durch das Symbol repräsentierten Daten zu extrahieren. Zeichenlesegeräte verwenden typischerweise sichtbares Licht oder Infrarotlicht. Laserzeichenlesegeräte verwenden typischerweise transmittiertes Laserlicht.
  • Eindimensionale (1D) Zeichenleser sind gekennzeichnet durch Lesen von Daten, die entlang einer Einzelachse in der Breite von Balken und Spalten codiert sind, sodass solche Symbole durch einen einzigen Scan entlang dieser Achse ausgelesen werden können, vorausgesetzt, dass das Symbol mit einer ausreichend hohen Auflösung entlang dieser Achse abgetastet wird.
  • Um die Codierung größerer Datenmengen in einem einzigen Strichcodesymbol zu ermöglichen, wurde eine Anzahl von 1D gestapelten Strichcodesymbologien entwickelt, die codierte Daten in mehrere Zeilen unterteilen, von denen jede ein entsprechendes 1D-Strichcodemuster enthält, von denen einige oder alle abgetastet und decodiert und dann miteinander verbunden werden müssen, um eine vollständige Nachricht zu bilden. Das Scannen erfordert eine immer noch höhere Auflösung in nur einer Dimension, aber mehrere lineare Scans an unterschiedlichen Positionen auf einer zweiten Abmessung sind zum Lesen des gesamten Symbols erforderlich.
  • Eine Klasse von Strichcodesymbologien, die als zweidimensionale (2D) Matrixsymbologien bekannt sind, wurden entwickelt, die ein bildbasiertes Lesen erfordern und größere Datendichten und Kapazitäten bieten als ID-Symbologien. Die 2D-Matrixcodes codieren Daten als dunkle oder helle Datenelemente in einer gleichmäßigen polygonalen Matrix, begleitet von einem graphischen Sucher, Orientierung und Referenzstrukturen.
  • Anstrengungen in Bezug auf solche Systeme haben zu kontinuierlichen Entwicklungen zur Verbesserung ihrer Vielseitigkeit, Anwendbarkeit und Effizienz geführt.
  • Figurenliste
    • 1 ist ein Blockdiagramm eines beispielhaften Zeichenlesesystems.
    • 2 ist ein vereinfachtes schematisches Blockdiagramm eines beispielhaften Zeichenlesers.
    • 3 ist ein beispielhaftes Flussdiagramm zum Lesen von Zeichen und zum Verarbeiten der darin bereitgestellten Daten.
  • AUSFÜHRLICHE BESCHREIBUNG
  • Es wird nun auf beispielhafte Ausführungsformen Bezug genommen, die in den beigefügten Zeichnungen dargestellt sind. Andere Ausführungsformen können in verschiedenen Formen vorliegen und die beispielhaften Ausführungsformen sollten nicht als auf die hierin dargelegten Ausführungsformen beschränkt ausgelegt werden. Vielmehr werden diese beispielhaften Ausführungsformen detailliert beschrieben, sodass diese Offenbarung gründlich und vollständig sein wird und den Umfang, die Struktur, den Betrieb, die Funktionalität und die potentielle Anwendbarkeit für einen Fachmann vollständig deutlich macht. Soweit möglich werden die gleichen Bezugszeichen durchwegs in den Zeichnungen verwendet und beziehen sich auf die gleichen oder ähnlichen Teile. Der hierin verwendete Begriff „Scan“ oder „Scannen“ bezieht sich auf das Lesen oder Extrahieren von Daten aus informationstragenden Zeichen (oder einem Symbol). Der Begriff Bildgebung, der hier verwendet wird, bezieht sich auf das Aufnehmen oder Erzeugen eines elektronischen Bildes.
  • 1 veranschaulicht eine beispielhafte Konfiguration eines Scansystems, worin eine Vielzahl von Zeichenlesern 112 betrieben und verwendet werden, wo informationstragende Zeichen vorhanden sind. Die Zeichenleser können feststehend oder tragbar sein können entweder Laserzeichenlesegeräte (oder Laserscanner), die transmittiertes Laserlicht verwenden, oder optische Bilderfassungs- und Zeichenlesegeräte, auch bekannt als optische Bilderfassungsgeräte oder optische Zeichenlesegeräte, die Bildaufnahmegeräte zum Extrahieren von Daten aus informationstragenden Zeichen verwenden.
  • Ein Bediener kann einen tragbaren Zeichenleser 112 auf ein Ziel richten, das informationstragende Zeichen, Datenformen, Texte, oder andere Daten zum Sammeln enthält, und eine Taste oder ein Trigger 115 auf dem Zeichenleser betätigen, um den Betrieb des Lesers vollständig oder teilweise zu steuern, beispielsweise zur Aktivierung des Scans informationstragender Zeichen. Ein informationstragendes Zeichen oder eine Datenform kann eine ursprünglich maschinengenerierte Symbologie sein, die auch maschinenlesbar ist, wie z. B. ein 1D-Strichcode, ein 2D-Strichcode ein gestapelter 1D-Strichcode, ein Logo, Glyphen, Farbcodes und dergleichen.
  • Ein beispielhafter Zeichenleser 112 kann ein Mobilgerät sein, wie z.B. ein tragbarer Scanner, ein tragbares Endgerät (PDT), ein elektronischer Organizer (PDA), ein Mobiltelefon, usw. Ein tragbares Endgerät, oder PDT, ist typischerweise eine elektronische Vorrichtung zur Eingabe oder zum Abrufen von Daten über eine drahtlose Übertragung (WLAN oder WWAN) und kann auch als ein Zeichenleser genutzt werden, der in Geschäften, Lagern, Krankenhäusern, oder in einem Bereich zum Zugriff auf eine Datenbank von einem entfernten Ort verwendet wird. Elektronische Organizer (PDA) sind tragbare Vorrichtungen, die typischerweise als persönliche Organizer verwendet werden, und die viele Verwendungsmöglichkeiten haben können, wie z.B. als Rechner, als Uhr und Kalender, zum Spielen von Computerspielen, zum Zugriff auf das Internet, zum Senden und Empfangen von E-Mails, als Radio oder Stereo, zur Videoaufzeichnung, zur Aufzeichnung von Notizen, als Adressbuch und als Tabelle. Ein beispielhafter Zeichenleser kann eine Anzeige 116 aufweisen. Ein beispielhafter Zeichenleser 112 kann eine Anzahl von Teilsystemen innerhalb eines Gehäuses 117 aufweisen, die konfiguriert sind, um tragbar zu sein. Zum Beispiel kann das Lesegerät einen Griffbereich 111 haben.
  • Beispielhafte Zeichenlesegeräte können in Kommunikation (drahtgebunden oder drahtlos) mit einem lokalen Transaktionsverarbeitungssystem 140 sein, wie etwa einer Registrierkasse, Kundenstation oder Mitarbeiterstation oder direkt mit einem lokalen Host/Server 122 oder durch eine Ladestation oder Basisstation 138. Ein beispielhafter lokaler Server 122 oder Zeichenleser 112 kann in Kommunikation mit dem Netzwerk 120 und/oder einem Fern-/Webserver 134 sein.
  • Unter Bezugnahme auf 2, kann ein beispielhafter Zeichenleser 112 eine Anzahl von beispielhaften Teilsystemen enthalten, wie zum Beispiel einen Laser-Scan-Engine 380 (oder Laserscanningsystem) zum Lesen von Zeichen auf einem Ziel T. Das Laserscanningsystem kann eine Lasersteuerung 384 zum Steuern eines Nahlasergenerators 388 zum Erzeugen eines Nahlaserstrahls umfassen, der auf einen Faltungsspiegel 390 gerichtet wird, der dann den Strahl auf einen oszillierenden oder rotierenden Scanspiegel 392 und dann auf ein Ziel T richtet. Das Scanmuster des Nahlasers wird vom Ziel reflektiert und wieder durch den Scanspiegel 392 in einen Empfangsweg umgeleitet mit einem Laserlicht-Bandpassfilter 396, einer Fotodiode 400, einem Verstärker 304 und einem Digitalisierer 408.
  • Laserlicht kann als ein räumlich kohärenter, schmaler Lichtstrahl niedriger Divergenz beschrieben werden.
  • Digitalisierer 408 kann ein von der Fotodiode ausgehendes analoges Signal in ein digitales Signal umwandeln, das das vom Ziel reflektierte Licht darstellt.
  • Beispielhafte Laserscanner verwenden einen Laserstrahl als Lichtquelle und verwenden entweder einen hin- und hergehenden Spiegel oder ein rotierendes Prisma, um den Laserstrahl über die informationstragenden Zeichen hin und her zu scannen. Eine oder mehrere Fotodioden werden verwendet, um die Intensität des von dem Strichcode zurückreflektierten Lichts zu messen. Das zu dem Lesegerät zurückreflektierte Licht wird in seiner Helligkeit durch die informationstragenden Zeichen reguliert und die Empfangsschaltung der Fotodiode wird optimiert, um Signale mit den modulierten Mustern zu erkennen.
  • Ein beispielhafter Fotodetektor oder Fotosensor kann aus einer oder mehreren Fotodioden bestehen, die einfallende Lichtenergie in elektrische Ladung umwandeln, die ein Ausgangssignal darstellt, das von informationstragenden Zeichen reflektiertes Licht repräsentiert. Die Ausgabe des Fotodetektors kann verarbeitet werden, um eine oder mehrere Funktionen oder Algorithmen anzuwenden, um das Signal in geeigneter Weise in einer weiteren nachgelagerten Verarbeitung anzupassen.
  • Das Ausgangssignal des Fotodetektors kann verarbeitet werden, um eine oder mehrere Funktionen oder Algorithmen anzuwenden, um das Signal in geeigneter Weise in einer weiteren nachgelagerten Verarbeitung, einschließlich des Dekodierens von informationstragenden Zeichen, anzupassen.
  • Ein beispielhafter Zeichenleser 112 kann mehrere beispielhafte Teilsysteme enthalten, wie beispielsweise eine oder mehrere optische Bildmotoren (Bilderfassungs- und Zeichenlesesysteme oder Bildleser oder Bildscanvorrichtungen) 610 zum Lesen von Zeichen auf einem Ziel T. Bildmotoren erfassen und lesen Bilder, um informationstragende Zeichen innerhalb der erfassten Bilder zu erkennen und zu decodieren. Die Bilderfassungs- und Zeichenlesesysteme können eine oder mehrere Beleuchtungsquellen(en) 618 zum Beleuchten von informationstragenden Zeichen mit einem Strahl oder Muster von inkohärentem Licht in Form eines Beleuchtungsmusters und einem Bildsensor 626 zum Umwandeln von Licht, das von einem Ziel T mit einem darauf bereitgestellten informationstragenden Zeichen reflektiert wird, in repräsentative Ausgangssignale davon umfassen. Das Ausgangssignal des Bildsensors kann verarbeitet werden unter Verwendung einer oder mehrerer Funktionen oder Algorithmen, um das Signal in geeigneter Weise zur Verwendung in einer weiteren nachgelagerten Verarbeitung, einschließlich des Dekodierens der informationstragenden Zeichen, anzupassen.
  • Ein beispielhafter Bildsensor wandelt Licht oder andere elektromagnetische Energie, die von einem Ziel reflektiert wird, um und liefert ein Ausgangssignal, das dafür repräsentativ ist. Bildsensoren können eine Anordnung von Pixeln sein, die angepasst sind, um in einem globalen Verschluss- oder Vollrahmenverschlussmodus zu arbeiten oder abwechselnd in einem Rollladenmodus zu arbeiten. Es kann ein farbiger oder monochromer 2D-Festkörperbildsensor sein, der implementiert ist in CCD, CMOS, NMOS, PMOS, CID, CLK, rückwärtig beleuchteten Technologien. Der Bildgeber kann entweder ein progressiver oder verschachtelter Bildgeber sein. Der Bildsensor kann eine Anordnung lichtempfindlicher Fotodioden (oder Pixel) enthalten, die einfallende Lichtenergie in elektrische Ladung umwandeln. Viele Festkörperbildsensoren ermöglichen auch die Adressierung von Bereichen eines Vollbildes von Bilddaten.
  • Ein beispielhafter Bildsensor kann einen einfarbigen Bildsensor verwenden, der ein Filterelement enthalten kann, das farbempfindliche Pixelelemente definiert, die auf einer Reihe monochromer Pixel verteilt sind. Der Betrieb des einfarbigen Bildsensors besteht darin, Farbbilder (einfarbig oder Vollfarbe) unter Verwendung zugehöriger optimaler Sensoreinstellungen für Bildaufnahme oder Scannen von Symbologien zu erproben.
  • Beispielhafte einfarbige Bildsensoren sind beschrieben in der U.S.-Patentanmeldung mit der Veröffentlichungsnummer 20060274171 und dem Titel DIGITAL PICTURE TAKING OPTICAL READER HAVING HYBRID MONOCHROME AND COLOR IMAGE SENSOR ARRAY, deren Gesamtheit hierin als Referenz integriert ist.
  • Andere beispielhafte Leser-Teilsysteme oder -Komponenten, die durch das Gehäuse unterstützt werden, können einen oder mehrere lokale oder an Bord befindliche Prozessor(en) 170, lokale Speicher 172, eine Batterie 218, eine Anzeige 116, ein Tastenfeld 214 und ein drahtloses Kommunikationsmodul 180 enthalten. Die Teilsysteme können über einen oder mehrere Bus-168, Datenleitungen oder andere Signal- oder Datenkommunikationsformen kommunizieren. Der Zeichenleser kann in Verbindung mit einem oder mehreren Hostprozessor(en) 118, einem lokalen Host/Server 122, lokalen Speicher 166, Netzwerk 120 oder entfernten Serverhost/Server 134 kommunizieren.
  • Das Kommunikationsmodul 180 kann eine Kommunikationsverbindung vom Bilderfassungsleser 112 zu anderen Zeichenlesern oder zu anderen Systemen, wie zum Beispiel einem Server/entfernten Prozessor 134, bereitstellen.
  • Der Prozessor (die Prozessoren) kann (können) auf dem Gehäuse oder innerhalb des Gehäuses mit anderen Teilsystemen angeordnet sein. Die Einzelheiten der Funktionalität des Prozessors (der Prozessoren) und des Lesers können durch oder basierend auf bestimmten Konfigurationseinstellungen oder Daten bestimmt werden, die in Firmware, einem entfernten oder lokalen Speicher abgespeichert werden können.
  • Ein beispielhafter Prozessor kann eine Anordnung gemischter Signale mit On-Chip-Steuervorrichtungen sein, die entworfen sind, um mehrere herkömmliche MCU-basierte Systemkomponenten durch eine programmierbare Einchip-Vorrichtung zu ersetzen. Es kann konfigurierbare Blöcke von analogen und digitalen logischen sowie programmierbaren Verbindungen enthalten.
  • Die Leser-Teilsysteme in dem Leser können durch eine oder mehrere Bus-168 Datenleitungen oder andere Signal- oder Datenkommunikationsformen verbunden sein. Beispielhafte Formen können ein Inter-IC-Bus, wie etwa eine Zweidraht-Schnittstelle, ein dedizierter Datenbus, eine RS232-Schnittstelle, USB usw., sein.
  • Der Prozessor (die Prozessoren) kann (können) eine vorbestimmte Menge an Speicher zum Speichern von Firmware und Daten enthalten. Die Firmware kann ein Softwareprogramm oder Anweisungen sein, die in den Prozessor (die Prozessoren) eingebettet oder darauf programmiert sind, die die notwendigen Anweisungen bereitstellt, wie der Prozessor (die Prozessoren) arbeitet und mit anderer Hardware kommuniziert. Die Firmware kann in dem Flash-Speicher (ROM) des Prozessors (der Prozessoren) als Binärbilddatei gespeichert werden und kann gelöscht und umgeschrieben werden. Die Firmware kann als „halbpermanent“ betrachtet werden, da sie gleich bleibt, es sei denn, sie wird aktualisiert. Diese Firmwareaktualisierung oder -ladung kann durch einen Gerätetreiber bedient werden.
  • Der Prozessor (die Prozessoren) kann (können) verwendet werden, um eine Anzahl von funktionalen Operationen durchzuführen, die die Durchführung einer Anzahl verwandter Schritte miteinschließen können, deren Einzelheiten durch bestimmte Konfigurationseinstellungen bestimmt werden können, die in Firmware oder Speicher gespeichert sind, der aus irgendeiner Anzahl von Speichertypen wie RAM, ROM, EEPROM usw. sein kann. Zusätzlich können einige Speicherfunktionen in einem Speicher gespeichert werden, der als Teil des Prozessors (der Prozessoren) bereitgestellt ist.
  • Beispielhafte Funktionen des Prozessors (der Prozessoren) können die Steuerung des Betriebs der Scan-Engine, Decodierungsfunktionen und Bedienerschnittstellenfunktionen sein. Betriebssoftware kann verwendet werden, um den Prozessor (die Prozessoren) für solche Funktionen scheinbar gleichzeitig oder in einer Multitasking-Rolle zu betreiben. Eine beispielhafte Betriebssoftwarearchitektur eines Bildlesers kann in Prozesse oder Ausführungsschritte aufgeteilt werden.
  • Prozessor(en), Speicher und die zugeordnete Schaltung, die das beispielhafte Scannen und die Decodierungsfunktionen durchführen oder kontrollieren, können sich in der Scan-Engine oder auf den mit diesem verbundenen Leiterplatten befinden, die innerhalb des Gehäuses des Lesers liegen. Decodierung ist ein Begriff zur Beschreibung der Interpretation eines maschinenlesbaren Codes, der im Ausgangssignal des Fotodetektors enthalten ist.
  • Eine beispielhafte Funktion des Prozessors (der Prozessoren) kann darin bestehen, maschinenlesbare Symbologie zu decodieren, die innerhalb des Ziels oder des aufgenommenen Bildes bereitgestellt wird. Eindimensionale Symbologien können sehr große bis kleinste, Code 128, Interleaved 2v of 5, Codebar, Code 93, Code 11, Code 39, UPC, EAN, MSI oder andere 1-D-Symbologien umfassen. Gestapelte 1D-Symbologien können PDF, Code 16K, Code 49 oder andere gestapelte ID-Symbologien einschließen. 2D-Symbologien können Aztec, Datamatrix, Maxicode, QR-Code oder andere 2D-Symbologien umfassen.
  • Der Betrieb der Decodierung, die in einer wählbaren Beziehung zwischen Nutzer oder Fabrik zu einer Scan-Routine ausgeführt werden kann, kann durch Parameter oder Konfigurationseinstellungen bestimmt werden. Kombinationen von Scan- und Decodierungsparametern definieren zusammen die Beziehung des Scan-Decodierungsbetriebs oder -modi, die der Leser verwenden wird. Zwei beispielhafte Betriebsmodi können kontinuierlich oder diskontinuierlich sein. Bei dem kontinuierlichen Betriebsmodus (auch bezeichnet als kontinuierlicher Modus, kontinuierlicher Streaming-Modus, Streaming-Modus, „on the fly“-Scanmodus, Präsentationsmodus) wird der Leser stationär gehalten und Ziele (wie Symbole auf Verpackungen) am Leser vorbeigezogen. In dem kontinuierlichen Betriebsmodus nimmt der Leser fortlaufende Scans nacheinander (seriell) vor und decodiert oder versucht kontinuierlich, einige oder alle abgetasteten Ziele zu decodieren. Der diskontinuierliche Betriebsmodus ist ein Modus, bei dem Scannen und/oder Decodierung mit einem Aktivierungsvorgang eingeleitet werden, wie das Betätigen eines Auslösers 115, oder der Empfang eines elektronischen Freigabesignals und das Scannen und/oder die Decodierung werden beendet mit einem Zeitablauf, oder einem erfolgreichen Lesen. Eine beispielhafte Verwendung des Lesers im diskontinuierlichen Betriebsmodus geschieht über eine tragbare Bedienung. Das Decodieren stoppt, sobald der Zeichenleser nicht länger getriggert wird, die Zeit des Lesers abgelaufen ist oder ein erfolgreiches Lesen erfolgt ist. Der diskontinuierliche Betriebsmodus wird typischerweise eingeleitet, weil der Bediener weiß, dass ein Symbol vorhanden ist.
  • Beispielhafte Zeichenleser können Speicher oder Firmware verwenden, um bestimmte Leseeinstellungen oder Lesekonfigurationseinstellungen zu speichern. Beispielhafte Konfigurationseinstellungen können die Auswahl des Scanabstands, Auslösermodusfunktionalität, vordefinierte Strichcodedaten auf der Grundlage des Scaneingangs, kontinuierlicher Scanbetriebsmodus, diskontinuierlicher Scanbetriebsmodus oder -routine, Dekodierungsmodus oder -routine, I/O-Konfigurationen, Symbologieeinsatz, Ausgangsschnittstellenfunktionalität, minimale/maximale Zeichenlänge der Symbologie, Auswahl der Scan-Engine, Beleuchtungsfunktionalität, Einstellungen die den funktionellen Betrieb des/der Prozessor(en) beeinflussen, welche Codes aktiviert werden zur Verarbeitung, zur Zielgerätbetriebnahme, Engine-Orientierung, Beleuchtung, Fotosensorfunktionalität, Softwaresteuerung, Verkaufsverfolgung oder Gewährleistungsverfolgung, Leserfähigkeiten, usw. sein.
  • Leser und ein Host-System können mit der Fähigkeit ausgestattet sein, Daten, wie Konfigurationseinstellungen oder Firmware, untereinander automatisch abzufragen und zu kommunizieren. Aktualisieren von Firmware vom Host zum Leser und Duplizieren der Konfigurationseinstellungen können ohne menschlichen Eingriff durchgeführt werden, um sicherzustellen, dass die Leser mit derselben Revision arbeiten und die gleichen Konfigurationseinstellungen haben, was die Frustration von Nutzern und Ausfallzeiten reduziert und die Datensicherheit und die Effizienz erhöht.
  • Leser können mittels Strichcodemenüs oder über eine serielle Verbindung unter Verwendung serieller Befehle konfiguriert werden. Eine graphische Benutzerschnittstelle (GUI) kann eingesetzt werden zum Erzeugen oder Lesen serieller Befehle, wie beispielsweise visueller Menüs oder einem ähnlichen Produkt. Dies kann lokal oder aus der Ferne geschehen, indem der Leser entweder direkt oder über ein Netzwerk (wie das Internet) mit einem entfernten Computer verbunden wird und der entfernte Computer Software-Upgrades bereitstellt.
  • Eine beispielhafte Ausführungsform zum Nachrüsten kann darin bestehen, ein PC-basiertes Softwarewerkzeug bereitzustellen, um die nicht voreingestellten Konfigurationseinstellungen von einer Ziellesevorrichtung (derjenigen, die ersetzt wird) durch eine serielle Kommunikation auszulesen und dann dieselben oder äquivalente Einstellungen in die Ersatzausrüstung einzublenden. Dies kann als ein direktes Konfigurations-Mapping-Verfahren betrachtet werden, das heißt, Lesen der Konfigurationseinstellungen auf einer (alten) Vorrichtung A und Einblenden derselben in eine (neue) Vorrichtung B.
  • Beispielhafte Konfigurierungsverfahren können eine Folge von Schritten oder Aktionen sein, die zu einem gewünschten Ergebnis führen, und können als Software implementiert sein. Auch wenn es als günstig erscheint über eine solche Software zu sprechen als würde sie durch ein einzelnes Programm verkörpert werden, die meisten Implementierungen verteilen die beschriebenen Funktionen unter diskreten (und einigen nicht so diskreten) Elementen von Software. Diese Elemente werden oft so beschrieben, dass solche Begriffe der Technik als „Programme“, „Objekte“, „Funktionen“ verwendet werden.
  • „Subroutinen“, „Bibliotheken“, „dlls“, „API“, und „Verfahren“, Während einer oder mehrere dieser Begriffe Anklang in der vorliegenden Beschreibung finden, gibt es keine Beschränkung der Erfindung auf die beschriebenen Konfigurationen.
  • Im Allgemeinen erfordern die Sequenzen von Schritten in den vorliegenden Verfahren eine physische Verarbeitung physischer Größen. Diese Größen nehmen die Form optischer, elektrischer oder magnetischer Signale an, die gespeichert, übertragen, kombiniert, verglichen oder anderweitig verarbeitet werden können. Diese Signale werden bezeichnet als „Bit“, „Werte“, „Elemente“, „Symbole“, „Zeichen“, „Bilder“, „Begriffe“, „Zahlen“, oder dergleichen.
  • Es gibt eine Vielzahl von Plattformen und Sprachen zum Erzeugen von Software. Beispielhafte Ausführungsformen können implementiert werden unter Verwendung von Programmierungen wie C, VBSCRIPT (R), JAMA(TM), PYTHON(TM), usw. Die Wahl der Plattform und der Sprache wird oft durch die Eigenschaften des tatsächlichen Systems aufgebaut, sodass das, was für eine Art von System funktionieren kann, nicht effizient für ein anderes System ist.
  • In einer beispielhaften Ausführungsform können Strichcodes verwendet werden zum Codieren, Transportieren und Ausführen der Softwarekomponenten. Eine ausführbare Datei, ein ausführbarer Code oder ein ausführbares Programm mit Skripting-Sprache, Skriptsprache, Erweiterungssprache, Befehlscodes, kompiliertem Objektcode, was in der Lage ist, direkt auf einer realen oder virtuellen Rechnerplattform ausgeführt zu werden, kann in eine Form zur Kodierung als Strichcode oder informationstragendes Zeichen übertragen werden, worauf sich hierin als „Bildcodes“ bezogen wird. Der Bildcode kann in einer realen oder virtuellen Bildcodemaschine gelesen und ausgeführt werden.
  • Eine beispielhafte Sprache zum Übersetzen in einen Bildcode kann ein PYTHON(TM)-Skript oder die Bytecodes von JAVA(TM) sein.
  • Ein Operationscode ist der Teil eines Maschinensprachbefehls, der die durchzuführende Operation spezifiziert. Ihre Spezifikation und ihr Format werden in der Befehlssatzarchitektur eines Prozessors (der eine allgemeine CPU oder eine spezialisiertere Verarbeitungseinheit sein kann) ausgelegt. Abgesehen von dem Operationscode selbst weist ein Befehl normalerweise auch einen oder mehrere Spezifizierer für Operanden (d.h. Daten) auf, auf die der Vorgang wirken sollte, obwohl einige Operationen implizite Operanden oder überhaupt keine haben können. Es gibt Befehlssätze mit nahezu homogenen Feldern zu Operationscodespezifizierem und Operandenspezifizierem, sowie andere mit einer komplizierteren, in der Länge variierenden Struktur.
  • Abhängig von der Architektur können die Operanden Registerwerte, gestapelte Werte, andere Speicherwerte, I/O-Ports usw. sein, die unter Verwendung von mehr oder weniger komplexen Adressierungsmodi spezifiziert und zugänglich sind. Die Arten von Operationen umfassen Arithmetik, das Kopieren der Daten, logische Operationen, und die Programmsteuerung sowie spezielle Befehle (wie CPUID und andere).
  • Operationscodes können auch in sogenannten Bytecodes und anderen Darstellungen gefunden werden, die eher für einen Software-Interpreter als für eine Hardware-Vorrichtung vorgesehen sind. Diese softwarebasierten Befehlssätze verwenden oft Datentypen und Operationen mit etwas höherem Niveau als die meisten Hardware-Gegenstücke, sind aber dennoch in ähnlicher Richtung aufgebaut. Beispiele umfassen die virtuelle Maschine Java (JVM(TM)) der JAVA(TM) Programmiersprache, den Bytecode, der in GNU Emacs für kompilierte LISP Codes verwendet wird, NET Common Intermediate Language, und andere.
  • Die Anordnungssprache ist eine Programmiersprache niedrigen Pegels, die Mnemotechnik, Befehle und Operanden verwendet, um Maschinencode darzustellen. Dies verbessert die Lesbarkeit, während dennoch eine präzise Steuerung der Maschinenbefehle gegeben ist. Bei der Programmierung werden heutzutage hauptsächlich Programmiersprachen auf hoher Ebene verwendet, die in der Regel einfacher zu lesen und zu schreiben sind. Diese Sprachen müssen erstellt werden (übersetzt in Maschinensprache), oder durch andere kompilierte Programme laufen.
  • Eine ausführbare Datei veranlasst einen Computer, eine Steuerung oder Prozessor zur Durchführung der angegebenen Aufgaben entsprechend codierter Anweisungen durchzuführen, im Gegensatz zu einer Datei, die durch ein Programm analysiert werden muss, um sinnvoll zu sein. Diese Anweisungen sind traditionell Maschinencodeanweisungen für eine physische CPU. Jedoch kann auch eine Datei, die Anweisungen (wie z. B. Bytecode) für einen Software-Interpreter enthält, als ausführbar betrachtet werden.
  • Ein Computerprogramm (auch ein Softwareprogramm oder nur ein Programm) ist eine Sequenz von Befehlen, die geschrieben wurden, um eine spezifizierte Aufgabe für einen Computer auszuführen. Ein Computer erfordert Programme, um zu funktionieren, und führt in der Regel die Befehle des Programms in einem Prozessor aus. Das Programm weist eine ausführbare Form auf, die der Computer direkt verwenden kann, um die Befehle auszuführen.
  • Interpretierte Computerprogramme in einer Charge oder interaktiver Sitzung sind entweder decodiert und dann sofort ausgeführt oder werden in einige effiziente Zwischendarstellungen für zukünftige Ausführung decodiert BASIC, PERL und PYTHON(TM) sind Beispiele von unmittelbar ausgeführten Computerprogrammen. Alternativ werden JAVA(TM)-Computerprogramme zuvor kompiliert und als ein maschinenunabhängiger Code gespeichert, der Bytecode genannt wird. Der Bytecode wird dann auf Anforderung eines Interpreters ausgeführt, der als virtuelle Maschine bezeichnet wird.
  • Die Abbildung zwischen Nachrichten und Strichcodes wird Symbologie genannt. Die Spezifikation einer Symbologie umfasst die Kodierung der Zeichen der Nachricht sowie der Start- und Stoppmarkierungen in dunklen und weißen Feldern, die Größe von Ruhezonen, die vor und nach dem Strichcode erforderlich sind, sowie die Berechnung von Prüfsummen.
  • In einer beispielhaften Ausführungsform wird die Anwendungssoftware in den codierten Bildcode übertragen. Eine beispielhafte Software zum Übertragen in einen Bildcode kann eine tragbare Software sein. Tragbare Software ist eine Klasse von Software, die geeignet ist zur Verwendung in tragbaren Vorrichtungen, wie zum Beispiel einem PDA oder PDT. Die tragbare Software erfordert zur Ausführung keine formale Installation auf dem permanenten Speicher einer tragbaren Vorrichtung und kann auf einer Vielzahl von Vorrichtungen genutzt werden. Einstellungen können mit der Software gespeichert und getragen werden. Die tragbare Software kann einen Zero-Footprint (oder einen Fast-Zero-Footprint) auf der Vorrichtung, auf der sie nach der Nutzung läuft, hinterlassen (d.h. temporäre Dateien/Registereinstellungen werden entfernt, wenn das Programm beendet wird, und Dateien, die vom Benutzer erstellt werden, können direkt auf dieselben Wechseldatenträger gespeichert werden, auf denen die Anwendung gespeichert ist).
  • In einer beispielhaften Ausführungsform können die ausführbaren Bildercodes auf gedrucktes Material gedruckt werden, wie zum Beispiel Papier, Zeitungen, Zeitschriften, Reklametafeln, Bücher, Verpackungsmaterialien, usw.
  • In einer beispielhaften Ausführungsform können die ausführbaren Bildercodes auf einer Anzeige, wie einem Computermonitor, PDA-Anzeige, PDT-Anzeige, Mobiltelefon-Display, Fernseher, usw., angezeigt werden.
  • Beispielhafte Strichcodes können durch einen in der Hand gehaltenen optischen Zeichenleser abgetastet werden und der Inhalt der Zeichen, die Bildercodes oder Strichcodes würden dann als Anwendung auf der Vorrichtung installiert werden.
  • Um die Kodierung größerer Datenmengen in einem einzigen Strichcodesymbol zu ermöglichen, wurde eine Anzahl von gestapelten 1D-Strichcodesymbologien entwickelt, die codierte Daten in mehrere Zeilen unterteilen, von denen jede ein entsprechendes 1D-Strichcodemuster enthält, von denen alle oder fast alle abgetastet und decodiert werden müssen und dann miteinander verbunden werden müssen, um eine vollständige Anwendung zu bilden. Scannen erfordert immer noch eine relativ hohe Auflösung in nur einer Dimension, aber mehrere lineare Scans sind erforderlich, um das gesamte Symbol zu lesen.
  • In bestimmten Situationen könnte ein einzelnes gestapeltes 1D-Symbol oder ein einzelnes 2D-Symbol nicht betriebsfähig sein, um genügend Informationen für eine ausführbare Anwendung bereitzustellen. Die gewünschte Anwendung kann unter Verwendung eines strukturierten Append-Merkmals in mehrere maschinenlesbare Strichcodes codiert werden. Ein strukturiertes Append-Merkmal ist eine Information, die die gelesenen Daten von eines Symbols beendet, was es erlaubt, dass jedes Symbol mit einem „Symbol M von N“-Indikator markiert wird, sodass ein Leser diese Symbole in jeder beliebigen Reihenfolge sehen kann und die ursprüngliche Nachricht wiederherstellen kann. Jedes dieser Symbole kann als eine Bitmap realisiert werden, die dann als Rahmen einer Bilddatei eines animierten Grafik Interchange Formats GIF realisiert wird, die auf einem Display oder einer grafischen Benutzeroberfläche (GUI) angezeigt wird, um von einem Zeichenleser gelesen zu werden. Das animierte GIF kann als eine Serie oder eine Vielzahl von informationstragenden Zeichen betrachtet werden, die nacheinander (in einer Serie oder der Reihe nach) auf einer Anzeige angezeigt werden. Der Zeichenleser liest und decodiert die Vielzahl von Zeichen. Die Dauer, um jeden Rahmen zu zeigen, kann in Abhängigkeit von der Geschwindigkeit des Lesers eingestellt werden und kann zum Beispiel ein Zeitrahmen von 750ms sein. Der GIF kann so eingestellt werden, dass er in einer Schleife läuft oder sich wiederholt. In einem typischen Lesevorgang kann der Leser in einem kontinuierlichen Modus zur Erfassung jedes Symbols und zur Ausgabe der kombinierten Nachricht nach der Schleife durch die angezeigten Bilder betrieben werden. Wenn der Leser ein oder mehrere Symbole verfehlt, kann er sie auf einer nachfolgenden Schleife lesen. Andere Dateiformate von Animationen, wie Microsoft Windows Animated Cursor (ANI), FLC, Multi-image Network Graphics (MNG), Flash (SWF), oder andere können verwendet werden.
  • Dieser Vorgang kann als Zeitmodulation beschrieben werden, bei der die Synchronisation durch den strukturierten Append-Mechanismus des maschinenlesbaren Codes abgewickelt wird und die Anzeige durch das Standard-GIF-Format gehandhabt wird, sodass sie für eine große Vielfalt von Vorrichtungen mit Miniaturanzeigen zugänglich ist. Unterschiedliche Typen von Zeichen können verwendet werden, wie zum Beispiel Aztec Code, der ein Findermuster in der Mitte des Symbols hat. Wenn die Anzeige ist glänzend, wie zum Beispiel auf einem Mobiltelefon ist, kann das Suchmuster entfernt von dem glänzend beschichteten Einfassungsbereich sein. Der Aztec Code bietet ein strukturiertes Append-Merkmal (structured append), das ermöglicht, dass mehrere Symbole in einer vorbestimmten Reihenfolge angehängt werden, um eine größere Anzahl von Datenbytes zu kommunizieren. In dieser Anwendung können mehrere Symbole des Aztec Codes in einem animierten GIF oder anderen Dateiformaten von Animationstypen kombiniert werden. Während die Animation abspielt, wird die Anzeige mit einer laufenden Schleife mehrerer Aztec Codesymbole aktualisiert, die eines nach dem anderen in einer kontinuierlichen Weise gezeigt werden. Ein Leser prüft die Anzeige und erfasst alle Symbole im Zeitverlauf und gibt die größere Datennachricht aus. Auf diese Weise kann eine größere Anzahl von Datenbytes kommuniziert werden, während die Leichtigkeit des Lesens aufrechterhalten wird. GIF-Dateien können aufgrund ihres standardisierten Formats auf vielen verschiedenen Arten von Anzeigen angezeigt werden.
  • Die ausgegebene Anwendung ist „Kombination“ einer Vielzahl von decodierten informationstragenden Zeichen. Mit anderen Worten wird eine Vielzahl „verbundener“ Strichcodes gelesen und decodiert. Die decodierte Information wird durch eine Steuerung in eine umfassende Anwendung kombiniert. Die Steuerung erkennt, dass die Strichcodes mit spezifischen Informationen verbunden werden, die innerhalb jedes der verbundenen Strichcodes bereitgestellt werden.
  • Andere beispielhafte Symbologie kann eine Datenmatrix oder ein QR-Code sein. Die X-Dimension kann so gewählt werden, dass sie ein ganzzahliges Vielfaches ist von den „Punkten“ oder „Pixeln“ der Anzeige Zum Beispiel können drei mal drei Pixel für jedes Quadratmodul in dem Symbol verwendet werden. Größere X-Dimensionen führen zu Codes, die einfacher zu verwenden sind, aber es können weniger Datenbytes codiert werden.
  • 3 ist ein Flussdiagramm eines beispielhaften Verfahrens zum Betreiben eines Zeichenlesers, wobei ein Leser eine Symbologie in Schritt S510 abstempelt. In einem Schritt S514 wird eine Abfrage vorgenommen, ob eine erfolgreiche Decodierung stattgefunden hat. Falls nein, wird in einem Schritt 518 der schlechte Lesezähler inkrementiert. Eine Abfrage wird in einem Schritt 524 durchgeführt, wenn Zähler=N? Wenn ja, werden Änderung an den Konfigurationseinstellungen in einem Schritt 528 vorgenommen und schlechte Lesezähler zurückgesetzt, die schlechten Lesezähler werden in einem Schritt 532 zurückgesetzt und ein weiterer Scan folgt in Schritt 510.
  • In einem beispielhaften Zeichenlesevorgang wird ein Zeichen gelesen. Die Daten werden geprüft, um festzustellen, ob die Daten in den Zeichen zeigen, ob es mit anderen Zeichen in Bezug steht. Falls nein, werden die Daten von den Zeichen verarbeitet. Wenn ja, dann wird ein anderes Zeichen gelesen. Die wiedergewonnenen Daten werden dann geprüft, um zu bestimmen, ob die Daten in den Zeichen anzeigen, ob sie sich auf andere Zeichen beziehen. Wenn nein, dann werden die Daten von allen gelesenen Zeichen, die in Beziehung stehen, kombiniert. Wenn ja, dann wird eine Bestimmung vorgenommen, ob die Daten von den letzten gelesenen Zeichen anzeigen, dass es das letzte der verbundenen Zeichen ist. Wenn ja, dann werden die Daten von allen gelesenen Zeichen, die in Beziehung stehen, kombiniert. Wenn nein, dann wird ein anderes Zeichen gelesen. Nachdem Daten von allen gelesenen Zeichen, die in Beziehung stehen, kombiniert sind, wird bestimmt, ob es fehlende Daten aus den bereits kombinierten Daten gibt. Wenn ja, dann wird ein anderes Zeichen gelesen. Wenn nicht, dann werden die Daten von den gelesenen Zeichen durch eine Steuerung oder die Hostvorrichtung weiterverarbeitet.
  • In einer beispielhaften Ausführungsform verwendet ein Kunde eine Steuerung, wie beispielsweise einen PC im Internet, um auf einen Webserver oder Steuerung eines Providers zuzugreifen, um eine ausführbare Anwendung von einem Anbieter fernzuordern. Der Anbieter sendet oder kommuniziert einen Strichcode an eine Anzeigeplattform, wie zum Beispiel ein Mobiltelefon, das dem Kunden gehört, wobei der Strichcode das bestellte Produkt repräsentiert. Der Anbieter kann auch Authentifizierungsdaten an den Kunden zur Verwendung als Authentifizierungsprozess senden, wenn der Strichcode angezeigt wird.
  • Der Kunde zeigt einem optischen Zeichenleser den Strichcode an, der den Strichcode scannt, um die in dem Strichcode codierte Anwendung in den Zeichenleser zu laden.
  • Viele relativ einfach zu lesende Zeichen können in der vorliegenden beispielhaften Erfindung verwendet werden, um ein Datenpaket oder eine Nachricht zu erzeugen, die mehr Informationen enthält, als es ansonsten in einem singulären Zeichen praktisch oder möglich wäre. Das Datenpaket oder die Nachricht kann viele Dinge darstellen.
  • Es versteht sich, dass die hier beschriebenen Verfahren nicht auf die Ausführung als Software auf einem Computer oder DSP (Digital Signal Processor) beschränkt sind, sondern auch in einem Hardware-Prozessor implementiert sein können. Zum Beispiel kann das Verfahren mit HDL (Hardware-Designsprache) in ein ASIC implementiert werden.
  • Es versteht sich, dass die Programme, Prozesse, Verfahren und die hier beschriebene Vorrichtung nicht verwandt sind oder auf irgendeinen speziellen Typ von Computer oder Netzwerkvorrichtung (Hardware oder Software) beschränkt sind. Verschiedene Arten von allgemeinen oder spezialisierten Computern können verwendet werden mit oder um Operationen in Übereinstimmung mit den Lehren hierin beschrieben auszuführen. Während die verschiedenen Elemente der bevorzugten Ausführungsformen als in Software implementiert beschrieben worden sind, können in anderen Ausführungsformen Implementierungen von Hardware oder Firmware alternativ verwendet werden, und umgekehrt. Die dargestellten Ausführungsformen sind lediglich beispielhaft und sollten nicht als den Schutzumfang der vorliegenden Erfindung einschränkend gesehen werden. Außer wenn die Anmelder sich ausdrücklich von jeglichen Gegenständen innerhalb dieser Anwendung distanziert haben, wird keine der bestimmten Ausführungsform oder Gegenstände als verleugnet angesehen.
  • Ausführungsformen umfassen die folgenden Beispiele:
    • Beispiel 1. Verfahren zum Betreiben eines Zeichenlesers, der umfasst: Scannen mindestens eines informationstragenden Zeichens, wobei das Zeichen ein codiertes ausführbares Softwareprogramm darstellt; das Speichern der codierten ausführbaren Software in einem Speicher; und, die Ausführung des codierten ausführbaren Softwareprogramms
    • Beispiel 2. Ein Verfahren in Übereinstimmung mit Beispiel 1, wobei das ausführbare Softwareprogramm mindestens eines des Folgenden umfasst: Skripting-Sprache, Skriptsprache, Spracherweiterung, Operationscodes und einen kompilierten Objektcode, der in der Lage ist, direkt auf einer realen oder virtuellen Computerplattform ausgeführt zu werden.
    • Beispiel 3. Ein Verfahren in Übereinstimmung mit Beispiel 1, wobei das ausführbare Softwareprogramme gedruckt ist oder auf zumindest einem der folgenden angezeigt ist: Papier; Zeitung; Zeitschrift; Werbefläche; Buch; Verpackung; eine Laptopanzeige; Fernseher; Computermonitor und Anzeige einer mobilen Vorrichtung.
    • Beispiel 4. Ein Verfahren in Übereinstimmung mit Beispiel 1, wobei die Ausführung auf dem Zeichenleser ausgeführt wird.
    • Beispiel 5. Verfahren zum Betreiben eines Zeichenlesers, das umfasst: Lesen einer Vielzahl von Zeichen, wobei mindestens zwei der Zeichen einen Teil eines ausführbaren Softwareprogramms codiert haben; Herstellen einer Beziehung zwischen Daten, die in der Vielzahl von Zeichen vorgesehen sind, die ein codiertes ausführbares Softwareprogramm aufweisen, das zumindest einen Teil der Daten verwendet, die in jedem der Vielzahl von informationsdatentragenden Zeichen vorgesehen sind; Verwenden der festgelegten Beziehung, um ein zusammengesetztes Softwareprogramm aus einer Kombination der angezeigten Zeichen zu erzeugen; und, den Betrieb des zusammengesetzten Softwareprogramms.
    • Beispiel 6. Ein Verfahren in Übereinstimmung mit Beispiel 5, wobei der Teil der Daten ein strukturiertes Append-Merkmal eines 2D-Codes umfasst.
    • Beispiel 7. Verfahren in Übereinstimmung mit Beispiel 5, wobei die informationsdatentragenden Zeichen ein animiertes Formatsymbol sind.
    • Beispiel 8. Ein Verfahren in Übereinstimmung mit Beispiel 5, wobei die informationsdatentragenden Zeichen mindestens eine der folgenden Dateiformen sind: GIF, ANI, FLC, FLI, MNG und SWF.
    • Beispiel 9. Ein Verfahren in Übereinstimmung mit Beispiel 5, wobei die Anzeige zumindest eines der folgenden ist: ein Mobiltelefon; ein tragbares Datenendgerät (PDT) und ein persönlicher digitaler Assistent (PDA).
    • Beispiel 10. Ein Verfahren in Übereinstimmung mit Beispiel 5, wobei der Teil der Daten einen Indikator der Zeichen M von N enthält.
    • Beispiel 11. Ein Verfahren in Übereinstimmung mit Beispiel 5, wobei die informationsdatentragenden Zeichen aus einer Bitmap als ein Rahmen eines animierten Formats des Symbols realisiert sind.
    • Beispiel 12. Ein Verfahren in Übereinstimmung mit Beispiel 5, wobei das Lesen in einem kontinuierlichen Modus zur Erfassung jedes Zeichens durchgeführt wird und die Zeichen nach der Schleife durch die Vielzahl von Zeichen kombiniert werden.
    • Beispiel 13. Ein Zeichenleser, umfassend: einen Zeichenleser zum Lesen von mindestens einem Zeichen, wobei das Zeichen ein codiertes ausführbares Softwareprogramm aufweist; einen Speicher zum Speichern eines codierten ausführbaren Softwareprogramms; und, einen Prozessor zum Ausführen des codierten ausführbaren Softwareprogramms.
    • Beispiel 14. Ein Zeichenlesesystem in Übereinstimmung mit Beispiel 13, wobei das ausführbare Softwareprogramm mindestens eines des Folgenden umfasst: Skripting-Sprache, Skriptsprache, Spracherweiterung, Operationscodes und einen kompilierten Objektcode, der in der Lage ist, direkt auf einer realen oder virtuellen Computerplattform ausgeführt zu werden.
    • Beispiel 15. Ein Zeichenlesersystem in Übereinstimmung mit Beispiel 13, wobei das ausführbare Softwareprogramme gedruckt ist oder auf zumindest einem der folgenden angezeigt ist: Papier; Zeitung; Zeitschrift; Werbefläche; Buch; Verpackung; Laptopdisplay; Fernseher; Computermonitor und Anzeige einer mobilen Vorrichtung.
    1. 1. Vorrichtung, umfassend:
      • einen Prozessor und einen Speicher, wobei der Speicher von einem Computer codierte Befehle enthält, wobei die vom Computer codierten Anweisungen so konfiguriert sind, dass, wenn sie auf dem Prozessor ausgeführt werden, die Vorrichtung veranlassen zum:
        • bewirken, dass ein erstes informationstragendes Zeichen gelesen wird, wobei das erste informationstragende Zeichen ein ausgewähltes ausführbares Merkmal darstellt, das von einem Anbieter empfangen wird, und wobei das erste informationstragende Zeichen codierte Anweisungen umfasst, die Konfigurationseinstellungen für den Zeichenleser enthalten;
        • bewirken, dass die codierten Befehle in dem Speicher gespeichert werden; und die codierten Anweisungen auf dem Zeichenleser auszuführen, wobei die codierten Anweisungen bewirken, dass die Konfigurationseinstellungen auf der Vorrichtung eingestellt werden.
    2. 2. Vorrichtung von Anspruch 1, wobei die vom Computer codierten Anweisungen konfiguriert sind, wenn sie durch den Prozessor ausgeführt werden, weiter die Vorrichtung veranlassen zu:
      • bewirken, dass ein zweites informationstragendes Zeichen gelesen wird, wobei das zweite informationstragende Zeichen codierte Anweisungen umfasst, die Konfigurationseinstellungen für den Zeichenleser enthalten;
      • bewirken, dass eine Beziehung von Daten, die in den ersten informationstragenden Zeichen und den zweiten informationstragenden Zeichen vorgesehen sind, ermittelt wird;
      • die hergestellte Beziehung zu verwenden, um zusammengesetzte codierte Befehle zu erzeugen; und Ausführen der zusammengesetzten codierten Befehle auf dem Zeichenleser.
    3. 3. Vorrichtung nach einem der Ansprüche 1 oder 2, wobei zumindest eines der ersten informationstragenden Zeichen und der zweiten informationstragenden Zeichen ein strukturiertes Append umfassen.
    4. 4. Vorrichtung nach Anspruch 3, wobei die codierte Information eine Softwareanwendung ist.
    5. 5. Vorrichtung von Anspruch 4, wobei die codierten Anweisungen zumindest eines des Folgenden umfasst: Skripting-Sprache, Skriptsprache, Spracherweiterung, Bytecodes, Operationscodes und einen kompilierten Objektcode, der in der Lage ist, direkt auf einer realen oder virtuellen Computerplattform ausgeführt zu werden.
    6. 6. Vorrichtung nach einem der Ansprüche 1 - 5, wobei die Konfigurationseinstellungen zumindest eines aus der Gruppe von Scanabstand, Auslösemodusfunktionalität, Scanmodus, Decodierungsmodus, Symbologieermöglichung, Ausgabeschnittstellenfunktionalität, Min/Max-Symbologiezeichenlängen, Scan-Engine-Auswahl und Beleuchtungsfunktionalität einschließen.
    7. 7. Vorrichtung nach einem der Ansprüche 1 - 6, wobei die ausgewählte ausführbare Datei von dem Anbieter erzeugt wird in Antwort auf eine Bestellung durch einen Kunden.
    8. 8. Vorrichtung nach einem der Ansprüche 1 - 7, die weiter einen Bildsensor aufweist, der eine Reihe von Pixeln zum Betreiben in einem globalen Shutter-Modus umfasst.
    9. 9. Vorrichtung nach einem der Ansprüche 1 - 7, die weiter einen Bildsensor aufweist, der eine Reihe von Pixeln umfasst, die angepasst sind, um in einem Rolling-Shutter-Modus zu arbeiten.
    10. 10. Vorrichtung nach einem der Ansprüche 1 - 9, wobei das informationstragende Zeichen mindestens einen 1D-Strichcode, 2D-Strichcode, einen gestapelten 1D-Strichcode, ein Logo, eine Glyphe und einen Farbcode umfasst.
    11. 11. Vorrichtung nach einem der Ansprüche 1-10, die weiter eine Vielzahl von Beleuchtungsquellen umfasst, wobei die Vielzahl von Beleuchtungsquellen das Ziel mit mindestens einem Strahl oder einem Muster beleuchtet.
    12. 12. Vorrichtung nach einem der Ansprüche1-11, wobei die ausgewählte ausführbare Datei mindestens eine erste und eine zweite Konfigurationseinstellung umfasst.

Claims (7)

  1. Vorrichtung umfassend: eine Vielzahl von Beleuchtungsquellen, wobei die Vielzahl von Beleuchtungsquellen so konfiguriert ist, dass sie ein Ziel mit einem Strahl oder einem Muster beleuchten; einen Bildsensor, der konfiguriert ist, um von dem Ziel reflektiertes Licht in ein Ausgangssignal umzuwandeln, wobei der Bildsensor eine Reihe von Pixeln umfasst, die angepasst sind, um in einem Global-Shutter-Modus zu arbeiten; und einen Prozessor und einen Speicher, wobei der Speicher von einem Computer codierte Anweisungen enthält, wobei die vom Computer codierten Anweisungen so konfiguriert sind, dass, wenn sie auf dem Prozessor ausgeführt werden, die Vorrichtung veranlassen zum: Lesen eines ersten informationstragenden Zeichens aus dem Ausgabesignal, wobei das erste informationstragende Zeichen codierte Anweisungen umfasst, wobei zumindest ein Teil der codierten Anweisungen einen ausführbaren Code in Form einer Skriptsprache umfasst; bewirken, dass die codierten Befehle in dem Speicher gespeichert werden; und Interpretieren der codierten Anweisungen, wobei die codierten Anweisungen bewirken, dass Konfigurationseinstellungen auf der Vorrichtung eingestellt werden.
  2. Vorrichtung nach Anspruch 1, wobei die vom Computer codierten Anweisungen so konfiguriert sind, dass, wenn sie durch den Prozessor ausgeführt werden, die Vorrichtung weiter veranlassen zu bewirken, dass ein zweites informationstragendes Zeichen aus dem Ausgabesignal gelesen wird, wobei das zweite informationstragende Zeichen codierte Anweisungen umfasst; bewirken, dass eine Beziehung von Daten, die in den ersten informationstragenden Zeichen und den zweiten informationstragenden Zeichen vorgesehen sind, hergestellt wird; die hergestellte Beziehung zu verwenden, um einen zusammengesetzten Satz codierter Befehle zu erzeugen; und interpretieren des zusammengesetzten Satzes codierter Befehle.
  3. Vorrichtung nach Anspruch 2, wobei mindestens eines von den ersten informationstragenden Zeichen und den zweiten informationstragenden Zeichen einen strukturierten Anhang beinhalten.
  4. Vorrichtung nach einem der Ansprüche 1 - 3, wobei die Konfigurationseinstellungen zumindest eines aus der Gruppe von Scanabstand, Auslösemodusfunktionalität, Scanmodus, Decodierungsmodus, Symbologieermöglichung, Ausgabeschnittstellenfunktionalität, Min/Max-Symbologiezeichenlängen, Scan-Engine-Auswahl und Beleuchtungsfunktionalität einschließen.
  5. Vorrichtung nach einem der Ansprüche 1 - 4, wobei die ersten informationstragenden Zeichen mindestens einen 1D-Strichcode, einen 2D-Strichcode, einen gestapelten 1D-Strichcode, ein Logo, ein Bildzeichen, eine Glyphe und einen Farbcode enthalten.
  6. Vorrichtung nach einem der Ansprüche 2 - 5, wobei die zweiten informationstragenden Zeichen mindestens einen 1D-Strichcode, einen 2D-Strichcode, einen gestapelten 1D-Strichcode, ein Logo, ein Bildzeichen, eine Glyphe und einen Farbcode enthalten.
  7. Vorrichtung nach einem der Ansprüche 1 - 6, wobei die codierten Anweisungen mindestens eine erste und eine zweite Konfigurationseinstellung umfassen.
DE202011111120.6U 2010-10-07 2011-10-03 Ausführbare maschinenlesbare Symbologie Expired - Lifetime DE202011111120U1 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US12/900,032 2010-10-07
US12/900,032 US9727768B2 (en) 2010-10-07 2010-10-07 Executable machine readable symbology

Publications (1)

Publication Number Publication Date
DE202011111120U1 true DE202011111120U1 (de) 2020-02-06

Family

ID=45318790

Family Applications (1)

Application Number Title Priority Date Filing Date
DE202011111120.6U Expired - Lifetime DE202011111120U1 (de) 2010-10-07 2011-10-03 Ausführbare maschinenlesbare Symbologie

Country Status (4)

Country Link
US (1) US9727768B2 (de)
EP (2) EP3576006B1 (de)
CN (2) CN102591677A (de)
DE (1) DE202011111120U1 (de)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8464952B2 (en) * 2009-11-18 2013-06-18 Hand Held Products, Inc. Optical reader having improved back-illuminated image sensor
US8924726B1 (en) * 2011-06-28 2014-12-30 Emc Corporation Robust message encryption
US8511559B2 (en) * 2011-10-21 2013-08-20 Symbol Technologies, Inc. Apparatus for and method of reading targets by image captured by processing captured target images in a batch or free-running mode of operation
US9274772B2 (en) 2012-08-13 2016-03-01 Microsoft Technology Licensing, Llc. Compact type layouts
JP7194351B2 (ja) * 2018-09-26 2022-12-22 ブラザー工業株式会社 印刷装置

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6959871B1 (en) 1990-05-08 2005-11-01 Symbol Technologies, Inc. Terminal for reading machine-readable indicia and for executing a program
US5992752A (en) * 1993-11-24 1999-11-30 Metrologic Instruments, Inc. Internet-based system for enabling information-related transactions over the internet using Java-enabled internet terminals provided with bar code symbol readers for reading Java-Applet encoded bar code symbols
US7387253B1 (en) 1996-09-03 2008-06-17 Hand Held Products, Inc. Optical reader system comprising local host processor and optical reader
US5900613A (en) 1994-03-04 1999-05-04 Welch Allyn, Inc. Optical reader having improved reprogramming features
US5929418A (en) 1994-03-04 1999-07-27 Welch Allyn, Inc. Optical reader having improved menuing features
US6747692B2 (en) * 1997-03-28 2004-06-08 Symbol Technologies, Inc. Portable multipurpose recording terminal and portable network server
US7128266B2 (en) 2003-11-13 2006-10-31 Metrologic Instruments. Inc. Hand-supportable digital imaging-based bar code symbol reader supporting narrow-area and wide-area modes of illumination and image capture
GB0111431D0 (en) * 2001-05-11 2001-07-04 Koninkl Philips Electronics Nv A real-world representation system and language
JP2003233788A (ja) 2002-02-13 2003-08-22 Nec Infrontia Corp 図形コードシステム
US7367514B2 (en) 2003-07-03 2008-05-06 Hand Held Products, Inc. Reprogramming system including reprogramming symbol
US20060077184A1 (en) * 2004-03-17 2006-04-13 James Marggraff Methods and devices for retrieving and using information stored as a pattern on a surface
WO2006089247A2 (en) * 2005-02-16 2006-08-24 Pisafe, Inc. Method and system for creating and using redundant and high capacity barcodes
US7780089B2 (en) 2005-06-03 2010-08-24 Hand Held Products, Inc. Digital picture taking optical reader having hybrid monochrome and color image sensor array
US8010621B2 (en) * 2005-10-11 2011-08-30 Nokia Corporation Offline webpage activated by reading a tag
US8038054B2 (en) * 2006-10-25 2011-10-18 Hand Held Products, Inc. Method of using an indicia reader
US7918397B2 (en) * 2007-06-15 2011-04-05 Hand Held Products, Inc. Indicia reading system

Also Published As

Publication number Publication date
CN110674661B (zh) 2023-08-18
CN102591677A (zh) 2012-07-18
EP2439674A3 (de) 2015-03-11
CN110674661A (zh) 2020-01-10
EP2439674A2 (de) 2012-04-11
EP3576006A1 (de) 2019-12-04
US20120085818A1 (en) 2012-04-12
EP2439674B1 (de) 2019-07-24
US9727768B2 (en) 2017-08-08
EP3576006B1 (de) 2021-05-12

Similar Documents

Publication Publication Date Title
CN102737215B (zh) 数字图像捕获及处理系统
CN103164412B (zh) 通过图形编码访问网络信息的方法、客户端装置及服务器
CN102693400B (zh) 使用用户应用来配置用户扫描仪
DE602004009161T2 (de) Vorrichtung und verfahren zur bildmanipulation
DE202014011595U1 (de) Mobile Vorrichtung mit verbesserter Benutzerschnittstelle zum Lesen von Codesymbolen
DE112013001770T5 (de) System und Verfahren zum Beschleunigen der Selbstbedienung an Point-of-Sale-Terminals
DE202011111120U1 (de) Ausführbare maschinenlesbare Symbologie
US20140306012A1 (en) Method of programming a symbol reading system
CN102385688B (zh) 区域成像时的条形码排序的方法
DE112012006324T5 (de) Mobile Zahlung über ein virtuelles Peripheriegerät
DE112012001269T5 (de) Geschenkkartenumwandlung und Digitalgeldbörse
CN105913218A (zh) 电子发票开具报销方法以及电子发票报销信息提取方法
CN102289643B (zh) 智能标记阅读器
WO2002015120A1 (de) Verfahren und vorrichtung zum extrahieren von informationstragenden merkmalen aus einem digitalen bild
DE202013012943U1 (de) Zum Lesen mehrerer decodierbarer Zeichen konfigurierter, mobiler Computer
CN105556942B (zh) 数字水印
EP1864241A2 (de) Systeme und verfahren zur datenform-decodierung
DE10040563A1 (de) Vorrichtung mit einer Decodiereinheit zur Decodierung von optischen Codes
JP6794112B2 (ja) 端末装置、情報処理方法、及びプログラム
KR20190093183A (ko) Qr 코드, 및 이를 이용하는 단말기
CN113034182A (zh) 自动积分方法、系统、服务器和存储介质
DE102007048987A1 (de) Mobiltelefon und Betriebsverfahren dafür sowie Datenverarbeitungsnetzwerk für Mobiltelefone und Betriebsverfahren für ein solches Datenverarbeitungsnetzwerk
US20090234723A1 (en) Publicly generated advertisement system and method
EP2977947A1 (de) Verfahren zur Identifizierung von Objekten
DE202023101103U1 (de) Datenverarbeitungsanlage für Verkaufsterminals

Legal Events

Date Code Title Description
R152 Utility model maintained after payment of third maintenance fee after eight years
R152 Utility model maintained after payment of third maintenance fee after eight years
R207 Utility model specification
R071 Expiry of right