Mapeando un rango de voltaje a todo el rango ADC usando opamps

1

Quiero usar un micro para medir la temperatura usando el sensor PT-1000 para un rango de -40C a 150C. He elaborado este borrador de información, aprecio que una persona profesional pueda confirmar que mis pensamientos están bien antes de pagar mucho por las piezas y el PCB y fallar miserablemente.

El ADC de micro es 3.3V y 12bits. por lo que significa que 0V será 0 y 3.3V serán 4095 (¿en un mundo ideal?)

He comprobado el PT1000 LUT, parece que a -40C tiene 842.7 Ohms y a + 150C tiene 1573.3 Ohms.

así que necesito ajustar este rango para mi entrada de ADC. p.ej. en -40C el ADC debe mostrar 0 y en 150C debe mostrar 4095.

Aquí está el divisor de voltaje inicial, elegí que R25 sea 10k para limitar la corriente y posiblemente también el ruido? por lo tanto, a -40C y + 150C, el voltaje que va a la entrada del primer operador será: $$ {V _ {- 40} = \ frac {3.3 \ times842.7} {10k + 842.7} = 256_ {mV}} $$ $$ {V _ {+ 150} = \ frac {3.3 \ times1573.3} {10k + 1573.3} = 449_ {mV}} $$

Asíquenecesitoasignar256mVa449mVaaproximadamente0Va3.3V,porlotanto,lasetapasdeamplificaciónaquí:

Paraelmapeode-40Ca0Vtengo(noimportalosvaloresenlaimagen,noestánactualizados)R26=33kyR27=2.7k,loquedacomoresultado:$${V_{out}=\frac{3.3\times2.7k}{33k+2.7k}=249_{mV}}$$quees6.4mVmenosde256mV(elegílaresistenciasegúnelrangoE12)

Yfinalmentenecesitounagananciade7.34paraasignar449mVa3.3V:R30(retroalimentación)=68k,R28=10kPorlotanto,ganancia=68k/10k=6.8x

Nuevamente, antes de pagar mucho dinero por PCB y componentes, ¿crees que lograré lo que necesito?

    
pregunta Sean87

1 respuesta

2

No es aconsejable utilizar los 50 mV inferiores y los 50 mV superiores del rango de un ADC a menos que los detalles en la hoja de datos le aseguren que el desplazamiento de cero, el error de ganancia y los errores de referencia permiten el uso de parte de estas regiones . Según mi experiencia, nunca encontrará un ADC que especifique de manera realista 0 a Vref como el rango de entrada completo, incluso si así lo indica en la página 1 de la hoja de datos.

Error de ganancia: -

Errordedesplazamiento:-

Entonces, estime el rango utilizable del ADC y vuelva a trabajar sus fórmulas teniendo en cuenta los errores de compensación del amplificador operacional. Recomendaría usar LTSpice (libre de LTI) para volver a verificar sus valores.

Alternativamente, solo use el rango, es decir, de 256 mV a 449 mV, esto es como un porcentaje de 3.3 voltios (Vref) es 5.8% o, para un ADC de 12 bits, 239 bits de resolución. Esto es 1.26 LSB por grado y si desea más resolución (por supuesto, no precisión) tome varias muestras y promedie. El ruido hará que los valores se desvíen y obtendrá una ganancia de proceso con esta acción que le brinda una resolución significativamente mayor que la que implica 12 bits.

Si no está satisfecho con eso, solo use un amplificador para elevar los 449 mV a aproximadamente 3.25 voltios (una ganancia de 7.238). Tu nuevo mapa será: -

  • 256 mV == > 1.853 V
  • 449 mV == > 3.250 V

Eso usará 1.397 voltios del rango 3V3 del ADC o 9.13 LSB por grado C.

No se obsesione con maximizar el rango e incurrir en errores adicionales debido a las tolerancias de la resistencia, etc. Piense de manera simple y piense en precisión / deriva.

    
respondido por el Andy aka

Lea otras preguntas en las etiquetas