Conversio Conv ersio n Analo Analo gico - Digital 1.)Objetivo 1.) Objetivo -
Realizar la conversion analogico a digital mediante el uso de un mi crocontrolador.
2.)Material 2.) Material Los materiales para la realización de este laboratorio se utilizaran los siguientes materiales: -
ADC (Atmega 16) Protoboard Fuente regulable Leds Resistencias Multimetro
3.)Fundamento 3.) Fundamento Teórico ADC Un convertidor analogico-digital toma un voltaje de entrada analogico y despues de cierto tiempo produce un codigo con salida digital (sistema binario) que representa a la entrada analogica con una precision y resolucion determinada. Dado que el numero de bits que se obtienen de un convertidor es finito, el codigo de salida deberá ser siempre debera ser siempre el correspondiente al valor mas cercano que puede representarse mediante los bits, la conversion digital efectua una cuantificacion en la entrada analogica, acotandola entre dos niveles consecutivos cuya distancia es precisamente el grado de resolucion obtenido. Existen diversos tipos de convertidores en igual forma utilizados para efectuar la conversion, en unos casos se efectua la conversion directa, por comparacion contra una tension de referencia, en otros casos se efectua una transformacion a una variable intermedia, como puede ser el tiempo, tambien puede efectuarse la conversion A/D efectuando una conversion inversa D/A, usando al mismo tiempo una estructura de retroalimentacion, si se usa lazo cerrado reciben entonces el nombre de servoconvertidores, segun sea el metodo utilizado se obtienen distintas caracteristicas de precision, rapidez de conversion y costo
SÍMBOLO DE UN ADC de 4 Bits.
Conociendo el numero de Bits, se puede encontrar el numero máximo de palabras diferentes que puede proporciona la salida digital. La Resolución es entonces = 2 a Donde: a = numero de bits. Así que para un convertidor de 4 Bits en la salida, a = 4. Y serán 16 diferentes palabras incluyendo el cero. Es el número de bits que tiene la palabra de salida del convertidor, y por tanto es el número de pasos que admite el convertidor. Así un convertidor de 8 bits sólo podrá dar a la salida 2 8 = 256 valores posibles. Existe otra resolución que se define como la razón de cambio del valor en el voltaje de entrada, Vent. Que se requiere para cambiar en 1LSB la salida digital. Esto es cuando se conoce el valor de Vin, a escala completa. El voltaje de entrada a escala completa Vin, es proporcionado por el fabricante en sus hojas de especificaciones. Entonces Vin es el valor máximo presente en la entrada análoga, para proporcionar UNOS lógicos en todas las salidas de Bit digitales.
Restando solo la manera de encontrar una ecuación de entrada – salida, para facilitar rápidamente la palabra digital, incluso en forma decimal, que entrega el convertidor.
Donde: Vent = voltaje análogo presente en el instante D = Valor decimal de la salida digital
La tensión de fondo de escala depende del tipo de convertidor, pero normalmente se fija a nuestro gusto, en forma de una tensión de referencia externa. Por ejemplo, un convertidor de 8 bits con una tensión de fondo de escala de 2V tendrá una resolución de:
En cambio, para el mismo convertidor, si cambiamos la tensión de referencia, y por tanto la de fondo de escala, la resolución será de:
4.)Procedimiento El procedimiento que se realizara para la conversion de analogico a digital es de la siguiente manera: -
Realizar un programa en el compilador WINAVR para el atmega 16,en el programa se habilitara los adc del atmega y se realizara toda la configuracion que sea necesario para el funcionamiento del Atmega16, el programa realizado se muestra a continuacion: #include
#include #include #include "global.h" #include "uart.h" #include "rprintf.h" #include "timer.h" #include "a2d.h"
// include I/O definitions (port names, pin names, etc) // include "signal" names (interrupt names) // include interrupt support
// include our global settings // include uart function library // include printf function library // include timer function library (timing, PWM, etc) // include A/D converter function library
int main(void) { u16 gc,fa,a=0; uartInit(); rprintfInit(uartSendByte); timerInit(); a2dInit(); DDRA = 0x00; DDRB = 0xFF; a2dSetPrescaler(ADC_PRESCALE_DIV32); a2dSetReference(ADC_REFERENCE_AVCC); while(1) { gc=a2dConvert8bit(0); PORTB=gc; } return 0; }
-
Simular el circuito propuesto en el simulador de circuitos ISIS de PROTEUS el cual nos permitira darnos una idea clara sobre el funcionamiento en tiempo real, el circuito propuesto para este laboratorio es el siguiente:
-
Para poder ver la conversion analogico a digital se tiene la siguiente formula: []
[]
Donde: X = El valor de voltaje en forma analogica Para verificar esta formula se tienen las siguientes pruebas: Para un voltaje de entrada de 3 [V] se tiene: [] []
3 Voltios
Para un voltaje de entrada de 4.5 [V] se tiene: [] []
4.5 Voltios
5.)Referencias Toda la información fue recabada de las siguientes direcciones electrónicas -
http://148.202.12.20/~osalas/instrumentacion/ADC.htm http://proton.ucting.udg.mx/~cruval/convadc.html