I UNIVERSIDAD TECNOLÓGICA EQUINOCCIAL CARÁTULA FACULTAD DE CIENCIAS DE LA INGENIERÍA INGENIERÍA INFORMÁTICA Y CIENCIAS DE LA COMPUTACIÓN TEMA: MÓDULO DIDÁCTICO PARA CONTROL DE DISPOTIVOS DE ENTRADA/SALIDA TESIS PREVIA LA OBTENCIÓN DE TÍTULO DE INGENIERO EN INFORMÁTICA Y CIENCIAS DE LA COMPUTACIÓN AUTOR: Fernanda Guadalupe Mera Herrera DIRECTOR DE TESIS: Ing. Juan Carlos Rivera Quito – Ecuador 2010 II Del contenido del presente trabajo se responsabiliza el autor DECLARACIÓN Fernanda Guadalupe Mera Herrera III Certifico que esta Tesis ha sido desarrollada en su totalidad por Fernanda Mera CERTIFICACIÓN Ing. Juan Carlos Rivera IV AGRADECIMIENTOS Agradezco, a todas las personas que de una u otra manera fueron participes del proceso y culminación de mi Tesis, a mi familia, a mis profesores de manera muy especial a mi director de tesis Ing. Juan Carlos Rivera quien me ha ayudado no solo con la dirección de mi tesis sino a lo largo de mi carrera. A mis amigos que tuve la dicha de conocer en la UTE, con los cuales he formado una gran amistad: Dayana, Pamela, Marlon, Santiago, de manera muy especial a Frank, los cuales me ayudaron incondicionalmente. Y principalmente al Señor mi Dios el ser que ha hecho posible que todas las cosas salgan con éxito y felicidad. Por último a mi Universidad Tecnológica Equinoccial que me brindo todos los medios para culminar mi carrera. V DEDICATORIA Mi dedicatoria es especialmente para mis padres que siempre han confiado en mí y me han apoyado en cada paso dado en mi vida. A mis hermanos Alex y Diego, mi sobrino Zaid, quienes han llenado mi vida de seguridad, confianza y felicidad. De manera muy especial a dos nuevos integrantes de mi familia, los cuales me han impulsado a seguir y culminar con éxito este importante paso, mi esposo Andrés y mi hija Rafaelita. VI ÍNDICE DE CONTENIDO CARÁTULA ............................................................................................................... II DECLARACIÓN ........................................................................................................ III CERTIFICACIÓN ...................................................................................................... IV AGRADECIMIENTOS ............................................................................................... V DEDICATORIA ......................................................................................................... VI ÍNDICE DE FOTOS ................................................................................................ XV ÍNDICE DE GRÁFICOS ......................................................................................... XVI ÍNDICE DE TABLAS ............................................................................................. XIX ÍNDICE DE ANEXOS............................................................................................. XXI RESUMEN ............................................................................................................. XXII SUMMARY ......................................................................................................... XXIV VII ÍNDICE GENERAL CAPÍTULO I ................................................................................................................ 1 ANÁLISIS .................................................................................................................... 2 1 MÓDULO DIDÁCTICO PARA CONTROL DISPOSITIVOS DE ENTRADA/SALIDA .................................................................................................... 2 1.1 Planteamiento del Problema: ......................................................................... 2 1.2 Objetivos ....................................................................................................... 4 1.2.1 General ...................................................................................................... 4 1.2.2 Específicos ................................................................................................ 4 1.3 Justificación .................................................................................................. 5 1.4 Hipótesis ....................................................................................................... 6 1.5 Métodos y Técnicas ....................................................................................... 7 1.6 Factibilidad ................................................................................................... 8 1.6.1 Factibilidad Técnica................................................................................... 8 1.6.2 Factibilidad Económica ............................................................................. 8 CAPÍTULO II ............................................................................................................. 10 2 VISUAL C# ........................................................................................................ 11 2.1 La librería Inpout32.dll ................................................................................ 11 2.2 Diseñando la Interfaz ................................................................................... 12 2.3 Requerimientos de hardware y Software ...................................................... 12 2.4 Importando Librerías para el Puerto Paralelo en C# ..................................... 13 2.5 Puerto Paralelo ............................................................................................ 14 2.6 Señales de la interfaz Centronics ................................................................. 17 2.6.1 El puerto de Datos (D): ............................................................................ 20 2.6.2 El puerto de Estado (S): ........................................................................... 21 2.6.3 El puerto de Control (C): ......................................................................... 22 VIII 2.7 Definición del Modo de Configuración del puerto paralelo ......................... 23 2.8 Modos de Configuración del Puerto Paralelo .............................................. 23 2.8.1 Modo de Salida ........................................................................................ 24 2.8.2 Modo Bidireccional (compatible PS/2) .................................................... 24 2.8.3 Modo EPP (Enhanced Parallel Port) ........................................................ 25 2.8.4 Modo ECP (Enhanced Capability Port) .................................................... 25 CAPÍTULO III ........................................................................................................... 27 3 PRINCIPIOS FUNDAMENTALES DE ELECTRICIDAD. ................................ 28 3.1 Tensión Eléctrica (Voltaje) .......................................................................... 28 3.2 Corriente Eléctrica ....................................................................................... 29 3.3 Resistencia Eléctrica .................................................................................... 29 3.4 La Ley de Ohm............................................................................................ 30 3.5 Potencia Eléctrica ........................................................................................ 31 3.6 Elementos Fundamentales de la Electrónica................................................. 31 3.6.1 Capacitor ................................................................................................. 31 3.6.2 Diodos ..................................................................................................... 33 3.6.3 Transistores ............................................................................................. 34 3.6.4 Resistencias: ............................................................................................ 34 3.6.5 Diodo emisor de luz (LED): ..................................................................... 35 CAPÍTULO IV .......................................................................................................... 36 4 DISPOSITIVOS DE ENTRADA Y SALIDA ..................................................... 37 4.1 Transmisión Analógica y Digital ................................................................. 37 4.1.1 Señal Análoga ......................................................................................... 38 4.1.2 Señal Digital: ........................................................................................... 39 4.2 Circuito Conversor Análogo-digital: ............................................................ 39 4.2.1 Funcionamiento ....................................................................................... 40 4.2.2 Conversor Análogo Digital ADC0804: .................................................... 43 4.3 Circuito Conversor Digital-análogo (DAC): ................................................ 46 IX 4.3.1 Funcionamiento ....................................................................................... 47 4.4 Motores de Pasos: ........................................................................................ 47 4.4.1 Estator: .................................................................................................... 48 4.4.2 Rotor: ...................................................................................................... 49 4.4.3 Características: ........................................................................................ 50 4.5 4.4.3.1 Grados por paso ó Resolución: ......................................................... 50 4.4.3.2 Frecuencia de funcionamiento: ......................................................... 50 4.4.3.3 Voltaje: ............................................................................................ 51 4.4.3.4 Resistencia por bobina: .................................................................... 51 4.4.3.5 Pull-in y Pull-out rate: ...................................................................... 51 4.4.3.6 Resonancia:...................................................................................... 51 Tipos de Motores Paso a Paso ...................................................................... 52 4.5.1 Motores de reluctancia variable ............................................................... 52 4.5.2 Motores de imán permanente ................................................................... 52 4.6 Motor Unipolar de Paso: .............................................................................. 53 4.7 Motor Bipolar de Pasos: .............................................................................. 53 4.8 Matriz de LED: ........................................................................................... 55 4.8.1 Funcionamiento ....................................................................................... 55 4.8.2 Configuración: ......................................................................................... 56 4.9 LCD (Display de Cristal Líquido): ............................................................... 57 4.9.1 Funcionamiento ....................................................................................... 57 4.10 Display de 7 Segmentos............................................................................... 58 4.10.1 Funcionamiento ................................................................................... 58 4.10.2 Integrado 74LS47 ................................................................................ 59 4.10.3 Código BCD (Binary Code Decimal): .................................................. 60 4.11 Circuito Integrador ...................................................................................... 62 4.11.1 Funcionamiento ................................................................................... 62 CAPÍTULO V ............................................................................................................ 63 DISEÑO ..................................................................................................................... 64 X 5 DISEÑO DE SOFTWARE Y HARDWARE ....................................................... 64 5.1 Diseño del Programa ................................................................................... 64 5.1.1 Funcionamiento de BubleBar ................................................................... 66 5.1.2 Diagramas de Flujo .................................................................................. 66 5.2 5.1.2.1 Diagrama de Flujo Del Circuito Conversor Análogo Digital ............. 67 5.1.2.2 Diagrama De Flujo Del Circuito Conversor Digital Análogo ............ 68 5.1.2.3 Diagrama de Flujo de Motores de Paso ............................................ 69 5.1.2.4 Diagrama de Flujo del LCD ............................................................. 71 5.1.2.5 Diagrama de flujo de Matriz de LED................................................ 73 5.1.2.6 Diagrama de Flujo de Display de 7 Segmentos ................................. 74 Diseño de Hadrware .................................................................................... 76 5.2.1 Diseño del circuito Análogo/Digital ......................................................... 76 5.2.1.1 Elementos del circuito Análogo/Digital ............................................ 76 5.2.1.2 Justificación del Diseño: .................................................................. 77 5.2.2 Diseño del Circuito Digital-Análogo ........................................................ 77 5.2.2.1 Elementos del Circuito Digital-Análogo ........................................... 78 5.2.2.2 Justificación del Diseño ................................................................... 78 5.2.3 Diseño del Circuito Unipolar de pasos ..................................................... 81 5.2.3.1 Elementos del Circuito ..................................................................... 82 5.2.3.2 Justificación del Diseño ................................................................... 82 5.2.3.3 Secuencia Wave Drive. .................................................................... 84 5.2.3.3.1 Secuencia Full Step. ..................................................................... 85 5.2.3.3.2 Secuencia Half Step. .................................................................... 86 5.2.4 Diseño del Circuito Bipolar de Pasos ....................................................... 86 5.2.4.1 Elementos del Circuito ..................................................................... 87 5.2.4.2 Justificación del Diseño ................................................................... 87 5.2.5 Diseño del circuito de Matriz de LED ...................................................... 89 5.2.5.1 Elementos del Circuito ..................................................................... 90 5.2.5.2 Justificación del Diseño ................................................................... 90 5.2.6 Diseño del Circuito LCD ......................................................................... 91 Elementos del Circuito LCD ............................................................................... 92 XI 5.2.6.1 Justificación del diseño .................................................................... 92 5.2.6.1.1 Descripción del LCD.................................................................... 92 5.2.7 Diseño del Circuito Display de 7 Segmentos ............................................ 93 5.2.7.1 Elementos del Circuito ..................................................................... 94 5.2.7.2 Justificación del Diseño ................................................................... 95 5.2.7.2.1 Display 334967 ............................................................................ 95 5.2.8 Diseño del Circuito Integrador ................................................................. 97 5.2.8.1 Elementos del Circuito ..................................................................... 98 5.2.8.2 Justificación del Diseño ................................................................... 98 CAPÍTULO VI ......................................................................................................... 100 6 CONSTRUCCION DEL PROTOTIPO ............................................................. 101 6.1 Circuito Análogo Digital ........................................................................... 101 6.2 Circuito Digital Análogo ........................................................................... 102 6.3 Circuito Display de 7 Segmentos ............................................................... 102 6.4 Circuito LCD............................................................................................. 104 6.5 Circuito Matriz de Leds ............................................................................. 105 6.6 Circuito Bipolar de Pasos. ......................................................................... 107 6.7 Circuito Unipolar de Pasos.- ...................................................................... 108 6.8 Diseño de la Placa Física del Circuito ........................................................ 109 CAPÍTULO VII ........................................................................................................ 111 7 DOCUMENTACION DE USUARIO Y TECNICA: ......................................... 112 7.1 Manual Técnico: ........................................................................................ 112 7.1.1 Ventana LCD......................................................................................... 112 7.1.1.1 Controles. ...................................................................................... 113 7.1.1.2 Funciones de la clase control_lcd ................................................... 113 7.1.2 Ventana Motor de Pasos Bipolar ............................................................ 114 7.1.2.1 Controles. ...................................................................................... 115 7.1.2.2 Funciones de la clase_motor_paso_b.............................................. 115 XII 7.1.3 Ventana Display de 7 Segmentos ........................................................... 116 7.1.3.1 Controles. ...................................................................................... 117 7.1.3.2 Funciones de la clase control_display ............................................. 117 7.1.4 Ventana Conversor A/D. ........................................................................ 118 7.1.5 Ventana de Conversor D/A .................................................................... 119 7.1.5.1 ........................................................................................................... 120 7.1.6 Ventana de Matriz de LEDS .................................................................. 120 7.2 Manual de Usuario .................................................................................... 121 7.2.1 LCD ...................................................................................................... 122 7.2.2 Motor Bipolar de pasos .......................................................................... 123 7.2.3 Motor Unipolar de pasos........................................................................ 124 7.2.4 Display de 7 Segmentos ......................................................................... 126 7.2.5 Conversor Análogo/ Digital .................................................................. 127 7.2.6 Conversor Digital /Análogo ................................................................... 128 7.2.7 Matriz de Lez ........................................................................................ 129 CAPÍTULO VIII ....................................................................................................... 130 8 PRUEBAS ........................................................................................................ 131 8.1 Circuito Conversor Análogo Digital .......................................................... 132 8.2 Circuito Conversor Digital Análogo .......................................................... 133 8.3 Circuito de Motor Unipolar de Pasos ......................................................... 134 8.4 Circuito de Motor Bipolar de Pasos ........................................................... 135 8.5 Circuito LCD............................................................................................. 135 8.6 Circuito de Display de 7 Segmentos .......................................................... 136 8.7 Circuito Matriz de Leds ............................................................................. 137 8.8 Circuito Integrador .................................................................................... 137 CAPÍTULO IX ......................................................................................................... 139 9 CONCLUSIONES Y RECOMENACIONES .................................................... 140 9.1 Conclusiones ............................................................................................. 140 XIII 9.2 Recomendaciones ...................................................................................... 141 9.3 Bibliografía ............................................................................................... 142 9.4 Glosario de Términos ................................................................................ 145 ANEXOS .................................................................................................................. 146 XIV ÍNDICE DE FOTOS FOTOGRAFÍA 1. CIRCUITO INTEGRADOR 132 FOTOGRAFÍA 2 CIRCUITO CONVERSOR DIGITAL ANÁLOGO 132 FOTOGRAFÍA 3 CIRCUITO DIGITAL ANÁLOGO 133 FOTOGRAFÍA 4 CIRCUITO MOTOR UNIPOLAR DE PASOS 134 FOTOGRAFÍA 5 CIRCUITO MOTOR BIPOLAR DE PASOS 135 FOTOGRAFÍA 6 CIRCUITO LCD 136 FOTOGRAFÍA 7 CIRCUITO DISPLAY DE 7 SEGMENTOS 136 FOTOGRAFÍA 8 CIRCUITO MATRIZ DE LEDS 137 FOTOGRAFÍA 9 CIRCUITO INTEGRADOR Y PUERTO PARALELO 138 XV ÍNDICE DE GRÁFICOS ILUSTRACIÓN 1 PUERTO PARALELO 14 ILUSTRACIÓN 2 CONFIGURACIÓN DE LPT1 17 ILUSTRACIÓN 3 DISTRIBUCIÓN DE PINES PUERTO PARALELO 18 ILUSTRACIÓN 4 PUERTO PARALELO 19 ILUSTRACIÓN 5 DIODOS RETIFICADORES 33 ILUSTRACIÓN 6 TRANSISTORES 34 ILUSTRACIÓN 7 DIODOS 35 ILUSTRACIÓN 8 SEÑAL ANÁLOGA 38 ILUSTRACIÓN 9 SEÑAL DIGITAL 39 ILUSTRACIÓN 10 DIAGRAMA DE LECTURA DE DATOS 41 ILUSTRACIÓN 11 DIAGRAMA DE LECTURA DE DATOS 41 ILUSTRACIÓN 12 DISTRIBUCIÓN DE PINES ADC 0804 45 ILUSTRACIÓN 13 ESTATOR 48 ILUSTRACIÓN 14 ROTOR 49 ILUSTRACIÓN 15 MOTOR PAP BIPOLAR 54 ILUSTRACIÓN 16. MATRIZ DE LEDS 55 ILUSTRACIÓN 17 DISTRIBUCIÓN DE PINES DE MATRIZ 56 ILUSTRACIÓN 18. LCD 57 ILUSTRACIÓN 19. DISTRIBUCIÓN DE PINES LCD 58 ILUSTRACIÓN 20. DISPLAY DE 7 SEGMENTOS 59 ILUSTRACIÓN 21. INTEGRADO 74LS47 60 ILUSTRACIÓN 22. DISTRIBUCIÓN DE PINES DISPLAY DE 7 SEGMENTOS 61 XVI ILUSTRACIÓN 23. VENTANA DE CONTROL DE DISPOSITIVOS DE ENTRADA Y SALIDA 65 ILUSTRACIÓN 24. CONTROL BUBBLE BAR 66 ILUSTRACIÓN NO.25. DISEÑO DE CIRCUITO A/D 76 ILUSTRACIÓN 26. DISEÑO CIRCUITO D/A 77 ILUSTRACIÓN 27. MOTOR UNIPOLAR DE PASOS 82 ILUSTRACIÓN 28. CIRCUITO BIPOLAR DE PASOS 87 ILUSTRACIÓN 29. DISEÑO DE CIRCUITO DE MATRIZ DE LEDS 90 ILUSTRACIÓN 30. DISEÑO DE CIRCUITO DE LCD 91 ILUSTRACIÓN 31. CONEXIÓN DE DISPLAY AL PUERTO 94 ILUSTRACIÓN 32. DISPLAY 334967 95 ILUSTRACIÓN 33. CIRCUITO INTEGRADOR 97 ILUSTRACIÓN 34. DISEÑO FÍSICO DEL CIRCUITO INTEGRADOR 110 ILUSTRACIÓN 35. VENTANA LCD 112 ILUSTRACIÓN 36. VENTANA MOTOR DE PASOS BIPOLAR 114 ILUSTRACIÓN 37. VENTANA DISPLAY DE 7 SEGMENTOS 116 ILUSTRACIÓN 38. VENTANA CONVERSOR A/D 118 ILUSTRACIÓN 39. VENTANA CONVERSOR D/A 119 ILUSTRACIÓN 40. VENTANA MATRIZ DE LEDS 120 ILUSTRACIÓN 41. VENTANA DE MENÚ 121 ILUSTRACIÓN 42. VENTANA LCD 122 ILUSTRACIÓN 43. MOTOR BIPOLAR DE PASOS 123 ILUSTRACIÓN 44. MOTOR UNIPOLAR DE PASOS 124 ILUSTRACIÓN 45. DISPLAY DE 7 SEGMENTOS 126 XVII ILUSTRACIÓN 46. CONVERSOR A/D 127 ILUSTRACIÓN 47. CONVERSOR D/A 128 ILUSTRACIÓN 48. MATRIZ DE LEDS 129 XVIII ÍNDICE DE TABLAS TABLA 1 SEÑALES DEL PUERTO PARALELO 20 TABLA 2 SEÑAL DE DATOS 21 TABLA 3 SEÑAL DE ESTADO 21 TABLA 4 SEÑAL DE CONTROL 22 TABLA 5 COMBINACIONES DE DATOS BINARIOS 44 TABLA 6. GRADOS Y PASOS DE UN MOTOR PAP 50 TABLA 7: SECUENCIA DE BOBINA MOTOR UNIPOLAR 53 TABLA 8. SECUENCIA DE BOBINA BIPOLAR 54 TABLA 9 CARACTERÍSTICAS DE MATRIZ DE LEDS 55 TABLA 10. DISTRIBUCIÓN DE LEDS DE LA MATRIZ 56 TABLA 11. CONVERSIÓN DECIMAL BCD 61 TABLA 12 CONVERTIDOR D/A 80 TABLA 13. RESOLUCIÓN DE VOLTAJE D/A 81 TABLA 14 VOLTAJES DE MOTOR 84 TABLA 15 SECUENCIA WAVE DRIVE 85 TABLA 16 FULL STEP 85 TABLA 17 HALF STEP 86 TABLA 18. DISTRIBUCIÓN DE PINES L293 88 TABLA 19 LÓGICA DE L293 89 TABLA 20 DISTRIBUCIÓN DE PINES LCD 92 TABLA 21 DISTRIBUCIÓN DE PINES 334967 95 TABLA 22. HABILITACIÓN DE DISPOSITIVOS 99 TABLA 23. CONTROLES LCD 113 XIX TABLA 24. FUNCIONES DE CLASE CONTROL_LCD 113 TABLA 25. CONTROLES MOTOR DE PASOS BIPOLAR 115 TABLA 26. FUNCIONES DE CLASE_MOTOR_PASO_B 115 TABLA 26. CONTROLES DE DISPLAY DE 7 SEGMENTOS 117 TABLA 26. FUNCIONES DE CLASE CONTROL_DISPLAY 117 XX ÍNDICE DE ANEXOS ANEXO 1: CIRCUITO INTEGRADO DAC0808..................................................... 147 ANEXO 2: CARACTERÍSTICAS ELÉCTRICAS INTEGRADO DAC0808 ........... 148 ANEXO 3: CIRCUITO INTEGRADO LF351 .......................................................... 149 ANEXO 4: CARACTERÍSTICAS ELÉCTRICAS INTEGRADO LF351 ................. 150 ANEXO 5: CIRCUITO INTEGRADO ADC 0804.................................................... 151 ANEXO 6: INTEGRADO ADC 0804 ...................................................................... 152 ANEXO 7: CARACTERÍSTICAS ELÉCTRICAS INTEGRADO ADC 0804 .......... 153 ANEXO 8: CIRCUITO INTEGRADO L293 ............................................................ 154 ANEXO 9: CIRCUITO INTEGRADO 74LS138 ...................................................... 154 ANEXO 10: CARACTERÍSTICAS ELÉCTRICAS INTEGRADO L293 ................. 155 ANEXO 11: CIRCUITO INTEGRADO 74LS47 ...................................................... 156 ANEXO 12: CARACTERÍSTICAS ELÉCTRICAS INTEGRADO 74LS47 ............. 156 ANEXO 13: CIRCUITO INTEGRADO 74LS373 .................................................... 157 ANEXO 14: DIAGRAMA LÓGICO INTEGRADO 74LS373 .................................. 157 ANEXO 15: CARACTERÍSTICAS ELÉCTRICAS INTEGRADO 74LS373 ........... 158 ANEXO 16: LCD ..................................................................................................... 159 ANEXO 17: DISPLAY DE 7 SEGMENTOS............................................................ 159 ANEXO 18: CARACTERÍSTICAS ELÉCTRICAS, DISPLAY DE 7 SEGMENTOS .......................................................................................................................... 160 ANEXO 19: MATRIZ DE LEDS: ............................................................................ 160 ANEXO 20: DISTRIBUCIÓN DE PINES ................................................................ 160 XXI RESUMEN La Tesis abarca el estudio del puerto paralelo (LTP), el mismo que contiene varios bits; de Datos, de Estado y de Control, que permiten el envío de ordenes que la impresora; los bits de Datos contienen 8 los cuales escriben los datos que se envían a la impresora, los Bits de estado, se usan 5 de los 8 bits los mismos que sirven para lectura de estado de las líneas de interfaz con la impresora. Los bits de control son 8 bits que escriben diversas señales que reconoce la impresora como: validación de datos, inicialización, por ejemplo cuando se encuentra atascado el papel, la impresora ha caído en error, etc. El modo de trabajar con el proyecto de tesis y la computadora, se configura desde la BIOS para que pueda funcionar correctamente, es decir, recibir y enviar órdenes desde y hacia la PC se la configura en modo Bidireccional. La placa diseñada, contiene 7 dispositivos de Entrada y salida mediante el programa diseñado permite enviar órdenes a cada dispositivo como: - Conversor Digital/Análogo.- Permite transformar las señales digitales que se envía desde la computadora y son mostrada en el osciloscopio. - Conversor Análogo/Digital.- Permite Transformar las señales análogas que se envían desde la placa y son mostradas en la computadora - LCD.- Permite mostrar el texto que se escribe en la PC en el LCD, se escribe 2*16 en 2 renglones 16 caracteres. - Display de 7 Segmentos.- Muestra en el display un contador de números de 0 a 99, contador ascendente y descendentemente. XXII - Motor Bipolar de Pasos.- Envía ordenes desde la computadora hasta el motor el mismo que funciona con giros por grados, pasos o tiempo. - Motor Unipolar de Pasos.- Realiza la misma función del motor Bipolar de pasos. - Matriz de Leds.- Muestra figuras mediante pulsos que se envía desde la computadora a la matriz. Estos circuitos se encuentran en una placa impresa, integrados de tal manera que funcionan independientemente uno de otro enviando las ordenes desde la computadora y son habilitados y deshabilitados mediante un dip-switch, la placa funciona con voltaje des 0 a 5V, además funciona con voltajes externos para el motor Unipolar de pasos y el conversor Digital-Análogo. Para definir las líneas del puerto y conectarlas a la placa fueron probadas mediante continuidad las líneas de datos, estado y control. El programa diseñado para este proyecto de tesis es desarrollado en Visual Studio .Net, en C#, utiliza librerías ya desarrolladas en .Net. (input32.dll ) La interfaz grafica implementada en el programa se la implementó mediante una máscara ya desarrollada que contiene el menú del programa, se llama BubbleBar. XXIII SUMMARY The Thesis ranges the study of the parallel port (LTP), the same that contains several bits; of Data, of State and of Control, that allow the sending of order that they realize the operation of the printer; the Data bits, contains eight bits which write the data that send to the printer, the Bits of state, use five of the eight bits the same that serve for reading of state of the lines of interface with the printer. The bits of control of 8 bits that write diverse signals that recognizes the printer for example: data validation, when it finds obstruct paper, the printer has fallen in error, etc. The way to work with the project of thesis and the computer is configure in BIOS so that it can work properly, for receive and send orders from and to the PC configures it in two ways. The plaque designed, contains seven devices of entrance and exit, throws designed program allows sending orders to each device for example: - Digital/Analogous Converter: Transform the digital signals that send from the computer and is showed in the osciloscopio. - Analogous/Digital Converter: Transform the analogous signals that send from the plate and are showed in the computer. - LCD: Allows showing the text that write in PC, in LCD, writes 2*16 in 2 lines sixteen characters. - Display Of 7 Segments: Sample in the display, a counter of numbers of 0 to 99, two digits, upward counter and downward counter. - Steps Bipolar Engine: Sends order from the computer until the engine, it works with twists by degrees, steps or time. XXIV - Steps Unipolar Engine: Realizes the same function of the engine Bipolar of steps. - Matrix of Leds: Shows figures, by pulses that send from the computer to the matrix. These circuits find in a printed plaque, integrated of such way that work independently one of another, sending order them from the computer and are enabled and de by a dipswitch, the plaque works with voltage Give 0 to 5V, besides works with external voltages for the Unipolar steps engine and the Digital-Analogous converter. To define the lines of the port and connect them to the plate were tested continuity for data lines, state and control. The program designed for this project of thesis is developed in Visual Studio .Net, in C#, uses bookshops already developed in .Net. (input32.dll ) The graph interface is implemented in program includes an already developed mask that contains the program menu, calls BubleBar. XXV CAPÍTULO I 1 ANÁLISIS CAPÍTULO I 1 MÓDULO DIDÁCTICO PARA CONTROL DISPOSITIVOS DE ENTRADA/SALIDA Diseñar un módulo didáctico de aprendizaje y práctica para controlar dispositivos de entrada y salida básicos los cuales van a ser controlados a través del puerto paralelo por donde se enviara las diferentes órdenes para que los respectivos dispositivos funcionen. 1.1 Planteamiento del Problema: Con el fin de brindar un medio de desarrollo para prácticas de laboratorio para los estudiantes de la Universidad Tecnológica Equinoccial, se brinda un amplio conocimiento sobre el puerto paralelo (líneas de control, estado y datos) y su interactividad con dispositivos básicos de entrada y salida. (Motores paso a paso, display, LCD, matrices de leds, conversores A/D y D/A). La función principal a desarrollarse consiste en enviar órdenes que ejecuten dispositivos externos que cumplen ciertas funciones específicas y se lo pueda controlar a través de las señales que emite el puerto paralelo “LTP”, de modo que a través del mismo se controle la acción de cada uno de estos por separado. 2 Los dispositivos a ser controlados son: Motor de pasos bipolar Motor de pasos unipolar Display de 7 segmentos Display de cristal líquido Matriz de LED Conversor análogo digital Conversor digital análogo 3 1.2 Objetivos 1.2.1 General Realizar un módulo didáctico que permita controlar los diferentes dispositivos de entrada y salida que se emplean para desarrollar prácticas de la materia de interfaces. 1.2.2 Específicos - Integrar todos los circuitos necesarios en una placa impresa. - Desarrollar un circuito que controle a todos los circuitos de entrada y salida. - Controlar a cada circuito desde un programa centralizado desde la computadora. - Desarrollar una aplicación que permita demostrar el funcionamiento de cada circuito que se encuentra integrado en la placa. - Proporcionar un medio útil y necesario para que los estudiantes realicen sus prácticas de laboratorio. - Implementar una aplicación de interfaz gráfica. 4 1.3 Justificación Esta tesis se enmarca en el amplio campo de los diferentes circuitos electrónicos, específicamente de los dispositivos de entrada y salida controlados desde la computadora. El desarrollo de este módulo se ha visto necesario, debido a la conveniencia de integrar varios circuitos que funcionen uno totalmente independiente del otro, utilizando el puerto paralelo y controlándolos desde la computadora enviando señales a través del puerto, también para minimizar el tiempo en la práctica de los laboratorios, es decir que la materia tenga los recursos necesarios para su aplicación. 5 1.4 Hipótesis A través de una aplicación desarrollada en C#.Net que proporcionará una interfaz gráfica, se podrá controlar todos los circuitos impresos e integrados en una placa y se demostrará el funcionamiento de cada uno de éstos a través de un puerto paralelo el cual conectará la placa de circuitos con la computadora y permitirá al usuario interactuar con el programa y el circuito escogido, de tal modo que el usuario podrá controlar desde la aplicación cada circuito. Todos los circuitos estarán integrados en la misma placa y serán controlados mediante un circuito principal, para que cada circuito funcione independientemente. Los elementos a emplearse son: circuito análogo/digital, digital/análogo, motor unipolar de pasos, motor bipolar de pasos, display de 7 Segmentos, matriz de LED y un LCD 6 1.5 Métodos y Técnicas Se implementará la metodología de Prototipos. Prototipos: Los prototipos son modelos (no necesariamente SW) que permiten estudiar y probar aspectos específicos del producto final (en este caso el producto de software). Bajo este modelo, se planifica la aplicación de las diferentes herramientas, para producir elementos de pruebas específicas (interfaz de usuario, mantenedores, procesos) que deberán ser presentados al usuario y confirmados por éste. Esta metodología proporciona un ciclo de vida de los sistemas de información que se desarrollan bajo el concepto de prototipos y posee las siguientes fases: Análisis Diseño Construcción del prototipo Documentación de usuario y técnica Pruebas Transición 7 1.6 Factibilidad 1.6.1 Factibilidad Técnica Para la elaboración de este proyecto se ha visto necesario utilizar una serie de circuitos electrónicos y elementos electrónicos básicos, fáciles de encontrar, es por ello que se ha visto factible el proyecto. 1.6.2 Factibilidad Económica Los elementos que integran el circuito son económicos, y los dispositivos de entrada y salida de igual manera es por ello que también se ha visto factible para el desarrollo del proyecto. Presupuesto Material: motor bipolar motor unipolar Lcd display de 7 segmentos matriz de leds conversor análogo/digital conversor digital/análogo Fuente Cables Resistencias Leds Transistores Diodos Potenciómetro dip-switch cable de puerto paralelo placa integradora de circuito Otros 25 30 16 5 9 4 5 150 2 5 5 3 2,5 2 3 6 125 10 407,5 8 Humano: 738 USD por 246 horas empleadas Software: Visual Studio.Net 2005: 500 Windows Professional XP: 200 9 CAPÍTULO II 10 CAPÍTULO II 2 VISUAL C# Visual C# es un lenguaje de programación que está diseñado para crear diversas aplicaciones que se ejecutan en .NET Framework. C# es un lenguaje de programación bastante eficaz. Además permite un desarrollo muy simple y rápido, ya que posee varias herramientas e innovaciones que lo hacen la mejor opción para desarrollar la aplicación. “Visual Studio admite Visual C# con un editor de código completo, plantillas de proyecto, diseñadores, asistentes para código, un depurador eficaz y fácil de usar, además de otras herramientas. La biblioteca de clases .NET Framework ofrece acceso a una amplia gama de servicios de sistema operativo y a otras clases útiles y adecuadamente diseñadas que aceleran el ciclo de desarrollo de manera significativa.” 2.1 1 La librería Inpout32.dll La librería Inpout32 es una librería desarrollada en visual Basic, es por eso que puede ser importada a C#.net, (la cual contiene las funciones de acceso a las direcciones del puerto), es decir aquí se encuentran todas las instrucciones para el manejo de los puertos paralelos. 1 Visual C#. (16 de Septiembre, 2008) Inicio de Visual C# [on line]. Disponible en: http://msdn.microsoft.com/es-es/library/kx37x362(VS.80).aspx 11 2.2 Diseñando la Interfaz El Visor de Imágenes es una aplicación para Windows, que tiene el conjunto completo de controles de interfaz gráfica disponibles dentro de un cuadro de herramientas. Esto significa que se puede generar una interfaz medianamente elaborada. En C#.net existe un sinnúmero de elementos disponibles para la realización de una interfaz gráfica completa y totalmente amigable con el usuario. En la aplicación se ha implementado una máscara de menú que visualiza gráficamente cada proyecto en una sola ventana, llamada BubleBar 2, totalmente desarrollada para .Net el mismo que simula un menú como los de Aple para Windows. Gracias a este control como ya es código desarrollado, funciona como un Button que no necesita escribir código sino importar la dll. 2.3 Requerimientos de hardware y Software Los requerimientos mínimos que se necesita para que la aplicación funcione son: Sistema Operativo: o Windows XP Service Pack 2 Software necesario: o Windows Installer 3.0 o Framework 2 2 BubleBar. (2001-2008) GUI design software to create custom skin for Windows Aplication [on line]. Disponible: http://www.devcomponents.com/dotnetbar/bubblebar.aspx 12 o IE 5.01 o versión posterior: en todas las instalaciones de .NET Framework se debe ejecutar Microsoft Internet Explorer 5.01 o una versión posterior. o Hardware Necesario: o 2.4 Requisitos de espacio en disco: 280 MB (x86), 610 MB (64 bits). Pentium III, 1.5 (256 Ram) Importando Librerías para el Puerto Paralelo en C# Se ha usado para interactuar con la computadora y los circuitos, la librería inpout32.dll en el app del programa. Así se ha agregado en el debug o en el directorio de la aplicación, importar el inpout32.dll. Debe destacarse que la dll debe estar copiada en el directorio del sistema específicamente en: c:/windows/system32 para Win xp (para el caso del presente trabajo). Los comandos que usa la librería puerto=378 son: 1.- Comando para leer Lectura = Str(Inp(Val("&H" + puerto))) 2.- Comando para escribir Valor = 8 13 Out Val("&H" + puerto), Val(valor) De la misma manera en la parte inicial del programa la función PortAccess.Output toma los valores de las direcciones del puerto, es decir se escribirá 888 (decimal) cuando se necesite trabajar con la dirección 378 en hexadecimal que corresponde al puerto por omisión LPT1. Si se toma el puerto LTP2 para la dirección 278H se debe escribir la dirección 632 en decimal. 2.5 Puerto Paralelo Los computadores personales (PC) han estandarizado un tipo de interfaz para la comunicación con la impresora, conocida normalmente como CENTRONICS. Esta interfaz es capaz de enviar caracteres a la impresora de forma paralela. Cada carácter está codificado en un byte, del cual cada bit se transmite por un Terminal diferente. Existen otros terminales que conectan el computador y la impresora, que sirven para intercambiar información de control y de estado, a fin de implementar un protocolo sencillo. Ilustración 1 Puerto Paralelo 13 S4 12 S5 25 G7 11 S7 24 G6 10 S6 23 G5 9 8 D7 22 G4 7 D6 21 G3 6 D5 20 G2 5 D4 19 G1 4 D3 18 G0 3 D2 17 C3 2 D1 16 C2 1 D0 C0 15 S3 14 C1 Codeproject. (13 Sep 2003). Free source code and programming help [on line] Fuente: http://www.codeproject.com/KB/cs/csppleds.aspx Elaborado por: Fernanda Mera 14 Para realizar esta interfaz, los PC disponen de unos elementos hardware específicos, denominados puertos de impresora o también puerto paralelo. En un PC pueden instalarse varios de estos puertos que se distinguen entre sí con los nombres LPT1, LPT2 y LPT3 (en algunos casos también LPT4). Todos ellos son idénticos, salvo que tienen asignadas diferentes direcciones en el mapa de entrada/salida. La ROM-BIOS de los PC contiene programas elementales para el manejo de estos puertos. En primer lugar, durante el proceso de arranque del computador, se detecta su presencia y se almacenan sus direcciones base en una zona de variables situada en el segmento 0040H (zona de variables del BIOS). En esta zona se pueden encontrar los siguientes datos: Printer_Base: En las direcciones base (offset) 0008H, 000AH, 000CH y 000EH, con 2 bytes cada uno de ellos, están las direcciones de E/S en las que se encuentran los puertos base de LPT1, LPT2, LPT3 y LPT4 respectivamente. Lista de equipamiento: En el offset 0010H se encuentra una palabra que muestra de forma rudimentaria los dispositivos que se han encontrado en el arranque. Los bits 15 y 14 indican el número de puertos de impresora instalados. 15 Print_Tim_Out: En las direcciones base (offset) 0078H, 0079H, 007AH y 007BH se encuentran los valores de TIME_OUT asociados a cada puerto. Se trata de valores que se van a utilizar para establecer cuánto tiempo se va a esperar para determinar que la impresora no está disponible (está apagada, no tiene papel, etc.). Las direcciones del mapa de memoria de E/S en las que se suelen colocar los puertos de la impresora son: Tabla 1 Mapa de Memoria Impresora Puerto de Datos Puerto de Estado Puerto de Control LPT1 0378h 0379h 037Ah LPT2 0278h 0279h 027Ah LPT3 03BCh 03BDh 03BEh Francisco Pantano Rubiño. (05 de Enero, 2008) Aeromodelismo: Valeros y Eléctricos. Fuente: http://www.infolaser.net/franpr/tecnica/porpar/lpt.htm Elaborado por: Fernanda Mera En este caso se va configurar en el puerto paralelo con la dirección 0378 h configuradas como LPT1 para las señales del puerto de datos. 16 Ilustración 2 Configuración de LPT1 Gráfico tomado de la dirección del puerto configurado en LTP1. Microsoft Windows Fuente: Imagen tomada de configuración de puertos de Windows Elaborado por Fernanda Mera 2.6 Señales de la interfaz Centronics Diseñada originalmente por la firma Centronics como interfaz para las impresoras propias, la interfaz se desarrolló rápidamente como estándar aceptado en todo el mundo de las impresoras. La norma IEEE1284 amplió la interfaz de Centronics en la posibilidad de la bidireccionalidad. Con ello pudieron acoplarse también los periféricos tales como escáner, adaptadores de red para portátiles, unidades CDROM, etc. y pueden servirse así de la alta velocidad de transmisión de datos paralelos. 17 Ilustración 3 Distribución de Pines Puerto Paralelo STROBE D0 1 14 AUTO 15 ERROR 16 INIT 17 SELECT 2 D1 3 D2 4 D3 5 D4 6 D5 7 D6 8 D7 9 ACK 10 BUSY 11 PE 12 ONLINE 13 18 19 20 21 22 GND 23 24 25 Fuente: http://cfievalladolid2.net/tecno/cyr_01/control/puerto_paralelo.htm#reg_datos Elaborado por Fernanda Mera DATA PORT "Salida del proyecto" Pin 2 - D0 Pin 3 - D1 Pin 4 - D2 Pin 5 - D3 Pin 6 - D4 Pin 7 - D5 Pin 8 - D6 Pin 9 - D7 STATUS PORT "Entradas en el proyecto" Pin 10 - ACK Pin 11 - BUSY Pin 12 - PAPER END Pin 13 - SELECT IN Pin 15 - ERROR CONTROL PORT: Pin 1 - STROBE Pin 14 - AUTO FEED Pin 16 - INIT Pin 17 – SELECT 18 La referencia (Ground, GND), son los pines del 18 al 25 para reconocer los pines, en el puerto paralelo está escrito en cada terminal su número, tener cuidado a la hora de conectar al revés el puerto ya que podría causar un daño irremediable al puerto paralelo. Ilustración 4 Puerto Paralelo Fuente: http://cfievalladolid2.net/tecno/cyr_01/control/puerto_paralelo.htm#reg_datos Elaborado por: Fernanda Mera El puerto paralelo, utilizado en general para el control de la impresión, maneja las señales que se muestran en la tabla siguiente. De todas ellas, las que normalmente intervienen en el protocolo de comunicación entre el PC y los dispositivo de entrada y salida y son BUSY y STROBE#. Algunas impresoras pueden no utilizar alguna de las señales descritas en la siguiente tabla: 19 Tabla 1 Señales del Puerto Paralelo PUERTO NOMBRE DATOS ESTADO D0..D7 BUSY Dir Pin DB25 S 2-9 E 11 ACK# E 10 PE E 12 SLCT IN E 13 ERROR# E 15 IRQEN - -- SELECT# S 17 INIT# S 16 AUTOFD# S 14 STROBE# S 1 CONTROL DESCRIPCIÓN 8 terminales de datos. Desde D0 a D7. Un nivel alto indica que la impresora está ocupada y no puede recibir datos nuevos. También se pone a 1 en situaciones de error. Un nivel bajo indica que la impresora ha recibido un dato y está disponible para recibir uno nuevo. Un nivel alto indica que la impresora no tiene papel. Un nivel alto indica que la impresora está on-line. Un nivel bajo indica que se ha producido un error en la impresora. No hay papel, mal funcionamiento, etc. Flag que habilita o inhibe la generación de la interrupción IRQ7 cuando se activa la señal ACK#. Activa a nivel bajo. Indica a la impresora que se ha seleccionado la impresora. A nivel bajo, envía un RESET a la impresora. A nivel bajo, la impresora se encarga de hacer un salto de línea al recibir el carácter “retorno de carro”. Validación de datos. Cuando la impresora detecta un nivel bajo, acepta el dato. El puerto paralelo. El puerto de Impresora [on line]. Fuente: http://arantxa.ii.uam.es/~gdrivera/varios/notas_lpt.htm Elaborado por Fernanda Mera Nota: El carácter # indica que la señal es activa a nivel bajo 2.6.1 El puerto de Datos (D): Consta de 8 bits, es donde la unidad central de procesamiento (CPU) escribe los datos que se envían a la impresora (caracteres). 20 Generalmente es sólo de salida, ya que se diseñó para enviar caracteres a la impresora. Actualmente este puerto es bidireccional es decir que también puede recibir caracteres. La correspondencia entre los bits del registro de datos y las señales presentes en el conector DB25 del exterior es: Tabla 2 Señal de Datos BIT FUNCIÓN 7 6 5 4 3 2 1 0 D7 D6 D5 D4 D3 D2 D1 D0 Fuente: http://arantxa.ii.uam.es/~gdrivera/varios/notas_lpt.htm Elaborado por Fernanda Mera 2.6.2 El puerto de Estado (S): Registro de 8 bits de donde la CPU puede conocer diversos aspectos del estado de la impresora (apagada, sin papel, etc.). Se usan sólo 5 de los 8 bits. Es un puerto de entrada. Sirve para la lectura del estado de las líneas de interfaz con la impresora. La señal BUSY es invertida antes de llegar al registro. La correspondencia entre los bits del registro de estado y las señales presentes en el conector DB25 del exterior es: Tabla 3 Señal de Estado BIT FUNCIÓN 7 6 5 4 3 2 1 0 BUSY ACK# PE SLCT IN ERROR# -- -- -- (inv.) Fuente: http://arantxa.ii.uam.es/~gdrivera/varios/notas_lpt.htm Elaborado por Fernanda Mera 21 2.6.3 El puerto de Control (C): Registro de 8 bits donde la CPU puede escribir diversas señales que reconoce la impresora (validación de datos, inicialización, etc.). Se usan 4 bits. Estos tres registros ocupan posiciones consecutivas, por lo que basta con especificar la primera de ellas. El puerto de datos será el puerto base. Es un puerto de salida destinado a la escritura de comandos sobre la impresora. Las señales SLCT#, AUTOFD# y STROB# son invertidas antes de llegar a los correspondientes terminales de conector externo. El bit 4 (IRQEN) no es una señal que corresponda a alguno de los terminales de la interfaz Centronics. Se trata de una bandera (flag) que habilita o prohíbe la generación de la interrupción IRQ7 cuando se activa la señal ACK#. Las rutinas del BIOS que se ocupan de la impresora no utilizan esta interrupción. La correspondencia entre los bits del registro de control y las señales presentes en el conector DB25 del exterior es: Tabla 4 Señal de Control BIT 7 6 5 FUNCIÓN -- -- -- 4 3 2 1 0 IRQEN SELECT# INIT# AUTOFD# STROBE# (inv.) (inv.) Fuente: http://arantxa.ii.uam.es/~gdrivera/varios/notas_lpt.htm Elaborado por Fernanda Mera 22 (inv.) 2.7 Definición del Modo de Configuración del puerto paralelo La definición incorrecta del modo de puerto paralelo podría causar que una impresora o un escáner se ejecuten de forma lenta o que no funcione del todo. El modo de puerto paralelo tiene 4 opciones: sólo salida, bidireccional, EPP y ECP. Estos ajustes determinan las capacidades de velocidad y transmisión de la conexión de puerto paralelo. En la elaboración del circuito se necesita el modo de mayor velocidad y transmisión y que también nos permita enviar y recibir datos, que en este caso el modo indicado es el Bidireccional. Se ha definido el modo del puerto paralelo de la siguiente manera: 1. Se va a la configuración del BIOS por medio de [F2] durante el arranque. 2. Luego al menú Advanced > Peripheral Configuration. 3. Se define la opción Mode en Bidireccional(o en el ajuste correspondiente al dispositivo). 4. Y se guarda los cambios. 2.8 Modos de Configuración del Puerto Paralelo Los modos de la configuración del puerto para hacer que funcione de una u otra forma dependiendo de los requerimientos del usuario, son cuatro, que pueden ser configurados en la BIOS del sistema de la PC: 23 - Salida - Bidireccional - EPP - ECP 2.8.1 Modo de Salida Es el puerto por omisión (default), en el cual el buffer de datos es solo de salida, lo cual permite que al leer el puerto, lea el estado del buffer de salida de datos. 2.8.2 Modo Bidireccional (compatible PS/2) El puerto paralelo bidireccional fue una ampliación que hizo IBM a su puerto estándar original. Para ello utilizó un bit reservado del registro de control (C5). Si C5=1, el buffer de los datos de salida se pone en alta impedancia, "desconectando" dicho buffer de los pines 2 a 9 del conector del puerto (D0 a D7). Si se escribe en el registro de datos, se escribe en el buffer pero no en la salida. Esto permite que al leer el puerto se lea el estado de las entradas y no lo que hay en buffer. Cuando C5=0 el puerto retorna al modo salida, su estado por omisión. En las computadoras IBM PS/2, para habilitar el puerto paralelo bidireccional, además, de lo antes descrito, se debe poner en 1L el bit 7 del registro del puerto 102h (opciones de configuración). En computadoras que no sean IBM PS/2 hay que modificar uno o más bits de algún puerto específico correspondiente al chipset de la placa. A veces se habilita por configuración (Setup) o por jumper en la placa del puerto. 24 2.8.3 Modo EPP (Enhanced Parallel Port) Puede leer y escribir datos a la velocidad del bus ISA. Este tipo de puerto se define por el estándar EPP 1.7. Es tan rápido como el bus del sistema y puede alcanzar transferencias por encima de 1 Mbps. El EPP fue desarrollado por Intel, Xircom y Zenith. Otros fabricantes comenzaron a introducir EPP no del todo compatibles con el introducido por Intel. De ahí que se formara un comité para estandarizar el puerto, formando el estándar EPP 1.7. Más tarde se mezcló con el estándar IEEE 1284, que describe puertos bidireccionales de alta velocidad para impresoras. Pero no se adoptó el EPP 1.7 original, por lo que se modificó y ahora se llama IEEE 1284 EPP, existiendo ahora dos estándar. Un puerto paralelo estilo IEEE 1284 es multimodo. Es decir, en un único puerto se tienen los modos salida(SPP), bidireccional PS/2, EPP (versión 1.7 y/o 1284) y ECP. El EPP se mapea por encima de las direcciones estándar, en cinco registros, desde LPT_BASE+3h hasta LPT_BASE+7h. No hay EPP en la dirección estándar 03BCh (ya que se solapa con las direcciones dedicadas a video): 2.8.4 Modo ECP (Enhanced Capability Port) Puede, como el EPP, leer y escribir a la velocidad del bus. Fue desarrollado por Microsoft y Hewlett-Packard. Se distingue por poseer capacidad de DMA, FIFO y compresión de datos RLE. La velocidad puede superar fácilmente 1 Mbyte/s, y en el futuro se ampliará. La ventaja de estos puertos es que tienen la emulación de otros modos como SPP y bidireccional PS/2. En la especificación original no está contemplado el EPP, pero los fabricantes usan algún bit no utilizado por el ECP para 25 poder configurarlo como EPP. El uso externo del ECP está definido en IEEE 1284 como el modo ECP de 1284. El puerto se mapea en LPT_BASE+400h. En LPT_BASE+402h, se tiene el registro ECR (Extended Control Register). Con este registro se puede configurar los distintos modos. 26 CAPÍTULO III 27 CAPÍTULO III 3 PRINCIPIOS FUNDAMENTALES DE ELECTRICIDAD. Una parte del proyecto es hardware en donde se diseña y construye los circuitos; para ello es necesario poseer conocimientos básicos sobre la electricidad tales como: el voltaje o tensión, corriente, intensidad, resistencia, potencia, etc. A continuación se describe brevemente cada uno de estos términos. 3.1 Tensión Eléctrica (Voltaje) La tensión eléctrica es aquella que experimentan las cargas eléctricas, y por ende los cuerpos cargados eléctricamente. Siempre que entre dos cuerpos exista un desequilibrio eléctrico estará presente una tensión de tipo eléctrico conocida como tensión eléctrica, es decir, existirán unas fuerzas que tratarán de establecer un equilibrio eléctrico para lograr esto es necesario igualar las cargas eléctricas. La unidad de medida de la tensión eléctrica es el voltio (V). Así, cuanto más grande sea la tensión eléctrica existente entre dos cuerpos, zonas o partes de un circuito, mayor será la fuerza que las cargas eléctricas experimentarán, y por tanto mayor la tendencia a que se produzca una reordenación de dichas cargas eléctricas para reducir la tensión a la que están sometidas. La tensión eléctrica puede tener signo positivo o negativo, dependiendo el signo de las cargas eléctricas implicadas. 3 3 Tensión, corriente y resistencia eléctrica. Ley de Ohm (17 de Marzo, 2008), La Tensión Eléctrica. [on line]. Disponible en: http://www.terra.es/personal2/equipos2/tcr.htm 28 3.2 Corriente Eléctrica La corriente eléctrica no es más que el flujo de cargas eléctricas usualmente electrones, que atraviesa un material más o menos conductor. Un concepto íntimamente relacionado con el de corriente eléctrica es el de intensidad de la corriente eléctrica, o simplemente intensidad. El concepto de intensidad viene a cuantificar es decir, a medir cuán grande o pequeña es una determinada corriente eléctrica. Cuanto más grande sea el número indicado por la intensidad mayor será la corriente eléctrica, es decir, el flujo de cargas por el conductor. La intensidad tiene su propia unidad de medida. Se trata del Amperio, que se denota por A. Una intensidad de 1 A equivale a unos 6.242 x 1018 electrones por segundo circulando por la sección de un conductor. 3.3 Resistencia Eléctrica Las dos cantidades fundamentales; el voltaje y la corriente, están relacionadas por una tercera que es la resistencia. En cualquier sistema eléctrico la tensión es el voltaje aplicado, y el resultado o efecto es la carga o corriente. La resistencia del sistema controla el nivel de corriente resultante. Mientras mayor es la resistencia, menor es la corriente y viceversa. 4 4 Robeth L. Boylestad (1997), Fundamentos de Electrónica (4ta ed.), México: Prentice-Hall 29 La unidad de medida de la resistencia es llamada ohmio, que se denota por la letra griega omega (Ω). El ohmio se define como el valor de una resistencia eléctrica tal que al aplicarle una tensión de 1 V se produzca una circulación de una corriente eléctrica de 1 A. 5 Evidentemente, cuanto mayor sea la resistencia para un valor determinado de tensión, más pequeño será el valor de la intensidad de la corriente eléctrica que circulará por ella. 3.4 La Ley de Ohm La relación existente entre la tensión, la intensidad y la resistencia para un valor determinado de resistencia y la relación inversa entre resistencia e intensidad para un valor determinado de tensión. Así pues, la intensidad es directamente proporcional a la tensión e inversamente proporcional a la resistencia.6 Más exactamente, la relación es la siguiente: Fórmula de la Intensidad Fuente: Roldan, José (1995), Manual del Electricista de Taller, Madrid: Paraninfo Elaborado por: Fernanda Mera 5 6 Roldan, José (1995), Manual del Electricista de Taller, Madrid: Paraninfo Roldan, José (1995), Manual del Electricista de Taller, Madrid: Paraninfo 30 Esta es la conocida Ley de Ohm, con esta importante ley es posible calcular circuitos con resistencias, tales como los circuitos de polarización de transistores. 3.5 Potencia Eléctrica La potencia eléctrica es la velocidad a la que se consume la energía, se define como la cantidad de trabajo realizado por una corriente eléctrica. La potencia eléctrica se mide en Joule por segundo (J/s) y se representa con la letra P. Un J/s equivale a 1 watt (W), por tanto, la unidad de medida de la potencia eléctrica P es el watt, y se representa con la letra W. 3.6 Elementos Fundamentales de la Electrónica A continuación se describen los elementos fundamentales que se emplean en la elaboración de los circuitos. 3.6.1 Capacitor Un capacitor es aquel dispositivo formado por dos conductores o armaduras, generalmente en forma de placas o láminas, separados por un material dieléctrico ( este tipo de material es utilizado en un capacitor para disminuir el campo eléctrico, ya que 31 actúa como aislante) o por el vacío, que sometidos a una diferencia de potencial (d.d.p.) adquieren una determinada carga eléctrica.7 Se denomina capacidad o capacitancia a la propiedad de almacenamiento. Se mide en Faradios como se lo conoce en el Sistema Internacional de Unidades. La capacidad de 1 faradio es mucho más grande que la de la mayoría de los capacitores, por lo que en la práctica se suele indicar la capacidad en microfaradio µF = 10 -6, nanoF = 10-9 o pico- F = 10-12 -faradios. El valor de la capacidad viene definido por la fórmula siguiente: Fórmula de Capacitancia Fuente: Manual del Electricista de Taller Elaborado por: Fernanda Mera En donde: C: Capacidad Q: Carga eléctrica V: Diferencia de potencial 7 Roldan, José (1995), Manual del Electricista de Taller, Madrid: Paraninfo 32 3.6.2 Diodos Un diodo (del griego "dos caminos") es un dispositivo semiconductor que permite el paso de la corriente eléctrica en una única dirección con características similares a un interruptor. De forma simplificada, la curva característica de un diodo (I-V) consta de dos regiones: por debajo de cierta diferencia de potencial, se comporta como un circuito abierto (no conduce), y por encima de ella como un cortocircuito con muy pequeña resistencia eléctrica. Debido a este comportamiento, se les suele denominar rectificadores ya que son dispositivos capaces de suprimir la parte negativa de cualquier señal, como paso inicial para convertir una corriente alterna en corriente continua. 8 Ilustración 5 Diodos Retificadores Diodos Retifcadores. (12 de Abril, 2008) [on line] Fuente: www.gbcomponentes.com Elaborado por: Fernanda Mera 8 Diodo- Wikipedia. (14 mar 2009). La Enciclopedia Libre [On line]. Disponible en: http://es.wikipedia.org/wiki/Diodo 33 3.6.3 Transistores El transistor es un dispositivo electrónico semiconductor que cumple funciones de amplificador, oscilador, conmutador o rectificador. El término "transistor" es la contracción en inglés de transfer resistor ("resistencia de transferencia"). Actualmente se los encuentra prácticamente en todos los enseres domésticos de uso diario: radios, televisores, grabadoras, reproductores de audio y vídeo, hornos de microondas, lavadoras, automóviles, equipos de refrigeración, alarmas, relojes de cuarzo, computadoras, calculadoras, impresoras, lámparas fluorescentes, equipos de rayos X, tomógrafos, ecógrafos, reproductores mp3, celulares, etc.9 Ilustración 6 Transistores Transistor-Wikipedia. (9 Marzo, 2009), La Enciclopedia Libre. [On line] Fuente: http://es.wikipedia.org/wiki/Transistor Elaborado por: Fernanda Mera 3.6.4 Resistencias: Se denomina resistencia eléctrica, R, de una sustancia, a la oposición que encuentra la corriente eléctrica para circular a través de dicha sustancia. Su valor viene dado en ohmios, se designa con la letra griega omega mayúscula (Ω), y se mide con el óhmetro. 9 Transistor- Wikipedia (9 mar 2009), La Enciclopedia Libre. [on line] Disponible en: http://es.wikipedia.org/wiki/Transistores 34 Esta definición es válida para la corriente continua y para la corriente alterna cuando se trate de elementos resistivos puros, esto es, sin componente inductiva ni capacitiva. De existir estos componentes reactivos, la oposición presentada a la circulación de corriente recibe el nombre de impedancia. 10 3.6.5 Diodo emisor de luz (LED): Diodo emisor de luz, también conocido como LED (acrónimo del inglés de LightEmitting Diode) es un dispositivo semiconductor (diodo) que emite luz coherente de espectro reducido cuando se polariza de forma directa la unión PN del mismo y circula por él una corriente eléctrica. Este fenómeno es una forma de electroluminiscencia. El color (longitud de onda), depende del material semiconductor empleado en la construcción del diodo y puede variar desde el ultravioleta, pasando por el visible, hasta el infrarrojo. Los diodos emisores de luz que emiten luz ultravioleta también reciben el nombre de UV LED (UltraV'iolet Light-Emitting Diode) y los que emiten luz infrarroja suelen recibir la denominación de IRED (Infra-Red Emitting Diode).11 Ilustración 7 Diodos Diodo emisor de luz -Wikipedia. (9 mar 2009), La Enciclopedia Libre. [on line] Fuente: http://es.wikipedia.org/wiki/Diodo_LED Elaborado por: Fernanda Mera 10 Resistencia Eléctrica-Wikipedia. (2009, Marzo 9) , La enciclopedia Libre [on line] Disponible en: http://es.wikipedia.org/wiki/Resistencias 11 Diodo emisor de luz -Wikipedia. (9 mar 2009), La Enciclopedia Libre. [on line] Disponible en: http://es.wikipedia.org/wiki/Leds 35 CAPÍTULO IV 36 CAPÍTULO IV 4 DISPOSITIVOS DE ENTRADA Y SALIDA A continuación se describe el funcionamiento de cada uno de los dispositivos de entrada y salida. 4.1 Transmisión Analógica y Digital En las redes de computadores, los datos a intercambiar siempre están disponibles en forma de señal digital. No obstante, para su transmisión se optará por la utilización de señales digitales o analógicas. La elección no será, casi nunca, una decisión del usuario, sino que vendrá determinada por el medio de transmisión a emplear. No todos los medios de transmisión permiten señales analógicas ni todos permiten señales digitales. Para que se transmita una señal análoga/digital o digital/análoga debe estar configurado el puerto en modo bidireccional, para que el puerto pueda tanto enviar como recibir datos. En caso contrario si estuviera en modo SPP (Simple Parallel Port) sería imposible hacerlo ya que el Puerto de Datos es utilizado solo para enviar información desde la PC. Cabe recordar que el puerto paralelo fue creado exclusivamente como puerto de impresora, donde solo se necesitaba enviar información del archivo por imprimir, y otros pines como entrada para recibir el estado de funcionamiento de la impresora. 37 Tiempo después se agregaron funciones o mejor dicho modos de trabajo que permiten la transmisión bidireccional, de la cual se hace uso ahora. 4.1.1 Señal Análoga Ilustración 8 Señal Análoga Fuente: Osciloscopio digital Elaborado por Fernanda Mera Una señal analógica es aquella función matemática continua en la que es variable su amplitud y periodo (representando un dato de información) en función del tiempo. Algunas magnitudes físicas comúnmente portadoras de una señal de este tipo son eléctricas como la intensidad, la tensión y la potencia, pero también pueden ser hidráulicas como la presión, térmicas como la temperatura, mecánicas, etc. 38 4.1.2 Señal Digital: Ilustración 9 Señal Digital Fuente: Osciloscopio Elaborado por Fernanda Mera Una señal es digital cuando sus valores se representan con variables discretas en lugar de continuas. En el caso de la informática se utilizan ceros y unos. 4.2 Circuito Conversor Análogo-digital: (Analog-to-digital converter, ADC, A/D). Circuito electrónico que convierte señales continuas, a números digitales discretos (ADC). La operación contraría es realizada por un conversor digital-análogo (DAC). Generalmente, un conversor analógico-digital es un dispositivo electrónico que convierte una entrada analógica de voltaje a un número digital. La salida digital puede usar diferentes esquemas de codificación, como binario, o complemento de dos binario. 39 De todas maneras, algunos dispositivos no eléctricos o parcialmente eléctricos pueden ser considerados como conversores analógico-digital. 12 4.2.1 Funcionamiento A partir del código desarrollado en la interfaz se desarrollará una aplicación que permita la captura de datos a través del puerto paralelo del computador y lo presente en pantalla de forma digital. Dicho circuito se alimenta a 5v y convierte señales analógicas en un rango entre 0 y 5v. Como conversor análogo digital se utiliza el circuito integrado ADC0804 cuya configuración se la encuentra mas adelante. La señal analógica a convertir proviene del potenciómetro (resistencia variable) R2, variando este se modifica la señal entre 0 y 5 voltios. Dicha señal se introduce en el conversor ADC0804. Una vez convertida, el valor digital es presentado en las líneas D0 a D7 y deberá ser leído a través del puerto paralelo. Para el correcto funcionamiento de la conversión se debe respetar un protocolo entre el PC y el conversor, explicado en detalle en las hojas de datos del conversor. Básicamente es el siguiente: El PC envía una petición de comienzo de conversión al ADC. Para ello activar la señal #CS (poner a nivel bajo) y dentro del periodo de activación activar la señal #WR durante un mínimo de 100ns. El conversor activará la línea #INTR (el símbolo # indica que la señal es activa a nivel bajo) para indicar que ha terminado la conversión. A partir de ese momento el PC puede leer el dato. Ilustraciones 10 y 11. 12 Diccionario Informático. Definición del Conversor Análogo-Digital [on line], Disponible en: http://www.alegsa.com.ar/Dic/conversor%20analogico-digital.php 40 Ilustración 10 Diagrama de Lectura de Datos Diagrama de Tiempo para lectura de Datos [on line] Fuente: http://www.globu.net/pp/ES/adc0804_puerto_paralelo.htm Elaborado por: Fernanda Mera Ilustración 11 Diagrama de lectura de Datos Diagrama de Tiempo para lectura de Datos [on line] Fuente: http://www.globu.net/pp/ES/adc0804_puerto_paralelo.htm Elaborado por: Fernanda Mera 41 En el proceso de lectura se selecciona el conversor a través de la línea #CS y se envía un pulso negativo por la línea #RD (nivel bajo), tras unos 200 ns (tACC: tiempo de acceso) el dato ya se puede leer. Estos ciclos se repetirán tantas veces como datos se quieran leer. En este caso el proceso de conversión a realizarse se lo hará de forma continua, es decir que, RD y CS se encuentran conectados a nivel bajo directamente, de este modo el proceso de lectura de los datos será constante, mientras que el proceso de escritura será activado mediante un pulso el cual indica al puerto el momento en el que empieza a mostrar los datos en la pantalla. Para el desarrollo de esta práctica es necesario conocer el funcionamiento y manejo del puerto paralelo. NOTA IMPORTANTE: Para el correcto funcionamiento las líneas de datos del puerto paralelo deberá estar configurado en modo bidireccional, es decir, en el set-up del PC configurar el puerto en modo PS/2 (los otros modos posibles son SPP o AT, EPP y ECP). Para controlar la dirección que llevan los datos se utiliza el bit de peso 5 (el 6º bit empezando por el menos significativo) del puerto de control. Si este bit está a cero el puerto de datos es de salida y si está a uno el puerto de datos será de entrada. En el caso de este trabajo, este bit se puede poner a uno inicialmente. Hay que tener cierta precaución, pues la escritura en el puerto de datos modifica este bit a cero. La nueva rutina de atención a la interrupción 61H deberá hacer lo siguiente: 42 Enviar una petición de comienzo de conversión al ADC Mediante una espera activa esperar a que el conversor entregue un nuevo dato. Si transcurren más de 110ms sin entregar un dato nuevo detener la ejecución y presentar un mensaje de error. Entregar el dato leído. 4.2.2 Conversor Análogo Digital ADC0804: Un conversor analógico/digital convierte magnitudes analógicas en datos binarios (0 y 1). En este caso, la magnitud es la tensión sobre uno de los elementos que se quiere examinar. El ADC0804LCN es capaz de convertir una muestra de 0V a 5V, a un valor binario de 8 bits. Para conocer la resolución o precisión que se tiene en la lectura se debe saber el valor máximo de medición y el tamaño máximo de salida en bits. Fórmulas de resolución del Conversor Fuente: http://www.monografias.com/trabajos32/circuito-tres-elementos/circuito-tres-elementos.shtml, Elaborado por: Fernanda Mera Fuente: http://www.monografias.com/trabajos32/circuito-tres-elementos/circuito-tres-elementos.shtml, Elaborado por: Fernanda Mera Esto se entiende de la siguiente manera. El conversor es capaz de producir 256 combinaciones de valores en datos binarios. Si a la entrada se tiene como restricción 5V 43 de señal analógica, en la conversión se obtendrán saltos discretos cada 19.5mV como muestra la siguiente tabla: Tabla 5 Combinaciones de Datos Binarios Tensión Valor Binario Decimal 0,01953 00000000 0 0,03906 00000001 1 0,05859 00000010 2 0,07813 00000011 3 0,09766 00000100 4 . . . . . . . . . Tensión Valor Binario Decimal 4,94141 11111100 252 4,96094 11111101 253 4,98047 11111110 254 5,00000 11111111 255 Alejandro Ariel Terrado. (2008, Enero 26). Adquisición de Datos; Respuesta de circuitos con tres elementos pasivos [on line]. Fuente: http://www.monografias.com/trabajos32/circuito-treselementos/circuito-tres-elementos.shtml, Elaborado por: Fernanda Mera La disposición de los pines en el conversor se muestra en la fig. 12 44 Ilustración 12 Distribución de Pines ADC 0804 #CS 1 20 VCC +5V #RD 2 19 CLK R #WR 3 18 DB0 CLK IN 4 17 DB1 #INRT 5 16 DB2 IN + 6 IN - ACD 0804 15 DB3 7 14 DB4 8 13 DB5 VREF/2 9 12 DB6 GND 11 DB7 GND 10 Jameco electronics. (16 de Marzo, 2008). Datasheet adc080x [on line]. Fuente: www.jameco.com Elaborado por: Fernanda Mera Este conversor utiliza el método de aproximaciones sucesivas y contiene un valor fijo en el tiempo de conversión. Simplificadamente lo que hace es verificar qué bit necesita en alto (1L) para mostrar el valor binario de la magnitud analógica en la entrada. Comienza desde el bit más significativo para luego continuar con los 7 restantes y así dejar en nivel alto el bit correspondiente. Por esta razón el tiempo de conversión es siempre el mismo y esta dado por una configuración R C en la entrada de reloj. Los pines presentan las funciones que se detallan a continuación: Vcc: voltaje positivo de alimentación AGND: tierra del sistema análogo DGND: tierra del sistema digital 45 Vin(+): terminal positivo del voltaje de entrada Vin(-): terminal negativo del voltaje de entrada DB7-DB0: salidas de la conversión digital CLKin: entrada de reloj CLKr: salida del reloj cuya frecuencia depende de un resistor y un capacitor externos CS: chip select, para que el ACD0804 funciones debe estar en 0L (Low) RD: cuando este pin esta en 0L (Low), las salidas tristate están activas y se puede leer el dato. WR: cuando va a 0L (Low), el proceso de conversión se inicia INTR: genera una interrupción de nivel bajo (0L=Low) cuando finaliza el proceso de conversión. Vref/2: este pin debe ser alimentado con la mitad del rango de voltaje analógico máximo que va a recibir el ADC0804 por el pin Vin(+). Ejemplo: para un rango de entrada entre 0,5v y 3,5v el valor de Vref/2 será igual a: (3,5 – 0,5)/2 o sea 1,5v. D0-D7: Salida de conversión de los datos 4.3 Circuito Conversor Digital-análogo (DAC): El Conversor digital- análogo es un dispositivo para convertir datos digitales en señales de corriente o de tensión analógica. 46 Se utilizan profusamente en los reproductores de discos compactos, en los reproductores de sonido y de cintas de vídeo digitales, y en los equipos de procesamiento de señales digitales de sonido y vídeo. La mayoría de los DAC utilizan alguna forma reostática. Los datos digitales se aplican a los reóstatos en grupos de bits. Las resistencias varían en proporciones definidas y el flujo de corriente de cada uno está directamente relacionado con el valor binario del bit recibido. 4.3.1 Funcionamiento Un conversor digital análogo (DAC) contiene normalmente una red resistiva divisora de tensión, que tiene una tensión de referencia estable y fija como entrada. Hay que definir que tan exacta será la conversión entre la señal analógica y la digital, para lo cual se define la resolución que tendrá. Un convertidor Digital - Analógico de 8 bits. Cada entrada digital puede ser sólo un "0" o un "1". D0 es el bit menos significativo (LSB) y D7 es el más significativo (MSB). El voltaje de salida analógica tendrá uno de 256 posibles valores dados por una de las 256 combinaciones de la entrada digital. 4.4 Motores de Pasos: Los motores paso a paso son ideales para la construcción de mecanismos en donde se requieren movimientos muy precisos. 47 La característica principal de estos motores es el hecho de poder moverlos un paso a la vez por cada pulso que se le aplique. Este paso puede variar desde 90° hasta pequeños movimientos de tan solo 1.8°, es decir, que se necesitarán 4 pasos en el primer caso (90°) y 200 para el segundo caso (1.8°), para completar un giro completo de 360°. Los motores paso a paso son utilizados en computadoras para (CD- ROM, Impresoras, Discos Duros). Estos motores están constituidos por dos partes esenciales: 4.4.1 Estator: Cavidad fija en la que van depositadas una serie de bobinas, las cuáles, excitadas convenientemente, crean un campo magnético giratorio. Ilustración 13 Estator Tutorial sobre Motores de paso a paso. (5 Octubre, 2008). Imagen de un estator de 4 bobinas [on line]. Fuente: http://www.todorobot.com.ar/informacion/tutorial%20stepper/stepper-tutorial.htm Elaborado por: Fernanda Mera 48 4.4.2 Rotor: Parte móvil fabricada con un imán permanente o una pieza dentada de material magnético con polaridad constante. Ilustración 14 Rotor Tutorial sobre Motores de paso a paso. (5 Octubre, 2008). Imagen del rotor [on line]. Fuente: http://www.todorobot.com.ar/informacion/tutorial%20stepper/stepper-tutorial.htm Elaborado por: Fernanda Mera El rotor va montado sobre un eje, que soportado por dos cojinetes, gira libremente en el interior del estator. Excitando las bobinas del estator de forma adecuada se crean los polos magnéticos N-S; en respuesta a dicho campo el rotor seguirá el movimiento con sus respectivos polos, produciéndose el giro. A diferencia del resto de motores eléctricos éstos emplean corriente continua, debido a esto su ventaja es de mayor precisión en su velocidad, enclavamiento, movimientos y giros ya que recibe una señal digital. En cuanto al voltaje de alimentación existen desde 1.3V, 1.9V, 4.5V, 5V, 12V, y 24V, la corriente de consumo de un motor puede estar desde 300mA hasta 3A. 49 Tabla 6. Grados y Pasos de un Motor PAP Grados que gira por impulso Nº De pasos para llegar a 360º 0.72º 500 1,8º 200 3,75º 96 7,5º 48 15º 24 90º 4 Reyes, Carlos A. (2006), Microcontroladores PIC: Tabla de un motor de pasos que debe dar un motor PAP para llegar a dar una vuelta completa, según el giro de su ángulo de giro, Quito: Rispergraf. Elaborada por: Fernanda Mera 4.4.3 Características: 4.4.3.1 Grados por paso ó Resolución: Especifica el número de grados que el rotor girará por cada paso. Hay motores de 0.72°, 1.8°,3.6°, 7.5°, 15°, y hasta 90° por paso. El ángulo de paso en grados para cualquier motor imán permanente o de reluctancia variable es: nP. a = 360º n: número de fases o grupo fase del estator P: número de polos o dientes del rotor 4.4.3.2 Frecuencia de funcionamiento: Los motores son fabricados para trabajar en un rango de frecuencias determinado por el fabricante y rebasado dicho rango, el rotor no es capaz de seguir las variaciones del 50 campo magnético, provocando una pérdida de sincronización y quedando frenado en estado de vibración. La máxima frecuencia admisible está alrededor de los 625 Hz. 4.4.3.3 Voltaje: Va indicado en el mismo motor o en las hojas de datos. A veces es necesario exceder el rango de voltaje para obtener el torque deseado de un motor dado, pero esto puede sobrecalentar y/o disminuir el tiempo de vida del motor. 4.4.3.4 Resistencia por bobina: Determinará la corriente que pase por el motor, también la curva de torque del motor y la máxima velocidad de operación. 4.4.3.5 Pull-in y Pull-out rate: Máximas velocidades a las cuales puede arrancar y operar un motor con carga sin perder pasos. El Pull in rate es siempre menor al Pull out rate, ya que si se quiere que el motor rinda a su máxima velocidad sin perder pasos es necesario acelerar desde una velocidad menor. 4.4.3.6 Resonancia: A ciertas frecuencias de funcionamiento el motor sufre una pérdida de pasos, por lo que deben ser evitadas. Operando un motor sin carga en un rango de frecuencias, se detectarán frecuencias naturales de resonancia, estas se pueden detectar auditivamente o por medio de sensores. Si es necesario trabajar a estas velocidades, se debe agregar un factor de amortiguamiento externo, mayor inercia o un controlador adecuado. Los motores de 51 imán permanente son menos inestables que los de reluctancia variable, pues tienen mayor inercia en el rotor y un torque de arranque más elevado. 4.5 Tipos de Motores Paso a Paso Existen dos tipos: los de “imán permanente” y los de “reluctancia variable”. Los primeros muestran resistencia cuando se intenta girar el eje con los dedos, mientras que los de reluctancia variable casi siempre giran libremente o con menor dificultad. 4.5.1 Motores de reluctancia variable Para la fabricación del rotor se emplea una aleación de hierro dulce o suave. El par del rotor se desarrolla como resultado de que éste se mueve hacia aquella posición en la cual se reduce al mínimo la reluctancia Son los más simples de controlar. La secuencia de control que mueve el motor se reduce a alimentar las bobinas secuencialmente. Tiene un cable por cada bobina y uno más que es común a uno de los extremos de cada bobina y va a la fuente de alimentación positiva. 13 4.5.2 Motores de imán permanente El rotor de estos motores tiene un número par de polos y está fabricado en aleación de acero de alta retentividad (Álnico). Según la construcción de las bobinas del estator, se puede diferenciar entre motores "bipolares" y motores "unipolares". En los primeros las bobinas están formadas por un arrollamiento único, mientras que en los segundos las bobinas están compuestas por dos arrollamientos separados por un “tap” central. En los motores unipolares cada bobina 13 Departamento de Electrónica. (12 Octubre, 2008) Motores de reluctancia Variable. [on line]. Disponible en: http://platea.pntic.mec.es/~lmarti2/motor2.htm 52 del estator tendrán menos vueltas y se producirá una disminución de la relación de amperios/vuelta. Es por esto que a igualdad de tamaño los motores bipolares ofrecen un mayor par. 4.6 Motor Unipolar de Paso: Los motores unipolares PAP de pasos tienen desde 5 hasta 8 alambres y dos bobinas y su funcionamiento es mucho más fácil que el motor bipolar de pasos. Tabla 7: Secuencia de Bobina Motor Unipolar BOBINA P1 P2 P3 P4 A V Gnd Gnd Gnd C Gnd V Gnd Gnd B Gnd Gnd V Gnd D Gnd Gnd Gnd V Reyes Carlos A, (2006), Microcontroladores PIC: Tabla de secuencia de energizado de bobinas para un motor PAP unipolar para que este gire en sentido antihorario, Quito: Rispergraf. Elaborado por Fernanda Mera 4.7 Motor Bipolar de Pasos: Este tipo de motores necesitan hacer uso de la inversión de la corriente que circula en sus bobinas en una secuencia determinada. Cada inversión de la polaridad provoca el movimiento del eje en un paso ya sea tanto para un movimiento horario como antihorario. 53 Tener presente que para realizar los giros horariamente se debe seguir desde el paso 1 hasta el 4 y para realizar el giro antihoriamente se debe realizar de forma inversa es decir desde el paso 4 hasta el 1. Ilustración 15 Motor PAP Bipolar MOTOR P-P BIPOLAR BOBINA 1 A B C D BOBINA 2 Fuente: Reyes Carlos A, (2006), Microcontroladores PIC Elaborado por: Fernanda Mera Tabla 8. Secuencia de Bobina Bipolar BOBINA PASOS A B C D 1 +V -V +V -V 2 +V -V -V +V 3 -V +V -V +V 4 -V +V +V -V Fuente: Reyes Carlos A, (2006), Microcontroladores PIC Elaborado por Fernanda Mera Estos tienen generalmente cuatro cables de salida. Necesitan ciertos trucos para ser controlados, debido a que requieren del cambio de dirección del flujo de corriente a través de las bobinas en la secuencia apropiada para realizar un movimiento. 54 4.8 Matriz de LED: Ilustración 16. Matriz de Leds Jameco electronics. (18 de Marzo, 2008). Datasheet, Matriz CS-5704H [on line]. Fuente: www.jameco.com Elaborado por: Fernanda Mera 4.8.1 Funcionamiento Las ventajas generales de esta matriz de LED, comparadas a los tipos incandescentes son: el más bajo consumo de potencia, la vida más larga (promedió más de 300,000 horas), el tamaño compacto conveniente para la instrumentación y las presentaciones gráficas. Tabla 9 Características de Matriz de leds Características de la matriz CS-5704H Altura del carácter 700” Color de Iluminación Rojo Polaridad del BUS Cátodo común Numero De pines que lleva 12 Vf Típico 1.8 @ 20 Mcd Típico 8 @ 20º Longitud de onda 660 Jameco electronics. (18 de Marzo, 2008). Datasheet, Matriz CS-5704H [on line]. Fuente: www.jameco.com Elaborado por Fernanda Mera 55 4.8.2 Configuración: Ilustración 17 Distribución de Pines de Matriz Pin 1 Pin 12 Pin 2 Pin 11 Pin 3 Pin 10 Pin 4 Pin 9 Pin 5 Pin 8 Pin 6 Pin 7 Fuente: www.jameco.com Elaborado por: Fernanda Mera Posiciones de los leds en la matriz Tabla 10. Distribución de leds de la Matriz Led 1-1 Led 1-2 Led 1-3 Led 1-4 Led 1-5 Pin 1, pin 4 Pin 1, Pin 3 Pin 1, Pin 7 Pin 1, pin 9 Pin 1, Pin 12 Led 2-1 Led 2-2 Led 2-3 Led 2-4 Led 2-5 Pin 2, Pin 4 Pin 2, Pin 3 Pin 2, Pin 7 Pin 2, Pin 9 Pin 2, Pin 12 Led 3-1 Led 3-2 Led 3-3 Led 3-4 Led 3-5 Pin 11, Pin 4 Pin 11, Pin 4 Pin 11, Pin 7 Pin 11, Pin 9 Pin 11, Pin 12 Led 4-1 Led 4-2 Led 4-3 Led 4-4 Led 4-5 Pin 10, Pin 4 Pin 10, Pin 3 Pin 10, Pin 7 Pin 10, Pin 9 Pin 10, Pin 12 Led 5-1 Led 5-2 Led 5-3 Led 5-4 Led 5-5 Pin 8, Pin 4 Pin 8, Pin 3 Pin 8, Pin 7 Pin 8, Pin 9 Pin 8, Pin 12 Led 6-1 Led 6-2 Led 6-3 Led 6-4 Led 6-5 Pin 5, Pin 4 Pin 5, Pin 3 Pin 5, Pin 7 Pin 5, Pin 9 Pin 5, Pin 12 Led 7-1 Led 7-2 Led 7-3 Led 7-4 Led 7-5 Pin 6, Pin 4 Pin 6, Pin 3 Pin 6, Pin 7 Pin 6, Pin 9 Pin 6, Pin 12 Fuente: Jameco.com Elaborada por Fernanda Mera 56 4.9 LCD (Display de Cristal Líquido): El LCD o pantallas de cristal líquido la cual tiene la capacidad de mostrar cualquier carácter alfa numérico. Estos dispositivos ya vienen con su pantalla y toda la lógica de control pre-programada en la fabrica y su consumo de corriente es mínimo y no se tendrán que organizar tablas especiales como se hacia anteriormente con los displays de siete segmentos. Ilustración 18. LCD LCD 2x16 Fuente: Lcd Elaborado por: Fernanda Mera 4.9.1 Funcionamiento Existen de varias presentaciones por ejemplo de 2 líneas por 8 caracteres, 2x16, 2x20, 4x20, 4x40, etc., sin backlight (14 pines) con backlight (16 pines iluminado de pantalla), el LCD que utilizaremos es el de 2x16, 2 líneas de 16 caracteres cada una. Cada carácter esta compuesto por una matriz de LED de 7*5. 57 Ilustración 19. Distribución de Pines LCD Fuente: LCD 2x16 Elaborado por: Fernanda Mera 4.10 Display de 7 Segmentos Se llama visualizador o display a un dispositivo de ciertos aparatos electrónicos que permite mostrar información al usuario, creado a partir de la aparición de calculadoras, cajas registradoras e instrumentos de medida electrónicos. Los primeros visualizadores, similares a los de los ascensores, se construían con lámparas que iluminaban las leyendas. Al permitir mostrar distintas informaciones, ya se puede hablar con propiedad de visualizadores. Un tubo Nixie es semejante a una lámpara de neón pero con varios ánodos que tienen la forma de los símbolos que se quiere representar. Otro avance fue la invención del visualizador de 7 segmentos 4.10.1 Funcionamiento Los displays prácticamente son utilizados en general para visualizar datos. Una de las aplicaciones más populares de los LED es la de señalización. Quizás la más utilizada sea la de 7 LED colocadas en forma de ocho. 58 Aunque externamente su forma difiere considerablemente de un diodo LED típico, internamente están constituidos por una serie de diodos LED con unas determinadas conexiones internas. Con un indicador de siete segmentos se pueden formar los dígitos del 0 al 9, también las letras mayúsculas a, c, e y f y las letras minúsculas b y d. Los entrenadores de microprocesadores usan a menudo indicadores de siete segmentos para mostrar todos los dígitos del 0 al 9 mas a, b, d, d, e y f. Ilustración 20. Display de 7 Segmentos 18 17 16 15 14 13 12 11 10 1 2 3 4 5 6 7 8 9 Display de 7 Segmentos (2 Dígitos) Fuente: www.jameco.com Elaborado por Fernanda Mera 4.10.2 Integrado 74LS47 Integrado que permite decodificar las señales de entra en 7 salidas que van al display. 59 Ilustración 21. Integrado 74LS47 OUTPUTS Vcc f g a b c d e 16 15 14 13 12 11 10 9 5 6 7 8 RBI D A Gnd 74LS47 1 2 B C 3 4 LAMP BI/RBO TEST INPUTS INPUTS Jameco electronics. (29 de Enero, 2008). Datasheet, Decodificador 7447 [on line]. Fuente: www.jameco.com Elaborado por Fernanda Mera También se requiere el circuito integrado 7447. El circuito integrado TTL 7447 (74LS47 en su versión de bajo consumo) permite transformar un número decimal de 1 dígito codificado en BCD (4 bits) a los 7 bits que manejan los LED de un display de 7 segmentos, y de esa forma desplegar en el display el dígito correspondiente. Este circuito está construido con tecnología TTL es un codificador que tiene 4 líneas entradas (A, B, C y D). y, 8 líneas de salida(1, 2, 3, 4, 5, 6, 7, 8 ). 4.10.3 Código BCD (Binary Code Decimal): Corresponde a la representación de cada carácter numérico, mediante una secuencia de 4 bits como se muestra en la siguiente tabla: 60 Tabla 11. Conversión Decimal BCD Número decimal Código BCD 0 0000 1 0001 2 0010 3 0011 4 0100 5 0101 6 0110 7 0111 8 1000 9 1001 Tabla de conversión decimal y BCD Fuente: www.jameco.com Elaborado por Fernanda Mera Ilustración 22. Distribución de Pines Display de 7 Segmentos DECODIFICADOR PUERTO A1 1 16 A1 2 15 f 3 14 g 4 13 a 12 b 11 c 10 d 9 e D0 D1 5 D2 D3 DISPLAY A1 6 A1 7 GND 7 7447 Vcc Distribución de pines de Circuito 7447 Fuente: www.jameco.com Elaborado por Fernanda Mera 61 a f b g e c d 4.11 Circuito Integrador Es la integración de todos los circuitos que van a funcionar en el proyecto, es decir en modulo completo. 4.11.1 Funcionamiento La funcionalidad del circuito integrador consiste en acoplar todos los circuitos vistos anteriormente en uno solo, el cual pueda unificar a cada uno de ellos y permita a través de un dip-switch el control de cada uno para interactuar con la PC. Este circuito incluye varios buffers y latchs los cuales ayudan a retener los datos enviados y recibidos por el puerto para el funcionamiento del dispositivo. 62 CAPÍTULO V 63 DISEÑO CAPÍTIULO V 5 5.1 DISEÑO DE SOFTWARE Y HARDWARE Diseño del Programa Este aplicativo fue diseñado con el fin de controlar a cada dispositivo por separado, es decir que no se puede controlar a dos dispositivos a la vez, por ejemplo no se puede enviar señales al display y al LCD al mismo tiempo, para ello no se maneja multiventanas, sino que se diseño un aplicativo que permita manejar una ventana con varias controles que son creados por el usuario (user control) y además un menú de control. Mediante esto permite al programa controlar los 7 dispositivos, mientras se encuentre funcionando un dispositivo ningún otro podrá funcionar. Los user control son semiformularios que poseen sus propios controles como: botones, texto, imágenes, métodos y ventanas. 64 Ilustración 23. Ventana de control de Dispositivos de Entrada y Salida Menú User control . Ventana del programa Control de Dispositivos de Entrada y Salida Fuente: Imagen tomada del programa desarrollado Elaborado por Fernanda Mera Para una mejor presentación, también se implementó el menú (Bubble Bar) donde se encuentran cada dispositivo. Este menú no necesita implementar código únicamente funciona como un Button ya que es código previamente desarrollado, el mismo que para su funcionalidad únicamente se importó la dll llamada DevComponents.BubbleBar.dll, aquí la dirección donde se amplía más sobre el menú: http://www.devcomponents.com/dotnetbar/bubblebar.aspx, aquí existe una versión pagada que se adquirió en su momento con Microsoft, pero también existe una versión trial. 65 Ilustración 24. Control Bubble Bar Control Bubble Bar Fuente: http://www.devcomponents.com/dotnetbar/bubblebar.aspx Elaborado por Fernanda Mera 5.1.1 Funcionamiento de BubleBar Este menú, nos ayuda al momento de escoger un botón fácilmente, ya que los botones del toolBar son muy pequeños y no es tan fácil pulsar el botón correcto. El control de BubbleBar resuelve este problema. Una vez que se cubre con el mouse encima del toolbar, el botón correcto burbujeará, es decir que el botón elegido aumenta del tamaño predefinido, para que se ver el botón fácilmente que se está a punto de pulsar y tener el área más grande para pulsar el botón En el caso del menú del aplicativo se implementó botones con imágenes de cada circuito para facilitar el manejo del mismo. 5.1.2 Diagramas de Flujo Un diagrama de flujo es la forma más tradicional de especificar los detalles algorítmicos de un proceso. Se utilizan principalmente en programación, economía y procesos industriales; estos diagramas utilizan una serie de símbolos con significados especiales. Son la representación gráfica de los pasos de un proceso, que se realiza para entenderlo 66 mejor. Son modelos tecnológicos utilizados para comprender los rudimentos de la programación lineal. 5.1.2.1 Diagrama de Flujo Del Circuito Conversor Análogo Digital Diagrama de Flujo de circuito Conversor Análogo Digital INICIO Active control LCD dato Pantalla dato FIN Fuente: Programa de Tesis desarrollado Elaborada por: Fernanda Mera 1.- Prepara el puerto para la recepción de datos, 2.- Limpia el puerto, pone el bit de control en 1 para habilitar las entradas del puerto, 3.- Se habilita la escritura de los datos, se deshabilita la escritura para proceder a la lectura de los datos en la pantalla. 67 5.1.2.2 Diagrama De Flujo Del Circuito Conversor Digital Análogo Diagrama De Flujo Del Circuito Conversor Digital Análogo. INICIO Teclado Dato Circuito Dato FIN Fuente: Programa de Tesis desarrollado Elaborada por: Fernanda Mera 1.- Prepara el bus para recibir los datos a la PC desde el teclado, 2.- Habilita el conversor y se genera un voltaje de 0 a 5V para realizar la transformación, se habilita la conversión y se reciben los datos, 3.- Se procede a deshabilitar la conversión y se muestra el contenido en el osciloscopio. 68 5.1.2.3 Diagrama de Flujo de Motores de Paso Diagrama de Flujo de Motores de Paso GRADOS NoIter Sent NoIter = NoIter * 2.88 Paso > 4 Sent = 1 Paso = 1 Inc = -1 Paso = 4 Inc = 1 Paso = 1 Paso < 1 i= 1 hasta NoIter Paso = 4 Paso = 1 Enviar “0001” FIN GRADOS Paso = 2 Enviar “0010” Paso = 3 Enviar “0100” Paso = 4 Enviar “1000” Paso = Paso + Inc Fuente: Programa de Tesis desarrollado Elaborada por: Fernanda Mera 69 1.- Declaración de la entrada. 2.- NOLTER es el número de iteraciones que se envían, SENT es el sentido que toma el motor para realizar el giro (horario o antihorario). 3.- El número de iteraciones se multiplica por 2.8° que equivale a un paso del motor, es decir que determina el número de pasos que va a girar el motor. 4.- La variable SENT es igual a 1 significa que el sentido a girar es sentido horario caso contrario el motor girará en sentido antihorario. 5.- Se realiza un for, para generar el número de iteraciones, de acuerdo a la secuencia enviada, mueve las bobinas para que realice un movimiento consecutivo de pasos para una determinada dirección. 6.- Realiza el respectivo control, si el mayor a cuatro pasos, regresa al paso 1, si es menor a 1 regresa al paso 4. 7.- El mismo procedimiento es para los dos motores. 70 5.1.2.4 Diagrama de Flujo del LCD Diagrama de Flujo del LCD INICIO Limpiar Pantalla linea1, linea2 Linea1_c = linea.toArray Char (); Linea2_c = linea.toArray Char (); a = 0_ a <linea1_c.length; a++ activa_escritura lineac [a] desactiva_escritura (); Mover a(2,1) a = 0; a < line2_c.length; a++ activa_escritura(); linea2_c [a] desactiva_escritura (); FIN Fuente: Programa de Tesis desarrollado Elaborada por: Fernanda Mera 71 1.- Prepara el LCD y manda a limpiar la pantalla. 2.- Se define la línea1 y la línea2 del LCD, las cuales son transformadas a un arreglo de caracteres para escribir las palabras en el LCD. 3.- Se procede a escribir en la primera línea mientras no sea mayor la longitud de la línea, se desactiva la lectura. 4.- Se mueve a la segunda línea y se realiza el mismo procedimiento para proceder a escribir. Se desactiva la lectura. 72 5.1.2.5 Diagrama de flujo de Matriz de LED Diagrama de flujo de Matriz de LED INICIO M [7][5] Valor = CONTROL (M[1][1], M[1][2],M[1][3], M[1][4], M[1][5]) Valor Valor = CONTROL (M[1][1], M[1][2],M[1][3], M[1][4], M[1][5]) Valor = Valor + POW (2,5) Valor Valor = CONTROL (M[1][1], M[1][2],M[1][3], M[1][4], M[1][5]) Valor = Valor + POW (2,6) Valor Valor = CONTROL (M[1][1], M[1][2],M[1][3], M[1][4], M[1][5]) Valor = Valor + POW (2,5) + POW (5,6) Valor Valor = CONTROL (M[1][1], M[1][2],M[1][3], M[1][4], M[1][5]) Valor = Valor + POW (2,7) Valor Valor = CONTROL (M[1][1], M[1][2],M[1][3], M[1][4], M[1][5]) Valor = Valor + POW (2,5) + POW (2,7) Valor Valor = CONTROL (M[1][1], M[1][2],M[1][3], M[1][4], M[1][5]) Valor = Valor + POW (2,6) + POW (2,7) Valor FIN Fuente: Programa de Tesis desarrollado Elaborada por: Fernanda Mera 73 1.- Este programa inicia declarando una matriz de 7 * 5 es decir 7 filas y 5 columnas. 2.- Se desplaza la matriz por filas y se controla LED por LED, al final se hace un barrido de las filas con los LED que se encuentran activos para mostrar la figura determinada. 5.1.2.6 Diagrama de Flujo de Display de 7 Segmentos Diagrama de Flujo de Display de 7 Segmentos INICIO Inicio Nveces Inc K=1; k <= n; veces; k++ I = inicio; i >=0 ^i <= 100; i=1 ++ 224 + (i/10) Pausa 200 NO NO 208 + i % 10 Pausa 200 SI FIN Fuente: Programa de Tesis desarrollado Elaborada por: Fernanda Mera 74 1.- Se inicia al programa, dando opción por el teclado a escoger Inicio: desde donde se inicia el conteo de los números. Nveces: Las veces que se desea que se repita el conteo de los números. Inc: Es el paso en el que va aumentando o disminuyendo el conteo. 2.- Una vez que se define estas variables se procede a determinar la posición del display, en este caso es un display de 2 dígitos en el cual se hace referencia a las unidades y a las decenas. 3.- Los números 224 y 208 indican la posición de cada dígito del display en este caso el incremento dividido para 10 de donde se obtiene el residuo, y del incremento MOD 10 para obtener el módulo, de este modo se obtiene las unidades y decenas. La pausa que se implementa después de escoger el display para que se visualice el conteo simultaneo de los dos dígitos. 75 5.2 Diseño de Hadrware 5.2.1 Diseño del circuito Análogo/Digital Este circuito trabaja con un potenciómetro para variar la señal análoga. Ilustración No.25. Diseño de Circuito A/D VCC 5V R 4K7 VCC pulsador 20 4 19 1 #CS 2 #RD 3 #WR 5 #INRT 9 11 1 12 13 14 15 16 ACD 0804 2 R2 10 K 6 7 3 17 18 GND Señal Entrada 8 DB7 DB6 DB5 DB4 DB3 DB2 DB1 DB0 10 13 25 12 24 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 Puerto Paralelo y ADC0804 Conversor analógico Digital. Dibujo N º 23 Esquema de adquisición de datos [on line] Fuente: http://www.globu.net/pp/ES/adc0804_puerto_paralelo.htm Elaborado por: Fernanda Mera 5.2.1.1 Elementos del circuito Análogo/Digital R1: resistencia de 10KΩ 1/4 W. R2: potenciómetro de 10KΩ, ajuste vertical. R3 a R5: resistencias de 4.7 KΩ, 1/4 W. C1: capacitor de 150 pF. U1: conversor AD modelo ADC0804. Pulsador 76 5.2.1.2 Justificación del Diseño: El circuito transforma una señal análoga a digital, la cual se la puede visualizar en un combo box del programa en la computadora, el potenciómetro ayuda a convertir la señal en un rango de 0 a 5 V, lo cual permite visualizar la conversión en números decimales desde el 0 hasta 256, que en este caso equivale a 5V. La conversión del circuito es continua, la cual empieza a realizar el proceso una vez que se ha enviado mediante un pulso a realizar la escritura en la pantalla. 5.2.2 Diseño del Circuito Digital-Análogo El circuito Digital/Análogo, utiliza voltaje externo de 10 y -15 V y un amplificador de la señal para ser mostrado en el osciloscopio. Ilustración 26. Diseño Circuito D/A Vcc= 5v 13 A1 A2 A3 5 10.00 V= V Ref 5.000K 7 15 A4 8 A5 9 A6 10 A7 11 A8 14 6 5k 2 5.000k DAC 0808 4 LF351 V0 OUTPUT + 12 16 3 0.1µ F VEE -15V Jameco electronics. (30 de Marzo, 2008). Datasheet, Conversor Dac0808 [on line]. Fuente: www.jameco.com Elaborado por: Fernanda Mera 77 5.2.2.1 Elementos del Circuito Digital-Análogo Un decodificador Digital-Análogo DAC0808 Un amplificador de corriente LF351(N) Un capacitor de 210pF. Una resistencia de 1 K. 3 resistencias de 4.7. 5.2.2.2 Justificación del Diseño El circuito necesita de la resolución para definir cuan exacta es la conversión que proviene de la señal de entrada digital para ello la resolución se define de dos maneras: Primero se define el número máximo de bits de salida (la salida digital). Este dato permite determinar el número máximo de combinaciones en la salida digital. Este número máximo está dado por: 2n donde n es el número de bits. También la resolución se entiende como el voltaje necesario (señal analógica) para lograr que en la salida (señal digital) haya un cambio del bit menos significativo (LSB). Para hallar la resolución se utiliza la siguiente fórmula: Resolución = VoFS / [2n - 1] 78 Donde: - n = número de bits del DAC - VoFS = es el voltaje que hay que poner a la entrada del convertidor para obtener una conversión máxima (todas las salidas son "1"). En este convertidor digital - analógico de 8 bits, el rango de voltaje de salida es de 0 a 5 voltios. Con n = 8, hay una resolución de 2 n = 256 o lo que es o mismo: El voltaje de salida puede tener 256 valores distintos (contando el "0") También: resolución = VoFS / [ 2n - 1] = 5 / 28-1 = 5 / 255 = 19.6 mV variación en el bit menos significativo. La salida analógica correspondiente a cada una de las 256 combinaciones dependerá del voltaje de referencia que se esté usando, que a su vez dependerá del voltaje máximo que es posible tener a la salida analógica. Si el voltaje máximo es 10 Voltios, entonces el Vref. (voltaje de referencia) será 10 / 256 = 0.039 Voltios. Si el voltaje máximo es 7 voltios, Vref = 7 / 256 = 0.027 Voltios. Esto significa que el voltaje máximo posible se divide en más partes, lográndose una mayor exactitud. Si el Vref = 0.5 Voltios 79 Tabla 12 Convertidor D/A Entrada digital Salida analógica D3 D2 D1 D0 Voltios 0 0 0 0 0 0 0 0 1 0.5 0 0 1 0 1.0 0 0 1 1 1.5 0 1 0 0 2.0 0 1 0 1 2.5 0 1 1 0 3.0 0 1 1 1 3.5 1 0 0 0 4.0 1 0 0 1 4.5 1 0 1 0 5.0 1 0 1 1 5.5 1 1 0 0 6.0 1 1 0 1 6.5 1 1 1 0 7.0 1 1 1 1 7.5 CDA – DAC Convertidor Digital Análogo, (14 de febrero, 2008), Electrónica Unicrom [on line]. Fuente: http://www.unicrom.com/Tut_DAC.asp, Elaborado por: Fernanda Mera Se puede ver que mientras más bits, tenga el convertidor más exacta será la conversión. Si se tienen diferentes tipos de DAC y todos ellos pueden tener una salida máxima de 15 voltios, se puede ver que la resolución y exactitud de la salida analógica es mayor cuando más bits tengan. Ver tabla N 14: 80 Tabla 13. Resolución de Voltaje D/A # de bits del DAC Resolución 4 bits 15 voltios / 15 = 1Voltio 8 bits 15 voltios / 255 = 58.8 miliVoltios 16 bits 15 voltios / 65536 = 0.23 milivoltios 32 bits 15 voltios / 4294967296 = 0.0000035 milivoltios CDA – DAC Convertidor Digital Análogo, (14 de febrero, 2008), Electrónica Unicrom [on line]. Fuente: http://www.unicrom.com/Tut_DAC.asp, Elaborado por Fernanda Mera 5.2.3 Diseño del Circuito Unipolar de pasos Diseño del Circuito Unipolar de Pasos en donde utiliza diodos, transistores y trabaja con fuente externa de 12 V. 81 Ilustración 27. Motor Unipolar de Pasos 12 V D7 D6 D5 D4 4.7k D3 4.7k D1 D2 4.7k D0 4.7k C0 GND Fuente: Reyes, Carlos A. (2006), Microcontroladores PIC: Conexión del Motor PAP Unipolar a las Salidas del Puerto, Quito: Rispergraf. Elaborado por: Fernanda Mera 5.2.3.1 Elementos del Circuito 4 Resistencias de 4.7 K 4 Diodos rectificadores 1N4007 4 Transistores TIP 110 Un motor PAP de 6 hilos 5.2.3.2 Justificación del Diseño El circuito de control de pasos PAP unipolares sea de 5, 6, 8 hilos, es muy sencillo, se puede utilizar 4 transistores TIP110 con 4 diodos de protección, para que empiece a 82 girar basta con dar una secuencia de pulsos con una duración de 5 milisegundos a cada bobina. En la parte de “control” un integrado programable o un ordenador se encargan del manejo de los interruptores que habilitan la corriente a través de las bobinas. La corriente a través de una bobina solamente puede aparecer o desaparecer de forma instantánea si se aplica un voltaje infinito. Al abrir un interruptor se impide la circulación de la corriente y se produce un pico de tensión que puede dañarlo. Esto se soluciona colocando un diodo o una capacidad en paralelo con la bobina. El diodo debe ser capaz de conducir toda la corriente que le llega desde la bobina, en caso contrario puede ser necesario añadir un capacitor en paralelo. El problema de colocar un capacitor es que el interruptor debe soportar el pico de corriente que se produce al descargarse. Un problema adicional es que el conjunto actúa como un circuito resonante y el motor no se comportará bien a frecuencias de funcionamiento cercanas a la frecuencia de resonancia del circuito. En este caso no se controlan bobinas independientes, sino una única bobina con el tap puesto a un voltaje constante. El conjunto se comporta como un auto transformador y para proteger los interruptores se necesitan diodos adicionales. Uno de los inconvenientes mayores a la hora de trabajar con un motor unipolar de pasos es la identificación de las bobinas A, B, C y D, para esto simplemente se mide las resistencias de cada una de las bobinas, en este caso se toman los datos de la placa que dice: 83 Tabla 14 Voltajes de Motor STEPPING MOTOR VOLT 24V COIL 22V DEG/STEP 7,5 Tabla de Voltajes del Motor Fuente: Reyes, Carlos A. (2006), Microcontroladores PIC Elaborado por Fernanda Mera En este caso se ha identificado las bobinas midiendo las resistencias entre un cable y otro, los que marquen 22 Ω son bobinas comunes y un terminal, los que marque 44 Ω es decir el doble son los terminales A y B o C y D. Y su secuencia de posición de los hilos es: A–C–B–D O en su defecto se puede identificar cada hilo haciendo pruebas si los cables o sólo un par de cables están conectados incorrectamente el motor no gira y en su lugar permanece vibrando, en este caso se empieza a cambiar los cables hasta que empiece a girar. Estos motores pueden ser manejados a través de diferentes secuencias como se muestra a continuación: 5.2.3.3 Secuencia Wave Drive. Más conocida como secuencia de giro por ola y es una de las formas más fáciles de manejar un motor, consiste en ir energizando una sola bobina a la vez. 84 Tabla 15 Secuencia Wave Drive BOBINA PASOS 1 2 3 4 A 1 0 0 0 C 0 1 0 0 B 0 0 1 0 D 0 0 0 1 De Secuencia de pasos Wave Drive, Quito: Rispergraf. Fuente: Reyes, Carlos A. (2006), Microcontroladores PIC Elaborado por: Fernanda Mera 5.2.3.3.1 Secuencia Full Step. Conocida como secuencia de paso completo, cuando se realiza este tipo de secuencia se obtiene un alto torque de paso debido a que se siempre se tiene energizadas dos bobinas y consume el 40% de corriente que el caso anterior. Tabla 16 Full Step BOBINA PASOS 1 2 3 4 A 1 0 0 1 C 1 1 0 0 B 0 1 1 0 D 0 0 1 1 Secuencia de Pasos Full Step, Quito: Rispergraf. Fuente: Reyes, Carlos A. (2006), Microcontroladores PIC Elaborado por: Fernanda Mera 85 5.2.3.3.2 Secuencia Half Step. Conocida como secuencia de medio paso, es una combinación de la secuencia Wave Drive y Full Step debido a que se va energizando 2 bobinas luego 1 bobina luego otra vez 2 bobinas y así se va alternando. El resultado de esto es que el rotor va avanzando medio paso por cada pulso de excitación. Tabla 17 Half Step BOBINA PASOS 1 2 3 4 5 6 7 8 A 1 1 0 0 0 0 0 1 C 0 1 1 1 0 0 0 0 B 0 0 0 1 1 1 0 0 D 0 0 0 0 0 1 1 1 Secuencia de Pasos Half Step, Quito: Rispergraf. Fuente: Reyes, Carlos A. (2006), Microcontroladores PIC Elaborado por: Fernanda Mera 5.2.4 Diseño del Circuito Bipolar de Pasos En el diseño de circuito Bipolar de Pasos, se utiliza el integrado L293 que conecta las entradas al puerto y las salidas al motor. 86 Ilustración 28. Circuito Bipolar de Pasos D3 D2 D1 D0 ENABLE 1 1 16 Vss INPUT 4 15 3 OUTPUT 1 INPUT 3 10 6 OUTPUT 2 GND 4 GND 5 INPUT 2 INPUT 1 Vs L293 7 2 8 13 GND 12 GND 11 OUTPUT 3 14 OUTPUT 4 9 ENABLE 2 Conexión del Motor PAP bipolar al Circuito L293 Fuente: Reyes, Carlos A. (2006), Microcontroladores PIC Elaborado por: Fernanda Mera 5.2.4.1 Elementos del Circuito Motor Bipolar de pasos Circuito integrado L293 Hilos de Datos del Puerto paralelo 5.2.4.2 Justificación del Diseño Para el movimiento de sus bobinas se requiere de la ayuda del circuito integrado L293, que dispone de dos puertos (H-Bridge). El L293 es un integrado que sirve para proporcionar corriente a mecanismos impulsores bidireccionales de hasta 1 A, con voltajes entre 4.5 y 36 V. con una capacidad máxima de disipación de potencia de 5W. Una característica importante es que la alimentación de los circuitos es diferente a la alimentación de los canales, lo que da estabilidad al circuito. 87 Las características del chip por pines son: Tabla 18. Distribución de Pines L293 PIN NOMBRE DESCRIPCIÓN 1 1,2 EN Control canales 1 y 2 2 1A Entrada señal canal 1 3 1Y Salida potencia canal 1 4 Tierra 5 Tierra 6 2Y Salida de canal 2 7 2A Entrada señal canal 2 8 VCC2 Alimentación de las cargas 9 3,4 EN Control de canales 3 y 4 10 3A Entrada señal canal 3 11 3Y Salida de potencia canal 3 12 Tierra 13 Tierra 14 4Y Salida de potencia canal 4 15 4A Entrada señal canal 4 16 VCC1 Alimentación 5V L293 Jameco electronics. (18 de Enero, 2008). Datasheet, Circuito L293 [on line]. Fuente: www.jameco.com Elaborado por: Fernanda Mera Con este chip se puede controlar todo tipo de dispositivos que necesiten en un momento determinado cierta tensión con un nivel de potencia, relés, lámparas, motores, etc. La lógica que hace que actúe el L293 es la siguiente: 88 Tabla 19 Lógica de L293 LÓGICA LÓGICA LÓGICA HABILITACIÓN CANAL SALIDA Nivel “1” Nivel “1” Nivel “1” Nivel “1” Nivel “0” Nivel “0” Nivel “0” Nivel “1” Sin señal Nivel “0” Nivel “0” Sin señal Jameco electronics. (18 de Enero, 2008). Datasheet, Circuito L293 [on line]. Fuente: www.jameco.com Elaborado por: Fernanda Mera En este caso para el motor se ha determinado que las salidas de los pines 3 y 6 se conectan a los hilos A y B de la primera bobina, los pines 11 y 14 se conectan a los hilos C y D de la segunda bobina. 5.2.5 Diseño del circuito de Matriz de LED Diseño de circuito de Matriz de Led en donde muestra que las filas son tomadas directamente del puerto, de los 5 bits de datos, y los 3 siguientes son multiplexados para sacar las columnas de la matriz. 89 Ilustración 29. Diseño de Circuito de Matriz de Leds 1 12 2 11 3 10 4 9 5 6 15 12 Y4 11 Y5 8 10 Y6 9 8 Gnd Y3 7 Y7 13 6 G1 Y2 5 G2B SN74L138 4 G2A 5V 7 GND D0 14 16 Y0 3 C Y1 Vcc 2 B D7 GND 1 D6 A D5 8 D1 D2 D3 D4 Conexión de la Matriz de Leds con el Puerto Paralelo Fuemte: www.jameco.com Elaborado por: Fernanda Mera 5.2.5.1 Elementos del Circuito Una matriz de LED 334967 5 Transistores 2N 3904 5 resistencias de 1,8 Ω Un decodificador 74LS138 2 compuertas NOT 5.2.5.2 Justificación del Diseño La matriz tiene una distribución de 5 filas y 7 columnas y también 12 pines de distribución. Las columnas han sido conectadas directamente a las 5 líneas menos significativas de datos del puerto; las tres líneas restantes son las líneas que van a entrar al match para multiplexar la señal es decir que al entrar 3 90 señales su multiplexación será 23, es decir 8 salidas, que en este momento sirve para controlar las filas (7). Las compuertas NOT ayudan a convertir la señal ya que el latch (74ls138) recibe señales invertidas, es decir que si se envía un 1L el latch lo convierte en 0L. Los transistores controlan las señales de las filas, éstos actúan como switch. La gráfica de la matriz se la realiza desde el programa, habilitando o deshabilitando cada uno de los LED de la matriz. 5.2.6 Diseño del Circuito LCD Aquí se muestra el diagrama del circuito realizado para mostrar los mensajes en el display y conectado al puerto paralelo de la computadora. Ilustración 30. Diseño de Circuito de LCD +5V GROUND LCD 1 6 V S S 1 5 V D D V O R / W R S D B 0 E D B 1 D B 2 D B 3 D B 4 D B 5 D B 6 D B 7 10K POT VCC GND 13 S4 12 S5 25 G7 11 S7 24 G6 10 S6 23 G5 9 8 D7 22 G4 7 D6 21 G3 6 D5 20 G2 5 D4 19 G1 4 D3 18 G0 3 D2 17 C3 2 D1 16 C2 1 D0 C0 15 S3 14 C1 Code Project. (26 de Septiembre, 2007). I/O Ports Uncensored Part 2 - Controlling LCDs (Liquid Crystal Displays) and VFDs (Vacuum Fluorescent Displays) with Parallel Port. [on line]. Fuente: http://www.codeproject.com/KB/cs/cspplcds.aspx Elaborado por: Fernanda Mera 91 Elementos del Circuito LCD Los elementos a utilizarse en el circuito son: Un LCD de 2x16 Un Potenciómetro de 10K Ω Puerto paralelo Una Resistencia de 10Ω 5.2.6.1 Justificación del diseño El circuito LCD toma las señales del puerto paralelo enviadas a través del teclado para desplegar información. Desde los hilos de datos del puerto se conectan a los pines 7, 8, 9, 10, 11, 12, 13, 14, que son los bits del bus de datos del LCD. El pin 4 conectado a 5V y el pin y el pin 7 a Tierra. 5.2.6.1.1 Descripción del LCD La conexión de los pines esta descrita en la siguiente tabla: Tabla 20 Distribución de Pines LCD Pin Símbolo Descripción 1 Vss Tierra de alimentación GND 2 Vdd Alimentación de 5V CC 3 Vo Ajuste del contraste del cristal liquido (0 a 5V) 4 RS Selección del registro de control de datos RS=0 reg. de control 92 RS=1 reg. Datos. Pin Símbolo 5 R/W Descripción Lectura/escritura en LCD R/W=0 escritura(write) R/W=1 lectura(read) 6 E Habilitación E=0 modulo desconectado E=1 modulo conectado. 7 D0 Bit menos significativo (bus de datos bidireccional) 8 D1 9 D2 10 D3 11 D4 12 D5 13 D6 14 D7 Bit mas significativo (Bus de datos bidireccional) 15 A Alimentación de Backlight 3,5V o 5V CC (según especificación técnica) 16 K Tierra GND del backlight Fuente: Reyes, Carlos A. (2006), Microcontroladores PIC Elaborado por: Fernanda Mera 5.2.7 Diseño del Circuito Display de 7 Segmentos El circuito muestra la conexión desde el puerto al integrado y luego al display. 93 Ilustración 31. Conexión de Display al Puerto Vcc Vcc 16 B3 15 A3 14 E3 13 A4 12 E2 1 B2 2 3 7447 E1 4 A1 5 D6 A2 D7 8 10 9 C 4 8 Gnd D1 Co 7 D2 11 D3 E4 6 B1 D4 B4 D5 D0 Fuente: www.jameco.com Elaborado por: Fernanda Mera 5.2.7.1 Elementos del Circuito Un display doble, 334967 Un decodificador 7447 7 resistencias 4.7 Dos transistores 2N3904 94 18 17 16 15 14 13 12 11 10 1 2 3 4 5 6 7 8 9 5.2.7.2 Justificación del Diseño El circuito se encuentra compuesto de los siguientes elementos: 5.2.7.2.1 Display 334967 El display a utilizarse es del tipo 334967 de ánodo común es decir que su funcionamiento requiere alimentación de 5V en sus pines 13 y 14 que son sus cátodos comunes como dice su configuración. Ilustración 32. Display 334967 18 17 16 15 14 13 12 11 10 1 2 3 4 5 6 7 8 9 Jameco electronics. (18 de Enero, 2008). Datasheet, Circuito 334967 [on line]. Fuente: www.jameco.com Elaborado por: Fernanda Mera Tabla 21 Distribución de Pines 334967 DISTRIBUCIÓN DE PINES 1. ÁNODO E (DÍGITO 1) 2. ÁNODO D (DÍGITO 1) 3. ÁNODO C (DÍGITO 1) 4. ÁNODO DP (DÍGITO 1) 5. ÁNODO E (DÍGITO 2) 95 DISTRIBUCIÓN DE PINES 6. ÁNODO D (DÍGITO 2) 7. ÁNODO G (DÍGITO 2) 8. ÁNODO C (DÍGITO 2) 9. ÁNODO DP (DÍGITO 2) 10. ÁNODO B (DÍGITO 2) 11. ÁNODO A (DÍGITO 2) 12. ÁNODO F (DÍGITO 2) 13. ÁNODO 2 CÁTODO COMÚN 14. ÁNODO 1 CÁTODO COMÚN 15. ÁNODO B (DÍGITO 1) 16. ÁNODO A (DÍGITO 1) 17. ÁNODO G (DÍGITO 1) 18. ÁNODO F (DÍGITO 1) Jameco electronics. (18 de Enero, 2008). Datasheet, Circuito 334967 [on line]. Fuente: www.jameco.com Elaborado por: Fernanda Mera En la tabla N º 21, se verifica que al ser un display de dos dígitos tiene las mismas entradas en los dos, de tal modo que para poder diferenciar entre las unidades y las decenas, se ha implementado dos transistores que funcionan como switch para operar a las unidades o a las decenas como se muestra en el ilustración N º 29. 96 5.2.8 Diseño del Circuito Integrador El circuito Integrador es donde se integran todos los circuitos anteriores- Ilustración 33. Circuito Integrador 20 15 17 2 4 6 8 CONVERSOR ANÁLOGO DIGITAL 11 13 3 5 7 9 12 14 16 18 19 180 1Y1 1Y2 1Y3 1Y4 2Y1 2Y2 2Y3 2Y4 GND 74LS244 Vcc 1A1 1A2 1A3 1A4 2A1 2A2 2A3 2A4 OE 1 D6 D5 D4 D3 D2 D1 1 18 17 14 13 8 D0 9 6 7 4 3 5 2 10 8 3 1 18 17 14 13 8 7 4 3 D4 D3 D2 D1 D0 74LS373 LE OE D7 D6 D5 20 19 16 15 12 9 6 5 2 10 8 Vcc O7 O6 O5 O4 O3 O2 O1 O0 Gnd MOTOR BIPOLAR DE PASOS 3 1 18 17 14 13 8 7 4 3 D4 D3 D2 D1 D0 74LS373 LE OE D7 D6 D5 20 19 16 15 12 9 6 5 2 10 8 Vcc O7 O6 O5 O4 O3 O2 O1 O0 Gnd MOTOR UNIPOLAR DE PASOS 3 1 18 17 14 13 8 7 4 3 D4 D3 D2 D1 D0 74LS373 LE OE D7 D6 D5 20 19 16 15 12 9 6 5 2 10 8 Vcc O7 O6 O5 O4 O3 O2 O1 O0 Gnd LCD 3 1 18 17 14 13 8 7 4 3 D4 D3 D2 D1 D0 74LS373 LE OE D7 D6 D5 20 19 16 15 12 9 6 5 2 10 8 Vcc O7 O6 O5 O4 O3 O2 O1 O0 Gnd MATRIZ DE LEDS 3 7 4 3 D4 D3 D2 D1 D0 1 18 17 14 13 8 74LS373 LE OE D7 D6 D5 20 19 16 15 12 9 6 5 2 10 8 Vcc O7 O6 O5 O4 O3 O2 O1 O0 Gnd DISPLAYS DE 7 SEGMENTOS Fuente: www.jameco.com Elaborado por: Fernanda Mera OE 3 D4 D3 D2 D1 D0 74LS373 LE OE D7 D6 D5 20 19 16 15 12 Vcc O7 O6 O5 O4 O3 O2 O1 O0 Gnd CONVERSOR DIGITAL ANÁLOGO 97 D7 DIPSWITCH 1 0 5.2.8.1 Elementos del Circuito - 1 Dip- Switch - 6 Latch 74LS373 - 1 Buffer 74LS244 5.2.8.2 Justificación del Diseño Se ha empleado un dip-switch de datos para generar códigos binarios que permitan controlar la activación de cada circuito para su funcionamiento. Se emplean 7 salidas del dip-switch, para los 7 dispositivos los mismos que se activan uno a la vez de acuerdo al código enviado. Se tiene una combinación de 23, es decir 8 combinaciones. Ciertos circuitos reciben datos desde la PC a través del puerto como: 1. Conversor DA, 2. Motor Bipolar de Pasos, 3. Motor Unipolar de Pasos, 4. Matriz de LED, 5. LCD, 6. Display de 7 Segmentos. 98 Y hay otros circuitos que envían datos a la PC a través del puerto paralelo como en el Conversor A/D (Análogo Digital). Para ello se ha implementado buffers y latchs para retener los datos antes de enviarlos. El latch (74LS373), recibe los datos desde La PC para enviar al circuito, este recibe una señal negada, para ello fue necesario implementar compuertas NOT para invertir la señal. El buffer (74LS244) recibe señal directamente del circuito, en este caso del Conversor análogo Digital para enviar a la PC. La función del decodificador es Habilitar 8 entradas una a la vez de acuerdo al código que se envíe a las líneas de control. Tabla 22. Habilitación de Dispositivos CÓDIGO BINARIO SALIDA 000 1 001 2 010 3 011 4 100 5 101 6 110 7 111 8 Salida de habilitación de cada circuito Fuente: www.jameco.com Elaborada por: Fernanda Mera 99 CAPÍTULO VI 100 6 CONSTRUCCION DEL PROTOTIPO Una vez realizado el análisis y diseño del módulo; se procede a integrar el software con el circuito. Para que el programa diseñado pueda reconocer las entradas y salidas de las líneas del puerto se necesita importar una librería llamada inpout32.dll, la misma que se la agrega y se la llama en la clase de Acceso al puerto (PortInterop.cs), como se describe a continuación. public class PortAccess { [DllImport("inpout32.dll", EntryPoint = "Out32")] public static extern void Output(int adress, int value); [DllImport("inpout32.dll", EntryPoint = "Inp32")] public static extern int Input(int adress); } El main del programa se llama Program.cs, además contiene varias clases que son las clases pertenecientes a cada circuito desarrollado, por ejemplo: 6.1 Circuito Análogo Digital Contiene la clase llamada Control_adc.cs la misma que recibe señales análogas enviadas desde el circuito para ser mostrados en forma digital. private void button1_Click(object sender, EventArgs e) { PortAccess.Output(control, PortAccess.Input(control) | 0x32); textBox1.Text = PortAccess.Input(data).ToString(); } } 101 6.2 Circuito Digital Análogo Contiene la clase llamada Control_dac.cs la misma que envía señales digitales y son mostradas en forma análoga en un osciloscopio a través del circuito. private void button1_Click(object sender, EventArgs e) { PortAccess.Output(data, Convert.ToInt32(textBox1.Text)); Thread.Sleep(200); } 6.3 Circuito Display de 7 Segmentos Contiene la clase llamada Control_Display.cs la misma que realiza un conteo ascendete y descendente de numeros del 1 al 99 por ser de 2 digitos. - Conteo ascendente: private void ascendente() { if (radioButton1.Checked) { iteraciones(0, 1, (int)numericUpDown1.Value); } if (radioButton2.Checked) { ingreso((int)numericUpDown2.Value); } if (radioButton3.Checked) { empezar((int)numericUpDown3.Value, 1); } } - Ingresa el numero de iteraciones que necesita que repita el conteo: private void iteraciones(int inicio, int suma, int nveces) { for (int k = 1; k <= nveces; k++) { 102 for (int i = inicio; i >= 0 && i < 100; i += suma) { PortAccess.Output(data, 224 + (int)(i / 10)); Thread.Sleep(100); PortAccess.Output(data, 208 + (int)(i % 10)); Thread.Sleep(100); } } } - Permite poner el numero desde donde se necesita que inicie el conteo: private void empezar(int inicio, int suma) { for (int i = inicio; i >= 0 && i < 100; i += suma) { PortAccess.Output(data, 224 + (int)(i / 10)); Thread.Sleep(200); PortAccess.Output(data, 208 + (int)(i % 10)); Thread.Sleep(200); } } - Conteo descentente private void descendente() { if (radioButton1.Checked) { iteraciones(99, -1, (int)numericUpDown1.Value); } if (radioButton2.Checked) { ingreso((int)numericUpDown2.Value); } if (radioButton3.Checked) { empezar((int)numericUpDown3.Value, -1); } } 103 6.4 Circuito LCD Contiene la clase llamada Control_lcd.cs la misma que permite habilitar cursor y escribir en el lcd. private void textBox1_TextChanged(object sender, EventArgs e) { - Permite escribir en las lineas del LCD Prepare_LCD(0); for (a = 0; a < line1_ch_buffer.Length; a++) { PortAccess.Output(control, 4); Thread.Sleep(1); PortAccess.Output(data, (int)line1_ch_buffer[a]); Thread.Sleep(1); PortAccess.Output(control, 5); Thread.Sleep(1); } move_to_specific(2, 1); for (a = 0; a < line2_ch_buffer.Length; a++) { PortAccess.Output(control, 5); Thread.Sleep(1); PortAccess.Output(control, 4); Thread.Sleep(1); PortAccess.Output(data, (int)line2_ch_buffer[a]); Thread.Sleep(1); PortAccess.Output(control, 5); Thread.Sleep(1); } } 104 6.5 Circuito Matriz de Leds Contiene la clase llamada control_matriz.cs, la misma que mediante un arreglo de filas y columnas permite habulitar el led de la matriz (5*7), se barre a nivel de columnas. private int control1(CheckBox c1, CheckBox c2, CheckBox c3, CheckBox c4, CheckBox c5) { int value = 0; if (c1.Checked) { value += (int)Math.Pow(2, 0); } if (c2.Checked) { value += (int)Math.Pow(2, 1); } if (c3.Checked) { value += (int)Math.Pow(2, 2); } if (c4.Checked) { value += (int)Math.Pow(2, 3); } if (c5.Checked) { value += (int)Math.Pow(2, 4); } return value; } private void control2() { int value = 0; { //primera fila 105 value = control1(cbx_1_1, cbx_1_2, cbx_1_3, cbx_1_4, cbx_1_5); PortAccess.Output(data, value); Thread.Sleep(1); //segunda fila value = control1(cbx_2_1, cbx_2_2, cbx_2_3, cbx_2_4, cbx_2_5); value += (int)Math.Pow(2, 5); PortAccess.Output(data, value); Thread.Sleep(1); //tercera fila value = control1(cbx_3_1, cbx_3_2, cbx_3_3, cbx_3_4, cbx_3_5); value += (int)Math.Pow(2, 6); PortAccess.Output(data, value); Thread.Sleep(1); //cuarta fila value = control1(cbx_4_1, cbx_4_2, cbx_4_3, cbx_4_4, cbx_4_5); value += (int)Math.Pow(2, 5); value += (int)Math.Pow(2, 6); PortAccess.Output(data, value); Thread.Sleep(1); //quinta fila value = control1(cbx_5_1, cbx_5_2, cbx_5_3, cbx_5_4, cbx_5_5); value += (int)Math.Pow(2, 7); PortAccess.Output(data, value); Thread.Sleep(1); //sexta fila value = control1(cbx_6_1, cbx_6_2, cbx_6_3, cbx_6_4, cbx_6_5); value += (int)Math.Pow(2, 5); value += (int)Math.Pow(2, 7); PortAccess.Output(data, value); Thread.Sleep(1); //septima fila value = control1(cbx_7_1, cbx_7_2, cbx_7_3, cbx_7_4, cbx_7_5); value += (int)Math.Pow(2, 6); value += (int)Math.Pow(2, 7); PortAccess.Output(data, value); Thread.Sleep(1); } 106 6.6 Circuito Bipolar de Pasos. Contiene la clases llamada Control_motor_pasos_b, permite enviar ordenes al motor de pasos bipolar para dar giror horaria y antihorariamente por tiempo, por grador, y por pasos. - Giro del motor por grados private void motor_grados(int grados) { int n = (int)(grados / 1.8); int pos = 0; for (int i = 1; i <= n; i++) { PortAccess.Output(data, pasos[pos]); pos++; if (pos == 4) { pos = 0; } Thread.Sleep(100); } } - Giro del motor por pasos private void motor_pasos(int _pasos) { int n = _pasos; int pos = 0; for (int i = 1; i <= n ; i++) { PortAccess.Output(data, pasos[pos]); pos++; if (pos == 4) { pos = 0; } Thread.Sleep(100); } } 107 6.7 Circuito Unipolar de Pasos.- Contiene la clases llamada Control_motor_pasos_u, permite enviar ordenes al motor de pasos unipolar para dar giros horaria y antihorariamente por tiempo, por grador, y por pasos. private void motor_grados(int grados) { int n = (int)(grados / 1.8); int pos = 0; for (int i = 1; i <= n; i++) { PortAccess.Output(data, pasos[pos]); pos++; if (pos == 4) { pos = 0; } Thread.Sleep(100); } } - Giro del motor por pasos private void motor_pasos(int _pasos) { int n = _pasos; int pos = 0; for (int i = 1; i <= n ; i++) { PortAccess.Output(data, pasos[pos]); pos++; if (pos == 4) { pos = 0; } Thread.Sleep(100); } } - Giro de motor por tiempo private void timer1_Tick(object sender, EventArgs e) { 108 PortAccess.Output(data, pasos[pos2]); pos2++; if (pos2 == 4) pos2 = 0; fecha_ini = DateTime.Now; if (fecha_ini.ToString() == fecha_fin.ToString()) { timer1.Enabled = false; } Console.WriteLine(fecha_fin + " " + fecha_ini); } 6.8 Diseño de la Placa Física del Circuito El diseño de la placa fue realizado en Proteuss el mismo software que también nos sirvió de mucha ayuda para realizar simulaciones con el circuito y así evitar posibles corto circuitos. 109 Ilustración 34. Diseño Físico del Circuito Integrador Fuente: Programa de Circuito Elaborado por: Fernanda Mera 110 CAPÍTULO VII 111 7 DOCUMENTACION DE USUARIO Y TECNICA: A continuación se presenta la documentación de usuario y técnica del programa: 7.1 Manual Técnico: Manual técnico del programa descrito a continuación: 7.1.1 Ventana LCD El LCD o pantallas de cristal líquido, tiene la capacidad de mostrar cualquier carácter alfa numérico. Ilustración 35. Ventana LCD Fuente: Programa de Circuito Elaborado por: Fernanda Mera 112 7.1.1.1 Controles. Tabla 23. Controles LCD Control Descripción TxtLcd Ingresa palabra a mostrar en el LCD. ChkHabilitaCursor Si se selecciona permite habilitar el cursor. Al ChkParpadeoCursor seleccionar permite parpadeo del cursor. Fuente: Programa de Circuito Elaborado por: Fernanda Mera 7.1.1.2 Funciones de la clase control_lcd Tabla 24. Funciones de clase control_lcd Función Descripción Parámetro Salida Entrada Prepare_LCD Prepara LCD cursor_status el Void para encenderlo Scroll Recibe el texto para line, st_buffer, prepare Void almacenarlo en el buffer y habilitar el cursor move_to_specific Indica escribe donde el se line, column texto, primera o segunda línea Fuente: Programa de Circuito Elaborado por: Fernanda Mera 113 Void habilitar el 7.1.2 Ventana Motor de Pasos Bipolar Consta de 4 cables de salida. Este tipo de motores necesitan hacer uso de la inversión de la corriente que circula en sus bobinas en una secuencia determinada. Cada inversión de la polaridad provoca el movimiento del eje en un paso ya sea tanto para un movimiento horario como antihorario. Ilustración 36. Ventana Motor de Pasos Bipolar Fuente: Programa de Circuito Elaborado por: Fernanda Mera 114 7.1.2.1 Controles. Tabla 25. Controles Motor de Pasos Bipolar Control Description SpnGirados Ingresar número de giros por girados. SpnPasos Ingresar número de giros por pasos. SpnTiempo Ingresar Tiempo de giros. Fuente: Programa de Circuito Elaborado por: Fernanda Mera 7.1.2.2 Funciones de la clase_motor_paso_b Tabla 26. Funciones de clase_motor_paso_b Función Descripción Parámetros Salida Entrada motor_grados Calcula los giros grados Void según el numero ingresado motor_pasos Calcula los pasos pasos según el numero ingresado Fuente: Programa de Circuito Elaborado por: Fernanda Mera 115 Void 7.1.3 Ventana Display de 7 Segmentos Utilizados generalmente para la visualización de datos, constituidos por una serie de diodos. Con un indicador de siete segmentos se pueden formar los dígitos del 0 al 9, también las letras a, c, e y f y las letras minúsculas b y d. Ilustración 37. Ventana Display de 7 Segmentos Fuente: Programa de Circuito Elaborado por: Fernanda Mera 116 7.1.3.1 Controles. Tabla 27. Controles de Display de 7 Segmentos Controles Descripción SpIteraciones Intervalo de iteraciones. SpnValor Numero SpnEmpezar Valor de Inicio Fuente: Programa de Circuito Elaborado por: Fernanda Mera 7.1.3.2 Funciones de la clase control_display Tabla 28. Funciones de clase control_display Función Descripción Parámetros Salida Entrada Iteraciones de inicio, suma, nveces Calculo Void iteraciones según el numero de veces ingresado Empezar Calculo del valor a inicio, suma Void partir del número ingresado. Ingreso suma Fuente: Programa de Circuito Elaborado por: Fernanda Mera 117 Void 7.1.4 Ventana Conversor A/D. Convierte magnitudes analógicas en datos binarios. El ADC0804LCN es capaz de convertir una muestra de 0V a 5V, a un valor binario de 8 bits. Ilustración 38. Ventana Conversor A/D Fuente: Programa de Circuito Elaborado por: Fernanda Mera Clase control_adc Se controla directamente desde el circuito. 118 7.1.5 Ventana de Conversor D/A Convierte datos digitales en señales de corriente o tensión analógica, Un conversor digital análogo (DAC) contiene normalmente una red resistiva divisora de tensión, que tiene una tensión de referencia estable y fija como entrada. Ilustración 39. Ventana Conversor D/A Fuente: Programa de Circuito Elaborado por: Fernanda Mera Clase control_dac Controla directamente desde el circuito. 119 7.1.5.1 7.1.6 Ventana de Matriz de LEDS La placa forma una matriz 5x7 de LED multiplexada, accesible en serie a través de 2 registros de desplazamiento de 5 y 7 bits. Ilustración 40. Ventana Matriz de LEDS Fuente: Programa de Circuito Elaborado por: Fernanda Mera Clase control_leds 120 7.2 Manual de Usuario El programa consta de un menú principal en donde se puede escoger la opción de cada circuito diseñado como muestra la siguiente figura. Ilustración 41. Ventana de Menú LCD M. Bipolar Matriz de Leds Conversor D\A M. Unipolar Conversor A\D Display de 7 segmentos Fuente: Programa de Circuito Elaborado por: Fernanda Mera 121 Es así que tenemos el LCD, Motor de pasos Bipolar, Motor de pasos unipolar, Display. Conversor A/D, Conversor D/A y matriz de Leds. A continuación se describe cada uno de los circuitos 7.2.1 LCD En la opción del Lcd, se muestra la siguiente pantalla. Ilustración 42. Ventana LCD Fuente: Programa de Circuito Elaborado por: Fernanda Mera 122 1. Primero se habilita el cursor 2. Se habilita el parpadeo del cursor 3. Se procede a escribir en las líneas señaladas para ser mostradas en el LCD, tanto en la primera como la segunda línea. 7.2.2 Motor Bipolar de pasos La opción del motor se muestra a continuación. Ilustración 43. Motor Bipolar de Pasos Fuente: Programa de Circuito 123 Elaborado por: Fernanda Mera Permite escoger el tipo de giro que desea realizar; por grados, por pasos o por tiempo. Por grados empieza girando desde 1.8º que es la mínima medida con la gira un motor. Por pasos, se escoge el número de pasos que quiere que de el motor. Y por tiempo se escoge el tiempo que se necesita que se demore el motor girando. Por último se escoge el tipo de giro es horario o antihorario. 7.2.3 Motor Unipolar de pasos Funciona de similar manera que el motor Bipolar. Ilustración 44. Motor Unipolar de Pasos 124 Fuente: Programa de Circuito Elaborado por: Fernanda Mera Permite escoger el tipo de giro que desea realizar; por grados, por pasos o por tiempo. Por grados empieza girando desde 1.8º que es la mínima medida con la gira un motor. Por pasos, se escoge el numero de pasos que quiere que de el motor. Y por tiempo se escoge el tiempo que se necesita que se demore el motor girando. Por último se escoge el tipo de giro se es horario o antihorario. 125 7.2.4 Display de 7 Segmentos La opción del Display se muestra a continuación. Ilustración 45. Display de 7 Segmentos Fuente: Programa de Circuito Elaborado por: Fernanda Mera El display permite escoger en datos como va a funcionar el display. En No de iteraciones significa cuantas veces va a realizar el conteo desde 0 a 99, si escoge 2, contara 2 veces el conteo. En la opción valor, escribe en el display el valor escogido. En la opción Empezar se indica desde donde puede empezar el conteo. 126 De la misma manera se escoge si se desea empezar ascendente o descendentemente el conteo. 7.2.5 Conversor Análogo/ Digital La opción del conversor A/D se muestra a continuación Ilustración 46. Conversor A/D En este circuito se activa la opción Nº 7 en el circuito, la conversión empieza cuando habilita el pulsador la lectura, es así que el potenciómetro envía las señales análogas de 0 a 5 voltios y son mostradas en el programa. 127 7.2.6 Conversor Digital /Análogo La opción del conversor D/A se muestra a continuación. Ilustración 47. Conversor D/A Fuente: Programa de Circuito Elaborado por: Fernanda Mera En esta opción se escribe la señal digital la misma que es mostrada en el osciloscopio, el rango es desde 0 a 256. 128 7.2.7 Matriz de Lez La opción de la matriz de Leds se muestra a continuación. Ilustración 48. Matriz de Leds Fuente: Programa de Circuito Elaborado por: Fernanda Mera Se habilita la opción en el circuito y se procede a habilitar cada uno de los Leds como muestra la figura. 129 CAPÍTULO VIII 130 CAÍTULO VIII 8 PRUEBAS Una vez realizadas las pruebas independientes de cada módulo en el protoboard, se procede con la integración de los circuitos en la placa, en donde se irá detallando el funcionamiento de cada módulo por separado. Para ello la placa integra un dipswitch que determina que módulo es el que se encuentra operando al momento de poner en 1L. Los módulos se encuentran enumerados de la siguiente manera: Módulo 1 Conversor Análogo-Digital Módulo 2 Motor Bipolar Módulo 3 Motor Unipolar Módulo 4 Módulo LCD Módulo 5 Matriz de Leds Módulo 6 Display de 7 Segmentos Modulo 7 Conversor Digital-Análogo 131 Fotografía 1. Circuito Integrador Fuente: Circuito Integrador Elaborado por: Fernanda Mera 8.1 Circuito Conversor Análogo Digital Se realizan las respectivas pruebas con el circuito conversor A/D, conectado a un voltaje de 5 V, los hilos de datos del puerto, un potenciómetro y el circuito ADC0804. Fotografía 2 Circuito Conversor Digital Análogo Fuente: Circuito Integrador Elaborado por: Fernanda Mera 132 8.2 Circuito Conversor Digital Análogo Se realiza la conexión con las señales digitales que salen desde los hilos de datos del puerto paralelo, un circuito DAC, un amplificador de la señal y se la muestra la señal análoga en el osciloscopio. Se utiliza señal de voltaje 0-5 V voltaje de referencia de + 10 v – 18V. Fotografía 3 Circuito Digital Análogo Fuente: Circuito Integrador Elaborado por: Fernanda Mera 133 8.3 Circuito de Motor Unipolar de Pasos En el motor se utilizan voltajes de 5 V y 12V para mover las bobinas y diodos rectificadores para evitar que regrese la corriente y se queme el motor. Fotografía 4 Circuito Motor Unipolar de Pasos Fuente: Circuito Integrador Elaborado por: Fernanda Mera 134 8.4 Circuito de Motor Bipolar de Pasos Utiliza un circuito integrado L293 el cual ayuda a controlar las bobinas del motor y trabaja con un voltaje de 5 V. Fotografía 5 Circuito Motor Bipolar de Pasos Fuente: Circuito Integrador Elaborado por: Fernanda Mera 8.5 Circuito LCD Está controlado desde las señales de datos y de control del puerto, se utiliza un potenciómetro para regular el brillo del LCD, y se conecta a un voltaje de 0- 5 V para activar la luz del LCD. 135 Fotografía 6 Circuito LCD Fuente: Circuito Integrador Elaborado por: Fernanda Mera 8.6 Circuito de Display de 7 Segmentos Para la elaboración de este circuito se utilizó el circuito integrado 7447, que ayuda a decodificar las señales obtenidas desde el puerto a código BSC, que son datos que recibe el display. Fotografía 7 Circuito Display de 7 Segmentos Fuente: Circuito Integrador Elaborado por: Fernanda Mera 136 8.7 Circuito Matriz de Leds La matriz manipulada con señales de control y de datos las mismas que fueron multiplexadas utilizando el circuito integrado 74LS138. Fotografía 8 Circuito Matriz de Leds Fuente: Circuito Integrador Elaborado por: Fernanda Mera 8.8 Circuito Integrador En el circuito integrador se unen todos los circuitos probados anteriormente, de manera que reciban las señales de datos y de control en común pero que funcionen indistintamente uno de otro, para conseguir esto se implementó un dip-switch que active un circuito a la vez. 137 Fotografía 9 Circuito Integrador y Puerto Paralelo Fuente: Circuito Integrador Elaborado por: Fernanda Mera 138 CAPÍTULO IX 139 CAPÍTULO IX 9 9.1 CONCLUSIONES Y RECOMENACIONES Conclusiones Al terminar con la construcción del diseño se puede concluir que Visual C# es una de las herramienta más completas para desarrollo del control de los dispositivos, la integración del puerto paralelo, y el desarrollo de la interfaz gráfica, ya que posee variedad de código reutilizable y librerías para el desarrollo, además de una completa fuente de información. Para la integración general del circuito fue necesario implementar un dip-switch, debido a que dos de los circuitos de E/S desarrollados ocupaban señales de control en su implementación, de este modo el control general será manual. Las señales con las que principalmente se trabajó en el proyecto son las señales de datos (lectura y escritura) y las señales de control (escritura), para las señales de estado que sirven principalmente para verificar el estado de la impresora por ejemplo cuando cae en error o cuando la impresora se quedó sin papel, estas señales son únicamente de lectura. El diseño de cada módulo por separado fue fundamental para verificar que señales que fueron necesarias implementarlas en cada circuito, el espacio y los elementos, al momento del diseño y distribución de los módulos en el circuito integrador. 140 Trabajar con el puerto paralelo fue de gran ventaja debido a la gran amplitud de proyectos que han sido desarrollados, por lo cual fue fácil encontrar todos los materiales necesarios para el diseño físico y gran fuente de información. 9.2 Recomendaciones El correcto funcionamiento del puerto paralelo se lo realiza configurando el BIOS de la PC, en modo Bidireccional, es decir enviar y recibir datos a través del mismo, de este modo las señales del puerto receptan las respectivas órdenes en el envío y recepción de datos. La identificación de las líneas del puerto se realiza mediante un multímetro, probando continuidad de un extremo del puerto a otro, línea por línea. Es factible disenar un programa que enciende Leds, donde permita identificar el puerto de datos desde el bit menos significativo hasta el más significativo (0-7), para hacer una referencia. Como un modo de ayuda la placa fue previamente probada mediante un programa de simulación de circuitos (Proteus) debido a su gran tamaño e implementación de varios circuitos a la vez. 141 La placa básicamente funciona con 0 a 5 V, pero por la integración de varios circuitos, es necesario conectar a un voltaje mayor entre 0 a 6 o 7 V ya que cae en 1 V al momento de conectar todos los módulos. El cable del puerto es adaptado para que funcione con conectores macho – macho para la conexión entre la PC y a la placa. En necesario una fuente de voltaje externa debido a que el circuito conversor Digital – Análogo trabaja con voltaje en el rango de 10 a 15V, y el motor unipolar de pasos que trabaja además con un voltaje de 12V. 9.3 Bibliografía - Roldan, José (1995), Manual del Electricista de Taller, Madrid: Paraninfo - Robeth L. Boylestad (1997), Fundamentos de Electrónica (4ta ed.), México: Prentice-Hall. - Reyes, Carlos (2006), Microcontroladores PIC (2da ed.), Quito: Rispergraf - Bergsman, Paul (1994), Controlling The World with you PC, USA: HighText. - Visual C#. (16 de Septiembre, 2008) Inicio de Visual C# [on line]. Disponible en: http://msdn.microsoft.com/es-es/library/kx37x362(VS.80).aspx - BubleBar. (2001-2008) GUI design software to create custom skin for Windows Aplication [on line]. http://www.devcomponents.com/dotnetbar/bubblebar.aspx 142 Disponible: - Codeproject. (13 Sep 2003). Free source code and programming help [on line] Disponible en: http://www.codeproject.com/KB/cs/csppleds.aspx - Francisco Pantano Rubiño. (05 de Enero, 2008) Aeromodelismo: Valeros y Eléctricos. Disponible en: http://www.infolaser.net/franpr/tecnica/porpar/lpt.htm - El puerto Paralelo del PC [On line]. Disponible en: http://cfievalladolid2.net/tecno/cyr_01/control/puerto_paralelo.htm#reg_datos - El puerto paralelo. El puerto de Impresora [on line]. Disponible en: http://arantxa.ii.uam.es/~gdrivera/varios/notas_lpt.htm - Tensión, corriente y resistencia eléctrica. Ley de Ohm (17 de Marzo, 2008), La Tensión Eléctrica. [on line]. Disponible en: http://www.terra.es/personal2/equipos2/tcr.htm - Diodos Retifcadores. (12 de Abril, 2008) [on line] Disponible en: www.gbcomponentes.com - Transistor-Wikipedia. (9 Marzo, 2009), La Enciclopedia Libre. [On line] Disponible en: http://es.wikipedia.org/wiki/Transistor - Diccionario Informático. Definición del Conversor Análogo-Digital [on line], Disponible en: http://www.alegsa.com.ar/Dic/conversor%20analogico- digital.php - Puerto Paralelo y ADC0804 Conversor analógico Digital. Dibujo N º 32 Diagrama de Tiempo para lectura de Datos [on line] Disponible en: http://www.globu.net/pp/ES/adc0804_puerto_paralelo.htm 143 - Alejandro Ariel Terrado. (2008, Enero 26). Adquisición de Datos; Respuesta de circuitos con tres elementos pasivos [on line]. Disponible en: http://www.monografias.com/trabajos32/circuito-tres-elementos/circuito-treselementos.shtml - Jameco electronics. (16 de Marzo, 2008). Datasheet adc080x [on line]. Disponible en: www.jameco.com - Tutorial sobre Motores de paso a paso. (5 Octubre, 2008). Imagen de un estator de 4 bobinas [on line]. Disponible en: http://www.todorobot.com.ar/informacion/tutorial%20stepper/steppertutorial.htm - Departamento de Electrónica. (12 Octubre, 2008) Motores de reluctancia Variable. [on line]. http://platea.pntic.mec.es/~lmarti2/motor2.htm 144 Disponible en: 9.4 Glosario de Términos Bidireccional.- Que posee 2 direcciones, una de entrada y otra da salida. Buffer.- Permite el almacenamiento temporal de los datos que van a ser enviados desde los dispositivos y mostrados en la computadora Centronics.- interfaz que permite la comunicación entre la impresora y la computadora. Inpout32.dll.- Librería de .Net, que permite trabajar con puerto paralelo. Jumper.- Salto que permite hacer el dispositivo que contiene el jumper en la placa de circuitos permanezca deshabilitado ya que no permite el paso se corriente. Latch.- Permite la reserva o almacenamiento temporal de los datos que salen de la computadora y van a ser mostrados en los dispositivos. Multiplicación.- Permite transformar los bits, una entrada en varias salidas. BubbleBar.- Menú de control gráfico desarrollado en .Net que contiene el menú del programa. 145 ANEXOS 146 ANEXOS Anexo 1: Circuito Integrado DAC0808 147 Anexo 2: Características Eléctricas Integrado DAC0808 148 Anexo 3: Circuito Integrado LF351 149 Anexo 4: Características Eléctricas Integrado LF351 150 Anexo 5: Circuito Integrado ADC 0804 151 Anexo 6: Integrado ADC 0804 152 Anexo 7: Características Eléctricas Integrado ADC 0804 153 Anexo 8: Circuito Integrado L293 Anexo 9: Circuito Integrado 74LS138 154 Anexo 10: Características Eléctricas Integrado L293 155 Anexo 11: Circuito Integrado 74LS47 Anexo 12: Características Eléctricas Integrado 74LS47 156 Anexo 13: Circuito Integrado 74LS373 Anexo 14: Diagrama Lógico Integrado 74LS373 157 Anexo 15: Características Eléctricas Integrado 74LS373 158 LCD Anexo 16: LCD Anexo 17: Display de 7 Segmentos 159 Anexo 18: Características eléctricas, Display de 7 Segmentos Matriz de Leds: Anexo 19: Matriz de Leds: Anexo 20: Distribución de Pines 160 161