Source: https://www.mecatronicalatam.com/es/tarjeta/arduino/lectura-de-un-potenciometro
Timestamp: 2018-08-19 18:50:48+00:00

Document:
ARDUINO: LECTURA DE UN POTENCIÓMETRO — MecatrónicaLATAM
NOTA: Debemos de considerar que en el potenciómetro las terminales (pines) de los extremos corresponden a terminales fijas y la central es la terminal variable.
¿Cómo funciona la conversión analógico digital?
Como bien se comentó la resolución de Arduino es de 10 bits eso quiere decir que tenemos un valor máximo de 1024, esta resolución es 2n con n=10 , entre una mayor resolución más exacta será el resultado del sensor.
Vref / 2n-1
Por ejemplo, si tenemos un voltaje de 2.5 volts tendremos un valor en resolución de 10 bits de 512, se preguntarán como sabemos eso, bien tenemos la siguiente formula:
Vrbits * Vref / 2n - 1
Si despejamos al formula tendremos:
V * (2n- 1) / Vref
Como se comentó el voltaje de referencia de Arduino por default es de 5 volts, la resolución es de 10 bits o sea , y queremos saber el valor para 2.5 volts, entonces tendremos:
2.5 * (1024 - 1) / 5.0
= 511.5 ≈ 512
Esto es lo que Arduino hace internamente para realizar la conversión analógico/digital, ahora bien para saber el voltaje aplicamos la segunda fórmula, esto nos servirá para el uso de muchos sensores, claro aplicando lo que dice la hoja de datos del sensor.
Como podemos observar en el esquema de conexión, las terminales de los extremos corresponden a Rmax del potenciómetro y por lo tanto una terminal se conecta a Vcc y la otra terminal a GND.
La terminal central se conecta al pin analógico que vamos a utilizar de nuestra tarjeta Arduino.
La explicación es bastante simple, primero definimos los pines que usaremos y las variables para almacenar los valores, esto ya se ha hecho muchas veces anteriormente así que no se entrará en detalles.
Después en el setup inicializamos el pin como entrada, muchos no hacen eso ya que por default los pines analógicos ya están configurados como entrada, pero recordemos que tenemos que aprender a programar de forma limpia y correcta, también cargamos el Serial para la comunicación y poder ver el valor del potenciómetro.
Dentro del loop usamos la función analogRead para poder leer los valores analógicos del pin donde hemos conectado la salida del potenciómetro, ese valor se almacena en la variable LeePot, una vez hecho eso imprimimos el valor usando Serial.println pasándole la variable LeePot como parámetro, solo queda por abrir el monitor serial para visualizar los valores que aparecen al mover el potenciómetro.
Estos valores están en la resolución de 10 bits, para ver el voltaje que nos da simplemente aplicamos la fórmula mencionada al principio de está práctica e imprimimos los valores.
Con esto queda por visto como leer valores analógicos que van de 0 a 5 volts.
ArduinoErick Méndez 29 de abril de 2018 Pulsador, digital

References: resolución 
 resolución 
 resolución 
 resolución 
 resolución 
 resolución