Академический Документы
Профессиональный Документы
Культура Документы
Fdo.:
AGRADECIMIENTOS
A mi familia y amigos. A mis tutores. Al profesor Jos Manuel Ruiz Gutirrez.
Resumen.BIBLIOGRAFA
Resumen
En este trabajo se define el diseo e implementacin de un analizador lgico virtual. El estudio del analizador lgico tradicional y la incursin en el mundo tecnolgico de la instrumentacin virtual son primordiales para la compresin y el posterior desarrollo de este trabajo. La virtualizacin se elabora con el software de cdigo abierto Myopenlab (versin 3.0.3.2). El control y la conexin entre el instrumento virtual y el circuito lgico a comprobar se realizan a travs de la tecnologa de la placa de adquisicin de datos desarrollada por Arduino (modelo Duemilanove), tambin en cdigo abierto. Con todo ello, se consigue un instrumento virtual eficiente e interactivo con el que poder desarrollar futuros estudios o investigaciones dentro del campo de la electrnica digital. El analizador lgico virtual permite el anlisis, comprobacin y comprensin de diferentes circuitos lgicos digitales de una forma ms sencilla, econmica, dinmica, til y prctica.
Abstract
This project defines the design and implementation of a virtual logic analyzer. The study of traditional logic analyzer and the foray into the world of virtual instrumentation technology are essential for the understanding and further development of this work. Virtualization is made with open-source software MyOpenLab (version 3.0.3.2). The control and virtual connection between the instruments and to verify the logic circuit are made through the plate technology developed by data acquisition Arduino (Duemilanove model), also open-source. With all this, you get an efficient and interactive virtual instrument with which to develop future studies or research in the field of digital electronics. The virtual logic analyzer allows the analysis and understanding of different testing digital logic circuits in a more simple, inexpensive, dynamic, useful and practical.
Objetivos.BIBLIOGRAFA
Objetivos
El objetivo primordial del presente documento tcnico es la consecucin de la implementacin de un instrumento virtual como es el analizador lgico, con la intencin de aplicar su uso en el mbito de la educacin superior. Objetivos generales: 1. Establecer las ideas necesarias para comprender el concepto y la importancia de la instrumentacin virtual en la actualidad. 2. Aprender a manejar software de programacin grfica, sus posibilidades y limitaciones. 3. Afianzar en profundidad los conocimientos sobre tarjetas de adquisicin de datos. 4. Establecer un diseo propio de un interfaz grfico de usuario. 5. Conseguir el correcto funcionamiento del trabajo a travs de ejemplos prcticos. Objetivos especficos: 1. Afianzar el estudio del funcionamiento y rutinas del analizador lgico. 2. Conocer las partes fundamentales del analizador lgico. 3. Implementar un diseo viable para un analizador lgico virtual utilizando como herramienta de programacin Myopenlab y tarjeta de adquisicin de datos tipo Arduino.
ndice de contenidos.
0 1
Introduccin......................................................................................................... 10 Instrumentacin Virtual frente a instrumentacin tradicional. ............................... 11 1.1 Instrumentacin tradicional ........................................................................... 11 1.1.1 Equipos de medida ........................................................................ 12 1.1.2 Equipos de medida de datos mltiples ........................................... 13 1.1.3 Sistemas de telemetra ................................................................... 13 1.1.4 Equipos de control......................................................................... 14 1.2 El analizador lgico ...................................................................................... 15 1.2.1 Arquitectura bsica ........................................................................ 16 1.2.2 Descripcin de su funcionamiento ................................................. 18 1.2.3 Modos de funcionamiento ............................................................. 19 1.2.4 Caractersticas y parmetros .......................................................... 20 1.3 Instrumentacin virtual ................................................................................. 21 1.3.1 Descripcin ................................................................................... 21 1.3.2 Componentes del instrumento virtual............................................. 23 1.3.3 Ventajas frente a la instrumentacin tradicional ............................. 25
Desarrollo del trabajo ........................................................................................... 27 2.1 2.2 Uso didctico ................................................................................................ 28 Software utilizado ......................................................................................... 29 2.2.1 Caractersticas ............................................................................... 29 2.2.2 Aplicaciones .................................................................................... 30 2.2.2 Entorno de trabajo ......................................................................... 30 2.3 Hardware utilizado ........................................................................................ 37 2.3.1 Elementos importantes .................................................................. 37 2.3.2 Especificaciones del modelo .......................................................... 38
II
ndice de contenidos.
2.3.3 Software de Arduino .................................................................. 40 2.4 Diseo de la interfaz grfica .......................................................................... 41 2.4.1 Factores implicados ....................................................................... 41 2.4.2 Partes fundamentales ..................................................................... 42 2.4.3 Desarrollo del diseo ..................................................................... 44 2.4.4 Funcionamiento virtual.................................................................. 48 2.4.5 Demostraciones prcticas .............................................................. 51 CONCLUSIONES ...................................................................................................... 53 BIBLIOGRAFA ........................................................................................................ 54 Anexo A Arduino Duemilanove .................................................................................. 56 A. 1 V is i n ge ner a l ............................................................................. 56 A. 2 Resu me n ........................................................................................ 56 A. 3 Al i me nt ac i n ............................................................................... 57 A. 4 Me mo r ia ........................................................................................ 58 A. 5 E nt r adas y S a l idas ..................................................................... 58 A. 6 Co mu nic ac io nes .......................................................................... 59 A. 7 P r o gr ama c i n ............................................................................... 60 A. 8 Re inic io Aut o mt ico ( So ft war e) ............................................ 60 A. 9 P r ot ecci n co nt r a so br et ens io nes e n US B .......................... 61 A. 10 Car act er st icas F s ica s ........................................................... 61 Anexo B Esquema de Arduino Duemilanove ........................................................... 62 Anexo C Correspondencia de pines entre ATmega168/328 y Arduino......................... 63 Anexo D Analizador lgico USB-LOGI-100 ........................................................... 64
II
ndice de contenidos. Fig. 1 Osciloscopio tradicional. .............................................................................................................. 11 Fig. 2 Analizador lgico tradicional. ...................................................................................................... 11 Fig. 3 Generador de ondas tradicional. .................................................................................................. 12 Fig. 4 Voltmetro. .................................................................................................................................. 12 Fig. 5 Multmetro. ................................................................................................................................. 13 Fig. 6 Telemetra mediante Intranet. ..................................................................................................... 13 Fig. 7 Analizador lgico convencional. ................................................................................................... 15 Fig. 8 Diagrama de bloques del analizador lgico. ................................................................................. 17 Fig. 9 Diagrama de flujo del funcionamiento bsico............................................................................... 18 Fig. 10 Esquema de modos de funcionamiento ...................................................................................... 19 Fig. 11 Analizador lgico de bajo coste.................................................................................................. 20 Fig. 12 Analizador lgico de alta gama.................................................................................................. 20 Fig. 13 Instrumento Virtual e Instrumento Tradicional. .......................................................................... 21 Fig. 14 Niveles de la instrumentacin virtual. ........................................................................................ 24 Fig. 15 Ejemplo de un interfaz grfico de usuario................................................................................... 27 Fig. 16 Panel Circuito. ........................................................................................................................... 31 Fig. 17 Panel Frontal. ............................................................................................................................ 31 Fig. 18 Proyectos. ................................................................................................................................. 32 Fig. 19 Librera Panel Circuito................................................................................................................ 32 Fig. 20 Librera Panel Frontal. ............................................................................................................... 33 Fig. 21 Editor de Propiedades................................................................................................................ 34 Fig. 22 Men contextual de elemento concreto. .................................................................................... 34 Fig. 23 Barra de botones. ...................................................................................................................... 35 Fig. 24 Tipo de dados. ........................................................................................................................... 35 Fig. 25 Diagrama de flujo con variables................................................................................................. 36 Fig. 26 Arduino Duemilanove. ............................................................................................................... 37 Fig. 27 Bloque de inicio. ........................................................................................................................ 42 Fig. 28 rea de Entradas Digitales......................................................................................................... 43 Fig. 29 rea de Entradas Analgicas. .................................................................................................... 43 Fig. 30 rea de Salidas Digitales............................................................................................................ 43 Fig. 31 Lenguaje Arduino. ..................................................................................................................... 44 Fig. 32 Ejemplo prctico........................................................................................................................ 45 Fig. 33 Elementos Grficos. ................................................................................................................... 45 Fig. 34 Componente Arduino. ................................................................................................................ 46 Fig. 35 Panel Circuito del Analizador Lgico. .......................................................................................... 47 Fig. 36 Abrir Proyecto. .......................................................................................................................... 49 Fig. 37 Ventana de Errores y Advertencias............................................................................................. 49 Fig. 38 Barra de Botones. ...................................................................................................................... 50 Fig. 39 Interfaz virtual........................................................................................................................... 50 Fig. 40 Integrado puertas AND. ............................................................................................................ 51 Fig. 41 Tabla de Funcin lgica AND...................................................................................................... 51 Fig. 42 Montaje LDR. ............................................................................................................................ 52
IV
ndice de contenidos.
Fig. D 1 Analizador lgico USB-LOGI-100 ............................................................................................... 64 Fig. D 2 Visualizacin en el analizador lgico. ........................................................................................ 66 Fig. D 3 Cables de medicin de 20 pines ................................................................................................ 66 Fig. D 4 Micro-klebs .............................................................................................................................. 66
IV
Introduccin.
0 Introduccin
En este proyecto se va a realizar el diseo virtual de un analizador lgico con el objetivo de adentrarse y comprender de una forma prctica la electrnica digital en el mbito docente. Para ello se proceder al estudio y conocimiento de los analizadores lgicos convencionales como instrumento de medida, sus caractersticas bsicas, funcionamiento y sus propiedades. Tambin es necesario entrar en la compresin y cada vez ms creciente uso de la instrumentacin virtual frente a la instrumentacin virtual. Esto es una gran ventaja en un espacio como es el de la enseanza ya que un equipo convencional de medida requiere mayor presupuesto y un mantenimiento que con la instrumentacin virtual no son necesarios ya que se cuenta con el procesador y monitor de un ordenador comn (PC), adems de la tarjeta de adquisicin de datos necesaria. Para conseguir desarrollar el diseo se cuentan con varias herramientas como son el software Myopenlab y el hardware Arduino. Dichas herramientas son adquiridas fcilmente ya sea mediante descarga en la propia pgina web del producto o en el caso del hardware por un precio reducido en cualquier tienda especializada. Se ha tomado la decisin del uso de estas herramientas porque se tratan de dispositivos libres en cdigo abierto, otra ventaja a la hora de no tener que pagar licencias con su correspondiente coste y la posible mejora de los dispositivos por parte de especialistas. Todo ello permitir el desarrollo virtual necesario para conseguir un instrumento esencial y til dentro del campo de la lgica digital como es el analizador lgico virtual, que nos permitir capturar, analizar, procesar y visualizar diferentes tipos de sistemas digitales con el propsito de mejorar en la adquisicin y afianzamiento de los conocimientos tericos de la electrnica digital mediante casos prcticos. El presente documento estar dividido en dos partes bien diferenciadas: Por un lado el estudio y la comprensin de la importancia creciente de los instrumentos virtuales frente a los tradicionales equipos instrumentales, justificando a la vez la realizacin del proyecto en cuestin. Por otro lado, el ncleo de desarrollo del proyecto justificando su realizacin con fines didcticos, exponiendo las herramientas usadas y la forma de manejarlas, el diseo y la implementacin del interfaz grfico de usuario para el analizador lgico virtual. La experimentacin prctica con diferentes pruebas generar unos resultados determinados que sern expuestos, previos a la conclusin final que determine este proyecto.
10
11
Por eso se trata de un instrumento esttico y cerrado que impide el cambio en su funcionamiento por pequeo que sea ya que de ser as, sera necesario modificar su sistema interno de circuitera electrnica, cosa poco til y profesional. Se pueden distinguir ampliamente los equipos de instrumentacin catalogados, bien sean de medida o de control. En un sistema de medida de un instrumento una magnitud es medida y su valor monitorizado posteriormente. En cuanto al control por parte de la instrumentacin tradicional su funcin es tambin la medida de una variable pero con la intencin de conseguir un valor determinado para dicha variable, sea o no monitorizado.
El transductor (sensor) transforma un valor fsico en electrnico. El acondicionador de seal que adapta la seal elctrica del transductor para la posterior visualizacin. La fuente de alimentacin proporciona la energa elctrica necesaria. El visualizador que nos muestra la magnitud de la medida.
Fig. 4 Voltmetro.
12
Fig. 5 Multmetro.
13
14
15
o El disparo o trigger es usado para determinar el punto y estado en el que se quiere empezar a visualizar una seal, existiendo tres tipos de disparo: pre-disparo, que almacena en la memoria toda la informacin que existe a continuacin del disparo, post-disparo, que almacena con anterioridad al disparo, e intermedio que almacena en memoria antes y despus del disparo. Tambin, dentro del muestreo asncrono, existen diferentes mtodos de disparo en relacin con la pendiente, en ancho de pulso y el tiempo de la seal o patrones de seal.
16
o Con la seal de reloj y la condicin de disparo se controla la adquisicin de datos en la memoria. Su tamao especifica el nmero de muestras que se pueden guardar y su ancho determina el nmero de muestras que pueden ser adquiridas al mismo tiempo.
Visualizacin: Esta ltima etapa es la comprendida por la interface que muestra las seales que han sido almacenadas previamente en la memoria. En este bloque se puede editar las caractersticas y la forma de visualizacin de la adquisicin de datos.
17
18
19
20
La instrumentacin virtual involucra tareas de procesamiento, anlisis, almacenamiento y despliegue de datos relacionados con la medicin de una seal especfica, que varan dependiendo las necesidades del usuario; a diferencia de la instrumentacin tradicional que se caracteriza por realizar funciones especficas que no pueden ser modificadas por el usuario ya que estn definidas por el fabricante. A pesar de su denominacin como instrumento virtual, no se trata de equipos de simulacin simplemente, ya que realmente son equipos de adquisicin y procesamiento de datos de un sistema real. Se llaman virtuales ya que sus operaciones son realizadas por un software que puede ser diseado previamente, o por el mismo usuario teniendo al menos un mnimo de conocimientos. Este software es el encargado de disear los programas que definirn el instrumento. Esta parte virtual del instrumento es empaquetada en un computador
21
tipo PC o cualquier estacin de trabajo. La otra parte fundamental es el hardware que se encarga de la adquisicin y adecuacin de los datos de medida. Todo esto permite una mayor capacidad de adaptacin a los intereses de los usuarios sin necesidad de grandes costes adicionales adems de las ventajas que ofrece la tecnologa cada vez ms avanzada de los ordenadores personales. Como su rendimiento o la conexin a redes de internet. Al estar basado fsicamente en un ordenador, a eficiencia del instrumento virtual est limitada por su hardware, velocidad, estructura, buses de comunicacin, configuracin de sus entradas y salidas. Esto es importante para saber cules son nuestras limitaciones a la hora del diseo y optimacin de recursos. Con la plataforma virtual adquirida, se puede disear la interface que se requiera y definir y modificar las funciones y apariencia del diseo. Con ello se consigue la clave principal del instrumento virtual que es el gobierno del instrumento desde un principio para adaptarlo a necesidades especficas, debido a que sus funciones pueden ser redefinidas tantas veces como se dese. El diseo del instrumento virtual se puede realizar mediante diferentes lenguajes de programacin, dependiendo del software utilizado. Con la herramienta de software apropiada el diseador del instrumento virtual es capaz de crear sus propias aplicaciones, implementando e integrando rutinas que requiere un proceso en particular. El instrumento virtual se beneficia de los ordenadores convencionales (PC) por su bajo coste o de los equipos de trabajo industrial y su alto rendimiento para conseguir disear tanto el software como el hardware que nos dar opcin a ms accesibilidad y funcionalidad que un instrumento tradicional. La mayor ventaja y funcin de un instrumento virtual es la capacidad que le da al usuario para determinar por l mismo las caractersticas, parmetros y funciones que le sern tiles en el futuro, controlando en todo momento sus limitaciones y capacidades de uso. Mediante la virtualizacin instrumental se pueden obtener mltiples equipos virtuales desde osciloscopios hasta generadores de seal. Al igual que el instrumento tradicional se requiere de una inversin pero como ya sabemos, el software y hardware se pueden reconvertir y reutilizar a criterio del usuario segn sus necesidades, por lo que ya no son necesarios varios instrumentos con funciones diferentes, sino herramientas bsicas que nos permitan convertirlas en diferentes instrumentos segn varen nuestras necesidades y propsitos.
22
hardware de acondicionamiento y adquisicin, el sistema operativo requerido en el PC, la flexibilidad y limitaciones propias o la complejidad del lenguaje de programacin. Para la posible programacin de la aplicacin virtual existen muchos lenguajes de programacin en el mercado, C, C++, C#, algunos de forma visual como Visual Basic, Visual C, etc. Estos ltimos son combinacin de objetos grficos y texto. Tambin existen lenguajes de programacin totalmente grficos, sin necesidad de utilizar texto, el cual es que el permite la creacin de instrumentos virtuales. Este lenguaje de programacin grfica est formado por diferentes caractersticas: El uso de iconos, cables grficos, controles e indicadores; programacin en base a un diagrama de bloques; el uso de dos ventanas de programacin: panel de controles y panel del diagrama; ejecucin del programa en base al flujo de datos. Los diagramas de bloques estn formados por iconos y bloques grficos interconectados entre s. Cada bloque cuenta con unas entradas y salidas propias que determinan el bloque y a la vez el lenguaje o tipo de dato que usa el elemento concreto. Los bloques se ejecutan cuando reciben los datos en sus terminales de entrada, siendo una ejecucin paralela a los dems elementos. Cada programa o aplicacin de este tipo es llamada instrumento virtual (VI, por sus siglas en ingls), a la vez que se pueden crear varios sub-VI en el caso de que sea necesario y la aplicacin diseada sea de tamao considerable. De esta forma, se consigue disear una aplicacin completa, basada en un lenguaje de programacin intuitivo y fcil de aprender.
24
tecnologa hacia este lado hace que cada vez se adquieran productos con mayores velocidades, rendimientos y calidad. Un diferencia significativa entre instrumento tradicional y virtual es el punto clave de cada uno. En el caso del instrumento tradicional, lo significativo y primordial es el hardware ya que lo es casi todo, desde la interfaz que se comunica con el usuario mediante botones, variadores de parmetros y monitor, los circuitos electrnicos integrados que son el ncleo del equipo, etc. Sin posibilidad de intervencin o modificacin. En cambio, en un instrumento virtual lo que le define como tal es el software ya que es el que se carga de las mismas funciones que se encarga el hardware del instrumento tradicional pero con la posibilidad de mejora y adaptacin al usuario. La instrumentacin virtual puede tambin ser implementada en equipos mviles como PC porttil, equipos distribuidos en campo, equipos a distancia (conectados va radio, Internet, etc.), o equipos industriales. La flexibilidad, el bajo costo de mantenimiento, la reutilizacin, la personalizacin de cada instrumento, la rpida incorporacin de nuevas tecnologas, el bajo costo por funcin, el bajo costo por canal, etc. Son algunos de los beneficios que ofrece la instrumentacin virtual.
Instrumento tradicional Definido por el fabricante Funcionalidad especfica, conectividad limitada. Hardware es la clave.
Instrumento virtual Definido por el usuario con Funcionalidad ilimitada, orientado a aplicaciones, conectividad amplia. Software es la clave Bajo costo / funcin, variedad de Alto costo / funcin funciones, reusable. Arquitectura "cerrada" Arquitectura "abierta". Lenta incorporacin de nuevas Rpida incorporacin de nuevas tecnologas, gracias a la plataforma PC. tecnologa. Bajas economas de escala, alto costo Altas economas de escala, bajos costos de mantenimiento. de mantenimiento.
26
27
28
virtuales que permiten hacerse una idea de diseados se componen y como fueron diseados. Una vez nos hemos relacionado con el programa de diseo virtual, ser ms fcil crear nuestros propios instrumentos virtuales teniendo en cuenta su funcionamiento real, las caractersticas bsicas necesarias y las limitaciones con las que se cuenta. En el caso concreto de un analizador lgico virtual, esta herramienta ser implementada con software libre y conectado mediante hardware libre tambin. Por lo que la posibilidad de mejora para un mayor entendimiento de los procesos digitales es una realidad. El analizador lgico virtual nos permitir aplicar sus funciones de anlisis y captacin de datos numricos y grficos en circuitos y sistemas lgicos digitales que sern parte de la teora impartida en la docencia. Algn caso concreto contar con su comprobacin prctica y sus resultados en el desarrollo de este proyecto. Se trata de conseguir un instrumento que nos capacite poder ser manejado de forma sencilla y funcional con la intencin de obtener seales lgicas de circuitos digitales para comprender su funcionamiento, su interaccin en un sistema digital ms complejo, sus aplicaciones y su posible mejora.
2.2.1 Caractersticas
Segn la Gua de Usuario de MyOpenLab escrita en castellano por el profesor Jos Manuel Ruz Gutirrez, las caractersticas principales de este entorno son: Facilidad de uso Amplia biblioteca de funciones tanto para manejo de seales analgicas como digitales. Tratamiento de los tipos de datos y operaciones con estos. Realizacin de las aplicaciones mediante el uso de bloques de funcin.
Facilidad para crear pantallas de visualizacin que recojan el estado de las variables y eventos de las simulaciones.
29
Posibilidad de ampliacin de su librera de componentes. Posibilidad de creacin de sub-modelos que se pueden encapsular a su vez en otros sub-modelos.
2.2.2 Aplicaciones
Dado su carcter abierto (open source), las aplicaciones se van ampliando constantemente ya que la plataforma no deja de crecer y evolucionar en todo momento. En este caso, lo ms interesante para este proyecto es la creacin de circuitos y sistemas tanto analgicos como digitales. Pero existen ms posibles aplicaciones: Simulacin, control y programacin dentro del campo de la robtica. Experimentos en el mbito fsico. Procesamiento de imgenes. Programacin mediante diagramas de flujo. Redes neuronales. Mediciones y actuaciones en la regulacin, etc.
30
31
En la parte principal de MyOpenLab se encuentran cuatro reas diferencias que sern usadas continuamente: El rea de Proyectos (Fig.18), donde se esquematiza los diferentes proyectos con sus sub-proyectos y carpetas. Con ello se facilita la bsqueda y acceso a las aplicaciones realizadas, los componentes y sub-componentes.
Fig. 18 Proyectos.
El rea de Componentes, donde se ubican los elementos y componentes de las diferentes libreras incluidas con el software. Dependiendo del panel que se est usando en cada momento, se podrn visualizar diferentes componentes para el Panel Circuito o Panel Frontal. Para el Panel Circuito, las libreras incluidas son, en este orden (Fig.19):
32
Elementos de decoracin. Operadores digitales. Operadores numricos. Tratamiento de caracteres. Elementos analgicos. Utilidades. Ficheros de entrada/salida. Comparaciones. Tratamiento de imgenes. Tratamiento de sonidos. Color. Pines de entrada/salida. Vectores y matrices. Agrupacin de elementos. Objetos grficos canvas. Librera de fsica. Librera de diagrama de flujo. Librera de extras. Librera de conexiones entre aplicaciones. Librera definida por el usuario. Librera de automatizacin. Interfaces.
Para el Panel Frontal, las libreras que se establecen (Fig.20), en siguiente orden, son:
Elementos de decoracin. Elementos de visualizacin numrica. Elementos de activacin digital. Elementos de entrada y salida de cadenas de caracteres. Vectores y matrices de datos. Elementos de visualizacin grfica.
33
Una vez, seleccionado uno de los componentes de las libreras, podremos observar sus caractersticas bsicas en el rea de Editor de Propiedades del Componente (Fig.21). Aqu se podr editar desde su nombre, su tamao, sus parmetros etc.
Para concretar ms sobre cada componente, en la barra de men, en la seccin Ventana, se podr visualizar la Documentacin del Componente con su descripcin de su funcionamiento, y tambin la Ventana del Componente, donde se observa su imagen con sus conexiones de entrada/salida y el tipo de dato que acepta. Accediendo con el botn derecho del ratn del men contextual sobre el componente seleccionado (Fig.22), se podr visualizar diferente informacin de dicho componente como Informacin, Documentacin, Propiedades o su Cdigo.
34
Por ltimo, la barra de Botones (Fig.23) est comprendida de diferentes funciones ms usadas durante el proceso de diseo de la aplicacin:
Crear, Abrir, Guardar proyecto. Deshacer, Restablecer, Actualizar. Opciones, Variables, Tipos de datos. Controles de simulacin. Ventanas grficas, Tabla de datos, Consola de salida, Ventana de informacin. Ajuste de tiempo de simulacin.
35
El programa MyOpenLab ofrece otras herramientas y opciones no menos importantes que sern de ayuda a la hora de realizar nuestra aplicacin: Creacin de sub-modelos para incluirlos en aplicaciones ms complejas facilitando la visualizacin y el orden de nuestros componentes mediante diferentes mtodos. Creacin, edicin y compilacin de nuevos elementos para aadirlos en las libreras; proteccin de los proyectos. Seguimiento de las simulaciones mediante puntos de test que nos permitir observar lo ocurrido en esos puntos durante la ejecucin de la aplicacin. Creacin de variables para aplicarlas en diagramas de flujo (Fig.25) que servirn de programacin de la aplicacin. Informacin de posibles errores, men ayuda, etc.
Para ampliar informacin y detalle sobre el manejo de este software, se incluye una serie de documentos en el apartado dedicado a la bibliografa. Tambin se puede acceder a la pgina web oficial de MyOpenLab, incluida en el mismo apartado.
36
37
7-12V
6-20V 14 (6 proporcionan salida PWM) 6 40 mA 50 mA 16 KB (ATmega168) o 32 KB (ATmega328) de las cuales 2 KB las usa el gestor de arranque(bootloader) 1 KB (ATmega168) o 2 KB (ATmega328) 512 bytes (ATmega168) o 1 KB (ATmega328) 16 MHz
El Arduino Duemilanove puede ser alimentado va la conexin USB o con una fuente de alimentacin externa. El origen de la alimentacin se selecciona automticamente. Las fuentes de alimentacin externas (no-USB) pueden ser tanto un transformador o una batera. El transformador se puede conectar usando un conector macho de 2.1mm con centro positivo en el conector hembra de la placa. Los cables de la batera pueden conectarse a los pines Gnd y Vin en los conectores de alimentacin (POWER) La placa puede trabajar con una alimentacin externa de entre 6 a 20 voltios. Si el voltaje suministrado es inferior a 7V el pin de 5V puede proporcionar menos de 5 Voltios y la placa puede volverse inestable, si se usan ms de 12V los reguladores de voltaje se pueden sobrecalentar y daar la placa. El rango recomendado es de 7 a 12 voltios.
38
VIN. La entrada de voltaje a la placa Arduino cuando se est usando una fuente externa de alimentacin (en opuesto a los 5 voltios de la conexin USB). Se puede proporcionar voltaje a travs de este pin, o, si se est alimentado a travs de la conexin de 2.1mm, acceder a ella a travs de este pin. 5V. La fuente de voltaje estabilizado usado para alimentar el micro controlador y otros componentes de la placa. Esta puede provenir de VIN a travs de un regulador integrado en la placa, o proporcionada directamente por el USB u otra fuente estabilizada de 5V. 3V3. Una fuente de voltaje a 3.3 voltios generada en el chip FTDI integrado en la placa. La corriente mxima soportada 50mA. GND. Pines de toma de tierra.
Cada uno de los 14 pines digitales en el Duemilanove pueden utilizarse como entradas o como. Las E/S operan a 5 voltios. Cada pin puede proporcionar o recibir una intensidad mxima de 40mA y tiene una resistencia interna, PULL-UP (desconectada por defecto) de 20-50kOhms. Adems, algunos pines tienen funciones especializadas:
Serie: 0 (RX) y 1 (TX). Usado para recibir (RX) transmitir (TX) datos a travs de puerto serie TTL. Estos pines estn conectados a los pines correspondientes del chip FTDI USB-to-TTL. Interrupciones Externas: 2 y 3. Estos pines se pueden configurar para lanzar una interrupcin en un valor LOW (0V), en flancos de subida o bajada (cambio de LOW a HIGH (5V) o viceversa), o en cambios de valor. PWM: 3, 5, 6, 9, 10, y 11. Proporciona una salida PWM (Pulse Wave Modulation, modulacin de onda por pulsos) de 8 bits de resolucin (valores de 0 a 255. SPI: 10 (SS), 11 (MOSI), 12 (MISO), 13 (SCK). Estos pines proporcionan comunicacin SPI, que a pesar de que el hardware la proporcione actualmente no est incluido en el lenguaje Arduino. LED: 13. Hay un LED integrado en la placa conectado al pin digital 13, cuando este pin tiene un valor HIGH(5V) el LED se enciende y cuando este tiene un valor LOW(0V) este se apaga.
El Duemilanove tiene 6 entradas analgicas, y cada una de ellas proporciona una resolucin de 10bits (1024 valores). Por defecto se mide de tierra a 5 voltios, aunque es posible cambiar la cota superior de este rango usando el pin AREF. Adems algunos pines tienen funciones especializadas:
I2C: 4 (SDA) y 5 (SCL). Soporte del protocolo de comunicaciones I2C (TWI) Hay unos otros pines en la placa:
AREF. Voltaje de referencia para las entradas analgicas. Reset. Suministrar un valor LOW (0V) para reiniciar el microcontrolador.
39
EL Arduino Duemilanove facilita en varios aspectos la comunicacin con el ordenador, otro Arduino u otros microcontroladores. Proporciona comunicacin va serie UART TTL (5V), disponible a travs de los pines digitales 0(RX) y 1(TX). Un chip FTDI FT232RL integrado en la placa canaliza esta comunicacin serie a travs del USB. El Arduio Duemilanove tiene un multifusible reinicializable que protege la conexin USB de tu ordenador de cortocircuitos y sobretensiones. A aparte que la mayora de ordenadores proporcionan su propia proteccin interna, el fusible proporciona una capa extra de proteccin. Si ms de 500mA son detectados en el puerto USB, el fusible automticamente corta la conexin hasta que el cortocircuito o la sobretensin desaparecen. Para ms informacin ver Anexo A.
40
41
Por otro lado, se desarrollarn los elementos que intervienen propiamente dicho en el analizador lgico virtual, esto es: El rea para entradas, tanto analgicas como digitales, y por otro las salidas digitales. Para las entradas, analgicas y digitales, se necesita la visualizacin grfica de las seales procedentes de sus pines para poder comprender cada seal y todas a la vez. Por ello, se disear un bloque que contenga una grfica de tiempos para cada seal. Para las seales de entrada digital se han escogido los seis pines que vienen configurados en la tarjeta Arduino, y para las entradas analgicas se elaborarn solamente dos de las seis entradas. Esto es simplemente por el hecho de que nuestro objetivo es el estudio de las seales lgicas (Fig.28), sin embargo ser til contar con la visualizacin de alguna seal analgica como puede ser la seal de alimentacin del circuito que se quiera testear. Para el correcto estudio de la seal grfica contaremos con funciones especficas para las grficas como es la opcin de visualizarlas o no, poder parar el tiempo para un mejor anlisis o refrescar cada seal empezando el tiempo de nuevo sobre el eje X.
42
Todo lo anterior, es comn para ambos tipos de entradas, analgicas y digitales, sin embargo en el rea de entradas analgicas (Fig.29) ser ms til contar con un visor numrico que nos permita comprobar con mayor exactitud cul su posicin en el tiempo.
Por ltimo, el rea de salidas digitales nos permitir controlar de forma virtual los posibles circuitos lgicos que se analicen (Ver Fig.30). Su visualizacin grfica no es de suma importancia ya que contamos con las grficas para seales de entrada digital, pero si es interesante el ello de poder gobernar seales de salida de circuitos lgicos a partir del control virtual de sus entradas. Es decir, con la visualizacin de las seales digitales podremos decidir cmo gobernar e intervenir en el circuito lgico para poder controlarlo de forma que no sea necesaria el uso de elementos fsicos para tal accin.
43
44
Una vez comprobado el lugar asignado para las entradas y salidas digitales, es recomendable comprobar el funcionamiento correcto del programa de simulacin grfica relacionndose con la tarjeta de datos. Abriendo el programa MyOpenLab y a la vez, en la barra de men en Fichero y Abrir Proyecto se buscar un modelo virtual llamado myopenlab_prj_arduino1.1. A travs de l nos familiarizamos con su funcionamiento, su lgica y sus capacidades. Es importante tambin el aprendizaje con otros ejemplos prcticos de MyOpenLab y de MyOpenLab+Arduino (Fig. 32).
Con el entendimiento claro del funcionamiento de ambas herramientas, se podr disear el analizador lgico virtual previsto. Se empieza por crear un proyecto propio nuevo donde poder elaborar el diseo, con nombre y ubicacin propia. Para ello se necesitarn diferentes elementos o componentes grficos con los que elaborar nuestro interfaz virtual en el Panel Frontal de MyOpenLab. Elementos como grficos, botones, interruptores, paneles numricos, elementos de sealizacin etc. (Fig. 33) se irn colocando en el panel de forma clara y ordenada dando forma a lo que queremos que sea nuestra pantalla del analizador.
Una vez estructurada la visin del interfaz se realizan las conexiones necesarias entre estos elementos interactivos y variables con la tarjeta Arduino.
45
En el Panel Circuito del proyecto creado en MyOpenLab se cuenta con un componente (Fig.34) ya diseado especfico para Arduino y vlido para el modelo Duemilanove ya que cuenta con los mismos pines.
A la hora de conexionar los diferentes elementos del Panel Frontal con el componente Arduino, surgen diferentes problemas propios del lenguaje y la programacin. En primer lugar, al marcarse como objetivo realizar el proyecto del diseo usando las herramientas definidas y sin llegar a utilizar el lenguaje de programacin en ningn momento, se producen pequeos problemas derivados del hecho de que en el programa MyOpenLab existen diferentes libreras con mltiples componentes bsicos y un tipo de dato admisible ya marcados y con los que es necesario ayudarse. Sin embargo, MyOpenLab permite crear nuevos elementos para aadir a la librera de dos formas diferentes, uniendo elementos ya diseados en uno solo o a travs de lenguaje de programacin. El primero solo es interesante para diseos muy extensos con la intencin de ahorra espacio y mejorar la claridad del circuito, y la segunda opcin es posible pero conocimientos previos de programacin, aunque sean bsicos. Por suerte no ha sido necesario utilizar ninguna de las dos opciones. En segundo lugar surge un problema relacionado con el tipo de lgica con la que trabaja la tarjeta de adquisicin de datos. En este caso usa lgica inversa o negativa, por lo que complica el diseo a la hora de visualizar nuestras seales en el Panel Frontal. Es decir, cuando se quiere un estado lgico positivo o flanco ascendente en la grfica de seales tendremos que producir un flanco descendente en el circuito fsico analizado ya que Arduino fue programada con lgica inversa. Este problema fue solucionado aunque es una solucin parcial, teniendo que programar hacia lgica positiva la tarjeta.
46
Despus, existe un problema o complicacin con el tipo de dato que admite cada componente virtual en el Panel Circuito con lo que es necesario buscar otros elementos encargados de convertir tipos de datos. Al menos para este caso, hubo solucin satisfactoria. Por ltimo, ya intentando comprobar el diseo, nos encontramos con la nula intervencin de los elementos de visualizacin grfica. Como se parte de no usar el lenguaje de programacin para crear nuevos elementos que solucionen los problemas, solamente se cuenta con un tipo de grfico aceptable para el tipo de dato de seales digitales, no sin antes convertir el tipo de dato para poder ser admitido por el elemento grfico. Para la resolucin de todos estos problemas iniciales y el correcto funcionamiento del diseo del interfaz se recurri a la elaboracin de un circuito de conexin concreto (Fig. 35).
En primer lugar, el conexionado de elementos para la seleccin del puerto, el inicio del interfaz o los interruptores para producir salidas digitales en la tarjeta Arduino, del Panel Frontal con el componente Arduino, no supuso ningn impedimento ya que se trata del mismo tipo de dato booleano. En cuanto al problema de la lgica inversa por parte del componente Arduino fue solucionada mediante la inversin de la seal con un elemento negador. No obstante, esto se trata de una solucin parcial que el caso de este diseo no afecta pero que afecta realmente con elementos de sealizacin ya que en estado normal con los pines invertidos la sealizacin estar activada hasta que se intervenga.
47
Para la correcta conexin entre elementos de diferentes tipos de dato se recurri a componentes convertidores ya introducidos en las libreras pero que aun as tuvo que utilizarse elementos con tipo de datos que pueden ser convertidos posteriormente con lo que el diseo se cierra en ese aspecto. Por ltimo, aunque fue uno de los problemas que antes surgieron, es el hecho de usar grficos compatibles con nuestro propsito y el tipo de dato que muestra la tarjeta Arduino en cada caso. Ya que nuestro objetivo es visualizar seales respecto al tiempo, y como solo contamos con los elementos propios de las libreras, solo un grfico era compatible para este propsito, probndose todos los dems anteriormente. Aunque los grficos existentes tienen limitados y fijados sus funcionalidades, con el elegido se cubren las expectativas grficas deseadas (arranque, para y refresco de cada seal). Sin embargo este tipo de grfico usa un tipo de dato determinado por lo que fue necesaria su conversin. Por un lado, la conversin de la seal analgica a la grfica fue directa mediante un solo convertidor. Por otro lado, la conversin de seal digital tuvo que ser convertida previamente a tipo de dato analgico para volver a convertirlo en dato aceptable para la grfica. En cuanto a elementos de interaccin directa con las grficas su simple ya que su tipo de dato es el mismo.
48
Seguidamente se abrir el proyecto (Fig. 36) que contenga el analizador lgico virtual. Para ello, en la barra de men, Fichero, Abrir Proyecto, seleccionar Main.vlogic.
Una vez abierto el proyecto ser recomendable ciertas comprobaciones previas, como es la correcta conexin de los elementos del Panel Circuito con el Panel Frontal. Tambin es preferible abrir previamente la ventana de errores (Barra de men - Ventana - Mostrar Errores y Advertencias) y si est usada anteriormente borrar con el botn derecho (Limpiar).
49
Cuando todo est listo, pulsar botn Arranque VM de nuestra barra de botones horizontal superior (Fig. 38).
Si todo est correcto aparecer la interfaz grfica y no aparecer ninguna ventana de advertencias o errores. En ese caso, se selecciona la posicin numrica del puerto correspondiente y se inicia el analizador pulsando el botn Start (Fig. 39). Para ambas grficas (Fig. 39), seal analgica y seal digital, el tiempo comenzar a contar en el momento en el que se active alguna de esas grficas presionando sobre el botn interruptor On/Off. Se podr parar la grfica invirtiendo el proceso para poder parar la seal. En el caso de ser necesario poner el tiempo a cero existe el botn Reset. En el caso concreto de las grficas de seal analgica (Fig. 39), en el momento de iniciar el proceso con arranque, se pondr a contar la cantidad de datos que adquiere automticamente sin necesidad de activar esa grfica concreta. Por ltimo, en casos concretos de montajes de circuitos lgicos donde sea necesario el gobierno de unas determinadas entradas para producir salidas que puedan ser visualizadas en las grficas, se cuenta con una serie de interruptores lgicos (Fig. 39) que mediante su combinacin permite modificar una salida determinada del circuito analizando, pudiendo observarse sus cambios en las grficas de las entradas de nuestro analizador lgico virtual.
50
Una vez conectado, se cablean las entradas y salidas del integrado. Por un lado las dos entradas del integrado (por ejemplo pin 13 y 12) irn conectadas a dos de los pines asignados para las salidas digitales que interactuaran mediante los interruptores. Por otro lado, la salida de la puerta AND (en este caso, pin 11) ir conectada a una de las entradas asignadas digitales para su visualizacin. Una vez conectado se activar la grfica correspondiente a la seal digital asignada al pin de la salida de la puerta lgica. Y con los interruptores de las salidas digitales apagados, el resultado grfico ser una lnea recta de valor 0. Si y solo si activamos ambos interruptores de las salidas digitales correspondientes a las entradas de la puerta AND, podremos ver un pulso o flanco ascendente de valor 1 (Fig. 41).
51
En segundo lugar para comprobar la visualizacin analgica, usaremos un montaje de un divisor de tensin de dos resistencias, una de ellas una LDR (variable con la luz). Para ello observamos los siguientes circuitos:
Obsrvese el simple cambio de posicin de la LDR ya que afectar a su visualizacin grfica. Es decir, en el primer caso, si la luz incide sobre ella, la diferencia de potencial aumentar en la salida y en el otro caso, si la luz incide sobre ella la diferencia de potencial en la salida ser menor ya que la mayora de la corriente circular a tierra a travs de la LDR. Para el montaje del primer caso con la tarjeta Arduino, conectaremos el pin de 5V de la tarjeta a la patilla de la LDR que marca la tensin de entrada y la tierra GND a la patilla de la segunda resistencia que marca 0V. Por otro lado, entre una y otra resistencia conectaremos a una de las grficas de las entradas analgicas para visualizar la variacin de datos que permite segn la cantidad de luz. Una vez conectado, iniciamos el interfaz y el marcador numrico de datos comenzar oscilar, en este caso sobre los 600 bytes. Si interrumpimos el paso de luz, la cantidad de datos disminuir hasta los 200bytes aproximadamente. La cantidad de datos no es fija ya que la luz va variando constantemente. En el montaje contrario ocurrir lo opuesto, evidentemente. Simplemente cambiando de posicin las conexiones entre alimentacin y tierra, conseguiremos invertir la cantidad de datos que se muestre en el grfico en funcin de la cantidad de luz.
52
Conclusiones.
CONCLUSIONES
Como conclusin principal exponer que los objetivos generales han sido conseguidos con xito. Por un lado se obtuvo gran conocimiento sobre la instrumentacin virtual y software de programacin grfica utilizados. Tambin, se obtuvo un diseo esperado segn lo previsto. Se pudo obtener mucha informacin til para el aprendizaje en la instrumentacin virtual a travs de informes tericos, manuales tcnicos, presentaciones docentes, etc. Del mismo modo, sobre el analizador lgico se obtuvo diferentes manuales, proyectos de implementacin, material docente, etc. Sin embargo hay poca documentacin sobre implementacin virtual de analizadores lgicos por lo que el trabajo de laboratorio fue mayor del esperado, a base de prueba y error se fue moldeando lo que se pretenda desde un principio. El uso de herramientas de software permiti la familiarizacin que este tipo de programacin grfica estructurada, muy til para todo tipo de diseos. A travs del uso prctico de las herramientas hardware como es Arduino y a travs del uso del analizador virtual se afianz el entendimiento sobre tarjetas de adquisicin y acondicionamiento de datos. En cuanto a la implementacin se produjo algunos problemas debido a las limitaciones inamovibles que presentaron las herramientas usadas, pero se obtuvo un resultado satisfactorio tal como muestra los resultados de las comprobaciones prcticas. Su posible aplicacin estar destinada al uso docente en laboratorios de enseanza superior para conseguir una mayor comprensin de la teora de circuitos lgicos. A su vez, fomentar el manejo de herramientas open-source como son programacin estructurada de MyOpenLab y la tarjeta de adquisicin de datos de Arduino. Como conclusin final, cabe decir que el resultado general y personal es satisfactorio al haber conseguido elaborar y producir una idea inicial y a su vez poder avanzar y afianzar conocimientos que han intervenido en el desarrollo de dicho proyecto.
53
Bibliografa.
BIBLIOGRAFA
Documentacin electrnica C. Baena, J. I. Escudero, M P. Parra y M. Valencia. MANUAL INTRODUCCIN AL LABORATORIO DE ELECTRNICA DIGITAL Fundamentos de Computadores (I I e ITIS) Estructura y Tecnologa de Computadores (ITIG). Sevilla, Septiembre de 2008. http://www.dte.us.es/docencia/etsii/ii/ec/doc/laboratorio/9L3Manual Enrquez Herrador, Rafael. Gua de Usuario de Arduino. 13 de noviembre de 2009. I.T.I. Sistemas. Universidad de Crdoba. i52enher@uco.es. Creative Commons Attribution-Noncommercial-Share Alike 3.0. Lpez Mario Alberto, Quintero Zamudio Jos. ANALIZADOR DE ESTADOS LGICOS BSICO AL-UAMI-2004.VI. Mxico D.F. a Mayo del 2004. http://148.206.53.231/UAMI11078.pdf Moure, M. J. Manual de utilizacin del Analizador lgico de Uvi-51 (versin Windows) (versin 1.0 beta de 21 de Julio de 2008) http://webs.uvigo.es/mjmoure/DocSDP/ManualUVI_logic.pdf National Instrumentos Corp. La Instrumentacin Virtual. Traduccin al espaol: Tracnova S.A., www.tracnova.com Ruiz Gutirrez, Jos Manuel. MyOpenLab, versin 3.010, Gua de usuario. http://myopenlab.de Ruiz Gutirrez, Jos Manuel. MyOpenLAb, Tratamiento de datos, Versin 2.4.8.3, Documentacin para el usuario. http://myopenlab.de Ruiz Gutirrez, Jos Manuel. MyOpenLAb. DIAGRAMAS DE FLUJO (gua rpida) para la versin 2.4.9.9 o superiores http://myopenlab.de Ruiz Gutirrez, Jos Manuel. Instrumentacin virtual (aplicaciones educativas). Curso de Verano: Simulaciones en la Enseanza. UCLM. Puertollano (Ciudad Real) 20 y 21 de Julio de 2000. Ruiz Gutirrez, Jos Manuel. Arduino+MyOpenLab. Una propuesta de utilizacin de open hardware y software libre GNU para el diseo y simulacin de protipos en el laboratorio. Noviembre 2011.
54
Bibliografa.
Tarot Glvez, Mario Edgar Luis. Planteamiento del uso de instrumentacin virtual para adquisicin de datos. Universidad de san Carlos de Guatemala. Facultad de ingeniera escuela de ingeniera mecnica elctrica Guatemala, octubre de 2004. http://biblioteca.usac.edu.gt/tesis/08/08_0119_EO.pdf Tektronik (R). Manual tcnico de analizadores lgicos.
L. DVILA, C. GARCA, S. LPEZ, P. SAN SEGUNDO Y D. RODRGUEZ-LOSADA..
SITED: UN LABORATORIO INTERACTIVO Y PORTABLE DE ELECTRNICA DIGITAL http://oa.upm.es/9651/ Tern Ayala Juan Carlos. ANALIZADOR LGICO DE TIEMPOS IMPLEMENTADO EN UN FPGA UTILIZANDO EL BUS PCI COMO INTERFAZ DE COMUNICACIN. http://www.depi.itchihuahua.edu.mx/electro/archivo/electro2001/mem2001./articulos/di g5.pdf Trinor Goira, Jaime. ANALIZADOR LGICO DE BAJO COSTE BASADO EN UNA FPGA. MADRID, Septiembre 2005. http://www.iit.upcomillas.es/pfc/resumenes/4330207f9aa11.pdf
Pgina Web Oficial de MyOpenLab: http://es.myopenlab.de/?Bienvenida Pgina Web Oficial Arduino: http://arduino.cc/es/ Pgina Web Oficial Prof. Jos Manuel Ruiz Gutirrez: http://josemanuelruizgutierrez.blogspot.com.es/ ; http://mami.uclm.es/jmruiz/
55
Anexos.
A. 1 Vi si n gen eral El Arduino Duemilanove ("2009") es una placa con microcontrolador basada en el ATmega168 (datasheet) o el ATmega328 (datasheet)., Tiene 14 pines con entradas/salidas digitales (6 de las cuales pueden ser usadas como salidas PWM), 6 entradas analgicas, un cristal oscilador a 16Mhz, conexin USB, entrada de alimentacin, una cabecera ISCP, y un botn de reset. Contiene todo lo necesario para utilizar el microcontrolador; simplemente conctalo a tu ordenador a travs del cable USB o alimntalo con un transformador o una batera para empezar a trabajar con l. "Duemilanove" significa 2009 en italiano que fue el ao cuando sali al mercado. El Duemilanove es el ms popular en dentro de las series de placas con USB: para una comparativa con el resto de placas mira el ndice de placas Arduino.
A. 2 Resu men
Microcontrolador ATmega368 (ATmega168 en versiones anteriores)
Voltaje funcionamiento
de
5V
56
Anexos.
Voltaje
de
entrada
(recomendado)
7-12V
Voltaje (limite)
de
entrada
6-20V
Pines analgica
de
entrada
40 mA
50 mA
Memoria Flash
SRAM
1 KB (ATmega168) o 2 KB (ATmega328)
EEPROM
Velocidad de reloj
16 MHz
A. 3 Ali men t aci n El Arduino Duemilanove puede ser alimentado va la conexin USB o con una fuente de alimentacin externa. El origen de la alimentacin se selecciona automticamente. Las fuentes de alimentacin externas (no-USB) pueden ser tanto un transformador o una batera. El transformador se puede conectar usando un conector macho de 2.1mm con centro positivo en el conector hembra de la placa. Los cables de la batera pueden conectarse a los pines Gnd y Vin en los conectores de alimentacin (POWER)
57
Anexos.
La placa puede trabajar con una alimentacin externa de entre 6 a 20 voltios. Si el voltaje suministrado es inferior a 7V el pin de 5V puede proporcionar menos de 5 Voltios y la placa puede volverse inestable, si se usan ms de 12V los reguladores de voltaje se pueden sobrecalentar y daar la placa. El rango recomendado es de 7 a 12 voltios. Los pines de alimentacin son los siguientes: VIN. La entrada de voltaje a la placa Arduino cando se est usando una fuente externa de alimentacin (en opuesto a los 5 voltios de la conexin USB). Se puede proporcionar voltaje a travs de este pin, o, si se est alimentado a travs de la conexin de 2.1 mm, acceder a ella a travs de este pin. 5V. La fuente de voltaje estabilizado usado para alimentar el microcontrolador y otros componentes de la placa. Esta puede provenir de VIN a travs de un regulador integrado en la placa, o proporcionada directamente por el USB u otra fuente estabilizada de 5V. 3V3. Una fuente de voltaje a 3.3 voltios generada en el chip FTDI integrado en la placa. La corriente mxima soportada 50mA. GND. Pines de toma de tierra.
A. 4 M emori a El ATmega328 tiene 32KB (el ATmega168 tiene 16 KB) de memoria flash para almacenar cdigo (2KB son usados para el arranque del sistema (bootloader).El ATmega328 tiene 2 KB (Atmega168 1 KB) de memoria SRAM . El ATmega328 tiene 1KB (ATmega168 512 bytes) de EEPROM, que puede a la cual se puede acceder para leer o escribir con la [Reference/EEPROM |librera EEPROM]].
A. 5 En t rad as y S ali d as Cada uno de los 14 pines digitales en el Duemilanove pueden utilizarse como entradas o como salidas usando las funciones pinMode(), digitalWrite(), y digitalRead() . Las E/S operan a 5 voltios. Cada pin puede proporcionar o recibir una intensidad mxima de 40mA y tiene una resistencia interna (desconectada por defecto) de 20-50kOhms. Adems, algunos pines tienen funciones especializadas: Serie: 0 (RX) y 1 (TX). Usado para recibir (RX) transmitir (TX) datos a travs de puerto serie TTL. Estos pines estn conectados a los pines correspondientes del chip FTDI USB-to-TTL. 58
Anexos.
Interrupciones Externas: 2 y 3. Estos pines se pueden configurar para lanzar una interrupcin en un valor LOW (0V), en flancos de subida o bajada (cambio de LOW a HIGH (5V) o viceversa), o en cambios de valor. Ver la funcin attachInterrupt() para as detalles. PWM: 3, 5, 6, 9, 10, y 11. Proporciona una salida PWM (Pulse Wave Modulation, modulacin de onda por pulsos) de 8 bits de resolucin (valores de 0 a 255) a travs de la funcin analogWrite(). SPI: 10 (SS), 11 (MOSI), 12 (MISO), 13 (SCK). Estos pines proporcionan comunicacin SPI, que a pesar de que el hardware la proporcione actualmente no est incluido en el lenguaje Arduino. LED: 13. Hay un LED integrado en la placa conectado al pin digital 13, cuando este pin tiene un valor HIGH(5V) el LED se enciende y cuando este tiene un valor LOW(0V) este se apaga. El Duemilanove tiene 6 entradas analgicas, y cada una de ellas proporciona una resolucin de 10bits (1024 valores). Por defecto se mide de tierra a 5 voltios, aunque es posible cambiar la cota superior de este rango usando el pin AREF y la funcin analogReference(). Adems algunos pines tienen funciones especializadas: I2C: 4 (SDA) y 5 (SCL). Soporte del protocolo de comunicaciones I2C (TWI) usando la librera Wire. Hay unos otros pines en la placa: AREF. Voltaje de referencia para las entradas analgicas. Usado por analogReference(). Reset. Suministrar un valor LOW (0V) para reiniciar el microcontrolador. Tpicamente usado para aadir un botn de reset a los shields que no dejan acceso a este botn en la placa.
A. 6 Comu n i caci on es EL Arduino Duemilanove facilita en varios aspectos la comunicacin con el ordenador, otro Arduino u otros microcontroladores. Tanto el ATmega328 como el Atmega168 proporciona comunicacin va serie UART TTL (5V), disponible a travs de los pines digitales 0 (RX) y 1 (TX). Un chip FTDI FT232RL integrado en la placa canaliza esta comunicacin serie a traes del USB y los drivers FTDI (incluidos en el software de Arduino) proporcionan un puerto serie virtual en
59
Anexos.
el ordenador. El software incluye un monitor de puerto serie que permite enviar y recibir informacin textual de la placa Arduino. Los LEDS RX y TX de la placa parpadearan cuando se detecte comunicacin transmitida travs del chip FTDI y la conexin USB (no parpadearan si se usa la comunicacin serie a travs de los pines 0 y 1). La librera SoftwareSerial permite comunicacin serie por cualquier par de pines digitales del Duemilanove. Tanto el ATmega168 y ATmega328 tambin soportan la comunicacin I2C (TWI) y SPI. El software de Arduino incluye una librera Wire para simplificar el uso el bus I2C, ver la documentacin para ms detalles. Para el uso de la comunicacin SPI, ver la hoja de especificaciones (datasheet) del ATmega168 o ATmega328.
A. 7 Prog ra maci n El Arduino Duemilanove se puede programar a travs del software Arduino(descargar). Selecciona "Arduino Duemilanove w/ ATmega328" o "Arduino Diecimila or Duemilanove w/ ATmega168" del men Tools > Board (dependiendo del microcontrolador de tu placa). Para ms detalle ver referencia y tutoriales. El ATmega328 y el ATmega168 en las placas Arduino Duemilanove viene precargado con un gestor de arranque (bootloader) que permite cargar nuevo cdigo sin necesidad de un programador por hardware externo. Se comunica utilizando el protocolo STK500 original (referencia, archivo de cabecera C). Tambin te puedes saltar el gestor de arranque y programar directamente el microcontrolador a travs del puerto ISCP (In Circuit Serial Programming);
A. 8 Rei n i ci o Au t omt i co (S oft ware) En vez de necesitar reiniciar presionando fsicamente el botn de reset antes de cargar, el Arduino Duemilanove est diseado de manera que es posible reiniciar por software desde el ordenador donde est conectado. Una de las lneas de control de flujo (DTR) del FT232RL est conectada a la lnea de reinicio del ATmega328 o ATmega168 a travs de un condensador de 100 nanofaradios. Cuando la lnea se pone a LOW (0V), la lnea de reinicio tambin se pone a LOW el tiempo suficiente para reiniciar el chip. El software de Arduino utiliza esta caracterstica para permitir cargar los sketches con solo apretar un botn del entorno. Dado que el gestor de arranque tiene un lapso de tiempo para ello, la activacin del DTR y la carga del sketch se coordinan perfectamente. Esta configuracin tiene otras implicaciones. Cuando el Duemilanove se conecta a un ordenador con Mac OS X o Linux, esto reinicia la placa cada vez que se realiza una conexin desde el software (va USB). El medio segundo aproximadamente
60
Anexos.
posterior, el gestor de arranque se est ejecutando. A pesar de estar programado para ignorar datos mal formateados (ej. cualquier cosa que la carga de un programa nuevo) intercepta los primeros bytes que se envan a la placa justo despus de que se abra la conexin. Si un sketch ejecutndose en la placa recibe algn tipo de configuracin inicial u otro tipo de informacin al inicio del programa, asegrate que el software con el cual se comunica espera un segundo despus de abrir la conexin antes de enviar los datos. El Duemilanove contiene una pista que puede ser cortada para deshabilitar el autoreset. Las terminaciones a cada lado pueden ser soldadas entre ellas para rehabilitarlo. Estn etiquetadas con "RESET-EN". Tambin podis deshabilitar el auto-reset conectando una resistencia de 110 ohm desde el pin 5V al pin de reset.
A. 9 Prot ecci n con t ra sob ret en si on e s en US B El Arduio Duemilanove tiene un multifusible reiniciable que protege la conexin USB del ordenador de cortocircuitos y sobretensiones. Aparte que la mayora de ordenadores proporcionan su propia proteccin interna, el fusible proporciona un capa extra de proteccin. Si ms de 500mA son detectados en el puerto USB, el fusible automticamente corta la conexin hasta que el cortocircuito o la sobretensin desaparecen.
A. 10 Caract e r st i cas F si cas La longitud y amplitud mxima de la placa Duemilanove es de 2.7 y 2.1 pulgadas respectivamente, con el conector USB y la conexin de alimentacin sobresaliendo de estas dimensiones. Tres agujeros para fijacin con tornillos permiten colocar la placa en superficies y cajas. Ten en cuenta que la distancia entre los pines digitales 7 y 8 es 160 mil (0,16"), no es mltiple de la separacin de 100 mil entre los otros pines.
61
Anexos.
62
Anexos.
63
Anexos.
- Identificacin de los niveles low y high - Amplio software de Windows - Cables de medicin adicionales
64
Anexos.
D.1 Especificaciones tcnicas Interfaz Tensin de alimentacin Cantidad de canales Nivel de entrada Valor umbral Tampn de sample Modo de tiempo (reloj interno) Cuota de sampling (reloj externo) Cuota de medicin Pre-trigger Niveles de trigger Ajuste de trigger por canal Conector Temperatura operativa Dimensiones Requisitos del sistema USB 5 V a travs de interfaz USB (no requiere componente de red) 18 0 ... 5 V bajo: < 0,8 V alto: > 2 V 4096 x 18 bit 100 sample/s ... 100 Msamples/s 0 ... 100 MHz 100 Hz ... 100 MHz 1/8 ... 7/8 trigger preestablecido 2 nivel, flancos, inclinacin del canal 1 x conector de 20 pines 10 ... 50 C 80 x 61 x 22 mm USB 2.0 o interfaz USB 1.1 resolucin de la pantalla 1024 x 786 Windows 7 / Vista / XP / 2003
65
Anexos.
D.2 Contenido 1 x analizador lgico USB-LOGI-100, software de Windows "Logi+" Cables de medicin de 20 pines El cable de medicin se conecta simplemente a la conexin hembra del PC analizador lgico USB-LOGI 100. Los cables de color tienen una leyenda apropiada. Por lo tanto, puede asignarlos sin problemas. Adems de la conexin directa de los cables abiertos a soldaduras estndar, el cable de medicin puede ser conectado a micro-klebs. Atencin: El cable de medicin no est incluido en el contenido del envo! Para que se pueden utilizar todos los 36 canales del analizador lgico se necesitan dos juegos de cables! Micro-klebs Los micro-klebs encajan en el cable de medicin de 20 pines del PC analizador lgico USB-LOGI 100. Con la ayuda de los micro-klebs se pueden recibir y analizar directamente las seales del componente TTL. No es necesaria una conexin separada a travs de soldaduras. Esto facilita el trabajo cuando se analizan diversos componentes sucesivamente.
Fig. D 4 Micro-klebs
66
Anexos.
E.1
Osciloscopio registrador Conexin directa de lpices USB - Velocidad de muestro por canal: 1 GS/s en tiempo real - Sensibilidad mxima: 1 ns Ancho de banda 200 MHz - Memoria de hasta 2.000.000 puntos por canal
Analizador lgico Ancho de banda 66 MHz 16 canales Rango de medicin de seal de entrada 15 V - 4 millones de puntos (16 k a 400 MS/s) - Velocidad de muestreo de 20 S/s hasta 400 MS/s
67
Anexos.
E.2 Osciloscopio Ancho de banda Pantalla Canales Registro de los valores de medicin Velocidad de muestreo en tiempo real Secuencia de medicin Componente horizontal Base temporal Componente vertical Sensibilidad Acoplamiento de entrada Resistencia de entrada Tensin de entrada mx. Precisin DC Transductor A/D Flanco de subida Componente de disparo (trigger) Modo de disparo Funciones de medicin Mediciones automticas Forma de onda matemtica Memoria Funcin de memoria Memoria de la forma de onda E.3 Analizador lgico Ancho de banda Canales Velocidad de muestreo Resistencia de entrada Rango de medicin de seal de entrada 66 MHz 16 20 S/s hasta 400 MS/s 1 M 2 % 15 V mx. 2.000.000 puntos (1 canal) 4 formas de onda 20 parmetros suma, resta, multiplicacin, divisin, FFT flanco, vdeo, alternate 2 mV ... 10 V / div DC, AC, GND 1 M 2 % en paralelo con 15 pF 3 pF 400 V/DC y ACss 3% 8 bit < 1,7 ns 1 ns - 100 s / div 1 GS/s (tiempo real) por canal normal, valor pico, promedio 200 MHz 20 cm, TFT de 8" (640 x 480 pxeles) 2 canales + disparo (trigger) externo + analizador lgico
68
Anexos.
10 V (4 ajustes) flanco, bus, status, sincronizado, trigger patrn, disparo (trigger), en una secuencia lineal antes, centro, despus 4 millones de puntos (16 k a 400 MS/s) 10 sistema binario, decimal y hexadecimal
Ajuste de la posicin de disparo (trigger) Memoria Ajustes de memoria Sistema de datos E.4 Especificaciones generales Alimentacin Dimensiones (ancho x alto x profundidad) Peso
69