Motores do EV3: qual usar, qual bloco escolher e por que isso muda tudo

O robô anda torto mesmo com os dois motores configurados na mesma velocidade. Ou ele para antes do esperado, ou gira mais do que devia. Quase sempre o problema não está no programa — está em como os motores estão sendo usados. O EV3 tem três tipos de motor com características completamente diferentes, e escolher o errado pra tarefa certa — ou usar o bloco de motor errado — é o que causa a maioria dos comportamentos estranhos que parecem bug mas não são.

Os três motores do EV3

Motor grande (Large Motor)

É o motor principal do kit. Alto torque, velocidade moderada, encoder de posição integrado que mede rotação com precisão de 1 grau. É o motor das rodas de tração em praticamente todo projeto de locomoção. Quando você precisa de força — puxar, empurrar, carregar peso — é o motor grande. A desvantagem é o tamanho físico e o peso, que afetam o design do chassis.

Motor médio (Medium Motor)

Menor, mais leve e mais rápido que o grande, mas com menos torque. Também tem encoder integrado. É o motor das funções secundárias: garra, braço, mecanismo de disparo, câmera giratória. Em projetos onde o motor médio precisaria puxar muito peso, ele aquece e perde desempenho — é o sinal de que o projeto precisa de motor grande naquele ponto.

Motor pequeno (EV3 Small Motor — kit antigo NXT)

Aparece em alguns kits mais antigos ou expansões. Não tem encoder de posição integrado — controle só por tempo, não por graus. Isso limita muito a precisão. Se você tem esse motor, use pra funções onde precisão de posição não é crítica (ventilador, mecanismo de agitação, efeito visual).

Os blocos de motor: qual usar em cada situação

Mover por rotações ou graus — movimento preciso

O motor para exatamente após o número de rotações ou graus que você definiu. É o bloco correto pra qualquer movimento que precisa de reprodutibilidade: virar 90 graus, avançar 30 cm, posicionar uma garra. Não depende de tempo, então variações de bateria afetam menos o resultado.

Mover por tempo — movimento simples

O motor roda pelo tempo definido e para. Parece simples, mas tem uma armadilha: o tempo que o motor leva pra percorrer uma distância muda com a carga e com o nível da bateria. Com bateria nova o robô anda 50 cm em 2 segundos; com bateria fraca, 40 cm. Use esse bloco só quando precisão não importa — como recuar por “tempo suficiente” pra sair de uma borda.

Ligar motor (On) — controle contínuo

Liga o motor numa velocidade e deixa rodando até você mandar parar. É o bloco do loop de controle: no seguidor de linha e no controle PID, você ajusta a velocidade do motor a cada ciclo do loop sem parar e religar — usa o bloco “on” com velocidade variável dentro do loop. Confundir esse bloco com “mover por rotações” dentro de um loop gera comportamento estranho difícil de depurar.

Parar motor — controle de frenagem

Dois modos: com trava (motor resiste ao movimento externo, bom pra posicionamento preciso) e sem trava (motor para mas gira livremente, bom pra quando o robô precisa deslizar após parar). Em garras e braços, use com trava. Em rodas após manobra, depende do projeto.

Encoder: o que é e por que importa

O encoder é o sensor interno do motor que conta quantos graus ele girou. É o que permite o controle por rotações e graus — sem encoder, o motor seria controlado só por tempo. No EV3, os motores grande e médio têm encoder com precisão de 1 grau. Isso significa que “vire 90 graus” é uma instrução que o motor executa com erro de menos de 2 graus na maioria das condições.

O encoder também permite ler a posição atual do motor como variável no programa — útil pra robôs que precisam saber “o braço está aberto ou fechado?” sem sensor externo. É o mesmo princípio usado nos servomotores industriais.

Dois exemplos com números reais

Exemplo 1 — tempo vs graus numa virada de 90 graus

Robô configurado pra virar com motor por 650ms: com bateria nova (8,1V), girou 91 graus. Com bateria no meio da carga (7,2V), girou 78 graus. Com bateria fraca (6,5V), girou 64 graus. O mesmo programa, três resultados diferentes. Trocando pra controle por graus com o giroscópio EV3: 90 graus nas três situações, variação de menos de 2 graus. A diferença entre “funciona às vezes” e “funciona sempre”.

Exemplo 2 — motor médio sobrecarregado

Uma garra usando motor médio pra segurar um objeto de 300g: nos primeiros 10 ciclos de abrir/fechar, funcionou bem. No 15º ciclo, o motor começou a aquecer e a velocidade caiu. No 20º, parou de fechar completamente. O motor médio tem torque máximo de cerca de 12 N·cm — o peso do objeto multiplicado pela alavanca da garra ultrapassou esse limite. Solução: redesenhar a garra com alavanca menor, ou trocar pro motor grande. Conhecer o limite de torque evita queimar o motor.

Erros comuns com os motores

  • Motor na porta de sensor em vez de porta de motor. O brick tem quatro portas de sensor (1–4) e quatro de motor (A–D). Motor na porta errada não move e não dá erro — simplesmente nada acontece.
  • Usar “mover por tempo” dentro de loop de controle. Cada execução do bloco para o motor e reinicia — o loop fica travado na duração do tempo a cada ciclo. Use “ligar motor” dentro do loop.
  • Motor grande pra função de braço leve. Funciona, mas o peso extra do motor grande afeta o equilíbrio e o centro de gravidade do robô. Motor médio é mais adequado pra funções secundárias leves.
  • Não usar trava na parada de posicionamento. Depois de posicionar uma garra ou braço, sem trava o peso do objeto vai empurrar o motor pra posição de repouso. Sempre use “parar com trava” em posicionamentos que precisam ser mantidos.

Onde isso se conecta no resto

Entender os motores é pré-requisito pra qualquer projeto do EV3. O guia de montagem de chassis EV3 mostra como posicionar os motores pra melhor desempenho. O robô com garra usa motor médio em detalhe. E a programação do EV3 explica como os blocos de motor se encaixam na lógica do programa. O panorama completo está no guia de robótica com LEGO EV3.

Perguntas frequentes

Posso usar dois motores grandes nas rodas e um médio no braço ao mesmo tempo?

Sim. O brick tem quatro portas de motor (A, B, C, D) — você pode ter até quatro motores rodando simultaneamente, cada um na sua porta.

O motor do EV3 pode ser danificado por sobrecarga?

Sim. Forçar o motor contra uma trava mecânica por tempo longo aquece e pode danificar as escovas internas. Se o projeto exige que o motor fique pressionado contra um limite, adicione uma condição de parada por corrente ou por tempo máximo.

Como saber quantas rotações correspondem a uma distância?

Depende do diâmetro da roda. Circunferência = diâmetro × π. Se a roda tem 5,6 cm de diâmetro, a circunferência é ~17,6 cm. Uma rotação = 17,6 cm. Para andar 50 cm: 50 ÷ 17,6 ≈ 2,84 rotações. Meça o diâmetro real da roda que você montou.

O encoder perde a contagem se o motor for movido manualmente?

Sim. Se você girar o motor com a mão enquanto o programa está rodando, o encoder conta esse movimento. Em alguns projetos isso é útil (posicionamento manual); em outros é um problema (o robô perde a referência de posição).

Pra fechar

Motor grande pra tração e força, motor médio pra funções secundárias, bloco “on” pra controle contínuo e graus pra posicionamento preciso. Quatro regras que resolvem a maioria dos problemas de motor no EV3. Quem aprende isso cedo para de lutar com comportamentos estranhos e começa a projetar com intenção — sabendo de antemão qual motor vai onde e qual bloco vai fazer o quê.

Deixe um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *

Rolar para cima