Aproximadamente el 71% de la tierra está cubierta de agua, pero lamentablemente solo el 2,5% es agua potable. Con el aumento de la población, la contaminación y el cambio climático, se espera que para el 2025 experimentemos una escasez permanente de agua. Por un lado, ya existen disputas menores entre naciones y estados por compartir el agua de los ríos, por otro lado, como seres humanos, desperdiciamos mucha agua potable debido a nuestra negligencia.
Puede que no parezca grande a la primera, pero si su grifo gotea una gota de agua una vez por segundo, solo le tomaría alrededor de cinco horas desperdiciar un galón de agua, que es suficiente agua para que un humano promedio sobreviva durante dos dias. Entonces, ¿qué se puede hacer para detener esto? Como siempre, la respuesta para esto radica en la mejora de la tecnología. Si sustituimos todos los grifos manuales por uno inteligente que se abre y se cierra por sí solo de forma automática, no solo podemos ahorrar agua, sino que también tenemos un estilo de vida más saludable ya que no tenemos que abrir el grifo con las manos sucias. Entonces, en este proyecto, construiremos un dispensador de agua automático usando Arduino y una válvula solenoide que puede darle agua automáticamente cuando se coloca un vaso cerca de él. Suena bien, ¿verdad? Así que construyamos uno…
Materiales necesarios
- Válvula de solenoide
- Arduino Uno (cualquier versión)
- HCSR04 - Sensor ultrasónico
- MOSFET IRF540
- Resistencia de 1k y 10k
- Tablero de circuitos
- Conexión de cables
Concepto de trabajo
El concepto detrás del dispensador de agua automático es muy simple. Utilizaremos un Sensor Ultrasónico HCSR04 para comprobar si algún objeto como el vaso se coloca delante del dispensador. Se utilizará una válvula solenoide para controlar el flujo de agua, que es cuando se energiza el agua saldrá y cuando se desenergiza el agua se detendrá. Entonces, escribiremos un programa Arduino que siempre verifica si algún objeto se coloca cerca del grifo, si es así, el solenoide se encenderá y esperará hasta que se elimine el objeto, una vez que se elimine el objeto, el solenoide se apagará automáticamente cerrando así suministro de agua. Obtenga más información sobre el uso del sensor ultrasónico con Arduino aquí.
Diagrama de circuito
El diagrama de circuito completo para el dispensador de agua basado en Arduino se muestra a continuación
La válvula solenoide utilizada en este proyecto es una válvula de 12 V con una corriente nominal máxima de 1,2 A y una corriente nominal continua de 700 mA. Es entonces cuando se enciende la válvula, consumirá alrededor de 700 mA para mantener la válvula encendida. Como sabemos, un Arduino es una placa de desarrollo que funciona con 5 V y, por lo tanto, necesitamos un circuito de controlador de conmutación para que el solenoide lo encienda y apague.
El dispositivo de conmutación utilizado en este proyecto es el MOSFET de canal N IRF540N. Tiene la puerta, la fuente y el drenaje de 3 pines del pin 1 respectivamente. Como se muestra en el diagrama del circuito, el terminal positivo del solenoide se alimenta con el pin Vin del Arduino. Porque usaremos un adaptador de 12V para alimentar el Arduino y, por lo tanto, el pin Vin generará 12V que se puede usar para controlar el Solenoide. El terminal negativo del solenoide está conectado a tierra a través de los pines Fuente y Drenaje del MOSFET. Entonces, el solenoide se encenderá solo si el MOSFET está encendido.
El pin de puerta del MOSFET se usa para encenderlo o apagarlo. Permanecerá apagado si el pin de la puerta está conectado a tierra y se encenderá si se aplica un voltaje de puerta. Para mantener el MOSFET apagado cuando no se aplica voltaje al pin de la puerta, el pin de la puerta se tira a tierra a través de una resistencia de 10k. El pin 12 de Arduino se usa para encender o apagar el MOSFET, por lo que el pin D12 está conectado al pin de la puerta a través de una resistencia de 1K. Esta resistencia de 1K se utiliza para limitar la corriente.
El sensor ultrasónico es alimentado por los pines de tierra y + 5V del Arduino. El pin Echo y Trigger está conectado al pin 8 y al pin 9 respectivamente. Luego podemos programar el Arduino para usar el sensor ultrasónico para medir la distancia y encender el MOSFET cuando se detecta un objeto. Todo el circuito es simple y, por lo tanto, se puede construir fácilmente sobre una placa de pruebas. El mío se veía así a continuación después de hacer las conexiones.
Programando la placa Arduino
Para este proyecto tenemos que escribir un programa que utiliza el sensor ultrasónico HCSR-04 para medir la distancia del objeto frente a él. Cuando la distancia es menor a 10cm tenemos que encender el MOSFET y de lo contrario tenemos que apagar el MOSFET. También usaremos el LED integrado conectado al pin 13 y lo alternaremos junto con el MOSFET para que podamos asegurarnos si el MOSFET está encendido o apagado. El programa completo para hacer lo mismo se encuentra al final de esta página. Justo debajo he explicado el programa dividiéndolo en pequeños fragmentos significativos.
El programa comienza con la definición de macros. Tenemos el disparador y el pin de eco para el sensor ultrasónico y el pin y el LED de la puerta MOSFET como E / S para nuestro Arduino. Así que hemos definido a qué pin se conectarán. En nuestro hardware hemos conectado el pasador de eco y de disparo a 8 y 9 º pin digital respectivamente. Luego, el pin MOSFET se conecta al pin 12 y el LED integrado por defecto está conectado al pin 13. Definimos lo mismo usando las siguientes líneas
#define trigger 9 #define echo 8 #define LED 13 #define MOSFET 12
Dentro de la función de configuración declaramos qué pines son de entrada y cuáles son de salida. En nuestro hardware, solo el pin de eco del sensor ultrasónico (EE. UU.) Es el pin de entrada y el resto son pines de salida. Entonces usamos la función pinMode de Arduino para especificar lo mismo que se muestra a continuación
pinMode (disparador, SALIDA); pinMode (eco, ENTRADA); pinMode (LED, SALIDA); pinMode (MOSFET, SALIDA);
Dentro de la función del bucle principal, llamamos a la función llamada medida_distancia (). Esta función utiliza el sensor de EE. UU. Para medir la distancia del objeto frente a él y actualiza el valor a la variable ' distancia' . Para medir la distancia con el sensor de EE. UU., El pasador del gatillo debe mantenerse bajo primero durante dos microsegundos y luego en alto durante diez microsegundos y nuevamente en bajo durante dos microsegundos. Esto enviará una ráfaga sónica de señales ultrasónicas al aire que serán reflejadas por el objeto frente a él y el pin de eco recogerá las señales reflejadas por él. Luego usamos el valor del tiempo necesario para calcular la distancia del objeto por delante del sensor. Si tu quieres saber