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

Construye un juego «Operación» animatrónico con minifigura LEGO gigante y Arduino

Componentes y materiales

Herramientas y máquinas

Sobre el proyecto

Este proyecto se desarrolló en cuatro fases. Las tres primeras (construcción de la megafigura, cabello y cama) son puramente mecánicas; la cuarta añade electrónica, audio y movimiento para convertir a «Frank» en un juego «Operación» interactivo.

Fase 1: Construcción de la megafigura

La mano se fabricó con tubo de PVC y resina de fibra de vidrio; definió la escala del resto. La cabeza usa un accesorio de PVC de gran diámetro, DM y resina. El torso es una caja de DM con uniones de PVC. Piernas y brazos combinan DM, PVC, espuma floral y masilla Bondo, lijados hasta lograr la forma final. Brazos y manos se moldearon y vaciaron en Smooth-Cast 300. Todo se pintó siguiendo la paleta del set LEGO «Monster Hunters».

Fase 2: Cabello

Espuma de modelar cortada a sierra de cinta, unida con epoxi, recubierta con Smooth-Cast 300, lijada, rellenada con epoxi escultórico, imprimada y pintada.

Fase 3: Cama de Frank

Caja de DM con tubos de PVC para los detalles de esquina (tubo que sandwichea un disco de DM). Lijado, imprimado y pintado.

Fase 4: Juego Operación y movimiento

Torso

Soportes impresos en 3D albergan dos rodamientos de patín como pivotes para brazos y cabeza. Dos «cuencos de caramelo» impresos en 3D con labios de aluminio fresado actúan como contactos del juego: al tocar con las pinzas (conectadas al shield MP3) se cierra el circuito y se dispara la acción.

Cabezas

Ambas cabezas (Frank y el científico) llevan soporte impreso para eje de tornillo de 5/16″. Rejilla de altavoz perforada en metal, pintada para disimular los agujeros. Soportes traseros impresos sujetan los altavoces.

Piernas

Impresas en dos mitades con «hueso» para caramelo y placa de aluminio fresada como contacto. Unidas, lijadas, masilladas y pintadas.

Brazos

Los maestros originales se modificaron para aceptar soporte impreso con eje de 5/16″, remoldeados, vaciados, limpiados y pintados.

Servos

Seis servos MG90S montados en soportes impresos, conectados a los miembros mediante cable y cuerno de aluminio en el tornillo de 5/16″. Muelles añadidos después para aligerar la carga de elevación de los brazos.

Electrónica

Todo el cableado se probó en una base de DM antes del montaje final. Funcionamiento:

  1. El shield MP3 espera una de tres entradas (pinzas tocando contactos de aluminio).
  2. Al detectar contacto, reproduce el MP3 correspondiente y envía señal al Arduino de servos.
  3. El Arduino de servos ejecuta la coreografía asociada.

Ambos Arduinos van atornillados bajo la cama de Frank.

Listo para «Truco o trato»

El sistema aguantó una noche completa de uso intensivo sin fallos.

Código

Arduino de servos

Controla los 6 servos. Espera señal en pines 2, 3, 4 (pull-up interno) y ejecuta secuencias con funciones de easing (suavizado) para movimientos naturales.

// Versión resumida; código completo en el repositorio del proyecto
#include 
Servo servo5, servo6, servo7, servo8, servo9, servo10, servo11;
int pin2=2, pin3=3, pin4=4;

void setup() {
  Serial.begin(9600);
  servo5.attach(5);  servo5.write(90);
  servo6.attach(6);  servo6.write(90);
  servo7.attach(7);  servo7.write(90);
  servo8.attach(8);  servo8.write(90);
  servo9.attach(9);  servo9.write(80);
  servo10.attach(10); servo10.write(90);
  servo11.attach(11); servo11.write(80);
  pinMode(pin2, INPUT_PULLUP);
  pinMode(pin3, INPUT_PULLUP);
  pinMode(pin4, INPUT_PULLUP);
}

void loop() {
  if (digitalRead(pin2)==HIGH) zap2();
  else if (digitalRead(pin3)==HIGH) zap3();
  else if (digitalRead(pin4)==HIGH) zap4();
  delay(300);
}
// Funciones zap2(), zap3(), zap4() con moveServo() y easing...

Arduino de efectos de sonido (con shield MP3)

Lee GPIOs 2,3,4 del shield, reproduce archivo MP3 de tarjeta SD y activa pines 5,8,9 hacia el Arduino de servos. Incluye control de volumen por botones en A0/A1.

// Versión resumida; código completo en el repositorio
#include 
#include 
#include 

#define SHIELD_RESET -1
#define DREQ 3
#define CARDCS 4
#define SHIELD_DCS 6
#define SHIELD_CS 7

Adafruit_VS1053_FilePlayer musicPlayer = 
  Adafruit_VS1053_FilePlayer(SHIELD_RESET, SHIELD_CS, SHIELD_DCS, DREQ, CARDCS);

int relayPin5=5, relayPin8=8, relayPin9=9;
int pinVolDown=14, pinVolUp=15;
int volume=50;

void setup() {
  Serial.begin(9600);
  musicPlayer.begin();
  SD.begin(CARDCS);
  musicPlayer.setVolume(volume, volume);
  musicPlayer.useInterrupt(VS1053_FILEPLAYER_PIN_INT);
  musicPlayer.GPIO_pinMode(2, OUTPUT);
  musicPlayer.GPIO_pinMode(3, OUTPUT);
  musicPlayer.GPIO_pinMode(4, OUTPUT);
  pinMode(pinVolDown, INPUT_PULLUP);
  pinMode(pinVolUp, INPUT_PULLUP);
  pinMode(relayPin5, OUTPUT);
  pinMode(relayPin8, OUTPUT);
  pinMode(relayPin9, OUTPUT);
}

void loop() {
  if (musicPlayer.GPIO_digitalRead(2)) { zap2(); }
  else if (musicPlayer.GPIO_digitalRead(3)) { zap3(); }
  else if (musicPlayer.GPIO_digitalRead(4)) { zap4(); }
  else if (digitalRead(pinVolDown)==LOW) { volDown(); }
  else if (digitalRead(pinVolUp)==LOW) { volUp(); }
  delay(2);
}
// Funciones zap2/3/4(), audioPlay(), activate(), volDown/Up()...

Partes personalizadas e involúcro

Archivos CAD en Thingiverse.

Esquemas

Construye un juego «Operación» animatrónico con minifigura LEGO gigante y Arduino

Proceso de manufactura

  1. Crea un Impresionante Sistema Ambilight para Monitor con Arduino
  2. Construya el clásico juego Pong en Arduino UNO con pantalla OLED: Tutorial paso a paso
  3. Mando USB para juegos DIY con Arduino – Construye tu propio gamepad de alto rendimiento
  4. Construye un lanzador automático LEGO Star Wars con Arduino Uno
  5. Juego Breakout táctil Arduino: Arcade clásico en pantalla TFT 2,4″
  6. Detector de frecuencia de audio con Arduino – Mide los picos de sonido más intensos
  7. Construye tu Propio Tamagotchi con Arduino: Mascota Digital DIY
  8. Controlador Inalámbrico Inteligente de Interruptores: Manipulador Remoto Basado en Arduino
  9. Tres en raya con Arduino, matriz LED MAX7219 y carcasa de cartón
  10. Pistola de Agua Inteligente Activada por Movimiento con Arduino Nano
  11. Construye un Temporizador Regresivo Fiable con Arduino y Pantalla de 7 Segmentos SparkFun