Robótica Dinâmica · Aula 15 — Motor DC no Tinkercad: a velocidade de 0 a 255
Atuadores e efetuadores — controle contínuo de velocidade com PWM
O que vamos conseguir fazer
Diferenciar o motor DC do servo motor: o servo vai a uma posição e para; o motor DC gira continuamente e o que se controla nele é a força do giro.
Montar no Tinkercad o circuito do motor DC ligado aos pinos ~9 e ~11 do Arduino, reconhecendo o símbolo ~ como a marca dos pinos com PWM.
Programar a velocidade em blocos usando um número de 0 a 255 e explicar por que os dois pinos precisam ter valores diferentes para o motor girar.
Inverter o sentido de rotação trocando apenas os valores do programa, sem mexer em nenhum fio.
Justificar, com as razões do livro, por que na bancada real o motor não é ligado direto no Arduino e sim através de uma Ponte H (L298N).
Peças e materiais
Computador / Laptop
Placa Arduino (Uno / Nano / Mega)
Protoboard
Motor DC c/ Caixa de Redução
Jumpers (M/M e M/F)
O mapa do nosso robô
cada fio colorido é uma ligação de verdade — o diagrama completo está na página da aula
Introdução
Na aula passada a turma usou o servo motor — aquele que vai a uma posição e para. Hoje entra o outro atuador da Trilha 2: o motor DC, que gira sem parar. É o motor do ventilador, do liquidificador, do carrinho de controle remoto — e vai ser o motor das rodas do Robô Dinâmico.
Abra com os dois na mão, um em cada, e gire o eixo do motor DC com o dedo na frente da turma: ele roda livre, diferente do servo. A novidade da aula cabe numa frase: neste motor a gente não controla ONDE ele para, controla COM QUE FORÇA ele gira.
Pré-requisitos: aula 12 (montagem no Tinkercad) e aula 14 (o primeiro atuador). Se o aluno sabe arrastar componente e abrir o painel de código, está pronto.
Introdução
MOTOR DC × SERVO — vale fixar a diferença, porque a turma vai usar os dois no robô. No servo você manda um ângulo e ele segura: serve para cancela, para braço, para direção. No motor DC você manda energia e ele gira — e enquanto tiver energia continua girando. Não sabe onde está e não guarda posição: serve para roda.
OS TRÊS TIPOS DO LIVRO — motor DC comum (rápido e fraco), motor com caixa de redução (troca velocidade por força) e motor com roda acoplada (o do chassi). Para carrinho, sempre o com redução: o comum gira rápido demais e não tem força para empurrar o peso do robô.
POR QUE NÃO LIGAR DIRETO? — a pergunta é do próprio livro, e algum aluno vai fazer. Duas razões: (1) o motor pode puxar mais corrente do que a placa aguenta e queimar o Arduino; (2) ligado direto não há como inverter o sentido sem trocar os fios na mão. A solução é a Ponte H, o módulo L298N — pense nele como o semáforo do motor: quatro chaves internas que mandam a energia ora para um lado, ora para o outro. Hoje a gente liga direto porque estamos no SIMULADOR, onde não queima nada. Na bancada, ponte H. Deixe isso explícito para a turma — o aluno que reproduzir em casa sem ponte H perde uma placa.
Introdução
E O PWM? — o livro explica muito bem: é um pisca-pisca bem rápido. O Arduino liga e desliga o sinal várias vezes por segundo, tão rápido que o motor não percebe as pausas. Quanto mais tempo ligado, mais rápido ele gira. É assim que se regula velocidade sem estragar nada.
Montagem / Hardware
A montagem desta aula acontece na tela — é o mesmo gesto da aula 12, agora com um componente novo.
PASSO 1 — ABRIR O AMBIENTE
tinkercad.com → login (ou criar conta gratuita) → na tela "Seus projetos", botão "+ Criar". Aparecem três opções: Projeto 3D, Circuitos e Blocos de código. A gente quer CIRCUITOS. Vale dizer à turma que o 3D é o que será usado nas aulas de modelagem — assim ela já sabe que aquele botão tem futuro. Editor aberto: área de trabalho vazia e a barra de componentes à direita.
Montagem / Hardware
PASSO 2 — OS TRÊS COMPONENTES (o livro nomeia cada um pela função; repita com a turma)
• Arduino Uno — o cérebro eletrônico.
• Motor DC — o atuador.
Montagem / Hardware
• Os fios — o que conecta.
Digite no campo de busca da barra: "arduino" e arraste o Uno; "motor" e escolha o Motor DC, aquele cinza com dois terminais (aparecem vários na busca — pause aí, é onde a turma erra). A protoboard também entra porque o livro usa, mas ele mesmo avisa que daria para ligar sem ela: se o tempo estiver curto, ligue direto no motor e economize dois minutos.
PASSO 3 — OS DOIS FIOS: PINOS ~9 E ~11 (o coração da montagem)
Montagem / Hardware
Um fio do pino 9 do Arduino até o terminal POSITIVO (+) do motor. Outro fio do pino 11 até o terminal NEGATIVO (−). São só dois fios.
Por que justamente 9 e 11? Porque alguns pinos do Arduino têm um til desenhado ao lado — o símbolo ~. Esses são os que fazem PWM, o pisca-pisca rápido. Só neles dá para DOSAR a velocidade; nos outros o motor só liga e desliga. Dê zoom na fileira de pinos digitais e mostre quais têm o til: 3, 5, 6, 9, 10 e 11. É um detalhe que ninguém repara e que explica a escolha inteira. Frase do livro que vale citar: "para ajustar a velocidade das coisas, escolha os pinos com o símbolo ~, pois são os mais apropriados para essa função".
DEIXE UMA PERGUNTA NO AR — se um fio vai no positivo e o outro no negativo, e nos dois a gente pode mandar um valor… o que acontece se invertermos qual dos dois recebe o valor? Não responda agora. A resposta é o fecho da aula.
Programação
PASSO 4 — ABRIR O CÓDIGO E LIMPAR O EXEMPLO
Clique no botão "Código". O painel de blocos abre — e aqui vem o que mais confunde: já tem um programa ali dentro, o exemplo de fábrica que pisca o LED 13 da placa. Aquilo não é seu. Arraste esses blocos para a lixeira, devagar e visível. Se a turma não apagar, ficam dois programas rodando ao mesmo tempo e o motor se comporta de um jeito que ninguém explica.
PASSO 5 — OS DOIS BLOCOS "DEFINIR PINO"
Programação
Comece pelo conhecido: bloco "para sempre", da categoria Controle (a turma viu no #11). Depois busque "definir pino" e arraste para DENTRO do "para sempre" — duas vezes, uma para cada terminal do motor. Ajuste a numeração: um bloco no 9, outro no 11. Os mesmos números dos fios. Repita isso sempre que puder: o programa não descobre onde o fio está, alguém precisa contar para ele.
São três blocos no total. Repare no formato: cada "definir pino" tem dois campos, o número do pino e o valor. O número já está resolvido; o valor é o assunto do próximo passo.
PASSO 6 — A VELOCIDADE DE 0 A 255 (o conceito da aula)
Programação
A velocidade é um número de 0 a 255. Zero é parado, 255 é o máximo, 128 é mais ou menos metade da força. E a regra do livro: um dos blocos fica em 0 e o outro recebe o valor. No exemplo, o pino 9 fica em 0 e o pino 11 recebe 255.
Por que um deles em zero? Porque os dois pinos estão nos dois terminais do motor — é a DIFERENÇA entre eles que faz a corrente andar. Se os dois tiverem o mesmo valor não há diferença, e o motor não gira. É como empurrar uma porta dos dois lados com a mesma força; faça o gesto, funciona melhor que a explicação.
E de onde vem esse 255? É o maior número que cabe em oito bits. A turma não precisa disso agora, mas se algum aluno perguntar, a resposta é essa. O que importa é que 255 é o "tudo" e 0 é o "nada".
Programação
Frase do livro para fechar: "você pode criar programas incríveis sem precisar escrever código tradicional. A programação é para todos."
Teste e ajustes
PASSO 7 — INICIAR SIMULAÇÃO
Clique em Iniciar Simulação e olhe o motor. Girou — com dois fios e três blocos. Atenção: no Tinkercad o motor gira com uma animação discreta; dê zoom de 2× no motor, senão metade da turma não percebe que aconteceu alguma coisa.
BRINQUE COM O NÚMERO — o livro sugere nas Dicas Extras: 25, 75, 150. Vai do quase parado ao bem rápido. Troque por 0: para.
Teste e ajustes
O ACHADO DA AULA — nos valores mais baixos o motor às vezes nem sai do lugar: falta força para vencer o próprio atrito. Existe um valor mínimo abaixo do qual ele não anda. Peça para cada aluno encontrar o MENOR valor que faz o motor dele girar e anotar. Vira coleta de dados, e cada um vai achar um número um pouco diferente — isso rende uma boa conversa sobre por que a mesma instrução dá resultados diferentes.
A RESPOSTA DA PERGUNTA QUE FICOU NO AR — inverter o sentido. A instrução do livro é literal: ponha 255 no pino 9 e 0 no pino 11, o contrário do que estava. Rode. O motor gira para o outro lado, porque a corrente agora entra pelo outro terminal. E repare no que a turma acabou de fazer: inverteu o sentido SEM TROCAR NENHUM FIO, só mudando número no programa. É exatamente isso que uma Ponte H faz no mundo real — e faz com segurança.
TABELA DE CONSULTA (vale ir para o quadro)
Teste e ajustes
pino 9 = 0 · pino 11 = 255 → gira em um sentido, força máxima
pino 9 = 255 · pino 11 = 0 → gira no sentido oposto, força máxima
pino 9 = 0 · pino 11 = 128 → gira no primeiro sentido, cerca de metade da força
Teste e ajustes
pino 9 = 0 · pino 11 = 50 → pode não sair do lugar: falta força para o atrito
pino 9 = 0 · pino 11 = 0 → parado
pino 9 = 255 · pino 11 = 255 → parado: sem diferença entre os terminais, não há corrente
Encerramento
OS 5 ERROS MAIS COMUNS (em ordem de frequência)
1. Os dois blocos com o MESMO valor — o motor não gira e o aluno acha que o circuito está errado. Solução: um em 0, o outro com o valor.
2. Esqueceu de apagar o exemplo do LED — dois programas rodando, comportamento confuso. Solução: lixeira.
Encerramento
3. Pino sem o til — se o aluno escolher um pino sem PWM, o motor só liga e desliga e a velocidade não muda por mais que ele mexa no número. Solução: 3, 5, 6, 9, 10 ou 11.
4. Blocos fora do "para sempre" — roda uma vez e para.
5. Valor acima de 255 — o aluno digita 1000 achando que vai mais rápido. Não vai: o máximo é 255, e o Tinkercad ignora ou limita.
Encerramento
Nenhum deles quebra nada. É justamente por isso que esta aula vem antes da bancada: no simulador, errar é de graça.
DESAFIO PARA QUEM TERMINAR ANTES — faça o motor acelerar sozinho: começar devagar e ir aumentando. Dica: vários blocos "definir pino" em sequência, com valores crescentes e um "espere" entre eles. Quem conseguir fez a primeira rampa de aceleração da vida.
O QUE A TURMA LEVA DAQUI — velocidade E direção, as duas coisas, com os mesmos dois blocos. Guarde este experimento: quando o robô autônomo precisar andar de ré ou girar no lugar, é essa troca de valores que vai fazer o serviço.
Encerramento
GANCHO — esta prática não acabou. O livro continua na seção seguinte, "Do Tinkercad para o Arduino" (aula 16): o mesmo experimento saindo da simulação para o Arduino de verdade — e aí, sim, com a Ponte H protegendo tudo.
Como ele decide o que fazer
O código da aula
// #15 - Motor DC no Tinkercad: a velocidade de 0 a 255
// Robotica Dinamica - Vol. 02 - Trilha 2 (Atuadores e efetuadores)
// Programa do livro: 3 blocos na tela (para sempre + dois "definir pino").
#define MOTOR_A 9 // pino ~9 (tem PWM) no terminal + do motor
#define MOTOR_B 11 // pino ~11 (tem PWM) no terminal - do motor
void setup() {
pinMode(MOTOR_A, OUTPUT);
pinMode(MOTOR_B, OUTPUT);
}
void loop() {
analogWrite(MOTOR_A, 0); // um lado fica em 0...
analogWrite(MOTOR_B, 255); // ...e o outro recebe a velocidade
}
role dentro da caixa · o código completo está na página da aula
🥊
Bora construir!
dúvidas? a página completa da aula tem tudo: montagem, código e materiais.