Aclaración del ejemplo de entrada analógica de Arduino

En primer lugar, soy un experto en electrónica.

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

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

¡Gracias!

Respuestas (3)

No habría diferencia en la salida de voltaje del limpiaparabrisas de cualquier potenciómetro (descargado), todos funcionan de la misma manera.

Sin embargo, la entrada analógica de su Arduino recomienda una fuente de impedancia de menos de 10kOhm, para un rendimiento óptimo. Esto se debe al tiempo que se tarda en cargar el condensador de muestreo y retención, que puede verse como una impedancia dinámica . La siguiente imagen está tomada de la hoja de datos AtMega328 (el microcontrolador en el que se basa Arduino):

Impedancia de entrada analógica

No se preocupe demasiado si no comprende completamente esto en este momento, solo acepte que necesitamos una impedancia de fuente de menos de 10kOhms.

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

Para conocer los detalles, consulte la impedancia equivalente de Thevenin . Esto nos dice que la resistencia de salida máxima del limpiaparabrisas de un potenciómetro es 1/4 de su resistencia medida de arriba a abajo (cuando el limpiaparabrisas está en el centro). Entonces, si tu potenciómetro es de 10k, entonces la resistencia de salida máxima es de 2,5k. .
Aquí hay una simulación de un bote de 10k que se barre de un extremo al otro:

Simulador de bote

El eje X representa la rotación de 0 a 100 % (ignore los valores reales que se muestran). El eje Y es la impedancia de salida medida en el limpiaparabrisas. Podemos ver cómo comienza y termina en 0 ohmios y alcanza un máximo de 2,5 kOhmios en el medio (50 %).
Esto es cómodamente inferior a la impedancia de fuente recomendada de 10 k.
Por lo tanto, puede usar cualquier valor de potenciómetro entre, por ejemplo, 100 ohmios y 40k como divisor de voltaje.

EDITAR: para responder a la pregunta sobre qué sucede si usamos un bote de 200k:

Como dice en el extracto de la hoja de datos, cuanto mayor sea la impedancia de la fuente, más tiempo tardará en cargarse el condensador S/H. Si no está completamente cargado antes de tomar la lectura, la lectura mostrará un error en comparación con el valor real.

Podemos calcular cuánto tiempo necesita el capacitor para cargarse al 90% de su valor final, la fórmula es:

2.3 * R * C

Después de 1 constante de tiempo RC, el voltaje está en ~ 63% de su valor final. Después de 2.3 constantes de tiempo, está en ~ 90% como arriba. Esto se calcula por 1 - (1 / e^(RC/t)) donde e es el logaritmo natural ~2.718. Por ejemplo, para 2,3 constantes de tiempo sería 1 - (1 / e^2,3) = 0,8997.

Entonces, si conectamos los valores que se muestran: impedancia de fuente de 50k, impedancia en serie de 100k (supongamos el peor de los casos) y capacitancia de 14pF:

2.3 * 150k * 14pF = 4.83us para cargar al 90%.

También podemos calcular el valor de -3dB:

1 / (2pi * 150k * 14pF) = 75,8 kHz

Si queremos que el valor final esté dentro del 99% tenemos que esperar alrededor de 4,6 tau (constantes de tiempo):

4.6 * 150k * 14pF = 9.66us para cargar al 99% - esto corresponde a alrededor de 16.5kHz

Entonces podemos ver cómo cuanto mayor es la impedancia de la fuente, mayor es el tiempo de carga y, por lo tanto, menor es la frecuencia leída con precisión por el ADC.

Sin embargo, en el caso de un potenciómetro que controle un valor ~DC, puede muestrear a una frecuencia muy baja y darle suficiente tiempo para que se cargue, ya que la fuga es muy pequeña. Así que creo que 200k debería estar bien en este caso. Por ejemplo, para una señal de audio o cualquier señal de alta impedancia variable (CA), deberá tener en cuenta todo lo anterior.
Este enlace entra en buenos detalles sobre las características del ADC ATMega328.

¡Muchas gracias por la explicación detallada! ¿Puede aclarar cómo un potenciómetro superior a 40 kΩ afectaría las lecturas digitales? Por ejemplo, multipliquemos por 5 para que el potenciómetro sea de 200 kΩ.
@AB: agregué algunos detalles más, espero que ayude. Me di cuenta de que el bote en su pregunta solo se usa para variar el valor de CC (no para controlar el nivel de una señal de CA), por lo que un valor más alto debería estar bien. Puede hacer algunas de sus propias pruebas sobre el efecto de aumentar la impedancia de la fuente >> 10k si tiene un voltaje conocido y varía la resistencia en serie.

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

El ADC (convertidor analógico a digital) tiene un pequeño capacitor que mantiene el voltaje de entrada analógico. Ese condensador se carga a través de la resistencia en la entrada. Una alta resistencia cargará el capacitor más lentamente. Se recomienda 10 kΩ como máximo, por lo que está bien usar un potenciómetro de ese valor. Los 40 kΩ de Oli como máximo son correctos, pero eso quedará claro a medida que aprenda sobre Thévenin.

En mi experiencia con Arduinos, con potenciómetros más allá de 10k, las lecturas fluctuarán. Resuelvo esto poniendo un capacitor de .1uf entre el limpiaparabrisas y tierra. Esto mantiene el voltaje constante para lecturas analógicas. Al usar el capacitor, he usado potenciómetros de hasta 1 megaohmio y obtuve lecturas sólidas y constantes.

Me gusta esto porque el capacitor paralelo de .1uF asegura una fuente de baja impedancia después de que se cambia el pin de entrada. 0.1uF / 14pf = 7142, y la resolución de adc(10bit) es 1 en 1023. Con potenciómetros extremadamente grandes, habrá un ligero retraso entre establecer y estabilizar el voltaje en el pin de entrada, pero es poco probable que se note. 4Mohm pot es 1Mohm imp. * 0.1uF = 0.1 seg. Entonces en 0.46 seg. ¡tu valor se liquida al 99% del cambio!
Lo siento si esto parece tonto, pero ¿qué sucede si el voltaje está cayendo?