找回密码
 立即注册
查看: 8921|回复: 48

[经验分享] 带实时年度阶梯电价和峰谷电统计的培正ESPHOME

[复制链接]

16

主题

216

回帖

2555

积分

论坛技术达人

积分
2555
金钱
2303
HASS币
40
发表于 2024-3-15 11:09:39 | 显示全部楼层 |阅读模式
本帖最后由 hzcoolwind 于 2024-4-26 10:17 编辑

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

powermeter.yaml (21.57 KB, 下载次数: 127, 售价: 3 金钱)



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

参考了前人大佬的经验拿到手首先把RX短限流电阻从1K改470欧,以适配ESP的3.3V电压。 培正放电表箱,接口线引至弱电箱,跟ESP32开发板通过接插件连接, 电源取自弱电箱,方便ESP32开发版取下或替换。电路相当简洁。
微信图片_20240315103849.jpg
安装过程中,有点小插曲,培正接的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资源,不浪费。

微信图片_20240314230651.png
微信图片_20240315094337.png





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

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

微信图片_20240315110647.png



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


评分

参与人数 6金钱 +63 收起 理由
1252 + 5 早就看TASMOTA不顺眼了,这下终于可以用ESP.
dscao + 10 感谢楼主分享!
book123 + 10 感谢楼主分享!
jjcs + 12 高手,这是高手!
flyice + 10 感谢楼主分享!
sorrypqa + 16 大神666!

查看全部评分

回复

使用道具 举报

jjcs 手机认证

51

主题

1918

回帖

7761

积分

论坛元老

积分
7761
金钱
5782
HASS币
40
发表于 2024-3-15 15:05:16 | 显示全部楼层
{现在就是对固件中 modbus的处理时间比较不舒服, 培正的通讯数据发出才 8个字节和 响应25个字节,modbus处理时间却需要0.08秒,打算下一步取消pzemac 组件,直接uart通讯处理, 这几个字节数据处理应该不会超过10ms},官方的培正组件有点问题把
折腾精神永存,感恩感谢论坛每一位愿意分享和帮助过我的大佬,论坛有你更精彩
回复

使用道具 举报

16

主题

216

回帖

2555

积分

论坛技术达人

积分
2555
金钱
2303
HASS币
40
 楼主| 发表于 2024-3-15 16:18:54 | 显示全部楼层
jjcs 发表于 2024-3-15 15:05
{现在就是对固件中 modbus的处理时间比较不舒服, 培正的通讯数据发出才 8个字节和 响应25个字节,modbus处 ...

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

使用道具 举报

jjcs 手机认证

51

主题

1918

回帖

7761

积分

论坛元老

积分
7761
金钱
5782
HASS币
40
发表于 2024-3-15 23:28:46 | 显示全部楼层
每日谷峰的计算正常吗,这玩意得连续测试一个月,才知道准不准,加上累计运行传感器,看看esp是否有重启情况
折腾精神永存,感恩感谢论坛每一位愿意分享和帮助过我的大佬,论坛有你更精彩
回复

使用道具 举报

55

主题

1401

回帖

6303

积分

论坛DIY达人

积分
6303
金钱
4847
HASS币
30
发表于 2024-3-16 12:31:33 | 显示全部楼层
谢谢分享!传感器好复杂,看得眼花缭乱
回复

使用道具 举报

55

主题

1401

回帖

6303

积分

论坛DIY达人

积分
6303
金钱
4847
HASS币
30
发表于 2024-3-16 15:22:08 | 显示全部楼层
jjcs 发表于 2024-3-15 23:28
每日谷峰的计算正常吗,这玩意得连续测试一个月,才知道准不准,加上累计运行传感器,看看esp是否有重启情 ...

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

使用道具 举报

17

主题

185

回帖

2050

积分

金牌会员

积分
2050
金钱
1848
HASS币
0
发表于 2024-3-16 16:18:03 | 显示全部楼层
日志的配置中加上这句可能就不卡了,别问我为什么,我也不知道,之前问AI告诉我的
baud_rate: 0
回复

使用道具 举报

16

主题

216

回帖

2555

积分

论坛技术达人

积分
2555
金钱
2303
HASS币
40
 楼主| 发表于 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
回复

使用道具 举报

16

主题

216

回帖

2555

积分

论坛技术达人

积分
2555
金钱
2303
HASS币
40
 楼主| 发表于 2024-3-16 22:37:01 | 显示全部楼层
jjcs 发表于 2024-3-15 23:28
每日谷峰的计算正常吗,这玩意得连续测试一个月,才知道准不准,加上累计运行传感器,看看esp是否有重启情 ...

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

评分

参与人数 1金钱 +12 收起 理由
jjcs + 12 高手,这是高手!

查看全部评分

回复

使用道具 举报

jjcs 手机认证

51

主题

1918

回帖

7761

积分

论坛元老

积分
7761
金钱
5782
HASS币
40
发表于 2024-3-18 15:02:16 | 显示全部楼层
大佬可以发下ha前端的中文yaml文件吗
折腾精神永存,感恩感谢论坛每一位愿意分享和帮助过我的大佬,论坛有你更精彩
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|Hassbian

GMT+8, 2025-5-1 20:29 , Processed in 1.314606 second(s), 27 queries .

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

快速回复 返回顶部 返回列表