Hardware

Un nodo de $1,920 MXN que hace lo que dispositivos de $6,000 MXN no pueden — actuar antes del colapso.


Bill of Materials

Hardware

Componente Modelo Rol en el sistema Precio MXN
Arduino Uno Q 4GB Qualcomm Plataforma principal. MCU STM32U585 + MPU QRB2210 Linux ~$1,200
Sensor voltaje AC ZMPT101B Mide voltaje RMS. Detecta sags, swells, micro-cortes ~$80
Sensor corriente ACS712-30A Mide demanda de carga en tiempo real vía ADC ~$90
Sensor temp/humedad BMP280 / BME280 Alimenta modelo de riesgo térmico ~$60
Módulo relay doble 5V optoacoplado Desconecta cargas no críticas. Respuesta < 1ms ~$70
Batería LiPo 5000 mAh + MT3608 Resiliencia durante el apagón ~$180
Osciloscopio PicoScope 2208B MSO Validación y captura de datos. AWG integrado
Prototipado Caja, protoboard, cables Materiales para el demo ~$200

Total estimado del prototipo: ~$1,920 MXN


Arduino Uno Q — Dos cerebros, un propósito

Procesador Specs Rol
MCU (STM32U585) 786 KB RAM, 2 MB ROM, Zephyr RTOS 3 modelos Edge AI en C/C++, latencia sub-ms. ADC 12-bit (ADC_MAX = 4095)
MPU (QRB2210) 4 GB RAM, Linux Python, Flask, SQLite, WiFi, Twilio

Circuito de prototipo

Setup físico del nodo con sensores, relay y Arduino Uno Q.

Circuito de prototipo Tecovolt


Sensores

ZMPT101B — Voltaje AC

Transformador de voltaje miniatura. Señal analógica proporcional al voltaje de la red (0–250V AC). Se lee vía ADC del MCU a 1 kHz para alimentar el Modelo A.

Configuración validada: AC coupling centrado en 0V, ±2V.

Medición Valor
RMS 831.4 mV
Frecuencia 60.02 Hz (nominal mexicana)
Crest factor 1.4445 (teórico: 1.414)

Señales capturadas con el PicoScope

Señal normal de 60 Hz — baseline de referencia.

Señal normal ZMPT101B

Señal de outage — RMS cae a ~0.0007 V, diferencia de 164x vs normal.

Señal de outage

Señal con ruido — perfil de ruido usado para augmentation ×50 del dataset.

Señal con ruido

Para capturar outage real: desconectar el ZMPT del tomacorriente durante la captura. Desconectar un calentador solo captura un transitorio de reconexión — el ZMPT sigue viendo la red.


ACS712-30A — Corriente

Sensor de efecto Hall hasta 30A. Sensibilidad nominal: 66 mV/A a 5V. Factor real medido: 10.52 mV/A (con divisor de voltaje a 3.3V del STM32).

Configuración validada: DC coupling a ±5V.

Lección de calibración: en AC coupling a ±50mV el offset de 2.5V del ACS712 desaparece y solo queda ruido. El ACS712 requiere DC coupling para ver la señal útil. El multímetro promediaba el RMS y filtraba transitorios de < 200ms — exactamente los fenómenos que Tecovolt detecta. El PicoScope fue el único instrumento capaz de revelarlos.

Carga rawRMS Potencia
Sin carga 0.00 0 W
Un calentador 42.81 ± 0.21 ~950 W
Dos calentadores 87.60 ± 0.23 ~1900 W

BMP280 — Temperatura y humedad

Sensor ambiental para el tablero eléctrico. 1 Hz. Alimenta el Modelo C de riesgo térmico.


PicoScope 2208B MSO — El validador independiente

Waveform capturada en vivo durante las pruebas de calibración.

PicoScope capturando señal del ZMPT101B


Actuador — Relay doble 5V

Cierra el loop de protección. Cuando el MPU detecta ≥2 clasificaciones sag_severo en historial de 10 ventanas, el MCU activa el relay en < 1ms para desconectar cargas no críticas.


Parámetros críticos del firmware

Parámetro Valor Razón
ADC_MAX 4095 STM32U585 es 12-bit — no 1023 del Arduino UNO
SAMPLE_US 1000 1ms = 1 kHz
N_SAMPLES 200 200ms de ventana
Thread ACS712 k_usleep(1000) 1 kHz. k_usleep(100) daría 10 kHz accidentalmente

Enclosure — Diseño físico

Primera iteración del enclosure CAD con todos los componentes posicionados.

Enclosure CAD — vista frontal Enclosure CAD — vista lateral
Especificación Detalle
Grado IP55 Caja sellada apta para instalación exterior
Aislamiento 127V Transformadores + optoacopladores = aislamiento galvánico completo
Enclosure CAD Listo para impresión 3D

Subir

Slop as a Service (SAAS) — Tecovolt · Qualcomm Sustainable Power Cities · Genius Arena 2026
Bini Vázquez · Diego Pérez Rossi · Jocelyn Velarde Barrón · Armando Mac Beath