Arduino Forum

International => Español => Hardware => Topic started by: Adrian_E on May 29, 2018, 02:18 pm

Title: Capacitiva Sensor de humedad para Arduino (resuelto)
Post by: Adrian_E on May 29, 2018, 02:18 pm
Hola, tengo una consulta que hacerles quiero adquirir un par de estos sensores de humedad de suelo
sensor (https://www.ebay.com/itm/NEU-Analog-Capacitive-Soil-Moisture-Sensor-V1-2-Corrosion-Resistant-Cable/232773164628?hash=item36325c9e54:g:yWoAAOSwg7pa~qAi)



por lo que lei son utilizable con arduino y son mejores que los resistivos, la pregunta es, se conectan directo al arduino y se lee con analogRead(); como por ejemplo los potenciometros, o precisan algo mas
Title: Re: Capacitiva Sensor de humedad para Arduino
Post by: Esfinterman on May 29, 2018, 03:00 pm
Hola!! Según veo en el enlace que proporcionas en el que el vendedor detalla ciertas partes del sensor, éste ofrece una salida de 0 a 3v y la salida es analógica. A no ser que no lo haya detallado o explicado debidamente, podrás usar perfectamente ese sensor directo a la entrada analógica. Eso sí, ten en cuenta que, como la salida máxima es de 3v en analógico, no vas a llegar a un valor máximo del pin, a 1023. Tendrás que escribir un poco de código (no mucho) para convertir esos 3v en el máximo y poder tener una referencia visual porcentual. Bueno, esto lo digo teniendo en cuenta que usas una placa Arduino de 5v, porque si la usas de 3,3v estarás más cerca, obviamente, del 100%. ;)
Title: Re: Capacitiva Sensor de humedad para Arduino
Post by: Adrian_E on May 29, 2018, 03:29 pm
deberia usar la funcion   como por ejemplo y = map(x, 1, 50, 50, -100);?
Title: Re: Capacitiva Sensor de humedad para Arduino
Post by: Esfinterman on May 29, 2018, 03:40 pm
Deberás usar map, correcto!! ;) Para ello, deberás obtener la lectura más alta y la lectura más baja. Si sumergido en agua te da una lectura baja, con baja humedad te tendrá que dar una lectura alta. Para probar el caso de poca humedad, pon el sensor en la boca de un aireador de aire acondicionado con el frío al máximo. El aire frío que sale lo hace con muy baja humedad. ;)
Title: Re: Capacitiva Sensor de humedad para Arduino
Post by: cotarejo on May 29, 2018, 04:07 pm
Si exacto, para leer necesitas usar la función analogRead(0) "siendo 0 el pin analógico al que está conectado el sensor"

por ejemplo:

Code: [Select]

void setup() {
  Serial.begin(9600); // open serial port, set the baud rate as 9600 bps
}
void loop() {
  int val = analogRead(0); //connect sensor to Analog 0


Si luego quieres, puedes ver el valor que arroja el sensor y el valor que daría convirtiéndolo con map() para que tengas un porcentaje... por ejemplo tal que así:

Code: [Select]

void setup() {
  Serial.begin(9600); // open serial port, set the baud rate as 9600 bps
}
void loop() {
  int val = analogRead(0); //connect sensor to Analog 0

  int finporcentaje = map(val, 0, 1023, 100, 0);

  Serial.print("Valor del sensor capacitivo: ");
  Serial.print(val);
  Serial.print(" ");
  Serial.print("Porcentaje del sensor capacitivo: ");
  Serial.print(finporcentaje);
  Serial.println("%");

  delay(1000);
}


Suerte!
Title: Re: Capacitiva Sensor de humedad para Arduino (resuelto)
Post by: Adrian_E on May 29, 2018, 04:32 pm
ok gracias por tus consejos.