MODULO ADC PARA MICROCONTROLADOR

Existen diversas aplicaciones que requieren del uso de un convertidor analógico a digital (ADC), además de un microcontrolador para organizar todas las actividades del circuito electrónico. Dependiendo de la complejidad del proyecto, se pueden tener varias alternativas de diseño que describiremos a continuación.

ALTERNATIVAS DE DISEÑO
  • a) Emplear el convertidor ADC que posee internamente el propio microcontrolador, esto dependiendo de su matrícula.

  • b) Si la aplicación exige que no se distraigan las operaciones de control que efectúa el microcontrolador, colocar un convertidor ADC externo a pesar de poseer uno.

  • c) El microcontrolador que hemos elegido para el diseño no posee un ADC.

En la figura 1 vemos el ADC armado junto con circuito de prueba en Protoboard.

El módulo ADC propuesto para el presente circuito está orientado a utilizarse cuando se tenga que tomar la decisión de elegir de entre el diseño de los incisos b) ó c) de los anteriormente descritos. Por otra parte, en este texto se está exponiendo un circuito que tiene aplicación inmediata, ya que éste comienza a operar tomando en cuenta tanto los niveles eléctricos del microcontrolador, como a la mayoría de los sensores que pueden emplearse, y por último sólo se tiene que seleccionar el sensor adecuado dependiendo de la variable física a medir para que, de inmediato, el ADC entre en operación.

El módulo ADC para microcontrolador tiene como base un circuito integrado identificado como IC1 (matrícula ADC0804) que internamente posee un convertidor analógico a digital, este convertidor trabaja mediante el empleo de la técnica de conversión conocida como de “aproximaciones sucesivas”.

En la figura 2 vemos el ejemplo de aplicación del método de aproximaciones sucesivas.

Vamos a describir brevemente, la forma de actuar de la técnica de conversión basada en aproximaciones sucesivas. En primera instancia, en el ADC0804 el rango total de operación que también recibe la denominación de voltaje de entrada analógico, es dividido por la mitad en 2 partes iguales, el ADC0804 se encarga de revisar si el valor analógico que está presente en la entrada se encuentra dentro de la mitad superior, si la respuesta es afirmativa se generara un “1” lógico y si la respuesta es negativa se generará un “0” lógico. Cuando se presenta el “1” lógico como respuesta, está indicando que el valor analógico se encuentra en la mitad superior del rango de operación, por lo tanto se tiene que desechar la mitad inferior del rango. Mientras se tenga una respuesta igual a “0” lógico, la interpretaremos como que el valor analógico que pretendemos convertir se encuentra dentro del rango inferior de operación, motivo que provocará que la parte superior del rango de operación sea desechada. El eliminar una parte del rango de operación, involucra de forma inherente el empleo del método de aproximaciones sucesivas, en el cual a manera de resumen podemos decir que se va encontrando el valor digitalizado de la señal analógica que se está convirtiendo por medio de la división por la mitad del rango total de operación. La mitad restante se vuelve a dividir en 2 partes iguales y nuevamente se tiene que determinar en cuál de las 2 partes (inferior o superior) se encuentra el valor analógico, lo que obligatoriamente nos arrojará como resultado un “0” lógico o un “1” lógico, por lo que el rango original en cada interacción se va haciendo más pequeño.

El número de interacciones o veces en que se divide el rango original, depende del número de bits que posea el convertidor, y como en este caso se cuenta con un total de 8 bits, entonces el proceso de dividir el rango de operación por la mitad y preguntar si el valor analógico se encuentra en principio sobre la mitad superior, se repite un total de 8 veces una por cada bit, y como en cada proceso de dividir por la mitad se genera como respuesta un “1” o un “0” lógicos, estaremos encontrando el correspondiente valor digitalizado del valor analógico.

Ya hemos visto que el ADC0804 (IC1) cuenta con una salida digital de 8 bits, que permite realizar diseños de instrumentos de medición para operar directamente con un microprocesador o con una forma de ejecución totalmente independiente. De acuerdo a la filosofía de trabajo que fue concebida para este proyecto, el módulo ADC para microcontroladores puede estar conectado al puerto de entrada de un microcontrolador o trabajar de forma solitaria, ya que el resultado de la conversión de cualquier variable física puede visualizarse a través de un conjunto de leds que tiene integrado el módulo ADC.

 
DISEÑO DEL CIRCUITO

El elemento principal del módulo convertidor ADC, como ya se había comentado en líneas anteriores, es el circuito integrado identificado como IC1 cuya matrícula es ADC0804, y se trata precisamente del circuito integrado que se encarga de convertir los valores analógicos de voltaje en sus correspondientes combinaciones binarias, en la figura 3 se muestra el diagrama esquemático completo del módulo ADC.

El ADC0804 posee 3 líneas de control para realizar el proceso de conversión de un valor analógico, estas líneas son las terminales 1, 2 y 3, habilitación, lectura y escritura sucesivamente. Para comenzar el proceso de digitalización debemos habilitar al circuito IC1 a través de la línea 1, posteriormente indicarle que se va a leer un dato analógico a través de la línea 2 y por último, para que sea desplegado el valor digitalizado a través de las terminales correspondientes, necesitamos indicárselo al ADC0804 por medio de la terminal 3. Cuando el ADC0804 ha terminado con el proceso de conversión se origina una señal en la terminal 5.

Para que se cumpla con el propósito de que el presente circuito funcione de forma automática, esto es, sin necesidad de controlar las líneas 1, 2 y 3, tenemos que “engañar” al ADC0804 conectando la terminal 1 y 2 a GND de manera permanente para que siempre esté activada la función del convertidor, y al mismo tiempo siempre esté leyendo valores analógicos, y por otra parte la línea 5 se retroalimenta a la línea 3, permitiendo con esto que cada vez que termine de realizar un proceso completo de conversión se avise a sí mismo que ya digitalizó un valor, por lo que procederá de forma automática a desplegarlo en las salidas correspondientes. Aunque el diseño contempla que el convertidor comience a operar tan sólo se le conecte el voltaje de alimentación, existe un botón con re-posicionamiento automático (push boton) identificado como S1, el cual se tiene que presionar si es que el convertidor no comienza a trabajar de forma automática.

En la figura 4 vemos el circuito impreso del módulo convertidor analógico digital. Las terminales 4 y 19 del ADC0804 sirven para que por medio del resistor R11 (10kohm) y el capacitor C2 (150pF) se genere una señal de reloj, que es la que marca el ritmo de operación del convertidor.

La terminal 9 del ADC0804 se emplea para fijarle un voltaje de referencia al convertidor, y es a través de este valor de voltaje como se establece el voltaje del rango de operación, el valor de voltaje que tiene que ser aplicado a esta terminal está determinado por la siguiente expresión: Vref = Vrango/2, por lo tanto el voltaje de referencia tiene que ser la mitad del valor total del rango de operación del convertidor, quedando la expresión como sigue Vrango = Vref/2. Para que quede claro vamos a realizar lo siguiente: si el rango de operación es de 0V a 4V, significa que el rango de operación es de 4V, entonces el valor de voltaje que se tiene que aplicar a la terminal 9 debe ser de 2V.

Para este módulo se tiene contemplado la utilización de un rango de 0V a 5V, por lo que se está aplicando un valor de 2.5V a la terminal 9 del ADC0804, a través del divisor de voltaje formado por los resistores R9 y R10 ambos de 10kohm, en caso de que requiera de otro valor de rango de operación, se tendrían que modificar los valores de R9 y R10 para ajustar el valor del voltaje de referencia.

Las salidas por donde se entrega el valor digitalizado están identificadas como BD0, BD1, BD2, BD3, BD4, BD5, BD6 y BD7, éstas se encuentran ubicadas en las terminales de forma correspondiente de la 18 a la 11, estas terminales de salida para nuestro módulo convertidor ADC cuentan con un led por cada terminal, para que de esta forma se visualice el estado lógico que guarda el bit correspondiente, los resistores identificador de R1 a R8 sirven para limitar el nivel de corriente que consumen los led. También sobre las terminales de salida del ADC0804 se encuentra un conector que es el encargado de transportar los estados lógicos generados durante el proceso de conversión hacia un puerto de entrada de un microcontrolador, e inclusive hacia el puerto paralelo de una PC. El conector identificado como JP2 sirve para hacer llegar el valor analógico que está entregando el sensor de cualquier variable física, que puede ser por ejemplo temperatura, humedad, luminosidad, presión etc. Lo importante del sensor es saber cuál es el valor de su rango de operación para, en función de este dato, ajustar o fijar el valor del voltaje de referencia de la terminal 9 del ADC0804, recordando en todo momento que el valor máximo del rango de operación no debe superar los 5V.

En la figura 5 vemos los componentes colocados en el impreso del módulo ADC para Microcontrolador.

Por último, en el conector JP1 se hace llegar el voltaje de alimentación que puede ser el mismo con el cual es alimentado el microcontrolador, o sea 5VCD, y para que las posibles fluctuaciones de voltaje no afecten el desempeño del convertidor, se le agrega un capacitor de 10µF (C4).

Para finalizar, podemos mencionar que este módulo convertidor es muy útil, prácticamente universal y fácil de conectar, ya que en el borne de conexión se cuenta con un peine de terminales que fácilmente pueden insertarse en un protoboard para aplicaciones educativas o de desarrollo, o en su defecto realizar las perforaciones necesarias sobre el circuito impreso donde se vaya a instalar.

En la figura 6 podemos observar el kit armado del módulo convertidor analógico digital.

 
Autor: Ing. Ismael Cervantes de Anda - icervantes@saberinternacional.com.mx
Ing. Beatriz A. Jácome Hernández, Ing. Esperanza Medina Hernández.
FIGURA 1
 
FIGURA 2
 
FIGURA 3
 
FIGURA 4
 
FIGURA 5
 
FIGURA 6
 
MATERIAL
 
 
 
PROMOCIONES