¿Cómo medir cantidades pequeñas y puntiagudas de corriente?

13

Supongamos que tengo un microcontrolador con cierta cantidad de periféricos conectados y me gustaría poder hacer una estimación razonable de la duración de la batería. Como es posible que en algunas ocasiones lo haga dormir y que varios periféricos se encuentren en diferentes estados, mi consumo actual puede variar entre uA (en modo de suspensión) y unos 10s de mA (cuando estoy despierto).

Ahora, puedo conectar una batería y dejar que se agote y mida el tiempo, pero esto hace que sea difícil y costoso (y posiblemente costoso) comparar diferentes enfoques, tanto en el firmware como en el hardware.

Podría colocar un multímetro en serie, pero incluso si tiene registro de datos, eso ocurre en algún intervalo y tengo que interpolar, y podría pasar por alto variaciones más pequeñas que el intervalo. (Más voltaje de carga y todo eso).

Si mi dispositivo duerme lo suficiente , la corriente de vigilia se vuelve un tanto despreciable, pero eso puede requerir una relación de 1000: 1 de tiempo de sueño a tiempo de vigilia, por lo que no es probable en todos los diseños.

¿Hay algún dispositivo que integre la corriente en el tiempo en cantidades muy pequeñas (por ejemplo, no en el medidor de salida Kill-a-watt)? Básicamente, me interesa saber que "durante la última hora, se consumieron 20 mAh". Puntos de bonificación si puedo obtener mediciones de corriente de precisión en un momento dado, para comparar el consumo de corriente despierto y dormido.

    
pregunta David

15 respuestas

13

Bueno, ciertamente hay circuitos integrados de detección de corriente específicos. En su caso, yo simplemente "voy" con algo como:

  • Use una resistencia pequeña (por ejemplo, 0.5 Ω) entre la batería y sus componentes electrónicos.
  • Amplifique el voltaje a través de esa resistencia con un amplificador de instrumentación
  • Registra ese voltaje, por ejemplo. utilizando un ADC

Problemas:

  1. bajas corrientes · baja resistencia = baja tensión: la precisión de su medición será mala debido al ruido
  2. ya que los microcontroladores se levantan muy rápido y se duermen con la misma rapidez, su tasa de muestreo de ADC necesariamente debe ser muy alta.

Pero como principio, funciona, y es ciertamente viable (aunque el diseño de un amplificador de instrumentación estable, con poco ruido y de alta amplificación puede no ser trivial; pero: existen IC de cámara de instrumentos que lo hacen mucho más fácil).

Por suerte, tu problema es bastante común. Entonces, muchos, incluido Texas Instruments, tienen una cartera de amplificadores de detección actuales, algunos de los cuales integran tanto la resistencia en derivación mencionada anteriormente como una interfaz digital. Consulte listado de productos de TI .

De hecho, estos circuitos integrados son capaces de medir la corriente y la tensión de alimentación al mismo tiempo, y eso es excelente para medir la potencia extraída, una medida mucho más relevante para la vida útil de la batería que la corriente bruta, si hay elementos no lineales (es decir, , por ejemplo, MCUs).

El INA233, por ejemplo, se puede conectar a una derivación externa (digamos, 0,3) y tiene una resolución de 2.5 µV por paso de ADC. Eso significa que un solo paso de ADC es I = U / R = 2.5 µV / 0.3 Ω = 8.333 µA en corriente.

Creo que ese dispositivo también tiene un muestreo automático & modo de promediado, para que pueda obtener fácilmente buenas aproximaciones incluso bajo carga que cambia rápidamente.

También, como acabo de descubrir: la cosa tiene un nivel de "alerta", por lo que puede activar su sistema de medición cada vez que la corriente supere un umbral configurable. ¡Bonito! De esa manera, solo necesitas muestrear de vez en cuando.

    
respondido por el Marcus Müller
7
  

¿Hay algún dispositivo que se integre con el tiempo en cantidades muy pequeñas?

Sí, hay varios; la más antigua es una celda de galvanoplastia (la masa de metal enchapado representa el amp-horas) Patente de Edison y celdas de electrólisis (gas la acumulación en un tubo capilar) se ha utilizado más recientemente. Estos son exactamente equivalentes a analizar la batería. después de un largo período de uso.

Hoy en día, usa la digitalización.

Si espera fluctuaciones más rápidas que una frecuencia de muestreo digital, eso es reparable Se puede organizar una ruta de corriente de dos ramas, con Conductancia de alta frecuencia (un condensador) que evita la corriente sensor, y una conductancia paralela de baja frecuencia (inductor y elemento de sentido actual).

Si espera una pequeña corriente de larga duración (que derrota la granularidad del muestreo digital), eso también es corregible. Agrega un Fuente de ruido DC más blanco en la señal de corriente DC, y un bit fraccionario La cantidad de corriente causará (estadísticamente) una correcta digital Acumulación en grandes tiempos. ADC con dither fig. 5a la parte DC de la añadida Sin embargo, la señal debe ser calibrada. Las fuentes de ruido pseudoaleatorias son útiles para este tipo de "interpolación".

Digitalización y acumulación en un registro (al igual que el Kill-a-watt) puede funcionar con componentes fácilmente disponibles, y algunos El engaño doma su potencial de mala medición.

    
respondido por el Whit3rd
7

Rápido y sucio: SUPERCAPACITORES! (También busque ultracapacitor.) Ellos alimentarán su sistema y mostrarán la corriente integrada como una caída de voltaje con el tiempo.

¿Qué procesador Vdd y / o voltios de batería estaba contemplando? Por supuesto, un condensador naturalmente integra la corriente, y si usa un supercapacitador de pocos faradios en lugar de un suministro de batería, puede medir la caída de voltaje en el tiempo y determinar con precisión los microamperios promedio a largo plazo.

Si su diseño necesita un Vdd constante, elija un valor de supercap que sea lo suficientemente grande como para que el voltaje solo se reduzca en un XX por ciento mientras se ejecuta la prueba. Dependiendo de la corriente promedio, es posible que pueda salirse con un capacitor de unos pocos dólares. Por ejemplo, 4.7 faradios a unos pocos voltios es un supercap común en los catálogos de excedentes. (Sparkfun tiene unos diez faradios y el tamaño máximo es de los sobres de potencia de 3000 Faradios de Electronic Goldmine a 2.7V). Apílelos en serie para obtener un límite de voltaje más alto.

    
respondido por el wbeaty
3

Para sus medidas aproximadas (tal vez +/- 10% o 20%).

Simplemente coloque una resistencia en serie con la potencia y colóquela en paralelo con un condensador para obtener una constante de tiempo lo suficientemente grande como para que su frecuencia de muestreo no pierda datos significativos. Por ejemplo, si está muestreando a 100Hz, puede elegir una constante de tiempo de 0.2 segundos. Probablemente será un condensador electrolítico y el mejor tipo de baja impedancia es, y puede ser paralelo a la cerámica 1uF-10uF si los pulsos son más cortos que aproximadamente 10us. El valor no es crítico, solo tiene que ser lo suficientemente alto. Elija la resistencia para que no caiga demasiado voltaje a fin de afectar la operación y, a la vez, produzca una señal suficiente para que pueda obtener una medición razonable.

No hay necesidad de analizar los tiempos de aumento y caída de los amplificadores o cualquiera de esas cosas: la resistencia y el condensador harán el trabajo.

Tenga en cuenta que la operación que depende de que la batería sea una fuente de baja impedancia para sus impulsos "puntiagudos" fallará antes de que la batería se agote realmente. Paralelo a la batería con un capacitor puede (a veces en gran medida) extender su vida útil. La resistencia interna de la batería aumenta a medida que se agota.

    
respondido por el Spehro Pefhany
3

Si está esperando un rango dinámico grande, una opción podría ser usar un espejo de corriente con un amplificador de impedancia trans logarítmica como el LOG114 . Puede obtener más de 6 décadas de alcance con un circuito bien sintonizado. La integración se puede ajustar con un condensador después del espejo de corriente.

Esta es una solución más compleja y la resolución a alta corriente, cuando la carga de la batería cambia significativamente, es menor. La precisión en comparación con la recta, la detección proporcional dependerá de la fracción de tiempo que pase a baja corriente.

Además, solo puedes usar fuerza bruta con la resolución ADC. 24bits o 32bits podrían cubrir 4 décadas sin problemas.

    
respondido por el pserra
3

Lo que propongo es probablemente una exageración ... Pero si encuentra que las soluciones estándar / baratas simplemente no tienen un rango dinámico suficiente, o si realiza este tipo de mediciones con regularidad, es posible que desee ver esto muy claro. dispositivo: el RocketLogger .

Está desarrollado y es de código abierto por ETH Zurich. Lo llaman un "Registrador de datos de señal mixta de precisión para mediciones portátiles". Es un registrador de corriente y voltaje portátil con un rango de corriente dinámico muy alto, basado en un SBC de Beaglebone.

  • 2 × Canales de corriente con alto rango dinámico desde 4 nA hasta ± 500 mA
  • 4 canales de voltaje que miden desde 13 uV hasta ± 5,5 V
  • etc ...

Descargo de responsabilidad: no estoy asociado con los creadores del dispositivo.

    
respondido por el mcmayer
3

el conteo de Coulomb puede realizarse midiendo el cambio en la carga almacenada por la caída de voltaje de una carga conocida Q = CV durante el intervalo medido de al menos 1 ciclo repetitivo.

En primer lugar, se debe definir la vida útil de la batería en términos de un mínimo en unidades de vatios-segundos o julios para que se pueda seleccionar la energía total necesaria para la vida útil de la carga.

En segundo lugar, el método de conteo de Coulomb debe ser lo suficientemente preciso mediante algún método de prueba en intervalos cortos, como 1 hora aproximadamente, si esto puede promediar ciclos repetitivos de actividad de pulsos y sueño para que la eficiencia del software sea optimizado para la energía.

La vida de almacenamiento de la batería puede ser o podría ser, por ejemplo; 1 año de primaria o 1 día de secundaria entre cargos , pero se debe especificar.

En tercer lugar , ¿Podríamos usar una tapa de fuga baja para contar Coulombs más rápido? Como en 1 hora?
Si se esperaba que el drenaje fuera de 20 mA por h avg y cayera solo 0.1 V, ¿qué valor C se necesita? C = Ic * dt / dV = 20mA * 3600s / 0.1V = 700 Faradios

Si es posible, elija una parte con este rango de capacitancia, como una batería CR123A de 3V, luego verifique el método de conteo de Coulomb y el voltaje del monitor.

También puede detectar el contenido actual y usar el contenido actual para contar con precisión Coulombs por separado del diseño.

    
respondido por el Tony EE rocketscientist
3

La parte de una hora de tu pregunta hace que esto sea un poco difícil, pero tal vez no lo necesites realmente si tu dispositivo está haciendo algo cíclico (como hace la mayoría de las cosas incrustadas).

Así que vamos a completar el exceso solo para mostrar lo que puedes comprar. El Keysight CX3300 le permitirá muestrear formas de onda actuales con un ancho de banda analógico de hasta 200 MHz y 1 GSa / s. Combinado con 256 MSa de memoria, puede obtener frecuencias de muestreo decentes incluso durante una hora. El precio es, por supuesto, un poco alto a partir de $ 33,000 y las sondas a partir de $ 4,800.

Un poco de un camino más barato por el que suelo ir es usar mi osciloscopio con una sonda de corriente como la N2820A - esto le costará alrededor de $ 4,200 y no consigues bastante el ancho de banda analógico (hasta 3 MHz) pero me parece muy útil. Esto le dará un canal con una medición de corriente baja y uno con una medición de corriente alta, por lo que el análisis necesita un poco de cálculo manual.

Estoy seguro de que hay ofertas similares de diferentes fabricantes para algo como los productos Keysight mencionados anteriormente.

Como mi osciloscopio no viene con una gran cantidad de memoria, lo que normalmente hago es medir un ciclo de la actividad y calcular desde allí: nuestros dispositivos no tienen ciclos largos, por lo que funciona bastante bien.

Si necesito realizar una medición a largo plazo con un cálculo automático de Wh, utilizo mi Gossen Metrahit Energy , que hace un gran trabajo incluso con corrientes bajas. Pero el registro de datos no es adecuado para corrientes altamente variables ya que la frecuencia de muestreo no es tan buena.

Por favor, no malinterprete esta respuesta cuando presumiré sobre un equipo costoso, es un indicador de que existe un equipo de prueba profesional que puede manejar los requisitos, ya que la mayoría de las otras respuestas se centran en hacerlo por su cuenta (que podría causar problemas si no solo realiza pruebas satisfactorias por su cuenta).

No estoy afiliado a Keysight o Gossen de ninguna manera, solo soy un usuario feliz de sus productos.

    
respondido por el Arsenal
2

Tome la excelente respuesta de @ marcusmuller y alimente la salida a un integrador. ponga la tapa a cero antes de comenzar y mida el mAh o uAh acumulado como voltaje de CC.

Es posible que tenga que experimentar con la selección de capacitores de su integrador; algunos diseños de condensadores son malos para el remojo o tienen una resistencia interna que evita que se pongan a cero correctamente.

    
respondido por el akohlsmith
2
  

Podría colocar un multímetro en serie, pero incluso si tiene registro de datos, eso ocurre en algún intervalo y tengo que interpolar, y podría pasar por alto variaciones más pequeñas que el intervalo.

Por lo tanto, puede colocar un filtro de paso bajo en su cadena de medición para registrar el valor medio a una frecuencia razonablemente baja:

simular este circuito : esquema creado usando CircuitLab

    
respondido por el Dmitry Grigoryev
2

Para duraciones más cortas (segundos), puede usar un dispositivo como el μCurrent conectado a un osciloscopio.

Si su corriente pico es relativamente poco importante (por ejemplo, porque es muy corta o porque está dominada por un valor más o menos fijo y conocido como la corriente máxima de su microcontrolador), puede usar una resistencia de derivación con un diodo en paralelo para limitar la caída de voltaje Con una derivación de 100Ω y un diodo SI en paralelo, puede medir hasta ~ 7 mA y lograr una precisión de decenas de μA.

    
respondido por el Michael
0

Creo que su idea de usar una batería podría ser el mejor enfoque, pero no estoy seguro de por qué dice que es difícil o costoso. Estoy seguro de que hay medidores A-Hr que puede comprar, pero es posible que no midan con precisión los cortos intervalos de corriente en los que está interesado. Otro enfoque sería una sonda de corriente conectada a un osciloscopio. Probablemente esta sea la forma más precisa de caracterizar la corriente en términos de amplitud y tiempo, pero no otorgaría A-Hrs a menos que su forma de onda actual sea periódica.

    
respondido por el EE_socal
0

Hace mucho tiempo tuve que solucionar este problema con baterías de litio. El dispositivo se despertó durante un tiempo muy breve, una vez por minuto. Podría probar el voltaje a través de la batería. El problema con las baterías de litio en esta situación es que tienen una "rodilla" muy repentina en su ciclo de descarga y cuando llegan a ese punto, estás fuera de tiempo y es un rango de valor pequeño.

    
respondido por el William Price
0

En realidad, tomé un analizador lógico / analógico (Saleae Logic 8) y lo conecté a un µCurrent Gold y medí todo el gráfico de corriente y el voltaje de la batería desde la carga completa hasta la descarga. Simplemente puede ejecutar un script de Python que se conecta a la interfaz de desarrollo para sondear y almacenar valores. Esto crea un TON de datos y, a menudo, no se puede manipular fácilmente en Excel, pero al menos puede abrir una porción de tiempo para ver qué corriente instantánea había en ese momento en particular.

Aquí hay una captura de pantalla de una validación de la vida útil de la batería que estaba haciendo que se parece a lo que estás buscando:

Laseñalamarillaeslacorriente(VsetraduceaA).Puedeverlarespuestadelabatería(labateríahapasadoaestarporencimadelos5Vmáx.DelLogic8enestecaso)Luego,lomásimportanteesquepuedeverlosrielesdealimentaciónencendidosyluegoapagadosparalasmediciones(enrealidadestabaenviandodatosatravésdeCAT-Manuestrosservidoresenlanube).Parasucaso,esprobablequenoveatantascosasinteresantesdebidoalhechodequesuciclodetrabajoesmuchomáspequeño(aquíestabahaciendoalgunaspruebasdebateríaaceleradas,poresofuetanfrecuente)

Siquieresvercómoseveíamiconfiguración, escribí un artículo recientemente sobre cómo tomar medidas con el equipo que tenía que produjo la captura anterior.

Es probable que pueda hacer algo similar con un osciliscoplas controlado por GPIB o un registrador de datos de diferentes marcas. Simplemente me alegré de usar lo que tenía a mano.

Para capturas extendidas, también puede consultar la referencia de programación de Salea para su lógica analizadores También creé un gist del código que usé para crear esa captura también aquí.

    
respondido por el jaredwolff
0

Todas estas respuestas y solo @wbeaty mencionaron la obvia. ¿Un dispositivo que integra corriente con tiempo? ¿Qué pasa con I = C dV / dt?

Si el consumo de corriente es lo suficientemente bajo, algunos capacitores podrían ser más que suficientes, pero se necesitaría un supercondensador para corrientes más altas. Ajustar los condensadores para obtener una caída razonable en un tiempo razonable. Un circuito como el que está abajo haría el truco.

simular este circuito : esquema creado usando CircuitLab

El divisor capacitivo está ahí para evitar eliminar la corriente del nodo. Se puede precargar al suministro de la uC a través del pin periférico para establecer la condición inicial, y luego medirse periódicamente para leer la velocidad de descarga. Un problema con este circuito es que la tensión de salida cambiará, lo que podría significar una carga variable.

Para evitar este problema, y para un circuito multiuso ajustable con componentes de tamaño razonable, se podría usar un multiplicador de capacitancia activa, como el esquema conceptual a continuación. Alguna calibración con cargas conocidas, y usted tiene un medidor de consumo personalizado.

simular este circuito

    
respondido por el Edgar Brown

Lea otras preguntas en las etiquetas