Bueno tuve problemas intentando usar el modulo AMT1001 de arduino para medir humedad y temperatura ya que no encontré mucha información sobre esto quise publicarlo como logre hacerlo funcionar.
Que es cada cable:
rojo: 5v
negro: GND
amarillo:humedad OUT
Blanco: temperatura OUT
Este es el montaje que hice:
para que funcione este montaje es necesario usar una resistencia de 10KiloOhmios.
Como quizas no se vea bien el codigo aqui por las les dejo igual un link de mega con el codigo para arduino
**m**e*g**a.***n*z***#**!***wcAk1LTb!0R7dG9oQQawW3m0jrrt94nddBwKHN-8r_PwEdicQTik
(borren los asterios *)
Código en arduino:
/*conexion:rojo:5v; negro:GND; amarillo:humedad OUT; Blanco: temperatura OUT*/
int humPin = A0;
int tempPin = A1;
float humedad = 0;
float temperatura = 0;
//funcion calcular temperatura AMT1001
float calc_temp(float val){
float Temp;
Temp = log(10000.0*((1024.0/val-1)));//se uso una resistencia de 10k =10000 ohmios
Temp = 1 / (0.001129148 + (0.000234125 + (0.0000000876741 * Temp * Temp ))* Temp );
Temp = Temp - 273.15; // Convertir de Kelvin a Celcius
return Temp;
}
//funcion calcular humedad AMT1001
float calc_hum(float val){
float H;
H = 0.163 * val;//RH10 = val + 6*val/10 + 3*val/100; = 0.163*val
return(H);
}
void setup() {
Serial.begin(9600);
}
void loop() {
humedad = calc_hum(analogRead(humPin));
temperatura = calc_temp(analogRead(tempPin));
Serial.print("humedad: ";
Serial.print(humedad);
Serial.print(" %";
Serial.print("t";
Serial.print("temperatura: ";
Serial.print(temperatura);
Serial.println(" C";
Serial.println("--------------------------------------------------------------------------------------------";
delay(1000);
}
Que es cada cable:
rojo: 5v
negro: GND
amarillo:humedad OUT
Blanco: temperatura OUT
Este es el montaje que hice:
para que funcione este montaje es necesario usar una resistencia de 10KiloOhmios.
Como quizas no se vea bien el codigo aqui por las les dejo igual un link de mega con el codigo para arduino
**m**e*g**a.***n*z***#**!***wcAk1LTb!0R7dG9oQQawW3m0jrrt94nddBwKHN-8r_PwEdicQTik
(borren los asterios *)
Código en arduino:
/*conexion:rojo:5v; negro:GND; amarillo:humedad OUT; Blanco: temperatura OUT*/
int humPin = A0;
int tempPin = A1;
float humedad = 0;
float temperatura = 0;
//funcion calcular temperatura AMT1001
float calc_temp(float val){
float Temp;
Temp = log(10000.0*((1024.0/val-1)));//se uso una resistencia de 10k =10000 ohmios
Temp = 1 / (0.001129148 + (0.000234125 + (0.0000000876741 * Temp * Temp ))* Temp );
Temp = Temp - 273.15; // Convertir de Kelvin a Celcius
return Temp;
}
//funcion calcular humedad AMT1001
float calc_hum(float val){
float H;
H = 0.163 * val;//RH10 = val + 6*val/10 + 3*val/100; = 0.163*val
return(H);
}
void setup() {
Serial.begin(9600);
}
void loop() {
humedad = calc_hum(analogRead(humPin));
temperatura = calc_temp(analogRead(tempPin));
Serial.print("humedad: ";
Serial.print(humedad);
Serial.print(" %";
Serial.print("t";
Serial.print("temperatura: ";
Serial.print(temperatura);
Serial.println(" C";
Serial.println("--------------------------------------------------------------------------------------------";
delay(1000);
}