Dispensador De Gel Automático-Arduino

by Hadasa in Circuits > Arduino

1767 Views, 0 Favorites, 0 Comments

Dispensador De Gel Automático-Arduino

WhatsApp Image 2021-11-10 at 00.01.13 (1).jpeg
WhatsApp Image 2021-11-10 at 00.01.13.jpeg

Contenido

  • Introducción.
  • Materiales empleados.
  • Diseño y Conexión del Circuito en Tinkercad.
  • Código
  • Ensamble.
  • Video de Demostración.
  • Aprendizaje.

INTRODUCCIÓN.

Actualmente vivimos días difíciles a raíz de todo lo acontecido con el COVID-19, pero, una de las cosas a nuestro favor es la notable mejora en nuestros hábitos de higiene, incluido el uso de Alcohol en Gel o de Gel Antibacteriano para lavarnos las manos .

Por ello, nos propusimos desarrollar este proyecto: Un dispensador automático de gel. Y claro, quiero compartir contigo una explicación paso a paso, así como la guía de conexiones y el respectivo código fuente de la programación.

MATERIALES EMPLEADOS

ARDGEL.PNG
  • Placa Arduino UNO
  • Sensor de ultrasonidos
  • 1 Led verde
  • 1 Led rojo
  • 2 Resistencia
  • Protoboard (pequeño)
  • 1 Micro servomotor

DISEÑO Y CONEXIÓN DEL CIRCUITO EN TINKERCAD

Captura.PNG

En el circuito tenemos el sensor de distancia que tomará la distancia hasta el objeto más cercano y los LEDs que indicarán la disponibilidad del sistema (si está disponible o no para expulsar jabón).

El sensor de distancia esta conectado a la placa de pruebas en el positivo y negativo también a los pines 6 y 7 del Arduino UNO.

Los leds conectados en la placa de pruebas a las resistencias y los pines 10 y 11 del Arduino.

El micro servomotor conectado a el negativo y positivo de la placa de pruebas, y en el pin 3 del Arduino

Y finalmente el GND y 5V del Arduino conectado al negativo y positivo, respectivamente, de la placa de pruebas.

CÓDIGO

#include <Servo.h>
#define trigPin 7
#define echoPin 6
Larga duración;
larga distancia;

int LEDr = 11;
int LEDv = 10;

Servo ASU1;

<strong> <em> <u> En este segmento del código, vamos a estar asignando las variables y los componentes a sus propiedades pines y valores de inicio. </u> </em> </strong> <strong> <em> <u>
-Include Servo.h es la librería necesaria para el funcionamiento del servomotor
-Define trigpin y echopin se utilizan para incluir los puertos trig y echo en el sensor de movimiento al código
-Larga duración y larga distancia son variables numéricas. Son de tipo long ya que los datos no van a ser números exactos, sino números con decimales incluidos </u> </em> </strong>
<p> void setup () {</p> Serial.begin (9600);
  
  	ASU1.attach (3); <strong> <em> <u> | Aquí se le asigna un puerto digital al servomotor, en este caso el puerto 3 </u> </em> </strong>
 
  	pinMode (trigPin, SALIDA); <strong> <em> <u> </u> </em> </strong> <strong> <em> <u> aquí se asigna la variable de salida del pulso generado por el sensor </u> </ em > </strong>
   	pinMode (echoPin, ENTRADA); <em> <strong> <u> </u> </strong> </em> <em> <strong> <u> aquí se asigna la variable de entrada del pulso generado por el sensor </u> </ strong > </em>
  	pinMode (LEDr, SALIDA); <strong> <em> <u> </u> </em> </strong> <strong> <em> <u> Se asigna el primer LED </u> </em> </strong> <i>
	</i> pinMode (LEDv, SALIDA); Se asigna el segundo LED
}
<strong> <em> <u> Desde aquí, empezamos a trabajar dentro de la estructura Void Loop </u> </em> </strong>
<p> Void Loop () <br> {</p> digitalWrite (trigPin, LOW); <strong> <em> <u> Línea dedicada al recibimiento de los pulsos generados </u> </em> </strong>
  delayMicroseconds (5);
  digitalWrite (trigPin, HIGH); <strong> <em> <u> </u> </em> </strong> <strong> <em> <u> Línea dedicada al envío de los pulsos generados </u> </ em> </strong>
  delayMicroseconds (10);
  
  delayMicroseconds (10);
  digitalWrite (trigPin, BAJO);
  duración = pulseIn (echoPin, HIGH); <strong> <em> <u> </u> </em> </strong> <strong> <em> <u> Línea que mide el pulso entrante </u> </ em> </strong>
  distancia = larga (duración * 0,017); <strong> <em> <u> Fórmula para calcular la distancia del sensor ultrasónico. </u> </em> </strong>
  
  
  si (distancia <10) <strong> <em> <u> | </u> </em> </strong> <strong> <em> <u> En el caso de que la distancia medida sea inferior a 10cm, entonces ... </u> </em> </strong>
  {
    ASU1.write (0);
    escritura digital (LEDv, BAJO); <strong> <em> <u> el LED verde (que indica actividad) se apaga </u> </em> </strong> <i>
</i> escritura digital (LEDr, ALTO); el LED rojo (Que indica inactividad) se enciende
  }
   más {<strong> <em> <u> | </u> </em> </strong> <strong> <em> <u> En el caso de que se detecte actividad por encima de los 10cm entonces ... </u> </em> </strong>
    escritura digital (LEDv, ALTA); <strong> <em> <u> el LED verde (actividad) ahora va a indicar que hay movimiento dentro del rango asignado </u> </em> </strong>
    escritura digital (LEDr, BAJO);
    ASU1.write (90); 
  	retraso (1000);
  	ASU1.write (0); <strong> <em> <u> </u> </em> </strong> <strong> <em> <u> | El servo va a realiza un movimiento de 0 ° a 90 ° mientras que se cumpla esta condición </u> </em> </strong>
    retraso (1000);
  }
 
  Serial.print ("distancia =");
  Serial.print (distancia);
  Serial.println ("CM");
  retraso (100);
}
Serial.print ("distancia =");
  Serial.print (distancia);
  Serial.println ("CM");
  retraso (100); <strong> <em> <u> </u> </em> </strong> <strong> <em> <u> | Entre mensajes se va a haber un retardo para no sobrecargar el Monitor serial </u> </em> </strong>
}

ENSAMBLE

WhatsApp Image 2021-11-03 at 19.51.34.jpeg
WhatsApp Image 2021-11-03 at 19.51.34 (1).jpeg
WhatsApp Image 2021-11-03 at 19.51.35.jpeg
WhatsApp Image 2021-11-03 at 19.51.35 (1).jpeg
WhatsApp Image 2021-11-03 at 19.51.35 (2).jpeg
WhatsApp Image 2021-11-03 at 19.51.36.jpeg
WhatsApp Image 2021-11-03 at 19.51.36 (1).jpeg
WhatsApp Image 2021-11-03 at 19.51.36 (2).jpeg
WhatsApp Image 2021-11-03 at 19.51.37.jpeg
  1. Preparamos nuestro Arduino, conectándolo a la computadora y cargando el código.
  2. Instalamos en la placa de pruebas los componentes que van en ella.
  3. Añadimos las resistencias para los leds.
  4. Conectamos los cables de 5V y GND.

  5. Realizamos las conexiones correspondientes al Sensor Ultrasónico (Cable GND, cable 5V, cable trig y cable echo).

  6. Conectamos los pines digitales que corresponden a los leds con sus elementos apropiados (No olvidar que hay que conectar los puertos que fueron asignados para cada elemento apropiadamente).

  7. Preparamos el servomotor para conectarlo a la placa de pruebas con cables GND, 5V y conexión a su pin digital.

  8. Realizamos las conexiones que le corresponden al servomotor, combinando entre conexiones a la placa de pruebas y directamente a la placa Arduino.

VIDEO DE DEMOSTRACIÓN.

Dispensador autom&aacute;tico

Una vez ya tengamos la parte mecánica, el circuito electrónico y la programación cargada en el Arduino, lo que procede es posicionar todo esto dentro de una maqueta hecha de caño PVC el cual tiene pegado el servomotor a un costado y por los dos mencionados esta atado una pequeña cuerda que al hacer funcionar se estira y expulsa el gel en la mano de la persona =

APRENDIZAJE.

  • Sobre el proyecto =

La idea de este proyecto surge a partir de la situación actual relativa a la pandemia provocada por el COVID-19, ya que nos parece deseable que existan este tipo de dispensadores automáticos que no obligan a que las personas deban presionarlo y mantener un contacto con el mismo que pueda suponer un riesgo de contagio (sobre todo, si el dispensador está colocado en un sitio público).

  • Sobre el Arduino =

Para realizar este proyecto utilizamos la Placa de Arduino, para nosotros el Arduino es la mejor opción posible cuando lo que queremos desarrollar no está destinado a la venta y no disponemos de mucho tiempo para desarrollarlo.

En el ámbito educativo Arduino es genial, no entrará más en el mundo de la programación y el diseño de hardware.