I want to make a timelapse Video of a growing Plant in the forest.
Therefore I wanted to hack a cheap (Foto-)Camera to control it with the Arduino.
All in all I would leave the whole stuff three days in the forest.
Has anybody experience with timelapse videos (and Arduino)?
Here some code to get started. It has 2 constants the PHOTOINTERVAL and PULSELENGTH.
PHOTOINTERVAL is the time between snapshots.
PULSELENGTH is the time defining the length of the pulse for the camera.
You can test the sketch by connecting a LED to pin 7
unsigned long time = 0;
unsigned long lastpulse = 0;
unsigned long lastblink = 0;
#define PULSEPIN 7
#define PHOTOINTERVAL (30 * 60 * 1000UL) // 30 minutes in milliseconds
#define PULSELENGTH 100UL // pulse for camera, in milliseconds, must be shorter than PHOTOINTERVAL
void setup()
{
// serial is not really needed but always handy while tinkering :)
Serial.begin(9600);
Serial.println("Photo interval 0.1");
pinMode(PULSEPIN, OUTPUT);
pinMode(13, OUTPUT); // on board led for "alive" blink
}
void loop()
{
time = millis();
// time to start a new photo?
if (time - lastpulse > PHOTOINTERVAL)
{
lastpulse = time;
digitalWrite(PULSEPIN, HIGH);
}
if ((time - lastpulse >= PULSELENGTH) && (digitalRead(PULSEPIN) == HIGH))
{
digitalWrite(PULSEPIN, LOW);
}
// blink onboard led to show sketch is still alive
if (time - lastblink > 1000) // fixed interval
{
lastblink = time;
digitalWrite(13, !digitalRead(13));
}
}
I hacked a Vivicam 46 camera for a motion sensor camera project. I picked it up at walmart for $19. The only drawback is it doesnt have a flash. If you can solder, it's an easy hack. Here's a pic and some instructions to help.
Open the camera and locate the power and shutter buttons. The board should look similar to the image above. You will be soldering wires to the solder points labeled A,B,C, and D. Unforunately, I dont remember which solder point controls which button but I do remember "A" and "B" were one button and "C" and "D" was the other button. To figure out which is which, with the batteries out of the camera, place a continuity meter on points "A" and "B" and press one of the buttons. Do the same for points "C" and "D".
I used a couple opto-isolators to trigger the buttons.