Die Teile für den SO-101 beschaffen
LeRobot installieren
pip install -e ".[feetech]"
|
Schritt-für-Schritt-Montageanleitung
| Achse des Führungsarms | Motor | Übersetzungsverhältnis |
| Basis / Schulterschwenken | 1 | 1 / 191 |
| Schulterheben | 2 | 1 / 345 |
| Ellbogenbeugung | 3 | 1 / 191 |
| Handgelenkbeugung | 4 | 1 / 147 |
| Handgelenkrotation | 5 | 1 / 147 |
| Greifer | 6 | 1 / 147 |
Teile des SO-101 reinigen
Gelenk 1 installieren
-
Den ersten Motor in die Basis einsetzen.
-
Den Motor mit vier M2x6-mm-Schrauben sichern (den kleinsten Schrauben): zwei von oben und zwei von unten.
-
Den ersten Motorhalter über den Motor schieben und mit zwei M2x6-mm-Schrauben befestigen (eine auf jeder Seite).
-
Beide Motorhörner anbringen und das obere Horn mit einer M3x6-mm-Schraube befestigen.
-
Das Schulterteil montieren.
-
Das Schulterteil oben mit vier M3x6-mm-Schrauben und unten mit vier M3x6-mm-Schrauben befestigen.
-
Den Motorhalter für die Schulter installieren.
Gelenk 2 installieren
-
Den zweiten Motor von oben nach unten in Position schieben.
-
Den zweiten Motor mit vier M2x6-mm-Schrauben sichern.
-
Beide Motorhörner an Motor 2 anbringen und das obere Horn mit einer M3x6-mm-Schraube befestigen.
-
Den Oberarm anbringen und auf jeder Seite mit vier M3x6-mm-Schrauben befestigen.
Gelenk 3 installieren
-
Motor 3 einsetzen und mit vier M2x6-mm-Schrauben sichern.
-
Beide Motorhörner an Motor 3 anbringen und eines davon mit einer M3x6-mm-Hornschraube befestigen.
-
Den Unterarm an Motor 3 befestigen und auf jeder Seite vier M3x6-mm-Schrauben verwenden.
Gelenk 4 installieren
-
Motorhalter 4 in Position schieben.
-
Motor 4 einsetzen.
-
Sichern Sie Motor 4 mit vier M2x6-mm-Schrauben, bringen Sie anschließend die Motorhörner an und befestigen Sie eines davon mit einer M3x6-mm-Hornschraube.
Gelenk 5 installieren
-
Setze Motor 5 in die Handgelenkhalterung ein und befestige ihn mit zwei M2x6-mm-Frontschrauben.
-
Setze ein einzelnes Motorhorn auf den Handgelenksmotor und befestige es mit einer M3x6-mm-Hornschraube.
-
Befestige das Handgelenk an Motor 4 und sichere es auf jeder Seite mit vier M3x6-mm-Schrauben.
Greifer / Griff installieren
Follower
-
Montiere den Greifer an Motor 5, indem du ihn mit vier M3x6-mm-Schrauben am Motorhorn des Handgelenks befestigst.
-
Setze den Greifermotor ein und befestige ihn auf jeder Seite mit zwei M2x6-mm-Schrauben.
-
Setze die Motorhörner auf und befestige eines davon mit einer M3x6-mm-Hornschraube.
-
Montiere die Greiferklaue und befestige sie auf jeder Seite mit vier M3x6-mm-Schrauben.
Leader
-
Montiere die Leader-Halterung am Handgelenk und befestige sie mit vier M3x6-mm-Schrauben.
-
Befestige den Griff mit einer M2x6-mm-Schraube an Motor 5.
-
Setze den Greifermotor ein und befestige ihn auf jeder Seite mit zwei M2x6-mm-Schrauben. Setze ein Motorhorn auf und befestige es mit einer M3x6-mm-Hornschraube.
-
Befestige den Follower-Trigger mit vier M3x6-mm-Schrauben.
Die Motoren des SO-101 konfigurieren
Die USB-Ports der beiden Arme ermitteln
lerobot-find-port
|
Mac
| Alle verfügbaren Ports für den MotorBus werden gesucht.
['/dev/tty.usbmodem575E0032081', '/dev/tty.usbmodem575E0031751']
Entferne das USB-Kabel von deinem MotorsBus und drücke anschließend die Eingabetaste.
[...Disconnect corresponding leader or follower arm and press Enter...]
Der Port dieses MotorsBus ist /dev/tty.usbmodem575E0032081
Schließe das USB-Kabel wieder an.
|
Linux
|
sudo chmod 666 /dev/ttyACM0 sudo chmod 666 /dev/ttyACM1
|
| Alle verfügbaren Ports für den MotorBus werden gesucht. ['/dev/ttyACM0', '/dev/ttyACM1'] Entferne das USB-Kabel von deinem MotorsBus und drücke anschließend die Eingabetaste.
|
Motor-IDs zuweisen und Baudraten festlegen
Follower
|
lerobot-setup-motors \
|
| from lerobot.robots.so101_follower import SO101Follower, SO101FollowerConfig config = SO101FollowerConfig( port="/dev/tty.usbmodem585A0076841", id="my_awesome_follower_arm", ) follower = SO101Follower(config) follower.setup_motors()
|
Verbinden Sie die Controllerplatine ausschließlich mit dem Motor „gripper“ und drücken Sie Enter.
|
-
Stromversorgung
-
USB-Kabel zwischen Ihrem Computer und der Controllerplatine
-
3-poliges Kabel von der Controllerplatine zum Motor
Die Motor-ID von „gripper“ wurde auf 6 gesetzt
|
Verbinden Sie die Controllerplatine ausschließlich mit dem Motor „wrist_roll“ und drücken Sie Enter.
|
Leader
| lerobot-setup-motors \ --teleop.type=so101_leader \ --teleop.port=/dev/tty.usbmodem575E0031751 # <- Fügen Sie hier den im vorherigen Schritt gefundenen Port ein
|
| from lerobot.teleoperators.so101_leader import SO101Leader, SO101LeaderConfig config = SO101LeaderConfig( port="/dev/tty.usbmodem585A0076841", id="my_awesome_leader_arm", ) leader = SO101Leader(config) leader.setup_motors()
|
Roboter kalibrieren
Follower
| lerobot-calibrate \ --robot.type=so101_follower \ --robot.port=/dev/tty.usbmodem58760431551 \ # <- Der Port deines Roboters --robot.id=my_awesome_follower_arm # <- Gib dem Roboter einen eindeutigen Namen
|
| from lerobot.robots.so101_follower import SO101FollowerConfig, SO101Follower config = SO101FollowerConfig( port="/dev/tty.usbmodem585A0076891", id="my_awesome_follower_arm", ) follower = SO101Follower(config) follower.connect(calibrate=False) follower.calibrate() follower.disconnect()
|
Leader
| lerobot-calibrate \ --teleop.type=so101_leader \ --teleop.port=/dev/tty.usbmodem58760431551 \ # <- Der Port deines Roboters --teleop.id=my_awesome_leader_arm # <- Gib dem Roboter einen eindeutigen Namen
|
| from lerobot.teleoperators.so101_leader import SO101LeaderConfig, SO101Leader config = SO101LeaderConfig( port="/dev/tty.usbmodem58760431551", id="my_awesome_leader_arm", ) leader = SO101Leader(config) leader.connect(calibrate=False) leader.calibrate() leader.disconnect()
|
Häufig gestellte Fragen
1. Wofür wird der SO-101 hauptsächlich verwendet?
Der SO-101 wird hauptsächlich als kostengünstige Roboterarm-Plattform zum Lernen, Bauen und Experimentieren mit Bewegungssteuerung, Teleoperation und Robotik-Workflows verwendet. Er eignet sich besonders für Nutzer, die Projekte auf Basis von LeRobot erkunden.
2. Brauche ich einen 3D-Drucker, um den SO-101 zu bauen?
Nicht unbedingt. Das Projekt umfasst 3D-gedruckte Teile. Du brauchst daher entweder Zugang zu einem 3D-Drucker oder musst die gedruckten Teile anfertigen lassen. Wenn dies dein erster Aufbau ist, kann die Beschaffung bereits gedruckter Teile den Prozess erleichtern.
3. Warum muss ich jeden Motor einzeln konfigurieren?
Jedem Motor müssen die richtige ID und die korrekten Kommunikationseinstellungen zugewiesen werden, damit das System jedes Gelenk ordnungsgemäß erkennen kann. Die individuelle Konfiguration hilft, Konflikte zu vermeiden, und stellt sicher, dass Leader- und Follower-Arm korrekt reagieren.
4. Was soll ich tun, wenn die Motoreinrichtung fehlschlägt?
Überprüfe zunächst den Stromanschluss, das USB-Kabel, die Controllerplatine und das 3-polige Motorkabel. Stelle außerdem sicher, dass während der Einrichtung nur der vorgesehene Motor angeschlossen ist und dass bei der Konfiguration keine Motoren versehentlich in Reihe geschaltet sind.
5. Warum ist die Kalibrierung nach dem Zusammenbau wichtig?
Die Kalibrierung ist wichtig, weil sie die physischen Gelenkpositionen mit dem Verständnis des Roboters durch die Software abgleicht. Ohne eine ordnungsgemäße Kalibrierung stimmen Leader- und Follower-Arm möglicherweise nicht korrekt überein, was die Steuerungsgenauigkeit verringern und spätere Trainings- oder Teleoperationsergebnisse beeinträchtigen kann.
