hi, On Wednesday 19 September 2012, [email protected] wrote: > Die Bücher und Bibliotheksausweise sollen mit Balkencode > (oder QR-Code) versehen sein.
zumindest zu dem Teil kann ich was sagen:
Nimm einfache 1-dimensionale Barcodes (Code-39, Code 128, EAN, ...) - die
eindimensionalen Reader sind um einiges billiger als die Scanner für 2-
dimensionale Codes und die besseren Reader können normalerweise auch ältere
Codes lesen. 2-dimensionale Codes haben auch das Problem dass sie leichter
durcheinandergeraten kommen können - ein Knick oder Kratzer und der Code ist
nahezu unlesbar.
Wie schon von "morphium" geschrieben: die meisten Scanner kommen als
verkappte Tastatur daher. Es gibt hunderte Modelle mit sehr
unterschiedlichem Support für Codes und Hardware-Schnittstellen. Im
Wesentlichen findest Du folgende Varianten:
CCD+LED vs. Laser
- einfache CCD/LED-basierte Scanner sind billiger, Du musst sie aber in
einem bestimmten Abstand über den Code ziehen, diese können nur 1-
dimensional lesen
- moderne CCD/LED-basierte Scanner, die 2-dimensional lesen können haben
eine bessere Fokusierung, aber sind auch teurer
- Laser-basierte Scanner projizieren ein Muster auf das Papier - der Code
kann in nahezu beliebiger Orientierung liegen, solange ein "Strahl" in
vollständig erfaßt, diese Scanner sind wesentlich teurer als die ganz
einfachen (manchmal günstig auf Ebay)
Schnittstellen:
- seriell: übertragen ein ASCII-basiertes Protokoll, modellspeziefisch, vom
Aussterben bedroht (zum Glück)
- PS/2: werden an den Tastaturport angeschlossen, Tastatur wird
durchgeschleift
- USB: melden sich als USB-Tastatur am Computer an
- WLAN/Ethernet: für Industrieanwendungen, können offline arbeiten,
proprietäre Protokolle, wahnsinnig teuer
Außer bei den ganz komplexen passiert die Konfiguration über spezielle
Barcodes im Manual des Scanners. Man kann alle möglichen Parameter
einstellen:
* welche Codes erkannt werden (je weniger, umso besser funktionieren die
verbliebenen, je mehr umso mehr verschiedene Anwendungen sind möglich)
* Verhalten mit Checksummen (durchreichen, ignorieren, prüfen)
* weitere Einstellungen zu Codes (Übermittlung des Code-Typs, ...)
* Lesegeschwindigkeit
* Schnittstelleneinstellungen
* simuliertes Tastaturlayout
Zum Thema Codes:
Code-39 gehört zu den robustesten. Nachteil ist dass die codierbaren Zeichen
auf Großbuchstaben, Ziffern und einige wenige Sonderzeichen beschränkt sind.
Damit der Code scannbar bleibt sollte man bis zu 10 Zeichen codieren,
maximal 12.
Code-128 ist kompakter, kann den ganzen ASCII-Satz (oder kompakte Zahlen)
codieren, ist aber leichter zu korrumpieren.
Interleave-25 ist zwar schön kompakt und beliebt, aber hat schlimme
Lesefehler.
EAN würde ich nicht einsetzen, da Du es sonst sehr einfach mit dem Barcode
der ISBN verwechseln kannst (den würde ich übrigens auch nicht überkleben,
manchmal braucht man die ISBN).
Diese Codes werden von fast jedem Scanner verstanden, egal ob er als 1-D
oder 2-D Scanner verkauft wird oder eine Handy-App ist
Erzeugung von Barcodes:
Sogenannte Barcode-Fonts sind bestenfalls eine Notlösung - Du musst genau
nachschauen dass Du das richtige Start- und Stopzeichen benutzt, musst die
Checksummen selbst berechnen, es darf keine Abstände zwischen den Zeichen
geben, ....
Aus Scripts heraus macht sich GNU barcode zum Erzeugen recht gut. Wenn Dein
gewähltes Programm selbst Barcodes erzeugt - nimm diese Funktion. Ansonsten
kann ich Dir C++-Code anbieten, der Qt-Images mit Code-39 erzeugt.
Thema Codierung:
Versuch einen Code zu nehmen, der nicht nur Ziffern enthält, damit es keine
Verwechslung mit EAN, ISBN oder ISSN gibt.
Konrad
signature.asc
Description: This is a digitally signed message part.
_______________________________________________ Lug-dd maillist - [email protected] https://ssl.schlittermann.de/mailman/listinfo/lug-dd
