Error ADC para mediciones de bajo voltaje

La aplicación es detección de corriente de lado alto para un dispositivo que funciona con batería. La corriente extraída de la batería pasa a través de una resistencia de derivación, el voltaje a través de la resistencia es amplificado por un INA, cuya salida va a un ADC ( ADS1262 ). Una MCU recupera los resultados de la conversión y los envía a una computadora para su análisis.

Probé el circuito generando una corriente [0 A - 1,5 A] a través de la resistencia de derivación (pasos de 0,01 A de 0 A a 0,1 A, luego pasos de 0,1 A). Según el valor de la resistencia y la amplificación, esto da un rango de tensión [0 V - 4,3 V] en la entrada del ADC, que tiene una referencia de 5 V. Calibre el ADC antes de la prueba (compensación y ganancia respectivamente a la corriente de entrada mínima y máxima). Para cada paso actual, registré 100 resultados de conversión del ADC sincronizados con tantas muestras de un DMM de mesa (Agilent 3606) para la verdad del terreno. Luego calculé el error promedio para cada paso. Como se muestra a continuación, el error absoluto entre la corriente generada y la medida disminuye linealmente al aumentar la entrada. Con una entrada de 1,5 A, el error es mínimo (alrededor de 50 μA).

Error entre la corriente de entrada y el resultado de la conversión AD, en función de la corriente de entrada

¿Por qué el error es mayor para entradas más pequeñas? Espero algo de no linealidad de ADC, pero en el rango de ppm, no varios por ciento. Verifiqué que la entrada del ADC es realmente lineal, por lo que este comportamiento no proviene de la etapa de amplificación. ¿Es una propiedad general de los ADC o es específica de mi circuito?

(Esto era parte de una pregunta anterior , donde brindé más detalles sobre el proyecto. Sin embargo, no creo que los detalles sean relevantes aquí. Esta otra pregunta muestra una curva de error muy similar a la mía, pero usaron un MOSFET para el detección de corriente y su característica no era lineal para empezar, así que no me ayuda mucho).

¿Estás promediando los resultados? (es decir, tomando múltiples medidas en un solo punto)?
@PeterSmith Sí, tomé 100 muestras en cada punto. Edité la pregunta para incluir eso.
Si calibró el ADC para compensación y ganancia en los extremos, ¿qué forma de gráfico esperaba? No veo nada de malo en el gráfico y, si lo extendió a 0 mA, el error debería caer a cero por sus propias acciones de precalibración. El hecho de que no parezca que será cero (a 0mA) tal vez porque no calibró correctamente.
@Andyaka Tomé diez pasos de medición más en el rango [0 A - 0.09 A] (ver imagen editada), así que sí, tienes razón. Entonces, la forma de la curva solo muestra que entre los dos puntos de calibración, ¿la conversión no es lineal? ¿Está bien? ¿Y cómo la propia no linealidad del ADC (unas pocas ppm) explica errores tan grandes? Lo siento si eso es realmente básico, no tengo mucha experiencia con ADC.

Respuestas (2)

Tendrá mucha suerte si puede usar los 50 mV inferiores de un ADC como punto de calibración. Por lo general, evito los 50 mV inferiores y superiores del rango citado debido a problemas de pendiente de ganancia y compensación cero.

De hecho, parece que está calibrando con 0 voltios en la entrada, pero probablemente obtendrá el mismo valor de salida digital "cero" con tal vez +20 mV en la entrada.

Calibraría justo por debajo del máximo y justo por encima del mínimo para garantizar el error más bajo para la mayor parte del rango.

Para carga cero, ¿el INA puede generar 0 V de salida? Con compensaciones, es posible que deba generar un voltaje negativo que no puede a menos que tenga un suministro negativo.

De momento es un INA con doble oferta. Pero el diseño puede cambiar para un solo suministro, así que lo tendré en cuenta, gracias.