PID discussion for one input (thermocouple) and two control outputs (damper and fan)?


 

J.Diggs

New member
The heatermeter is a bit unique in that the PID method(s) that CapnBry uses can control two outputs, a fan and a damper.

When I was doing PID stuff back in the dark ages I think I mostly set up controllers with one input (temperature, pressure, flow, whatever) and one output (valve, burner, heater, vent, whatever).

Is there a discussion somewhere on single input multiple control output algorithms and methods? Maybe even somewhere where CapnBry discussed what he did in the heatermeter?

looking around the googleverse, there's lots of discussions and course-level stuff on single in single out. Almost all the multiple out uses some sort of proportional slaving from one output to the other. Or else feeding the input to separate separate PID controllers for each output.

I can certainly go into the source (thank you Capn for leaving it up and available) but if there was already higher level discussions that would be a better place to start.

Where I'm ruminating on going with this is maybe prototyping an ESP32 based controller for my kamado just for fun. And it beats mowing the yard....which is not fun 8).

Thanks!
 
Although there may be two electrical outputs, there is really only one degree of freedom -temperature- that is being controlled with somewhat of a "staged" or perhaps "paralleled" single output. The PID itself doesn't really decide which output to use and how much. The user determines for a given PID output, what amount of each output am I going to ask the Heatermeter to apply or at what threshold am I going to ask the heater meter switch on the second output. In fact for my application of a Weber Kettle, I only use the single servo output to control the factory installed louvers on the bottom of the kettle. No fan needed.

Here's a snapshot of the Heatermeter PID configuration that I found somewhere on this forum. Ignore the red box. The green box is mine. You'll see there is only one PID output, but you can control when the servo/fan either kick in or max out independently of each other.
1744715666067.png

Often times with a two input/two output type of PID you may be thinking of, you're controlling a 2 DOF system and therefore need to measure and constrain both of those degrees.
 
I look at this control as a logical response to the old campfire scenario. When you start a fire, the damper is the open air surrounding the fire. To make it heat up faster we blow on the coals. So, with that said I am thinking Brian might have had that thought process when he created the PID. Others out there created damper/fan assemblies to accomplish what Brian was trying to do. So, my interpretation is the damper is controlled by the PID loop. The fan, based on what Ryan-K posted is a path the acts like you're blowing on the flames. This path is not pid controlled. It looks ant the pid control and we scale its operation accordingly. The fan is set up, so you control at what point the fan comes on and the range we want to use of the fans total output. To make that clearer, if a fan is 15cfm max, we have the ability to scale it from 0-to 15cfm with the min and max range. We can also set it up to start blowing anywhere in the pid servo range with "on above" setting. With my grill, I don`t want the fan to be active unless the servo output is above 10%. Then I select the operating range to be 0-30%. So, this scales the fan output to be around 5 cfm of added air. When my grill is up to temp and just sitting there, the fan is not adding to the control. The damper is doing the work. The fan only comes into play when I open lid, startup the grill, or anytime the coals need an extra shot of air to keep temp control loop stabile. When starting grill up for a cook, I also limit the fan output to keep it from over firing the grill. I want fan during startup, but I want grill to heat up slowly without overshooting. Ceramic grills are a ***** if you heat them up to fast. So, to me, the servo/damper is pid controlled while the fan is a branch that adds to the control loop when needed. Nice design and it works perfectly. There is no reason your grill, depending on how well shell is insulated, cannot control to a max of +/- 2 degrees. Well done Brian and all the developers of the fan/dampers used with this project.
 

 

Back
Top