7 - Potenciómetros como Entrada de Control
7. Potenciómetros como Entrada de Control
Este documento describe el uso de un potenciómetro como un dispositivo de entrada interactivo para controlar un servomotor, una aplicación fundamental en la robótica y la electrónica.
1. El Potenciómetro: Una Resistencia Variable
Un potenciómetro es un tipo de resistencia variable que se utiliza para controlar el flujo de corriente en un circuito. Es un componente que tiene una perilla o un eje que se puede girar. Al girar este eje, la resistencia eléctrica del componente cambia, lo que a su vez afecta la cantidad de voltaje que pasa a través de él.
Partes Principales:
Un potenciómetro tiene tres terminales: dos terminales exteriores que se conectan a la fuente de voltaje y a tierra, y una terminal central que se conecta a la entrada de un microcontrolador.
2. Conexión de un Potenciómetro a Arduino
El potenciómetro es un dispositivo analógico, lo que significa que genera un rango de valores de voltaje, no solo HIGH o LOW. Por esta razón, debe conectarse a un pin analógico de Arduino. Los pines analógicos de Arduino están marcados con la letra A (ej., A0, A1, A2, etc.).
Diagrama de Conexión:
● Terminal Exterior (izquierda): Se conecta al pin de 5V de Arduino.
● Terminal Exterior (derecha): Se conecta al pin de GND (tierra) de Arduino.
● Terminal Central (del medio): Se conecta a un pin de entrada analógica de Arduino, por ejemplo, el pin A0.
3. Lectura de un Valor Analógico
Para leer el valor que el potenciómetro envía a Arduino, se utiliza la función analogRead().
● analogRead(pin): Esta función lee el voltaje en el pin analógico especificado. La lectura se traduce en un valor numérico entre 0 y 1023, donde 0 corresponde a 0V y 1023 corresponde a 5V.
El valor que se obtiene de analogRead() es un dato fundamental para controlar el servomotor.
4. Mapeo de Valores (La Función map)
El servomotor se controla con un ángulo entre 0 y 180 grados, mientras que el potenciómetro genera un valor entre 0 y 1023. Para que el valor del potenciómetro pueda controlar el ángulo del servomotor, se debe mapear o escalar el rango de valores.
La función map() de Arduino es ideal para esta tarea. Su sintaxis es la siguiente:
● valor: El valor que se quiere mapear (la lectura del potenciómetro).map(valor, desde_min, desde_max, hasta_min, hasta_max)
● desde_min: El valor mínimo del rango de origen (0 para el potenciómetro).
● desde_max: El valor máximo del rango de origen (1023 para el potenciómetro).
● hasta_min: El valor mínimo del rango de destino (0 para el servomotor).
● hasta_max: El valor máximo del rango de destino (180 para el servomotor).
5. Código para el Control del Servomotor
A continuación, se presenta un código que utiliza la lectura del potenciómetro para controlar la posición angular de un servomotor.
Acercamiento del código, si no se puede leer alguna parte del código anterior :
6. Conclusión
El potenciómetro es un dispositivo fundamental en la robótica y la electrónica para el control interactivo y analógico. Al combinar la lectura del valor analógico con la función map(), se puede crear un control intuitivo y manual sobre un servomotor, lo que es la base para aplicaciones como la manipulación de brazos robóticos.
referencias:
https://www.ariat-tech.es/blog/the-structure,function,and-common-types-of-potentiometers.html
Comentarios
Publicar un comentario