Cirkit Designer Logo
Cirkit Designer
Your all-in-one circuit design IDE
Home / 
Component Documentation

How to Use PZEM-016: Examples, Pinouts, and Specs

Image of PZEM-016
Cirkit Designer LogoDesign with PZEM-016 in Cirkit Designer

Introduction

The PZEM-016 is a multifunctional energy meter designed for monitoring and measuring key electrical parameters in AC circuits. Manufactured by PZEM, this device provides accurate readings of voltage, current, power, energy, and frequency. It is equipped with a digital display for real-time monitoring and supports UART communication for data logging and remote monitoring applications.

Explore Projects Built with PZEM-016

Use Cirkit Designer to design, explore, and prototype these projects online. Some projects support real-time simulation. Click "Open Project" to start designing instantly!
ESP32-Based Smart Environmental Monitoring System with Relay Control
Image of SOCOTECO: A project utilizing PZEM-016 in a practical application
This is a smart environmental monitoring and control system featuring an ESP32 microcontroller interfaced with a PZEM004T for power monitoring, relay modules for actuating bulbs and a fan, and an LCD for user interface. It includes flame, gas, and vibration sensors for safety monitoring purposes.
Cirkit Designer LogoOpen Project in Cirkit Designer
ESP32-Controlled AC Lighting System with Power Monitoring
Image of Smart Energy Meter: A project utilizing PZEM-016 in a practical application
This circuit features an ESP32 microcontroller interfaced with a PZEM004T power monitoring module and a 4-channel relay module controlling multiple AC LED bulbs. The ESP32 uses GPIO pins to control the relays, which in turn switch the LED bulbs on and off. The PZEM004T is connected to the ESP32 for communication and to a current sensor for monitoring power consumption of the connected load through the relay contacts.
Cirkit Designer LogoOpen Project in Cirkit Designer
ESP32-Based Smart Power Monitoring and Control System with Wi-Fi Connectivity
Image of SIM: A project utilizing PZEM-016 in a practical application
This circuit is a smart power monitoring and control system using an ESP32 microcontroller. It features multiple sensors and components, including PZEM-004T AC modules for voltage and current measurement, DS18B20 temperature sensors, an LCD for display, and solid-state relays for controlling power outlets. The system is integrated with Blynk for remote monitoring and control, and includes pushbuttons for local interaction.
Cirkit Designer LogoOpen Project in Cirkit Designer
ESP8266 NodeMCU Based Energy Monitoring Display with PZEM004T and OLED Screen
Image of Energy Consumption Monitoring: A project utilizing PZEM-016 in a practical application
This circuit is designed to monitor electrical parameters using the PZEM004t sensor and display the data on a 0.96" OLED screen. The esp8266 nodemcu serves as the central controller, interfacing with the PZEM004t sensor via serial communication (RX/TX) and with the OLED display through an I2C connection (SCK/SDA). A 5V adapter provides power to the circuit, with the nodemcu regulating down to 3.3V for the OLED display and the PZEM004t sensor receiving 5V directly.
Cirkit Designer LogoOpen Project in Cirkit Designer

Explore Projects Built with PZEM-016

Use Cirkit Designer to design, explore, and prototype these projects online. Some projects support real-time simulation. Click "Open Project" to start designing instantly!
Image of SOCOTECO: A project utilizing PZEM-016 in a practical application
ESP32-Based Smart Environmental Monitoring System with Relay Control
This is a smart environmental monitoring and control system featuring an ESP32 microcontroller interfaced with a PZEM004T for power monitoring, relay modules for actuating bulbs and a fan, and an LCD for user interface. It includes flame, gas, and vibration sensors for safety monitoring purposes.
Cirkit Designer LogoOpen Project in Cirkit Designer
Image of Smart Energy Meter: A project utilizing PZEM-016 in a practical application
ESP32-Controlled AC Lighting System with Power Monitoring
This circuit features an ESP32 microcontroller interfaced with a PZEM004T power monitoring module and a 4-channel relay module controlling multiple AC LED bulbs. The ESP32 uses GPIO pins to control the relays, which in turn switch the LED bulbs on and off. The PZEM004T is connected to the ESP32 for communication and to a current sensor for monitoring power consumption of the connected load through the relay contacts.
Cirkit Designer LogoOpen Project in Cirkit Designer
Image of SIM: A project utilizing PZEM-016 in a practical application
ESP32-Based Smart Power Monitoring and Control System with Wi-Fi Connectivity
This circuit is a smart power monitoring and control system using an ESP32 microcontroller. It features multiple sensors and components, including PZEM-004T AC modules for voltage and current measurement, DS18B20 temperature sensors, an LCD for display, and solid-state relays for controlling power outlets. The system is integrated with Blynk for remote monitoring and control, and includes pushbuttons for local interaction.
Cirkit Designer LogoOpen Project in Cirkit Designer
Image of Energy Consumption Monitoring: A project utilizing PZEM-016 in a practical application
ESP8266 NodeMCU Based Energy Monitoring Display with PZEM004T and OLED Screen
This circuit is designed to monitor electrical parameters using the PZEM004t sensor and display the data on a 0.96" OLED screen. The esp8266 nodemcu serves as the central controller, interfacing with the PZEM004t sensor via serial communication (RX/TX) and with the OLED display through an I2C connection (SCK/SDA). A 5V adapter provides power to the circuit, with the nodemcu regulating down to 3.3V for the OLED display and the PZEM004t sensor receiving 5V directly.
Cirkit Designer LogoOpen Project in Cirkit Designer

Common Applications and Use Cases

  • Industrial Automation: Monitoring power consumption in industrial equipment.
  • Home Energy Management: Tracking household energy usage for efficiency.
  • Renewable Energy Systems: Measuring output from solar inverters or wind turbines.
  • Data Logging: Collecting electrical data for analysis and reporting.
  • Remote Monitoring: Integrating with microcontrollers or IoT systems for remote energy monitoring.

Technical Specifications

The following table outlines the key technical specifications of the PZEM-016:

Parameter Specification
Voltage Range 80V - 260V AC
Current Range 0A - 100A (requires external current transformer)
Power Range 0W - 22kW
Energy Range 0kWh - 9999kWh
Frequency Range 45Hz - 65Hz
Communication Interface UART (9600 baud rate)
Power Supply 5V DC (via UART interface)
Accuracy ±0.5%
Operating Temperature -10°C to 60°C
Dimensions 96mm x 58mm x 24mm

Pin Configuration and Descriptions

The PZEM-016 has a simple pinout for both power and communication. The table below describes the pin configuration:

Pin Name Description
V+ AC voltage input (live wire)
V- AC voltage input (neutral wire)
I+ Current transformer input (live wire)
I- Current transformer input (neutral wire)
TX UART transmit pin (connect to RX of microcontroller)
RX UART receive pin (connect to TX of microcontroller)
GND Ground (common ground for UART and power supply)
5V 5V DC power input for the module

Usage Instructions

How to Use the PZEM-016 in a Circuit

  1. Connect the Voltage Input:
    • Connect the V+ pin to the live wire of the AC circuit.
    • Connect the V- pin to the neutral wire of the AC circuit.
  2. Connect the Current Transformer (CT):
    • Attach the CT to the live wire of the AC circuit.
    • Connect the CT's output wires to the I+ and I- pins of the PZEM-016.
  3. Power the Module:
    • Provide a 5V DC power supply to the 5V and GND pins.
  4. Connect to a Microcontroller (Optional):
    • Use the TX and RX pins to connect the PZEM-016 to a microcontroller (e.g., Arduino UNO) for UART communication.

Important Considerations and Best Practices

  • Safety First: Always ensure the circuit is powered off before making connections to avoid electric shock.
  • Current Transformer Placement: Ensure the CT is clamped around the live wire only, not both live and neutral wires.
  • UART Communication: Use a logic level converter if your microcontroller operates at 3.3V logic levels.
  • Power Supply: Use a stable 5V DC power source to avoid communication errors or inaccurate readings.
  • Calibration: The PZEM-016 is pre-calibrated, but you can recalibrate it if necessary using the manufacturer's instructions.

Example Code for Arduino UNO

Below is an example Arduino sketch to read data from the PZEM-016 using UART communication:

#include <SoftwareSerial.h>

// Define RX and TX pins for SoftwareSerial
SoftwareSerial pzemSerial(10, 11); // RX = pin 10, TX = pin 11

void setup() {
  Serial.begin(9600); // Initialize Serial Monitor
  pzemSerial.begin(9600); // Initialize UART communication with PZEM-016

  Serial.println("PZEM-016 Energy Meter Example");
}

void loop() {
  // Request data from PZEM-016
  byte request[] = {0x01, 0x04, 0x00, 0x00, 0x00, 0x0A, 0x70, 0x0D};
  pzemSerial.write(request, sizeof(request));

  delay(100); // Wait for response

  // Read response from PZEM-016
  if (pzemSerial.available()) {
    Serial.print("Data received: ");
    while (pzemSerial.available()) {
      byte data = pzemSerial.read();
      Serial.print(data, HEX);
      Serial.print(" ");
    }
    Serial.println();
  }

  delay(1000); // Wait 1 second before next request
}

Note: The above code sends a Modbus RTU request to the PZEM-016 and prints the raw response. You will need to parse the response to extract voltage, current, power, etc., based on the Modbus protocol.

Troubleshooting and FAQs

Common Issues and Solutions

  1. No Data Received via UART:

    • Ensure the TX and RX pins are correctly connected (crossed: TX to RX, RX to TX).
    • Verify the baud rate is set to 9600 in your code.
    • Check the power supply to the PZEM-016.
  2. Inaccurate Readings:

    • Ensure the current transformer is properly clamped around the live wire.
    • Verify that the voltage input connections (V+ and V-) are secure.
  3. Communication Errors:

    • Use shorter UART cables to reduce noise.
    • Ensure a common ground between the PZEM-016 and the microcontroller.
  4. Module Not Powering On:

    • Check the 5V power supply for proper voltage and current output.
    • Inspect the wiring for loose or incorrect connections.

FAQs

Q: Can the PZEM-016 measure DC circuits?
A: No, the PZEM-016 is designed specifically for AC circuits and cannot measure DC parameters.

Q: Can I use the PZEM-016 with a Raspberry Pi?
A: Yes, but you will need a USB-to-UART adapter or GPIO UART pins and a logic level converter if the Raspberry Pi operates at 3.3V logic.

Q: How do I reset the energy counter?
A: The energy counter can be reset via a specific Modbus command. Refer to the manufacturer's Modbus protocol documentation for details.

Q: Is the PZEM-016 waterproof?
A: No, the PZEM-016 is not waterproof and should be used in a dry environment.