hzcoolwind 发表于 2024-3-15 11:09:39

带实时年度阶梯电价和峰谷电统计的培正ESPHOME

本帖最后由 hzcoolwind 于 2024-4-26 10:17 编辑

24.03.19 更新:
1. 增加设置国网/培正表读数比例,以便更精准计算年用电量,准确切换阶梯电价, 我这边这个比值大概是0.992, 不加这个参数,3000度会跟国网误差24度
2. 修正峰谷统计时间点,误差从1分钟缩短到1秒,峰谷合计跟表统计值基本无误差
3. 增加对今日,本月峰谷电统计记忆值清0按钮,多次改程序烧写后,原先记忆的数据恢复可能产生混乱,可以一键清0,重新统计。
4. 修复几个小bug





最近看版里电能能源比较火热,心痒痒就下单了一个 pzem-004 , 带外壳的,TTL电平,MODBUS通讯协议,官方旗舰店买的,实付不到30元。

参考了前人大佬的经验拿到手首先把RX短限流电阻从1K改470欧,以适配ESP的3.3V电压。 培正放电表箱,接口线引至弱电箱,跟ESP32开发板通过接插件连接, 电源取自弱电箱,方便ESP32开发版取下或替换。电路相当简洁。

安装过程中,有点小插曲,培正接的220V, 一开始一头接在入户火线上, 一头接在总空气开关后的地线上, 跨越了空气开关, 导致空气开关合不上, 一度怀疑空开坏了,后来才想到跨空气开关,空气开关认为漏电了,所以合不上。

ESPHOME 参考了jjcs 的思路,在此感谢:
https://bbs.hassbian.com/thread-24441-1-1.html

重写了一个,可读性应该高不少,目前实现了:
1. 可以输出实时阶梯电价(包括整年电量阶梯价格实时切换)和培正测量基础数据
2. 可以年用电量校正 (手工录入年度用电量偏移值,用于阶梯电价计算)
3. 实时统计峰谷电量,峰谷电费
4. 有上月电量、上月峰谷电量,上月峰谷电费
5. 有昨日电量、昨日峰谷电量,昨日峰谷电费
6. 有本月电量、本月峰谷电量,本月峰谷电费
7. 有今日电量、今日峰谷电量,今日峰谷电费
8. 关键数据Flash保存,1分钟保存一次, 失电不丢失。9. 自带HA蓝牙代理,充分利用ESP32资源,不浪费。








目前运行第二天,估计还有不少bug,欢迎大家提宝贵意见。 这里须提一下这个年度电量的输入,可以校正到跟国网电力统计的年度用量一致,以便准确切换阶梯电价, 原则就是 实际年度电量= 输入校正的年度电量+ 培正电表的度数 。

现在就是对固件中 modbus的处理时间比较不舒服, 培正的通讯数据发出才 8个字节和 响应25个字节,modbus处理时间却需要0.08秒,打算下一步取消pzemac 组件,直接uart通讯处理, 这几个字节数据处理应该不会超过10ms





后续:改成uart直接通讯, 取消pzemac,modbus 组件后, log提示 uart 耗时0.08秒, 看来还是通讯卡了, 改了没啥用, yaml就不贴上来了。



jjcs 发表于 2024-3-15 15:05:16

{现在就是对固件中 modbus的处理时间比较不舒服, 培正的通讯数据发出才 8个字节和 响应25个字节,modbus处理时间却需要0.08秒,打算下一步取消pzemac 组件,直接uart通讯处理, 这几个字节数据处理应该不会超过10ms},官方的培正组件有点问题把

hzcoolwind 发表于 2024-3-15 16:18:54

jjcs 发表于 2024-3-15 15:05
{现在就是对固件中 modbus的处理时间比较不舒服, 培正的通讯数据发出才 8个字节和 响应25个字节,modbus处 ...

培正组件没啥问题,modbus应该也没啥问题,就是uart 组件花的时间长了, 我把pzemac和modbus都不用, 直接uart通讯直接解码,情况一样, 时间都花在uart上了。

jjcs 发表于 2024-3-15 23:28:46

每日谷峰的计算正常吗,这玩意得连续测试一个月,才知道准不准,加上累计运行传感器,看看esp是否有重启情况:Q

sorrypqa 发表于 2024-3-16 12:31:33

谢谢分享!传感器好复杂,看得眼花缭乱

sorrypqa 发表于 2024-3-16 15:22:08

jjcs 发表于 2024-3-15 23:28
每日谷峰的计算正常吗,这玩意得连续测试一个月,才知道准不准,加上累计运行传感器,看看esp是否有重启情 ...

他用的是ESP32,可以随便搓,这货几乎看不到异常重启的

csl0524 发表于 2024-3-16 16:18:03

日志的配置中加上这句可能就不卡了,别问我为什么,我也不知道,之前问AI告诉我的
baud_rate: 0

hzcoolwind 发表于 2024-3-16 22:32:36

csl0524 发表于 2024-3-16 16:18
日志的配置中加上这句可能就不卡了,别问我为什么,我也不知道,之前问AI告诉我的
baud_rate: 0 ...

试了,esp32没啥用, 8266应该有用,8266 只有1个硬UART,禁了log,通讯就会用硬UART,不然用的软UART, esp32 有3个硬uart

hzcoolwind 发表于 2024-3-16 22:37:01

jjcs 发表于 2024-3-15 23:28
每日谷峰的计算正常吗,这玩意得连续测试一个月,才知道准不准,加上累计运行传感器,看看esp是否有重启情 ...

把峰谷计算改在每次 59秒时统计计算了, 0点复位, 应该误差进一步从1分钟缩到1秒了,慢慢再观察观察,大致还可以,前2天统计出来 峰谷合计 每天跟表读数1天的用量差值在0.004左右

jjcs 发表于 2024-3-18 15:02:16

大佬可以发下ha前端的中文yaml文件吗
页: [1] 2 3 4
查看完整版本: 带实时年度阶梯电价和峰谷电统计的培正ESPHOME