Problème avec les valeurs du DHT11 [resolu]

Bonjour,

Je débute dans le monde de l’arduino, et comme beaucoup j’ai besoin d’un peu d’aide.

Pour le moment je tente de faire fonctionner le DHT11 seul avec une Uno et les valeurs lues sur le moniteur série sont soit erronées
ex:
Température de l’air: -11.80°C
Humidité de l’air: 145.00%

Test fait dans mon salon environ 21° et une humidité normale

et aléatoirement j’ai aussi le résultat ci dessous:

Température de l’air: -11.80°C
Humidité de l’air: 145.00%

Température de l’air: nan°C
Humidité de l’air: nan%

Température de l’air: -11.80°C
Humidité de l’air: 145.00%

code utilisé ci dessous:

#include <DHT.h>
#include <DHT_U.h>

#define DHTPIN 2 // DHT11 sur pin 2
#define DHTTYPE DHT11 // type du capteur

DHT dht(DHTPIN, DHTTYPE);

void setup()
{
// On initialise la connexion série
Serial.begin(9600);
delay(3000);

// On imprime un texte de bienvenu
Serial.println(“Salut je me réveille”);
Serial.println("-----");
}

void loop()
{
// On récupère la température de l’air
double dTempExt = dht.readTemperature();

// On imprime la température de l’air
Serial.print("Température de l’air: ");
Serial.print(dTempExt);
Serial.println(“°C”);

// On récupère la température de l’air
double dHumidExt = dht.readHumidity();

// On imprime l’humidité de l’air
Serial.print(“Humidité de l’air: “);
Serial.print(dHumidExt);
Serial.println(”%”);

Serial.println("-----");

// On attends 5 secondes
delay(5000);
}


Je précise c’est mon premier post ( et a mon avis pas le dernier sur ce forum :slight_smile: ) j’espere avoir fourni les éléments nécessaires et dans les formes.

Merci d’avance a celui ou ceux qui pourront m’aider.

Je précise c'est mon premier post

Bienvenue.

Mais il faudrait lire les messages épinglés qui disent tout ce qu'il faut faire.

En ce qui concerne le DHT11

  1. la prochaine fois prend un DHT22 qui est bien "plus" sur tous les points.
  2. L'origine de la bibliothèque pour ce composant est très importante.
    Un lien cliquable vers celle que tu as choisi sera le bienvenu.

Sinon le sujet du DHT11/22 a été abordé à maintes reprises sur ce forum.
Il existe un moteur de recherche (la loupe en haut et à droite de la page) qui utilise "gogole" pour donner des résultats uniquement sur ce forum et avec une priorité pour les messages en français.
Tu devrai trouver la solution à ton problème.

effectivement j’avais oublié la librairie,
et le problème venait en partie de la il fallait celle ci en plus

#include <Adafruit_Sensor.h>

#include <DHT.h>
#include <DHT_U.h>

Et j’ai lus les règles et lus plusieurs post du forum et je ne trouvais, j’ai trouvé entre temps désolé .

ci joint le code complet on sait jamais ( pour le prochain qui aura des soucis avec son DHT11)

#include <Adafruit_Sensor.h>

#include <DHT.h>
#include <DHT_U.h>

#define DHTPIN 13 // broche du DHT11

#define DHTTYPE DHT11 // DHT 11 (( ou DHT22)

DHT dht(DHTPIN, DHTTYPE);//déclaration du capteur

void setup()
{
Serial.begin(9600);
Serial.println(“TEST CAPTEUR DHT11”);
dht.begin();
}
void loop()
{
delay(4000);

// La lecture du capteur
float h = dht.readHumidity();//on lit l’hygrometrie
float t = dht.readTemperature();//on lit la temperature en celsius (par defaut)

float f = dht.readTemperature(true);

//On verifie si la lecture a echoue, si oui on quitte la boucle pour recommencer.
if (isnan(h) || isnan(t) || isnan(f))
{
Serial.println(“Failed to read from DHT sensor!”);
return;
}

// Calcul de l’indice de temperature en Celsius
float hic = dht.computeHeatIndex(t, h, false);

//Affichages :
Serial.print(“Humidite: “);
Serial.print(h);
Serial.println(” %\t”);
Serial.print("Temperature: “);
Serial.print(t);
Serial.println(” *C ");
Serial.print("Indice de temperature: “);
Serial.print(hic);
Serial.println(” *C ");

delay (3000);
}

Je commence a modifier a ma sauce afin de comprendre ce code trouvé sur internet
C est clair que je testerai un capteur plus précis et stable dans le futur.

Problème résolu mais je ne voit pas ou marque le sujet résolu, ou clos désolé.

Bonsoir,

Editer le titre du message initial pour y ajouter [RESOLU], pas d'autre façon de faire sur ce forum

Merci pour l'info.