简体中文
English
简体中文
日本語

Unit VMeter ESPHome 组件

Unit VMeter 组件通过 I2C 读取电压测量数据。

1. 组件简介

项目 信息
产品名称 Unit VMeter
SKU U087
主要功能 直流电压测量
通信接口 I2C
默认 I2C 地址 ADS1115:0x49;EEPROM:0x53
ESPHome 组件 ads1115template
ESPHome 版本要求 /

2. 组件说明

官方组件引入

Unit VMeter 使用 ESPHome 官方 ADS1115 传感器读取差分电压,并结合 I2C Device 读取 EEPROM 校准参数,最后通过 Template 传感器换算输入电压。

Unit VMeter 配置范例:

  1. 首先配置基础组件 ADS1115:
yaml
1 2 3 4 5 6 7 8 9 10 11
ads1115:
  - address: 0x49

sensor:
  - platform: ads1115
    multiplexer: "A0_A1"
    gain: 1.024
    sample_rate: 128
    name: "Unit VMeter A0_A1 Ref"
    id: diff
    update_interval: 10s
提示
Unit VMeter 只使用了 AIN0AIN1 两个通道,所以最多可以使用 3 个 multiplexer: "A0_A1""A0_GND""A1_GND";而此处测量电压,仅用到了 A0_A1 参与电压计算。
  1. 配置 EEPROM 读取校准参数,结合 Template Sensor 创建电压实体。以下 sensor 条目应与前面的 ADS1115 条目合并到同一个列表中:
  1. 在读取 EEPROM 的时候,需要根据 ADS1115 设置的 gain 值,修改 lambda 表达式中 EEPROM_REG 读取地址:
c++
1 2 3 4
// 在 lambda 表达式中
// 修改 gain 后,请同步修改 EEPROM_REG
// 例如 gain 为 1.024 时
const uint8_t EEPROM_REG = 0xE8;
ADS1115 Gain EEPROM Data Register Max Input Voltage (theory)
6.144 0xD0 -
4.096 0xD8 -
2.048 0xE0 -
1.024 0xE8 64 V
0.512 0xF0 32 V
0.256 0xF8 16 V

推荐的 gain 值为 0.256, 0.5121.024; 其中,在测量 16V 以下电压分辨率为 1mV,16V 以上电压分辨率为 7.9 mV,请根据被测对象电压选择最合适的 gain 值,以及读取 EEPROM 中合适的校准参数。为了数据精准,仅能测量 AIN0AIN1 其中一路,请勿将两路都接上电压输入。

警告
产品设计的最佳测量区间为 ±36V, 请不要输入此范围之外的电压,以免设备损坏;EEPROM (0x53) 在出厂时内置了校准参数,请勿对 EEPROM 进行写操作,否则校准数据将被覆盖,可能导致测量结果不准确。

3. 参考案例

当添加至 Dashboard 之后,您可以在 Home Assistant 中查看传感器数据。

4. 相关链接

5. 相关视频

Page Tools
PDF
On This Page