Die vollständige SDK-Installationsreferenz finden Sie unter hardware/dk1/software. In dieser Einheit werden die bimanualspezifischen Konfigurationsschritte behandelt, die über die einarmige SDK-Installation hinausgehen, die Sie möglicherweise für OpenArm durchgeführt haben.
Installieren Sie das DK1 SDK
Das DK1 SDK ist vom OpenArm SDK getrennt. Versuchen Sie nicht, DK1-Arme mit dem OpenArm-Paket auszuführen – das Firmware-Protokoll unterscheidet sich.
Konfigurieren Sie die Leader/Follower-Paarung
Das SDK liest eine YAML-Konfigurationsdatei, die ihm mitteilt, welches serielle Gerät der Leader und welche Geräte die beiden Follower-Arme sind. Sie müssen Gerätepfade in der richtigen Reihenfolge angeben – das SDK erkennt die Rollenzuweisung nicht automatisch.
Die Schlüsselfelder in dk1-config.yaml:
/dev/ttyUSBN hängt von der Reihenfolge der USB-Anschlüsse ab, die sich zwischen Neustarts ändern kann. Um stabile Aliase zu erstellen, verwenden Sie udev Regeln, die auf der Seriennummer des Geräts angegeben sind. Laufen udevadm info /dev/ttyUSB0 um die Seriennummer für jeden Arm zu finden und Regeln zu erstellen /etc/udev/rules.d/99-dk1.rules. Dies wird ausführlich unter beschrieben hardware/dk1/software.
Python-Verbindungstest – beide Arme
Führen Sie nach dem Bearbeiten der Konfiguration einen Verbindungstest durch, bei dem alle drei Geräte gleichzeitig getestet werden:
Bei einem erfolgreichen Lauf werden 10 Paare gemeinsamer Zustands-Arrays mit konsistenten, stabilen Werten gedruckt. Wenn Sie NaN-Werte, einen Timeout-Fehler oder weniger als 6 Gelenkwerte pro Arm sehen, überprüfen Sie die Gerätepfadzuweisungen in Ihrer Konfigurationsdatei.
Synchronisierungsüberprüfung
Die wichtigste Prüfung in dieser Einheit ist die Überprüfung, ob die Bewegung des Vorläufers eine synchronisierte Reaktion des Nachläufers ohne wahrnehmbare Verzögerung hervorruft:
Bewegen Sie den Führungsarm langsam in einem 30°-Bogen an einem einzelnen Gelenk. Beide Mitnehmerarme sollten sich ohne sichtbare Verzögerung gleichzeitig bewegen. Wenn ein Follower mehr als eine halbe Sekunde hinter dem anderen zurückbleibt, überprüfen Sie das latency_tolerance_ms Einstellung und überprüfen Sie die USB-Verbindung des langsamen Arms.
Häufige Fehler und Korrekturen
| Fehler | Ursache | Fix |
|---|---|---|
SerialException: device not found |
Falscher Gerätepfad in der Konfiguration oder USB nicht angeschlossen | Laufen ls /dev/ttyUSB* und Konfigurationspfade aktualisieren. Überprüfen Sie die physischen USB-Verbindungen. |
SyncTimeoutError: follower_right |
Der rechte Follower-Arm reagiert nicht innerhalb der Latenztoleranz | Zunahme latency_tolerance_ms auf 10 oder versuchen Sie es mit einem anderen USB-Anschluss. Kabel auf Beschädigung prüfen. |
| Joint gibt nach dem Verbinden alle Nullen an | Servos nicht aktiviert – Arm befindet sich im Standby-Modus | Anruf robot.enable_servos() bevor Sie gemeinsame Zustände lesen, oder aktivieren Sie sie zuerst über die Web-Benutzeroberfläche. |
| Ein Anhänger spiegelt sich, der andere ist stationär | Leader ist in der Konfiguration nur einem Follower zugeordnet | Überprüfen Sie beides follower_left Und follower_right werden in der YAML-Konfiguration festgelegt. |
Einheit 2 abgeschlossen, wenn...
Das DK1 SDK ist installiert und dk1.__version__ gibt 0.4.0 oder höher zurück. Der Verbindungstest druckt stabile Gelenkzustandswerte für beide Arme bei 50 Hz. Wenn Sie eine Leader/Follower-Sitzung starten und den Leader-Arm bewegen, spiegeln beide Follower-Arme die Bewegung ohne wahrnehmbare Verzögerung wider. Sie haben dies mit mindestens 3 verschiedenen Gelenkbewegungen am Führungsarm überprüft.