반응형

eRobot 개발 환경 설정 가이드

Ubuntu 22.04 기준 python3.12/LeRobot 0.5.2 / PyTorch 2.11 / CUDA 12.6 


0단계 — Ubuntu 22.04 듀얼부팅 설치

준비물

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 배포
반응형
  • 네이버 블러그 공유하기
  • 네이버 밴드에 공유하기
  • 페이스북 공유하기
  • 카카오스토리 공유하기