Algebraic solution beats Fuzzy Logic

Industrial automation controller logic: Find out how the computational efforts as well as the tuning efforts for a non-linear response are much reduced using a tunable algebraic equation versus the use of an inference engine with Fuzzy Logic.

1 of 2 < 1 | 2 View on one page
 By Ernst Dummermuth

A

 characteristic of conventional proportional/integral (PI) ontrollers is that the gains selected for the proportional and the integral part remain constant over the whole range of the input signal. The input is an “error signal” and is the difference between the command and the feedback of the system. The goal is to have the feedback equal the command; in other words to reduce the error to zero.

System response generally is described by the way it reacts to a change in command or to a change in feedback that is introduced by a disturbance to the process. Standard techniques have been adopted to describe or qualify the response of a system and to select the gains for a desired response.

The most common method to observe and/or tune a control loop is to apply a step command and trace the response of the system, with, for example, a chart recorder. Observations include rise-time, overshoot, frequency of oscillation, settling time.

RELATED ARTICLE


Warm and Fuzzy
Fuzzy logic can be an effective way to extend traditional binary logic. Read about how a heater control application helped demonstrate the method.
In general, it is desirable to have a short rise time, i.e., respond quickly to a change, yet have minimal overshoot and oscillation, as well as a short settling time. It is well known that helping one of these defeats the other; and that the proportional gain Kp and the integral gain Ki have to be a best compromise. Depending on the application, one property may be more desirable at the expense of the others. Figure 1 (click the Download Now button below to see all figures) shows a step input and the response of a conventional constant gain system for various cases of rise time, overshoot, oscillation and settling time.

Non-Linear Approach With Fuzzy Logic
In a non-linear PI controller, the Kp gain and the Ki gain are not constant over the range of the Input signal. By separately altering the Kp gain and the Ki gain as a function of the Input signal, a more desirable response may be obtained.

Fuzzy Logic can be used to define arbitrary input and output membership functions to describe virtually any type of non-linear relation between input and output. However, for a non-linear PI controller and for specific applications of position, velocity, torque of motors and rotating machinery, it is useful to restrict the non-linearity to some symmetrical property around zero error (input), which is normally considered the steady state. Such restrictions narrow the descriptions of an otherwise unlimited number of variations. It also is useful to restrict the non-linearity to be monotonic, that is, if the gain increases with increasing error, then it will always increase, and not decrease again above a certain error magnitude. 

Figure 2 (click the Download Now button below to see all figures) shows samples of restricted Fuzzy Logic Input membership functions. The slope of membership functions are basically proportional to gain, yet the effective gain is a specific function of the intersection of two slopes--the result of the blending of two rules. Note that the restrictions also include that only two membership functions intersect at any one time, also only two rules are applied to a section of the Input (Error) signal at any one time.

Figure 3 (click the Download Now button below to see all figures) shows samples of Output “singletons.” Restrictions also have been applied. Discrete lines have replaced the normally triangular-shaped output functions. This reduces computational efforts, and the spacing of those singletons is again symmetrical around zero output, wherein center is normalized zero output. Since all rules that contribute to the output are combined in a weighted average, it can be seen by inspection that a concentration of singletons around zero output (Figure 3 center) calls for a low gain at the zero output and increasing gain towards the flanks.

It’s Inferred
Let’s now discuss the design and implementation of a Fuzzy Logic inference engine. Rules were written for the different ranges of the Input/Error signal. Provisions were included to allow modifications of the membership functions according to the above-mentioned restrictions using integer description; e.g., the value 50 causes a linear distribution; values such as 35, 20 cause an increasing concentration towards the center, while values such as 60, 85 move the membership functions to the flanks as illustrated in Figure 2 and Figure 3 (click the Download Now button below to see all figures).

Even with the restrictions mentioned and a single number for the shaping of a set of membership functions, it still requires the adjustment of a total of eight variables. Included in those eight variables are the four values for input and output membership functions, input range select for each input, and gain scaling for P and I to get into the proper range.



"A non-linear, tunable PI controller provides improved applications that need a closed-loop control response. Web tension benefits from non-linear PI control."


             
After adjustment of all these values towards the goal of improving the response to a step command, a substantial improvement has been observed as shown in Figure 4 (click the Download Now button below to see all figures) . In this case, the Kp gain has been increased towards the flanks while the Ki gain was reduced towards the flanks. Such an action helps to respond quickly to a large error (Kp large at the flanks) while the Ki gain reduced at the flanks avoids integrator wind-up. Even with such improvements the problem remains to make the tuning easy and simple for the user.

1 of 2 < 1 | 2 View on one page
Show Comments
Hide Comments

Join the discussion

We welcome your thoughtful comments.
All comments will display your user name.

Want to participate in the discussion?

Register for free

Log in for complete access.

Comments

No one has commented on this page yet.

RSS feed for comments on this page | RSS feed for all comments