Saturday, May 23, 2015

Teste - sensor de umidade

Mais uma característica a ser detectada do ambiente é a umidade. Para isso, o sensor disponível foi o DHT11 (sensor de umidade/temperatura), acoplado em um módulo para facilitar seu uso.
Em linhas gerais, o DHT11 utiliza um sensor de umidade e temperatura e um termistor para avaliar o ar do ambiente. O sensor é capaz de registrar a umidade do ar no intervalo de 20 a 90%, com precisão de 5%, e temperatura entre 0 e 50ºC, com precisão de 2ºC.
Com alimentação de 3-5.5 V, ele possui 4 terminais, um deles não utilizado e simplificado no módulo. O sinal pode ser enviado a uma porta digital do microcontrolador, sendo utilizado a seguinte conexão com o Arduino:



Uma biblioteca disponível na própria plataforma Arduino torna mais prático o uso do sensor. Com isso, o seguinte código foi compilado por meio da Arduino IDE:
//   FILE:  dht11_test1.pde
// PURPOSE: DHT11 library test sketch for Arduino
//
#include <dht11.h>
dht11 DHT;
#define DHT11_PIN 4

void setup(){
  Serial.begin(9600);
  Serial.println("DHT TEST PROGRAM ");
  Serial.print("LIBRARY VERSION: ");
  Serial.println(DHT11LIB_VERSION);
  Serial.println();
  Serial.println("Type,\tstatus,\tHumidity (%),\tTemperature (C)");
}

void loop(){
  int chk;
  Serial.print("DHT11, \t");
  chk = DHT.read(DHT11_PIN);    // READ DATA
  switch (chk){
    case DHTLIB_OK:  
                Serial.print("OK,\t"); 
                break;
    case DHTLIB_ERROR_CHECKSUM: 
                Serial.print("Checksum error,\t"); 
                break;
    case DHTLIB_ERROR_TIMEOUT: 
                Serial.print("Time out error,\t"); 
                break;
    default: 
                Serial.print("Unknown error,\t"); 
                break;
  }
 // DISPLAT DATA
  Serial.print(DHT.humidity,1);
  Serial.print(",\t");
  Serial.println(DHT.temperature,1);

  delay(20000);
}
Por fim, os resultados obtidos na etapa de teste podem ser visualizados abaixo:

No comments:

Post a Comment