DHT11 große Abweichung

Hallo zusammen,

kann das jemand bestätigen das der DHT11 eine sehr große Abweichung hat?

Ich habe hier im Raum einen TFA Feuchtigkeitsstation zum Vergleich:

DHT11 sagt Luftfeuchte 39% und Temperatur 24°C
TFA sagt Luftfeuchte 58,0% und Temperatur 21,5°C

//#define dht11_pin 14 //Analog port 0 on Arduino Uno
#define dht11_pin 63 //Analog port 0 on Arduino Mega2560
  
byte read_dht11_dat()
{
  byte i = 0;
  byte result=0;
  for(i=0; i< 8; i++)
  {
    while (!digitalRead(dht11_pin));
    delayMicroseconds(30);
    if (digitalRead(dht11_pin) != 0 )
      bitSet(result, 7-i);
    while (digitalRead(dht11_pin));
  }
  return result;
}
  
  
void setup()
{
  pinMode(dht11_pin, OUTPUT);
  digitalWrite(dht11_pin, HIGH);
  Serial.begin(9600);
  Serial.println("Ready");
}
      
void loop()    
{
  byte dht11_dat[5];   
  byte dht11_in;
  byte i;// start condition
       
  digitalWrite(dht11_pin, LOW);
  delay(18);
  digitalWrite(dht11_pin, HIGH);
  delayMicroseconds(1);
  pinMode(dht11_pin, INPUT);
  delayMicroseconds(40);     
    
  if (digitalRead(dht11_pin))
  {
    Serial.println("dht11 start condition 1 not met"); // wait for DHT response signal: LOW
    delay(1000);
    return;
  }
  delayMicroseconds(80);
  if (!digitalRead(dht11_pin))
  {
    Serial.println("dht11 start condition 2 not met");  //wair for second response signal:HIGH
    return;
  }
    
  delayMicroseconds(80);// now ready for data reception
  for (i=0; i<5; i++)
  {  dht11_dat[i] = read_dht11_dat();}  //recieved 40 bits data. Details are described in datasheet
    
  pinMode(dht11_pin, OUTPUT);
  digitalWrite(dht11_pin, HIGH);
  byte dht11_check_sum = dht11_dat[0]+dht11_dat[2];// check check_sum
  if(dht11_dat[4]!= dht11_check_sum)
  {
    Serial.println("DHT11 checksum error");
  }
  Serial.print("Current humdity = ");
  Serial.print(dht11_dat[0], DEC);
  Serial.print("%  ");
  Serial.print("temperature = ");
  Serial.print(dht11_dat[2], DEC);
  Serial.println("C  ");
  delay(1000); //fresh time
}

Was mache ich falsch?

Grüße
speedy

Laut Datenblatt: micro4you.com is for sale | HugeDomains haben die DHT11 eine Genauigkit von +/-5% bei der relativen Luftfeuchtigkeit und +/- 2°C bei der Temperatur. Wenn es genauer werden soll, bietet sich der DHT22 an.

Jep, kann ich bestätigen! Nun hab ich 5 davon hier am verrosten.
DS18B20 ist TOP!
Habe vor kurzem ein Artikel gelesen, der hier scheint auch ganz ok zu sein.

Hi,

da gebe ich dir recht, doch sind die so ungenau? 58% zu 39% sind ja der Hammer.

Habe eben einen neuen DHT11 ausprobiert und der zeigt LF 47% und 23°C.

Naja werde mir dann zum testen mal einen DHT22 besorgen.

Vielen Dank für die HIlfe.

Grüße
speedy

DS18B20 ist TOP!

Das kann ich nur bestätigen :slight_smile:

Gruß
speedy