PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : [ERLEDIGT] Entfernungsmessung per Kamera und zwei Rotlichtlasern?



Volki
08.09.2004, 15:04
Hallo,

Ich hab nur eine kurze Frage. Da Ihr Euch mit sowas schon länger beschäftigt...

Wenn ich zwei Rotlichtlaser (zB billige Laserpointer) parallel montiere so dass Sie beide im Abstand von 10 cm nach vorne leuchten, kann ich doch dieses Bild aus deren Mitte mit einer USB-Kamera in den PC laden.

Wenn ich nun per Software nur den Rotanteil berücksichtige und den Kontrast stark erhöhe dann erhalte ich (im besten Falle) zwei schwarze Punkte auf einem weissen Bild. Je nach Kameraoptik ist es doch dann so, dass die Punkte um so weiter auseinanderliegen je näher das Objekt ist auf dem Sie erleuchten. So könnte ich die Distanz optisch ermitteln, oder?

Wenn ich die Laserpointer so anordne, dass sich die Strahlen nach ca. 5 Metern treffen, könnte die Genauigkeit noch erhöht werden? :-s



####################### <- zB Wand
\ | | /
\ | | /
\ | | / <- Kamera-Ausschnitt
\ | | /
\| |/
\ /
|\ /|
| \ / | <- Laserstrahlen
| \/ |
/O~~##~~O\


Produziertes Bild:

------------------
------------------
-----O------O-----
------------------
------------------


Mein Ziel ist, durch eine Rotation in zB einem Raum eine grobe Umrisskarte des Raumes zu gewinnen. Später möchte ich dann darin navigieren und anhand weiterer Messungen meine Position validieren.

Grüsse,

Volki

Manf
08.09.2004, 15:46
Man kann die Werte in eine EXCEL Tabelle eingeben und erhält als Ergebins:
1. Winkel unter dem die Punkte erscheinen (in Bogenmaß)
2. Winkeländerung pro Meter kein Unterschied sichtbar (linienbreite)
3. Verhältnis der Winkeländerung pro Meter (parallel geteilt durch zusammenlaufend)
Es bestätigt sich die vermutete höhere Empfindlichkeit, aber geringfügig und bei 5m kaum noch zu messen.
Manfred

Volki
09.09.2004, 06:21
Hallo Manfred,


Es bestätigt sich die vermutete höhere Empfindlichkeit, aber geringfügig und bei 5m kaum noch zu messen.

Danke für deine Analyse. Aber im Nahbereich (bis ca. 2 Meter) macht es durchaus Sinn.

Weiss jemand, ob diese Variante der Messung schon versucht wurde?

Ich hab gestern kurz ein kleines Test-Programm im VB6 geschrieben, welches drei stark-rote Punkte auf einem 640x480 Bild identifiziert. Es benötigt dafür nur 0,02 Sekunden (Athlon XP 2200+). Damit käme ein solcher Einsatz doch durchaus in Frage, oder?

Ich frag mich, würden sich grüne Laser besser machen als rote? Das werde ich wohl testen müssen (kommt wohl auch auf die Kamera an).

Grüsse,

Volker

Manf
09.09.2004, 06:56
Danke für deine Analyse. Aber im Nahbereich (bis ca. 2 Meter) macht es durchaus Sinn.
Das Meßverfahren macht schon Sinn, ich meinte nur, daß die spezielle Ausrichtung mit den Strahlen, die sich nach ca. 5 Metern treffen, die Genauigkeit im Bereich über 40cm nur weniger als um 1% steigert.

Bei der Farbauswahl würde ich rot bevorzugen. Es kommt ja beim Ausfliltern auf die selektive Empfindlichkeit für die Farbe an. Die könnte man grundsätzlich bei rot, blau oder grün erreichen. Der Sensor ohne Farbfliter ist bei rot am empfindlichsten (also keine Einschränkung) und die roten Laser sind billiger.
Man kann ja auch das rot noch nach der besten Selektivität auswählen, gängige Farben sind 635, 650 oder 670nm. Ich nehmen zwar an, daß das entfernteste rot am besten ausgeflitert werden kann, aber es läßt sich auch leicht zeigen, daß beispielsweise 780nm von den grünen Sensoren stärker empfangen wird als von den roten. (Mit einem elektronischen Foto einer aktiven Ferbedienung).
Manfred

eFFex
09.09.2004, 06:58
ich denke mal an grüne laser ist schwerer ranzukommen als an rote...oder gibts mittlerweile auch schon grüne laserpointer?
Was recht interessant wär, wo wir schon bei "speziallasern" *grmpfl* sind...wären infrarot-laser.....die CMOS (oder wars CCD...du weisst was ich mein) - Kameras nehmen diese Bandbreite noch war. Problematisch wird, wenn dein Bot wild im Zimmer rumleuchtet und da Leute sind...da sind IR-Laser halt ein bisschen mehr ungeeuignet als "normale"/sichtbare...da die dir die Netzhaut "branden" ohne das du was merkst.....ansonsten (mit nem sichtbaren) würdest du wenigstens noch die Farbe rumfunseln sehen.

nux
09.09.2004, 09:51
Noch ein Ansatz meinerseits.
Man installiert eine Kamera und einen Laserpointer auf einer Plattform.
Der Laser wird nun in einem FEST definierten Winkel zu der Kamera eingestellt. Jetzt muss ich im Bild nur noch die Entfernung von Bildmitte zu dem Laserpunkt messen. Durch Trigonometrische Funktionen kann ich dann ganz einfach die Entfernung messen, da ich ich den Winkel habe und einen Fixpunkt für den Laser, sprich bei sagen wir mal einem Meter ist er in der Bildmitte.

Somit hat man einen Laser gespart und kann evtl den Winkel ja noch bei Variablen Entfernungen mit einem Servo oder Stepper nachstellen. (evtl untersetzen.)

Grüße, nux.

@Volker,
hast du einen ICQ oder eMail, bin momentan am gleichen Thema dran, auch mit VB6

Volki
09.09.2004, 15:33
@Manfred: Danke nochmals für deine Kommentare. Es hilft mir sehr weiter.

@eFFex: Ja, IR-Laser scheiden aus, da die Gefahr für den Menschen zu gross wäre. Nebenbei hat der Rob dann doch einen coolen Science-Fiction-Style. Erinnert sich jemand an den blauen Laserscanner am Anfang von Alien II? Macht sicher Eindruck... O:)

@nux: Nein, ICQ mache ich nicht. Aber Du kannst mir gerne eine Mail senden:
Dummy(AT)Inspirant(PUNKT)de

Bitte (AT) durch @ und (PUNKT) durch . ersetzen (Spamabwehr). Du kommst aus BW. Wo denn genau? Bin auch aus BW. Allerdings interessiere ich mich viel mehr für die Programmierung selbst (Purebasic oder VB) als den Bau eines Roboters.

Volker

02.11.2004, 16:05
ist das machbar ?:
ein laser und ein lichtsensor die mit etwas abstand am robo montiert beide genau entlang einer linie zielen koennen (man darf sich das wie mehr oder weniger schielende augen vorstellen). wenn sich eine (reflektierende) oberflaeche genau im schnittpunkt des lasers und des sensors befindet wird mithilfe des gemessenen winkels von laser/sensor ueber triangulation die entfernung berechnet.

wie 'dick' ist eigentlich der vom laserpointer erzeugte punkt ?
sind lichtsensoren ueberhaupt empfindlich genug um den punkt in 5m entfernung zu messen ?

holodri
02.11.2004, 16:08
...wie geschickt. einloggen vergessen. bitte antworten zu 'ist das machbar ?: ' hier anreihen ;)

pebisoft
03.11.2004, 16:23
ein lichtsensor nimmt kein reflektierten laser auf. zwecklos!
der cny70 reagiert als lichtsensor mit laser, wenn er direkt angestrahlt wird. die oben angegebene methode funktioniert nur, wenn die wand auf der gesamten messbreite keine wölbung oder vertiefung hat, ansonsten stolpert der roboter in ein loch.
mfg pebisoft

Manf
03.11.2004, 17:16
ein lichtsensor nimmt kein reflektierten laser auf.

Die Sharp Sensoren wie beispielweise der GP2D12 bemühen sich schon darum, einen reflektierten Strahl aufzunehmen. Das Licht wird dazu moduliert und beim Empfang gefiltert um die geringe Leistung noch bis 150cm zu erkennen.

Mit einem Laser aus einem Laserdrucker, der mit dem Sharp Sensor synchronisiert und für die Triangulation ausgerichtet wurde, wurden ohne Zusatzoptik auch 2 Meter erreicht.

Die Lösung ist mit der Einkoppelung in die Filterung im Ansatz etwas raffiniert, aber leicht zu realisieren. Ohne die spezielle Filterung des Sharpsensors wird es aber nicht so leicht gehen.

https://www.roboternetz.de/phpBB2/viewtopic.php?p=15807#15807

https://www.roboternetz.de/phpBB2/files/gp2d12__v-h_.jpg

04.11.2004, 16:22
HAbt ihr schonaml an die möglichkeit von uv-leds mit engemöffnungswinkel gedacht, oder kann die kamera das nicht herausfiltern?
Wenn ihr irgendwelche erfahrung gemacht habt inzwischen, dann bitte posten interessiere micha uch für das thema

mfg

Blasehase

Manf
04.11.2004, 16:37
Warum UV? Die Empfindlichkeit für IR ist besser. Hast Du besonders gut Filter für UV oder warum?
Manfred

holodri
05.11.2004, 14:38
danke fuer die hinweise, pebisoft, manf

..ich muss weiterbohren ;)...
koennte ich unter umstaenden den max. 5m entfernten punkt des lasers mit einer cmucam lokalisieren ? (..mit zoomobjektiv?)

pebisoft
09.11.2004, 21:08
entfernungsmessung nach dem obigen prinzip ohne laser.
an meinem robby habe ich die sharpsensoren gp2d12 (10-80cm).
jetzt habe ich eine cmoscamera von conrad für 12 euro draufgebaut mit einem
video-funksytem von reichelt für 39 euro. ich habe mich des öfteren gewundert, das
auf dem monitor immer 2 weisse punkte in der mitte erschienen, die ein bisschen
versetzt waren. ich dachte zuerst an eine linsenreflektion, habe mich aber gewundert,
das bei einem schwenk des robby der eine punkt auf der türecke stand und der andere punkt
schon weiter versetzt auf eine wand erschien, die 4 m entfernt war,
aber dann schon schwächer geworden war. dann habe ich an den sharpsensoren gewackelt,
und der punkt wackelte mit, welch ein wunder, es war der reflektionsstrahl vom sharpsensor,
der als weisser punkt auf einer fläche von der camera aufgenommen wurde.
die camera (12 euro) hat den unsichtbaren strahl auf der wand als weissen punkt dargestellt.
dann habe ich 2 sharpsensoren ganz aussen am robby gebaut.
jetzt kann ich anhand des kamerabildes sehen, wie weit der robby von einem hindernis
entfernt ist. die 2 weissen punkte auf dem bildschirm sind wie ein zielfernrohr.
eine entfernungsmessung über camera ohen teures zubehör. (camera 12 euro und sharpsensoren.)
mfg pebisoft

Manf
09.11.2004, 22:27
Das habe ich auch schon oft gehört und gesehen, je teurer die elektronische Kamera ist, desto mehr bemüht man sich darum den IR Anteil auszufiltern.

Eine einfache elektronische Kamera ohne Filter ist für nahes IR empfindlicher als für sichtbares Licht. Erst Zusatzfilter schwächen IR. Das Experiment ist leicht mit IR Fernbedienung und elektronischer Kamera durchführbar.

In Experimentierkreisen im Netz habe ich auch schon von Anleitungen gehört, IR Filter auszubauen, aber ich hatte noch keinen Bedarf dafür.
Manfred

pebisoft
09.11.2004, 22:40
hallo volki, du kannst jetzt die laserpointer weglassen und brauchst auch nicht mit einem programm die farbfilterung durchführen. mit der camera von conrad für 12 euro und den sharpsensor hast du ein hundertprozentiges messystem.
die weissen punkte werden von jedem grafikprogramm schnell gefunden.

bergowitch
10.11.2004, 19:35
Hallo,
etwas offtopic aber ich lese gerade von pebisoft "video-funksytem von reichelt für 39 euro"
welches ist das? ich würde nämlich gerne von meiner cmucam2 bilde drahtlos an den pc übertragen geht das mit dem gerät? hast du mal die nummer?
Danke
Gruß Stefan

Philipp_c
11.11.2004, 08:29
Wie weit seid Ihr inzwischen? Wäre es auch möglich Entfernungen bis 50m mit dem System zu messen? (kommt auf einen halben m nicht an).
Gruß Philipp

peterguy
11.11.2004, 11:02
Ich habe dieses Thema mit Interesse verfolgt, da ich auch an Projekten mit Visionsystemen arbeite.
Bei der Variante mit zwei Lasern (oder Sharpsensoren) könnte es zu folgendem Problem kommen:

Wenn der Mittelpunkt des Bildes auf eine Kante im Raum zeigt, leuchtet einer der Laser noch auf die Wand, der andere aber auf den Bereich hinter der Kante. D.h. die Punkte treffen nicht auf gleicher Höhe auf, sondern versetzt
So wie Pebisoft das in seinem Beitrag mit der Türkante beschrieben hat.
Jetzt frag ich mich, wie man solche Fälle filtern will? Denn ohne Korrektur würde das System falsche Werte anzeigen.
Die gleiche Problematik tritt auch auf, wenn man sehr schmale Gegenstände wie z.B. Stuhlbeine detektieren möchte. Im schlimmsten Fall leuchten beide Laser dran vorbei...


Hier der Lösungsansatz vom nux:


Noch ein Ansatz meinerseits.
Man installiert eine Kamera und einen Laserpointer auf einer Plattform.
Der Laser wird nun in einem FEST definierten Winkel zu der Kamera eingestellt. Jetzt muss ich im Bild nur noch die Entfernung von Bildmitte zu dem Laserpunkt messen.


Wenn man das Modell nach dem nux'schen Prinziep :wink: aufbaut, hat man diese Probleme nicht. Deswegen würde ich diese Variante bevorzugen.


Gruß

Peter

pebisoft
12.11.2004, 07:58
schau bei reichelt unter "funkübertragungssystem". kostet jetzt 37 euro.
wenn die kamera video-out hat kann man damit übertragen. schau einfach mal hin.
mfg pebisoft

RCO
12.11.2004, 08:53
Klar, das Problem ist, das man 2 Sensoren hat, die wirklich Punktgenau messen, da gibts einige Problemfälle.
1. Wenn die Laser (o.ä. ich nenn sie jetzt mal immer laser) einen bestimmten Winkel haben, werden sie sich irgendwann schneiden, es ergibt sich nur ein Punkt, was eigentlich kein Problem ist, aber wenn der Gegenstand noch weiter weg ist kreuzen sich die Strahlen und es erscheinen 2 Punkte. Der Roboter kann nun nicht entscheiden gekreuzt oder nicht, daher wären 2 verschiedene entfernungen möglich. Abhilfe würde z.B. ein 3. Laser schaffen, der über der kamera angebracht ist und schräg nach unten leuchtet, so das nach der "Kreuz-entfernung der Punkt unterhalb, vorher überhalb des Mittelpunktes liegt. Oder man könnte die Laser zwar mit gelichem Winkel, aber leicht höhenversetzt anbauen, so das man entscheiden kann höherer von Links, niedriger Punk = Rechts...
was eine etwas einfachere Methode wäre.

2. wenn die Beiden Punkte versetzt auftreffen ist das im Grunde kein Problem, ein Problem ist aber , wenn der LAser so schräg befestigt ist, dass er hinter ein Hinderniss leuchtet, was von der Kamera nicht gesehen werden kann --> ein Punkt verschwindet...

3. Dünne/schmale Hindernisse werden nicht zwnagsläufig erkannt, aber sowas lässt sihc vermutlich auch mit dem Sharp cniht lösen, sondern nur mit Ultraschall...

MFG Moritz

pebisoft
12.11.2004, 10:06
es werden auch dünne gegenstände (bleistift zb) erkannt vom sharpsensor. der sensor muss dann mit einem servo geschenkt werden.
ich mach das zb mit meinem robby. er hält an , der sensor wird geschwenkt und die hindernisdaten werden in dem i2c-eeprom 24c16 geschrieben mit dem avr16 und bascom. wenn der robby ankommt in meinem arbeitszimmer nehme ich den eeprom vom steckbrett stecke den auf dem steckbrett auf meinem tisch, und werte diesen aus. auf dem steckbrett des robby stecke ich wieder einen neuen leeren und schicke ihn wieder los. ich habe mir 4 eeprom 24c16 stück für 3 euro zum spielen/experementieren gekauft.
mfg pebisoft

RCO
12.11.2004, 10:13
Ja, aber wenn man die Laser alle bewegen würde, würden vermutlich einige Ungenauigkeiten entstehen. Man könnte natürlich die komplette Apparatur schwenken, aber die Frage ist, wie schnell die Bildauswertung da mitkommt, obwohl, warum nicht...
Aber das löst auch nciht die Probleme, die ich geshcildert habe, höstens lassen sich dadruch das eine problem der schmalen Hindernisse lösen, wie du schon gesagt hast.

MFG Moritz

pebisoft
12.11.2004, 11:33
beim lesegerät am der kasse wird der laserstrahl auch hin und her geschwenkt mit kleinen spiegeln.

RCO
12.11.2004, 12:54
Das ist war, aber die Daten werden dann ja nciht von einer Kamera erfasst und einem PC ausgewertet. Die erkennen ja, glaube ich nur hell/dunkel halt den BArcode. Ob man damit entfernungen messen kann?

Ach übrigens man kännte sich einen Laserpointer sparen, wenn man einen halbdurchlässigen Spiegel benutzt, falls der punkt dann noch hell genug ist. Gibts in allen CD-Playern...

MFG Moritz

glowbrain1
17.11.2004, 09:06
Was für ein cmos kamera habt ihr benützt da? Ich finde es nicht mehr bei Konrad.

Gibt’s eigendlich auch eine kamera mit ein anständigen digital output, so das mann es direct on den MC irgendwie draufmachen kann?

RCO
17.11.2004, 10:38
Ein uC kommt vermutlich mit den ganzen Infos eines Kamerabildes nicht klar. Du musst ja quasi Bildverarbeitung auf dem Ding betreiben, ich glaube nicht, dass das ein uC schafft, brauchste schon nen PC.


S/W-MINIATUR-KAMERA MODUL 2
Artikel-Nr.: 150014 - 14
nur 14,95 EUR


S/W-KAMERA MODUL 1
Artikel-Nr.: 150001 - 14
nur 12,95 EUR

MFG Moritz

glowbrain1
17.11.2004, 11:22
Danke für die infos Moritz.

Bildverarbeitung ist für diese Aufgabe ein bisschen ein übertriebenes Ausdruck oder? Lichtpunkt suche in ein 352 x 288 (12K) Matrix sollte nicht so schwer sein, oder? Fängt in die Mitte an und macht ein „flood-fill“ suche nach Außen, bis Mann diese karachteristisches Signatur gefunden hat. Aber vielleicht unterschätz ich die aufgabe.

Ich werde aus Spaß probieren es als „Komponente“ zu entwickeln. Ein Kamera, ein laser, ein MC (am anfang etwas mucho mächtiges, ein Gefühl für die aufgabe zu kriegen, dann natürlich so klein wie möglich), ein I2C o.e ausgang.

Werde gut ankommen in Roboter kreise schätze ich…

Kann vielleicht probieren so eine Kamera zu hacken, aber es muss auch etwas mit digi output geben. Adressierbar wie EEPROM vielleicht?

Vorschläge gerne angenommen….

RCO
17.11.2004, 13:01
Leider keine Vorschläge, aber wenn du das hinbekommst wäre es stark. Wie schon beschrieben wäre es vielleicht das beste den Contrast soweit zu regeln, bis du fast nur noch die zentren der Punkte hat, dann bräuchte man noch die Position...
Der Speicher ist ja abhängig, ob du jetzt Farbe oder S/w nimmst.
Wäre stark, wenn das irgendwie gehen würde.

MFG Moritz

pebisoft
17.11.2004, 17:29
es gibt zwei möglichkeiten. entweder du baust einen laptop mit video-karte auf dem robby oder aber du überträgst die bilddaten so wie ich mit einem videosender(2,4ghz) zum pc, der macht einstandbild, wertet dieses aus und schickt so wie bei mir die steuerdaten über ir zum robby. mit dem video empfänger kann man nämlich ir-signale zum sender schicken.
man schalttet sozusagen damit den fernsehsender um von wo der videosender sendet. dieses kann man dann zur datenübertragung zum robby verwenden. ich mache das zur zeit mit den standbildern, werte die aus und steuere dann den robby. ist sehr zeitaufwendig für den pc, aber es funktioniert. mir kommt es hier nur auf die machbarkeit an. wie ich vorher berichtet hatte, bildet der sharpsensor auf der wand zwei flecke ab (ir-licht), die meine cmoscamera von conrad für 12 euro als weisse flecke darstellt und auf dem bildschirm sichtbar sind. das kommt nur dadurch, weil man auf die ir-filterung verzichtet hat. ich schalte dann den kontrast der bilder auf ganz hoch und die flecken werden noch heller. ist nicht ganz optimal, weil der raum auch manchmal helle flecken hat. da
sich die geometrie nur in der breite ändert kann man den bildschirmausschnitt nach oben und unten schon stark begrenzen.
mfg pebisoft

Manf
17.11.2004, 18:34
Die Darstellung der Sharpsensor Lichtflecke ist schon ab und zu geschlidert worden. Gibt es auch schon ein Foto dazu das man hier einmal posten kann? Es geht mit um die räumliche Ausdehnung der Lichtflecke in einer nachvollziehbaren Umgebung (z.B. 1m vor einer weißen Wand, ... oder ganz anders).
Ich mache die Aufnahme auch bei Gelegenheit selbst aber wenn es ein Foto gibt, dann wäre ich sehr daran interessiert.
Manfred

pebisoft
17.11.2004, 21:46
im "album" unter "roboterbilder" habe ich ein bild reingestellt. habe es mit der cmoskamera für 12 euro von conrad gerade aufgenommen. die kamera befinget sich auf dem robby. mit der wintv-card auf dem pc über videofunk vom robby der sich im anderen zimmer befindet habe ich das bild festgehalten. es befinden sich 2 sharpsensoren übereinander.
mfg pebisoft

Felix G
17.11.2004, 22:00
Wenn bekannt ist welcher CMOS Sensor auf dem Kameramodul sitzt,
könnte man den ja auch einfach ausbauen und in eine eigene Schaltung setzen.

Dann kriegt man das Bild direkt und in digitaler Form vom Sensor.
Ist natürlich etwas umständlicher da man sich selbst um die korrekte Ansteuerung kümmern muss.

pebisoft
17.11.2004, 22:27
ich habe auch schon 4 normale ir-dioden l271 vorn auf dem robby befestigt und im dunkeln fahren lassen. der weg ist richtig hell erleuchtet bis zu 50cm vor dem robby, natürlich sieht das nur die cmoskamera , der raum ist für das menschliche auge immer noch dunkel. eine recht interessante sache wenn man dann das bild auf dem pc verfolgen kann obwohl der raum dunkel ist und der robby mit ir-scheinwerfern fährt.
vielleicht könnte einer den versuch einmal mit optischen linsen fortsetzen.
wenn der lichtpunkt mit einer linse scharf erscheint, braucht man sich keine gedanken mehr um den cmossensor von der kamera für 12 euro machen. sie liefert alles was man braucht, das andere macht mein pc.
mfg pebisoft

Manf
18.11.2004, 10:44
im "album" unter "roboterbilder" habe ich ein bild reingestellt.

Vielen Dank für das Bild, sehr eindrucksvoll wie stark der Strahl gebündelt ist. Ich habe schon so viel mit den Sharp Sensoren gemessen und schon soviel fotografiert, aber das Bild habe ich noch nicht gemacht.
Ich sehe es mir noch genauer an und werden noch eigene Messungen dazu machen.
Manfred
https://www.roboternetz.de/phpBB2/album_thumbnail.php?pic_id=271

RCO
18.11.2004, 11:39
Warum sieht man da unten 2 Punkte? sind dan 2 scharps übereinander?

Manf
18.11.2004, 11:43
es befinden sich 2 sharpsensoren übereinander.
mfg pebisoft
Das kleine schwarze das sind die Buchstaben meinte einst Heinz Erhardt.
Manfred
http://images.google.de/images?q=tbn:Kkg1GV3uHYUJ:www.onlinekunst.de/februarzwei/20/inga_erhardt.jpg

RCO
18.11.2004, 11:48
;-)
Aber mal ne ganz andere Frage, sind die Lichtpunkte des Scharps denn auch tagsüber sichtbar? Also wenns etwas heller ist hat man mit Lasern ja kein Problem, solang man den kontrast regelt, aber wie sieht es bei den Sharps aus, kann man da die Punkte noch rausfiltern?

MFG Moritz

Manf
18.11.2004, 11:51
Die Sharps an sich funtionieren natürlich auch bei Tageslicht.
Das Licht ist dazu zur besseren Erkennbarkeit moduliert.
Manfred

RCO
18.11.2004, 11:59
Das meinte ich natürlich nicht ;-)

Ich weiß ja nicht, was du damit meinst:


Das Licht ist dazu zur besseren Erkennbarkeit moduliert.

vermutlich, dass das Licht des Sharpsensors von der Kamera moduliert wird.
Ich wollte eigentlich wissen, ob man die Lichtpunkte die die Sharps erzeugen auch am Tage mit der Kamera sehen kann, also so deutlich, dass man mit Hilfe der Kamera und Filtern die Punkte sauber abheben kann. Bei Lasern ist das ja wegen der Imensen Leuchtkraft weniger das Problem, aber die Sharps? Bei nacht oder dunkelheit ist das natürlich kein Ding, aber...

MFg Moritz

pebisoft
18.11.2004, 13:54
rco teste das mit den sharpsensoren mal aus, wie diese sich tagsüber verhalten und wie die lichtpunkte sich in der helligkeit verhalten wenn man mit filter arbeitet.
mfg pebisoft

pebisoft
18.11.2004, 18:17
hallo, rco , wie weit bist du mit dem sharptest bei tageslicht, hast du schon daten, die du veröffentlichen kannst. würde mich freuen.
mfg pebisoft

pebisoft
18.11.2004, 18:31
hallo, ich habe noch einmal einen test mit einem laserpointer gemacht. der lichtfleck ist heller als der vom sharp und deutlicher zu erkennen.
er hat áber einen grossen nachteil, so wie der laserstrahl auf eine kannte trifft oder nicht genau im 90grad-winkel auftrifft streut er das licht so stark, das kein fleck mehr zu erkennen, nur noch streulicht. da aber hindernisse erkannt werden müssen, die auch einmal nicht 100%zenzig im 90 gradwinkel stehen ist für diese methode der laserpointer nicht zu gebrauchen. ich warte auf einen test mit linsen vor dem sharpsensor. wer macht es mal?
mfg pebisoft

Manf
18.11.2004, 20:06
ich warte auf einen test mit linsen vor dem sharpsensor.

Ich finde die Lichtpunkte des Sharpsensors sehr schön konzentriert für die LED und die kleine Linse.
Welche Optik sollte das verbessern? Man müßte dann schon ein Fernglas (-Linsensystem) einsetzen.
Beispielsweise ein Theaterglas mit der Vergrößerung 3x mit Objektiv in Richtung LED.
Manfred

RCO
19.11.2004, 10:14
Wie aufwendig ist es denn überhaupt bzw. wie funktioniert das, ein Bild in ein Programm zu laden und dann da Filter drüber laufen zu lasssen und es anschließend auszuwerten, da ich nur ein wenig Ahnung von Delphi und uC programmierung habe, kann ich mir das nicht so vorstellen, ob es da möglichkeiten gibt Filter aus Grafikprogrammen zu benutzen o.ä.

MFG Moritz

Manf
19.11.2004, 19:14
Nur mal zwischendurch zur Optik für Sharp-Senoren.
Ich mußte erst einmal eine Kamera finden, die die 880nm noch einigermaßen aufnimmt. Die Casio QV8000SX ist ja als sehr Lichtempfindlich eingestuft, die filtert das gut weg. Die Sony DCRPC5E hat selbst einen IR "Scheinwerfer" und läßt immerhin etwas durch.

Ein erster Test mit einer Lupe mit 10cm Brennweite zeigt, daß sich das IR Licht wie erwartet bündeln läßt. Links ohne, rechts mit Lupe in sonst gleicher Konfiguration auf ca. 30cm vor weißem Papier.
Manfred

pebisoft
19.11.2004, 20:05
man müsste jetzt eine linse finden die so günstig bündelt, wie im laeserpointer für 8 euro. wie gross ist der kreis rechts und links?
mf pebisoft

Manf
19.11.2004, 20:44
Links ist es die normale Größe von knapp 1cm, rechts ist es dann so um die 3mm aber bei einer Einzellinse (Kein Fernrohr) eben entfernungsabhängig.
Um aus einem parallelen Bündel wieder ein paralleles Bündel zu machen braucht man zwei Linsen. Der Quotient der Brennweiten ist dabei die Strahlbündelung/Aufweitung.
Das gilt in Grenzen natürlich nur für Laserlicht. Bei den ausgedehenten Quellen von LEDs ist das, was der Sharp Sensor erreicht, schon beachtlich.
Ich suche noch mal eine Demonstration dafür heraus mit der man etwas ausprobieren kann.
Manfred

So, jetzt:
Hier ist eine interaktive Darstellung des Strahlengangs enthalten, bei der man die Positionen und die Brennweiten von 2 Linsen einstellen kann.

http://www.pixel-zoo.de/OPTIK-Texte-html/Kapitel8_Abbildungen.htm#IBE%20Abbildung%20durch%2 0dünne%20Linse

Christian Sturm
22.11.2004, 01:27
MMh, nur mal so eine Idee, wie wäre es, wenn man die Laser bewegt....
Laser links - Kamera - Laser rechts

Die Laserstrahlen werden Von "zuweit" außen nach innen.... invertiert paralel bewegt... also daß sich die Punkte nähern. Der winkel der Laser muß erfasst werden. Ebenso der Beginn der Messung. In dem Moment an dem sich die Laserpunkte treffen endet die Zeitliche Messung. so kann man aus der zeit die entfernung messen.

Wenn ich mich nicht irre, reicht natürlich auch der Winkel der Laser zueinander.

Nun bringt man die Laser wieder in Ausgangsposition und beginnt von vorn.
Das ganze sehr schnell, dann müßte man gute Ergebnisse bekommen oder?

Habe damit sogut wie garkeine Erfahrung.... würde mich trotzdem brennend interessieren.... Also gebt mal bitte ne Antwort ;)

VLG Chris

Christian Sturm
22.11.2004, 01:30
@moritz

Das kommt darauf an welche Arbeitsgeschwindigkeit du benötigst.
Beispielsweise für Visual Basic gibt es einen Assembler-Source der zwei Bilder miteinander vergeleicht, und die Differenz herausfiltert.

Bei Bildern der Größe 720x576 komme ich auf meinem System 2,53Ghz P4 auf etwa 60 Bilder/s.

VLG Chris

Manf
22.11.2004, 07:32
Die Laserstrahlen werden Von "zuweit" außen nach innen.... invertiert paralel bewegt... also daß sich die Punkte nähern. Der winkel der Laser muß erfasst werden. Ebenso der Beginn der Messung. In dem Moment an dem sich die Laserpunkte treffen endet die Zeitliche Messung. so kann man aus der zeit die entfernung messen.

Mit Bewegung, Überprüfung des Treffens der Punkte und der Messung der Bewegung erhält man eine Reihe von weiteren Meßgrößen die nicht zur Steigerung der Genauigkeit gegenüber dem anfangs beschriebenen Verfahren beitragen.
Eine Verbesserung ist damit zunächst nicht zu erreichen.
Manfred

22.11.2004, 19:53
das dürfte aber das LAser verschwindet hinter Stuhlbein Problem lösen, da sich der Focuspunkt (Lasertreffen) von weitweg auf nah vor die Kamera bewegt.... so wird immer der dichteste Punkt ermittelt....

Denke ich mir... *grübel*

VLG Chris

Manf
22.11.2004, 22:26
das dürfte aber das LAser verschwindet hinter Stuhlbein Problem lösen
Laser und Stuhlbeine vertragen sich manchmal eher gar nicht.
Manfred

23.11.2004, 01:39
ok dann lassen wir das ganze ding komplett rotieren....
...dann klappts aber ;)

Manf
23.11.2004, 07:02
so etwa? ............. [flipv:8f5df03fbf]:wink: [/flipv:8f5df03fbf]
Manfred

RCO
23.11.2004, 09:57
Also ich finde die Anfangsidee noch am sinnvollsten. 2 Laser leicht höhenvesetzt, damit man sie unterscheiden kann!
Diese haben einen gewissen Winkel und kreuten z.B. bei einem geeichten Wert 1m oder so.
Sind also beide Laserpunkte genau übereinander ist der Abstand 1 m.
Ist der obere Laser(blau) Linkspunkt links und der untere(rot) rechts, ist der Abstand größer ein 1 m, andernfalls kleiner. Über d1 und d2 sollte man einen Durchschnittswert erhalten. Verschwindet einer der beiden Punkte ist immer noch ein zweiter da.

DER NACHTEIL:

Bei kreuzenden Lasern ist der Nachteil, dass der Erfasste Raum je nach Abstand des Objektes Schwankt, im schlimmsten Fall, leuchten beide Laser genau durch ein Schlüsselloch, weil sie sich da kreuzen, und der Roboter denkt, dass da kein Hinderniss ist, oder so.

Verschwindet einer der Punkte, gibt es 2 Fälle:

1. er verschwindet hinter einem Stuhlbein, ein nahes Hinderniss (je nach Winkel der LAser auch ein fernes oder mittelmaß)

2. Ein Objekt ist soweit weg, dass der Laser außerhlab des Sichtbaren bereiches der Kamera auf ein Objekt trifft, also zu weit Links oder rechts

Nun muss man entscheiden welcher der beiden Fälle eintritt, oder die Winkel geringer, die Laser paralleler anordnen.

MFg moritz

EDIT:
Den Laser schwenken zu lassen, würde einige Probleme lösen, man würde um den Roboter herum alle Abstände bestimmen, und könnte direkt herausfinden, wohinter der Laser verschwunden ist...
allerdings ist das ganze vermutlich schon aufwendig genug.

Fränki
23.11.2004, 10:42
Schaut euch mal dies an ist das nicht OK?

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

Hat keine drehenden Teile und bringt einiges an Information: Position eines Hinderniss und Entfernung
Gruss Frank

pebisoft
23.11.2004, 11:02
alles sehr ungenau. man muss noch dran arbeiten. der obige aufwand ist zu gross.
mfg pebisoft

RCO
23.11.2004, 12:07
Also ich finde das schon interessant, aber auch hier schwankt die größe des erfassten Raumes vom Abstand. Ist er nah, erkennt er keine niedrigen Gegenstände, ist ein Objekt zu weit weg, leuchtet der Laser auf den Boden.
Nochmal meine Frage, wie schwierig ist es denn, diese Striche in Vektoren umzurechenen usw. gibt es hier jemanden, der das kann bzw. schon gemacht hat. Also ich denke, dass das Rechnen mit den Punkten einfacher ist, weil linear, auf der anderen Siete lässt sich mit so einem Strichlaser natürlich gleich ein größerer Raum überwachen.

Nötig bei diesem Verfahren ist doch nur ein Diagramm zu erstellen, ein Abbild des Laserstriches in einem koordinatensystem, dann weiß man gleich, (desto höher der Strich desto näher), wie weit man fahren kann. Hm... eigentlich ein simples Konzept, gefällt mir. :-)


MFG Moritz

Manf
23.11.2004, 12:44
Schaut euch mal dies an ist das nicht OK?

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

Hat keine drehenden Teile und bringt einiges an Information: Position eines Hinderniss und Entfernung
Gruss Frank
Das ist sicher schon ganz gut, speziell die Erzeugung der Linie ist ein überschaubarer Aufwand. Wenn die Hindernispofile in senkrechter Richtung konstant sind, ist es sicher einsetzbar. Man kann dan für jede Richtung die Höhe der Linie messen und daraus den Abstand angeben.

Ganz nett ist sicher auch, daß man die Kamera und Bildverarbeitung schon für einen anderen Zweck da ist und der Laser nur für die Abstandsmessung zugeschaltet wird.

Man kommt dann natürlich wieder auf die Fälle in denen sich ein Hausschuh zwischen den Roboter und die Entfernung geschlichen hat, an der der Laserstrahl den Boden trifft.

Mal sehen was noch kommt.
Manfred

Fränki
23.11.2004, 19:28
Na, die Linie wird mit einem LineLaser erzeugt ( z.B. Conrad ) siehe Text im Bild!
OK, man muss bei der Verarbeitung sicherlich einen 'Verlauf' der Bilder mitverarbeiten wenn sich der Bot bewegt. Schick finde ich das man z.B. ersteinmal 'schnell' fahren kann bis rote Pixel ( weisse bei SW-Camera ) im oberen Bild-drittel detektiert werden.
Klar das Konzept hat eine Grenze: Eine nach vorn gerichtete Kante, z.B. niedriger Tisch wird übersehen.
Abhilfe: 2. LineLaser von unten nach oben gerichtet und mit Laser 1 abwechselnd 'schauen', soll heissen: Bild mit Laser1 = ein Auswerten, dann mit Laser2 = ein das nächste Bild...

RCO
24.11.2004, 09:19
Das ist ne Lösung, aber gut finde ich uach einfach, dass man daimt eine einfache Objekterkennung machen kann, man kann runde von geraden OBerflächen unterscheiden etc. Allerdings wird man auch mit 2 Lasern nie ein vollständige Abdeckung des Raumes hinbekommen.

MFG Moritz