- 3D-Druck Einstieg und Tipps         
Seite 3 von 4 ErsteErste 1234 LetzteLetzte
Ergebnis 21 bis 30 von 36

Thema: Rp6 fährt nichtgerade aus...

  1. #21
    Benutzer Stammmitglied
    Registriert seit
    28.10.2009
    Ort
    Ratingen
    Alter
    67
    Beiträge
    60
    Anzeige

    Praxistest und DIY Projekte
    RP6Base_Move_05

    Gruß

    Klaus

  2. #22
    Erfahrener Benutzer Roboter Genie Avatar von SlyD
    Registriert seit
    27.11.2003
    Ort
    Paderborn
    Alter
    40
    Beiträge
    1.516
    Die Geschwindigkeiten werden unabhängig voneinander auf den Sollwert eingeregelt. Mit einem dritten Regler könnte man die natürlich aneinander angleichen.
    Auch kann man die Regler noch deutlich optimieren - sind ja nur einfache I Regler.


    Oben hast Du geschrieben:

    > Also, auf Laminat ist die Abweichung auf 1m Fahrstrecke ca 15cm.

    Falls Du das mit deutlichen Rechtsbogen meinst: DAS IST NORMAL und hat wie ich schon sagte NICHTS mit der Drehgeber Einstellung zu tun!
    Sobald die auf 50:50 oder 40:60 oder was in der Richtung eingestellt sind funktionieren die korrekt. Da muss man dann nichts weiter dran rumoptimieren.


    -----

    Einen deutlichen Bogen fährt der RP6 (ist so gewollt!!!) bei move05 wenn das ACS Hindernisse erkannt hat.


    Das von Dir beschriebene Verhalten ist bei move05 sofern KEIN Hindernis erkannt wurde aber nicht normal (also mit der zusätzlichen Verzögerung) - die Reglung wird automatisch nur alle 200ms aufgerufen egal wie schnell hintereinander task_RP6System aufgerufen wird (solange die Pausen nicht zu lang sind jedenfalls).
    Zusätzliche Verzögerungen sollten am Verhalten der Motorregelung eigentlich nicht viel ändern.
    Poste mal bitte das Programm mit Deinen Änderungen hier.


    Hab gerade selbst nochmal move_05 (unverändert! Nur die Geschwindigkeitswerte auf 100 / 90 / 60 erhöht)
    laufen lassen und der Drift war ganz normal, also 5-10cm auf 1 Meter grob per Augenmaß geschätzt. Untergrund: ziemlich rauhe Fliesen.


    Was hast Du denn sonst so am Programm geändert und welche Geschwindigkeitswerte waren eingestellt?
    (die ganzen #defines... )

    Poste das komplette geänderte Programm mit den zusätzlichen Verzögerungen bitte mal hier im Forum, Danke.


    Probier auch mal ein einfacheres Programm aus - z.B. move_01 und ändere vorher
    moveAtSpeed(80,30);
    in
    moveAtSpeed(80,80);
    um.
    (sonst fährt er ja absichtlich im Kreis )


    Wie verhält er sich dann?


    MfG,
    SlyD

  3. #23
    Benutzer Stammmitglied
    Registriert seit
    28.10.2009
    Ort
    Ratingen
    Alter
    67
    Beiträge
    60
    Hallo,

    mit dem Programm Move_01 und moveAtSpeed(80,80), lag die Abweichung af 1m bei ca 30cm, bei dem Programm Move_05 bei ca. 15cm. Dies erkläre ich mir so, daß bei Move_01 task_RP6System allein in der while-Schleife steht. In move_05 steht noch behaviourController. Das bedeutet letztendlich, daß task_RP6System im Program move_01 deutlich häufiger als im Programm move_05 aufgerufen wird und zwar bereits bevor die Regelung der Geschwindigkeit im Hintergrund abgeschlossen ist. Damit erkläre ich mir auch, daß im Programm move_05 durch Hinzufügen von writeInteger(getLeftSpeed(),DEC) und writeInteger(getrightSpeed(),DEC) soviel Zeit zwischen den einzelnen Aufrufen von task_RP6System vergehen, daß die Geschwindigkeitsregelung tatsächlich zu Ende kommt.

    Das ist erst einmal eine Vermutung, die sich so erst einmal durch die Versuche ergeben hat.

  4. #24
    Erfahrener Benutzer Roboter Genie Avatar von SlyD
    Registriert seit
    27.11.2003
    Ort
    Paderborn
    Alter
    40
    Beiträge
    1.516
    Hallo,

    nein also das muss bei Dir ganz sicher an irgendwas anderem liegen.

    Ich habe das gerade selbst nochmal ausprobiert (habe ich ja nun schon wirklich oft genug gemacht mit sehr vielen verschiedenen RP6 ) - völlig egal ob ich noch Textausgaben in die Schleife mit reinmache oder gar ein böses mSleep(100) - der Test RP6 den ich hier gerade habe fährt immer exakt gleich - ganz leichter linksdrall mit weniger als 10cm Abweichung auf 1m.
    Dasselbe mit move 05 und allen anderen Programmen wo er geradeaus fährt.

    Auch bei kontinuierlichem Beschleunigen mit der TV Fernbedienung ist die Abweichung nicht viel größer (ist dann aber wie erwartet etwas mehr).


    > daß die Geschwindigkeitsregelung tatsächlich zu Ende kommt.

    Die kommt immer zuende sobald die Aufgerufen wird (ausser von den normalen Interrupts die sowieso immer und überall auftreten kann die Routine gar nicht unterbrochen werden).
    Wenn seit dem letzten Aufruf neue/aktualisierte Geschwindigkeitsmesswerte vorliegen (was mindestens 200ms dauert) und task_RP6System aufgerufen wird, dann wird die komplette Regelungsroutine abgearbeitet.

    Mit "Im Hintergrund" ist in der Anleitung nur gemeint, dass Du als Anwender dich nicht direkt in Deinem Programm drum kümmern musst.
    task_RP6System wird genauso ausgeführt wie JEDE andere Funktion in Deinem eigenen Programm - ist nur zusätzlich noch mit dem Rest der Lib synchronisiert (wird nur dann komplett ausgeführt wenn neue Messwerte da sind).


    -----

    Also wie gesagt - das muss bei Dir irgendwas anderes sein.
    Gibt natürlich zig Möglichkeiten - von schlechten Akkus bis hin zu rumspinnenden Compiler Versionen die seltsamen Programmcode erzeugen habe ich schon alles gesehen

    Die Encoder Muster Aufkleber sind bei Dir aber in Ordnung?

    Poste doch mal die Ausgabe vom Manuellen Encoder Test "c" bei verschiedenen Geschwindigkeiten. Danach die Ausgabe vom Test der Regelung "s" ebenfalls bei verschiedenen Geschwindigkeiten.
    (z.B. hintereinander: 25, 50, 100, 50, bwd, 100, 50, fwd)


    MfG,
    SlyD

  5. #25
    Benutzer Stammmitglied
    Registriert seit
    28.10.2009
    Ort
    Ratingen
    Alter
    67
    Beiträge
    60
    Hallo,

    hier die logs der beiden Tests

    Gruß

    Klaus
    Angehängte Dateien Angehängte Dateien

  6. #26
    Erfahrener Benutzer Roboter Genie Avatar von SlyD
    Registriert seit
    27.11.2003
    Ort
    Paderborn
    Alter
    40
    Beiträge
    1.516
    Ist so erstmal nichts aufälliges erkennbar.

    Teste mal bitte die beiden Programme im Anhang - ist einmal mit ausgaben und einmal ohne.
    Er sollte einfach nur geradeaus fahren und sich bei beiden Programmen exakt gleich verhalten (bitte mindestens 2x mit jedem Programm testen).

    Und das tun die beiden Bots mit denen ich das gerade getestet habe auch.

    Zieh mal die Vorderräder raus und drück sie wieder zurück - die dürfen etwas spiel haben aber nicht zuviel.
    Drück auch mal die Zahnräder an den Hinterrädern in richtung chassiswand (am Rad gegenhalten).
    Sind die Ketten in Ordnung oder evtl. "verzogen"?

    MfG,
    SlyD
    Angehängte Dateien Angehängte Dateien

  7. #27
    Benutzer Stammmitglied
    Registriert seit
    28.10.2009
    Ort
    Ratingen
    Alter
    67
    Beiträge
    60
    Danke,

    da morgen wieder der Ernst des Lebens beginn wird es etwas mit der Rückmeldung dauern

    Gruß

    Klaus

  8. #28
    Benutzer Stammmitglied
    Registriert seit
    28.10.2009
    Ort
    Ratingen
    Alter
    67
    Beiträge
    60
    Hallo,

    habe, wie beschrieben auch noch am Getriebe gedrückt. Inzwischen läuft mein RP6 sehr gut gerade aus auch mit den beiden Programmen. Ich hoffe, dass es so bleibt.

    Vielen Dank für die Unterstützung

    Klaus

  9. #29
    Benutzer Stammmitglied
    Registriert seit
    28.10.2009
    Ort
    Ratingen
    Alter
    67
    Beiträge
    60
    Hallo,
    gestern wunderte ich mich, daß der Robby auf dem Teppich plötzlich bei Geradeausfahrt mit hoher Geschwindigkeit in einem engen Kreis fuhr und auch bei Auswichmanövern teilweise die Geschwindigkeit auf max hochregelte. Ich habe dann das Testprogramm laufen lassen und mußte feststellen, daß der linke Encoder wieder fast kein Signal brachte. Das Poti scheint sich durch die Vibrationen im Betrieb zu verstellen und da die korrekte Funktion wirklich von kleinsten Winkelverstellungen des Poties abhängt, passiert dies scheinbar sehr schnell. Werde heute abend zum (ich weiß nicht mehr wievielten Mal) den Robby auseinander nehmen und den linken Enkoder wieder neu einstellen.

    Gruß

    Klaus

  10. #30
    Erfahrener Benutzer Robotik Einstein Avatar von inka
    Registriert seit
    29.10.2006
    Ort
    nahe Dresden
    Alter
    77
    Beiträge
    2.180
    könnte man die potis vielleicht mit einem tupfer fingernagellack sichern?
    gruß inka

Seite 3 von 4 ErsteErste 1234 LetzteLetzte

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •  

Solar Speicher und Akkus Tests