Introduction: TfCD - 3D Motion Tracking

Picture of TfCD - 3D Motion Tracking

This is an instructable on how to track 3D motion by using Arduino. The device can tell you where your hand is placed within 3 sides of a cube, by displaying it within a 3x3x3 cube on your laptop.

Curious how it works? Then read on!

Step 1: Tools & Materials

Picture of Tools & Materials

For this project you will need the following tools and materials:

- Arduino UNO with cable connected to computer

- Breadboard

- Wires

- 3x 220 KOhm resistor

- 3x 10 KOhm resistor

- 3x Wire with 2 alligator clips

- Scissors

- Pliers

- Tape

- Utility knife

- Ruler

- Aluminium foil

- 3x Cardboard square (20x20 cm)

Tip! For this project, we have used some normal wires. However, for even better results you could use shielded wires between the aluminium foil and breadboard.

Step 2: Making the Cube

Picture of Making the Cube

Now we are going to make the 3 sides of the cube.

First cut the aluminium foil into squares. These squares need to be smaller than the cardboard (<20x20 cm) to make sure the foils don't touch each other when assembling the cube.

Second, put the foil onto the cardboard. This can be done with spray glue or, like we did, with translucent tape.

Last, you will need to tape the sides together forming the cube.

Step 3: Prepare the Wires

Picture of Prepare the Wires

First connect a cable from the 5V of the Arduino to the positive row of the breadboard.

Then repeat this step 3 times.

Connect a wire from port 8 to the breadboard. In serie connect 1 10K ohm to this wire. Then in the same row connect one 220K ohm (or in our case we put 2x 100K en 2x 10K ohm in serie to get the same resistor) and one wire that connects to the X plate.

Then repeat for a wire from port 9 to the Y plate, and port 10 to the Z plate.

Step 4: Upload to Arduino

Upload the Arduino code to your arduino program, then upload the processing sketches to the Processing program. That is downloadable from their website. Then upload first upload the Arduino code to your Arduino. Make sure your laptop is plugged into the charger. Then run the processing sketches and the 3x3x3 cube should appear on your screen.

Now you only have to calibrate the software. Have your hand (fist) in the upper corner, farthest away from the cube, and while holding the left mouse button, slowly move towards the point where the 3 carboard sides meet. Then release the mouse button and the software should be calibrated. You can repeat this step any time you want if you feel it is not working properly.

Step 5: The Result!

The final result should look like this video.

Hope you enjoyed making this instructable :)

Comments

SachinB35 (author)2017-05-10

If interested in understanding how the full system works check out the link below

http://makezine.com/projects/a-touchless-3d-tracki...

JomarV4 (author)2016-12-29

hey man what software did you use for executing those object (cube)

DrAure (author)2016-12-25

Can someone explain me the main functions of the code if I just want to have the coordinates X, Y and Z with this for another project?

DrAure (author)2016-12-22

I got an error when executing the Processing code. Can someone help me?

Mjtrinihobby (author)2016-12-22

Superb.

zazu_247 (author)2016-12-21

Wow, this great instructable only just got featured? I remember being fascinated by it way back in 8th grade. That was 5 years ago.

DrAure (author)2016-12-21

Does the same code work with a 30x30x30 cm cube?

Mandre_ (author)2016-12-21

What principles allow this to work?

ThomasK19 (author)Mandre_2016-12-21

It's the capacity of the 3 areas changing by approaching the hand. The nearer the hand, the larger the capacity. This will only give a very rough measure as the capacity of the human/plate capacitor varies quite a lot (not only by the mass of the human, but also by temperature, humidity, etc.).

Swansong (author)2016-12-21

Neat project! I hope you make an A :)

About This Instructable

4,250views

106favorites

License:

More by Maartjeeee26:TfCD - 3D Motion Tracking
Add instructable to: