Medición de alto voltaje con un microcontrolador

Mi objetivo es medir 19 voltios y 24 voltios con el ADC interno. Estoy usando un BeagleBone Black que tiene un pin de entrada analógica de 1,8 V. Si uso un divisor de voltaje, tengo que reducir el voltaje por un factor de 14 y nuevamente multiplicar por el mismo código para obtener el voltaje real. Eso también multiplicará el error, y eso no lo quiero.

¿Hay alguna alternativa mejor? Aparte del uso de resistencias de baja tolerancia.

¿Podría ayudar aquí el uso de un ADC externo? He oído hablar de osciladores controlados por voltaje. ¿Es eso útil aquí?

No, el divisor de resistencia con un búfer opamp es el camino a seguir. No hay mediciones perfectas sin errores". Eso también multiplicará el error y eso no lo quiero". ser o para qué lo estás usando. Al menos con resistencias de 0.1%, o mejor aún, un par combinado de TCR de 0.01%, usted sabe fácilmente cuál es el error
Sé que se siente un poco desagradable, pero las sondas diferenciales e incluso las sondas pasivas en los osciloscopios también hacen esto y con proporciones mucho más grandes (1000).
Por lo general, la respuesta para "mejorar el error" (ruido) es sobremuestrear y promediar los valores.
Depende de lo que quiera hacer, ¿realmente necesita medir 0-19 V o 0-24 V... o necesita saber la precisión de la entrada de 19 o 24 voltios en términos absolutos? En muchos casos, simplemente necesita saber si el suministro está dentro de un porcentaje de su voltaje requerido, como 0.1% y cualquier cosa fuera de ese rango es una falla.
Yendo más allá de lo que otros están consiguiendo: si no necesita lecturas de escala completa, por ejemplo, si no le importa si la entrada de 19 V es 7.02 o 7.05 V porque algo está muy roto en cualquier caso, entonces podría considerar usar las soluciones del divisor de voltaje que se muestran y solo amplifican la diferencia entre el voltaje reducido y una referencia estable conocida.
Quiero el voltaje exacto lo más preciso que pueda obtener, aunque el error por debajo de 10 mV es tolerable, pero no quiero medir el rango. Tengo que variar el PWM en función del voltaje. 0,1% de error todavía tolerable. Probé el divisor de voltaje con una matriz de resistencias, pero no usé opamp, lo intentaré y veré si ayuda.
Si tiene dos entradas analógicas, puede usar una para mediciones gruesas y otra para mediciones finas cerca del rango objetivo.
Aparte, 19 V y 24 V no son de "alto voltaje" , están sólidamente en el campo de bajo voltaje , sin importar qué sistema de alto/medio/bajo esté usando (por ejemplo: IEC 61140: 2016) Según algunos cálculos, estos no son incluso bajo voltaje , que comúnmente comienza en el extremo inferior de alrededor de 50 V o 100 V, por lo que 19 V y 24 V se designarían más correctamente como " Voltaje extra bajo " (ELV - IEC 60038).
La resolución de 10mV en 24V es de solo 2400 pasos. Apenas la mitad de lo que es capaz de hacer un convertidor de 12 bits. Pasos de 0,04%. Entonces, más de una resistencia de 0.1% pero no una resistencia de 0.01%. Y ni siquiera es la precisión de la resistencia real lo que importa, sino la precisión de la relación en el divisor. Sin embargo, los pares combinados al 0,01% son caros, pero aún más simples y probablemente más baratos que otros métodos, como agregar ADC externos, etc. También puede simplemente recortar resistencias regulares con potenciómetros.

Respuestas (3)

esquemático

simular este circuito : esquema creado con CircuitLab

El divisor de resistencias funciona siempre exactamente igual. Para una medición muy precisa, necesita resistencias de valor TCR bajo. La tolerancia no importa si insertará un factor de calibración en la MCU, de lo contrario, puede usar 0.1% tol. resistencias

Ahora bien, ¿qué errores se amplificarán? Seguro que el error de compensación y el error de deriva de temperatura. El desplazamiento permanece sin cambios, es un artefacto de fabricación, mientras que la deriva cambia. Dado que el amplificador operacional se usa como búfer, la entrada VS de salida es 1: 1.

Hay amplificadores operacionales con microvoltios de deriva.

ingrese la descripción de la imagen aquí

Esto es una exageración para su demanda, solo como ejemplo. Puede ver microvoltios de compensación y nanovoltios de temperatura. deriva.

Su ADC es de 1.8V/12 bits, por lo tanto un paso mínimo es de aprox. 2,4 mV.

Versión mucho más económica:

ingrese la descripción de la imagen aquí ingrese la descripción de la imagen aquí

El desplazamiento es max- +/- 1 conteo de ADC. El divisor de resistencias emitirá aproximadamente 30 mV menos de 1,8 V en el rango máximo.

EDITAR:

Dado que la compensación de 2 mV se multiplicaría por el factor 17 en MCU, entonces sucederá lo que sabe, así que simplemente elija otro opamp, de modo que la compensación multiplicada por el factor no exceda 1 voltaje LSB: 2.4 mV / 17 =140uV

MAX9620AXK+T

ingrese la descripción de la imagen aquí

Puede buscarlo: opamp RRIO, voltaje de suministro, compensación, ... precio. Cuanto más paga, más preciso obtiene, hasta cierto punto en el que la precisión del ADC es menor que la del opamp.

La calibración cero puede ser una opción para compensar el error de compensación.
Muchas gracias por la respuesta detallada. Te perdí en tu respuesta editada. ¿Cómo usar el segundo opamp reducirá el factor multiplicado?
@DharmikPrajapati El primero dará +/- 1LSB de error de compensación, luego se traduciría en +/- 17 LSB cuando se vuelva a multiplicar. El segundo tiene una compensación de 25uV que no puede ser detectado por ADC. El segundo no tiene la protección de diodo incorporada (no estoy seguro, debe preguntarle al fabricante).
Ok lo tengo. Gracias

Primero, su precisión es de 12 bits. Entonces, a 24 V, 1 paso es de aproximadamente 6 mV. A 1,8 V, es 0,4 mV Los errores provienen de:

  1. Tolerancia de resistencia. Esto se puede calibrar si es necesario. De lo contrario, use un par emparejado. Por ejemplo: Y0115V0522BV0L.
  2. Ruido térmico en las resistencias. Sí, esto se multiplicará. El sobremuestreo puede ayudar.
  3. EMI. Espero que solo necesite medir CC y, por lo tanto, pueda aplicar alguna combinación de filtrado L y C y sobremuestreo.
  4. Variación de temperatura. Si usa un par emparejado, esto estará bien.
  5. Error de ADC. ¡Es lo que es!

Con todo esto, ¿quizás el error es menor de lo que puedes tolerar?

No creo que necesite un OpAmp a menos que la fuente sea una salida de alta impedancia y no pueda controlar su divisor de voltaje directamente.

Gracias por responder. Consideré todos los puntos excepto el sobremuestreo. Seguramente lo intentaré. Lo intenté sin opamp y no obtuve el resultado esperado con una matriz de resistencias como la que mencionaste. Una pregunta secundaria, ¿puede explicar exactamente por qué necesitamos opamp para salida de alta impedancia?
La información sobre el ADC era escasa. Encontré una nota que recomienda 1K o menos de pulldown. Con el divisor de voltaje que sugerí con eso en mente, consumirá unos 15 mA a 24v. Si esta es una corriente significativa para la fuente de voltaje, puede ser demasiada carga para la fuente y puede hacer que el voltaje disminuya un poco. En ese caso, tendría que usar un divisor de voltaje diferente con resistencias más altas y luego usar un OpAmp como un búfer 1: 1.

Un chopper y un filtro de paso bajo pueden atenuar con precisión sin componentes de tolerancia estricta. La cantidad de atenuación está controlada por el ciclo de trabajo del interruptor. El oscilador que impulsa el contador que establece el ciclo de trabajo puede tener una tolerancia muy baja siempre que tenga estabilidad a corto plazo. La forma en que podría implementarse depende de sus requisitos.