Friday, April 10, 2009

DIY Motion Control Rig

Preamble
Ok, so usually I'm not in the habit of blogging my over ambitious ideas. They never usually eventuate so I like to keep them in my head. But since I started this blog, I have noticed that all of my tinkering has began to carve it's own path to the one common goal. Building my own motion control rig of coarse! So in this post I will simply layout some of my plans and direction for all of my future tinkering with motion control.
Background
I've been wresting with the idea of affordable motion control for years. Ever since I found out that the rig I was designing an interface for costs around 100 grand to buy! I was lucky enough to get to play with and study one of these rigs when I was studying at visual effects at film school. Through some reverse engineering and a lot of late nights I was able to discover all of the formulas that make this rig's movements so dynamic! but more about that in another post. I recreated a virtual version of this rig in a 3D animation program called Maya. I wrote some software (with help) that exported the move data to a file which could later be read by the real rig's software and translated into an actual move. The software has since proven itself as a reliable industry tool used on many TVCs and several short films. Less than a year ago I discovered micro controllers and stepper motors. I quickly realized that I had the basic ingredients and experience to make my own rig with the same six degrees of movement that I had already come accustomed to at film school. So here I am, a Full Time Visual Effects Artist, Married with a 1 year old boy and enough ideas to last several lifetimes. I guess that's why they call it a hobby :)
Software Features
- Maya to Motion workflow(already exists) - Ability to program Dual Scale Moves (I have the secret formula :) - Ability to play back the move at any frame rate - Processing timeline GUI with animation curves (Here's a WIP) - Move Data Exporter (not written yet) - Move Data importer and Cache system for playback (not written yet)
Hardware Features
- Arduino (1 or many, what ever it takes) - Stepper Drivers (still researching the right one for my needs) - Stepper Motors (synced to the sync pulse of the video/film camera) - Crane on a Dolly with Pan Tilt and Roll head (adjustable nodal point) - Tracks (custom to begin with) - Basic LCD programmable interface for timelapse shoots.
Summary
So these are just some of the Ideas I have kicking around. I must stress, this is a Hobby, not a business(not yet). So I am comfortable sharing this info without commitment. You know how it is no expectations, no let downs :) It works for me! Won't you join me as I push my brain until it hurts. Right that's the last time I ramble on about myself I promise. From now on it will be practical and hopefully helpful posts from me on motion control.

10 comments:

Jon said...

Hey, your info has been extremely helpful, I've been embarking upon a similar quest, however, with much lower expectations. I just finished building my dolly from 80/20 extruded aluminum and my fist stepper for driving the dolly. I was a 10yr old at christmas when the dolly actually moved.

I've been intending to make a flash interface, but now I'm leaning towards going the Maya route as well. I've only been interested in controlling 3-4 axis at this point but I'm sure my "wants" will soon out weigh my "can do's".

Anyway, it was refreshing to just read your post. And I look forward to seeing what you come up with. I'm envious... we were lucky to get our hands on a bolex at our film school. I can't imagine actually working with real tools.

Dan Thompson said...

Hey Jon,

Thanks for the encouragement. Yeah, hardware, it's great when you have access to it. Currently I am living far away from those resources I mentioned. So I'm in the same boat as you. I have more time than money at the moment so I'm very software focused.

Congrats on your setup so far. Getting anything working in the physical sense is a real achievement I think.

luuude said...

I am too looking at developing a simple motion control rig. For now just pan/tilt and moving an a track, mostly for model shoots. I am getting some help from a friend who is a fresh engineering bachelor in 3 weeks. My needs is basicly a way to both record physical movements and be able to replay them and also filter that data or make adjustments to it. And of course preprogrammed moves, I am looking at Arduino and a 3d software to store, filter and create the movement data. To me it is VERY encouraging to see your progress! Keep up the good work!

Dan Thompson said...

Thanks Luuude,

Sounds similar to what I am doing. Good luck with your research. Let me know how it goes! I'm sure your "friend" will come in handy ;)

Stay tuned, I will have some progress on the 3D side in the next couple of days.

Dan

Marcel said...

Hi Dan,

I'm playing the same game :)

Looks like there's a world wide party on DIY moco going off! Hi Luuude!

I've got a few uTube clips of my effor so far. Biggest problem is getting the time to work on it. (Married + 2yr old) :D

I'm very impressed by your FirstLight production! Makes me wish I'd gone to film school. :( I studied 3D CG for a year but the course was not right for me - too much math and programming, not enough creative.

Best wishes

Marcel

Dan Thompson said...

Marcel,

This is encouraging to hear that there are others like me in this big wide world :)

Get on over to openMoco.org to share your experiences! I'm always keen to share with others who are using motion control for motion picture and not just timelapse. There is a big difference between the two in my opinion.

Dan.

Anonymous said...

Interesting to see interest in DIY MoCo. Depending in what you're planning to use it for though, MoCo may be overkill, as it has all the complexity of having to design the mechanics to create accurate and repeatable camera movement.

Have you considered reversing the process, and applying MoCap to the camera movment, and using this as the refeance for the "virtual" camera in the 3D environment? The mechanics of MoCap are considerably simpler than those of MoCo if the camera movements are manually controlled, requring only sensors to capture the movements.

Dan Thompson said...

Overkill in relation to what? Creating the animation via motion capture or traditional keyframe animation is trivial in relation to the set of goals I mention above.

In Visual Effects, every shot has it's own set of problems. Sure, if you are programing a motion control move to look as though it is hand held but still want to keep the repeatable nature of Moco then using Motion Capture as an Input Device for Motion Control would be ideal.

There are already several Maya input device plugins floating around on the net. Such as the wii remote and the xbox 360 controller. Both of these should plug straight in to the pipeline I am proposing.

If your end output is maya, then low end mocap devices are much more affordable and simpler than mocon. But if your final output is movement is in the form of a motion controlled camera, then there is no avoiding the elements and goals I mention in the above post.

Renato Polimeno said...

nice man, lots of good informations !

I´m going to keep my eyes on your blog ! .ps
did you see those Pacific Motion´s rigs ?

http://pacificmotion.net/Resources/MayaZebra_Ver2_PT.mb.zip

http://pacificmotion.net/Resources/MayaGazelle_Ver2_PT.mb.zip

http://pacificmotion.net/Resources/MayaGraphlite_Ver2_PT.mb.zip

thank you very much,
and keep going.

rylangrayston said...

WOW Dan do we ever think alike...
wish i had found this blog post a year ago when I started this project!

I actualy have everything you talk about up and running only I did it with blender
3D (simmular to mya but open)

please check it out and let me know if you would like to work together on this project!

http://www.blenderartists.org/forum/showthread.php?298691-working-blender-motion-control-camera-rig!-Suzans-Dolly

I also added features like key framing the brightness and colour of lights, and a motion blur option for time laps shots (shutter is open during the dolly movement)