Catto / Mapa de Temas · Electrónica Digital II 5° año
Electrónica Digital II · 96 h · Eje 2 de 4

Conversores A/D y D/A

El mundo es analógico y el procesamiento es digital. Toda la electrónica moderna vive en la frontera entre los dos, y esa frontera son dos circuitos: el que traduce una tensión a un número y el que traduce un número a una tensión.

Conversión Muestreo R-2R Aproximaciones sucesivas RS485

01La frontera entre los dos mundos

Un micrófono entrega milivolts que cambian de forma continua. Un microcontrolador sólo entiende números. Entre uno y otro hay siempre la misma cadena, y vale la pena tenerla completa en la cabeza antes de estudiar cada bloque por separado:

Sensormagnitud → V Acondicion.amplifica y filtra S / Hretiene el valor A / DV → número ProcesoµC o µP D / Anúmero → V mundo analógico mundo digital Cada bloque agrega su propio error: el sistema completo no puede ser mejor que el peor de ellos
Figura 1. La cadena típica. En un microcontrolador moderno, del S/H al D/A está todo adentro del chip; el trabajo del técnico queda en el sensor, el acondicionamiento y el filtro.

02Muestreo y cuantificación

Convertir implica discretizar dos veces: en el tiempo (muestreo) y en la amplitud (cuantificación). Son dos operaciones distintas, con dos límites distintos, y confundirlas es la fuente de casi todos los malentendidos del tema.

t v señal original instantes de muestreo valor retenido (S/H) 8 muestras por ciclo
Figura 2. Muestreo y retención, animado. El cursor recorre la señal; en cada instante de muestreo se toma el valor y se lo mantiene hasta el siguiente. La salida reconstruida es la escalera naranja: se parece a la original, pero no es la original.
Teorema del muestreo (Nyquist-Shannon)

Para poder reconstruir una señal hay que muestrearla a más del doble de su frecuencia más alta. Si no, las componentes por encima de fs/2 aparecen reflejadas dentro de la banda útil como frecuencias falsas que ya no se pueden separar: es el aliasing.

fs>2·fmax
El aliasing no se arregla después

Una vez que la frecuencia falsa entró, es indistinguible de una señal real: ningún filtro digital la puede sacar. Por eso antes del conversor va siempre un filtro antialias analógico pasabajos que corte por encima de fs/2. Es el ejemplo más claro de que los filtros no son un adorno.

El efecto se ve todos los días: las ruedas de un auto que en el cine parecen girar al revés son aliasing entre la frecuencia de giro y los 24 cuadros por segundo de la cámara.

Resolución: cuántos escalones hay

La cuantificación parte el rango de entrada en 2n escalones. El escalón se llama LSB (bit menos significativo) y es la mínima diferencia que el conversor puede distinguir.

LSB=Vref2ne=±12LSB El error de cuantificación es inevitable: aun con un conversor perfecto, el valor real está en algún punto dentro del escalón.
BitsEscalonesLSB con 5 VLSB con 3,3 VDónde se usa
825619,53 mV12,89 mVControl simple, sensores lentos.
1010244,88 mV3,22 mVEl A/D típico de un microcontrolador.
1240961,22 mV0,81 mVInstrumentación de uso general.
1665 53676,3 µV50,4 µVAudio, balanzas, medición de precisión.
2416 777 2160,30 µV0,20 µVCeldas de carga y termocuplas (sigma-delta).
Ejemplo · Medir temperatura con un LM35

El LM35 entrega 10 mV por grado. Con el A/D de 10 bits de un microcontrolador y referencia de 5 V:

  • LSB = 5 V / 1024 = 4,88 mV → resolución = 4,88 / 10 = 0,49 °C.
  • El rango llega hasta 5 V / 10 mV/°C = 500 °C, que el sensor ni siquiera soporta: se está desperdiciando casi todo el conversor.

Con la referencia interna de 1,1 V que traen muchos micros: LSB = 1,1 / 1024 = 1,074 mV → resolución 0,107 °C, y el rango queda en 110 °C, muy razonable. Sin cambiar de conversor se mejoró la resolución cuatro veces y media, sólo eligiendo bien la referencia. Esa es la primera decisión de diseño en cualquier medición.

Hay una relación directa entre bits y relación señal-ruido, que en audio se cita todo el tiempo:

SNR6,02·n+1,76dB Cada bit agregado son 6 dB. Los 16 bits del CD dan 98 dB; los 8 bits de un juguete, 50 dB, y por eso se escucha el ruido de fondo.

03Conversores D/A: del número a la tensión

Son los más sencillos de entender y por eso se estudian primero, aunque en la cadena vayan al final. La idea es siempre la misma: sumar corrientes o tensiones ponderadas, cada una con el peso de su bit.

Red ponderada (en abanico)

Cada bit maneja una resistencia de valor R, 2R, 4R, 8R… conectadas todas a la entrada inversora de un amplificador operacional que trabaja como sumador. La corriente que aporta cada bit es la mitad de la del anterior.

Por qué casi no se usa

Con 8 bits, la relación entre la resistencia más chica y la más grande es de 1 a 128. Si R vale 10 kΩ, la del último bit es de 1,28 MΩ. Y todas tienen que ser exactas al 0,2 % para que el bit más significativo no se coma al menos significativo. Fabricar en un chip resistencias tan distintas y tan precisas es carísimo. Sirve para 4 bits y poco más.

Red R-2R (en escalera)

Resuelve el problema de raíz: usa dos valores nada más, R y 2R, repetidos. La escalera hace que en cada nodo la corriente se divida exactamente por dos, así que el peso binario sale de la topología y no de la precisión de cada resistencia.

R 2R 2R 0 1 b0 0 R 2R 0 1 b1 0 R 2R 0 1 b2 0 R 2R 0 1 b3 0 masa (bit = 0) · Vref (bit = 1) Sólo dos valores de resistencia: la topología es la que pone los pesos binarios Vout Vref 16 escalones iguales código de entrada 0 → 15
Figura 3. Red R-2R de 4 bits, animada. Cada llave conecta su 2R a masa (bit en 0) o a la referencia (bit en 1). A la derecha, la salida: dieciséis escalones iguales. Con 8 bits los escalones son 256 y la escalera ya parece una rampa.
Vout=Vref·D2n D es el número binario de entrada. Con Vref = 5 V y 8 bits, el código 200 da 5 × 200/256 = 3,906 V.
Las tres especificaciones que se miran en la hoja de datos
  • Tiempo de establecimiento (settling time): cuánto tarda la salida en quedar dentro de ±½ LSB del valor final. Marca la velocidad máxima de actualización.
  • Monotonía: que al aumentar el código la salida nunca baje. Un D/A no monótono dentro de un lazo de control lo hace oscilar.
  • Error de linealidad diferencial (DNL) e integral (INL): cuánto se aparta cada escalón del ideal, y cuánto se aparta la curva completa de la recta.
Dónde aparece un D/A sin que se lo llame así

La salida PWM de un microcontrolador, filtrada con un R-C, es un conversor D/A de bajo costo: el valor medio de la onda cuadrada es proporcional al ciclo de trabajo. Alcanza para regular el brillo de una lámpara o la velocidad de un motor, que es lo que se ve en simulación y en los periféricos de 6° año. No alcanza para audio de calidad, porque el filtro tiene que ser muy lento y entonces la respuesta también.

04Conversores A/D: las cuatro arquitecturas

Todas comparan la entrada contra una tensión generada internamente. Lo que cambia es cómo buscan el valor, y de eso salen la velocidad, la cantidad de componentes y el precio.

a) Flash (paralelo)

Una escalera de resistencias genera todos los niveles a la vez y un comparador vigila cada uno. La salida de los comparadores pasa por un codificador de prioridad y listo: la conversión sale en un solo paso.

Vref masa Vin Codificador de prioridad Salida · 3 bits b0 b1 b2 2n − 1 comparadores: 3 para 2 bits, 255 para 8 bits El más rápido que existe: nanosegundos. También el que más consume y más caro. Osciloscopios digitales, video y radio por software.
Figura 4. Conversor flash. Un comparador por cada nivel: la entrada se compara contra todos al mismo tiempo y el resultado aparece de inmediato. La cantidad de comparadores se duplica con cada bit, y ese es su límite.

b) De rampa o de contador

Un contador alimenta un D/A y su salida sube en escalera hasta superar la entrada. En ese momento el comparador congela el contador: lo que quedó adentro es el resultado. Es barato —usa lo que ya se vio en contadores— pero el tiempo de conversión depende del valor medido: hasta 2n pulsos.

c) Aproximaciones sucesivas (SAR)

Es el que llevan casi todos los microcontroladores. En lugar de contar de a uno, prueba bit por bit, del más significativo al menos, como quien pesa con una balanza de platillos usando pesas de 1/2, 1/4, 1/8 del rango. Siempre tarda n comparaciones, sin importar el valor.

fondo de escala · 255 cuentas 0 Vin = 161 cuentas 128 b7 1 192 b6 0 160 b5 1 176 b4 0 168 b3 0 164 b2 0 162 b1 0 161 b0 1 Verde: el tanteo entra y el bit queda en 1 · rojo: se pasa y el bit vuelve a 0 Resultado: 10100001 = 161 · ocho pasos para ocho bits, sea cual sea la entrada
Figura 5. Aproximaciones sucesivas, animado. Cada paso prueba un bit: si el tanteo se pasa de la entrada, el bit se descarta; si no, se conserva. Ocho pasos y el número está listo, cualquiera sea la tensión de entrada.

d) Doble rampa (integrador)

Carga un capacitor con la tensión de entrada durante un tiempo fijo y después lo descarga con una referencia, midiendo cuánto tarda. Es lento —decenas de milisegundos— pero increíblemente estable, y tiene una virtud que ninguno de los otros tiene: promedia, así que si el tiempo de integración es un múltiplo del período de la red, el zumbido de 50 Hz se cancela solo. Es el conversor de todos los multímetros de banco, y se desarrolla en instrumentos de medida digitales.

ArquitecturaVelocidadResolución típicaDónde se la encuentra
Flash1 ns a 100 ns6 a 8 bitsOsciloscopios digitales, video, RF.
Rampa / contadorµs a ms8 a 12 bitsDidáctico, circuitos discretos.
Aproximaciones sucesivas1 µs a 100 µs8 a 16 bitsMicrocontroladores, adquisición general.
Doble rampa10 ms a 400 ms3½ a 6½ dígitosMultímetros, balanzas, termómetros.
Sigma-deltams16 a 24 bitsAudio, celdas de carga, termocuplas.
El sample & hold no es opcional

Un SAR de 10 bits tarda unos microsegundos en decidir. Si durante ese tiempo la entrada se mueve más de ½ LSB, los bits que ya se decidieron corresponden a un valor y los que faltan a otro: el resultado no es ninguno de los dos. Por eso se congela la entrada con un sample & hold (un capacitor y una llave analógica) durante toda la conversión. En los microcontroladores el S/H está adentro, y lo que hay que respetar es su tiempo de adquisición: si el sensor tiene mucha impedancia de salida, el capacitor no llega a cargarse y la lectura sale baja. La solución es un seguidor de tensión antes del A/D.

05Sacar los datos: RS232, RS422 y RS485

Una vez que la señal es un número, hay que transportarlo. Las tres normas de la familia EIA/TIA resuelven el mismo problema con criterios distintos. Son normas eléctricas: no dicen nada del significado de los datos, sólo de tensiones, cables y conectores.

RS232RS422RS485
SeñalSimple, contra masaDiferencialDiferencial
Niveles±3 V a ±15 V
(el 1 es negativo)
±2 V a ±6 V
entre A y B
±1,5 V a ±6 V
entre A y B
Distancia15 m1200 m1200 m
VelocidadHasta 115 kbpsHasta 10 MbpsHasta 10 Mbps
Nodos1 a 11 emisor, 10 receptores32 unidades de carga
SentidoFull duplexFull duplexHalf duplex (2 hilos)
Se la ve enConsolas, PLC viejos, GPSEncoders, CNCModbus, DMX512, Profibus

La diferencia de fondo entre RS232 y las otras dos no es la velocidad ni la distancia: es contra qué se mide la señal. Y de ahí sale todo lo demás.

A B A − B lo que ve el receptor ruido inducido en los dos hilos 1 0 1 1 0 1 0 0 datos
Figura 6. Rechazo de modo común, animado. El ruido que la instalación induce en el cable entra igual en los dos hilos. El receptor no mira ninguno de los dos contra masa: mira la diferencia, y ahí el ruido se cancela. Es la misma idea del amplificador de instrumentación.
Reglas prácticas de un bus RS485
  • Par trenzado, y que A y B sean del mismo par. Si se los separa en pares distintos, el rechazo de ruido se pierde.
  • Topología en bus, no en estrella: un cable que recorre todos los nodos con derivaciones lo más cortas posible.
  • Terminación de 120 Ω en los dos extremos del cable, no en el medio ni en cada nodo. Es la impedancia característica del par trenzado.
  • Resistencias de polarización (fail-safe) para que el bus tome un estado definido cuando ningún nodo transmite. Sin ellas, el receptor lee ruido como si fueran datos.
  • Un solo transmisor por vez: como es half duplex, el protocolo (Modbus, por ejemplo) define quién habla y cuándo.
  • La masa también se lleva, aunque la señal sea diferencial: el rango de modo común del receptor es de −7 V a +12 V, y en una fábrica esa diferencia se supera fácil.
Los niveles de RS232 son invertidos y grandes

Un microcontrolador entrega 0 V y 5 V; RS232 pide +12 V para el 0 y −12 V para el 1. Entre los dos va siempre un adaptador de niveles: el clásico MAX232, que genera las tensiones negativas con una bomba de carga y cuatro capacitores. Conectar directo un puerto RS232 a un pin de microcontrolador lo destruye.

06En el laboratorio

Práctica 1 · Un D/A de 4 bits con R-2R

Armar la escalera con resistencias de 10 kΩ y 20 kΩ al 1 %, con cuatro llaves a masa o a 5 V. Medir la salida en los dieciséis códigos y armar la tabla teórica contra la medida. El escalón teórico es 5/16 = 312,5 mV. Graficar y calcular el error máximo. Después repetir con resistencias al 5 % y comparar: se ve directamente por qué la tolerancia manda. Los valores comerciales se eligen con la calculadora de resistores.

Práctica 2 · Rampa digital

Conectar un contador CD4040 a la red R-2R anterior y un reloj de 1 kHz. En el osciloscopio aparece una rampa escalonada. Contar los escalones, medir la altura de cada uno y verificar que el período de la rampa es 16 veces el del reloj. Es un generador de diente de sierra digital.

Práctica 3 · Aliasing con el generador y el osciloscopio

Con un osciloscopio digital en una base de tiempo lenta, inyectar una senoidal de frecuencia creciente. Al pasar cierta frecuencia, la pantalla muestra una onda más lenta que la real, que no existe. Anotar a qué frecuencia empieza y compararla con la velocidad de muestreo declarada por el instrumento. Es la demostración de que el aliasing no es un tecnicismo.

Práctica 4 · Resolución real de un A/D

Con un microcontrolador, leer una tensión fija de una pila y mostrar el código crudo por el puerto serie. Anotar cuánto fluctúa el último dígito. Después promediar 64 lecturas y volver a mirar: la fluctuación baja. Esa es la técnica de sobremuestreo, que agrega medio bit efectivo cada vez que se cuadruplica la cantidad de muestras.

07Errores frecuentes

SíntomaCausa habitual
La lectura del A/D salta varias cuentas con la entrada quietaRuido en la referencia o en la masa. Desacoplar Vref, separar la masa analógica de la digital y promediar lecturas.
La lectura siempre da más baja de lo que correspondeImpedancia de salida del sensor demasiado alta para el tiempo de adquisición del S/H. Poner un seguidor con operacional.
Aparece una señal lenta que no existeAliasing: falta el filtro antialias o la frecuencia de muestreo es insuficiente.
El D/A da saltos hacia atrás en algún códigoConversor no monótono, o resistencias de la red fuera de tolerancia. Se nota sobre todo en la transición 0111 → 1000.
El valor convertido depende de la temperaturaReferencia de tensión de mala calidad. Usar una referencia dedicada, no la propia alimentación.
El bus RS485 funciona en el banco y falla en la plantaFalta terminación de 120 Ω, o el cable no es par trenzado, o no se llevó la masa y se salió del rango de modo común.
El puerto serie recibe basuraVelocidad mal configurada, o niveles TTL conectados directo a RS232 sin adaptador.
En RS485 se pierde el primer carácter de cada mensajeEl control de dirección (DE/RE) conmuta tarde. Hay que habilitar el transmisor antes de mandar el primer bit y soltarlo después del último.

08Autoevaluación

Un A/D de 12 bits con referencia de 3,3 V: ¿cuál es su LSB?

3,3 V / 4096 = 0,806 mV, y el error de cuantificación es la mitad: ±0,40 mV.

¿Por qué un filtro antialias tiene que ser analógico y no digital?

Porque tiene que actuar antes del muestreo. Una vez muestreada, la componente de alta frecuencia ya quedó reflejada dentro de la banda útil y es indistinguible de una señal legítima: ningún procesamiento posterior la puede separar.

¿Qué ventaja tiene la red R-2R sobre la red ponderada?

Que usa sólo dos valores de resistencia en vez de una progresión que se duplica. Con 8 bits, la ponderada necesita valores de R a 128R con precisión del 0,2 %; la R-2R necesita muchas resistencias iguales, que es justamente lo que un proceso integrado hace bien.

Un SAR de 10 bits con reloj de 1 MHz: ¿cuánto tarda una conversión?

Diez comparaciones, una por bit, más un ciclo de muestreo: aproximadamente 11 µs. Y ese tiempo es el mismo para cualquier tensión de entrada, a diferencia del conversor de rampa.

¿Por qué el conversor de doble rampa rechaza el zumbido de 50 Hz?

Porque integra la entrada durante un tiempo fijo. Si ese tiempo es un múltiplo exacto del período de la red (20 ms), la interferencia senoidal aporta tanto en los semiciclos positivos como en los negativos y su promedio es cero.

¿Cuántos comparadores necesita un flash de 8 bits?

28 − 1 = 255. Con 10 bits serían 1023 y con 16 bits, 65 535: por eso el flash no pasa de 8 o 10 bits en la práctica.

Se quiere medir una señal de audio de hasta 15 kHz. ¿Qué frecuencia de muestreo hace falta?

Más de 30 kHz. En la práctica se toma bastante más, porque el filtro antialias no corta de golpe: los 44,1 kHz del CD dejan un margen entre los 20 kHz de la señal y los 22,05 kHz de Nyquist para que el filtro tenga dónde caer.

¿Por qué RS485 aguanta 1200 m y RS232 sólo 15?

Porque RS485 es diferencial: el receptor mide la diferencia entre dos hilos trenzados y el ruido, que entra igual en los dos, se cancela. RS232 mide contra masa, así que toda diferencia de potencial y todo ruido inducido se suman a la señal.

¿Para qué sirve la resistencia de 120 Ω al final de un bus RS485?

Para adaptar el cable a su impedancia característica y evitar que la señal rebote en el extremo abierto. Sin terminación, los ecos se superponen a los datos y aparecen errores que empeoran cuanto más rápido se transmita.

Con un A/D de 8 bits y 5 V, ¿se puede medir la salida de un termopar tipo K (unos 40 µV/°C)?

No directamente: el LSB es de 19,5 mV, casi 500 °C por escalón. Hay que amplificar la termocupla unas 250 veces con un amplificador de instrumentación y usar además un conversor de más bits, o directamente un sigma-delta de 24 bits pensado para eso.

Desarrollo del eje «Conversores A/D y D/A» de Electrónica Digital II (5° año), según la «Propuesta Curricular – Segundo Ciclo de la Modalidad Técnico Profesional, Educación Secundaria – Electrónica», Ministerio de Educación de la Provincia de Córdoba, DGETyFP. Volver al Mapa de Temas · catto.ar