Hallo!
Ich suche ein optische Sensorsystem, das transparente Materialien (bis
zu einem Abstand von ca 10 cm) erkennt. Die Obekte sind durchsichtige
Plastikbecher, die von der Seite detektiert werden müssen. Es gibt hier
natürlich fertige Systeme, die jedoch relativ teuer sind.
Hat wer eine Idee, wie man das billig und zuverlässig detektieren kann?
THX
HAllo,
danke für die Idee. Glaubst du, dass IR vom Plastik
reflektiert/absorbiert wird?
Hatte noch vergessen zu erwähnen, das Tageslicht (in Räumen, keine
direkte Sonneneinstrahlung) auch zu berücksichtigen ist. Von hier aus
sind IR Signale wohl eher fehleranfällig?!
THX
Andre schrieb:> HAllo,>> danke für die Idee. Glaubst du, dass IR vom Plastik> reflektiert/absorbiert wird?>> Hatte noch vergessen zu erwähnen, das Tageslicht (in Räumen, keine> direkte Sonneneinstrahlung) auch zu berücksichtigen ist. Von hier aus> sind IR Signale wohl eher fehleranfällig?!>> THX
Kannst ja die IR-Sendediode modulieren und am Empfänger das demodulierte
Signal auswerten. Dann bist du frei von Tageslicht-Einflüssen. Und der
Empfänger sollte natürlich auch ein IR-Filter haben, damit nur die
gewünschte Wellenlänge durchkommt. So wird das üblicherweise z.B. bei
Lichtschranken gemacht.
Andre schrieb:> Hatte noch vergessen zu erwähnen, das Tageslicht (in Räumen, keine> direkte Sonneneinstrahlung) auch zu berücksichtigen ist.
Was genau ist die Anwendung? Automat, der Becher befüllt?
Die Frage ist ja: Was heißt detektieren? Unterscheiden von anderen
Objekten oder unterscheiden von "kein Objekt".
Was sind die Rahmenbedingungen? Können Sender und Empfänger einander
gegenüber stehen, oder müssen beide auf einer Seite sein. Falls ja, ist
ein Spiegel erlaubt? Sind es immer die selben Becher, aus dem selben
Material? Ist die Position der Becher definiert? Sind die Becher sauber?
Das Tageslicht ist relativ egal, wenn du dein Anregungslicht modulierst
und nur den DC-Anteil des Singnals auswertest.
Andre schrieb:> Glaubst du, dass IR vom Plastik> reflektiert/absorbiert wird?
Egal wie und in welchem Wellenlängenberich (vlt. auch UV?) - die
Transparenz der Gesamtstrecke wird in jedem Falle duch Einbringen eines
Objektes verringert.
Ich würde ja eine Art intelligente bzw. lernfähige Lichtschranke mit
einem Mikroprozessor versuchen. Zunächst wird manuell ein Schwellwert
vorgegeben, den die Lichtschranke aber im Laufe der Zeit selber
optimiert.
Dabei werden neben der aktuellen "Schalt-Entscheidung" die z.B. letzten
100 Helligkeits-Mini- und Maxima protokolliert und die Schaltschwelle
immer dynamisch in die Mitte gelegt ... müsst man mal ausprobieren.
"Egal wie und in welchem Wellenlängenberich (vlt. auch UV?) - die
Transparenz der Gesamtstrecke wird in jedem Falle duch Einbringen eines
Objektes verringert."
Vor allem dadurch das die meisten transparenten Materialien doch ein
wenig spiegeln und vor allem in Luft das Licht brechen und/oder
diffundieren. Deshalb sind so wenige transparente Objekte in Luft
unsichtbar... Glas in Immersionsöl oder Benzol zB wäre schon etwas
schwieriger zu detektieren ;)
butsu schrieb:> Was heißt detektieren? Unterscheiden von anderen> Objekten oder unterscheiden von "kein Objekt".
Nur erkennen, ob Objekt da oder nicht.
butsu schrieb:> Können Sender und Empfänger einander> gegenüber stehen, oder müssen beide auf einer Seite sein. Falls ja, ist> ein Spiegel erlaubt?
das ist egal, es könnten theoretisch auch spiegel montiert werden.
butsu schrieb:> Sind es immer die selben Becher, aus dem selben> Material?
das selbe material ja, die größe kann sich jedoch um +/- 4mm im
Durchmesser ändern, was aber prinzipiell für die Detektion von der Seite
egal ist.
butsu schrieb:> Ist die Position der Becher definiert?
ja
butsu schrieb:> Sind die Becher sauber?
das ist nicht zu 100% garantiert. aber "etwas dreck" würde die detektion
ja eigentlich nur begünstigen, oder?
Frank Esselbach schrieb:> Egal wie und in welchem Wellenlängenberich (vlt. auch UV?) - die> Transparenz der Gesamtstrecke wird in jedem Falle duch Einbringen eines> Objektes verringert.
Das ist richtig, aber bei refektierenden Systemen (z.B.
Reflexlichtschranke ist das ein Problem...
torgel schrieb:> Andre schrieb:>> Es gibt hier>> natürlich fertige Systeme, die jedoch relativ teuer sind.>> ???>> siehe:> Ebay-Artikel Nr. 261672915689
die Frage ist, ob solche sensoren für meine Anforderungen geeignet sind
(Transparenz usw...). Reflexlichtschranken sind da immer kritisch zu
betrachten...
Andre schrieb:> die Frage ist, ob solche sensoren für meine Anforderungen geeignet sind
Wenn Du jetzt richtig kräftig in den eBay-Artikel investierst, kannst Du
Deine Frage sogar beantworten.
Sollte es nicht funktionieren, dann stelle ihn wieder bei eBay ein und
findest vielleicht einen neuen Käufer für den Sensor.
JojoS schrieb:> Ultraschall? Es gibt auch kompakte Sensoren von Sick & Co., mit analog> oder Schaltausgang.
Vielen Dank für Deinen Tip. Wast bedeutet hier Schaltausgang, können die
detektieren, ob das Objekt da ist oder nicht? Das Problem mit
Ultraschall ist meiner Meinung nach, dass ich ja immer ein Signal
zurückbekomme. Wenn nun kein Becher da ist, ist 10cm hinten weiter eine
Fläach, die ebenfalls reflektiert, kann der Sensor das zuverlässig
unterscheiden oder muaa man da separat die Laufzeit auswerten?
THX
Ich würde es von unten versuchen.
Die Standfläche von einem Objekt tendiert dazu eben zu sein, damit hat
man ein sehr gutes Reflex-Signal.
Probleme kann es natürlich geben wenn der Sensor verdrekt (also Staub
oder "Becherinhalt" auf ihm drauf landen. Ob das in dieser Applikation
ein Problem ist kann man so nich sagen.
Die Alternative mit der Detektion von der Seite erfordert entweder ein
gutes Wissen über den Winkel des Behcers oder eine große aktive Fläche.
Die Detektion der "Verdunkelung" ist zwar nicht so stark winkelabhängig,
dafür ist die "Lichtänderung" viel kleiner.
Vlt. machst du mal eine Schemazeichnung von dem Einsatzort
Hallo Andre,
Deine Anwendung ist einfach mit einem Proximity Sensor zu realisieren.
Ich verwende bei solchen Aufgaben mit Erfolg den hier:
http://www.vishay.com/optical-sensors/fully-int-prox-amb-light-emit/
viele Informationen abrufbar:
http://www.vishay.com/optical-sensors/list/product-83476/
Vorteile
- günstig und leicht zu bekommen
- 16 bit Auflösung; egal was im Strahlengang steht, es ist messbar
- veränderliche Absorption, Refelxion - egal
- Reichweite über programmierbare Stromquelle und/oder externe IRED
einstellbar - habe bis 2m realisiert
- einseitige Montage, keine Spiegel, keine Bauteile gegenüber
- alle Filter gegen Sonnenlicht, Störstrahlung inklusive
- schnell - habe am NXP LPC1768 mit 1MHz I2C über 1800 Messungen/s
realisiert (wer es denn braucht)
Nachteile
- nicht von Hand zu löten
- benötigt kleinen µC zur Ansteuerung
Gruß
Didi
Max D. schrieb:> Ich würde es von unten versuchen.> Die Standfläche von einem Objekt tendiert dazu eben zu sein, damit hat> man ein sehr gutes Reflex-Signal.
Das ist richtig, es ist aber eine Anforderung bzw. der Prozess erfordert
es, dass die runden Objekte auch von der Seite erfasst werden müssen.
@ Didi: Danke für den Tip, den werd ich mir mal näher betrachten.
Didi S. schrieb:> Deine Anwendung ist einfach mit einem Proximity Sensor zu realisieren.> Ich verwende bei solchen Aufgaben mit Erfolg den hier:
Schaut ja ganz gut aus, allerdings:
1.) Was hat der für eine örtliche Ausflösung in Abhängigkeit der
Entfernung? Oder kann man das über Grenzwerte justieren?
2.) Einen µC verwende ich ohnehin, also von diesem Punkt ist dein
angeführter Nachteil keiner. Allerdings: Wenn ich nun z.B. 5 Sensoren
gleichzeitg nutzen will, benötige ich dann 5 I²C Schnittstellen am µC?
Ich habe leider wneig Erfahrung damit, aber hat ein Standard µC so viele
bzw. gibt es überhaupt welche, die so viele Schnittstellen haben? Das
wäre ein KO Kriterium
THX
Hallo Andre,
der VCNL4020 hat ein Bitrauschen von etwa 11-14 counts, also Mittelwert
+-7 counts. Bei Anwendungen habe ich schon Gegenstände eindeutig
identifiziert, die im Mittelwert ein Signalhub von 30 counts verursacht
haben. Bei einem Signalbereich von 16bit, also >65000 counts ist das
schon ausgezeichnet. Am einfachsten ist es, wenn man das System lernen
lässt. Also Signal messen, wenn kein Becher vorhanden ist, dann Signal
auslesen mit verschiedenen Bechern. Die Entscheidungsschwelle zwischen
"kein Becher" und "Becher vorhanden" in die Mitte zwischen die beiden
Mittelwerte der Signale legen. Wenn Du es noch besser machen willst,
dann kann man per Software noch einen gleitenden Tießpass programmieren.
Ich komme so auf ein Rauschen von +-4counts und erkenne selbst
komplexere Dinge. Aber das ist bei Deiner Anwendung sicherlich
übertrieben.
An einem I2C Bus kann von diesem Sensor direkt nur einer angeschlossen
werden, da er eine einzige Slave Adresse anbietet. Für eine
Triangulationsmessung mit solch einem Proximity Sensor habe ich schon
einmal 8 dieser Sensoren an einem I2C Bus betrieben. Ich habe einfach
einen I2C Multiplexer wie den hier allerdings von NXP genutzt:
http://www.ti.com/product/pca9548a
Das funktionierte einwandfrei. 1800 Messungen pro Sekunde sind dann aber
nicht mehr drin, da ja auch die Umstellung des I2C Switch Performance
auf dem Bus benötigt. Aber je nach Busgeschwindigkeit und Anzahl von
Sensoren sind 20-30 Messungen pro Sekunde pro Sensor sicherlich machbar
- wenn Du denn so viele benötigst ;-)
Diese Art Proximitysensoren haben im Nahbereich eine sehr hohe
Auflösung, die mit der Entfernung nachlässt. Dieser Nahbereich ist aber
in bestimmten Bereichen verschiebbar und auf Deine Becherposition
optimierbar, wenn Du am Sensor eine externe infrarot Diode verwendest.
Über den programmierbaren Strom und den Öffnungswinkel der IRED kann man
da sehr viel optimieren. Ich gehe aber davon aus, das der Sensor alleine
für Deine Aufgabe völlig ausreichende Signale liefert, die eindeutig
zwischen "Becher da" und "Becher nicht da" entscheiden lassen.
Gruß
Didi