PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Drehsensor auf Boden (PAN 3101)



PRobot
14.06.2008, 15:24
Hi!
Ich habe einen kleinen Roboter entwickelt, welcher als Fahrgestell das von Conrad verwendet: Robby RP5 http://produkt.conrad.de/45973183/fahrgestell-robby-rp5-roboter.htm.

Da ich gerne angeben möchte, um wieviel Grad sich der Roboter drehen soll, müsste ich irgendwo irgendwie noch einen Sensor einbauen.

Zurzeit habe ich das so, dass eine gewisse Zeit und Geschwindigkeit einen gewissen Winkel ergibt. Dort ist aber das Problem, dass sich der Roboter je nach Bodenbeschaffenheit oder Hindernissen bei gleicher Zeit/Geschwindigkeit unterschiedlich dreht.

Hat jemand eine Idee, wie ich jetzt messen kann, um wieviel sich der Roboter effektiv gedreht hat?

Danke

Hab auch gleich eine 3D Zeichnung des Robbys angehängt.

Manf
14.06.2008, 16:47
Es kommt sicher auf den Aufwand und die erforderliche Genauigkeit an.
Ein Kompass wird recht universell sein aber auch nicht so ganz genau.
Wenn sich die Position bei der Drehung nicht ändert dann sollten die Fehler gering bleiben.

Eine Alternative ist das Anpeilen einer feststehenden Markierung. Dann kann man die Drehung mit der Drehung der Peileinrichtung messen.

Besserwessi
14.06.2008, 17:57
Sonst gibt es noch die Möglichkeit mit 2 Sensoren aus optischen Mäusen (möglichst weit auseinander) und theoretisch ein Gyroskop bzw. Gyrosensoren.

PRobot
14.06.2008, 19:01
Der Roboter ändert seine Postition, also dürfte ein Kompass wegfallen.
Also wäre da noch die Möglichkeit mit den optischen-Maus-Sensoren oder dem Gyro-Sensor.

Was wäre jetzt aber kostengünstiger und leichter zu implementieren? Gibt es die Maus-Sensoren überhaupt zu kaufen?

Danke für eure Hilfe.

Manf
14.06.2008, 20:21
Als Amateur kauft man sie häufig in der Form, in kleinen Stückzahlen werden die Sensorchips nicht billiger sein.

http://www.preissuchmaschine.de/in-Eingabegeraet/Maus/Cherry-WheelMouse-Optical-M-5400.html

Besserwessi
14.06.2008, 20:49
Die sich ändernde Postion spricht noch nicht gegen das Kompassmodul. Der Kompass ist eher Problematisch, wenn das Magnetfeld z.B. duch magneten aus Motoren oder Eisenteile gestört wird. Der Kompass hat dafür den Vorteil einen Absolutwert der Orientierung zu geben. Mit der Peilung auf ein Ziel hat man da schon eher Problem wenn man sich bewegt. Bei den Gyros hat man immer ein gewisses Problem mit Drift. Man kann zwar einigermassen sagen wie weit man sich in den letzten 20 Sekungen gedreht hat, aber 10 minuten fast geradeausfahren sind schon problematisch. Die Maussensoren sind ähnlich der Odometrie, im Laufe der Zeit addieren sich die Fehler. Nach längerer Fahrstrecke wird damit die Orientierung ungenauer.

PRobot
14.06.2008, 23:06
Ich glaube, die Maussensoren wären am besten und billigsten.
Zusätzlich könnte ich damit auch messen, wie weit der Roboter nach vorn/zurück gefahren ist.

Der Roboter muss sich eigentlich nur um die eigene Achse drehen, dh. auf dem selben Ort bleiben und um einen gewissen Winkel drehen.
Also geradeaus-Fahren ist nicht so das Problem. Das kann er eigentlich bereits sehr gut. :-)

Edit:
Habe interessante Seite über Maussensoren gefunden (RN-Wissen):
https://www.roboternetz.de/wissen/index.php/Maussensor

Habe auch bereits eine Maus mit dem optischen Sensor Pan3101 gefunden:
Revoltec LightMouse Portable (ca. 10 €)
http://www.revoltec.de/revoltec_web/datasheets/re111.pdf
Werde mir diese Maus zulegen und dann zerlegen. :-)

Hier ein kleines Tutorial zum Verwenden des PAN 3101 aus einer optischen maus:
http://www.martijnthe.nl/optimouse/arduino-optical-mouse.html

Habe mir auch überlegt, dass ich ja nur einen Sensor benötige, nicht wie Besserwessi geschrieben hat:

Sonst gibt es noch die Möglichkeit mit 2 Sensoren aus optischen Mäusen (möglichst weit auseinander)
Denn wenn ich den Sensor an der Vorderen Spitze des Roboters montiere, dreht er sich ja um die Achse des Motors und somit kann man die Drehung bestimmen.

Zwei Fragen habe ich noch dazu:
Ist für den Sensor eigentlich egal, welchen Quarz ich im RN-Control Board verwende?
Denn bei Beispielen zu dem Maus-Sensor PAN 3101, die ich gefunden habe, würde der AVR immer mit einem Quarz von 14,7456 Mhz betrieben.

Wie weit kann der Sensor vom Boden entfernt sein, damit noch korrekt gemessen wird?

PRobot
21.06.2008, 11:34
So! Ich habs geschafft. Es funktioniert alles bestens!!!
Vielen Dank für eure Hilfe!!!

Ich habe auch gleich ein kleines Tutorial zusammengestellt, wie man den PAN3101 mit dem RN-Control-Board verbindet und ausliest.

Solltet ihr Vorschläge oder Änderungen zum Tutorial haben oder Fehler finden, könnt ihr euch gerne melden!

sigo
21.08.2008, 19:22
Hallo PRobot, danke für das Tutorial. Evtl. wäre das für meinen Ring-O Omnibot.

Wie sicher klappt denn die Messung bei dir?
Ich würde 2. Sensoren benötigen, damit ich Drehung und verfahrweg messen kann.

Sigo

williwilli
22.08.2008, 11:25
@ PRobot: Habe Dein Tutorial im RN-Wiki unter Sensoren:PAN3101 verlinkt. Gibt mit Sicherheit mehr Leute, die da Interesse dran haben...

Ice-Man
22.01.2011, 20:14
Aloha ihr lieben

ich weis das Thema ist schon was älter aber ich weis keinen rat mehr ....

könnte mir jemand den code von c auf Bascom übersetzen ???

wäre für eure hilfe sehr dankbar

mfg

Ice-Man