Peacefair PZEM-004T V3
PZEM-004T V3 是一款交流电能监控模块,支持测量 80-260 V 电压、最大 100 A 电流及功率、电能、频率和功率因数(datasheet [存档]),通过 RS-485 串口 Modbus 协议通讯。
从 AliExpress 以 €8.17 包邮购入,为了安装方便,测量电流的互感器选用可开闭的非侵入式(一般称作 CT clamp
):
硬件
电路十分简单。由于 PZEM 使用无源串口,需要外部提供 +5 V 供电,为了方便直接选用集成了 USB 5 V 转 3.3 V 供电电路的 WeMos D1 mini 模块而不是裸 ESP-12F。
另外需要加上一个电平转换器将 PZEM 的 5 V TTL 转为 ESP 接受的 3.3 V。
电压探头可以用一个普通插头做,插到墙上插座;或者和电流探头一起进配电箱,然后直接接到空气开关上。
完整的电路板、PZEM 及电压探头(普通插头):
电路板上的继电器是为未来的公寓大门远程开关项目准备的
电流探头安装
⚡ 高压危险!注意安全 ⚡
先给电流互感器焊上延长线。
拆下配电箱面板,找到入户总火线或零线(通常是最粗的,连着总空气开关),将电流互感器钳上:
装回面板,将电流互感器导线从缺口处引出:
按照 PZEM 模块外壳上印着的说明,分别连接好电压和电流探头,然后给 ESP 模块连上电源,完成:
软件
ESPHome 配置示例:
substitutions:
device_name: '电能表'
esphome:
name: energy-meter
comment: 'PZEM-004T 电能监控'
esp8266:
board: d1_mini
logger:
level: WARN
# baud_rate: 115200
wifi:
fast_connect: true
networks:
- ssid: !secret wifi_ssid
bssid: !secret wifi_bssid
password: !secret wifi_password
domain: !secret domain_name
api:
ota:
password: !secret ota_password
button:
# 硬重启
- platform: restart
id: restart_button
name: '重启 ${device_name}'
entity_category: diagnostic
# 重置 PZEM 内置总功耗统计
- platform: template
name: '重置 PZEM-004T 总功耗统计'
entity_category: diagnostic
on_press:
then:
- pzemac.reset_energy: pzemac_1
icon: mdi:numeric-0-circle-outline
status_led:
pin:
number: 2
inverted: true
uart: # 启用软件 UART
tx_pin: 5
rx_pin: 4
baud_rate: 9600
modbus: # 启用 Modbus hub
sensor:
- platform: pzemac
id: pzemac_1
address: 1 # 连有多个 PZEM 时自定义 Modbus 地址
current:
name: '电流'
accuracy_decimals: 3
voltage:
name: '电压'
accuracy_decimals: 1
power:
name: '功率'
accuracy_decimals: 1
energy:
name: '电能'
# 转换成 kWh
filters:
- multiply: 0.001
unit_of_measurement: 'kWh'
accuracy_decimals: 3
frequency:
name: '频率'
accuracy_decimals: 1
power_factor:
name: '功率因数'
accuracy_decimals: 2
update_interval: 30s
之后在 Home Assistant 接入设备,即可在电能监测平台直接选取 sensor.energy
作为数据源:
如果想添加概览卡片到 lovelace,可以先用 YAML 配置两个 utility_meter
传感器:
energy_monthly: # 每月用电量
source: sensor.energy
cycle: monthly
energy_daily: # 每日用电量
source: sensor.energy
cycle: daily
然后添加一个 lovelace 概览卡片:
type: glance
title: 用电
show_icon: true
show_state: true
state_color: false
entities:
- entity: sensor.power
- entity: sensor.energy_daily
name: 当日
- entity: sensor.energy_monthly
name: 当月
0 Comments