diff --git a/examples/10_use_so100.md b/examples/10_use_so100.md index b39a0239..23da1eab 100644 --- a/examples/10_use_so100.md +++ b/examples/10_use_so100.md @@ -4,8 +4,8 @@ - [A. Source the parts](#a-source-the-parts) - [B. Install LeRobot](#b-install-lerobot) - - [C. Configure the motors](#c-configure-the-motors) - - [D. Assemble the arms](#d-assemble-the-arms) + - [C. Configure the Motors](#c-configure-the-motors) + - [D. Step-by-Step Assembly Instructions](#d-step-by-step-assembly-instructions) - [E. Calibrate](#e-calibrate) - [F. Teleoperate](#f-teleoperate) - [G. Record a dataset](#g-record-a-dataset) @@ -70,6 +70,7 @@ conda install -y -c conda-forge "opencv>=4.10.0" ``` Great :hugs:! You are now done installing LeRobot and we can begin assembling the SO100 arms :robot:. Every time you now want to use LeRobot you can go to the `~/lerobot` folder where we installed LeRobot and run one of the commands. + ## C. Configure the motors > [!NOTE] @@ -221,19 +222,13 @@ Redo the process for all your motors until ID 6. Do the same for the 6 motors of Follow the video for removing gears. You need to remove the gear for the motors of the leader arm. As a result, you will only use the position encoding of the motor and reduce friction to more easily operate the leader arm. -#### c. Add motor horn to all 12 motors +## D. Step-by-Step Assembly Instructions -
-Video adding motor horn +**Step 1: Clean Parts** +- Remove all support material from the 3D-printed parts. +--- - - -
- -Follow the video for adding the motor horn. For SO-100, you need to align the holes on the motor horn to the motor spline to be approximately 1:30, 4:30, 7:30 and 10:30. -Try to avoid rotating the motor while doing so to keep position 2048 set during configuration. It is especially tricky for the leader motors as it is more sensible without the gears, but it's ok if it's a bit rotated. - -## D. Assemble the arms +### Additional Guidance
Video assembling arms @@ -242,7 +237,211 @@ Try to avoid rotating the motor while doing so to keep position 2048 set during
-Follow the video for assembling the arms. It is important to insert the cables into the motor that is being assembled before you assemble the motor into the arm! Inserting the cables beforehand is much easier than doing this afterward. The first arm should take a bit more than 1 hour to assemble, but once you get used to it, you can do it under 1 hour for the second arm. +**Note:** +This video provides visual guidance for assembling the arms, but it doesn't specify when or how to do the wiring. Inserting the cables beforehand is much easier than doing it afterward. The first arm may take a bit more than 1 hour to assemble, but once you get used to it, you can assemble the second arm in under 1 hour. + +--- + +### First Motor + +**Step 2: Insert Wires** +- Insert two wires into the first motor. + + + +**Step 3: Install in Base** +- Place the first motor into the base. + + + +**Step 4: Secure Motor** +- Fasten the motor with 4 screws. Two from the bottom and two from top. + +**Step 5: Attach Motor Holder** +- Slide over the first motor holder and fasten it using two screws (one on each side). + + + +**Step 6: Attach Motor Horns** +- Install both motor horns, securing the top horn with a screw. Try not to move the motor position when attaching the motor horn, especially for the leader arms, where we removed the gears. + + +
+ Video adding motor horn + +
+ +**Step 7: Attach Shoulder Part** +- Route one wire to the back of the robot and the other to the left or in photo towards you (see photo). +- Attach the shoulder part. + + + +**Step 8: Secure Shoulder** +- Tighten the shoulder part with 4 screws on top and 4 on the bottom +*(access bottom holes by turning the shoulder).* + +--- + +### Second Motor Assembly + +**Step 9: Install Motor 2** +- Slide the second motor in from the top and link the wire from motor 1 to motor 2. + + + +**Step 10: Attach Shoulder Holder** +- Add the shoulder motor holder. +- Ensure the wire from motor 1 to motor 2 goes behind the holder while the other wire is routed upward (see photo). +- This part can be tight to assemble, you can use a workbench like the image or a similar setup to push the part around the motor. + +
+ + + +
+ +**Step 11: Secure Motor 2** +- Fasten the second motor with 4 screws. + +**Step 12: Attach Motor Horn** +- Attach both motor horns to motor 2, again use the horn screw. + +**Step 13: Attach Base** +- Install the base attachment using 2 screws. + + + +**Step 14: Attach Upper Arm** +- Attach the upper arm with 4 screws on each side. + + + +--- + +### Third Motor Assembly + +**Step 15: Install Motor 3** +- Route the motor cable from motor 2 through the cable holder to motor 3, then secure motor 3 with 4 screws. + +**Step 16: Attach Motor Horn** +- Attach both motor horns to motor 3 and secure one again with a horn screw. + + + +**Step 17: Attach Forearm** +- Connect the forearm to motor 3 using 4 screws on each side. + + + +--- + +### Fourth Motor Assembly + +**Step 18: Install Motor 4** +- Slide in motor 4, attach the cable from motor 3, and secure the cable in its holder with a screw. + +
+ + +
+ +**Step 19: Attach Motor Holder 4** +- Install the fourth motor holder (a tight fit). Ensure one wire is routed upward and the wire from motor 3 is routed downward (see photo). + + + +**Step 20: Secure Motor 4 & Attach Horn** +- Fasten motor 4 with 4 screws and attach its motor horns, use for one a horn screw. + + + +--- + +### Wrist Assembly + +**Step 21: Install Motor 5** +- Insert motor 5 into the wrist holder and secure it with 2 front screws. + + + +**Step 22: Attach Wrist** +- Connect the wire from motor 4 to motor 5. And already insert the other wire for the gripper. +- Secure the wrist to motor 4 using 4 screws on both sides. + + + +**Step 23: Attach Wrist Horn** +- Install only one motor horn on the wrist motor and secure it with a horn screw. + + + +--- + +### Follower Configuration + +**Step 24: Attach Gripper** +- Attach the gripper to motor 5. + + + +**Step 25: Install Gripper Motor** +- Insert the gripper motor, connect the motor wire from motor 5 to motor 6, and secure it with 3 screws on each side. + + + +**Step 26: Attach Gripper Horn & Claw** +- Attach the motor horns and again use a horn screw. +- Install the gripper claw and secure it with 4 screws on both sides. + + + +**Step 27: Mount Controller** +- Attach the motor controller on the back. + +
+ + +
+ +*Assembly complete – proceed to Leader arm assembly.* + +--- + +### Leader Configuration + +For the leader configuration, perform **Steps 1–23**. Make sure that you removed the motor gears from the motors. + +**Step 24: Attach Leader Holder** +- Mount the leader holder onto the wrist and secure it with a screw. + + + +**Step 25: Attach Handle** +- Attach the handle to motor 5 using 4 screws. + + + +**Step 26: Install Gripper Motor** +- Insert the gripper motor, secure it with 3 screws on each side, attach a motor horn using a horn screw, and connect the motor wire. + + + +**Step 27: Attach Trigger** +- Attach the follower trigger with 4 screws. + + + +**Step 28: Mount Controller** +- Attach the motor controller on the back. + +
+ + +
+ +*Assembly complete – proceed to calibration.* + ## E. Calibrate diff --git a/media/tutorial/img1.jpg b/media/tutorial/img1.jpg new file mode 100644 index 00000000..c16fbf5e Binary files /dev/null and b/media/tutorial/img1.jpg differ diff --git a/media/tutorial/img10.jpg b/media/tutorial/img10.jpg new file mode 100644 index 00000000..925ed918 Binary files /dev/null and b/media/tutorial/img10.jpg differ diff --git a/media/tutorial/img11.jpg b/media/tutorial/img11.jpg new file mode 100644 index 00000000..ac040312 Binary files /dev/null and b/media/tutorial/img11.jpg differ diff --git a/media/tutorial/img12.jpg b/media/tutorial/img12.jpg new file mode 100644 index 00000000..dd500afb Binary files /dev/null and b/media/tutorial/img12.jpg differ diff --git a/media/tutorial/img13.jpg b/media/tutorial/img13.jpg new file mode 100644 index 00000000..99c6836f Binary files /dev/null and b/media/tutorial/img13.jpg differ diff --git a/media/tutorial/img14.jpg b/media/tutorial/img14.jpg new file mode 100644 index 00000000..8b544e24 Binary files /dev/null and b/media/tutorial/img14.jpg differ diff --git a/media/tutorial/img15.jpg b/media/tutorial/img15.jpg new file mode 100644 index 00000000..76cee552 Binary files /dev/null and b/media/tutorial/img15.jpg differ diff --git a/media/tutorial/img16.jpg b/media/tutorial/img16.jpg new file mode 100644 index 00000000..363b729d Binary files /dev/null and b/media/tutorial/img16.jpg differ diff --git a/media/tutorial/img17.jpg b/media/tutorial/img17.jpg new file mode 100644 index 00000000..dc211bc6 Binary files /dev/null and b/media/tutorial/img17.jpg differ diff --git a/media/tutorial/img18.jpg b/media/tutorial/img18.jpg new file mode 100644 index 00000000..c9732b65 Binary files /dev/null and b/media/tutorial/img18.jpg differ diff --git a/media/tutorial/img19.jpg b/media/tutorial/img19.jpg new file mode 100644 index 00000000..25c5f0e3 Binary files /dev/null and b/media/tutorial/img19.jpg differ diff --git a/media/tutorial/img2.jpg b/media/tutorial/img2.jpg new file mode 100644 index 00000000..47d3671c Binary files /dev/null and b/media/tutorial/img2.jpg differ diff --git a/media/tutorial/img20.jpg b/media/tutorial/img20.jpg new file mode 100644 index 00000000..effe9c96 Binary files /dev/null and b/media/tutorial/img20.jpg differ diff --git a/media/tutorial/img21.jpg b/media/tutorial/img21.jpg new file mode 100644 index 00000000..0acc5194 Binary files /dev/null and b/media/tutorial/img21.jpg differ diff --git a/media/tutorial/img22.jpg b/media/tutorial/img22.jpg new file mode 100644 index 00000000..3f223a8b Binary files /dev/null and b/media/tutorial/img22.jpg differ diff --git a/media/tutorial/img23.jpg b/media/tutorial/img23.jpg new file mode 100644 index 00000000..b9c411f4 Binary files /dev/null and b/media/tutorial/img23.jpg differ diff --git a/media/tutorial/img24.jpg b/media/tutorial/img24.jpg new file mode 100644 index 00000000..4011d190 Binary files /dev/null and b/media/tutorial/img24.jpg differ diff --git a/media/tutorial/img25.jpg b/media/tutorial/img25.jpg new file mode 100644 index 00000000..727dbadf Binary files /dev/null and b/media/tutorial/img25.jpg differ diff --git a/media/tutorial/img26.jpg b/media/tutorial/img26.jpg new file mode 100644 index 00000000..ae38e980 Binary files /dev/null and b/media/tutorial/img26.jpg differ diff --git a/media/tutorial/img27.jpg b/media/tutorial/img27.jpg new file mode 100644 index 00000000..628b8a84 Binary files /dev/null and b/media/tutorial/img27.jpg differ diff --git a/media/tutorial/img28.jpg b/media/tutorial/img28.jpg new file mode 100644 index 00000000..e9a7fb5d Binary files /dev/null and b/media/tutorial/img28.jpg differ diff --git a/media/tutorial/img29.jpg b/media/tutorial/img29.jpg new file mode 100644 index 00000000..78210b29 Binary files /dev/null and b/media/tutorial/img29.jpg differ diff --git a/media/tutorial/img3.jpg b/media/tutorial/img3.jpg new file mode 100644 index 00000000..bf9b7bca Binary files /dev/null and b/media/tutorial/img3.jpg differ diff --git a/media/tutorial/img30.jpg b/media/tutorial/img30.jpg new file mode 100644 index 00000000..0fa59bba Binary files /dev/null and b/media/tutorial/img30.jpg differ diff --git a/media/tutorial/img31.jpg b/media/tutorial/img31.jpg new file mode 100644 index 00000000..1409d2f0 Binary files /dev/null and b/media/tutorial/img31.jpg differ diff --git a/media/tutorial/img32.jpg b/media/tutorial/img32.jpg new file mode 100644 index 00000000..74dbee5f Binary files /dev/null and b/media/tutorial/img32.jpg differ diff --git a/media/tutorial/img4.jpg b/media/tutorial/img4.jpg new file mode 100644 index 00000000..9d155c16 Binary files /dev/null and b/media/tutorial/img4.jpg differ diff --git a/media/tutorial/img5.jpg b/media/tutorial/img5.jpg new file mode 100644 index 00000000..afd3c428 Binary files /dev/null and b/media/tutorial/img5.jpg differ diff --git a/media/tutorial/img6.jpg b/media/tutorial/img6.jpg new file mode 100644 index 00000000..c669d37d Binary files /dev/null and b/media/tutorial/img6.jpg differ diff --git a/media/tutorial/img7.jpg b/media/tutorial/img7.jpg new file mode 100644 index 00000000..3f6c3501 Binary files /dev/null and b/media/tutorial/img7.jpg differ diff --git a/media/tutorial/img8.jpg b/media/tutorial/img8.jpg new file mode 100644 index 00000000..009102cb Binary files /dev/null and b/media/tutorial/img8.jpg differ diff --git a/media/tutorial/img9.jpg b/media/tutorial/img9.jpg new file mode 100644 index 00000000..06a4f58e Binary files /dev/null and b/media/tutorial/img9.jpg differ