Medir el voltaje de la batería de ión de litio con un arduino 328p

1

Intento monitorear la capacidad de la batería una vez por minuto leyendo el voltaje con el ADC.

El arduino es alimentado por la batería a través de un convertidor de refuerzo (5V). Puse un interruptor mecánico entre el amplificador y el Vin para que pueda encender / apagar fácilmente el arduino.

Supongo que el cableado del pin de entrada (Batt sense) directamente a la batería (a 3.7v antes del refuerzo, por supuesto) dañará el arduino cuando apague Vin, así que decidí poner un interruptor N-MOSFET controlado por El arduino que activo justo antes de medir el voltaje.

¿Puede esto funcionar? Estoy haciendo algo mal ?

    
pregunta Denis

2 respuestas

1

El MOSFET de canal N al que has conectado no funcionará, porque es poco probable que el Arduino pueda tirar de la compuerta más alto que el Vgst del MOSFET; la compuerta debe estar al menos a un voltio y medio por encima de la Fuente para para que se "encienda". (Este valor de los cambios de curso depende del MOSFET específico, pero para dispositivos discretos, a menudo verá Vgst incluso más alto que eso).

Mientras tanto, una celda LiPo completamente cargada tiene 4.2V, y con una salida de 5V, solo alcanzas un voltaje de 0.8V GS.

En su lugar, debe conectar la entrada a su regulador de arranque a una resistencia de 1 MOhm, y luego conectarla a la entrada ADC de detección de voltaje, y luego hacer un cortocircuito a tierra a través de una resistencia de 4.7 MOhm en paralelo con un condensador de 100 nF . Esto creará un divisor de voltaje que puede usar para leer el voltaje. Sin embargo, es improbable que la corriente de carga de 3 MOhm sea un problema para un circuito que está "encendido" (la pérdida en su regulador de impulso es mucho mayor).

La resistencia de 1 MOhm y el condensador de 100 nF trabajan juntos para crear un filtro RC. La constante de tiempo para este filtro es de 0,1 segundos, por lo que incluso si lo lee cada 10 segundos, tendrá una medición muy precisa. La razón por la que necesita el capacitor es porque el AVR ADC requiere una impedancia de fuente de 10 kOhm o menos, y la resistencia de 1 MOhm claramente es más que eso, por lo que el capacitor proporciona un "depósito" que el ADC puede muestrear.

    
respondido por el Jon Watte
0

El voltaje de una batería de ion litio no dice mucho sobre su capacidad. Debe controlar la carga que se extrae de la batería y conocer la capacidad de una celda completamente cargada. Hay dispositivos disponibles para hacer precisamente eso, que se denominan CI del medidor de combustible de la batería.

Editar: estos circuitos integrados no podrán indicar la capacidad restante de la batería la primera vez que se descarga, pero puede aprender mientras se está descargando una celda completamente cargada.

Edit2: si pones el interruptor de encendido directamente después de la batería, no necesitas el mosfet. El 3.7V no dañará el arduino, pero lo alimentaría a través de los diodos de sujeción. Una resistencia simple de la serie sería suficiente para evitar que esto suceda.

    
respondido por el kva

Lea otras preguntas en las etiquetas