Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Tecnológica de
Puebla
Organismo Público Descentralizado del Gobierno del Estado de Puebla
PROPUESTA DE UN PROTOTIPO DE
CABINA ABIERTA DE SANITIZACIÓN
PERSONAL AUTOMÁTICA PARA EL
INGRESO SEGURO A SITIOS DE
INTERACCIÓN SOCIAL
PRESENTA:
Israel Morales Martínez
MATRÍCULA: UTP0138304
ASESOR DE ESTADÍA:
M. en C. Jorge García Aguirre
Ing. Jesús Arturo García Aguirre
18 DE ABRIL 2021
Página 1 de 107
Índice
Resumen....................................................................................................................4
Abstract......................................................................................................................4
1. Planteamiento del problema...............................................................................5
2. Propuesta de solución........................................................................................5
2.1. Objetivo.........................................................................................................5
2.2. Justificación..................................................................................................6
2.2.1. Pertinencia teórica.................................................................................6
2.2.2. Viabilidad...............................................................................................6
2.2.3. Impacto social........................................................................................6
2.3. Descripción...................................................................................................7
3. Desarrollo.........................................................................................................19
3.1. Control y forma de medición de la temperatura corporal...........................19
3.1.1. Temperatura corporal normal..............................................................19
3.1.2. Hipotermia............................................................................................19
3.1.3. Fiebre o Hipertermia............................................................................19
3.1.4. Lugares de medición...........................................................................20
3.1.5. Justificación de ubicación y método de medición...............................20
3.1.6. Rangos establecidos para el control de la temperatura corporal........21
3.2. Introducción a entorno de programación IDE Arduino...............................22
3.2.1. Tipos de variables a utilizar.................................................................22
3.2.2. Elementos básicos a utilizar................................................................22
3.2.3. Operadores de comparación a utilizar.................................................25
3.3. Programa de control...................................................................................27
3.3.1. Arduino Uno.........................................................................................27
3.3.2. Entradas y salidas................................................................................28
3.3.3. Código de programación Arduino........................................................29
3.4. Simulación con placa Arduino Uno............................................................35
3.5. Implementación física.................................................................................41
3.5.1. Prototipo CAD......................................................................................41
3.5.2. Manual de ensamble de la cabina abierta de sanitización personal
automática........................................................................................................50
3.5.3. Conexiones eléctricas..........................................................................69
3.5.4. Consideraciones técnicas extra...........................................................87
Página 2 de 107
3.6. Costos de implementación.........................................................................91
3.6.1. Materiales............................................................................................91
3.6.2. Equipo..................................................................................................94
3.6.3. Mano de obra.......................................................................................98
3.6.4. Costo total de instalación.....................................................................99
3.7. Tiempo de desarrollo................................................................................100
4. Conclusión......................................................................................................101
Página 3 de 107
Resumen
Como ya se sabe, la enfermedad Covid-19 ha tomado un lugar muy importante en
la vida diaria de todas las personas, al grado de que es imprescindible usar
cubrebocas, caretas, gel antibacterial prácticamente en cualquier lugar en el que
nos encontremos; sin embargo, muchas de las veces estas no son medidas
suficientes. Por ello es que, en este proyecto, se idea y desarrolla un prototipo
capaz de medir la temperatura de un individuo por medio de un termómetro
infrarrojo, brindarle gel antibacterial al 80% después de pasar su mano por un
sensor de proximidad sin tener que hacer contacto con este y finalmente
desinfectarlo de pies a cabeza con el uso de 7 aspersores que rocían un
desinfectante sanitizante a base de amonio cuaternario, todo, controlado por un
microcontrolador Arduino Uno. Además de contar con indicadores led y una
alarma que nos alertaran si la persona presenta temperatura alta, baja o normal y
sensores de presencia de flujo que nos informen cuando el líquido sanitizante o el
gel antibacterial se haya terminado.
Abstract
As is already known, the Covid-19 disease has taken a very important place in the
daily life of all people, to the extent that it is essential to wear face masks, masks,
antibacterial gel practically anywhere we are; however, many of the times these
are not sufficient measures. That is why, in this project, a prototype capable of
measuring the temperature of an individual by means of an infrared thermometer is
devised and developed, giving them 80% antibacterial gel after passing their hand
through a proximity sensor without having to do contact with it and finally disinfect it
from head to toe with the use of 7 sprinklers that spray a quaternary ammonium-
based sanitizing disinfectant, all controlled by an Arduino Uno microcontroller. In
addition to having LED indicators and an alarm that will alert us if the person has
high, low or normal temperature and flow presence sensors that inform us when
the sanitizing liquid or antibacterial gel has run out.
Página 4 de 107
1. Planteamiento del problema
Actualmente la enfermedad Covid-19 causada por un coronavirus descubierto en
Wuhan, China, nos ha obligado a vivir “una nueva normalidad”, situación donde
diariamente se hace uso de utensilios como cubrebocas, caretas, gel antibacterial,
guantes de látex y tapetes sanitizantes. Gracias a esto, se han asignado a
trabajadores en las entradas de diferentes instalaciones con el propósito de medir
la temperatura y brindar gel antibacterial o cubrebocas a las personas que
requieran ingresar a algún establecimiento. Sin embargo, estas no son medidas
suficientes para desinfectar a las personas y de igual manera se pone en riesgo la
salud de otras personas, por ello buscamos desarrollar esta propuesta de cabina
sanitizante abierta, que traerá grandes beneficios. Las personas solo podrán
interactuar con el interior de la instalación una vez que se hayan sanitizado y
medido su temperatura corporal para corroborar que se encuentran en excelente
estado de salud como para permitir su entrada, manteniendo así la seguridad de la
empresa, negocio, hospital, etc.
2. Propuesta de solución
2.1. Objetivo
Página 5 de 107
2.2. Justificación
2.2.2. Viabilidad
Los materiales de los que estará hecha la cabina y los componentes eléctricos que
utilizaremos para el prototipo son de mediano y alto costo, pero de fácil acceso en
tiendas en línea y proveedores y fabricadores de muebles de acero inoxidable. De
igual manera buscamos que el material con el que fabricaremos la cabina no
guarde demasiados microrganismos y su limpieza sea sencilla.
Página 6 de 107
2.3. Descripción
Página 7 de 107
Figura 2 Forma correcta de realizar la medición de temperatura corporal.
En este caso, son todos los valores menores a 36 °C. Un ejemplo de ello se ve en
la figura 4. El termómetro muestra en su pantalla el valor de una temperatura
corporal baja donde el usuario podría estar presentando un síntoma de hipotermia
leve.
Página 8 de 107
Figura 4 Medición de una temperatura corporal baja.
Página 9 de 107
Figura 6 Cabina sanitizante negando el paso al usuario por medición baja.
Los valores que sean mayores a 37.2 °C serán considerados como temperatura
corporal alta. La medición que el termómetro de la figura 7 arroja es la de una
persona que podría estar bajo una fiebre moderada.
Página 10 de 107
Figura 8 Ejemplo de alerta por lectura de temperatura corporal alta.
Finalmente, en este caso se abarcan todos los valores que sean mayores o
iguales a 36 °C y menores o iguales a 37.2 °C. En la figura 10 se observa la
medición de una persona con temperatura corporal normal.
Página 11 de 107
Figura 10 Medición de una persona con temperatura corporal normal.
Página 12 de 107
Figura 12 Ubicación del sensor de Figura 13 Gel antibacterial saliendo tras
proximidad. pasar la mano por el sensor.
Página 13 de 107
Figura 15 Sensor de proximidad de entrada Figura 16 Barrera de entrada nuevamente
(S1) detectando que la persona está abajo después de que S1 detecto a la
ingresando a la cabina. persona ingresando.
Página 14 de 107
Página 15 de 107
Figura 18 Sensor de proximidad de salida S2 Figura 19 Barrera de paso ubicada en la
detectando que la persona está saliendo de salida de la cabina nuevamente abajo.
la cabina.
Existen otros dos procesos que también serán controlados por el microcontrolador.
Gracias a el sensor de presencia de flujo (S4) que está ubicado a la salida del
bidón de gel antibacterial (figura 20), Arduino puede testear 250 ms después de
que la bomba de 12 V se enciende para comprobar que el gel antibacterial fluye a
través de la manguera. Si el bidón está vacío nada fluirá por la manguera, por lo
tanto, la bomba se apagará inmediatamente y la alarma ejecutará la función
ALARMA3. El led amarillo indica que no hay presencia de flujo y se mantiene
activo mientras la alarma ejecuta la función. En caso contrario al existir presencia
de flujo, la bomba estará activa 750 ms más, para finalmente apagarse. Si el
usuario mantiene la mano frente al sensor de proximidad obtendrá una nueva
descarga 3 segundos después de haber recibido la primera.
Página 16 de 107
Figura 20 Sensor de presencia de flujo de gel antibacterial.
Página 17 de 107
Figura 22 Barrera de entrada abierta por ausencia de líquido sanitizante para poder realizar el
proceso de sanitización personal.
Página 18 de 107
El proceso de detección de flujo de líquido sanitizante se hace cada vez que se
enciende la bomba periférica para evitar que esta trabaje en vacío, alargando su
vida útil.
Dos lámparas con sensores de movimiento en luz nocturna (figura 24) serán
colocadas en el interior de la cabina para detectar cuando una persona ingrese e
iluminar el interior por 25 segundos.
Página 19 de 107
3. Desarrollo
3.1.2. Hipotermia
La hipotermia hace referencia al enfriamiento del cuerpo por debajo del rango de
temperatura normal (figura 25). Normalmente se acepta un límite de 36°C. Las
temperaturas entre 36°C hasta aproximadamente 33°C se consideran levemente
hipotérmicas. La hipotermia moderada, o temperaturas entre 32°C y 28°C.
Página 20 de 107
Figura 26 Afecciones relacionadas con la temperatura corporal alta.
Página 21 de 107
3.1.4. Lugares de medición
Página 22 de 107
Tomando en cuenta que la invasividad debe ser baja, se seleccionó un
termómetro infrarrojo con la capacidad de detectar en un rango de 10 a 15 cm, de
esta forma el usuario únicamente colocará su frente sin hacer contacto en el rango
de medición y en segundos se mostrará su temperatura en el display (figura 28).
Página 23 de 107
3.2. Introducción a entorno de programación IDE Arduino
Float: el formato de dato del tipo “coma flotante” o “float” se aplica a los
números con decimales.
Bool: un booleano solo tiene dos valores true (1) y false (0). Cada booleano
ocupa un byte de memoria. Dentro del programa se agrega esta misma
variable “Bool” con la palabra “Static” (Static bool), las variables estáticas
solo se crean o inicializan la primera vez que una función se llama.
Int: enteros, son un tipo de datos primarios que almacenan valores
numéricos de 16 bits sin decimales comprendidos en el rango 32,767 a -
32,768.
Página 24 de 107
“//…”: una línea de comentario se utiliza a menudo después de una
instrucción, para proporcionar más información acerca de lo que hace esta
o para recordarla más adelante. Son ignoradas por el programa.
Página 25 de 107
DelayMicroseconds: hace una pausa en el programa por la cantidad de
tiempo (en microsegundos) especificado como parámetro. Hay mil
microsegundos en una milésima de segundo, y un millón de microsegundos
en un segundo. Su sintaxis es: “delayMicroseconds(us);”.
void NOMBREDELAFUNCIÓN() {
//instrucciones a ejecutar
}
if (condición)
{
// ejecuta instrucciones
}
If...else: el bucle if...else permite un mayor control del flujo de código que la
instrucción básica if, al permitir múltiples comprobaciones agrupadas. Un
ejemplo de su sintaxis es:
if (condición)
Página 26 de 107
{
// acción A
}
else
{
// acción B
}
NOTA: else puede ir precedido de otra condición if, de manera que se pueden
establecer varias estructuras condicionales, unas dentro de las otras (anidamiento)
de forma que sean mutuamente excluyentes pudiéndose ejecutar a la vez. Un
ejemplo es el siguiente:
if (condición)
{
// instrucciones A
}
else if (condición)
{
// instrucciones B
}
else
{
// instrucciones C
}
Página 27 de 107
10<50 -> verdadero
80<15 -> falso
Página 28 de 107
3.3. Programa de control
Microcontrolador: ATmega328
Voltaje de operación: 5V
Voltaje de entrada (recomendado): 7-12V
Voltaje de entrada (límites): 6-20V
Pines de E/S digitales: 14 (de los cuales 6 proporcionan salida PWM)
Pines de entrada analógica: 6
Corriente DC por pin de E/S: 40 mA
Corriente DC para 3.3V Pin: 50 mA
Memoria Flash: 32 KB de los cuales 0,5 KB utilizados por el bootloader
SRAM: 2 KB (ATmega328)
EEPROM: 1 KB (ATmega328)
Velocidad de reloj: 16 MHz
Página 29 de 107
Ventajas
Estos 6 pines se pueden usar como entradas y salidas digitales como cualquier
otro puerto digital, además de denominarlas, A0…A5, también es posible llamarlas
como pines 14, 15, 16, 17, 18 y 19. Y la equivalencia es la siguiente:
a. Pin 14 = Análogo en 0
b. Pin 15 = Análogo en 1
c. Pin 16 = Análogo en 2
d. Pin 17 = Análogo en 3
e. Pin 18 = Análogo en 4
f. Pin 19 = Análogo en 5
Página 30 de 107
I5: Sensor de presencia del flujo para el líquido sanitizante (pin digital 5).
Q1: Dirección de giro del motor a pasos de la barrera de salida (pin digital
13).
Q2: Pulsos del motor a pasos de la barrera de salida (pin digital 12).
Q3: Dirección de giro del motor a pasos de la barrera de entrada (pin digital
11).
Q4: Pulsos del motor a pasos de la barrera de entrada (pin digital 10).
Q5: Relé para controlar encendido y apagado de foco indicador verde (pin
digital 4).
Q6: Relé para controlar encendido y apagado de foco indicador rojo (pin
digital 3).
Q7: Relé para controlar encendido y apagado de foco indicador azul (pin
digital 2).
Q8: Relé para controlar encendido y apagado de foco indicador amarillo
(pin analógico A0 o pin 14).
Q9: Relé para controlar encendido y apagado de foco indicador blanco (pin
analógico A1 o pin 15).
Q10: Relé para controlar encendido y apagado de bomba periférica de 1/2
Hp (pin analógico A2 o pin 16).
Q11: Relé para controlar encendido y apagado de alarma (pin analógico A3
digital o pin 17).
Q12: Relé para controlar encendido y apagado de bomba 12 V (pin
analógico A4 digital o pin 18).
Página 31 de 107
Línea 16: pinMode (7, INPUT); //SENSOR DE PROXIMIDAD PARA GEL
ANTIBACTERIAL
Línea 17: pinMode (6, INPUT); //SENSOR DE FLUJO PARA GEL ANTIBACTERIAL
Línea 18: pinMode (5, INPUT); //SENSOR DE FLUJO PARA SANITIZANTE
Línea 19: pinMode (4, OUTPUT); //RELÉ PARA LED INDICADOR VERDE
Línea 20: pinMode (3, OUTPUT); //RELÉ PARA LED INDICADOR ROJO
Línea 21: pinMode (2, OUTPUT); //RELÉ PARA LED INDICADOR AZUL
Línea 22: pinMode (14, OUTPUT) ;//RELÉ PARA LED INDICADOR AMARILLO
Línea 23: pinMode (15, OUTPUT) ;//RELÉ PARA LED INDICADOR BLANCO
Línea 24: pinMode (16, OUTPUT); //RELÉ PARA BOMBA PERIFERICA 1/2 HP -
SANITIZANTE
Línea 25: pinMode (17, OUTPUT); //RELÉ PARA ALARMA 12V
Línea 26: pinMode (18, OUTPUT); //RELÉ PARA BOMBA 12V - GEL ANTIBACTERIAL
Línea 27: }
Línea 28: //RUTINA DE ALARMA EN CASO DE TEMPERATURA CORPORAL ANORMAL
Línea 29: void ALARMA1() {
Línea 30: digitalWrite (17, HIGH);
Línea 31: delay (150);
Línea 32: digitalWrite (17, LOW);
Línea 33: delay (150);
Línea 34: digitalWrite (17, HIGH);
Línea 35: delay (150);
Línea 36: digitalWrite (17, LOW);
Línea 37: delay (150);
Línea 38: digitalWrite (17, HIGH);
Línea 39: delay (150);
Línea 40: digitalWrite (17, LOW);
Línea 41: delay (150);
Línea 42: digitalWrite (17, HIGH);
Línea 43: delay (150);
Línea 44: digitalWrite (17, LOW);
Línea 45: delay (150);
Línea 46: digitalWrite (17, HIGH);
Línea 47: delay (150);
Línea 48: digitalWrite (17, LOW);
Línea 49: delay (150);
Línea 50: digitalWrite (17, HIGH);
Línea 51: delay (150);
Línea 52: digitalWrite (17, LOW);
Línea 53: delay (150);
Línea 54: digitalWrite (17, HIGH);
Línea 55: delay (150);
Línea 56: digitalWrite (17, LOW);
Línea 57: delay (150);
Página 32 de 107
Línea 58: }
Línea 59: //RUTINA DE ALARMA EN CASO DE TEMPERATURA CORPORAL NORMAL
Línea 60: void ALARMA2() {
Línea 61: digitalWrite (17, HIGH);
Línea 62: delay (50);
Línea 63: digitalWrite (17, LOW);
Línea 64: delay (50);
Línea 65: digitalWrite (17, HIGH);
Línea 66: delay (50);
Línea 67: digitalWrite (17, LOW);
Línea 68: delay (250);
Línea 69: digitalWrite (17, HIGH);
Línea 70: delay (250);
Línea 71: digitalWrite (17, LOW);
Línea 72: delay (250);
Línea 73: digitalWrite (17, HIGH);
Línea 74: delay (250);
Línea 75: digitalWrite (17, LOW);
Línea 76: delay (250);
Línea 77: }
Línea 78: //RUTINA ALARMA EN CASO DE NO PRESENCIA DE GEL ANTIBACTERIAL
Y SANITIZANTE
Línea 79: void ALARMA3() {
Línea 80: digitalWrite (17, HIGH);
Línea 81: delay (500);
Línea 82: digitalWrite (17, LOW);
Línea 83: delay (250);
Línea 84: digitalWrite (17, HIGH);
Línea 85: delay (500);
Línea 86: digitalWrite (17, LOW);
Línea 87: delay (250);
Línea 88: digitalWrite (17, HIGH);
Línea 89: delay (500);
Línea 90: digitalWrite (17, LOW);
Línea 91: delay (500);
Línea 92: }
Línea 93: //RUTINA PARA DISPENSAR GEL ANTIBACTERIAL
Línea 94: void DISPENSARGA () {
Línea 95: SPGANTIBACTERIAL = digitalRead (7);
Línea 96: if (SPGANTIBACTERIAL == true) {
Línea 97: delay (250);
Línea 98: digitalWrite (18, HIGH);
Línea 99: delay (750);
Línea 100: SFGANTIBACTERIAL = digitalRead (6);
Página 33 de 107
Línea 101: if (SFGANTIBACTERIAL == false) {
Línea 102: digitalWrite (14, HIGH);
Línea 103: digitalWrite (18, LOW);
Línea 104: ALARMA3();
Línea 105: digitalWrite (14, LOW);
Línea 106: }
Línea 107: else {
Línea 108: digitalWrite (18, LOW);
Línea 109: delay (3000);
Línea 110: }
Línea 111: }
Línea 112: else {
Línea 113: digitalWrite (14, LOW);
Línea 114: digitalWrite (18, LOW);
Línea 115: }
Línea 116: }
Línea 117: void loop () {
Línea 118: DISPENSARGA ();
Línea 119: TEMPCORPOR = Serial.parseFloat();
Línea 120: if (TEMPCORPOR > 0 & TEMPCORPOR < 36) {
Línea 121: digitalWrite (2, HIGH);
Línea 122: ALARMA1();
Línea 123: digitalWrite (2, LOW);
Línea 124: }
Línea 125: else if (TEMPCORPOR >= 36 & TEMPCORPOR <=37.2) {
Línea 126: digitalWrite (4, HIGH);
Línea 127: LEDVERDE = digitalRead (4);
Línea 128: ALARMA2();
Línea 129: digitalWrite (4, LOW);
Línea 130: //MOTOR A PASOS LLEVA LA BARRERA DE ENTRADA A 90° CON EL
PLANO
Línea 131: for (int i = 0; i <= 200; i++) {
Línea 132: digitalWrite (11, LOW);
Línea 133: digitalWrite (10, HIGH);
Línea 134: delayMicroseconds (2000);
Línea 135: digitalWrite (10, LOW);
Línea 136: delayMicroseconds (2000);
Línea 137: }
Línea 138: }
Línea 139: else if (TEMPCORPOR > 37.2) {
Línea 140: digitalWrite (3, HIGH);
Línea 141: ALARMA1();
Línea 142: digitalWrite (3, LOW);
Línea 143: }
Página 34 de 107
Línea 144: SPSALIDA = digitalRead (8);
Línea 145: SPENTRADA = digitalRead (9);
Línea 146: LEDVERDE = digitalRead (4);
Línea 147: static bool Q1=0;
Línea 148: static bool Q1P=0;
Línea 149: Q1=! (SPSALIDA||Q1P);
Línea 150: Q1P=! (LEDVERDE||Q1);
Línea 151: bool AND1 = (Q1&&SPENTRADA);
Línea 152: if (AND1 == true) {
Línea 153: delay (1500);
Línea 154: //MOTOR A PASOS LLEVA LA BARRERA DE ENTRADA A 0° CON EL
PLANO
Línea 155: for (int i = 0; i <= 200; i++) {
Línea 156: digitalWrite (11, HIGH);
Línea 157: digitalWrite (10, HIGH);
Línea 158: delayMicroseconds (2000);
Línea 159: digitalWrite (10, LOW);
Línea 160: delayMicroseconds (2000);
Línea 161: }
Línea 162: digitalWrite (16, HIGH);
Línea 163: delay (1000);
Línea 164: SFSANITIZANTE = digitalRead (5);
Línea 165: if (SFSANITIZANTE == false) {
Línea 166: digitalWrite (15, HIGH);
Línea 167: digitalWrite (16, LOW);
Línea 168: ALARMA3();
Línea 169: digitalWrite (15, LOW);
Línea 170: //MOTOR A PASOS LLEVA LA BARRERA DE ENTRADA A 90° CON EL
PLANO
Línea 171: for (int i = 0; i <= 200; i++) {
Línea 172: digitalWrite (11, LOW);
Línea 173: digitalWrite (10, HIGH);
Línea 174: delayMicroseconds (2000);
Línea 175: digitalWrite (10, LOW);
Línea 176: delayMicroseconds (2000);
Línea 177: }
Línea 178: delay (10000);
Línea 179: //MOTOR A PASOS LLEVA LA BARRERA DE ENTRADA A 0° CON EL
PLANO
Línea 180: for (int i = 0; i <= 200; i++) {
Línea 181: digitalWrite (11, HIGH);
Línea 182: digitalWrite (10, HIGH);
Línea 183: delayMicroseconds (2000);
Línea 184: digitalWrite (10, LOW);
Página 35 de 107
Línea 185: delayMicroseconds (2000);
Línea 186: }
Línea 187: }
Línea 188: else {
Línea 189: digitalWrite (16, HIGH);
Línea 190: delay (3000);
Línea 191: digitalWrite (16, LOW);
Línea 192: //MOTOR A PASOS LLEVA LA BARRERA DE SALIDA A 90° CON EL
PLANO
Línea 193: for (int i = 0; i <= 200; i++) {
Línea 194: digitalWrite (13, HIGH);
Línea 195: digitalWrite (12, HIGH);
Línea 196: delayMicroseconds (2000);
Línea 197: digitalWrite (12, LOW);
Línea 198: delayMicroseconds (2000);
Línea 199: }
Línea 200: }
Línea 201: }
Línea 202: else {
Línea 203: digitalWrite (15, LOW);
Línea 204: digitalWrite (16, LOW);
Línea 205: }
Línea 206: if (SPSALIDA == true) {
Línea 207: delay (2000);
Línea 208: //MOTOR A PASOS LLEVA LA BARRERA DE SALIDA A 0° CON EL
PLANO
Línea 209: for (int i = 0; i <= 200; i++) {
Línea 210: digitalWrite (13, LOW);
Línea 211: digitalWrite (12, HIGH);
Línea 212: delayMicroseconds (2000);
Línea 213: digitalWrite (12, LOW);
Línea 214: delayMicroseconds (2000);
Línea 215: }
Línea 216: }
Línea 217: }
El Sketch usa 4624 bytes (14%) del espacio de almacenamiento de programa. Las
variables Globales usan 187 bytes (9%) de la memoria dinámica.
Página 36 de 107
3.4. Simulación con placa Arduino Uno
En primer lugar, simularemos los 3 casos posibles conforme al valor que arroje el
termómetro infrarrojo después de realizar una medición. Para simular el
termómetro infrarrojo se utilizó un celular para enviar los datos de temperatura
corporal a través de la comunicación serial:
Figura 30 Enviando un valor que se encuentre dentro del rango de temperatura corporal baja.
Figura 31 Despues de comparar el valor, Arduino enciende el led azul que se encuentra en el pin 2
mientras suena la alarma ejecutando las líneas de codigo de la funcion ALARMA1.
Página 37 de 107
II. Temperatura corporal alta
Figura 32 Enviando un valor que se encuentre dentro del rango de temperatura corporal alta.
Figura 33 Despues de comparar el valor, Arduino enciende el led rojo que se encuentra en el pin 3
mientras suena la alarma ejecutando las lineas de codigo de la función ALARMA1.
Página 38 de 107
III. Temperatura corporal normal
Página 39 de 107
Proceso de dispensar gel antibacterial.
Figura 38 Led indicador amarillo encendido por bidón de gel antibacterial vacío.
Página 40 de 107
Proceso para dispensar liquido sanitizante.
Para simular este proceso se utilizó el pin digital 5 para simular al sensor S3. Se
coloco a la alimentación positiva para simular que existe presencia de flujo de
sanitizante. Después de poner a positivo el sensor de proximidad de entrada S1, la
barrera de entrada baja para cerrar la cabina (figura 39) y 1.5 segundos después
la bomba se encendió y se mantuvo activada por 4 segundos (figura 39) para
finalmente apagarse.
Figura 39 Led del pin 11 activado (el motor girara en sentido horario bajando la barrera de entrada)
y led del pin 10 ejecutando los 200 pulsos.
Figura 40 Bomba periférica encendida, representada por el led del pin 16.
Una vez que la bomba periférica se apaga, la barrera de salida se levanta (figura
41), manteniéndose así hasta que se pasa el sensor de proximidad de salida S2
(Jack del pin 8) a positivo simulando que el usuario ha salido de la cabina, para
que finalmente la barrera de salida vuelva a bajar (figura 42).
Página 41 de 107
Figura 42 Barrera de salida a 0° respecto al plano.
Figura 41 Barrera de salida a 90° respecto al
plano.
Figura 43 Led indicador blanco activado, alertando que el bidon que almacena el liquido sanitizante
se encuentra vacío.
Página 42 de 107
3.5. Implementación física
Acoplamiento de motor a
pasos a barrera de paso (2)
Figura 46 Alarma sirena de 12v.
Página 43 de 107
Arduino UNO (1)
Bomba periférica (1)
Página 44 de 107
Bornera de 9 terminales para Bornera de 9 terminales para
la línea de fase (1) la línea de neutro (1)
Página 45 de 107
Bornera de 4 terminales para
la línea de tierra (1)
Página 46 de 107
Driver para motor a pasos
NEMA 23 (2)
Página 48 de 107
Motor a pasos NEMA 23 de Rack contenedor de dos
14 kg/cm (2) espacios (1)
Características:
Ángulo de paso: 1,8 grados
Pasos: 200 por vuelta
Voltaje: 4.5V
Diámetro de eje: 6.35mm Figura 76 Rack contenedor de dos espacios.
Torque: 14Kg/cm
Formato: NEMA 23
Manguera tipo Festo de 6mm
Multicontacto con 3 diámetro (4 metros)
cargadores de diferentes
capacidades (1)
Página 49 de 107
Sensor de flujo de caudal Termómetro infrarrojo con
para Arduino (2) conexión bluetooth (1)
Descripción:
Página 50 de 107
Tornillo M5 x 18 mm (8) Tuerca M5 (18)
Tuerca M4 (8)
Tuerca M10 (6)
Página 51 de 107
3.5.2. Manual de ensamble de la cabina abierta de sanitización personal
automática
Advertencias:
Herramientas:
Llave Allen de M5
Llave Allen de M4.
Llave milimétrica estándar de 10 mm.
Llave milimétrica estándar de 8 mm.
Llave milimétrica estándar de 5 mm.
Llave milimétrica estándar de 4 mm.
Pegamento para PVC en lata de 500 ml.
Página 52 de 107
4. Realiza el paso anterior con el grupo de dos orificios restante.
5. Fija todas las piezas introduciendo 4 tuercas M4, 1 en cada tornillo y
apriétalas. Puedes ayudarte de la llave Allen de 4 mm para no dejar que el
tornillo gire (insertando la llave en la cabeza del tornillo) y la llave
milimétrica estándar de 4 mm para apretar la tuerca. La tapa del gabinete
de control deberá verse igual a la figura 74.
Página 53 de 107
9. Para completar el proceso de ensamblado del gabinete de control introduce
el lado de la cerradura que tiene la hendidura para la llave en la tapa de
control, la abertura de la llave debe quedar en el exterior.
10. Mete el otro lado de la cerradura por el lado inverso al de la llave hasta
unirlos.
11. Fija la cerradura apretando la tuerca para que ambos lados queden unidos
(figura 76).
12. Introduce dos tornillos M5 x 45 mm en los dos orificios del acople del motor.
13. Sin retirar los tornillos del acople, introduce alguna de las dos barreras de
paso en los tornillos.
14. Fija las piezas introduciendo 2 tuercas M5, 1 en cada tornillo y apriétalas.
Puedes ayudarte de la llave Allen de 5 mm para girar (insertando la llave en
la cabeza del tornillo) el tornillo y la llave milimétrica estándar de 5 mm para
no dejar que la tuerca gire.
15. Lleva a cabo los pasos 1, 2 y 3 con el otro motor a pasos y barrera. El
ensamble se mirará como en la figura 77.
Página 54 de 107
Ensamble de la conexión PVC
16. Une todos los tubos de PVC usando los 4 codos requeridos en la conexión.
17. Para fijar cada unión aplica una capa de pegamento para PVC en los
bordes de cada pieza.
18. Deja secar por al menos dos horas. La conexión deberá verse como en la
figura 78.
19. Inserta los 6 vástagos que sobresalen de la cabina en los 6 orificios del
gabinete de control.
20. Inserta las 6 tuercas hexagonales M10 en cada uno de los vástagos sin
sacar el gabinete de control.
21. Fija el gabinete de control a la cabina apretando las tuercas con la ayuda de
la llave milimétrica estándar de 10 mm (figura 79).
Página 55 de 107
22. Introduce un motor a pasos en el lado derecho del gabinete de control, la
salida de los cables que alimentan al motor debe mirar hacia abajo. La
placa de montaje del motor deberá tocarse con el exterior del gabinete.
23. Insiere 4 tornillos hexagonales M5 x 18 mm en cada uno de los 4 orificios
de la placa de montaje del motor. Las cabezas de los tornillos no deberán
estar en el interior del gabinete (figura 80).
24. Fija el motor a pasos apretando las tuercas con ayuda de la llave
milimétrica de 5 mm y la llave Allen M5.
25. Acomoda un driver de control en los vástagos que sobresalen de los lados
interiores del gabinete de control.
26. Inserta tuercas M5 en los vástagos, sin quitar el driver y aprieta las tuercas
con la ayuda de llave milimétrica de 5 mm. Las configuraciones que se
encuentran escritas en el driver deben quedar hacia arriba (figura 82).
27. Realiza el paso 25 y 26 con el driver restante en el lado contrario.
Página 56 de 107
28. Coloca una fuente conmutada en lado izquierdo del interior del gabinete.
Las terminales de conexión deberán apuntar hacia el centro.
29. Apila la segunda fuente conmutada, poniéndola encima de con la primera.
30. Corta pedazos de cinta doble cara proporcionales al largo de los 8 módulos
relé, la placa Arduino Uno, el módulo HM-10 y las borneras.
31. Pega los componentes antes mencionados, con ayuda de los pedazos que
anteriormente cortaste colócalos en el interior del gabinete de control.
Figura 99 Borneras de tierra, neutro y fase fijadas al gabinete de control con cinta doble cara.
Página 57 de 107
Figura 100 Placa Arduino Uno y modulo HM -10 pegados al gabinete de control con ayuda de la
cinta doble cara.
Página 58 de 107
34. Pega la alarma con ayuda de la cinta de doble cara en la parte frontal de la
cabina e introduce el cable de alimentación en el orificio que se encuentra a
un costado.
35. Introduce el foco indicador verde en el primer orificio de los 5 que se
encuentran debajo de la alarma.
36. Introduce el foco indicador rojo en el segundo orificio.
37. Introduce el foco indicador azul en el tercer orificio.
38. Introduce el foco indicador amarillo en el cuarto orificio.
39. Introduce el foco indicador rojo en el quinto orificio. Los componentes
quedarán ordenados como la figura 89.
Página 59 de 107
41. Debajo del termómetro infrarrojo verás 2 orificios de diferentes tamaños.
Introduce el sensor de proximidad en el orificio más grande. Los cables de
la alarma, el termómetro infrarrojo y el sensor de proximidad deberán bajar
por el interior de la cabina.
Página 60 de 107
42. Mueve y coloca el rack contenedor de dos divisiones como se observa en la
figura 93.
Página 61 de 107
48. Acopla un sensor de flujo a la salida del bidón que anteriormente llenaste
con gel antibacterial. Este sensor de flujo será S4.
49. Realiza el mismo procedimiento con otro sensor de flujo y el bidón de
líquido desinfectante. Este sensor de flujo será S3.
50. Encaja el acoplamiento de 1/2" a 6 mm en la salida del sensor de flujo S4,
tendrás entonces una salida de 6mm de diámetro (figura 95).
52. Inserta los orificios de la bomba periférica en los vástagos que sobresalen
del rack.
53. Introduce 4 tuercas M8 en los vástagos sin quitar la bomba.
54. Fija la bomba en el rack apretando las 4 tuercas con ayuda de la llave
milimétrica estándar de 8 mm.
Página 62 de 107
Figura 111 Bomba fijada al rack de dos divisiones.
Página 63 de 107
57. Introduce un lado de la conexión PVC a la salida de 1” del acoplamiento
ubicado en el bidón de sanitizante.
58. El otro extremo de la conexión PVC conéctalo en la entrada (ubicada
horizontalmente) de la bomba periférica. El resultado deberá verse como en
la figura 99.
Figura 113 Conducto PVC conectado a salida del acoplamiento de 1” y a la entrada de la bomba
periferica.
Página 64 de 107
Página 65 de 107
60. Con ayuda de las pinzas de corte, corta el largo de manguera requerido.
61. Conecta el extremo de manguera sobrante a la entrada de la bomba de 12
V (figura 101).
Figura 116 Manguera por la que saldrá el gel antibacterial si el usuario acerca su mano al sensor
de proximidad S5.
Página 66 de 107
65. Inserta el extremo sobrante de la manguera en la salida de la bomba de 12
V. La manguera debe ingresar por la parte baja del gabinete de control, la
conexión deberá ser igual a la de la figura 103.
Figura 117 Forma correcta de conectar el extremo sobrante de manguera que viene desde el
orificio que se encuentra debajo del sensor de proximidad S5.
66. Inserta los orificios de un aspersor T en los vástagos que sobresalen del
interior de la cabina como en la figura 105. La figura 104 muestra la
ubicación de todos los aspersores en forma de T.
Página 67 de 107
Figura 119 Aspersor T ensamblado en los vastagos.
Página 68 de 107
Figura 121 Aspersor ensamblado y conectado al sistema de aspersión.
Página 69 de 107
73. Mide hasta la entrada de la conexión del aspersor en forma de cruz (se
ubica en el interior del gabinete de control). La manguera deberá pasar por
la parte baja que tiene el gabinete de control.
74. Corta el sobrante e inserta el extremo en la conexión en forma de cruz.
75. Fija los sensores de proximidad en los orificios que se encuentran a un lado
de los vástagos de las esquinas superiores (figura 110). Los cables de
conexión de los sensores deberán quedar en el interior del gabinete de
control.
Página 70 de 107
76. Coloca las lámparas led, una a cada lado del aspersor que se encuentra en
la parte superior del diagrama de aspersión.
Página 71 de 107
3.5.3. Conexiones eléctricas
Página 72 de 107
Alimentación de Arduino Uno
Figura 128 Cables de tierra, neutro y fase encargados de llevar corriente al Multicontacto.
Página 73 de 107
Figura 129 Cables de tierra, neutro y fase que llevan corriente al Multicontacto de tres entradas.
Página 74 de 107
Modulo HM-10 Bluetooth para Arduino
Página 75 de 107
Figura 133 Conexión para lograr la comunicación serial entre el Módulo Bluetooth Hm-10 y
Arduino.
Página 76 de 107
El módulo Relé necesita 5V de DC, tiene 3 terminales en un lado, de las cuales 2
sirven para energizarlo, VCC estará conectado a la bornera positiva y GND a la
bornera negativa. La terminal restante recibirá la señal de activación del Arduino.
En el prototipo existen 8 módulos relevadores y cada terminal de activación está
conectado a una terminal de Arduino (figura 121 y 122), la lista es la siguiente:
1. Relé 1 a pin 4
2. Relé 2 a pin 3
3. Relé 3 a pin 2
4. Relé 4 a pin 14
5. Relé 5 a pin 15
6. Relé 6 a pin 16
7. Relé 7 a pin 17
8. Relé 8 a pin 18
Figura 135 Alambres que llevan la señal de activación a los módulos relé.
Página 77 de 107
Figura 136 Alambres que provienen de la placa Arduino para las activaciones de los módulos relé.
Página 78 de 107
Conexiones de los Drivers de Motor A Pasos de 4 Amp para motores Nema
23
Página 79 de 107
Página 80 de 107
Conexión del Motor paso a paso
Los cables de alimentación del motor a pasos se conectan a las terminales del
driver en el siguiente orden:
Página 81 de 107
Alimentación de Fuente conmutada 24v 5A y Driver de control
Las conexiones para alimentar la fuente conmutada con corriente alterna se hacen
de la siguiente manera:
Página 82 de 107
Figura 143 Fuentes conmutadas conectadas a la corriente alterna.
En la figura 130 se observan los dos drivers de control energizados por las fuentes
conmutadas.
Página 83 de 107
Sensor infrarrojo de proximidad E18d80nk
Los cables de alimentación negativa y positiva de los sensores van a las borneras
de alimentación negativa y positiva que se energizaron con los 5 V de Arduino.
Los cables de alimentación negativa y positiva de los sensores van a las borneras
de alimentación negativa y positiva que se energizaron con los 5 V de Arduino.
Página 84 de 107
Bomba periférica
Figura 147 Cable de fase de la bomba periférica conectado a la terminar COM del sexto módulo
relé.
Focos indicadores
Página 85 de 107
Conexión E. Cable neutro del foco indicador blanco a una terminal de la
bornera de 9 terminales para los cables de neutro.
Las figuras 134 y 135 muestran los cables neutro de todos los focos indicadores
conectados a la bornera de neutro.
Figura 149 Cables neutro de los focos indicadores conectados a la bornera de neutro.
Página 86 de 107
Posteriormente se conectan los cables de fase de los focos indicadores:
Conexión A. Cable fase del foco indicador verde a la terminal COM del
primer módulo relé (de izquierda a derecha).
Conexión B. Cable fase del foco indicador rojo a la terminal COM del
segundo módulo relé (de izquierda a derecha).
Conexión C. Cable fase del foco indicador azul a la terminal COM del tercer
módulo relé (de izquierda a derecha).
Conexión D. Cable fase del foco indicador amarillo a la terminal COM del
cuarto módulo relé (de izquierda a derecha).
Conexión E. Cable fase del foco indicador blanco a la terminal COM del
quinto módulo relé (de izquierda a derecha).
Las figura 136 muestra los cables fase de todos los focos indicadores conectados
a las terminales COM de los módulos relé.
Figura 150 Cables fase de los focos indicadores conectados a la bornera de fase.
Página 87 de 107
Conexión del Termómetro infrarrojo
Página 88 de 107
Conexión de la Alarma de 12 V
Bomba 12 V
Página 89 de 107
Alimentación de borneras de tierra, neutro y fase
Finalmente, para completar todas las conexiones, se deben energizar las borneras
que llevan corriente a todos los componentes eléctricos del prototipo y su conexión
se realiza de la siguiente manera:
Figura 153 Alimentación de las borneras de tierra, neutro y fase encargadas de energizar todos los
componentes eléctricos del prototipo.
NOTA:
Tras completar todas las conexiones eléctricas, conecta finalmente la clavija de la
cabina a la alimentación de corriente directa. Comprueba con el multímetro que
existe el voltaje requerido en las borneras.
Página 90 de 107
Coloca tu mano frente al sensor de proximidad de salida para reiniciar el
Flip Flop del programa, posterior a eso podrás comenzar a usar la cabina
desinfección.
Página 91 de 107
3.5.4. Consideraciones técnicas extra
Como se menciona en el título, el driver motor a pasos trae consigo 6 (figura 140)
switch a un costado que están numerados del 1 al 6. Los switch’s 1, 2 y 3 pueden
ampliar el número total de pasos que el motor realiza en una vuelta, mientras que
los otros tres (4, 5 y 6) nos ayudan a controla la corriente que este envía al motor
a pasos.
Figura 154 Switch's de configuración del driver para el control de pasos y corriente.
Las funciones For del programa de control nos indican que si el motor se
encuentra a 0° del plano, el motor a pasos debe girar 1/4 de vuelta para colocarse
a 90° con respecto al plano. Para completar el 1/4 de vuelta deberá realizar 200
pasos. Realizando el cálculo, obtenemos que el motor a pasos tendría que
ejecutar 800 para dar una vuelta completa.
Página 92 de 107
En la figura izquierda podemos observar los switch’s enumerados del 1 a al 6,
todos con el prefijo “SW” más el número de interruptor que representa. Mientras
que, en la figura derecha, encerrado con color rojo podemos ver los interruptores
divididos en dos grupos de tres.
Figura 155 Switch’s enumerados del 1 a al 6, Figura 156 Interruptores divididos en dos
todos con el prefijo “SW”. grupos de tres.
Interruptor 1: ON.
Interruptor 2: OFF.
Interruptor 3: OFF.
Interruptor 4: OFF.
Interruptor 5: OFF.
Interruptor 6: OFF.
Página 93 de 107
Alimentación de las lámparas led con sensor de movimiento
Especificaciones:
Para que las lámparas led funcionen se necesita energizarlas con 4 pilas cada
una. La entrada por donde se insertarán las 4 pilas AAA se observa en la figura.
Figura 157 Lugar por donde se insertan las pilas que energizan las lámparas.
Características:
Página 94 de 107
3. Batería operada: Ahorro de tiempo al tirar y cargar, se requieren 4 pilas
AAA (no incluidas), que estarán disponibles para un largo tiempo de trabajo.
4. Fácil de instalar: con banda magnética, no se necesitan herramientas,
tornillos ni tuercas.
1. NO (normalmente abierto).
2. COM (común).
3. NC (normalmente cerrado)
Figura 158 Terminales NO, COM y NC del módulo relé para Arduino.
Página 95 de 107
3.6. Costos de implementación
3.6.1. Materiales
Costo
Concepto Cantidad Total
unitario
Acoplamiento de 1/2"
$42 2 $84
a 6mm
Acoplamiento de
motor a pasos a $450 2 $900
barrera de paso
Página 96 de 107
clara
Clavija con toma tierra
$50 1 $50
y cable
Codo de PVC 1” $25 4 $100
Driver para motor a
$289 2 $578
pasos NEMA 23
Fuente conmutada de
$280 2 $560
24V a 5A
Gabinete de control $3500 1 $3500
Lampara led con
$150 2 $300
sensor de movimiento
Led indicador amarillo
$60 1 $60
de 110v AC
Led indicador azul de
$60 1 $60
110v AC
Led indicador blanco
$60 1 $60
de 110v AC
Led indicador rojo de
$60 1 $60
110v AC
Led indicador verde
$60 1 $60
de 110v AC
Modulo HM-10 de
Bluetooth 4.0 para $98 1 $98
Arduino
Modulo relé para
$38 8 $304
Arduino
Motor a pasos NEMA
$1200 2 $2400
23 de 14 kg/cm
Multicontacto $51 1 $51
Pegamento para unir
$125 1 $125
tubos PVC
Rack contenedor de
$1800 1 $1800
dos espacios
Rollo de alambre para
protoboard color $59 1 $59
amarillo (10 Mts)
Rollo de alambre para
protoboard color azul $59 1 $59
rey (10 Mts)
Rollo de alambre para $59 1 $59
Página 97 de 107
protoboard color café
(10 Mts)
Rollo de alambre para
protoboard color gris $59 1 $59
(10 Mts)
Rollo de alambre para
protoboard color $59 1 $59
morado (10 Mts)
Rollo de alambre para
protoboard color $59 1 $59
negro (10 Mts)
Rollo de alambre para
protoboard color rojo $59 1 $59
(10 Mts)
Rollo de cable calibre
12 color blanco (50 $180 1 $180
Mts)
Rollo de cable calibre
12 color negro (50 $180 1 $180
Mts)
Rollo de cable calibre
$180 1 $180
12 color rojo (50 Mts)
Rollo de cable calibre
$180 1 $180
12 color verde (50 Mts)
Manguera tipo Festo
de 6mm diámetro $460 1 $460
(Rollo de 10mts)
Sensor de flujo de
$140 2 $280
caudal para Arduino
Sensor de proximidad
$95 3 $285
para Arduino
Set de 4 pilas
$490 2 $980
recargables
Termómetro infrarrojo
con conexión $1200 1 $1200
bluetooth
Tornillo M5 x 18mm $8 16 $128
Tornillo M5 x 45 mm $10 4 $40
Tubo de PVC de 1”
$180 1 $180
(2mts)
Página 98 de 107
Tuerca M5 $6 20 $120
Tuerca M8 $8 4 $32
Tuerca M10 $10 6 $60
$36252
3.6.2. Equipo
Costo Cantida
Concepto Función Total
unitario d
Medición de corriente y voltaje
Multímetro para comprobar la correcta
$110 1 $110
básico alimentación de todos los
componentes eléctricos.
Cortar el alambre, cable, cincho
Pinza de corte o manguera en el largo que el $115 1 $115
instalador crea necesario.
Quitar el aislante que recubre al
Pinza
alambre o cable para poder $180 1 $180
pelacables
realizar su conexión.
Poder manipular o doblar los
Pinza de
cables aún si estos tienen $180 1 $180
electricista
corriente eléctrica.
Kit de Apretar o aflojar los tornillos de $600 1 $600
desarmadore las borneras donde se
s plano y cruz conectarán los cables.
Ayudar al instalador en la
Cintillo de 10
gestión del tendido y peinado $30 1 $30
cm
de cables.
Cintillo de 20 Ayudar al instalador en la $36 1 $36
Página 99 de 107
gestión del tendido y peinado
cm
de cables.
Llave
milimétrica 4 Apretar o aflojar tuercas M4. $60 1 $80
mm
Llave
milimétrica 5 Apretar o aflojar tuercas M5. $60 1 $60
mm
Llave
milimétrica de Apretar o aflojar tuercas M8. $80 1 $80
8 mm
Llave
milimétrica 10 Apretar o aflojar tuercas M10. $80 1 $80
mm
Llave Allen
Apretar o aflojar tuercas M4. $55 1 $55
M4
Llave Allen
Apretar o aflojar tuercas M5. $55 1 $55
M5
Galón de 4
litros de
desinfectante
Desinfectar y sanitizar al
sanitizante a $289 1 $269
usuario que ingresa a la cabina.
base de
amonio
cuaternario
Galón de 5
litros de gel Para uso en la higiene de las
$150 20 $3000
antibacterial manos.
al 80%
$4930
Características:
Espectro de Acción:
Influenza.
Poxvirus.
Paramixovirus.
Pestivirus.
Reovirus.
Rotavirus.
Coronavirus.
Bacterias Gram (+).
Los mililitros de desinfectante y agua a utilizar para lograr los 100 litros de
sanitizante que ocuparemos para llenar el bidón los calcularemos de la siguiente
forma:
Para uso en la higiene de las manos. Elimina el 99.9% de los gérmenes más
comunes. La vitamina E mejora el aspecto de su piel, contiene humectante de
origen natural que evita la resequedad de las manos.
Ingredientes:
Obtendremos el costo total después de sumar los tres obtenidos en los subtemas
anteriores. La siguiente tabla presenta el costo total aproximado para fabricar una
cabina sanitizante que sea completamente funcional:
Concepto Total
Materiales $36252
Equipo $4930
Mano de obra $1550
$42732
Como se menciona este costo final puede variar dependiendo de la alza o baja del
precio de los materiales, el precio de fabricación que nos proporcionen de la
cabina sanitizante y el gabinete de control y por supuesto no dejar de lado el
objetivo de economizar sin sacrificar la durabilidad y eficiencia del proyecto.