Revista 100% Verde

Watimetro con Esp8266

Por Soloelectronicos @soloelectronico

Éste proyecto se aprovecha de que los contadores modernos inteligentes incluyen en el frontal un LED que parpadea cada 1kW consumido, de modo que conectando un par de cables a dicho LED y montando una pequeño circuito basada en el módulo Wifi ESP8266, podemos medir con bastante precisión el consumo producido.

Obviamente no es legal abrir el contador inteligente de nuestra vivienda para soldar un para de cables al LED del watimetro, básicamente porque el equipo no nos pertenc e ya que las compañías suministradoras lo suelen ofrecer en modo alquiler , pero debe saber que éste tipo de contadores también lo podemos instalar en nustra vivienda o local en el cuadro de distribución de corriente alterna en un carril DIN, normalmente a a la salida del magneto-térmico general que alimenta a todos los circuitos que haya instalados en nuestra vivienda.

Watimetro con Esp8266

Por ejemplo el modulo XCSOURCE® Medidor Energía KWH Kilovatio Hora LCD CA 50Hz Fase Simple Riel DIN 230V BI04 se puede comprar por unos 14€ en Amazon siendo la instalación de riel DIN estándar de 35mm, y ademas cumpliendo con el estándar DIN EN 50023 y con el ancho del poste sencillo (módulo de 17.5mm), que cumple con el estándar DIN 43881.

El modulo en su configuración Estándar tiene una ventana de visualización de 7+1 dígitos (9999999.1kwh) mediante un LCD blanco y negro así, como también una salida con un led verde para el estado de suministro de energía y Rojo para la señal de impulso de energía como el de los contadores "inteligentes".

Además , no necesitamos desmontar el modulo para capturar la salida del led de consumo pues tiene una salida SO Estándar donde podemos conectar el circuito qeu vamos a ver (respetando la polaridad)

Watimetro con Esp8266

Realmente como vemos en el esquema de conexiones de watimetro este se alimenta por los terminales 1 y 4 (terminales de arriba) y su salida ira a lo terminales 3 y 6 que conectaremos a la carga ( es decir el resto de circuitos de nuestro vivienda o local) , y resaltar que precisamente en lo terminales 20 (+) y 21(-) tenemos la salida standar SO de pulsos de 50ms por 1wh

El circuito final que el autor propone para mejorar la visualizacion de watimetro , cuenta de los siguiente elementos:

  • De un ESP8266-12E como corazón del diseño
  • Una pantalla OLED
  • Una conexión para programación via conversion usb-serie
  • Una fuente de almentacion de 3.3V
  • Un circuito de entrada procedente de la señal SO del watimetro
  • Una entrada adicional opcional para medir consumos individuales de una carga sin watimetro exterior

El circuito propuesto es el siguiente:

.

Watimetro con Esp8266
Hardware
  • ESP8266-12E
  • ACS712 Current Sensor
  • 0.96″ OLED Display
  • BT136 Triac
  • MOC3021 Opto-triac
  • MCT2E
  • LM11173.3V LDO Regulator
  • 5V SMPS Module
Software

Y a continuación el código fuente Arduino que deberíamos grabar en el el ESP8266

Codigo Arduino

/***********************************************************************************/
/* This is an simple application to illustrate IoT Home Automation. /
/ This is an example for our Monochrome OLEDs based on SSD1306 drivers /
/ Pick one up today in the adafruit shop! /
/ --> http://www.adafruit.com/category/63_98 /
/ This example is for a 128×64 size display using I2C to communicate /
/ 3 pins are required to interface (2 I2C and one reset) /
/ Adafruit invests time and resources providing this open source code, /
/ please support Adafruit and open-source hardware by purchasing /
/ products from Adafruit! /
/ Written by Limor Fried/Ladyada for Adafruit Industries. /
/ BSD license, check license.txt for more information /
/ All text above, and the splash screen must be included in any redistribution /
/************************************************************************************/
#include <Wire.h>
#include <Adafruit_GFX.h>
#include <Adafruit_SSD1306.h>
#include <ESP8266WiFi.h>
#include / Local DNS Server used for redirecting all requests to the configuration portal /
#include / Local WebServer used to serve the configuration portal /
#include <WiFiManager.h> / https://github.com/tzapu/WiFiManager WiFi Configuration Magic */

const char* ssid = "IotEM"; /* Device SSID /
String apiKey = "GBH1K3293KFNO8WY"; / Replace with your thingspeak API key /
const char server = "api.thingspeak.com";

/* Create an instance of the client */
WiFiClient client;
WiFiManager wifiManager;

double Voltage, VRMS, AmpsRMS, Watts;
volatile byte interruptCounter = 0;
int Pulses = 0;
int PrevUnits = 0;
int PrevMUnits = 0;
int Units, MeasUnits;

#if (SSD1306_LCDHEIGHT != 64)
#error("Height incorrect, please fix Adafruit_SSD1306.h!");
#endif

#define LoadOn() digitalWrite(LoadPin, 1)
#define LoadOff() digitalWrite(LoadPin, 0);

static void DispInfo (void);
static void DispStat (void);
static void SendUnits (void);
static void SendTheftInfo (void) ;
static void SendSMS (int8_t Type);
static void DisplayUnits(void);
static void TheftOccurred (void);

ADC_MODE(ADC_TOUT);

Y por cierto para los incredulos en el siguiente video podemos ver el circuito en funcionamiento


Volver a la Portada de Logo Paperblog