Was Sie erreichen werden
Am Ende dieser Einheit verfügen Sie über eine virtuelle Python-Umgebung mit installiertem OpenArm SDK und die Ausführung eines fünfzeiligen Testskripts führt Sie zurück True aus arm.ping(). Diese Bestätigung bedeutet, dass Ihr Python-Code über einen Live-Kommunikationskanal zum Arm verfügt – was die Grundlage bildet, auf der alles in den Einheiten 3–6 aufbaut.
Die vollständige SDK-Installations- und Konfigurationsdokumentation finden Sie unter Hardware/Openarm/Software. Diese Einheit umrahmt diesen Prozess mit dem von Ihnen benötigten Kontext und deckt die häufigsten Fehlermodi ab.
Installieren Sie das SDK
Arbeiten Sie durch Software-Setup-Anleitung für die vollständige SDK-Installation. Die Kurzfassung:
Die Installation dauert je nach Internetverbindung 5–15 Minuten. Der torch Und lerobot Die Pakete sind groß, aber Sie benötigen sie in den Einheiten 4 und 5, also installieren Sie sie jetzt.
Schneller Python-Verbindungstest
Führen Sie diesen Test aus, während ROS 2 läuft (von Einheit 1) und Ihre virtuelle Umgebung aktiviert ist. Dies ist der schnellste Weg, um zu bestätigen, dass Ihr gesamter Stack durchgängig funktioniert:
Wenn arm.ping() kehrt zurück True Und arm.get_joints() Gibt die aktuellen Gelenkwinkel zurück, fertig. Fahren Sie nur dann mit dem Abschnitt zur Fehlerbehebung fort, wenn Sie Fehler sehen.
Fehlerbehebung: Die 3 häufigsten Verbindungsfehler
Fehler 1: ConnectionRefusedError oder Timeout und OpenArm()
ROS 2 läuft nicht oder der Aktionsserver wurde noch nicht gestartet. Überprüfen Sie das ros2 node list zeigt /openarm_controller. Wenn nicht, kehren Sie zu Ihrem ROS 2-Terminal zurück und bestätigen Sie, dass der Start ohne Fehler abgeschlossen wurde. Eine häufige Unterursache: Sie haben vor dem Start vergessen, Ihren Arbeitsbereich anzugeben – siehe Einheit 1, kritischer Schritt 2.
Fehler 2: can0: Network is down Ich bin ROS 2-Terminal
Die SocketCAN-Schnittstelle wurde entfernt. Dies passiert, wenn Sie den USB-CAN-Adapter abgezogen und wieder angeschlossen haben, ohne ihn erneut auszuführen ip link set Befehl. Laufen sudo ip link set can0 up type can bitrate 1000000, und starten Sie dann den ROS 2-Start neu. Fügen Sie diesen Befehl zu einem Startskript hinzu, damit er beim Booten automatisch ausgeführt wird: sudo nano /etc/network/interfaces.d/can0.
Fehler 3: arm.get_joints() Gibt nur Nullen zurück, auch wenn der Arm nicht referenziert ist
Das ist kein Fehler – es bedeutet den Arm Ist meldet seinen gemeinsamen Zustand, die Kalibrierung ist jedoch möglicherweise nicht abgeschlossen. Wenn sich Ihr Arm physisch in der Nullstellung befindet, sind Nullen korrekt. Wenn sich Ihr Arm in einem anderen Winkel befindet, aber immer noch Nullen anzeigt, führen Sie die Kalibrierung über die Web-Benutzeroberfläche erneut durch (Einheit 1, kritischer Schritt 4). Gelenk-Encoder benötigen die Homing-Sequenz, um die absolute Position zu ermitteln.
Einheit 2 abgeschlossen, wenn...
arm.ping() kehrt zurück True in Ihrem Python-Terminal. Das Testskript läuft von Anfang bis Ende fehlerfrei. Sie können sehen, wie sich die Gelenkwinkelwerte in Echtzeit ändern, wenn Sie den Arm dabei physisch bewegen arm.get_joints() wird in einer Schleife abgefragt. Sie sind bereit für Einheit 3.