Descripción
El sensor de humedad de suelo capacitivo se caracteriza por medir la humedad en el suelo sin la necesidad de utilizar el principio de la conductividad eléctrica, empleado de manera alternativa a esta propiedad los cambios de capacitancia entre dos placas conductoras según la humedad del medio circundante. Debido al método de detección utilizado este sensor no es tan propenso a la corrosión, por lo que puede mantenerse en funcionamiento por periodos más prolongados.
El sensor capacitivo de humedad es ideal como reemplazo a nuestro tradicional sensor de humedad de suelo que opera midiendo la conductividad. La salida de este sensor es analógica por lo que se requiere que el controlador tenga una entrada de convertidor analógico a digital disponible. En el caso de Raspberry Pi que no tiene disponible una entrada analógica se recomienda usar un módulo con ADC ADS1115.
Como la mayoría de los sensores de este tipo, es necesario calibrarlo para obtener buenos resultados en la aplicación final, ya que la salida de el sensor depende del tipo de sustrato y parámetros químicos del agua y fertilizantes usados.
Para utilizar este sensor en ambientes con humedad y rocío se recomienda recubrir la parte donde se encuentran los circuitos electrónicos con resina epóxica. La parte donde se encuentran los componentes no debe sumergirse nunca en líquido.
Características y especificaciones de sensor de humedad de suelo capacitivo
- Voltaje de operación: 3.3 a 5.5 VDC
- Voltaje de salida: 0 a 3.0 VDC
- Corriente en funcionamiento: 5 mA
- Interfaz: Analógica con conector PH2.0-3P
- Peso: 15 gramos
- Dimensiones
- Largo: 9.8 cm
- Ancho: 2.3 cm
- Alto: 0.5 cm
Calibración
Para calibrar el sensor es necesario realizar el siguiente procedimiento:
- Medir el valor que registra el convertidor analógico a digital cuando el sensor se encuentra en el sustrato seco o bien al aire libre y tomar nota de este valor. Como ejemplo utilizaremos 550
- Repetir el paso anterior pero con el sensor colocado en un vaso con agua o en sustrato húmedo, tomar nota de este valor. Como ejemplo usaremos 230
- Crear una escala basada en el rango de valores que encontramos, por ejemplo:
- Humedad baja: 550 a 450
- Humedad media 449 a 320
- Humedad alta: 230 a 319
- Podemos realizar ajustes en la calibración y escalas para adecuar el funcionamiento del sensor a cada aplicación.
Los ajustes finales del sensor de humedad de suelo capacitivo requieren un poco de prueba y error y conocimiento empírico.
Código de ejemplo para Arduino
El siguiente programa nos ayuda para la puesta en marcha del sensor, ya que muestra en el monitor serial el valor leído por el ADC. También clasifica la lectura en 3 niveles de humedad: baja, media y alta.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 | /** Geek Factory - "Dale vuelo a tus proyectos" www.geekfactory.mx PROGRAMA DE PRUEBA PARA SENSOR DE HUMEDAD DE SUELO CAPACITIVO ANTI CORROSIÓN CONSULTA EL ARCHIVO LICENCIA.TXT PARA CONOCER MÁS SOBRE LOS DERECHOS DE DISTRIBUCIÓN DE ESTE MATERIAL O LA SIGUIENTE URL: HTTPS://WWW.GEEKFACTORY.MX/LICENCIA-CONTENIDO. PUBLICADO BAJO LICENCIA ATTRIBUTION-NONCOMMERCIAL-SHAREALIKE 4.0 INTERNATIONAL (CC BY-NC-SA 4.0). GEEK FACTORY INVIERTE TIEMPO Y RECURSOS EN DESARROLLAR ESTOS EJEMPLOS Y TUTORIALES. SI ENCUENTRAS ÚTIL ESTE CÓDIGO, CONSIDERA REALIZAR UNA COMPRA CON NOSOTROS. Resumen: Programa para determinar la humedad del suelo utilizando el sensor de humedad capacitivo anti corrosión modelo SEN0102. Este programa clasifica la humedad del sustrato en 3 niveles. Las condiciones if - else if - else deben ajustarse de acuerdo con la calibración específica para cada sensor. */ // pin donde se conecta el sensor de humedad const int sensorpin = A0; /** Función setup: se ejecuta una vez cuando encendemos el arduino */ void setup() { // preparar interfaz serial Serial.begin(9600); // mostrar mensaje inicial Serial.println(F("----------------------------------------------------")); Serial.println(F(" EJEMPLO SENSOR DE HUMEDAD DE SUELO CAPACITIVO ")); Serial.println(F(" https://www.geekfactory.mx ")); Serial.println(F("----------------------------------------------------")); } /** Función loop: se ejecuta continuamente mientras el arduino permanece encendido */ void loop() { // leemos el pin analogico donde está conectado el sensor int senval = analogRead(sensorpin); // imprimir para auxiliarnos en la calibración Serial.print(F("Valor ADC: ")); Serial.println(senval); // evaluar el valor del sensor if (senval < 600 && senval >= 450) { // intevalo de humedad baja Serial.println(F("Humedad baja")); } else if (senval >= 320 && senval < 450) { // interfalo de humedad media Serial.println(F("Humedad media")); } else if (senval >= 180 && senval < 320) { // intervalo de humedad alta Serial.println(F("Humedad alta")); } else { // valor fuera del rango esperado, probablemente sensor desconectado o en mal estado Serial.println(F("Sensor desconectado o en mal estado")); } // esperar 5 segundos entre mediciones delay(5000); } |








Valoraciones
No hay valoraciones aún.