Cómo medir el voltaje de la batería

Estoy construyendo un dispositivo alimentado por batería. Casi toda mi lógica funciona a 3.3v, aunque tengo un suministro de 5v para algunos servos de hobby.

Quiero medir el voltaje de la batería, pero no puedo hacerlo directamente con el ADC de mi controlador porque el voltaje de la batería (dependiendo del conteo de celdas de la batería de polímero de litio que el usuario conecta al dispositivo) puede variar entre 6 y 36 voltios (Mis suministros de 5 V y 3,3 V ya están bien con esta variación de entrada). El ADC no puede medir nada por encima de su voltaje de suministro.

Obviamente necesito algún tipo de amplificador con una ganancia fraccionaria, alrededor de 1/12 más o menos. ¿Debo usar un divisor de voltaje simple? ¿Cómo decido qué valores usar? Maximizar la duración de la batería en modo de suspensión es una preocupación, por lo que vota por usar valores grandes. ¿Qué limita cuán grandes pueden ser esos valores? (La impedancia de entrada del ADC, ¿verdad?)

¿Es mejor usar algún tipo de circuito amplificador opamp por alguna razón?

¿Cuál es la solución habitual aquí?

Perdón por el duplicado. No pude encontrar los términos de búsqueda correctos para encontrar la respuesta, aunque estaba bastante seguro de que ya me lo habían preguntado unas cuantas docenas de veces. :encogimiento de hombros:
Sé que a veces puede ser difícil encontrar duplicados. No necesitas preocuparte por ello.

Respuestas (1)

No hay una solución "habitual". Algunos son:

  1. Utilice un interruptor lateral alto. Use un divisor de voltaje de impedancia bastante baja, pero solo enciéndalo por un corto tiempo alrededor de cada lectura de la batería. Dado que está encendido solo una parte muy pequeña del tiempo total, el consumo de corriente promedio será bajo. Esto generalmente se hace con un FET de canal P para no agregar un voltaje de compensación.

  2. Utilice un divisor de impedancia tan alto como su A/D pueda tolerar. Los A/D se especifican para alguna impedancia de voltaje de fuente máxima por dos razones, para cargar la muestra y mantener el límite dentro del tiempo de adquisición especificado, y para que la corriente de fuga provoque una compensación lo suficientemente pequeña como para ignorarla. Una impedancia demasiado alta por la primera razón se puede superar con un tiempo de muestreo más largo, que algunos A/D le permiten controlar. Sin embargo, no hay nada que pueda hacer con respecto a la fuga. 100 nA provocará un error de 100 mV con una impedancia de fuente de 1 MΩ, por ejemplo.

  3. Utilice un divisor de alta impedancia seguido de un amplificador de búfer. Todavía debe considerar las fugas, pero una buena fuga de entrada opamp suele ser mucho menor que la fuga de pin del microcontrolador.