Time Lapse Digital Camera

Following the instructable here, I was able to turn an old digital camera into a time lapse camera using an arduino, a relay, and an open source software program called makeAVI (windows). To modify the camera I disassembled the camera cover and removed the button that activates the shutter.

Time Lapse Camera

With the camera cover removed, and the shutter button discarded, a wire is soldered to each terminal that previously was covered by the shutter button. Touching the wires together tells the camera to take a picture.

It is difficult to tell from the picture, but pressing the shutter button pushes two copper terminals together sending a signal to the camera to take the picture. I soldered a wire to each of the copper terminals. Touching the free ends of each of these wires together is equivalent to pushing the shutter button to take a picture. The next step was to use a normally open relay (sourced from RadioShack) to control when the shutter was activated.

relay for time lapse camera

The two wires that activate the camera shutter are wired into a relay that is controlled by an Arduino microcontroller.

The wiring diagram included with the relay distills the operation of the relay quite nicely. In laymen terms, proving a 5V signal to the coil closes the switch. If a wire from the shutter is connected to the “COM” and “N.O.” pins on the relay then activating the relay takes a picture. In the picture above the yellow wire is connected from arduino pin 7 to a coil pin on the relay. The green wire connects the other relay coil pin to ground. When the arduino makes pin 7 HIGH, the relay closes and tells the camera to take a picture.

Relay wiring diagram

Relay wiring diagram which shows that by providing 5V to the coil, that you can close the normally open relay.

The simple arduino code that controls the relay is shown below:

// Ryan Lowe
// Arduino IDE
// July 10, 2010
//
//Inspiration:
//http://www.instructables.com/id/Time-Lapse-Photography/step9/Programming/
//

int camPin = 7; // sets the camera shutter pin
int var = 8000; // sets the delay between pictures in msec
int blinker = 2; // pin to blink when relay is activated

void setup()
{
pinMode(camPin, OUTPUT); // defines pin as an output
pinMode(blinker, OUTPUT); // defines pin as an output
Serial.begin(9600);      // open the serial port at 9600 bps:
}

void loop()
{
digitalWrite(camPin, HIGH); // presses the button
digitalWrite(blinker, HIGH); // lights LED
Serial.println("HIGH");
delay(2000); // in msec
digitalWrite(camPin, LOW); // release the button
digitalWrite(blinker, LOW); // turns off LED
Serial.println("LOW");
delay(var); // delay between pictures
}

The last step is to combine the sequence of jpeg images captured by the camera into an MPEG movie. This is accomplished using MakeAVI. Making the movie is as simple as telling the MakeAVI software where you stored your still images, and the frame rate (frames/second) you would like the movie to play back at. The length of your movie can be calculated as:

(# of images)/(frames rate) = (Length of time lapse video in seconds)

For space considerations (storage quotas) I will not post any of my videos here, but I have personally had success shooting outdoor scenes. Shadows create a unique effect in time lapse videos. Also any task that involves many steps over a long period of time such as a craft project or cooking is fun to watch. Finally time lapse videos of muted conversations make for an interesting subject matter since you must rely on gestures and expressions to imagine what the conversation was about.

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

End of post, anything past this point is an advertisement appended by my (free) blog hosting company.

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Advertisements

About Ryan

Ryan is currently a National Research Council Postdoctoral Research Fellow at the Air Force Research Laboratory. His research area includes Prognostic Health Management of Electronics. For more information please visit: www.rdlowe.com
This entry was posted in Project and tagged , , , , . Bookmark the permalink.

2 Responses to Time Lapse Digital Camera

  1. Pingback: DIY Time Lapse Digital Camera | PyroElectro - News, Projects & Tutorials

  2. Pingback: Time Lapse Digital Camera using Arduino -Arduino for Projects

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s