PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : SRF02 misst nur bis 1,7m?



catchme
13.01.2007, 11:51
Hallo!
Ich habe mir letztens den neu herausgekommenen Ultraschall-Sensor SRF02 bestellt.
Nun habe ich heute endlich den I2C-Bus zum Laufen bekommen, jedoch stehe ich nun vor einem neuen Problem.
Im Nahbereich scheint der SRF02 anstandslos zu funktionieren, doch auch wenn innerhalb der nächsten 6m kein Hindernis ist, gibt er mir nur den Wert 172 im Low-Byte aus. D.h. er misst eine Entfernung von 1,72m, obwohl kein Hindernis da ist.

Hat jemand schon mal ähnliche Erfahrungen mit einem Ultraschall-Modul gemacht?
Kann das evtl. an Übertragungsfehlern im I2C-Bus liegen, vielleicht stimmt die Frequenz nicht (liegt bei 200kHz)?
Fallen euch sonst irgendwelche Lösungsansätze bzw. Möglichkeiten, mit der Fehlersuche zu beginnen, ein?

greetz max

Manf
13.01.2007, 12:06
Der SRF02 arbeitet bei 40kHz und soll bis 6m gehen,
der SRF 235 hat 235kHz und soll bis 1,2m gehen
hier gibt es noch ein paar Daten dazu.
http://www.robot-electronics.co.uk/shop/Ultrasonic_Rangers1999.htm
(Nur dass da erst mal keine Verwechslung vorliegt.)
Manfred

http://www.robot-electronics.co.uk/shop/images/srf02-1.jpg http://www.robot-electronics.co.uk/shop/images/srf235b.jpg

catchme
13.01.2007, 12:24
Nein, es ist ganz sicher der SRF02.
Allein schon vom Aussehen her ;D
mfg max

catchme
17.01.2007, 19:51
Also ich hab jetzt mal den Verkäufer angeschrieben weil ich echt nicht weiterweiß.
Egal ob ich die Entfernung in cm, Inch oder ms auslese, es ist immer das Gleiche! Bis zu einem bestimmten Wert funktioniert alles ohne Probleme...
Wisst ihr vielleicht ob es die Möglichkeit eines Firmware-Updates gibt?
Mir fällt auch nicht ein, was an dem Sensor kaputt sein soll. Wenn das Signal ab 1,7m zu schwach wird, müsste er ja absurde Werte anzeigen. Aber er bleibt ständig bei 1,7m stehen....
:-s
mfg max

Tuxy
17.01.2007, 20:08
Hallo!
.....SRF02 bestellt.
.......vielleicht stimmt die Frequenz nicht (liegt bei 200kHz)?....



Der SRF02 arbeitet bei 40kHz und soll bis 6m gehen....

Die Frequenz ist doch falsch....oder irre ich da?

catchme
18.01.2007, 14:51
Die Frequenz ist doch falsch....oder irre ich da?
Die Frequenz 200kHz ist auf den I2C-Bus bezogen ;)
Die 40kHz sind die Ultraschallfrequenz, die kann man gar nicht ändern!
mfg max

voidpointer
30.01.2007, 08:29
Hallo Max und Alle,

habe mir vor zwei Wochen ebenfalls den SRF02 bei Robotikhardware gekauft. Hab mal gleich zwei genommen, falls ich einen schrotte ;) Gestern mit einem kleinen Assemblerprogramm von einem AtMega8 aus angesteuert. Erst waren die Messungen ziemlich gut. Klar, unter 20 cm hat er seine Probleme und gibt komische Werte zurück. Aber so bis 3 Meter hat er im Zimmer alles gut vermessen (größere Abstände waren nicht zu finden, muss nun draußen testen). Naja.

Dann habe ich wohl eine kleine Dummheit begangen, indem ich auf die Platine des Sensors Klettband geklebt habe, um ihn flexibel befestigen zu können. Ich vermute mal, dass es beim Abziehen des Klettbands elektrostatische Aufladungen gegeben hat, die einem Bauteil der Platine nicht bekommen sind. Wenn ich den Sensor jetzt einschalte, zeigt er Daten an wie "00B8, 00B6, 00B3, 00B0, 00AD, 00AB, 00A9, 00A9, 00A9" und hängt sich dann bei 00A9 (169 cm) fest. Wenn ich aber jetzt lese, dass andere Leute das gleiche Problem haben, gibt es vielleicht noch Hoffnung.

Weiss jemand etwas über die elektrostatischen Eigenschaften von Klettverschlüssen?

Ich habe den Sensor aber noch nicht ganz aufgegeben. Wollte nochmal ein bisschen mit der Kalibrierung 'rumspielen und verschiedene Register auslesen und Modus probieren. Aber erstmal habe ich schnell den zweiten Sensor angelötet und der geht (noch). Diesmal lasse ich das Klettband aber weg :-s

Gruß, Achim.

Manf
30.01.2007, 09:17
Das Klettband wurde ja geklebt, dann besteht ja auch Hoffnung dass der Fehler nur durch eine Verunreinigung durch den Kleber bedingt ist.
Wie sieht es damit aus?
Manfred

voidpointer
30.01.2007, 10:06
Hallo Manfred,

ja, ich habe die Platine mit der Lupenlampe nach Verunreinigungen untersucht. War eigentlich alles OK. Mir ist aufgefallen, dass vom Herstellungsprozess viele kleine Lotkügelchen an den SMD-Teilen hängengeblieben sind, die man mit einem kleinen Schraubenzieher entfernen kann. Nach der "Reinigung" habe ich den Sensor aber nicht nochmal getestet. Muss ich nachholen.

Mit dem aufgeklebten Klettband habe ich kurz getestet, wie der Sensor am Montageort festhält - einmal angeklettet und wieder abgezogen. Dann noch ein Foto mit Blitzlicht, aber das sollte ja so eine Schaltung mitmachen, oder ;)

Mein Fehlerbild ist auch etwas anders, als das von Max, bei mir zeigt er weder kurze noch lange Entfernungen an, einfach nur 169 cm.

Gruß, Achim.

Manf
30.01.2007, 10:27
Das sollte eine Schaltung alles mitmachen, gerade deshalb suche ich ja auch nach einer Erklärung.
Es reicht ja schon eine kleine Verunreinigung die zwischen zwei Leiterbahnen gedrückt wurde (und auch wieder entdernt werden kann).

Die Empfindlichkeit für statische Aufladung ist bei aufgebauten Schaltungen oft gar nicht so groß wie bei isolierten einzelnen Bauelementen. Blitzen müßte man schon auch etwas sehr viel kräftiger um etwas zu beschädigen.
Manfred

voidpointer
30.01.2007, 10:31
Na gut. Heute abend wärme ich nochmal den Lötkolben an und mache ein paar Versuche. Ich melde mich wieder.

Gruß, Achim.

catchme
30.01.2007, 15:13
Hi Achim,
na wenigstens bin ich nicht allein. Ich dachte schon, ich hätte einfach nur Pech gehabt und einen defekten Sensor erwischt, denn bei mir war es von Anfang an so wie oben beschrieben. Aber scheinbar scheint dies ein generelles Problem der SRF02-Reihe zu sein, denn das mit 169cm kann kein Zufall sein!
Vielleicht sollten wir mal den Hersteller anschreiben, vielleicht kann der weiterhelfen?
Leider habe ich den SRF02 nun nicht mehr bei mir Zuhause, da ich den Roboter weggegeben habe! Dennoch wäre ich an einer Lösung interessiert!
gruß max

voidpointer
30.01.2007, 19:24
So, jetzt habe ich den Sensor mal im seriellen Mode getestet. Leider ist das Verhalten genau so wie im I2C-Modus. Hier mal ein Beispiel:

03 00 BB 00 B8 00 B6 00 B3 00 B1 00 AE 00 AB 00 A9 00 A9 00 A9 00 A9 00 BB 00 B8 00 B6 00 B3 00 B0 00 AE 00 AB 00 A9 00 A9
Das erste Byte ist die Firmwareversion. Dann folgen mehrere Leseversuche. Zwischendurch habe ich die Kalibrierung gestartet. Dann beginnt die Ausgabe erneut bei 00 BB und pendelt sich bei 00 A9 ein. Es ist auch egal, in welchem zeitlichen Abstand die Befehle kommen. Zumindest habe ich den Test im Terminal durchgeführt, wo zwischen den Befehlen systembedingt viel Zeit vergeht.

Habe auch noch andere Befehle versucht, u.a. auch die Adresse geändert, ohne Erfolg. Auf den Befehl 0x5F (minimale Entfernung) gibt der Sensor 00 09 zurück.

Irgendwie glaube ich langsam nicht mehr an ein elektronisches Problem, sondern an ein Softwareproblem. Sowas wie falsch beschriebenes EEPROM oder ähnlich. Jetzt fällt mir nichts mehr ein. Hoffentlich hält der andere länger durch...

Gruß, Achim.

ingon
03.02.2007, 12:55
Hallo,

ich habe mit meinem SRF02, ebenfalls bei Robotihardware gekauft, das selbe Problem.
Ich habe es noch einmal mit dem mitgeliefertem Testprogramm überprüft.
Firmware Version 3, die ersten 5 Messung sind immer falsch, dann maximal 170cm und unter 20cm gibt es Ausreisser.

Gruß Ingo

catchme
04.02.2007, 00:54
Hi,
das es unter 20cm Ausreißer gibt ist denke ich normal.
Aber es kann nicht sein, dass ein Sensor, dessen Reichweite auf 6m angegeben ist, nur 1,7m weit misst!
Eigentlich muss das ein Software-Problem sein, denn mir fällt keinerlei Lösung ein, wie dieses Signal durch Reflexion o.ä. erzeugt werden könnte.
Gibt es überhaupt einen SRF02 der bis jetzt absolut ohne Probleme funktioniert? Bitte melden!
mfg max


Bei einer Lösungssuche ist es sicher besser sich auf einen Thread zu konzentrieren. Deshalb wird dieser erst einmal geschlossen er ist beim Ziel Thread angegeben. Manf

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