PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : [ERLEDIGT] optischer drehgeber aus pc-maus



lutzen
15.10.2005, 13:11
hallo,
ich bin in der fh grad mit dem projekt "mobile roboter" beschäftigt.
dort sollen wir einen autonomen roboter aus lego (mindstorms) basteln, der sich auf einem spielfeld frei bewegen und aufgaben erledigen kann.
das problem ist allerdings, dass die motoren für den antrieb nur zeitlich steuerbar sind und daraus grobe ungenauigkeiten beim positionieren des roboters entstehen (je nach akkuladung usw.)
die idee war jetzt aus einer konventionellen maus die optischen sebsoren für einen winkelmesser an einem zahnrad zu benutzen. d.h.der sensor soll die zähne an einem zahnrad zählen. damit hätte man dann eine genauere positionierungsmöglichkeit.

da ich mich in e.-technik quasi gar nicht auskenne, wollt ich mal fragen, ob jemand weiß, wie man die verdrahtung der sensoren denn so bewerkstelligt. das ganze soll an die rcx von mindstorms angeschlossen werden. die drehrichtung des zahnrades ist mir dabei egal.

für tipps wär ich superdankbar - auch für links zu andren "sensorseiten"

gruß, lutz

BlueNature
15.10.2005, 16:32
Servus!

Wenn du nur Impulse brauchst und es hinbekommst diese Drehgeber auf irgend eine Weise mechanisch zu koppeln ohne Spiel, dann ist es im Grunde nicht schwer ein einfachse TTL-Signal aus den Teilen zu generieren. Die Sensoren wie du sie jetzt nennst sind ganz einfache IR-Lichtschranken. Die eine Seite ist eine LED die mit einem Vorwiderstand auf den Betriebsstrom eingestellt ist udn dauer leuchtet. Die ander Seite hat eine IR-Photodiode, die je nach Belecuhtung durch die Diode ihren Durchlasstrom verändert. Also dunkler ist weniger Strom. Heller ist mehr Strom. Mußt damit nur für einen ersten Test die IR-Photodiode mit einem Widerstand gegen 5V betreiben und den Mittelabgriff als TTL-Eingang verwenden. Wie es verschaltet werden muß kannst du aus deiner eh schon existenten Platine entnehmen. Evtl. einfach einen Teil derPlatine mit dem Gebersystem heraussägen und weiterverwenden. Dann sparst dir eine eigene Platine.

Grüße Wolfgang

15.10.2005, 20:49
danke schon mal für die antwort.
ich habe mir aus dem netz mal eine schaltung rausgesucht.
ich habe allerdings keine ahnung, ob diese für mein problem 100%ig passt.

(links rcx, rechts sensor )
http://www.munichmicronet.de/Kurse/Investigator/Interface1.gif

die rcx anlage von lego versorgt die sensoren mit 7V Gleichspannung, die alle 3ms für 0.1ms abgeschaltet wird. in dieser pause wird das signal vom sensor eingelesen.
weiß evt jemand, wie die rcx mit dem signal dann umgeht?
sorry für die dummen fragen - hab wirklich wenig ahnung...

lutz

BlueNature
16.10.2005, 16:16
Servus Lutz!

Die Schaltung siht für mich nicht geeignet aus für einen Mausencoder. Das sit doch nur ein einfacher Brückengleichrichter der irgendwelche Wechselspannungssignale gleichrichtet und glättet. Den 0-5V seh ich da allerdings keine Sinn mehr an. Allgemein wirst du damit nie Erfolge erziehlen können. Schau das du einen digitalen Eingang herbekommst an deinem µC der das evtl. sogar als Interrupt abfangen kann. Sonst seh ich da keine Lösung für dich.

Grüße Wolfgang

ICH_
16.10.2005, 18:39
Er hat das LEGO-Mindstorms RCX Teil. Da man dort dei kabel in beide Richtungen gepolt anschließen kann braucht man einen Gleichrichter.
Deine Lichtschranke braucht erstmal einen Kondensator der die 0.1ms stromlose zeit überbrückt. Den Ausgang der Lichtschranke, welcher eben den 5V pegel ausgibt schließt du da dran wo 0-5V steht.
Ach, ich seh grad der Kondensator ist ja schon da ...

Mich wundert nur die Einbaurichtung von D6 und D5 ???
sollte da nicht Strom reinfließen?

Aber wieso so kompliziert? nimm doch einfach einen Lego-Knopf und zähle die Umdrehungen von irgendeiner Welle. Das wäre doch viel einfacher.

Briegel
17.10.2005, 16:57
ZUm Thema Selbstbau-Sensoren am RCX:
http://www.plazaearth.com/usr/gasperi/lego.htm
Das mit dem Mausdrehgeber ist allerdings recht kompliziert an das Lego anzuschließen, da würde ich dann (vor allem für den Einstieg) doch lieber das Geld für die fertigen Rotationssensoren von Lego investieren. Die machen richtungsabhängig 16 Steps/Umdrehung und sind einfachst mit RIS/NQC etc. auszulesen.

17.10.2005, 20:34
hej,
thx für die infos.
jetzt wo dus sagst, "ich"... eine der dioden d5,d6 muss ja tatsächlich falsch eingebaut sein...
ich wollte keinen legodrehgeber benutzen, da ich gehört habe, dass das ding ungenau sein soll. keine ahnung ob das so stimmt, aber mit nem eigenen sensor kann ich mir vorstellen, dass es ziemlich genau werden kann. wenn ich ein zahnrad mit 40 zähnen benutze, ergibt das ne winkelteilung von 9°. das wär schon mal was.

@briegel: weshal soll der mausdrehgeber so kompliziert zu schalten sein?
weil die rcx mit dem signal nichts anfangen kann? ...oder warum?

gruß, lutz

Briegel
18.10.2005, 11:03
Unter http://www.plazaearth.com/usr/gasperi/HBANGLE.HTM ist der Eigenbau eines Rotationssensors beschrieben. Wenn man im Schaltplan ganz unten die Taster dürch die Lichtschranken ersetzt, müsste das mit der hohen Genauigkeit eigentlich funktionieren. Du musst halt nur die Auswertung selber machen.
Für das Fahren über ein Feld reicht aber die Genauigkeit des Fertigsensors (16 Schritte / Umdrehung) dicke aus, vor allem, weil man sie ja mit einem Getriebe vor dem Sensor noch steigern kann.

18.10.2005, 23:42
hallo,
danke für die vielen tips und links.
habe jetzt was gut passendes gefunden.

werd ich morgen mal testen....allerdings mit ner photodiode....
http://www.restena.lu/convict/Jeunes/optoRotation.JPG

gruß, lutz