Convertidores de Analógico a Digital Un convertidor análogo a digital es un circuito que tiene una línea de entrada análoga y n líneas de salida digitales. Genera el código binario que es proporcional a la entrada de voltaje análoga. Todos los ADCs requieren al menos un comparador análogo, un elemento que acepte dos entradas análogas de voltaje y produzca una salida digital. Diferentes tipos de convertidores análogo a digital han sido desarrollados a través del tiempo. Los más populares son los de rampa o escalera y el de aproximaciones sucesivas. El ADC contador de rampa es el más lento y simple de los ADC secuenciales. El registro de resultados es un contador de n bits que se pone en cero al comenzar la conversión. Mientras la salida del convertidor DAC sea menor que la entrada analógica, al contador se le permite seguir contando. Cuando la salida del DAC sea mayor que la entrada analógica el contador se detiene, su valor almacenado es el resultado, Esta técnica requiere un máximo de 2n pasos para realizar la conversión de n bits. En esta y todas las técnicas secuenciales el tiempo que toma cada paso debe ser mayor que el tiempo de estabilización del control digital, del DAC y del comparador. En este experimento vamos a estudiar sólo el de aproximaciones sucesivas. Esta técnica requiere sólo n ciclos de reloj para lograr una aproximación de n−bits. Este circuito opera de la siguiente manera. En el primer pulso de reloj el SAR es puesto en 1. Si la salida del comparador se mantiene alta este bit es mantenido en 1; si el comparador tiene una salida baja, el MSB es puesto en 0 por el SAR. En el próximo pulso de reloj el bit número 6 es puesto en 1, y como antes, si la salida del comparador es alta, este bit es mantenido en lógica 1. Este procedimiento es repetido seis veces más, y después de un total de 8 ciclos, la conversión esta completa. Si la señal de entrada analógica al ADC puede cambiar significativamente durante la conversión, un circuito llamado "sample & hold " debe ser utilizado. El circuito "sample & hold" hace un muestreo del voltaje de entrada por un período corto de tiempo precediendo la conversión y retiene un voltaje constante de salida por la duración de la conversión. El "sample & hold" puede ser utilizado si las variaciones del voltaje de entrada durante el tiempo de conversión exceden la resolución del ADC. Diagrama Esquemático. 1 El funcionamiento de nuestro convertidor de análogo a digital es el siguiente: Se inicializa el circuito al colocar el bit más significativo del DAC a 1. Esto se hace al oprimir el interruptor 'I' y simular el reloj en el circuito integrado 74164("8−bit parallel−in, serial−out shift register") utilizando el interruptor 'Space'. El 74164 nos ayuda a colocar cada bit que necesita ser probado a 1 mientras los otros son cero haciendo un "shift" de uno hacia la derecha cada vez que cambia su reloj. Para cada bit hay un D flip−flop que sostiene el valor de 1 si el resultado de comparar la entrada análoga con la referencia dada por el DAC es 1, y esto sucede cuando la primera es mayor que la segunda. Cuando se esta haciendo la prueba, el "tri−state buffer" deja pasar el reloj al D flip−flop, registrando todos los cambios que ocurran para el bit de prueba. Si el resultado del comparador es cero, se hará un "clear" al D flip−flop sólo si se esta probando el bit correspondiente (para lograr esta condición se utiliza el NAND) Luego que el DAC se ha estabilizado, el reloj permitirá que se registre el cambio en el flip−flop. Entonces se pasa al próximo bit a ser probado simulando el reloj en el 74164 a través del interruptor 'Space'. El reloj del D flip−flop del próximo bit a ser probado se activa, mientras que el bit anterior mantiene el resultado ya que no le llegan los cambios del reloj a su D flip−flop porque su "buffer" ahora estará desactivado. El proceso se repite 8 veces para probar todos los bits. 2 Datos Tabulados Valor Vin en Voltios 0.0 0.1 0.3 0.7 1.0 2.0 2.5 3.5 5.0 7.0 9.0 9.4 9.7 10.0 12.0 Palabra Calculada 00000000 00000001 00000101 00001011 00010001 00100010 00101010 00111011 01010101 01110111 10011001 10100000 10100101 10101010 11001100 Palabra Obtenida (simulación) 00000000 00000001 00000101 00001011 00010001 00100010 00101010 00111011 01010101 1110111 10011001 10100000 10100101 10101010 11001100 Operaciones Para realizar los cómputos de este experimento se utilizó la siguiente fórmula: (2n * X) / V donde: n es el número de bits X es el valor que se desea convertir V es el voltaje de referencia Un ejemplo de estos cómputos que hemos realizado es el siguiente: (28 * 9) / 15 = 10011001 Con esta técnica se consiguieron todos los valores que se presentan en Datos Tabulados. Análisis de Resultados En este experimento pudimos comprobar la efectividad del Convertidor de Digital a Análogo. El resultado calculado y el resultado obtenido de la simulación concuerdan con el mismo valor. Esto nos indica que el funcionamiento es correcto. Además podemos determinar que el sistema es uno confiable que podemos utilizar para diversas aplicaciones. Nos estuvo curioso el hecho de que algunas veces el ADC requería de un tiempo de estabilización. El proceso ocurría así: 3 Se activa en 1 el bit que deseamos probar. La salida del DAC se compara con el valor análogo que deseamos convertir a digital. Si la salida del comparador es alta, el uno anteriormente colocado se mantiene y pasamos al siguiente bit de quedar alguno. En el caso de que la salida del comparador sea baja debemos cambiar el 1 a 0. El comparador requiere un tiempo de estabilización para entonces realizar el cambio. Como esto sucede si el clock va muy rápido el resultado obtenido será incorrecto debido a la desestabilización del comparador, pero si se le deja tiempo suficiente entonces no habrá problema alguno y se tendrá un resultado confiable. Conclusiones En este experimento pudimos ver como funciona el ADC. En el proceso de construcción pudimos imaginar distintos usos para este aparte del tradicional para comunicaciones entre computadoras. Con la utilización de este sistema podríamos medir cualquier tipo de información que normalmente encontraríamos en forma análoga. Es muy importante que recordemos que el valor que aparece de salida es un número representativo del rango que permite convertir el sistema. Un ejemplo de esto es que si la entrada es 1V la salida digital no va a ser 00000001 sino el valor del uno en la escala que se provee, en nuestro caso este valor es 00010001. Debemos señalar que cuando el bit que se esta probando es 1 pasa inmediatamente al flip−flop y no hay problema de estabilización del comparador. Al contrario cuando el bit que se está probando se debe cambiar de 1 a 0 hay un tiempo de estabilización para que el cambio tome efecto. 4