I like the new session log object. Only recommendation is to allow configuration of the default “New Session” and “Example Note” when creating a new session. Maybe prompt for a session name when creating?
The example note is only if you have no other sessions (copy of shown session otherwise).
Title prompt seems reasonable, I’ll add that to next release.
OK, didn’t quite catch the behavior of the note field. When creating a new session, it copies the note name from the previous session.
Is there any reason for my fermentation temp to oscillate more after this update? It seems this last batch is just overshooting and compensating a lot as compared to prior batches before the update.
The setpoint was 12c until the very end of the plot where it started rising towards 14c
There haven’t been any direct changes, but we did notice that our office “fermenter” also saw some overshoot / alternating heating and cooling.
Could you please post screenshots of your PID graphs?
I’ts just under 3 hours between the spikes in output value in the graphs. like 2h53m +/-5m
The spike interval is caused by the mutex lockout - you can see output target on both gradually build until output value suddenly shoots up when the mutex becomes available.
For the best setting to tweak you’ll need @Elco - good answers on that are also beyond my limited understanding.
Yes, in the heat pid graph I can see that, but it doesn’t explain what’s going on with the cooling side. The mutex setting is 30m, the cooler isn’t limited by that at any point in the graph, and the spike in cooler output comes after the output target has started falling. I wish I could wrap my head around this stuff
Because your beer is around the setpoint, there is about as much reason for cooling as for heating.
Your mutex is only 30m and your cooling PWM period is probably something similar, so while they are waiting, the heater can trigger. They alternate and keep each other in balance.
Try increasing the mutex to 1 or 2 hours and I expect the cyclic behavior will go away.
Thanks, I’ll try that (the cooling pwm period is 10m, btw). I’m still a bit surprised by the difference in fluctuation lately though. It used to look like this; Tuning of brewblox FTSS setup
Do you have a minimum cool time? Can you export your full blocks? With the mutex at 3x pwm, I wouldn’t expect this.
From your first graph, I do see a delay in process response after heating. The overshoot when heating is what triggers the cooling later.
I think your heating and cooling integrator keep each other at non zero. They grow too quickly. The process takes 2 hours to respond to actuators, so Ti should be around 6h for both.
I think the minimum on is 10s, but now I’m not able to check until I get home in the afternoon. I can export full blocks then as well. Ti is 2h. I think I followed the suggestions in the other thread pretty much to the letter.
The minimum cooler on time is indeed 10s, and here’s the block export: brewblox-blocks-spark-one.json (4.9 KB)
I checked your settings.
I would change these things:
- your filtering for the beer setpoint is pretty high. This averaging causes a delay. The delayed PID input causes overheating and overcooling. Reduce it to 1 min. The beer temp is stable enough without filtering.
- increase heater Kp to 100. The heater is pretty weak so it can heat full power if more than a degree off. Faster heating results in less integral buildup time.
- increase Ti to 6h for both. It should be longer than your process time constant.
I think the filter is the main cause here.
In graph, I would display pwm values instead of pin state. The state doesn’t make much sense with a 10s period and a 5s sample interval.
Thank you Elco! I’ll make the changes as soon as I get a chance.
For reference, here are my settings.
Heat PWM period 10s, Cool PWM period 10m.
10s minimum ON time for the cool pump, 1h idle time in the mutex.
This is with the original SS brewtech 70W heat pad. But I did give my fermenter some extra insulation between the black neoprene and the stainless.
This topic was automatically closed 10 days after the last reply. New replies are no longer allowed.