SO-101 מדריך התקנה

מחלקים ועד לאיסוף נתונים ראשון. זמן משוער: ~3-4 שעות (לא סופר את זמן ההדפסה בתלת-ממד).

1

הַרכָּבָה

~60 דקות + זמן הדפסה

ה-SO-101 הוא זרוע קוד פתוח לחלוטין. כל החלקים מודפסים בתלת מימד או זמינים כחומרה מדף הרשומה ב-LeRobot BOM ב-HuggingFace.

חלקים שאתה צריך

  • 6× מנועי סרוו Feetech STS3215
  • חלקים מבניים מודפסים בתלת מימד (קבצי STL ב-SO-101 GitHub)
  • כבל מתאם USB לטורי (שבב CH340 או CP2102)
  • ספק כוח 12V (מינימום 3A)
  • כבלי סרוו וחומרת מחברים (לכל BOM)

רשימת בדיקה להרכבה

  • הדפס את כל הרכיבים המבניים (בסיס, קישורים, אפקטור קצה)
  • התקן סרוו STS3215 לתוך בתי הקישור שלהם
  • נתב כבלי סרוו דרך ערוצי הכבלים המודפסים
  • סרוו שרשרת דייזי בסדר הנכון (מזהות 1-6 מהבסיס לקצה)
  • אבטח את הבסיס למשטח יציב לפני ההפעלה
  • קרא את דף בטיחות לפני הפעלת כוח
היכן ניתן להשיג את קבצי BOM ו- STL: מאגר החומרים המלא והחלקים הניתנים להדפסה נשמרים במאגר HuggingFace LeRobot. חפש את "SO-101" ב- LeRobot GitHub.

הדפסת החלקים בתלת מימד

זמן הדפסה של ~8-16 שעות

כל הרכיבים המבניים של SO-101 ניתנים להדפסה באמצעות מדפסות שולחניות סטנדרטיות. קובצי STL מאורגנים להדפסות של קובץ בודד עבור כל זרוע, מה שהופך את החיתוך לפשוט.

הגדרות פריסה מומלצות

סְבִיבָה עֵרֶך
חוֹמֶר PLA+
קוטר זרבובית 0.4 מ"מ (או 0.6 מ"מ)
גובה השכבה 0.2 מ"מ (0.4 מ"מ עבור זרבובית 0.6 מ"מ)
צפיפות מילוי 15%
תומך בְּכָל מָקוֹם; התעלם משיפועים מעל 45°
הדבקת מיטה מקל דבק סטנדרטי על PEI או זכוכית
מדפסות שנבדקו Prusa MINI+, Creality Ender 3, סדרת Bambu Lab A/P/X

קבצי STL - אילו להדפיס

הדפסות מסודרות מראש של קובץ בודד זמינות עבור גדלי מיטה נפוצים:

  • מיטה 220×220 מ"מ (אנדר 3):
    • חָסִיד: STL/SO101/Follower/Ender_Follower_SO101.stl
    • מַנהִיג: STL/SO101/Leader/Ender_Leader_SO101.stl
  • מיטה 205×250 מ"מ (Prusa / UP):
    • חָסִיד: STL/SO101/Follower/Prusa_Follower_SO101.stl
    • מַנהִיג: STL/SO101/Leader/Prusa_Leader_SO101.stl
ודא תחילה את דיוק הממדים. לפני הדפסת הזרוע המלאה, הדפס את מד STLs STL/Gauges/ ובדוק אותם מול לבנת לגו או סרוו STS3215. התאמה נכונה על המד מאשרת שכיול המדפסת שלך מדויק. התאם את קנה המידה במידת הצורך לפני התחייבות להדפסה המלאה.
אין ברשותך מדפסת? ראה את מדריך 3DPRINT.md במאגר SO-ARM100 לאפשרויות שירות הדפסה. ערכות מודפסות מראש זמינות גם מ PartaBot (לָנוּ), סטודיו Seeed (בינלאומי), ו גילוי אוטומטי (האיחוד האירופי).
2

התקנת תוכנה

~15 דקות

ה-SO-101 נתמך באופן מקורי על ידי HuggingFace LeRobot. אין צורך בתוסף נוסף - פשוט התקן את LeRobot.

התקן את LeRobot

# Using pip
pip install lerobot

# Or with uv (recommended)
uv pip install lerobot

הרשאות יציאה טורית של לינוקס

בלינוקס, יציאות טוריות תחת /dev/ttyACM* לדרוש מהמשתמש להיות ב- dialout קְבוּצָה. הפעל את זה פעם אחת והתנתק והיכנס חזרה:

sudo usermod -aG dialout $USER
# Then log out and back in, or run:
newgrp dialout

דרישות מוקדמות

  • Python 3.10+
  • לינוקס (מומלץ ב-Ubuntu 22.04) או macOS
  • מנהל התקן USB לטורי מותקן (מנהל התקן CH340 ב-macOS; בדרך כלל מותקן מראש ב-Linux)
3

זיהוי יציאות וכיול

~20 דקות

מצא את יציאת ה-USB הטורית הנכונה עבור הזרוע, ולאחר מכן הרץ את סקריפט הכיול של LeRobot כדי להגדיר עמדות אפס של סרוו.

מצא את היציאה הטורית

python lerobot/scripts/find_motors_bus_port.py

חבר ונתק את כבל ה-USB כאשר תתבקש. הסקריפט מזהה לאיזו יציאה הזרוע מחוברת. ערכים אופייניים:

# Linux:  /dev/ttyACM0  (or ttyUSB0 for CH340 adapters)
# macOS:  /dev/tty.usbmodem*  or  /dev/tty.usbserial-*

הפעל כיול

הזז את הזרוע בכל טווח התנועה שלה כאשר תתבקש:

python lerobot/scripts/calibrate.py \
  --robot.type=so101 \
  --robot.port=/dev/ttyACM0
כיול מחדש לאחר כל הרכבה מחדש. נתוני הכיול מאוחסנים באופן מקומי. אם אתה מפרק ומרכיב מחדש את המפרקים, הפעל מחדש את הכיול כדי לשחזר מצבי אפס מדויקים.
4

מבחן תנועה ראשון

~15 דקות

הפעל את סקריפט ה-Reloperate במצב זרוע אחת כדי לוודא שכל המפרקים מגיבים כהלכה לפני חיבור זרוע מובילה.

python lerobot/scripts/teleoperate.py \
  --robot.type=so101 \
  --robot.port=/dev/ttyACM0

מה לאמת

  • כל 6 המפרקים מגיבים לפקודות מבלי לדלג
  • אין אזהרות על עצירת סרוו או עומס יתר בטרמינל
  • תפס נפתח ונסגר בטווח מלא
  • אין להיתקל בכבל בשום עמדת מפרקים
עצירת חירום נתק את כבל ה-USB כדי לחתוך מיד את התקשורת לזרוע. הרחק ידיים מסביבת העבודה במהלך הפעלה ממונעת.
5

טלאופרציה

~30 דקות

ה-SO-101 פועל כזרוע עצמאית או כזרוע עוקבת עם זרוע מובילה להפעלה טלפונית. שימוש בזרוע שנייה כמנהיג מייצר הדגמות איכותיות יותר ללמידה חיקוי.

מצב עצמאי (מקלדת / פרוגרמטי)

python lerobot/scripts/teleoperate.py \
  --robot.type=so101 \
  --robot.port=/dev/ttyACM0

עם זרוע מובילה (למשל מוביל DK1)

python lerobot/scripts/teleoperate.py \
  --robot.type=so101 \
  --robot.port=/dev/ttyACM0 \
  --teleop.type=so101 \
  --teleop.port=/dev/ttyACM1
הגדרה דו-ידנית: ה-SO-101 יכול לשמש כזרוע עוקבת עם זרוע המנהיג DK1. שניהם מקוריים של LeRobot ומתקשרים דרך USB טורית. ראה את עמוד DK1 לפרטי הגדרה דו-ידנית מלאה.
6

איסוף נתונים

מתמשך

הקלט הדגמות באמצעות record.py. הנתונים נשמרים בפורמט LeRobot וניתן לדחוף אותם ישירות אל HuggingFace Hub לצורך אימון.

הקלטה בסיסית

python lerobot/scripts/record.py \
  --robot.type=so101 \
  --robot.port=/dev/ttyACM0 \
  --dataset.repo_id=your-org/so101-dataset \
  --dataset.task="pick cube"

עם מצלמת USB

python lerobot/scripts/record.py \
  --robot.type=so101 \
  --robot.port=/dev/ttyACM0 \
  --robot.cameras.top.type=opencv \
  --robot.cameras.top.index=0 \
  --dataset.repo_id=your-org/so101-dataset \
  --dataset.task="pick cube"

הקלטת שיטות עבודה מומלצות

  • הקלט לפחות 50 הדגמות לכל משימה לפני האימון
  • שנה את מיקומי האובייקט ואת כיווני האובייקט על פני פרקים
  • השתמש בתיאור --dataset.task שמות לסינון מאוחר יותר
  • מצלמות OAK-D או Intel RealSense פועלות היטב לאיסוף נתונים המאפשר עומק
  • אמת את העלאות מערך הנתונים ל- HuggingFace Hub לאחר כל הפעלה

השלבים הבאים

לאחר שנאסף נתונים, אמן מודל ACT או Diffusion Policy באמצעות סקריפטי ההדרכה של LeRobot. קרא את המלא מסלול למידה SO-101 להתקדמות מובנית מההגדרה לפריסת המודל.

ההגדרה הושלמה?

הצטרף לקהילה כדי לשתף תוצאות ולקבל עזרה עם תצורות מתקדמות.