diff options
Diffstat (limited to 'esp/LM393.ino')
| -rw-r--r-- | esp/LM393.ino | 42 |
1 files changed, 0 insertions, 42 deletions
diff --git a/esp/LM393.ino b/esp/LM393.ino deleted file mode 100644 index 6e6a5d5..0000000 --- a/esp/LM393.ino +++ /dev/null @@ -1,42 +0,0 @@ -#define SENSOR_PIN 35 // pino de sinal (DO) - -unsigned long lastTime = 0; -unsigned int pulsos = 0; -int estadoAnterior = HIGH; // começa em HIGH (sem interrupção) - -// Configurações do sensor -const int PULSOS_POR_VOLTA = 10; // 10 furos = 10 pulsos por volta -const float FATOR_KMH = 2.4; // km/h por rotação por segundo (ajuste conforme calibração) - -void setup() { - Serial.begin(115200); - pinMode(SENSOR_PIN, INPUT); - Serial.println("Anemômetro LM393 - Velocidade do vento"); -} - -void loop() { - int estadoAtual = digitalRead(SENSOR_PIN); - - // Detecta borda de descida: HIGH → LOW - if (estadoAnterior == HIGH && estadoAtual == LOW) { - pulsos++; - } - - estadoAnterior = estadoAtual; // atualiza para próxima leitura - - // A cada 1 segundo calcula RPM e velocidade - if (millis() - lastTime >= 1000) { - float rps = (float)pulsos / PULSOS_POR_VOLTA; - float rpm = rps * 60.0; - float velocidade = rps * FATOR_KMH; - - Serial.print("RPM: "); - Serial.print(rpm); - Serial.print(" | Velocidade: "); - Serial.print(velocidade); - Serial.println(" km/h"); - - pulsos = 0; - lastTime = millis(); - } -}
\ No newline at end of file |
