Đây là công tơ điện tử giá rẻ tôi sử dụng module PZEM004T kết hợp với ESP8266 và Home Assistant. Với chức năng nhắn tin qua Zalo nha.
NÚT RESET TỔNG SỐ ĐIỆN
Dùng để tạo một automation, khi đến ngày bên điện lực đi ghi số nó sẽ tự reset bộ đếm- platform: mqtt
name: "PZEM004T-EnergyReset3"
icon: mdi:restart
command_topic: "cmnd/DVES_005784/EnergyReset3"
qos: 1
payload_on: "0"
payload_off: "0"
TÍNH SỐ TIỀN
Để hiển thị số tiền phải trả dựa theo tổng số điện tiêu thụ. Cái này mình chưa nhân 10% VAT nhé
- platform: mqtt
name: "Tiền điện"
icon: mdi:cash-usd
state_topic: "tele/DVES_005784/SENSOR"
unit_of_measurement: "K"
value_template: >
{% set money_power_all_temp = value_json['ENERGY'].Total | float %}
{% set price0 = 1678 %}
{% set price50 = 1734 %}
{% set price100 = 2014 %}
{% set price200 = 2536 %}
{% set price300 = 2834 %}
{% set price400 = 2927 %}
{% if money_power_all_temp < 50 %}
{{ ((money_power_all_temp * price0)/1000)| round(0) }}
{% elif (money_power_all_temp >= 50 and money_power_all_temp < 100) %}
{{ ((50 * price0 + (money_power_all_temp - 50) * price50) / 1000)| round(0)}}
{% elif (money_power_all_temp >= 100 and money_power_all_temp < 200) %}
{{ ((50 * price0 + 50 * price50 + (money_power_all_temp - 100) * price100) / 1000)| round(0)}}
{% elif (money_power_all_temp >= 200 and money_power_all_temp < 300) %}
{{ ((50 * price0 + 50 * price50 + 100 * price100 + (money_power_all_temp - 200) * price200) / 1000)| round(0)}}
{% elif (money_power_all_temp >= 300 and money_power_all_temp < 400) %}
{{ ((50 * price0 + 50 * price50 + 100 * price100 + 100 * price200 + (money_power_all_temp - 300) * price300) / 1000)| round(0)}}
{% elif money_power_all_temp >= 400 %}
{{ ((50 * price0 + 50 * price50 + 100 * price100 + 100 * price200 + 100 * price300 + (money_power_all_temp - 179) * price400) / 1000)| round(0)}}
{% endif %}
CODE AUTOMATION TỰ RESET SỐ ĐIỆN VÀ GỬI THÔNG BÁO ĐẾN ZALO
- id: '1556158193313'
alias: Đếm lại số điện hàng tháng (ngày 12)
trigger:
- at: 01:00:00
platform: time
condition:
- condition: template
value_template: '{{ now().day == 12 }}'
action:
- data_template:
message: 'Số điện dùng trong tháng {{ now().month }} là: {{ states("sensor.pzem004t_total") }} kWh. Số tiền tạm tính là: {{ states("sensor.tien_dien") }} K.'
service_template: fbm_pusher.send
- data:
entity_id: switch.pzem004t_energyreset3
service: switch.turn_on
Đăng nhận xét