LeRobot documentation
EarthRover Mini Plus
EarthRover Mini Plus
EarthRover Mini Plus هو روبوت متنقل مفتوح المصدر بالكامل يتصل عبر السحابة باستخدام Frodobots SDK. يتيح لك ذلك التحكم في الروبوت وتسجيل مجموعات البيانات لتدريب نماذج الذكاء الاصطناعي.
ما تحتاجه
الأجهزة
- روبوت EarthRover Mini
- حاسوب يعمل بنظام Python 3.12 أو أحدث
- اتصال بالإنترنت
إعداد حزمة Frodobots SDK
يحتاج الروبوت إلى تشغيل Frodobots SDK على جهازك. إليك الطريقة:
- قم بتنزيل وتثبيت SDK:
git clone https://github.com/frodobots-org/earth-rovers-sdk.git
cd earth-rovers-sdk
pip install -r requirements.txt- حفظ بيانات الاعتماد:
اكتب متغيرات .env باستخدام مفتاح API الخاص بـ SDK واسم البوت الذي قدمهما فريق Frodobots.
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- ابدأ تشغيل SDK:
hypercorn main:app --reload
- افتح متصفح الويب وانتقل إلى
http://localhost:8000، ثم انقر على “Join”
يمنحك SDK:
- فيديو مباشر من الكاميرات الأمامية والخلفية
يجب أن يكون SDK قيد التشغيل قبل أن تتمكن من استخدام الروبوت.
تثبيت LeRobot
اتبع دليل التثبيت لتثبيت LeRobot.
بالإضافة إلى التثبيت الأساسي، قم بتثبيت EarthRover Mini مع تبعيات الأجهزة:
pip install -e ".[hardware]"كيف يعمل
يستخدم الروبوت الإنترنت للتواصل:
- أوامر الحركة: تُرسل عبر 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) إذنًا للوصول إلى لوحة المفاتيح من أجل التشغيل عن بُعد. انتقل إلى تفضيلات النظام > الأمان والخصوصية > مراقبة الإدخال، ثم حدد مربع الاختيار الخاص بالطرفية (Terminal).
تسجيل البيانات
بمجرد أن تتمكن من التحكم في الروبوت بشكل جيد، يمكنك البدء في تسجيل البيانات لتدريب نماذج الذكاء الاصطناعي. يسجّل النظام:
- ما تفعله: كيفية تحريك الروبوت (للأمام، للخلف، الدوران)
- What the robot sees:
- فيديوهات من كلا الكاميرتين
- سرعة الروبوت واتجاهه
- مستوى البطارية والموقع
- موقع GPS والإشارة
- بيانات مستشعرات أخرى
- متى حدث: طوابع زمنية لكل شيء
إعداد Hugging Face
نستخدم Hugging Face لتخزين بياناتك عبر الإنترنت. أولاً، سجّل الدخول باستخدام رمزك من إعدادات Hugging Face:
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 \
--display_data=true
# Optional: --dataset.rgb_encoder.vcodec=autoاستبدل your_username/dataset_name باسم مستخدمك على Hugging Face واسمًا لبياناتك.
ما يتم حفظه
يتضمن مجموعة البيانات الخاصة بك:
إجراءاتك (2 ميزات):
linear_velocity: مقدار تحركك للأمام/للخلفangular_velocity: مقدار دورانك إلى اليسار/اليمين
ملاحظات الروبوت (24 ميزة):
- فيديو الكاميرا الأمامية
- فيديو الكاميرا الخلفية
- السرعة الحالية
- مستوى البطارية
- التوجيه
- GPS (خط العرض، خط الطول، قوة الإشارة)
- قوة إشارة الشبكة
- مستوى الاهتزاز
- حالة المصباح (تشغيل/إيقاف)
- مقياس التسارع (x, y, z)
- جهاز قياس الدوران (x, y, z)
- مقياس المغناطيسية (x, y, z)
- دورات العجلة بالدقيقة (4 عجلات)
إلى أين تذهب بياناتك
على جهازك: ~/.cache/huggingface/lerobot/{repo-id}
بعد التسجيل، يتم رفع بياناتك تلقائيًا إلى صفحتك على Hugging Face:
echo https://huggingface.co/datasets/${HF_USER}/earthrover-navigationسيتم وسم مجموعة بياناتك بـ LeRobot لتسهيل اكتشافها من قبل المجتمع.