electronique:arduino:dht11_nano_mega328_lcd_i2c

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentes Révision précédente
electronique:arduino:dht11_nano_mega328_lcd_i2c [2020/04/17 20:22] – ↷ Page déplacée de informatique:arduino:dht11_nano_mega328_lcd_i2c à electronique:arduino:dht11_nano_mega328_lcd_i2c jsideelectronique:arduino:dht11_nano_mega328_lcd_i2c [2020/04/17 20:23] (Version actuelle) – ↷ Liens modifiés en raison d'un déplacement.
Ligne 1: Ligne 1:
 +====== Sonde température et humidité sur Arduino ======
  
 +{{ electronique:arduino:dht11_arduinouno_lcd.jpg?nolink&800 |}}
 +
 +===== Materiel utilisé =====
 +
 +<WRAP group>
 +<WRAP third column>
 +  * Arduino Nano
 +</WRAP>
 +
 +<WRAP third column>
 +  * sonde de température et d'humidité DHT11
 +</WRAP>
 +
 +<WRAP third column>
 +  * écran graphique LCD 2x16 avec bus I2C
 +</WRAP>
 +</WRAP>
 +
 +
 +===== Code =====
 + 
 +
 +Le code suivant permet d'afficher les informations relevées sur la sonde DHT11.
 +
 +Pour cela j'utilise les méthodes ''dht.readHumidity()'' et ''dht.readTemperature()'' de la bibliothèque ''DHT''.
 +La fonction ''isnan'' (is Not A Number) permet de faire connaitre une défaillance en cas d'une lecture non numérique des valeurs.
 +
 +<code c>
 +#include <Adafruit_Sensor.h>
 +
 +#include <DHT.h>
 +#include <LiquidCrystal_I2C.h>
 +#include <Wire.h> 
 +
 +
 +#define DHTPIN 7
 +#define DHTTYPE DHT11 
 +
 +DHT dht(DHTPIN, DHTTYPE);
 +LiquidCrystal_I2C lcd(0x27,16,2); // affecter l'adresse à 0x27 pour 16 caractères et 2 lignes d'affichage
 +int tim = 1000; //valeur d'attente
 +
 +
 +void setup()
 +{
 +  lcd.init(); //initialiser le LCD
 +  lcd.backlight(); //allumer le LCD
 +  lcd.setCursor(0,0);
 +  lcd.print("dht11_test");
 +  lcd.setCursor(0,1);
 +  lcd.print("version 20161203");
 +  delay(5 * tim); //attendre
 +  lcd.clear();
 +  
 +  Serial.begin(9600);
 +  dht.begin();
 +
 +}
 +
 +void loop()
 +{
 +  float h = dht.readHumidity(); // lire la valeur de l'humidité
 +  float t = dht.readTemperature(); :: lire la valeur de la température
 +  if (isnan(t) || isnan(h)) { // vérifier le présence d'une valeur numérique
 +    lcd.setCursor(0,0);
 +    lcd.println("Failed to read  ");
 +    lcd.setCursor(0,1);
 +    lcd.println("from DHT11    ");
 +  } else {  
 +    lcd.setCursor(0,0);
 +    lcd.print("Temp.   ");
 +    lcd.print(t);
 +    lcd.print(" *C");
 +    lcd.setCursor(0,1);
 +    lcd.print("Humidi. ");
 +    lcd.print(h);
 +    lcd.print(" %");
 +  }
 +
 +  delay(tim);
 +}
 +//
 +// END OF FILE
 +//
 +</code>
 +
 +
 +===== Bibliographie =====
 +
 +Capteur de pression 
 +  * http://www.diopter.fr/index.php/technique/electro-numerique/43-capteur-de-pression-et-arduino
 +
 +Autre réalisation avec la sonde DHT11
 +  * https://www.carnetdumaker.net/articles/utiliser-un-capteur-de-temperature-et-dhumidite-dht11-dht22-avec-une-carte-arduino-genuino/
 +
 +Sonde  de température DS18B20
 +  * https://www.carnetdumaker.net/articles/mesurer-une-temperature-avec-un-capteur-1-wire-ds18b20-et-une-carte-arduino-genuino/
 +
 +Comparatif des sondes DHT 11 et 22
 +  * https://learn.adafruit.com/dht/overview
 +
 +Kit SunFounder
 +  * https://www.sunfounder.com/learn/Sensor-Kit-v2-0-for-Arduino/lesson-11-humiture-detection-sensor-kit-v2-0-for-arduino.html
 +
 +
 +Amazon
 +  * sonde DHT 22 - https://www.amazon.fr/gp/product/B00AZG1RBK/ref=ox_sc_act_title_2?ie=UTF8&psc=1&smid=A3I826466U8R8A