proyecto brazo robotico con arduino

Proyecto «Brazo robótico con Arduino»

Bienvenidos a un nuevo proyecto con Arduino, en este proyecto veremos como podemos crear un brazo robótico con 3 grados de libertad y una pinza al final con Arduino, además, hablaremos de los diferentes materiales empleados en su construcción, se mostrará un esquema de conexiones y finalmente podréis encontrar el código para poder controlar el brazo robótico.

Materiales

A continuación veremos los diferentes materiales que se van a emplear para realizar nuestro brazo robótico con Arduino y una breve descripción de los mismos. Además, para todos aquellos que estén interesados en realizar el proyecto, pueden pinchar en las imágenes y os llevará a una web donde poder adquirir dichos materiales.

Placa de Arduino UNO: Es el cerebro de nuestro proyecto, encargada de controlar todos los procesos del mismo mediante el código que encontrarás más adelante.

Motor paso a paso: Mediante impulsos eléctricos, es posible controlar el giro del motor, el cual se efectúa de una forma discreta.

Servomotores:  motores de 5v con una reductora, lo que permite un gran manejo de su posición y una gran fuerza para su reducido tamaño.

Protoboard: Tabla con orificios (pines) la cual está conectada internamente y usaremos para realizar nuestras conexiones para el proyecto.

Palos de helado: Usaremos estos palos como estructura para dar forma a nuestra grúa.

Cables con pines: Estos cables tienen unos pines (macho o hembra) los cuales nos permitirán hacer las conexiones entre los diferentes elementos ya mencionados.

Para conocer más a fondo sobre cada uno de los diferentes materiales, puedes visitar la página «materiales» donde se explicará de una forma más extensa el funcionamiento y los posibles usos de cada uno de ellos.

Puedes encontrar más herramientas y materiales que puedas necesitar para tus proyectos AQUÍ.

Componentes necesarios para este proyecto

 

Video explicación del proyecto

Si lo que buscas es ver de una forma mucho más detallada de como realizar este proyecto desde el inicio hasta el final y una explicación del código, a continuación se muestra el video con dicho contenido, mucho mas visual y fácil de comprender. Y recuerda, si te gusta esta clase de contenido, no olvides suscribirte 😉

 

Esquema de conexiones Arduino para la construcción del brazo robótico

Una de las partes más importantes a la hora de realizar nuestro montaje del brazo robótico pasa por conectar correctamente los diferentes elementos. Con el fin de evitar errores de montaje o conexiones erróneas, a continuación te dejamos el esquema de conexiones empleado para este proyecto, con este esquema de conexiones es posible usar el código que puedes encontrar al final del post sin necesidad de hacer ninguna modificación.

esquema-conexiones-brazo-robotico-arduino

Como podéis observar, existe una pequeña diferencia entre las conexiones que se realizan en el vídeo y las que se muestran en esta imagen. Esto es debido a que en el video se alimentan todos los motores desde la placa de Arduino UNO, cosa que es incorrecta ya que la corriente que circula por esta para alimentar los motores puede quemar la placa. Por este motivo es mas correcto realizar las conexiones tal y como se observa en esta imagen, ya que la alimentación proviene del modulo «mb-102», haciendo que la intensidad que para alimentar los motores no pase por la placa de Arduino.

Por último, realizar este montaje (que es muy recomendable) o el que aparece en el video, no va a afectar en nada al código de programación, ya que las conexiones de los motores no cambian de pines en la placa de Arduino UNO.

 

Código de Arduino para la programación del brazo robótico

A continuación se muestra el código de programación desarrollado específicamente para este proyecto. Los pines que puedes encontrar en el código son los mismos que encontrarás en el esquema de conexiones previamente mostrado.

Todos los movimientos del brazo robótico mostrados en el video han sido preprogramados por lo que usando el código que dejamos a continuación sólo realiza ese mismo movimiento, en caso de querer controlar los distintos movimientos que hace el brazo robótico de forma manual, te recomendamos que te veas el siguiente video que te dejamos AQUÍ.

Respecto al código, recuerda instalar las librerías «Servo.h» y «Stepper.h». También asegúrate de que el puerto donde esta conectada la placa de Arduino es el que esta seleccionado.

//Canal de YouTube -> Robot UNO
//Proyecto -> Brazo robotico version1

#include <Servo.h>
#include <Stepper.h>

Servo servomotor3; //Servomotor pinza
Servo servomotor2; //Servomotor enmedio
Servo servomotor1; //Servomotor abajo
Stepper motor(2048, 4, 6, 5, 7);

void setup() {
  servomotor3.attach(11);
  servomotor2.attach(10);
  servomotor1.attach(9);
  motor.setSpeed(5);
}

void loop() {
  //Reinicio
  servomotor1.write(0);
  servomotor2.write(0);
  servomotor3.write(0);
  //motor.step(512);
  delay(3000);
  //COJE EL OBJETO
  for(int i=0; i<=45; i++){
    servomotor3.write(i);
    delay(25);
  }
  delay(1000); 
  for(int i=0; i<=90; i++){
    servomotor2.write(i);
    delay(25);
  }
  delay(1000);  
  for (int i=0; i<=90; i++){
    servomotor1.write(i);
    delay(25);
  }
  delay(1000);
  for(int i=45; i>=0; i--){
    servomotor3.write(i);
    delay(25);
  }
  delay(1000);
   for (int i = 90; i>=0; i--){
    servomotor1.write(i);
    delay(25);
  }
  delay(1000);
  for (int i = 90; i>=0; i--){
    servomotor2.write(i);
    delay(25);
  }
  delay(1000);
  //GIRA CON EL OBJETO
  motor.step(512);
  delay(1000);
  //DEJA EL OBJETO
  for(int i=0; i<=90; i++){
    servomotor2.write(i);
    delay(25);
  }
  delay(1000);
  for (int i=0; i<=90; i++){
    servomotor1.write(i);
    delay(25);
  }
  delay(1000);  
  for(int i=0; i<=45; i++){
    servomotor3.write(i);
    delay(25);
  }
  delay(1000);
  //VUELVE A LA POSICION INICIAL
  servomotor1.write(0);
  servomotor2.write(0);
  motor.step(-512);
  delay(3000);
}

 

 

Publicado en Robots.

25 Comentarios

  1. es urgente. como se alimenta el proyecto?. Metiendole 5v a la placa uno y 5v al mb102 o directamente todo a la placa o todo al mb2? gracias de antemano

  2. para todos aquellos que cren que no sirve el codigo , ami si me funciono correctamente pero con el sotfwar arduino-1.8.13-windows
    .exe

  3. Hola, estoy haciendo un proyecto para la escuela de un brazo robotico. Este brazo que medidas y escalas tiene?

  4. Me ha resultado un video muy interesante y The Legend of Zelda es una saga impresionante os lo recomiendo sin ninguna duda. Saludos a Illojuan Y a Masi desde Alicante!!

  5. Lo armé con una placa Arduino Mega 2560 respetando los números de pines y no funciona, lo conecto y hace cosas raras el motor inferior gira hasta hacer tope con la mesa, saco el brazo y lo coloco a 90° pero vuelve a pegar sobra la mesa, no entiendo qué pasa, no responde

    • Prueba a alimentar todos los motores de forma externa y no desde la placa de arduino. Quizas eso haga que funcione mejor. Un saludo

  6. Buenos días. Me ha encantado el brazo robótico. ¿Podríais decirme por favor cómo se programa con lenguaje de bloques? lo estoy preparando para un grupo de escolares. Muchas gracias.

  7. buena noche.
    el codigo no funciona correctamente ya que el motor paso a paso gira 360 grados. no es como esta en el video. en el video se ve que va 90 grados los servos bajan a cumplir la funcion luego el motor paso a paso gira otros 90 grados y nuevamente se devuelve a -90 grados a recoger nuevamente el objeto.

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *