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 tu Propio Casco y Reactor Arc de Iron Man con Arduino - Guía Paso a Paso

Componentes y materiales

Arduino UNO 1
Anillo NeoPixel Adafruit: WS2812 5050 RGB LED 1
Sensor capacitivo táctil MPR121 (breakout Adafruit, 12 teclas) 1
Servomotor Tower Pro MG996R 1
Porta-pilas 4xAA 1
Conector batería 9V 1
Cables jumper 1 juego

Herramientas necesarias

Aplicaciones y servicios online

Sobre el proyecto

Introducción y motivación

Todo empezó con mi primer casco: uno de cartón de Ant-Man que vi en vídeos online. Era genial (soy gran fan de Marvel), así que decidí hacer el de Iron Man. Acababa de ir a la National Maker Faire en Washington D.C. y a todos les encantó el casco de Ant-Man. Eso me motivó aún más.

Pasé por varios prototipos: otro de cartón (muy pequeño), uno diseñado por mí (parecía una bola en la cabeza), y uno de papel (quedó genial pero era demasiado endeble). Al final decidí imprimir en 3D. Logré uno estable, lo bastante grande para mi cabeza y con espacio para el motor.

La impresión 3D

1) Dividir en piezas - Software

El archivo de Thingiverse venía en tres piezas: casco principal, mentonera y visera. Todas superaban el área de impresión de mi impresora. Usé Netfabb Basic (gratuito) para cortar las piezas. Fue fácil de usar y pude dividir el casco en 24 piezas imprimibles. Fui uniendo con cinta de carrocero para verificar el tallaje. Se gastaron 1.5 rollos de filamento.

2) Seleccionar el adhesivo adecuado

El pegamento debía: unir fuerte, curar rápido y ser lijable. Probamos 4 tipos: E6000, JB Weld KwikWeld, JB Weld Plastic Bonder, Loctite Plastic Bonder. Ganó KwikWeld.

Construye tu Propio Casco y Reactor Arc de Iron Man con Arduino - Guía Paso a Paso

Proceso: lijar las caras a unir con lima (crear rugosidad y micro-ranuras), mezclar KwikWeld (partes iguales endurecedor y acero), aplicar en ambas caras, presionar, poner grampa si hay, limpiar exceso. Seca en ~10 min, mejor dejar más.

3) Diseñar el mecanismo del servomotor

Construye tu Propio Casco y Reactor Arc de Iron Man con Arduino - Guía Paso a Paso

Como no entendía el mecanismo del diseño original de Thingiverse, diseñé el mío. Planifiqué posición del servo, medí línea recta al punto de anclaje, estimé ángulo. Primer diseño: ángulo muy agudo. Segundo: casi perfecto. Atornillé el brazo al servo y al anclaje: encajaba.

Diseñé una abrazadera para el servo e imprimí. Primera prueba: inestable, la visera no subía suave. Solución: doblé una percha metálica en forma rectangular, la puse en las ranuras donde iba la pieza 3D, diseñé clips para sujetarla, corté ranuras en el casco con sierra de arco, volví a montar. Segunda prueba: funcionó perfecto.

4) Montaje y pintura

Desmonté todo. Primera capa: imprimación blanca. Enmascaré parte de la mentonera con cinta de pintor y pinté el casco de rojo. La visera toda de dorado. El dorado seca rápido; el rojo, muy lento. Cuando todo seco, quité cinta de la mentonera, enmascaré el resto, puse papel albal sobre el casco y pinté la mentonera de dorado. Volví a montar y probé: ¡funcionaba!

5) El Reactor Arc

Medí el anillo NeoPixel, diseñé caja para alojarlo. Para la tapa, usé un diseño de Thingiverse (thing:33021) y lo adapté. Imprimí caja y tapa: encajaban bien, pero el NeoPixel era demasiado pequeño para la caja (error en mis cálculos). Corregí, volví a imprimir: perfecto. Añadí dos agujeros para cables, una barra superior para cordón (colgar al cuello), y un difusor de filamento ABS translúcido a presión en la caja.

La electrónica

Controlamos: 1 servomotor (visera del casco) + 1 anillo NeoPixel (Reactor Arc). Base: Arduino UNO (también probado con Arduino 101 intercambiablemente, permitiendo futura expansión BLE).

Interfaz táctil: MPR121 Adafruit 12-Key Capacitive Touch Sensor Breakout. 12 entradas, comunicación I2C, bien documentado, ejemplos claros. Cables con extremos pelados actúan como interruptores capacitivos. No hay "rebote" mecánico, pero un toque genera múltiples lecturas en el loop(). Para evitar "chattering" del servo, implementamos bloqueo software de 250 ms al leer toques.

Alimentación - 고려사항 crítico:
  • El servo bajo carga genera contra-EMF. Seguimos recomendación de Arduino.cc: alimentar servo por separado.
  • Servo: porta-pilas 4xAA. Muy importante: tierras comunes (GND Arduino + GND servo + GND porta-pilas 4xAA unidos en rail de protoboard).
  • Inicialmente el NeoPixel también iba a 4xAA, pero causaba "chattering" del servo al encender/apagar LEDs. Cambiamos: NeoPixel directo a 5V del Arduino, pilas nuevas en 4xAA. Problema resuelto (aunque la causa raíz no se identificó del todo).
Construye tu Propio Casco y Reactor Arc de Iron Man con Arduino - Guía Paso a Paso

Todo prototipado en protoboard y pasado a Adafruit ¼ Perma-Proto. Caja impresa en filamento HIPS azul. Unidad completa con pilas en maletín de cámara para la Maker Faire NYC 2016.

El software

Dos versiones del sketch: IronMan02.ino y IronMan04.ino. Ambas funcionan con el hardware descrito.

IronMan02.ino - Versión "hacerlo funcionar"

Siguiendo el lema "La perfección es enemiga de la finalización". Tenían deadline para la Maker Faire. No es elegante pero cumplió. Crearon objetos Helmet y ArcReactor anticipando multitarea futura.

Problema: visera abría/cerraba demasiado rápido. Solución: delay(20) en el movimiento para suavizar. Pero delay() bloquea el microcontrolador.

// Subir visera, bloqueo 1/4 seg anti-rebote táctil
void up() {
if((millis() - lastSwitched) > 250 ) {
lastSwitched = millis();
if (!helmetUp) {
int currPos = 0;
while( currPos < upAngle ) {
helmetServo.write(currPos);
currPos = currPos + 2;
delay(20); // ¡BLOQUEA todo por 20ms!
}
helmetUp = true;
}
}
}

IronMan04.ino - Versión con multitarea (basada en tutoriales de Bill Earl, Adafruit)

Dos mejoras clave:

  • Un solo botón/toque para subir/bajar visera
  • Multitarea real (sin delay())

Variables de estado:

  • flip: estado visera (arriba/abajo)
  • flipping: visera en movimiento
  • directionality: dirección (UP/DOWN)

En setup() empiezan con visera arriba. Al tocar el sensor, alterna. Bloqueo anti-rebote con millis() (500 ms) en objetos Helmet y ArcReactor:

void flipFaceplate() {
if ((millis()-lastFlipped) > 500 ) { ... } // timing block sin delay()
}

Barrido suave del servo: incremento lento de ángulo con bloqueo temporal vía millis() (15 ms por paso):

void Update() {
if ( flipping && (millis()-lastMoved) >= 15 ) {
lastMoved = millis();
if ( directionality == UP ) currentPos += 3;
else currentPos -= 3;
helmetServo.write(currentPos);
}
if ((currentPos >= upAngle) || (currentPos <= downAngle)) {
flipping = false; // fin del movimiento
}
}

Resultado: con IronMan04.ino puedes mover la visera Y encender/apagar el NeoPixel simultáneamente. Con 02.ino, el delay() bloquea hasta que termina el servo.

Futuras mejoras

  • Ojos brillantes
  • Conectividad BLE con Arduino 101
  • Interfaz de voz (¡Jarvis!)

Código

Repositorio GitHub: github.com/lachendeKatze/Iron-Man

Esquemático

Construye tu Propio Casco y Reactor Arc de Iron Man con Arduino - Guía Paso a Paso

Proceso de manufactura

  1. Tapas de Registro: Diseño, Materiales y Producción Moderna
  2. La evolución y producción moderna de las planchas de ropa domésticas
  3. Estufas de Hierro Fundido: Historia, Diseño e Innovaciones Modernas
  4. La Evolución e Ingeniería de los Cascos de Fútbol: Seguridad, Diseño e Innovaciones Futuras
  5. Hierro: propiedades, historia y aplicaciones cotidianas
  6. Baterías: De la pila de Volta a las modernas celdas de litio
  7. UnifiedWater v1 – Kit completo de sensor de calidad de agua con Arduino
  8. Construye un Iron Man animado con Arduino: componentes, sensores y guía paso a paso
  9. Soluciones de Alimentación Optimizadas para Proyectos Arduino
  10. Arduino 101 BLE + Blynk: Robot Tanque Controlado por Bluetooth DIY
  11. Todo sobre el hierro forjado: propiedades, usos e historia