Standalone, Plug and Play Raspberry Pi Headless Brewstand Controller-Server
This thread is dedicated to the sharing of ideas and development of a standalone, plug and play, Raspberry Pi based headless brewstand controller-server.
Raspberry Pi is the $35 open source ARM based single board computer, generally running Linux.
Plug and Play means we want as little soldering and difficult wiring as possible. We will certainly avoid developing a dedicated circuit board if possible.
Standalone means that the board itself does the I/O directly with the hardware as much as it can. We will avoid using a slave micro controller if possible.
Headless means that generally the RPi board will run as a black box, not connected to a keyboard or display. It will, however be connected to at least one other computer via a network.
Brewstand controller means that the purpose of this device is to control the functions associated with brewing beer on a brewstand, ie burner control, kettle temperature monitoring and display, pump control, valve control, brew session timers and clocks, note taking, data logging, etc.
This unit is not intended to monitor a fermentation process. Such a unit would be called a fermentation controller. That is not what we are building here, though many of the components of this device could be used to implement one.
Server means that the device will ultimately serve the User Interface to its functions as web pages viewable in a browser on another computer on the network.
This thread was born out of discussion that occurred in this thread.
Let the fun begin !
[posted also on the other thread, more appropriate here]
Found this guy in youtube, RPI talking directly with a cheap relay board, without any intermediary board. Also code is shown.
I bought the same board or a very similar one.
My DS18S20s just arrived. The USB one wire adapter has not.
For those that aren't aware, I am in the middle of putting together the brewstand that this controller will run.
Just trying to get my head around the options.
Brewman, as you may remember from previous post, I sympathise with using R Pi standalone.
If I understand correctly, on the hardware side, the R Pi, the one wire adapter, and a relay board are the hardware needed to provide temp input and control output?
So, asking the question:
The one wire adapter is close to $20 on its own. An Arduino Uno is about the same.
That said, what development from the Arduino community could be leveraged for this project that would have to be redeveloped with the standalone approach?
PID libraries? Or has Steve 071 who started the initial thread already developed a good solution ( as mentioned in his first post.)
Also, did you buy the pre-potted DS1820 from the same ebay vendor as the one wire adapter? If so, does it seem good quality?
I plan to pot them into various cavities myself. In doing so, I will try to minimize the thermal capacitance of the sensor and maximize the surface area, increasing its reaction time, hopefully lessening the need to use a PID loop in the first place.
For those wondering, here is my cost breakdown on this system.
RPi board, $35
4 GB SD card, $8
USB Wifi adapter, $12
Relay board, $10
USB One Wire adapter $17 with the USB dongle, a breakout board and a sensor potted into a short probe.
Additional DS18S20 devices are ~$5 each as needed.
All prices plus shipping. The SD card and Wifi adapter were purchased locally.
Not included in the parts list is a 5V power supply and a case, but I have these built into my stand for other purposes already.
Total cost thus far is $82, plus shipping.
For this you get
- a stand alone computer running Linux (!)
- with Wifi connectivity
- all the relay outputs necessary to run a gas fired brewstand (8x 10A each)
- virtually unlimited temperature inputs, with sensors costing $5 each.
- the ability to serve the UI as web pages
- the ability to keep a small database
- the ability to interface with just about any USB device
- the ability to connect a keyboard and mouse and drive a display monitor
- can be administered remotely via the usual Linux tools, ssh, etc.
- has built in text editor, C compiler, python, Java, window GUI, terminal program, bash, grep, etc.
- could be unplugged and completely re purposed for another function around the house in about a minute.
What were you saying about an Arduino ?
I'm looking for a way I can contribute - but I'm not technical.
That said, I have some experience in usability and functional requirements gathering, with access to a top guy working in the field, and could offer work on the UI side.
Otherwise, I can cheer from the sidelines.
Let me know if there's anything I can do.
This will be a system that pretty non technical people should be able to set up. The skill set required should be that of burning an SD card from an ISO file, connecting wires from relays to solenoids, gas control valves, motors and wiring temperature sensors. That is it. No soldering, no micro controller programming, no code development, etc.
Something that could really help me time wise is if someone compiled a list (links) of all the available brewing control systems and posted images of what their UIs looked like and knew what functionality they had.
That would be a good place to start when figuring out what we want this system to do. I have not done that yet, except to note that some systems have nice gauges. (In his Homer voice, with eyes glazed over) Mmmm... gauges.
I'll warn you that I am going to get the hardware working with a command line level interface first just because its simpler and an order of magnitude easier to do.
Once its working on that level, I (or someone else) can add in the web server and GUI component.
Here are links to a set of demos...
If the UI is intended as a Web Page, then the only one I know, and know reasonably well is the BCS460.
The other UI I've seen a little of is the Brewtroller, but the rotary encoder and smallish LCD display is frankly a big reason to go Web UI in the first place, and I wonder if referencing such systems is all that good a use of time or particularly instructive - since the limitations of the interface drive the process/programming approach considerably.
I'm happy to do some more research though - see a couple of links at bottom.
I would add that the BCS 460's general approach is quite easily understood, and readily configurable to one's equipment. Essentially:
- In 'manual' mode:
A 'state' is specified by the user, and the system adjusts outputs to achieve the 'state'. See the table titled "Manual Mode" in the attached pic.
Using the row for Output1 in the picture as an example, you can see that the temp probe named 'HLT Temp' is associated with Output1 - which, you guessed it, is controlling the HLT. The control method assigned is simple on/off, which will be used to get the temp up to - in this case - 80, and maintain it there. (The control method could also be PWM - handy for throttling back a boil for example, or PID rather than just on/off.)
- Auto mode:
Simply a bunch of manual mode configurations ('states') that are strung together, using 'exit conditions' to specify when to move from one state to another. Exit conditions can be a physical switch, a web UI button, a target temp, or a timer.
(Why not just get one of these? I have on, but as I've mentioned it doesn't suit my needs basically because of cost and klunky UI.)
Here's something else I've found - note the link to the manual:
Here's Kladue's (on this forum). Way more scope, but also an example of a user interface that I think is more complicated as a consequence - at least for what I'd be looking for:
Brewmagic - note the video.
|All times are GMT. The time now is 04:08 PM.|
Copyright ©2000 - 2014, Jelsoft Enterprises Ltd.