Ir al contenido
Todos los casos

Caso de éxito · AAA Ucayali, Perú

El río Ucayali, minuto a minuto. Un M-Duino 19R envía el nivel.

Sensor de nivel, red celular, MQTT y una web. Con energía solar.

1 minintervalo de envío por defecto, y se puede cambiar
0 a 10 mcolumna de agua, sensor piezométrico en Modbus RTU
4.358,8 m³/scaudal base el 3 de junio de 2020, durante la prueba en LPO
232.744,6 km²subcuenca con una sola estación de drenaje

Una sola estación de drenaje para 232.744,6 km² no basta.

La estación envía su nivel cada minuto.

La Autoridad Administrativa del Agua IX Ucayali (AAA Ucayali), de la Autoridad Nacional del Agua (ANA) del Perú, construyó una estación hidrométrica con un PLC de Industrial Shields. Un sensor piezométrico mide el río. El PLC envía los datos por la red celular a una web, y un panel solar alimenta la estación. El piloto está en Pucallpa, junto al río Ucayali. En pocas palabras: el nivel y el caudal del río llegan a una pantalla casi en tiempo real.

En campo

La estación, su armario y sus datos.

Material real del caso original: la estación en su sitio, el interior del armario, la web con lecturas reales y la instalación en el río.

Estación hidrométrica de la AAA Ucayali en Pucallpa, Perú: caja con rejillas y un pequeño panel solar encima, en un poste junto al río
La estación en su sitio: una caja blanca con los logos de la AAA Ucayali y la ANA y un pequeño panel solar encima.
Interior del armario de la estación: PLC de Industrial Shields con antena, batería de 12 V 7 Ah, convertidor DC-DC y cableado
Dentro del armario: el PLC de Industrial Shields con su antena celular (arriba a la izquierda; la etiqueta dice GPRS/GSM Controller 19R), una batería de plomo sellada de 12 V 7 Ah, un módulo convertidor DC-DC, el cableado y una segunda placa en formato Arduino cuya función el caso no publica.
Web de la estación piloto de Pucallpa con el logo de la ANA y un gráfico de nivel del río UcayaliGráfico de las últimas 24 horas y tabla con nivel 141,9772 m s. n. m. y caudal 6.393,5 m³/s del 8 de junio de 2020Tarjetas de la web con temperatura 33,19 °C, humedad 91 %, presión 992,31 hPa e indicadores solar y de batería
La web, 8 de junio de 2020: nivel 141,9772 m s. n. m. y caudal 6.393,5 m³/s, temperatura 33,19 °C, humedad 91 %, presión 992,31 hPa, batería 12,18 V. Capturas reales del caso.
Muelle en el río Ucayali en Pucallpa con contenedores y una grúa, y la estación en un posteMuelle de hormigón sobre pilotes encima del agua marrón del río UcayaliPilotes del muelle en el río Ucayali con un cable que baja hasta el agua
Instalación en campo en el río Ucayali, en Pucallpa. La estación está en un muelle sobre el río.

El reto

Una cuenca enorme. Casi sin datos de caudal.

La subcuenca del Ucayali tiene 232.744,6 km², y según el caso cuenta con una sola estación de drenaje. La AAA Ucayali necesitaba un sistema automático que registrara el nivel y el caudal del río a nivel horario. Este es el encargo del caso.

01

Caudal horario

Valores de caudal a nivel horario para una gran cuenca amazónica, a semejanza de la estación de Requena.

02

Tiempo real

Registrar la variación del nivel y del caudal del río en diferentes puntos, en el momento.

03

Sin red eléctrica

Un panel solar y una batería alimentan la estación. La red eléctrica es una alternativa donde la hay.

04

En manos del equipo

El piloto permite a la AAA Ucayali instalar, operar, mantener y monitorizar la estación por sí misma.

Construida por la AAA Ucayali

La AAA Ucayali construyó el equipo de medición. Los datos apoyan su trabajo en derechos de uso de agua, fajas marginales, obras hidráulicas, alertas tempranas, campañas de aforo para las curvas Q-H de avenidas y sequías, y planificación de la cuenca con el GETRAM, el grupo de trabajo multisectorial de Ucayali.

Cómo funciona

Tres bucles: medir, convertir, seguir.

La estación mide el nivel y lo envía, el sistema convierte el nivel en caudal, y el enlace tiene que aguantar en un sitio remoto. Los valores de los paneles son reales donde se indica. El comportamiento es una simulación ilustrativa.

Bucle 1 · Medir y enviar

Del lecho del río a la pantalla del móvil

Un sensor piezométrico mide la columna de agua desde el lecho del río hasta el espejo de agua, de 0 a 10 m. El PLC lo lee por RS-485 con Modbus RTU y envía los datos por la red celular. En las figuras del caso, un broker MQTT (EMQ) recibe los mensajes, un cliente MQTT en Node.js los escribe en MySQL y una web los muestra en el ordenador o en el móvil. El intervalo de envío por defecto es de 1 minuto, y se puede cambiar.

  • Sensor piezométrico: 0 a 10 m, 12 a 24 V, IP68
  • RS-485 con Modbus RTU hasta el PLC
  • MQTT por la red celular, cada minuto por defecto
  • Base de datos MySQL y una web con gráficos
SensorPLC 19RCelularBrokerMySQLWeb
1 LEER2 PUBLICAR3 GUARDAR4 MOSTRAR
Web · Estación piloto de Pucallpa8 de junio de 2020
Nivel del río141,9772 m s. n. m.
Caudal6.393,5 m³/s
Temperatura33,19 °C
Humedad91 %
Presión992,31 hPa
Batería12,18 V
1 min

1440 mensajes al día

Valores reales de las capturas de la web del 8 de junio de 2020. El minuto por defecto es del caso. La animación es ilustrativa.

Relacionado: maestro Modbus RTU por RS-485

Bucle 2 · Del nivel al caudal

Un nivel se convierte en caudal con una curva de calibración.

En el caso, el caudal sale del nivel con una curva de calibración Q = a·H^b. La curva viene de campañas de aforo en el río. El caso publica la curva de Pucallpa, Q = 1E-71 · H^34,7575, con los aforos de 2018 y 2019. Con esta curva, 141,9772 m s. n. m. dan 6.393,5 m³/s: la misma pareja que muestra la web el 8 de junio de 2020.

  • Aforo con un ADCP M9, 16 de junio de 2020: 5.122,84 m³/s
  • Distancia de la sección 671,404 m, área 5.212,816 m², profundidad máxima 20,642 m
  • Línea de alerta en el gráfico de nivel: 146,5 m s. n. m.
010k20k136140144148146,5H (m s. n. m.)Q (m³/s)
Nivel del río
Caudal
Estado

Curva y línea de alerta del caso. El panel solo muestra cómo un nivel se convierte en caudal. El caso no publica dónde se calcula la curva: en el PLC o en el servidor.

Bucle 3 · Sitio remoto

El sol para la energía. Una antena celular para los datos.

Un panel solar, un controlador de carga y una batería libre de mantenimiento alimentan la estación. La web muestra la tensión de la batería. El caso también señala un límite: los datos solo llegan a la web con servicio celular. Donde no hay cobertura, un enlace satelital puede ser la solución. El panel muestra una forma habitual de conservar las lecturas durante un corte.

  • Panel solar, controlador de carga y batería
  • Tensión de batería en la web: 12,18 V
  • Sin cobertura: enlace satelital como alternativa
EstaciónBrokerWebmicroSD0
Enlace OKSin coberturaGuardando en localReenvío

Batería (web, 8 de junio de 2020)12,18 V

Ilustrativo. El caso dice que los datos solo llegan con servicio celular y que un enlace satelital puede ser la alternativa. No publica un búfer local. Store and forward (guardar y reenviar) es una forma habitual de hacerlo.

Prueba la pérdida de enlace en el simulador de telemetría remota

Relacionado: registro MQTT offline con tarjeta SD

Pack de proyecto: una flota de estaciones remotas con actualizaciones OTA

Arquitectura del sistema

¿Cómo informa un M-Duino 19R del estado de un río desde un muelle?

Un cable de sensor baja hasta el lecho del río. Un PLC lo lee y envía los datos por la red celular. El resto funciona en servidores: un broker MQTT, un cliente en Node.js, una base de datos MySQL y una web. El caso no publica las interfaces de los sensores meteorológicos ni de calidad del agua.

Hydrometric station on the Ucayali river, Peru, with one M-Duino 19R, MQTT and a web appSensores de campoSensor piezométrico0 a 10 m · Modbus RTUSensores meteorológicostemperatura · humedad · presiónCalidad del aguatemperatura · CE · O2 · pHRS-485no publicadoPanel solarcontrolador · bateríaEnergíaM-Duino 19Rcon módulo celularDatosRed celularGPRSMQTTBroker MQTTEMQCliente MQTTNode.jsSQL INSERTMySQLbase de datosWebordenador · móvilIntervalo de envío (no publicado)Según el texto y las figuras del caso. No se publican las interfaces de los sensores meteorológicos y de calidad del agua ni la ruta del ajuste remoto.Sensores de campoSensores meteorológicostemperatura · humedad · presiónCalidad del aguatemperatura · CE · O2 · pHno publicadoSensor piezométrico0 a 10 m · Modbus RTURS-485M-Duino 19Rcon módulo celularPanel solarcontroladorbateríaDatosRed celularGPRSMQTTBroker MQTTEMQCliente MQTTNode.jsSQL INSERTMySQLbase de datosWebordenador · móvilIntervalo de envío → M-Duino 19R: no publicadoSegún el texto y las figuras del caso.No se publican las interfaces de lossensores meteorológicos y de calidaddel agua ni la ruta del ajuste remoto.
Datos desde la estaciónAjuste hacia la estaciónDetalle que el caso no publica
Señales y datos
FlujoEntreTipoFunción
Nivel del ríoEntreSensor piezométrico → M-Duino 19RTipoRS-485 Modbus RTUFunciónColumna de agua desde el lecho hasta el espejo de agua, de 0 a 10 m
MeteorologíaEntreSensores → estaciónTipoNo publicadoFunciónTemperatura, humedad y presión atmosférica en la web
Calidad del aguaEntreSensores → estaciónTipoNo publicadoFunciónTemperatura, CE, oxígeno disuelto y pH, registros diarios y horarios
EnergíaEntrePanel solar, controlador, batería → M-Duino 19RTipoAlimentación DCFunciónHace funcionar la estación en el sitio. Red eléctrica como alternativa
Salida de datosEntreM-Duino 19R → broker MQTT (EMQ)TipoMQTT por red celularFunciónEnvía las lecturas, cada minuto por defecto
AlmacenamientoEntreCliente MQTT Node.js → MySQLTipoSQL INSERTFunciónEscribe cada mensaje en la base de datos según su topic
Datos webEntreMySQL → webTipoNo publicadoFunciónNivel, caudal, meteorología y batería en el ordenador o el móvil
Intervalo de envíoEntreOperador → M-Duino 19RTipoNo publicadoFunciónCambia cada cuánto envía los datos la estación

Por qué funciona

Por qué el M-Duino 19R encaja en esta estación.

Abierto y sin licencias

El caso usa hardware y software libres. No se paga por el derecho de uso de la tecnología. El PLC se programa con el Arduino IDE.

Margen para crecer

El caso valora una solución modular: las prestaciones se pueden ampliar en el futuro. La familia M-Duino se amplía hasta 127 módulos por I2C, hasta 7.100 entradas y salidas en conexiones maestro y esclavo.

Hardware industrial para un sitio remoto

Un PLC para carril DIN diseñado y fabricado para uso industrial, con RS-485 para el sensor de nivel, un módulo celular para los datos y alimentación de 12 a 24 Vdc.

Hardware utilizado

Un M-Duino 19R lee el nivel y envía los datos.

M-Duino Ethernet PLC Arduino 19R, PLC industrial basado en Arduino Mega con 17 E/S y 8 relés

M-Duino Ethernet PLC Arduino 19R

Un PLC industrial con un Arduino Mega 2560 original, 17 entradas y salidas, Ethernet, RS-485 y RS-232, para carril DIN. En esta estación lee el sensor piezométrico por Modbus RTU y envía los datos por la red celular.

Entradas
6: 4 analógicas/digitales (0-10 V), 2 digitales optoaisladas con interrupción
Salidas
11: 8 relés, 3 analógicas/digitales/PWM (0-10 V)
Comunicaciones
Ethernet (RJ45), RS-485, RS-232, TTL, I2C, SPI
Integrado
Reloj de tiempo real, ranura microSD
Alimentación
De 12 a 24 Vdc
Montaje
Carril DIN TS35, IP20

El caso es de 2020 y usa un M-Duino 19R con módulo celular: la etiqueta del PLC dice GPRS/GSM Controller 19R. La misma ficha de producto vende ahora su versión actual, el M-Duino 19R+. Las versiones GPRS/GSM están en la ficha técnica de la familia M-Duino GPRS.

Preguntas sobre este caso

¿Quién construyó esta estación hidrométrica?

La Autoridad Administrativa del Agua IX Ucayali (AAA Ucayali), de la Autoridad Nacional del Agua (ANA) del Perú. La AAA Ucayali construyó el equipo con un PLC de Industrial Shields. Lo probó el 13 de mayo de 2020 en las instalaciones de la Marina de Guerra del Perú (Capitanía de Puerto de Pucallpa), enviando niveles simulados del río por la red celular. Después instaló la estación en la empresa LPO para probarla, con un caudal base de 4.358,8 m³/s el 3 de junio de 2020.

¿Cómo mide la estación el nivel del río?

Con un sensor piezométrico. Mide la columna de agua desde el lecho del río hasta el espejo de agua, de 0 a 10 m. Funciona a 12 a 24 V, tiene protección IP68 y se comunica por RS-485 con Modbus RTU. La web muestra el nivel en metros sobre el nivel del mar.

¿Cómo se convierte el nivel en caudal?

Con una curva de calibración Q = a·H^b, construida con campañas de aforo. El caso publica la curva de Pucallpa, Q = 1E-71 · H^34,7575, con los aforos de 2018 y 2019. Un aforo con ADCP M9 el 16 de junio de 2020 midió 5.122,84 m³/s. El caso no publica dónde se calcula la curva: en el PLC o en el servidor.

¿Cómo llegan las lecturas a la web?

El PLC las envía por la red celular. En las figuras del caso, un broker MQTT (EMQ) las recibe, un cliente MQTT en Node.js las escribe en MySQL con sentencias SQL INSERT y una web las muestra. El intervalo de envío por defecto es de 1 minuto, y se puede cambiar.

¿Qué pasa cuando no hay cobertura celular?

El caso dice que los datos solo llegan con servicio celular y que un enlace satelital puede ser la solución. No publica un búfer local. Una forma habitual es store and forward: el PLC guarda las lecturas en una tarjeta microSD, con la hora de un reloj de tiempo real, y las envía cuando vuelve el enlace. El M-Duino 19R+ lleva ambos integrados. Puedes probarlo en nuestro simulador de telemetría remota.

¿Qué parámetros de calidad del agua cubre el caso?

Temperatura, conductividad eléctrica (CE), oxígeno disuelto y pH, con registros diarios y horarios. Los sensores individuales están acoplados de forma permanente a la estación hidrométrica. El caso da un coste de los sensores de unos S/ 8.000 y un certificado de calibración de 1 año acreditado por INACAL. No publica cómo se conectan estos sensores al PLC.

Descarga el caso de éxito

PDF de 4 páginas con el reto, la lógica, la arquitectura y el hardware. Sin formularios.

¿Proyecto similar?

Cuéntanos tu río y tus estaciones. Te responderá un ingeniero.

Dinos qué mides (nivel, caudal, meteorología, calidad del agua), cuántas estaciones prevés, qué enlace tienes en el sitio (celular, satélite o radio) y adónde tienen que ir los datos. Te diremos qué controlador encaja y cómo conectarlo.

  • Respuesta de nuestro equipo técnico
  • Interfaces de sensores y recuento de E/S para tu estación
  • PLC basados en Arduino, ESP32 o Raspberry Pi