c't

c't-Projekte - Mailinglisten


[Voriger (Datum)] [Nächster (Datum)] [Voriger (Thread)] [Nächster (Thread)]
[Nach Datum][Nach Thread]

Re: [ct-bot] Informationen zu den Abstandssensoren

Absender: Torsten Evers
Datum: Fr, 17.03.2006 13:54:17
In-reply-to: <441A94E3.6060709@xxxxxxxxxxxx>
References: <9612803660.20060317112342@xxxxxxxxxxxxxxxxx> <8614128726.20060317114547@xxxxxxxxxxxxxxxxx> <441A94E3.6060709@xxxxxxxxxxxx>


Hallo Herr Thiele und Herr König,

Am Freitag 17 März 2006 11:52 schrieb Peter König:
> Thorsten Thiele schrieb:
> > Erste Einschaetzung: problematisch ist wahrscheinlich weniger das
> > Fremdlicht als mehr die Oberflaechentextur der Tischlampe. Der Sensor
> > muss eine Chance haben, das von ihm selbst abgestrahlte IR-Licht in
> > vernuenftiger Menge zurueckzubekommen. Die Mattglas-Lampe wird
> > vermutlich einen grossen Teil dieses Lichtes entweder durchlassen oder
> > streuen.
>
> Was ich gleich hätte schreiben können: Im ausgeschalteten Zustand der
> Lampe bekam ich realistische Werte... 8-)
hierzu möchte ich kurz meine Erfahrungen mit den Distanzsensoren schildern:

Nachdem auch bei mir die Werte zunächst sogar über alle drei Hex-Stellen 
schwankten und so natürlich keine Sinnbringende Ermittlung der 
Kennlinienwerte a und b möglich ist, habe ich folgende Maßnahmen ergriffen 
und die dargestellten Ergebnisse erhalten:

1. Messen des Widerstands zwischen Aluträger und Gehäuse der Sensoren

Dabei erhiehlt ich zunächst das Ergebnis: 4,7kOhm. Nach bekleben des 
Aluträgers mit Isolierband und der Verwendung einer Unterlegscheibe war der 
Widerstand dann unendlich. Kurze Momente der Freude später sponnen die 
Sensoren wieder. Nachmessen ergab wieder 4,7 kOhm. Es stellte sich heraus, 
dass nun ein Schraubenkörper die Wandung der Öse im Sensor berührte. 
Ich legte dieses Vorgehen daher zunächst ad acta, da mir hierzu keine 
geeignete Lösung einfiel.

2. Softwareseitiges Entprellen

Auf www.ctbot.de gibt es einen Patch, der Spitzenwerte ausfiltert (Werte, die 
sich um die Höhe des letzten Messwerts von diesen unterscheiden, werden 
verworfen. Link: 
http://www.ctbot.de/forum/patch-distanzsensoren-schlagen-kurzzeitig-sehr-stark-aus-t203.html

Dies bewirkt zwar ein bischen mehr Stabilität, wenn man die Werte in 
bot-local.h auf die ungefähren Messwerte anpasst aber eine vernünftige 
Einstellung auf die Kennlinie der Sensoren ist so nicht möglich, d.h. es 
reicht maximal zur Definition einer bestimmten Entfernungszone, bei der man 
z.b. umdrehen möchte.

3. Patch wie auf ct-bot.de empfohlen (2x 100nF Kondensatoren zwischen VCC und 
GND des Sensors)

Sorgt bei mir nur dafür, dass die Sensoren beim Einschalten des Bots zunächst 
auf sehr hohen Werten sind und sich dann langsam einpegeln. Danach schwanken 
die Werte wie schon zuvor.

4. Befestigung der Sensoren mit doppelseitigem Klebeband

Ich habe die Sensoren dann mit doppelseitigem Klebeband fixiert, um einen 
Kontakt mit dem Aluträger komplett zu verhindern und mittels Isolierband den 
Sensor noch von der Sensorplatine isoliert. Widerstand zwischen Sensorgehäuse 
und Aluträger ist nun dauerhaft unendlich.
Die Messwerte schwanken zwar immer noch über die letzten zwei Stellen aber ich 
habe damit einmal die Werte a und b bei mir bestimmt (51000 und 45 bei mir). 
Die Entfernungsmessung arbeitet nun besonders im Bereich 10-50cm recht gut 
und hat nur wenig Fehler. 

Einschränkungen die dabei noch geblieben sind:

Streulicht von der Oberfläche ist anscheinend noch ein sehr grosses Problem. 
Auf einer glatten Tischoberfläche sorgt es für Schwankungen um bis zu 5-10 cm 
in der Entfernungsmessung. Bei matten Oberflächen reduziert sich dies auf 
beinahe Null. Man könnte dies evtl. verhindern, indem man den nach unten 
"schielenden" Sensor dreht, was aber iirc mit der Ladeklappe kollidieren 
würde. Tut man dies jedoch und bringt ggfs. gar noch einen kurzen 
Pappstreifen als "Sichtschild" unter den Sensoren an, arbeitet die Messung 
auch auf glatten Flächen recht gut. Allerdings muss man den Sensor senkrecht 
zur Oberfläche neigen (Unterlegscheiben bei Schraubenbefestigung oder dickere 
Klebefläche) um wirklich die Entfernung zur Wand und nicht eine Schräge zu 
messen.
Dazu bleibt der "Fehler" mit durchsichtigen Körpern. 

Alles in allem denke ich, eine Lösung wie ein Radarmodul (KMY24 z.B., 
Datasheet gibt es hier: 
http://www.ortodoxism.ro/datasheets/infineon/1-kmy24.pdf) wäre besser,um vom 
Licht unabhängig Hindernisse erkennen zu können.

Mfg,

Torsten Evers