Who is here? 1 guest(s)
 Print Thread
Is automated Artisan PID control of a drum roaster a "fool's errand"?
oldgrumpus
I would love to explore using Artisan's built-in PID control to automate and follow previously used profiles or profiles designed within Artisan. I don't see a lot of discussion about doing this on a drum roaster apparently because fluid bed roasters respond more quickly to control inputs. The roaster I built was inspired to a large extent from the Coffee-Tech Solar drum roaster which does have a PID control option. My understanding (maybe flawed...) is that it's a Fuji PID controller.

I'd appreciate any input y'all might have. Is it a "fools errand"? Has anyone used the Artisan PID to do what I'd like to do? Please chime in or steer me to any discussion of this if you can. I'd appreciate it.

Thanks!
Clever Coffee Dripper
Grinder: Macap M4
Roaster: Completed drum roaster project photos shown here:
Photos https://goo.gl/ph...Da6K4wfqw5
Videos https://www.youtu...Bd1NrdpSUH
Build thread https://homeroast...post_38189
 
renatoa
In control theory (and practice) everything starts with the step response test.
https://en.wikipe...p_response
This shows a lot about the process behavior, and could provide the answer to your question.
Short story, I would preheat the machine to a stable state, as you do for normal charge, let it settle for at least a minute, then turn the gas up with a step at least 10% of your normal gas range.
Record the temperature evolution until it settle again, and post the log file. As data file, not image, please.

An alternative would be to ask the Artisan author for a profile following feature based on power input, not temperature. Would be much simpler to implement than actual PID profile following, I did it in my TC4 fork. Such approach works well for same beans in same day, or in same environment conditions as the master roast was been done.
 
renatoa
Any progress ?
If you want, we can talk more on this subject, even without that test.
 
oldgrumpus
Not yet, but pondering your question…
What sort of data file are you taking about? Maybe an Artisan file of the test?
Clever Coffee Dripper
Grinder: Macap M4
Roaster: Completed drum roaster project photos shown here:
Photos https://goo.gl/ph...Da6K4wfqw5
Videos https://www.youtu...Bd1NrdpSUH
Build thread https://homeroast...post_38189
 
renatoa
Yes, you guessed right.
Artisan log or export into a csv file, any of them works.

What is your current flow for an average roast? I mean gas valve actions.
 
oldgrumpus
I currently use a PID to control the pre-heat. It is on-off of a solenoid valve. During the roast, it is manual control with a needle valve without the PID.
For preheat, the PID can handle any gas setting on the needle valve to maintain temperature as long as it is above the minimum required.
Clever Coffee Dripper
Grinder: Macap M4
Roaster: Completed drum roaster project photos shown here:
Photos https://goo.gl/ph...Da6K4wfqw5
Videos https://www.youtu...Bd1NrdpSUH
Build thread https://homeroast...post_38189
 
renatoa
Please have a look at the "well tempered roaster" threads, you can found the most current in the hottest threads section, on left side.
I would give a try to that recipe using the PID controlled valve.
 
oldgrumpus
Will do! Thank you,
Clever Coffee Dripper
Grinder: Macap M4
Roaster: Completed drum roaster project photos shown here:
Photos https://goo.gl/ph...Da6K4wfqw5
Videos https://www.youtu...Bd1NrdpSUH
Build thread https://homeroast...post_38189
 
Will2
I’ve used Artisan’s PID control with a drum roaster, and while it’s true that fluid bed roasters respond faster, I’ve still found it helpful. It gives you more control and helps repeat profiles more consistently. It’s not a fool’s errand, but you’ll probably need to tweak it a bit to get the response times just right. I haven’t tried it with a Fuji PID, but if you’re basing your roaster on the Coffee-Tech Solar, you’re probably on the right path.
Viliam
 
renatoa
If possible, please, can you post a picture of such control session.
 
oldgrumpus

Quote

Will2 wrote:
It’s not a fool’s errand, but you’ll probably need to tweak it a bit to get the response times just right.


I agree with Renatoa. PLEASE post whatever you can, a video or photo of your setup with some explanation of how you initially set up your system.
 
Hoejmark
Hi guys

Any updates on the PID controled gas drum roaster?
Any PID values for Artisan that I can use to get started?

Using a 1kg BlueKing, also known under the names BC (Buckey Coffe) and HB.
 
renatoa
Is not about the PID values... but about being possible to be used, for anything than preheat, i.e. fixed setpoints.

Mathematically can be demonstrated the classic PID formula, as implemented in TC4 and Artisan, using fixed coefficients, is not suitable for other tasks.
You need adaptive control, using feed forward or predictive techniques.
A roasting process behavior in the future can't be fully predicted on the past events only.

Also, without knowing what kind of control you have for gas. i.e. proportional needle valve, or on-off relay type valve, is hard to suggest anything.
 
Yasu
I am using PID control on my drum roaster, and I would like to introduce you to a slightly different approach that I have been able to control successfully in the past.

Instead of PID control of the gas volume based on the temperature of the beans, I am using automatic roasting by utilizing the fact that if a profile of the exhaust temperature is created and traced well, the bean temperature will progress in a profile that correlates with the exhaust temperature, just like the fluidized type roaster.
Edited by Yasu on 05/25/2025 10:12 PM
 
Yasu
The tip on how to do this was given to me by renatoa.

The interesting thing is that the correlation between exhaust temperature and bean temperature required several trials and errors, but once it was determined, there was no need to revisit the profile many times because the relationship was similar even if the conditions changed.
In other words, one exhaust temperature profile for one bean temperature profile is all that is needed.
The correlation profile is a pair, even if the bean weight, moisture content, brand, etc. are different.

When we were controlling gas from bean temperature, for some reason we could not control it well.
 
oldgrumpus

Quote

Yasu wrote:

In other words, one exhaust temperature profile for one bean temperature profile is all that is needed.
The correlation profile is a pair, even if the bean weight, moisture content, brand, etc. are different.



Does this mean that the PID is preset for one temperature and not "autotuned"? How is this done?
 
Yasu
If you let the gas control the exhaust temperature to trace the desired profile, it will automatically tell you that more gas is needed because the temperature rise is worse when there is more roasting, and as a result, the bean temperature will trace the desired profile.

The PID value uses a function that divides the exhaust temperature into steps and switches between multiple values (FUJI) but does not differentiate by profile, brand, or weight.
 
Yasu
Strictly speaking, ET control combustion instructions are not given in terms of gas volume, but in terms of MV value (0-100), and the combustion regulator adjusts the gas volume so that the temperature on the secondary side of the burner is between 200°C and 400°C. If the MV value is 50, the burner is set to burn at 250°C, and so on.
If the MV value is 50, the combustion temperature is 300°C, and so on.
Cascade control.
 
oldgrumpus
And MV value is defined as what?
 
Yasu
The MV (Manipulated Variable) uses the result calculated by the temperature regulator using PID from the current and target values of ET as it is.

Two temperature regulators are used: one to calculate the MV from the ET and the other to determine the gas valve operating volume from the MV.
 
Hoejmark
Hi everyone

I would just like to roughly know with which PID values to start, because there 1000s of possible settings which all gonna shoot in all directions. So just a basic starting point would be very helpful.

Im using a electronic (of course) proportional gas valve.

Im getting "fakepath" when trying to attach an image?

Im also gonna experiment with the Maxitrol Exa (which some of you are familiar with) for a Probat LG12 soon.
 
renatoa
That is the problem you should understand first... the discussion above is not about PID, but other concepts.
A conventional drum roaster, especially those gas powered, has no proportional rule between the power applied and the heat absorbed by beans.
They rely more on heat accumulation and delayed transfer.
The classic PID is unable to simulate such functionality using any coefficients set.
Maybe using multiple coefficient sets, switched along the profile, but no idea if Artisan can cope with such operating mode.
 
Yasu
At first, I thought that determining the PID coefficients was simply a matter of calculating the gas volume based on the MV value derived from the PID in response to changes in BT.

However, in the case of a drum-type system, I encountered difficulties in calculating the required gas volume because the amount of heat absorbed by the drum and the amount of heat released from the drum vary depending on the drum temperature when adjusting the gas volume in response to changes in BT.
In short, I concluded that it is impossible to calculate the required heat quantity (gas volume) based solely on the BT value and its change. (A consistent PID value could not be obtained due to variations in drum temperature conditions.)
Therefore,

Gas volume + heat released from the drum (+ or -) = heat absorbed by the beans + heat emitted (ET) × k



Heat emitted - heat released from the drum = gas volume - heat absorbed by the beans

From this relationship, I found that the heat absorbed by the beans includes the influence of the drum in ET, so by controlling ET, the influence of the drum temperature can be canceled out.

In other words, when the drum temperature is high and heat is being released, the gas volume naturally decreases, and when the drum temperature is low, more gas is required, so it automatically controls itself.

As a result, the PID value remains constant regardless of the drum temperature, and by switching between multiple pallets within the ET temperature range, the control system can be determined, which is considered crucial for PID automatic control.
Edited by Yasu on 05/28/2025 8:34 PM
 
oldgrumpus

Quote

Yasu wrote:

At first, I thought that determining the PID coefficients was simply a matter of calculating the gas volume based on the MV value derived from the PID in response to changes in BT.

However, in the case of a drum-type system, I encountered difficulties in calculating the required gas volume because the amount of heat absorbed by the drum and the amount of heat released from the drum vary depending on the drum temperature when adjusting the gas volume in response to changes in BT.
In short, I concluded that it is impossible to calculate the required heat quantity (gas volume) based solely on the BT value and its change. (A consistent PID value could not be obtained due to variations in drum temperature conditions.)
Therefore,

Gas volume + heat released from the drum (+ or -) = heat absorbed by the beans + heat emitted (ET) × k



Heat emitted - heat released from the drum = gas volume - heat absorbed by the beans

From this relationship, I found that the heat absorbed by the beans includes the influence of the drum in ET, so by controlling ET, the influence of the drum temperature can be canceled out.

In other words, when the drum temperature is high and heat is being released, the gas volume naturally decreases, and when the drum temperature is low, more gas is required, so it automatically controls itself.

As a result, the PID value remains constant regardless of the drum temperature, and by switching between multiple pallets within the ET temperature range, the control system can be determined, which is considered crucial for PID automatic control.


Thank you Yasu! Now finally this all makes sense to me. I have this principle amplified in my drum roaster because the mass of my roaster drum is much higher compared to other roasters.
 
Hoejmark

Quote

renatoa wrote:

That is the problem you should understand first... the discussion above is not about PID, but other concepts.
A conventional drum roaster, especially those gas powered, has no proportional rule between the power applied and the heat absorbed by beans.
They rely more on heat accumulation and delayed transfer.
The classic PID is unable to simulate such functionality using any coefficients set.
Maybe using multiple coefficient sets, switched along the profile, but no idea if Artisan can cope with such operating mode.



I dont wanna sound mean, but you sent me hereconfused
 
Jump to Forum: