Descarga la aplicación para disfrutar aún más
Vista previa del material en texto
Práctica 2: Votación de cuatro directivos y lector de credenciales Labview César Iván Rodrı́guez Rivas 221393 Ingenirı́a en nanotecnologı́a, Facultad de ingenirı́a Universidad Autónoma de Querétaro crodriguez19@alumnos.uaq.mx Resumen—En éste documento se implementa una propuesta para solucionar la problemática presentada en una votación ficticia y un sistema de lector de credenciales, también se simplifica el circuito lógico necesario para simular el sistema de votación / lector de credenciales, su comprobación en un circuito de Tinkercad y VIs. Index Terms—Labview, Karnaugh, digital, electronic, logic, votes, lector I. INTRODUCCIÓN Con los fundamentos aprendidos en las clases teoricas y prácticas, los problemas a solucionar son los siguientes: a) El consejo directivo de una empresa se encuentra integrado por cuatro personas. En una de sus juntas se acordó que las votaciones se hicieran de forma secreta; sin embargo, existe el problema de que una persona ajena contara los votos para mantener el secreto del voto. Para evitar este problema se decide hacer lo siguiente: Se intalará un bóton debajo de la mesa de cada directivo. Al centro de la sala de juntas se colocarán dos lámparas, una de color roja y una de color verde. Al momento de votar, si el directivo está a favor presionará el botón, si está en contra no lo presionará, la lámpara color vede deberá encenderse si la mayorı́a vota a favor y la lámpara de color rojo deberá encenderse en caso contrario. El criterio de desempate lo tendrá el directivo número cuatro. b) En una compañı́a metalúrgica, se desea controlar el acceso a ciertas áreas mediante una credencialcodificada, pertenecientes a todos los empleados. El código de acceso se grabará en la credencialmediante tres perforaciones. El sistema de control obtendrá dicho código revisando mediantesensores fotoeléctricos, desplegará el código de la tarjeta que se está verificando y permitirá elacceso activando una indicación luminosa y un “buzzer” de 12 VDC. Áreas a las que se les permitirá el acceso Código Gerencia 1 Mantenimiento 4 Ingenieros encargados de hornos 5 Operadores 6 Tabla 1: Tabla de accesos II. OBJETIVO Elaborar un circuito que simule el funcionamiento como sistema de voto secreto para una mesa directiva en un es- cenario donde sean cuatro directivos, en donde el voto de desempate lo tiene el cuarto directivo y otro que simule un lector de credenciales para conceder el acceso a los empleados que tengan el permiso necesario. III. MATERIAL Integrado 7404 Integrado 7408 Integrado 7432 Protoboard Cables de cobre Resistencias de 330 ohms Resistencias de 1 Kohms Led rojo Led verde Fuente de poder Dip switch de 4 polos Tinkercad Livewire Buzzer IV. FUNDAMENTACIÓN TEÓRICA IV-A. Labview LabVIEW (acrónimo de Laboratory Virtual Instrument Engineering Workbench) es una plataforma y entorno de desarrollo para diseñar sistemas, con un lenguaje de programación visual gráfico pensado para sistemas hardware y software de pruebas, control y diseño, simulado o real y embebido. Este programa fue creado por National Instruments (1976) para funcionar en máquinas MAC, salió al mercado por primera vez en 1986, teniendo versiones disponibles para las plataformas Windows, UNIX, MAC y GNU/Linux actualmente. La penúltima versión es la 2013, con la increı́ble demostración de poderse usar simultáneamente para el diseño del firmware de un instrumento RF de última generación, a la programación de alto nivel del mismo instrumento, todo ello con código abierto. Y posteriormente la versión 2014 disponible en versión demo para estudiantes y profesional, la versión demo se puede descargar directamente de la página National Instruments. Los programas desarrollados con LabVIEW se llaman Instrumentos Virtuales, o VIs, y su origen provenı́a del control de instrumentos, aunque hoy en dı́a se ha expandido ampliamente no solo al control de todo tipo de electrónica (Instrumentación electrónica) sino también a su programación embebida, comunicaciones, matemáticas, etc. Un lema tradicional de LabVIEW es: ”La potencia está en el Software”, que con la aparición de los sistemas multinúcleo se ha hecho aún más potente. Entre sus objetivos están el reducir el tiempo de desarrollo de aplicaciones de todo tipo (no solo en ámbitos de Pruebas, Control y Diseño) y el permitir la entrada a la informática a profesionales de cualquier otro campo. LabVIEW consigue combinarse con todo tipo de software y hardware, tanto del propio fabricante, tarjetas de adquisición de datos, PAC, Visión, instrumentos y otro Hardware- como de otros fabricantes. Su principal caracterı́stica es la facilidad de uso, válido para programadores profesionales como para personas con pocos conocimientos en programación pueden hacer programas relativamente complejos, imposibles para ellos de hacer con lenguajes tradicionales. También es muy rápido hacer programas con LabVIEW y cualquier programador, por experimentado que sea, puede beneficiarse de él. Los programas en LabView son llamados instrumentos virtuales (VIs) con él pueden crearse programas de miles de VIs (equivalente a millones de páginas de código texto) para aplicaciones complejas, programas de automatizaciones de decenas de miles de puntos de entradas/salidas, proyectos para combinar nuevos VIs con VIs ya creados, etc. Incluso existen buenas prácticas de programación para optimizar el rendimiento y la calidad de la programación. Cabe destacar que es una herramienta gráfica de programación, esto significa que los programas no se escriben, sino que se dibujan, facilitando su comprensión. Al tener ya pre-diseñados una gran cantidad de bloques, se le facilita al usuario la creación del proyecto, con lo cual en vez de estar una gran cantidad de tiempo en programar un dispositivo/bloque, se le permite invertir mucho menos tiempo y dedicarse un poco más en la interfaz gráfica y la interacción con el usuario final. Cada VI consta de dos partes diferenciadas: Panel Frontal: El Panel Frontal es la interfaz con el usuario, la utilizamos para interactuar con el usuario cuando el programa se está ejecutando. Diagrama de Bloques: es el programa propiamente dicho, donde se define su funcionalidad, aquı́ se colocan ı́conos que realizan una determinada función y se interconectan (el código que controla el programa). V. DESCRIPCIÓN METODOLÓGICA En el primer problema se plantea que los directivos pueden votar a favor o en contra, esto lo podemos interpretar como que a favor es igual a 1 y en contra es 0. En el este caso al tratarse de cuatro directivos las combinaciones posibles son: 24 = 16, donde la desición elegida es la que más votos tiene y tomando el citerio de desempate que le es concedido al cuarto directivo. Por otro lado el lector de credenciales funciona bajo un principio similar, salvo que en este caso solo hay cuatro de las combinaciones que permiten el acceso, pero estas no corresponden a la mayorı́a sino que a las combinaciones que en números binarios den los números de acceso permitido como se muestra a continuación: Tabla 2: Tabla de números binarios Número dec. 0 0 1 1 0 1 0 2 0 1 1 3 1 0 0 4 1 0 1 5 1 1 0 6 El siguiente paso es realizar la tabla de verdad de cada caso (B1, B2, B3, B4 corresponden a los votos secretos, V a mayorı́a a favor y R a mayorı́a en contra; C1, C2, C3 corresponden a las perforaciones): Tabla 3: Tabla de verdad para el lector de credenciales C1 C2 C3 Acceso No Acceso 0 0 0 0 1 0 0 1 1 0 0 1 0 0 1 0 1 1 0 1 1 0 0 1 0 1 0 1 1 0 1 1 0 1 0 1 1 1 0 1 B1 B2 B3 B4 V R 1 1 1 1 1 0 1 1 1 0 1 0 1 1 0 1 1 0 1 1 0 0 0 1 1 0 1 1 1 0 1 0 1 0 0 1 1 0 0 1 1 0 1 0 0 0 0 1 0 1 1 1 1 0 0 1 1 0 0 1 0 1 0 1 1 0 0 1 0 0 0 1 0 0 1 1 1 0 0 0 1 0 0 1 0 0 0 1 0 1 0 0 0 0 0 1 Tabla 4: Tabla de verdad para mesa de cuatro directivos Con esta información ya podemos armar el circuito lógico pero éste será muy grande en el ambos casos, por lo que se usanmapas de Karnaugh para reducir el número de compuertas lógicas a utilizar. Tabla 5: Mapa de Karnaugh para lector de credenciales C - AB 00 01 11 10 0 1 1 1 1 1 Tabla 6: Mapa de Karnaugh para mesa de cuatro directivos B1 B2 - B3 B4 00 01 11 10 00 1 01 1 1 11 1 1 1 10 1 1 Posteriormente se puede realizar el circuito lógico de forma mas simple y optimizada, para ası́ comprobar que efectivamente cumple con su objetivo en ambos casos. Después de verificar de que en la simulacion de Livewire todo funcionara correctamente en ambos casos con las 16 posibles combinaciones de las votaciones y la lectura de las perforaciones, se implementó en tinkercad con el uso de un Dip switch de 4 polos (para simular las perforaciones), los integrados 7404, 7408, 7432, un led verde y otro rojo para la señal luminica que exprese a favor/ en contra o acceso / no acceso, un buzzer y una fuente de voltaje configurada a 5 V DC. Figura 1. Circuito lógico simplificado correspondiente al lector de creden- ciales Figura 2. Circuito lógico simplificado correspondiente a la mesa con cuatro directivos Por otro lado también se implementó en labview con el uso de botones switch e indicadores leds. VI. RESULTADOS Al implementar en tinkercad y Labview, se obtuvo el mismo resultado que en la simulación en Livewire, no hubó mayor complicación más que conectar correctamente el cableado y por otro lado en Labview se realizó muy similar a lo hecho en Livewire. La diferencia en comparación a Livewire es que se puede observar lo más cercano a la realidad, incluyendo la señal luminica. Labview representó una muy buena alternativa a Livewire para mostrar una mejor interfaz de usuario bajo una programación similar. VI-A. Circuito simulado En las siguientes imagenes se encuentran ejemplos de las combinaciones, esto para el caso del lector de credenciales. Figura 3. Implementación en Labview Figura 4. Implementación en Labview Figura 5. Implementación en Labview Figura 6. Implementación en Labview En las siguientes imagenes se encuentran ejemplos de las combinaciones, esto para el caso de la mesa directiva compuesta por cuatro directivos. Figura 7. Implementación en Labview Figura 8. Implementación en Labview Figura 9. Implementación en Labview Figura 10. Implementación en Labview VII. CONCLUSIONES La implementación de la solución a ambos problemas ahora en el programa Labview, permitió presentar una mejo interfaz de usuario que es mucho más amigable en caso de que lo use otro usuario diferente al autor, pero eso no significa que la implementación a tinkercad no sea funcional, sino que presenta un complemento a su implementación en un entorno real, de forma que no sea demasiado abstracto para el susario que no esta familiarizado con esa interfaz robusta y poco intuitiva. Debido a que en Labview usamos una programación gráfica, no fue muy difı́cil pasar del diagrama en Livewire a Labview, quizás la mayor complicación fue el hecho de encontrar las herramientas necesarias que en este caso eran .and”, .or 2 ”not”, lo demás es colocar leds y botones. Labview es un entorno muy amigable y con muchas herramientas para el programador, esto último es una arma de doble filo ya que si no se conoce del todo donde están ubicadas estás herramientas se puede complicar la labor de programar. REFERENCIAS [1] Sin autor, ¿Qué es Labview? , disponible en: https://www.ni.com/es- mx/shop/labview.html Introducción Objetivo Material Fundamentación Teórica Labview Descripción Metodológica Resultados Circuito simulado Conclusiones Referencias
Compartir