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

 找回密码
 立即注册
查看: 16019|回复: 141

[硬件DIY] 【小白首发】ESPhome自制WIFI多路电量表

  [复制链接]

16

主题

201

帖子

1584

积分

论坛DIY达人

积分
1584
金钱
1378
HASS币
20
发表于 2023-3-5 21:11:16 | 显示全部楼层 |阅读模式
本帖最后由 polisher 于 2023-4-12 09:47 编辑

一、背景
家里的配电箱共计6路,一直想获得实时用电情况,奈何市面上竟然找不到适用的产品。
才玩HA不久,论坛瞎逛中深受启发,于是产生用ESPhome自制一个多路电量检测的想法,通过不断的抄袭官方资料和剽窃各位大神的代码,终于做出了样机并通电测试完成。
奈何本人不懂C++、python,没有电路和PCB设计经验,英文也很烂,必须赶紧把这种拼凑出来的东西奉上,期盼各位大神不吝赐教,以便进一步完善。
二、成品
外壳采用某宝的ABS塑料导轨壳体,可以很方便的装在家里的配电箱中,且与配电箱中的空气开关浑然一体。只需将空气开关下端的电线串过电流互感器即可。如果觉得串线不方便,也可以使用开合式电流互感器,但价格要贵一些。
1.jpg

可测量电压、电流、频率、芯片温度、功率、电量等等。
2.jpg
三、原理
采用上海贝岭生产的BL0906(六相交/直流电能计量芯片)测量电参数,如果您觉得六路通道不够用,可以采用BL0910(10个通道),通过ESP8266作为MCU通过串口发送指令给BL0906,轮询或校正电参数,同时将电参数发送给homeassistant.
3.png
由于ESPhome并不直接支持BL0906芯片,于是在论坛翻案例,终于东拼西凑出一个外部组件。
电路图BL0906官方文档,点击这里
4.png
PCB
5.png
以上电路图和PCB均使用立创EDA制作,工程详情可在立创开源硬件平台直接访问(点击这里
四、材料分享
序号
名称
型号
单价(元)
1
六相交流电能计量芯片
BL0906
21.29
2
电压互感器(1:1)
HPT205NBJ-1
10.94
3
AC-DC降压电源模块
HLK-PM03
10.20
4
ESP8266WIFI模块
ESP-12F
8.80
5
螺钉式接线端子
DB302-5.0-2P-GN-S
1.1847
6
插拔式接线端子(插头+弯针)
2EDG-2.54
4.68
7
直插排针
间距2.54mm
0.14
8
电流互感器(2000: 1)
BK-QBCT501-5
3.90
9
卡轨式壳体(点击这里)
4-05-4灰白
1.60
10
轻触开关
SMD,6x6mm
2.50
11
各种贴片电阻电容
规格参看电路图
0.22
五、组件
组件安装:只需把压缩包中的目录解出来放置于ESPhome目录中即可,关于外部组件的使用可参看HA官方文档(点击这里)
组件包含bl0906.cpp、bl0906.h、sensor.py文件。
如需对电量表的测量值进行校正,可打开bl0906.cpp文件,在BL0906::setup()中进行校正。校正函数有Bias_correction和gain_correction,分别为偏置校正和增益校正,由于本人手里没有专业设备,也只是简单校正就完事了,呵呵。
mycomponents.rar (5.54 KB, 下载次数: 200)
六、meter.yaml
esphome:
  name: meter

esp8266:
  board: esp01_1m

# Enable logging
logger:
  baud_rate: 0
  # level:  NONE
# Enable Home Assistant API
api:
  encryption:
    key: "8o5uVbBcX6HInU2yxGLCqLQ8bmAobqJ55cxpj4FTtHw="

ota:
  password: "655623c399338f280a91e4cd4770bec3"

wifi:
  ssid: !secret wifi_ssid
  password: !secret wifi_password

  # Enable fallback hotspot (captive portal) in case wifi connection fails
  ap:
    ssid: "Meter Fallback Hotspot"
    password: "6SfKbzLuv3f8"

captive_portal:
  
external_components:
  - source: mycomponents
      
uart:
  tx_pin: GPIO1
  rx_pin: GPIO3
  baud_rate: 19200
  id: utt2
  
sensor:
  - platform: bl0906
    #update_interval: 60s   
    Frequency:
      name: 'Frequency'
    Temperature:
      name: 'Temperature'
    Voltage:
      name: 'Voltage'
    Current_1:
      name: 'Current_1'    
    Current_2:
      name: 'Current_2'    
    Current_3:
      name: 'Current_3'    
    Current_4:
      name: 'Current_4'    
    Current_5:
      name: 'Current_5'    
    Current_6:
      name: 'Current_6'  
    Power_1:
      name: 'Power_1'
    Power_2:
      name: 'Power_2'
    Power_3:
      name: 'Power_3'
    Power_4:
      name: 'Power_4'
    Power_5:
      name: 'Power_5'      
    Power_6:
      name: 'Power_6'
    #Power_sum:
    #  name: 'Power_sum'      
    Energy_1: 
      name: 'Energy_1'
    Energy_2: 
      name: 'Energy_2'
    Energy_3: 
      name: 'Energy_3'
    Energy_4: 
      name: 'Energy_4'
    Energy_5: 
      name: 'Energy_5'
    Energy_6: 
      name: 'Energy_6' 
    #Energy_sum: 
    #  name: 'Energy_sum' 


mycomponents.rar

5.54 KB, 下载次数: 84

BL0906组件

评分

参与人数 13金钱 +117 HASS币 +20 收起 理由
cym9007 + 5 感谢楼主分享!
zad + 5 膜拜大神!
baiqianlover + 5
pengguilian + 5 大神666!
zwd + 2 楼主, 我看8266板子上有LCD的接口。 你用.
warmsake + 5 感谢楼主分享!
firewater + 10 高手,这是高手!
depboy + 12 高手,这是高手!
隔壁的王叔叔 + 10 高手,这是高手!
trz0332 + 16 高手,这是高手!
sorrypqa + 10 大神666!
jjcs + 12 高手,这是高手!
+ 20 + 20 高手,这是高手!

查看全部评分

回复

使用道具 举报

41

主题

1288

帖子

5310

积分

论坛元老

Rank: 8Rank: 8

积分
5310
金钱
4017
HASS币
20
发表于 2023-3-5 22:17:05 | 显示全部楼层
话说互感器如果开路会不会击穿芯片,是否有光藕隔离
折腾精神永存,感恩感谢论坛每一位愿意分享和帮助过我的大佬,论坛有你更精彩
回复

使用道具 举报

16

主题

216

帖子

1488

积分

金牌会员

Rank: 6Rank: 6

积分
1488
金钱
1272
HASS币
0
发表于 2023-3-5 22:43:11 | 显示全部楼层
楼主666666666666666
回复

使用道具 举报

1

主题

173

帖子

1114

积分

金牌会员

Rank: 6Rank: 6

积分
1114
金钱
941
HASS币
0
发表于 2023-3-6 08:41:43 | 显示全部楼层

楼主666666666666666
回复

使用道具 举报

5

主题

67

帖子

427

积分

中级会员

Rank: 3Rank: 3

积分
427
金钱
360
HASS币
0
发表于 2023-3-6 08:45:08 | 显示全部楼层
看看楼主的杰作!多谢分享
回复

使用道具 举报

0

主题

562

帖子

2183

积分

金牌会员

Rank: 6Rank: 6

积分
2183
金钱
1621
HASS币
0
发表于 2023-3-6 09:09:38 | 显示全部楼层
顶起多路电表
回复

使用道具 举报

7

主题

107

帖子

810

积分

论坛DIY达人

积分
810
金钱
698
HASS币
20
发表于 2023-3-6 09:12:06 | 显示全部楼层
jjcs 发表于 2023-3-5 22:17
话说互感器如果开路会不会击穿芯片,是否有光藕隔离

按照规范,互感器s2端要接地。
回复

使用道具 举报

8

主题

134

帖子

1093

积分

金牌会员

Rank: 6Rank: 6

积分
1093
金钱
959
HASS币
0
发表于 2023-3-6 09:23:00 | 显示全部楼层
这个芯片输入是差分输入,不好做接地
家用电流不大,CT二次开路应该不会击穿芯片
回复

使用道具 举报

16

主题

201

帖子

1584

积分

论坛DIY达人

积分
1584
金钱
1378
HASS币
20
 楼主| 发表于 2023-3-6 11:50:00 | 显示全部楼层
jjcs 发表于 2023-3-5 22:17
话说互感器如果开路会不会击穿芯片,是否有光藕隔离

如果是互感器与电路板开路,由于没有回路,不会对芯片产生影响。如果是5.1欧的负载电阻开路,则是可能击穿芯片。只是正常情况,负载电阻只承受几个毫瓦的功率,恐怕其故障噶概率远比电源模块低很多吧。

评分

参与人数 1金钱 +12 收起 理由
jjcs + 12 在下对你的景仰犹如滔滔长江之水,连绵不绝.

查看全部评分

回复

使用道具 举报

23

主题

100

帖子

444

积分

中级会员

Rank: 3Rank: 3

积分
444
金钱
344
HASS币
0
发表于 2023-3-6 12:22:47 | 显示全部楼层
前几天买了个培正的还没接,准备用tasmota接入ha
回复

使用道具 举报

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

本版积分规则

Archiver|手机版|小黑屋|Hassbian

GMT+8, 2024-4-27 02:20 , Processed in 0.065518 second(s), 35 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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