INSTITUTO TECNOLÓGICO DE MÉRIDA DEPARTAMENTO DE INGENIERÍA ELÉCTRICA Y ELECTRÓNICA CARRERA:
INGENIERÍA ELÉCTRICA
MATERIA:
ELECTRÓNICA DIGITAL
GRUPO: 5FV
NOMBRE MAESTRO: MARGARITA ÁLVAREZ NÚM. PRÁCTICA:
FECHA DE ENTREGA:
30 NOVIEMBRE DEL 2017
NOMBRE DE LA PRÁCTICA: CASA INTELIGENTE CON CONTROL DE NIVEL AGUA ULTRASONICO INTEGRANTES DEL EQUIPO ARMANDO FLORES RODRÍGUEZ ROBERTO JIMÉNEZ DÍAZ JOSÉ FRANCISCO MENA TORRES ARGAEZ PALMA OSCAR ALFREDO POLANCO RIVERA EMMANUEL ANTONIO POLANCO SÁNCHEZ GERARDO JOSÉ VICINAIZ CONCHA JOSÉ ALFREDO
MATRÍCULA E15080500 E15080095 E15080367 E14530217 E15080090 E15080646 E15080363
1
INSTITUTO TECNOLÓGICO DE MÉRIDA DEPARTAMENTO DE INGENIERÍA ELÉCTRICA Y ELECTRÓNICA REPORTE DE LA PRÁCTICA INTRODUCCIÓN
OBJETIVOS DE LA PRÁCTICA
MARCO TEÓRICO Arduino El arduino es una placa electrónica donde viene montado un micro controlador AVR con todo lo necesario para realizar su programación, no necesita un programador, este ya viene incluido en la placa, lo único que hay que hacer es realizar algún programa y cargarlo al arduino para que empiece a trabajar, lo que si se necesitará son elementos externos como por ejemplo resistencias, leds, relés, tiristores, transistores, detectores y otros más dependiendo de lo que se quiera que haga el arduino. Las placas del arduino que se utilizarán en los ejemplos a realizar son el arduino uno sobre el cual viene montado el micro controlador ATMEGA328P, y el arduino mega 2560 sobre el cual viene montado el micro controlador ATMEGA2560. Las placas del arduino se conectan al ordenador mediante un cable USB para poder programarlos y a la vez alimentarlos para hacer las primeras pruebas, una vez que ya se tiene la placa programada se puede desconectar del ordenador y hacerlo trabajar con una fuente de alimentación. Los pines del micro controlador están conectados hacia unos conectores que en la imagen superior se ven en color negro, estos están en la placa organizados 2
INSTITUTO TECNOLÓGICO DE MÉRIDA DEPARTAMENTO DE INGENIERÍA ELÉCTRICA Y ELECTRÓNICA como entradas salidas digitales, entradas analógicas, alimentaciones, salidas pwm y comunicación. Si se cuenta con el ARDUINO UNO, las ideas son las mismas con la diferencia que esta placa cuenta con menos pines para utilizar, a la vez que el micro controlador que trae tiene menos memoria y algunos registros menos de los que tiene el micro controlador que trae el ARDUINO MEGA. Será necesario tener conocimientos previos de electricidad y electrónica básica, leds, diodos, transistores, relés, ley de ohm, resistencias, condensadores, circuitos serie, circuitos paralelos. Miniatura de 4 pines solo tirón interruptores solo tiro. Estos son de alta calidad momentánea en los interruptores. Perfecto como un interruptor de ajuste táctil. Se monta directamente en placas universales estándar. Nominal de hasta 50 mA. Características:
Potencia nominal: 50 mA MAX 24VDC Resistencia de contacto: MAX 100MOhm •Voltaje que soporta dieléctrico: 250 V durante 1 minuto Contacto rebote: MAX 5mS Fuerza de operación: 2,55 +/- 0,69 N Volver Fource: MIN 0,49 N Viajes 0.25 + 0.2 / -0.1 mm
3
INSTITUTO TECNOLÓGICO DE MÉRIDA DEPARTAMENTO DE INGENIERÍA ELÉCTRICA Y ELECTRÓNICA SENSOR ULTRASÓNICO HC-SR04 El HC-SR04 es un sensor de distancias por ultrasonidos capaz de detectar objetos y calcular la distancia a la que se encuentra en un rango de 2 a 450 cm. El sensor funciona por ultrasonidos y contiene toda la electrónica encargada de hacer la medición. Su uso es tan sencillo como enviar el pulso de arranque y medir la anchura del pulso de retorno. De muy pequeño tamaño
Características
Dimensiones del circuito: 43 x 20 x 17 mm Tensión de alimentación: 5 Vcc Frecuencia de trabajo: 40 KHz Rango máximo: 4.5 m Rango mínimo: 1.7 cm Duración mínima del pulso de disparo (nivel TTL): 10 μS. Duración del pulso eco de salida (nivel TTL): 100-25000 μS. Tiempo mínimo de espera entre una medida y el inicio de otra 20 mS.
Pines de conexión:
VCC Trig (Disparo del ultrasonido) Echo (Recepción del ultrasonido) GND
4
INSTITUTO TECNOLÓGICO DE MÉRIDA DEPARTAMENTO DE INGENIERÍA ELÉCTRICA Y ELECTRÓNICA MATERIAL UTILIZADO
Protoboard Arduino 2 recipientes Laptop Cables Fuente de 5 V Una manguera Resistencia 220 ohms Una bomba sumergible
DESARROLLO EXPERIMENTAL Programación del sensor ultrasónico HC-SR04: #include // Entre los símbolos <> buscará en la carpeta de librerías configurada // Lo primero is inicializar la librería indicando los pins de la interfaz LiquidCrystal lcd(12, 11, 5, 4, 3, 2); // Definimos las constantes #define COLS 16 // Columnas del LCD #define ROWS 2 // Filas del LCD
// Configuramos los pines del sensor Trigger y Echo const int PinTrig = 7; const int PinEcho = 6; 5
INSTITUTO TECNOLÓGICO DE MÉRIDA DEPARTAMENTO DE INGENIERÍA ELÉCTRICA Y ELECTRÓNICA
// Constante velocidad sonido en cm/s const float VelSon = 34000.0; // Número de muestras const int numLecturas = 100; // Distancia a los 100 ml y vacío const float distancia100 = 3.82; const float distanciaVacio = 23.94; float lecturas[numLecturas]; // Array para almacenar lecturas int lecturaActual = 0; // Lectura por la que vamos float total = 0; // Total de las que llevamos float media = 0; // Media de las medidas bool primeraMedia = false; // Para saber que ya hemos calculado por lo menos una void setup() { // Iniciamos el monitor serie para mostrar el resultado Serial.begin(9600); // Ponemos el pin Trig en modo salida pinMode(PinTrig, OUTPUT); // Ponemos el pin Echo en modo entrada pinMode(PinEcho, INPUT);
// Inicializamos el array for (int i = 0; i < numLecturas; i++) { lecturas[i] = 0; } // Configuramos las filas y las columnas del LCD en este caso 16 columnas y 2 filas lcd.begin(COLS, ROWS); } void loop() { // Eliminamos la última medida 6
INSTITUTO TECNOLÓGICO DE MÉRIDA DEPARTAMENTO DE INGENIERÍA ELÉCTRICA Y ELECTRÓNICA total = total - lecturas[lecturaActual]; iniciarTrigger(); // La función pulseIn obtiene el tiempo que tarda en cambiar entre estados, en este caso a HIGH unsigned long tiempo = pulseIn(PinEcho, HIGH); // Obtenemos la distancia en cm, hay que convertir el tiempo en segudos ya que está en microsegundos // por eso se multiplica por 0.000001 float distancia = tiempo * 0.000001 * VelSon / 2.0; // Almacenamos la distancia en el array lecturas[lecturaActual] = distancia; // Añadimos la lectura al total total = total + lecturas[lecturaActual]; // Avanzamos a la siguiente posición del array lecturaActual = lecturaActual + 1; // Comprobamos si hemos llegado al final del array if (lecturaActual >= numLecturas) { primeraMedia = true; lecturaActual = 0; } // Calculamos la media media = total / numLecturas; // Solo mostramos si hemos calculado por lo menos una media if (primeraMedia) { float distanciaLleno = distanciaVacio - media; float cantidadLiquido = distanciaLleno * 1000 / distancia100; int porcentaje = (int) (distanciaLleno * 100 / distanciaVacio); // Mostramos en la pantalla LCD lcd.clear(); // Cantidada de líquido 7
INSTITUTO TECNOLÓGICO DE MÉRIDA DEPARTAMENTO DE INGENIERÍA ELÉCTRICA Y ELECTRÓNICA lcd.setCursor(0, 0); lcd.print(String(cantidadLiquido) + " ml"); // Porcentaje lcd.setCursor(0, 1); lcd.print(String(porcentaje) + " %"); Serial.print(media); Serial.println(" cm"); Serial.print(cantidadLiquido); Serial.println(" ml"); } else { lcd.setCursor(0, 0); lcd.print("Calculando: " + String(lecturaActual)); } delay(500); } // Método que inicia la secuencia del Trigger para comenzar a medir void iniciarTrigger() { long duracion, distancia ; // Ponemos el Triiger en estado bajo y esperamos 2 ms digitalWrite(PinTrig, LOW); delayMicroseconds(2); // Ponemos el pin Trigger a estado alto y esperamos 10 ms digitalWrite(PinTrig, HIGH); delayMicroseconds(10); // Comenzamos poniendo el pin Trigger en estado bajo digitalWrite(PinTrig, LOW); }
8
INSTITUTO TECNOLÓGICO DE MÉRIDA DEPARTAMENTO DE INGENIERÍA ELÉCTRICA Y ELECTRÓNICA Diagrama del sensor ultrasónico:
Construcción del prototipo de una planta (imágenes) Perforación de un recipiente para la válvula de desahogo
9
INSTITUTO TECNOLÓGICO DE MÉRIDA DEPARTAMENTO DE INGENIERÍA ELÉCTRICA Y ELECTRÓNICA Colocación de la válvula en el recipiente
Soldadura en el LCD
10
INSTITUTO TECNOLÓGICO DE MÉRIDA DEPARTAMENTO DE INGENIERÍA ELÉCTRICA Y ELECTRÓNICA Presentación en ENPOPROYECTOS
11
INSTITUTO TECNOLÓGICO DE MÉRIDA DEPARTAMENTO DE INGENIERÍA ELÉCTRICA Y ELECTRÓNICA CONCLUSIONES Y OBSERVACIONES OSCAR ALFREDO ARGAEZ PALMA: La mayor parte del proyecto se centró en cumplir el objetivo de diseñar una casa automatizada con sensores de los cuales se describen en este proyecto. Este mismo se nos hizo un desafío por la parte de organización y existieron algunos inconvenientes como los gastos en los materiales en los tiempos de elaboración. Pero al final del día el objetivo fue alcanzado satisfactoriamente de tal manera que se presentó en la expo-proyectos del instituto tecnológico de Mérida 2017. Además de la presentación de la casa automatizada se presentó una planta piloto controlado por Arduino que si bien su función es la toma de lectura constante de los niveles del líquido que este maneja. JOSÉ ALFREDO VICINAIZ CONCHA: El proyecto que realizamos el cual a simples palabras se tornaba sencillo, tuvimos que ingeniar para poder calibrar bien el sensor y que arroje las medidas y porcentaje correcto, ya que los recipientes que utilizamos no fue del todo uniforme, así como el armado de la válvula en el recipiente el que al principio tuvo fugas, también al momento de hacer funcionar la pantalla LCD, al no contar esta con un circuito integrado con pines, tuvimos que soldar y cablearlo correctamente con la tableta de pruebas. En simples palabras, todo proyecto por más pequeño que éste parezca se necesita tiempo y dedicación para que sea un éxito tanto en su funcionamiento como para la gente que no es del área de la ingeniería eléctrica o electrónica. ROBERTO JIMENEZ DÍAZ: En este proyecto diseñamos una casa inteligente con sensores, la cual nos causó muchos inconvenientes al armarla por los gastos de materiales para la elaboración de la casa, así como el poder calibrar los diferentes tipos de sensores que usamos, la programación del arduino nos causó un poco de dificultad al programar porque nos marcaba errores al instante de compilar. Dentro de una piscina pusimos un sensor de luz que cuando hay luz el sistema de iluminación permanece apagado, y cuando no hay este se prende. Además de la presentación de la casa armamos una planta piloto controlado por un sensor de nivel ultrasónico que nos permite tomar lectura constante de los niveles de líquido, tanto como en mililitros y porcentajes.
12
INSTITUTO TECNOLÓGICO DE MÉRIDA DEPARTAMENTO DE INGENIERÍA ELÉCTRICA Y ELECTRÓNICA ARMANDO FLORES RODRÍGUEZ: En esta práctica final hicimos una casa automatizada, pero se nos dificulto y fue un reto la programación del arruino al programar dos tipos de sensores, esto nos llevó demasiado tiempo, pero se terminó el proyecto y esos sensores se realizaron a base de una casa normal la cual no tiene un sistema de seguridad en la cocina (gas) y la sala (sistema de enfriamiento), por ello se puso sensores de temperatura y de gas metano. En la piscina se instaló luminaria para que el dueño de la casa evite estar prendiendo y apagando por ello se puso un sensor de sur que cuando detecta que hay luces se apaga las luces de la piscina y cuando no hay luz de día enciende las luminarias de la piscina. Además, hicimos un sistema donde se calcula el agua de un recipiente con un sensor ultrasónico, en el cual por medio de LCD podemos saber los mililitros y el porcentaje de líquidos en l recipiente. EMMANUEL ANTONIO POLANCO RIVERA: En este proyecto pudimos apreciar el funcionamiento de los sensores utilizando el arduino, el arduino lo configuramos de tal forma que el sensor pudiera medir el nivel del agua y el porcentaje que contienen los tanques esto lo podríamos aplicar en los niveles de agua de los tinacos, para que los usuarios puedan saber el nivel de agua que tienen aún, esto se logra mediante un sensor ultrasónico que se colocó en la parte superior de un tanque en este caso un tinaco que dicho nivel se vería en un display, lo que aprendimos en esta práctica es configuración y aplicación de un arduino. REFERENCIAS BIBLIOGRÁFICAS
https://electronilab.co/tienda/sensor-de-distancia-de-ultrasonido-hc-sr04/ https://aprendiendoarduino.wordpress.com/2016/09/25/que-es-arduino/
13