Full frame digital camera from scratch - Part 2

In this video, I continue the development of my full-frame digital camera. In the previous video [link] I introduced the basic concept of the camera and I showed that I could already take photos with the TCD1304 linear CCD-based camera. However, I mentioned in that video that I am going to be continuing the work with the device and improving it and making it into a better, fully portable camera.

I show you the most recent updates and upgrades in this video and article.

Improvements and future work


The main structure of the camera remained. I kept the FB09 plastic enclosure as the house of the camera.

However, I did two big changes.

First, I replaced the mechanism that does the scanning. Previously, I used an MGNxxx-based miniature linear rail and bearing to support the CCD and allow it to be moved along a straight line using a NEMA8 stepper motor with a built-in lead screw. I noticed that the bearing does not move super smoothly and it was also a bit strange arrangement with the bearing, the motor and the CCD holder, so I designed a new mechanism.

The new mechanism looks really similar to the mechanism I built recently for focus stacking [link]. The lead screw runs in the middle, and there is a 4 mm steel rod on each side of the lead screw to support the block that holds the CCD. There are no bearings or anything, the 3D-printed CCD holder is in direct contact with the steel rails. The holes on the CCD holder are reamed with a 4 mm drill bit, so there is a snug, but loose contact between the rails and the CCD holder.

I also added two limit switches at the two ends of the mechanism. The limit switch closer to the motor is used for the starting position of the scanning. The CCD returns to this limit switch after a full frame is scanned. Also, when the camera is started, the device automatically performs a homing-and-parking and the CCD holder is returned to this switch.

The other limit switch is at the end of the lead screw. This limit switch acts as a “stop switch”. When this switch is hit at the end of the scanning, the scanning is stopped and the CCD holder is returned to its original position ad the limit switch closer to the stepper motor.

 
 

NEMA8 stepper motor with built-in lead screw and the 3d printed CCD holder with the nut for the lead screw. The yellow triangle-shaped piece is the nut and it comes with the stepper motor. The lead screw has a 1 mm pitch, so with 200 steps/turn (full step) microstepping, the step size is 5 micrometres.



3D drawing of the “flange focus extension tube”. The bottom part is directly fixed on the FB09 enclosure, and the top part is screwed on the bottom part. The M42 thread and the lens are mounted on the top part.

Another big change is the lens mount. Since I changed the mechanism that moves the CCD, the position (height) of the CCD was also changed, therefore the distance between the CCD and the end of the lens (flange focal distance) was not 45.46 mm anymore. Since it is hard to get the distance perfectly with 3D printed parts and handmade structures, and because the camera is still under development, I came up with a solution. I designed a threaded lens mount which allows me to change the flange focal distance. With this tube extension, I could get better-focused images than previously because I can adjust not only the focus but the flange focal distance too.







 

Finally, I made some changes to the PC software and I am really happy about the outcome. Previously, I had to scan the whole frame first before seeing any visual information (picture). The scanned image was first saved to a text file as a matrix of intensities where each item of the matrix was a pixel, then I had to plot this matrix as an image (“bitmap”). I used graphing software (qtiplot) for this purpose.

Now, this changed. I added a new part to my already existing code that takes each scanned column and it prints it as a column into a picture box. As the scanning progresses, the picture is built on the display simultaneously (see gif below).

Scanning in fast-forward. The horizontal lines are caused by the compression of the GIF.

3D printed mechanism with the TCD1304 PCB installed on it. Please note that this is the first iteration of the mechanism, it does not contain the limit switches, and the rails are not yet cut to size.

 

Full setup with the second iteration of the mechanism with the limit switches and with the rails cut to size. I did not cut the lead screw because it is not too long and I am afraid of damaging it during cutting.

At the end of the scanning, there will be an image of the scanned subject just as you would expect after using a normal scanner. Then, I can save this image as a high-resolution image by converting the acquired matrix into a bitmap (BMP) file. Unfortunately, with the built-in ADC of the microcontroller, I can only capture at 12-bit resolution, so the real “bit depth” of the image is 12-bit, but the BMP is saved as a 16-bit BMP file.

The next step is to add a display and a memory card to the setup so I can use the camera without having it attached to the computer. I already started to work with the memory card part, but I haven’t started to work with the display part. Once I manage to make both work with the current circuit, I will design a huge PCB to replace the back plate of the box. This back plate will be used both as a circuit board as well as a structural part.

Stay tuned!



Previous
Previous

Vertical attachment for the focus stacking rail

Next
Next

Peltier cooler-based cloud chamber