Universidad Tecnologica de Queretaro Digitally signed by Universidad Tecnologica de Queretaro DN: cn=Universidad Tecnologica de Queretaro, c=MX, o=Universidad Tecnologica de Queretaro, ou=UTEQ, [email protected] Date: 2007.05.28 17:17:10 -06'00' UNIVERSIDAD TECNOLÓGICA DE QUERÉTARO Voluntad · Conocimiento · Servicio CONTROL Y AUTOMATIZACIÓN DE UN REACTOR PARA LA GENERACIÓN DE NANOESTRUCTURAS. CENTRO DE FÍSICA APLICADA Y TECNOLOGÍA AVANZADA. Reporte de Estadía para obtener el Título de Técnico Superior Universitario en Electrónica y Automatización JOSÉ SERGIO ORDUÑA DÍAZ. Santiago de Querétaro. Octubre de 2006 1 UNIVERSIDAD TECNOLÓGICA DE QUERÉTARO Voluntad · Conocimiento · Servicio CONTROL Y AUTOMATIZACIÓN DE UN REACTOR PARA LA GENERACIÓN DE NANOESTRUCTURAS. CENTRO DE FÍSICA APLICADA Y TECNOLOGÍA AVANZADA. Reporte de Estadía para obtener el Título de Técnico Superior Universitario en Electrónica y Automatización ASESOR DE LA EMPRESA DR. RODRIGO RAFAEL VELAZQUEZ CASTILLO. ASESOR DE LA ESCUELA ING. MANUEL MELÉNDEZ ROMERO ALUMNO: JOSÉ SERGIO ORDUÑA DÍAZ. 2 3 Dedicatoria A las personas que son más fuertes de ser y corazón de todo el universo. A quienes son suaves como un cántico angelical y tiernos como la brisa de la mañana. A quienes con toda pasión, coraje, entrega y valentía cuidaron lo que soy. A quienes son el motor principal de todo lo que seré. A quienes supieron ser un pilar para apoyarme en momentos difíciles. A ustedes: Mamá y Papá 4 Agradecimientos 9 A Dios por haberme dado la oportunidad, calma, paciencia, el temple y la fuerza para haber terminado este reto. 9 Le agradezco a mis padres y hermanos, que tanto me han apoyado a lo largo de todo este proyecto. 9 Y mi más profundo, eterno y sincero agradecimiento, por su participación en este proyecto: 9 A mis enemigos, por ser la fuerza que me impulsa día con día para tratar de llegar más lejos que ellos. 9 A mis amigos, quienes incondicionalmente me apoyaron durante este trayecto de mi vida. 9 A mi profesor, amigo y asesor Ing. Manuel Meléndez Romero, quien me brindó su apoyo sobre cualquier circunstancia, por sus ideas acerca de cómo realizar este proyecto, por su paciencia y confianza invertida en mí. 5 9 A mis profesores de la universidad, por estar al pendiente de sus alumnos, por su dedicación y amistad. Y por los conocimientos adquiridos que son las herramientas primordiales en mi preparación. 9 A mi asesor de empresa Dr. Rodrigo Rafael Velásquez Castillo, por haberme facilitado muchas herramientas de trabajo, por sus asesorías de química, por haberme orientado sobre la construcción del reactor y sobre todo, por su amistad. 9 A mi amigo y profesor Ing. Domingo Rangel, quien compartió la visión de este trabajo; gracias por darme la oportunidad y el apoyo brindado en asesorías y durante la elaboración de este proyecto. 9 Al Sr. y amigo Edgar Méndez, por sus orientaciones técnicas, su apoyo incondicional y desinteresado en asesorías acerca de la elaboración de circuitos impresos y construcción del sistema, y sobre todo, por su amistad. 9 Y cómo olvidar el grupo: “Los Dones”, integrado por mis amigos: “Naum”, “Chica”, “Chiva”, “Escudero”, “Dica”, “Pumba”, “Eli”, “Monse”, etc. 9 A mi amiguita: Diana, por ser mi compañera inseparable durante los 5 cuatrimestres de arduo trabajo, por apoyarme en momentos difíciles en CFATA, dentro y fuera de la UTEQ. 6 9 Al Charly, y Juan Carlos Mejía, por su ayuda e ideas que favorecieron el proyecto, por su emotividad, y amistad. 9 Gracias, UTEQ Y Qué….. Qué….. Qué….. Qué….. Qué….. Que….. “QUERÉTARO” 7 ÍNDICE DEDICATORIA AGRADECIMIENTOS ÍNDICE INTRODUCCIÓN CAPÍTULO I. ANTECEDENTES GENERALES DE LA EMPRESA 1.1 Antecedentes de la empresa ……………………………………………………..15 1.1.1 Áreas de investigación ………………………………………………….17 1.1.2 Área académica ………………………………………………………....17 1.2 Misión ………………………………………………………………………….18 1.3 Visión …………………………………………………………………………..19 1.4 Política de calidad del CFATA …………………………………………………19 1.5 Organización ……………………………………………………………………20 1.6 Campo de desarrollo ……………………………………………………………21 1.7 Proceso general de operación …………………………………………………..22 CAPÍTULO II. EL PROYECTO 2.1 Antecedentes ……………………………………………………………………25 2.2 Definición del proyecto ………………………………………………………...25 2.3 Objetivo ………………………………………………………………………...26 8 2.4 Alcance ……………………………………………………………………….27 2.5 Plan de trabajo ………………………………………………………………..27 2.5.1 Separación de actividades …………………………………………….27 2.5.2 Secuencia de actividades ……………………………………………..28 2.5.3 Asignación de tiempos ……………………………………………….29 2.5.4 Gráfica de Gantt ………………………………………………………30 CAPÍTULO III. MARCO TEÓRICO 3.1 Representaciones numéricas ……………………………………………………33 3.1.1 Ventajas y desventajas de las técnicas digitales ………………………..35 3.2 ¿Qué es un “Microcontrolador” (µC)? …………………………………………36 3.2.1 Aplicaciones …………………………………………………………….38 3.2.2 Diferencias entre Microprocesadores (µP) y Microcontroladores (µC) ……………………………………………..39 3.2.3 Arquitectura …………………………………………………………….40 3.3 Transductores de temperatura …………………………………………………..41 3.3.1 Tipos de transductores de temperatura …………………………………42 3.3.2 Termistores ……………………………………………………………..42 3.3.3 Sensores de IC …………………………………………………………..43 3.3.4 Termopares ……………………………………………………………..44 3.3.4.1 Efecto Seebeck ……………………………………………..45 3.3.4.2 Tipos de termopar ………………………………………….46 9 3.4 Sistemas de control ……………………………………………………………..47 3.4.1 Analogías de primer orden …………………………………………...…47 3.5 Controladores ………………………………….……………………………..…49 3.5.1 Control proporcional ……………………………………………………49 3.5.2 Control integral …………………………………………………………51 3.5.3 Control derivativo ……………………………………………………....52 3.5.4 Control proporcional integral (PI) ……………………………………...53 3.55 Control P+I+D (PID) ………………………………………………...…54 CAPÍTULO IV. DESARROLLO DEL PROYECTO 4.1 Sistema de lazo cerrado ……………………………………………………….58 4.1.1 Diagrama de flujo de programa del µC ………………………………...59 4.2 El microcontrolador (µC) ………………………………………………………60 4.2.1 Programa de inicialización del µC ……………………………………..62 4.3 El termopar ……………………………………………………………………..63 4.3.1 Acondicionamiento de señal ……………………………………………65 4.3.2 Digitalización de la señal del termopar …………………………………67 4.3.3 Programa de conversión del µC ………………………………………...68 4.4 Interfaz hacia la PC ……………………………………………………………..74 4.4.1 MAX-232 ……………………………………………………………….75 4.5 Transmisión de datos vía RS-232 ……………………………………………....77 4.6 El LCD …………………………………………………………………………81 10 4.7 Adquisición de datos y control PID, desde LabVIEW ………………………....84 4.7.1 Diagrama de flujo para realizar el software en LabVIEW …………..…85 4.7.2 Configuración y lectura de puerto ………………………………………86 4.7.3 Graficar los valores recibidos …………………………………………..88 4.7.4 Control PID …………………………………………………………..…89 4.7.5 Conversión del error del PID, para ser enviado por RS-232 …………...91 4.5 Cruce por cero ………………………………………………………………….92 CAPÍTULO V. EVALUACIÓN ECONÓMICA Y RESULTADOS OBTENIDOS 5.1 Evaluación económica ………………………………………………………….97 5.2 Resultados obtenidos …………………………………………………………...99 CONCLUSIONES .......................................................................................................102 BIBLIOGRAFÍA …………………………………………………………………….105 ANEXO I ANEXO II 11 INTRODUCCIÓN 12 La nanotenología es un conjunto de técnicas que se utilizan para manipular la materia a escala de átomos y moléculas, además de ser una área de la ciencia muy prometedora tecnológicamente, ya que se han realizado estudios en diferentes campos de las ciencias; cabe destacar los avances en el área medica donde es posible detectar tejidos cancerígenos de una edad muy temprana y ahora con métodos electroscópicos y con la ayuda de nanopartículas de oro, poder dar el tratamiento adecuado para erradicar esté tipo de células. El campo de la nanotecnología ha tenido un auge muy importante dentro de las investigaciones en la innovación de materiales, pero ésta tarea es difícil, ya que los métodos para llegar a realizar éste tipo de tecnología son muy complejos, por lo que se requiere de personal experto y altamente capacitado para realizar estas tareas. Actualmente existen sistemas de control y reactores que ya se encuentran instrumentados, pero su costo es muy elevado, por lo que en éste trabajo se presenta el desarrollo de un reactor automatizado para la síntesis de nanoestructuras a nivel laboratorio. 13 CAPÍTULO I ANTECEDENTES GENERALES DE LA EMPRESA 14 1.1 Antecedentes de la empresa El Centro de Física Aplicada y Tecnología Avanzada (CFATA) fue creado en 1991, en las instalaciones del Instituto de Física de la Universidad Nacional Autónoma de México (UNAM). En 1998, después de un exitoso desarrollo y parte del proceso de descentralización de la UNAM, el departamento se trasladó al campus Juriquilla, donde el 1 de abril del 2002 se transforma en una entidad independiente al aprobar el Consejo Universitario su conversión. Se establece así el Centro de Física Aplicada y Tecnología Avanzada (CFATA, figura 1.1), con la idea de reunir los esfuerzos que diversas disciplinas realizan en el campo de las aplicaciones de la física, para impulsar el conocimiento científico y el desarrollo tecnológico, y enfocarlos a la solución de los problemas de mayor importancia para la sociedad. Fig. 1.1 Centro de Física Aplicada y Tecnologías Avanzadas Campus Juriquilla 15 CFATA se ubica en un complejo científico arquitectónico de 600 metros cuadrados. Su personal académico está integrado por 11 investigadores y 10 técnicos académicos de tiempo completo, su infraestructura principal cuenta con 12 laboratorios de investigación, un área de cómputo de gran capacidad, una biblioteca especializada, un taller mecánico, 2 salas para estudiantes, 2 salas audiovisuales y áreas administrativas. Cuenta con una dependencia de apoyo a las actividades académicas. Los objetivos específicos del Centro de Física Aplicada y Tecnología Avanzadas son: 1. Realizar investigaciones científicas básicas, aplicadas y aplicables del más alto nivel, dentro del campo de la ciencia física, manteniendo un alto nivel de publicación en la revista de mayor prestigio. 2. Contribuir con la formación de recursos humanos de alto nivel de física aplicada mediante la impartición de cursos y la dirección de tesis en licenciatura y posgrado, tanto dentro como fuera de los programas de la UNAM, enfatizado la interacción académica con instituciones regionales. 3. Establecer lazos estrechos de colaboración con la industria nacional, para favorecer la relación académica-industrial, a través de proyecto conjunto de desarrollo tecnológico, transferencia de la tecnología desarrollada en el Centro, generación de microempresas y consultoría. 16 4. Participar en actividades para el desarrollo científico y cultural de la región mediante actividades de divulgación científica, cursos de actualización y vocacionales, así como también de exposiciones y visitas guiadas. 1.1.1 Áreas de investigación 1. Ingeniería molecular de materiales, orientadas principalmente al desarrollo de materiales cerámicos, polimétricos y compositos, para diseñar recubrimientos, bio-materiales, fibras ópticas, cementos y concretos. 2. Física biomédica, enfocada al estudio teórico y aplicaciones tecnológicas de las ondas de choque, para la conservación de alimentos, desinfección por ondas de choque, litro-tripsia extracorporal y ortopedia. 3. Simulación de sistemas mediante el desarrollo de modelos para presidir las propiedades físicas y químicas de nuevos materiales, en mecanismos fundamentales de agregación, en la estructura de los materiales complejos, en las propiedades de transporte de sistema auto similares e interfaces en metales. 1.1.2 Área académica Prosgrado: la formación del estudiante en las áreas científica y tecnológica es una actividad fundamental del personal académico de CFATA. Esta actividad se realiza 17 principalmente en los programas de posgrado en ciencias Químicas, en la Ingeniería, en las Ciencias Físicas y en las Ciencias en Ingeniería de Materiales de la UNAM, así como en el programa de Doctorado en Ingeniería de la UAQ. 1 1.2 Misión La misión del centro de Física Aplicada y Tecnología Avanzada es “realizar investigaciones aplicables dentro de las ciencias físicas con un enfoque netamente interdisciplinario”. Por investigaciones aplicadas se entiende aquella que está dirigida al uso de áreas de competencia del centro; mientras que la investigación aplicable es aquella en que con realizó con el objetivo, a corto, mediano o largo plazo, de crear nuevas oportunidades de aplicación tecnologías del conocimiento científico, sin que se medie necesariamente un problema especifico que resolver. El enfoque ínter disciplinario confiere también al Centro una personalidad única, ya que permite el concurso de diversas especialidades donde las ciencias físicas tiene una aplicación directa e indirecta. Contribuir activamente al enriquecimiento de la ciencia y tecnologías nacionales e internacionales en el ámbito de la Universidad Nacional Autónoma de México. Realizar investigaciones básica y aplicada así como la formación de recursos humanos en los niveles de licenciatura y posgrado. 1 La misión, visión, y política de calidad, se han transcrito tal y como obran en los documentos y sistema de calidad de CFATA. 18 Favorecer la vinculación de nuestras actividades científicas y tecnológicas con la industria y la sociedad. 1.3 Visión Desarrollar investigaciones que sean útiles y transcendentes, merezcan el reconocimiento nacional e internacional. Publicar los logros en revistas de alto impacto y contar con laboratorios y equipos especializados de alta tecnología. Ser el polo por excelencia en el posgrado en ciencias de materiales, contando con un programa de formación y capacitación de recursos humanos de alta calidad. 1.4 Política de calidad del CFATA Es la misma política de calidad del centro física aplicada y tecnología avanzada de la UNAM. Realizar actividades de investigación básica y aplicada, de docencia y difusión de los conocimientos científicos con la participación activa de su personal y la mejora continua de sus procesos. 19 1.5 Organización El Centro de Física Aplicada y Tecnologías Avanzadas se organiza por secciones, en donde cada área tiene funciones específicas; de esta manera el personal se enfoca exclusivamente a tareas que pertenecen a sus mismas secciones. Jefe del departamento. Sección académica. Lab. de polímeros. Sección de vinculación. Proyectos con la industria. Lab. choques débiles. Caracterización óptica. Intercambio académico. Microscopia electrónica. Estudiantes asociados. Lab. de atm. controlada. Lab. de fibras ópticas. Servicios administrativos. Personal de compras e inventario. Compatibilidad y presupuesto. de muestras Biblioteca. Taller. Simulación y sistemas. Lab. de rayos X Intendencia y vigilancia. Lab. de dispersión de luz Lab. de inst. y desarrollo. Lab. de prep. de muestras Lab. de pruebas mecánicas. Fig. 1.2 Organigrama del departamento de CFATA – Campus Juriquilla. 20 • Sección académica: Esta sección se encarga realizar investigaciones básicas y aplicadas, y como dar apoyo a la formación de recursos humanos en los niveles de licenciatura y prosgrado. • Sección de vinculación: Cumple las actividades de comunicar al centro con la industria en cuestión de proyecto o investigaciones, realizar acciones de intercambio de estudiantes. • Sección de servicios administrativos: Autoriza los presupuestos de los proyecto en la adquisición de equipo para las investigaciones. 1.6 Campo de desarrollo El Centro de Física Aplicada y Tecnologías Avanzadas es un centro de investigación básica y de desarrollo tecnológico, enfocado a dar soluciones a problemas de científicos, tecnológicos e impartir cátedras de posgrados. Cuenta con personal altamente capacitado y tiene una alta productividad, que se refleja en altos índices de publicaciones en revistas de reconocido prestigio internacional. El Centro tiene entre sus principales directrices la de impulsar el desarrollo nacional y regional, y la de contribuir a la generación de conocimiento con reconocimiento internacional. 21 1.7 Proceso general de operación Uno de los objetivos del Centro de Investigación es colaborar con la industria de la región en la solución de problemáticas actuales de innovación tecnológica. Por ello, a través de su sección de vinculación, pone a disposición de los industriales sus capacidades institucionales de investigación científica y tecnológica, así como de servicios de apoyo, en las áreas de investigación del departamento mediante los siguientes esquemas: ¾ Asesoría, consultoría o cursos de capacitación. ¾ Convenios de colaboración conjunta con empresas de la región para el desarrollo de proyectos de investigación tecnológica. ¾ Desarrollo de proyectos de investigación tecnológica para la industria. Otra de las actividades es la divulgación del departamento, que contribuye al intercambio académico entre la UNAM y las instituciones de educación superior del Estado, mediante convenios académicos para: 22 ¾ Dirección de tesis de licenciatura, maestría y doctorado. ¾ Impartición de seminarios, cursos y talleres. ¾ Estancias profesionales. ¾ Servicio social. ¾ Visitas guiadas. La formación de estudiantes de las áreas científica y tecnológica es una actividad fundamental para los académicos del CFATA, La mayoría son tutores de los siguientes programas de posgrado: UNAM ¾ Posgrado en ciencias químicas. ¾ Posgrado en ingeniería. ¾ Posgrado en ciencias físicas. ¾ Posgrado en ciencia e ingeniería de materiales. UAQ ¾ Doctorado en ingeniería. 23 CAPÍTULO II EL PROYECTO 24 2.1 Antecedentes Uno de los mayores compromisos del CFATA, es ir a la par con otros Centros de Investigaciones, tales como: CENAM, CIDESI, etc., por ello busca implementar nuevos instrumentos con tecnologías cada vez más estructuradas y capaces de realizar funciones muy similares en precisión y calidad, comparados con los instrumentos con tecnologías extranjeras. Por tal razón surge la necesidad de implementar un instrumento de control complejo que sea capaz de realizar el monitoreo y control en todo momento de las sustancias químicas dentro del reactor, para que las variables: temperatura y presión, estén dentro de los intervalos establecidos, para que al final de todo el proceso tanto químico como de control, el resultado sea favorable conforme a lo planeado. 2.2 Definición del proyecto “CONTROL Y AUTOMATIZACIÓN DE UN REACTOR PARA LA GENERACIÓN DE NANOESTRUCTURAS”. El nombre del proyecto trata de describir lo que se pretende realizar, las palabras: “Control y Automatización”, quizás suelen ser utilizadas cotidianamente, pero esto en realidad va más allá de ser simples palabras, ya que son en sustento principal de todo el 25 sistema; el “control” es el cómo se mantendrá la temperatura establecida dentro del intervalo definido; “automatización” cuidará que el proceso se realice de manera independiente, que no necesite un operador y además, que sea confiable. 2.3 Objetivo Dentro de este proyecto se pretende construir un instrumento que sea capaz de realizar tres principales actividades: ¾ Control, utilizando una técnica de disparos sincronizados y con circuito cruce de cero. ¾ Adquisición, utilizando un Microcontrolador para obtener las señales de campo y trasmitirlas hacia el puerto SR-232 (Serial), y por un LCD se despliegue la temperatura y estado del proceso. ¾ Monitoreo, lo adquirido se monitoreará por LabView donde se graficarán los datos, y se controlara el tiempo que dure el proceso. ¾ Se pretende innovar en el campo de los materiales, la implementación de nanoestructuras con fines médicos. 26 2.4 Alcance Los estudios sobre las nanoestructuras, son la razón por la cual se implementa toda una instrumentación en reactor, ya que con éstas siendo enfocadas a la medicina podrán tener datos más exactos de los tejidos cancerígenos dentro de una persona, estas nanoestructuras, en especial de oro, se adhieren con mucha más facilidad y rapidez a este tipo de tejidos, que mediante técnicas electroscópicas, resulta mas precisa, rápida y contundente la detección temprana o a un muy buen tiempo de ésta enfermedad que siempre ha sido un mal para toda la sociedad. 2.5 Plan de trabajo A continuación, se catalogarán y detallarán las diversas actividades del proyecto. 2.5.1 Separación de actividades ¾ Acondicionar el reactor para que pueda funcionar correctamente. ¾ Investigar sobre las nanoestructuras. ¾ Investigar sobre los sensores de temperatura y presión así como seleccionar uno. ¾ Investigar precios de estos sensores y proveedores. 27 ¾ Investigar cómo hacer control para poder manipular la temperatura y el hardware necesario. ¾ Investigar cómo se realiza la transmisión serial. ¾ Investigar cómo funciona la recepción de los datos en LabView. 2.5.2 Secuencia de actividades 1. Investigar un eficiente modelo del sistema 2. Investigar literatura de los sensores a utilizar y de otros componentes 3. Adquirir materiales electrónicos, termopar y componentes del sistema 4. Desarrollar el programa en un µC, para visualizar la temperatura en un LCD 5. Desarrollar el programa de un µC, para realizar la transmisión de datos, vía RS-232 6. Desarrollo de software el LabVIEW (TX, RX y control) 7. Desarrollar cruce por cero del control de temperatura del reactor 8. Diseñar planos, para construir una cámara donde se colocará el reactor 9. Calibración y pruebas del reactor 10. Presentar el instrumento funcionando correctamente 28 2.5.3 Actividad Asignación de tiempos Tareas programadas Duración 1 Investigar un eficiente modelo del sistema 5 días 2 Investigar literatura de los sensores a utilizar y de otros componentes 5 días 3 Adquirir materiales electrónicos, termopar y componentes del sistema 5 días 4 Desarrollar el programa en un uC, para visualizar la temperatura en un LCD 15 días 5 Desarrollar el programa de un uC, para realizar la transmisión de datos, vía RS-232 15 días 6 Desarrollo de software el LabVIEW (TX, RX y control) 15 días 7 Desarrollar cruce por ""0"" del control de temperatura del reactor 5 días 8 Diseñar planos, para construir una cámara donde se colocará el reactor 5 días 9 Calibración y pruebas del reactor 21 días 10 Presentar el instrumento funcionando correctamente 5 días 29 2.5.4 Actividad 1 2 3 4 5 6 7 8 9 10 Actividad 1 2 3 4 5 6 7 8 9 10 Actividad 1 2 3 4 5 6 7 8 9 10 Duración 6 ma mi ju vi 07 may '06 sá do lu ma mi ju Gráfica de Gantt vi 14 may '06 sá do lu ma mi ju vi 21 may '06 sá do lu ma mi ju vi 28 may '06 sá do lu ma mi ju vi 5 días 5 días 5 días 15 días 15 días 15 días 5 días 5 días 21 días 5 días Duración 28 may '06 do lu ma mi ju vi 04 jun '06 sá do lu ma mi ju vi 11 jun '06 sá do lu ma mi ju vi 18 jun '06 sá do lu ma mi ju vi 25 jun '06 sá do lu ma mi 25 jun '06 do lu ma mi ju vi 02 jul '06 sá do lu ma mi ju vi 09 jul '06 sá do lu ma mi ju vi 16 jul '06 sá do lu ma mi ju vi 23 jul '06 sá do lu ma mi 5 días 5 días 5 días 15 días 15 días 15 días 5 días 5 días 21 días 5 días Duración 5 días 5 días 5 días 15 días 15 días 15 días 5 días 5 días 21 días 5 días 30 Actividad 1 2 3 4 5 6 7 8 9 10 Actividad 1 2 3 4 5 6 7 8 9 10 Duración 23 jul '06 do lu ma mi ju vi 30 jul '06 sá do lu ma mi ju vi 06 ago '06 sá do lu ma mi ju vi 13 ago '06 sá do lu ma mi ju vi 20 ago '06 sá do lu ma mi 20 ago '06 do lu ma mi ju vi 27 ago '06 sá do lu ma mi ju vi 03 sep '06 sá do lu ma mi ju vi 10 sep '06 sá do lu ma mi ju vi 17 sep '06 sá do lu ma mi 5 días 5 días 5 días 15 días 15 días 15 días 5 días 5 días 21 días 5 días Duración 5 días 5 días 5 días 15 días 15 días 15 días 5 días 5 días 21 días 5 días 31 CAPÍTULO III MARCO TEÓRICO 32 3.1 Representaciones numéricas Cuando se manejan diversas cantidades, es importante poder representar sus valores con eficiencia y exactitud. 2 Cuando se escucha la frase: “REPRESENTACIONES NUMÉRICAS”, se imagina una gran y extensa variedad de formas de cuantificar cantidades, pero básicamente solo existen dos: 9 Las análogas y las digitales. Las análogas ó también conocidas como “analógicas”. ¾ Son única y exclusivamente las magnitudes que proporcionalmente cambian con respecto al tiempo. Las digitales ó también conocidas como “discretas”. ¾ Estas son todas aquellas magnitudes que cambian con respecto al tiempo, sólo en estados “biestables”. 2 Ronald J. Tocci, Sistemas Digitales, Principios y Aplicaciones, Página # 3 33 Ejemplos: Las variables ó magnitudes análogas cambian con respecto al tiempo, tal es el caso de la temperatura (por solo mencionar una): °C t Gráfica 3.1 Variable analógica Como se puede apreciar en la gráfica 3.1, la magnitud “Temperatura”, siempre cambia con respecto al tiempo; a diferencia de los valores digitales, no se podría decir que hay toda la temperatura, o nada de la temperatura ya que esta magnitud siempre cambia con respecto al tiempo. Las variables digitales ó discretas, por otra parte sirven para determinar un estado lógico, los cuales son únicamente “1” ó “0”, para tener un ejemplo más claro de esto, se analiza en la gráfica 3.2: +v 0 1 Apagado Encendido 0V Gráfica 3.2 Variable digital t 34 Como se puede apreciar en la gráfica 3.2, esta describe el comportamiento digital, en términos de voltaje, ya que: 9 Cuando hay un “0”, es igual que no hubiera voltaje, lo que es lo mismo que el foco esté apagado. 9 Y por otra parte, cuando hay un “1”, es igual que hubiera todo el voltaje +V, lo que es lo mismo que el foco esté encendido. 3.1.1 Ventajas y desventajas de las técnicas digitales. Ventajas Desventajas No son importantes los valores Cuando exactos técnicas digitales existe, de corriente, sino dos estados: Alto “1” y Bajo “0”. en Los circuitos digitales son menos desventaja, se realidad, emplean solo una influenciados por el ruido. “EL MUNDO REAL ES Requieren menos espacios para su FUNDAMENTALMENTE construcción. ANALÓGICO”. 3 Pueden ser programables 3 Ronald J. Tocci, Sistemas Digitales, Principios y Aplicaciones, Página # 5. 35 Como sabiamente menciona este autor, el mundo real esta basado en variables analógicas, solo para darnos cuenta, a continuación se muestran algunos ejemplos: 3.2 ¿Qué es un “Microcontrolador” (µC)? Es un circuito integrado (CI), programable que con tiene todos los componentes de una computadora cualquiera, pero con mucha menos capacidad, ya que solo en su memoria residirá un programa el cual será destinado a controlar una sola tarea o aplicación muy especifica. Un microcontrolador es un computador complejo, aunque de limitadas prestaciones, que 4 está contenido en el chip del circuito integrado y se designa a gobernar una sola tarea. 4 José Mª. Angulo Usartegui, Ignacio Angulo Martínez. Microcontroladores Pic, Diseño, Prácticas De Aplicaciones, Primera Parte, Pagina # 1 36 Además de tener todo integrado en un solo chip, pueden llevar a cabo tareas tales como: ¾ Conversión Analógica a Digital. ¾ Comunicación RS-232, RS-485, USB. ¾ PWM (Modulación por Ancho de Pulso). ¾ Almacenar en memoria EEPROM. ¾ Controlar secuencias por medio de la manipulación diferentes puertos. Ahora bien el usar µC, tiene sus ventajas y desventajas al ser comparados con un µP (Tabla 3.3). Ventajas Desventajas ¾ Solo atienden una línea de código 9 Bajo costo. 9 No requieren más componentes adicionales para poder funcionar. a la vez. ¾ Cuentan con poca capacidad de memoria de programa. 9 Fácil operación al programar. ¾ Son relativamente lentos. 9 Versátiles. ¾ No son escalares. Tabla 3.3 Ventajas y Desventajas de un µC contra un µP. 37 3.2.1 Aplicaciones Las distintas aplicaciones que funcionan a base de un µC aumenta exponencial y mundialmente (tabla 3.4), debido a que son muy confiables en operaciones unitarias, es decir en una sola tarea especifica; se utilizan en: 35 30 Porcentaje 30 27 25 Casa 18 20 15 15 Telefonía Automotriz Cómputo Industria 10 10 5 0 Usos Gráfica 3.4 Distribución mundial de µC en las diversas áreas de aplicación. 9 Casa: línea blanca (lavadoras, hornos de microondas, lavavajillas, etc.) y línea marrón (tv., video, aparatos musicales, etc.). 9 Telefonía: Comunicación y sistemas de transferencia. 9 Automotriz: Sistemas de seguridad. 38 9 Computo: Computadoras, unidades lectoras (CD-ROM, DVD, FLOPPY) . 9 Industria: Sistemas de control, maquinarias, instrumentos de medición. 3.2.2 Diferencias entre Microprocesadores (µP) y Microcontroladores (µC) Quizás la diferencia más notable a simple vista es que: Un µC, obedece a un sistema de lazo cerrado (figura 3.5), es decir, contiene todos los dispositivos dentro de un solo chip. Mientras que un µP, obedece a un sistema de lazo abierto (figura 3.6), es decir, necesita de componentes adicionales para trabajar como: memoria RAM, Disco Duro, memoria EPROM ó EEPROM, etc. I / O Figura 3.5 Estructura de un sistema abierto en un µP. µC I / O Figura 3.6 Estructura de un sistema cerrado en un µC. 39 3.2.3 Arquitectura Para lograr una compactación de código óptima y una velocidad superior se han implementado en lo µC PIC (Microchip): ¾ Procesador tipo RISC. Esta metodología significa Reduced Instruction Set Computador (RISC), que en traducción es set o juego de instrucciones reducidas para el µC, trata de tomar solamente una lista de 35 instrucciones que son las mas utilizadas y con estas realizar la programación del µC. ¾ Procesador Segmentado. Este tipo de procesador puede ejecutar en un mismo ciclo de reloj, dos instrucciones de código simultáneamente y en los llamados a subrutina se tomara 1 ó 2 para cada llamado. ¾ Arquitectura HARVARD. Esta nueva arquitectura permite trabajar de manera mucho mas rápida que la antigua arquitectura Von Neuman (figura 3.7), ya que esta tiene 2 buses, 40 uno de 8 bits para cargar los datos al CPU del µC, y otra de 14 bits para cargar las instrucciones al CPU de este mismo (figura 3.8). Figura 3.7 Arquitectura Von Neumann 3.3 Figura 3.8 Arquitectura Harvard Transductores de temperatura Una de las necesidades del instrumento es la de medir y registrar señales de temperatura. La temperatura es un factor de medida engañoso debido a su simplicidad. A menudo se piensa en ella como un simple número, pero en realidad es una estructura estadística cuya exactitud y repetitibilidad pueden verse afectadas por la masa térmica, el tiempo de medida y el ruido eléctrico. Los cuatro tipos de transductores de temperatura más utilizados en los sistemas de adquisición de datos son: ¾ Detectores de temperatura de resistencia (RTD). 41 ¾ Termistores. ¾ Sensores de IC (Circuitos integrado). ¾ Termopares. 3.3.1 Tipos de transductores de temperatura El detector de temperatura de resistencia (RTD) Se basa en el principio según el cual la resistencia de todos los metales depende de la temperatura. La elección del platino en los RTD de la máxima calidad permite realizar medidas más exactas y estables hasta una temperatura de aproximadamente 500°C. Los RTD más económicos utilizan níquel o aleaciones de níquel, pero no son tan estables ni lineales como los que emplean platino. En cuanto a las desventajas, el platino encarece los RTD, y otro inconveniente es el auto-calentamiento. Para medir la resistencia hay que aplicar una corriente, que, por supuesto, produce una cantidad de calor que distorsiona los resultados de medida. 3.3.2 Termistores Los termistores son semiconductores electrónicos con un coeficiente de temperatura de resistencia negativo de valor elevado y que presentan una curva 42 característica lineal tensión-corriente siempre que la temperatura se mantenga constante. Existen dos tipos de termistores: ¾ De coeficiente negativo: basado en una de las características fundamentales de los materiales semiconductores que presentan una resistencia eléctrica cuyo valor decrece al aumentar la temperatura, estos sensores tienen un intervalo de temperatura que se encuentra entre -50 a +150° C. ¾ De coeficiente positivo: se realizan mediante la compactación de materiales que presentan en una zona de su característica resistenciatemperatura una pendiente positiva. Esta zona suele ser bastante estrecha teniendo un intervalo de 0 a 100° C. 3.3.3 Sensores de IC Los sensores de circuitos integrados resuelven el problema de la linealidad y ofrecen altos niveles de rendimiento. Son, además, relativamente económicos y relativamente precisos a temperatura ambiente, dependiendo de la calidad del sensor. 43 Los sensores de IC forman parte de la tendencia hacia los "sensores inteligentes", que son unos transductores cuya inteligencia incorporada facilita las actividades de reducción de análisis de datos que el usuario debe realizar normalmente en el sistema de adquisición de datos, además de ser dispositivos activos, por lo que requieren una fuente de alimentación para que funcionen. 3.3.4 Termopares Un termopar es un dispositivo para la medición de temperatura (figura 3.9) basado en efectos termoeléctricos. Es un circuito formado por dos conductores de metales diferentes ó aleaciones de metales diferentes, unidos en sus extremos y entre cuyas uniones existe una diferencia de temperatura, que origina una fuerza electromotriz: efecto Seebeck. A B Fig. 3.9 Termopar, A) Unión de puntas. B) Termopar comercial Los termopares se utilizan extensamente, ya que ofrecen un intervalo de medición temperaturas mucho más amplia y una construcción más robusta que otros tipos. Además no precisan alimentación de ningún tipo y su reducido precio los convierte en una opción muy atractiva para sistemas de adquisición de datos. 44 La fuerza electromotriz generada por un termopar esta en función de la diferencia de temperatura entre la unión fría y caliente, pero más específicamente, ésta generada como resultado del gradiente de temperatura, los cuales existen a lo largo de la longitud de los conductores. 4 3.3.4.1 Efecto Seebeck En 1822 el físico alemán Thomas Seebeck descubrió accidentalmente que: Cuando las uniones de dos conductores se unen por sus extremos para formar un circuito (figura 3.1.0) y se coloca un gradiente de temperatura, se manifiesta un flujo de calor y un flujo de electrones conocida como: corriente Seebeck. La F.E.M, que genera la corriente se conoce como: 5 F.E.M de termopar o tensión Seebeck. Metal A Metal B Fig. 3.1.0 Representación del circuito conformado por 2 metales diferentes 4,5 Web: www.metas.com.mx, fecha de consulta: 10 Junio de 2006 45 Además si una de las uniones se mantiene a una temperatura superior a la otra, surge una diferencia de tensión que hace fluir una corriente eléctrica entre las uniones caliente y fría. 3.3.4.2 Tipos de termopares Comercial mente existen diferentes tipos de termopares para diferentes usos, con diferentes alcances y resoluciones dependiendo de las temperaturas que se desean cuantificar será el costo y el tipo de termopar, en la tabla 3.1.1, se muestra la composición química y alcance. Tabla 3.1.1 Características dependiendo el tipo de termopar También a la aleación: Cobre-Níquel, séle denomina constantán 46 3.4 Sistemas de control Un sistema de control es aquél que en la salida del sistema se controla para tener un valor específico, según lo determina la entrada al sistema. Industrialmente un sistema de control se podría denominar como “una caja negra” (figura 3.1.2), ya que se considera la relación entrada – salida y no es tan importante lo que tiene dentro. Entrada Salida Caja Negra Fig. 3.1.2 Sistema de control denominado “caja negra” Un sistema es de control si la salida se controla de modo que pueda adoptar un valor o cambio en particular de alguna manera definitiva. 6 3.4.1Analogías de primer orden Este concepto aplicado a sistemas de control, no es otra cosa que sustituir elementos de un sistema en otro, pero que estos tengan cierta similitud. 6 Ingeniería de Control, W. Bolton, pagina #1 47 Un ejemplo muy claro es: La respuesta de un sistema eléctrico RC, formado por un capacitor en serie con una resistencia y la aplicación súbita de voltaje (figura 3.1.3), tiene el mismo tipo de relación de respuesta de un sistema térmico, el cual puede ser un contenedor con liquido, a el cual se le aplica súbitamente una entrada de calor (figura 3.1.4). V en C1 t Fig. 3.1.3 Sistema RC y gráfica de respuesta en el tiempo V alterno ₪ Temperatura t Fig. 3.1.4 Sistema térmico y gráfica respuesta en el tiempo 48 La ventaja de estudiar los sistemas de esta manera es que aunque existe una amplia variedad de sistemas posibles, la relación entrada – salida tiende a muy similar y por lo tanto se hace más fácil analizar sistemas. 3.5 Controladores Un controlador es un elemento en el sistema de lazo cerrado que tiene como entrada la señal de error y produce una salida que se convierte en la entrada al elemento final de control. 3.5.1 Control proporcional Con el control proporcional la salida del controlador es directamente proporcional a su entrada; la entrada es la señal del error, e, la cual es una función del tiempo. Salida = KP e Donde KP es una constante llamada ganancia proporcional. La salida del controlador depende sólo de la magnitud del error en el instante que se considera. Este controlador es sólo un amplificador con ganancia constante 49 esto ayuda a que tienda a existir sólo sobre cierto intervalo de errores que se conoce como banda proporcional (figura 3.1.5) Fig. 3.1.5 Control proporcional Debido a que la salida es proporcional a la entrada, si la entrada al controlador es un error en la forma de un escalón, por lo tanto la salida también es un escalón, por lo que es una versión a escala de la entrada (figura 3.1.6). 0 Error t Salida del controlador t Fig. 3.1.6 Sistema con control proporcional. 50 3.5.2 Control integral Con el control integral la salida del controlador es proporcional a la integral de la señal de la señal de error e con el tiempo donde; t Salida = Ki ∫ e dt 0 Ki es la constante denominada ganancia integral. La figura 3.1.7, muestra lo que pasa cuando el error es la forma de un escalón, la integral entre 0 y t, así después de que el error comienza, el área se incrementa a razón regular, la salida del controlador se debe incrementar en una razón regular. Fig. 3.1.7 Control integral 51 3.5.3 Control derivativo Con la forma derivativa del controlador, la salida del controlador es proporcional a la razón de cambio con el tiempo del error e, es decir: Salida = K d de dt Kd es la ganancia derivativa y tiene unidades de s. La figura 3.1.8 muestra que pasa cuando hay un error de entrada de rampa, con el control derivativo, tan pronto como la señal de error inicia puede haber una salida de controlador muy grande, puesto que ésta es proporcional a la razón de cambio de la señal de error y no a su valor, de este modo puede proporcionar una acción correctiva grande antes de que se presente un error grande en realidad. Fig. 3.1.8 Control derivativo 52 3.5.4 Control proporcional integral (PI) La reducción en la estabilidad relativa como resultado de usar el control se puede resolver mediante el control PI, para esta combinación la salida del controlador es: t Salida = Kp e + K i ∫ e dt 0 En la figura 3.1.9, muestra el tipo de salida del controlador que se presenta con este sistema cuando existe una entrada de tipo escalón. Fig. 3.1.9 Control proporcional integral 53 La respuesta de este controlador deja un offset al tratar de aproximarse al setpoint tal como se aprecia en al figura 3.2.0, donde se toma considerando que el proceso ya está estabilizado. Fig. 3.2.0 Gráfica de respuesta de un PI, ente un error de tipo escalón. 3.5.5 Control P+I+D (PID) El control P+I+D, mejor conocido como: PID (Proporcional, Integral y derivativo). Estos 3 dispositivos forman parte del llamado grupo de la electrónica de control, la cual tiene como objetivo mantener su salida en un nivel predeterminado, para esta combinación la salida del controlador es: t Salida = KP e + Ki ∫ 0 e dt + Kd de dt 54 Como casi la totalidad de los reguladores, el PID es también un regulador lineal y aunque existen numerosos procesos que no son lineales, resulta más sencillo lineal- izarlos o aproximarlos a procesos lineales en lugar de utilizar reguladores no lineales, que son mucho más difíciles de ajustar, son muy complejos, o exigen un modelo matemático del proceso muy fiable. Las señales que con más frecuencia necesitan ser linealizadas son las que proceden de elementos sensores, por lo cual siempre es recomendable utilizar sensores lo mas lineales posibles, ya que los que no son lineales siempre es necesario tratar de hacer una aproximación para hacerlas lo mas lineales posibles. Ahora bien a diferencia del PI que produce un offset ante un error de tipo escalón, este controlador integra la acción D, que es la encargada de eliminar ese offset (figura 3.2.1), esta grafica se toma del sistema cuando ya se encuentra estabilizado. Fig. 3.2.1 Gráfica de respuesta de un PID, ente un error de tipo escalón. 55 Es usado en: 9 Procesos lineales: Se dice que un proceso es lineal cuando está formado por componentes que dan una salida proporcional a su entrada. Su representación gráfica es una recta que pasa por el origen de coordenadas (figura 3.2.1). 1.5 V -50 150 ºC -5.0 Fig. 3.2.1 Grafica correspondiente a un proceso lineal. 9 Procesos no lineales: Se dice que un proceso no es lineal cuando está formado por componentes que dan una salida que no proporcional a su entrada (figura 3.2.2). Fig. 3.2.2 Grafica correspondiente a un proceso no lineal. 56 CAPÍTULO IV DESARROLLO DEL PROYECTO 57 4.1 Sistema de lazo cerrado Como se muestra en la figura 4.1, todo el sistema corresponde a un ciclo de lazo cerrado, es decir, la entrada depende de la salida. LCD Recepción (µC) Transmisión LabVIEW LabVIEW Prog. de control PID ADC del µC Inst. Del termopar DAC a Cruce por 0 Resistencia eléctrica Trasmisión (µC) Manómetro Termopar Reactor Inicio Fig. 4.1 Diagrama de proceso correspondiente a un ciclo de lazo cerrado Una vez puesto en marcha este sistema, la regulación del elemento final de control (Resistencia eléctrica), se manipulará automáticamente por medio del PID desde LabVIEW, logrando así calentar más ó menos según el setpoint preseleccionado; una de las medidas de seguridad que se adoptaron para la medición de la presión, fue colocar una válvula de seguridad, para evitar el control de esta mediante elementos electrónicos que la pudieran soportar. 58 4.1.1 Diagrama de flujo para programa del µC Inicio Algo importante que hay que mencionar es el orden de lo que se quiere conseguir con el código de instrucciones; no es recomendable que haga tareas muy dispersas, ya que el µC * Cargar librerías. * Declarar variables. * Configurar puertos. > I/O, A/D. * Configurar velocidad de Transmisión y Recepción. * Preparar interrupción para recepción tiende a entrar en conflictos de ejecución o lo que es lo mismo: los llamados overload o desbordamientos. ¿Recepción completa? No Si Mover resultado de recepción al PORTD El diagrama de la figura 4.2, muestra cómo se lleva la ejecución del programa del µC; éste Leer Canal 0 de PORTA y realizar ADC se probó de diferentes órdenes y al parecer ¿Ya se realizo ADC? esta forma es la más indicada, ya que nunca No Si se tuvieron conflictos de ningún tipo, a comparación de las otras formas que se intentaron. Todo el programa se pude consultar en el anexo I. Convertir el resultado a ASCII Transmitir resultado ASCII, vía RS-232 ¿Transmisión completa? No Si Visualiza resultado ASCII en LCD Fig. 4.2 Diagrama de flujo del programa del µC Recibir datos vía RS-232 59 4.2 El microcontrolador (µC). La selección del µC PIC16F877 se debió a que ya se contaba con experiencia sobre la familia PIC16F87X, tanto en programación (software), como en circuitos que lo puedan soportar (hardware), además por las necesidades de diseño del sistema, ya que se requería un µC que contara con un número considerable de puertos. Este µC cuenta 40 pines, y 5 puertos (A, B, C, D, E). Puerto A (PORTA) ¾ Cuenta con 6 terminales (RA0/AN0 a RA5/AN5), de las cuales se pueden utilizar como entradas ó salidas digitales, y/o como solamente entradas analógicas contando con la posibilidad de tener: +VREF y -VREF; éstas combinaciones se realizarán configurando el registro ADCON1. Puerto B (PORTB) ¾ Cuenta con 8 terminales (RB0 a RB7); sus terminales pueden ser configuradas como entradas o salidas digitales; también se integran otras funciones como: una interrupción externa, una entrada de programación de bajo voltaje, entre otras, además por ser un puerto en el cual casi no residen funciones adicionales. Es el más indicado para colocar un periférico de salida o de entrada como un LCD ó un teclado matricial. 60 Puerto C (PORTC) ¾ Cuenta con 8 terminales (RC0 a RC7); sus terminales pueden ser programadas para entradas o salidas digitales, también se integran otras funciones especiales como: módulos comparadores, módulos de PWM, transmisión y recepción serial, programación I2C. Puerto D (PORTD) ¾ Cuenta con 8 terminales (RD0 a RD7); sus terminales pueden ser programadas para ser entradas ó salidas digitales, ó se puede programar para ser un puerto de trasmisor paralelo en forma esclavo, para realizar una interfaz a un microprocesador. Puerto E (PORTE) ¾ Cuenta con solamente 3 terminales (RE0 a RE2); al igual que los otros puertos, se puede programar como entradas ó salidas digitales, además este puerto puede llevar a cabo la transmisión paralela, ó puede ser la expansión del puerto A, es decir, también es un puerto que se puede configurar como entradas analógicas (AN5 a AN7), pero hay que tomar en cuenta que también se configura desde el registro ADCON1; en este µC se tiene que configurar el PORTA y el PORTE como si fuera un solo puerto. 61 4.2.1 Programación de inicialización del µC Necesariamente para iniciar la programación del µC, se necesita incluir el tipo de procesador del µC (solo bastará con escribir el número del componente), e incluir toda la librería correspondiente al procesador seleccionado, estos dos pasos son los principales y se escriben al inicio de todo el programa. LIST P=16F877A ; Selección de procesador #INCLUDE P16F877A.INC ; Se incluye toda la librería ; Correspondiente al procesador Después de haber configurado lo anterior se procede a configurar la llamada “palabra de configuración;” ésta se configura de la siguiente manera: <Tab> __CONFIG _CP_OFF&_DEBUG_OFF&_WRT_OFF&_CPD_OFF&_LVP_OFF&_BODEN _OFF&_PWRTE_ON&_WDT_OFF&_HS_OSC CP = Protección de código. DEBUG = Debugger. WRT = Escritura en la memoria EEPROM. CPD = Protección de código de la memoria EEPROM. LVP = Programación de bajo voltaje. 62 BODEN = Brown-on Reset enable bit. PWRTE = Power-up timer enable bit, y es activo en bajo. WDT = Watchdog timer Crystal = HS, XT, RC, LP Una vez ya configurada esta palabra acorde a las necesidades del programa y del programador (persona), se puede empezar a escribir todo el código del programa. 4.3 El termopar Para esta aplicación se seleccionó un termopar tipo “K”, ya que cuenta con un amplio intervalo de medición que va desde -270 ºC hasta 1372 ºC y teniendo una salida lineal en el orden de los mV (gráfica 4.3), además de ser uno de los termopares más utilizados, por lo tanto es más fácil de encontrar y a un precio relativamente bajo. mV 54.886 -270 1372 ºC - 6.458 Gráfica 4.3 La salida de este termopar está dada en el orden de los mV/ºC 63 La resolución de este sensor se obtiene mediante la formula que dice: ℜesolución = (Límite Superior De Salida) (Límite Superior De Entrada) − − (Límite Inferior De Salida) (Límite Inferior De Entrada) ( 54,886 mV ) ( 1372 º C ) − − ( − 6,458mV ) ( − 270 º C ) Por lo tanto: ℜesolución = Entonces: ℜesolución = 61,344 mV 1642 º C Por lo tanto: ℜ esolución = 0 , 0373 mV ºC Ó bien: ℜ esolución = 37 , 3 µ V ºC 64 4.3.1 Acondicionamiento de señal En el capítulo anterior se describió el comportamiento de un termopar, este se basa en el efecto “Seebek”, el cual mencionaba que necesita una parte fría ó punto de referencia; éste consiste en tener una referencia de un lado del circuito “termopar”, para tener del otro lado una circulación de corriente que circula por el circuito en el que existe un gradiente de temperatura. Para este caso se utilizo el diagrama de cómo referenciar a GND el termopar con el amplificador de instrumentación AD620 y el LT1025 (figura 4.4). Fig. 4.4 Diagrama de conexión de acondicionamiento del termopar 65 Ahora bien, al inicio del proyecto se utilizó un sensor que proporcionaba una resolución de salida de 10 mV/ºC; teniendo en cuenta que el termopar tiene una resolución de salida de 0.0373 mV/ºC (el LT1025, proporciona en la parte fría una referencia de 40.6 µV/ºC, por lo que la señal se tiene que estandarizar a ésta) es necesario que se pueda igualar la resolución de salida que proporciona el termopar hasta 10 mV/ºC; ésto se logra amplificando la señal del termopar con el AD620, el cual en sus hojas de especificaciones contiene 2 fórmulas, una de ellas es para calcular la ganancia teniendo como base la resistencia (figura 4.5), y otra que calcula la resistencia de amplificación teniendo como base la ganancia (figura 4.6). G = 49,4 KΩ Rg + 1 Fig. 4.5 Fórmula de la Rg = 49,4 KΩ G −1 Fig. 4.6 Fórmula del cálculo de resistencia ganancia Para saber exactamente cuál es la ganancia, se tiene que sólo bastará con dividir el valor que se tiene como referencia que son 10 mV/ºC, sobre el que proporciona el termopar que son 0,0406 mV/ºC, es decir: K = 10 mV º C = 246.3050 0,0406 mV º C 66 Se tiene que el resultado de esta operación es de 246.3050, que corresponde a la ganancia, pero se necesita saber el valor de la resistencia que llevará este amplificador, ésta se calcula por medio de fórmula de la fig. 4.4 Si G = 246.3050 y entonces: Rg = Por lo tanto se tiene que Rg Ó bien: Rg = 201 .381 = 49,4 KΩ 246.3050 − 1 0 , 201381 KΩ Ω 4.3.2 Digitalización de la señal del termopar El µC PIC16F877, trae integrado un módulo de Conversión Analógica a Digital, el cual se muestra en la siguiente figura: Figura 4.7 Módulo de ADC del µC. 67 La entrada proveniente del sensor análogo, carga un condensador de muestro, el cual produce una salida debido a su carga y descarga; la salida del condensador de muestro es la entrada al circuito “Sampling Switch”. El convertidor entonces genera un resultado digital de este nivel análogo vía la aproximación sucesiva. La conversión ANALÓGICO A DIGITAL de la señal análoga se convierte en resultados binarios (1’s y 0’s), con una revolución de 10 bits. Una de las especificaciones que el fabricante menciona es que la fuente análoga tenga una impedancia de salida de menos de 10 KΩ, para obtener una óptima conversión. En este caso la fuente analógica, provendrá de amplificadores los cuales tienen una impedancia de salida muy baja, y por ello la conversión será óptima. 4.3.3 Programa de conversión a/d del µC Para que el módulo de A/D funcione es necesario llevar a cabo unos cuantos pasos para obtener el programar de A/D del µC: 1.- Configurar el registro del ADCON1 (ver figura 4.8) Fig. 4.8 Configuración de palabra del registro ADCON1 68 El bit 7: este bit indicará si el resultado de la conversión A/D, estará justificada a derecha (1) ó izquierda (0); es decir, si se justifica a la derecha los dos bits más significativos se encontrarán en el ADRESH, y los ocho bits menos significativos en el ADRESL; si es justificado a la izquierda, los ocho bits más significativos se encontrarán en el ADRESH, y los dos menos significativos se encontrarán en el ADRESL, como se muestra en la figura 4.9. Los bits 6, 5, 4, son no implementados, por lo que solo bastará con escribir, un “0” en cada uno de estos bits. Fig. 4.9 Diagrama ilustrativo de la colocación del resultado de la conversión A/D, según a donde sea justificado. Los bits restantes corresponden a la tabla de la figura 4.1.0: 69 Tabla 4.1.0 Control de configuración de terminales de puertos A y E En esta tabla se selecciona qué terminales del los puertos A y E son entradas analógicas y cuáles entradas ó salidas digitales; para este caso se necesitan del puerto A, dos canales analógicos, +VREF; y del puerto E, las tres terminales digitales, por lo que se escriben: Bit 3 (PCFG3) a bit 0 (PCFG0) = 0101 2.- Una vez configurado el registro ADCON1, se prosigue a configurar el registro ADCON0 (figura 4.11) Fig. 4.1.1 Configuración de palabra del registro ADCON0. 70 Bit 7 y 6 (ADCS1 y 0): Estos dos bits corresponden a la frecuencia del oscilador, para este caso como es uno de 20 MHz, se escribe: “1 en el bit 7 y en el 6 un “0” Los 3 bits siguientes (CHS2, 1, 0), corresponden al canal o terminal del puerto análogo del µC, para este caso solo se lee el canal “0” (RA0/AN0), por lo que sólo se escribe: CHS2, CHS1, CHS0 = “0” El bit 2 (GO/DONE), es el bit que se encuentra en “1”, inicializa el módulo del convertidor, indicando en qué momento ése realizaré la conversión A/D, y si está en “0” reestablecerá todo el módulo A/D dejándolo listo para llevar a cabo la siguiente A/D, por lo que se escribe: GO/DONE = 0, dejando así el módulo reestablecido, después se tendrá que encender este bit. Otra función de este bit, es que actúa como bandera indicando cuando la conversión A/D, se ha completado, en este caso se verifica por el método de poleo. 71 El bit 1, no está implementado, por lo que sólo se escribe un “0” El bit 0 (ADON), indicará si el módulo del convertidor está activado ó desactivado, para este caso se necesita activado, por lo que se escribe: ADON = 1. Código de configuración de los registros ADCON0, ADON1 y del módulo del convertido A/D. BSF BCF STATUS,5 STATUS,6 MOVLW MOVWF B'00000101' ADCON1 BCF BCF STATUS,5 STATUS,6 RUN_ADC MOVLW MOVWF BSF BCF B'10000001' ADCON0 ADCON0,ADON PIR1,ADIF ;BANCO '1' ;+VRef 2.56. ;BANCO '0' ;CRYSTAL DE 20 MHz. ;ENCIENDE EL CONVERTIDOR. ;LIMPIA FLAG DE CONVER. NOP NOP GO_ADC BSF ADCON0,GO_DONE ;INICIO DE CONVER. WAIT_ADC BTFSC GOTO ADCON0,GO_DONE WAIT_ADC ;ESPERA QUE FINALICE ;LA CONVERSIÓN ESTA COMPLETA Y SE ENCUENTRA EL ADRESH Y ADRESL. 72 Una vez que se tiene el resultado de la conversión A/D, en el ADRESH este se tiene que mover a una variable de propósito general como lo es “W”, pero hasta aquí sólo son “1” y “0”, ahora se necesita de una librería o subrutina que convierta estos valores lógicos a valores ASCII, para enviarlos vía RS-232 y después desplegarlos en el LCD, por lo que se tiene el siguiente programa que convierte de binario a ASCII: MOVF MOVWF CLRF CLRF CLRF ADRESH,W HEXADECIMAL ASCII_H ASCII_M ASCII_L CENTENAS MOVLW SUBWF BTFSS GOTO MOVWF INCF GOTO D'100' HEXADECIMAL,W STATUS,C DECENAS HEXADECIMAL ASCII_H,F CENTENAS ; D’100’ --> W ; HEXADECIMAL - D'100' --> W ; ¿ HEXADECIMAL ES MENOR QUE D'100' ? ; SI ; SALVA EL RESTO ;INCREMENTA EL CONTADOR DE CENTENAS ; VUELVE POR OTROS D'100' DECENAS MOVLW SUBWF BTFSS GOTO MOVWF INCF GOTO D'10' HEXADECIMAL,W STATUS,C UNIDADES HEXADECIMAL ASCII_M,F DECENAS ;D'10' --> W ;HEXADECIMAL - D'10' --> W ;¿ HEXADECIMAL ES MENOR QUE D'10' ? ;SI ;SALVA EL RESTO ;INCREMENTA EL CONTADOR DE DECENAS ;VUELVE POR OTROS D'10' UNIDADES MOVF MOVWF CLRF HEXADECIMAL,W ASCII_L HEXADECIMAL ;EL RESTO PERTENECE ;A LAS UNIDADES BCD ;PONE A CERO EL REGISTRO HEXADECIMAL BCD_A_ASCII MOVLW IORWF IORWF IORWF GOTO H'30' ASCII_L,F ASCII_M,F ASCII_H,F TRANSMISON ;H'30' --> W ;CONVIERTE DE BCD A ASCII ;CONVIERTE DE BCD A ASCII ;CONVIERTE DE BCD A ASCII ;RETORNA ;W = HEXADECIMAL = ADRESH ;PARA BCD D'0' ;PARA BCD D'0' ;PARA BCD D'0' 73 Después de haber convertido los valores binarios a ASCII, se tiene en 3 variables que son: ASCII_H (Centenas), ASCII_M (Decenas) y ASCII_L (Unidades), por lo que ahora si se pueden mandar sin ningún problema de interpretación. 4.4 Interfaz hacia la PC Antes de realizar alguna operación de transmisión o recepción con el µC, es necesario contar con un CI (circuito integrado) que realice la estandarización en los niveles de voltaje del µC con el puerto serial, ya que: El µC maneja niveles de voltaje de 0 VCC (que corresponde a un “0”) a +5 VCC (que corresponde a un “1”) (figura 4.1.2). V +5 VCC = “1” 1 0 0 VCC ó GND = “0” t Fig. 4.1.2 Determinación de los niveles lógicos con respecto al voltaje para el µC 74 Mientras que: El puerto serial maneja niveles de voltaje de -12 VCC (que corresponde a un “0”) a +12 VCC (que corresponde a un “1”) (figura 4.1.3). +12 VCC = “1” GND -12 VCC = “0” 1 GND 0 Fig. 4.1.3 Determinación de los niveles lógicos con respecto al voltaje para RS-232 4.4.1 MAX-232. Este integrado, tiene la capacidad de realizar un estándar entre los niveles de voltaje tanto del µC, ya que son TTL, como del puerto serial, que son RS232 (figura 4.1.4). 75 +12V +5 RS232 µC 0VCC ó -12VCC Fig. 4.1.4 Gráfica comparativa de niveles de voltaje. Dispone internamente de 4 conversores de niveles TTL al bus Standard rs232 y viceversa. Este CI, contiene internamente 2 convertidores de nivel TTL a RS-232, y otros 2 de RS-232 a TTL, por lo que se disponen de 4 canales para manejar estas señales y solamente se utilizarán: TX y RX. Para que este CI funcione adecuadamente es necesario conectar 4 capacitores, y alimentar lo con +5 VCC y 0VCC o bien GND, (figura 4.1.5). 0.1 µF 0.1 µF 0.1 µF 0.1 µF Vcc C1 + Vcc V + GND C1 - T1out Rx C2 + R1in Tx C2 - R1out Rx V- T1in Tx T2 out R2 in RS-232 TTL T2 in R2 out Fig. 4.1.5 Diagrama de conexiones de capacitores para RX y TX 76 Ahora solo habrá que conectar las terminales de transmisión (RC6) y recepción (RC7) del µC a este integrado para realizar operaciones tanto de transmisión como de recepción. 4.5 Transmisión de datos vía RS-232 Una vez completada la fase de la interfaz hacia la PC, ya se puede realizar la transmisión de las variables: ASCII_H, ASCII_M y ASCII_L, que contienen el valor de la temperatura. Para empezar a transmitir es necesario configurar al registro TXSTA (figura 4.1.6) Fig. 4.1.6 Palabra de configuración del registro de transmisión. El bit 7 (CSRC), este bit indica si la fuente de reloj para transmitir será interna utilizando el BRG ó externo, para este caso será interno, por lo que se escribe: CSRC = 1 El bit 6 (TX9), indica si la transmisión se realizará a 9 ó 8 bits, en este caso se necesita solo a 8 bits, por lo que se escribe: 77 TX9 = 0 El bit 5 (TXEN), este bit habilita o deshabilita la transmisión, para este caso se necesita habilitado, por lo que se escribe: TXEN = 1 El bit 4 (SYNC), este bit indica el modo de transmisión, sincronía o bien asíncrona, en este caso se seleccionó la asíncrona, por lo que se escribe: SYNC = 0 El bit 3 no es implementado por lo que se escribe un “0” El bit 2 (BRGH); indica si la velocidad de transmisión es alta o baja, para este caso se requiere una velocidad de transmisión de 9600B, por lo que se considera alta, de tal forma que se escribe: BRGH = 1 El bit 1 (TRMT); este bit actúa como bandera indicando si el dato a sido transmitido o aun no, inicialmente se escribe: 78 TRMT = 0 El bit 0 (TX9D), este bit actúa como bandera de paridad, o comprueba si el dato a trasmitir a 9 bits ha sido enviado o aun no, puesto que no se utiliza en este caso, se escribe: TRMT = 0 Código correspondiente a la configuración del registro TXSTA, y a la transmisión de ASCII_H, ASCII_M, ASCII_L: BSF BCF STATUS,5 STATUS,6 MOVLW MOVWF B'10111111' TRISC MOVLW MOVWF MOVLW MOVWF B'00100100' TXSTA .71 SPBRG BCF BCF STATUS,5 STATUS,6 ;BANCO '0' BSF RCSTA,SPEN ;HABILITAMOS EL PUERTO SERIAL ;BANCO '1' ;PINES RC7/RX, Y RC6/TX ; CRYSTAL DE 20 MHZ A 9600 BAUDS TRASMISON ;MANDO EL ASCHII_H BCF BCF STATUS,5 STATUS,6 MOVF MOVWF ASCII_H,W TXREG ;BANCO '0' ;ASCII_H = W ;W = TXREG 79 BSF BCF STATUS,5 STATUS,6 COMP_ASCII_H BTFSS GOTO TXSTA,1 COMP_ASCII_H ;BANCO '1' ;¿MANDO ASCII_H? ;NO ;SI ;MANDO EL ASCII_M BCF MOVF MOVWF BSF BCF STATUS,5 ASCII_M,W TXREG STATUS,5 STATUS,6 COMP_ASCII_M BTFSS GOTO TXSTA,TRMT COMP_ASCII_M ;BANCO '0' ;ASCII_M = W ;W = TXREG ;BANCO '1' ;¿MANDO ASCII_M? ;NO ;SI ;MANDO EL ASCII_L BCF STATUS,5 ;BANCO '0' MOVF MOVWF ASCII_L,W TXREG ;ASCII_L = W ;W = TXREG BSF BCF STATUS,5 STATUS,6 ;BANCO '1' COMP_ASCII_L BTFSS GOTO CALL BCF GOTO TXSTA,TRMT COMP_ASCII_L DELAY_5MS STATUS,5 LCD ;¿MANDO ASCII_L? ;NO ;SI ;BANCO '0' Una vez ejecutado todo el anterior programa, se puede tener la certeza de que estas tres variables ya se trasmitieron satisfactoriamente y se puede realizar cualquier operación con ellas desde la PC. 80 4.6 El LCD Los LCD’s (Liquid Crystal Display) (figura 4.1.7), son periféricos de salida muy flexibles, eficaces y económicos, siendo los µC los dispositivos más adecuados y simples para controlar este tipo de pantallas, (Ver anexo II). Fig. 4.1.7 LCD de 16 X 2. Normalmente los LCD’s de 16X2 (16caracteres por 2 filas) tiene 14 terminales de las cuales: ¾ Del 14 al 7 (D0 a D7), se utilizan para representar el valor en ASCII, para posteriormente ser desplegados en el LCD. ¾ Del 6 al 4 (E, R/S, RS), se para controlar las funciones principales que son: E = Habilita (1) ó deshabilita (0) el LCD. R/W = Lectura y escritura, si es 0 escribe, si es 1 es leído. RS = Selección de registro, si es 0 controla, si es 1 es un dato. 81 ¾ Del 3 al 1 (V0, VDD y GND), estos son la alimentación y el contraste de visualización. V0 = Contraste de Visualización. VDD = + 5 Vcc de la fuente de alimentación. GND = Tierra de la fuente. Todos lo periféricos de salida para funcionar correctamente necesitan de una librería que los controle y los LCD no son la excepción por lo se necesita un programa que los pueda inicializar, el siguiente programa fue modificado por las necesidades del sistema, pero funciona bajo el mismo principio que el original que se encontró en el libro: Microcontroladores PIC principios y aplicaciones, Pág. 331. Programa modificado, que controla el LCD. LCD_E BSF NOP NOP NOP BCF RETURN LCD_BUSY BSF BSF MOVLW MOVWF BCF BSF NOP L_BUSY BTFSC GOTO PORTE,2 ;ACTIVA SEÑAL E PORTE,2 ;ESPERA 3US ;DESACTIVA SEÑAL E PORTE,1 STATUS,RP0 0XFF TRISB STATUS,RP0 PORTE,2 ; LCD EN MODO LECTURA ;SELECCIONA EL BANCO 1 ;PORTB ACTÚA DE ENTRADA ;SELECCIONA EL BANCO 0 ;ACTIVA EL LCD (SEÑAL E) PORTB,7 L_BUSY ;CHEQUEA EL BIT BUSY ;ESTA "1" (OCUPADO) 82 BCF BSF CLRF BCF BCF RETURN PORTE,2 STATUS,RP0 TRISB STATUS,RP0 PORTE,1 ;DESACTIVA EL LCD (SEÑAL E) ;SELECCIONA EL BANCO 1 ;PORTB COMO SALIDA ;SELECCIONA EL BANCO 0 ; LCD EN MODO ESCRITURA LCD_REG BCF MOVWF CALL GOTO PORTE,0 PORTB LCD_BUSY LCD_E ;DESACTIVA RS (MODO INSTRUCCIÓN) ;SACA EL CÓDIGO DE INSTRUCCIÓN ;ESPERA A QUE SE LIBERE EL LCD ;GENERA PULSO EN SEÑAL E LCD_DATOS BCF MOVWF CALL BSF GOTO PORTE,0 PORTB LCD_BUSY PORTE,0 LCD_E ;DESACTIVA RS (MODO INSTRUCCIÓN) ;VALOR ASCII A SALE POR PORTB ;ESPERA A QUE SE LIBERE EL LCD ;ACTIVA RS (MODO DATO) ;GENERA PULSO EN SEÑAL E LCD_INI MOVLW CALL CALL MOVLW CALL CALL MOVLW CALL CALL RETURN B'00111000' LCD_REG DELAY_5MS B'00111000' LCD_REG DELAY_5MS B'00111000' LCD_REG DELAY_5MS ;CÓDIGO DE INSTRUCCIÓN ;TEMPORIZA 5 MS. ;CÓDIGO DE INSTRUCCIÓN ;TEMPORIZA 5 MS. ;CÓDIGO DE INSTRUCCIÓN ;TEMPORIZA 5 MS. ;DELAY_5MS GENERA UNA TEMPORIZACIÓN DE 5MS NECESARIO PARA LA SECUENCIA DE INICIO DEL LCD DELAY_5MS MOVLW MOVWF PLOOP0 MOVLW MOVWF PLOOP1 MOVLW MOVWF PLOOP2 CLRWDT DECFSZ GOTO DECFSZ .19 PDEL0 ; 375000 CICLOS ; 1 SET NUMERO DE REPETICION (C) ;1 .79 PDEL1 ; 1 SET NUMERO DE REPETICION (B) ;1 .228 PDEL2 ; 1 SET NUMERO DE REPETICION (A) ;1 PDEL2, 1 PLOOP2 PDEL1, 1 ; 1 CLEAR WATCHDOG ; 1 + (1) ES EL TIEMPO 0 ? (A) ; 2 NO, LOOP ; 1 + (1) ES EL TIEMPO 0 ? (B) 83 GOTO DECFSZ GOTO PDELL1 GOTO PDELL2 CLRWDT RETURN PLOOP1 PDEL0, 1 PLOOP0 ; 2 NO, LOOP ; 1 + (1) ES EL TIEMPO 0 ? (C) ; 2 NO, LOOP PDELL2 ; 2 CICLOS DELAY ; 1 CICLO DELAY ; 2+2 FIN. Con este programa se mandarán los datos ó los comandos necesarios, si es un comando, solo bastará con moverlo al LCD_REG, y si es un dato a LCD_DATO, con esto será más que suficiente para escribir en el LCD. 4.7 Adquisición de datos y control PID desde LabVIEW Antes de realizar cualquier actividad en LabVIEW de tipo adquisición o transmisión, es necesario contar con los drivers de configuración, ya que éstos se encargarán de realizar cualquier actividad que sea necesaria para adquirir o enviar datos. Este software proporciona un ambiente de trabajo totalmente gráfico, por lo que es relativamente fácil llevar a acabo una programación en él; además de contar con los iconos de configuración (figura 4.1.8), lectura (figura 4.1.9) y escritura (figura 4.2.0) del puerto serial. Fig. 4.1.8 Icono de Fig. 4.1.9 Icono de Fig. 4.2.0 Icono de config. de puerto lectura de puerto escritura de puerto 84 4.7.1 Diagrama de flujo para realizar software en labVIEW. Inicio El diagrama de flujo de la figura 4.2.1, muestra el orden de la Configuración del puerto serial programación necesaria en este software, tanto para recibir Lectura del puerto serial. información, como para graficarla e indicarla y lo más importante que es el control de temperatura por Graficar e indicar el valor leído. medio del icono del PID, y una vez que se obtiene se digitaliza en una Control PID palabra de 8 bits, misma que se manda por LabVIEW a través el Digitalizar la salida del PID, en 8 bits puerto serial al microcontrolador. Enviar esta señal al µC Fig. 4.2.1 Diagrama de flujo de programa en LabVIEW. 85 4.7.2 Configuración, escritura y lectura de puerto Tanto la configuración como el modo de lectura del puerto serial se tiene que colocar en un sequence structure (figura 4.2.2), ya que es necesario configurar el puerto y leerlo. Fig. 4.2.2 Estructura de un sequence structure. Configuración: La imagen de la figura 4.1.8, muestra el icono de configuración de puerto, pero para que pueda funcionar es necesario agregarle (figura 4.2.3): el número de puerto a leer, la velocidad de recepción, el número de bits a leer, y si habrá algún evento de paridad. Fig. 4.2.3 Configuración de puerto serial en un sequence structure. 86 Ahora bien, una vez configurado el puerto el siguiente paso es mandar un numero para inicializar todo, los próximos ya serán los correspondientes al PID, en la figura 4.2.4, se puede observar que solo hay que tener el icono de escritura que proporciona LabVIEW para esta tarea, indicarle el nombre del puerto y lo que se enviará. Fig. 4.2.4 Cableado del icono para escribir por el puerto serial. El siguiente paso a realizar es el de lectura del puerto serial, la figura 4.2.5, se puede observar qué se puede observar que solo hay que tener el icono de lectura que proporciona LabVIEW para esta tarea, indicarle el nombre del puerto y numero de bits a leer. Fig. 4.2.5 Cableado del icono para leer el puerto serial. 87 4.7.3 Graficar los valores recibidos Ahora sólo hay que graficar los valores recibidos; como se puede apreciar en el cableado, éste es de color rosa, eso indica que el valor recibido está colocado en una variable de tipo “String” ó alfanumérica, por lo tanto se pude cablear directamente, ya que sólo grafica variables de tipo numérico, además de que los datos recibidos vienen en caracteres separados; es decir, no es una sola cifra sino son cuatro valores unitarios, por lo que es necesario colocarlos en un arreglo para que dejen de ser 4 números y pasen a ser solo una cifra de 4 dígitos, por lo que se recurre al icono de la figura 4.2.6, en el que sólo habrá que indicarle la fuente y de qué longitud será la cantidad, y para trasformarlo de la variable “String” a una variable de tipo numérica, como se muestra en el icono de la figura 4.2.7, donde solo habrá que indicarle la fuente y a dónde se cableará el resultado que en este caso se quiere que se indique en una gráfica (figura 4.2.8); a este resultado se le llamará variable de proceso ya que proviene del proceso directamente. Fig. 4.2.8 Fig. 4.2.6 Fig. 4.2.7 88 4.7.4 Control PID El módulo de control PID (figura 4.2.9) de LabVIEW, representa un esquema muy complejo dentro de los parámetros de control, pero debido a que este software maneja solo iconos, es relativamente fácil operar este módulo, ya que solo bastará con indicarle: Fig. 4.2.9 Módulo de PID El setpoint: este estará dado por el usuario, y se podrá controlar por medio de una perilla (figura 4.3.0) y un indicador (figura 4.3.1). 4.3.0 Control de setpoint 4.3.1 Indicador de setpoint Variable de proceso: esta variable no es otra cosa que la temperatura actual del proceso o del reactor, es decir, la variable numérica que se está graficando. 89 Valores de las variables P + I + D) a tomar (figura 4.3.2) Fig. 4.3.2 Valores de variables P + I + D El intervalo de salida; ésta salida es en forma porcentual (figura 4.3.3), y se indicará el intervalo de control; es decir, se indicará la máxima y la mínima del proceso en tanto porcentual. Fig. 4.3.3 Intervalo de salida del PID. Indicador de salida (figura 4.3.4); éste solamente tendrá la función de indicar el tanto porcentual del control. Fig. 4.3.4 Indicador de salida del PID 90 4.7.5 Conversión del error del PID, para ser enviado por RS-232 Para realizar esta conversión del error que proporciona el modulo de PID, se tienen que realizar 2 pasos, para convertir esta señal de error, y así enviarla por RS-232 (figura 2.3.5). 1.- Cablear la salida del PID a un icono de “build array”, esto para tenerlo en un arreglo con fines estratégicos. 2.- A la salida del “build array”, este se cable al icono “bit array to string”, esto para cambiarlo a una variable de tipo string y a ASCII, para posteriormente enviarlo al µC. Fig. 2.3.5 Conversión del error del PID, y envió del mismo 91 4.8 Cruce por cero La teoría de funcionamiento de esta técnica está basada en sincronizar una onda de tipo rampa con una de tipo senoidal; es decir cada, vez que la onda senoidal cruce por cero, se dispara una onda de tipo rampa (gráfica 4.3.6). Fig. 4.3.6 Sincronización de onda senoidal con una onda de rampa. Ahora bien, la onda senoidal no proviene de la línea de 127 VPP de C.A directamente, si no que se obtiene de un trasformador de 24 VPP. C.A. Para trazar la onda de rampa es necesario construir un circuito que realice tal actividad, por lo que se recurre al diagrama de la figura 4.3.7, la descripción de este es: Al tener una onda senoidal proporcionada por el transformador se compara, al final se pasa a un circuito integrador, éste trazará la rampa al momento de que la onda senoidal cruce por “0”, y esta rampa se compara con un +VCOM proporcionado por un DAC, y es pulso de comparación irá directamente a la fase se potencia. 92 V1 120 V 60 Hz 0Deg 2 T1 4 D1 1 TS_PQ4_24 3 1B4B42 VDD 12V VDD 1.00kOhm_1% 4 C1 D2 VEE -12V 1 2 LM324AJ 1N4007GP 4 R7 R3 1.0kOhm_5% 100kOhm_1% C2 D3 R6 VEE -12V 14 2 LM324AJ LM324AJ 11 VEE -12V 1 13 Q2 8 100uF-POL 11 3 U1C 10 9 U2A U1D 12 11 4 4 0.1uF 100uF-POL 11 12V 2N3904 C3 U1A 3 R2 1.0kOhm_5% Q1 R5 R1 15.0kOhm_1% LM324AJ 1N4007GP R9 1.00kOhm_1% 1.00kOhm_1% 2N3904 R4 1.0kOhm_5% C4 VEE -12V 0.1uF R8 100kOhm_1% 4 4 U1B 5 7 6 5 U2B 7 6 11 11 LM324AJ LM324AJ Fig. 4.3.7 Diagrama del circuito de cruce por cero. 93 Todo lo anterior lo describe la gráfica de la figura 4.3.8. Ahora que ya se obtuvo la rampa; esta siempre se estará comparando por medio de 12 Vpp t Transformador amplificadores operacionales, y éste se saturara el tiempo que dure el pulso; a su vez, éste pulso será el que controle + 11 Vcc + Vcom la corriente que se deje fluir t a la fase de potencia (fig. 4.3.9) ya que éste controlará Pulso dirigido al Gate de los SCR’s Pulso directamente a la resistencia Pulso t eléctrica, dejando fluir la corriente solo lo que dure el pulso; éste tiempo estará dado 127 Vpp Línea (CFE) t por +VCOM que provendrá de un DAC de 8 bits el MC1408; los 8 bits provendrán de la digitalización PID de LabVIEW, de este modo se Fig. 4.3.8Descripción gráfica del control obtiene un óptimo control de de la Resistencia eléctrica. 94 La fase de potencia (figura 4.3.9, muestra el arreglo de los SCR’s, que son los que directamente controlan el flujo de corriente, y este flujo proviene del pulso producido por la saturación de los amplificadores operacionales. La función de los CI MOC3011 (optoacopladores salida transistor), es el pulso de saturación que ofrecen los amplificadores operacionales; éstos optoacopladores la convierten por medio del transistor en una salida o un pulso de + 12 VCC, que se inyectan a las “Gate” ó compuertas de los SCR’s, para realizarse el control sobre la resistencia eléctrica. Fig. 4.3.9 Diagrama de fase de potencia. 95 CAPÍTULO V EVALUACIÓN ECONÓMICA Y RESULTADOS OBTENIDOS 96 5.1 Evaluación económica Los materiales son elementos básicos que se transforman en productos terminados a través del uso de la mano de obra y de los costos indirectos de fabricación en el proceso de producción. Los costos de los materiales pueden ser directos e indirectos, los materiales directos son aquellos que pueden identificarse con la producción de un articulo terminado, que pueden asociarse fácilmente al producto y que representan un costo importante del producto terminado. Los materiales indirectos son los demás materiales o suministros involucrados en al producción de un articulo que no se clasifican como materiales directos, es decir, materiales ocupados pero que no desempeñan una función trascendente. En la tabla 5.1 se describen los materiales directos utilizados en la fabricación del sistema donde además de incluye la cantidad del material. 97 Cantidad Descripción Precio ($) 1 Termopar tipo “K” 330.00 1 Par de clavijas para termopar tipo “K” 110.00 1 Resistencia eléctrica, tipo abrazadera 380.00 1 µC, PIC16F877A 120.00 1 LCD 16X2 125.00 1 MAX-232 6.00 1 LT1025 110.00 1 AD620 120.00 1 MC1408 26.00 2 LM324 10.00 4 Trimpot 40.00 8 Clémas 25.00 2 Mts. De alambre 3.00 2 Mts. De cable 3.00 Misceláneos Resistencias, capacitores, led’s, tiras de pines 100.00 1 Manómetro de acero inoxidable 5 Kg/cm2 790.00 Total $ 2’ 298.00 Tabla 5.1 Lista de materiales. 98 5.2 Resultados obtenidos Este instrumento de control de temperatura ofrece un óptimo desempeño durante intervalos de más de 30 hrs. constantes de trabajo, todo esto previamente probado, sobre el control del proceso sin contar el tiempo de ascenso de la temperatura. Como medida de seguridad se adoptó que sólo con la ayuda de una PC, y el programa que se elaboró en LabVIEW, éste reactor funcionaría, y de un principio se debe conectar a la terminal del puerto serie de la PC con el instrumento, solo así éste podrá realizar el control, el cual cumple satisfactoriamente los parámetros especificados con una variación de: ± 4 °C , en la etapa de estabilización del proceso, una vez estabilizado se tiene una variación de : ± 1.5º C . El intervalo de mínimo y máximo capaz de mostrar en el LCD, es de 0ºC a 255ºc, debido a que la temperatura promedio de trabajo del reactor fue de 150ºC, se puede considerar que este instrumento es capaz de ser utilizado en otras aplicaciones a futuro sin que se modifique gran parte del instrumento. Otra medida de seguridad que se adoptó en caso de que el instrumento llegarse a fallar, fue que, cuando la temperatura excediera 10ºC mas allá del setpoint preestablecido, el programa de control realizado en LabVIEW, mandaría una señal de FFH , provocando 99 con esto que resistencia dejara de calentar y el µC, se quedara en un Loop infinito hasta ser reestablecido. Especificaciones del instrumento: Alimentación: ± 12 Vcc y 5 Vcc. Comunicación: serial RS-232. Intervalo de operación: 50 ºC a 255 ºC Velocidad de transmisión: 9600 Bauds. Error en la transmisión: 0%. Enlace: Full-Duplex. Resistencia calefactora: 35 Ω. Potencia la resistencia eléctrica: 500 W. Alimentación eléctrica: 127 Vac. Transformador: 127 Vac a 24 Vac a 1 A. 100 CONCLUSIONES 101 Siempre al realizar cualquier proyecto sea de tipo: mecánico, eléctrico, electrónico, etc. Se debe buscar aprovechar todo recurso que proporcione el componente, y no tener componentes que realicen funciones complejas y estén realizando funciones básicas, ya que esto implica una perdida de dinero y recursos. La implementación de µC’s PIC, es una de las opciones más adecuadas, ya que se cuentan con familias con diferentes características dando así la oportunidad de seleccionar un µC adecuado para las diferentes aplicaciones. Dentro de esta aplicación la utilización del PIC16F877A, cumple con los requerimientos óptimos, ya que es aprovechado un 76 % de sus terminales disponibles y un 85% de espacio de memoria disponible para programar, con ello se demuestra que este µC cuenta con una aprovechamiento óptimo para realizar esta actividad. El control PID es un gran aliado para mantener dentro de los parámetros establecidos gran cantidad de variables, tales como: presión, temperatura, nivel, velocidad, etc., este se puede realizar con amplificadores operacionales, y virtuales, tal como se utilizo para mantener el control en esta aplicación, realizándolo desde LabVIEW, y después mandando la señal de error, vía RS-232. 102 Al final es un poco complicado realizar este tipo de control de la forma virtual, pero el resultado que se obtiene en el control es muy satisfactorio. Ésta experiencia profesional me brindó la oportunidad de reafirmar una vez más que este camino profesional es el más adecuado para mí, ya que durante mi estancia en éste prestigiado centro de investigaciones, obtuve conocimientos mas avanzados acerca del control y todo lo que implica éste, así como perfeccioné mis técnicas sobre construcción y diseño de circuitos impresos, además aprendí y perfeccioné más mis conocimientos de programación de microcontroladores. 103 BIBLIOGRAFÍA 104 Bibliografía Franco, Sergio. DISEÑO CON AMPLIFICADORES OPERACIONALES Y CIRCUITOS INTEGRADOS ANALÓGICOS. 3ª. Ed. U.S.A McGraw-Hill. 2002, 680 págs. Bolton, William. INGENIERÍA DE CONTROL 2ª. Ed. U.S.A Alfaomega. 2004, 397 págs. Angulo Usartegui, José Mª. Angulo Martínez, Ignacio. MICROCONTROLADORES PIC, DISEÑO PRÁCTICAS DE APLICACIONES, PRIMERA PARTE 3ª. Ed. México D.F. McGraw-Hill. 2003, 197 págs. Angulo Usartegui, José Mª. Romero Yesa, Susana. Angulo Martínez, Ignacio. MICROCONTROLADORES PIC, DISEÑO PRÁCTICAS DE APLICACIONES, SEGUNDA PARTE 1ª. Ed. México D.F McGraw-Hill. 2002, 185 págs. Tocci, Ronald J. SISTEMAS DIGITALES, PRINCIPIOS Y APLICACIONES 105 6ª. Ed. U.S.A Alfaomega 1996, 833 págs. Creus Solé, Antonio. INSTRUMENTACIÓN INDUSTRIAL 5ª. Ed. Barcelona España Alfaomega 1993, 732 págs. Páginas Web: Ing. Silvia Medrano Guerreo, Termopares, consulta al 30 de mayo de 2006, http://www.metas.com.mx Ing. Noel Gutiérrez, Tipos de Presión & Vacío, consulta al 30 de mayo de 2006, http://www.metas.com.mx Microchip, 33023a_MID_RANGE, consulta al 02 de mayo de 2006, http://www.microchip.com Nacional Semiconductor, Datasheet , consulta del 02 al 10 de mayo de 2006, http://www.nationalsemiconducor.com On Semiconductor, DatasheetArchive, consulta del 05 de mayo de 2006, http://datasheetarchive.com 106 ANEXO I 107 LIST #INCLUDE P=16F877A P16F877A.INC __CONFIG _CP_OFF&_DEBUG_OFF&_WRT_OFF&_CPD_OFF&_LVP_OFF&_BODEN_OFF&_PWRTE_ON&_WDT_OFF&_HS_O SC CBLOCK PDEL0 PDEL1 HEXADECIMAL ASCII_H ASCII_M ASCII_L TEMP DIGITO R_ERROR CHECK ENDC 0X20 ORG GOTO 0X00 INICIO ORG GOTO 0X04 INT_VECTOR ORG 0X05 ;VARIABLE ;VARIABLE ;VARIABLE ;VARIABLE ;VARIABLE ;VARIABLE ;VARIABLE #INCLUDE #INCLUDE LIBRE_LCD.INC ADC_ASCII.INC CLRF CLRF CLRF CLRF CLRF CLRF CLRF CALL HEXADECIMAL TEMP ASCII_H ASCII_M ASCII_L PORTD DIGITO CONFIGURA DE DE DE DE DE DE DE RETARDO RETARDO CONVERSION CENTESIMOS DECIMOS UNIDADES TIEMPO DE ADC ;INCLUYE LIB. DE LCD ;INCLUYE LIB. CONVERTIDOR DE BIN A ASCII INICIO ;LIMPIA ;LIMPIA ;LIMPIA ;LIMPIA ;LIMPIA ;LIMPIA FLAGS FLAGS FLAGS FLAGS FLAGS FLAGS ;LIMPIA FLAGS LOOP NOP NOP GOTO INT_VECTOR ;MOVLW ;ANDWF ;BTFSS ;GOTO BTFSS RETFIE MOVF MOVWF LOOP 0X00 RCSTA,W STATUS,Z RCVERROR PIR1,5 RCREG,W R_ERROR ;LOOP INFINITO ;VECTOR DE INTERRUPCION ;MASK OUT UNWANTED BITS ;CHECK FOR ERRORS ;FOUND ERROR, FLAG IT ;UASRT RECEIBE INTERRUTION FLAG ;SOME OTHER INTERRUPT, EXIT ;RECIBE ERROR 108 MOVWF CHECK MOVLW ANDWF BTFSS GOTO GOTO 0X00 CHECK,W STATUS,Z SIN_PROBLEMAS CON_PROBLEMAS SIN_PROBLEMAS MOVF MOVWF CALL CALL CALL GOTO ;CARGA EN CHECK R_ERROR,W PORTD CONV_AD BIN_ASCII TRANSMITE LCD LCD BCF BCF STATUS,5 STATUS,6 CALL LCD_INI MOVLW B'00000001' CALL LCD_REG MOVLW B'00000110' CALL LCD_REG MOVLW B'00001100' CALL LCD_REG MOVLW 0X03 CALL LCD_REG MOVLW 0X80 CALL LCD_REG MOVLW 'T' CALL LCD_DATOS MOVLW 'E' CALL LCD_DATOS MOVLW 'M' CALL LCD_DATOS MOVLW 'P' CALL LCD_DATOS MOVLW ' ' CALL LCD_DATOS MOVLW '=' CALL LCD_DATOS MOVLW ' ' CALL LCD_DATOS GOTO MANDA_ALGO ;MANDADA TEMPERATURA AL LCD MANDA_ALGO MOVF ASCII_H,W CALL LCD_DATOS PASA DE 100°C MOVF CALL ASCII_M,W LCD_DATOS MOVF CALL ASCII_L,W LCD_DATOS MOVLW CALL 0XDF LCD_DATOS MOVLW CALL 'C' LCD_DATOS MOVLW CALL 0XC0 LCD_REG ;BANCO 'O' ;BORRA LCD Y LO PONE EN HOME. ;DESPLAZAMIENTO DEL CURSIR HACIA LA DERECHA. ;LCD ON, CURSOR OFF, PARPADEO OFF. ;MANDO EL CURSOR AL INICIO DEL LCD. ;ESCRIBO EL LA PRIMERA LINEA DEL LCD. ;VISUALIZA UNA 'T' ;VISUALIZA UN 'E' ;VISUALIZA UN 'M' ;VISUALIZA UN 'ESPACIO' ;VISUALIZA UNA '1' ;VISUALIZA UN '=' ;VISUALIZA CARACTER CERO AL IZQUIERDA CUANDO LA TEM NO ;º ;C ;CAMBIO A SEGUNDA LINEA 109 MOVLW CALL MOVLW CALL MOVLW CALL MOVLW CALL MOVLW CALL MOVLW CALL MOVLW CALL MOVLW CALL MOVLW CALL MOVLW CALL MOVLW CALL MOVLW CALL MOVLW CALL RETFIE 'S' LCD_DATOS 'T' LCD_DATOS 'A' LCD_DATOS 'T' LCD_DATOS 'U' LCD_DATOS 'S' LCD_DATOS ' ' LCD_DATOS 'I' LCD_DATOS 'S' LCD_DATOS ' ' LCD_DATOS 'O' LCD_DATOS '.' LCD_DATOS 'K' LCD_DATOS RCVERROR BCF BSF MOVLW 0FFH MOVWF PORTB RETFIE DELAY_5MS MOVLW .44 MOVWF PDEL0 RCSTA,4 RCSTA,4 ;VISUALIZA UNA 'T' ;VISUALIZA UN 'E' ;VISUALIZA UN 'M' ;VISUALIZA UN 'ESPACIO' ;VISUALIZA UNA '1' ;VISUALIZA UN '=' ;VISUALIZA UNA 'T' ;VISUALIZA UN 'E' ;VISUALIZA UN 'M' ;VISUALIZA UN 'ESPACIO' ;VISUALIZA UNA '1' ;VISUALIZA UN '=' ;CLEAR RECIEVER STATUS ;LIGHT ALL LEDS ;CON CRYSTAL DE 20 MHz, 25000 CICLOS. ; 1 SET NUMERO DE REPETICION (B) ; 1 | PLOOP1 MOVLW .141 MOVWF PDEL1 PLOOP2 CLRWDT DECFSZ PDEL1,1 GOTO PLOOP2 DECFSZ PDEL0,1 GOTO PLOOP1 PDELL1 GOTO PDELL2 PDELL2 CLRWDT RETURN ; 1 SET NUMERO DE REPETICION (A) ; 1 | ; 1 CLEAR WATCHDOG ; 1 + (1) ES EL TIEMPO 0 ? (A) ; 2 NO, LOOP ;1 + (1) ES EL TIEMPO 0 ? (B) ; 2 NO, LOOP ; 2 CICLOS DELAY ; 1 CICLO DELAY ; 2+2 FIN. CONV_AD MOVLW MOVWF CALL B'10000001' ADCON0 RET_CONVER ;CRYSTAL DE 11.0592 MHz. GO_ADC BSF WAIT_ADC BTFSC ADCON0,GO_DONE ;INICIO DE LA CONVERSION. ADCON0,GO_DONE 110 GOTO WAIT_ADC ;ESPERA QUE FINALICE LA CONVERSION RETURN ;LA CONVERSION ESTA COMPLETA Y SE ENCUENTRA EL ADRESH Y ADRESL. RET_CONVER MOVLW MOVWF YA_NO DECFSZ GOTO RETURN .15 TEMP TEMP,1 YA_NO TRANSMITE ;TRANSMITE LAS 3 VARIABLE DE TEMPERATURA POR RS-232 ;MANDO EL ASCHII_H BCF BCF STATUS,5 STATUS,6 MOVF MOVWF ASCII_H,W TXREG BSF BCF STATUS,5 STATUS,6 COMP_ASCII_H BTFSS GOTO ;BANCO '1' TXSTA,1 COMP_ASCII_H ;MANDO EL ASCII_M BCF STATUS,5 MOVF MOVWF ASCII_M,W TXREG BSF BCF STATUS,5 STATUS,6 COMP_ASCII_M BTFSS GOTO ;BANCO '0' ;BANCO '0' ;BANCO '1' TXSTA,TRMT COMP_ASCII_M ;MANDO EL ASCII_L BCF STATUS,5 MOVF MOVWF ASCII_L,W TXREG BSF BCF STATUS,5 STATUS,6 COMP_ASCII_L BTFSS GOTO ;BANCO '0' ;BANCO '1' TXSTA,TRMT COMP_ASCII_L ;FIN DE BLOCKE DE TRANSMISIÓN. BCF BCF STATUS,5 STATUS,6 MOVLW MOVWF 0X20 TXREG BSF BCF STATUS,5 STATUS,6 ;BANCO '0' ;FIN DE BLOQUE TRANSMITIDO ;BANCO '1' 111 FIN_BLOCK BTFSS GOTO TXSTA,TRMT FIN_BLOCK BCF STATUS,5 BCF STATUS,6 RETURN CON_PROBLEMAS BCF BCF STATUS,5 STATUS,6 MOVLW MOVWF 0X00 PORTD CLRF DIGITO CALL LCD_INI MOVLW B'00000001' CALL LCD_REG MOVLW B'00000110' CALL LCD_REG MOVLW B'00001100' CALL LCD_REG MOVLW 0X03 CALL LCD_REG MOVLW 0X80 CALL LCD_REG ;BANCO '0' ;BANCO 'O' ;BORRA LCD Y LO PONE EN HOME. ;DESPLAZAMIENTO DEL CURSIR HACIA LA DERECHA. ;LCD ON, CURSOR OFF, PARPADEO OFF. ;MANDO EL CURSOR AL INICIO DEL LCD. ;ESCRIBO EL LA PRIMERA LINEA DEL LCD. REPETIR MOVF CALL IORLW BTFSC GOTO CALL INCF GOTO DIGITO,W FALLO_TABLE 0 STATUS,Z ACABAR LCD_DATOS DIGITO,F REPETIR ;W=DIGITO ;TRAE CARACTER EQUIVALENTE ;COMPARA SI ES EL ULTIMO ;ES EL ULTIMO? ;SI ;DESPLIEGA CARACTER EN EL LCD ;INCREMENTA A DIGITO EN UNO ;TOMA NUEVO VALOR DIGITO Y REGRESA POR EL SIGUENTE CARACTER RE_2 MOVLW 0XC0 CALL LCD_REG RETURN ;SE ESCRIBE EN LA SEGUNDA LINEA ;SE LE INDICA AL LCD QUE INTERPRETE LA INSTRUCCION ACABAR NOP GOTO ACABAR SEESTABLECIDO. ;AQUI SE QUEDA TODO EL TIEMPO, HASTA SER ; TABLA DE DATOS FALLO_TABLE ADDWF PCL,1 RETLW 'S' RETLW 'T' RETLW 'A' RETLW 'T' RETLW 'U' RETLW 'S' RETLW ' ' RETLW 'O' RETLW 'F' RETLW ' ' RETLW 'S' 112 RETLW 'I' RETLW 'S' RETLW 'T' RETLW 'E' RETLW 'M' CALL RE_2 RETLW ' ' RETLW 'I' RETLW 'S' RETLW ' ' RETLW 'F' RETLW 'A' RETLW 'I' RETLW 'L' RETLW 'U' RETLW 'R' RETLW 'E' RETLW 0X00 CONFIGURA BSF BCF STATUS,5 STATUS,6 ;BANCO '1' MOVLW MOVWF B'00000101' ADCON1 ;+2.56 DE V DE REF. MOVLW MOVWF 0XFF TRISA ;PORTA, COMO ENTRADAS ANALOGICAS MOVLW MOVWF 0X00 TRISE ;PORTE, COMO SALIDA MOVLW MOVWF B'10111111' TRISC ;PINES RC7/RX, COMO ENTRADA, Y RC6/TX COMO SALIDA MOVLW MOVWF 0X00 TRISB ;PORTB, COMO SALIDA MOVLW MOVWF 0X00 TRISD ;PORTD, COMO SALIDA MOVLW MOVWF B'00100100' TXSTA ;8 BITS TRANS, TRANSMIT ENABLE, ASYC MODE, HIGH MOVLW MOVWF .71 SPBRG ;CON UN CRYSTAL DE 11.0592 MHZ A 9600 BAUDS MOVLW MOVWF B'00100000' PIE1 ;ENABLE RCIF INTERRUPT SPEED BCF STATUS,5 MOVLW B'10010000' MOVWF RCSTA ENABLE BIT ASYC MOVLW MOVWF B'11000000' INTCON ;BANCO '0' ;SERIAL PORT ENABLE, 8 BITS, CONTINUOUS RECEIVE ;ENABLE GLOBAL INTERRUPTS RETURN END 113 ANEXO II 114 115 116 117 118 119 120