반응형
eRobot 개발 환경 설정 가이드
Ubuntu 22.04 기준 python3.12/LeRobot 0.5.2 / PyTorch 2.11 / CUDA 12.6
0단계 — Ubuntu 22.04 듀얼부팅 설치
준비물
- USB 8GB 이상
- Ubuntu 22.04 LTS ISO 다운로드
- Rufus (Windows에서 부팅 USB 생성)
BIOS 설정 (MSI 노트북)
부팅 시 DEL 키 → BIOS 진입
Secure Boot → Disabled
Boot Mode → UEFI
USB 부팅 우선순위 1번으로 설정
파티션 권장
Ubuntu 전용 공간: 200GB 이상 (2TB SSD 기준 충분)
1단계 — Ubuntu 기본 업데이트
bash
sudo apt update && sudo apt upgrade -y
sudo apt install -y curl git wget build-essential
2단계 — NVIDIA 드라이버 설치
bash
# 권장 드라이버 자동 설치
sudo ubuntu-drivers autoinstall
# 재부팅
sudo reboot
재부팅 후 확인:
bash
nvidia-smi
# RTX 4060 Laptop GPU 인식되면 성공
3단계 — CUDA 12.6 설치
bash
# CUDA 저장소 추가
wget https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2204/x86_64/cuda-keyring_1.1-1_all.deb
sudo dpkg -i cuda-keyring_1.1-1_all.deb
# CUDA 설치
sudo apt update
sudo apt install -y cuda-toolkit-12-6
# 환경변수 등록
echo 'export PATH=/usr/local/cuda/bin:$PATH' >> ~/.bashrc
echo 'export LD_LIBRARY_PATH=/usr/local/cuda/lib64:$PATH' >> ~/.bashrc
source ~/.bashrc
확인:
bash
nvcc --version
# CUDA 12.6 출력되면 성공
4단계 — Miniconda 설치
bash
wget https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.sh
bash Miniconda3-latest-Linux-x86_64.sh -b
~/miniconda3/bin/conda init
source ~/.bashrc
5단계 — LeRobot 설치
⚠️ Python 3.12 필수 (3.10, 3.11 불가) ⚠️ torch 2.7 이상 2.12.0 미만 필수
5-1. conda 환경 생성
bash
conda create -n lerobot python=3.12 -y
conda activate lerobot
5-2. PyTorch 설치 (CUDA 12.6 인덱스 사용)
bash
# torch 2.11.x 설치 (2.7 이상 2.12.0 미만 범위)
pip install "torch==2.11.0" "torchvision==0.26.0" torchaudio \
--index-url https://download.pytorch.org/whl/cu126
GPU 확인:
bash
python -c "import torch; print(torch.__version__); print(torch.cuda.is_available())"
# 2.11.0+cu126
# True
5-3. LeRobot 설치
bash
# 소스 클론
git clone https://github.com/huggingface/lerobot.git
cd lerobot
# SO-ARM101 포함 설치
pip install -e ".[soarm100]"
# 추가 의존성 설치
pip install 'lerobot[dataset]'
pip install 'lerobot[training]'
5-4. 최종 확인
bash
python -c "
import torch
import lerobot
print('torch:', torch.__version__)
print('CUDA:', torch.cuda.is_available())
print('GPU:', torch.cuda.get_device_name(0))
print('lerobot:', lerobot.__version__)
"
정상 출력:
torch: 2.11.0+cu126
CUDA: True
GPU: NVIDIA GeForce RTX 4060 Laptop GPU
lerobot: 0.5.2
6단계 — ROS2 Humble 설치
bash
# locale 설정
sudo apt install -y locales
sudo locale-gen en_US en_US.UTF-8
sudo update-locale LC_ALL=en_US.UTF-8
# 저장소 추가
sudo apt install -y software-properties-common
sudo add-apt-repository universe
sudo curl -sSL https://raw.githubusercontent.com/ros/rosdistro/master/ros.key \
-o /usr/share/keyrings/ros-archive-keyring.gpg
echo "deb [arch=$(dpkg --print-architecture) \
signed-by=/usr/share/keyrings/ros-archive-keyring.gpg] \
http://packages.ros.org/ros2/ubuntu \
$(. /etc/os-release && echo $UBUNTU_CODENAME) main" | \
sudo tee /etc/apt/sources.list.d/ros2.list
# ROS2 Humble 설치
sudo apt update
sudo apt install -y ros-humble-desktop
# 환경변수 자동 등록
echo 'source /opt/ros/humble/setup.bash' >> ~/.bashrc
source ~/.bashrc
확인:
bash
ros2 run demo_nodes_cpp talker
# 별도 터미널에서
ros2 run demo_nodes_cpp listener
# 메시지 주고받으면 성공
7단계 — Nav2 + SLAM Toolbox 설치
bash
sudo apt install -y \
ros-humble-navigation2 \
ros-humble-nav2-bringup \
ros-humble-slam-toolbox \
ros-humble-gazebo-ros-pkgs \
ros-humble-ros2-control \
ros-humble-ros2-controllers
8단계 — RealSense SDK 설치
bash
# GPG 키 등록 (새 방식)
sudo mkdir -p /etc/apt/keyrings
sudo apt-key adv \
--keyserver hkp://keyserver.ubuntu.com:80 \
--recv-key FB0B24895113F120
# 저장소 추가
echo "deb https://librealsense.intel.com/Debian/apt-repo jammy main" \
| sudo tee /etc/apt/sources.list.d/librealsense.list
sudo apt update
sudo apt install -y librealsense2-dkms librealsense2-utils
# ROS2 패키지
sudo apt install -y ros-humble-realsense2-camera
# pip으로도 설치 (LeRobot 연동용)
conda activate lerobot
pip install pyrealsense2
확인:
bash
realsense-viewer
# 카메라 연결 후 화면 뜨면 성공
9단계 — 학습 테스트
bash
conda activate lerobot
cd ~/lerobot
lerobot-train \
--policy.type=act \
--dataset.repo_id=lerobot/pusht \
--policy.push_to_hub=false \
--output_dir=outputs/test_run
학습 로그 올라오면 환경 설정 완료:
INFO step:100 loss:0.342 ...
INFO step:200 loss:0.289 ...
⚠️ 자주 발생하는 에러 모음
에러원인해결
| requires Python >=3.12 | Python 버전 낮음 | conda create -n lerobot python=3.12 |
| ncclCommWindowDeregister | NCCL 버전 충돌 | sudo apt remove libnccl2 후 torch 재설치 |
| torch 2.6 incompatible | torch 버전 낮음 | cu126 인덱스로 2.11.0 설치 |
| torch 2.12 incompatible | torch 버전 높음 | torch==2.11.0 지정 설치 |
| 'datasets' not installed | 패키지 누락 | pip install 'lerobot[dataset]' |
| 'accelerate' not installed | 패키지 누락 | pip install 'lerobot[training]' |
| unrecognized arguments --device=cuda | 옵션 변경됨 | --device 옵션 제거 (자동 감지) |
| repo_id argument missing | Hub 업로드 설정 | --policy.push_to_hub=false 추가 |
| GPG error librealsense | 키 등록 실패 | apt-key adv --keyserver 방식 사용 |
| train.py 없음 | 버전 변경 | lerobot-train CLI 명령어 사용 |
📋 자주 쓰는 명령어 요약
bash
# 환경 활성화
conda activate lerobot
# 학습
lerobot-train \
--policy.type=act \
--dataset.repo_id=lerobot/pusht \
--policy.push_to_hub=false \
--output_dir=outputs/train/act_test
# 텔레오퍼레이션 데이터 수집 (SO-ARM101 연결 후)
lerobot-record \
--robot.type=so101 \
--dataset.repo_id=본인계정/pepper_harvest \
--control.push_to_hub=false
# 평가
lerobot-eval \
--policy.path=outputs/train/act_test/checkpoints/last
# 데이터셋 시각화
lerobot-visualize-dataset \
--repo-id=lerobot/pusht
📌 다음 단계
완료 ✅ LeRobot 개발 환경
↓
다음 → SO-ARM101 구매 및 USB 연결
↓
다음 → 텔레오퍼레이션 데이터 수집
↓
다음 → 고추 수확 동작 ACT 학습
↓
다음 → Jetson Orin NX 배포
반응형




최근댓글