The Beer Fridge saga continues

  • Post author:
  • Post category:Arduino

Since the last update on the beer fridge, we've had to do some murdering of the original PCB to get it to fit in a case. In addition, we'd failed to take into account the startup power draw for the compressor (5 amps), and had to upgrade the relay we're using from a 3 amp solid state relay. Luckily Doug had the beefier relay just sitting around in his shed. That means we've lost our opto-isolation because the new relay is a simple mechanical one, but we have a relay coil doing the same thing now. A new PCB will make the world a lot neater, which will be nice. Oh, we've also been mentioned on Hack a Day, which has generated some interesting comments on their site. I've observed that sometimes the relay doesn't turn on, even though the arduino thinks it has done so. An example can be seen here: (Note that graph is a Google chart server image, generated by a simple visualization program I wrote in python. If you're that way inclined, the visualization software is in my public SVN repository). At first we thought this was a software problem with comparing ints to floats, but…

Continue ReadingThe Beer Fridge saga continues

Beer fridge controller 0.3

  • Post author:
  • Post category:Arduino

Last night Doug made up the first cut of the PCB for the beer fridge controller mentioned in previous posts, and we fitted the arduino to it. There wasn't much in the way of software changes, apart from changing the pin that the compressor runs on. You can see here that we've mounted both the arduino and the Ethernet shield onto the PCB -- this is just temporary until we get the PCB right. The black rectangle at the front right is a 240 volt capable relay, and the thing behind it is a 240 volt transformer which is capable of powering all the electronics on the boards. In the final PCB we wont need the arduino at all -- just the Ethernet shield and the atmega 328 from the arduino. However, that didn't work out this time around because of problems getting the Ethernet socket to fit nicely. Its clearer on this picture of the other side of the board: See how we had to cut a hole in the PCB for the socket? That took out some of the pin holes for the atmega, and a few tracks. Its not a big problem because we're going to iterate…

Continue ReadingBeer fridge controller 0.3

Beer fridge controller 0.2

  • Post author:
  • Post category:Arduino

Further to yesterday's post about the beer fridge thermostat replacement, I've been hacking on ethernet support for the controller. This is handy because I'd like to log the temperature and compressor state over the network, because I'm hoping that can be used to make calculations about the thermal mass of the contents of the fridge, and therefore derive how much beer is actually in the fridge at any given time. Because the controller also supports more than one temperature probe, I'll also add more 1-Wire temperature sensors around the house so I can determine important things like if its hot in the outside world. The code is currently experiencing some bloat in the binary size, mainly because the ethernet library and the sprintf implementation are quite large. I'll have to think more about that. Here's the current code: #include <enc28j60.h> #include <etherShield.h> #include <ip_arp_udp_tcp.h> #include <ip_config.h> #include <net.h> #include <websrv_help_functions.h> #include <OneWire.h> #include <DallasTemperature.h> // Temperature sensor and compressor setup #define COMPRESSOR 9 #define ONEWIRE 3 #define HIGHTEMP 4 #define LOWTEMP 3.6 // 220L Kelvinator is 85 watts #define COMPRESSOR_WATTAGE 85.0 #define SLEEP_SEC 10 OneWire oneWire(ONEWIRE); DallasTemperature sensors(&oneWire); unsigned long runtime = 0, chilltime = 0, last_checked = 0, this_check…

Continue ReadingBeer fridge controller 0.2

End of content

No more pages to load