Introduction: Masherator 1000 - Infusion Mash Temp Controller
This is the 5th version of a temperature controller for my beer making process. I typically have used the off the shelf PID controllers, cheap, some what effective and somewhat reliable. Once I got a 3-D Printer, I decided to design one from scratch.
1. PT100 RTD Temp Probe
4. PID with Autotune
5. Integrated Pump Control
6. Looks Cool (That is really important)
I call my little Brewery "ScrapHeap". I have a 10 Gallon Brew in a Bag setup. I do a Recirculating mash and initial heat is provided by Natural Gas. Once the mash temperature is obtained, I switch off the gas and maintain the mash temp with a 1500w inline element. Thus the need for this controller. I can also monitor the boil and the cool down with this set up.
3-D Printed Parts. Stl files are in the downloads section and are explained in detail on Thingiverse . These print at 55%, not supports needed.
(1) Max 31865 Bracket
(5) Control Buttons
See Bill of Materials in the PDF. In addition to this, you will need:
1. Cordless Drill
2. Drill Bits
3. Soldering Iron
4. Flux Pen
6. Screwdrivers, hex drivers, pliers, wire strippers, Crimpers
8. Variety of wires and connectors, the choice will be yours, I have a Dupont, Molex, JST and Pin connector tool and ends, very nice to have, but you can purchase pre-crimped ends and colder them together
9. Heat Shrink Tube and a heat gun or a heat source.
10. A Variety of M3, M4, M5 and #6 Screws in various lenghts with Nyloc Nuts. I have designed the printed parts to accept the nylocs as a captive fastener in most cases, but you will see what you need when the time comes and most of us will have a stock of various hardware in our shop. If not, there is a basic list in the Bill of materials.
Step 1: Print Your Parts (Or Have Them Printed)
You have to decide now how you want to mount this unit. I have a Davit Crane in my brewery manufactured from 1 1/2" Schedule 40 Pipe. This is used to extract the 80# bag of grains from the mash. It also provides a good place, centralized, to mount the controller, spoon holder and refractometer mount (future Instructables, seen in first page assembly model).
At Thingiverse: https://www.thingiverse.com/thing:4034795
Just under 1kg to print all parts, including the Mounting Brackets.
Step 2: Make Your Shield
Arduinos are versatile, easy to program and powerful. AND Cheap.
But, we need a way to connect the Uno to all the crap we need to connect it to so that it can control it.
Fortunately, you can buy a wide variety of shields. For this project we need a proto shield. The ones I use are $5.99, come assembled and are awesome. The link is in the BOM
I have this laid out in the PDF named sHIELD
Included the Arduino Pin locations too.
Step 3: Assemble the Adaftuit RGB/LCD Shield
I bought the real thing. It is 30 minutes of soldering and kind of fun.
The tutorial on there is awesome, as it always is.
The photos show this in process. I always take a picture of what I have soldered, zoom in, and make sure I did not miss anything or under soldered anything.
This Instructable, and the printed files are all based on using this board. If you deviate, the Lid will not work.
Step 4: Assemble Parts in Base
See the photo, pretty self explanatory. It's a tight fit, but it will work. Pre-thread the bosses for the transformer, SSR Heat Sink and Buck Converter. I used #4 Sheet Metal screws.
Why a buck converter? The Arduino optimally runs on 9V. 9V Fans are impossible to find. So, I used 12v fans, and dropped the voltage to 9v with a $1.68 buck converter.
You will need a Multi meter to set up this step. Please set these up out of the box to avoid electrocution.
Note: If you are not competent, comfortable and knowledgeable with basic electricity, stop now and do not do this Instructable. You stand the chance of putting something somewhere and get shocked.
Power the transformer and adjust the DC output to 12V. Then, supply the Buck with the 12V and adjust down to 9V. Please note, if you have not used these Bucks before, you have to really wind them down before you see the voltage drop. So, don't give up. Counter Clockwise to reduce the voltage. See the video for soldering in a Buck Converter in another project of mine.
Daisy the fans together and tie them into the power supply. Assemble everything into the base as shown.
I would hold off installing the 14ga power until final power wiring, it is heavy and cumbersome.
Go ahead and put the signal wires to the SSR. I used a JST connector here, but you can hardwire it in later. The output of the Buck (9v) needs no connector, you have to solder this one to the Arduino later, no room in this box for the standard barrel jack.
Step 5: Assemble the Lid
Self Explanatory with the photo.
Stack goes as follows:
2. Spacers and 5 Buttons
3. RGB/LCD Shield
4. Your Shield
6. Max Bracket
7. Max 31865
Step 6: Wiring It Up
There is no way to write exactly what goes on here, well, there is, but I am assuming you have some experience with Fork Terminals, Wiring, etc. and the simple diagrams show where everything is supposed to go.
One note, the element light will only operate when the SSR is being called on, so watch the wiring on that one. The pump is just a simple on and off switch. Maybe someday I will automate the whole thing, but until then, this will do.
Use 14GA wire to feed from the main to the SSR and 18ga to the pump and pilot lights
I used 24ga for the Temp sensor connector to the Max 31865 board. 12v, 18 and 24 gauge.
Step 7: The CODE.....
I copied most of the code from Adafruit's website:
Added and modified some things to suit my needs and the use of the Max31865.
Find the code here:
Step 8: Putting It All Together
Once everything is wired, program uploaded to the Uno, you should chase out all your wiring, test all the functions, make sure everything is tight and tucked away.
There are at least 100000 articles on PID adjustment, so you can play with the numbers and i won't waste your time.
Key pad functions like this:
When you turn it on, the splash screen dsiplays. After 3 seconds, it goes into it's loop. It switches the relay pin to low until you press the "Right" button.
Left and right switch menus. Set Point is the desired temp. Single presses up and down move up in .1°F, hold the up and down and press select and it goes up or down in 1°F.
The other menus are the K factors for P, I and D. The up and down buttons operate like the set point menu.
One cool feature, I had nothing to do with, was the closer you get to your set point the screen changes color. Red to Yellow to White.
Do not forget to adjust the contrast on your RGB/LCD shield. It will be blank and you will forget I wrote this and that Adafruit wrote that and will be convinced that your shield is DOA or you botched the soldering job.
In the photos, you will see a bogus negative reading, I do not have a temp probe attached. I will continue more Instructables and take you through making a batch of Dirty Gertie, Oatmel Stout.
Till then, Salute!!
Participated in the
Fix It Contest