You are on page 1of 70

ÍNDICE

ÍNDICE
........................................................................................................................................................... ...................................................................................................................................... ............................................................................ 1 3 4 4 4 6 7 7 8 8 9 9 10 10 11 12 12 12 13 14 14 14 15 16 17 17 19 19 19 20 21 22 24 24 24 24 24 25 28 29 29 31 34 39 40 40

INTRODUCCIÒN
1.1 1.2 1.3 1.4 1.5 1.6 1.7 1.8

CAPÍTULO I MICROCONTROLADORES

INTRODUCCIÓN ........................................................................................................................ BLOQUES DE UN MICROCONTROLADOR ......................................................................... PRINCIPALES FABRICANTES DE MICROCONTROLADORES ........................................ SISTEMAS MICROCONTROLADOS ....................................................................................... LENGUAJES DE PROGRAMACIÓN DE LOS MICROCONTROLADORES ...................... ARQUITECTURAS DE LOS MICROCONTROLADORES ................................................... CONJUNTO DE INSTRUCCIONES DE LOS MICROCONTROLADORES .......................... MICROCONTROLADORES PIC .............................................................................................. .............................................................. 1.8.1 FAMILIAS DE MICROCONTROLADORES PIC ................................................................. 1.8.2 MICROCONTROLADORES PIC 16F877 1.8.3 ARQUITECTURA DEL MICROCONTROLADOR PIC16F877 ................................. 1.8.4 ENCAPSULADOS ......................................................................................................... ............................................

CAPÍTULO II GRAFICADORES Y EDITORES GRÁFICOS
2.1 2.2 2.3

2.4

2.5

INTRODUCCIÓN ........................................................................................................................ GRAFICADORES ....................................................................................................................... 2.2.1 TIPOS DE GRAFICADORES ....................................................................................... .......................................................... 2.2.2 CARACTERÍSTICAS DE UN GRAFICADOR MOTORES .................................................................................................................................. MOTORES DE CORRIENTE CONTINUA DC .......................................................... 2.3.1 MOTORES A PASOS PAP .......................................................................................... 2.3.2 2.3.2.1 TIPOS DE MOTES DE PASOS PAP .......................................................... ............................. 2.3.2.2 MODO DE OPERACIÓN DE LOS MOTORES PAP 2.3.2.3 SECUENCIA PARA MANEJAR LOS MOTORES PAP UNIPLARES .... PUERT0S ...................................................................................................................................... 2.4.1 COMUNICACIÓN PARALELA ................................................................................... ....................................................................................... 2.4.2 COMUNICACIÓN SERIAL .......................................................................................... 2.4.2.1 NORMA SR232 2.4.2.2 CONECTORES EN LA INTERFAZ SR232 ............................................... EDITORES GRÁFICOS ............................................................................................................ ......................................................

CAPÍTULO III ANÁLISIS Y DISEÑO DEL SISTEMA
3.1 3.2 3.3 3.4 3.5 3.6

INTRODUCCIÓN ....................................................................................................................... OBJETIVOS DEL TRABAJO DE TESIS ............................................................................... REQUERIMIENTOS .................................................................................................................... LIMITACIONES ....................................................................................................................... ANÁLISIS Y DISEÑO DE ESTE TRABAJO DE TESIS ...................................................... INTERFAZ .................................................................................................................................. ........................................................................

CAPÍTULO IV DESARROLLO DEL SISTEMA
4.1 4.2

4.3

INTERFAZ DIGITAL ................................................................................................................ SOFTWARE DE LA INTERFAZ DIGITAL ............................................................................ ..................................................................... 4.2.1 CASO DE QUE SE RECIBA UN BYTE . 4.2.2 CASO CUANDO EL GRÁFICO NO SE ALMACENE EN MEMORIA EEPROM .................................... 4.2.3 CASO CUANDO SE PRECIONA BOTÓN DE GRÁFICAR EDITOR GRÁFICO ....................................................................................................................

1

CAPÍTULO V EVALUACIÓN DEL SISTEMA
5.1 5.2

............................................................................

44 44 44 44 56 47 57 57 58 59 69

PRUEBAS Y RESULTADOS ..................................................................................................... ........................................................................ 5.1.1 PRUEBAS DE PINTAR UN PUNTO 5.1.2 PRUEBAS DE EDICIÓN Y GRAFICACIÓN .............................................................. APLICACIONES ....................................................................................................................... ..............................................................

CAPÍTULO VI CONCLUSIONES Y PERSPECTIVAS
6.1 6.2 CONCLUSIONES PERSPECTIVAS

....................................................................................................................... .......................................................................................................................

BIBLIOGRAFÍA

......................................................................................................................................... ................................................................................... ................................................................................

APÉNDICE A (MANUAL DE USUSARIO) APÉNDICE B (CIRCUITOS INTEGRADOS)

2

INTRODUCCIÓN
En los años 60’s la construcción de circuitos electrónicos requería de muchos componentes (diodos, capacitores, resistencias, etc.), además, los programadores necesitaban conocimientos sobre dichos componentes. Conforme surgen nuevas tecnologías el desarrollo de dispositivos electrónicos va en progreso, ya que cada vez es más fácil el trabajo con las técnicas de diseño y paulatinamente son más pequeños en su tamaño gracias a la integración de los componentes. En 1976 Surgen las primeras microcomputadoras de un solo chip, que más tarde se denominarían microcontroladores, las cuales contenían principalmente, la unidad central de proceso (CPU), la memoria ROM, la memoria RAM y los circuitos de entrada/salida. Actualmente las aplicaciones de los microcontroladores se pueden encontrar en fotocopiadoras, teléfonos celulares, cafeteras, alarmas, automóviles, etcétera. En este trabajo de tesis se construye un editor manejado por una computadora personal (PC) en el cual se realizan funciones básicas tales como la edición de gráficos y texto. También se trabaja con un graficador digital llamado sistema XYZ, que es controlado por una interfaz digital que utiliza un microcontrolador PIC que se encargará de dibujar gráficos. El presente trabajo de tesis está conformado de 6 capítulos y a continuación se da una breve descripción de cada uno de ellos. En el Capítulo I se hace un estudio general sobre los microcontroladores, es decir, sus principales fabricantes, sus características, su arquitectura, sus aplicaciones, su conjunto de instrucciones y se presenta un análisis que permite hacer la elección de un microcontrolador dependiendo de las necesidades del diseñador, lo que nos ayuda a explicar el por que de la elección del PIC16F877 para nuestro trabajo de tesis. En el Capítulo II se da toda la teoría acerca de tipos de graficadores, puertos, editores gráficos y tipos de motores. Igualmente haciendo el análisis de cuales de todos estos tipos se adapta mejor a las necesidades de nuestro trabajo de tesis. En el Capítulo III se da la descripción del análisis y diseño del sistema, desde el punto de vista hardware y software, además se presentan los objetivos generales y particulares y la infraestructura con la que se va a trabajar en este trabajo de tesis. En el Capítulo IV se presenta el desarrollo, de la interfaz digital y su software, y también del editor de gráficos. En el Capítulo V se hace la evaluación del sistema; es decir se presentan las pruebas y los resultados obtenidos de este trabajo de tesis. En el Capítulo IV se presentan las conclusiones y perspectivas de este trabajo de tesis.

3

CAPÍTULO I MICROCONTROLADORES
1.1 Introducción En este capítulo se describen los diferentes microcontroladores que existen en la actualidad; sus características, sus familias, sus aplicaciones, etcétera. El microcontrolador, “es un circuito integrado programable capaz de ejecutar las órdenes o secuencias que están grabadas en su memoria”, [3]. 1.2 Bloques Funcionales de un Microcontrolador Todas las marcas de microcontroladores se pueden diferenciar según el tamaño y componentes especiales, pero en general todos tienen los siguientes bloques básicos, [4]. • Procesador o CPU (Unidad Central de Proceso). Es el encargado de controlar el sistema y ejecutar las funciones escritas en la memoria del programa. • Memoria RAM (Memoria de acceso aleatorio). Se utiliza para guardar los datos temporales que se necesitan en la ejecución del programa • Memorias para el programa, tipo ROM/OTP/EPROM/EEPROM/FLASH. ROM (Read Only Memory). Es una memoria no volátil de sólo lectura cuyo contenido se graba durante la fabricación del chip. OTP (One Time Programmable). Es una memoria no volátil de sólo lectura “programable una sola vez” por el usuario. Su grabación es por medio de un sencillo grabador controlado por un programa desde un PC. EPROM (Erasable Programmable Read OnIy Memory). Es una memoria que puede borrarse y grabarse muchas veces. La grabación se realiza, como en el caso de la OTP. Si posteriormente, se desea borrar el contenido, disponen de una ventana de cristal en su superficie por la que se somete a la EPROM a rayos ultravioleta durante varios minutos. EEPROM (Electrical Erasable Programmable Read Only Memory). Es una memoria que una vez instalada en un circuito pueden grabarse y borrarse cuantas veces sea necesario sin ser retirados de dicho circuito. Para ello se usan “grabadores en circuito” que confieren una gran flexibilidad y rapidez a la hora de realizar modificaciones en el programa de trabajo. FLASH Es una memoria no volátil, de bajo consumo, que se puede escribir y borrar. Funciona como una ROM y una RAM pero consume menos y es más pequeña. A diferencia de la ROM, la memoria FLASH es programable en el circuito. • Líneas de E/S para comunicarse con el exterior. Estas soportan las líneas de E/S que comunican al computador interno con los periféricos exteriores. • Diversos módulos para el control de periféricos. Temporizadores o “Timers”. Se emplean para controlar periodos de tiempo (temporizadores) y para llevar la cuenta de acontecimientos que suceden en el exterior (contadores). Puertos de comunicación. Permiten la comunicación con otros dispositivos externos, otros buses de microprocesadores, buses de sistemas, buses de redes 4

además de adaptarlos con otros elementos bajo otras normas y protocolos. Algunos modelos disponen de recursos que permiten directamente esta tarea, entre los que destacan: UART, adaptador de comunicación serie asíncrona. USART, adaptador de comunicación serie síncrona y asíncrona Puerta paralela esclava para poder conectarse con los buses de otros microprocesadores. USB (Universal Serial Bus), que es un moderno bus serie para los PC. Bus I2C, que es un interfaz serie de dos hilos desarrollado por Philips. CAN (Controller Area Network), para permitir la adaptación con redes de conexionado multiplexado desarrollado conjuntamente por Bosch e Intel para el cableado de dispositivos en automóviles. Conversor CAD. Transforma los datos analógicos obtenidos del procesamiento de la PC en su correspondiente señal digital que saca al exterior por una de las patitas de la cápsula. Conversor CDA. Transforma los datos digitales obtenidos del procesamiento de la PC en su correspondiente señal analógica que saca al exterior por una de las patitas de la cápsula. Generador de impulsos de reloj que sincronizan el funcionamiento de todo el sistema. Es un circuito oscilador que genera una onda cuadrada de alta frecuencia, que configura los impulsos de reloj usados en la sincronización de todas las operaciones del sistema. Los siguientes bloques pueden estar o no inmersos en un microcontrolador, todo depende del fabricante y de las características de su diseño o necesidades, ([4]). • Perro Guardian o “Watchdog”.Cuando la PC se bloquea por un fallo del software u otra causa se pulsa el botón del reset y se reinicializa el sistema. Pero un microcontrolador funciona sin el control de un supervisor y de forma continua las 24 horas del día. El Perro guardián consiste en un temporizador que, cuando se desborda y pasa por 0, provoca un reset automáticamente en el sistema. Se debe diseñar el programa de trabajo que controla la tarea de forma que refresque o inicialice al Perro guardián antes de que provoque el reset. Si falla el programa o se bloquea, no se refrescará al Perro guardián y, al completar su temporización, “ladrará y ladrará” hasta provocar el reset. • Protección ante fallo de alimentación o “Brownout”. Protección ante fallos de alimentación Se trata de un circuito que resetea al microcontrolador cuando el voltaje de alimentación (VDD) es inferior a un voltaje mínimo (“brownout”). Mientras el voltaje de alimentación sea inferior al de brownout el dispositivo se mantiene reseteado, comenzando a funcionar normalmente cuando sobrepasa dicho valor. • Estado de reposo o bajo consumo. Son abundantes las situaciones reales de trabajo en que el microcontrolador debe esperar, sin hacer nada, hasta que se produzca algún acontecimiento externo que le ponga de nuevo en funcionamiento. Para ahorrar energía, (factor clave en los aparatos portátiles), los microcontroladores disponen de una instrucción especial (SLEEP en los PIC), que les pasa al estado de reposo o de bajo consumo, en el cual los requerimientos de potencia son mínimos. En dicho estado se detiene el reloj principal y se “congelan” sus circuitos asociados, quedando

5

sumido en un profundo “sueño” el microcontrolador. Al activarse una interrupción ocasionada por el acontecimiento esperado, el microcontrolador se despierta y reanuda su trabajo. • Comparador analógico. Es un Amplificador Operacional que actúa como comparador entre una señal fija de referencia y otra variable que se aplica por una de las patitas de la cápsula. La salida del comparador proporciona un nivel lógico 1 ó 0 si la señal es mayor o menor que la otra. • Modulador de anchura de impulsos o PWM. Son circuitos que proporcionan en su salida impulsos de anchura variable, que se ofrecen al exterior a través de las patitas del encapsulado. • Puertas de E/S digitales. Todos los microcontroladores destinan algunas de sus patitas a soportas líneas de E/S digitales. Por lo general, estas líneas se agrupan de ocho en ocho formando Puertas. 1.3 Principales Fabricantes de Microcontroladores Las marcas más conocidas actualmente en el mercado por sus características, difusión y usos en productos de consumo masivo se muestran en la tabla 1. Así como sus fabricantes y sus modelos más destacados. FABRICANTE INTEL MOTOROLA HITACHI PHILIPS SGS-THOMSON (ST) MICROCHIP NATIONAL SEMICONDUCTOR ZILOG TEXAS INSTRUMENTS TOSHIBA INFINEON DALLAS NEC MODELOS DE MICROCONTROLADORES 8048,805180C196,80186,80188,80388EX 6805,68HC11,68HC12,68HC16,683XX HD64180 GAMA COMPLETA DE CLÓNICOS DEL 8051 ST-62XX PIC’s COP8 Z8,Z80 TMS370 TLCS-870 C500 DS5000 78K

Tabla 1 Fabricantes y Modelos de Microcontroladores.

1.4 Sistemas Microcontrolados Es imposible analizar todas las posibles aplicaciones de los microcontroladores, ya que hoy en día han invadido todos los ámbitos. Sin embargo se puede mencionar áreas en las que se destacan sus aplicaciones, ver tabla 2.

6

Consumo -Equipo de TV -Reproductor de CD -Control remoto -Cámara -Mando de garaje -Detector de monóxido de carbono -Microondas -Lavadora -Secadora -Aspiradoras

Automoción -Sistema de seguridad del vehículo -Detector de radar -Frenos -Velocímetro -Climatizador -Inyección de combustible -Suspensión activa -Censor de airbag

Ofimática -Ratón de computadora -Teclado -Escáner -Impresora -Graficadores -Fotocopiadora -Lector de código de barras -Unidad de disco

Telecomunicaciones -Teléfono celular -Teléfono inalámbrico -identificador de llamadas -Módems

Tabla 2 Sistemas Microcontrolados.

Un sistema microcontrolado va a ser aquel en el que se requiera: secuenciamiento, codificación/decodificación, monitoreo, adquisición de datos, señalización, procesamiento de señales, control retroalimentado, temporización, cálculos aritméticos sencillos, comunicaciones, automatización, despliegue digital, control on - off, etc. Considérese por ejemplo una lavadora, los modelos de antaño consistían de un motor, paleta y caja de cambios mecánicos principalmente y con la incorporación de los microcontroladores se tienen programas de lavado, control de temperatura y el control de varios motores. En este ejemplo se tiene un teclado por el medio del cual se programan las funciones que se desean; sensores internos para controlar variables como la temperatura y, si el horno tiene la posibilidad, un receptor remoto para ejecutar órdenes dadas por el usuario desde el control. En el display se visualizaran los datos que se están programando; el motor hace girar los alimentos. También cuenta con algunos relevos que se encargan de controlar o desactivar algunos componentes del horno. 1.5 Lenguajes de Programación de los Microcontroladores Los lenguajes de programación más usados por los microcontroladores son el ensamblador, Basic y el C. El lenguaje ensamblador utiliza nemónicos, sus programas son compactos y rápidos puesto que realizan un completo control de la máquina, es por esto que en este trabajo de tesis se programo en este lenguaje. 1.6 Arquitecturas de los Microcontroladores • Arquitectura de Von Neuman. Esta arquitectura se caracteriza por disponer de una sola memoria principal donde se almacenan datos e instrucciones de forma indistinta. A dicha memoria se accede a través de un sistema de buses único (direcciones, datos y control), ver figura 1. 7

Figura 1 Arquitectura de Von Neuman.

• Arquitectura Harvard. Esta dispone de dos memorias independientes: una, que contiene sólo instrucciones y otra, sólo datos. Ambas disponen de sus respectivos sistemas de buses de acceso y es posible realizar operaciones de acceso (lectura o escritura) simultáneamente en ambas memorias, ver figura 2.

Figura 2 Arquitectura Harvard.

La arquitectura de los microcontroladores PIC16F877 sigue el modelo hardvard. 1.7 Conjunto de Instrucciones de los Microcontroladores Existen tres filosofías que determinan la arquitectura y funcionalidad de los procesadores: • Filosofía CISC (Computadoras de juego de Instrucciones Complejo). Disponen de más de 80 instrucciones máquina en su repertorio, algunas de las cuales son muy sofisticadas y potentes, requiriendo muchos ciclos para su ejecución. • Filosofía RISC (Computadora de juego de Instrucciones Reducido). En estos procesadores el repertorio de instrucciones máquina es muy reducido y las instrucciones son simples y generalmente, se ejecutan en un ciclo. • Filosofía SISC (Computadora de juego de instrucciones Específico). En los microcontroladores destinados a aplicaciones muy concretas, el juego de instrucciones, además de ser reducido, es “especifico”, o sea, las instrucciones se adaptan a las necesidades de la aplicación prevista. 8

1.8 Microcontroladores PIC Cada fabricante de microcontroladores oferta un elevado número de modelos diferentes, desde los más sencillos hasta los más poderosos, pero en general, todos los microcontroladores de cada fabricante son similares y sin importar la marca por la que se opte, siempre se trabaja de manera similar, así dominando uno, es fácil adaptarse a los otros. La empresa americana Microchip presenta microcontroladores tipo RISC con arquitectura hadvard, y en la actualidad se emplean cada vez más debido a sus características, entre las que se encuentran: • Sencillez de manejo: Tienen un juego de instrucciones reducido; 35 en la gama media. • Buena información, fácil de conseguir y económica. • Precio: Su costo es comparativamente inferior al de sus competidores. • Poseen una elevada velocidad de funcionamiento. Buen promedio de parámetros: velocidad, consumo, tamaño, alimentación, código compacto, etc. • Herramientas de desarrollo fáciles y baratas. Muchas herramientas software se pueden obtener libremente en la página de Microchip (http://www.microchip.com). • Existe una gran variedad de herramientas hardware que permiten grabar, depurar, borrar y comprobar el comportamiento de los PIC. • Diseño rápido. • La gran variedad de modelos de PIC permiten elegir el que mejor responde a los requerimientos de la aplicación. Es por ello que se optó por la marca de Microchip en este trabajo de tesis, además de que ya se contaba con material, tal como el programador de microcontroladores PIC, libros que describen sus funciones y experiencia sobre ellos (ya que se habían realizado prácticas con estos microcontroladores en diferentes ocasiones de la Licenciatura). 1.8.1 Familias de Microcontroladores PIC Microchip divide todos sus modelos de microcontroladores en 5 familias, a saber: • Familia PIC12CXXX/PIC12FXXX • Familia PIC16C5X • Familia PIC16CXXX/PIC16FXXX • Familia PIC17CXXX • Familia PIC18CXXX/PIC18FXXX A continuación se listan los componentes que se requirieron del microcontrolador para la realización de la interfaz digital. • Interfaz serial • Una fuente de interrupción • 2 puertos para salidas • 1 puerto de entrada • La mayor capacidad de memoria EEPROM • 1 Temporizador

9

De acuerdo a estos requerimientos se hace el análisis para determinar cual de las familias de microchip contiene el microcontrolador más adecuado a nuestras necesidades. Además, la elección debe ser hecha de tal manera que se puedan aprovechar los recursos del microcontrolador tanto como sea posible. Las familias PIC17CXXX y PIC18CXXX/PIC18FXXX quedan descartadas porque no contienen memoria EEPROM así como la familia PIC12CXXX/PIC12FXXX y La familia PIC16C5X y ese es un requisito indispensable para nuestra aplicación. El análisis de familia PIC16CXXX/PIC16FXXX se realizara por separado, primero el PIC16CXXX. Esta subfamilia tiene el mismo problema que las familias anteriores, es decir no tienen memoria EEPROM. Por ultimo nos queda analizar la subfamilia PIC16FXXX. En esta subfamilia, el PIC que se ajusta a nuestras necesidades es el PIC16F877 ya que es el que contiene más capacidad en memoria EEPROM. Es por ello que se eligió dicho microcontrolador. 1.8.2 Microcontrolador PIC16F877 En la tabla 3 se describen sus características principales.
Modelo Memoria Programable Bytes (FLASH) Palabras Bytes EEPROM Memoria de datos Bytes RAM C A/D BOD (Detección de baja tensión) LÍNEA E/S COMUNICACIÓN SERIE CCP TEMPORIZADORES FREC. MAX. MHZ ICSP (Programación Serie en Circuito ) ENCAPSULADOS FUENTES DE INTERRUPCIÓN COMUNICACIÓN PARALELO PIC16F877 14336 8192x14 256 368 8 (10 bits) Sí 33 USART/MSSP 2 1-16 bit, 2-8 bit, 1WDT 20 Sí 40P,44L,44PQ,44PT 14 Sí

Tabla 3 Características del Microcontrolador PIC16F877.

1.8.3 Bloques Funcionales del Microcontrolador PIC16F877 Los bloques funcionales del microcontrolador PIC16F877 se muestra en la figura 3.

10

Figura 3 Bloques Funcionales del Microcontrolador PIC16F877.

1.8.4 Encapsulados El encapsulado más común es el DIP (Dual In-Line Pin) que se usa para experimentación. Hay otros tipos de encapsulado que se pueden utilizar según el diseño y la aplicación que se quiere realizar. Por ejemplo, el encapsulado tipo surface mount (montaje superficial) tiene un reducido tamaño y bajo costo, que lo hace propio para producciones en serie o para utilizarlo en lugares de espacio muy reducido. No obstante, se utilizan un encapsulado tipo DIP. En la figura 4 se muestran algunos encapsulados de este tipo.

Figura 4 Encapsulados Tipo DIP.

11

CAPÍTULO II GRAFICADORES Y EDITORES GRÁFICOS
2.1 Introducción Cuando surge la necesidad de plasmar la información de los usuarios ya sea en papel o en algún otro medio visible fuera de la PC, los usuarios recurren a los llamados sistemas de representación gráfica. Estos sistemas pueden ser las impresoras y los graficadores (plotters). La información en estos sistemas es editada en algún editor de gráficos y sí el usuario tiene la necesidad de plasmar dicho gráfico, esta es enviada a través de los puertos a una impresora o bien, a un graficador. Los movimientos de dichos sistemas se rigen principalmente por motores. 2.2 Graficadores Los graficadores son periféricos de salida, especializados que interpretan los datos generados por la computadora, generalmente planos generados por un CAD (software de Diseño Asistido por Computadora) en forma vectorial, y con la posibilidad de dibujarlos en formatos de grandes dimensiones, entre A2 (420x594mm) y A0 (840x1188mm). La mayoría de los graficadores, los cuáles comúnmente son dispositivos seriales que conectan a un puerto serial, utilizan plumas o lápices para dibujar graficos en una página. Con la utilización de estos se pueden obtener mejores gráficos de lo que es posible en muchas impresoras Como la mayoría de las impresoras, los graficadores a menudo pueden sólo aceptar uno o dos tamaños de papel. Sin embargo, ciertos graficadores toman papel de tamaño A y B (22 por 11 pulgadas y 11 por 17 pulgadas respectivamente); otros toman papel de tamaño D y E (22 por 34 pulgadas). Aunque los graficadores son comunes en compañías de ingeniería y arquitectura para producir gráficos técnicos también se están volviendo populares en negocios para producir gráficos de mayores dimensiones. Conocer el funcionamiento y características de los graficadores permiten una mejor comprensión de estos, ver figura 5.

12

Figura 5 Graficador Comercial.

2.2.1 Tipos de Graficadores • Graficador de Pluma. Desplaza una pluma sobre una hoja de papel en forma aleatoria, de grafico vectorial. Al dibujar la línea, la pluma se conoce en el inicio de la línea, desciende hasta el papel, se mueve a lo largo de una trayectoria recta hasta el punto final, se levanta y se desplaza al inicio de la siguiente línea. Tipos de graficador de pluma: Los graficadores de mesa o superficie plana, constan de una superficie plana sobre la cual se coloca el papel en que se dibuja el gráfico, normalmente, la pluma que efectúa el gráfico se encuentra sobre un soporte móvil que se desplaza horizontalmente sobre un riel, que a su vez se desplaza sobre otro par de rieles dispuestos en forma perpendicular al primero, así se consigue el movimiento de la pluma sobre los ejes de las abscisas y de las ordenadas por todo el papel. Otros movimientos que pueden realizar son la elevación de la pluma para los desplazamientos sobre la hoja de papel, evitando así rayarlo, y el descanso para iniciar el nuevo trazado. En los graficadores de tambor, el papel se encuentra enrollado en un tambor giratorio con lo que se consigue que la superficie en la que se efectúa el gráfico sea móvil la pluma solamente se mueve de izquierda a derecha ya que el desplazamiento vertical lo realiza el tambor. La pluma también puede ascender o descender para facilitar su desplazamiento por el papel sin dibujar. Los graficadores de rodillo, son muy parecidos a los de tambor, la diferencia que existe entre ellos es que, en los de rodillo, el papel se desplaza por un eje que lo enrolla o desenrolla según se quiere efectuar un movimiento vertical hacia arriba o hacia abajo, la pluma se encuentra sobre un soporte fijo, moviéndose horizontalmente a la derecha o a la izquierda. En los graficadores electrostáticos, no se utilizan desplazamientos sobre el eje de las abscisas o de las ordenadas, sino que el papel avanza en una sola dirección, y se utiliza una serie de agujas que se encuentran a lo ancho del soporte, formando una línea recta. El gráfico se va realizando línea a línea, esta impresión no es tal sino una pequeña carga electrostática en el papel.

13

• Graficadores de chorro de tinta: En los graficadores de inyección de tinta los gráficos son obtenidos de forma similar a la de las impresoras homólogas, es decir que no se utilizan plumillas. Estos permiten otra clasificación: inyección de tinta monocromática inyección de tinta color. 2.2.2 Características de un Graficador Los graficadores tienen las siguientes características: • La resolución, es la precisión con la que se realiza un gráfico. Normalmente la resolución media para los graficadores de mesa y de rodillo es de 0.034 mm. y los de tambor es de 0.0125 mm. • El tamaño del papel, es variable según el tamaño del gráfico que se tenga que realizar, se necesitará un papel de mayor tamaño en los graficadores de tambor y de rodillo que en los de mesa • La velocidad del gráfico, se expresa en centímetros por segundo. Si el graficador tiene que realizar muchos gráficos interesa que éste tenga mucha rapidez. • El número de plumas, es el número de plumas que puede soportar un graficador. Cuantas más plumas pueda soportar, con mayor variedad de colores podrá dibujar. Existen dos sistemas distintos de manejo de plumas en los graficadores: en el primero, normalmente todas las plumas se encuentran juntas en un soporte circular giratorio; el segundo sistema tiene un soporte que sólo puede alojar una pluma; las otras se encuentran en otro lugar del graficador, de tal modo que en el momento que se requiera una pluma distinta, el soporte se desplaza hasta allá, la deja y toma la que le permitirá continuar el gráfico. El tipo de graficador con el que se trabaja en esta tesis es de tipo “Graficador de mesa o superficie plana” ya que el graficador con el que se cuenta tiene las características mencionadas. 2.3 Motores En algunas interfaces requieren que la computadora controle el movimiento o tenga la capacidad de mover algún objeto, por ejemplo, la cabeza de impresión de una impresora o mover cintas transportadoras, entre otros ejemplos. Un motor puede ser lo que suba o baje una polea con un extremo en su objeto en su extremo; puede abrir o cerrar la puerta e incluso posicionar un brazo articulado. Los motores más usados en Microrobótica son los DC de corriente continua y los PAP (Motores de pasos). 2.3.1 Motores de Corriente Continua (DC) Los motores DC internamente están compuestos por un imán (estator) que crea un campo magnético en el cual se encuentra una bobina o electroimán arrollada en un eje giratorio (rotor). La tensión de alimentación aplicada al motor hace que se generen una fuerza de atracción y repulsión entre el campo magnético del estator y el rotor, lo que hace que el

14

motor se mantenga en movimiento. Dependiendo del voltaje suministrado variara la velocidad del motor. Las características más destacadas de los motores DC se resume en: 1. Buen par de fuerza y estabilidad en la velocidad del giro, proporcional al voltaje de entrada. 2. Baja inercia en arranque y parada. 3. Peso y tamaño reducidos. 4. Fácil manejo. Esto los hace ideales en aplicaciones en que se precisa coordinar la velocidad de varios motores al mismo tiempo. y/o en que el motor tiene que responder instantáneamente a las señales de control para un encendido/apagado y cambio de sentido. Su peso y tamaño reducidos les posibilita además para formar parte en sistemas móviles sin incrementar el peso ya existente. 2.3.2 Motores de Pasos (PAP) Los motores de paso PAP permiten el avance de su eje en ángulos muy precisos y por pasos en las dos posibles direcciones de movimiento, constan de un gran número de posiciones estables sucesivas separadas entre ellas por un paso. Aplicando a ellos una determinada secuencia de señales digitales, avanzan por pasos hacia un lado u otro y se detienen exactamente en una determinada posición. Cada paso tiene un ángulo muy preciso, determinado por la construcción del motor, lo que permite realizar movimientos muy exactos. Además dado que las señales necesarias para controlar esta clase de motores son de naturaleza digital estos se pueden conectar fácilmente a sistemas de control o una máquina especializada Este sistema ha simplificado enormemente la implementación de automatismo y las aplicaciones de la robótica, ver figura 6.

Figura 6 Motores de Pasos.

Los motores PAP a su vez se caracterizan por: 1. Su movimiento es por incruento de ángulos, siendo estos muy exactos. 2. Mayor simplicidad en la lógica de control. 15

3. Su manejo depende del modelo. 4. Su eje no recorre las posiciones posibles. En este trabajo de tesis se opto por usar los motores PAP ya que se requieren movimientos muy precisos para el graficado de cada píxel del gráfico. 2.3.2.1 Tipos de Motores de Pasos Según su construcción, hay cinco tipos de motores de PAP: • Motor de pasos de imán permanente, su rotor es un imán permanente que está ranurado en toda su longitud y el estator está formado por una serie de bobinas enrolladas alrededor de un núcleo o polo. Su funcionamiento se basa en el principio de atracción y repulsión de polos magnéticos. Existen dos tipos de motores PAP de imán permanente: Los unipolares. Estos tiene generalmente cuatro cables de salida, ver figura 7. 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.

Figura 7 Motor de Imán Permanente Unipolares.

Los bipolares Estos motores suelen tener 6 o 5 cables de salida, dependiendo de su conexionado interno, ver figura 8. Este tipo se caracteriza por ser más simple de controlar y por ello es que se utiliza este tipo de motor bipolar de imán permanente.

Figura 8 Motor de Imán Permanente Bipolar.

16

• Motor de pasos de dos hilos, opera de modo parecido al motor de imán permanente. La diferencia importante está en el diseño del alambrado de los polos del estator. Cada posición del polo del estator tiene dos alambrados. Con este diseño, un polo del estator puede ser norte o sur dependiendo que alambrado está energizado. • Motor de pasos de reluctancia variable, el rotor está fabricado por un cilindro dentado de hierro y el estator está formado por bobinas que crean los polos magnéticos. Como este tipo no tiene un imán permanente, su rotor gira libremente cuando las bobinas no tienen corriente lo que puede ser inconveniente en un momento dado si hay una carga que presione el eje. Este tipo puede trabajar a mayor velocidad que el anterior. • Motor de pasos híbridos, estos combinan las características del motor de pasos de imán permanente y del motor de pasos de reluctancia variable lográndose un alto rendimiento a buena velocidad. • Motor de pasos de pulso, algunos motores se diseñan tal que los circuitos de control de fase, y los manejadores de las bobinas son parte del motor. Para mover el motor una posición, un simple pulso TTL puede ser enviado al motor para cada paso. Incrementando o decrementando la frecuencia de los pulsos sé varia la velocidad del motor De acuerdo a esta clasificación, el tipo de motor por el que se optó en este trabajo de tesis es el motor de imán permanente ya que son los más usados en robótica. 2.3.2.2 Modo de Operación de los Motores PAP Los motores PAP, tanto unipolares como bipolares, pueden trabajar dando pasos completos, medios, cuartos y octavos según la necesidad del sistema. En el paso completo cada secuencia el rotor gira un determinado ángulo determinado por la fabricación del motor. En el modo de medio paso, cada secuencia produce un giro en grados correspondiente a la mitad de su paso normal. En el caso de un cuarto de paso cada secuencia produce un giro en grados correspondiente a la cuarta parte de su paso normal. Y en el octavo paso cada secuencia produce un giro en grados correspondiente a la octava parte de su paso normal. En esta sección solo se va a enfocar al primer caso ya que este trabajo de tesis sólo se requiere una precisión de un paso. 2.3.2.3 Secuencias para Manejar Motores PAP Unipolares Existen dos secuencias posibles para este tipo de motores, las cuales se detallan a continuación. Para revertir el sentido de giro, simplemente se deben ejecutar las secuencias en modo inverso. • La Secuencia Normal: es la secuencia más usada y la que generalmente recomienda el fabricante. Con esta secuencia el motor avanza un paso por vez y debido a que siempre hay al menos dos bobinas activadas, se obtiene un alto torque de paso y de retención. Hay dos tipos de secuencia: secuencia horario, ver tabla 4 y secuencia antihorario, ver tabla 5. Estas dos secuencias se utilizaron en este trabajo de tesis para programación de los motores.

17

Bobinas PASO 1 2 3 4

A 1 0 0 1

B 1 1 0 0

C 0 1 1 0

D 0 0 1 1

Tabla 4 Secuencia Normal en Sentido Horario.

Bobinas PASO 1 2 3 4

A 1 1 0 0

B 1 0 0 1

C 0 0 1 1

D 0 1 1 0

Tabla 5 Secuencia Normal en Sentido Antihorario.

• Secuencia del Tipo Wave Drive: En esta secuencia se activa solo una bobina a la vez. En algunos motores esto brinda un funcionamiento más suave. La contrapartida es que al estar solo una bobina activada, el torque de paso y retención es menor. También tiene dos tipos de sentidos: sentido horario, ver tabla 6 y sentido antihorario, ver tabla 7. Bobinas PASO 1 2 3 4

A 1 0 0 0

B 0 1 0 0

C 0 0 1 0

D 0 0 0 1

Tabla 6 Secuencia Horario de Tipo Wave Drive.

Bobinas PASO 1 2 3 4

A 1 0 0 0

B 0 0 0 1

C 0 0 1 0

D 0 1 0 0

Tabla 7 Secuencia Antihorario del Tipo Wave Drive.

18

El sentido de giro y la posición están determinados por la secuencia; también se puede controlar la velocidad de los motores PAP, dentro de cierto rango, variando la frecuencia de los pulsos aplicados a las bobinas. Los impulsos de control demasiado rápidos en el encadenamiento de los pasos pueden terminar bloqueando el motor. Será necesario, por lo tanto, definir una velocidad máxima del motor y separar cada pasó mediante una temporización que corresponda a esta velocidad 2.4 Puertos Cada uno de los periféricos de I/O (mouses, teclados, impresoras, scanners, graficadores etcétera), por si solos, no realizan sus funciones correspondientes, ya que necesitan un medio de comunicación hacia una PC o bien la PC requiera algún servicio de algún periférico de I/O. Esta comunicación se logra a través de los puertos. Los puertos “son direcciones de memoria donde la computadora puede atender a un dispositivo”. Es un elemento hardware, una especie de enchufe que permite la salida y entrada de la PC mediante la conexión a distintos tipos de periféricos. Los puertos constituyen el vínculo de la computadora con el mundo exterior, son los intermediarios que se encargan de facilitar el intercambio de información entre la PC y la periferia. Su función consiste en posibilitar la transmisión de datos entre dos sistemas distintos. En un sistema basado en microcontroladores, los puertos seriales y del puerto paralelo son los únicos para comunicarse con los periféricos externos. La forma en que funcionan estas comunicaciones son describen a continuación: 2.4.1 Comunicación Paralela Esta comunicación transmite todos los bits de un lado de manera simultánea, ver figura 9.

Figura 9 Comunicación Paralela.

19

Desventajas de la Comunicación Paralela • Sufren por malos contactos eléctricos. • Son más frágiles. • Tienen mas perdida de señal a cortas distancias. • Las distancias que separan los equipos son 3 metros. • Requiere una mayor cantidad de líneas que la comunicación serial. • Son más caras que la comunicación serial, ya que se requiere más cable debido a su corta distancia de transmisión. Ventajas de la Comunicación Paralela • Este tipo de comunicación es muy rápido. • Manejan 8 bits en la transmisión. 2.4.2 Comunicación Serial Esta comunicación transmite un bit a la vez, ver figura 10. Ventajas de la Comunicación Serial • Es muy económica. • Se admite transmisión de datos en distancias muy lejanas. • Desventaja de la comunicación serial. • Es mucho más lenta que la comunicación paralela.

Figura 10 Comunicación Serial.

Como se puede apreciar los dos tipos de comunicación tiene sus ventajas y desventajas, en este trabajo de tesis no se tuvo que hacer una elección ya que el tipo de comunicación que manejan los graficadores es de tipo serial. Existen dos formas de comunicación serial: La sincrónica y la asincrónica. • En la comunicación sincrónica, además de una línea sobre la que transfieren los datos, se necesita otra que contenga pulsos de reloj que indiquen cuando un dato es válido; la duración del bit está determinada por la duración del pulso del sincronismo. • En la comunicación asincrónica o asíncrona, los pulsos de reloj no son necesarios y se acude a otros mecanismos para realizar la lectura/escritura de los datos; la duración de cada bit está determinada por la velocidad con la cual se realiza la transferencia de datos. 2.4.2.1 Norma RS-232 La norma RS-232 surgió con la gran variedad de equipos, sistemas y protocolos que existían, como un acuerdo que permitiera que los equipos de varios fabricantes pudieran

20

comunicarse entre sí. Esta norma define la interfaz mecánica, las características, los pines, las señales y los protocolos que debía cumplir la comunicación serial. La norma RS-232 cumple con los voltajes siguientes: • Un uno lógico es un voltaje comprendido entre -5V y -15V en el transmisor y entre 3V y -25V en el receptor. • Un cero lógico es un voltaje comprendido entre 5V y 15V en el transmisor y entre 3V y 25V en el receptor. La computadora dispone de un circuito llamado UART (Universal Asynchonous Receiver Transmitter) o transmisor Receptor Asíncrono Universal que convierte cada byte en una serie de 8 bits y viceversa, este circuito hace posible dicha comunicación. 2.4.2.2 Conectores en la Interfaz RS-232 Los conectores son el medio físico mediante el cual las computadoras se comunican con el exterior. Existen dos tipos de conectores: • Conector macho de 25 pines, ver figura11.

Figura 11 Conector DB25 Macho.

Donde: 1. Tierra sistema, blindaje(GND) 2. Transmisión Datos(TxD) 3. Receptor Datos (RxD) 4. Solicitud de envío (RTS) 5. Listo para envío (CTS) 6. Datos listos para envío (DSR) 7. Tierra lógica (SIG) 8. Detección de portadoras (CD) 9. Reservado 10. Reservado 11. No usado 12. Detección de portadora Secundario (SCD) 13. Solicitud de envío secundario (SCTS) 14. Transmisión de datos secundaria (STxD) 15. Transmisión de Datos (TxD) 16. Recepción de Datos secundario (SRxD) 17. Reloj de recepción 18. No usado 19. Solicitud de envío secundaria (SRTS) 20. Datos listos en terminal (DTR) 21. Detección de calidad de señal

21

22. Detección de tono (RI) 23. Selección de rata de datos (DRS) 24. Reloj de Transmisión 25. No usado • Conector macho de 9 pines, ver figura 12.

Figura 12 Conector DB9 Macho.

Donde: 1. Detector de portadora (CD) 2. Recepción de Datos (RxD) 3. Transmisión de (TxD) 4. Datos listos en terminal (DTR) 5. Tierra (GND) 6. Datos listos para enviar (DSR) 7. Solicitud de envío (RTS) 8. Listo para envío (CTS) 9. Detector de tono (RI) 2.5 Editores Gráficos La existencia de paquetes de edición gráfica, que hoy en día se encuentran en el mercado, nos ofrece amplias y cada vez mejores herramientas para el diseño de gráficos. Las diferentes empresas que se dedican al desarrollo de dichos sistemas, les obligan a ofrecer mejores y sencillas herramientas para poder competir con otras empresas. Estos paquetes nos ofrecen herramientas muy sofisticadas de diseño de gráficos y manipulación de imágenes. Un ejemplo de estas son COREL DRAW, AUTO CAD, CHIPER, entre otras. Estas empresas están orientadas al desarrollo de paquetes para el diseño de “”. Otros paquetes que no tienen las características de estos grandes sistemas o sea son mucho más pobres en cuanto a funciones que realizan, los podemos encontrar como software libre, como regalo de algún otro sistema que se compre o como herramienta de algún paquete. Todos estos con características de ventanas, menús e iconos. Estas opciones permiten a todo sistema un medio para la ejecución de alguna función por ejemplo el aumentar de tamaño un gráfico, hacerle un zooming, graficar, copiar, pegar, aumento de contraste, escribir renglones de texto, etc. Esto dependerá de las herramientas de cada sistema de edición grafica, ver figura 13.

22

Figura 13 Editor Gráfico Comercial.

Los sistemas de edición gráfica comerciales tienen el inconveniente de no proveer la manera en que grafican o imprimen la información que procesan, ya que son sistemas que no proporcionan código fuente. Entonces por tal motivo, en este trabajo de tesis se hizo la construcción de un sistema de edición de gráficos, no con las características de los sistemas de edición gráfica comerciales, pero, si con las necesarias para realizar gráficos sencillos y demostrar el funcionamiento de este trabajo de tesis.

23

CAPÍTULO III ANÁLISIS Y DISEÑO DEL SISTEMA
3.1 Introducción Este capítulo está dedicado a la presentación del análisis y diseño del sistema de edición de gráficos y del sistema graficador XYZ, así como de la interfaz que permite la comunicación entre ambos sistemas. También, se presentan los requerimientos necesarios para el desarrollo de dichos sistemas y las limitaciones que se pueden encontrar en este trabajo de tesis. 3.2 Objetivos del Trabajo de Tesis General: • Diseñar y desarrollar una interfaz digital que permita recibir gráficos generados en un sistema de edición y los envié a dibujar a un sistema graficador XYZ. Particulares: • Diseño y desarrollo de un sistema de edición de gráficos. • Realizar una interfaz digital basado en PIC’s. • Implementar la comunicación serial entre el sistema de edición de gráficos y la interfaz digital. 3.3 Requerimientos del Trabajo de Tesis • Una computadora tipo PC • Graficador Digital (Sistema XYZ) 2 motores de pasos 1 bobina 2 rieles con bandas • Interfaz Digital 1 Microcontrolador PIC16F877 Programador de PICs Resistencias, Capacitores, Cables, Oscilador Externo. Integrados ULN2003, MAX232. Fuente de poder 5V y 12V. Salida de Puerto Serial. Cable para la conexión serial. Cable de corriente con conector universal. • Software Windows 95, 98, Me, XP. DELPHI 5 (Lenguaje de programación en que se desarrollo el sistema de edición de gráficos) MPLAB (Entorno de desarrollo para programación de los microcontroladores PIC) 3.4 Limitaciones del Trabajo de Tesis • Interfaz Digital La interfaz digital sólo puede controlar dos motes de pasos y una bobina.

24

La memoria del microcontrolador PIC sólo puede guarda imágenes que tengan un número de píxeles en negro menores o iguales a 84. • Sistema de Edición de gráficos: No soporta imágenes mayores a 65025 píxeles. Las imágenes deben ser monocromáticas. En tiempo de ejecución las imágenes no pueden agrandarse a minimizarse así como el cuadro de texto. El único formato que se puede trabajar es el formato .BMP Sus herramientas de dibujos son básicas, si se quiere trabajar con imágenes más sofisticadas se deben de recurrir a editores más sofisticados y pasarlos por medio del portapapeles. En la opción de deshacer únicamente se puede deshacer una acción. Necesita forzosamente un ratón para la edición de gráficos. • Sistema XYZ El sistema XYZ únicamente se le pueden colocar hojas tamaño carta. La pluma a utilizar debe tener mucha fluidez para pintar bien el punto (no utiliza lápiz o lapicero). Se recomienda un plumón de pinto fino. 3.5 Análisis y Diseño El sistema de edición de gráficos es una herramienta de apoyo para el usuario permitiéndole editar gráficos para que posteriormente se envíen a la interfaz digital. El sistema fue programado en el lenguaje de programación DELPHI 5, dicho lenguaje de programación tiene un módulo para programar en ENSAMBLADOR, mediante el cual se programan las rutinas de envío y recepción de información, como también la configuración de la comunicación asincrónica RS-232. Dicho sistema de edición de gráficos es llamado EDITGRAPH y en lecturas posteriores se hará referencia con este nombre. MÓDULOS DE EDITGRAPH Módulo de Presentación Módulo de Menú Inicialización y En este módulo se inicializa el modo gráfico en la computadora, así como las variables a utilizar en el programa. En este módulo se muestran los diferentes menús Archivo, Edición, Ver, Imagen, Graficador Digital y Ayuda. También se muestra una barra de herramientas estándar que contiene algunas de las opciones de los menús. En este módulo se muestra barra de herramientas que permite la edición de gráficos y texto.

Módulo de Dibujo

Tabla 8 Módulos de EDITGRAPH.

25

MODULOS DEL PROGRAMA DE LA INTERFAZ DIGITAL Módulo de Inicialización En este módulo se configuran puertos del microcontrolador PIC16F877, variables, comunicación serial, inicialización de la secuencia de los motores. En este módulo se recibe el gráfico desde la PC. En este módulo se envía un dato a la PC. Esto es para la sincronización del envió del gráfico. En este módulo se direccionan las localidades de memoria para ir guardando el gráfico de llegada. En este módulo se direccionan las localidades de memoria para leer cada una de ellas. En este módulo los motores se mueven para dibujar el gráfico que es enviado desde la PC.

Módulo de Llegada de Gráfico Módulo de Envió de Dato Módulo de Guarda en Memoria EEPROM Módulo de Leer en Memoria EEPROM Módulo de Movimiento de Motores

Tabla 9 Módulos del Programa de la Interfaz Digital.

La descripción general de EDITGRAPH y la interfaz digital se hicieron en las tablas 8 y 9 respectivamente. Uno de los módulos principales en este trabajo de tesis es el Módulo de Menús por ello se profundizará en su contenido, ver figura 14.

26

TABLA VISUAL DE CONTENIDO DE LOS MENÚS

Figura 14 Tabla Visual de Contenido de los Menús.

Descripción de Módulo de Menú de EDITGRAPH Menú. En éste módulo se muestran las diferentes opciones con que cuenta EDITGRAPH. 1 Archivo, este menú contiene las opciones de: Nuevo, Abrir, Guardar, Guardar Como y Salir. 1.1 Nuevo, Genera una plantilla nueva para editar nuevos gráficos. 1.2 Abrir, Abre algún archivo existente en formato .BMP. 1.3 Guardar, Guarda el gráfico en un archivo en formato .BMP. 1.4 Guardar Como.-Renombra un gráfico, con un nuevo nombre. 1.5 Salir.-Termina la ejecución del sistema. Edición, este menú contiene las opciones de: 2.1 Deshacer, Rehace la penúltima acción. 2.2 Cortar, Corta y pasa al portapapeles el gráfico que está seleccionado. 2.3 Copiar, Copia y pasa al portapapeles el gráfico que está seleccionado. 2.4 Pegar, Pega el gráfico que esté contenida dentro del portapapeles. 2.5 Borrar Selección, Borra el gráfico que está seleccionado. Ver, este menú contiene las opciones de: 3.1 Barra de herramientas, Muestra u oculta la barra de herramientas estándar. Imagen, este menú contiene las opciones de: 4.1 Voltear, si hay un gráfico seleccionado, únicamente se voltea ya sea horizontal o verticalmente dicho gráfico, si no, se voltea horizontal o verticalmente todo el gráfico. 4.2 Rotar, si hay un gráfico seleccionado, únicamente se rota 90 o 180 o 270 dicho gráfico, si no, se rota 90 o 180 o 270 todo el gráfico.

2

3 4

27

5 6

Graficador Digital, este menú contiene las opciones de: 5.1 Graficar, manda el gráfico editado a la interfaz digital para dibujarlo. Ayuda, este menú contiene las opciones de: 6.1 Acerca de, muestra una ventana que contiene información acerca de este trabajo de tesis.

3.6 Interfaz • EDITGRAPH. Es el programa encargado de la edición de gráficos. • INTERFAZ DIGITAL. Es el encargado de recibir el gráfico y controlar el sistema XYZ.

28

CAPITULO IV DESAROLLO DEL SISTEMA
4.1 Interfaz Digital La interfaz digital consta de dos partes, un sistema XYZ que es la parte física que dibuja un gráfico y una Tarjeta Digital que se encarga de controlar al sistema XYZ, en la figura 15 se muestra el diagrama de bloques.

Figura 15 Diagrama de Bloques de la Interfaz Digital

El sistema XYZ tiene dos motores de pasos MO61-FD-6125 de 200 pasos por vuelta es decir .55o por paso, son de imán permanente, las características de estos motores se describieron en el capítulo II. Para el control de los motores se utilizaron dos integrados ULN2003, que son un arreglo de transistores tipo Darlington que soporta corriente hasta de 2 Ampers, y estos son activados por las salidas de los puertos A y C del microcontrolador PIC16F877. La tarjeta digital es la encargada de controlar el sistema XYZ, consta de un microcontrolador PIC16F877, una entrada al puerto serial, una MAX232, dos integrados ULN2003 y un circuito adicional para su alimentación. El microcontrolador PIC16F877 es el parte principal que controla todo la tarjeta digital, es decir, a todos los componentes que la conforman. Con los puertos A y C (pines 0-3 de cada puerto) del microcontrolador PIC16F877 se transmiten señales a los ULN2003 y a su vez son reenviados a los motores para que giren por medio de la excitación de sus bobinas a través de pulsos del microcontrolador. La secuencia de los motores es del tipo paso a paso, ver tabla. 4 y 5. En el momento que el sistema XYZ, dibuje un gráfico, en primer instancia los motores se moverán al primer punto del gráfico y lo pintará, después los motores se moverán dependiendo de las posiciones de los demás puntos del gráfico. El tamaño del gráfico que se grafique tendrá un máximo de 73 x 73 píxeles.

29

Para la comunicación serial de la PC y el microcontrolador y viceversa, se debe usar la norma RS232, dicha norma de describió en el capítulo II Los integrados de la familia CMOS y TTL, como son los microcontroladores PIC, se asume que un 0 es igual a cero voltios y un 1 a +5 V. Por tanto para que pueda existir una comunicación entre el microcontrolador y la norma RS232 se necesita un integrado para convertir niveles TTL a niveles RS232 y viceversa, para esto se utiliza el integrado MAX232. Mediante el puerto C se realiza la comunicación con la PC. Las líneas de transmisión y recepción del puerto C (RC6, RC7) de los microcontrolador PIC16F877 están conectadas a las líneas de transmisión y recepción (T1IN y R1OUT) del integrado MAX232 de manera que el PIC16F877 pueda mandar o recibir por el puerto serial. Para realizar la conexión se utiliza un cable serial con conector DB9 hembra. El DB9 hembra está conectado a los pines R1IN, T1OUT del MAX232 que son las líneas de transmisión y recepción que van hacia el microcontrolador PIC16F877 La conexión entre la PC y el MAX232 se muestra en la figura 16.

Figura 16 Cable Serial del MAX232 a la PC.

La tarjeta digital que controla al sistema XYZ se muestra en el diagrama de la figura 17.

30

Figura 17 Tarjeta Digital que Controla al Sistema XYZ.

4.2 Software de la Interfaz Digital El software de la interfaz digital consiste en la programación del microcontrolador PIC16F877. Los procedimientos principales del Software de la interfaz digital del microcontrolador PIC16F877 se describen a continuación. Procedimiento: Programa Principal Este procedimiento principal, controla todas las rutinas del programa, en todo el programa para el funcionamiento de la interfaz digital, ver figura 18. En primera instancia, el programa hace lo siguiente: Configura todas las variables, que utilizará en su ejecución, ver figura 19. Procedimiento: Configuración e Inicialización. En este procedimiento se configuran los puertos y variables del programa.

31

Figura 18 Diagrama de Flujo del Programa de la Interfaz Digital

32

Figura 19 Procedimiento de Configuración e Inicialización de Puertos y Variables.

PUERTO A: Se configura todos los bits del Puerto A como salidas para el control del motor 1. PUERTO C: Se configura el bit7 como entrada y el bit6 salida para la transmisión serial, los 4 bits menos significativos se configuran como salidas para el control del motor 2. PUERTO D: Se configuran todos los bits del puerto A como salidas para el control de la bobina para el control de la pluma. INTCON: Se configura las interrupciones externas, para cuando se presione el botón de dibujar. Después de que se configuraron variables y puertos el programa está: En espera de que llegue un primer byte de la PC, el cual indica que va a llegar el gráfico proveniente de la PC o bien se presione el botón U2, que indica que se va a dibujar lo que hay en memoria EEPROM sin que EDITGRAPH envíe un otra vez el mismo gráfico. 4.2.1 Caso Cuando se Reciba un Byte. Antes de iniciarse la recepción de datos se configura la comunicación serial: Se activa el USART (Universal Synchronous Receiver Transmitter), se selecciona recepción asíncrona, 8 bits y una velocidad de transmisión de 9600 baudios, por último se activa la recepción y espera hasta que llegue un dato, ver figura 20.

33

Figura 20 Procedimiento Recibir Dato desde la PC

Procedimiento: Recibir Datos. Este procedimiento recibe un dato enviados desde EDITGRAPH Después de que se recibió el primer dato, la interfaz digital recibe un segundo byte que indica la coordenada ‘y’, ambas indican la posición del primer punto del gráfico editado en EDITGRAPH, después espera un tercer byte C que determina si se guardará en memoria EEPROM. Se verifica si el bit3 de C está en 1, si está el gráfico será guardada en memoria. Aunque este dato contiene más características, en los tres primeros datos sólo se verifica si “el gráfico será guardado en memoria”. Si el gráfico es guardado en memoria, se guarda el dato X en memoria EEPROM, ver figura 21. El dato es guardado de la manera siguiente:

34

Se da la dirección a acceder de la memoria, donde se empieza desde la primera posición (el microcontrolador tiene 256X8 bytes de memoria EEPROM), después se da el dato a escribir en la memoria (X, Y o C), se selecciona el acceso a la EEPROM, se habilita la escritura en la memoria EEPROM y por último se da la orden de escritura.

Figura 21 Procedimiento Guardar en Memoria EEPROM

Procedimiento: Guarda en Memoria EEPROM Este procedimiento se encarga de guardar un dato en memoria EEPROM. Posteriormente se almacenan los datos Y y C de manera similar al dato X. En cada almacenamiento se va incrementado la dirección de memoria para que cada uno se almacene de forma independiente en cada localidad. Después de que se almacenaron los tres primeros datos se hace un acuse para que la PC envíe los siguientes 3 datos, ver figura 22.

35

Figura 22 Procedimiento Transmitir Dato a la PC

Cuando la PC recibe el acuse procede a enviar los siguientes 3 datos. La interfaz digital verifica que sea el último dato, esto se verifica si el bit1 de C=1, si no lo es se sigue el mismo proceso hasta que el bit1 de C=1. A partir del dato 4, C contiene más características en cuanto al movimiento de los motores, (arriba, abajo, izquierda, derecha, continuidad y no continuidad e indicador del último dato). Cuando se termina de guardar en memoria EEPROM se procede a leer la memoria EEPROM. En ese momento la dirección de memoria es puesta en 0 para que proceda a leer la memoria EEPROM desde tal dirección. Se lee el dato de la memoria EEPROM, dando la dirección a acceder de la memoria (empezando desde la primera posición), se selecciona el acceso a la memoria y se da la orden de lectura; se coge el dato leído y se deja en una variable, ver figura 23.

36

Figura 23 Procedimiento Leer Memoria EEPROM

Procedimiento: Leer Memoria EEPROM Este procedimiento adquiere la información que está guardada en la memoria EEPROM, para dibujarla. Se leerán ahora en grupos de 3 datos. Entre cada lectura se va incrementando la dirección de memoria, una vez que se leen X, Y, que juntos dan el primer punto del gráfico, se llama a la subrutina de Mover Motor X, ver figura 24 que es la que se encarga de mover el motor en la coordenada X del primer punto, y posteriormente se llama a la subrutina de mover motor Y que se encarga de mover el motor en la coordenada Y del primer punto. El movimiento de cualquiera de los motores se utilizan los cuatros pines bajos de los puertos A y C respectivamente como salidas para activar o desactivar por medio del arreglo ULN2003 las bobinas que hacen girar al motor siguiendo la tabla de paso completo que se mostró en el capitulo II. La rutina será llamada tantas veces como sea la distancia leída. Se cambia la secuencia de los bits en cada llamada y así se energizan las bobinas de acuerdo a la secuencia para que los motores giren X veces.

37

Figura 24 Procedimiento Mover Motor.

Procedimiento: Mover Motor Este procedimiento se encarga de mover el motor un paso en el eje X. El movimiento en el eje Y es similar a este motor. Entre cada paso del motor se debe dar un retardo de 127 microsegundos, ya que los motores llegan a presentar fallas por la rapidez con la que se trabaja. Después de haberse posicionado ambos motores (en X y en Y) se llama a la subrutina de bajar la pluma, esto se hace de la siguiente manera: La bobina es energizada (PUERTOD[0]=0), de esa manera se baja la bobina haciendo y a su vez la pluma pinta el papel en el sistema mecánico, después hace un retardo de 7.620 milisegundos para pintar el punto. Procedimiento: Pintar Punto Este procedimiento pinta un punto del gráfico. Una vez que la pluma dibujó el punto, la pluma se queda abajo. Nuevamente se vuelven a leer los siguientes tres datos y se vuelve hacer el procedimiento de mover en X y en Y, pero ahora estos movimientos dependerán del tercer dato C, ver figura 25. Primero se verifica la continuidad de los puntos es decir se verifica el bit2 de C si no son continuas la pluma se levanta es decir se desenergiza la bobina, esto para no dibujar la hoja en punto que no debe dibujar, después se verifica hacia donde se dirigirá la pluma esto es a la izquierda o a la derecha y esto se verifica con el bit0 de C=0, si es a la derecha las recorrerán las distancias X y Y en el sentido derecha-abajo, cuando se recorren tales distancias se baja la pluma y se vuelven a leer datos de la memoria EEPROM y se inicia el ciclo una vez más. Si es a la izquierda es decir el bit 0 de C es 1 se verifica el bit1 de C si 38

es =0 para verificar arriba abajo entonces la distancia se recorrerá izquierda en el eje X y abajo en el eje Y, se baja la pluma y se vuelven a leer los otros 3 datos y se inicia el ciclo otra vez. Si bit1 de C=1 indica la distancia que se recorrerá al origen es decir de izquierda arriba. En el caso que sean continuas la pluma no sube y recorre las distancias XY y se vuelve a leer datos de la memoria EERPOM. El movimiento que no está permitido es de derecha en el eje X y arriba en el eje Y y esto es por la naturaleza del análisis en EDITGRAPH, ver figura 24.

Figura 24 Procedimiento Características de Movimiento de los Motores.

El proceso vuelve a entrar cuando no es el último punto del gráfico volviendo a leer los 3 datos y verificando el dato C. Cuando se recorre las distancias al origen el programa estará una vez más en espera de que lleguen más datos o bien se oprima el botón de dibujar. En el caso en que los motores giren en sentido contrario la secuencia para energizarse se hace de invirtiendo la secuencia de los giros, ver tabla 5. 4.2.2 Caso Cuando el Gráfico no es Almacenado en Memoria EEPROM. Los primeros tres datos son las coordenadas de inicio, se recorren tales distancias y después se baja la pluma, se hace retardo de 8.890 milisegundos y se envía un dato para avisar a EDITGRAPH que envíe los siguientes tres datos. Después de que se envió el dato 39

se queda en espera para recibir los otros tres datos, igualmente los movimientos de los motores y la bobina va a depender de C. Se realizan los movimientos correspondientes y se vuelve a repetir el proceso. 4.2.3 Caso Cuando se Presione el Botón de Graficar. Este caso ocurre cuando el bit0 del puerto está en 0, esto quiere decir que el botón fue presionado. Después de presionar al botón de graficar, el programa leerá la memoria EEPROM y se dibujará de manera similar a cuando se guardaba en memoria a salvo que solamente se va a leer y procesar. 4.3 EDITGRAPH La parte principal de EDITGRAPH para el proceso de graficación son dos partes: una es un proceso de análisis del gráfico a dibujar, es decir, se analiza de acuerdo a los píxeles que estén en negro que es lo que conforma el gráfico que la distancia entre cada punto a otro, estás distancias se guardan en un archivo para que sea usado en la parte dos. La segunda parte es un proceso que envía las distancias a la interfaz digital y además se configura la comunicación serial para que sea posible la comunicación con la interfaz digital. Procedimiento: Análisis del Gráfico Este procedimiento determina las distancias entre cada punto del gráfico, ver figura 26. Se toma el tamaño máximo del gráfico, el alto y ancho, se realiza una búsqueda (incrementando X e incrementando Y ) a lo alto y a lo ancho del gráfico, la posición inicial es la posición (0), hasta encontrar el primer punto del gráfico de ahí se comienza a tomar referencia con los demás puntos del gráfico ese primer punto es guardado en el archivo, se continua buscando hasta encontrar otro punto del gráfico y se hace una direfencia entre ambos puntos, si la diferencia es negativa quiere decir que el punto está a su izquierda, de lo contrario el movimiento es a la derecha, si la distancia es 1 ya sea en X o en Y quiere decir que hay continuidad, su resultado es la distancia que se recorrerá hacia el segundo punto misma que es guardada en archivo como enteros X, Y y C en este último se guardan las características de cada movimientos de los motores. Este proceso se sigue hasta que se termine con el tamaño del gráfico cuando se llega a este se guarda el último punto del gráfico que es el equivalente para que regrese al punto inicial y se da la característica de último dato y se habilita la opción de guardar en memoria. Una vez que se realizó el proceso de análisis se abre una vez más el archivo y se configura la comunicación serial, ver figura 27. Se llama al servicio 00 de INT 20 para inicializar el puerto serial y se configura a 3600 baudios, no paridad, un bit de parada y por último se selecciona puerto COM1

40

Figura 26 Procedimiento Análisis del Gráfico.

41

Figura 27 Configuración del Puerto Serial.

Procedimiento: Configurar Comunicación Serial. Este procedimiento configura la comunicación serial. Después de que se configuró el puerto serial se procede a enviar los datos contenidos en el archivo, se lee un dato del archivo. Se llama al servicio 01 de INT 20 para envío de datos, se envía el dato que leyó del archivo, se selecciona puerto COM1 y se llama a la interrupción 20 del BIOS para enviar el dato, ver figura 28.

Figura 28 Procedimiento Enviar Dato.

Procedimiento: Enviar Dato Este procedimiento envía un dato contenido en un archivo a la interfaz digital a través del puerto serial. Los datos se envían por bloques de 3 datos y se espera hasta que le llegue un dato para que posteriormente le envíen los siguientes 3 datos, así hasta enviar todo el contenido del archivo. Y está en espera que llegue el acuse para proseguir enviando la información hasta el fin de archivo.

42

Se configura la recepción de dato, y se espera a que llegue un dato en particular, se habilita el servicio 02 de la Interrupción 20 para recibir dato, se selecciona el puerto COM1, y se habilita la interrupción 20 para leer el dato, ver figura 29.

Figura 29 Procedimiento Recibir Dato.

Procedimiento: Recibir Dato. Este procedimiento envía un dato a través del puerto serial. Se mandan tres datos y espera un dato en particular para enviar los siguientes 3 datos del archivo, así hasta que envíe todos los datos del archivo.

43

CAPITULO V EVALUACION DEL SISTEMA
5.1 Pruebas y Resultados Las diferentes pruebas que se hicieron fueron las de dibujar gráficos y del tiempo que tarda la pluma para dibujar. 5.1.1 Pruebas de Dibujar un Punto Estas pruebas se realizaron calculando el tiempo que la bobina debía de permanecer abajo para dibujar el punto. Tiempo 5.080 ms. 6.350 ms. 7.620 ms. 8.890 ms. Resultado No se pinta bien el punto No se pinta bien el punto Se pinta bien el punto (Ideal) Se pinta bien el punto

La velocidad que se utilizó fue la de 7.620 ms, a un retardo mayor se considera un desperdicio. A menor retardo no se pinta bien el punto. 5.1.2 Pruebas de Edición y Graficación. Estas pruebas se realizaron editando un gráfico y enviándolo a la interfaz digital. Las pruebas fueron las siguientes: Prueba 1. Se editó un gráfico pequeño en éste caso un cuadrado, para verificar que un gráfico pequeño se guarda en memoria EEPROM, ver figura 29.

Figura 30 Gráfico de un Cuadrado que Será Guardado en Memoria EEPROM.

44

Comprobando que el gráfico efectivamente es guardado en memoria EEPROM, ver figura 30. El gráfico es dibujado directamente de la memoria sin necesidad de que EDITGRAPH le envíe otra vez el misma grafico, ver figura. 32.

Figura 31 Comprobación de Almacenamiento en Memoria.

Figura 32 Cuadro Graficado.

Prueba 2. En las siguientes pruebas se realizaron con todas las herramientas de la barra de dibujo.

45

Herramienta de relleno, ver figura 33.

Figura 33 Gráfico con Herramienta de Relleno.

EDITGRAPH va mostrando la parte del grafico que el sistema XYZ ha dibujado, cambiándolo a color rojo. En la figura 34, el gráfico ya se ha dibujado en su totalidad.

Figura 34 Indicador de Posición del Punto Dibujado.

46

El gráfico dibujado completamente y editado con herramienta de relleno se muestra en la figura 35.

Figura 35 Relleno Graficado.

Herramienta de brocha, ver figura 36.

Figura 36 Gráfico con Herramienta de Brocha.

47

El gráfico dibujado completamente y editado con herramienta de brocha se muestra en la figura 37.

Figura 37 Brocha Dibujada.

Herramienta de lápiz, ver figura 38.

Figura 38 Gráfico con Herramienta de Lápiz.

48

El gráfico dibujado completamente y editado con herramienta de lápiz se muestra en la figura 39.

Figura 39 Lápiz Graficado.

Herramienta de Texto, ver figura 40.

Figura 40 Gráfico con Herramienta de Texto.

49

El gráfico dibujado completamente y editado con herramienta de texto, se muestra en la figura 41.

Figura 41 Texto Graficado.

Herramienta de Elipse, ver figura 42.

Figura 42 Gráfico con Herramienta de Elipse.

50

El gráfico dibujado completamente y editado con herramienta de brocha se muestra en la figura 43.

Figura 43 Elipse Graficada.

Herramienta de Elipse Rectangular, ver figura 44.

Figura 44 Gráfico con Herramienta de Elipse Rectangular.

51

El gráfico dibujado completamente y editado con herramienta de elipse rectangular se muestra en la figura 45.

Figura 45 Elipse Rectangular Dibujada.

Herramienta de rectángulo, ver figura 46.

Figura 46 Gráfico con Herramienta Rectángulo.

52

El gráfico dibujado completamente y editado con herramienta de rectángulo se muestra en la figura 47.

Figura 47 Rectángulo Graficado.

Herramienta de polígono, ver figura 48.

Figura 48 Gráfico con Herramienta Polígono.

El gráfico dibujado completamente y editado con herramienta de polígono se muestra en la figura 49. 53

Figura 49 Polígono Graficado.

Herramienta de línea, ver figura 50.

Figura 50 Gráfico con Herramienta de Línea.

El gráfico dibujado completamente y editado con herramienta de línea se muestra en la figura 51.

54

Figura 51 Líneas Dibujadas.

Todas las herramientas con que cuenta EDITGRAPH, ver figura 52.

Figura 52 Gráfico con Todas las Herramientas de EDITGRAPH.

El gráfico dibujado completamente y editado con todas las herramientas de EDITGRAPH se muestra en la figura 53.

55

Figura 53 Todas las Herramientas Dibujadas.

5.2 Aplicaciones El diseño con Microcontroladores es sencillo y barato. El control principal en graficadores no está implementado con Microcontroladores. La aplicación de este trabajo de tesis es el dibujar de cualquier tipo de gráficos generados en EDITGRAPH.

56

CAPÍTULO VI CONCLUSIONES Y PERSPECTIVAS
6.1 Conclusiones De acuerdo a las pruebas realizadas y los resultados obtenidos los cuales fueron satisfactorios, se puede decir que los objetivos del trabajo se cubrieron en un 100%. Es decir, • Se hizo una interfaz digital que permite recibir gráficos generados en un sistema de edición y enviarlos a dibujar en un sistema graficador XYZ. • Se diseñó y desarrollo de un sistema de edición de gráficos. • Se realizó una interfaz digital basada en un PIC16F877. • Se implementó la comunicación serial entre el sistema de edición de gráficos y la interfaz digital. De manera particular el trabajar con microcontroladores automatiza procesos de una manera fácil y económica. Se tiene entones que el control para dibujar gráficos, puede ser controlado empleando un microcontrolador. 6.2 Perspectivas Si bien, el objetivo de este trabajo de tesis ha sido cubierto en un 100%, existen otras áreas de mejoras que merecen un estudio más particular. Estas áreas fueron observadas durante el desarrollo de nuestro trabajo de tesis y por la falta de tiempo no pudieron ser exploradas, a saber: • Adaptar la interfaz digital para graficar con editores comerciales tales como Paint, Corel, autocad, archicad etcétera. • Potencializar las herramientas de EDITGRAPH. • Dibujar gráficos a color. • Dibujar gráficos empleando vectores tangentes.

57

BIBLIOGRAFÍA
[1] Dirx Louis, Delphi 5, MARCOMBO, (2000). [2] Edison Duque C. Curso Avanzado de Microcontroladores PIC. CEKIT, (1998). [3] Edison Duque C. Curso Básico de Microcontroladores. CEKIT, (1997). [4] Eugenio Martín C., José Ma. Angulo U., e Ignacio Angulo M. Microcontroladores PIC. La solución en un CHIP. PARANINFO THOMSON LEARNING, (2001). [5] Foley, Van Dam, Feiner, Hughes, Phillips, Introducción la Graficación por Computadora, ADDISON-WESLEY. [6] Francisco Charle, Programación con Delphi 4, ANAYA MULTIMEDIA, (1997). [7] José A. Caballar, El Libro de las Comunicaciones del PC, Técnicas, Programación y Aplicaciones, ALFAOMEGA. [8] José Ma. Angulo U., Susana Romero Y. e Ignacio Angulo M. Microcontroladores PIC, Diseño práctico de aplicaciones, Segunda Parte. MC GRAW HILL. (2000). [9] Leticia Estrada González, Tesis de Lic. “Diseño y Construcción de un robot Graficador Controlado por Computadora”, Facultad de Ciencias de la Computación, BUAP, (1999). [10] Luis Joyanes A., Antonio Muñoz C. Borland Delphi, Iniciación y Referencia. MC GRAW HILL, (1999). [11] Meter Abel. Lenguaje Ensamblador y Programación para IMB y Compatibles .PRENTICE HALL, (1996). [12] Michel Cruquet, PC y Robótica, Técnicas de interfaz, PARANINFO.

58

APÉNDICE A

MANUAL DE USUARIO

SISTEMA XYZ PARA IMPRESIÓN DE PLANTILLAS

MANUAL DE USUARIO

59

CONTENIDO
1 INTRODUCCIÓN .................................................................................................. ........................................................................................................ 2 EDITGRAPH 2.1 CREAR GRÁFICOS EN EDITGRAPH ........................................................ ................................... 2.2 TRABAJAR CON GRÁFICOS EN EDITGRAPH ........................................................................................................ 3 HARDWARE .............. 4 PASOS A SEGUIR PARA LA CONEXIÓN DEL SISTEMA XYZ 5 GRAFICACIÓN ..................................................................................................... .......................................................................... 6 SOLUCIÓN DE PROBLEMAS 61 61 61 63 64 66 66 68

60

1 Introducción Este manual pretende servir como guía para mostrar cómo dibujar un gráfico generado en el sistema de edición de gráficos, en el sistema XYZ. Se describe paso a paso la instalación y uso del sistema EDITGRAPH, así como también el funcionamiento del sistema XYZ. Al final, se presentan una serie de soluciones a los diferentes problemas más comunes en el uso y manejo del EDITGRAPH y del sistema XYZ. 2 EDITGRAPH El software editgraph.exe es un programa desarrollado en el lenguaje de programación DELPHI 5 (Ver Figura 54) que permite editar gráficos sencillos y texto, estos son en blanco y negro y pueden guardarse como archivos de mapa de bits (.BMP). El gráfico puede ser dibujado en el sistema XYZ o puede ser pegado en otro documento ó puede pegarse un gráfico desde otro documento. No requiere ser instalado, pues es un programa que se ejecuta desde cualquier directorio, solo se necesita tener instalado DELPHI 5 en la PC y tener conectado un mouse (ratón) a su PC. 2.1 Crear Gráficos en EDITGRAPH

Figura 54 EDITGRAPH en Ejecución.

Para dibujar una línea recta 1 2 3 En el cuadro de herramientas, haga clic en Línea . En el cuadro de herramientas, haga clic en un ancho de línea. Arrastre el puntero para dibujar la línea.

Para dibujar una línea de forma libre 61

1 2

En el cuadro de herramientas, haga clic en Lápiz Arrastre el puntero para dibujar la línea.

Para dibujar una elipse o un círculo En el cuadro de herramientas, haga clic en Elipse 1 Arrastre el puntero para dibujar la elipse o el círculo. El ancho del borde del círculo o la elipse es el mismo que el del grosor seleccionado para la línea. Para cambiar el grosor del borde, haga clic en la herramienta de línea del cuadro de herramientas y, a continuación, haga clic en el grosor que desee en el cuadro que se encuentra bajo el cuadro de herramientas. Para dibujar un rectángulo o un cuadrado 1 En el cuadro de herramientas, haga clic en Rectángulo para crear una figura de para crear una figura de esquinas cuadradas o haga clic en Rectángulo redondeado esquinas redondeadas. 2 Para dibujar un rectángulo, arrastre diagonalmente el puntero del mouse (ratón) en la dirección que desee. El ancho del borde del cuadro es el mismo que el del grosor seleccionado para la línea. Para cambiar el grosor del borde, haga clic en la herramienta de línea o de curva del cuadro de herramientas y, a continuación, haga clic en el grosor que desee en el cuadro que se encuentra bajo el cuadro de herramientas. Para dibujar un polígono 1 En el cuadro de herramientas, haga clic en Polígono 2 Arrastre el puntero para dibujar una línea recta. 3 Haga clic en cada posición donde desea que aparezca un nuevo segmento de línea. El ancho del borde del polígono es el mismo que el del grosor seleccionado para las herramientas de línea. Para cambiar el grosor del borde, haga clic en la herramienta de línea o de curva del cuadro de herramientas y, a continuación, haga clic en el grosor que desee en el cuadro que se encuentra bajo el cuadro de herramientas. Para escribir y dar formato a un texto 1 En el cuadro de herramientas, haga clic en Texto 2 Para crear un marco de texto, arrastre diagonalmente el puntero del mouse (ratón) hasta conseguir el tamaño que desee. 3 En el cuadro de herramientas de texto, haga clic en la fuente, el tamaño y el estilo que desee para el texto. 4 Escriba el texto. También puede pegar texto en un cuadro de texto, pero no gráficos. Puede escribir texto en el cuadro de texto sólo una vez. Al hacer clic fuera del cuadro, el texto se convierte en un gráfico y no podrá activarlo de nuevo. Para deshacer hasta tres cambios, en el menú Edición, haga clic en Deshacer para cada cambio

62

Para borrar un área pequeña 1 En el cuadro de herramientas, haga clic en Borrador 2 En el cuadro de herramientas, haga clic en un tamaño de borrador. 3 Arrastre el puntero del mouse sobre el área que desee borrar. Para borrar un área grande 1 En el cuadro de herramientas, haga clic en Selección rectangular. 2 Seleccione el área que desee borrar. 3 En el menú Edición, haga clic en Borrar selección. Para rellenar con color negro un área o un objeto 1 En el cuadro de herramientas, haga clic en Relleno 2 Haga clic con el botón primario del mouse en el área o en el objeto que desea rellenar. 3 Si la figura que está rellenando tiene alguna apertura en el borde, el color negro de relleno se expandirá al resto del área de dibujo. Para pintar con una Brocha 1 En el cuadro de herramientas, haga clic en Brocha . 2 En el cuadro de herramientas, haga clic en una forma de Brocha. 3 Para pintar, arrastre el puntero del mouse (ratón) sobre la imagen. Para deshacer cambios 1 En el menú Edición, haga clic en Deshacer. Solo se puede deshacer un sólo cambio. 2.2 Trabajar con Gráficos en EDITGRAPH Para voltear o rotar un gráfico o un objeto 1 En el cuadro de herramientas, haga clic en Selección para seleccionar un área rectangular. 2 Dibuje un cuadro alrededor del objeto o del área que desea voltear o girar. 3 En el menú Imagen, haga clic en Voltear o girar. 4 Haga clic en una de las opciones de Voltear o girar. para seleccionar un área

63

Para copiar y pegar parte de un gráfico 1 En el cuadro de herramientas, haga clic en Selección para seleccionar un área rectangular. 2 Para definir el área que desea copiar, arrastre el puntero del mouse (ratón). 3 En el menú Edición, haga clic en Copiar. 4 En el menú Edición, haga clic en Pegar. 5 Arrastre la selección a una nueva ubicación. No es posible pegar gráficos si está seleccionada la herramienta de texto. Para desactivar el cuadro de selección, haga clic fuera del mismo. Para arrastrar un gráfico 1 En el cuadro de herramientas, haga clic en Selección para seleccionar un área rectangular. 2 Mantenga presionado el botón del mouse (ratón) mientras se mueve el mouse (ratón). 3 Para pegar un gráfico procedente de otro documento 4 En el menú Edición, haga clic en Pegar 5 Arrastre la nueva imagen a la posición que desee. Para Editar un gráfico nuevo 1 En el menú Archivo, haga clic en Nuevo. Para Abrir un archivo existente 1 En el menú Archivo, haga clic en Abrir. 2 Buscar ubicación del archivo Para Guardar un archivo 1 En el menú Archivo, haga clic en Guardar. 2 De el nombre del archivo Para Renombrar un archivo existente 1 En el menú Archivo, haga clic en Guardar Como. 2 Dar nuevo nombre del archivo 3 Hardware La interfaz digital consiste de dos partes: una tarjeta digital, ver figura 54 y un sistema XYZ, ver figura 55.

64

Figura 55 Tarjeta Digital.

De donde: A.-Integrado MAX232 B.- Microcontrolador PIC16F877. C.- Integrado ULN2003 D.- Integrado ULN2003 E.- Fuente de voltaje J1.-Conector bobina J2.-Conector de motor J3.-Conector de motor J4.-Conector RS232 J5.-Cable Serial J6.-Conector a la fuente de voltaje. L1.-Led indicador, (si está encendida la tarjeta) U1.-Push Button. (Graficar) U2.-Push Button (Reset).

65

Figura 56 Sistema XYZ.

4 Pasos a Seguir para la Conexión del Ssistema XYZ 1 2 3 4 Conectar el DB9 al puerto serial COM1 Conectar el sistema graficador XYZ al corriente eléctrica. Colocar hoja tamaño carta al sistema graficador XYZ. Encender su PC.

5 Graficación 1. Buscar el programa editgraph.exe y seleccionarlo. Dar enter o doble clic sobre él. Enseguida aparecerá una ventana, ver figura 57.

Figura 57 Ventana Principal de EDITGRAPH.

66

2. Si ya existe un grafico, ábralo y vaya al paso 3. Si no, edite el grafico que desee siguiendo los pasos descritos en II.I y vaya al paso 3. 3. Editado el gráfico se procede a la graficación en el sistema XYZ. Para esto, vaya al menú y haga clic en Graficador Digital, seleccionar Graficar; o bien, desde el teclado dar Ctl+G. Si ha editado un gráfico en EDITHGRAPH como por ejemplo la que se muestra en la figura 58, y se envía al sistema XYZ, usted observará que los puntos de la imagen que han sido graficados cambian a color rojo. En la figura 59 se muestra como el sistema XYZ realiza el dibujo, en un momento dado. 4. Si al momento de mandar a graficar, aparece el mensaje ‘El grafico será guarda en memoria’ se tendrá la opción de graficarla una vez más sin necesidad de enviarse desde EDITGRAPH, solo basta presionar el botón U1, ver figura 55.

Figura 58 Imagen Editada en EDITGRAPH.

67

Figura 59 El Sistema XYZ Dibujando un Gráfico.

6 Soluciones a Problemas Problema Posibles soluciones Al graficar un gráfico en EDITGRAPH, Verifique que el cable esté conectado al este no responde. COM1 o bien al conector J4 Verifique que la fuente de voltaje esté conectada a la toma de corriente (J5). No trabaja el graficador Verifique que la fuente de voltaje esté conectada a la toma de corriente (J5), o bien el L1 esté encendido Verifique que todos los integrados estén bien conectados (A, B C y D), presionar un poco para que se inserten bien. Verifique que cualquiera de los integrados no estén quemados, si cualquiera de estos los estuviera, se deberán cambiar. A excepción del microcontrolador (B). No caminan los motores o no funciona la Verifique que los cables de los motores bobina estén conectados a los conectores J1, J2 y J3. Verifique que los integrados ULN2003 A y B no estén quemados, si lo están se deberán cambiar. No sirven los botones de reset o de Vuelva a presionar cualquiera de los graficado. botones U1 o U2 con más fuerza.

68

APÉNDICE B
ULN2003A Es un circuito integrado que tiene un arreglo de 8 transistores tipo Darlington capaces de manear manejar cargas de hasta 500mA, las entradas de activación (1B-7B) pueden ser directamente activadas por un microcontrolador. Los ocho transistores conectados tipo Darlington NPN de arreglos son ideales para interconectar entre un circuito digital de bajo nivel de lógica (TTL, CMOS o PMOS /NMOS) y los requisitos más altos de corriente/voltaje de lámparas, relevadores o de otras cargas similares para una amplia gama de los usos en la computadora, industria y el consumidor. Todos los dispositivos ofrecen salidas open-collector y liberan los diodos para la supresión transitoria.
RANGO Voltaje de salida Voltaje de entrada Corriente de colector Corriente de base Temperatura ambiente Temperatura de almacenamie nto Temperatura de unión SÍMBOLO VO VI IC IB TA TSTG TJ VALOR 50 30 500 500 -20 A 70 -65 A 150 150 UNIDAD V V mA mA °C °C °C

Diagrama de pines

69

MAX232 Este circuito integrado soluciona los problemas de niveles de voltaje cuando se requiere enviar señales digitales sobre una línea RS-232. El MAX232 se usa en aquellas aplicaciones donde no se dispone de fuentes dobles de ±12 voltios; por ejemplo, en aplicaciones con baterías de una sola polaridad. El MAX232 necesita una fuente de +5 para su operación; un elevador de voltaje interno convierte el voltaje de +5V al de doble polaridad de ±12V. Como la mayoría de las aplicaciones de RS232 necesitan de un receptor y un emisor, el MAX232 incluye de un solo empaque 2 parejas completas de driver y receiver. El MAX232 tiene un doblador de voltaje de +5V a +10 voltios y un inversor de voltaje para obtener la polaridad de -10V. El primer convertidor utiliza el condensador C1 para doblar los +5V de entrada a +10V sobre el condensador C3 en la salida positiva V+. El segundo convertidor usa el condensador C4 de la salida V-. En la práctica casi siempre se utilizan condensadores de Tantalio de 10µF.

Diagrama de pines

Fuentes de Alimentación Voltajes de entrada: Tin Rin Voltajes de Salida: Tout Rout Protección corto Disparo de Potencia

Características de su funcionamiento
-0.3 +6V -0.3v a (Vcc -0.3V) ±30V ±15V -0.3V a (Vcc+0.3V) Continua 842mW

Características a Vcc=+5, C1-C4=0.1µF
Transmisor Voltaje de salida (Carga 3KΩ) Entrada BAJA Entrada ALTA Resistencia de entrada Velocidad Receptor Rango de entrada Entrada BAJA Entrada ALTA Resistencia de entrada Min. ±5V 2V

Típ. ±18V 1.4V 1.4V 1.4V 200Kb/seg.

Máx. 0.8V

±30V 0.8V 3KΩ 1.3V 1.8V 5KΩ 2.4V 7KΩ

70