Hallo Forum, ich moechte einen etwas ungewoehnlichen Barcodescanner bauen. (Die Suche findet nur einen Beitrag - und der sagt 'vergiss es' :) ) Es geht darum, auf Eppendorfgefaesse ( kleine Plastikdinger mit Deckel, 1,5 - 2 ml Volumen ) geklebte Barcodes zu lesen. Der Deckel, auf den der Barcode soll bietet mir ca. 5x5 mm an Platz - das sollte prinzipiell fuer einen Datamatrix ( http://en.wikipedia.org/wiki/Datamatrix ) Code ausreichen. Meine Ideen bisher: der Sensor wird in einem Zylinder montiert und jeweils auf das Gefaess gestuelpt. Dadurch erreiche ich einen (im Milimeterbereich) definierten Abstand, wenig Streulicht, und damit hoffentlich gute Bilder, die die Auswertung einfacher machen. Ausserdem kann iche einen Schalter einbauen, der erkennt wann ein Gefaess vorliegt. Die Aufnahme soll per USB an einen PC ueberspielt und dort ausgewertet werden ( Der PC haelt die Datenbank Barcode -> was ist eigentlich in dem Gefaess vor, und soll spaeter Experimentplanung & Kontrolle machen, ist obligatorisch, und es gibt bereits C Bibliotheken um Datamatrix zu interpretieren ). Ich wuerde gerne einen Atmega einsetzen, im Zweifel auch mit externem Ram. Meine Probleme: -Was fuer einen Sensor setzt man fuer sowas ein? CCD? CMOS? Woher in Einzelstuecken? Eureca bietet Mustersets an - von Linearsensoren. Damit kann ich aber keinen Matrixcode lesen ;). Sonys gibt's wohl bei Eureca auch in "Kleinmengen". Was immer das heissen mag - bin auf dem Gebiet Anfaenger. Ein ICX258AL-7 liest sich 'nicht schlecht' - braucht aber wohl einen SMD-Timing & Pulsgenerator. -Optik: Brauch ich eine Linse? Ein 1/4" Sensor haette, wenn quadratisch, ja eine Kantenlaenge von ~ 4,5mm. Ein 1/3" ca 6mm. Das entspraeche ja gut meiner Codeoberflaeche. Wo wuerde ich sowas beziehen koennen? Sollte ich meinen Optiker bestechen? Vielen Dank fuer euer Feedback, mit freundlichen Gruessen Flo
>Linse?
Ich sag mal ja, wie willst du denn sonst eine Abbildung vom Objekt auf
den Sensor machen? Du kannst ja nicht einfach das Ding auf den Sensor
kleben ;-)
Frei aus dem Bauch würde ich mal sagen, dass ein Mega damit überfordert
sein wird.
Hallo, Bitte nicht böse sein aber da ist es einfacher das man einen Handscanner dafür schlachtet. Die kann man auch auf dauerread stellen und emulieren über USB ein Keyboard das dir den Barcode als Text liefert. z.B http://www.datalogic.de/_vti_g2_p_det.aspx?idp=684db93b-3e90-4119-8ffe-5a13943f6257&rpstry=17_ Wenn du eine Applikation dafür schreiben willst kannst du auch welche nehmene die kleiner sind aber das ganz nur über die serielle liefern. z.B http://www.datalogic.de/_vti_g2_p_det.aspx?idp=ID20041213101126&rpstry=17_ Die folgenden haben auch schon USB http://www.symbol.com/MS22xx/ http://www.symbol.com/MS32xx/ http://www.symbol.com/MS4400/ mfg Tomafa
1. Möglichkeit: Bestell dir irgendwas, was durch UPS, DHL o.ä. geliefert (was du bestellst ist egal/dir überlassen). Wenn das Ding dann geliefert wird, mußt du nur noch dem Boten sein "Quittierungsgerät" wegnehmen, und schon hast du einen entsprechenden Scanner. 2. Möglichkeit: Wenn es darum geht, mal die Technik der Bildverarbeitung kennen zu lernen, bietet es sich an, eine Webcam an den PC anzuschliessen und sich "openCV" von Intel zu besorgen. Das ist eine kostenlose Bildverarbeitungsentwicklungsumgebung... Um einen AVR für solche Sachen zu benutzen, wirst du eine gewisse "Vorbeschaltung" brauchen. Du musst ja auch davon ausgehen, dass das Etikett nicht ganz gerade bzw. verdreht vor dem Sensor auftaucht... Die MC hat Programmcode auf diese Weise abgedruckt...
servus, da ich mich zur zeit auch mit der Erkennung von Barcodes und DataMatrix Codes beschäftige finde ich dein projekt sehr interessant. Ich würde dir empfehlen das ganze über eine billige kleine CCD Monochrom Kamera oder eben Webcam zu machen. Die erkennung der barcodes und datamatrix codes sollte dann in software gemacht werden. die opencv lib hab ich mir auch schonmal angeschaut - leider schwer für mich da ich mehr aus der visual basic ecke komme. es ist schade das es für die erkennung von barcodes keine opensource oder freeware controlles ocx, oder dlls gibt. alles was man bekommt ist sau sau teuer - ok dafür auch sehr sehr gut. ich denke jedoch das es mittels kamera und einer softwareseitigen bildverarbeitung relativ leicht ist und vor allem du kannst dann deine positionierung usw. auch über die bildverabeitung laufen lassen (in deinem falle die kamera genau über dem mittelpunkt der datamatrix fahren lassen und dann ein image ziehen mit dem du den code ausließt) also du hättest damit ein rießen potential ! wenn sich jemand mit diesem thema näher auskennt und / oder ocx dlls controlls (speziell für vb) kennt -> sagt mal bescheid! ps: was schonmal ein super geiler ansatz ist jedoch glaube ich nur barcodes keine matrix lesen kann - und leider keine freeware ist : "EymBarcode" http://www.metois.com/ gruß avrler
Hallo, mal von oben nach unten... Linse: Die Sensoren kommen wohl (teilweise) mit einer Scheibe vor dem eigentlichen Sensor. Ich vermute, dass die damit auf kurze Entfernung ( 5mm? ) durchaus auch scharf sehen. Kaufen: Ich moechte Basteln, nicht 'nen fertigen & unpassenden Scanner fuer 350 USD kaufen :) Das drueberstuelpen ist quasi Ppflicht, weil durchaus auch mal 96 von den Gefaessen nebeneinander stehen - ein normaler Scanner wuerde wohl irgendeinen davon erkennen. Der UPS-Mann faellt damit leider auch aus - und von dem bekomm ich garantiert kein Datenblatt^^. Wenn's nur um's Bildverabeitungs-lernen gehen wuerde, wuerd ich 50 Stueck mit der Digicam schiessen. Aber ich will damit ja auch spaeter arbeiten. Die Verarbeitung auf der PC Seite wird schon, ich komm nicht aus der VB Ecke ;). Also: Ich suche, soviel ist mir mittlerweile klar, einen monochromen Bildsensor, den ich in ein eigenes Gehaeuse packen kann. Die Idee mit einer monochromen Webcam ist vieleicht gar nicht schlecht - aber die braucht auch eine neue Optik, und ich hab seit Jahren keine monochrome Webcam gesehen. Eventuell ist auch in einer spaeteren Ausbaustuffe angedacht, die Bilddaten per Bluetooth zu verschicken - dann braucht's eh einen einene MC. Ich hab mal ein Bild angehaengt, wie ich mir das ganze vorstelle. Vielen Dank fuer euer Feedback, mit freundlichen Gruessen Flo
Vieleicht hab ich einfach nur Tomaten auf Gehirnwindungen... Ich hab mir jetzt 'ne guenstige 640x480 Farbpixel Webcam bestellt ( nachdem ich bei Ebay endlich was gefunden hatte, was nicht direkt aus "Hongkong, Deutschland" kam). Der nehm ich die Optik ab ( im Zweifel halt Makro-Optik, der Optiker meines Vertrauens hat sicherlich eine Idee, ich probier's erstmal so), am USB haengt sie bereits und im schlimmsten Fall hab ich gerade 13 EUR fuer einen undokumentierten CMOS Sensor ausgegeben. Gruss Flo
Avrler: Hier ist meine bisherige Recherche: -die Open Source C Bibliothek ist pre-Alpha, und ich bin mir noch nicht sicher, dass sie gedrehte Codes ueberhaupt erkennt. ( http://www.libdmtx.org/documentation.php ). Aber sie erkennt theoretisch auch mehrere Codes in einem Bild. Zum Ausgleich hat sie wohl einen 'crashing' Bug den der Autor noch nicht gefunden hat.... -Der Isostandard ISO/IEC 16022:2006 wo wohl alles drin steht, was man so ueber DataMatrix wissen muesste, kostet 212 Schweizer Franken ~ 133 Euros. Bezahlbar, aber ich hab sie gerade nicht zur Hand... -Semacode haben ein (fuer nicht-komerzielle-Nutzung) kostenloses ( closed source ) JavaSDK, das sich auch als Kommandozeilenprogramm integrieren laesst. Bedingt natuerlich eine passende JavaVM etc, ist aber fuer die ersten Experimente mit der Kamera ideal. ( http://semacode.org/ ). -Generatoren gibt's wie Sand am Meer. Als Fonts, als Komerzielle OCX/ActiveX/DLL/Whatever Componenten, und als Opensource in mindestens 3 Varianten inkl. einem Debian ( testing ) Packet ( http://www.datenfreihafen.org/projects/iec16022.html ). Womit wieder mal bewiesen waere, dass schreiben viel einfacher als lesen ist. Bis spaeter Flo
Kennst du http://www.jrobot.net/? Damit könnte es sogar was werden, wenn man eine Kantenerkennung in den AVR programmiert bekommt... Monochrome WebCams wird man wohl kaum mehr bekommen (ausser in einem Museum...). Es gibt aber noch Monochrome-CCD-Kameras (Überwachungsbereich...); zusammen mit einer TV-Karte bekommt man so auch Bilder in den PC. Vielleicht lässt dich der UPS-Mann ja mal seinen Handscanner auseinanderbauen^^.
Noch was: Irgendwo habe ich mal ein USB-Mikroskop gesehen... Soviel zum Thema Optiker...
Es gibt jetzt eine Open Source C# (also .net ) Biblothek unter der GPL um DataMatrix in Bildern zu erkennen und decodieren. Und ja, das funktioniert mit den Bildern die meine billigste Webcam auf ~2cm Entfernung schiesst. http://datamatrixdec.berlios.de/
Das ist doch klasse! In einen ATmega wirst du das aber wohl eher nicht programmiert bekommen, oder?
Naja... Vieleicht. Das allermeiste davon laesst sich auch locker in C umsetzen - aber vieleicht ist ein AVR doch etwas schwach auf der Brust. Anyhow, fuer mich reicht's wie's ist - und die 10 EUR/Webcam werd ich wohl auch nicht geschlagen bekommen...
>aber vieleicht ist ein AVR doch etwas schwach auf der Brust.
Vor allem beim Wandeln der Bilder...
Da könnte die jrobot-Kamera (gibt es auch in D zu kaufen) interessant
sein. Der Speicher wird vermutlich das Problem sein.
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.