Fuzzy logic: a new tool for the control engineer's toolbox

Sept. 1, 2000
A control method that mimics the human mind solves difficult control problems by making decisions based on imprecise data

To maintain a constant conveyor speed with a continuously variable load you need to constantly monitor belt speed and adjust the motor speed accordingly. If the belt moves a little slow, you increase the motor speed a little. If the belt slows down a lot, you increase the speed a lot.

Sounds simple, doesn’t it? Now, add the requirement that the control system must also maximize motor economy or the conveyor must be able to operate either horizontally or at an angle up to 45 deg. Try to set up a control system for this conveyor operation using conventional methods and you’ll soon be knee-deep in algorithms.

Error-correction methods such as PID work well where control parameters stay relatively constant. But, when system dynamics change or multiple variables interact with one another, conventional mathematical modeling methods get complex and unwieldy. Also, PID methods require time-consuming tuning adjustments.

Enter fuzzy logic (FL), a relatively new technique based on microprocessor capabilities that enables control devices to think more like humans. This capability helps to automate systems that previously required constant human monitoring and intervention. For example, FL accommodates changes in machine functions required by product changeovers without the need to program new settings or readjust setpoints as with PID controls.

Because FL uses English syntax programming, it reduces the size of software programs and lets engineers develop control systems in as little as 1⁄10 the time of conventional methods.

What is fuzzy logic?

Used with either analog or digital control systems, fuzzy logic is a simple programming and processing technique that deals with imprecise, unclear, or vague inputs. Unlike conventional control approaches, which require “crisp” descriptions of inputs ( On-Off, 1-0, black-white), FL deals with the subjective, approximate, or shades-of-gray descriptions that are prevalent in the real world.

Instead of complex mathematical equations, FL uses linguistic descriptions to describe system relationships and define appropriate outputs. The system designer doesn’t need to be a skilled programmer. He or she only needs to describe the system’s input and output relationships. This process eliminates the excess precision inherent in mathematical modeling, and is much easier to use and understand.

FL, however, is not a control panacea. Though it adds functionality and improves performance in certain applications, conventional control approaches are generally satisfactory in simpler applications. Furthermore, FL control optimization can’t be empirically proven. Best results must be reached via a trialand- error approach.

Fuzzy control uses

Applications for fuzzy control fall into four categories: consumer products, automotive systems, industrial systems, and decision support systems, Table 1.

For the industrial systems, FL controls many variables: speed, temperature, level, distance, rate, current, voltage, density, color, flow, and pressure. It is equally adept at handling process (analog) and discrete (digital) control, but its excellent performance in nonlinear systems makes it particularly useful in process applications and motion control segments of discrete applications.

Application problems well suited to fuzzy control include:

• Tracking (setpoint control in noisy, nonlinear, and time-variant systems).
• Tuning (conflicting constraints).
• Interpolation (multiple-input, multiple-processing levels).

Implementation methods

Designers incorporate fuzzy logic in control devices in three major ways: components, silicon chips, and software.

FL components are imbedded in ready-to-use devices such as temperature controllers, process controllers, and sensors. Typically consisting of microprocessor chips, other processors or application-specific integrated circuits (ASICs), and I/O circuitry, these devices give users the built-in benefits of FL without requiring them to write fuzzy programs. FL coprocessor modules for programmable controllers simplify the addition of fuzzy control to industrial applications.

Silicon technology lets design engineers choose from a variety of dedicated microprocessor chips with built-in fuzzy programs (firmware). These chips include low-cost 4 and 8- bit processors that can be used to add intelligence to consumer appliances. More sophisticated, higher-performance 32-bit chips aid in high-speed image or database processing.

Fuzzy development software aids users in developing control programs to run on general-purpose computers. Though not generally acceptable for control applications due to the slow response time of these computers, development software is ideal for applying fuzzy logic in decision-support tools, database search systems, and pattern recognition.

Vendors offer development kits that include chips, boards, software, and documentation to help users learn, develop, run, and debug FL programs.

A fuzzy tutorial

The three main elements of an FL system are fuzzy sets, membership functions, and production rules.

In conventional sets, elements are either a member of a set, or they are not (zero or 1). There is no middle ground. By contrast, fuzzy sets have variable boundaries. Membership in a fuzzy set is a matter of degree (between zero and 1). In addition, elements in fuzzy sets may be a member of more than one set at the same time (having degrees of membership up to a total of 100%).

Membership functions, Figure 1, graphically show the boundaries of fuzzy sets and describe the variables in FL programs. The height at any point on a membership function, known as its grade, indicates how strongly the variable is a member of the set, with a maximum value of 1.

Consider the term “medium” with respect to automobile speed. When people use this type of vague term to describe relative speed, an image comes to mind. It is, however, a fuzzy (or subjective) image, with uncertain boundaries — one that a computer with its binary logic can’t understand. As you go from slow to fast, the feeling of medium becomes gradually stronger, then gradually weaker, Figure 1.

If the term medium is expressed as a conventional crisp set, the result is a square-edged graph, Figure 2, suggesting that 34 mph is slow and 35 mph is medium with no middle ground. The fuzzy membership function overcomes this inherently misleading condition.

Production rules are logical IF-THEN statements that represent human knowledge or rules-of-thumb and describe the relationships between inputs and outputs of the system being controlled. These rules describe the entire system operation.


A classic control problem involves balancing an inverted pendulum — the equivalent of balancing a broomstick in the palm of your hand, Figure 3. The first step in developing a control system for this balancing act is to make a list of the common-sense or intuitive rules that govern its control. Unlike a conventional control method, which yields a complex mathematical model, the fuzzy control rules are developed in natural language, Table 2. This case requires only seven rules in contrast to hundreds of lines of computer code using conventional means.

After writing the rules, the developer establishes membership functions to represent the modifiers for each variable. Here, two variables must be monitored: the angle from vertical (indicated by a potentiometer voltage) and the rate at which the angle changes (calculated from the above voltage). Both variables may have positive or negative values.

Simple codes called labels represent each membership function, Figure 4. For example, with a potentiometer voltage range of -5 to +5 V, the system developer might decide that the “approximately zero” function (stick is vertical) ranges from -1 to +1 V. “A little to the right” might range from +1 to +3 V, etc.

Once the rules and membership functions have been set, the system is ready to be tested. At this point, the developer can add or delete rules and modify membership functions to fine tune the system’s operation.

Motion control

Applications in motion control that are suitable for FL include web tension control and conveyor speed control. In web tensioning applications, Figure 5, FL controls adjustable-speed servomotors on feed and take-up reels to maintain a constant material tension. This provides a smooth flow of material (film, paper, metal, or tape) through a constant-speed operation, such as slitting, metallizing, printing, or stamping (driven by a third motor). It also ensures a uniformly wound take-up reel.

Though the application sounds simple, variations in running speed, material thickness, machine tolerances, and feedreel winding tightness can alter material tension. Furthermore, the diameters of feed and take-up reels change constantly (one reel gets smaller while the other gets larger), so that the application may outpace the capability of conventional PID control.

An FL program compares the rate of change of the differentials between the feed and take-up reel material speeds (T1, T2) and speed of the constant-speed motor (SM2), and the rate of change of the differentials between the two tension sensors (S1, S2). The program then determines the required speed for the adjustable- speed servomotors on the feed and take-up reels (SM1, SM3). Because the FL program is independent of material type, it allows product changeovers without recalculating and programming new PID values.

In conveyor speed-adjustment applications, Figure 6, FL makes up for variations in product flow to match the position of products with their packaging. Here, the goal is to match products flowing at inconsistent intervals on the constant- speed conveyor A with packaging on conveyor B. By using photoelectric sensors and encoders, FL compares the positional deviations of products and packaging. Then it sends a control signal telling the motor on conveyor B to speed up, slow down, or even stop to accurately match products with packaging.

Trends in fuzzy technology

FL already affects the way we live, work and play. Implementing it in control systems increases the intelligence of the devices we use daily. Though FL gives these devices a sense of human judgment, they cannot learn.

Entering a second step in the evolution of FL, developers are merging it with neural networks (which have learning capability) to provide more adaptive and intelligent control systems.

The third generation of fuzzy implementation, know as flexible intelligence, is already being achieved in experimental machine control applications in aluminum molding and temperature management systems. The intent is to provide a controller that operates using expert knowledge, while allowing for changing conditions in its operating environment.

Mark Lewis is the marketing services manager for Omron Electronics Inc., Schaumburg, Ill.

Sponsored Recommendations

How BASF turns data into savings

May 7, 2024
BASF continuously monitors the health of 63 substation assets — with Schneider’s Service Bureau and EcoStruxure™ Asset Advisor. ►Learn More: https://www.schn...

Agile design thinking: A key to operation-level digital transformation acceleration

May 7, 2024
Digital transformation, aided by agile design thinking, can reduce obstacles to change. Learn about 3 steps that can guide success.

Can new digital medium voltage circuit breakers help facilities reduce their carbon footprint?

May 7, 2024
Find out how facility managers can easily monitor energy usage to create a sustainable, decarbonized environment using digital MV circuit breakers.

The Digital Thread: End-to-End Data-Driven Manufacturing

May 1, 2024
Creating a Digital Thread by harnessing end-to-end manufacturing data is providing unprecedented opportunities to create efficiencies in the world of manufacturing.

Voice your opinion!

To join the conversation, and become an exclusive member of Machine Design, create an account today!