30 March 2016

Thermoelectric Drinks-Can Cooler

I am a big fan of Ben Heck. Way back in 2011, Ben made a Super Can Cooler on his YouTube channel and I'd always thought it was a neat idea, something I'd like to build myself one day.

At the time I didn't have an easy way to make the aluminium pieces. Recently though, I had a chance to make my own can-cooler inspired by Ben's version.

The idea with this device is that a drinks can fits snugly in the aluminium 'coldsink' and a pair of peltier modules(TECs) pull heat from the aluminium and dissipate it to the room, cooling down the can in the process.

Of course this is an absurd contraption, wholly impractical and not even particularly useful. But for me there's huge fun to be had in designing and building a 'thing' whatever it is, and *I* think it's a cool idea anyway.

Luckily, my brother is an apprentice tool-maker and as part of an assignment for college, he machined the aluminium pieces and built the sliding base for me.

I could then design the control electronics and make an enclosure for them with my 3D printer.

Overall this is a bit of a novelty project, thermoelectric coolers are not all-that efficient and because I liked the idea of having the big chunk of bare aluminium as a design feature, it wouldn't be well insulated either.

In any case, I'd go a bit overboard on the electronics and use it as a way to improve my nascent Arduino programming 'skills'. (blah-blah, you could do it with a 555 instead, I like Arduino.)

Looking through some of the stuff I've picked up from eBay recently gave me some ideas.
I'd use a 'Nokia' LCD as a screen, Dallas DS18B20 digital thermometers to monitor temperature and a rotary encoder for user input, with a piezo transducer for feedback.

I also had some WS2812 LED strip left-over from a DIY-ambilight that I might add on there too.
Everything will be powered from a 12V supply and I'd use a logic-level MOSFET for the high-current switching.

Luckily I'm not the first person to use these with an Arduino. Some very clever people have already written software libraries for these components to make them easy to use.

Adafruit-PCD8544 library
OneWire library
toneAC library
Dallas Temperature library
Adafruit-NeoPixel library

I am very much an amateur programmer, I more-or-less understand the basics but rely heavily on copying and pasting other peoples code.

Because of this I'll post my sketch here, it's definitely untidy, hacked-together and needs to be cleaned up, but it helped me greatly to see what others had written.

It's not pretty, you have been warned... (link to my shoddy code here)

The Arduino takes readings from the temperature sensors and compares them to a user-set target. It turns on the peltier coolers if the temperature is above the set-point, the door is closed and a can is detected.

It also measures the heat-sink temperature in order to control the fans and takes an ambient temperature reading to work out how much the can was cooled down by.

The case for the electronics is 3D printed and has cut-outs for all the components to fit. The idea would be to bolt it to the aluminium chassis to cool the MOSFET and to detect when the door is closed with a hall-effect sensor and an embedded magnet.
Since I wanted to be able to upgrade/service the unit, I used JST plugs for signals and 2mm bullet connectors for the high-current supply and sleeved the cables where I could.

I imagined using the LEDs mounted on the bottom as a temperature display. Fading from red to blue according to the temperature.

In the end I couldn't quite get to grips with the Neopixel library that I used to drive the LED strips. Something I'll revisit another time I think, perhaps when I upgrade the heatsinks.

I only used cheap coolers initially, with the intention to upgrade later on. I've also ordered some higher power TECs from China that may improve the cooling performance even more.

As of now it cools a can by about 10ish°C in 10 minutes or so and while that's not ice-cold it's perfectly drinkable and it does make for a cool, if a bit imposing, desk toy.

1 comment: