Prototype 2

So this is our second prototype rig.  That’s Benny Bondesgaard in the picture, who’s doing most of the building.  We’re shooting tests this weekend in preparation for doing a test shoot with the miniatures next week.  Our process goes a bit like this:

  1. Set a move in Autodesk Maya using a 3D version of the LEGO rig – built to scale, and with moving parts.
  2. Export the move in .move format (ascii format, where each axis is a column, and frames are line separated)
  3. Set the rig to a default position (we’re working on a gear release, so that we can manually move the lift/rotation).
  4. Start Processing and EOS Utility (we’re using a Canon EOS 40D).
  5. Run our sketch.

I found a way to trigger the remote shoot on the EOS Utility using a simple Applescript which sorts through UI elements and finds the right button.  Not even close to a good long term solution, but one that works fine for the moment.  I spent some time mucking around with gphoto and a few other utilities (as well as trying to wrap my head around the Canon ED-SDK), and this is definitely the easiest to implement.  This way, we can create a minimal UI for the actual Processing application and be able to use all of the functions Canon has built into the EOS Utility.

In the Processing sketch, we set each incremental move by setting a motorForwardLimit (which is based on the rotation of the servo).  Often enough, the motor overshoots the limit, so I set an adjustment move based on a threshold of error.  This gets us closer – still not quite exact, but we’re working on it.  I may end up going back to just turning on the motor, and gradually lowering the speed as I approach the right rotation count.  Or perhaps setting a limit for the first step, and then gradually working with the speed for the adjustment step.

After the camera trigger clicks, I also run a loop that goes for five seconds (it tests against the millis() function in Processing, which is a millisecond count from when the sketch was initialized).  This is so that the Applescript has enough time to open and click on the release button in the EOS Utility.

0 Responses to “Prototype 2”

  • No Comments

Leave a Reply

Warning: require_once(/home/sunit_parekh/ failed to open stream: Permission denied in /home/sunit_parekh/ on line 572

Fatal error: require_once(): Failed opening required '/home/sunit_parekh/' (include_path='.:/usr/local/lib/php:/usr/local/php5/lib/pear') in /home/sunit_parekh/ on line 572