MÓDULO SERVOMOTOR

Introducción

Los servomotores, también llamados servos, son motores de corriente continua cuyo eje tiene la capacidad de girar un número de grados variable, según sea la anchura de una señal aplicada al terminal de control del mismo, así como de controlar su velocidad. Para mantener la posición es necesario el envío continuo de un tren de pulsos con la anchura adecuada.

Las aplicaciones más comunes de los servos van desde el aeromodelismo hasta la robótica y la automática, ya que se poseen una gran precisión en el posicionamiento.

            Existen dos tipos de servomotores, los analógicos y los digitales. Ambos tienen una misma base constructiva:

 

La diferencia entre ambos servos radica en la inclusión de un microprocesador en el control del servo digital, el cual se encarga de procesar la señal de control con una frecuencia 10 veces mayor que la de un servo analógico. Este aumento se traduce en una disminución del tiempo de respuesta, aumento de la resolución, mayor suavidad en el movimiento, así como posibilidad de configuración de algunos parámetros que son fijos en los servos analógicos (sentido de giro, posición central al inicio, etc.).

Aunque todo parecen ventajas en los servos digitales, también poseen algunos inconvenientes que no deben ser obviados a la hora de su utilización, como por ejemplo un mayor del consumo (necesidad de generar más pulsos) y la necesidad de programarlos con los  dispositivos específicos de cada marca.

 

Control del servomotor

Los servos tienen tres cables para su funcionamiento. Dos de ellos son necesarios para conseguir la alimentación del servo y el tercero sirve para su control.

La tensión de alimentación puede variar normalmente entre 4.8 y 6 voltios de corriente continua  obteniendo velocidades y torques (pares) diferentes para cada tensión. Los colores de estos cables pueden variar según el fabricante.

Figura 56: Códigos de colores según fabricante

 

            El cable de control, cuyo color también varía según el fabricante, sirve para obtener una posición determinada según una señal PWM (“Pulse Width Modulation”) introducida.

La señal PWM que debemos enviar al servomotor debe tener una frecuencia de 50 Hz, esto es, cada 20 milisegundos. La anchura de cada pulso determinará la posición que conseguirá el servo en cada instante. Los valores máximos y mínimos de esta anchura de pulso varían dependiendo de la marca del servo, por tanto, es fundamental realizar pruebas que determinen exactamente estos valores. Unos valores habituales están entre 0.5 y 2.5 ms

 


Figura 57: Posición -90º

Figura 58: Posición 0º

 

Figura 59: posición +90º


 

SERVOMOTOR S125 de GWS

            Para el posicionamiento en el plano horizontal hemos decidido utilizar el servo S125 (1T) del fabricante GWS con posibilidad de giro de 0º a 360º, utilizado comúnmente en aplicaciones de modelismo de barcos a vela.

            Según la tensión aplicada variará el tiempo que tarda en realizar el giro deseado. En nuestro caso, con una tensión de 5v tardará 1,56 segundos en realizar un giro de 360º. En el caso de una rotación de 60º el tiempo invertido es de 0,26 seg.

 

Figura 60: Servo GWS S125T

           

Mediante una serie de pruebas hemos testado el servo obteniéndose los siguientes resultados:

 

El procedimiento que se ha diseñado para situar al servo en una posición solicitada (anguloH) es calcular la anchura del pulso que hay que enviar por la señal de control al servo y que se corresponde con la siguiente expresión:

AnchuraPulsoH = minPulseH + (anguloH*IncremxgradoH)

 

Para conectar este servo a la placa principal se ha utilizado un conector de tres pines macho cuya conexión viene reflejada en la siguiente tabla:

 

Figura: Conexión Servo Horizontal/aplicación

 

PIN

SEÑAL

DESCRIPCIÓN

1

CTRL_MOTOR_H

Señal de control del servo H

2

GND

Tierra (0 v)

3

Vmotor

Alimentación del servo (5 v)

Tabla: Pines Servo Horizontal

 

 

 

 

 

 

 

 

SERVOMOTOR FUTAWA S3003

            Este servo tiene un rango de movimiento de +/- 90º.

 

 

 

 

 

Figura 62: Servomotor Futaba S3003

 

Este servomotor realiza un giro de 60º en 0,23 segundos cuando le aplicamos una tensión de 4.8 v reales.

Mediante una serie de pruebas hemos testado el servo obteniéndose los siguientes resultados:

 

De igual manera que con el servo horizontal, el algoritmo que se ha diseñado para situar al servo en una posición dada (anguloV) es calcular la anchura del pulso que hay que enviarle por la señal de control y que se corresponde con la siguiente expresión:

AnchuraPulsoV = minPulseV + (anguloV*IncremxgradoV)

 

Figura: Conexión Servo vertical/aplicación

 

Para el servomotor con movimiento vertical

PIN

SEÑAL

DESCRIPCIÓN

1

CTRL_MOTOR_V

Señal de control del servo V

2

GND

Tierra (0 v)

3

Vmotor

Alimentación del servo (5 v)

Tabla: Pines Servo Vertical