LeRobot 文件

SO-100

Hugging Face's logo
加入 Hugging Face 社群

並獲得增強的文件體驗

開始使用

SO-100

在以下步驟中,我們將說明如何組裝 SO-100 機器人。

採購零件

請遵循此 README。它包含了材料清單、採購零件的連結以及 3D 列印零件的說明。如果你是第一次列印或沒有 3D 印表機,它也會提供建議。

安裝 LeRobot 🤗

要安裝 LeRobot,請遵循我們的安裝指南

除了這些說明外,你還需要安裝 Feetech SDK

pip install -e ".[feetech]"

配置電機

注意: 與 SO-101 不同,SO-100 的電機聯結器在機械臂組裝後不易接觸,因此必須提前完成配置步驟。

1. 找到與每個機械臂關聯的 USB 埠

要查詢每個匯流排伺服介面卡的埠,請執行此指令碼

lerobot-find-port
Mac
Linux

示例輸出

Finding all available ports for the MotorBus.
['/dev/tty.usbmodem575E0032081', '/dev/tty.usbmodem575E0031751']
Remove the USB cable from your MotorsBus and press Enter when done.

[...Disconnect corresponding leader or follower arm and press Enter...]

The port of this MotorsBus is /dev/tty.usbmodem575E0032081
Reconnect the USB cable.

找到的埠是: /dev/tty.usbmodem575E0032081,對應於您的主控臂或從動臂。

2. 設定電機的 ID 和波特率

每個電機在總線上由一個唯一的 ID 標識。全新的電機通常帶有預設 ID 1。為了讓電機和控制器之間正常通訊,我們首先需要為每個電機設定一個唯一的、不同的 ID。此外,總線上資料傳輸的速度由波特率決定。為了相互通訊,控制器和所有電機都需要配置相同的波特率。

為此,我們首先需要單獨連線每個電機和控制器來設定這些引數。由於我們會將這些引數寫入電機內部儲存器的非易失性部分(EEPROM),所以我們只需要做一次。

如果你正在重複使用其他機器人的電機,你可能也需要執行此步驟,因為 ID 和波特率很可能不匹配。

從動臂

將計算機的 USB 資料線和電源連線到從動臂的控制器板上。然後,執行以下命令或使用上一步中獲取的埠執行 API 示例。你還需要使用 id 引數為你的主動臂命名。

有關如何設定電機 ID 的直觀參考,請參閱此影片,其中我們演示了 SO101 機械臂的設定過程。

命令
API 示例
lerobot-setup-motors \
    --robot.type=so100_follower \
    --robot.port=/dev/tty.usbmodem585A0076841  # <- paste here the port found at previous step

你應該會看到以下說明

Connect the controller board to the 'gripper' motor only and press enter.

按照指示,插入夾爪的電機。確保它是唯一連線到控制器板的電機,並且電機本身尚未以菊花鏈方式連線到任何其他電機。當你按下 [Enter] 鍵時,指令碼將自動為該電機設定 ID 和波特率。

故障排除

如果此時出現錯誤,請檢查您的電纜並確保它們已正確插入。

  • 電源
  • 電腦和控制器板之間的 USB 電纜
  • 從控制器板到電機的 3 針電纜

如果您使用的是 Waveshare 控制器板,請確保兩個跳線都設定在 B 通道(USB)上。

然後您應該看到以下訊息

'gripper' motor id set to 6

接著是下一條指令

Connect the controller board to the 'wrist_roll' motor only and press enter.

你可以從控制器板上拔下 3 針電纜,但可以讓它連線在夾爪電機的另一端,因為它已經位於正確的位置。現在,將另一根 3 針電纜插入手腕滾動電機並將其連線到控制器板。與上一個電機一樣,確保它是唯一連線到控制器板的電機,並且電機本身沒有連線到任何其他電機。

按照指示為每個電機重複此操作。

在按 Enter 鍵之前,請在每一步檢查您的佈線。例如,在操作電路板時,電源線可能會斷開。

完成後,指令碼將直接結束,此時電機已準備好使用。你現在可以將每個電機的 3 針電纜連線到下一個電機,並將第一個電機(ID=1 的“肩部平移”)的電纜連線到控制器板,該控制器板現在可以安裝在機械臂的底座上。

主動臂

對主動臂執行相同的步驟。

命令
API 示例
lerobot-setup-motors \
    --teleop.type=so100_leader \
    --teleop.port=/dev/tty.usbmodem575E0031751  # <- paste here the port found at previous step

分步組裝說明

移除 6 個主動臂電機的齒輪

移除齒輪影片

按照影片移除齒輪。你需要移除主動臂電機的齒輪。這樣,你將只使用電機的位置編碼,並減少摩擦,從而更容易操作主動臂。

清潔零件

移除 3D 列印零件上的所有支撐材料。最簡單的方法是使用小螺絲刀撬開支撐材料。

附加指南

組裝機械臂影片

注意: 本影片為組裝機械臂提供了視覺指導,但並未具體說明何時或如何進行佈線。提前插入電纜比事後操作要容易得多。組裝第一個機械臂可能需要超過 1 小時,但一旦熟悉了,你可以在 1 小時內組裝好第二個。


第一個電機

第 2 步:插入電線

  • 將兩根電線插入第一個電機。

第 3 步:安裝到底座中

  • 將第一個電機放入底座。

第 4 步:固定電機

  • 用 4 顆螺絲固定電機。底部兩顆,頂部兩顆。

第 5 步:安裝電機支架

  • 滑入第一個電機支架,並用兩顆螺絲(每側一顆)固定。

第 6 步:安裝電機臂盤

  • 安裝兩個電機臂盤,用一顆螺絲固定頂部的臂盤。安裝臂盤時儘量不要移動電機的位置,特別是對於移除了齒輪的主動臂。
新增電機臂盤影片

第 7 步:安裝肩部零件

  • 將一根電線引向機器人後部,另一根引向左側或朝向你(見照片)。
  • 安裝肩部零件。

第 8 步:固定肩部

  • 用頂部 4 顆螺絲和底部 4 顆螺絲擰緊肩部零件*(轉動肩部可接觸到底部孔)*。

第二個電機組裝

第 9 步:安裝電機 2

  • 從頂部滑入第二個電機,並將電機 1 的電線連線到電機 2。

第 10 步:安裝肩部支架

  • 新增肩部電機支架。
  • 確保從電機 1 到電機 2 的電線繞到支架後面,而另一根電線向上引出(見照片)。
  • 這個零件可能比較難安裝,你可以使用像圖中那樣的工作臺或類似的裝置將零件推到電機周圍。

第 11 步:固定電機 2

  • 用 4 顆螺絲固定第二個電機。

第 12 步:安裝電機臂盤

  • 將兩個電機臂盤安裝到電機 2,同樣使用臂盤螺絲。

第 13 步:安裝底座附件

  • 用 2 顆螺絲安裝底座附件。

第 14 步:安裝上臂

  • 用每側 4 顆螺絲安裝上臂。

第三個電機組裝

第 15 步:安裝電機 3

  • 將電機 2 的電機電纜穿過電纜支架連線到電機 3,然後用 4 顆螺絲固定電機 3。

第 16 步:安裝電機臂盤

  • 將兩個電機臂盤安裝到電機 3,並再次用臂盤螺絲固定一個。

第 17 步:安裝前臂

  • 用每側 4 顆螺絲將前臂連線到電機 3。

第四個電機組裝

第 18 步:安裝電機 4

  • 滑入電機 4,連線來自電機 3 的電纜,並用一顆螺絲將電纜固定在其支架中。

第 19 步:安裝電機支架 4

  • 安裝第四個電機支架(比較緊)。確保一根電線向上引出,來自電機 3 的電線向下引出(見照片)。

第 20 步:固定電機 4 並安裝臂盤

  • 用 4 顆螺絲固定電機 4 並安裝其電機臂盤,其中一個使用臂盤螺絲。

手腕組裝

第 21 步:安裝電機 5

  • 將電機 5 插入手腕支架,並用 2 顆前部螺絲固定。

第 22 步:安裝手腕

  • 將電機 4 的電線連線到電機 5。並提前插入另一根用於夾爪的電線。
  • 用兩側各 4 顆螺絲將手腕固定到電機 4。

第 23 步:安裝手腕臂盤

  • 只在手腕電機上安裝一個電機臂盤,並用臂盤螺絲固定。

從動臂配置

第 24 步:安裝夾爪

  • 將夾爪安裝到電機 5。

第 25 步:安裝夾爪電機

  • 插入夾爪電機,將電機 5 的電機線連線到電機 6,並用每側 3 顆螺絲固定。

第 26 步:安裝夾爪臂盤和爪子

  • 安裝電機臂盤並再次使用臂盤螺絲。
  • 安裝夾爪的爪子,並用兩側各 4 顆螺絲固定。

第 27 步:安裝控制器

  • 將電機控制器安裝到機器人後部。

組裝完成 – 繼續進行主動臂的組裝。


主動臂配置

對於主動臂配置,請執行步驟 1–23。確保你已經從電機上移除了電機齒輪。

第 24 步:安裝主動臂支架

  • 將主動臂支架安裝到手腕上,並用一顆螺絲固定。

第 25 步:安裝手柄

  • 用 4 顆螺絲將手柄安裝到電機 5。

第 26 步:安裝夾爪電機

  • 插入夾爪電機,用每側 3 顆螺絲固定,用臂盤螺絲安裝一個電機臂盤,並連線電機電線。

第 27 步:安裝扳機

  • 用 4 顆螺絲安裝從動臂扳機。

第 28 步:安裝控制器

  • 將電機控制器安裝到機器人後部。

校準

接下來,你需要校準你的機器人,以確保主動臂和從動臂在處於相同物理位置時具有相同的位置值。校準過程非常重要,因為它使得在一個機器人上訓練的神經網路可以在另一個機器人上工作。

從動臂

執行以下命令或 API 示例來校準從動臂

命令
API 示例
lerobot-calibrate \
    --robot.type=so100_follower \
    --robot.port=/dev/tty.usbmodem58760431551 \ # <- The port of your robot
    --robot.id=my_awesome_follower_arm # <- Give the robot a unique name

我們為大多數機器人統一了校準方法。因此,這款 SO100 機械臂的校準步驟與 Koch 和 SO101 的步驟相同。首先,我們必須將機器人移動到每個關節都處於其活動範圍中間的位置,然後我們按下 Enter。其次,我們將所有關節移動到其完整的運動範圍。有關 SO101 相同過程的影片參考可以在這裡找到。

主動臂

執行相同的步驟來校準主控臂,執行以下命令或 API 示例

命令
API 示例
lerobot-calibrate \
    --teleop.type=so100_leader \
    --teleop.port=/dev/tty.usbmodem58760431551 \ # <- The port of your robot
    --teleop.id=my_awesome_leader_arm # <- Give the robot a unique name

恭喜 🎉,您的機器人已準備好自主學習任務。請按照本教程開始訓練它:真實世界機器人入門

如果你有任何問題或需要幫助,請在 Discord 上聯絡我們。

< > 在 GitHub 上更新

© . This site is unofficial and not affiliated with Hugging Face, Inc.