Archivo de la categoría: Servo

Servo con Arduino

Servo es un tipo de motor DC con reductora que sólo puede girar 180 grados. Se controla mediante el envío de impulsos eléctricos de Arduino. Estos pulsos le dice al servo a qué posición se debe mover.

Un servomotor está formado por un motor de corriente continua, una caja reductora, un juego de engranajes, un potenciómetro y un circuito de control. Puede aguantar cierto peso a través del par o torque del servo indicado en sus características. Normalmente se indica con Kg/cm, que quiere decir los kilos que aguanta a 1 cm de distancia.

Para controlar un servo, se usa el PWM. La mayoría trabaja en una frecuencia de 50 Hz (20ms). Cuando se manda un pulso, la anchura de este determina la posición angular del servo. La anchura varía según el servomotor pero normalmente es entre 0,5ms a 2,5ms.

El Arduino utiliza la librería <Servo.h> para controlar los servos y usa las siguientes funciones:

Todos los servos tienen 3 cables de conexión uno para positivo DC (normalmente 5-6V), otro para masa y el tercero para la señal.

Los tamaños de los servos son:

Servo de rotación continua

Un servo de rotación continua es un motor cuyo circuito electrónico nos permite controlar la dirección de giro. A diferencia del servos anteriormente mencionados, no se detiene en una posición, sino que gira continuamente. Son muy utilizados en robótica y en muchas aplicaciones electrónicas, como en lectores de DVD.

En un servo de rotación continua, la función write() configura la velocidad del servo en lugar del ángulo de posición. En este caso 0 es máxima velocidad en giro contrario al sentido horario, 180 es máxima velocidad en sentido horario y 90 motor parado.

Trucar un servo a rotación continua: http://www.ardumania.es/trucar-servo-a-rotacion-continua/

Librerías Arduino Instaladas

Las librerías son trozos de código reutilizables hechos por terceros que usamos en nuestro sketch. Esto nos facilita mucho la programación y hace que nuestro programa sea más sencillo de hacer y de entender. En este curso no veremos como hacer o modificar una librería pero debemos ser capaces de buscar una librería, instalarla, aprender a usar cualquier librería y usarla en un sketch.

Las librerías son entre otras cosas colecciones de código que facilitan la interconexión de sensores, pantallas, módulos electrónicos, etc. El entorno de arduino ya incluye algunas librerías de manera que facilita, por ejemplo, mostrar texto en pantallas LCD.

Varias librerías vienen instaladas con el IDE, pero también puede descargar o crear las suyas propias. Las librerías instaladas en el IDE de Arduino son: https://www.arduino.cc/en/Reference/Libraries entre ellas la librería servo https://www.arduino.cc/en/Reference/Servo

Para añadir una librería a nuestro proyecto simplemente se añade a nuestro código la palabra clave #include seguido del nombre de la librería entre los caracteres “<” y “>”.

Esto también se puede hacer desde el IDE en el menú Programa – Incluir Librería y seleccionar la librería que deseamos incluir y está instalada.

Ejemplo de Uso de Servo con Arduino

Conexión servo:

Servo SG90 pinout:

Se usa la librería Servo https://www.arduino.cc/en/Reference/Servo instalada por defecto en el IDE de Arduino.

Instalar el código: https://github.com/jecrespo/Arduino-Kit-China-Guide/blob/master/05-Servo/servo/servo.ino

Ver en Serial plotter el ángulo en el que se mueve y cambiar el delay para que vaya más rápido o lento.