Monografias.com > Computación > Programación
Descargar Imprimir Comentar Ver trabajos relacionados

Analizador lógico de cuatro señales digitales de entrada realizado mediante microcontroladores avanzados y GLCD




Enviado por Pablo Turmero



    Monografias.com
    Graduación deMicrocontroladores Avanzados Tema: Analizador
    Lógico de Cuatro Señales Digitales de Entrada
    Realizado Mediante Microcontroladores Avanzados y GLCD.

    Monografias.com
    Antecedentes: Los Analizadores Lógicos se desarrollaron
    casi simultáneamente al mismo tiempo que los primeros
    microcontroladores que salieron al mercado. El Analizador
    Lógico es una herramienta clave para el desarrollo de los
    sistemas digitales, aunque existen similitudes con los
    osciloscopios.

    Monografias.com
    Descripción General Del Proyecto Nuestro proyecto consiste
    en el PIC 16F887 que básicamente toma 4 señales
    digitales las que se mostraran en una pantalla GLCD dependiendo
    de la selección de frecuencia de muestreo para su
    posterior analisis.

    Monografias.com
    Fundamento Teórico Software: MikroC PRO for PIC v4.15
    Proteus v7.1 SP2

    Monografias.com
    Fundamento Teórico Hardware: PIC 16F887 Oscilador interno
    seleccionable de 8 a 31MHz. Hasta 36 pines de entrada/salida
    usando el oscilador interno. 14 entradas A/D contra 8 del
    PIC16F877A. Capacidad Interrupciones, Tres timers/counters (8, 16
    y 8 bits). Convertidor A/D de 14 canales, 10 bit. GLCD KS0108
    Conformado por una matriz de puntos de visualización de
    128 pixeles de largo por 64 pixeles de alto. Su
    iluminación de fondo es variable RGB, además
    control de brillo. Fácil manejo con microprocesadores de
    8-Bits. Bajo poder de consumo. Contiene dos controladores
    internos un KS0108B y KS0107B.

    Monografias.com
    Descripción E Implementación Del Proyecto Diagrama
    de Flujo:

    Monografias.com
    Descripción E Implementación Del Proyecto
    Convertidor A/D: Dos potenciómetros 0-5v (RA1,RA2) 10
    bits. Pot1 selecciona frecuencia y Pot2 selecciona Factor de
    Multiplicación. Factor de conversión A/D
    Potenciómetro 1 Factor de conversión A/D
    Potenciómetro 2

    Monografias.com
    Descripción E Implementación Del Proyecto Uso del
    Timer1: señales 5Hz-20Hz 0xFFFF = 65535 interrupciones.
    Cristal externo de 4MHz, es decir 1us cada instrucción.
    Hasta 65,535ms sin pre-escalador, hasta 524,28ms con
    pre-escalador. Tomamos 4 muestras de un periodo completo. Ejm:
    20Hz, es decir con periodo de 0,05s generaremos interrupciones
    cada 12,5ms.

    Monografias.com
    Descripción E Implementación Del Proyecto Uso del
    Timer1: señales 50Hz-2KHz. Tomamos muestras saltando uno o
    varios periodos dependiendo de la señal que vamos a
    mostrar. Interrupciones Generadas Saltando un Periodo. Con cuatro
    periodos de la señal de la entrada podemos graficar un
    periodo completo en la GLCD.

    Monografias.com
    Descripción E Implementación Del Proyecto
    Gráficos en la GLCD: Glcd_Dot(x,y,color), función
    principal para graficar, x toma valores de 0-127, y toma valores
    de 0-63 y color valores entre 0, 1 y 2. Barrido horizontal hacia
    la derecha. Se grafica dos pixeles por cada interrupción
    en cada uno de los cuatro canales. Un periodo completo se grafica
    en 8 pixeles. GLCD tiene 128 pixeles a lo ancho, por lo que se
    graficará 16 periodos completos de la señal a la
    entrada.

    Monografias.com
    Descripción E Implementación Del Proyecto
    Limitaciones del Proyecto: “Glcd_Dot” tarda
    aproximadamente 525us. 16 veces “Glcd_Dot” = 8,4ms
    Tiempo total en ejecutarse función interrupción es
    de 8,6ms. Se podría graficar señales desde 1.91Hz
    hasta 116,28Hz, (8,6 – 524,28ms), tomando solo una muestra
    por periodo. Tomando cuatro muestras por periodo el rango seria
    de 0,48Hz – 29,07Hz. Procedimiento valido para frecuencias 5, 10
    y 20 Hz. Para frecuencias mayores a 20Hz, tomamos muestras
    saltando 10 periodos de la señal de entrada para poder
    observar señales de menos frecuencia.

    Monografias.com
    Descripción E Implementación Del Proyecto
    Limitaciones del Proyecto: Ejm: 50Hz, calculamos un tiempo de
    interrupción cada 5ms, tomando 4 muestras, pero la
    limitación de que debe ser entre 8,6ms y 524,28ms no nos
    permite programarlo así, ya que obtendríamos
    errores, si saltamos un periodo para tomar cada muestra entonces
    deberíamos sumar 20ms de un periodo, obteniendo 25ms,
    valor que se encuentra dentro del rango, pero para frecuencias
    menores a 50Hz, en este caso, existirán errores.

    Monografias.com
    Descripción E Implementación Del Proyecto
    Limitaciones del Proyecto: Por esto extendemos la
    interrupción hasta 10 veces su periodo a fin de conseguir
    poder observar hasta 10 señales menores a la frecuencia
    seleccionada. Por lo que la limitación general que tiene
    nuestro proyecto es que para frecuencias mayores a 20Hz, las
    gráficas pueden ser de señales con intervalos de
    frecuencia(f); 1*f/10; 2*f/10; 3*f/10……9*f/10; f y
    además 2f. Tiempo de cada Interrupción considerando
    periodos omitidos

    Monografias.com
    Programación del PIC Programa Principal:

    Monografias.com
    Simulaciones y Pruebas Experimentales Implementación en
    Protoboard:

    Monografias.com
    Simulaciones y Pruebas Experimentales Simulacion en Proteus:
    Frecuencia: 5Hz CH1: 5Hz. CH2: 3Hz. CH3: 1Hz. CH4: 10Hz.

    Monografias.com
    Simulaciones y Pruebas Experimentales Tarjeta Electrónica
    PCB:

    Monografias.com
    Simulaciones y Pruebas Experimentales Proyecto Final:

    Monografias.com
    Conclusiones: 1.- Este proyecto ha sido de mucha importancia para
    ampliar nuestros conocimientos sobre Microcontroladores,
    principalmente el uso de interrupciones ya sean estás
    externas o como temporizadores, además el uso de la
    conversión analógico – digital A/D y el uso
    de la librería propia de MikroC para graficar en una GLCD.
      2.- El analizador lógico nos permite observar
    varias señales al mismo tiempo a diferencia de un
    osciloscopio que nos permite observar una o máximo dos
    señales dependiendo del fabricante, estos analizadores
    lógicos podemos implementarlos con más
    señales a la entrada, pero para este proyecto
    tendría el inconveniente de que aumentaría un poco
    más las limitaciones por lo que lo ideal fue hacerlo para
    cuatro señales digitales.   3.- Se desarrollo un
    analizador lógico usando el PIC16F887 a diferencia de
    otros microcontroladores más avanzados que por poseer
    mayor cantidad de memoria se podría grabar en una memoria
    EPROM para mejor manejo. Con este pic logramos sacar de una forma
    directa las señales a la GLCD sin ser guardadas en
    memoria.

    Monografias.com
    Conclusiones: 4.- La limitación para mostrar
    señales mayores a 20Hz, en la que solo se pueden observar
    hasta 10 señales de menor frecuencia en intervalos iguales
    puede ser resuelta saltando más de 100 periodos en cada
    interrupción, pero esta solución trae consigo el
    inconveniente que las interrupciones tardaran mucho tiempo
    más en ejecutarse, tomando en cuenta el tiempo
    máximo de interrupción es de 524,28ms por 64 veces
    que grafica a lo ancho de la GLCD tomaría 33,55s, en el
    caso más largo, lo que es un tiempo demasiado extenso por
    lo que se prefirió dejarlo con la limitación.
      5.-En la realización de este proyecto fue
    primordial el uso de las interrupciones, que fue el caso al que
    tuvimos que profundizar para el apropiado uso con las diferentes
    señales digitales que se puedan presentar a la entrada del
    dispositivo, específicamente el uso del Timer1. Es de
    vital importancia la sincronización de las interrupciones
    con las señales ya que un pequeño margen de error
    hará que la imagen mostrada en la GLCD no corresponda a la
    señal de la entrada.

    Monografias.com
    Recomendaciones Investigar el correcto uso de las interrupciones
    como temporizadores, ya que base de nuestro proyecto las usa y es
    de mucha importancia su correcto funcionamiento a fin de evitar
    errores.   Revisar los datasheet del el PIC16F887 y de la
    GLCD, para correcto funcionamiento ya que un error en las
    conexiones de estos dispositivos puede ocasionar que se quemen o
    su función sea errónea.   Verificar la
    versión de Software que se usa, en nuestro caso tuvimos
    una complicación con la GLCD por la versión de
    MikroC PRO que estábamos usando, gracias al desarrollo de
    una nueva versión por MIKROELECTRONICA se pudo solucionar
    estos inconvenientes, de igual manera para el uso de el Software
    Proteus.   Para nuestro proyecto el usuario final
    deberá entender bien las limitaciones ya que de no
    hacerlo, puede estar observando imágenes equivocadas que
    no correspondan a las señales emitidas en la entrada.
      En lo posible se debe aprovechar al máximo los
    recursos del pic, en este proyecto para la selección de la
    frecuencia de muestreo se podía usar un switch rotativo,
    pero con la deficiencia de que se debían usar mas puertos
    E/S por lo que lo más adecuado fue usar la
    conversión A/D con dos potenciómetros y tan solo
    usando dos puertos E/S del pic.

    Nota al lector: es posible que esta página no contenga todos los componentes del trabajo original (pies de página, avanzadas formulas matemáticas, esquemas o tablas complejas, etc.). Recuerde que para ver el trabajo en su versión original completa, puede descargarlo desde el menú superior.

    Todos los documentos disponibles en este sitio expresan los puntos de vista de sus respectivos autores y no de Monografias.com. El objetivo de Monografias.com es poner el conocimiento a disposición de toda su comunidad. Queda bajo la responsabilidad de cada lector el eventual uso que se le de a esta información. Asimismo, es obligatoria la cita del autor del contenido y de Monografias.com como fuentes de información.

    Categorias
    Newsletter