¿Es posible alimentar microproyectos AVR con una sola batería de tipo botón?

La configuración actual de mi proyecto es:

Micro ATmega328P con 32 LEDS controlados por 4 registros de desplazamiento de 8 bits.

El sistema sin LED consume 20 mA de corriente continuamente. Con todos los LED encendidos al mismo tiempo, consume 85 mA.

Dado que todo el dispositivo es pequeño (SMD), no quería poner baterías grandes como AAA. ¡Pero las baterías de tipo botón tienen un drenaje de pulso máximo de 15 mA y un drenaje continuo de 0,19 mA! Ejemplo de CR2032

Me pregunto si existen técnicas de optimización de circuitos para obtener una mejor duración de la batería. ¿O soluciones alternativas? ¿O pilas de monedas con las mismas especificaciones que las pilas AAA, por ejemplo?

¿Por qué su microcontrolador consume tanta energía (20 mA) con los LED apagados? ¿Qué está haciendo?
Tiene una frecuencia de cristal de 16 MHz y aún no he jugado con los modos de suspensión del ATmega328P. Entonces, el envío continuo de datos en serie a los registros de desplazamiento da como resultado un consumo de energía de 20 mA

Respuestas (4)

¡Pero las baterías de tipo botón tienen un drenaje de pulso máximo de 15 mA y un drenaje continuo de 0,19 mA! Ejemplo de CR2032

Las pilas tipo moneda están diseñadas para aplicaciones de baja corriente y larga duración. Como mantener vivo un RTC durante años. Todo en una hoja de datos para ellos se aplica a eso. La capacidad actual, la tasa de drenaje, el voltaje, etc. Un CR2032 tiene una capacidad típica de 240 mAh, de 3,0 a 2,0 voltios, nominal de 15 K ohmios/0,19 mA a 21 °C, lo que proporciona 1263 horas de vida.

Cambie la carga/el consumo de corriente y cambiará la vida útil de la batería. Eso es todo lo que significa. A 85 mA continuos, no obtendrá 240 mAh. Observe las características de drenaje de pulso que muestran entre 175 y 200 mAh. Incluso si lo hiciera, la batería solo duraría 3 horas y estaría a 2 V, es decir, muerta en ese momento.

Y a medida que aumenta la carga, la batería experimenta una caída de voltaje . Como se observa en las Características del pulso, un drenaje de 2 segundos a 100 ohmios/~25 mA conduce a una caída de voltaje de 0,4 V. Su resistencia interna aumenta.

¡Así que SÍ, puedes conducir un CR2032 con fuerza! Pero todo esto debe tenerse en cuenta para SU solicitud . ¿2 horas son suficientes para ti? Dudo.

Me pregunto si existen técnicas de optimización de circuitos para obtener una mejor duración de la batería. ¿O soluciones alternativas?

Sí, eligiendo circuitos integrados más eficientes. ¿Su código ATMega utiliza modos de bajo consumo siempre que es posible? ¿Puedes reducir tu tiempo? ¿Funciona a 16 MHz (que es un problema si está alimentando a <4 V por cierto) o funciona a una velocidad más baja como 8 MHz o 4 MHz? ¿Podrías ejecutarlo a 1mHz sin problema? Eso ahorraría algo de energía. ¿Puede reemplazar los registros de desplazamiento por otros mejores con menor consumo de corriente en reposo?

¿O pilas de monedas con las mismas especificaciones que las pilas AAA, por ejemplo?

Tal vez, pero probablemente muy caro. En su lugar, puede usar baterías LiPo de factor de forma AAA (forma 10500).

Puede usar la batería recargable de litio con un tamaño pequeño, algunas tiendas le ofrecen el tamaño pequeño lo más pequeño posible para RC-helicóptero: http://www.all-battery.com/37vli-polymerandli-ionbatterypacks.aspx

Además de eso, use la técnica de programación, como "modo de suspensión" para ATmega328. Si usa la plataforma Arduino, aquí playground.arduino.cc/Learning/arduinoSleepCode

Si usa C para programar: aquí www.gammon.com.au/forum/?id=11497

También puede ejecutar el AVR con un reloj más bajo.

La corriente de drenaje continua en la hoja de datos que vinculó no es una clasificación máxima, es solo el drenaje típico para una carga de 15 kΩ. Ciertamente, puede consumir más corriente que 190 µA o no tendríamos LED Throwies. Wikipedia enumera la corriente de descarga máxima a 3 mA, pero sin fuente. La pregunta es cuánto tiempo necesita que funcione su dispositivo. Con su consumo de corriente actual y su batería de 240 mAh, tendrá unas tres horas de vida si todos los LED están encendidos, suponiendo características de descarga similares a las de una carga de 15 kΩ (probablemente sea peor con su mayor consumo de corriente).

Si esto no es suficiente tiempo de ejecución, tiene un par de opciones:

  1. Reduzca el consumo de corriente de su microcontrolador: 20 mA es mucha corriente para que ese microcontrolador esté consumiendo, la hoja de datos para ese modelo especifica 200 µA en modo activo (1 MHz, 1,8 V), por lo que algo está consumiendo una gran cantidad de corriente adicional. Las cosas que puede hacer para reducir el consumo de energía incluyen reducir la frecuencia del reloj del microcontrolador, mantenerlo en un estado de suspensión siempre que sea posible, como señala Phu Le (aunque debe ejecutar el reloj lo más rápido posible si está utilizando la suspensión para minimizar el tiempo). gastado fuera de los estados de suspensión), asegurándose de que los pines no utilizados estén configurados para subir o bajar. Atmel tiene un gran documento con un montón de otras técnicas aquí(Ese documento es para la serie XMEGA, por lo que no todos se aplicarán a su chip MEGA). También es posible que desee controlar el microcontrolador directamente de la batería, si está utilizando un regulador. Debería ser factible bajar el microcontrolador por debajo de 1 µA en estado de reposo.
  2. Reduzca el consumo de corriente de los LED: los LED serán la mayor parte de su consumo de energía si su aplicación los tiene encendidos mucho. Es posible que pueda reemplazarlos por atenuadores, según su aplicación.
  3. Use una batería más grande: si puede bajar la corriente del microcontrolador y su aplicación solo tiene los LED activos con poca frecuencia como indicadores de estado o lo que sea, es posible que pueda salirse con la suya con las celdas de botón. Podría usar un par de CR2032 en paralelo, ya que son fáciles de encontrar. También existen pequeños recargables como Phu Le menciona, pero necesitarías una forma de recargarlos. Si sus LED tienen que estar encendidos la mayor parte del tiempo, su consumo actual será bastante alto sin importar lo que haga y es posible que necesite encontrar una manera de instalar una batería más sustancial. Los CR2477 están clasificados para 1000 mAh y son mucho más gruesos que el CR2032, pero no mucho más anchos, con una capacidad comparable a usar un par de baterías AAA (aunque mucho más caras). Si solo tiene que funcionar durante uno o dos días, podría ser factible, pero a más largo plazo,
32 LED más los registros AVR y Shift consumen 85 mA. Retire los 20 mA que consumen los circuitos integrados, que son 65 mA, divididos por 32, que son apenas 2,1 mA por LED si todo está encendido. No veo ningún lugar para reducir eso más.
Gracias por las sugerencias. Probaré un circuito de 1MHz @ 1.8V para mi microcontrolador. 85 mA fue el peor de los casos para mi circuito, ya que encontré LED SMD azules de 2 mA. Noté que también tienen LED SMD de 0,5 mA, pero desafortunadamente no azules :(

Respuesta calificativa directa a su pregunta: Sí, es posible... pero no por mucho tiempo.

No se avergüence de tener más masa invertida en la fuente de alimentación que en la electrónica activa. Eso NO es raro.