🧪 Neue Tutorials in Arbeit — vom Roboterarm bis zum Sensor
Zum Inhalt springen

Phase 3: Teleoperation (Windows) ​

In dieser Phase starten Sie den geschlossenen Regelkreis der Teleoperation: Der Leader-Arm steuert die Bewegung des Follower-Arms, der Greifer steuert das Öffnen und Schließen des AmazingHand. Dies ist die entscheidende Phase, um zu überprüfen, ob das gesamte System ordnungsgemäß funktioniert.


Voraussetzungen ​

  • Phase 1: Umgebung einrichten und Phase 2: Kalibrierung abgeschlossen

  • Die drei Geräte sind eingeschaltet und die seriellen Schnittstellen wurden notiert


Teleoperation ausführen ​

PowerShell
lerobot-teleoperate --robot.type=so101_amazing_hand --robot.port=<follower_arm_com> --robot.hand_port=<hand_com> --robot.id=amazing_hand_follower --teleop.type=so101_leader --teleop.port=<leader_arm_com> --teleop.id=amazing_hand_leader

Ersetzen Sie <follower_arm_com> / <hand_com> / <leader_arm_com> durch die tatsächlichen COM-Nummern Ihres Rechners (Beispiel COM58 / COM11 / COM54).

Erwartetes Ergebnis:

  • 5 Gelenke des Leader-Arms → Follower-Arm folgt

  • Greifer des Leader-Arms → Öffnen/Schließen des AmazingHand (proportionale Nachführung: halb zusammengedrückt = halb geschlossen)

💡 Parameterbeschreibung:

  • --robot.type=so101_amazing_hand: kombinierter Roboter aus Follower-Arm + Hand

  • --robot.port: serielle Schnittstelle des Follower-Arms

  • --robot.hand_port: serielle Schnittstelle der Hand

  • --teleop.type=so101_leader: Teleoperator des Leader-Arms

  • --teleop.port: serielle Schnittstelle des Leader-Arms


Bei der ersten Ausführung erforderlich: Richtungsüberprüfung ​

Führen Sie nach dem Start zuerst einen Richtungstest durch und bestätigen Sie, dass die folgenden beiden Punkte korrekt sind:

TestAktionKorrektes Verhalten
Arm folgtDrehen Sie die einzelnen Gelenke des Leader-ArmsDer Follower-Arm folgt in derselben Richtung
Hand öffnet/schließtÖffnen/Schließen des Greifers am Leader-ArmGreifer öffnet → Hand öffnet; Greifer schließt → Hand schließt

⚠️ Hinweis (was tun, wenn die Richtung umgekehrt ist):

  • Öffnungs-/Schließrichtung der Hand umgekehrt (beim Öffnen des Greifers schließt sich die Hand): Dies deutet auf eine ungenaue Kalibrierung des Handwinkels hin. Führen Sie das Kalibrierungswerkzeug erneut aus (einschließlich der Kalibrierung der Greiferrichtung); nach dem Speichern wird es automatisch wirksam, ohne dass Dateien manuell geändert werden müssen. Siehe Phase 2: Kalibrierung.

  • Greiferzuordnungsrichtung umgekehrt (beim Öffnen des Greifers schließt sich die Hand): Wie oben; klicken Sie bei der Kalibrierung auf [Capture Open], wenn der Greifer des Leader-Arms geöffnet ist, und auf [Capture Close], wenn er geschlossen ist; das Werkzeug zeichnet gripper_open_pos/gripper_close_pos automatisch auf, speichert sie und lädt sie beim Start automatisch.

Führen Sie nach der Änderung die Teleoperation erneut aus, um sie zu überprüfen.


Überprüfung der proportionalen Nachführung ​

Nachdem die Richtung korrekt ist, überprüfen Sie die Feinheit der Proportionalität:

  1. Greifer langsam öffnen → die Hand sollte sich gleichmäßig öffnen (ohne Sprünge)

  2. Greifer in der Mitte anhalten → die Hand sollte ebenfalls in der Mitte anhalten

  3. Schnelles Öffnen/Schließen → die Hand reagiert schnell, ohne Stocken

⚠️ Hinweis (bekanntes Problem übermäßigen Öffnens/Schließens der Hand): Wenn sich die Hand bereits schließt, wenn der Greifer halb geöffnet ist, liegt meist eine ungenaue Position für „Öffnen/Faustbildung" bei der Kalibrierung des Handwinkels vor. Führen Sie Schritt 3 der Kalibrierung (GUI für den Handwinkel) erneut aus und kalibrieren Sie präzisere Öffnungs-/Schließpositionen.


Optional: Visualisierung mit Kameras ​

Fügen Sie --robot.cameras hinzu, um Kameras anzubinden, und --display_data=true, um das Rerun-Visualisierungsfenster zu öffnen (zeigt Kamerabilder + Gelenkzustände in Echtzeit an):

PowerShell
lerobot-teleoperate --robot.type=so101_amazing_hand --robot.port=<follower_arm_com> --robot.hand_port=<hand_com> --robot.id=amazing_hand_follower --teleop.type=so101_leader --teleop.port=<leader_arm_com> --teleop.id=amazing_hand_leader --robot.cameras='{wrist: {type: opencv, index_or_path: 0, width: 640, height: 480, fps: 30, fourcc: "MJPG"},top: {type: opencv, index_or_path: 1, width: 640, height: 480, fps: 30, fourcc: "MJPG"}}' --display_data=true

💡 Erläuterung:

  • index_or_path ist der Kamera-Index; bestätigen Sie ihn zuerst mit lerobot-find-cameras (die Nummerierung ist je nach Rechner unterschiedlich).

  • fourcc: "MJPG" ist optional und kann die Bandbreitennutzung von USB-Kameras erheblich senken (Umstellung auf MJPEG-Kompression); bei Ruckeln können Sie es hinzufügen.

  • Wenn nur eine Kamera benötigt wird, löschen Sie einfach die entsprechende Zeile (z. B. top).

⚠️ Hinweis (rerun-Abhängigkeit): --display_data=true benötigt das rerun-Visualisierungspaket; wenn es nicht installiert ist, führen Sie aus:

PowerShell
pip install "rerun-sdk>=0.24.0,<0.34.0"

Die ausführbare Datei des Rerun Viewer wird benötigt. Wenn unter Windows Failed to find Rerun Viewer executable gemeldet wird, fehlt der GUI-Viewer. Dies beeinträchtigt die Teleoperation nicht; entfernen Sie einfach --display_data=true.


Beenden ​

Drücken Sie Ctrl+C zum Stoppen. Das Programm führt automatisch Folgendes aus:

  1. Aufheben des Drehmoments der 8 Handservos

  2. Trennen der seriellen Schnittstellen von Follower-Arm/Leader-Arm

  3. Trennen der Kameras (falls vorhanden)

⚠️ Hinweis: Schließen Sie das Terminal nicht direkt vor einem ordnungsgemäßen Beenden, da sonst eine Belegung der seriellen Schnittstelle zurückbleiben kann. Wenn die Schnittstelle nach einem abnormalen Beenden belegt ist, schließen Sie USB erneut an oder starten Sie den Terminalprozess neu.


Fehlerbehebung ​

SymptomUrsacheLösung
Richtung der Hand umgekehrtHandwinkel oder Greiferzuordnung umgekehrtSiehe oben „Richtungsüberprüfung"; Winkel tauschen oder Zuordnung anpassen
Hand öffnet/schließt zu stark/zu wenigHandwinkel ungenau kalibriertGUI für den Handwinkel neu kalibrieren
Arm folgt nichtKalibrierung fehlt / falsche SchnittstelleStellen Sie sicher, dass der Follower-Arm kalibriert und --robot.port korrekt ist
rerun meldet FehlerVisualisierungsabhängigkeit fehlt--display_data=true entfernen
Serielle Schnittstelle belegtAbnormales Beenden beim letzten MalBelegenden Prozess schließen oder USB erneut anschließen