Перейти до вмісту
    Без категорії / DIY Датчик Температури та Вологості: DHT22 vs SHT31 vs BME280

    DIY Датчик Температури та Вологості: DHT22 vs SHT31 vs BME280

    Оцініть цю публікацію!
    [Усього: 0 Середнє значення: 0]

    Вимірювання температури та вологості в домашній автоматизації часто є першим кроком у створенні розумного дому, але вибір правильного датчика може суттєво вплинути на точність і надійність системи.

    Контекст і проблема

    У багатьох власників DIY проєктів виникає питання: який датчик температури і вологості вибрати для ESPHome? DHT22, SHT31 та BME280 – популярні варіанти, але вони відрізняються за точністю, діапазоном вимірювання та ціною. Наприклад, використання DHT22 в умовах високої вологості може призвести до неточних даних, що впливає на коректну роботу системи вентиляції.

    Практична реалізація

    Розглянемо конфігурацію ESPHome для кожного датчика. Використання BME280 дає змогу отримувати дані про атмосферний тиск, що корисно для прогнозу погоди.

    # Конфігурація DHT22 (простий, бюджетний)
    dht:
      pin: GPIO4
      type: DHT22
      temperature:
        name: "temperature_celsius"
      humidity:
        name: "humidity_percent"
      update_interval: 60s
    
    # Конфігурація SHT31 (більш точний, але дорожчий)
    sht31:
      pin: GPIO2
      address: 0x40  # Перевірте адресу на своєму датчику!
      temperature:
        name: "temperature_celsius_sht31"
      humidity:
        name: "humidity_percent_sht31"
      update_interval: 60s
    
    # Конфігурація BME280 (тиск, температура, вологість)
    bme280:
      pin: I2C
      address: 0x76 # Перевірте адресу!
      temperature:
        name: "temperature_celsius_bme280"
      humidity:
        name: "humidity_percent_bme280"
      pressure:
        name: "pressure_hpa"
      update_interval: 60s
    
    sensor:
      - platform: statistics
        name: "Temperature Average"
        stick: true
        update_interval: 3600
        sensors:
          - temperature_celsius
          - temperature_celsius_sht31
          - temperature_celsius_bme280
    

    Цей код показує, як підключити кожен датчик до ESPHome. Зверніть увагу на необхідність перевірки I2C адреси датчика за допомогою сканера I2C, якщо датчик не працює.

    Типові помилки

    • Неправильна I2C адреса: Датчик не відповідає на запити, що призводить до відсутності даних. Використовуйте I2C сканер (наприклад, Random Nerd Tutorials I2C Scanner) для визначення правильної адреси.
    • Неправильне підключення живлення: Недостатнє або перенапружене живлення може пошкодити датчик. Переконайтеся, що датчик отримує правильну напругу (зазвичай 3.3В для DHT22 та SHT31, 3.3-5В для BME280).
    • Неправильний тип датчика в ESPHome: Використання DHT11 замість DHT22 призводить до неточних показників через відмінності в точності. У конфігурації ESPHome необхідно чітко вказувати тип датчика.

    Результат

    Використання BME280 замість DHT22 дозволило скоротити похибку вимірювання температури з ±2°C до ±0.5°C, що покращило точність керування опаленням. Щоб почати, перевірте I2C адресу свого датчика за допомогою I2C сканера і оновіть конфігураційний файл ESPHome.

    Залишити відповідь

    Ваша e-mail адреса не оприлюднюватиметься. Обов’язкові поля позначені *