Envelope Optimization and Control Using Fuzzy Logic

by Fred Thomasson The basic building tool for envelope optimization is the fuzzy logic Envelope Controller (EC) function block. Such EC blocks are often chained (or sequenced) one after the other. Each EC in the chain sequence focuses on a single process variable, with the complete chain forming an efficient and sophisticated optimization strategy. With such a chain sequence construction, it is possible to incorporate many constraints. It is not difficult to add or remove a constraint or change its priority. A surprisingly small number of fuzzy logic rules can be used to do an extraordinary amount of reasoning about a process. This attribute allows us to optimize complex processes with a small amount of logic. In many cases, the entire design can fit on one sheet of paper. Two optimization examples are shown later in this article. The first deals with minimizing the amount of combustion air for an industrial power boiler. The second deals with minimizing the outlet pressure of a forced draft fan of an industrial power boiler to minimize energy losses...(there's more)

You can read the rest of this article at

formatting link

Reply to
Doug Cooper
Loading thread data ...

Where is the set point? Is the set point defined by the normal "member ship" range? If so doesn't that make it hard to change the set point?

What about rates of change? I am sure derivatives can be added. Since the output is incremental the output effectively would integrate rates of change to a proportional term like the 'velocity' form of PID.

I had to read this a couple of times to get past the how does this work and why bother stage. I do find this interesting, especially the concept of the higher priority rule enabling which way the lower rules can change the output. I like the fact that the computationally expensive de-fuzzification is not used.

Yet another arrow for the quiver.

Peter Nachtwey

Reply to
Peter Nachtwey

Those are good questions Peter. Often the incremental control output is adjusting the setpoint of a PID controller (as in the second example). It is a velocity algorithm. Perhaps the term Envelope Controller is a misnomer. Usually there is no setpoint for it. It just defines the safe operating range for the PV input and an override(an incemental output). If the safe operating range changes as a function of say production rate, then the membership functions can be adapted. The membership functions are calculations of five parameters. You adapt these parameters.

Your second question about rates of change are very perceptive. If the process variable that is used as the input for a EC has a significant time lag in response to the manipulated variable, I found that you have to use a predicted value of the PV or cycling could occur. I use a simple linear predictor. In the two examples, the time lags were small so no predictor was used.

Sidebar: If you make the normal membership function of the last Envelope Controller in a sequence triangular with the center being the error signal (SP - PVmeasured) and the input also the error signal (SP-PVpred.), you have a velocity version of a PI controller with nonlinear gains. The Envelope Controllers above it in the sequence would provide the constraints and overrides to prevent violation of the constraints.

Fred Thomasson snipped-for-privacy@comcast.net

Reply to
Fred Thomasson

I can see that. Did you roll your own or use a vendor product? If you can get an EC off the shelve then does the vendoer that supply a tool box for the different features that on may need like the predictor and tools for compensating for dead time? I know this is simple but not for average Joe. What about the user inteface for editing the membership functions? We make motion controllers. I know the setup/programming software is just as expensive as the controller itself. This would be like a simple PLC PID where one just displays a few registers and gains.

It would be interesting to see a trend with a few disturbances or something to make the graph look interesting just to see how the EC reacts. It would be better yet to see how much each rules was contributing or even if the rule is enabled as a function of time.

I am curious. I will have to try this in Mathcad.

Peter Nachwey

Reply to
pnachtwey

PolyTech Forum website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.