Quiero leer un voltaje de 0-30V con un MCU ADC que tiene una entrada máxima de 3V.
Inicialmente pensé en usar un divisor de 100k-10k (por lo que 33V se traduce en 3V) pero de acuerdo con las respuestas a la impedancia de entrada de ADC en MCU , esto agregará un error del 3% debido a la corriente de fuga de entrada; Estoy buscando un error máximo de 0.5%. Sin embargo, a valores más bajos para el divisor, corro el riesgo de dañar las entradas de la MCU debido a la sobretensión (las resistencias actúan en conjunto con los diodos de sujeción en la entrada). También aumento la disipación de energía en mis resistencias, que son pequeños dispositivos 0603, clasificados para 0.063W máximo. ¿Cómo puedo evitar esto? Nota: la impedancia de entrada no es crítica.
No me preocupa la velocidad de muestreo, monitoreará el voltaje de la batería a un máximo de 100 muestras por segundo.
Use el divisor de voltaje con resistencias y un seguidor opamp después. Alternativamente, use un circuito opamp para reducir el voltaje y puede realizar un filtrado antialiasing en una etapa.
De acuerdo, según su respuesta a mi comentario, creo que puedo ser de más ayuda con una respuesta completa.
Construya su divisor resistivo simple. Esto tiene muchas ventajas, para un tamaño, otro es costo.
Ahora, también va a usar un microcontrolador, aquí es donde necesita caracterizar su error. use un generador de voltaje que sea muy preciso, ahora verifique los voltajes y vea qué error mide realmente el uC.
Ahora es cuando se pone divertido. Hay una serie de cosas que podrías medir.
Ahora, si tiene una alta precisión, como se mencionó anteriormente, puede pasar a corregir la precisión. Ahora, si cuando grafica su voltaje de entrada versus su voltaje de salida, tendrá que decidir la cantidad de "puntos de referencia" que necesita. Los dispositivos agradables permiten un punto 1 (o punto cero, sin necesidad de calibración). Muchas sondas de temperatura.
Ambas líneas tienen la misma pendiente, pero un desplazamiento, por lo que solo necesita encontrar el valor que debe agregar a un punto de datos para corregirlo. Esta es una situación ideal, ya que cualquier nueva calibración solo necesita un único punto de datos para calibrar nuevamente.
ambas curvas lineales, posiblemente un desplazamiento y hay una diferencia de pendiente, solo necesita dos puntos de referencia e interpolación lineal para extraer su desplazamiento. Esto todavía es relativamente fácil, solo toma cualquier punto, lo multiplica por un escalar y agrega una compensación.
Como puede ver, se vuelve más complicado cuantos más puntos necesita. En algún momento, es más fácil simplemente tomar cada punto de datos y correlacionarlo con el valor real. Por ejemplo, encontrar que 0000 es 1V, 0001 es 2V, 0002 es 1.5V. Esto es complicado, y solo funciona si las compensaciones son repetibles. Sin embargo, esto puede suceder.
Espero que esto ayude, dime si necesitas más claridad. Si termina con una corriente de fuga variable que no es confiable, es hora de lidiar con la necesidad de un búfer, o algo por el estilo.
Puedo ver la posibilidad de un alto error por fuga, pero apostaría a que el error es relativamente pequeño en la mayor parte del rango, y cuando lo hay, se puede corregir fácilmente.
Kortuk
Tomas O.
Kellenjb
endolito