So, I have 1.2 metres of 2.5 cm right-angled aluminium on which to attach all the electronics. Step one: the candles:
I bought a batch of 2.5mm nuts and bolts to attach the LEDs. There’s a washer behind the nut to spread the load where it meets the LED base, and a shake-proof washer by the head to keep the whole thing tight long-term. I used some thermal compound (grey goo from a syringe, five for a pound on eBay) to maximise the heat transfer from LED to heatsink (i.e. the metal strip).
In a previous post we calculated we would need 8.2 Ohms at 2.8 Watts. However, that was for 3W LEDs. We since decided to us 10W LEDS running at 3Watts (because they are physically smaller). This changes the calculation somewhat, because they need a different voltage for the same power output. In fact, the 10 W LEDs will consume 3 Watts when given 9.1 Volts at 80 degrees C (I’m using a high temperature because they consume more power as the temperature rises). However, there is a limited range of resistance values available, and I didn’t want to have to put several in series, so I used some 15 Ohm 10 Watt resistors. Using these meant that the LEDs ran at about 220 mA, so they are dropping about 3.3 Volts (V=iR, =.22 * 15) from 12 to 8.7) and consuming just under 1 Watt (W=Vi = 3.3 * .22).
In theory I could have used physically smaller series resistors (as someone at Leicester Hackspace asked: “Why did you use such ***** big resistors?”). At the time, I was concerned that an LED could short circuit, putting the full supply voltage across the series resistor. In fact, I don’t now think this would happen, but I used large resistors just in case. So, if the full 12 Volts were to be across these 15 Ohm 10 Watt resistors, they would dissipate 9.6 Watts (W=V squared / R) = 12 x 12 / 15).
Notice the curly plastic wire-wrap in the previous photo. I found this holds the wires together nicely and looks remarkably professional.
I glued the resistors to the metal strip using Araldite. Unfortunately, the metal was too smooth to make a good bond and some of them came unglued (next time I’ll sand-paper the metal first). However, the resistors are attached to the LEDs at one end and the other wires at the other, so they don’t really need much attachment. Nonetheless I reattached them using some heatsink bonding sheet (which is described later).
The Veroboards (i.e. stripboards) holding the Arduino and the switches/logic were attached using plastic spacers / screws (eBay again). This worked surprisingly well (or perhaps I was just surprised that I managed to drill all the holes to line up correctly…) I insulated the boards from the metal using plastic packaging material (as wastefully used to package individual almond croissants at the co-op). The material was ideal, until I tried shrinking some nearby heat shrinkable tubing using hot air from the rework station, only to find that the plastic packaging shrivels up almost instantly and had to be replaced (fortunately I’m rather fond of those croissants).
The Flash needed its own heatsink which would be vertically attached to the main strip on the left-hand side. I mounted the 3 LEDs as close together as I could. The holes above the LEDs (in the photo) were for attaching the wires, but in the end it worked better to have them running down the back of the heatsink. Each LED has its own power supply wire because each has its own series resistor (as described below).
On the back of this heatsink I mounted the thermistor. The blue wires go back to the logic board so it can disable these LEDs if the temperature rises too far (about 62 degrees). I used some heatsink bonding sheet from Maplins (£7 for the size of a post-it, and not all that sticky, but it did the job). It’s rather important that the sensor is attached because if it falls off the logic won’t protect the LEDs.
The red is regular electrical tape, not because it has its own adhesive but because it will stick to the bonding sheet on either side and help hold the sensor in place. In fact. it’s a close fit between the back of this heatsink and the wooden side of the frame, so it can’t exactly fall off completely, but it could lose thermal connectivity.
There’s also a thermal fuse. I was going to attach it to the back, just below the thermistor, but it’s actually quite big and difficult hold in place. For one thing, if you solder to it the heat may well cause it to trigger, making it useless, so I had the added bulk of screw terminals. In the end, it was just too much effort to do it that way, so I soldered to it anyway (using pliers as a heat shunt and judicial use of freezer spray) and attached it to the LED side using heatsink bonding sheet as well as hot-gluing the leads in place (again, carefully).
The LEDs were in parallel, each with its own series resistor. The alternative would be to have the LEDs in parallel, but all of them connected through one series resistor. The problem with this would be that if one LED were to fail (open circuit) the reduced current through the resistor would reduce the voltage drop, increasing the voltage across the remaining LEDs (and increasing the current).
I wanted each LED to run at 1 Amp, which equates to about 11.1 Volts at 80 decrees C. So we needed 0.9 Volts drop at one amp, which would be 0.9 Ohms (R=V/i = 0.9/1), dissipating 0.9 Watts (W=Vi = 0.9×1). If there were a short circuit then these resistors would allow some 14 Amps to flow, which would blow the main 3.5 Amp fuse (there’s also a 200 mA fuse protecting the Arduino).
However, again, reality wasn’t so simple. I happened to have some 0.68 Ohm 7 Watt resistors and wanted to use those. Unfortunately, this led to a current of about 1.2 Amps when cold. In fact, given that the LEDs are not on for more than a few seconds every once in a while, this would probably have been fine. But I wanted to make sure that the finished project would last as long as possible, so I added an extra resistor in series with the three LED/resistor combinations. (Since there are individual series resistors as well, one failed LED would still have limited current.) I used a 0.1 Ohm 7 Watt resistor to drop the extra 0.25 Volt (R=R/i = 0.25/3).
It’s important to bear in mind that these calculated values are not exact for a number of reasons:
- The LED current at a particular voltage increases with temperature, so calculations need to be based on voltage/current values at a particular temperature (basically, “room temperature” or “hot”).
- The LED current at a particular voltage varies between LED types, batches and even individual LEDs.
- The power supply is not perfectly regulated; it ranges from 12 Volts at full load to around 12.2 Volts unloaded. (To guard against this, the Arduino tests the power supply voltage and shuts off if it exceeds about 12.3 Volts – there’s a voltage divider on the main circuit board that drops the supply voltage to about 1/3 so as to remain below the analogue input’s maximum of 5 Volts, although in future projects I also added a 5 Volt zener diode).
Here’s the finished electronics (note that the brightness has been reduced to some 5% using PWM for this video – and to look after my eyes while testing):
The ultrasonic unit needed to point forwards towards the viewer. This was rather tricky, since there’s really nowhere to put it. I considered cutting two holes in the bottom of the frame, but I’m not so skilled in woodworking that I could be sure it would look professional. In addition, the transducers would be extended by much of the thickness of the frame, possibly affecting their operation, and there’s not much room inside the frame.
In the end, i found a lovely die-cast aluminium box that was exactly the right size. I had to bend the connectors so that they faced backwards instead of down. Then I cut two holes in the front of the box using a die cutter (that I bought when I was 17 to make holes for DIN sockets – it was exactly the right size 🙂
The cable connecting the US module to the main board has two 4-pin pugs/sockets, allowing the main electronics (i.e. the metal strip) and the US box to be removed for maintenance.
I attached the US box on top of the frame using right-angle brackets and a bolt each side so the US can be rotated to compensate for the height the artwork is hung.