Me estoy enseñando a mí mismo a la hora de diseñar un monitor de batería de 12V DC. Estoy usando un par de sensores de efecto Hall para rastrear la carga y el amp; Cargue la corriente y busque la mejor manera de medir el voltaje. [Un ATmega32u4 tomará lecturas sucesivas con el ADC, calculará un promedio de 1 segundo y lo pasará por USB para el registro y análisis.]
El problema del error con ADC realmente me tiene asustado. Es esencial que produzco datos significativos. Hay tantas fuentes de error, tanto en mi circuito como en el ADC, que se siente como jugar al wack-a-mole en la oscuridad. Estoy leyendo mucho sobre la calibración de la referencia del ADC, pero el primer paso es elegir un método para escalar la entrada.
Mi ventana de voltaje es 10-15V, específicamente un rango de 10.5V a 14.4V (3.9V). Se me ocurrieron dos enfoques que (con suerte) hacen lo que quiero:
- Un diodo Zener de 10 V en la entrada inversora de un amplificador operacional diferencial. Rechazando 10V, mi rango se convierte en 0.5V a 4.4V (3.9V) y usa casi todo el rango de mi ADC.
- Un divisor de voltaje de 20k: 10k. Escalado 3 veces, mi rango se convierte en 3.5V a 4.8V (1.3V)
Quería probarme a mí mismo qué método daría la mejor granularidad. Como también puedo obtener una precisión de 12 bits agregando cuatro lecturas y cambiando el resultado, comparé cuatro posibilidades: (asumiendo que la referencia ADC es 5.0V)
- el método 1, 0.5-4.4V @ 10 bits es 800 pasos: 4.88mV / paso [# 3]
- el método 1, 0.5-4.4V @ 12 bits es 3606 pasos: 1.22mV / paso [# 1]
- el método 2, 3.5-4.8V @ 10 bits tiene 266 pasos: 14.65mV / paso [# 4]
- el método 2, 3.5-4.8V @ 12 bits es 1065 pasos: 3.66mV / paso [# 2]
Mi pregunta es, ¿mis cifras de mV / pasos cuentan toda la historia o hay algún tipo de inconveniente en el # 2 que no estoy viendo?