做了个三相电量采集器开源出来,可以方便监测家里用电情况

Built a 3-phase power monitor that measures 3-phase current, voltage, power, power factor and energy consumption; data is uploaded to HomeAssistant for easy household power and real-time load viewing.

Three pzem004t power sensors read via serial to an ESP32-C3, then sent over Wi-Fi to HomeAssistant (self-hosted on my Raspberry Pi 4); firmware is built with ESPHome.

The board only measures phase-to-neutral voltage, not phase-to-phase voltage.

Voltage range 80-260V, current 100A, accuracy 0.5%.

You must use the PC tool to set the three PZEM-004T addresses to 0x01, 0x02, 0x03.

High voltage inside—power down before any work!

Google “HomeAssistant + ESPHome setup” for install guides.

Electronics/MCU QQ group: 2169025065

Hardware Photos

Screenshots

Schematic

PCB

3D Enclosure

Download Files

LCSC open-source project: https://oshwhub.com/zeruns/san-xiang-dian-liang-dian-can-shu-shu-ju-cai-ji-san-xiang-dian-ya-dian-liu-gong-lv-gong-lv-yin-shu-yong-dian-liang

123 Pan (no speed limit): https://url.zeruns.com/PbpP8 code: jjRr

Baidu Pan: https://pan.baidu.com/s/1XCi1AY6M1G0weNuuVJu01w?pwd=qhrc code: qhrc

Contents: enclosure 3D model, Gerber files, LCSC EDA project, PZEM-004T datasheet, PC config tool, ESPHome YAML.

Parts Purchase Links

  • Heltec CORE-ESP32C3 dev board: https://s.click.taobao.com/GsKSHxt

  • PZEM-004T module: https://s.click.taobao.com/cnHOHxt

  • HLK-10M05 PSU module: [https://s.click.taobao.com/quMNHxt](https://s.click.taobao.com/t?e=m%3D2%26s%3DdgAv%2FU%2B0Jvpw4vFB6t2Z2ueEDrYVVa64g3vZOarmkFi53hKxp7mNFhiPRfK6WZZbPvCh%2BAMbllz0JlhLk0Jl4QTquP0kWxBLBDnvz6xo38xspWc9%2BCL4bTGF1ceZMhPo8mL8HhJ3EdVrH4ks4QyiY4z4rjZDGVMAhscfsB2%2FyzZJq71CBMBeP%2F1SarTXhIOTsgIpc1WFZiJNubylQlnZt807FCyqLnQjr%2FIFy6BLaQXtIDT%2FPaQayIIokmpNksd4gPqhkjnepafUPBOmDY6Pj6M70AliNjwJcn7ARWQ6ocV0hb0k2TPv%2BG5KHOQOD12OHmQRHplSunscOSzLfn7zzMYl7w3%2FA2kb&union_lens=lensId%3APUB%401709028105%40210591aa_0d23_18dea035bce_- platform: pzemac
    id: pzemac_C
    address: 0x03
    current:
    name: “C-Current” # Current sensor name
    voltage:
    name: “C-Voltage” # Voltage sensor name
    energy:
    name: “C-Energy” # Energy sensor name
    power:
    name: “C-Power” # Power sensor name
    id: C_POWER
    frequency:
    name: “C-Frequency” # Frequency sensor name
    power_factor:
    name: “C-PowerFactor” # Power factor sensor name
    update_interval: 11s # Update interval is 11 seconds

    • platform: wifi_signal # Reports the WiFi signal strength/RSSI in dB
      name: “WiFi Signal dB”
      id: wifi_signal_db
      update_interval: 60s
      entity_category: “diagnostic”

    • platform: copy # Reports the WiFi signal strength in %
      source_id: wifi_signal_db
      name: “WiFi Signal Percent”
      filters:

      • lambda: return min(max(2 * (x + 100.0), 0.0), 100.0);
        unit_of_measurement: “Signal %”
        entity_category: “diagnostic”
        device_class: “”

status_led:
pin: GPIO8

time:

  • platform: sntp
    id: current_time
    timezone: Asia/Shanghai
    servers:
    • ntp.aliyun.com
    • ntp.tencent.com
    • stdtime.gov.hk
      on_time:
    • seconds: 0
      minutes: 0
      hours: 0
      days_of_month: 1
      then:
      • pzemac.reset_energy: pzemac_A # Reset energy counter for sensor A at 00:00:00 on the first day of each month
      • pzemac.reset_energy: pzemac_B # Reset energy counter for sensor B at 00:00:00 on the first day of each month
      • pzemac.reset_energy: pzemac_C # Reset energy counter for sensor C at 00:00:00 on the first day of each month
        on_time_sync:
        then:
      • logger.log: “Synchronized system clock”

## Other Recommended Open-Source Projects

- STM32F030C8T6 Minimum System Board and Running Light (Schematic and PCB): [https://blog.zeruns.com/archives/715.html](https://blog.zeruns.com/archives/715.html)
- Drew an MSP430F149 Minimum System Board and Open-Sourced It: [https://blog.zeruns.com/archives/713.html](https://blog.zeruns.com/archives/713.html)
- 2007 Power Supply Contest Problem: 30–36 V Adjustable Boost DC-DC Module (UC3843): [https://oshwhub.com/zeruns/36v-sheng-ya-dcdc-mo-kuai-uc3842](https://oshwhub.com/zeruns/36v-sheng-ya-dcdc-mo-kuai-uc3842)
- STC12C5A60S2 Minimum System Board / 51 MCU Temperature Display and Temperature-Controlled Fan: [https://blog.zeruns.com/archives/721.html](https://blog.zeruns.com/archives/721.html)
- STM32F407 Standard Library Project Template with Ported U8g2 Graphics Library: [https://blog.zeruns.com/archives/722.html](https://blog.zeruns.com/archives/722.html)
- Qinheng CH32V307VCT6 Minimum System Board Open-Sourced: [https://blog.zeruns.com/archives/726.html](https://blog.zeruns.com/archives/726.html)
- LM25118 Auto Buck-Boost Adjustable DC-DC Power Module: [https://blog.zeruns.com/archives/727.html](https://blog.zeruns.com/archives/727.html)
- EG1164 High-Power Synchronous Rectification Boost Module Open-Sourced, Up to 97% Efficiency: [https://blog.zeruns.com/archives/730.html](https://blog.zeruns.com/archives/730.html)
- 4G Environmental Monitoring Node Based on Luat Air700E (Temperature, Humidity, Barometric Pressure, etc.) Uploading to Alibaba Cloud IoT Platform via MQTT: [https://blog.zeruns.com/archives/747.html](https://blog.zeruns.com/archives/747.html)

## Recommended Articles

- **Cost-Effective and Cheap VPS/Cloud Server Recommendations:** [https://blog.zeruns.com/archives/383.html](https://blog.zeruns.com/archives/383.html)
- Minecraft Server Setup Tutorial: [https://blog.zeruns.com/tag/mc/](https://blog.zeruns.com/tag/mc/)
- Sharing My Home Network Cabinet, Home Network Equipment Recommendations: [https://blog.zeruns.com/archives/732.html](https://blog.zeruns.com/archives/732.html)
- Orange Pi 3B (RK3566) Development Board Unboxing and Review: [https://blog.zeruns.com/archives/729.html](https://blog.zeruns.com/archives/729.html)
- Upgraded My PC, Changed Graphics Card to Yeston RTX3070: [https://blog.zeruns.com/archives/746.html](https://blog.zeruns.com/archives/746.html)
- Rain Cloud GPU Server Tutorial for Setting Up SD (Stable Diffusion), Build Your Own AI Art Website: [https://blog.zeruns.com/archives/768.html](https://blog.zeruns.com/archives/768.html)