Making an exposure box from scratch, part two

November 4, 2012

[EDIT: This post also was featured on Hack a Day. Again many thanks to the Hack a Day Staff, and to those that are reading here!]

Ok, I know that a lot of time has passed since the first post! I’m sorry! Here’s the second part, with also a video of the exposure box.

The board schema is pretty simple, there are almost the essentials components needed to
drive an Atmega8, plus a TIP112 transistor and a 7805 linear regulator.
Power is provided through a mean well switching power supply that picks the mains 220
AC and outputs a (almost) steady 12V DC. The linear regulator has been used to limit the voltage to 5V;
The 5V supplies the micro-controller and the lcd display, instead 12V rail has been picked directly from the PS and fed through the led array using the transistor.

We use the transistor as a switch, driving it into saturation. When saturated, it “gives
power” to the led array and, instead, when we stop to saturate him, it “cuts off” power on
the led.
To accomplish this task, we need to assure that the transistor goes into saturation zone,
so, some boring math is required:

Hereʼs some specs of the TIP112 transistor:

Absolute maximum rates:

  Vcb = 100V  
  Vce = 100V  
  Veb = 5V  
  Ic = 2A  
  Ib = 50 mA

Typical characteristics:

  Vce (Sat) = 2.5V  
  Vbe = 2.8V  
  Hfe = 500/1000  

We have a load of 0.9 A to drive, so

  Ic = 0.9 A #(Below max constrain of 2A, so, all ok!)  
  Ic = Hfe * Ib #where:  
  Hfe = 500 #(I chose to use the minimum value from the data-sheet)  
  Ib = Ic / Hfe = 0.9/500 = 0.0018 A # 1.8 mA

To drive our transistor into saturation we need to source 1.8 mA to the base;
We need to put a resistor Rb to limit the current between the pinout of the micro and the
base of the transistor:

  Rb = (Vpinout - Vbe) / Ib  
  Rb = (5V - 2.8V) / 0.0018 A #=~ 1 222.22222 ohms, near 1Kohm
  P = V*I = (5V - 2.8V) * 0.0018 A = 0.00396 watts

So we can chose a resistor of 1K, 1/4 W, that is near the calculated value. If you want
more details on transistor operation and more calculations, check this great erMicro blog post. (An awesome work)

As I tell you in the previous post, to draw the board schematics I used kicad. I chose to use kicad instead of eagle cad just because kicad has no board size limitations and is completely open source.
I found the learning curve of kicad a little steep (maybe all cad software out there are a bit not-so-intuitive at first), but once you got the basics, it become more simple to use.
Perhaps the major limitation of kicad is that there are not so many parts available, and that there is not so much documentation around.
I managed to create a component modifying an existing one [the transistor], create a complete circuit schema and outlining the board. I used to auto-route all connection to the board, cause at the moment the autorouter within kicad is really unstable and almost impossible to use.
Thereʼs no need to use an external oscillator on the board, cause Iʼm using the internal one of the Atmega.
The software is pretty simple (and of course thereʼs lot of room for improvement), written and burned on the Atmega8 using arduino environment.
I need to upload just the software, not the bootloader.
To do that we need an external programmer  (I use a usbtiny bought from adafruit store), and then you have to add a custom arduino board on boards.txt. For more infos on customizing boards.txt, visit arduino official site. You can find the configuration that I have inserted on my boards.txt file on my github page.

First, if you would like to have a nice overview on pcb etching, you can check out these two links:

I used the etching solution proposed by blondiehacks, one part vinegar with one part hydrogen peroxide salt as needed.
It worked great.
To drill the holes on the boards I used a good-ol Dremel (see his restoration process),
with bits bought on ebay.
Here are some photos of the first prototypes made using the box:

The first attempt made was a larson scanner, using the circuit available by the evil mad scientist labs. First one was a sort of disaster, with a lot of tracks gone and little small holes on copper. I improved board design using a greater wide for tracks, and I resolved the holes problem using 4 positive sheets stacked.

Good results was obtained using a track width of 0.351 mm and an exposure time of almost 6 minutes. The errors that I made were caused by bad design or bad etching and seems there are no problems with the uv led array.
Once I had a complete working larson scanner, I decided to start etching the uv exposure board.

The first result was apparently ok, but I forgot to connect all ground planes, so I had to connect them with wires. Another problem came near the regulator, where I find a short. After correcting all these design errors, I obtained a good timer board!

Project UV exposure timer box completed with success !!

At the end of the story, I have a complete self made uv exposure box a lot of new things learned, and more things to do with them.
Here you can see a video of the completed exposure box and a video of the completed larson board scanner.

I hope everyone enjoyed my post, if you liked it or not, drop me a line!