Lecturas diferenciales del ADC con cambio automático de ganancia
Por qué aquí el diferencial gana al single-ended
El truco de la ganancia automática
De cuentas brutas a amperios
I = (raw/65535) · 2 · 0.256 · 200 / 0.06 · 1.02 — de cuentas brutas a voltios en el PGA, a través del acondicionamiento 200:1, dividido por el shunt de 60 mOhm y multiplicado por un factor de calibración de 1.02 medido contra un instrumento de referencia. La caída de tensión en el fusible usa el mismo patrón en A2-A3.Un fragmento de la implementación
Tal cual del ejemplo desplegado en el Raspberry PLC 19R — cópialo libremente:
def create_adc():
i2c = busio.I2C(board.SCL, board.SDA)
ads = ADS.ADS1015(i2c, address=0x48)
return adsEl ejemplo completo es un programa entero — cabecera de conexionado, setup y bucle principal — listo para adaptar a tu aplicación.
Preguntas frecuentes
¿ADS1015 o ADS1115 para esta aplicación?
El ADS1015 (12 bit, 1600 SPS) es suficiente porque la ganancia automática mantiene la señal cerca del fondo de escala. Elige el ADS1115 (16 bit) si necesitas resolver corrientes muy pequeñas sin acondicionamiento externo.
¿Puedo leer ambos pares diferenciales a la vez?
No, el ADS1015 tiene un único conversor multiplexado. El ejemplo lee shunt y caída de tensión secuencialmente; a 1600 SPS ambas lecturas caben con holgura dentro de un ciclo de monitorización de 500 ms.
¿De dónde sale el factor 1.02?
Es una constante de calibración extremo a extremo obtenida comparando la corriente calculada con un medidor de referencia. Absorbe en un solo número la tolerancia del shunt, el error del divisor y el error de ganancia del PGA.