Sonntag, 7. Juni 2009

Lasertriangulation - der Sensor

Nach nun einigen Wochen der Bastelei ist der Laser-Entfernungsmesser endlich fertig:
Zu sehen von links nach rechts:
  • Atmega88, 20Mhz, Mikrocontroller
  • ADC0820, 8 Bit paralleler Highspeed ADC (~2 us pro Messung)
  • uPD3753, linearer CCD (1x2048 Pixel), zum aufnehmen des Bildes, mit Objektiv einer alten Kamera
  • VSD-1, digitaler Servo mit montiertem Laser
Aufgrund geringer Fertigungsungenauigkeiten kann der Laser nicht statisch montiert werden, sondern muss dynamisch so geregelt werden, dass dieser immer auf der vom Bildsensor "sehbaren" Linie zeigt.
Für geringe Entfernungen größer 1m stellen diese ungenauigkeiten kein Problem dar, bei größeren Entfernungen muss der Laser allerdings nachgeregelt werden.
Hier liegt auch das Problem des ganzen Sensors: je größer die zu messende Entfernung, desto genauer muss der Laser eingestellt sein.
Im Klartext heißt das: bei Entfernungen größer 2m ist die benötigte Genauigkeit selbst mit digital geregeltem Servo und einem zusätzlich angebrachten Getriebe nicht mehr erreichbar und somit der Sensor für meine Anwendung nicht brauchbar :(
Für geringe Entfernungen wäre der Sensor die perfekte Lösung, bei Abständen <50cm beträgt die Auflösung kleiner 5mm.

Nachdem nun klar ist, dass es mit einem linearen Bildsensor nichts wird, plane ich derzeit den Sensor mit einem Flächenbildsensor mit ca ~1000x1000 Pixeln auszustatten, bei dem dann die dynamische Regelung des Lasers wegfallen würde.
Allerdings würde das den Rechenaufwand quadrieren da mehr Pixel geprüft werden müssen, sodass die angepeilte Messrate von 100hz nicht mehr realisierbar ist:
Der Mikrocontroller benötigt etwa 10 Takte pro Pixel -> 10*1 Mio -> 10 Mio Takte bei 20 mhz = 0,5 sec = 2 hz = zu wenig ....

1 Kommentar:

  1. Interessantes Projekt!
    Eine Frage (sorry, etwas off-topic) zu dem Servo:
    Der VSD-1 wird bei Conrad als Servo "für den Roboter-Bau" beschrieben. Was ist an dem so besonders? Hat der ein zusätzliches Lager an der Rückseite um einfach einen Roboter-Arm o.ä. bauen zu können?

    AntwortenLöschen