Maurice Ribble of Massachusetts created a high-speed photography setup which uses the Arduino along with a laser or sound sensor to trigger a camera flash at exactly the right moment.
There are a lot of places on the web that describe how to trigger a flash with an electrical circuit, but I feel that using a microcontroller like Arduino offers big benefits. For instance you can easily add new sensors, or even run multiple sensors at once. Since the triggering of the flash is done in software it’s easy to add delays, or make a more complicated triggering algorithm based on multiple sensors. Lastly while the microcontroller does add some cost, it’s not much because boards like Arduino can be bought for around $35 and some of this cost for the microcontroller is offset by simpler circuits.
By triggering the flash instead of the camera shutter, Maurice is able to capture events that occur in significantly less time than the approximately 20ms it takes between triggering the shutter and when it actually moves and exposes the film. To do this, he takes the photos in a dark room, sets the exposure time on the camera to 10 seconds, and then uses the auto-triggered flash to time the exposure.
His tutorial contains schematics for the laser and sound sensors, as well as the Arduino source code. Very cool stuff.