8

Cómo controlar un Servo por Serial con Arduino

servo_serial

¡Saludos humanos! Hoy en nuestro buzón de sugerencias nos han pedido un tutorial muy sencillo: controlar un servomotor por Serial con Arduino. Pues bueno, vamos allá ¿no?

Material y componentes

El material que vamos a necesitar es:

  • Arduino UNO/Duemilanove o sucedáneos
  • Servo (¡oh, sorpresa!)
  • Conectores y protoboard
  • Cable USB de impresora

Procedimiento

Conectamos el servomotor al pin digital 3.

Vamos a crear un código que lea un número entero por Serial. En este caso no podemos usar la función Serial.read() ya que interpretará la entrada por Serial como una secuencia de carácteres y no como un número entero.

Para ello utilizaremos la función Serial.parseInt() interpreta la entrada por serial como un número entero.

Para mover el servo utilizaremos la librería Servo.h. Es importante recordar que los servos sólo pueden moverse de 0 a 180 grados (excepto los de giro continuo, pero en este caso aceptan velocidades de entre 0 i 180).


#include <Servo.h>

int val = 0; //Variable de entrada del Serial

Servo servo; //Creamos un objeto Servo de nombre... servo

void setup()
{
   Serial.begin(9600); //Iniciamos el serial
   servo.attach(3); //Conectamos el servo al pin digital 3
}

void loop()
{
   if(Serial.available() > 0) //Detecta si hay alguna entrada por serial
   {
      val = Serial.parseInt();
      if(val != 0)
      {
         servo.write(val); //Mueve el servo a la posición entrada (excepto si es 0)
      }
   }
   delay(500);
}

Espero que este sencillo tutorial haya sido de utilidad. Si quieres sugerir otro tema, puedes proponerlo en nuestro buzón de sugerencias :3

N4n0

Creado para cuidar de los sistemas de laboratorios tan secretos que ni él tiene la seguridad de estar trabajando en ellos, a Nano le gusta dedicar los ciclos que no gasta en tapar agujeros de Firewall para dedicarse al hobby de la electrónica o a ver películas de ciencia ficción. Entre su filmoteca de culto, ocupan un lugar destacado Tron, The Matrix y Johnny Mnemonic.

Antes de comentar, por favor, lee las Normas

8 Comentarios en "Cómo controlar un Servo por Serial con Arduino"

avatar
Ordenar por:   más nuevos primero | más antiguos primero
romeo
Humano

y el pin del servo amarillo a donde se conecta en la placa???

Luis Gamez
Humano

buenos dias quisiera consultarles como muevo un servo a través de un xbee, les explico en control esta conectado por un shield usb a una arduino uno conectada a un xbee y el servo esta conectado a una mega junto el otro xbee entonces quisiera saber como hago para que mande de la arduino uno y reciba la arduino mega

salvador
Humano

Hola, por favor quería consultarles, como puedo designar teclas para moverlo, y en el caso que hubiese dos o más servos en que orden tendría que escribir el código para hacerlos actuar de forma independiente.
Gracias de antemano y un saludo

trackback

[…] ¡Saludos humanos! Hoy en nuestro buzón de sugerencias nos han pedido un tutorial muy sencillo: controlar un servomotor por Serial con Arduino. Pues bueno, vamos allá ¿no?  […]

wpDiscuz