Inicio/Monitores de Energía/Monitorización de Consumo Eléctrico con ESP32 y Sensor SCT-013: Proyecto DIY Completo para una Instalación Segura y Precisa
Monitores de Energía

Monitorización de Consumo Eléctrico con ESP32 y Sensor SCT-013: Proyecto DIY Completo para una Instalación Segura y Precisa

Alex R.Escrito por: Alex R.
Fecha: 15 Jul 2026
Lectura de 12 min
Monitorización de Consumo Eléctrico con ESP32 y Sensor SCT-013: Proyecto DIY Completo para una Instalación Segura y Precisa

El control del consumo eléctrico en el hogar se ha convertido en una prioridad para quienes buscan eficiencia energética y ahorro económico. Con el auge del IoT y las plataformas de domótica como Home Assistant, construir un medidor de consumo WiFi con ESP32 y sensor SCT-013 se presenta como una solución DIY precisa, económica y totalmente personalizable. Este artículo te guiará a través de cada paso del proyecto, desde los fundamentos teóricos hasta la instalación segura y la visualización de datos en tiempo real, garantizando un resultado profesional y fiable.

Fundamentos del Sensor SCT-013 y el Microcontrolador ESP32

El sensor SCT-013 es un transformador de corriente de tipo abrazadera que permite medir la corriente alterna (AC) sin necesidad de realizar cortes en el cableado eléctrico. Funciona por inducción electromagnética: el campo magnético generado por la corriente que circula por el conductor induce una tensión proporcional en el secundario del transformador. Existen varias versiones del SCT-013, siendo las más comunes las que entregan una salida de tensión alterna (0-1V) o una salida de corriente (0-50mA). Para proyectos con ESP32, se recomienda la versión de salida de tensión (SCT-013-000 o SCT-013-030) con un rango de medición de 0-30A o 0-100A, según la carga a monitorizar.

El ESP32 es un microcontrolador de bajo coste y alto rendimiento que integra conectividad WiFi y Bluetooth. Su conversor analógico-digital (ADC) de 12 bits permite leer señales analógicas con una resolución de 4096 niveles, suficiente para capturar la forma de onda de la corriente alterna. Sin embargo, el ADC del ESP32 no es lineal en toda su escala, por lo que es necesario aplicar técnicas de calibración y promediado para obtener mediciones precisas. Además, el ESP32 puede ejecutar un servidor web o enviar los datos a plataformas como Home Assistant, MQTT o servicios en la nube.

Principio de Medición de Corriente Alterna

La corriente alterna varía sinusoidalmente en el tiempo. Para medir su valor eficaz (RMS), es necesario muestrear la señal durante un número entero de ciclos (por ejemplo, 50 Hz en Europa, 60 Hz en América). El ESP32 debe leer el ADC a una frecuencia de al menos 2 kHz (2000 muestras por segundo) para capturar suficientes puntos de la onda. Luego, se calcula el valor RMS mediante la fórmula: RMS = sqrt( (1/N) * sum(sample^2) ), donde N es el número de muestras. Este cálculo elimina el offset de DC y proporciona el valor de corriente eficaz.

Para convertir la corriente RMS en potencia aparente (VA), se multiplica por el voltaje de la red (generalmente 230V en Europa, 120V en América). La potencia activa (vatios) requiere además el factor de potencia, que puede obtenerse midiendo el desfase entre tensión y corriente con un segundo sensor (o asumiendo un factor de potencia típico de 0.9-1 para cargas resistivas). En este proyecto nos centraremos en la medición de corriente y potencia aparente, suficiente para la mayoría de aplicaciones de monitorización.

Materiales Necesarios y Esquema de Conexiones

Para construir el medidor de consumo WiFi con ESP32 y SCT-013 necesitarás los siguientes componentes:

  • ESP32 DevKit V1 o similar: Microcontrolador con WiFi, ADC de 12 bits y suficiente potencia de procesamiento.
  • Sensor SCT-013 (versión 0-1V): Transformador de corriente de abrazadera con salida de tensión alterna.
  • Resistencia de carga (burden resistor): Para versiones de salida de corriente (SCT-013-000) se necesita una resistencia de precisión (por ejemplo, 33 ohmios) para convertir la corriente en tensión. En la versión de salida de tensión ya viene integrada.
  • Condensador de 100 µF y resistencias de polarización: Para añadir un offset de DC de 1.65V (mitad de la tensión de referencia del ADC) y filtrar el ruido de alta frecuencia.
  • Fuente de alimentación 5V: Para alimentar el ESP32 (puede ser un cargador USB o una fuente de 5V regulada).
  • Cables, protoboard y soldador: Para realizar las conexiones de forma segura.

1Conexión del SCT-013 al ESP32

Conecta el cable jack del SCT-013 a un conector hembra. El pin de señal (punta) se conecta a la entrada ADC del ESP32 (GPIO34, por ejemplo) a través de un divisor de tensión que añada un offset de 1.65V. El pin de tierra (manguito) se conecta a GND. Se recomienda añadir un condensador de 100 µF entre la señal y GND para filtrar ruido.

2Circuito de Polarización (Offset de DC)

Para que el ADC pueda leer la señal alterna (que oscila entre valores positivos y negativos), se debe desplazar la señal hacia arriba sumando una tensión continua de 1.65V. Esto se logra con un divisor de tensión formado por dos resistencias de 100k entre 3.3V y GND, y conectando el punto medio a la entrada ADC a través de una resistencia de 10k. La salida del SCT-013 se acopla mediante un condensador de 10 µF para eliminar el componente de DC.

Programación del ESP32 para Medición de Corriente RMS

El firmware del ESP32 debe realizar las siguientes tareas: leer el ADC a alta frecuencia, calcular el valor RMS de la corriente, convertir a amperios y vatios, y enviar los datos por WiFi. A continuación se presenta un esquema del código principal en Arduino IDE.

Configuración del ADC y Muestreo

El ADC del ESP32 se configura con una atenuación de 11 dB para medir hasta 3.3V. Se utiliza el canal ADC1 (GPIO34) con resolución de 12 bits. Para muestrear la señal, se lee el ADC en un bucle durante un período de tiempo que cubra al menos un ciclo de 50 Hz (20 ms) o 60 Hz (16.67 ms). Se recomienda tomar 2000 muestras en 20 ms (100 kHz) para obtener una buena precisión. El valor leído se convierte a tensión: voltaje = (lectura * 3.3) / 4095.

Para eliminar el offset de DC, se resta el valor medio de las muestras (que corresponde al offset de 1.65V). Luego se calcula la suma de los cuadrados de las muestras y se divide por el número de muestras, obteniendo el cuadrado del valor RMS. Finalmente, se aplica la raíz cuadrada para obtener el voltaje RMS de la señal del sensor. Este voltaje es proporcional a la corriente que circula por el conductor.

Calibración y Conversión a Amperios

La relación entre el voltaje RMS medido en el ADC y la corriente real depende del modelo del SCT-013. Para el SCT-013-030 (30A, salida 0-1V), la sensibilidad es de 1V / 30A = 0.0333 V/A. Es decir, por cada amperio de corriente, el sensor produce 33.3 mV RMS. Sin embargo, esta relación puede variar ligeramente debido a tolerancias. Para una calibración precisa, se recomienda utilizar una carga conocida (por ejemplo, una bombilla de 100W) y ajustar el factor de escala hasta que la lectura coincida con la corriente real medida con un multímetro de pinza.

Atención / AdvertenciaLa calibración debe realizarse con el circuito correctamente aislado y utilizando un multímetro certificado. No realices ajustes con el sistema conectado a la red eléctrica sin las debidas precauciones. Un error en la calibración puede llevar a lecturas incorrectas y a decisiones de ahorro energético equivocadas.

Integración con Home Assistant y Visualización en Tiempo Real

Una vez que el ESP32 calcula la corriente y la potencia, puede enviar los datos a Home Assistant mediante MQTT. Para ello, se necesita un broker MQTT (como Mosquitto) instalado en el mismo servidor que Home Assistant. El ESP32 se conecta al broker y publica los valores en tópicos como 'casa/medidor/corriente' y 'casa/medidor/potencia'. En Home Assistant, se crean sensores MQTT que recogen estos valores y los muestran en el dashboard.

Alternativamente, el ESP32 puede alojar un pequeño servidor web que muestre los datos en una página HTML. Esta opción es más sencilla para pruebas, pero menos escalable. Para una integración completa, se recomienda MQTT, ya que permite registrar históricos, crear automatizaciones y visualizar gráficos de evolución del consumo.

ParámetroValorEstado
Precisión típica±2%Aceptable
Rango de corriente0-30 A (SCT-013-030)Suficiente
Frecuencia de muestreo2 kHzMínima
ConectividadWiFi 2.4 GHzEstándar

Errores Comunes y Cómo Evitarlos

Al construir un medidor de consumo con ESP32 y SCT-013, es fácil cometer errores que afectan la precisión o la seguridad. A continuación, se detallan los más frecuentes y sus soluciones.

  • Offset de DC incorrecto: Si no se añade el offset de 1.65V, la señal alterna se recortará en los semiciclos negativos, dando lecturas erróneas. Verifica con un osciloscopio o midiendo el valor medio de la señal ADC (debe ser ~2048 cuentas).
  • Ruido eléctrico: El ADC del ESP32 es sensible al ruido. Utiliza cables apantallados para la señal del sensor, coloca el ESP32 lejos de fuentes de interferencia (como fuentes conmutadas) y añade condensadores de filtro.
  • Conexión incorrecta del sensor: La pinza del SCT-013 debe colocarse alrededor de UN SOLO conductor (fase o neutro, pero no ambos). Si abrazas el cable bipolar, las corrientes se cancelan y la lectura será cero.
  • Falta de aislamiento galvánico: El SCT-013 proporciona aislamiento galvánico, pero el ESP32 no. Asegúrate de que el circuito de medida esté correctamente aislado de la red eléctrica. No conectes el GND del ESP32 a la tierra de la instalación sin protecciones.
Consejo / RecomendaciónPara una instalación segura, utiliza una fuente de alimentación aislada para el ESP32 (por ejemplo, un cargador de móvil) y no conectes el GND del ESP32 a la tierra del cuadro eléctrico. El sensor SCT-013 ya proporciona aislamiento, pero es buena práctica mantener separados los circuitos de baja y alta tensión.

Comparativa de Alternativas: SCT-013 vs. Otros Sensores

Existen otras opciones para medir corriente en proyectos DIY, como el sensor ACS712 (efecto Hall) o los módulos PZEM-004T. La siguiente tabla compara las características principales.

CaracterísticaSCT-013ACS712PZEM-004T
Tipo de mediciónInductivo (sin contacto)Efecto Hall (en serie)Inductivo + tensión
Aislamiento galvánicoNo
Precisión típica±1-2%±3-5%±1%
Rango de corrienteHasta 100 AHasta 30 AHasta 100 A
Medición de tensiónNoNo
ComunicaciónAnalógicaAnalógicaSerial (Modbus)
Precio aproximado8-12 €3-5 €15-20 €

El SCT-013 ofrece un buen equilibrio entre precio, precisión y seguridad gracias a su aislamiento galvánico. El ACS712 es más barato pero requiere conexión en serie y no aísla, lo que puede ser peligroso. El PZEM-004T es más completo (mide tensión y corriente) pero es más caro y requiere comunicación serie. Para un proyecto DIY de monitorización de consumo general, el SCT-013 es la opción recomendada.

Preguntas Frecuentes (FAQ)

¿Puedo medir corriente continua con el SCT-013?
No, el SCT-013 está diseñado para corriente alterna (AC). Funciona por inducción electromagnética, que requiere un campo magnético variable. Para corriente continua (DC) se necesitan sensores de efecto Hall como el ACS712 o el ACS758.
¿Qué precisión puedo esperar con este proyecto?
Con una calibración cuidadosa y un buen filtrado de ruido, se puede alcanzar una precisión del ±2% en la medición de corriente. La precisión en potencia dependerá de la estimación del voltaje (asumido constante) y del factor de potencia. Para una precisión del ±1% se recomienda el uso de un sensor de tensión adicional y un algoritmo de cálculo de potencia activa.
¿Es seguro este proyecto para instalaciones eléctricas domésticas?
Sí, siempre que se respeten las normas de seguridad. El sensor SCT-013 proporciona aislamiento galvánico, pero el ESP32 debe alimentarse con una fuente aislada (como un cargador USB). No conectes el GND del ESP32 a la tierra de la instalación. Además, la pinza del sensor debe colocarse alrededor de un conductor aislado, nunca en cables pelados. Si no tienes experiencia con electricidad, consulta a un electricista profesional.
¿Puedo monitorizar varios circuitos con un solo ESP32?
Sí, el ESP32 dispone de varios canales ADC (hasta 18 en algunas versiones). Puedes conectar varios sensores SCT-013 a diferentes pines ADC, siempre que cada uno tenga su propio circuito de polarización. Sin embargo, ten en cuenta que el ADC del ESP32 tiene cierta diafonía entre canales, por lo que se recomienda separar las lect
TRANSPARENCIA INFORMATIVA

Este análisis técnico es independiente. No recibimos pagos de fabricantes para alterar valoraciones. Si realizas una compra a través de enlaces en este sitio, podríamos percibir una comisión de afiliación que ayuda a mantener el servidor activo, sin coste extra para ti.