Estoy tratando de detectar una corriente que fluirá en un motor (la corriente no debe exceder los 2 amperios) y me gustaría tener una alta resolución en esta medida. Esperaba usar el ACS712 , pero dice que la precisión es de 185 mV/A. Dado que la corriente en mi aplicación no excederá los 2A, significa 185*2 = 370mV (¿verdad?)
Estoy usando un STM32F4 con ADC de 12 bits, lo que significa que con un Vref de 3,3 V es un incremento cada 0,8 mV. Así que al final obtendré una resolución de 463 pasos.
¿Hay alguna manera de obtener una resolución más alta? Realmente no me gusta la idea de una resistencia de derivación, tal vez un amplificador podría hacer el truco, pero ¿podré obtener una medición precisa? (iA es la medida)
Por cierto, estoy tratando de reemplazarlo con un ACS711 que funciona con 3,3 V, pero solo me dará una resolución de 110 mV/A.
Aquí está la conexión Vref+/-
La mayoría de los microcontroladores con ADC tienen una referencia de banda prohibida interna con un voltaje de ~1 V (consulte la hoja de datos para obtener valores y tolerancias más precisos; por ejemplo: la serie STM32F415xx tiene una referencia de banda prohibida de 1,21 V). Esto aumenta efectivamente su resolución a 1253 pasos a escala completa al activar un interruptor de software.
Si quieres hacerlo aún mejor, tienes algunas opciones:
En ninguno de estos casos necesita cambiar el suministro de voltaje a su microcontrolador.
Como nota al margen, no entiendo su aversión a usar una resistencia de derivación. Para corrientes moderadamente bajas (pocos amperios) es la forma más precisa de medir corrientes. Por ejemplo, el chip ACS712 que ha enumerado tiene una precisión del 1 %. Eso significa que obtiene una precisión de 6,64 bits (~100 pasos). Es muy fácil obtener resistencias de derivación con una precisión del 0,5 %, lo que da una precisión de 7,64 bits (~200 pasos). El uso de una derivación con una precisión del 0,1% le brinda una precisión de 9,97 bits (~1000 pasos).
Si usa una resistencia de derivación muy pequeña con un amplificador de instrumentación, el voltaje de carga será insignificante. Por ejemplo, supongamos que tiene un amplificador de entrada con una ganancia de 100x (muy factible). Una resistencia de derivación adecuada para obtener 0-1.21V
la escala completa necesita una resistencia de derivación de 6.05mOhms
, y tendrá un voltaje de carga de 12.1mV
. Para todos los propósitos intensivos esto es insignificante. Puede reducir esto aún más usando un circuito de amplificador interno de 1000x (también muy factible).
Usted dice que quiere hacer una medición de corriente de "alta resolución". Cuando dice "alta resolución" y luego dice que está usando un ADC de 12 bits en un microcontrolador, en la misma oración, está redefiniendo "alta resolución. A la baja". De todos modos, tendrá suerte si obtiene 10-10.5 bits efectivos, por lo que ya tiene ~ 1000 códigos en escala completa (suponiendo que haga lo necesario y amplifique su medición sensorial para que 2A = "escala completa". ¿Es esa resolución lo suficientemente alta para usted?
Si es así, deberá seguir los consejos brindados en otras respuestas, sobre cómo elegir una referencia adecuada (banda prohibida interna, o una referencia externa decente <0.05%, NO un riel de suministro, sin importar cuán bien filtrado se pueda afirmar que hacerlo), Y use un amplificador operacional para amplificar su medición actual con una resistencia de derivación para que 2A = su voltaje de referencia, y use prácticas de diseño de PCB decentes para mantener su circuito analógico relativamente limpio. Mi interés es muy lento esta noche, por lo que no puedo descargar una hoja de datos STM32F4xxx en este momento, pero el 99,9% admitirá la opción de tener una referencia de voltaje externo.
Agregaría un amplificador operacional con una ganancia de 8 a la salida del ACS712, para aprovechar el rango completo del ADC en su microcontrolador. Entonces 2A estaría representado por 8*463 pasos = 3704, casi el rango completo (4096) del ADC de 12 bits con un voltaje de escala completa de 3.3v.
El LMV321 es una versión de riel a riel del LM321.
La ganancia de un amplificador no inversor es , o en este caso .
O use un amplificador operacional con una ganancia de 12 para el ACS711. En ese caso, 2A estaría representado por 12*275 pasos = 3300.
nick johnson
nairyo
nick johnson
nairyo
jms
nairyo
sweber
jms
nairyo
nick johnson