『瀚思彼岸』» 智能家居技术论坛

 找回密码
 立即注册
查看: 1612|回复: 37

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

[复制链接]

15

主题

194

帖子

1952

积分

论坛技术达人

积分
1952
金钱
1738
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, 下载次数: 33, 售价: 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!

查看全部评分

回复

使用道具 举报

41

主题

1303

帖子

5358

积分

论坛元老

Rank: 8Rank: 8

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

使用道具 举报

15

主题

194

帖子

1952

积分

论坛技术达人

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

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

使用道具 举报

41

主题

1303

帖子

5358

积分

论坛元老

Rank: 8Rank: 8

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

使用道具 举报

50

主题

1300

帖子

4919

积分

论坛DIY达人

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

使用道具 举报

50

主题

1300

帖子

4919

积分

论坛DIY达人

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

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

使用道具 举报

17

主题

161

帖子

1408

积分

金牌会员

Rank: 6Rank: 6

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

使用道具 举报

15

主题

194

帖子

1952

积分

论坛技术达人

积分
1952
金钱
1738
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
回复

使用道具 举报

15

主题

194

帖子

1952

积分

论坛技术达人

积分
1952
金钱
1738
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 高手,这是高手!

查看全部评分

回复

使用道具 举报

41

主题

1303

帖子

5358

积分

论坛元老

Rank: 8Rank: 8

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

使用道具 举报

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

本版积分规则

Archiver|手机版|小黑屋|Hassbian

GMT+8, 2024-5-6 09:47 , Processed in 1.592524 second(s), 36 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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