The aim of this project is to create a setup to capture the image of a falling object or any object in motion at a precise time using a DSLR and Arduino microcontroller. It can be done in many different ways, but the method I tried is illustrated below.
Figure 1: Schematic of the setup
The idea is, when the object falling or moving blocks the light source from reaching light sensor the camera and/or the external flash unit is triggered. An Arduino Uno microcontroller board is used to measure the sensor values and send trigger signal to the camera/flash. With the microcontroller you can change the threshold value of the light sensor value and add precise dealy to the trigger signal. Here the light source is a simple laser pointer is used as a light source and a cadmium sulphide photocell acts as a light sensor. The wiring diagram is shown below,
A bit of explanation on how this circuit works. The photocells or the Light Dependent Resistors (LDR) have a high resistance when there is no light, equivalent to open circuit. When light is shine on them their resistance reduces. The value of the resistance depends on how bright the light is. Initially when the light source is pointed to the LDR, it has a low resistance. The LDR and the resitor R1 act as a voltage divider circuit. The voltage drop across R1 is measured by the analog input terminal of the Arduino board. Ideally would have almost no resistance (0 ohms) when a bright light is focused on it. Which means the voltage drop measured across R1 would be ~5V. But depending on the intensity of the light source and the distance from the LDR, the LDR will have some low resistance value and hence the voltage across R1 (measured at A0 terminal) will be less than 5V. When a moving object cuts the beam of light the LDR value increases and hence the voltage across R1 drops. By comparing this value with an appropriate threshold value (which you can set to be somewhere between when the light is on the LDR and when it is blocked by the object), you can use the digital output lines to trigger the camera and/or flash by setting it to high.
The next step is to use the signal from digital output line of the arduino to trigger the camera and/or external flash unit. To trigger the external flash all you need to do is to short the two pins at the hot shoe connector (shown in the image below). I used a wireless flash trigger receiver which has a PC sync port to mount the flash unit. One end of the PC sync cable connects to the receiver unit and the other end connects to the collector and emitter terminals of a NPN transistor. The base of the transistor is connected to the one of the digital output lines of the Arduino board via a 1.1kohm resistor. This NPN transistor circuit acts as a switch which shorts the terminals of the PC sync cable and inturn firing the flash whenever the digital output line goes high.
The camera can be triggered in a similar way using the remote shutter release cable. Depending on the make and model the connector type and the pin configuration can change. The olympus E-520 uses a 12 pin port to interface with the computer for data/video transfer and remote shutter release. I got the pin diagram for the connector from the link here. I used a 3.5mm stereo plug to connect to the other end of the 12-pin connector (this way I can use the same cable to hook up to other circuits if needed). The digital output (pin D2) from Arduino is connected to a transistor switch circuit and the output of that is connected 3.5mm stereo female pin. The line going to pin 8 of the camera has a switch on it. This is the half release button. For the full release to work the half release need to be pressed. Since the camera menu does not work when the half release button is pressed, having a switch helps so that you can look at pictures or change settings while taking pictures. Flip in on to take pictures and flip if off the change the settings or look at pictures.
For more detail: Capture the image of a falling object using Arduino