Se puede construir fácilmente un sistema simple de detección de lluvia al conectar un Arduino con un sensor de lluvia . El sensor detectará cualquier lluvia que caiga sobre él y la placa Arduino lo detectará y podrá realizar las acciones necesarias. Un sistema como este se puede utilizar en muchos campos diferentes, como la agricultura y el automóvil.

Materiales necesarios

  • Arduino UNO
  • Sensor de lluvia
  • Zumbador
  • Tablero de circuitos
  • Cables de conexión

Sensor de lluvia

El módulo Rain Board consta de dos pistas de cobre, diseñadas de tal manera que, en condiciones secas, proporcionan una alta resistencia al voltaje de suministro, y este voltaje de salida de este módulo será de 5V. La resistencia de este módulo disminuye gradualmente con respecto a un aumento de la humedad en el tablero. A medida que disminuye la resistencia, su voltaje de salida también disminuye con respecto a la humedad en el módulo. El módulo de la placa de lluvia consta de dos pines que se utilizan para conectarse a la placa de control como se muestra a continuación.

El módulo de Control Board controla la sensibilidad y convierte la salida analógica en salida digital . Si el valor analógico está por debajo del valor umbral de la placa de control, la salida es digital baja, y si el valor analógico es mayor que el valor umbral, la salida es digital alta. Para esta comparación y conversión, se utiliza un LM393 OP-Amp Comparator .

Funcionamiento del sensor de lluvia

El funcionamiento del módulo del sensor de lluvia es fácil de entender. Durante un día soleado, debido a la sequedad en el módulo de lluvia, ofrece una alta resistencia a la tensión de alimentación. Este voltaje aparece en el pin de salida del módulo de lluvia como 5V. Este 5V se lee como 1023 si lo lee un pin analógico del Arduino. Durante la lluvia, el agua de lluvia provoca un aumento de la humedad en el tablero de lluvia, lo que a su vez resulta en una disminución de la resistencia ofrecida por el suministro. A medida que la resistencia disminuye gradualmente, el voltaje de salida comienza a disminuir.

Cuando la tabla de lluvia está completamente húmeda y la resistencia que ofrece es mínima, el voltaje de salida será lo más bajo posible (aprox. 0). Este 0V se lee como valor 0 si lo lee un pin analógico del Arduino. Si el módulo de lluvia está parcialmente mojado, la salida de este módulo de lluvia será con respecto a la resistencia que ofrece. Si la resistencia ofrecida por el módulo de la placa de lluvia es tal que la salida es de 3V, el valor analógico de lectura será 613. La fórmula para encontrar ADC puede ser dada por, ADC = (valor de voltaje analógico X 1023) / 5 . Mediante el uso de esta fórmula, puede convertir cualquier voltaje analógico al valor de lectura analógica t Arduino.

Diagrama de circuito

El módulo pluviómetro, que se muestra en el diagrama del circuito, está conectado a la placa de control. El pin VCC de la placa de control está conectado a la fuente de 5V. El pin de tierra está conectado a tierra. Si es necesario, el pin D0 está conectado a cualquier pin digital del Arduino, y ese pin debe declararse como un pin de salida en el programa. El problema que enfrentamos con el pin D0 es que no podemos obtener el valor exacto del voltaje de salida. Si la salida cruza el voltaje umbral, entonces el módulo de control puede detectar el cambio en la salida. Necesitamos operar el timbre, incluso si hay un cambio considerable en el voltaje de salida en el módulo de la placa de lluvia. Debido a estas razones, el pin A0 está conectado al pin analógico de Arduino, lo que facilita el monitoreo del cambio en la salida. El timbre, que se usa como señal para el usuario, se puede conectar a cualquier pin digital del Arduino. Si el zumbador necesita más de 5 V, intente conectar un circuito de relé o un transistor y luego conecte la carga.

Explicación del código

El código Arduino para el sensor de lluvia fue escrito usando el IDE Arduino.

#definir lluvia A0
#define zumbador 5
valor int;
int set = 10;

Definiendo el pin A0 como lluvia, y el pin 5 como un timbre y declarando la variable «valor» y «set» como enteros y estableciendo su valor de configuración variable en 10. Este valor se puede cambiar de acuerdo con el nivel de operación requerido. Si desea que se active el zumbador, incluso cuando hay poca lluvia, configúrelo en un valor mínimo

configuración nula () {
  Serial.begin (9600);
  pinMode (zumbador, SALIDA);
  pinMode (lluvia, ENTRADA);
  }

Inicializando la comunicación serial y configurando el timbre. Establecer el pin de lluvia como pin de salida y pin de entrada.

bucle vacío () {
 valor = analogRead (lluvia);
 Serial.println (valor);
valor = mapa (valor, 0,1023,225,0);

la función analogRead lee el valor del sensor de lluvia. El mapa de funciones asigna el valor del sensor de lluvia desde el pin de salida y asigna un valor a la variable, que va de 0 a 225.

 if (valor> = conjunto) {
  Serial.println ("lluvia detectada");
  digitalWrite (zumbador, ALTO);

Si el valor del sensor de lectura es mayor que el valor establecido, el programa ingresa al bucle, imprime el mensaje en el monitor en serie y enciende el timbre

 más{
  digitalWrite (zumbador, BAJO);

El programa ingresa a la función else solo cuando el valor es menor que el valor establecido. Esta función apagará el timbre cuando el valor establecido sea mayor que el valor del sensor, lo que indica que no llueve.

https://circuitdigest.com/

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *