DIY Time Control Machine

24,880

146

42

About: I like to create things, handmade weapon, arduino projects, science and some crazy staff! Also I like to capturing videos about my projects and I have YouTube channel - MadGyver!

This project is about how to make a time machine! This machine looks like a glove, and can "stop" any moving subject. At first, watch a video with some demonstration and experiments, guess how it works, and then read about how to make it =)

This effect looks like better in real life (by naked eye, not through a camera), without black lines. Smooth perfect time stop effectc!! IT IS REAL "OH MY GOD" REACTION!

Step 1: All We Need

Generally this project is about Arduino, high-power LED and some tricky magic with soldering iron. Here is some list with links to Aliexpress

Step 2: Wiring

Step 3: Assembling Power Part

At first connect battery, DCDC and MOSFET. Also you need to tune DCDC to 34 V output voltage.

Step 4: Assembling Logic Part

Connect potentiometer and IMU to arduino

Step 5: Fixing on Glove

Fix all parts on glove, using cable ties and velcro strip.

Step 6: LED and Cooling Plate

Fix LED on copper plate, and don't forget to smear thermal paste between them.

Step 7: Fixing LED

Finely, place LED on it's place on glove in order:

  • Metal mount
  • Glove fiber
  • Lense
  • LED
  • Cooling plate

Step 8: Flashing Arduino

You can download sketch and schemes on project's project page on GitHub, also arduino code you can find in attached files.

Step 9: How to Control Time?

This "Time Machine" is just a stroboscope with frequency adjustment. Shake your hand in Z direction of accelerometer (fast move your hand forward), LED will be turned on. Shake again to turn it off.

Use potentiometer for coarse tuning, and glove tilt for accurate tuning. When frequency of object coincide with frequency of LED, it will "stop". And you can adjust "time" for it, tilting your hand, so object will slowly move at normal direction, or reverse. You can watch video about how it works and "freeze" some fast moving objects.

You can use this for pranks and demonstration of stroboscopic effect. Enjoy!

Share

    Recommendations

    • Optics Contest

      Optics Contest
    • Make it Glow Contest 2018

      Make it Glow Contest 2018
    • Plastics Contest

      Plastics Contest

    42 Discussions

    0
    None
    Tj0

    2 months ago on Step 1

    What is the arduino code??

    0
    None
    OnurhanReyiz

    9 months ago

    I could not find 100W LED on my local electronics shop. I have gathered all the parts, and the local shops only have 50W LED, and some of the shops i visited, said 100W is so powerful i have to cool it and the metal plate that used in this project, will not be enough for the cooling, even with 12V. So my question is, for my curiosity, were they right about the cooling(Any useful info will be more than appreciated c:)? And can i use 50W LED instead?

    2 replies
    0
    None
    frarugi87OnurhanReyiz

    Reply 3 months ago

    Personally I think that 50W should be enough (I'll use a 50W myself). As for the dissipator, I think you are a bit confused. First of all the voltage is not 12V, but 34. Then this is a stroboscope, not a LED lamp. This means that it gets turned on for a very brief moment. Looking at the code, the LED gets turned on for 200us every cycle, and the cycle lasts from 2200us to I think 6624us. In the worst case, which is 2200, estimating a LED efficiency of 20% (which is very poor) the power dissipated by the LED is roughly 100W * 80% * 200/2200 = 7W. Will a copper heatsink be enough? I don't know, but I'm positive about this. And in any case if you feel it heating in your hand you can shut it down ;)

    0
    None
    Drphil123OnurhanReyiz

    Reply 8 months ago

    If it helps I am also building a version of this stroboscope but mine will be a slightly different (I will post pictures soon). For cooling you are absolutely right that LED will get very hot so what I decided to to was get myself and old CPU cooler and mount the LED onto it. That way the LED will never get too hot. Just an idea

    0
    None
    BraianF

    Question 3 months ago on Step 1

    I don't want to use a battery, can I conect it to a regular 12v transformer? How much corrent do I need?

    0
    None
    jainishan131

    Question 3 months ago on Step 9

    Can we use Lipo battery?
    I think it provides quite high current which may damage the dcdc boost

    0
    None
    jainishan131

    3 months ago on Step 9

    What is the potential of the battery (is it 12V)?

    1
    None
    SchamsuddinM

    Tip 3 months ago

    VERY IMPORTANT: You have to have the Arduino IDE 1.6, otherwise it wont work! Alex Gyver did not post this here! It took me weeks till I figured that out, seriously.

    With that said, the time machine is very nice and actually not that hard to do. You could go with the more expensiv and quicker way, buy all the same parts on amazon with prime (at least I have prime), which would cost me about 50€, not included the XT60 connectors, in my case li.ion batteries and the charger for your battery pack. You may need to buy some smaller srews that fit, some zip ties, if you dont have any and the copper platte, which i bought from ebay for 18€(10x10cm) .I should have bought it with the other parts, it would cost about 3€. But unfortunately I bought it when all the parts came, and I didnt want to wait for another 2-3 weeks. However, i bought all the parts on ebay for 15€, exclusive the XT60 connector, Batteries, battery charger, and screws. So if you want to do this project, do not forget about the parts i mentioned. Buy all them at once on Aliexpress or Ebay.

    IMG_20180720_162046[1].jpgIMG_20180720_162109[1].jpgIMG_20180720_162122[1].jpgIMG_20180720_162223[1].jpgIMG_20180720_162232[1].jpgIMG_20180720_162239[1].jpgIMG_20180720_162247[1].jpgIMG_20180720_162259[1].jpgIMG_20180720_162308[1].jpg
    2 replies
    0
    None
    vSpEcTrEvSchamsuddinM

    Reply 3 months ago

    Hi, what battery do you use for your glove? I can´t find the same battery as the original proyect and I don´t want to fuse the led

    0
    None
    SchamsuddinMvSpEcTrEv

    Reply 3 months ago

    Hi, I just bought 3x 3.7v 2200mah li-ion batteries at my local electronics store. And I connected them all in series, for 12v of course. Some of these batteries are pretty expensive, but i bought the cheapest, one for 4€. So I they costed me 12€. But if you have a broken laptop/Notebook, you can reuse those. I bought online some broken laptops for very cheap just to reuse their batteries and other stuff that might be usefull. Hope I could help you.

    1
    None
    HariK135

    Question 8 months ago

    Can you please give me code to do this with out an accelerometer?

    1 more answer
    0
    None
    aatef3HariK135

    Answer 6 months ago

    u can remove all the lines that is related to MPU 6050

    0
    None
    ninunahar

    7 months ago

    he man the code is showing error plez solve it fast i am not aware about aurdino code plez correct it fast

    The error is :-

    C:\Users\hp\Desktop\sketch_apr14a\sketch_apr14a.ino: In function 'void setup()':

    sketch_apr14a:21: error: 'Wire' was not declared in this scope

    Wire.begin();

    ^

    sketch_apr14a:23: error: 'light_pin' was not declared in this scope

    pinMode(light_pin, OUTPUT);

    ^

    sketch_apr14a:25: error: 'kalmanX' was not declared in this scope

    kalmanX.setAngle(180); // Set starting angle

    ^

    sketch_apr14a:26: error: 'kalmanZ' was not declared in this scope

    kalmanZ.setAngle(180);

    ^

    C:\Users\hp\Desktop\sketch_apr14a\sketch_apr14a.ino: In function 'void loop()':

    sketch_apr14a:32: error: 'lastchange' was not declared in this scope

    if (accZ > 25000 && (millis() - lastchange > 300)) { // Z axis shake detection

    ^

    sketch_apr14a:33: error: 'flag' was not declared in this scope

    flag = !flag; // toggle light

    ^

    sketch_apr14a:37: error: 'flag' was not declared in this scope

    if (flag == 1) {

    ^

    sketch_apr14a:38: error: 'angle' was not declared in this scope

    angle = 250 - kalAngleZ; // calculate angle (with 250 degrees offset)

    ^

    sketch_apr14a:41: error: 'dark' was not declared in this scope

    dark = map(analogRead(potent_pin), 0, 1024, min_dark, max_dark);

    ^

    sketch_apr14a:41: error: 'potent_pin' was not declared in this scope

    dark = map(analogRead(potent_pin), 0, 1024, min_dark, max_dark);

    ^

    sketch_apr14a:41: error: 'min_dark' was not declared in this scope

    dark = map(analogRead(potent_pin), 0, 1024, min_dark, max_dark);

    ^

    sketch_apr14a:41: error: 'max_dark' was not declared in this scope

    dark = map(analogRead(potent_pin), 0, 1024, min_dark, max_dark);

    ^

    sketch_apr14a:42: error: 'light_pin' was not declared in this scope

    digitalWrite(light_pin, 1); // lights up

    ^

    sketch_apr14a:43: error: 'light' was not declared in this scope

    delayMicroseconds(light); // wait

    ^

    C:\Users\hp\Desktop\sketch_apr14a\sketch_apr14a.ino: In function 'void measure()':

    sketch_apr14a:65: error: 'kalmanX' was not declared in this scope

    gyroXangle += kalmanX.getRate() * ((double)(micros() - timer) / 1000000); // Calculate gyro angle using the unbiased rate

    ^

    sketch_apr14a:66: error: 'kalmanZ' was not declared in this scope

    gyroZangle += kalmanZ.getRate() * ((double)(micros() - timer) / 1000000);

    ^

    C:\Users\hp\Desktop\sketch_apr14a\sketch_apr14a.ino: In function 'void i2cWrite(uint8_t, uint8_t)':

    sketch_apr14a:73: error: 'Wire' was not declared in this scope

    Wire.beginTransmission(IMUAddress);

    ^

    sketch_apr14a:73: error: 'IMUAddress' was not declared in this scope

    Wire.beginTransmission(IMUAddress);

    ^

    C:\Users\hp\Desktop\sketch_apr14a\sketch_apr14a.ino: In function 'uint8_t* i2cRead(uint8_t, uint8_t)':

    sketch_apr14a:80: error: 'Wire' was not declared in this scope

    Wire.beginTransmission(IMUAddress);

    ^

    sketch_apr14a:80: error: 'IMUAddress' was not declared in this scope

    Wire.beginTransmission(IMUAddress);

    ^

    C:\Users\hp\Desktop\sketch_apr14a\sketch_apr14a.ino:79:11: warning: address of local variable 'data' returned [-Wreturn-local-addr]

    uint8_t data[nbytes];

    ^

    exit status 1

    'Wire' was not declared in this scope

    0
    None
    冰顾

    Question 8 months ago

    how to chosing MOSEFET?

    0
    None
    冰顾

    Question 8 months ago

    如何选择 MOSFET?

    0
    None
    Drphil123

    Question 8 months ago

    hello I am very facinated by this project but I was just wondering if ther would be a way to this withought the accelorometer.

    0
    None
    GokudoG

    9 months ago

    Very very good project. totally will make it.

    The link for the battery is dead can you provide another one? can I use normal batteries for it?

    0
    None
    jamestanner

    11 months ago

    This is awesome.... so awesome I followed the guide and made my own :) (pics to follow later) BUT, I'm having an issue.... I can't turn it on / off like you do in the video. I can't shake it in any direction to turn on/off?

    Also, my light "flashes" what I mean is, other than the strobe effect it turns on and off, so let's say it strobes for 500ms then turns off for 500ms, it's not constant strobing like your video.

    I've triple checked my wiring so I'm stuck. For what it's worth, during testing I'm powering from a 12v 2a mains supply, so no battery to go flat

    1 reply
    0
    None
    jacopoc11jamestanner

    Reply 9 months ago

    hi, I'm trying to replace the project but it not works, can you help me with some pictures please?