跳转到内容

MLX90393 三轴磁强计

mlx90393 传感器平台允许您在 ESPHome 中使用 MLX90393 (数据手册, Adafruit)三轴磁强计。此传感器需要在您的配置中设置 I²C 才能工作。

MLX90393 三轴磁强计
# Example configuration entry
sensor:
- platform: mlx90393
id: mlx
x_axis:
name: "x"
y_axis:
name: "y"
z_axis:
name: "z"
  • x_axis (可选): X 轴的信息。

    • resolution (可选,int): 指定读取完整的 19 位值的哪一部分。默认为 DIV_4。必须为以下之一:

      • DIV_8
      • DIV_4
      • DIV_2
      • DIV_1
    • 来自 Sensor 的其他所有选项。

  • y_axis (可选): Y 轴的信息。

    • resolution (可选,int): 指定读取完整的 19 位值的哪一部分。默认为 DIV_4。必须为以下之一:

      • DIV_8
      • DIV_4
      • DIV_2
      • DIV_1
    • 来自 Sensor 的其他所有选项。

  • z_axis (可选): Z 轴的信息。

    • resolution (可选,int): 指定读取完整的 19 位值的哪一部分。默认为 DIV_4。必须为以下之一:

      • DIV_8
      • DIV_4
      • DIV_2
      • DIV_1
    • 来自 Sensor 的其他所有选项。

  • temperature (可选): 内置温度传感器。

    • oversampling (可选,int): 温度传感器的芯片上过采样。默认为 0。必须在 0 到 3 之间。
    • 来自 Sensor 的其他所有选项。
  • drdy_pin (可选,Pin Schema): 数据就绪引脚。通常标记为 INT。使用此引脚可能略微加快读取时间。

  • gain (可选,int): 设置模拟增益。默认为 1X。必须为以下之一

    • 1X
    • 1_25X
    • 1_67X
    • 2X
    • 2_5X
    • 3X
    • 3_75X
    • 5X
  • oversampling (可选,int): 芯片上过采样。默认为 2。必须在 0 到 3 之间。

  • filter (可选,int): 芯片上数字过滤器。默认为 6。必须在 0 到 7 之间。

  • temperature_compensation (可选,bool): 芯片上温度补偿。默认为 false。启用后,分辨率选项 DIV_8 和 DIV_4 不能使用。

  • hallconf (可选,int): 修改霍尔板旋转方式(2 相 vs 4 相)。默认为 0xC。必须为 0xC 或 0x0。

  • update_interval (可选,Time): 检查 传感器的间隔。默认为 60s。

  • address (可选,int): 手动指定传感器的 I²C 地址 。默认为 0x0C。

  • i2c_id (可选,ID): 如果您想 使用多个 I²C 总线,可手动指定 I²C 组件 的 ID。

默认情况下,传感器配置为最低灵敏度。 这允许读取高达 50,000 µT 的磁场。然而,灵敏度限制为 3 µT。 通过使用增益和分辨率选项可以显著改善这一点,代价是降低可测量的最大磁场。

传感器内部生成一个模拟信号,发送到放大器。 增益选项控制此放大器。过大的放大将导致值饱和,但不会整数溢出。

放大后,模拟信号使用 19 位 ADC 进行数字化。 只有 16 位发送到 ESPHome。分辨率选项选择发送哪些位。

分辨率选项以及它们向 ESPHome 报告哪些位。DIV_8 发送最高有效 16 位,而 DIV_1 发送最低有效位。

注意,ADC 实际上并未填满所有 19 位。这导致 DIV_4 的最大磁场与 DIV_8 相同,同时提供更好的灵敏度。 只有 DIV_2 和 DIV_1 实际使用所有值,因此它们具有最佳的动态范围。然而,当超过最大磁场强度时,两者都会导致整数溢出。

接收到 16 位值后,ESPHome 将其转换为以 µT 为单位的浮点值。 因此,增益和分辨率均不直接影响 ESPHome 中值的幅度。

下表显示了每种组合的灵敏度和最大磁场强度。 注意,由于硬件限制,Z 轴的灵敏度较差。

增益分辨率灵敏度 XY(µT/LSB)最大磁场 XY(µT)灵敏度 Z(µT/LSB)最大磁场 Z(µT)
1XDIV_86.00966,0989.680106,480
1XDIV_43.00466,0984.840106,480
1XDIV_21.50249,2252.42079,299
1XDIV_10.75124,6121.21039,649
1_25XDIV_84.80752,8787.74485,184
1_25XDIV_42.40452,8783.87285,184
1_25XDIV_21.20239,3801.93663,439
1_25XDIV_10.60119,6900.96831,719
1_67XDIV_83.60539,6595.80863,888
1_67XDIV_41.80339,6592.90463,888
1_67XDIV_20.90129,5351.45247,579
1_67XDIV_10.45114,7670.72623,790
2XDIV_83.00433,0494.84053,240
2XDIV_41.50233,0492.42053,240
2XDIV_20.75124,6121.21039,649
2XDIV_10.37612,3060.60519,825
2_5XDIV_82.40426,4393.87242,592
2_5XDIV_41.20226,4391.93642,592
2_5XDIV_20.60119,6900.96831,719
2_5XDIV_10.3009,8450.48415,860
3XDIV_82.00322,0333.22735,493
3XDIV_41.00122,0331.61335,493
3XDIV_20.50116,4080.80726,433
3XDIV_10.2508,2040.40313,216
3_75XDIV_81.60217,6262.58128,395
3_75XDIV_40.80117,6261.29128,395
3_75XDIV_20.40113,1270.64521,146
3_75XDIV_10.2006,5630.32310,573
5XDIV_81.20213,2201.93621,296
5XDIV_40.60113,2200.96821,296
5XDIV_20.3009,8450.48415,860
5XDIV_10.1504,9220.2427,930

对于 hallconf = 0x0,灵敏度按 98/75 的比例缩放。例如,HALLCONF 0xC 时为 0.150μT/LSB 变为 HALLCONF 0x0 时的 0.196μT/LSB。最大磁场强度相应变化。