Ir a ultra baja potencia con un sensor óptico reflectante

Estoy usando un sensor óptico reflectante nrf52 y OPR5005 que toma aproximadamente 20 mA. En el diseño, solo tengo un espacio de 30 mm x 30 mm, por lo que, hasta ahora, la única batería adecuada es CR2032 o CR2477. La pregunta es ¿hasta dónde puedo llegar sin encender y apagar el sensor? (el sensor debe estar siempre abierto)

EDITAR: Aquí está mi archivo esquemático final después de las respuestas a continuación. Decido ir con nrf24l01 y para mcu puse un stm8l también agrego un interruptor de carga para encender/apagar el sensor

Consumos típicos de energía para circuitos integrados:

nrf24l01: 600 nA al apagar, 0,12 mA en TX (solo transmitirá desde eeprom y lo hará solo una vez cuando encienda el dispositivo)

stm8l: 3.7uA en suspensión, 0.5mA en modo de ejecución (se activará cada 25 ms y habilitará el sensor y registrará los datos en eeprom y volverá a dormir. Tomará casi 5 ms estimados, incluidos los tiempos de establecimiento)

OPR5005: 15-20 mA en modo de ejecución, 12 nA en suspensión (fuga del interruptor de carga)programa final

No hay enlaces a hojas de datos. Sin esquema. No hay ayuda, me temo. Mejora tu pregunta.
El OPR5005 es un asesino a 10-20 mA, ¿puede explicar por qué no puede encenderlo y apagarlo en su aplicación?
Olvídate de los sensores reflectantes. Utilice un interruptor de láminas y un imán si desea que la batería dure mucho tiempo.
@JackCreasey porque tengo que contar los parpadeos continuamente

Respuestas (3)

El parpadeo de un ojo humano casi siempre dura más de 50 ms . Si solo está contando los parpadeos, solo necesita unas pocas mediciones durante cada parpadeo: una medición cada 15 ms sería suficiente. La hoja de datos del OPR5005 muestra tiempos típicos de subida y bajada por debajo de 100 μs como fácilmente alcanzables, por lo que tener el sensor encendido durante 300 μs antes de cada medición debería ser suficiente para permitir que se estabilice.

Por lo tanto, el sensor solo necesita estar encendido con un ciclo de trabajo de (300 μs / 15 ms) = 2%, lo que reduciría su consumo de corriente promedio a (20 mA · 2%) = 400 μA.

Si esta fuera la única carga en una batería CR2477 (capacidad = 1 Ah), permitiría una vida útil de la batería de (1 Ah / 400 μA) = 104 días. En la práctica, otras cargas, como el nRF52, reducirán esto sustancialmente.

Tenga en cuenta que Vce(sat) es la única característica acoplada garantizada dada y está en 100uA, lo que implica una resistencia de 50K desde +5. tr & tf normalmente serán algo así como 1 ms cada uno en esa resistencia. Entonces, se podría requerir un circuito más sofisticado. Pero el concepto es sólido.
@SpehroPefhany De acuerdo. Para obtener un rendimiento razonable, probablemente usaría un pequeño pullup más un amplificador operacional, aunque si la baja resolución es aceptable, uno podría alimentar la señal sin amplificar directamente a un ADC.
@AbeKarplus gracias por la respuesta. Volveré con un esquema lo antes posible.

[La respuesta es más cruda de lo que piensa el OP.]

Las celdas CR2032 y CR2477 pueden suministrar solo 0,2 mA y 1 mA de corriente continua, respectivamente. No podrán proporcionar 20 mA para que funcione el sensor OPR5005 . Para las baterías de dióxido de manganeso y litio, es normal tener corrientes de salida muy bajas.

No, en realidad puede obtener corrientes mucho más altas de las celdas CR sin demasiada pérdida de capacidad. No he tenido problemas para tomar 10 mA+ de un diminuto CR1225.
@Abe ¿Obtienes 10 mA pulsados ​​o continuos? (Sé que es posible obtener corrientes pulsadas más grandes de las celdas de monedas).
Entonces, ¿qué sugieres para tal aplicación? Por cierto, estoy tratando de contar los parpadeos con ese sensor y por eso la batería es un asunto muy delicado.
@NickAlexeev Por lo general, he dibujado esa corriente pulsada (digamos, ciclo de trabajo del 50%, frecuencia de 8 kHz), pero también es posible dibujarla continuamente. No he medido la capacidad en ese caso, pero no creo que sea mucho peor.

La CR2477 tiene más de 3 veces la capacidad de la CR2302, por lo que parece una mejor batería objetivo para su proyecto. Puede extraer muchos mA de la batería si está dispuesto a sacrificar tiempos de uso prolongados.

A pesar de que está midiendo los parpadeos, parece que aún sería posible usar un modo de suspensión para su MCU y apagar el LED en el OPR5005 para reducir el consumo de energía.
Si tuviera que salir del modo de suspensión de MCU a varios cientos de Hz, medir el estado de los párpados abiertos/cerrados (quizás no más de 50-100 us a tiempo) y volver a dormir, es posible que pueda reducir su potencia en casi 100:1 .
Si caracteriza el par LED/fototransistor, entonces puede encontrar con mayor precisión la corriente que necesita para hacer funcionar el LED. Quizás esto pueda estar más cerca de 10 mA que de 20 mA (y cualquier ganancia vale la pena).

Para lidiar con la corriente de pulso extraída de la batería, todo lo que necesita es un capacitor de gran valor a través de ella. La batería mantiene el capacitor completamente cargado y suministrará corriente mucho más allá del uso de 1 mA para medir la longevidad de la carga. Como ejemplo, la gente usa CR2302 con un LED atado directamente a ellos y obtiene una vida útil de 10 horas a pesar de que es un abuso grave de la batería.

Su consumo de energía es esencialmente una corriente constante cuando está encendido (dominado por el LED), por lo que puede usar una forma de descarga CC simple como dV = (I * t) / C para calcular el cambio en el voltaje del terminal (aquí estoy simplemente ignorando la corriente de la batería, y las condiciones iniciales están completamente cargadas C).

Entonces, para un MCU/LED a tiempo de 1 ms y un cambio de voltaje de terminal de, digamos, 0,2 V a 20 mA, necesita un mínimo de 100 uf. Colocaría el capacitor de mayor valor que pueda en su batería dado su espacio limitado.

Supongo que en todo esto desea transferir los datos de la plataforma de medición (¿montada en la cabeza?) a su PC. Pasar la mayor parte del tiempo de su MCU en suspensión probablemente signifique perder su conexión BT, pero tal vez simplemente pueda almacenar los datos localmente la mayor parte del tiempo. En ocasiones, podría salir del modo de suspensión y encender la conexión BT para transferir datos.

Sé que no son sus componentes elegidos, pero estaría tentado a usar un NRF24L01+ en modo ráfaga para transferir datos. Estos son fáciles de inicializar y proporcionan un enlace confiable (retransmisión) sin necesidad de protocolos orientados a la conexión.
Para la MCU, un pequeño ATTiny85 podría ser suficiente, aunque no tengo idea de cuánto código necesita para ejecutar en su MCU.

Actualización desde la edición de la pregunta...

Un intento mucho mejor de un circuito viable.

  1. C13 debe ser de 100 uf mínimo con una serie R de unos 270 Ohmios. Esto asegurará que Vbatt no se mantenga presionado o aumente demasiado lentamente durante el encendido inicial.
    La tapa tardará menos de 100 ms en cargarse a un nivel de voltaje adecuado, pero permanecerá en este nivel durante el resto del tiempo de encendido.
    Podría ser aún más creativo y acortar la resistencia en serie con otro TPS22860 una vez que la tapa esté cargada y después de que se ejecute la inicialización si así lo desea (esto compartiría la corriente del sensor más con el suministro que de otra manera).

  2. Conecte el colector del sensor al sensor GPIO con su resistencia pull-up y conecte el emisor a tierra. No necesita ser alimentado como seguidor de Emisor, y no necesita ser encendido o apagado.

  3. No es necesario encender el OPR5005 durante más de 500 us como máximo.
    Supongamos que sale del sueño cada 10 ms (100 Hz), enciende el sensor durante unos 50-100 us, detecta el estado del párpado.
    Si el párpado está cerrado, podría dormir durante, por ejemplo, 5 ms, o al menos apagar el sensor durante 5 ms.
    En el próximo encendido o reactivación del sensor, vuelva a hacer lo mismo. Si el párpado está abierto (después de haberlo cerrado), vuelva al estado de suspensión de 10 ms.

esquemático

simular este circuito : esquema creado con CircuitLab

Tiene un interruptor para apagar/encender su unidad (no lo mostré aquí). Con 100 uf directamente a través del suministro de la batería y una batería de alta resistencia de salida (relativamente), la capacitancia es suficiente para hacer que el voltaje de suministro aumente lentamente.
En casos extremos (ya que la batería se consume y su resistencia interna aumenta), esto puede ser suficiente para hacer que la MCU se comporte mal al encenderla.
Si ambos interruptores están apagados durante el encendido, entonces la corriente para cargar la tapa es a través de la resistencia R1. Cuando la tapa esté completamente cargada (¿quizás podría usar el A/D para probarlo?), encienda el primer interruptor, U1. Ahora, cuando enciende el segundo interruptor (U2), la resistencia R1 se cortocircuita (por U1) para compartir la corriente del sensor de la tapa y la batería.

Gracias por responder. Edité la pregunta, puedes consultar el esquema.
@ArifBalık. Actualicé mi respuesta. Te das cuenta de que aquí trabajamos con un sistema de puntos... no trabajamos gratis. Es agradable recibir alguna recompensa por ayudar.
Aquí está el sch corregido . pero quiero mencionar que el C13 esta cerca del TPS22860, debo acercarlo a bateria? Además, no entendí del todo el concepto de 2 TPS22860, lo que entiendo es conectar dos pines ON/OFF y VOUT de dos TPS22860 para obtener ¿qué?
@ArifBalık Interpretó mal los cambios en el esquema. El 100 uf es el suministro para el interruptor TPS y la resistencia va a la batería.
Todavía no lo entendí. ¿Cómo debo controlar dos de esos? ¿La misma señal para todos? Y TPS puede dar hasta 200 mA sin problema, ¿por qué debería hacerlo dos?
@ArifBalık Actualicé la respuesta, espero que ahora la obtengas.
¡Gracias! Entonces, creo que lo terminamos. Aquí está el esquema y también todos los archivos ubicados en Circuitmaker