In this instructable I explain how I made my custom UV Box. Unfortunately I made it almost a year ago and I took few picture during the actual construction. Furthermore I did make hand written plans before building it but I threw it away right after that... So it won't be a "follow the guide" instructable. I just hope it will contain enough ideas to be useful to those who'd like to try to make their own.
I made it using a aluminum tool case. The choice of high power UV LEDs makes it more expensive than the traditional ones we see here, so I wanted it to be good enough to suit me better than a commercial exposure box.
The cool things about this UV box are:
- 1 or 2 sided
- 3W UV LEDs used, so no huge PCB needed to mount 5mm UV LEDs by hundreds, only a dozen per side
- Powered by an ATX power supply
- Electronic timer controlled through a rotary encoder
- Red LEDs to light the work area while aligning PCB and mask
- Sensor to detect when the box is closed
- A cute status LED in the encoder
- Made it myself (well, that's the best thing, isn't it?)
Electronics behind it was the occasion for me to try cool things like:
- SMD components
- Solder mask
It took me a week or two to make some exposure tests (to calculate and check distances between LEDs and glass, LEDs placement on the plate, etc.) and ways of powering it (I first used a Constant Current Voltage boost circuit, then a simple resistor per LED row), a week-end to build the case and assemble the LEDs, a week to burn them, then some time to receive replacement LEDs. I made 2 versions of the controller circuit so that took some weeks also... I have little free time and many projects that come to mind regularly so this project took few hours of work but a few months to complete.
Ah, another detail: I'm not a native english speaker so my vocabulary can be limited when it comes to technical terms (in woodworking for instance), so please don't be too picky about that :)
Step 1: Box in the Box (well the Tool Case)
I first cut a wooden plate to put UV LEDs (glued). My idea was to reach an A4 (21x29.7cm) size, but eventually I settled for a little smaller than that. I think I'll just never do a circuit larger than, say, 16x10cm which is a rather standard PCB size down here.
After some tests I bought 3W UV (395nm) LEDs like this kind:
The LEDs are wired in a 4 parallel rows of 3 LEDs configuration. My first idea to drive these LEDs were to use a constant current driver for all the LEDs, but it was a disaster as I should have expected: at some point an LED died, so the row opened, the constant current flowed in the 3 remaining rows, increasing the other three lines current, so a 2nd LED fried, and so on. In a fraction of second I had one dead LED on each row. And I suppose it could have been worst if multiple LEDs had burnt altogether. So after ordering replacement LEDs I just put a simple resistor on each row, that way each one is independently protected.
I nailed a "frame" I made with wooden plates glued together with the plate and screwed the whole thing through the bottom of the case (yes, it's ugly) :)
I used a router (Dremel Trio) to make space for the glass to come in. I later added some foam between the wood and glass (not visible on this picture) to be able to press the glass on the PCB without breaking it.
The glass was bought in a local hardware shop, cut to the dimensions I wanted, so I didn't have to bother with that part.
Step 2: The Upper Part
To make the upper part of the exposure box I began with building a wooden frame, broader than the lower one, and assembled it with a hinge.
As I needed a way to retain the upper glass in the wooden frame I used metal squares screwed to the frame. I routed the lower frame for the squares to fit nicely, so that both pieces of glass would be in perfect contact. To compensate for the little imperfections and the presence of a PCB in between I added some foam between the glass and the wood. I used a light white foam but I realized I could have used some of the dense dark foam that was on the inside of the case (and that I partially removed anyway).
I saw that the distance between the glass and the lower LEDs plate was less than the distance between the glass and the upper LED plate. To compensate I added a piece of wood to lower the upper LEDs plate before screwing it.
Last but not least I added a piece of wood on the upside of the case to put pressure on the wooden frame when the case is closed. This time I used the dense dark foam (see next step for a picture)
Step 3: Powering the Thing
To make the LEDs shine we need a good supply: 24x3W LEDs is a lot of power! I don't think the LEDs are properly powered by the way, they shine brightly but as I remember the current I measured at that time was not quite the nominal amount for these LEDs. It's more than enough anyway, so I'm OK with that.
I took an ATX power supply from an old PC. Its form factor made it perfect to fit the case. And yes, the PSU installation is also ugly ;)
On this picture the resistors per row are installed.
During the development phase a mechanical switch was used to turn the LEDs ON/OFF with the +12V directly connected to it. Then I used a relay PCB to control the LEDs. I kept the switch to choose between 1 sided or 2 sided boards. By default (switch lever down) only the upper plate of LEDs is ON. This is because it's easier to see what you do when the mask is on the PCB and not the other way around. When the switch is ON, both plates are lit.
If you want to use the ATX power supply check one of the many dedicated instructables to see how you turn on the supply by grounding the correct cable. I just put a jumper cable to ground it during the development phase but that's a bad idea, as it is always possible that you have a bad connection, or plug it on the wrong cable and burn your power supply.
The picture of the PCB is the first version of it, just to show the relay board plugged in.
Step 4: Adding a Little Bit of Intelligence
I also wanted to build a timer to switch the UV LEDs ON and OFF. So I designed a circuit using an ATmega328/Arduino IDE.
What I used:
- 4 digits 7 segments red display (https://www.sparkfun.com/products/11405)
- An IC to drive the display (BCD to 7 segments driver)
- a buzzer
- SMD resistors/caps
- a relay board (I used this one I think :https://hackspark.fr/en/2-channel-5v-relay-module....
- an RGB rotary encoder (https://www.sparkfun.com/products/10982)
In my first try I let the micro controller handle the 7 segments display, but I wanted to play with a dedicated IC, just to try something new. And I also tried SMD technology (not the Atmega but the driver/resistors/caps). Finally I tried a solder mask film bought on ebay, just to test it. Very nice result.
I join the Fritzing project if somebody's interested (the schematic part is not very readable, I adapted it from the PCB screen as I was routing it, it tends to mess up the schematics).
The rotary encoder is used to set the exposure time in minutes/seconds, the integrated switch turns the timer on and off. Of course the timer switches off at the end of countdown. The RGB LED inside the encoder lights BLUE when UV LEDs are off, purple when UV LEDs are ON, and it was planned to light GREEN at the end of the time (when the timer is 0000) but I think I never coded that.
I could also have controlled the ATX power supply (sleep/ON) to control the UV LEDs but a relay was fine for me (and I already had it lying around).
Step 5: A Little Touch of Luxury in the Box
Since I need to see what I'm doing when placing a PCB and the mask I often used some red LEDs. Like in photographic development the red light can be used to light the room: the photosensitive layer on the PCB is sensitive to UV light, not the other end of the specter. I had a dual relays PCB attached to my circuit so I could just light red LEDs using the second relay if needed.
I played it simple and bought an adhesive SMD led roll, which I placed all around the upper plate.
To decide when to light the red LEDs I used a reed switch: when the case is open the UV LEDs stop (my eyes are grateful), and the red LEDs turn on. When the case closes the red LEDs turn OFF, but you have to use the encoder switch to turn the UV LEDs back on.
Ho, also, when the case is open the RGB rotary encoder lights in red, but that's just for the beauty of it: after all the box is open so you can see the red lights are on, and anyway you can't see the encoder anymore :)
Step 6: The Software Behind It
I'd once writen a beautiful arduino sketch that worked a treat... And lost it. So I wrote another one that is a little buggy. Nothing too awful, perfectly usable as long as you don't go too high in the timer value.
I join the code. I haven't spent much cleaning/commenting it, so don't expect a clean code... Well it's as ugly as the rest of the project I guess :)
Step 7: Performance
Of course the controller PCB was made using this very UV box (manually turned ON/OFF obviously) for the PCB etching and solder mask curing. With that many powerful LEDs the exposure time I use is 60 to 90 seconds, although I already had some results after 30-45s when I was testing. For the solder mask curing time I used the advised times (I think it was 20mn).
The picture shows a little test, SOIC-8 to DIP-8 adapters, with tracks width ranging from 24 mils (outside) to 12 mils if I remember correctly (center).
I've made multiple PCB with this box, it's a real pleasure to use.
I join a small video of the box usage.
Hope you found this instructable useful.