Sensor de humedad del suelo Arduino con proyecto LCD

¡Finalmente, tus plantas pueden comunicarse contigo! Simplemente no se enoje si solo le están avisando cuando necesitan algo.
El sensor de humedad del suelo le indicará cuándo es necesario regar sus plantas en función de la humedad del suelo en su maceta, jardín o patio. Las dos sondas del sensor funcionan como resistencias variables. Debido a que el agua conduce la electricidad, cuanta más agua haya en el suelo, mejor será la conductividad y menor será la resistencia, lo que da como resultado una señal de salida más alta.

Puede usarlo en un sistema de riego automático doméstico, conectarlo al IOT o simplemente usarlo para averiguar cuándo su planta necesita un poco de TLC. ¡Estará en camino de desarrollar un pulgar verde una vez que haya instalado este sensor y su PCB!

En este proyecto, le mostraremos cómo conectar el sensor de humedad del suelo con Arduino y cómo programarlo. Una vez que conectemos con éxito el sensor de humedad del suelo con Arduino, usaremos un módulo Arduino y un módulo LCD 16 × 2 para construir una pantalla de humedad. La pantalla monitorea constantemente el valor de humedad del suelo en porcentaje (%). Entonces, ¡comencemos con el proyecto!

Componentes necesarios para el sensor de humedad del suelo Arduino con proyecto LCD

Software

Sensor de humedad del suelo

El sensor de humedad del suelo puede determinar cuánta humedad hay en el suelo que lo rodea. Ideal para vigilar un huerto urbano o el nivel del agua de la planta de tu mascota. ¡Esta es una herramienta esencial para cualquier jardín conectado!
Este sensor conduce la corriente a través del suelo usando dos sondas, luego lee la resistencia para determinar el nivel de humedad. Más agua permite que el suelo conduzca la electricidad más fácilmente (con menos resistencia), mientras que el suelo seco no lo hace (más resistencia).

Preestablecido (potenciómetro)

Con el preajuste integrado, puede ajustar el umbral de salida digital (sensibilidad).

Características del sensor de humedad del suelo

  • Sensor de humedad del suelo basado en la medición de la resistividad del suelo
  • Salida digital: 0 V a 5 V, nivel de disparo ajustable desde el preestablecido
  • Salida analógica: 0 V a 5 V según la radiación infrarroja de la llama de fuego que cae sobre el sensor
  • LED que indican salida y potencia
  • Diseño basado en LM393
  • Fácil de usar con microcontroladores o incluso con IC digital / analógico normal
  • Pequeño, económico y de fácil acceso

Aplicaciones del sensor de humedad del suelo

  • Sensor de humedad
  • Detección de nivel de líquido
  • Jardinería botánica
  • Detección de inundaciones
  • Medida de consistencia

Especificaciones del sensor de humedad del suelo

Tensión de funcionamiento 3.3 V a 5 V CC
Corriente de funcionamiento 15 mA
Señal de voltaje de salida 0 ~ 4,2 v
Valor de salida Suelo seco 0 ~ 300
Suelo húmedo 300 ~ 700
Agua 700 ~ 950
Tamaño de PCB 3,2 cm x 1,4 cm
Costo Consultar precio

Para obtener más información, puede consultar la hoja de datos del sensor de humedad del suelo a continuación:

Conexión del sensor de humedad del suelo Arduino

Conexión del sensor de humedad del suelo Arduino

Nota: El sensor se conecta al 5V.

Código del sensor de humedad del suelo Arduino

Al hacer clic en el botón en la esquina superior derecha del campo del código, puede copiar el código. Cópialo y pégalo en Arduino IDE.

/ *** revhardware.com *** / / *** Proyecto del sensor de humedad del suelo Arduino *** / / * # descripción del valor del sensor # 0 ~ 300 suelo seco # 300 ~ 700 suelo húmedo # 700 ~ 950 pulg agua * / int sensorPin = A0; // seleccione el pin de entrada para el potenciómetro int sensorValue = 0; // variable para almacenar el valor proveniente del sensor void setup () {pinMode (sensorPin, INPUT); Serial.begin (9600); } void loop () {// Obtenga una lectura del sensor de humedad: sensorValue = analogRead (sensorPin); / * —— Mostrar el valor del sensor de humedad en el monitor en serie —— * / Serial.print («Valor del sensor de humedad:»); Serial.println (sensorValue); // Muestra el porcentaje de humedad flotante porcentaje de humedad; Porcentaje de humedad = (sensorValue / 1023) * 100; Serial.print («Porcentaje de humedad =»); Serial.print (porcentaje de humedad); Serial.print («% n»); // Muestra la necesidad de la planta if (sensorValue <300) {Serial.println («Tengo sed, por favor dame agua»); } else if (sensorValue> 300 && sensorValue <700) {Serial.println («Me siento tan cómodo»); } if (sensorValue> 700) {Serial.println («Demasiada agua, podría lastimarme»); } Serial.print (» n»); retraso (500); }

Sensor de humedad del suelo e interfaz LCD con Arduino

Ahora usamos un Arduino y un módulo LCD 16 × 2 para construir una pantalla de humedad. La pantalla monitorea constantemente el valor de humedad del suelo en porcentaje (%).

Sensor de humedad del suelo Arduino con diagrama de circuito de pantalla LCD

Sensor de humedad del suelo Arduino con diagrama de circuito de pantalla LCD

La mayoría de las pantallas LCD incluyen una resistencia en serie para la retroiluminación LED. Debe estar conectado al pin 15 en la parte posterior de la pantalla LCD (ánodo). Si su pantalla no viene con uno, deberá agregar uno entre 5 V y el pin 15. Una resistencia de 220 debería estar bien, pero puede hacer que su pantalla se oscurezca un poco. Es mejor consultar la hoja de datos de su dispositivo para determinar la corriente nominal máxima de la luz de fondo antes de seleccionar un valor de resistencia.
Debe ajustar el contraste de la pantalla LCD. Girando el potenciómetro de 10 kΩ en sentido horario o antihorario se logra esto.

Sensor de humedad del suelo Arduino con código de pantalla LCD

/ *** revhardware.com *** / / *** Proyecto del sensor de humedad del suelo Arduino con LCD *** / // Defina a qué pin del Arduino está conectada la salida del sensor de humedad del suelo Arduino: int sensorPin = A0; int sensorValue = 0; // variable para almacenar el valor proveniente del sensor #include / * Crear objeto llamado lcd de la clase LiquidCrystal * / LiquidCrystal lcd (8,9,10,11,12,13); / * Para el modo de 4 bits * / // LiquidCrystal lcd (8,9,10, 2, 3, 4, 5, 10,11,12,13); / * Para modo de 8 bits * / grado de byte[8] = {0b00011, 0b00011, 0b00000, 0b00000, 0b00000, 0b00000, 0b00000, 0b00000}; configuración vacía () {lcd.begin (16,2); lcd.createChar (1, grado); lcd.setCursor (2,0); lcd.print («Punto Arduino»); lcd.setCursor (2,1); lcd.print («Humedad del suelo»); retraso (2000); lcd.clear (); // Comience la comunicación en serie a una velocidad de 9600 baudios: Serial.begin (9600); } void loop () {// Obtenga una lectura del sensor de humedad: sensorValue = analogRead (sensorPin); / * —— Mostrar el valor del sensor de humedad en el monitor en serie —— * / Serial.print («Valor del sensor de humedad:»); Serial.println (sensorValue); // Muestra el porcentaje de humedad flotante porcentaje de humedad; Porcentaje de humedad = (sensorValue / 1023) * 100; Serial.print («Porcentaje de humedad =»); Serial.print (porcentaje de humedad); Serial.print («% n»); // Muestra la necesidad de la planta if (sensorValue <300) {Serial.println («Tengo sed, por favor dame agua»); } else if (sensorValue> 300 && sensorValue <700) {Serial.println («Me siento tan cómodo»); } if (sensorValue> 700) {Serial.println («Demasiada agua, podría lastimarme»); } Serial.print (» n»); / * —— Mostrar valor del sensor de humedad en LCD —— * / lcd.clear (); lcd.setCursor (0,0); lcd.print («Humedad del suelo»); lcd.setCursor (0,1); lcd.print (sensorValue); lcd.setCursor (6,1); lcd.print («&»); lcd.setCursor (8,1); lcd.print (porcentaje de humedad); lcd.print («%»); retraso (500); }

Resultado

Debería ver que su pantalla monitorea constantemente la humedad que rodea al sensor de humedad del suelo y lo muestra en la pantalla del módulo LCD en porcentaje (%). Si no puede ver la salida deseada, asegúrese de que el circuito se haya ensamblado correctamente y verificado y cargado el código en su placa.

Aplicaciones:

  • Monitorea la humedad del suelo con un monitor en serie y una pantalla LCD.