My time lapse movies were made using an Axis network camera. It has got a built in webserver, so the only things required for the setup is power and a network connection. A simple shell-script running on my workstation periodically requests (using wget or curl) images from the camera, gives them appropriate names, and saves them.
When all the frames have been obtained they need to be assembled into a movie. I've used either TMPGEnc or mencoder to do that. TMPGEnc is pretty straight-forward to use so I won't describe how to use it. Using mencoder is a bit more tricky, but the following quickly assembles all the jpgs in the current directory into a high quality, 25 frames per second, movie with mencoder:
mencoder "mf://*.jpg" -mf fps=25 -o output.avi -ovc copy
Unfortunately output.avi will be very space-consuming and it seems like only mplayer is able to play movies made this way. There is, however, a solution to that problem:
cat output.avi | mencoder -oac pcm -ovc lavc -lavcopts vcodec=msmpeg4 -o new.avi -
The line above turns output.avi into new.avi, which uses a lot less space and is playable on most players. If you find that the compression has introduced too many artifacts then you need to try different settings for the video compression. This is easier to do in TMPGEnc than in mencoder.