Rango dinámico de voltajes para entrada ADC controlada por software

0

Estoy tratando de construir una interfaz que pueda tomar las lecturas de los sensores de nivel y proporcionar un voltaje lo suficientemente pequeño como para que un microcontrolador 3.3V pueda leer.

Lo he hecho con éxito usando el siguiente circuito, que me dará una lectura en un rango fijo de entradas de voltaje. El circuito es simplemente un voltage divider -> rail-to-rail buffer -> RC filter .

simular este circuito : esquema creado usando CircuitLab

PERO, quiero poder interactuar con sensores con diferentes rangos de voltaje-salida, sin sacrificar la resolución en mi ADC. Es decir, quiero que los diferentes sensores sean compatibles, de modo que la interfaz con un sensor diferente solo requiere que especifique cuál es el rango de salida del sensor en el software del microcontrolador .

Por ejemplo, algunos de los sensores que estoy viendo tienen rangos de salida de:

  • 0-2.5VDC
  • 0-3.3VDC
  • 0-5VDC
  • 0-10VDC
  • 0-12VDC
  • 0-24VDC
  • 4-20mA

Mis pensamientos inmediatos fueron reemplazar una de las resistencias en la red divisora de voltaje con un Digi-Pot, pero los Digi-Pot son de alta precisión (baja tolerancia resistiva). ¿Hay alguna forma barata de lograr esto? (No estoy demasiado preocupado por la complejidad del circuito, solo el costo).

    
pregunta Joe

1 respuesta

1

Podría construir un divisor resistivo programable con una resistencia "superior" fija y varias resistencias "inferiores" conectadas a GND a través de FET. El MCU controlaría los FETs. Por supuesto, deberá proteger el circuito si el voltaje es demasiado alto o si se selecciona la configuración incorrecta.

simular este circuito : esquema creado usando CircuitLab

    
respondido por el filo

Lea otras preguntas en las etiquetas