Estoy intentando leer el voltaje de una batería de respaldo en un Arduino. Con ese fin, utilicé el circuito ofrecido por Olin Lathrop en respuesta a esta pregunta. Estoy alimentando el Arduino con 5V y la batería es de 3 celdas AA, por lo que es de 4,6 V o menos. Usando el circuito de verificación de batería que ofrece Olin, vea el enlace anterior, puedo leer de manera confiable el voltaje en la fuente de alimentación principal (~ 5V), pero cuando conecto la batería, solo estoy leyendo 0.06V cuando el Q1 está encendido. Creo que esto se debe a que el voltaje base en Q2 está demasiado cerca del voltaje del colector de Q2. Solo veo que encender Q2 es más difícil a medida que se descargan las baterías. Creo que la forma de solucionar esto es modificar la parte Q1 del circuito para que el voltaje base en Q2 sea menor cuando este circuito esté "encendido".
Cualquier entrada sería apreciada.
Este circuito que mostré en la otra respuesta era para cuando el voltaje de la batería era algo más alto que el voltaje del procesador. Después de todo, esa fue la razón original por la que no solo conectaste la batería a un pin de entrada del procesador.
Cuando sepa que el voltaje de la batería no excederá el voltaje del procesador, puede hacer algo como esto:
CTRL es impulsado por una salida digital del procesador. Cuando está alto, el circuito de prueba de la batería está apagado. cuando baja, se descargan unos 10 s de mA en la batería, y aparece el voltaje de la batería menos el voltaje de saturación Q1. Esto solo necesita estar encendido durante unos 10 s de µs de vez en cuando, por lo que representa un consumo promedio muy pequeño de la batería.
Si el voltaje CE de Q1 introduce una compensación inaceptable en la lectura del voltaje de la batería, puede reemplazar Q1 con un FET de canal P. Debe asegurarse de usar uno que pueda encenderse lo suficientemente bien con solo el voltaje del procesador en la puerta. Estas cosas a veces se denominan FET de nivel lógico .
yippie
Sin enterarse