Tuesday, December 21, 2010

My First Bezier Curve

Taken from the math on this page. Apparently this is about as simple as it gets as far as bezier curves go. I'm hoping to try and recreate a few of the examples on this page before going any further.

Saturday, December 4, 2010

Mac Version of Servo Tools For Maya!



Chishbak has managed to get Servo Tools For Maya Working on the Mac. Unfortunately I don't have a mac to test, But at least we know it's possible! :)

Wednesday, November 10, 2010

Timelapse Calculator v0.1 Released

Yay! My first Cross Platform Application Is ready for use. It is written in Python utilizing PyQt for the interface. Enjoy!

 Features
              • Shooting Duration (Input or Calculation)
              • Playback Duraion (Input or Calculation)
              • Interval Time Between Shots (Input only)
              • Shots to be taken (Input or Calculation)
              • FPS, Frames Per Second for playback (Input only)
              • Reset values, Sets all values to 0
              • Cross Platform Interface and API
To download the tool and for info on installation and usage visit this page on openmoco.org

Friday, October 29, 2010

Timelapse Calculator Preview


So I have been playing with pyQt recently and thought I'd have a go at writing a timelapse calculator. The cool thing about QT based apps is they are cross platform so all design for the UI translates to Windows, Mac and Linux with very little effort. The other cool thing is there is a python binding for QT which is called pyQt so it's pretty easy to learn even for a beginner like myself!

Light Painting Experiment

A friend and I went out the other night to do some timelapse of the stars. While we were out there, we thought we'd try our hand at some light painting.

Camera: Panasonic Lumix GH1
Lens: 14-140 (Stock Lens)
Music By: Little Scale (re-cut for video)

Wednesday, October 20, 2010

My First Timelapse

Lucas next to some wild Sturt Desert Pea

My family and I have just returned from a well earned vacation at Leigh Creek. Leigh Creek is coal mining town with a rich history that goes back to the 1800's It's quite a remote town located in the center of South Australia. Beautiful landscapes, especially at the moment due to the drought breaking rainfall that we have had this year. So the place was alive. I will post a slide show soon. While we were there we would go out driving in the bush in the morning and then my pregnant Wife and 2 year old Son would come home for an afternoon sleep. This gave Dad a chance to go out and play with his toys! Timelapse that is... ;)


Here's some stills of the remote trigger I built based on a circuit I found on Instructables for the Lumix GH1.

 
I used the Open Moco Timelapse Engine v0.82 and Slim v0.12. The code can be downloaded from the Open Moco website. If you are interested in getting into timelapse like me. Here are some use useful links:

openmoco.org Open source timelapse software for use with Arduino and various other hardware platforms.
timescapes.org I great online community for all things related to timelapse, motion control and slow motion photography.
arduino.cc A non-threatening programmable micro-controller aimed and hobbyists and tinkerers.. like me!

Thursday, October 7, 2010

The Lindy Dolly + Kflop + BFG


Gerald Thompson continues to show us how it's done with his new light weight lindy rig. Driven by his modified kflop board and his own animation software. It may not look all that different to the timelapse dollys out there. But I can assure you it's a big step up from a timelapse rig to a true realtime repeatable system. Can't wait to build one of these myself!

Wednesday, September 29, 2010

Point In Triangle Example

A little sketch that colours the triangle red if the mouse is inside it. I'm working towards something I promise! :) The concept taken from the "Same Side Technique" example on this site where the formula is explained in detail:



Friday, September 24, 2010

XY Handle Class Example

Messing around with Processing and thought a manipulator handle widget might be handy to have for future sketches. So here's a real basic one. I plan to add arrows and make it less boxy but it does the job for now.

Friday, August 27, 2010

Rising Sun Pictures

I don't often talk about my work on this blog. Here is a nice little article on the company I work for, Rising Sun Pictures (RSP). The truth is I love what I do and feel like one of the lucky ones...

Here's a link to the article. Yes I am in this picture. Can you spot me?

Saturday, August 21, 2010

BFG + GAMEPAD


Another quick video demonstrating the use of a Game Controller with the KFLOP and BFG Animator Software.

Saturday, August 14, 2010

2010 Show Reel


Some of my work at Rising Sun Pictures over the last 4 years. Most shots showcase my skills as a Lighting TD. I also contributed to Texturing, Modelling and Rigging in several of these shots. There are other films I have worked on since, but unfortunately due to N.D.A. laws I can not put them on my reel until the DVD is released.

Music is By Coda.

Two Motors Are Better Than One


Progress has been slow lately. I've been very busy at work. But I managed to make some time to solder together a proto-board with two easydrivers on it for testing. Here's a quick video showing them in use. I have a more heavy duty Leadshine Stepper Driver and a bigger motor to test for high speed applications. But I need to save up for a suitable power supply first.






Saturday, July 17, 2010

KFLOP + BFG SOFTWARE


A new toy arrived this week. It's a modified KFLOP motion control board. Gerald Thompson is a Motion Control Operator who has set out to create his own software for the board with all of the features (and more!) he has come to expect over the years from using industry tools such as Kuper and the like.

I am very interested in his ventures. Coming from the post production side of the film industry, I have always been interested in repeatable motion control photography for use in visual effects. For the last couple of years I have been tinkering with the Arduino as an introduction to electronics and it has taught me a lot. But I have decided that a full featured dedicated motion control board is the way to go (for me) if I am ever going to make some images before I grow tired of the pursuit.

Gerald has shown me a relatively affordable way to do this. I am hoping to be able to consolidate some of the ideas previously mentioned on this blog for use with the KFLOP.

Saturday, July 10, 2010

My Blog is Changing

I'm redesigning my blog template. So don't freak out and think there's something wrong with your graphics card :) Basically I have widened it to make room for photo galleries that I will be posting more frequently now. I have also gone with the dark grey pro app look as It's my preference when working in any 3d or 2d app for creating digital works. It may look a bit funky for a while as I find the time to update menus and blog titles an the like so please bare with me.

I know I haven't been posting much lately, but I have some exiting motion control stuff that I will be blogging about just as soon as it's up and running!

peace.

Wednesday, June 23, 2010

Houdini + Shaders



I'm learning Houdini and loving it! My point of entry to this app is in the context of lighting and shader writing. It's a lot of fun.

Saturday, May 22, 2010

EasyDriver 4.2 Tutorial



Finally I had some time to do a tutorial on the Easydriver v4.2 board. The following example code is just for demonstrating the board's new functionality. It is was tested on a sparkfun stepper motor. You will notice in the code that each time the step mode changes, so to does the delay time between steps and the number of steps per revolution. The is not absolutely necessary but it helps you compare the differences between stepping modes.

Make sure you have the serial monitor open in the Arduino IDE when running this code. This will give you some feedback about the various modes of the board as they switch on an off.

Note: For real world use I would recommend hard-wiring the MS1 and MS2 pins to some switches to pull them high or low. This way you can free up some more pins on your Arduino.

For a tutorial on how to use the Easydriver v3.1 check out this post

QUESTIONS ARE WELCOME (but please keep it related to the example in this post ) 

///////////////////////////////////////////////////////////
// Stepper Motor skecth for use with the EasyDriver v4.2 //
///////////////////////////////////////////////////////////

// Dan Thompson 2010
//
// Use this code at your own risk.
//
// For all the product details visit http://www.schmalzhaus.com/EasyDriver/
// For the full tutorial visit http://danthompsonsblog.blogspot.com/


////// ED_v4  Step Mode Chart //////
//                                //
//   MS1 MS2 Resolution           //
//   L   L   Full step (2 phase)  //
//   H   L   Half step            //
//   L   H   Quarter step         //
//   H   H   Eighth step          //
//                                //
////////////////////////////////////

int DIR = 3;          // PIN  3 = DIR
int STEP = 2;        // PIN  2 = STEP
int MS1 = 13;        // PIN 13 = MS
int MS2 = 9;         // PIN  9 = MS2
int SLEEP = 12;      // PIN 12 = SLP


void setup() {
  Serial.begin(9600);     // open the serial connection at 9600bps
  pinMode(DIR, OUTPUT);   // set pin 3 to output
  pinMode(STEP, OUTPUT);  // set pin 2 to output
  pinMode(MS1, OUTPUT);   // set pin 13 to output
  pinMode(MS2, OUTPUT);   // set pin 9 to output
  pinMode(SLEEP, OUTPUT); // set pin 12 to output
}



void loop()
{
  int modeType = 1;                         // This number increases by multiple of 2 each through the while loop..
                                            // ..to identify our step mode type.                                            
  while (modeType<=8){                      // loops the following block of code 4 times before repeating .
    digitalWrite(DIR, LOW);                 // Set the direction change LOW to HIGH to go in opposite direction
    digitalWrite(MS1, MS1_MODE(modeType));  // Set state of MS1 based on the returned value from the MS1_MODE() switch statement.
    digitalWrite(MS2, MS2_MODE(modeType));  // Set state of MS2 based on the returned value from the MS2_MODE() switch statement.
    digitalWrite(SLEEP, HIGH);              // Set the Sleep mode to AWAKE.
    
    int i = 0;                              // Set the counter variable.     
    while(i<(modeType*200))                 // Iterate for 200, then 400, then 800, then 1600 steps. 
                                            // Then reset to 200 and start again.
    {
      digitalWrite(STEP, LOW);              // This LOW to HIGH change is what creates the..
      digitalWrite(STEP, HIGH);             // .."Rising Edge" so the easydriver knows to when to step.
      delayMicroseconds(1600/modeType);     // This delay time determines the speed of the stepper motor. 
                                            // Delay shortens from 1600 to 800 to 400 to 200 then resets  
                                                 
      i++;                      
    }                              
    modeType = modeType * 2;                // Multiply the current modeType value by 2 and make the result the new value for modeType.
                                            // This will make the modeType variable count 1,2,4,8 each time we pass though the while loop.
   
    delay(500);
  }
  digitalWrite(SLEEP, LOW);                 // switch off the power to stepper
  Serial.print("SLEEPING..");
  delay(1000);
  Serial.print("z");
  delay(1000);
  Serial.print("z");
  delay(1000);
  Serial.print("z");
  delay(1000);
  Serial.println("");
  digitalWrite(SLEEP, HIGH);
  Serial.println("AWAKE!!!");                // Switch on the power to stepper
  delay(1000);
}



int MS1_MODE(int MS1_StepMode){              // A function that returns a High or Low state number for MS1 pin
  switch(MS1_StepMode){                      // Switch statement for changing the MS1 pin state
                                             // Different input states allowed are 1,2,4 or 8
  case 1:
    MS1_StepMode = 0;
    Serial.println("Step Mode is Full...");
    break;
  case 2:
    MS1_StepMode = 1;
    Serial.println("Step Mode is Half...");
    break;
  case 4:
    MS1_StepMode = 0;
    Serial.println("Step Mode is Quarter...");
    break;
  case 8:
    MS1_StepMode = 1;
    Serial.println("Step Mode is Eighth...");
    break;
  }
  return MS1_StepMode;
}



int MS2_MODE(int MS2_StepMode){              // A function that returns a High or Low state number for MS2 pin
  switch(MS2_StepMode){                      // Switch statement for changing the MS2 pin state
                                             // Different input states allowed are 1,2,4 or 8
  case 1:
    MS2_StepMode = 0;
    break;
  case 2:
    MS2_StepMode = 0;
    break;
  case 4:
    MS2_StepMode = 1;
    break;
  case 8:
    MS2_StepMode = 1;
    break;
  }
  return MS2_StepMode;
}



Saturday, April 24, 2010

Hack Your Servo v3.0

This should shake things up a bit! For those of us who find PID control loops boring but need it in our projects.

Wednesday, April 7, 2010

RGB Colour Mixer


Well I couldn't make it to my local hacker space tonight, so I decided to "hack at home!" :)

This is a prototype of an RGB LED Light I'm designing for my 2 year old son at the moment. I thought I could work on the code design in processing while I am waiting for a new Arduino to arrive in the mail.

Thursday, April 1, 2010

Busy Busy Busy!

Apologies for the lack of activity on this blog lately. I'm flat out working on a Production and the deadlines are approaching thick and fast. I will try to answer comments when I get the chance (which is never at the moment). Apologies but please remember that my place of work pays for my hobbies.

Wednesday, March 3, 2010

100th post!

A very cool Article on how to hack a servo adding 10-bit incremental / absolute encoder feedback to your hobby servo.



Looking forward to "Hack your servo V3.0" with PID control!

Wednesday, February 17, 2010

Where's My Blog's Menus!?

Apologies,

My blog's Drop-down menus are playing up. Unfortunately I am away from my computer for the next couple of weeks. So this blog will look pretty lamo in the menu department until I can get back to my machine and re-upload my files to the server. Sorry for the inconvinience.

Dan.

Edit: All fixed now, Just realised that if I don't log in to my free file hoster every 90 days it deletes the files I use for my Menus! :( ... I might have to switch to Dropbox.

Friday, January 29, 2010

My First Animation Editor?


I made a curve editor thingy! Well, not really a curve. It only does Linear Interpolation. It's a start. ;)

Press the hotkeys 1 or 2 and move the mouse to change the keyframes. If it doesn't work first time, try clicking in the frame first.

Edit: Check out the latest  progress with this curve editor here!

Wednesday, January 27, 2010

Hong Kong Panorama

Here's a stitch I didn't even think would work over looking the harbour towards Hong Kong. Not the best conditions, but it gives you a sense of the city. I have been putting together a slide-show (and learning lightroom at the same time) of the trip. I think I may need to widen my blog to fit in all the vistas :)

Friday, January 22, 2010

Ezi Servo (motor envy)



Sigh.. If only I had money... :)