Tabla de contenido:

Suelo más húmedo con nodo: 7 pasos
Suelo más húmedo con nodo: 7 pasos

Video: Suelo más húmedo con nodo: 7 pasos

Video: Suelo más húmedo con nodo: 7 pasos
Video: USTEDES saben nadar? 🏊‍♂️ @seleneguzmanh 2024, Noviembre
Anonim
Image
Image
Suelo más húmedo con nodo
Suelo más húmedo con nodo
Suelo más húmedo con nodo
Suelo más húmedo con nodo
Suelo más húmedo con nodo
Suelo más húmedo con nodo

En este manual le mostraré cómo hacer un sensor de suelo casero para el sistema de salud del jardín. Le mostraré lo que necesita, le daré algunos ejemplos de código y cómo implementar el código.

Al final de las instrucciones, sabrá cómo cambiar el color de una tira de led cuando el suelo está húmedo, un poco húmedo o seco.

En este manual usaré:

  • Arduino versión 1.8.9
  • La biblioteca Adafruit_NeoPixel.h

Suministros

Necesitarás:

  • NodeMCU 1.0 (módulo ESP-12E)
  • 1 cable hembra a hembra
  • Una tira de LED
  • (Opcional) Sensor de suelo Homade (Vea el video de arriba hasta las 00:36)

Paso 1: configuración

Configuración
Configuración
Configuración
Configuración
Configuración
Configuración
Configuración
Configuración
  • Toma tu nodo y tu sensor de suelo.
  • Conecte el sensor de suelo a A0. (Foto 1) (alternativamente tome un cable hembra stript y conéctelo a A0 (Foto 3)

Toma tu tira de LED y pon GND en G, 5V en 3V y el cable del medio en D5. (Foto 2)

Ahora se parecerá a la última foto.

Paso 2: Agregar código para sensor de suelo

Agregar código para sensor de suelo
Agregar código para sensor de suelo
  • Hacer un nuevo proyecto en arduino IDE
  • Pasado en el siguiente código:

/ * Entrada analógica, salida analógica, salida en serie

Lee un pin de entrada analógica, asigna el resultado a un rango de 0 a 255 y usa el resultado para establecer la modulación de ancho de pulso (PWM) de un pin de salida. También imprime los resultados en Serial Monitor.

El circuito: - potenciómetro conectado al pin analógico 0. El pin central del potenciómetro va al pin analógico. los pines laterales del potenciómetro van a + 5V y tierra - LED conectado desde el pin digital 9 a tierra

creado el 29 de diciembre de 2008 modificado el 9 de abril de 2012 por Tom Igoe

Este código de ejemplo es de dominio público.

www.arduino.cc/en/Tutorial/AnalogInOutSeri… *

/ Estas constantes no cambiarán. Se utilizan para dar nombre a los pines utilizados: const int analogInPin = A0; // Pin de entrada analógica al que está conectado el potenciómetro const int analogOutPin = D5; // Pin de salida analógica al que está conectado el LED

int sensorValue = 0; // valor leído del bote

void setup () {// inicializar las comunicaciones en serie a 9600 bps: Serial.begin (9600); }

void loop () {// leer el valor analógico: sensorValue = analogRead (analogInPin);

// imprime los resultados en Serial Monitor: Serial.print ("sensor ="); Serial.print (sensorValue); Serial.print ("\ n"); // Serial.println (outputValue);

// esperar 1 milisegundo antes del siguiente bucle para que el // convertidor analógico-digital se estabilice después de la última lectura: delay (1000); }

Ahora puede verificar si su sensor da un valor.

Toque el extremo del tornillo o el cable y verá algo como la foto 1

Si no funciona, revise sus cables. ¿Están conectados correctamente?

Paso 3: Biblioteca de Neopixel

Biblioteca Neopixel
Biblioteca Neopixel
  • Descargue la biblioteca adafruit_neopixel (si aún no lo ha hecho).

    • Vaya a herramientas> administrar libererias
    • buscar adafruit neopixel foto 1
    • Instalar la versión 1.2.5

Paso 4: Configuración del código Neopixel

  • Agregue lo siguiente en la parte superior de su proyecto

    • #incluir
    • #incluir
    • #include "Adafruit_NeoPixel.h"
  • Debajo de eso:

char ssid = "SSID"; // el SSID de su red (nombre)

char contraseña = "contraseña"; // su contraseña de red

Y debajo de eso

#define PIXEL_PIN D5 # define PIXEL_COUNT 30 // cambia la forma en que los LED de maney están en tu tira

#define PIXEL_TYPE NEO_GRB + NEO_KHZ800

Adafruit_NeoPixel píxeles = Adafruit_NeoPixel (PIXEL_COUNT, PIXEL_PIN, PIXEL_TYPE);

Paso 5: Configuración nula

Ponga el siguiente código en la configuración de voide ()

pixels.begin (); // INICIALIZAR el objeto de tira de NeoPixel (OBLIGATORIO) pixels.show (); // Apague todos los píxeles lo antes posible

pixels.setBrightness (50); // debe estar entre 0 y 255 si desea que la tira de led sea más brillante, puede aumentar el número

Paso 6: bucle vacío

En el bucle vacío () y debajo del retardo (1000); ingrese el siguiente código

if (sensorValue == 0 || sensorValue <= 200) {

para (int i = 0; i

píxeles.setPixelColor (i, 255, 0, 0);

pixels.show ();

}

} else if (sensorValue> 200 || sensorValue <= 500) {

para (int i = 0; i

píxeles.setPixelColor (i, 0, 255, 0);

pixels.show ();

}

} else if (sensorValue> 500) {

para (int i = 0; i

píxeles.setPixelColor (i, 0, 0, 255);

pixels.show ();

}

}

}

Paso 7: comprobar

Cheque
Cheque
Cheque
Cheque

¡Felicidades! Acaba de crear un sistema que puede indicar si el suelo está húmedo o seco.

Ahora, cuando coloque el sensor en suelo húmedo, el LED se volverá verde y cuando esté en suelo seco se volverá rojo, como en las imágenes de arriba.

Recomendado: