Voltar ao Catálogo
Matemática

Simulador de trajetória parabólica

Realize a simulação de um objeto lançado com velocidade constante e ângulo ajustado por potenciômetro.

Código Fonte Arduino (.INO)

Código Arduino Trajetória Parabólica (.INO)
Baixar .INO

Código para cálculo e simulação da trajetória de lançamento.

/***************************************************************
* Projeto: Estudo da trajetória parabólica em função do tempo  *
* Desenvolvedor: Vanderlei Alves                               *
* Data: 27/06/2025                                             *
****************************************************************/
//Mapeamento dos pinos
#define POT_PIN A0
#define PIN_PWM_Y 5
#define PIN_PWM_X 6

//Constante da gravidade da terra
const float g = 9.8;

//Variáveis globais
int pwm_y,
    pwm_x;

void setup() 
{
  //Inicialização da comunicação serial
  Serial.begin(9600);

  //Aguarda 1 segundo para estabilizar as tensões
  delay(1000);
}

void loop() 
{
  //Leitura do potenciômetro
  int leitura = analogRead(POT_PIN);

  //Conversão dos valores para ângulos
  float angulo = map(leitura, 0, 1023, 10, 80);                   //Ângulo de 10° a 80°

  //Conversão dos ângulos em radianos
  float rad = angulo * 3.14159 / 180.0;

  float v0 = 20.0;                                                //Velocidade fixa de 20 m/s do objeto lançado
  float t_total = (2 * v0 * sin(rad)) / g;                        //Tempo total de voo
  float passo_tempo = t_total / 50.0;                             //50 pontos

  Serial.println("x\ty");                                         //Cabeçalho para o Serial Plotter

  for (float t = 0; t <= t_total; t += passo_tempo) 
  {
    //Cálculo dos valores de x e y em função do tempo
    float x = v0 * cos(rad) * t;
    float y = v0 * sin(rad) * t - 0.5 * g * t * t;
    if (y < 0) y = 0;                                             //Evita valores negativos

    //Representação de x e y com os LEDs
    pwm_x = map(x, 0, 14, 0, 255);
    analogWrite(PIN_PWM_X, pwm_x);

    pwm_y = map(y, 0, 20, 0, 255);
    analogWrite(PIN_PWM_Y, pwm_y);

    //Apresentação do gráfico no Plotter Serial
    Serial.print(x);
    Serial.print("\t");
    Serial.println(y);

    delay(50);                                                    //Tempo entre pontos no plotter
  }

  delay(2000);                                                    //Espera para novo gráfico
}

Materiais Didáticos & Documentos

Tutorial Didático - Trajetória Parabólica (PDF)
Tutorial Didático Guia didático de física e matemática com Arduino.
Baixar Arquivo
Quer este projeto em sua escola?

A WETECH disponibiliza kits de hardware prontos, roteiros de aulas alinhados à BNCC e formação continuada de educadores.

Solicitar Orçamento Escolar