Konfiguration der Führungskräfte-/Follower-Kontrolle
Einheit 2 des DK1-Bimanual-Lernpfades. Installieren Sie das DK1-SDK, konfigurieren Sie das Lead/Follower-Paar, führen Sie Python-Verbindungs-Tests für beide Arme aus und überprüfen Sie die Synchronisation ~2 Stunden.
Einheit 2 von 6 · Führer/Follower Konfiguration · ~ 2 Stunden
Installieren Sie die DK1 SDK, konfigurieren Sie das Lead/Follower-Paar und führen Sie Python-Verbindungs-Tests für beide Arme durch. Am Ende dieser Einheit erzeugt die Bewegung des Lead-Arms eine sofortige, synchronisierte Antwort auf beiden Follower-Armen.
Die vollständige SDK-Installationsreferenz befindet sich unter hardware/dk1/software. Diese Einheit deckt die bi-manuellen konfigurierungsspezifischen Schritte ab, die über die Einarms SDK-Installation hinausgehen, die Sie für OpenArm durchgeführt haben.
Installieren Sie die DK1 SDK
Das DK1 SDK ist getrennt vom OpenArm SDK. Versuchen Sie nicht, DK1 Arme mit dem OpenArm-Paket auszuführen
# Erstellen Sie eine isolierte virtuelle Umgebung für DK1 Work python3 -m venv ~/dk1-env source ~/dk1-env/bin/activate # Installieren Sie die DK1 SDK und die bimanuellen Erweiterungen # Installieren Sie dk1-sdk[bimanual] # Überprüfen Sie die Installation von Python -c "Import dk1; Print(dk1.__version__) " # Erwartet: 0,4.0 oder höher
Konfiguration des Lead/Follower-Pairs
Das SDK liest eine YAML-Konfigurationsdatei, die es mitteilt, welches Seriengerät der Anführer ist und welche Geräte die beiden Nachfolgerarme sind.
# Genereren Sie die standard-Bimanual-Konfig-Datei dk1-config generieren --modus bimanual --output ~/dk1-config.yaml # Öffnen und bearbeiten Sie den Konfigurationsdatum
Die Schlüsselfelder in
Führer: Gerät: /dev/ttyUSB2 # der Führer-Controller Arm baudrate: 1000000 Follower_links: Gerät: /dev/ttyUSB0 # linker Follower Arm baudrate: 1000000 Follower_rechts: Gerät: /dev/ttyUSB1 # rechte Follower Arm baudrate: 1000000 Synchronisierung: Frequenz_hz: 50 # Joint State Synchronisierung Rate Latenz_Tolerance_ms: 5 # max max zulässig Synchronisierung Verzögerung
Gerät-Pfadzuweisung: Die Kartierung von physischer Arm zu
Python-Verbindungsprüfung Beide Arme
Nach der Bearbeitung der Konfiguration wird ein Verbindungstest ausgeführt, der alle drei Geräte gleichzeitig ausübt:
von dk1 Import BimanualRobot Robot = BimanualRobot(config_path="~/dk1-config.yaml") robot.connect() # Drucken von Gelenkstaaten für beide Arme
Bei einem erfolgreichen Ausführen werden 10 Paare von Joint-State-Arrays mit konsistenten, stabilen Werten gedruckt. Wenn Sie NaN-Werte, einen Timeout-Fehler oder weniger als 6 Joint-Werte pro Arm sehen, überprüfen Sie die Gerät-Pfadzuweisungen in Ihrer Konfigurationsdatei.
Synchronisierungsprüfung
Die wichtigste Prüfung in dieser Einheit ist die Überprüfung, dass die Führungsbewegung eine synchronisierte Nachfolgerreaktion ohne spürbare Verzögerung erzeugt:
Import von dk1BimanualRobot, LeaderFollowerSession robot = BimanualRobot(config_path="~/dk1-config.yaml") Session = LeaderFollowerSession(robot) # Starten Sie den Leader/Follower Synchronisationsschleier # Bewegen Sie den Leader Arm langsam
Bewegt der Führerarm langsam durch einen 30°-Bogen auf einem einzigen Gelenk. Beide Anhängerarme sollten sich ohne sichtbare Verzögerung in Einklang bewegen.
Häufige Fehler und Lösungen
| Error | Cause | Fix |
|---|---|---|
SerialException: device not found |
Wrong device path in config, or USB not connected | Run ls /dev/ttyUSB* and update config paths. Check physical USB connections. |
SyncTimeoutError: follower_right |
Right follower arm not responding within latency tolerance | Increase latency_tolerance_ms to 10, or try a different USB port. Check cable for damage. |
| Joint states all zeros after connect | Servos not enabled — arm is in standby mode | Call robot.enable_servos() before reading joint states, or enable via the web UI first. |
| One follower mirrors, other is stationary | Leader is paired only to one follower in config | Verify both follower_left and follower_right are set in the YAML config. |
Einheit 2 ist fertig, wenn...
Das DK1 SDK ist installiert und
[← Zurück zu Wegübersicht]







