6 votos

¿Funcionará este circuito ADC como se pretende?

Aquí está la revisión 6 del circuito. ¿Cómo se ve? :)

(Este es un circuito de ohmímetro. Mide resistencias de 1 a 10M ohm con una precisión del 1%. La resistencia (no mostrada) se mide entre J5 y J6. El comparador va al pin de activación de un uC. El uC entonces se despierta y toma una lectura usando la interfaz SPI en el ADC. )

enter image description here

10voto

lillq Puntos 4161

Vref
Como utilizas el mismo voltaje para el divisor de resistencias y la Vref, la lectura del ADC será independiente de ese voltaje: si tu lectura del ADC es 123 a 3,3 V, también será 123 a 3,0 V. Así que el valor absoluto de la Vref no es realmente importante.

Sin embargo, es una buena idea tener una Vref que sea independiente de otros circuitos. En tu esquema los 3,3 V también se utilizan para alimentar el comparador y el ADC. Yo al menos usaría un filtro RC para obtener Vref de esos 3,3 V. Como he dicho el valor real de Vref no es importante, así que puedes permitirte alguna caída de voltaje a través de la resistencia, permitiendo una frecuencia de corte más baja.

Comparador
Es posible que su comparador no funcione. Su tensión de referencia está en 0 V, que es la tensión más baja del circuito. Muchos comparadores tienen una histéresis incorporada, lo que significa que el + entrada tendrá que ir un poco por debajo de la - entrada para que la salida vuelva a ser baja, y no se puede hacer eso. Utiliza un divisor de resistencias para llevar el umbral un poco más alto, como alrededor de 50 mV.

1 % de precisión
Lo siento, pero esto no funcionará en absoluto. Para el rango de 1 Ω tienes un divisor de resistencias de (10 kΩ + 1 Ω) | 100 kΩ. El 1 Ω es el 0,01 % de los 10 kΩ con los que está en serie; si quieres conocerlo con una precisión del 1 % tendrás que empezar por conocer el valor de los 10 kΩ con una precisión de 1 ppm. Un cambio de temperatura de 1 °C ya ahogará el valor de 1 Ω.

También el rango de 1 Ω - 10 MΩ es demasiado grande para un solo divisor.

enter image description here

Este gráfico muestra la salida del divisor en relación con la escala completa del ADC. Observe que la lectura apenas cambia entre 1 Ω y 1 kΩ. Incluso con un ADC de 22 bits de precisión, una resistencia de 1 Ω y otra de 1,03 Ω darán la misma lectura. Ten en cuenta que una resolución de 22 bits no significa una precisión de 22 bits. Lee la hoja de datos del ADC, y date cuenta de que 1 LSB es 0,25 ppm. Entonces todo importa: esa traza de 5 cm de PCB puede introducir más de un error de LSB, por ejemplo. Un ADC de 22 bits no ayuda aquí. Yo utilizaría diferentes divisores para cada década.

editar sobre el circuito actualizado
Tienes R1, R5, R7, R9 y R13 todos en paralelo dando un equivalente a una sola resistencia de 9 &Omega. Quería añadir esto sobre tu R1 en el circuito original pero lo olvidé. No sirve para nada, sólo reduce el rango de medición para resistencias bajas en un 10%. Puedes ver en los gráficos que sólo llegas al 90 % de FS, y R1 es responsable de eso. Deséchalo. Así que eso va para los otros que resumí también.
R2 siempre estará en paralelo con una de las otras resistencias, por lo que hay que cambiarla también o quitarla.

El voltaje de tu divisor de resistencias sigue conectado a Vcc. Para que las mediciones sean independientes de la tensión debe estar conectado a Vref.

El Si5406 que utiliza es bueno: tiene un bajo \$V_{GS(th)}\$ y \$R_{DS(ON)}\$ . Sin embargo, tenga en cuenta que tiene una corriente de fuga de hasta 1 µA, que distorsionará especialmente sus mediciones de alta resistencia. (Es una de las cosas que hace que las mediciones de precisión sean tan difíciles). Otros FETs no lo hacen mucho mejor, sin embargo: incluso los llamados FETs de "baja fuga" pueden tener un valor alrededor de eso, aunque a mayor \$V_{DS}\$ . Una solución puede ser utilizar relés de láminas en lugar de FETs.

editar: Puesta a punto y algunas reflexiones finales
Lo sé, añadir el FET U10 fue mi sugerencia, pero he cambiado de opinión: vamos a quitarlo de nuevo, y usar una resistencia fija de 1 MΩ allí. No sólo nos ahorra una parte, sino que también estaba la corriente de fuga del FET: no tenemos un buen valor para la resistencia equivalente que representa, y cuando usamos una resistencia fija sabemos lo que tenemos.

También he jugado un poco con los diferentes divisores, y he descubierto que sólo necesitamos dos: el de 100 Ω y el de 10 kΩ.

enter image description here

La parte izquierda del gráfico muestra la entrada del ADC en relación con el FS con U6 encendida, la parte central con U8 encendida y la parte derecha sin ninguna de las dos, sólo con el R2 fijo de 1 MΩ.

enter image description here

Este gráfico muestra la diferencia en la lectura del ADC para una diferencia del 1 % en el valor de la resistencia. Por ejemplo, una resistencia de 100 Ω y una de 101 Ω dan una diferencia de 10 000 cuentas, ¡eso es más de 13 bits! Incluso en el peor de los casos, para 1 Ω y 10 MΩ la diferencia es de más de 256 cuentas, o 8 bits. Esto significa que aquí también podríamos haber utilizado un ADC de 14 bits. Sin embargo, el de 22 bits no está mal: es un sigma-delta, que sufre menos el ruido.

Para conseguir la precisión del 1 % requerida, hay algunas cosas que todavía hay que tener en cuenta. En primer lugar, las resistencias para el divisor tienen que ser piezas de precisión, obviamente: 0.1 %. Todavía hay la corriente de fuga del FET, que puede causar un gran error en los valores de resistencia alta. Mencionas un precio de 5 dólares para el relé de láminas, pero he encontrado algunos, también en Digikey, que sólo cuestan 1 dólar, y ahora sólo necesitarás dos de ellos. Sin embargo, necesitan 5 V, o al menos 3,75 V.

Otras corrientes de fuga. Para el comparador tomar una versión CMOS, entonces la corriente de polarización de entrada será insignificante. Pero el ADC tiene una impedancia de entrada diferencial de 2,4 MΩ típica. Si fuera una resistencia fija podríamos simplemente tomarla en los cálculos, pero es muy desconocida, así que mejor usamos un opamp de buffer CMOS para la señal allí también.

editar re revisión 4
Si intercambias las entradas del comparador no necesitarás el inversor, y la resistencia pull-up R14 tampoco es necesaria si utilizas un comparador MCP6541, que tiene una salida push-pull.

Estoy un poco confundido con los buffers 74ABP04 para manejar los relés. Los números de pin no coinciden con el hoja de datos y los pines 1 y 4 parecen pines de habilitación, que el '04 no tiene. Yo habría utilizado NPN común transistores allí de todos modos ya que son mucho más baratos. Sólo necesitarías P1.2 y P1.11. Las resistencias de base de 4,7 kΩ te darán una corriente de base de 0,5 mA, suficiente para los relés de láminas. No olvides los diodos a través de las bobinas de los relés.

El voltaje de offset del opampón de amortiguación es, efectivamente, un problema. He encontrado el MCP6071 que tiene una corriente de polarización de entrada muy baja (1 pA típica, 100 pA máxima), pero la tensión de offset sigue siendo de 150 µV. La retroalimentación de la salida a la entrada inversora también debería tener la misma impedancia que la de la entrada no inversora, pero no es constante. Puedes recortar el offset con un potenciómetro y una resistencia en serie alta como 100 kΩ a la entrada inversora.

No olvides los condensadores de desacoplamiento para las fuentes de alimentación del comparador y del ADC.

editar re revisión 5
Ya casi está. Las resistencias en serie con los relés no son necesarias; la resistencia de la bobina del relé limita la corriente, y además, la resistencia en serie bajará el voltaje de la bobina para que el relé pueda/no se active. Yo tomaría la entrada del comparador de la salida del buffer, para que el divisor de resistencias sólo vea la entrada del buffer. Y el trimmer de offset funcionará, pero será demasiado sensible al más mínimo giro del trimmer. Reduce la sensibilidad colocando una resistencia de 470 kΩ entre el wiper del potenciómetro y la entrada inversora del amplificador.

1voto

kaspnord Puntos 223

Estabilizar la Vref es obligatorio si se quieren lecturas precisas y estables. Además, no veo ningún condensador de desacoplamiento ahí, pero también es cierto que no sé si se trata de otra placa o sólo un trozo de una más grande; aun así, son necesarios. Es posible que la alimentación de los CIs no lo necesite tanto como las sondas, por lo que habría que utilizar un CI estabilizador (LT1084-3.3 por ejemplo). En cuanto a los condensadores para estabilizar, podrías añadir uno en paralelo con R2, pero también con un diodo antiparalelo, un BAT54 servirá (o 1N4148, dependiendo de qué valores mínimos por debajo de GND acepten los CI, consulta sus hojas de datos).

i-Ciencias.com

I-Ciencias es una comunidad de estudiantes y amantes de la ciencia en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X