LeRobot 文件

EarthRover Mini Plus

Hugging Face's logo
加入 Hugging Face 社群

並獲得增強的文件體驗

開始使用

EarthRover Mini Plus

EarthRover Mini Plus

EarthRover Mini Plus 是一款完全開源的移動機器人,透過 Frodobots SDK 連接雲端。這讓您可以操控機器人並記錄數據集,以訓練 AI 模型。

準備需求

硬體

  • EarthRover Mini 機器人
  • 搭載 Python 3.12 或更高版本的電腦
  • 網際網路連線

設置 Frodobots SDK

機器人需要在您的電腦上執行 Frodobots SDK。操作方式如下:

  1. 下載並安裝 SDK
git clone https://github.com/frodobots-org/earth-rovers-sdk.git
cd earth-rovers-sdk
pip install -r requirements.txt
  1. 儲存憑證

使用 Frodobots 團隊提供的 SDK API 金鑰和機器人名稱來撰寫您的 .env 變數。

SDK_API_TOKEN=your_sdk_api_token_here
BOT_SLUG=your_bot_slug_here
CHROME_EXECUTABLE_PATH=/path/to/chrome_or_chromium
# Default value is MAP_ZOOM_LEVEL=18 https://wiki.openstreetmap.org/wiki/Zoom_levels
MAP_ZOOM_LEVEL=18
MISSION_SLUG=your_mission_slug_here
# Image quality between 0.1 and 1.0 (default: 0.8)
# Recommended: 0.8 for better performance
IMAGE_QUALITY=0.8
# Image format: jpeg, png or webp (default: png)
# Recommended: jpeg for better performance and lower bandwidth usage
IMAGE_FORMAT=jpeg
  1. 啟動 SDK
hypercorn main:app --reload
  1. 開啟網頁瀏覽器並前往 https://:8000,然後點擊「加入」(Join)

SDK 為您提供:

  • 來自前置與後置鏡頭的即時影像

使用機器人前必須先執行 SDK。

安裝 LeRobot

請遵循我們的 安裝指南 來安裝 LeRobot。

除了基礎安裝外,請安裝 EarthRover Mini 的依賴套件。

pip install -e .

運作原理

機器人使用網際網路進行通訊:

  • 移動指令:透過 SDK 發送
  • 鏡頭影像:從 SDK 接收
  • 機器人資訊:來自 SDK 的電量、位置、速度等資訊

您無需插入任何線路——一切皆透過 SDK 運作。

校準

無需校準!只要 SDK 正在執行,機器人即可立即使用。

操控機器人

您可以使用鍵盤來操控機器人——就像用 WASD 鍵玩電子遊戲一樣。

鍵盤控制

金鑰 動作
W 向前移動
S 向後移動
A 向左轉(結合向前移動)
D 向右轉(結合向前移動)
Q 原地向左旋轉
E 原地向右旋轉
X 停止所有動作
+/= 增加速度
- 降低速度
ESC 中斷連線

速度設定

您可以調整機器人的移動速度

  • 前進/後退速度:預設為全速 (1.0)
  • 轉向速度:預設為全速 (1.0)
  • 速度調整:使用 +/- 鍵,每次增減 0.1

試用體驗

在錄製數據前,請先試駕機器人

from lerobot.robots.earthrover_mini_plus import EarthRoverMiniPlus, EarthRoverMiniPlusConfig
from lerobot.teleoperators.keyboard import KeyboardRoverTeleop, KeyboardRoverTeleopConfig

# Initialize robot
robot_config = EarthRoverMiniPlusConfig()
robot = EarthRoverMiniPlus(robot_config)

# Initialize teleoperator
teleop_config = KeyboardRoverTeleopConfig(
    linear_speed=1.0,
    angular_speed=1.0,
    speed_increment=0.1
)
teleop = KeyboardRoverTeleop(teleop_config)

# Connect
robot.connect()
teleop.connect()

# Teleoperate (use keyboard controls)
try:
    while True:
        action = teleop.get_action()
        robot.send_action(action)
except KeyboardInterrupt:
    pass
finally:
    robot.disconnect()
    teleop.disconnect()

如果您使用 Mac,可能需要授予終端機 (Terminal) 存取鍵盤以進行遠端操控的權限。請前往「系統偏好設定」>「安全性與隱私權」>「輸入監控」,並勾選「終端機」。

記錄數據

一旦您能熟練駕駛機器人,就可以開始記錄數據以訓練 AI 模型。系統會記錄:

  • 您的操作:您如何移動機器人(前進、後退、轉向)
  • 機器人所見:
    • 來自兩個鏡頭的影片
    • 機器人速度與方向
    • 電量與位置
    • GPS 位置與訊號
    • 其他感測器數據
  • 發生時間:所有項目的時間戳記

設置 Hugging Face

我們使用 Hugging Face 在線儲存您的數據。首先,使用來自 Hugging Face 設定的 Token 登入。

hf auth login --token ${HUGGINGFACE_TOKEN} --add-to-git-credential

儲存您的 Hugging Face 使用者名稱

HF_USER=$(hf auth whoami | awk -F': *' 'NR==1 {print $2}')
echo $HF_USER

開始記錄

使用標準錄製指令

lerobot-record \
    --robot.type=earthrover_mini_plus \
    --teleop.type=keyboard_rover \
    --dataset.repo_id=your_username/dataset_name \
    --dataset.num_episodes=2 \
    --dataset.fps=10 \
    --dataset.single_task="Navigate around obstacles" \
    --dataset.streaming_encoding=true \
    --dataset.encoder_threads=2 \
    # --dataset.vcodec=auto \
    --display_data=true

your_username/dataset_name 取代為您的 Hugging Face 使用者名稱及您的數據集名稱。

記錄的內容

您的數據集包含:

您的操作 (2 個特徵):

  • linear_velocity:前進/後退的幅度
  • angular_velocity:向左/向右轉的幅度

機器人觀測數據 (24 個特徵):

  • 前置鏡頭影像
  • 後置鏡頭影像
  • 目前速度
  • 電量
  • 方位
  • GPS (緯度、經度、訊號強度)
  • 網路訊號強度
  • 震動程度
  • 燈光狀態 (開/關)
  • 加速度計 (x, y, z)
  • 陀螺儀 (x, y, z)
  • 磁力計 (x, y, z)
  • 輪速 (4 個車輪的 RPM)

數據儲存位置

在您的電腦上:~/.cache/huggingface/lerobot/{repo-id}

記錄完成後,您的數據會自動上傳至您的 Hugging Face 頁面

echo https://huggingface.co/datasets/${HF_USER}/earthrover-navigation

您的數據集將標記為 LeRobot,以便社群發現。

在 GitHub 上更新

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