Servos Futaba 3003

De WikiRobotics
Revisión del 08:06 30 nov 2009 de Obijuan (Discusión | contribuciones) (Ejemplo 1: Movimiento alternativo de dos servos)

Saltar a: navegación, buscar
Foto del servo

Introducción

Los servos se emplean mucho en aplicaciones de robótica. En este cuaderno nos centraremos en uno de los más comunes y usados: los Futaba 3003.

Tienen dos tipos de aplicaciones. Por un lado se pueden "trucar" y convertir en motores de corriente contínua , para construir robots móviles, como por ejemplo el robot de iniciación a la robótica Skybot. Por otro lado se emplean como articulaciones para construir robots articulados, como el perro Puchobot, el gusano Cube Revolutions o el hexápodo Sheila.

Pucho-peq2.png Sheila-peq2.png
Puchobot
Cube Revolutions
Sheila

Características

Velocidad: 0.23 seg/60 grados (260 grados/seg)
Par de salida: 3.2 Kg-cm (0.314 N.m)
Dimensiones: 40.4 x 19.8 x 36 mm
Peso: 37.2 gr
Frec. PWM 50Hz (20ms)
Rango giro: 180 grados

Control

Señal de PWM (click para ampliar)

Los servos se controlan aplicando una señal PWM por su cable de control. Las señales PWM (Pulse Width Modulation, Modulación por anchura de pulso) son digitales (pueden valer 0 ó 1) y permiten que usando un único pin de un microcontrolador podamos posicionar el servo. Esto es una gran ventaja, porque si por ejemplo, disponemos de un micro con 8 pines de salida, podremos posicionar 8 servos.

Para posicionar el servo hay que aplicar una señal periódica, de 50Hz (20ms de periodo). La anchura del pulso determina la posición del servo. Si la anchura es de 2.3ms, el servo se sitúa en un extremo y si la anchura es de 0.3ms se sitúa en el opuesto. Cualquier otra anchura entre 0.3 y 2.3 sitúa el servo en una posición comprendida entre un extremo y otro. Por ejemplo, si queremos que se sitúe exactamente en el centro, aplicamos una anchura de 1.3ms.

Cuando se deja de enviar la señal, el servo entra en un estado de reposo, en el que no aplica ninguna fuerza y por tanto se podrá mover con la mano. Mientras se le aplique la señal, permanecerá fijado en su posición, haciendo fuerza para permanecer en ella.

Ejemplos para tarjeta Skypic

Ejemplos de cómo posicionar servos Futaba 3003 usando un PIC16F876A. Se utiliza la tarjeta Skypic y el compilador de C SDCC

Ejemplo 1: Movimiento alternativo de dos servos

Ejemplo de control de servos mediante interrupciones. Se utiliza el timer 0. En el ejemplo, sólo se posiciona los servos 1 y 2, pero se pueden controlar hasta 8.

servo8-int.c servo8-int.hex Control de hasta 8 servos. Movimiento alternativo de los servo 1 y 2
  • Compilación:
sdcc -mpic14 -p16f876a -Wl-m -Wl-ainhx8m servo8-int.c

Ejemplo 2: Movimiento de hasta 8 servos a traves del puerto serie

servos-sci.c servos-sci.hex El usuario puede establecer la posición de los 8 servos mediante comandos ASCII por el puerto serie

Conexionado

Conector del servo

El servo dispone de un conector al que llegan tres cables. El rojo es el de alimentación (4.5-6 voltios). El negro es masa. Y el blanco es el de la señal de control

Enlaces

Descargas

Autores

Licencia

Cc logo.png This work is licensed under a Creative Commons Attribution-ShareAlike 3.0 Spain License.
150px El código está liberado bajo licencia GPLv3

Noticias