Comment fabriquer un capteur de température et d’humidité pour la domotique

Comment fabriquer un capteur de température et d’humidité pour la domotique

Vous pouvez rapidement construire un capteur de température et d’humidité numérique DIY avec un module d’affichage OLED pour afficher la température et l’humidité de votre pièce. Vous pouvez également intégrer ce capteur de climat DIY dans votre logiciel domotique intelligent, tel qu’un serveur Home Assistant, pour automatiser votre unité HVAC (climatisation), ventilateur ou humidificateur pour le contrôle de la température et de l’humidité.

Choses dont vous aurez besoin

Vous aurez besoin des composants suivants pour construire un capteur de température et d’humidité DIY intelligent,

  • Un capteur de température/humidité numérique haute précision AHT10
  • Une carte Wemos D1 Mini ou NodeMCU
  • Un écran OLED SSD1306 128×64
  • Quelques fils de liaison (DuPont)
  • Une impression 3D ou n’importe quel boitier pour assembler les composants
  • Fer à souder et étain
  • Un serveur Home Assistant fonctionnant sur un Raspberry Pi ou tout matériel compatible x86 ou x64. Si vous voulez en savoir plus, vous pouvez en savoir plus sur Home Assistant et son fonctionnement avant de commencer.

Étape 1 : préparer le micrologiciel

Vous devez compiler et préparer le micrologiciel à l’aide du module complémentaire ESPHome sur votre serveur Home Assistant. Les étapes sont les suivantes:

  1. Dans votre serveur Home Assistant, accédez à Paramètres > Modules complémentaires et cliquez sur le bouton Magasin de modules complémentaires .
  2. Recherchez ESPHome et cliquez sur le module complémentaire ESPHome dans les résultats de la recherche. Ne cliquez pas sur ESPHome (dev) ou ESPHome (beta).
  3. Cliquez sur le bouton Installer .
  4. Après l’installation, cliquez sur Démarrer . Activez également les options Start on boot , Watchdog et Show on sidebar .
    installer esphome dans le serveur de l'assistant domestique
  5. Cliquez sur Ouvrir l’interface utilisateur Web et cliquez sur + Nouveau périphérique .
  6. Tapez le nom de l’appareil, tel que « capteur de climat », puis cliquez sur Suivant .
  7. Choisissez de choisir une carte spécifique et sélectionnez la carte Wemos D1 Mini dans la liste.
  8. Cliquez sur Suivant > Ignorer . Choisissez ESP8266 si vous utilisez la carte NodeMCU.
  9. Cliquez sur l’ option Modifier , puis apportez les modifications suivantes dans la fenêtre de l’éditeur YAML.

Ajoutez vos identifiants Wi-Fi :

wifi:
  ssid: "YourWiFiSSID"
  password: "WiFiPassword"

Collez ensuite le code suivant juste en dessous de la ligne captive_portal : :

web_server:
  port: 80

i2c:
  sda: D2
  scl: D1
  scan: True

time:
- platform: sntp
  id: my_time
sensor:
  - platform: aht10
    temperature:
      name: "Living Room Temperature"
      id: temp
    humidity:
      name: "Living Room Humidity"
      id: hum
    update_interval: 10s
  - platform: uptime
    name: "Station Bureau Uptime Sensor"
  - platform: wifi_signal
    name: "Station Bureau WiFi Signal"
    update_interval: 30s

font:
  - file: 'slkscr.ttf'
    id: font1
    size: 12

  - file: 'BebasNeue-Regular.ttf'
    id: font2
    size: 15

  - file: 'arial.ttf'
    id: font3
    size: 15

display:
  - platform: ssd1306_i2c
    model: "SSD1306 128x64"
    reset_pin: D0
    address: 0x3C
    rotation: 180°
    lambda: |-
      // Print "Ravi Smart Home"in top center.
      it.printf(64, 0, id(font1), TextAlign::TOP_CENTER, "Ravi Smart Home");

      // Print temperature (from AHT10 sensor)
      if (id(temp).has_state()) {
        it.printf(127, 23, id(font3), TextAlign::TOP_RIGHT, "Temperature: %.1f°", id(temp).state);
      }

      // Print Humidity (from AHT10 sensor)
      if (id(hum).has_state()) {
        it.printf(127, 60, id(font3), TextAlign::BASELINE_RIGHT, "Humidity: %.1f", id(hum).state);
      }

Remplacez « Ravi Smart Home » par votre propre titre. Une fois que vous avez ajouté et mis à jour le code, cliquez sur Enregistrer puis sur Installer .

Choisissez Brancher sur cet ordinateur dans la liste des options, puis attendez que le micrologiciel se compile. Cela peut prendre 10 à 15 minutes.

Une fois le firmware compilé, cliquez sur le bouton Télécharger le projet . Cela téléchargera le fichier compilé climate-sensor.bin sur votre système.

Étape 2 : Flasher le micrologiciel sur D1 Mini ou NodeMCU

Pour flasher le firmware téléchargé sur le D1 Mini ou NodeMCU, vous pouvez utiliser le programme d’installation Web, ou Pour flasher le firmware, vous pouvez utiliser l’outil flash basé sur le Web ou l’outil ESPHome-Flasher pour votre système Windows, Linux ou Mac. Suivez les étapes ci-dessous pour flasher le micrologiciel à l’aide du programme d’installation Web :

  1. Après avoir téléchargé le firmware, vous verrez l’ option Web Open ESPHome . Clique dessus. Cela ouvrira une nouvelle fenêtre.
  2. Cliquez sur le bouton Connecter , sélectionnez le port COM , puis cliquez sur le bouton Connecter . Si la carte n’est pas détectée, installez les pilotes CH240/CH341.
  3. Cliquez sur Installer > Choisir un fichier et choisissez le fichier du micrologiciel climate-sensor -factory.bin .
  4. Enfin, cliquez sur le bouton Installer . Attendez que l’outil Web ESPHome termine le flash du firmware.

Une fois le firmware flashé, rendez-vous sur le tableau de bord ESPHome et trouvez le fichier climate-sensor.bin . Il devrait afficher le statut EN LIGNE .

Étape 3 : Ajouter un capteur climatique au tableau de bord de l’assistant domestique

Vous pouvez maintenant ajouter le capteur climatique au tableau de bord Home Assistant en suivant ces étapes :

  1. Dans votre serveur Home Assistant, accédez à Paramètres > Appareils et services .
  2. Le dispositif de capteur climatique doit être automatiquement découvert et visible. Cliquez sur le bouton CONFIGURER puis sur SOUMETTRE . Cela ajoutera l’appareil à la liste des appareils ESPHome.
  3. Cliquez sur le capteur climatique répertorié sous ESPHome , puis cliquez sur le lien 1 appareil .
  4. Cliquez sur AJOUTER AU TABLEAU DE BORD > Affichage > AJOUTER AU TABLEAU DE BORD . Choisissez la pièce souhaitée dans laquelle vous souhaitez ajouter le capteur.

Étape 4 : Connectez l’AHT10 à D1 Mini ou NodeMCU

Reportez-vous aux instructions suivantes pour connecter le capteur de température et d’humidité AHT10 à la carte microcontrôleur D1 Mini ou NodeMCU à l’aide des fils de connexion.

  1. Connectez la broche VIN de l’écran AHT10 et OLED à la broche 5V du D1 Mini ou à la broche 3,3V du NodeMCU.
  2. Connectez la broche GND de l’affichage AHT10 et OLED à la broche G sur le D1 Mini ou NodeMCU.
  3. Connectez la broche SCL de l’écran AHT10 et OLED à la broche D1 du NodeMCU ou du D1 Mini.
  4. Connectez la broche SDA de l’écran AHT10 et OLED à la broche D2 du NodeMCU ou du D1 Mini.

Vous aurez besoin d’un fer à souder pour souder ces composants. Vous pouvez apprendre à souder avant d’essayer ce projet de bricolage.

Une fois l’AHT10 et l’écran OLED connectés, vous pouvez vérifier les valeurs de température et d’humidité sur l’écran OLED et le tableau de bord Home Assistant.

valeurs de température et d'humidité affichées dans le tableau de bord de l'assistant domestique

Les valeurs changeront en temps réel. Ainsi, vous pouvez vérifier son bon fonctionnement en soufflant sur le capteur AHT10. Cela modifiera instantanément les valeurs de température et d’humidité. Une fois les tests réussis, vous pouvez enfermer les composants dans un boîtier imprimé en 3D comme celui-ci de Thingiverse .

capteur d'humidité de température bricolage dans un boîtier imprimé en 3d

Vous pouvez également configurer l’intégration d’Amazon Alexa ou de Google Assistant dans Home Assistant pour recevoir des notifications et des alertes vocales lorsque les niveaux de température ou d’humidité dépassent ou chutent à un certain niveau.

Votre capteur climatique numérique est prêt

C’est ainsi que vous pouvez créer un capteur de température et d’humidité numérique intelligent basé sur le Wi-Fi pour votre pièce et l’intégrer au serveur Home Assistant pour créer une automatisation et déclencher d’autres appareils intelligents. Par exemple, vous pouvez ajouter une automatisation pour éteindre une unité CVC une fois que la température ou/et l’humidité atteignent ou chutent à un certain niveau.

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *