Boiler Fill Level Impacts Shot Temperature Stability in PID'd Espresso Machines

Need help with equipment usage or want to share your latest discovery?
Ken Fox
Posts: 2447
Joined: 18 years ago

#1: Post by Ken Fox »

In my normal fashion this post is going to be overly long, so if you want to "cut to the chase" I'll give you the summary statement here and you can just go down to the graphs to see the results graphically illustrated. Espresso Machine boilers can generally operate with varying fill levels, which are filled either manually or by an autofill circuit. In a manual system of a semi-commercial or commercial machine, the boiler fill level will usually be visible through a "sight glass," whereas on an autofill system the fill level is regulated by the positioning of the "autofill probe," which in many cases can be adjusted. Normally there will be a minimum and a maximum acceptable fill level for the boiler, which will potentially impact both the shot temperature and the efficiency of frothing. This post deals with a Heat Exchanger machine, but some of the observations regarding temperature stability will likely apply to other configurations such as single boiler and double boiler machines.

Cutting to the chase, if you are attempting to attain a tight level of temperature control in your boiler with a PID system or other electronic control, the effectiveness of your efforts will be impacted by the fill level of your boiler. To the extent that my observations are transferable to other machine configurations, you will probably find that the lower the boiler fill level (within the acceptable range for your machine), the more tight the control will be that you will observe in both consecutive shot series and in random "walk up" shots. The boiler fill level will also probably impact the median shot temperatures you obtain for any given boiler temperature setting. That's the summary statement, and if you are not interested in how I went about studying this you may wish to jump down to the graphs (below) which illustrate my observations.

BACKGROUND

I've written extensively about my two Cimbali Junior Espresso Machines, which I often use as a sort of "experimental testbed" for studying various issues involving coffee and espresso production. In addition to providing my daily caffeine jolt, I've used these machines together a number of times in simultaneous blind tasting experiments, where shots are pulled at the same time on both machines, and presented in double blind fashion to a taster who is asked to pick preferences along various parameters. These machines have been used recently in a grinder experiment to be written up as part of the Titan Grinder Project, and for other tasting studies such as in the frozen coffee article published here, plus various comparisons attempting to study if there is a difference between vibratory pump and rotary pump operated machines.

It has been key in these studies to try to equalize shot parameters, including shot temperatures, as much as is possible, so as to make the output of the two machines as close as can be accomplished, even though all studies have had a balanced design which accounts for the fact that there are two somewhat different espresso machines being used.

In the process of trying to get the machines to have extraction parameters that are very similar, I've chosen to replace the original pressurestat temperature control with the installation of PIDs, a form of electronic temperature control using (in this case) thermocouples in the boilers, an electronic fuzzy logic PID controller, plus the required solid state relays.

Unfortunately, tight temperature control on these machines has been somewhat of a moving target requiring me to calibrate them frequently and to change the boiler temperature with some frequency in order to attain the same shot temperatures as measured by a Scace Thermofilter ("Scace Device") and datalogger. Every significant study I have done has been preceded by several hours required to get both machines calibrated to the same brew temperatures, as I have seen significant temperature "drift" over time in spite of constant or nearly constant boiler temperatures, controlled by the PID.

What on earth was going on? There was clearly an "elephant in the room," but I just couldn't see it. The factor I was missing was that relatively small differences in boiler fill level, in a heat exchanger machine, can cause large differences in temperature performance of an otherwise temperature stable machine. This may not explain all of the temperature variation I was seeing, but I believe that it does explain the vast majority of it. A couple of days ago as I was getting ready to do the above mentioned Titan Grinder Project experimentation, I realized the possibility that changes in boiler fill levels were causing the temperature drift I was seeing. Therefore, I set out to explore this issue and hope that what I have found will be of use to others contemplating the installation (or fine tuning) of electronic temperature control in the boilers of their espresso machines.

I chose to do this study with my older, vibratory pump, pourover, Cimbali Junior "S" machine, circa 1995. It has a 2.5 liter boiler which is manually filled via a pump actuated by a button on the front underpanel; the boiler level can be viewed by a sight glass in the front panel of the machine:



Although the printing on the front panel is partly worn off, one can see that there are markings for maximum and minimum fill levels. I have filled the boiler up to the "maximum" level, and found that there are approximately 625ml (~21oz) of water separating the "max" and "min" levels shown on the sight glass, and about 12.5 oz (375ml) between the "max" line and the midpoint between the "max" and "min" lines shown, with the remaining ~8.5oz/ 250ml between the midpoint and the "min" marking. One can drain a little more than 8 oz./200ml out of the water wand from the machine when the boiler is full of hot water and the level is at the "min" point. Even after all of the water drains passively out of the water wand from the hot boiler, there is still quite a bit of water remaining in the boiler, which would be drained only by opening the drain plug at the very bottom of the boiler.

The above detail is given here only to give an idea of how much water I am talking about separating these observable levels of water fill, in this boiler with a stated capacity of 2.5 liters. Of course, no espresso machine boiler is ever normally filled to anything close to the stated capacity.

RESULTS

Now that I have set the stage for the tests I ran yesterday, I will show you what was the impact of boiler filling on shot temperature performance in this machine, both in consecutive shot series and in random "walk-up" shots. I chose a temperature that was usable at "low boiler fill," e.g. at the "min" level on the sight glass. Here are the results I got from consecutive shots and from random walk up shots:



and



The boiler was then filled further, to the mid point on the sight glass, which by measurement represented an additional ~250ml. At the mid level of boiler fill, the level I have used consistently in the past, this is what we get for measured brew water (shot) temperatures in both consecutive shots and in random walk-up shots:




and



Finally, at the "maximum" boiler fill level, representing an additional ~375ml above the "mid-level," one observes this behavior in shot temperatures:



and



DISCUSSION

If you are attempting to tightly control the temperature of brew water in an espresso machine, with electronic temperature control in the boiler, you will observe different results depending upon the boiler fill level. Within the limits of acceptable fill for your machine, you will probably get your tightest temperature control and the most rapid recovery in shot series, by keeping the fill at the lower end of the range. This is not surprising since it requires less energy to heat a volume of steam than a volume of liquid water. If you are experiencing variability in observed shot temperatures that cannot be accounted for by other factors, then experiment with boiler fill levels in your machine. You will probably find that the fill level is a very important factor in the degree of temperature stability you are able to achieve.

ken
What, me worry?

Alfred E. Neuman, 1955

User avatar
another_jim
Team HB
Posts: 13954
Joined: 19 years ago

#2: Post by another_jim »

It may depend on the position and size of the HX in the boiler. On yours, there seems to be no tendency for the profile over the course of the shot to change. On the Elektra semi, a vertical boiler with a vertical tube for the HX, filling the boiler, and covering the HX further, flattens out the temperature profile, and reduces intra-shot variation.

Frothing lots of milk works better with overfilled boilers (more latent heat), but I've noticed no difference on my nominal 2 liter boiler when doing a single cappa.
Jim Schulman

JimG
Posts: 659
Joined: 18 years ago

#3: Post by JimG »

Ken Fox wrote:...If you are attempting to tightly control the temperature of water in an espresso machine boiler with electronic temperature control, you will observe different results depending upon the boiler fill level....
Ken -

I understood from the rest of your post that you are comparing the different brew temps that result from varying the boiler fill level, but while holding boiler temperature constant.

Do you have indications that boiler temperatures actually vary with respect to fill level? I'm curious if you think this is happening (vs committing a minor typo). If so, have you tried adjusting the sensor position as you vary the fill level?

Jim

Grant
Posts: 441
Joined: 19 years ago

#4: Post by Grant »

another_jim wrote:It may depend on the position and size of the HX in the boiler. On yours, there seems to be no tendency for the profile over the course of the shot to change. On the Elektra semi, a vertical boiler with a vertical tube for the HX, filling the boiler, and covering the HX further, flattens out the temperature profile, and reduces intra-shot variation.

Frothing lots of milk works better with overfilled boilers (more latent heat), but I've noticed no difference on my nominal 2 liter boiler when doing a single cappa.
To my perception of the physics of things, I would think an HX totally exposed/controlled by steam, and not the liquid underneath, would be very temperature stable for walk up and intershot, moreso than one in liquid.

An HX submerged mostly in liquid I would think would be VERY directly related to the water temp...i.e. the slightest change in water temp (from refill etc.) would immediately and directly effect the HX, whereas an HX mostly out of the liquid would be less effected...almost delayed/softened.

How this effects (affects? I can never remember which one to use) the couple oz's of water coming through the HX during a shot seems to be indicated pretty well by the graphs.

I am intrigued by this, as I noticed a change in my machine HX characteristics recently as I "moved" (rotated) my boiler in my Bricoletta, which would have changed the water level effect on the HX. i.e. I think by "rotating" my boiler a few degrees, I have pulled more HX from the water (while submerging the element deeper), and the machine seems more temperature stable since doing so.
Grant

jason_casale
Posts: 71
Joined: 19 years ago

#5: Post by jason_casale »

You have proved with the graphs that when the boiler refills it affects tempature and the level the boiler is at low high affects tempature stability as well. I always some how knew this. But it is good that someone proved it.
Good work there Ken.

Ken Fox (original poster)
Posts: 2447
Joined: 18 years ago

#6: Post by Ken Fox (original poster) »

jggall01 wrote:Ken -

I understood from the rest of your post that you are comparing the different brew temps that result from varying the boiler fill level, but while holding boiler temperature constant.

Do you have indications that boiler temperatures actually vary with respect to fill level? I'm curious if you think this is happening (vs committing a minor typo). If so, have you tried adjusting the sensor position as you vary the fill level?

Jim
Actually, it was a minor mangling of the sentence in my attempt to include more than just HX machines in the mix. Even single and double boiler machines will not brew espresso at the boiler temperature, due to heat loss or gain along the delivery pathway, unless other controls are in place. SO, what I'm saying is that any boiler system that has less water in it will be more response in its temperature to small changes if there is less water to heat.

There are, of course, other machine-specific issues that might make this an ineffectual strategy, such as in a small boiler containing brew water, that might have its autofill kick in during shots and ruin any potential shot temperature stability advantage in the process. So I think that the only way to find out on any particular machine, is to try this out and see what happens.

Thanks for your correction.

ken
What, me worry?

Alfred E. Neuman, 1955

User avatar
cafeIKE
Posts: 4724
Joined: 18 years ago

#7: Post by cafeIKE »

Perhaps the PID parameters are the same for all boiler levels or the Fuzzy Logic does not adequately compensate. Could this be a contributor to the observed behaviour?

When I set up the Vibiemme, and tried the Auto setting, the results were somewhat disappointing

Lately, I've been experimenting a bit and found that AutoTune parameters vary considerably depending on when AutoTune is engaged.

For example, if I start the machine cold and engage AutoTune at ~210°F, the IOF factor is somewhere in the 50% range. If I warm the machine for an hour or so, then let the machine cool to ~210°F from the SV of 232.5°F and engage AutoTune, the IOF is around 10%. Manual tuning for best result is around 8%. The IOF is an override parameter of the PID that forces the output ON percentage when the measured temperature is at or very near the set point.

Other AutoTune parameters are very close:
P = 7.7-8.1
I = 77-84
D = 19-21

Manual Tuning @ 234°F
P = 7.6°F
I = 90 seconds
D = 15 seconds
IoF = 8.5% *
Pd = 0.5sec

The Auto Setting is very erratic compared to a Manual or AutoTuned set of fixed parameters.

Ken Fox (original poster)
Posts: 2447
Joined: 18 years ago

#8: Post by Ken Fox (original poster) »

cafeIKE wrote:Perhaps the PID parameters are the same for all boiler levels or the Fuzzy Logic does not adequately compensate. Could this be a contributor to the observed behaviour?

The Auto Setting is very erratic compared to a Manual or AutoTuned set of fixed parameters.
I've diddled and diddled and diddled with the programming on my Fuji controllers, and have seen very little positive impact. I've also discussed this with Andy Schecter, whose knowledge about these things (PID controllers) extends well beyond their use in espresso machines. If I am quoting Andy correctly, the improvement one can obtain from changes in PID controller programming, assuming a decent autotune, is not very much. And, to clarify, I'm not very much interested in small improvements in boiler temperature consistency, in the absence of measurable differences in shot temperature consistency.

It is my opinion that when one is dealing with what amounts to electronic retrofitting of espresso machines designed to run on pressurestats, that one can get some improvement in shot temperature control, by minimizing the boiler temperature hysteresis from the added electronics. You may also be able to use a boiler setting that would not work well, for shots, with a widely oscillating pressurestate. Beyond that, you are dealing with the inherent design of your espresso machine, which is either going to be "coaxed" into providing relatively consistent shot temperatures, or it is not. Reducing the boiler fill level is a change that definitely fits into the category of the inherent behavior of the machine. The improvement in temperature control appears related to this physical change (less water to heat) and perhaps maximizes the benefit from the controller over a pstat. But further fine tuning of the controller algorithm is unlikely to either account for what I have observed, or to help a lot in addition. Granted, the above is dependent, in part, on the duty cycle of the machine, and perhaps (as an example) changing the tuning to favor fast recovery with the trade off of added overshoot, might help if one is pulling repetitive shots and or frothing lots of milk. For most users in a home setting, however, controller fine tuning is not going to yield measurable and repeatable improvement in actual shot temperature consistency.

ken
What, me worry?

Alfred E. Neuman, 1955

JimG
Posts: 659
Joined: 18 years ago

#9: Post by JimG »

Ken Fox wrote:...But further fine tuning of the controller algorithm is unlikely to either account for what I have observed, or to help a lot in addition. Granted, the above is dependent, in part, on the duty cycle of the machine, and perhaps (as an example) changing the tuning to favor fast recovery with the trade off of added overshoot, might help if one is pulling repetitive shots and or frothing lots of milk. For most users in a home setting, however, controller fine tuning is not going to yield measurable and repeatable improvement in actual shot temperature consistency...
Regarding improvements in control stability related to optimum tuning, I agree with your statement(s). Once you are close to optimum, improvements are very small, particularly if you are 4-5 minutes removed from pulling a shot or otherwise disturbing the boiler. (Small tweaks can definitely have an effect on recovery time with a smallish boiler, but that is not the problem you are testing).

There is something, however, related to the vertical position of the sensor within the boiler that may be having an effect on your experiment. And I think this might be unique to PID control of boilers (since t/c's sense a very local condition while pressurestats sense a more global condition).

The water inside the boiler is stratified with respect to temperature. By changing the depth of the tip of your probe, you are free to sense whichever strata you choose for controlling via PID. Under static conditions it probably doesn't much matter where your probe is.

But I think I have learned from working on the Alexia that dynamic control, i.e. intershot consistency, is significantly affected by sensor placement. I think the same principals would apply to any boiler, whether for an HX or for direct-to-group.

If the t/c sensor is high, it responds more quickly to the heater. My guess is this is because of the newly heated water rising immediately to the top. So a high sensor placement will cause the power to be shut off prematurely after pulling a shot. This seems to result in the water in the lower portion of the boiler being a little cooler than it should be, and subsequent shots have a tendency to cool down.

If the t/c sensor is low, it does not respond quickly to the heater since it is parked in the water that is the last to get the word about the heater being on. This results in the upper part of the boiler becoming hotter than it would be under steady conditions. So consecutive shots tend to warm up.

It is important to note that in each situation above, the PID is going to display the same sensor temperature and probably will hold the temperature at the sensor within a few tenths of an F. So tuning of the PID is not at all the issue.

My current theory is that every boiler has a spot where you can measure a characteristic temperature that will correlate well to consecutive shot temperatures. A good physical analogy is the sweet spot on a baseball bat. By trial and error it was possible to find this spot on the Alexia, and raising or lowering the sensor showed repeatable changes in a progression of closely space shots.

So when reading your experimental results, it struck me that an unintentional consequence of changing the boiler fill level was that you also probably changed the relative position of your sensor with respect to the water mass. I know this kind of change can have an effect on overall boiler/group temperature control. I suspect it could be playing some role in what you are seeing.


Jim (FWIW) Gallt

Ken Fox (original poster)
Posts: 2447
Joined: 18 years ago

#10: Post by Ken Fox (original poster) »

jggall01 wrote:
Regarding improvements in control stability related to optimum tuning, I agree with your statement(s). Once you are close to optimum, improvements are very small, particularly if you are 4-5 minutes removed from pulling a shot or otherwise disturbing the boiler. (Small tweaks can definitely have an effect on recovery time with a smallish boiler, but that is not the problem you are testing).

There is something, however, related to the vertical position of the sensor within the boiler that may be having an effect on your experiment. And I think this might be unique to PID control of boilers (since t/c's sense a very local condition while pressurestats sense a more global condition).

The water inside the boiler is stratified with respect to temperature. By changing the depth of the tip of your probe, you are free to sense whichever strata you choose for controlling via PID. Under static conditions it probably doesn't much matter where your probe is.

But I think I have learned from working on the Alexia that dynamic control, i.e. intershot consistency, is significantly affected by sensor placement. I think the same principals would apply to any boiler, whether for an HX or for direct-to-group.

If the t/c sensor is high, it responds more quickly to the heater. My guess is this is because of the newly heated water rising immediately to the top. So a high sensor placement will cause the power to be shut off prematurely after pulling a shot. This seems to result in the water in the lower portion of the boiler being a little cooler than it should be, and subsequent shots have a tendency to cool down.

If the t/c sensor is low, it does not respond quickly to the heater since it is parked in the water that is the last to get the word about the heater being on. This results in the upper part of the boiler becoming hotter than it would be under steady conditions. So consecutive shots tend to warm up.

It is important to note that in each situation above, the PID is going to display the same sensor temperature and probably will hold the temperature at the sensor within a few tenths of an F. So tuning of the PID is not at all the issue.

My current theory is that every boiler has a spot where you can measure a characteristic temperature that will correlate well to consecutive shot temperatures. A good physical analogy is the sweet spot on a baseball bat. By trial and error it was possible to find this spot on the Alexia, and raising or lowering the sensor showed repeatable changes in a progression of closely space shots.

So when reading your experimental results, it struck me that an unintentional consequence of changing the boiler fill level was that you also probably changed the relative position of your sensor with respect to the water mass. I know this kind of change can have an effect on overall boiler/group temperature control. I suspect it could be playing some role in what you are seeing.


Jim (FWIW) Gallt
Hi Jim,

Two points:

Firstly, the probes in both of my machines are well above the waterline, in the steam column, towards the top of the boilers. This is because they are ensheathed straight probes custom made for me by a "good samaritan" known to many here, and there was exactly one available port (where the pstat used to attach) on one machine and a very limited number of ports with only one suitable, in the other machine. No doubt, the probes could be bent but I really doubt that this would make much difference.

Secondly, PID controllers have control only on the low side, not on the high side, because all they can do is turn on and off the heating element; they have no way to reduce boiler heat once the boiler has overheated. If in fact my probe placements, high in the boiler steam column, turns off the boiler element early, this is not reflected in what I see when I look at the displays on my Fujis when the machine is actively being used. What I see, like I'm sure most people see, is considerable overshoot, because the element is not turned off quickly enough to prevent this. On the whole I'd think that if the temperature elevations that are seen are in fact magnified by where my probes are placed, that this would be a good thing, minimizing overshoot, not a bad thing.

ken
What, me worry?

Alfred E. Neuman, 1955

Post Reply