Servo Motor e Potenciômetro (B)

Controlando o movimento com precisão.

Nesta atividade, vamos construir um sistema de controle direto, onde o giro de um simples botão (o potenciômetro) será traduzido em um movimento preciso de um motor (o servomotor). É a base para a criação de braços robóticos, sistemas de direção e qualquer projeto que exija controle de posição.

Este projeto é uma introdução essencial à leitura de sensores analógicos e ao controle de atuadores, mostrando de forma imediata e tangível como podemos criar uma interface de controle para nossos robôs.

Roteiro para Educadores (Foco na Prática Pedagógica)

  • Objetivo da Atividade: Construir um dispositivo que controle o movimento de um servomotor através do giro de um potenciômetro, aprofundando a compreensão sobre a relação entre um controle manual e uma resposta programada.
  • Habilidades e Competências da BNCC:
    • Pensamento Científico, Crítico e Criativo: Entender a relação de causa e efeito em um sistema eletrônico e a lógica de proporcionalidade.
    • Cultura Digital: Aplicar a programação para traduzir uma ação humana contínua (girar um botão) em uma resposta digital controlada.
    • Matemática: Explorar na prática o conceito de mapeamento de escalas e proporcionalidade (a escala do potenciômetro é mapeada para a escala de ângulos do motor).
  • Desenvolvimento Sugerido:
    1. Aquecimento (Onde Usamos Controles?): Inicie uma discussão com os grupos sobre onde encontramos “botões de girar” no dia a dia. Exemplos como o controle de volume em um rádio, o dimmer de uma lâmpada ou um joystick são ótimos para introduzir o conceito de controle analógico.
    2. O Desafio de Controle: A missão é simples e direta: fazer o servomotor imitar o movimento do potenciômetro. Se o potenciômetro está no meio, o motor fica no meio. Se giramos o botão todo para a direita, o motor vira todo para a direita.
    3. Montagem e Experimentação: Os estudantes montam o circuito, que é relativamente simples. O momento “mágico” acontece quando eles carregam o código e percebem o controle direto e imediato que têm sobre o motor. Incentive-os a testar os limites do movimento.
  • Dicas Pedagógicas para Engajar a Turma:
    • Foco na Compreensão: Como esta é uma atividade introdutória, o objetivo principal é que os alunos entendam a conexão direta entre o potenciômetro e o servo. Gaste tempo explorando o controle e fazendo perguntas como: “O que acontece se girarmos o botão bem devagar?”.
    • Construção de Conhecimento: Este projeto é a base para muitos outros. Reforce que, ao dominar este controle, eles agora podem criar braços robóticos, catapultas com mira, sistemas de direção para carros e muito mais.
  • Como Avaliar a Aprendizagem:
    • Demonstração Funcional: Peça que os alunos demonstrem o controle, movendo o servo para posições específicas (esquerda, centro, direita) usando apenas o potenciômetro.
    • Explicação da Lógica: Pergunte aos grupos: “Como o Arduino sabe para onde mover o motor? O que o potenciômetro está ‘dizendo’ para o programa?”.
  • Desafio Extra (Para os mais avançados):
    • Adicionar um feedback visual. Conecte um LED ao circuito e programe-o para que seu brilho aumente conforme o servo se move do ângulo 0 para o 180. Isso reforça a ideia de que um único controle pode comandar múltiplas saídas.
  • Materiais Necessários:
    • Para Construção: SmartMotor com Servo Motor (Placa B) OU (Kit Arduino, Protoboard, Servo Motor, Potenciômetro).
    • Para Simulação: Computadores com acesso à internet e conta na plataforma TinkerCAD.
  • Guia Rápido de Lógica:
    • Princípio Lógico: O programa funciona em um ciclo contínuo: ele “lê” a posição do potenciômetro e “traduz” essa posição em um ângulo para o servo motor. É como se o motor estivesse espelhando o movimento do botão em tempo real.
  • Possibilidades de Projetos Interdisciplinares:
    • Braço Robótico: Este é o controle para uma das juntas de um braço.
    • Catapulta com Mira: Usar o sistema para ajustar o ângulo de lançamento.
    • Animatrônicos: Controlar o movimento da cabeça ou dos braços de um boneco.
    • Sistema de Direção: Controlar as rodas de um carrinho robô.

Programação Sugerida
// Inclui a biblioteca para controle de servomotores.

include

// Cria um objeto ‘meuServo’ para representar nosso motor.
Servo meuServo;

// Define o pino analógico onde o potenciômetro está conectado.
const int pinoPot = A0;

void setup() {
// Anexa o objeto servo ao pino digital 9 (que suporta PWM).
meuServo.attach(9);
}

void loop() {
// 1. Lê o valor do potenciômetro (um número de 0 a 1023).
int valorPot = analogRead(pinoPot);

// 2. Mapeia/converte o valor lido (0-1023) para a escala de ângulos do servo (0-180).
int angulo = map(valorPot, 0, 1023, 0, 180);

// 3. Comanda o servo para se mover para o ângulo calculado.
meuServo.write(angulo);

// Um pequeno delay para estabilizar a leitura e o movimento.
delay(15);
}

Esquemático Eletrônico

SmartMotors