I’m building a custom controller to replace my SS Brewtech FTSS controller and want to reuse my power supply and pump/heater. The jack sizes don’t look to be standard DC size. I could order the extension cables and splice them but would prefer panel mount barrel jacks.
The heater and cooler each have an independent PID, driving a chain of actuator classes, each with it’s own feature they add to the actuator.
A PWM actuator: converts the input to a pulse width modulated signal
A time limited actuator: makes sure the time limits to protect the compressor are satisfied
A mutex actuator: guards that 2 actuators that are part of the same mutex group cannot be active at the same time and when switching from one to the other, the minimum dead time is waited. The mutex group keeps a list of actuators that requested to go active and gives permission to the one with the highest priority. The priority is based on the PWM value.
It sounds complex, but it is nicely split into separate concerns. It will also allow us to re-use objects to set up complex scenario’s later, when customers can create and link these objects themselves, like:
An HLT heater and BK heater share the same power circuit and cannot be active at the same time. They can however quickly alternate and both run at 50%. This is a mutex dead time of 1ms.
A fridge with 1 shared cooler and 2 beers with a heat belt could be set up with a mutex group containing all 3. Only the beer that needs it the most will be heated. Cooling will be shared by both beers.
Thank you for the great overview. The diagram helps. I’m working on a custom controller for my SSBrewTech FTSS. The main thing I want is monitoring and control of fermentation temps over the internet. As you know this involves switching on/off a 12v glycol pump or a heater pad. I’m planning to control it all with a particle photon. For electronics, the existing power supply will be switched via mosfet to the pump/heater. Some power will be tapped off the power supply to the particle via a dc buck converter. I have 2 DSB1820 probes, one for the thermowell and the other for glycol temp monitoring. A third DSB1820 is on board to monitor ambient temps. Finally an oled display displays status. Ultimately I plan to pump the data into a new site I’m working on at http://www.brewfree.org. The idea is that you create recipes and brew sessions of those recipes and the controller logs the temperatures to the session automatically.
This is all in the aspiration and prototype phase right now and I really appreciate you sharing what you have learned. Open to feedback on my plan as well. Thanks again!!!