Haz una pregunta
  Foros de Electrónica » Diseño digital » Interfaces y Programación
Foros Registrarse ¿Olvidaste tu contraseña?

Temas similares

31/05/2008 #1
Moderador general

Avatar de Fogonazo

Conversión: Analógica a Digital & Digital a Analógica

Sistema de Conversión Digital Analógica

Introducción
El empleo de técnicas digitales para accionar elementos analógicos requiere la utilización de un elemento “traductor” de un sistema a otro, este es el Conversor Digital Analógico (DAC)
Existen muchos diseños para realizar un circuito de Conversión Analógica Digital y viceversa.
En general se utilizan IC´S que realizan estas funciones en forma directa o con un mínimo de componentes extras.
Sin embargo existen casos en que debemos, por costo, practicidad, disponibilidad o por lo específico de nuestra aplicación, aplicar otros sistemas.
Los primeros parámetros de elección serán “Precisión” y “Velocidad” aunque también pesan sobre la elección la simplicidad de uso, consumo, Etc.

Conversión digital analógica
Un DAC (Digital to Analog Converter) es un dispositivo que generará una corriente o una tensión proporcional a una palabra binaria presente en sus entradas.

El DAC más sencillo que se puede concebir consta simplemente de una tensión de referencia y de un grupo de resistencias que se conectan o no de acuerdo al estado de un interruptor asociado



La tensión de salida del amplificador operacional viene dada por:


Donde:
Vo: Es la tensión de salida de operacional.
VREF: Es la tensión de referencia.
Rr: Es la resistencia de realimentación del amplificador operacional.
S0, S1, S2, S3 son los valores lógicos (0 o 1) de los correspondientes bits.

La realización de un conversor con esta tecnología requiere sólo de disponer de un conjunto de resistencias de precisión de valores R, 2R, 4R, ... 2nR.
Este requerimiento no es fácil de lograr ya que conseguir los valores de resistencia necesarios es muy difícil, más aun cuando el numero de Bites aumenta.
En la forma práctica es mas fácil trabajar con un único valor de resistencia y colocar de a 2 en conexión paralelo o serie para lograr los valores requeridos.
Una configuración “ingeniosa” permite confeccionar DAC de muy buena resolución con solo 2 valores de resistencias de valor “R” y “2R”, como todas son iguales es más sencilla la confección del conversor.
Para esto se emplea un esquema derivado del anterior con una red de resistencias R-2R a la entrada del operacional..



La gran mayoría de los DAC trabajan con este sistema.
Existen limitaciones como:
La precisión de las resistencias.
Estabilidad con la temperatura.
Estas limitaciones impiden lograr DAC de mas de 16 Bites con este método

Error en los conversores.
La calidad de un conversor DAC será inversamente proporcional a la diferencia entre el funcionamiento teórico o ideal y el real:


Error de cuantificación:
En un DAC ideal la relación entre la entrada digital (Bites) y la salida analógica (voltios) es lineal.
La resolución es igual al incremento más pequeño que puede experimentar la señal digital que es igual al cambio del bit menos significativo.
El error es siempre menor a 1 bit menos significativo.


Error de offset:
En un DAC real la señal análoga se encuentra desplazada respecto del valor que le corresponde a uno ideal.
Este corrimiento equivale a que para una entrada digital igual a cero se tiene un valor de la tensión de salida del conversor (error de cero).
Este error es fácilmente compensable mediante las prácticas habituales de corrección de offset en AO (Amplificador Operacionál)
Por otro lado, como en todo AO no nos libramos del corrimiento del offet en función de la temperatura.


Error de amplificación:
La diferencia entre la salida real y la salida ideal aumenta con el valor de la entrada.
Esto ocurre debido al desajuste de las resistencias (En el lazo de realimentación).
Esta diferencia se puede corregir en los circuitos integrados aplicados mediante el accionar sobre las mencionadas resistencias, a las que se tiene acceso desde el exterior del IC.
Otra fuente para este error es la propia fuente de tensión de referencia.


Error de linealidad:
Este es la discrepancia entre el valor que debiera tener la tensión salida respecto de la palabra de entrada (Bites).
Ocurre debido a pequeñas diferencias de valores entre las resistencias que componen la red R2R. Es habitual que el mismo IC se provea con distintas precisiones (Y precios)
También se puede corregir por programación.


Error de monotoneidad:
Una señal de entrada que va aumentando no siempre produce una señal de salida en aumento.
Este error se debe a diferencias de valores entre las resistencias de la red R2R.
Se nota en particular conversores “Armados” con resistencias de baja calidad.
Y es producido cuando el Bit menos significativo altera más el valor de la salida que el Bit predecesor debido a errores en las resistencias asociadas.
07/06/2008 #2
Moderador general

Avatar de Fogonazo

Conversores Analógico Digital (ADC)


Conversores Analógico Digital (ADC)

Si el conversor DAC es la voz de un sistema de control ya que expresa el resultado del análisis realizado por el sistema de control, el conversor AD (Analógico Digital) serían los ojos, ya que son el medio por el cual el sistema de control “ve” la información del sistema.
El conversor AD es el componente básico para que un ordenador o sistema de control pueda realizar la medición de una señal análoga adquirida mediante algún tipo de sensor
Estos elementos convierten una señal que varía en forma continua en una señal que lo hace en saltos (Resolución) y cada cierto tiempo (Muestreo).
Las limitaciones que presentan los diversos tipos de conversores AD son las mismas que definimos al comentar sobre los conversores DAC.
Sin embargo la en este tipo de conversores la falta de monotoneidad se denomina “Código Perdido” (Missing Code).
El conversor AD elemental esta constituido por una serie de comparadores analógicos ajustados ellos a diversos niveles de una única tensión de referencia (De precisión) en forma secuencial y progresiva al ingresar en los comparadores una tensión desconocida, se accionarán estos de acuerdo al valor de esta tensión, todos los comparadores cuya tensión de referencia sea menor a la tensión incógnita darán como resultado “1” en su salida, y los comparadores cuyas tensiones de referencia sean superiores a la tensión incógnita darán un resultado “0” en su salida, estos datos se “Interpretan” mediante una serie de compuertas de lógica digital dando como resultado un valor binario que se corresponde a una aproximación de la tensión de entrada.
Esta conversión se realiza a gran velocidad y el echo de que la conversión y presentación se efectúa durante el tiempo de un único pulso de reloj dio el nombre a este tipo de conversores “Conversores tipo Flash”
Un importante defecto de este tipo de conversores es la necesidad de emplear un gran número de comparadores, esto provoca que el empleo de este tipo de conversor se limite hasta solo 8 Bites, por otro lado, tienen la ventaja de su alta velocidad de respuesta (Puede llegar hasta 10MHz)



Conversor AD de 4 niveles por comparación directa
Comparan la señal de entrada con cuatro tensiones de referencia obtenidas mediante un divisor resistivo.



Conversor analógico digital por integración:
Se cuentan la cantidad de pulsos necesarios para cargar un condensador “C” a intensidad constante.
I integrador
CP comparador
P puerta para el conteo pulsos
S interruptor de inicio de conversión.

El problema de precisar muchos elementos de precisión para realizar un conversor analógico digital llevo a desarrollar otra familia de conversores que sólo requieren una referencia de tensión estable: son los conversores de rampa o de integración basados en cargar un condensador mediante una corriente proporcional a la tensión de entrada.
Estos conversores, por las condiciones de diseño, presentan una excelente linealidad y elevada precisión, pudiéndose alcanzar fácilmente 16 bits a bajo costo.
Sin embargo, difícilmente pueden hacer más de unas pocas muestras por segundo (modelos de 12 bits y superiores).
Una cualidad propia del diseño de estos conversores es su gran capacidad de rechazo del ruido, especialmente el inducido por la red de suministro eléctrico (50Hz o 60Hz).
Para ello hay que diseñar el sistema para que el tiempo de integración sea múltiplo del periodo de la red.
La conversión se realiza midiendo el tiempo transcurrido (T) entre el momento en el que se abre el interruptor S y el momento en el que la carga del condensador de integración C hace conmutar al comparador COMP.
La medida del tiempo se realiza contando pulsos de reloj (CK).
La dificultad de este tipo de conversores radica en su calibración y en el error introducido por las derivas que pueda presentar el sistema de amplificador operacional (integrador) y el comparador.
Una solución es utilizar un conversor de doble rampa.



Conversor analógico digital de doble rampa.
Se carga el condensador C con una corriente de referencia durante un tiempo fijo TR y se mide el tiempo necesario para descargarlo con la corriente obtenida con la señal de entrada Vin.
Este tipo de conversores comparan el tiempo necesario para cargar el condensador C mediante la corriente suministrada por la tensión a medir (Vin.) con el tiempo necesario para descargarlo hasta el nivel inicial (Ref.) mediante una corriente conocida generada por la fuente de referencia.
La lógica de control conmuta la entrada del integrador entre la tensión a medir y la fuente de referencia. Inicialmente la entrada está conectada a potencial cero (masa).
En general todos los voltímetros digitales que se encuentran el comercio operan bajo este principio, pues son dispositivos de una elevada precisión y estabilidad intrínseca y de muy bajo costo, pues no requieren ajustes críticos.
Un conversor analógico digital muy utilizado de doble rampa es ICL7109. Este circuito CMOS posee varias entradas de control que simplifican extraordinariamente su operación en múltiples configuraciones, tanto conectado directamente al bus del sistema de datos como su conexión directa a un dispositivo serie (UART) lo que le permite funcionar en modo remoto.
De este conversor existen versiones preparadas para activar directamente un visualizador de cristal líquido (LCD) como el 7106 o de diodos LED.



Conversor analógico digital de seguimiento.
La salida de un conversor digital analógico se compara con la señal de entrada, según sea mayor o menor se incrementa o decrementa un contador asociado al conversor digital analógico.
Otra familia de conversores analógico digital se diseño a partir de un conversor digital analógico del tipo R-2R, cuya salida se compara con la tensión a medir mediante un circuito comparador.
Una pequeña lógica de control varía la señal digital presente en la entrada hasta que la salida del conversor iguala a la tensión a medir.
La realización más sencilla es utilizar un contador bi-direccional conectado a la entrada del conversor digital analógico.
Según el comparador indique un valor superior o inferior, se incrementa o decrementa el valor del contador (conversor de seguimiento). Cuando la señal varía más rápidamente que la velocidad del conversor, los datos leídos quedan sistemáticamente por debajo o por arriba del valor correcto. Además, este tipo de conversor tiene que invertir un tiempo considerable hasta que el contador alcanza el valor correcto.



Conversión analógico digital por aproximación sucesiva.
Un circuito similar al utilizado en los conversores de seguimiento, pero ahora, cada vez que se realiza una conversión se ensayan los sucesivos bits empezando por el más significativo. Según se obtenga un valor menor o mayor se añade o no el bit al control del conversor digital analógico. El tiempo necesario (número de pulsos de reloj) es siempre igual al número de bits más uno.

Una solución a este problema es utilizar un algoritmo de aproximación sucesiva: se ensaya inicialmente con el bit más significativo, si es mayor este bit permanece a 0 durante todo el proceso y si es menor a 1.
Seguidamente se ensaya con el segundo bit más significativo y se va repitiendo el proceso.
El número de ensayos a realizar es igual al número de bits a convertir más uno, mientras que en un conversor de contador puede llegar a ser de 2n ensayos.
Es muy importante que la señal de entrada no varíe durante todo el tiempo que dura la conversión, ya que un error en una sola de las comparaciones provoca que todo el código de salida sea erróneo.
Para evitar que la señal de entrada varíe durante la conversión (unos pocos microsegundos) se utilizan circuitos de muestreo y retención (Sample & Hold) o cuando el espectro de la señal de entrada lo permite un simple filtro pasa bajos que limite la velocidad de variación de la señal por debajo de 1 bit menos significativo en el tiempo que dura una conversión.
Los conversores analógico digitales disponibles en forma de circuitos integrados, como ADC0801 requieren muy pocos componentes externos: como son la referencia de tensión, los condensadores de desacoplo y el sistema de reloj (un cristal de cuarzo, una red RC o en generador externo). Las señales de control permiten seleccionar el circuito (CS), iniciar una conversión (WR), o leer los datos (RD).
El estado del conversor (en reposo o realizando un conversión) se conoce mediante una señal fin de conversión (EOC o INTR). Muchos conversores R-2R son unipolares, para su utilización en modo bipolar se desplaza el cero a la mitad de la tensión de referencia, para ello basta con disponer de un divisor resistivo conectado a la entrada de conversor, entre la tensión de referencia y la entrada de señal (salida del amplificador de entrada).
La rapidez, precisión y estabilidad de los conversores de aproximación sucesiva hace que estos sean los más utilizados en la gama de 8 a 16 bits y velocidades entre 10Hz y 1MHz. A velocidades menores se utilizan conversores de doble rampa y a mayores, conversores de tipo flash.



Conversor analógico digital delta-sigma:
Se trata de un conversor con un integrador en el que a la señal de entrada se suma o resta una tensión de referencia.
Este proceso se hace muy rápidamente, de forma que se obtienen una secuencia de 1 y 0 según el número de transiciones hayan sido necesarias para igualar a la tensión de entrada. Un filtro digital reduce la velocidad de muestreo al valor deseado, aumentando paralelamente la resolución.
Es importante proteger mediante diodos la entrada del conversor frente a tensiones que superen la alimentación o de polaridades inversas.
Un amplificador operacional dispuesto a la entrada del conversor permite trabajar con una elevada impedancia de entrada, amplificar la señal de entrada o disponer de un filtro pasa bajos o pasa altos.

Conversores de alta resolución
La resolución de los conversores analógico digitales está limitada a 16 bits, ya que la tecnología actual no permite ajustar y mantener los distintos componentes del conversor con precisiones superiores a 2 e-16.
Además, el propio ruido térmico originado en los componentes, contactos y conductores es también mayor a 2 e-16.
Estas resoluciones resultan insuficientes en algunos casos, para estos casos específicos se recurre a un proceso de sobre-muestreo y un procesado digital posterior de los datos.
Este tipo de conversores, que en banda limitada pueden alcanzar 24 bits de margen dinámico, se basan todos ellos en un conversor de un sólo bit operando a alta velocidad en seguimiento continuo de la señal.
El circuito básico consta de un amplificador diferencial, seguido de un integrador y un comparador, Según la salida del comparador indique mayor o menor se inyecta una carga dQ o -dQ obtenida a partir de la misma referencia de tensión. De este modo a la salida del comparador se obtiene una secuencia de 1 y 0 que corresponde a las variaciones de la señal de entrada. Esta secuencia digital se procesa en tiempo real mediante un filtro digital.
Este proceso de señales permite reducir el ruido del sistema y obtener información válida correspondiente a variaciones de señal inferiores al salto de 1 bit en el conversor.
La eficacia de este tipo de conversores radica en el elevado número de conversiones que realizan por segundo (200KHz ) que el proceso digital reduce a menos de 200Hz.
El proceso de filtrado se realiza en dos pasos: en el primero se promedia la señal y se reduce en un factor 100 o superior (diezmado).
Este filtro digital presenta una respuesta del tipo sen(x)/x (figura).
El segundo filtro es un filtro pasa bajos de corte muy abrupto.
Este tipo de conversores siempre proporcionan el código de salida en serie, con el reloj ligado a la frecuencia aparente de muestreo, aunque es posible con ciertas limitaciones operar con reloj externo.
En caso de que se desee un código paralelo basta con disponer de dos/tres registros de desplazamiento de 8 bits.
Por su propia estructura estos conversores no permiten multiplexar la señal de entrada, funcionando siempre como conversores de seguimiento continuo de la señal de entrada.
Un cambio brusco en la entrada requiere varios ciclos de medida.
Además, cada vez que se aplica la tensión de alimentación entran en un ciclo de auto-calibrado, que también es accesible externamente.
Un ciclo de lectura especial permite conocer los coeficientes del filtro y las constantes de calibración.
Todos estos conversores poseen diversas ganancias, aunque no son compatibles todas ellas con los modos de operación en alta resolución.
El costo de este tipo de conversores es relativamente bajo, ya que se utilizan masivamente en los equipos de sonido digital.
Las características de estos conversores dependen fuertemente de la velocidad de muestreo elegida y de la amplificación elegida.

Conversores analógico digital de aplicación general

Actualmente hay multitud de conversores analógico digitales, resultando en ocasiones difícil decidirse por un modelo concreto. Los criterios de selección pueden ser:
• Facilidad y seguridad de suministro
• Condiciones de operación
• Velocidad de muestreo
• Resolución
• Salida de datos serie o paralelo
• Señales necesarias para su operación
• Consumo
• Precio



La utilización de un conversor analógico digital requiere un mínimo de componentes auxiliares para que pueda funcionar de forma sencilla.
Se parte de un conversor analógico digital (ADC), operado por un microcontrolador ((iC) que proporciona los datos del conversor en un formato estándar aceptado por los computadores.
En muchos casos se requiere un adaptador de nivel (RS232/RS485) para acoplar el dispositivo a la línea de transmisión y a la entrada del computador.
Una fuente de alimentación protegida contra cortocircuitos e inversiones de polaridad completará el circuito.

Algunos ejemplos:

LM3914
Configuración Interna:




http://cache.national.com/ds/LM/LM3914.pdf

AD7710
Se trata de un conversor delta-sigma de 24 bits de resolución nominal, pues esta tecnología, relativamente reciente, copa todos los conversores de alta resolución disponibles en el mercado. El conversor AD7710, de Analog Devices, opera con alimentación simétrica de +5V y -5V. Y posee un amplificador incorporado con ganancia ajustable entre 1 y 128, lo que permite prescindir del pre-amplificador. Este conversor acepta entradas bipolares con respecto a masa, que simplifica mucho la operación con la mayor parte de los sensores.
Tiene el inconveniente de requerir muchas líneas para su operación que complica la realización de la interfase con el microcontrolador. La posibilidad de variar la amplificación por software y que acepte entrada bipolar hace que este conversor sea una buena opción.

AD7710
http://www.analog.com/UploadedFiles/...ets/AD7710.pdf

Configuración interna:





Circuito práctico para utilizar un conversor AD7710. Como microcontrolador se ha elegido un PIC16F84.
La salida del microcontrolador es directamente compatible con la entrada RS232 del computador.
En caso de que se desee una interfase bi-direccional o utilizar cables largos deberá incluirse un adaptador de nivel como el MAX232 (MAX220) para RS232 o MAX485 para RS485.

La operación del conversor se controla escribiendo en un registro de control la frecuencia de muestreo, el formato de los datos y la ganancia.
Además, posee la posibilidad de realizar calibraciones sin interrumpir el proceso de medida. Se utiliza un cristal de 9.8304 MHz. Para poder obtener frecuencias de muestreo exactas de 200 Hz., 100 Hz., 50 Hz.
El microcontrolador utiliza un cuarzo de 3,57 MHz. Que permite generar fácilmente las frecuencias estándar de comunicaciones serie (9600 baudios). Es necesario desacoplar adecuadamente todas las líneas de alimentación con condensadores electrolíticos en paralelo con un condensador de calidad (multi-capa, etc.).
Las líneas de entrada-salida del microcontrolador que no se utilizan se pueden ocupar con un grupo de micro-interruptores que permiten seleccionar distintas opciones del software de control, como la frecuencia de muestreo o la ganancia del conversor



Señales necesarias para controlar el AD7710. Posee una interfase serie debiéndose primero enviar un mensaje de configuración y después leer los datos al finalizar cada medida.



También es sencillo construir un módulo para tres canales. Como los conversores delta-sigma no permiten multiplexar rápidamente las señales de entradas se necesita un conversor para cada canal que comparten las líneas de control. Se utiliza un transistor (BC107) para mezclar las tres señales de fin de muestra.



Módulo de adquisición de datos realizado con un conversor analógico digital ADS1210 y un microcontrolador PIC16F84. Obsérvense las dos resistencias de 10 KQ a masa en las líneas de reloj SCLK y datos SDIO. Estas resistencias evitan que durante el arranque el conversor interprete la inicialización de las entradas y salidas del microcontrolador como comandos.



ADS1210
http://www2.informaciónrmatik.hu-ber...vp/ads1210.pdf

Configuración Interna:



Se trata de otro conversor de tecnología delta-sigma de 24 bits de resolución producido por Burr-Brown. Precisa menos líneas de control, de hecho puede operar con sólo dos líneas, pero el software es más sencillo con cuatro líneas. Este conversor sólo acepta señales positivas, lo que obliga a disponer de un circuito de entrada para cambiar el nivel. En muchos casos puede ser suficiente emplear un doble divisor resistivo como se muestra en el esquema. En otros deberemos incluir un amplificador operacional, que habrá que seleccionar con mucho cuidado para mantener la tasa de ruido dentro de límites aceptables. También dispone de un preamplificador de ganancia variable (1 a 16) y diversos modos de operación que permiten buscar un compromiso entre consumo, precisión y frecuencia de muestreo. Sin embargo no es posible cubrir todo el rango de 24 bits en todas las escalas ni modos de operación. Por consiguiente debe estudiarse detalladamente cual es el punto de operación deseado, en este sentido es preferible utilizar el AD7710.
La operación es similar al AD7710, se debe enviar primero un comando, especificando la frecuencia de muestreo y la ganancia, y después leer los tres Bytes de datos. Es importante prestar atención al hecho que los comandos deben enviarse sólo cuando lo autoriza el conversor (DRDY bajo), en caso contrario puede producirse un comportamiento errático del conversor. La necesidad de utilizar un puente resistivo a la entrada para poder manejar señales negativas obliga a operar siempre con elevadas ganancias en el conversor, pues en caso contrario es imposible aprovechar todo el margen dinámico. También debe cuidarse la secuencia de arranque, polarizando a masa las líneas de entrada al conversor para evitar que se confunda la programación de estas líneas, por parte del microcontrolador, como comandos



La utilización de un puente resistivo para polarizar adecuadamente la entrada diferencial de forma que pueda aceptar señales negativas debe hacerse teniendo en cuenta la resistencia interna del generador de señal G. La resistencia R3 debe ser igual a Rl + G y R2 = R4.



La impedancia de salida de la fuente se puede compensar fácilmente con un potenciómetro “P”.



En muchos casos es necesario utilizar un amplificador diferencial alimentado simetricamente (+5V, -rV) que proporciona una muy baja impedancia de salida y de esta forma el sistema es independiente de la impedancia de la fuente.



Conversor de 12 bits de aproximación sucesiva, interfase serie y bajo consumo.
Se utiliza la misma fuente de alimentación como tensión de referencia.
El microcontrolador debe ser también de bajo consumo (PIC16FL84).



La interfase serie es muy sencilla, basta con seleccionar el conversor (CS) y enviar doce pulsos de reloj.

Conversores de 12 bits.
La diferencia de precio ya no justifica utilizar en aplicaciones de baja frecuencia conversores de baja resolución, salvo en casos en que el consumo sea primordial. En general 12 bits es una resolución insuficiente en sismología, incluso operando con sensores de baja calidad. Igualmente en los inclinómetros es poca sensibilidad salvo que se disponga de un complejo mecanismo de ajuste de cero. Los conversores de aproximación sucesiva de 12 bits son componentes muy sencillos de operar, con una interfase serie de dos o tres hilos, por la que envían ráfagas con los doce bits en serie. El consumo es muy reducido, pero cuando se requiere una referencia de tensión de precisión o un preamplificador esta ventaja puede quedar muy reducida. Estos conversores se utilizan mucho en equipos autónomos de adquisición de datos a muy baja velocidad, por ejemplo un dato a la hora y en los que no se requiere mucha precisión. Este tipo de instrumento puede permanecer mucho tiempo en situación de espera con consumo muy reducido, se conecta toma el dato y vuelve a reposo. En estos casos este tipo de conversor es el ideal pues sólo consume en el momento en que está realizando la medida, volviendo automáticamente al estado de bajo consumo.



Otro conversor de 12 bits de aproximación sucesiva, con interfase serie y bajo consumo. También utiliza la misma fuente de alimentación como tensión de referencia. El microcontrolador debe ser también de bajo consumo (PIC16FL84).



La interfase serie es semejante a la utilizada por el MAX187, basta con seleccionar el conversor (CS) y enviar catorce pulsos de reloj.

Conversor de 8 canales y 12 bits.
En muchos casos se precisa medir varias señales sin requerir una precisión excesiva, bien porque se trate de señales con mala relación señal ruido o por la propia naturaleza de las señales como es el caso de una estación meteorológica. En estas circunstancias resulta conveniente utilizar un conversor analógico digital con varias entradas. Comercialmente se encuentran muchos conversores de este tipo, siendo generalmente de 8 canales de entrada como es el MAX186 que tiene una resolución de 12 bits. Este conversor es de muy sencilla operación y permite solucionar fácilmente las situaciones donde se requiere medir muchas señales.



Se utiliza un conversor de aproximación sucesiva, de 12 bits y 8 canales de entrada (MAX186) controlado por un microcontrolador PIC16F84. De esta forma se obtiene una salida serie estándar que podemos conectar directamente al puerto RS232 del computador.

La configuración propuesta se basa en la utilización de un conversor analógico digital de 12 bits y 8 canales de entrada (MAX186), capaz de operar a 100KHz de frecuencia de muestreo y referencia de tensión incorporada internamente. Es necesario disponer un sistema de filtros antia-aliasing en cada una de las entradas para limitar la señal por debajo de la mitad de la frecuencia de muestreo. Se utiliza un microcontrolador PIC16F84 para proporcionar todas las señales de control y obtener una salida directamente compatible con el computador.
Como en todos los conversores de alta resolución es necesario que la masa analógica y la masa digital tengan sólo un punto en común y que este sea precisamente el pin correspondiente a la masa analógica del conversor. Igualmente es importante incluir condensadores de desacoplo en las alimentaciones de todos los chips. Esto es especialmente importante en las alimentaciones del conversor. Estos condensadores deben disponerse lo más próximos posible al correspondiente pin. También debe desacoplarse la tensión de referencia. Finalmente, los conductores correspondientes a la señal de entrada no deben circular cerca de señales digitales. tra fuente de ruido importante es la generada en los propios circuitos integrados del filtro antialiasing debido a que el ruido aumenta considerablemente con la frecuencia y el conversor utiliza un tiempo muy corto para adquirir el dato, por lo que no tiene tiempo de cancelar el ruido al promediar la señal. Para corregir este efecto debe utilizarse un pequeño filtro RC dispuesto lo más cerca posible del correspondiente pin de entrada. Los valores recomendados para operar con frecuencias de reloj del orden de 1MHz son 220Q y 10nF. El filtro antialiasing deberá diseñarse para una frecuencia de corte del orden de un tercio o un cuarto de la frecuencia de muestreo. En general, cuando se trata de adaptar una red analógica ya existente al registro digital, suelen servir el mismo sistema de filtros, debiendo sólo incluir un pequeño atenuador o amplificador para adaptar el nivel de señal al requerido por el conversor, tratando de optimizar la relación señal ruido. Es importante cuidar en sistemas FM que la subportadora de audio quede suficientemente atenuada por el filtro, ya que al tener mucha mayor sensibilidad el sistema digital, estas señales parásitas pueden llevar a inhibir la correcta operación del algoritmo de detección.



El MAX186 posee una línea serie de entrada de comandos y otra de salida de datos, funcionando ambas bajo el mismo reloj. Primero el microcontrolador envía una ráfaga de 8 bits con un bit de sincronismo, el número del canal que se desea medir, la polaridad de la señal (unipolar o bipolar) y si se desea una configuración de entradas diferencia o referida a masa. Seguidamente el conversor realiza la medida (STRB a nivel bajo) y al finalizar (STRB sube a nivel alto) se pueden leer el dato en una ráfaga de 16 bits. Al finalizar la medida de todos los canales, el microcontrolador ordena los datos de acuerdo al formato deseado (binario, ASCII) incorporándole la cabecera necesaria para su identificación y los transmite al computador en serie a 9600 baudios.

Fuentes de alimentación
Los conversores analógico digitales y sus elementos de control requieren 5V (3 V en las realizaciones de muy bajo consumo) para la alimentación digital y en muchos casos una tensión negativa -5V. Dado que los límites de la señal de entrada al conversor son +-5V, es recomendable alimentar toda la sección analógica con +8V y -8V para evitar que los operacionales corten las excursiones de la señal en las proximidades de 5V. Unos simples diodos protegen las entradas del conversor en caso de excursiones excesivas.
El bajo consumo permite utilizar una pequeña fuente conmutada doble para obtener todas las tensiones necesarias a partir de la propia alimentación del sistema de Pc. También pueden utilizarse fuentes conmutadas integradas del tipo MAX638 para la rama positiva y un ICL7660 (o un MAX660) para la rama negativa del conversor. Además deberemos disponer de las tensiones de alimentación para el sistema de filtros, que pueden obtenerse también mediante fuentes conmutadas o reguladores serie convencionales, en función de lo crítico que sea disminuir el requerimiento energético.
En aquellos casos donde ya existe una alimentación simétrica a 12V o 15V puede utilizarse directamente con sólo incluir un reguladores serie positivo (LM7805) y negativo (LM7905) para el conversor, y adoptar las precauciones elementales de desacoplar cuidadosamente mediante condensadores las líneas de alimentación en su entrada a la unidad de adquisición.
La fuentes de alimentación se deben diseñar de forma que todo el equipo funcione con una alimentación única de 12V.
Hay que cuidar especialmente las conexiones al sistema central de alimentación, ya que no es raro que las diferentes fuentes conmutadas generen un ruido excesivo para la resolución del conversor: la solución radical es utilizar fuentes independientes, si ello no es posible deben utilizarse cables gruesos e independientes, especialmente para la masa.
18/02/2010 #3

Avatar de Hiske

Respuesta: Conversión Analógica a Digital Red R2R
Hola muy buenas tardes, soy nuevo en este foro y no pude encontrar la manera de postear un tema nuevo asi que presento aqui mi problema y espero resivir algunos consejos e ideas hacerca del como resolverlo.

Lo que necesito es un convertidor analogico digital pero ha base de compuertas logicas, es un proyecto para la escuela pero planeaba hacerlo con algun integrado pero la tarde de ayer el profe nos informo que lo requiere a base de TTL, pero no he logrado encontrar algun diagrama que me explique el funcionamiento del convertidor en TTL.

Espero que alguno de ustedes tenga alguna idea sobre el como resolver mi problema, se los agradeceria mucho. Espero su pronta respuesta y Agradesco su atencion Muchas Gracias!!!!
19/02/2010 #4

Avatar de tecnogirl

Respuesta: Conversión Analógica a Digital Red R2R
Fogonazo: Excelente documento. Gracias.
Calel: si te lees el aporte de Fogonazo hay un esquema que resuelve tu pregunta.
Hiske: No he visto un ADC basado SOLO en compuertas lógicas.
Saludos
19/02/2010 #5
Moderador general

Avatar de Fogonazo

Respuesta: Conversión Analógica a Digital Red R2R
tecnogirl dijo: Ver Mensaje
Fogonazo: Excelente documento. Gracias.
Gracias a ti por comentar.

....Hiske: No he visto un ADC basado SOLO en compuertas lógicas.
Saludos
Existe una forma, un tanto exótica y que depende del modelo que empleo el fabricante de la compuerta y es trabajando la compuerta como si fuera un operacional. Tienen una zona lineal que permite amplificar y de allí a comparar.
Pero repito esto es solo para algunos modelos de IC´s de lógica CMOS.
22/02/2010 #6

Avatar de tecnogirl

Respuesta: Conversión Analógica a Digital Red R2R
Hiske: Con las aclaraciones que hizo Fogonazo, parece que esta es la solucion. La imagen adjunta te muestra los umbrales de conmutacion logica en distintas tecnologias de chips. Aprovechando que son bastante variados te haces un "ADC" empleando compuertas (digamos tipo AND), de distinta tecnologia, como lo pediste, solo con compuertas. Salu2
Imágenes Adjuntas
Tipo de Archivo: gif logicthres.gif (62,1 KB (Kilobytes), 207 visitas)
29/06/2010 #7

Avatar de elosciloscopio

Respuesta: Conversión Analógica a Digital Red R2R
Gracias por el aporte, es muy útil.

que tolerancia deberían tener como máximo las resistencias en una red R/2R para que no ocurra ese error de monotoneidad?

saludos y gracias
28/06/2011 #8


Teoria sobre ADC (Analog to Digital Conversor)
Quiero compartir con todos un articulo que acabo de terminar de escribir y que hace parte de un Libro en el que estoy trabajando. Lo comparto pues son conceptos básicos que se deben tener en cuenta para usar los Conversores Análogo a Digital. Ademas, para programar microcontroladores con ADC incorporado es fundamental tenerlos claros.



2.3.2. * Analog to Digital Conversor (ADC).

Como su nombre lo dice, un dispositivo ADC fue creado para representar en una palabra digital el nivel de voltaje existente a la entrada de este. En otras palabras, para tomar una muestra de una señal análoga en un instante de tiempo, cuantificarla y darle un código digital (comúnmente binario) que representa la cantidad de niveles a los cuales pertenece la muestra.
En la imagen Nox se podrá ver de forma general los bloques mínimos que hacen parte de un ADC.
*

Imagen Nox. Diagrama de bloques de un ADC.


En la actualidad existen diferentes técnicas para cuantificar y codificar la señal análoga de entrada, hay de conversión directa, tipo SAR (Successive-approximation-register), también los SD (Sigma-Delta), comparador en rampa, y la lista continua, pero no es intención de esta publicación profundizar sobre todos los que existen, solo se pretende dar los conceptos básicos que debe conocer una persona.


Para el ejercicio de entender un poco mas cada uno de los componentes de un ADC, se usara como referencia los conversores análogo a digital tipo SAR, ademas es importante aclarar que es de los mas usados en módulos internos para microcontroladores, pues son ideales para trabajar con velocidades de operación de hasta 5 Millones de muestras por segundo y con resolución de 8 a 16 bits.


Conversor Analogo a Digital tipo SAR.

El nombre da una pequeña guía de su funcionamiento, pues físicamente se trata de un registro digital de n bits y un modulo llamado lógica digital SAR que va gestionando todo el proceso hasta completar y obtener el resultado que es directamente la salida del registro. *A pesar de muchas variantes que existen en los ADC tipo SAR, en la imagen Nox se pueden ver los componentes básicos de esta arquitectura.


Imagen Nox. Diagrama de bloques de un ADC tipo SAR.

Cada vez que que quiere quiere tomar una muestra de la señal análoga y conocer el valor digital que lo representa, siempre se siguen los siguientes pasos:

Tomar una muestra de la señal.
La manera mas fácil de verlo es como un interruptor electrónico cuya única función es dejar pasar la señal análoga a convertir, este paso sera por un pequeño instante de tiempo, solo lo necesario para que el retenedor quede cargado al mismo nivel de voltaje de la señal de entrada.

Cuantificar y Codificar
Una vez que la señal esta lista en el retenedor, el modulo de control SAR inicia el proceso de cuantificacion y codificación directa. Para explicarlo mejor, sigamos con un ejemplo paso a paso este procedimiento.

Ejemplo: Se desea convertir 1.6V a su equivalente digital con un ADC tipo SAR *de 4 bits de resolución con un VREF+ de 5Vdc y VREF- de 0V:

El nivel máximo de conversión esta determinado por el voltaje en el pin VREF+ y el valor mínimo por VREF-. Desde VREF- hasta VREF+ *es dividido en porciones iguales y la cantidad de veces dadas por la resolución ((2^n)-1). Como n es 4 bits para este ejercicio, entonces, ((2^4)-1) = 15 partes iguales).

En el primer flanco de subida de la señal de RELOJ, el controlador SAR, lleva el BIT MSB del registro binario a 1. *(bit 3 para este ejercicio obteniendo a la salida del registro el dato 1000). La razón de este primer paso es forzar la salida del DAC interno a VREF+/2. Es decir:


Si a 4 bits el numero binario máximo es 1111 que corresponde a 15 decimal la salida del DAC sera también el máximo que es VREF+.

Cuando el controlador SAR coloca 1000 a la salida del registro este valor binario corresponde a 8 decimal que seria de cierta manera la mitad del valor máximo posible, definitivamente a la salida del DAC también se tendrá la mitad del voltaje máximo, es decir, VREF+/2.

VREF+/2 a la salida del DAC es comparado con VIN presente en el retenedor. Si es mayor VIN que la salida del DAC este bit es ajustado a 1 de forma permanente durante la conversión, si es menor, el bit es ajustado en 0. Luego repite uno a uno para todos los bits que indican la resolución de conversión.

En la imagen Nox se puede ver el procedimiento paso a paso para obtener la conversión de análogo a digital con la técnica SAR.


Imagen Nox. Procedimiento ADC tipo SAR para bit3.

De lo anterior podemos concluir que para n bits de resolución se necesitan mínimo n ciclos de reloj para finalizar su proceso. Esta es la razón fundamental por lo que es difícil encontrar ADCs topo SAR que combinen alta resolución con alta velocidad de operación, ademas se deben tener en cuenta tiempos críticos que se van sumando, haciendolos mas lentos frente a otras arquitecturas. Uno de estos es el tiempo que tarda el comparador en obtener una salida estable después de cada cambio, otro es el tiempo que tarda el bloque lógico SAR en leer la respuesta del comparador y realizar sus operaciones internas, ademas del tiempo de muestreo y retención de la señal a convertir.

Por lo anterior el Comparador debe ser lo mas rápido y con la mayor resolución posible, pues tiene que ser tan preciso como el sistema en general. Para los fabricantes es preocupante el ruido que pueda presentarse afectando el resultado de la comparación es por ello que hay variantes según cada fabricante.


Es importante resaltar que la resolución del Conversor Analogo-Digital (ADC) esta dada por la cantidad de bits del registro, ademas el Conversor Digital-Analogo (DAC) que esta interno tiene la misma resolución. *

El resultado en el ejemplo nos dio 0101 en binario que corresponde a 5/16 del VREF+... Si hiciéramos el calculo para saber a cuando voltaje equivaldría este dato binario, seria de (5Vdc)*(5/16)=1.5625Vdc, es decir, tendríamos un error del 3.75%. Para reducir este error tendríamos que hacer mas divisiones entre VREF- y VREF+, así los pasos entre un nivel y otro serian mas cercanos. Para lograrlo solo queda incrementar el numero de bits de resolución del ADC. Claro esta que no se puede incrementar la resolución del ADC por capricho y simplemente seleccionar siempre el que mas tenga pues a mayor numero de bits, mas ciclos de reloj se necesitan para completar la operación, haciéndolo mas lento. Y si se incrementa la velocidad del reloj para compensar, el consumo de energía también aumenta. Hay un punto de equilibrio que lo dará la aplicación que se quiera desarrollar con el ADC.

Entre las ventajas de los ADCs tipo SAR están:

Gran implementacion en encapsulados pequeños, algo que interviene en gran medida para la selección de su uso en microcontroladores

El consumo de energía es directamente proporcional a la velocidad de operación y para sistemas embebidos esta característica es fundamental ya que controlando la frecuencia de la señal de reloj en el ADC, se controla el consumo de este.


En general son de resolución aceptable y como decía inicialmente estos ADCs tipo SAR son la selección ideal hasta el momento para ser incorporados en microcontroladores.


Imagen Nox. Comportamiento lineal en un ADC.


Teniendo en cuenta el comportamiento lineal de los ADCs, y la ecuación característica que se pueden observar en la Imagen Nox, es posible predecir el resultado digital binario que se obtendría con un ADC para una resolución y voltajes de referencia dados. Aunque la linealidad de un ADC es relativa y puede ser discutida debido a un error intrínseco en el procedimiento de cuantificación de la señal análoga de entrada.

Para ver como usar estas formulas, se puede intentar predecir el resultado del ADC para el ejemplo propuesto antes.

Ejemplo: Se desea convertir 1.6V a su equivalente digital con un ADC tipo SAR *de 4 bits de resolución con un VREF+ de 5Vdc y VREF- de 0V:

Doutput=((Vinput+ - VREF-)/(VREF+ - VREF-))(n^2-1) = ((1.6V - 0)/(5-0))(15) = 4.8

Doutput = 4.8... Pero un ADC entrega resultados enteros, es por ello que se debe aproximar por encima al valor mas cercano. *(A este error que se genera por esta aproximación se le denomina error de cuantización).

Doutput = *5 base10, pasamos a binario y obtendríamos :
Doutput = 0101 base 2.

Sobre VREF+ y VREF-
Estos dos pines que están presente en casi todos los ADC que existen, incluyendo los que están incorporados en los microcontroladores, merecen ser tenidos en cuenta con mucho detenimiento y cuidado.

Es muy importante la estabilidad y filtrado de los voltajes aplicados por estos dos pines. Variaciones de estos voltajes en la mitad de un conversión AD, puede generar resultados no predecibles. Por lo anterior como mínimo se recomienda colocar capacitores de 0.1uF tantalio muy cerca de estos pines.

VREF+ máximo no es el mismo para todos los ADCs. Cada fabricante ofrece diferentes ADCs con rangos diferentes, es por ello que se hace imprescindible revisar la hoja de datos correspondiente al ADC a usar. En la mayoría de los microcontroladores es común encontrar que VREF+ máximo es el mismo VCC que se le esta aplicando al microcontrolador, por ejemplo, si el MCU esta a 3.3V, este sera el voltaje máximo aplicable en VREF+.

VREF- muchas veces es mal interpretado. No siempre se puede aplicar voltajes negativos en este pin, es muy importante revisar hoja de datos para tener muy claro esta información. En muchos de los microcontroladores VREF- minimo es de 0V.


La función principal de estos pines, es definir el rango de voltaje dentro del cual la señal análoga de entrada estará cambiando. *Esto es de gran importancia si se quiere aprovechar en su totalidad la resolucion del ADC.

Ejercicio: Se desea leer con un ADC a 8 bits de resolución una señal análoga que varia de 0 a 1.5Vdc. *Seleccione VREF+ y VREF- para el ADC.

Solución:
Se deben revisar los 2 valores extremos que podrá tener la señal análoga de entrada. Vmínimo seria de 0V y Vmáximo seria de 1.5v. VREF- debería ser conectado a GND y VREF+ debería conectarse a un voltaje de 1.5V, pero se recomienda por protección subir este voltaje a 1.6Vdc. Ahora si predecimos cual seria el valor binario que representaría la señal análoga cuando este en su máximo valor obtendríamos:

Doutput=((Vinput+ - VREF-)/(VREF+ - VREF-))(n^2-1) = ((1.5V - 0)/(1.6-0))(255) = 239.0625

Doutput= 240 base 10. *Pasado a binario obtendríamos:

Doutput=11110000 base 2.


Cuando se usan microcontroladores con ADC interno, es común usar VREF- de GND y VREF+ de 5V que es el mismo VCC, esto para evitar el uso de reguladores especiales solo para el ADC. Si intentamos convertir a digital la misma señal del ejercicio anterior con estos datos de VREF+ y VREF-, encontraríamos que:

Doutput=((Vinput+ - VREF-)/(VREF+ - VREF-))(n^2-1) = ((1.5V - 0)/(5-0))(255)=76.5


Doutput = 78 base 10. *Pasado a binario obtendríamos:

Doutput=1001110 base 2.

De este resultado podemos recalcar que al máximo voltaje en la señal de entrada, solo se usarían 7 bits para representar la señal, mientras que el ADC es de 8 bits, lo que se puede llamar perdida de resolución.



Imagen Nox. Muestreo de señales análogas,.

En la imagen Nox podemos observar lo importante que tiene la velocidad de muestreo de una señal análoga que varia en el tiempo. Cuanto mas muestras por segundo se tienen de dicha señal con mas fidelidad podrá ser recreada para su procesamiento. Pero esta velocidad de muestreo esta limitada por el tiempo mínimo que tarda el ADC en tomar la muestra, ademas del tiempo que tarda el controlador digital en almacenar dicha muestra y dar la orden al ADC para una nueva lectura, a esta se debe sumar que a mas muestras por segundo mas datos deberán ser almacenados y procesados por segundo, lo que agrega ahora la limitación en memoria del controlador digital. El punto de equilibrio lo dará la aplicación que se esta desarrollando.

El tiempo mínimo requerido por el ADC para tomar una muestra es inversamente proporcional a la frecuencia señal de reloj usada para el ADC. Cada fabricante en la hoja de datos del dispositivo ADC, indicad cual es la frecuencia máxima de reloj que se puede aplicar y así la velocidad máxima de muestreo.

Existe el teorema de Nyquist que recalca cual debe ser la velocidad de muestreo mínima para la digitalización de señales periódicas. Según Harry Nyquist, para poder reconstruir una señal periódica que ha sido digitalizada, esta debió ser maestreada a una frecuencia mínima de 2 veces la frecuencia de la señal a procesar. Aunque es un error pensar que con solo cumplir con este requisito se va a lograr un resultado perfecto en el procedimiento pues no hay que olvidarse de los errores que se suman a la señal digitalizada, entre ellos el error de cuantización que ocasiona una perdida de información muestra tras muestra. Ademas hay que combinar el teorema de Nyquist con técnicas de eliminación de ruido y demás para así obtener resultados aceptables en la señal recreada después de su procesamiento digital.



Referencias:
MAXIM APPLICATION NOTE 1080: Understanding SAR ADCs: their architecture and comparison with other ADCs.
MAXIM APPLICATION NOTE 1870: Demystifying Sigma-Delta ADCs

12/07/2011 #9
Moderador

Avatar de Dano

Solo te agrego que en algunos lugares al SAR le llamamos ADC de aproximaciones sucesivas, te dejo esto para que tengas mas entradas.

Buen trabajo, es interesante comparar los costos del SAR con el FLASH cuando se usan grandes cantidades de bits.

Si alguien necesita me puedo tomar el laburo de subir un esquema de un ADC por aproximaciones sucesivas con flip-flops compuertas y un DAC.

Saludso
18/10/2011 #10

Avatar de IMASDPIC

hola que tal
Estaria bien que subieras el ADC

un saludo
18/10/2011 #11
Excluido


tecnogirl dijo: Ver Mensaje
Hiske: Con las aclaraciones que hizo Fogonazo, parece que esta es la solucion. La imagen adjunta te muestra los umbrales de conmutacion logica en distintas tecnologias de chips. Aprovechando que son bastante variados te haces un "ADC" empleando compuertas (digamos tipo AND), de distinta tecnologia, como lo pediste, solo con compuertas. Salu2
si comprendo lo que quieres no es necesario usar compuertas de distintas tecnologias , para nada .
basta que uses una VCC baja (aceptada por el chip) y que la V ent. sea mayor y listo .
con divisores de tension distintos en la entrada de cada compuerta haces que cada compuerta (del mismo chip) efectue el cambio en su salida a distintos niveles de entrada .

se comprende ??

fogonazo: un ejemplo de como se inicia un tema /aporte
07/12/2011 #12


Dano dijo: Ver Mensaje
Solo te agrego que en algunos lugares al SAR le llamamos ADC de aproximaciones sucesivas, te dejo esto para que tengas mas entradas.

Buen trabajo, es interesante comparar los costos del SAR con el FLASH cuando se usan grandes cantidades de bits.

Si alguien necesita me puedo tomar el laburo de subir un esquema de un ADC por aproximaciones sucesivas con flip-flops compuertas y un DAC.

Saludso

Saludos a todos los compañeros del foro

Dano seria mucha molestia pedirte que subieras el esquema que mencionas???

Tengo como proyecto la realización de un convertidor analógico digital y seguramente seria muy útil tenerlo como apoyo

De antemano gracias
04/02/2012 #13

Avatar de johncaro12

convertir DAC de 8 bits en uno de 9
Saludos compañeros.
Mi duda es si se puede de alguna forma usar un DAC de 8 bits, como el dac 0808 por ejemplo, y hacer un acople externo de tal forma que tenga un DAC de 9 bits.
En otras palabras, al DAC de 8bits, añadirle otro mas con cualquier componente externo.

Gracias de antemano

P.D: Ya hice uno, restando la señal analoga de 8 bits con el 9 bit pero salio con unos picos de voltaje indeseados
Respuesta
¿Tienes una mejor respuesta a este tema? ¿Quieres hacerle una pregunta a nuestra comunidad y sus expertos? Registrate

Buscar más temas sobre:
Lupa Interfaces y Programación

Lenguajes de programación, gestión y manejo de puertos

Cerrar
Foros de Electrónica » Diseño digital » Interfaces y Programación

Powered by vBulletin® Version 3.8.4
Copyright ©2000 - 2014, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO ©2011, Crawlability, Inc.