🧪 Novos tutoriais em andamento — do braço robótico ao sensor
Ir para o conteúdo

Introdução à IA Incorporada (LeRobot)

Para desenvolvedores a fazer robot learning pela primeira vez. Usando HuggingFace LeRobot + SO-ARM101 da Juxi Technology como exemplo: pipeline completo de recolher → treinar → avaliar.

1. O que é IA Incorporada?

IA incorporada permite que agentes interajam com o mundo físico por meio de sensores corporais. O aprendizagem por imitação é um caminho central: demonstrações por teleoperação humana → recolha de dados → treino de políticas → o robô reproduz as ações.

Por que importa: a programação tradicional não cobre manipulações complexas (aparafusar, dobrar roupas), mas o aprendizagem por imitação só precisa de "demonstrar + treinar".

2. Configuração de Hardware

ComponenteRecomendadoObservações
Braço robóticoSO-ARM101 (líder + seguidor)Teleoperação de braço duplo, 6 DOF
ComputaçãoJetson Orin NX Super / host 4090Treine em computação potente, infira no Jetson
VisãoRealSense / câmara USBCaptura do ambiente durante a teleoperação

3. Configuração do Ambiente

bash
git clone https://github.com/Juxi-Technology/lerobot.git
cd lerobot
pip install -e ".[feetech]"        # SO-ARM uses feetech servos

# Jetson users: verify PyTorch first
python3 -c "import torch; print(torch.cuda.is_available())"

4. Coleta de Dados (Teleoperação)

bash
# Calibrate (first time)
lerobot-calibrate \
  --robot.type=so101_follower --robot.port=/dev/ttyACM0 --robot.id=my_arm

# Record data
lerobot-record \
  --robot.type=so101_follower --robot.port=/dev/ttyACM0 \
  --teleop.type=so101_leader --teleop.port=/dev/ttyACM1 \
  --dataset.repo_id=juxi/pick_cube \
  --dataset.num_episodes=50 \
  --dataset.single_task="Pick the red cube" \
  --dataset.episode_time_s=30

Dicas de recolha:

  • ≥50 episódios por tarefa, varie posições/técnicas
  • Mantenha as câmaras fixas e os objetos visíveis
  • Estilo de demonstração consistente (mesmo demonstrador)

5. Treinamento

bash
# ACT policy (beginner-friendly)
lerobot-train \
  --dataset.repo_id=juxi/pick_cube \
  --policy.type=act \
  --output_dir=outputs/train/act_pick \
  --steps=300000 \
  --policy.device=cuda

Seleção de políticas:

PolíticaPontos FortesIdeal Para
ACTEstável, eficiente em dadosPonto de entrada, manipulação fina
DiffusionAções multimodais robustasTarefas precisas de alta frequência
Pi0 / GR00TForte generalizaçãoMulti-tarefa, multi-objeto

6. Avaliação

bash
# Replay dataset (data quality check)
lerobot-dataset-viz --repo-id juxi/pick_cube

# Evaluate policy
lerobot-record \
  --robot.type=so101_follower --robot.port=/dev/ttyACM0 \
  --policy.path=outputs/train/act_pick/checkpoints/last/pretrained_model \
  --dataset.repo_id=juxi/eval_pick \
  --policy.device=cuda
MétricaDescrição
Taxa de sucessoProporção de tarefas concluídas
Suavidade da trajetóriaNível de tremor
GeneralizaçãoFunciona com objetos/posições diferentes?

7. FAQ

P: Treinamento lento?

R: Tamanho dos dados, passos e computação crescem juntos; comece com 50 episódios / 100k passos para validar o pipeline.

P: A política só faz uma ação?

R: Treinamento de tarefa única precisa de datasets multi-tarefa; os modelos base GR00T/Pi0 podem ser ajustados com poucos dados para multi-tarefa.

P: Ações instáveis após o treino?

R: Verifique a qualidade dos dados (demonstrações estáveis), adicione suavização, reduza a frequência de controle.

P: Sem memória?

R: Reduza o batch_size, diminua a resolução da imagem, use o modelo Jetson de 16GB.


Suporte