Medición de corriente de precisión usando Arduino

0

Estamos diseñando un circuito para medir la corriente consumida por un módulo de comunicación de potencia ultra baja. El requisito está abajo:

  1. Corriente mínima = 0.2mA
  2. Corriente máxima = 100mA
  3. Resolución = 0.005mA (5uA)

No necesitamos medir dynamic actual, solo queremos medir promedio actual en una condición de trabajo específica como Active, Sleep, Shutdown Usaremos una resistencia de detección en serie a la carga. Tengo algunas preguntas, por favor proporcione aclaraciones.

  1. El valor seleccionado de la resistencia de detección es 500 mOhm. Según mi entendimiento, para obtener 5 uA de resolución, 1 LSB de ADC debe ser menor o igual a 2.5 uV (RsenseCurrent step, ie (500mohm5uA). Corríjame si me equivoco.

  2. ¿Debo usar un preamplificador después de la resistencia de detección de corriente? Imagine que estoy usando un ADC con una resolución de 24 bits y una referencia de 5 V, luego mi 1LSB será de 0,3 uV, menos que la resolución requerida. ¿Es posible conectar un búfer después de Rsense y conectar su salida directamente a la entrada ADC?

¿Puedo saber si puedo usar Arduino para esta aplicación?

    
pregunta Hari

1 respuesta

3
  

El valor seleccionado de la resistencia de detección es de 500 mOhm. Según mi   comprensión para obtener 5 uA resolución 1 LSB de ADC debe ser menor o   igual a 2.5 uV (RsenseCurrent step, es decir (500mohm5uA). Por favor, corrija   yo si estoy equivocado.

Tienes razón, pero no de ninguna manera útil. Sí, su resolución es de 2.5 uV para .005 mA, pero su escala máxima (5 voltios a través de .5 ohmios) es de 10 amperios, o 100 veces más de lo que necesita.

  

¿Necesito usar un preamplificador después de la resistencia de detección de corriente? Imagina   Estoy usando un ADC con resolución de 24 bits y referencia de 5V, luego mi 1LSB   será 0.3uV, menor que la resolución requerida.

Para cualquier ADC razonable, sí. A 100 mA, una resistencia de .5 ohmios le dará .05 voltios. Para una referencia a escala completa de 5 voltios, necesitará una ganancia de 100 amperios de búfer. Por supuesto, este amplificador debe tener menos de 5 uV de temperatura y deriva de envejecimiento en cualquier rango de temperatura que pueda operar (con referencia a la entrada). Tenga en cuenta que eso no es 5 uV / grado de variación de temperatura, sino un total de 5 uV en todo el rango.

Sin embargo, ¿por qué deberíamos imaginar que está utilizando un ADC de 24 bits? ¿Tienes uno disponible?

  

¿Es posible conectar un búfer después de Rsense y conectar su salida?   directamente a la entrada ADC?

Sí. Una ganancia de 100 funcionará bien para una entrada de escala completa de 5 voltios.

  

¿Puedo saber si puedo usar Arduino para esta aplicación?

Nunca en un millón de años. Su resolución requerida es .1 / .000005, o 20,000 cuentas. Un convertidor de 14 bits proporcionará una resolución de 16,384, por lo que si redujera un poco el requisito de resolución a 6.1 uA, podría (teóricamente) seguir esa ruta.

Por supuesto, los Arduino no vienen con ADCs de 14 bits. 10 bits es todo lo que obtienes. Para una escala completa de 100 mA, su resolución será nominal (y no hemos abordado la precisión aquí, solo la resolución) 100 mA / 1024, o 97.6 uA, casi 20 veces peor de lo que especificó.

    
respondido por el WhatRoughBeast

Lea otras preguntas en las etiquetas