This is the first post of the “PONF” series. I am the CTO on the PONF (Photography On Film) Project. This project is the first dual back camera: digital and analog. One of the most important aspects of this project is that it is a full open-source project.
With this article we will detail all the electronics required for the project. For me, this is the most interesting aspect of the PONF project. I hope that hardware and software solutions presented will be helpful and interesting to the readers. Most of the parts of the project we will present on electroschematics.com have been presented in a fashion to be easier to replicate in your home workshop.
If you would like to know more on the PONF project take a look at the links below:
Project updates on twitter: @ponfcamera
A special thank for the support to this series to Adam Carlson, Editor-in-Chief.
This experience started by disassembling a Canon 60D electro mechanic shutter. Thankfully it was not “destroyed” in the disassembly process. All of the screws were removed.
Once disassembled I found a series of test points on the ribbon cable of the shutter. Probing the signal paths, I discovered that every test point corresponds to one of the pins of the shutter connector.
My teardown analysis validated a few thing, mainly, the timings as well as the opening/closing sequences will be controlled externally by the main camera board.
The shutter is built in three main parts:
Based on this diagram of the electrical functionality of the system I connected the shutter through the test points to the Infineon TLE94112LE Arduino Shield. I extracted some of the information from the datasheet to show that this is a sophisticated half-bridge IC:
This is a perfect solution to control the logic of the shutter.
The TLE94112LE is conceived to manage both DC motors and solenoids. I thought that it would be possible to control the two solenoids with the same IC, but unfortunately it did not work. After further testing, I discovered that the solenoids are triggered by setting the control signals low (grounded) when the shutter is in use. This behavior is incompatible with a direct output logic from the Arduino GPIO, so I added a small circuit and changed the wiring design. To facilitate debugging I also added a couple of LEDs to see when the two solenoids receive the signal to release the curtains.
The TLE94112LE Arduino Shield is connected to the shutter motor through the TLE94112 pin header. Nets OUT1 and OUT2 connects two of the twelve half bridges of the IC and are connected to the DC shutter motor.
The power line on the pin header P2 is connected to the shield motor power line. I was able to find the optimal voltage for running the DC motor through empirical testing. The best voltage I found for this application was 7.5 V. To find this value, I progressively increased the power line voltage (my power supply is a cheap DC/DC voltage regulator) until the TLE94112LE stopped sending an under-voltage error condition.
The two solenoid signals are sent directly by the Arduino to a couple of NPN transistors. As mentioned above, to monitor the solenoids status changes I added a couple of LEDs.
The PCB has been engraved with a CNC as shown in the images below. I have also designed a support to simulate the camera’s optical path from the lens ring up to the shutter plane.
With the reverse engineering complete, and electronic hardware fabricated, the new shutter prototype can be finally tested. Before we get that far, we will need some software development, obviously! Next week in part 2 we will go over the firmware aspect of this design.