Manufactura industrial
Internet industrial de las cosas | Materiales industriales | Mantenimiento y reparación de equipos | Programación industrial |
home  MfgRobots >> Manufactura industrial >  >> Manufacturing Technology >> Proceso de manufactura

Brazo Robótico Arduino Controlado por Gestos Manuales – Construcción Paso a Paso

Componentes y materiales

Herramientas necesarias

Sobre el proyecto

Presentamos el Brazo Robótico DIY controlado por Gestos Humanos.

Películas como Pacific Rim o Avatar sugieren la sinergia con robots donde tus movimientos se amplifican con asistencia robótica. ¿Y si construimos el mismo robot industrial a escala reducida? Este proyecto lo intenta.

Brazo Robótico Arduino Controlado por Gestos Manuales – Construcción Paso a Paso

Siguiendo la convención de Iron Man, cada iteración es un "Mark". Este prototipo es MARK 1.

Brazo Robótico Arduino Controlado por Gestos Manuales – Construcción Paso a Paso

Ver tutorial completo del Brazo Robótico DIY (controlado por gestos) aquí

Visión general

Construiremos un robot de 6 ejes controlado por gestos manuales mediante un Guante Robótico. Imitando gestos naturales (pellizco, rotación de muñeca) podrás abrir/cerrar o girar el brazo. En efecto, control manual de un brazo robótico.

Brazo Robótico Arduino Controlado por Gestos Manuales – Construcción Paso a Paso

Características MARK 1:

Lista de piezas

Brazo Robótico Arduino Controlado por Gestos Manuales – Construcción Paso a Paso

El brazo es totalmente personalizable: compra o imprime en 3D. Si imprimes, hay muchos diseños en Thingiverse que usan servos; la teoría es la misma.

Brazo robótico: Thingiverse "3D Printed Robotic Arm" (créditos: Wonder Tiger):

Tiempo de impresión: hasta 40 horas. Ahorra coste frente a comprar.

Guante robótico: Archivos STL "Robotic Glove" (créditos: Roman 13).

Brazo Robótico Arduino Controlado por Gestos Manuales – Construcción Paso a Paso

El guante es una adición estética; puedes usar un guante de obra. Nota: para manos grandes, imprime al 105%.

Cómo funciona

Brazo Robótico Arduino Controlado por Gestos Manuales – Construcción Paso a Paso

Enviamos señal (por Bluetooth) del guante al servomotor. Al recibir un valor, el driver envía la orden al servo correspondiente.

Brazo Robótico Arduino Controlado por Gestos Manuales – Construcción Paso a Paso

Si pensamos el brazo como serie de servos coordinados, podemos controlarlo con el guante. El Arduino del guante usa sensores para comunicar con el Arduino del brazo y enviar ángulos deseados por Bluetooth.

Sensores del guante (MARK 1):

Detectamos cambios de gesto, enviamos valor mapeado al brazo para mover un servo vía Bluetooth. Con suficientes gestos, el brazo cobra vida.

Brazo Robótico Arduino Controlado por Gestos Manuales – Construcción Paso a Paso

Mapeo del brazo robótico

Tabla de valores enviados del guante al brazo (claves: P=meñique, L=derecha, etc.). La "F" mayúscula (finger) indica dirección opuesta del servo.

Montaje de piezas

Brazo Robótico Arduino Controlado por Gestos Manuales – Construcción Paso a Paso

Montaje del brazo robótico

Comprar un brazo es caro. La impresión 3D mantiene el presupuesto. Permite personalización futura (añadir LED, soporte cámara). El diseño se basa en Wonder Tiger (Thingiverse): 6 ejes, bien documentado, robusto. Mis remixes para soporte cámara se tratarán en futuras versiones. La impresión total puede llevar 40+ horas. Hay alternativas en Thingiverse.

Servomotor y driver

Brazo Robótico Arduino Controlado por Gestos Manuales – Construcción Paso a Paso

El brazo es una serie de motores coordinados. Usamos driver PCA9685 para alimentar servos MG996R. Nota: Usa fuente externa para los motores; Arduino no suministra suficiente corriente. Aquí: batería RC 5V 2200 mAh.

Brazo Robótico Arduino Controlado por Gestos Manuales – Construcción Paso a Paso

NEMA‑17 para rotación de base

El servo MG996R no tenía torque para girar la base con el peso del brazo. Usamos motor paso a paso NEMA‑17 por su precisión y alto par.

Brazo Robótico Arduino Controlado por Gestos Manuales – Construcción Paso a Paso

Driver A4988 controla dirección del NEMA‑17.

Brazo Robótico Arduino Controlado por Gestos Manuales – Construcción Paso a Paso

Diagrama final de cableado del brazo completo (incluye Bluetooth).

Montaje de la electrónica

Brazo Robótico Arduino Controlado por Gestos Manuales – Construcción Paso a Paso

Sensor flex humano

Brazo Robótico Arduino Controlado por Gestos Manuales – Construcción Paso a Paso

Puedes imprimir un guante exoesqueleto 3D o usar un guante de obra para prototipar. El diseño exoesqueleto combina estéticamente con el brazo.

Componentes del guante:

Brazo Robótico Arduino Controlado por Gestos Manuales – Construcción Paso a Paso

Importante: El brazo será tan preciso como el control del guante. Vale la pena ajustarlo bien.

Configuración Bluetooth (Maestro y Esclavo)

Comunicación por HC‑05. Configuración crítica:

MóduloConfiguración
Guante HC‑05Maestro
Brazo HC‑05Esclavo

Baud rate: 4800.

Programación Arduino

Código descargable abajo. Otros códigos de prueba y última versión en GitHub Arduino Robot Arm.

Programación del brazo robótico

Brazo Robótico Arduino Controlado por Gestos Manuales – Construcción Paso a Paso

Usa librería HCPCA9685 para el driver de servos. Permite alimentar múltiples servos desde un Arduino. Declaración de variables:

#include "HCPCA9685.h"
#define I2CAdd 0x40
HCPCA9685 HCPCA9685(I2CAdd);
const int servo_joint_L_parking_pos = 60;
int servo_joint_L_pos_increment = 20;
int servo_joint_L_parking_pos_i = servo_joint_L_parking_pos;
int servo_joint_L_min_pos = 10;
int servo_joint_L_max_pos = 180;

Inicializa puerto serie a 4800 baudios para Bluetooth:

Serial.begin(4800);

En loop() se comprueban datos entrantes del guante. Si hay, se guardan en state y se mueve el motor correspondiente.

if (Serial.available() > 0) {
  state = Serial.read();
  Serial.print(state);
  // Bloque funcionalidad motores
}

Ejemplo: al recibir 'S' gira base a la izquierda (stepper).

if (state == 'S') {
  baseRotateLeft();
  delay(response_time);
}

Límite duro para no sobrepasar ángulo máximo (evita desgastar engranajes):

if (servo_joint_3_parking_pos_i < servo_joint_3_max_pos) {
  HCPCA9685.Servo(4, servo_joint_3_parking_pos_i);
  servo_joint_3_parking_pos_i += servo_joint_3_pos_increment;
}

Programación del sensor flex

Código en GitHub. Puntos clave:

Definición de 5 sensores:

int pinkie_Data = A1;
int finger_Data = A2;
int thumb_Data = A3;
const int MPU2 = 0x69, MPU1 = 0x68; // Direcciones I2C de 2 MPU6050
int response_time = 1000;

Lectura de sensores:

pinkie = analogRead(pinkie_Data);
finger = analogRead(finger_Data);
thumb = analogRead(thumb_Data);
GetMpuValue1(MPU1);
GetMpuValue2(MPU2);

Calibración (al resetear Arduino):

if (!bool_caliberate) {
  delay(1000);
  thumb_high = thumb * 1.15; thumb_low = thumb * 0.9;
  finger_high = finger * 1.03; finger_low = finger * 0.8;
  pinkie_high = pinkie * 1.06; pinkie_low = pinkie * 0.8;
  bool_caliberate = true;
}

Comprobación continua de límites calibrados:

if (finger >= finger_high) { Serial.print("F"); delay(response_time); }
if (finger <= finger_low)  { Serial.print("f"); delay(response_time); }

Resultados

Brazo Robótico Arduino Controlado por Gestos Manuales – Construcción Paso a Paso

El brazo mueve objetos con precisión suficiente para MARK 1. Requiere refinamiento para tareas complejas, pero funciona según lo previsto. Mejoras en código aumentarán precisión.

¿Quieres mejorar el código? Contribuye al Repo GitHub Arduino Robot Arm y construye tu brazo. ¡Hagámoslo abierto para que otros lo mejoren!

Además, podemos controlar el robot por gestos y programarlo para automatizar tareas básicas.

Próximos pasos

¡Esto es todo por MARK 1! Si te gusta el proyecto, apoya mi Patreon.

Código

Fragmentos de código disponibles en el repositorio GitHub.

Partes personalizadas y cajas

Esquemáticos

Repo GitHub del brazo: github.com/EbenKouao/arduino-robot-arm

Proceso de manufactura

  1. Construya un robot Raspberry Pi controlado por Bluetooth con retroalimentación de audio
  2. Construye tu propia máquina de escribir deberes casera (DIY Homework Writing Machine)
  3. Vehículo Controlado por Android con Raspberry Pi, Arduino y Motor Shield: Guía Completa
  4. Robot evasor de obstáculos con servo: Construcción con Arduino y HC-SR04
  5. Robot Seguidor de Línea Autónomo con Arduino UNO: Guía Paso a Paso
  6. Brazo Robótico de 6 Grados de Libertad Controlado por Nunchuk con Arduino
  7. Construye un robot controlado por voz con Arduino Nano
  8. Brazo Robótico Controlado por Ethernet: Control Remoto Simplificado
  9. MobBob: Robot Arduino Impreso en 3D, Controlado por Smartphone Android
  10. PiBot: Robot Pianista con Arduino para Interpretación Musical de Precisión
  11. Kit de Robot de Navegación Interior Inteligente para Proyectos Arduino