▷ Practica 1 #2PEM100A: Introduccion Sensor PZEM004T

⭐⭐⭐⭐⭐ Practica 1 #2PEM100A: Introduccion Sensor PZEM004T

 

Objetivo general:

  • Aprender sobre el modulo PZEM004T.  

Objetivos especificos:

  • Instalar libreria necesaria para el uso del sensor PZEM004T.
  • Implementar funciones del sensor en nuestro codigo Arduino.
  • Mostrar por serial lecturas de nuestro sensor PZEM004T.

Repositorio:

Materiales:

  • Medidor Consumo energético

Introducción:

El avance de la tecnología ha generado una mayor cantidad de aparatos conectados a la red electrica, lo que se traduce en un incremento en el consumo energético. Estos escenarios han provocado una necesidad de monitorear la red electrica, con la finalidad de tener una mayor información para poder tomar decisiones. 

Actualmente, existen en el mercado una gran variedad de sensores, analizadores de redes que ofrecen una amplia gama de opciones que permiten conocer las características de nuestros sistemas eléctricos. Para este tutorial utilizaremos uno de los más populares, el sensor PZEM004TV30.




El sensor PZEM004T es un módulo comercial que permite obtener mediciones de un sistema eléctrico alterno. Posee las siguientes especificaciones:


FunctionMeasuring rangeResolutionAccuracy
Voltage80~260V0.1V0.5%
Current0~10A or 0~100A*0.01A or 0.02A*0.5%
Active power0~2.3kW or 0~23kW*0.1W0.5%
Active energy0~9999.99kWh1Wh0.5%
Frequency45~65Hz0.1Hz0.5%
Power factor0.00~1.000.011%

 

Al tener una gran variedad de datos a medir lo vuelve versátil para diferentes aplicaciones.

Otra de las ventajas de este sensor, es la comunicación que utiliza, la cual es UART, esto es un gran acierto permitiendo incorporaron en sistemas embebidos y programar a voluntad.

A continuación, se adjunta una imagen de cómo se debe conectar el dispositivo con nuestro ESP32.




Requisitos:

Debemos ingresar al repositorio de la libreria del sensor: https://github.com/mandulaj/PZEM-004T-v30


En la paguina le damos click a Code y luego a descargar ZIP.



Esperamos a que se descargue el archivo:


Nos dirigimos a nuestro Arduino IDE y en la pestaña Programa le damos doble click en Añadir Fichero. 



Por ultimo en la ventana emergente, buscamos el zip descargado, se lo seleciona y se da okey. En este punto ya habremos instalado nuestra libreria. La cual sera necesaria para el resto del curso.

Procedimiento:


/*
Autor: Vidal Bazurto (avbazurt@espol.edu.ec)
GitHub: https://github.com/avbazurt/Simulacion_Sistemas_Electricos
Practica 1: Introduccion Sensor PZEM004TV30
*/
#include <PZEM004Tv30.h>
//Definimos los pines de comunicacion PZEM004T
#define PZEM_RX_PIN 16
#define PZEM_TX_PIN 17
//Creamos un objeto PZEM004Tv30 con los pines
PZEM004Tv30 pzem(Serial2, PZEM_RX_PIN, PZEM_TX_PIN);
void setup() {
Serial.begin(115200); //ACTIVAMOS EL PUERTO SERIAL
}
void loop() {
//Leemos los datos del sensor
float voltage = pzem.voltage();
float current = pzem.current();
float power = pzem.power();
float energy = pzem.energy();
float frequency = pzem.frequency();
float pf = pzem.pf();
// Validamos los datos del sensor
if (isnan(voltage)) {
Serial.println("Error reading voltage");
} else if (isnan(current)) {
Serial.println("Error reading current");
} else if (isnan(power)) {
Serial.println("Error reading power");
} else if (isnan(energy)) {
Serial.println("Error reading energy");
} else if (isnan(frequency)) {
Serial.println("Error reading frequency");
} else if (isnan(pf)) {
Serial.println("Error reading power factor");
} else {
// Mostramos por consola los datos
Serial.print("Voltage: "); Serial.print(voltage); Serial.println("V");
Serial.print("Current: "); Serial.print(current); Serial.println("A");
Serial.print("Power: "); Serial.print(power); Serial.println("W");
Serial.print("Energy: "); Serial.print(energy, 3); Serial.println("kWh");
Serial.print("Frequency: "); Serial.print(frequency, 1); Serial.println("Hz");
Serial.print("PF: "); Serial.println(pf);
}
//Esperamos un tiempo
Serial.println();
delay(2000);
}
view raw Practia1.ino hosted with ❤ by GitHub
Subimos el siguiente codigo a la placa y al abrir el monitor serial podremos observar nos esta mostrando las mediciones de la red electrica conectada.



Conclusiones:

  • El sensor PZEM permite una conexion sencilla y nos da una medicion muy precisa gracias a sus pequeñas resoluciones.  
  • El sensor es super didactico, permitiendo utilizar diferentes sistemas emebebidos, en nuestro caso ESP32.
  • Con pocas lineas de codigo se puede realizar mediciones desde nuestro sensor.

Recomendaciones:

  • Al momento de instalar el sensor revisar la version a utilizar, debido que tienen una diferencia considerable.



Comentarios

Popular Posts

▷ Especificaciones del módulo ESP32

▷ #ESP32 - REAL-TIME CLOCK #RTC INTERNO

▷ #ESP32 - SINCRONIZAR RTC INTERNO CON SERVIDOR NTP

▷ #ESP32 - Display OLED 128x64

▷ Sensor networks for agriculture based on #FPGA

▷ #ESP32 - INSTALAR LIBRERIAS DESDE GESTOR LIBRERIAS ARDUINO

▷ #ESP32 - Over-The-Air programming #OTA

▷ SISTEMAS EMBEBIDOS, PROYECTOS PROPUESTOS (2021 PAO1)

▷ IoT-Based Shrimp Pool Optimization with LoRa Technology

▷ Instalación de ALTIUM CircuitMaker y especificaciones del módulo ESP32