Saturday, March 25, 2017

WebKeezer Plots

WebKeezer, now with plots!

As this is still a work in progress, I'm going to have to rework a lot of code later. Yes, later.

But I've used chartist.js to make a pretty nice plot. If I had more storage space on my Omega, I'd install pyplot and not deal with java, but I'm squeezing the last 100kB out of my on board storage.

Here's the plot:
The yellow line is the temperature in the jar of water that controls the freezer. The setpoint is 5.5 C with a differential of 0.9 C. The red line is from a second temperature sensor I placed near the beer lines and shanks to track air temp. I have a small computer fan inside running continuously. Depending on how it's positioned the air temperature can be about 2 C cooler than shown in this graph.

The code is on GitHub.

I had to add this line to the chartist.css file to get rotated labels:

New Wiring


New Wiring

Relays

I had originally used a custom board from an Arduino project for the external guts for WebKeezer. But now I decided to put my relay expansion to use. The relays on the expansion are only capable of handling 2A so I'm still using the relay in the outlet box.

Temperature Probe Inputs

I've decided to simplify the wiring using phone connectors. The 1-Wire bus only requires a single resistor connecting Vcc to the digital input pin. This allows all inputs to come in through a single port using a phone line splitter. I soldered this together to avoid the need for extra perf board.
The phone cord I got has 6 wires (RJ25) but the jack I'm using has four pins (RJ14). I used black, red, green, for the ground, voltage, and 1-wire bus leaving the yellow wire for potentially reading a switch/button. (I should use the yellow wire for 1-wire bus and green for reading a switch so I can use normal 2-wire  RJ11 cable for switches.)

Float Switch RIP

The float switch didn't work too well. The cold environment made it too stiff. But I'm looking forward to using the new phone cord system when I get something else figured out.