Manufactura industrial
Internet industrial de las cosas | Materiales industriales | Mantenimiento y reparación de equipos | Programación industrial |
home  MfgRobots >> Manufactura industrial >  >> Manufacturing Technology >> Tecnología Industrial

Sensores de Flujo de Agua: Funcionamiento, Tipos y Uso con Arduino

Los sensores de flujo de agua miden caudal volumétrico (L/min) y volumen total. Son esenciales en gestión de agua, riego automático, dispensadores, cafeteras, calentadores instantáneos y monitorización industrial. Esta guía cubre principios de funcionamiento, tipos principales, especificaciones del sensor YF-S201 (efecto Hall + turbina) e integración con Arduino.

Sensores de Flujo de Agua: Funcionamiento, Tipos y Uso con Arduino
Sensor de flujo YF-S201 (efecto Hall + turbina)

¿Qué es un Sensor de Flujo de Agua?

Dispositivo que detecta el paso de líquido y genera una señal proporcional al caudal. Los más comunes en hobby/industria ligera usan una turbina (rotor) con imán y un sensor de efecto Hall que emite pulsos por cada vuelta.

Sensores de Flujo de Agua: Funcionamiento, Tipos y Uso con Arduino
Aplicación típica: cafetera automática

Principio de Funcionamiento (YF-S201 / Turbina + Hall)

  1. El agua entra por una entrada roscada (G1/2" típica) e incide sobre la turbina.
  2. La turbina gira a velocidad proporcional al caudal.
  3. Un imán en la turbina pasa frente al sensor Hall, generando un pulso por vuelta.
  4. La frecuencia de pulsos (Hz) es proporcional al caudal (L/min).
  5. Fórmula típica: Caudal (L/min) = Frecuencia (Hz) / Factor K (K ≈ 7.5 para YF-S201, ver datasheet).

La salida es onda cuadrada (TTL 0–5 V), compatible con pines de interrupción de microcontroladores.

Tipos Principales de Sensores de Flujo

1. Turbina / Rueda de Paletas (Paddlewheel)

2. Desplazamiento Positivo (Positive Displacement - PD)

3. Electromagnético (Magmeter)

Sensores de Flujo de Agua: Funcionamiento, Tipos y Uso con Arduino
Medición de aguas residuales con magmeter

4. Ultrasónico (Transit-Time / Doppler)

Sensores de Flujo de Agua: Funcionamiento, Tipos y Uso con Arduino
Medidor ultrasónico Doppler para lodos/aguas residuales

Especificaciones YF-S201 (Referencia Común)

ParámetroValor
Tensión de trabajo4.5 – 24 Vcc (típ. 5–18 V)
Corriente máxima15 mA @ 5 V
Caudal nominal1 – 30 L/min
Factor K (pulsos/L)∼450 pulsos/L (7.5 Hz per L/min)
Precisión±3 % (rango medio), ±10 % (extremos)
Presión máx. trabajo1.75 MPa (∼17.5 bar)
Temp. fluido / ambiente< 80 °C / < 120 °C
Humedad35–90 % HR
RoscaG1/2" (DN15) hembra
Material cuerpoLatón niquelado / PA66 + fibra vidrio
SalidaOnda cuadrada 0–5 V (open collector + pull-up interno)

Integración con Arduino (YF-S201)

Conexión

Sensores de Flujo de Agua: Funcionamiento, Tipos y Uso con Arduino
Esquema de conexión a Arduino

Código Arduino (Interrupción + Cálculo Caudal)


const uint8_t FLOW_PIN = 2;           // Pin interrupción (INT0)
const float K_FACTOR = 7.5;           // Pulsos por L/min (ver datasheet)
volatile uint32_t pulseCount = 0;
uint32_t lastMillis = 0;
float flowRate = 0;                   // L/min
float totalVolume = 0;                // Litros

void IRAM_ATTR countPulse() {         // ISR: rápido, mínimo código
  pulseCount++;
}

void setup() {
  Serial.begin(115200);
  pinMode(FLOW_PIN, INPUT_PULLUP);
  attachInterrupt(digitalPinToInterrupt(FLOW_PIN), countPulse, FALLING);
}

void loop() {
  uint32_t now = millis();
  if (now - lastMillis >= 1000) {     // Actualizar cada 1 s
    detachInterrupt(digitalPinToInterrupt(FLOW_PIN));
    uint32_t pulses = pulseCount;
    pulseCount = 0;
    attachInterrupt(digitalPinToInterrupt(FLOW_PIN), countPulse, FALLING);

    flowRate = pulses / K_FACTOR;     // L/min
    totalVolume += flowRate / 60.0;   // L acumulados

    Serial.printf("Caudal: %.2f L/min | Total: %.3f L\n", flowRate, totalVolume);
    lastMillis = now;
  }
}

Visualización en LCD 16×2 (I2C)


#include 
LiquidCrystal_I2C lcd(0x27, 16, 2);

void setup() {
  lcd.init(); lcd.backlight();
  // ... setup sensor ...
}

void loop() {
  // ... cálculo caudal ...
  lcd.setCursor(0,0); lcd.printf("Caudal: %.1f L/min", flowRate);
  lcd.setCursor(0,1); lcd.printf("Total: %.2f L    ", totalVolume);
  delay(1000);
}

Buenas Prácticas y Solución de Problemas

Conclusión

El YF-S201 (turbina + Hall) es la opción costo-efectiva estándar para agua limpia en proyectos Arduino/ESP32. Para precisión, fluidos sucios, viscosos o industriales, evalúa desplazamiento positivo, electromagnético o ultrasónico. La clave es contar pulsos con interrupción y calibrar el factor K.

¿Dudas en tu implementación? Contáctanos para revisión de código o selección de sensor.

Tecnología Industrial

  1. Curva P-F explicada: dominando el mantenimiento centrado en fiabilidad
  2. Bombas de Recirculación de Agua Caliente Doméstica: Qué Son y Cómo Elegir la Adecuada
  3. Explorando 6G: El Futuro de la Conectividad Ultra-Rápida
  4. Brasado de cobre explicado: Técnicas y consejos para uniones fuertes y fiables
  5. MQTT en Automatización Industrial: Guía Práctica para Fabricantes
  6. Microcontroladores PIC18: Características, Rendimiento y Cómo Usarlos
  7. Entendiendo Designadores de Referencia: Cómo Etiquetar Conexiones en Ensamblaje PCB
  8. Cómo Elegir el Compactador Adecuado: Guía Completa para una Gestión Eficiente de Residuos
  9. Sensores de Flujo de Agua: Funcionamiento y Aplicaciones Principales
  10. Elegir la Plataforma IoT Correcta: Guía Práctica para Product Managers
  11. Dominando Queues en C#: Enqueue, Dequeue y Operaciones Primero-En-Entrar-Primero-En-Salir Explicadas