mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Barcodes oder AR-Tags auslesen (ohne bewegliche Teile / Bewegung durch den Nutzer)


Autor: Benjamin Buchholt (bbu)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo zusammen,

ich lese schon öfters mal durchs Forum und die Tutorials, bin aber noch 
totaler Neuling im Reich der EmbededSystems - komme aber aus der 
Programmierung, in sofern hab ich schon Verständniss für die Materie :-)

Komm ich mal zu meinem Problem/Vorhaben:
ich habe irgendeine x-beliebige Anwendung, die anhand kleiner, selbst 
druckbarer Kärtchen mit Barcodes oder AR-Tags Funktionen ausführen soll. 
Das Problem was ich habe: wie lese ich rein technisch gesehen die Codes 
ein?

Einfach mal ein (fiktives) Beispiel:
Ich habe eine Steuerung für Aussenleuchten im Garten, etc. Die ist 
microcontrollergestützt. Am PC kann ich nun mit einem Programm um 
Abläufe zu "programmieren", z.B. um Sesional andere Schaltzeiten 
einzurichten, Grillabende und Parties passend zu beleuchten, etc. Der PC 
lädt dann alle "Programme" auf SD-Karte o.ä. und generiert einen Barcode 
oder AR-Tag. Den drucke ich aus und muss dann nur den Code des 
jeweiligen Beleuchtungsprogramms in die Lampensteuerung stecken und 
schon hab ich das passende Licht.
Das Problem das ich sehe ist, dass ich keine beweglichen Teile zum 
einscannen möchte, das Gerät aber auch nach Stromverlust den Code 
auswerten soll, d.h. selbst wenn der Code schon drin steckt und nicht 
bewegt wird (zumal ein Abscannen beim Einschieben auch fehleranfällig 
aufgrund von unterschiedlichen Einsteck-Geschwindigkeiten ist). Ein 
einfaches serielles Abtasten ist dann ja nicht möglich und 32 kleine 
Sensoren sicher etwas zu groß (und eh nur für die Barcode-Variante). Bei 
einem AR-Tag braucht man evtl sogar sowas wie ne cmos-Kamera...

Ich hoffe, das ist verständlich beschrieben.

Hat schon irgendwer Erfahrungen oder interessante 
Ansätze/Gedankenanstöße dafür? Sollte auch kostengünstig sein, um das 
Gesammtsystem billig zu halten...

Viele Grüße,
Benjamin

Autor: SF (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich würde sowas mit einem kleinen billigen I²C oder SPI Eeprom als 
steckbaren/auswechselbaren Datenträger machen und auf den Barcode 
verzichten.

Die Softwareroutinen, die du für die Dekodierung des Barcodes brauchst, 
nehmen im Vergleich zu einer simplen Eepromauslese-Routine bestimmt mehr 
Platz im Programmspeicher deines µC ein. Dasselbe gilt vermutlich für 
die benötigte Hardware.

Außerdem ist die mit einfachen Mitteln ereichbare Informationsdichte bei 
einem Eeprom größer als bei einem selbstgestricktem optischen System.

Aber wenn du bei der optischen Lösung bleiben möchtest, so wird dir wohl 
nichts anderes übrigbleiben, als beim Einstecken den Barcode zu lesen. 
Die gelesenen Schaltzeiten müsste der µC sich in einem internen Eeprom 
stromausfallsicher merken. Dann bräuchtest du dir nur überlegen, wie der 
µC einen neu eingelegten Barcode erkennen kann, um dann das Eeprom neu 
zu schreiben.

Autor: Benjamin Buchholt (bbu)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ja, ich möchte schon bei einer optischen Lösung bleiben. Die 
Informationsdichte ist jetzt nicht so das Kriterium, es ist in der 
Hauptsache wichtig, dass ein 08/15 Endnutzer (sagen wir mal, meine Oma 
:-)) schnell und einfach am PC eine "ID-Karte" generieren können soll, 
die zuverlässig erkannt wird und die auch ihre Enkel mit 7 bedienen 
können - also DAU-sicher :-)

Ein EPROM ist da nicht geeignet und nen Barcode bei der 
Einsteck-Bewegung einzulesen ist auch nicht sooo doll, find ich. Ich hab 
sogar über eine Art Lochkarte nachgedacht, und eine Matrix von 
Photodioden, aber von der Idee, Löcher stanzen zu müssen bin ich auch 
nicht so begeistert.

Daher war eine Überlegung, ein (grobes AR-Tag zu generieren, mit z.B. 
8*8 Quadraten. das wären schon mal 64 Bit und damit kann man ne Menge 
IDs darstellen, die intern auf die "Leuchtprogramme" oder was auch immer 
gematcht werden. Bei einer 3mm IR-Empfangs-Diode (ob es das so gibt und 
billig ist muss ich noch schauen) und 2mm Stegen zwischen den Dioden 
wäre so ein Sensor 4*4cm groß und das fände ich ok... Die Frage ist nur, 
wie erkenne ich Weiß und Schwarz (also eine Drucklösung, keine 
Lochkarten-Lösung? Hat das "Sensoren-Array" einen kleinen Abstand (z.B. 
1mm) zum Blatt und ich beleuchte es seitlich, erkennt der Sensor das gut 
oder muss das Licht dazu von oben kommen?

Vllt gingen auch Photodioden auf der Oberseite und LEDs auf der 
Unterseite (dürfte dann nur keine Pappe sein :-) ) um preisgünstiger zu 
sein...
(BTW: blöde Frage, aber "leuchtet" eine IR-Diode eigentlich auch durch 
Papier?)

VG,
Benjamin

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.