PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : 2D/3D Laserscanner mit Rotationslaser



pinker42
09.08.2005, 15:25
Hallo,

meint ihr es ist möglich mit diesem Ding http://cgi.ebay.de/LUX-Bau-Laser-Rotationslaser-Akku-Stativ-Koffer_W0QQitemZ5991348378QQcategoryZ42625QQrdZ1QQ cmdZViewItem und einer einfachen CCD Kamera einen 2D Laserscanner zu konstruieren ?
Das Ding müsste doch eine recht gut sichtbaren Streifen auf die Wand projezieren den man auf dem gegrabten Bild recht gut wiederfinden sollte.
Die Lichtintensität sollte doch deutlich grösser sein wie bei einem Streifenlaser. Ich Frage mich jedoch wie die CCD Kamera den beweglichen Punkt darstellt, d.h. wie schnell muss sich der Laser drehen um auch auf dem Bild der CCD Kamera eine Streifen zu erzeugen ? Hat jemand mal was in dieser Richtung gemacht ? Oder sind die Lasereinheiten aus handelsüblichen Laserdruckern besser geignet ?
Wobei ich mir beim Laserdrucker etwas sorgen mache, wie
augenschonend das ganze ist. Ich möchte umherstreunenden Passanten nicht umbedingt die Augen verblitzen !
In einer weiteren Ausbaustufe soll das Ding dann vertikal schwenkbar werden und auf mehreren Ebenen scannen.

Gruss

Pinker42

Manf
09.08.2005, 15:37
Ein Scaner aus einer Supermarktkasse erzeugt aus der Drehung eines stufenweise gekippten Polygonspiegels über die Reflexion an 5 Zusatzspiegeln auch schon ein ganz nettes Muster.

Es ist sichtbar, wegen des Augenschutzes. Die Druckerlaser arbeiten im Infrarotbereich.

Was soll denn mit dem Muster anschließend gemacht werden?

Es gibt Beispiele für eine trigonomerische Abstandsmessung aus dem Versatz der linie auf unterschiedlich weit entfernten Objekten.
Manfred


https://www.roboternetz.de/phpBB2/files/scanner__.jpg

pinker42
09.08.2005, 16:24
Hallo Manf,

die Linie soll vektorisiert werden und die verschiedenen Linien der einzelnen Ebenen zu einem 3D Netz zusammengesetzt werden.
So wie hier halt:

http://www.ais.fraunhofer.de/ARC/3D/download/diplom/node16.html

Gruss

Pinker42

Manf
09.08.2005, 17:04
Dafür wäre das dann der Einstieg:


https://www.roboternetz.de/phpBB2/download.php?id=353

pinker42
09.08.2005, 18:21
Hallo Manf,

den Beitrag hatte ich auch schon gelesen. Ich glaube allerdings, dass ein Klasse 1 oder 2 der Linienlaser zu wenig Power hat um bei Tageslicht noch erfolgreich erkannt zu werden.
Aber vielleicht irre ich mich auch bei dieser Einschätzung ?
Ich habe bei http://www.ett-online.de eine Linienlinse für Laser gefunden. Kostet nur 3,95 und wird als Zubehör für eine Laserwasserwaage verkauft. Ich glaube das Ding nehme ich dann mal in Verbindung mit einer günstige Laserdiode von Ebay. Für den Auswerte-Algorithmus spielt es sicherlich keine Rolle ob die Linie per Linse oder Rotation erzeugt wird. Im Zweifel dürfte es sehr einfach das ganze auszuwerten.

Ich dachte an einen etwas optimierten Floodfill:

Es wird nur der Rotanteil betrachtet und der Kontrast maximiert.
(Ich nutze den VHS Ausgang einer alten Nikon Coolpix 990 und habe hier die Möglichkeit Blende, Focus und Belichtungszeit per USB einzustellen)

Im resultieren Bild wird die mittlere Bildspalte nach der Linie durchsucht.
Als Anhaltspunkt dient der letzte Scandurchlauf. Danach werden jeweils die angrenzenden Pixel der benachbarten Spalten nach der Linie durchsucht. Findet man dort nichts, wird wieder die gesammte Spalte gescannt. Auf diese Weise erhalte ich pro Bildscan 640 "höhen" meiner Linie die ich über Triangulation in 3D Koordinaten umrechne.
Ich hoffe, dass ich bei guter Ausrichtung die Entfernung in 400 Stufen messen kann.

Alternativ schwebt mir ein -90° - + 90° drehbares Sonar mit je einem Sharp Sensor und einer verbesserten Version des Devantech SR08 Modules (Atmel Prozessor, Exakt einstellbarer Min und Max Bereich, besserer OP-Amp, Nutzung des integrierten Atmel Comperators und 10Khz Hochpassfilter im Eingang) pro Seite vor. Den Ultraschall Range Sensor habe ich auf dem Steckboard schon fertig, es ist allerdings erschreckend, wie schlecht Ultraschall Spitze Ecken "sieht". Dabei sollen die Ultraschall Sender noch einen kleinen Parabolspiegel zur Signalfokussierung bekommen. Der Parabolspiegel hilft noch bei einem weiteren Problem: Der Sendimpuls überträgt sich über das Chassis
und die Platine auf den Empfänger, daher ist in den ersten 3cm-6cm immer ein "lokales" Echo. Die Laufzeitverlängerung durch den Parabolspiegel blendet diesen Bereich aus. Die Sharp Sensoren schauen leicht nach unten und sollen Hindernisse im Nahbereich und Spitze Ecken erkennen. Das ganze soll dann mit einem Schrittmotor angetrieben werden.

Gruss

Pinker42

Manf
09.08.2005, 18:46
So eng habe ich die Linienerzeugung nicht gesehen, Linienlinse oder Spiegel.

Auf alle Fälle sind Sender und Empfänger systemtechnisch dicht beieinander sodass die Linie auch praktisch in jedes zweite Bild eingeblendet werden kann. Sie kann dann sehr viel deutlicher von der Umgebungshelligkeit unterschieden werden als durch ein Rotfilter.

Die nahen Störungen bei Ultraschall sind üblich, es gibt Schltungen (von mir) die dieses Problem nicht haben, weil schon die Eingangsstufe des Verstärkers für den Entfernungsausgleich angesteuert wird. Allerdings kann man auf die ersten 3cm so oder so leicht verzichten.

Auf den Spielgel bin ich ja mal gespannt: Sachen wie Wandler innerhalb oder außerhalb des Strahlengangs, Fokussierung auf wieviel Wellenlängen -> Spielgeldurchmesser, Wellensumpf oder Zerstreuung außerhalb des gewünschten Strahlengangs neben dem Spiegel werden sicher interessant.
Manfred

pinker42
09.08.2005, 19:39
Hallo Manf,

das mit dem einschalten des Lasers für jedes zweite Bild ist natürlich auch eine coole Idee. Wobei die Differenzberechnung für zwei aufeinanderfolgende Frames in voller VHS Auflösung sicherlich etwas zeitaufwendig ist.

Was auch immer bei der Parabolgeschichte rauskommt, ich werde berichten. Immerhin scheint das ganze grundsätzlich zu funktionieren:

http://www.mikrocontroller.com/jufo/kapitel3_5.htm

Was meinst du, sollte der Empfänger auch in den Parbolspiegel reinhorchen, oder exakt auf der Rückseite des Senders oder an
einer ganz anderen Stelle ?
Wellensumpf sagt mir im übrigen rein gar nichts, vielleicht ist mein
Physik LK zu lange her ?
Ich wäre da jetzt recht blauäugig rangegangen, 10cm Parabolspiegel,
Sender in den Brennpunkt und einfach mal den Empfänger an das
Scope und probieren. Erst die Abstrahlkeule ermitteln und schauen ob
es durch den Sender im Strahlengang einen blinden Fleck gibt.
Im zweiten Schritt dann mal das Echo an den verschiedenen Positionen gemessen.

Bei 5cm Abstand zwischen Sender-/Empfängereinheit und dem
Parabolspiegel, kann man ja die Verstärkerstufe erst nach 25cm
Laufzeit einschalten. Somit wären Echos über das Chassis und direkte
Reflektionen vom Parabolspiegel und Echos zweiten Grades
(Sender -> Parbolspiegel -> Send-/Empfangseinheit -> Parabolspiegel -> Empfänger) schon mal weg. Theoretisch sollte man damit Objekte
ab ca. 2,5cm messen können.

Meine Schaltung benutzt ein digitales 2wire Poti von Maxim mit einem Op-Amp für eine einstellbare Verstärkung zwischen 2 und 35 in 32 Stufen.
Ein zweiter Vorverstärker mit einem Op-Amp ist fest auf 20 fach eingestellt (Analog zum Devantech Modul). Auch ich drehe die Verstärkung am Anfang ganz runter um das lokale Echo zu "überhören".
Allerdings macht das echte Probleme bei sehr nahen dünnen Objekten
(z.B. geöffnete Tür). Ich habe schomal überlegt die einstellbare 2. Verstärkerstufe wegzulassen und die gleichgerichtete Hüllkurve des
Signals direkt an den AVR A/D Wandler zu korken, dann könnte man ab ca. 30-50cm Signallaufzeit einfach den integrierten 20x Gain des AVR ADC zuschalten. Was meinst du ?
Wie hast du das mit der einstellbaren Verstärkung in deiner Schaltung gelöst ?

Gruss

Pinker42

Manf
09.08.2005, 21:30
Die rote Linie in einem Bild zu suchen oder in der Differenz zweier Bilder könnte schon gehen, denke ich.

Das mit dem Spiegel geht sicher auch, schöner Link. Anders als bei Optik kann man bei Schall hintereinanderliegende Objekte unterscheiden, zumindest Mehrfachechos bei gleicher Richtungseinstellung. Es kommt dann darauf an wie eine Richtung ausgewertet wird:
Aufnahme aller Amplituden
Größte Amplitude nach Laufzeit- Amplitudenkorrektur
Erste korrigierte Amplitude über Triggerlevel

Bei Ausrichtung auf den Spiegel können auch Mehrfachechos auftreten, nicht so sehr ein blinder Fleck
Die Strahlbreite ist wohl mindestens um 10-20 Wellenlängen (Fokus unendlich), es sein denn man untersucht mit einem größeren Spiegel einen festgelegten Abstand.

Was am Spiegel vorbeigeht kann auch zum Wandler zurückkommen. (Reziprozität). Solche Echos kann man ggf. ausblenden. Ein Wellensumpf ist im optischen Maßstab eine berußte Fläche. Bei Ultraschall ist es ein Schwamm mit großen Löchern in den die Welle leicht hineingeht aber nicht mehr zurückfindet. Für eine feste Frequenz, (etwas anderes schaffen die 40kHz Wandler effektiv nicht), ist ein Wellensumpf schon eine gestufte Fläche mit einer Stufenhöhe von einer halben Wellenlänge (hin und zurück), also ca. 2mm.

Richtet man beispielsweise en Sensor auf die Tischplatte von wo man ein hervorragendes Echo erhält und schichtet dann einen 2mm Papierstapel mit einer Kante in Strahlmitte auf den Tisch, dann ist der Tisch plötzlich unsichtbar. Wellpappe ohne Abdeckung hat eine ähnliche Wirkung: Tarnkappeneffekt.

Meine Schaltung mit Ultraschallsensoren ist in den RN-Artikeln beschrieben. Einstellung über die Kennlinien-Steilheit eines npn Transistors. https://www.roboternetz.de/phpBB2/zeigebeitrag.php?t=5261
Manfred


https://www.roboternetz.de/phpBB2/files/block-schaltg-160.gif