Belling BL0942 能量监控器
bl0942 传感器平台允许您在 ESPHome 中使用 BL0942 能量监控传感器。
它们用于某些 Tuya 设备(如 Aubess Tuya WiFi 迷你智能开关(带能量监控))中。
与此组件的通信通过 UART 完成。
因此,您必须在配置中包含带有已设置 TX 和 RX 引脚以及波特率为 4800、1 个停止位的 uart: 条目。
# Example configuration entrysensor: - platform: bl0942 voltage: name: 'BL0942 Voltage' current: name: 'BL0942 Current' power: name: 'BL0942 Power' energy: name: 'BL0942 Energy' frequency: name: "BL0942 Frequency"-
voltage (可选): 传感器的电压值,单位为伏特。 来自 Sensor 的所有选项。
-
current (可选): 传感器的电流值,单位为安培。来自 Sensor 的所有选项。
-
power (可选): 传感器的(有功)功率值,单位为瓦特。注意,某些功率计可能会以负值报告此值(可能接线反了),因此您可能需要使用过滤器将其乘以 -1。来自 Sensor 的所有选项。
-
energy (可选): 使用传感器的能量值,单位为 kWh。 来自 Sensor 的所有选项。
-
frequency (可选): 传感器的频率值,单位为赫兹。来自 Sensor 的所有选项。
-
update_interval (可选, Time): 检查传感器的时间间隔。默认为
60s。 -
line_frequency (可选, string): 供电电压的标称交流电源频率。可选值为
50Hz、60Hz。默认为50Hz。 -
address (可选, int): BL0942 从其引导引脚获得的地址。默认为
0。 -
reset (可选, boolean): 是否在启动时重置 BL0942 芯片,重置所有内部计数器。默认为
true。 -
current_reference (可选, float): 电流读数的校准参数。默认为
251065.6814。 -
voltage_reference (可选, float): 电压读数的校准参数。默认为
15883.34116。 -
power_reference (可选, float): 功率读数的校准参数。默认为
623.0270705,除非显式设置了current_reference或voltage_reference,在这种情况下将进行计算。请参阅 校准 以获取更多详细信息。 -
energy_reference (可选, float): 累积能量读数的校准参数。默认为
5347.484240,除非显式设置了current_reference、voltage_reference或power_reference,在这种情况下将进行计算。请参阅 校准 以获取更多详细信息。
有两个基本的校准参数,它们取决于硬件:voltage_reference 和 current_reference。
可以使用精确的电压和电流表配合简单的电阻性负载来确定。较大的电流负载将比
较小的负载提供更高的测量分辨率。请考虑此过程中设备能支持的最大负载。可考虑的
电阻性负载示例:暖风机、烤面包机、白炽灯泡等。
voltage_reference 的默认值为 15883.34116,current_reference 为 251065.6814。使用这些值烧录
设备,然后在将其与 ESPHome 中报告的值进行比较的同时测量负载的电压和电流。
确定正确参考值的公式为 new_reference = reported_value * default_reference / actual_value。
(如果报告值偏低,参考值应降低,反之亦然。)此过程可以重复多次
以精确定位正确的校准值。请参阅源码注释 :apisource:source code <bl0942/bl0942.h> 获取更多详细信息。
power_reference 值可以从这些值推导出来,大约为 voltage_reference current_reference 3537 / (305978 * 73989)。
energy_reference 值可以大致推导为 power_reference * 3600000 / 419430.4。
为了与现有配置兼容,如果未设置任何参考值,则将使用原始默认值,尽管功率和能量校准并不完全一致。
如果转换 Tuya 设备,工厂校准值通常可以从原始固件中获得。例如,它们可能位于 DPS 参数 22-25 中,或 voltage_coe 和相关选项中。
以下是 Tongou 导轨式功率计单元的一个示例。tinytuya wizard 的结果包括:
{ "code": "voltage_coe", "value": 15968},{ "code": "electric_coe", "value": 12418},{ "code": "power_coe", "value": 3091},{ "code": "electricity_coe", "value": 2653},注意,electric_coe 值(DPS 23)应乘以十,而 power_coe 值应除以十,由此得到以下配置:
voltage_reference: 15968 # DPS 21current_reference: 124180 # DPS 22 * 10power_reference: 309.1 # DPS 23 / 10energy_reference: 2653 # DPS 24或者,可以在不获取
Tuya 密钥进行本地通信的情况下,从设备的闪存中找到这些值。它们可以在”键值存储”
分区中找到。上述示例中的同一设备在烧录 ESPHome 前在偏移 0x001d5000 处有:
001d5000 60 3e 00 00 82 30 00 00 13 0c 00 00 5d 0a 00 00 |`>...0......]...|在此看到的十六进制值 0x3e60、0x3082、0xc13 和 0xa5d 对应于运行中的 Tuya 固件报告的四个 DPS 值。
上面推导 power_reference 和 energy_reference 的公式可以
作为从固件中找到的值的合理性检查。