martes, 6 de septiembre de 2016

USO DEL SERVO MOTOR

Al explicar el termino Servomotor, podemos llegar a una conclusión simple como lo es un “Motor auxiliar para aumentar automáticamente la energía disponible cuando conviene”. Sin embargo, este concepto puede llegar a ser más complejo, como un tipo especial de motor de c.c. que se identifican por su capacidad para posicionarse de forma inmediata en cualquier lugar dentro de su intervalo de operación.  Es decir, un servo es un dispositivo con un eje de rendimiento controlado ya que puede ser llevado a posiciones angulares específicas al enviar una señal codificada.

Ilustración 1Servomotor HS-311 resacatado de http://www.servodatabase.com/servo/hitec/hs-311

Antes de la práctica, es necesario conocer el funcionamiento del servomotor. Para su funcionamiento se necesita una señal codificada en la línea de entrada, el servo mantendrá la posición angular del engranaje. En este caso si la señala codificada cambia, la posición angular de los piñones cambia. Uno de los ejemplos del uso de servomotores son para posicionar elementos de control como palancas, pequeños ascensores y timones. También se usan en radio-control, marionetas y en robots.








El modelo HS-311 se basa en las siguientes especificaciones:
Modulation:
Analog
Torque:
4.8V: 42.00 oz-in (3.02 kg-cm)
6.0V: 49.00 oz-in (3.53 kg-cm)
Speed:
4.8V: 0.19 sec/60°
6.0V: 0.15 sec/60°
Weight:
1.51 oz (42.8 g)
Dimensions:
Length:1.57 in (39.9 mm)
Width:0.78 in (19.8 mm)
Height:1.43 in (36.3 mm)
Motor Type:
3-pole
Gear Type:
Plastic
Rotation/Support:
Bushing
Rotational Range:
180°
Pulse Cycle:
20 ms
Pulse Width:
900-2100 µs
Connector Type:
Universal





PROGRAMACION Y CIERCUITO USADA PARA EL EMPLEO DE SERVOMOTOR SIN BLUETOOTH
·         Cable rojo del servo motor es el positivo y va conectado al pin de 5V del arduino. EN caso de estar ocupado conéctelo al protoboard para tener más salidas de 5v.
·         Cable negro del servo motor es el negativo puede ir conectado directamente al GND del Arduino o al protoboard donde tiene todas las GNDs referenciadas.
·         Cable amarillo del servo motor al PIN 9 del Arduino o a cualquiera de los PINs marcados como PWM (Pulse Width Modulation, o modulación por ancho de pulsos), es por este cable donde se enviará la señal de control al servo motor para que vaya de 0º a 180º.
Ilustración 2Conexion solo con servomotor rescatado de http://moodle.copol.edu.ec/mod/page/view.php?id=19198

PROGRAMACION

#include <Servo.h>

Servo myservo;  //crea un referencia al servo motor

int pos = 0;    //posición inicial del servo
int positions[] = {0, 45, 90, 135, 180};  //posiciones (en grados) para moverse
int numPositions = 5; //cantidad de posiciones disponibles

void setup()
{
  //control servo motor via pin 9
  myservo.attach(9, 650, 2350);
  Serial.begin(9600);
}

void loop()
{
  int i = 0;
  //cambia de posiciones
  for(i = 0; i < numPositions; i++)
  {        
    pos = positions[i];

    //print debug output
    Serial.println("SETTING:");
    Serial.println(pos);

    //cambio de posicion del servo a una nueva
    myservo.write(pos);

    //espero dos segundos
    delay(2000);
  }
}

PROGRAMACION Y CIERCUITO USADA PARA EL EMPLEO DE SERVOMOTOR CON BLUETOOTH
REFERENCIAS: