Pular para o conteúdo principal
Fase 2 · Capítulo 6 · Prática

6. Configurar motores e montar os braços

Capítulo 6 do curso para iniciantes em SO-ARM Physical AI — imprima as peças em 3D, cabear e alimente o barramento de servos, grave IDs e baud rates com lerobot-setup-motors, e depois monte os braços líder e seguidor passo a passo.

⚠️
Aviso de segurança: limpe o espaço de trabalho do braço antes de rodar programas de movimento

Antes de executar qualquer programa capaz de mover o braço, retire itens de valor, objetos frágeis, ferramentas, cabos e itens alheios a até 1 metro do espaço de trabalho. Durante depuração e operação, mantenha as pessoas afastadas do alcance do braço.

  • Não toque em juntas, motores, elos, garras ou ferramentas do extremo com o braço energizado.
  • Antes de configurar servos, calibrar, teleoperar, gravar dados, reproduzir ou avaliar políticas, confirme que o braço está bem fixado.
  • Mantenha pelo menos 1 metro de distância e certifique-se de que os presentes saibam que o braço pode se mover de repente.
  • Em caso de movimento anormal, ruído, tremor, cabos soltos, mau contato de energia ou perda de comunicação, interrompa o programa imediatamente e desligue antes de inspecionar.
  • Desligue antes de conectar ou desconectar cabos de servo, USB, conectores de energia ou cabos da placa.
dica

Se você comprou um braço robótico pré-montado, pule este capítulo e vá direto ao Capítulo 10 (calibração do braço completo).

6.1 Guia de impressão 3D (versão kit)​

Impressão 3D

6.1 Guia de impressão 3D (versão kit)

Se comprou a versão kit (servos e hardware sem peças impressas), imprima a estrutura primeiro. Os STLs saem em impressoras FDM comuns:

  • Material: PLA+
  • Bico / altura de camada: bico 0.4mm com camada 0.2mm, ou bico 0.6mm com camada 0.4mm
  • Preenchimento: 15%
  • Suportes: em toda parte, ignorando rampas acima de 45° da horizontal; sem suportes nos furos de parafuso horizontais

Todas as peças do líder ou do seguidor vêm num único STL, já orientadas com z para cima para minimizar suportes:

cuidado

Após a atualização oficial do SO101, os arquivos-fonte do SO100 deixaram de ser mantidos, mas continuam no nosso Makerworld. Para quem já comprou o SO100, os tutoriais e métodos continuam válidos — a impressão do SO101 é totalmente compatível com a instalação do kit de motores do SO100.

Opcional: imprima uma garras macia (dedos de TPU, peças PLA) para objetos macios, frágeis ou irregulares, e o encaixe do suporte de câmera se precisar montar uma. Arquivos no repositório soarm_soft_gripper.

6.2 Planejar os motores: etiquetas, IDs e relações​

Preparação

6.2 Planejar os motores: etiquetas, IDs e relações

Designe um adaptador de barramento e 6 motores para o braço líder, e outro adaptador e 6 motores para o seguidor. Etiquete cada motor F1–F6 (juntas 1–6 do seguidor) ou L1–L6 (juntas 1–6 do líder) — escrever na carcaça do servo poupa horas de depuração.

Modelo de servoRelaçãoJuntas
ST-3215-C044 (7.4V)1:191L1
ST-3215-C001 (7.4V)1:345L2
ST-3215-C044 (7.4V)1:191L3
ST-3215-C046 (7.4V)1:147L4–L6
ST-3215-C001 (7.4V) / C018 (12V) / C047 (12V)1:345F1–F6
perigo

Alimente o barramento com a fonte que corresponde aos motores: 5V para os STS3215 de 7.4V e 12V para os de 12V. O braço líder sempre usa motores de 7.4V — confira o adaptador antes de plugá-lo se tiver ambos os tipos, senão você pode queimar os motores! O cabo USB não fornece energia: a fonte e o USB precisam estar ambos conectados.

Todos os motores ligados ao barramento
dica

O processo de calibração e inicialização de servos do SO-ARM101 é igual ao do SO-ARM100 em método e código — mas as relações das três primeiras juntas do líder do SO-ARM101 diferem das do SO-ARM100, então distinga e configure com cuidado.

6.3 Localizar as portas USB​

Portas

6.3 Localizar as portas USB

Rode o utilitário para descobrir qual porta serial cada placa ocupa:

lerobot-find-port

Exemplo de saída:

Finding all available ports for the MotorBus.
['/dev/ttyACM0', '/dev/ttyACM1']
Remove the usb cable from your MotorsBus and press Enter when done.

[...Disconnect corresponding leader or follower arm and press Enter...]

The port of this MotorsBus is /dev/ttyACM1
Reconnect the USB cable.

Dicas que poupam tempo:

  • Desconecte mesmo o USB quando pedido, senão a interface não é detectada.
  • No Linux e Jetson, o primeiro dispositivo plugado mapeia para ttyACM0 (normalmente o seguidor), o segundo para ttyACM1 (líder).
  • Se o LeRobot depois reclamar Could not connect on port '/dev/ttyACM0', conceda permissões e confira:
sudo chmod 666 /dev/ttyACM*

6.4 Configurar IDs e baud rates​

Configuração

6.4 Configurar IDs e baud rates

A ferramenta grava o ID e o baud rate corretos em cada servo, um servo por vez (o Capítulo 4 explicou o porquê: todos compartilham o barramento e um ID duplicado seria regravado em todos).

Use estas fotos de referência para a postura padrão de cabeamento de cada junta antes de calibrar:

Imagens de referência para calibração dos servos do líder

Junta 6Junta 5Junta 4Junta 3Junta 2Junta 1
fig1fig2fig3fig4fig5fig6

Imagens de referência para calibração dos servos do seguidor

Junta 6Junta 5Junta 4Junta 3Junta 2Junta 1
fig1fig2fig3fig4fig5fig6

Configure os servos do seguidor. Ligue o cabo USB e a fonte na placa do seguidor e execute:

lerobot-setup-motors \
--robot.type=so101_follower \
--robot.port=/dev/ttyACM0 # <- cole aqui a porta do passo anterior

A ferramenta guia junta por junta:

Connect the controller board to the 'gripper' motor only and press enter.

Ligue somente o motor da garras (F6) na placa, pressione Enter, e o script grava o ID e o baud rate dele automaticamente:

'gripper' motor id set to 6

Em seguida:

Connect the controller board to the 'wrist_roll' motor only and press enter.

Pode deixar o cabo de 3 fios anterior conectado ao motor da garras na outra ponta; coloque um cabo novo no motor de rotação do punho e conecte só esse à placa. Repita para cada motor conforme instruído — sempre exatamente um conectado.

dica

Confira o cabeamento antes de cada Enter — o cabo de alimentação costuma se soltar enquanto você manuseia a placa.

Quando o script terminar, encadeie os motores: plugue o cabo de 3 fios de cada motor no seguinte, e o do primeiro motor (rotação do ombro, ID 1) na placa, que já pode ser fixada na base do braço.

Configure os servos do líder do mesmo jeito:

lerobot-setup-motors \
--teleop.type=so101_leader \
--teleop.port=/dev/ttyACM0 # <- cole aqui a porta do passo anterior
dica

Usuários de SO100: os códigos de SO100 e SO101 são compatíveis — usem os mesmos tipos so101_leader / so101_follower e parâmetros.

6.5 Montagem​

Montagem

6.5 Montagem

dica

A montagem de dupla braço do SO-ARM101 é igual à do SO-ARM100 — as únicas diferenças são os clipes de cabo do SO-ARM101 e as relações diferentes dos servos do líder. Tanto SO100 quanto SO101 podem ser montados com os passos abaixo. Antes de montar, confira modelos de motor, relações e voltagem contra a tabela da seção 6.2.

Montar o braço líder

Passo 1Passo 2Passo 3Passo 4Passo 5Passo 6
fig1fig2fig3fig4fig5fig6
Passo 7Passo 8Passo 9Passo 10Passo 11Passo 12
fig1fig2fig3fig4fig5fig6
Passo 13Passo 14Passo 15Passo 16Passo 17Passo 18
fig1fig2fig3fig4fig5fig6
Passo 19Passo 20
fig1fig2

Montar o braço seguidor

dica

A montagem do seguidor é em geral igual à do líder. A única diferença é a instalação do efetor final (garras e punho) depois do passo 12.

Passo 1Passo 2Passo 3Passo 4Passo 5Passo 6
fig1fig2fig3fig4fig5fig6
Passo 7Passo 8Passo 9Passo 10Passo 11Passo 12
fig1fig2fig3fig4fig5fig6
Passo 13Passo 14Passo 15Passo 16Passo 17
fig1fig2fig3fig4fig5

6.6 Checklist antes de seguir​

Checklist

6.6 Checklist antes de seguir

  • Os dois braços montados; cada servo responde com o ID esperado (verifique com a ferramenta do Capítulo 7);
  • Tensões conformes com a edição (Standard: ambos 5V; Pro: líder 5V, seguidor 12V);
  • As duas placas aparecem como /dev/ttyACM0 e /dev/ttyACM1;
  • Cabos bem encaixados, sem dobras agudas e fora do alcance das juntas.

Se algum servo não aparece, o ID parece duplicado ou o neutro está errado, a ferramenta de depuração do próximo capítulo resolve exatamente esses problemas.

Loading Comments...