Een reusachtige Lego-minifiguur animatronics Operation-spel bouwen met Arduino
Onderdelen en benodigdheden
- 2x Arduino UNO
- 1x Adafruit Arduino MP3 Shield
- 6x MG90S Gear Micro Servo
- 2x Speaker: 3W, 4 ohm
- 12x OpenBuilds Ballager – 688Z 8x16x5
Benodigde tools en machines
- Lulzbot Taz 5 FDM 3D-printer
- X-Carve CNC
Over dit project
Dit project is in 4 fasen voltooid. De eerste 3 fasen (zonder elektronica) worden kort besproken; fase 4 (omvormen tot Operation-spel met audio en animatronics) wordt gedetailleerd uitgelegd.
Fase 1: De Megafigs bouwen
Ik begon met de hand, het lastigste deel, dat de schaal definieerde voor de rest. De hand is gemaakt van PVC-buizen en fiberglas hars.

Vervolgens de kop: grote PVC-nippel voor het hoofd, MDF en hars voor de topnop.

Het lichaam: MDF-doosconstructie met PVC-nippels als gewrichten.

Benen: MDF en PVC voor de bovenbeen-curves.

Armen (het uiteindelijke grootste uitdaging): PVC voor voorarm, MDF voor bovenarm, bloemenschuim als vulling, Bondo voor vormgeving, veel schuren en vullen.




Armen en handen zijn gegoten in Smoothcast 300.

Alles geschilderd op basis van de Monster Hunters Lego-set.

Fase 2: Haar
Wetenschappers haar gemaakt van tooling schuim, uitgezaagd met bandszaag, samengelijmd met epoxy.

Hele haarstuk bedekt met Smoothcast 300 voor plastic schil, geschuurd en gevuld.


Epoxy sculpt voor naadloze overgangen tussen haarpartijen.



Fase 3: Franks bed
Op basis van de Crazy Scientist and his Monster Lego-set. Simpele MDF-doos met PVC-noppen.



Fase 4: Operation-spel en beweging
De finale fase: Frank ombouwen tot Operation-spel met audio en animatronics. Elk lichaamsapart wordt apart behandeld.
Torso
3D-geprinte beugels met 2 rolschaatslagers als draaipunten voor armen en hoofd.

2 3D-geprinte snoepbakken met gefreesde aluminium lopen als schakelaar voor het Operation-spel. Wanneer de tang (aangesloten op MP3 shield) het aluminium raakt, sluit de kring en start het programma.




Hoofden
Beide hoofden aangepast voor beweging en speakers. 3D-geprinte beugel aan nek met 5/16 bout als as.


Perforeerd metaal als sjabloon voor speaker-gatjes. Gaten ingeschilderd in omringende kleur.




3D-geprinte beugel voor speakers achter de grill.


Benen
Nieuwe benen 3D-geprint in twee helften, plus botvormige snoepbak. Aluminium plaat gefreesd als schakelaar. Samengelijmd, geschuurd, Bondo, geschilderd.




Armen
Originele arm-mallen aangepast voor 3D-geprinte beugel met 5/16 bout. Opnieuw gegoten, afgemaakt, geschilderd.




Servo's
Servo's gemonteerd met 3D-geprinte beugels, verbonden met ledematen via draad en aluminium horen op de 5/16 bouten. Veersen toegevoegd om armen te helpen tillen.



Elektronica
Alle elektronica op MDF-prototype bord. Twee Arduino's: één met MP3 shield, één voor servo's.
- MP3 shield wacht op 1 van 3 ingangen (tang aan aluminium platen).
- Bij activering speelt MP3 shield bijbehorend geluid en stuurt signaal naar servo-Arduino.
- Servo-Arduino ontvangt signaal en voert bijbehorende servo-bewegingen uit.
Beide Arduino's onder Franks bed gemonteerd en heraangesloten.

Klaar voor Halloween
Alles werkte perfect en hield een volle nacht misbruik stand.



Voor een gedetailleerde build-log: https://www.therpf.com/showthread.php?t=195101
Code
Servo-code (Arduino)
Deze code draait op de Arduino die alle 6 servo's aanstuurt. Hij wacht op 3 signalen van de MP3 shield en voert dan de bijbehorende servo-bewegingen uit.
/**************************** Targus - Operation - Servos *****************************/
/****** Notes ******/
// Digital Pins 0 and 1 are normally used for serial communication when uploading and monitoring an Arduino from a computer.
// Digital Pins 0 and 1 can be used for servos if the Arduino is not connected to a computer.
// If Digital Pins 0 and 1 are being used for servos, comment out any lines beginning with 'Serial.' in this file.
// Make sure this Arduino is powered on before the other Arduino since this Arduino will be receiving 5V signals.
// Make sure a GND wire on this Arduino is connected to GND on the other Arduino.
/********* Includes **********/
#include <Servo.h>
/********** Variables ***********/
Servo servo5; Servo servo6; Servo servo7; Servo servo8; Servo servo9; Servo servo10; Servo servo11;
int pin2 = 2; int pin3 = 3; int pin4 = 4;
/************** Arduino Setup ***************/
void setup() {
Serial.begin(9600);
Serial.println("Targus - Operation - Servos\n");
/***************************************** Connect Servos and set initial positions ******************************************/
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);
/************************* Setup Digital Input Pins **************************/
pinMode(pin2, INPUT_PULLUP);
pinMode(pin3, INPUT_PULLUP);
pinMode(pin4, INPUT_PULLUP);
}
/************* Arduino Loop **************/
void loop() {
if (digitalRead(pin2) == HIGH) { zap2(); }
else if (digitalRead(pin3) == HIGH) { zap3(); }
else if (digitalRead(pin4) == HIGH) { zap4(); }
delay(300);
}
/********** Functions ***********/
// ... (easing functions en zap-functies zoals in origineel)
Geluidseffecten code (Arduino met MP3 Shield)
Deze code draait op de Arduino met MP3 shield. Ontvangt signaal van schakelaars, speelt audio af en stuurt signaal naar servo-Arduino.
/*********************************** Targus - Operation - Sound Effects ************************************/
// ... (volledige code zoals in origineel, met includes, setup, loop, audioPlay, audioStop, activate, volDown, volUp, zap2/3/4)
CAD-bestanden
3D-deelbestanden op Thingiverse: thingiverse.com
Schema's
- GPIO 2, 3, 4 van MP3 shield → aluminium platen
- 3V van MP3 shield → tang
- Pins 5, 8, 9 van MP3 shield → pins 2, 3, 4 van servo-Arduino
- Pins 6, 7, 8, 9, 10, 11 van servo-Arduino → servo's
- Servo voeding (5V) en gemeenschappelijke GND
- Beide speakers aangesloten

Geschaalde en gedimensioneerde tekeningen voor de megafigs-constructie.
Productieproces
- Bouw een indrukwekkend monitor Ambilight-systeem met Arduino
- Bouw een Klassiek Pong-spel op Arduino UNO met OLED-display – Stap-voor-stap Tutorial
- DIY Arduino USB Gaming Controller – Bouw Je Eigen High-Performance Gamepad
- Bouw een Geautomatiseerde LEGO Star Wars Kanon met Arduino Uno
- Arduino Touch Breakout-spel: Bouw een Klassieke Arcade op een 2,4″ TFT LCD
- Arduino Audio Frequentie Detector – Meet de luidste geluidspieken met hoge gevoeligheid
- Bouw Je Eigen Arduino Tamagotchi: Een Digitale Huisdier DIY Project
- Slimme Draadloze Lichtschakelaar Controller: Arduino-gebaseerde Remote Switch Manipulator
- Arduino Boter-Kaas-Eieren met MAX7219 LED Matrix en Kartonnen Behuizing
- Slimme beweegactiverde waterpistool gebouwd met Arduino Nano
- Bouw een Betrouwbare Arduino Afteltimer met SparkFun 7‑Segment Display