La referencia de voltaje muestreada por ADC (12 bits) da un valor que está desactivado por más puntos que otras mediciones

1

Estoy utilizando la referencia de voltaje TI REF3020 (2048mV) en combinación con un microcontrolador para tener una referencia para medidas de voltaje.

El microcontrolador funciona con 5V (5.00V), la referencia de ADC de las MCU también se configura a 5.00V. Debido al hecho de que no quiero confiar en que los rieles VDD sean referencialmente estables, quise agregar una referencia de voltaje de precisión.

En mis configuraciones de prueba, puedo medir fácilmente el voltaje VDD (referencia ADC) y calcular el voltaje a tierra de un pin de entrada ADC. Para propósitos de prueba, usé una fuente de alimentación externa como entrada para un pin ADC. Después de medir el voltaje en el pin con un osciloscopio y un DMM, la MCU midió, sin ninguna calibración adicional, el voltaje correcto real hasta el LSB del ADC. (Estoy usando un ADC de 12 bits) Este experimento se realizó con éxito con múltiples voltajes entre 0V y 5V.

También utilicé la referencia de voltaje REF3020 mencionada anteriormente en la misma configuración que una entrada para un ADC. Tanto el osciloscopio como el DMM confirmaron precisamente 2.048V. Al medir el mismo voltaje con la MCU a través de un ADC, el valor se desactivó en 15 puntos. En lugar de un valor de bit de 1677, la MCU midió 1663: $$ U = \ frac {1663} {4095} \ cdot5V \ approx2.0305V $$

El valor medido por la MCU no oscila ni se desvía con el tiempo y la temperatura (para ser honesta, relativamente estrecha de) que probé. El valor (promediado) permanece constantemente en 1663. Sin promediar, el valor oscila entre un mínimo de aproximadamente 1660 y 1666. Sin embargo, la influencia de la temperatura debería ser despreciable, ya que el otro experimento se realizó a la misma temperatura (temperatura ambiente). / p>

Para esta aplicación estoy usando un promedio de 128 muestras en una ventana de tiempo de aproximadamente 4 ms. Incluso intenté hacer la muestra y comparar tiempos más largos. Tampoco ayudó.

La referencia de voltaje es incluso de alta corriente. Puede suministrar de forma segura hasta 25 mA de acuerdo con la hoja de datos. Esto debería ser de lejos suficiente para ser muestreado por un solo canal ADC. No hay otras cargas conectadas a la referencia de voltaje.

Podría calibrar fácilmente el error de compensación, pero esto en esencia anularía todo el propósito de la referencia de voltaje en esta aplicación.

¿Qué otra cosa podría ser la causa de esta desviación que se manifiesta solo cuando se mide el voltaje de salida de la referencia de voltaje?

    
pregunta fscheidl

2 respuestas

2

Intente proporcionar un poco más de tiempo de establecimiento (unos pocos ms) antes de tomar cada medición. Con esto quiero decir el tiempo entre cuando se selecciona el canal ADC y cuando se inicia la conversión. Utilizo el REF3020 y tiene una mala respuesta a los cambios en la carga, aunque puede proporcionar una alta corriente en una carga fija. No lo verá con un DMM o incluso con un alcance porque es difícil establecer el conjunto de activación muy bien.

    
respondido por el John Birckhead
1

No creo que estés usando la referencia de voltaje de la mejor manera. Usted escribió "El microcontrolador funciona con 5V (5.00V), la referencia de ADC de MCU también está configurada a 5.00V". así que en realidad estás usando tu carril 5V como referencia del ADC. No estás usando 2.048V como una referencia de ADC. Por lo tanto, su ADC solo puede ser tan preciso como su riel de 5V.

Lo que realmente desea hacer es conectar el voltaje de referencia de 2.048 V a la entrada VREF ADC de la MCU y configurar la MCU para usarla como referencia. Esto significa que su riel de 5V puede moverse hacia arriba y hacia abajo a medida que las cargas van y vienen, pero su ADC siempre leerá a escala completa exactamente a la tensión de referencia VREF IN.

La desventaja es que esto significa que las lecturas a escala completa están limitadas a 2.048V. Es por eso que normalmente uso una referencia de 4.096 V y cualquier voltaje que necesito leer por encima de 4 V, lo reduzco con resistencias y opamps.

Además, asegúrese de leer las especificaciones en nuestro ADC. Incluso con una referencia de voltaje perfecta, el ADC tendrá algún error. El precio que pagaste generalmente determina cuán pequeño es este error. Aquí hay un buen artículo sobre cómo leer las especificaciones de ADC . Espero que ayude.

    
respondido por el Vince Patron

Lea otras preguntas en las etiquetas