PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : 2 Getriebemotoren syncronisieren/kalibrieren



zschunky
01.12.2012, 08:00
Hallo,

ich habe mir einen kleinen Roboter gebaut, der mit zwei gehackten Servos (Modelcraft RS-2, jetzt mit l293d, 2 Antriebsräder, ein Stützrad) angetrieben wird. Wenn beide Motoren gleich betreiben werden zieht der Motor zur Seite. Für gerade aus Fahrten habe ich das Problem über grobe Encoder-Scheiben und Lichtschranken gelöst, indem ich jeweils die Pulsbreiten für die Motoren währen der Fahrt anpasse. Mein Problem ist aber nun das Drehen des Roboters zu einen bestimmten Zielwinkel. Meine Encoder-Scheiben sind hierfür zu Grob und leider auch zu ungenau. Einen Kompasssensor CMPS09 habe ich auch schon ausprobiert, nur leider ist dieser im Haus nicht nutzbar aufgrund der zu vielen Störquellen. Das heißt ich müsste also beide Motoren für eine bestimmte Zeit in genau der gleichen Geschwindigkeit fahren lassen (Anfahren/abbremsen wird das Ganze wohl noch komplizierter machen).

Nun meine Fragen:

Wie syncronisiert Ihr Euro Motoren dass man genau weiss wie schnell sie laufen um so einiger Massen genau Drehen/Fahren zu können?

Reicht ein einmaliges Kalibrieren der Motoren aus (also einmal die passende PWM-Rate ermitteln für die gewünschte Zieldrehzahl und diese dann immer wieder verwenden) oder sollte man hier immer messen und nachkorrigieren?

besten Dank

-zschunky

oberallgeier
01.12.2012, 10:02
Hi zschunky,

hmmmm - "Neuer Benutzer ... Registriert seit:31.05.2005" - hmmmm. Egal, das zu hinterfragen/diskutieren wäre ziemlich OT!


... Wie syncronisiert ... Motoren ... Reicht ein einmaliges Kalibrieren der Motoren aus ...Ich will mal so sagen: einmaliges Kalibrieren reicht im Prinzip aus, wenn die Motoren nicht irgendwann ihr Lebensende erreichen und so verschlissen sind, dass sie aus der Reglerwirksamkeit rausfallen.

Ja, Du hast richtig gelesen. Das Stichwort heißt natürlich Regelung, lies Dir doch mal dazu ein paar Teile im Wiki durch (blos nicht alles ! ! sonst verlierst Du sicher die Laune).

i) Ich habe noch nie einen RS-2 demontiert. Ich habe nur bei meinen ES-05 umgebaut (die gibts aktuell beim C nicht, ich haber aber bei Derkum Modellbau in Köln noch zwei Handvoll Restposten, baugleiche carson CM-1, abgestaubt).

ii) Gehackt nach Wiki-"Hackmethode 2" (klick).

(http://www.rn-wissen.de/index.php/Servo#Servos_hacken)iii) Eine Encoderscheibe - anfangs wars nur ein Schnibbelchen Blech - auf die Servo-Motorachse geklebt und ne Gabellichtschranke ins Servogehäuse eingebaut (klick).
(https://www.roboternetz.de/community/threads/32293-DC-Kleinstmotor-mit-Getriebe-Drehsensor-5V-510-Upm?p=316156&viewfull=1#post316156)
iv) JETZT fängt die Arbeit an: Sprungantwort aufnehmen (klick). (https://www.roboternetz.de/community/threads/36121-Autonom-in-kleinen-Dosen-R2_D03-Nachfolger-R3D01?p=404730&viewfull=1#post404730) Das war meine erste Erfahrung damit, später war das deutlich sauberer geworden (nochn Klick) (https://www.roboternetz.de/community/threads/36121-Autonom-in-kleinen-Dosen-R2_D03-Nachfolger-R3D01?p=427784&viewfull=1#post427784). Aus der Sprungantwort und der Aufnahme des PWM-Geschwindigkeitsdiagramms werden mithilfe der Ausführungen im Wiki die regelungstechnischen Motorkennwerte abgeleitet und die Reglerkennwerte.

v) Regler auslegen (klick) (https://www.roboternetz.de/community/threads/36121-Autonom-in-kleinen-Dosen-R2_D03-Nachfolger-R3D01?p=415877&viewfull=1#post415877) - der Link zeigt nur mein erstes, kleines Beispiel.

vi) Und das Ganze fährt (klick). (https://www.roboternetz.de/community/threads/36121-Autonom-in-kleinen-Dosen-R2_D03-Nachfolger-R3D01?p=503279&viewfull=1#post503279) Man kann daran schon erkennen, dass es eine relativ saubere Geradeausfahrt ist. Und da beim Turn beide Motoren (und die anhängenden Räder) gleich schnell, aber gegensinnig gefahren werden - dank der Regelung - ist der Turn sehr exakt ortsfest.

Wolln mal so sagen - so easy, wie es jetzt klingt, war es nicht wirklich. Aber es geht mit einiger Sorgfalt und Geduld.

Viel Erfolg.

zschunky
01.12.2012, 18:49
hmmmm - "Neuer Benutzer ... Registriert seit:31.05.2005" - hmmmm. Egal, das zu hinterfragen/diskutieren wäre ziemlich OT!
Nun ja, was soll ich sagen. Schon lange dabei. Aber heute erst mal den ersten Post erstellt (mit eigenen Topic).


Ich will mal so sagen: einmaliges Kalibrieren reicht im Prinzip aus, wenn die Motoren nicht irgendwann ihr Lebensende erreichen und so verschlissen sind, dass sie aus der Reglerwirksamkeit rausfallen.
Ich gehe davon aus dass man die Kalibrierung schon unter Last durchführen sollte oder sind solche Messungen mit Rädern in der Luft etwa ausreichend?


ii) Gehackt nach Wiki-"Hackmethode 2" (klick). (http://www.rn-wissen.de/index.php/Servo#Servos_hacken)
Das gleiche habe ich auch mit dem RS-2 gemacht. Der Unterschied ist dass bei dem RS2 die Platine im Gehäuse bleiben muss, da darauf der Motor montiert ist und diesen festhält. Die Platine wurde dann bearbeitet damit man die Drähte direkt an den Motor anschliessen kann und keine anderen Bauteile von der Platine am Motor hängen.


iii) Eine Encoderscheibe - anfangs wars nur ein Schnibbelchen Blech - auf die Servo-Motorachse geklebt und ne Gabellichtschranke ins Servogehäuse eingebaut (klick). (https://www.roboternetz.de/community/threads/32293-DC-Kleinstmotor-mit-Getriebe-Drehsensor-5V-510-Upm?p=316156&viewfull=1#post316156)
Super Idee, leider nicht wirklich machbar mit dem RS-2. Über den Antriebszahnrad hängt direkt ein anderes so dass man da nicht drauf kommt. Und an die anderen Zahnräder kommt man auch nicht wirklich ran, es ist schon ordentlicher Platzmangel hier vorhanden. Hier ein paar Bilder wie es aussieht (Bilder von einen nicht gehackten Servo):https://www.dropbox.com/sh/8htddp3ga1v0g7t/eKmqcO8588 Ich werde wohl erst einmal mit meiner groben Abtastung leben müssen.

Sobald ich es hinbekommen habe die Motoren vernünftig syncron zu betreiben werde ich mich mal der Regelung widmen. Hier Übrigens mal der Roboter (inkl. der verwendeten Encoder-Scheiben): https://www.dropbox.com/sh/5n1jbx1cfhii2ol/N1JRFM9IQ6

Übrigens vielen Dank für die vielen Links.

-zschunky

oberallgeier
01.12.2012, 19:58
Hallo -zschunky,

huiii - ein heisses Teil. Und diese gefährlich aussehenden Encoderscheiben. Alle Achtung, ist na ganze Menge Arbeit drin. Und alles selbst gebacken - das finde ich immer prima.

Du hast recht:
... Kalibrierung schon unter Last durchführen ... oder ... Rädern in der Luft ...Die Regelung benötigt ein paar Eingangswerte. Einer davon ist die Motorzeitkonstante, also so ne Art Beschleunigung im unter(st)en Drehzahlbereich. Die ist selbstverständlich von der Masse des Gesamtsystems abhängig - deshalb hatte ich IMMER die Sprungantwort im System gemacht - sprich: im voll ausgebauten Roboter, wenigstens dem Gewicht nach.


... Super Idee, leider nicht wirklich machbar mit dem RS-2 ...Stimmt nur teilweise. Klar, ums Motorritzel ist kein Platz. Aber das erste vom Motorritzel angetriebene Rad hat so viel Luft nach oben, da kann man vermutlich mit ner Reflexlichtschranke in SMD sogar vis-a-vis zwei Teile unterkriegen (Beispiel Osram SFH9202: Conrad Produkt-Nr.: 153808 ).


... Ich werde wohl erst einmal mit meiner groben Abtastung leben müssen ...Vermutlich schon. Aber dann ist eben die absolute Genauigkeit sehr geringer.


... Sobald ich es hinbekommen habe die Motoren vernünftig syncron zu betreiben werde ich mich mal der Regelung widmen. ...Hmmmm - Henne-Ei-Problem. Ohne Regelung werden die Motoren nicht vernünftig synchron laufen können. Man bekommt sie an dem einen oder anderen Betriebspunkt manchmal hin - aber schon die erst Kurve kann die deutlich aus dem Tritt bringen. Da sehe ich für "... sobald ich ..." kein so bald. Nicht mal wirklich ein überhaupt. Sorry, dass ich das so deutlich sage. So war es jedenfalls bei mir. Wie gut die Regelung mit den groben Encoderscheiben läuft kann ich aber nicht mal abschätzen.

Vielleicht schlachtest Du mal ne URalte Kugelmaus. Die haben inwendig ziemlich hübsche, nicht zuu kleine Encoderscheiben - und sogar die zugehörige Lichtschranke. Manchmal ne einteilige GAbellichtschranke, manchmal zweiteilig. So etwas hatte ich auch schon mal überlegt - vor vielen Monaten:

...... http://oberallgeier.ob.funpic.de/encD15.jpg


So - ich hoffe es hilft ein bisschen weiter.