Arduino, Tutoriels

Comment utiliser Capteur de Température et d’Humidité SHT20 avec Arduino pour Mesurer la Température Atmosphérique

Capteur De Température Et D'Humidité Sht20 Avec Arduino Pour Mesurer La Température Atmosphérique

Introduction :

Le changement climatique est devenu l’une des plus grandes préoccupations mondiales de notre époque. Les températures moyennes augmentent, les conditions météorologiques extrêmes deviennent plus fréquentes et les écosystèmes sont perturbés. La surveillance de la température et de l’humidité atmosphériques joue un rôle crucial pour comprendre ces variations environnementales et évaluer les conséquences du réchauffement planétaire. Dans ce projet, nous allons explorer comment utiliser le Capteur de Température et d’Humidité SHT20 avec Arduino pour mesurer la température et l’humidité de l’air ambiant. Nous discuterons également de l’importance de la surveillance environnementale et des actions nécessaires pour atténuer les effets du changement climatique.

Capteur SHT20 :

Capteur de Température et d’Humidité SHT20 est un dispositif précis et fiable pour mesurer les conditions environnementales. Contrairement à d’autres capteurs similaires tels que le DHT11 et le DHT21, le SHT20 est étanche et convient aux applications en extérieur. Il est basé sur la technologie CMOSens de Sensirion, qui intègre des éléments de détection avec la technologie CMOS pour des mesures précises et une faible consommation d’énergie.

Sht20
Capteur de Température et d’Humidité SHT20

Caractéristiques du Capteur SHT20

  • Tension de fonctionnement : 3,3V à 5V, compatible avec diverses cartes Arduino
  • Interface de communication : I2C
  • Classe de protection : Étanche et anti-condensation
  • Temps de réponse de l’humidité : 8 secondes (tau63%)
  • Précision : ±3% HR / ±0,3 ℃
  • Plage de mesure : 0-100% HR / -40-125 ℃
  • Dimensions : 73 mm * 17 mm / 2,87 * 0,67 pouces
  • Poids : 44 g

Interface du Capteur SHT20 :

Le capteur SHT20 dispose de quatre fils :

  • Rouge : VCC
  • Noir : GND
  • Jaune : SCL (ligne d’horloge série)
  • Vert : SDA (ligne de données série)

Ces connexions sont essentielles pour assurer une communication correcte entre le capteur et Arduino. Le SHT20 peut être alimenté avec des tensions de 3,3V à 5V, ce qui le rend compatible avec une variété de cartes Arduino et d’autres microcontrôleurs.

Matériels requis :

Pour réaliser ce projet , vous auriez besoin des composantes suivants :

Schéma et Circuit avec Arduino :

Pour mettre en œuvre ce projet, nous devons connecter le capteur SHT20 et l’afficheur Oled à une carte Arduino. Voici le schéma de connexion :

Schéma De Câblage De Capteur Sht20 Avec Afficheur Oled Et Arduino Nano.
Schéma de cablage de Capteur SHT20 avec afficheur OLED et Arduino Nano

En suivant ce schéma, nous pouvons assurer la communication entre les composants et collecter les données du capteur pour les afficher sur l’afficheur Oled.

Bibliothèques Requises :

Les bibliothèques sont essentielles pour simplifier la programmation et l’utilisation du capteur SHT20 et de l’afficheur Oled. Les bibliothèques nécessaires pour ce projet sont :

Vous pouvez les installer directement depuis l’IDE Arduino en utilisant le Gestionnaire de bibliothèques.

Programmation du Capteur SHT20 :

Le code Arduino est crucial pour la collecte et l’affichage précis des données de température et d’humidité. Voici le code à utiliser :

#include "Wire.h"
#include "SHT31.h"
#include <Adafruit_GFX.h>
#include <Adafruit_SSD1306.h>
uint32_t start;
uint32_t stop;

SHT31 sht;

#define SCREEN_WIDTH 128 // ORelay display width, in pixels
#define SCREEN_HEIGHT 64 // ORelay display height, in pixels
// Declaration for an SSD1306 display connected to I2C (SDA, SCL pins)
#define ORelay_RESET     -1 // Reset pin # (or -1 if sharing Arduino reset pin)
Adafruit_SSD1306 display(SCREEN_WIDTH, SCREEN_HEIGHT, &Wire, ORelay_RESET);


void setup()
{
  Serial.begin(115200);
  Wire.begin();
  Wire.setClock(100000);
  sht.begin(0x44);    //Sensor I2C Address
  display.begin(SSD1306_SWITCHCAPVCC, 0x3C);
  uint16_t stat = sht.readStatus();
  Serial.print(stat, HEX);
  Serial.println();
    delay(2000);
  display.clearDisplay();
  display.setTextColor(WHITE);
  
}

void loop()
{
  sht.read();

  Serial.print("Temperature:");
  Serial.print(sht.getTemperature(), 1);
  Serial.print("\t");
  Serial.print("Humidity:");
  Serial.println(sht.getHumidity(), 1);
  display.clearDisplay();
 

  display.setCursor(10,20);
  display.setTextSize(2);
  //display.print("C: ");
  display.print("Temp. :"+String(sht.getTemperature(), 1)+"°C");
 
  display.setCursor(10,45);
 
  display.setTextSize(2);
 display.print("Humidité:"+String(sht.getHumidity(), 1)+"%");
    display.display();
  delay(50);
}

Explication du Code :

Le code commence par inclure les bibliothèques nécessaires pour la communication I2C, la gestion du capteur SHT20 et l’affichage sur l’Oled.

Ensuite, les constantes SCREEN_WIDTH, SCREEN_HEIGHT et ORelay_RESET sont définies pour configurer l’afficheur Oled.

La fonction setup() configure la communication série, initialise les bibliothèques Wire et SHT31, ainsi que l’afficheur Oled. Elle lit également le statut du capteur et effectue un bref délai pour laisser le temps au capteur de s’initialiser.

La boucle loop() est responsable de la lecture des valeurs de température et d’humidité à partir du capteur SHT20. Les valeurs sont ensuite imprimées sur le moniteur série et affichées sur l’Oled. Le texte affiché sur l’Oled indique la température en degrés Celsius et l’humidité en pourcentage.

Démonstration du Capteur SHT20 :

Pour tester le capteur SHT20, nous pouvons effectuer des mesures en intérieur et en extérieur. Les valeurs de température et d’humidité peuvent varier en fonction de la situation environnementale. Par exemple, en extérieur, la température peut être plus élevée en plein soleil qu’à l’ombre. Nous pouvons afficher ces résultats sur l’afficheur Oled pour une visualisation facile.

Affichage Des Résultats De Température Et Humidité Sur Oled ,Reçue Par Capteur Sht20 .
Affichage de Température et humidité sur Oled

Importance Environnementale :

L’article initial souligne l’importance de surveiller les niveaux de CO2 et leurs effets sur la température atmosphérique. Une concentration élevée de CO2 contribue au réchauffement planétaire, ce qui entraîne des températures plus élevées et des conditions météorologiques extrêmes. La surveillance de la température et de l’humidité est un élément clé pour comprendre ces tendances environnementales.

Solutions et Actions :

Pour atténuer les effets du changement climatique, il est essentiel de réduire les émissions de CO2 et de promouvoir des pratiques plus durables. L’utilisation de capteurs tels que le SHT20 peut contribuer à surveiller les conditions environnementales et à sensibiliser davantage aux effets du changement climatique. Les individus, les communautés et les gouvernements ont un rôle à jouer pour prendre des mesures positives en faveur de l’environnement.

Conclusion :

L’utilisation du Capteur de Température et d’Humidité SHT20 avec Arduino est un moyen efficace de surveiller les conditions environnementales et de contribuer à la compréhension du changement climatique. En mesurant la température et l’humidité atmosphériques, nous pouvons obtenir des informations précieuses sur les variations environnementales et les effets du réchauffement planétaire. Ce projet souligne l’importance de la surveillance environnementale et appelle à des actions positives pour protéger notre planète pour les générations futures.

vidéo descriptif :

Lien outilles

  1. Téléchargement de l’Arduino IDE : https://www.arduino.cc/en/software
  2. Bibliothèque de SHT20 : https://www.electroniclinic.com/wp-content/uploads/2023/06/SHT31-0.3.8.zip
  3. Bibliothèque Adafruit_GFX : https://www.electroniclinic.com/wp-content/uploads/2020/02/Adafruit_GFX_Library.zip
  4. Bibliothèque Adafruit_SSD1306 : https://www.electroniclinic.com/wp-content/uploads/2020/02/Adafruit_SSD1306.zip
  5. Pour plus d’articles : https://www.moussasoft.com/tutoriels-electroniques
  6. TwitterMoussa Lhoussaine (@Moussasoft_com) / Twitter

Arduino – Home