Tony Stark’s Arc Reactor RGB Edition 3D Printer Model

Author: @
License: CC BY
File formats: stl,STL
Download type: zip
Size:665.0KB

The file 'Tony Stark’s Arc Reactor RGB Edition 3D Printer Model' is (stl,STL) file type, size is 665.0KB.

Summary

This project is highly inspired by https://www.thingiverse.com/thing:3321182 so, many thanks to the author for his amazing work.
I've only modified the base to put an Arduino nano to control RGB stripes. There are 3 knobs to control colors in HSV color space (https://github.com/FastLED/FastLED/wiki/FastLED-HSV-Colors)
The assembling is pretty easy, refer to the original thing for more photos. Of course you can find schematics of the circuit between files wich again is really simple.

https://youtu.be/JZ79VwJW_wE

Bill of material

  • 1x Arduino Nano
  • 3x 10k potentiometer
  • WS2812B led stripe. (you will cut 2 pieces, one of 16 led and one single led)
  • 4x M3 with countersunk head
  • 5x M3 with button head
  • Hot glue to fix Arduino and potentiometers in position.

Please note that this circuit is not intended for long usage at maximum brightness since taking current from arduino will ruin it faster... If you intend to leave it on for long time please add an external 5V source and power both led and arduino from it. Theoretically this amout of led can draw as much as 1 Amp (full brightness, white color)

The arduino code is (you will need FastLED library https://github.com/FastLED/FastLED):

#include <FastLED.h>#define LED_PIN_RING     4#define LED_PIN_CENTER     5#define NUM_LEDS_RING    16#define NUM_LEDS_CENTER 1#define BRIGHTNESS  255#define LED_TYPE    WS2812B#define COLOR_ORDER GRB#define UPDATES_PER_SECOND 100CRGB leds_ring[NUM_LEDS_RING];CRGB leds_center[NUM_LEDS_CENTER];int pulse = 129;int fadeAmount = 1;    void setup() {  delay( 1000 ); // power-up safety delay  Serial.begin(115200);  FastLED.addLeds<LED_TYPE, LED_PIN_RING, COLOR_ORDER>(leds_ring,             NUM_LEDS_RING);  FastLED.addLeds<LED_TYPE, LED_PIN_CENTER, COLOR_ORDER>(leds_center, NUM_LEDS_CENTER);  FastLED.setBrightness(BRIGHTNESS);}void loop(){  fadeToBlackBy( leds_ring, NUM_LEDS_RING, 20);  fadeToBlackBy( leds_center, NUM_LEDS_CENTER, 20);  byte dothue = 0;  int delta = 15 ;  for ( int i = 0; i < 80; i++) {    leds_ring[beatsin16( i + 16, 0, NUM_LEDS_RING - 1 )] = CHSV(dothue, map(analogRead(A1), 0, 1024, 0, 255), map(analogRead(A2), 0, 1024, 0, 255));    leds_center[beatsin16( i + 16, 0, NUM_LEDS_CENTER - 1 )] = CHSV(dothue, map(analogRead(A1), 0, 1024, 0, 255), map(analogRead(A2), 0, 1024, 0, 255));    dothue = random(map(analogRead(A0), 0, 1024, 0, 255) - delta, map(analogRead(A0), 0, 1024, 0, 255) + delta);  }  pulse = pulse + fadeAmount;  if (pulse <= 128 || pulse >= 255) {    fadeAmount = -fadeAmount;  }  FastLED.setBrightness(pulse);  FastLED.show();  FastLED.delay(1000 / UPDATES_PER_SECOND);}
Base.stl 641.8KB
Bottom.STL 165.7KB
Cage.stl 113.9KB
Caps.stl 314.1KB
Cover.stl 92.7KB
Crystal_Ring_Cover.stl 108.5KB
Crystal_Ring_Shell.stl 103.2KB
Holder.stl 8.9KB
Lower_Ring.stl 728.6KB
Main_Crystal_Cover.stl 42.7KB
Main_Crystal_Shell.stl 47.6KB
Support.stl 87.6KB
Upper_Ring.stl 269.5KB