8 votos

Aclaración de ejemplo de entrada análoga de Arduino

Primero de todo, estoy total protuberancia en la electrónica.

Recientemente recibí un Arduino Nano. Ahora estoy tratando de entender por qué no hay ningún potenciómetro de valor nominal http://arduino.cc/en/Tutorial/ReadAnalogVoltage ejemplo y cómo la variación de esta nominal afectaría a la entrada Analógica de las lecturas.

También por qué en http://arduino.cc/en/Tutorial/AnalogReadSerial ejemplo escogieron potenciómetro de 10k, ¿qué sería diferente con 200k potenciómetro.

Gracias!

12voto

SandeepJ Puntos 1339

No habría ninguna diferencia en el limpiaparabrisas de voltaje de salida de de (descarga) potenciómetro, todos ellos funcionan de la misma manera.

Sin embargo, la entrada analógica a la placa Arduino recomienda una fuente de impedancia de menos de 10k ohm, para un rendimiento óptimo. Esto es debido a que el tiempo que se tarda en cargar la muestra y retención del condensador, que puede ser visto como una dinámica de impedancia. La siguiente imagen es tomada de la AtMega328 hoja de datos (el microcontrolador Arduino está basado alrededor):

Analogue input impedance

No se preocupe demasiado si usted no entiende esto ahora mismo, acaba de aceptar que necesitamos una fuente de impedancia de menos de 10kOhms.

Ahora, ¿cómo podemos calcular la impedancia de salida de un potenciómetro?

Para los detalles, vea en Thevenin equivalente de impedancia. Esto nos dice que el máximo de la resistencia de salida de la escobilla de un bote es de 1/4 de su resistencia mide desde la parte superior a la inferior (cuando el limpiaparabrisas está en el centro), Así que si tu olla es de 10k, entonces la máxima resistencia de salida es de 2,5 k.
Aquí es una simulación de un 10k pot ser arrastrado de un extremo al otro:

Pot Sim

El eje X representa la rotación de 0 a 100% (ignorar los valores reales se muestra) El eje Y es la impedancia de salida medido en el limpiaparabrisas. Podemos ver cómo se inicia y termina en 0 ohmios y picos de 2.5 ohm en la mitad (50%)
Este es cómodamente menor que la recomendada impedancia de la fuente de 10k.
Así, se puede usar cualquier valor del bote entre por ejemplo, 100 ohmios y 40k como su divisor de voltaje.

EDITAR - para responder a la pregunta acerca de ¿qué pasa si utilizamos un 200k bote:

Como se dice en el extracto de hoja de datos, mayor es la impedancia de la fuente, el más largo es el S/H condensador de toma a cargo. Si no está completamente cargada antes de la lectura, la lectura mostrará un error en comparación con el verdadero valor.

Podemos averiguar el tiempo en que el condensador debe cobrar el 90% de su valor final, la fórmula es:

2.3 * R * C

Después de 1 RC constante de tiempo de la tensión se encuentra en ~63% de su valor final. Después de 2.3 constantes de tiempo es en ~90% como en el anterior. Esto es calculado 1 - (1 / e^(RC/t)) donde e es el logaritmo natural ~2.718. Por ejemplo 2.3 constantes de tiempo sería 1 - (1 / e^2.3) = 0.8997.

Así que si sustituimos en los valores que se muestran - 50k impedancia de la fuente, 100k impedancia en serie (supone el peor de los casos) y 14pF capacitancia:

2.3 * 150 kb * 14pF = 4.83 nos cobran a 90%.

También podemos calcular el -3dB valor:

1 / (2pi * 150 kb * 14pF) = 75.8 kHz

Si queremos que el valor final para estar dentro de un 99% tenemos que esperar alrededor de 4.6 tau (constantes de tiempo):

4.6 * 150 kb * 14pF = 9.66 nos a cargo del 99%, lo que corresponde a alrededor de 16.5 kHz

Así podemos ver cómo la mayor es la impedancia de la fuente de el más largo es el tiempo de carga y por lo tanto menor será la frecuencia de leer con precisión por el ADC.

En el caso de un bote de controlar a un ~DC valor, sin embargo, usted puede muestrear a una frecuencia muy baja y le dan un montón de tiempo de carga, como la fuga es muy pequeña. Así que creo 200k en realidad debería estar bien en este caso. Por ejemplo, una señal de audio o cualquier variación de (CA) de alta impedancia señal de que usted tendrá que tomar todo lo anterior en cuenta, sin embargo.
Este enlace va a algún buen detalle en el ATMega328 ADC características.

6voto

lillq Puntos 4161

Oli mostró que la información en la hoja de datos, aunque si eres nuevo en esto su explicación puede ser un poco por encima de su cabeza.

El ADC (Analog-to-Digital Converter) tiene un pequeño condensador, el cual tiene la entrada analógica de tensión. Que el condensador se carga a través de la resistencia en la entrada. Una alta resistencia a carga del condensador más lentamente. 10 kΩ se recomienda como máximo, por lo que el uso de un potmeter de que el valor es OK. Oli 40 kΩ, como máximo, es correcto, pero que se pondrá de manifiesto a medida que aprende acerca de Thévenin.

1voto

Pent Ploompuu Puntos 4120

En mi experiencia con los Arduinos, con potenciómetros más allá de 10k, las lecturas fluctuará. Como resuelvo esto poniendo un condensador de .1uf entre el limpiaparabrisas y la tierra. Esto mantiene el voltaje constante para analogreads. Usando el condensador, he utilizado botes hasta 1 MegaOhm y obtener lecturas sólidas y estable.

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