Bir bulanık kontrolörün performans analizi
Bir bulanık kontrolörün performans analizi
Dosyalar
Tarih
1998
Yazarlar
Kahraman, Hüseyin
Süreli Yayın başlığı
Süreli Yayın ISSN
Cilt Başlığı
Yayınevi
Fen Bilimleri Enstitüsü
Özet
1965 'de Prof.Dr. Lotfi A. Zadeh tarafından temeli atılan bulanık mantık, önceleri sadece teorik bir uygulama alanı olarak görülmüş, fakat daha sonra pek çok pratik uygulama alanı da bulmuştur. Bu uygulama alanlarının arasında en belirgin olanları, bilgisayar bilimleri, kontrol, tıp, sosyal bilimler, yönetim bilimleri, uzman sistemler, yapay zeka, psikolojidir. Ancak, tüm bu uygulama alanları içinde en dikkate değer olanı, kontrol alanındaki uygulamalardır. Bu alanda da son yıllara kadar, sadece teori alanında gelişmeler kaydedilmiştir. Bu yüzden, bulanık kontrol kavramı endüstri kuruluşlarından fazla destek görmemiştir. Ancak özellikle 1980 yılından sonra endüstriyel bulanık kontrol uygulamalarının ortaya çıkmasıyla, bir anda endüstri kuruluşlarının ilgisi de bu alana kaymıştır. Böylece, akademik ve endüstriyel kuruluşların ortaklaşa çalışmaları sonucunda gerek teorik alanda, gerekse uygulamalar bazında pek çok gelişmeler kaydedilmiştir. Bulanık kontrol algoritmalarının gerçeklendiği pek çok yazılım da geliştirilmiştir. Bu çalışmada gerçekleştirilen simülasyon çalışmalarında da işte bu yazılımlardan biri kullanılmıştır. İlk olarak transfer fonksiyonu; s +s + l olan lineer sistem ele alınmıştır. Ayrık zamanlı çalışma bir sıfırıncı mertebe tutucu vasıtasıyla gerçekleştirilmiş, örnekleme peryodu olarak da 0.01, 0.02 ve 0.03 s. değerleri alınmıştır. Bu sistem için PD ve bulanık kontrolör dizayn edilerek performansları karşılaştırılmıştır. Karşılaştırma kriteri olarak; maksimum aşma, yükselme zamanı, %5'e yerleşme zamanı, hatanın mutlak değerinin toplamı ve sürekli rejim hatası alınmıştır. Daha sonra lineer sisteme boşluk, Coulomb sürtünmesi, ölü bölge ve doyma gibi lineer olmayan etkiler eklenerek daha önce dizayn edilen her iki kontrolörün performansları incelenmiştir. Bulanık kontrolörün dizaynında Matlab programının Fuzzy Logic alt programı kullanılmıştır. Elde edilen simülasyon sonuçları, bulanık kontrolörün PD kontrolöre nazaran daha iyi bir performans sergilediğini göstermektedir.
In engineering and most other branches of science, systems or events are modelled using precise mathematical models, which are then used to predict the systems' or events' future behaviours. But, in real life, there are no precise and perfect definitions or models. For example, the perfectly round spheres used in mathematics are not, in reality, so perfectly round. To be able to cope with real life systems and problems efficiently, the uncertainity and imprecision encountered in real life, must be handled in some way. Fuzzy Set Theory, developed during the 1960s by Lotfi A. Zadeh is one of the ways for achieving this. The main aim of Fuzzy Logic is modelling the reasoning facilities of humans which enable them to make ra and correct decisions using incomplete or imprecise information. Therefore it may act as a perfect interface between humans and machines, bringing them closer to each other to obtain an overall system which encompasses the properties of both human and machine systems. In the classical two valued logic, a proposition is either true or false and in multivalued logic, it is either true or false or has a finite number of truth values. However in fuzzy logic, propositions are assigned truth values, which themselves may be fuzzy subsets of the set from which the truth values are chosen, via a membership function defined on a set which at least has partial ordering and whose elements may be interpreted as different degrees of membership. Among all of the applications and research areas, fuzzy control is the field which has found the greatest amount of research and applications at the moment, many industrial products have been developed, especially in Japan, and some of these products are being used commercially both in Japan and abroad. Some concrete applications of fuzzy control are chlorine controllers for water purification plants, elevator control systems, traffic control systems, bulldozer control, air condioning systems, control systems for cement kilns, control of a plotter to increase speed, fuzzy inference software for fuzzy control etc. As told before, fuzzy logic in control applications became one of the most popular areas of research, both in theory and in application. Some of the reasons to justify the use of fuzzy control tecniques in an application are as follows: 1 - It is not necessary to obtain a precise mathematical model of a system. Xlll 2 - If the system is too complex or the information about the system is limited or if the system is nonlinear, then it is impossible to obtain a precise mathematical model and thereby use classical control tecniques. 3 - The system has to be flexible and has to operate under changing conditions and disturbances. Fuzzy control does. 4 - The control results obtained are at least as good as those when using classical control methods and the results can be reached in a more simple and direct way than with classical control techniques. And also the development of fuzzy inference hardware and fuzzy controller hardware and software will definitely help in reducing the development time of the control algorithms. The fuzzy control system, given in Figure 1, consists of a fuzzy controller block, a fuzzifying interface, a rulebase containing the fuzzy control rules, a database containing fuzzy set definitions which are organized in the form of membership matrix tables and also lookup tables, and a system to be controlled. Figure 1 A fuzzy control system The nature of the signals at certain points are: 1 - At point a : This signal is the feedback signal coming from the system to be controlled. Therefore the signal is crisp. It goes into the fuzzifying interface to be converted into a fuzzy signal. 2 - At point b : This signal is the signal coming out of the fuzzifying interface. Therefore it is the fuzzified form of the signal at point a. This signal goes into the fuzzy controller to be used in determining the control action. XIV 3 - At point c : This signal is the control signal that is determined in the fuzzy controller. It is a fuzzy signal and it must be defuzzified before going into the system to be controlled. Therefore it goes into the defuzzifying interface. 4 - At point d : This signal is the defuzzified signal coming from the defuzzifying interface. It is a crisp signal and it acts as the crisp control signal for the system to be controlled. Let's look at the blocks seen in Figure 1. FUZZY CONTROLLER The fuzzy controller is the main block which executes the fuzzy control algorithm. It is the block where all the decision making process takes place. It accepts inputs from fuzzifying block and acts on these linguistic variables to decide on the control action. It has access to the rulebase and the database. The rules in the rulebase are applied to the variables by the controller and the chosen inference mechanism is used to infer the control action. FUZZIFYING INTERFACE In this block the crisp feedback signals coming from the system to be controlled are fuzzified. But, first of all, the value of the variable must be mapped into the correct universe of discourse by using a scaling factor. And the output signal of this block is a fuzzy signal, which in fact is a linguistic variable which in turn is the name of one of the fuzzy sets defined in the database, going into the fuzzy controller, to be processed in determining the control action to be taken. In the fuzzification process, the fuzzifying block makes use of the database, which contains the fuzzy set definitions in the form of membership matrix tables. DEFUZZIFYING INTERFACE The output of this block is the crisp control signal that is input to the system to be controlled. The input of the defuzzifying interface is the fuzzy control signal, coming from the fuzzy controller. After the rules in the rulebase are evaluated with the present input values in the fuzzy controller and after the composition of the rules expressed in terms of fuzzy relations are taken, then the resulting fuzzy value comes to the defuzzifying interface. Here, the corresponding crisp value is obtained, to which a scaling factor is applied to perform the transformation into the real universe of discourse. In the defuzzifying process, the database containing the fuzzy set definitions is consulted. After the applicable rules in the rulebase are applied, it will be seen that most of the time, more than one rule yields a result and from these results, a crisp control action must be inferred in the defuzzifying interface. For the explained defuzzification process there are various methods. From these methods, the popular ones are; the mean of maxima method, the first of maxima method, the last of maxima method and center of gravity method. XV THE SYSTEM TO BE CONTROLLED The system to be controlled may be a single process or a group of processes tied together to form a system or a classical control system tied in front of a system to be controlled. Therefore the system to be controlled is considered as a block with inputs and outputs and what lays inside the system block is of no importance as long as the control rules are developed accordingly. The system block may have more than one parameter to be controlled, in which case the control inputs to the block may be more than one, and actually equal to the number of parameters to be controlled. The values of these parameters to be controlled and some necessary states of the system are sampled at the necessary intervals and these are input to the fiizzifying interface. This is the same as the feedback signal used in classical closed loop control systems. This signal is crisp signal because nearly all of the time, the system to be controlled are classical closed loop control systems. This is also why the control input to the system must be a crisp signal. THE DATABASE To be able to apply fuzzy control to a system, the fixzzy sets which will be used must be defined. Fuzzy sets are defined with membership functions. The shape of the fuzzy set (the membership function) is arbitrary, however, usually a triangular or a trapezoid shape is chosen. Here, however, it is possible to define the fuzzy sets either by their membership functions or discrete membership degree values. Depending on how fine the control is, a number of levels value must be defined. Membership matrix tables are prepared according to the number of the levels defined. The real values obtained from the system to be controlled are mapped onto these levels via a scaling factor. As the number of levels increased, the control gets finer. THE RULEBASE The rulebase is a database where the control rules are kept. Fuzzy control rules are usually formed based on expert knowledge. These rules are usually in the following form: IF (a set of conditions) THEN (a set of consequences) These rules are called fuzzy conditional statements. Therefore, a control rule is a fuzzy conditional statement with the set of conditions being conditions from the application domain and the consequences being the fuzzy control actions to control the system to be controlled. Before going on to develop the rulebase, great attention must be given to the choice of parameters to be controlled, which are obtained, via the feedback mechanism, from the system to be controlled, the control parameters to be used in the control rules. And a still a greater attention must be paid when choosing the linguistic variables, which are in fact the fuzzy sets, and when defining them. There are four ways to determine the control rules, which are: 1 - Expert experience and control engineering knowledge. XVI 2 - Based on operator's control actions. 3 - Based on the fuzzy model of the process. 4 - Based on learning. After the rules are obtained, it may be necessary for them to perform a better system performance. In this study performance of a fuzzy logic controller is examined. First of all, a linear system with transfer function below is taken. S +S+1 For this system, PD and fuzzy controllers are designed. Discrete simulation is realized by a zero-order hold and sampling period is chosen as 0.01, 0.02 and 0.03 seconds. As we know, nonsmooth nonlinearities are common in many physical components in control systems, such as gears and hydraulic servovalves. Such nonlinearities include saturation, relays, hysterisis, and deadzones and are often unknown and time varying. According to this, some nonlinear elements, these are backlash, coulombic friction, deadzone and saturation, are applied to our linear system. And performances of fuzzy and PD controllers are examined with these nonlinear elements. Simulation is done by Matlab, Simulink Toolbox and fuzzy controller is designed by using Matlab, Fuzzy Toolbox. For the fuzzy controller, error and change of error are inputs and of course the control signal is the output. For each of these 7 membership functions are defined. The membership functions on the edges are trapezoidal, and others are triangular. And of course there is a rulebase consists of 49 rules. To compare performances, five criterias are taken. These are maximum overshoot, rise time, settling time (% 5), sum of absolute values of the errors and steady state error. The block diagram of the system that's controlled with the fuzzy logic controller is given in Figure 2. Mux M»d IHs>*E l tezd Su Zero Order Hold Dead Zone 10 s^sM System Transfer Function Mux fes Mux2 eraph Figure 2 The block diagram of the system that's controlled with the fuzzy logic controller In Figure 2 the constants Se and Sde are input scaling coefficients for the fuzzy controller and Su is the output scaling coefficient. xvu When the simulation is realized with sampling period values of 0.01, 0.02 and 0.03 seconds, the results given in Table 1 is obtained. Table 1 Simulation results of system with deadzone System response to unit step function for T=0.02 sec. Is given in Figure 3. 1.5 2 3 Time (seal Figure 3 Response of system with deadzone to unit step input Simulation results obtained for both system with deadzone and the other configurations show that performance of the fuzzy logic controller is better than that of the PD controller.
In engineering and most other branches of science, systems or events are modelled using precise mathematical models, which are then used to predict the systems' or events' future behaviours. But, in real life, there are no precise and perfect definitions or models. For example, the perfectly round spheres used in mathematics are not, in reality, so perfectly round. To be able to cope with real life systems and problems efficiently, the uncertainity and imprecision encountered in real life, must be handled in some way. Fuzzy Set Theory, developed during the 1960s by Lotfi A. Zadeh is one of the ways for achieving this. The main aim of Fuzzy Logic is modelling the reasoning facilities of humans which enable them to make ra and correct decisions using incomplete or imprecise information. Therefore it may act as a perfect interface between humans and machines, bringing them closer to each other to obtain an overall system which encompasses the properties of both human and machine systems. In the classical two valued logic, a proposition is either true or false and in multivalued logic, it is either true or false or has a finite number of truth values. However in fuzzy logic, propositions are assigned truth values, which themselves may be fuzzy subsets of the set from which the truth values are chosen, via a membership function defined on a set which at least has partial ordering and whose elements may be interpreted as different degrees of membership. Among all of the applications and research areas, fuzzy control is the field which has found the greatest amount of research and applications at the moment, many industrial products have been developed, especially in Japan, and some of these products are being used commercially both in Japan and abroad. Some concrete applications of fuzzy control are chlorine controllers for water purification plants, elevator control systems, traffic control systems, bulldozer control, air condioning systems, control systems for cement kilns, control of a plotter to increase speed, fuzzy inference software for fuzzy control etc. As told before, fuzzy logic in control applications became one of the most popular areas of research, both in theory and in application. Some of the reasons to justify the use of fuzzy control tecniques in an application are as follows: 1 - It is not necessary to obtain a precise mathematical model of a system. Xlll 2 - If the system is too complex or the information about the system is limited or if the system is nonlinear, then it is impossible to obtain a precise mathematical model and thereby use classical control tecniques. 3 - The system has to be flexible and has to operate under changing conditions and disturbances. Fuzzy control does. 4 - The control results obtained are at least as good as those when using classical control methods and the results can be reached in a more simple and direct way than with classical control techniques. And also the development of fuzzy inference hardware and fuzzy controller hardware and software will definitely help in reducing the development time of the control algorithms. The fuzzy control system, given in Figure 1, consists of a fuzzy controller block, a fuzzifying interface, a rulebase containing the fuzzy control rules, a database containing fuzzy set definitions which are organized in the form of membership matrix tables and also lookup tables, and a system to be controlled. Figure 1 A fuzzy control system The nature of the signals at certain points are: 1 - At point a : This signal is the feedback signal coming from the system to be controlled. Therefore the signal is crisp. It goes into the fuzzifying interface to be converted into a fuzzy signal. 2 - At point b : This signal is the signal coming out of the fuzzifying interface. Therefore it is the fuzzified form of the signal at point a. This signal goes into the fuzzy controller to be used in determining the control action. XIV 3 - At point c : This signal is the control signal that is determined in the fuzzy controller. It is a fuzzy signal and it must be defuzzified before going into the system to be controlled. Therefore it goes into the defuzzifying interface. 4 - At point d : This signal is the defuzzified signal coming from the defuzzifying interface. It is a crisp signal and it acts as the crisp control signal for the system to be controlled. Let's look at the blocks seen in Figure 1. FUZZY CONTROLLER The fuzzy controller is the main block which executes the fuzzy control algorithm. It is the block where all the decision making process takes place. It accepts inputs from fuzzifying block and acts on these linguistic variables to decide on the control action. It has access to the rulebase and the database. The rules in the rulebase are applied to the variables by the controller and the chosen inference mechanism is used to infer the control action. FUZZIFYING INTERFACE In this block the crisp feedback signals coming from the system to be controlled are fuzzified. But, first of all, the value of the variable must be mapped into the correct universe of discourse by using a scaling factor. And the output signal of this block is a fuzzy signal, which in fact is a linguistic variable which in turn is the name of one of the fuzzy sets defined in the database, going into the fuzzy controller, to be processed in determining the control action to be taken. In the fuzzification process, the fuzzifying block makes use of the database, which contains the fuzzy set definitions in the form of membership matrix tables. DEFUZZIFYING INTERFACE The output of this block is the crisp control signal that is input to the system to be controlled. The input of the defuzzifying interface is the fuzzy control signal, coming from the fuzzy controller. After the rules in the rulebase are evaluated with the present input values in the fuzzy controller and after the composition of the rules expressed in terms of fuzzy relations are taken, then the resulting fuzzy value comes to the defuzzifying interface. Here, the corresponding crisp value is obtained, to which a scaling factor is applied to perform the transformation into the real universe of discourse. In the defuzzifying process, the database containing the fuzzy set definitions is consulted. After the applicable rules in the rulebase are applied, it will be seen that most of the time, more than one rule yields a result and from these results, a crisp control action must be inferred in the defuzzifying interface. For the explained defuzzification process there are various methods. From these methods, the popular ones are; the mean of maxima method, the first of maxima method, the last of maxima method and center of gravity method. XV THE SYSTEM TO BE CONTROLLED The system to be controlled may be a single process or a group of processes tied together to form a system or a classical control system tied in front of a system to be controlled. Therefore the system to be controlled is considered as a block with inputs and outputs and what lays inside the system block is of no importance as long as the control rules are developed accordingly. The system block may have more than one parameter to be controlled, in which case the control inputs to the block may be more than one, and actually equal to the number of parameters to be controlled. The values of these parameters to be controlled and some necessary states of the system are sampled at the necessary intervals and these are input to the fiizzifying interface. This is the same as the feedback signal used in classical closed loop control systems. This signal is crisp signal because nearly all of the time, the system to be controlled are classical closed loop control systems. This is also why the control input to the system must be a crisp signal. THE DATABASE To be able to apply fuzzy control to a system, the fixzzy sets which will be used must be defined. Fuzzy sets are defined with membership functions. The shape of the fuzzy set (the membership function) is arbitrary, however, usually a triangular or a trapezoid shape is chosen. Here, however, it is possible to define the fuzzy sets either by their membership functions or discrete membership degree values. Depending on how fine the control is, a number of levels value must be defined. Membership matrix tables are prepared according to the number of the levels defined. The real values obtained from the system to be controlled are mapped onto these levels via a scaling factor. As the number of levels increased, the control gets finer. THE RULEBASE The rulebase is a database where the control rules are kept. Fuzzy control rules are usually formed based on expert knowledge. These rules are usually in the following form: IF (a set of conditions) THEN (a set of consequences) These rules are called fuzzy conditional statements. Therefore, a control rule is a fuzzy conditional statement with the set of conditions being conditions from the application domain and the consequences being the fuzzy control actions to control the system to be controlled. Before going on to develop the rulebase, great attention must be given to the choice of parameters to be controlled, which are obtained, via the feedback mechanism, from the system to be controlled, the control parameters to be used in the control rules. And a still a greater attention must be paid when choosing the linguistic variables, which are in fact the fuzzy sets, and when defining them. There are four ways to determine the control rules, which are: 1 - Expert experience and control engineering knowledge. XVI 2 - Based on operator's control actions. 3 - Based on the fuzzy model of the process. 4 - Based on learning. After the rules are obtained, it may be necessary for them to perform a better system performance. In this study performance of a fuzzy logic controller is examined. First of all, a linear system with transfer function below is taken. S +S+1 For this system, PD and fuzzy controllers are designed. Discrete simulation is realized by a zero-order hold and sampling period is chosen as 0.01, 0.02 and 0.03 seconds. As we know, nonsmooth nonlinearities are common in many physical components in control systems, such as gears and hydraulic servovalves. Such nonlinearities include saturation, relays, hysterisis, and deadzones and are often unknown and time varying. According to this, some nonlinear elements, these are backlash, coulombic friction, deadzone and saturation, are applied to our linear system. And performances of fuzzy and PD controllers are examined with these nonlinear elements. Simulation is done by Matlab, Simulink Toolbox and fuzzy controller is designed by using Matlab, Fuzzy Toolbox. For the fuzzy controller, error and change of error are inputs and of course the control signal is the output. For each of these 7 membership functions are defined. The membership functions on the edges are trapezoidal, and others are triangular. And of course there is a rulebase consists of 49 rules. To compare performances, five criterias are taken. These are maximum overshoot, rise time, settling time (% 5), sum of absolute values of the errors and steady state error. The block diagram of the system that's controlled with the fuzzy logic controller is given in Figure 2. Mux M»d IHs>*E l tezd Su Zero Order Hold Dead Zone 10 s^sM System Transfer Function Mux fes Mux2 eraph Figure 2 The block diagram of the system that's controlled with the fuzzy logic controller In Figure 2 the constants Se and Sde are input scaling coefficients for the fuzzy controller and Su is the output scaling coefficient. xvu When the simulation is realized with sampling period values of 0.01, 0.02 and 0.03 seconds, the results given in Table 1 is obtained. Table 1 Simulation results of system with deadzone System response to unit step function for T=0.02 sec. Is given in Figure 3. 1.5 2 3 Time (seal Figure 3 Response of system with deadzone to unit step input Simulation results obtained for both system with deadzone and the other configurations show that performance of the fuzzy logic controller is better than that of the PD controller.
Açıklama
Tez (Yüksek Lisans) -- İstanbul Teknik Üniversitesi, Sosyal Bilimler Enstitüsü, 1998
Anahtar kelimeler
Bulanık denetim sistemleri,
Performans analizi,
Fuzzy control systems,
Performance analysis