Zurück zu LinkerBot O6 Path

Hardware-Einstellung

Montieren, schalten und Kabeln den LinkerBot O6. Konfigurieren Sie SocketCAN und überprüfen Sie den gemeinsamen Zustand.

Einheit 1 von 5 · Hardware-Einstellung · ~ 1,5 Stunden

Setzen Sie den Arm an, verbinden Sie Strom und CAN-Bus, konfigurieren Sie SocketCAN auf Linux und überprüfen Sie einen Live-Joint-Status-Lesung. Am Ende haben Sie eine bestätigte Betriebshardware-Verbindung.

** Bevor man den Arm anbringt, muss der O6 an eine Montageplatte festgesetzt oder an eine Arbeitsplatte geklemmt werden, bevor sich die Gelenke bewegen.

Schritt 1: Maschinenbau

  1. An die O6-Basis an die Montageplatte mit den zur Verfügung gestellten 4×-M6-Schrauben anbringen.
  2. Bestätigen Sie, dass die Montagefläche stabil ist und sich nicht beugt.
  3. Falt den Arm in die Position des Versand/Haus: alle Gelenke bei 0°. Falt dies manuell vor dem Einschalten.

Schritt 2: Stromverbindung

  1. Verbinden Sie die angebotene Stromversorgung mit dem Gleichstrom-Eingangsschalter des Arms (24 V, 15 A).
  2. Zuerst nicht vollständige CAN-Buss-Kabelung einladen.

Schritt 3: CAN-Bus-Kabel

Verbinden Sie den USB-to-CAN-Adapter zwischen Ihrem Computer und dem CAN-Port des Arms.

Wenn Sie bereits SocketCAN für OpenArm konfiguriert haben, überspringen Sie zum Schritt 4 und überprüfen Sie einfach, ob T4 korrekt angezeigt wird.

Schritt 4: SocketCAN konfigurieren

Schalten Sie den Arm an und konfigurieren Sie die CAN-Schnittstelle auf Ihrem Linux-Gerät:

# Load kernel modules (required once per boot, or add to /etc/modules)
sudo modprobe can
sudo modprobe can_raw
sudo modprobe slcan

# Find the USB-CAN adapter device (usually /dev/ttyUSB0 or /dev/ttyACM0)
ls /dev/ttyUSB* /dev/ttyACM*

# Bring up the CAN interface at 1 Mbit/s
sudo slcand -o -c -s8 /dev/ttyUSB0 can0
sudo ip link set up can0

# Verify the interface is up
ip link show can0

Sie sollten den Ausgang sehen wie T5. Wenn die Schnittstelle nicht auf ist, überprüfen Sie, ob der Arm angeschaltet ist und der USB-Adapter erkannt wird.

Erstellen Sie CAN Auto-Start auf Boot (optional)

# Create a systemd service
sudo tee /etc/systemd/system/can0.service <<'EOF'
[Unit]
Description=CAN bus interface can0
After=network.target

[Service]
ExecStartPre=/sbin/modprobe can
ExecStartPre=/sbin/modprobe can_raw
ExecStartPre=/sbin/modprobe slcan
ExecStart=/usr/bin/slcand -o -c -s8 /dev/ttyUSB0 can0
ExecStartPost=/usr/sbin/ip link set up can0
RemainAfterExit=yes

[Install]
WantedBy=multi-user.target
EOF

sudo systemctl daemon-reload
sudo systemctl enable can0
sudo systemctl start can0

Schritt 5: Überprüfen Sie die gemeinsame Leseerfassung

Installieren Sie die LinkerBot SDK und bestätigen Sie, dass die gemeinsame Telemetrie streamt:

pip install roboticscenter

python3 - <<'EOF'
from roboticscenter.o6 import O6Robot

robot = O6Robot(can_interface="can0")
robot.connect()

state = robot.get_state()
print("Joint positions (rad):", state.joint_positions)
print("Joint velocities (rad/s):", state.joint_velocities)
print("Joint torques (Nm):", state.joint_torques)

robot.disconnect()
EOF

Erwartete Ausgabe: sechs Wertwerte pro Feld, alle in der Nähe von 0,0 wenn der Arm in seiner Position ist. Wenn Sie alle Nullen ohne Änderung sehen, überprüfen Sie Ihre CAN-Kabelung. Wenn Sie einen T6 erhalten, laufen Sie T7 aus und bestätigen Sie, dass die Schnittstelle T8 ist.

Schritt 6: Zur Heimstellung

Senden Sie einen Befehl, um alle Verbindungen mit langsamer Geschwindigkeit zur Null- (Heim-) Position zu bewegen, um die Reaktion des Aktoren zu bestätigen:

from roboticscenter.o6 import O6Robot
import time

robot = O6Robot(can_interface="can0")
robot.connect()

print("Moving to home position at 20% speed...")
robot.move_to_home(speed_fraction=0.2)
time.sleep(5)

state = robot.get_state()
print("Final joint positions:", state.joint_positions)
# All values should be near 0.0

robot.disable_torque()
robot.disconnect()
print("Done — joints are gravity-compensated")

Einheit 1 vollendet, wenn...

Die O6 ist montiert und angetrieben. T9 meldet die Schnittstelle als UP. Joint state readut gibt sechs nicht-Null-Positionen zurück. Der Arm reagiert auf den Heimpositionsbefehl und die Gelenke werden bewegt. CAN-Schnittstelle überlebt einen Neustart (optional, aber empfohlen).

[← Zurück zum Wegüberblick]