Slumber not in the tents of your fathers. The world is advancing. Advance with it. —Giuseppe Mazzini
Industrial Text & Video Company 1-800-752-8398 www.industrialtext.com
Advanced PLC Topics and Networks
C HAPTER H IGHLIGHTS
Fuzzy logic provides PLCs with the ability to make “reasoned” decisions about a process. In this chapter, we will introduce you to the basics of fuzzy logic, including fundamental concepts and historical origins. We will demonstrate how fuzzy logic can be used in practical applications to provide realtime, logical control of a process. When you finish this chapter, you will have learned about the advanced applications of PLCs. You will then be ready to learn how to connect PLCs through local area networks.
17-1 I NTRODUCTION TO F UZZY L OGIC
Fuzzy logic is a branch of artificial intelligence that deals with reasoning algorithms used to emulate human thinking and decision making in machines. These algorithms are used in applications where process data cannot be represented in binary form. For example, the statements “the air feels cool” and “he is young” are not discrete statements. They do not provide concrete data about the air temperature or the person’s age (i.e., the air is at 65°F or the boy is 12 years old). Fuzzy logic interprets vague statements like these so that they make logical sense. In the case of the cool air, a PLC with fuzzy logic capabilities would interpret both the level of coolness and its relationship to warmth to ascertain that “cool” means somewhere between hot and cold. In straight binary logic, hot would be one discrete value (e.g., logic 1) and cold would be the other (e.g., logic 0), leaving no value to represent a cool temperature (see Figure 17-1). Hot
Figure 17-1. Binary logic representation of a discrete temperature value.
In contrast to binary logic, fuzzy logic can be thought of as gray logic, which creates a way to express in-between data values. Fuzzy logic associates a grade, or level, with a data range, giving it a value of 1 at its maximum and 0 at its minimum. For example, Figure 17-2a illustrates a representation of a cool air temperature range, where 70°F indicates perfectly cool air (i.e., a grade value of 1). Any temperature over 80°F is considered hot, and any temperature below 60°F is considered cold. Thus, temperatures above 80°F and below 60°F have a value of 0 cool, meaning they are not cool at all. Figure 17-2b shows another representation of the cool temperature range, where the dotted line shows that hot and cold temperatures are not cool. At 65°F, the fuzzy logic algorithm considers the temperature to be 50% cool and 50% cold, indicating a level of coolness. Below 60°F, the fuzzy logic algorithm considers the temperature to be cold. Industrial Text & Video Company 1-800-752-8398 www.industrialtext.com 798
Advanced PLC Topics and Networks
Fuzzy CHAPTER Logic 17
0 60°F 70°F 80°F
Not Cool Cold
Not Cool Hot
0 60°F 70°F 80°F 65°F means 50% cool 50% cold
Figure 17-2. (a) Cool air temperature range with (b) dotted lines showing not cool range.
In real life, this fuzzy logic temperature algorithm can be associated with the decision you make about the type of clothing you wear at different times of the year. The type of clothing is based on the temperature (input) and its grade representation. As shown in Figure 17-3, at 70°F, you may only need a short-sleeved shirt and pants. However, as the temperature drops to 65°F, you may decide to wear a long-sleeved shirt instead of a short-sleeved one. Moreover, if the input is 25% cool and 75% cold (62.5°F), then you may decide to add another layer, a jacket, based on the temperature and its value of coolness. As we will explain later, a fuzzy system’s output may be...