Home
Fuzzy Logic for G Toolkit Reference Manual
Contents
1. Figure 3 13 1 0 Characteristics of a Fuzzy Controller Wide and Small Membership Functions for the Output Terms National Instruments Corporation 3 19 Fuzzy Logic for G Toolkit Reference Manual Chapter 3 Fuzzy Controllers Using CoA or CoM as the defuzzification method results in continuous courses of the controller characteristic especially within those intervals of the input values in which two or more rules are active simultaneously This is because of the averaging character of the defuzzification methods described in Chapter 2 Overview of Fuzzy Logic Using the MoM defuzzification method the most plausible result is calculated In other words the typical value of the conclusion term of the most valid rule is taken as a crisp output value This results in stepped output characteristics as shown in Figure 3 14 Fuzzy Logic for G Toolkit Reference Manual 3 20 National Instruments Corporation Chapter 3 Fuzzy Controllers negative positive negative positive 1 Max Min Rule 1 IF x negative THEN y negative Inference Rule 2 IF x zero THEN y zero Rule 3 IF x positive THEN y positive Figure 3 14 1 0 Characteristic of a Fuzzy Controller with Mean of Maximum Entirely Overlapping Membership Functions for Input and Output Terms National Instruments Corporation 3 21 Fuzzy Logic for G T
2. 5 0 6 0 7 0 vehicle position x Figure 2 6 Linguistic Variable Vehicle Position x and Its Linguistic Terms u left i l right l left down left up right up right down 100 150 200 250 vehicle orientation BI gt Figure 2 7 Linguistic Variable Vehicle Orientation B and Its Linguistic Terms National Instruments Corporation 2 9 Fuzzy Logic for G Toolkit Reference Manual Chapter 2 Overview of Fuzzy Logic negative negative negative positive positive positive uo large medium small small medium large 0 0 30 0 25 0 20 0 15 0 10 0 5 0 5 0 10 0 15 0 20 0 25 0 30 0 steering angle __ Figure 2 8 Linguistic Variable Steering Angle and Its Linguistic Terms Looking at the following rule of the linguistic control strategy IF vehicle position x is center AND vehicle orientation B is up THEN adjust steering angle to zero the condition is composed of the linguistic term center from the linguistic variable vehicle position x and the linguistic term up from the linguistic variable vehicle orientation B are combined with the AND operator Because there are five terms for the linguistic variable vehicle position x and seven terms for the linguistic variable v
3. Suppose you want to observe the behavior of the controller output variable steering angle depending on the vehicle position and the vehicle orientation by varying the vehicle position within the whole input data range and keeping the vehicle orientation constant at 0 National Instruments Corporation 5 33 Fuzzy Logic for G Toolkit Reference Manual Chapter 5 Using the Fuzzy Logic Controller Design VI To set up these test conditions first enter the desired test value into the parameter control block for vehicle orientation as shown in Figure 5 33 ile Edit Ope ect windows Help JO Haracreisic rehicle position rehicle onentation i J a Figure 5 33 Entering a Test Condition into a Parameter Control Block of the O Characteristic Front Panel Fuzzy Logic for G Toolkit Reference Manual 5 34 National Instruments Corporation Chapter 5 Using the Fuzzy Logic Controller Design VI Then begin calculating the I O characteristic by clicking the Run button within the parameter control block for vehicle position as shown in Figure 5 34 File Edit Operate Project Windows Help gt JO CParacdtesysic 5 50 value Ea O00 value 7 F o0 10 0 90 0 2700 15 Rule DoS 1 00 0 31 J IF vehicle position center 1 00 AND vehicle onentation left down 0 31 THEN steenng angle NegMed min bo rai controlled result ae steering angle 4 t0 mn ine l l l l l l l 40 50 60 70
4. a iD T D D iD T D io a iD T io D D D ai T Figure 5 20 Using the Rulebase Editor Scrollbar Start editing the rule base by entering the desired consequence to each rule The consequence part of each rule is implemented as a term selection box containing all possible consequence terms You can specify the consequence of a particular rule by selecting the desired consequence term from the term selection box Fuzzy Logic for G Toolkit Reference Manual 5 22 National Instruments Corporation Chapter 5 Using the Fuzzy Logic Controller Design VI According to the rule base specified in Figure 2 9 Complete Linguistic Rule Base if the vehicle position is left and the vehicle orientation is left down the consequence term 1s negative small By selecting NegSmall from the term selection box of the consequence part THEN part as shown in Figure 5 21 the first rule of the rule base is now specified as IF vehicle position is left AND vehicle orientation is left down THEN set steering angle to negative small File Edit Operate Project Windows Help gt NegBig BUNCE ASE mr NegSrall ZED Utis w IF Poss mall With Up Defuzzification Method Rule Nr rehiclepos vehicleorie F SM Center of w PosBig Hl aximum igph nooi Panery bat ETES ae p fans er if no rule te act Take last value v Inference Method Hd ax Min v eftt center flett down eft cen
5. Chapter 3 Fuzzy Controllers negative positive positive input x zero positive input ax at Figure 3 18 1 0 Characteristic Field of a Dual Input Fuzzy Controller Slightly Overlapping Input Terms National Instruments Corporation 3 29 Fuzzy Logic for G Toolkit Reference Manual Chapter l Design Methodology This chapter provides an overview of the design methodology of a fuzzy controller Design and Implementation Process Overview Knowledge Acquisition The knowledge base of a fuzzy controller determines its I O characteristics and thus the dynamic behavior of the complete closed loop control circuit The knowledge base consists of the following e Linguistic terms membership functions describing the input and output quantities linguistic variables of the controller e Rule base containing the engineering knowledge e Operators for both the AND and the OR operation e Fuzzy inference method and the defuzzification method Within the first system design step all of the linguistic variables and terms for the given application must be established as the vocabulary of the rule based system Use the rule base to formulate the control strategy then select an appropriate defuzzification method Offline Optimization Within this design step the prototype controller is tested and simulated with either real process data previously recorded fr
6. Fuzzy Logic for G Toolkit Reference Manual 3 12 National Instruments Corporation Chapter 3 Fuzzy Controllers negative positive negative positive 1 0 0 8 0 6 0 4 0 2 0 0 1 0 0 undefined gt Rule 1 IF x negative THEN y negative Inference Rule 2 IF x zero THEN y zero Rule 3 IF x positive THEN y positive Modified Figure 3 10 0 Characteristic of a Fuzzy Controller Undefined Input Term Interval National Instruments Corporation 3 713 Fuzzy Logic for G Toolkit Reference Manual Chapter 3 Fuzzy Controllers If an old output value is used as a default value undefined intervals or incomplete rule bases lead to hysteresis effects on the controller characteristic An exact linear controller characteristic can easily be obtained for a single input controller by using nonoverlapping rectangular shaped conclusion terms In this case both area and momentum vary linearly with the degree of truth and there is no distortion caused by overlapping regions of the output terms The simplest way to obtain a linear controller characteristic is to use singletons as conclusion terms with entirely overlapping input terms see Figure 3 11 Singletons are normalized rectangular membership functions with an infinite small width Using singleton membership functions for the conclusion terms makes the CoG defuzzificati
7. vehicle onentatior The controller output variable steerng angle serves as process command varlable This Fuzzy Controller is responsible for the normal backward manneuverng operations Figure 5 26 Print Page Project Description National Instruments Corporation 5 27 Fuzzy Logic for G Toolkit Reference Manual Chapter 5 Using the Fuzzy Logic Controller Design VI Fuzzy Logic Toolkit Linguistic Antecedence Variable Date 29 97 Controller Name Ewdtruck te Time 1 16 AM minimum 0 00 vehicle position masimum 10 00 left left center center right center right 0 0 l I l l l 0 0E 0 2 0E 0 4 0E 0 6 0E 0 6 0E 0 1 0E 1 setpoints of ling variable wehicle positiori feftbottom _leftop _righttop right bottom _ m om oom ioo f a Figure 5 27 Print Page Antecedence Vehicle Position Variable Fuzzy Logic for G Toolkit Reference Manual 5 28 National Instruments Corporation Chapter 5 Using the Fuzzy Logic Controller Design VI Fuzzy Logic Toolkit Linguistic Antecedence Variable Date 29 97 Controller Hame Bwdtruck fc Time 1 18 AM minimum 90 00 vehicle onentation masimum 2r 0 00 1 0 left down left 0 8 left up 0 6 up right up right Oe right dowr 0 4 0 0 1 I I I l 9J 0E 1 0 0E 0 1 0E 2 2 0E 2 2 fE 2 setpaints of ling variable vehicle orentation eftbottom _leftop righttop right bottom _ 20 000 105 000 136 000 200 000
8. 1 National Instruments Corporation 4 3 Fuzzy Logic for G Toolkit Reference Manual Chapter 4 Design Methodology Figure 4 2 illustrates the design steps mentioned above g typical value for center is 5 0 left right center center center 0 0 1 0 2 0 3 0 4 0 5 0 6 0 7 0 8 0 typical values for left center and do right center are 4 0 and 6 0 vehicle position x m Figure 4 2 Definition of a Triangular Membership Function for the Linguistic Term Center Sometimes the typical value of a term is an interval rather than a crisp value If for example the position center is characterized by the statement x 5 0 25 m a trapezoidal membership function II type shape applies as shown in Figure 4 3 Fuzzy Logic for G Toolkit Reference Manual 4 4 National Instruments Corporation Chapter 4 Design Methodology left right center center center 5 0 6 0 7 0 8 0 9 0 0 25 vehicle position x m Figure 4 3 Definition of a Trapezoidal Membership Function for the Linguistic Term Center If there is no a priori information available begin with terms equally spaced within the range of the associated variable with each term entirely overlapping its neighboring terms Cover the desired stable region of the system with mo
9. It is difficult to detect inconsistencies in larger rule bases For fuzzy controllers with only two or three input quantities it is possible to estimate the qualitative controller characteristic just by looking at the rule base Neighboring terms within a rule matrix with strongly differing meanings like positive large and negative small National Instruments Corporation 4 7 Fuzzy Logic for G Toolkit Reference Manual Chapter 4 Design Methodology indicate steeply sloped edges in the control surface which usually are not desired This is referred to as the continuity of a rule base If neighboring rules have the same or similar conclusions the rule base is said to be continuous Within large rule bases it is possible to have multiple definitions of the same rule This is called redundancy It has no influence on the inference result at all if the Max Min inference method is implemented But there are other inference methods not discussed in this manual such as the Sum Product method in which multiple rules can effect the inference result Operators Inference Mechanism and Defuzzification Method In closed loop control applications using fuzzy logic the standard common operators for the AND and the OR operation are the Min and Max operators discussed in Chapter 2 Overview of Fuzzy Logic see Figure 2 13 Default Set of Fuzzy Logic Operators Within certain control applications in the field of process technology however it
10. THEN d error t at Fuzzification Fuzzy Inference Defuzzification dy t at K d error t at th error t Measured Value Figure 3 3 Closed Loop Control Structure with Fuzzy Pl Controller A fuzzy controller with two inputs and one output that increases because of increasing input values is called a Fuzzy PI Controller If an error signal and its derivative are used as input signals it can be regarded as a generalization of the conventional PI controller The benefit of the Fuzzy PI Controller is that it does not have a special operating point The rules evaluate the difference between the measured value and the set value the error signal and the tendency of the error signal to determine whether to increment or decrement the control variable The absolute value of the command variable has no influence The advantage over a conventional PI controller is that a Fuzzy PI Controller can implement nonlinear control strategies and that it uses linguistic rules It is possible to take the error tendency into account only when the error becomes small Figure 3 4 shows a controller structure that often is used in the chemical industry and process technology In this application PID controllers are National Instruments Corporation 3 3 Fuzzy Logic for G Toolkit Reference Manual Chapter 3 Set Point Values Fuzzy Controllers used to control single process parameters The operating point of the entire process usually i
11. This VI provides a graphical user interface for the definition of fuzzy controller membership functions rule base and controller parameters A This VI is run only and has no inputs or outputs Typically the VI is run from the File menu in LabVIEW or BridgeVIEW by selecting File Open The VI is set up to run when opened and to close afterwards therefore operating as a standalone application for the development of the fuzzy logic controller The VI icon may be placed on the block diagram of your G application if you would like to launch the Fuzzy Logic Controller Design VI programmatically to edit the fuzzy controller Load Fuzzy Controller This VI loads the complete set of fuzzy controller parameters and information defined in the Fuzzy Logic Controller Design VI The file extension used for the data file is fc Controller out porn cancel error out anteced data range minimuma anteced data range masimums Opern Dialog input name 1 min 1 input name 2 min 2 input name 3 min 3 input name 4 min 4 Open Dialog is the prompt used by the File Open VI when locating the fuzzy controller data file The default prompt string is Open National Instruments Corporation 1 Fuzzy Logic for G Toolkit Reference Manual Chapter 7 Fuzzy Logic VI Descriptions m o m o DEL DEL E Controller out is the cluster of all data used to define the fuzzy controller that is read in from the controller data file The Load
12. a Fuzzy Controller This chapter describes how to implement a fuzzy controller and includes a pattern recognition application example There are a few different ways to implement a fuzzy controller using the Fuzzy Logic Toolkit The easiest way is to use the Fuzzy Controller VI as demonstrated in the following example Pattern Recognition Application Example Suppose you must develop and implement a fuzzy controller that identifies the shape of different sized triangular hexagonal and rectangular plastic parts moving on a conveyor belt through a simple reflex light barrier as sketched in Figure 6 1 Reflex Light Barrier Conveyor Belt E Moving Direction Figure 6 1 Sensor Facility The plastic parts might be symmetric or asymmetric The reflex light barrier reads a characteristic voltage signal for each plastic part The signal depends on the resistances set up on the light barrier Measuring these signals with a real sensor shows that even the signals of identical plastic parts vary to a certain extent Different environmental conditions such as scattered light can affect the signal Some typical voltage drop National Instruments Corporation 6 1 Fuzzy Logic for G Toolkit Reference Manual Chapter 6 Implementing a Fuzzy Controller curves derived from an asymmetric triangle lefthand shaped triangle are shown in Figure 6 2 N 30 45 60 75 90 105 120 1 Tstep
13. figure 6 10 running pattern recognition application figure 6 12 pattern recognition application example 6 1 to 6 8 abstract voltage drop curve for feature extraction figure 6 2 block diagram 6 7 complete rule base figure 6 6 front panel 6 8 linguistic term arrangement of input variable TH TS figure 6 3 linguistic term arrangement of input variable TU TD figure 6 4 National Instruments Corporation linguistic term arrangement of output variable object figure 6 5 program structure 6 7 sensor facility figure 6 1 typical voltage drop curves obtained from lefthand shaped triangle figure 6 2 saving controller data with fuzzy controller 6 13 to 6 14 Test Fuzzy Control VI 6 15 to 6 18 block diagram example figure 6 18 controller data loaded figure 6 16 front panel figure 6 15 incorrect input value for input 1 figure 6 17 fuzzy controllers closed loop control structures 3 2 to 3 5 for correction of PID controller output figure 3 5 for parameter adaptation of PID controller figure 3 5 simple closed loop control structure figure 3 2 with Fuzzy PI controller figure 3 3 with underlying PID control loops figure 3 4 default output selecting in Rulebase Editor 5 25 implementing with Fuzzy Controller VI 6 1 to 6 18 incorporation into application block diagram 6 9 loading fuzzy controller data 6 9 to 6 13 pattern recognition application example 6 1 to 6 8 saving control
14. implement the complete rule base In such cases usually only the rules covering the normal system operation are implemented Note A fuzzy controller with an incomplete rule base must have a default action value usually the last command value for input situations with no active rule A rule base with at least one active rule for each possible combination of crisp input values is called a complete rule base Because there are overlapping regions of the membership functions an undefined output in a rule base does not necessarily mean that there is no rule active for a certain input situation The completeness of a rule base is not the only aspect to be considered when dealing with large rule bases Contradicting rules rules with the same IF part but with different THEN parts are illogical and should be avoided Contradicting rules have only a marginal effect on the controller characteristic because of the averaging process that occurs during the defuzzification step A rule base that is free of contradicting rules is called a consistent rule base If the rule base is small enough to contain all possible rules it is not difficult to detect inconsistencies This is guaranteed for rule bases that can be built in the form of a matrix as in Figure 2 9 Complete Linguistic Rule Base However many rule bases are larger and more complex These are built by beginning with just a few rules to operate input quantities and gradually adding more rules
15. left j l right l left down left up right up right down 100 50 0 0 50 i 100 150 200 250 vehicle orientation BI gt current vehicle orientation 70 Figure 2 12 Fuzzification of the Vehicle Orientation 70 The current vehicle orientation 70 belongs to the following linguistic terms fuzzy sets left down with a degree of 0 0 left with a degree of 0 0 left up with a degree of 1 0 up with a degree of 0 0 right up with a degree of 0 0 right with a degree of 0 0 right down with a degree of 0 0 The current vehicle orientation of 70 is translated into the linguistic value 0 0 0 0 1 0 0 0 0 0 0 0 0 0 which can be interpreted as left up How to define linguistic terms and membership functions is described in Chapter 4 Design Methodology Fuzzy Logic for G Toolkit Reference Manual 2 14 National Instruments Corporation Chapter 2 Overview of Fuzzy Logic Fuzzy Inference Using IF THEN Rules After all physical input values have been converted into linguistic values identify all rules from the rule base that apply to the current maneuvering situation These rules are identified in order to calculate the values of the linguistic output variable The fuzzy inference step consists of two components e Aggregation Evaluation of the IF part condition of each rule e Composition
16. 17 A Term Arrangement of Completely Overlapping Terms 5 18 Results of the Complete Editing Session Example cccccccessseeeee 5 19 Project S pecific Complete Default Rule Base eeeeeeeeneeees 5 21 Using the Rulebase Editor Scrollbar ccccccccccccecceeeeeeeeeeeeeeaeeaaes 5 22 Selecting Negative Small as the Consequence Term of the First Rule 5 23 Selecting a Defuzzification Method ccccccssssssssseseeeceeecceeeceeeeeeees 5 24 Default Settings for Default Controller Output and Inference Method 5 25 Selecting Complete Documentation from the File Menu 5 26 Save Chances Dialog DB Ox ossceavisstocss orr o an a 5 26 Print Page Project De SCHON y cciadoainsanaasedodancnamnecstsenbmendseensensatecansenattoant 5 27 Print Page Antecedence Vehicle Position Variable cccccceeseeeee 5 28 Print Page Antecedence Vehicle Orientation Variable 0008 5 29 Print Page Conseq tien ce Methods esicasssawesinalcx cay ctatcesaycobeidaetinstariovesneniens 5 30 Print Page RUC eunen e a a Cuassurudnesticnatseast 5 31 Selecting the I O Characteristics Command from the Test Menu 5 32 1 O Characteristic Project Specific Front Panel ccccccccccseeeseeeneeeees 5 33 Entering a Test Condition into a Parameter Control Block of the I O Characteristic Front Panel cc cccccccccceceeeeeeseeeeeeeeeeeneaes 5 34 Activating a Test Calculation is cissa
17. 5 4 RUE DAS SETI una a E 5 20 Documenting Fuzzy Control Projects cccccccccccceeeeeeeceeeaeeeeeeeseeeeseeesseesessesseeeeseeees 5 26 TSU ACTIN CS capicciois tecencsiin Glenna A E S 5 32 Chapter 6 Implementing a Fuzzy Controller Pattern Recognition Application Example cccccccccccssccccsseccsssnssesesseesesssesseesseeesseeees 6 1 Fuzzy Controller Implementation einna S 6 9 Loadins Puzzy Controller Data eeren e tiles cceudichnsusoesepeesbunerdians S 6 9 Saving Controller Data with the Fuzzy Controller ccccccccccccessecceeecceeceeeeeeeeeeeeeeeees 6 13 Testing the Fuz y Controllet sarace a a aa 6 15 Fuzzy Logic for G Toolkit Reference Manual vi National Instruments Corporation Contents Chapter 7 Fuzzy Logic VI Descriptions Fuzzy Logic Controller Design VI ccccccssesesseseeeeeeeeeceeeeeeeeeeees 7 1 Load Fuzzy CONTO ST as 9k sate cubs Sooct a a a GekbaskSanake 7 1 TOZ CONTO Er Vireen aa a uaa 7 3 Test UZZY COMI OW WV le a 625diuattondssosaasodansouaaguadaseuassautseouimaaentwsancttaies 7 4 Appendix A References Appendix B Customer Communication Glossary Index Figures Figure 2 1 Modeling Uncertainty by Conventional Set Membership 0 2 3 Figure 2 2 Modeling Uncertainty by Fuzzy Set Membership cccccceeeeeees 2 4 Figure 2 3 A Linguistic Variable Translates Real Values into Linguistic Values 2 5 Figure 2 4 Automation of a Maneuvering Process Exam
18. 80 90 100 716 94 ehicle position Cursor incr 0 50 Figure 5 34 Activating a Test Calculation The I O characteristics calculation is carried out according to the number of points specified in the No Points control box The calculation process is animated by moving the slider of the varying input variable Note The controller characteristic is calculated twice varying the activated input variable vehicle position in the example from the minimum value up to the maximum value and vice versa This happens because of possible hysteresis effects that occur with incomplete rule bases It can also be caused by definition gaps in the term arrangement of the input variable causing the controller to use the default output value or the last originally computed value National Instruments Corporation 5 35 Fuzzy Logic for G Toolkit Reference Manual Chapter 5 Using the Fuzzy Logic Controller Design VI As soon as the characteristic calculation is finished the characteristic curve is drawn in the I O Characteristic display as shown in Figure 5 35 File Edit Operate Project Windows Help gt O Characteriste 0 00 value P 0 00 value E N dF o0 10 0 30 0 270 0 1 Rule Do5 1 00 0 17 IF vehicle position left 0 17 AND vehicle onentation left down 0 31 THEM steering angle Neg amp mall min bo max controlled result l steering angle T2 to rin 40 50 60 70 80 90 100 vehicle
19. Chapter 1 Introduction Required System ConfisuratioM srce eenen i e eo aE 1 1 TENS Cal AUUO EE AE E E A AT E I T usa E E P AE T AE A 1 1 Windows 95 and Windows NT esseeeeeseessenesseseseesssessssrssserssserssersssessserssserssee 1 1 BETOR Saree sie sco E TAE E N E E E T E E A E E 1 2 Macintosh and Power Macintosh cccceeccceeeccceseccceeeccceeecccesscceeessceeussseeeneess 1 2 Introd ction to Fuzzy LOSIC ipse E R E nema l 2 How Does the Fuzzy Logic Toolkit Work cccccccccceccssceceeeeeeeeeeeeeeeesseeeesesssseeesseeees 1 3 Where Shou tant a a 1 3 Chapter 2 Overview of Fuzzy Logic What 1S BUZZ iy LOGIC Onnan a a a te deatiugitaasa a uz 2 1 PVCS Ol WIIG EDL ACY 25st ioe casa a cb acer ea Ade a bankaauk ua S 2 2 Modeling Linguistic Uncertainty with Fuzzy Sets ccccssesssssessesssesssseseeeeeceeeeeeeeeeees 2 2 Lincu stie Variables anid Terminas vate Orncatiana a a ueeaedauees 2 5 Rule Based Systems naase Sic uotnatientuananetacsentecannt men iel te eleastuamele ints uatteaneitartadieases 2 6 Implementing a Linguistic Control Strategy 00 ccesssssesseseesseeseseessesseeeeeeeeceeeeeeeeeeees 2 7 Structure of the Fuzzy Logic Vehicle Controller ascississeceseendidtondsiatiansauainanaen 2 12 Fuzzification Using Linguistic Vartables cccccccccccecsseccessesessesseseeseesesseeees 2 13 Puzzy Inference Using IF THEN R l Sicsunrnana 2 15 Defuzzification Using Linguistic Variables ccccccccccssces
20. Evaluation of the THEN part conclusion of each rule In the example notice the IF part of each rule logically combines two linguistic terms from different linguistic variables with the word AND Because our linguistic terms represent conditions that are partially true the Boolean AND from conventional dual logic is not suited to model the word AND So you must define new operators that represent logical connectivities such as AND OR and NOT The three operators used in the majority of fuzzy logic applications are defined as listed in Figure 2 13 AND wAeB min uA uB OR uA B max uA uB NOT unAA 1 uA Figure 2 13 Default Set of Fuzzy Logic Operators Notice that these definitions agree with the logical operators used in Boolean logic A truth table yields equivalent results using conventional operators The minimum operator represents the word AND It is applied in the aggregation step to calculate a degree of truth for the IF condition of each rule in the rule base indicating how adequately each rule describes the current situation Mational Instruments Corporation 2 15 Fuzzy Logic for G Toolkit Reference Manual Chapter 2 Overview of Fuzzy Logic In the example situation only the following two rules are valid descriptions of the current situation These rules usually are called the active rules All the other rules are called inactive 1 IF vehicle position x is center AND vehicle orientation B is left
21. Figure 6 2 Typical Voltage Drop Curves Obtained from a Lefthand Shaped Triangle To obtain a simple but efficient controller abstract the curves shown in Figure 6 2 into the idealized curve outline that is shown in Figure 6 3 omummny input lt signal x t 5a lt Tipped input signal xf t Voltage of Reflex Light Barrier V TD 50 00 da l l l l l id 7 30 a 5 70 80 90 100 t Tstep 3 gt Figure 6 3 Abstract Voltage Drop Curve for Feature Extraction There are three distinguishable parts of the flipped input signal represented by the dashed curve x t in Figure 6 3 There is a rising curve part a constant part and a falling curve part Differentiation of the flipped input signal yields the dash dotted curve dx t dt from which you can derive the time intervals TU up TH hold and Fuzzy Logic for G Toolkit Reference Manual 6 2 National Instruments Corporation Chapter 6 Implementing a Fuzzy Controller TD down With TS signal representing complete operation time you can extract the following features for the desired pattern recognition TH TS 0 gt Triangle TU TD TS gt 0 gt lefthand shaped O0 lt TH TS gt 1 gt Hexagon TU TD TS 0 gt symmetrical TH TS 1 gt Rectangle TU TD TS lt 0 gt righthand shaped Note All the signal processing steps described above can be performed by existing functions or by functions you can write in G Because the re
22. Fuzzy Controller VI reads all data from the fc file parses the data and creates this cluster to be used by the Fuzzy Controller VI cancel is TRUE if you close the dialog box of the File Open VI by pressing the Cancel button or if an error occurs during the execution of the dialog box error out is acluster that describes the error status after the Load Fuzzy Controller VI executes If an error occurred before this VI was called error out is the same as error in Otherwise error out displays the errors if any that occurred in this VI Use the error handler VIs to identify the error codes and display the corresponding error messages Using error in and error out clusters is a convenient way to check errors and to specify execution order by wiring the error output from one subVI to the error input of the next antecedent data range minimums is a one dimensional array of the minimum values of the universe of discourse for each of the controller input variables These values are defined in the Fuzzy Logic Controller Design VI for the inputs antecedent data range maximums is a one dimensional array of the maximum values of the universe of discourse for each of the controller input variables These values are defined in the Fuzzy Logic Controller Design VI for the inputs input name 1 through input name 4 are the defined names of the corresponding controller input as defined in the Fuzzy Logic Controller Design VI These names can be wire
23. Logic for G Toolkit you can design a fuzzy logic controller or expert system for decision making and implement the controller in your G applications Fuzzy membership functions and the controller rule base are defined with the Fuzzy Logic Controller Design VI The Controller Design VI is a standalone VI with a graphical user interface for completely defining all controller expert system components All parameters of the defined controller are saved into a controller data file Two additional VIs are used to implement the fuzzy controller in your G application The Load Fuzzy Controller VI is used to load all parameters of the fuzzy controller saved in a data file by the Controller Design VI This data is then wired to the Fuzzy Controller VI which implements the fuzzy logic inference engine Process parameters controller inputs are wired to the inputs of the Fuzzy Controller VI and controller outputs are output by the VI By wiring data acquired by your data acquisition hardware to the fuzzy controller you can implement real time decision making or control of your physical system Additionally outputs of the fuzzy controller can be used by your data acquisition DAQ analog output hardware to implement real time process control Where Should Start If you are not familiar with fuzzy logic and rule based control read Chapter 2 Overview of Fuzzy Logic Chapter 3 Fuzzy Controllers and Chapter 4 Design Methodology which provide an ov
24. National Instruments Corporation Index printing documentation figure 5 31 redundancy 4 8 vehicle control example complete linguistic rule base figure 2 11 fuzzy inference using IF THEN rules 2 15 to 2 17 implementing linguistic control strategy 2 7 to 2 11 rule based systems compared with mathematical models 2 6 human expertise as basis 2 1 to 2 2 vehicle control example 2 6 Rulebase Editor 5 20 to 5 25 default rule base figure 5 21 default settings for default controller output figure 5 25 effect of changes made in Fuzzy Set Editor 5 11 selecting defuzzification method figure 5 24 specifying rules figure 5 23 using the scrollbar figure 5 22 weight factor Degree of Support 5 20 to 5 21 rule of thumb thought process 1 2 2 1 S saving projects Fuzzy Set Editor 5 12 singleton membership functions as output terms entirely overlapping input terms figure 3 14 to 3 15 specify menu Fuzzy Set Editor edit range command 5 9 rename term command 5 15 rename variable command 5 7 to 5 8 stochastic uncertainty 2 2 system configuration requirements 1 1 Fuzzy Logic for G Toolkit Reference Manual Index T technical support B 1 to B 2 telephone and fax support B 2 Term Display Fuzzy Set Editor displaying terms of linguistic variable 5 5 illustration 5 4 Term Legend Fuzzy Set Editor 5 5 Term Selector Fuzzy Set Editor 5 5 terms See linguistic terms test facilities for I O cha
25. NesBia e T left NegBig A0 total rules 35 Senet eom pana Eea pa sate ean i a i T D a iD T _NegBig w used rules 35 up NegMed w A0 defaut DoS 1 00 fightup Neghted v fight Neg mall v right down NegSmall right left down NegBig v Ta ga a ofa am a a m F f lo a D D T i a D io a iD T io cL im Figure 5 23 Default Settings for Default Controller Output and Inference Method Now you have completed the design work for the example project It is time to save the project and to see what documentation features are available within the toolkit National Instruments Corporation 5 25 Fuzzy Logic for G Toolkit Reference Manual Chapter 5 Using the Fuzzy Logic Controller Design VI Documenting Fuzzy Control Projects The File Print submenu offers documentation facilities for printing information about the active project Select Print Complete Documentation to print the complete controller documentation for the example project as shown in Figure 5 24 I gt Fuzzy Logic Controller Design File Edit Operate Project Windows Help At aes MATIONAL gt INSTRUMENTS E Copyright 1995 ElFrint gt Description All AL eee Antecedence Consequence Methods Rules Complete Documentation A pages description Dual input Fuzzy Controller that is used to automate the controller ByDTARUCK FC maneuv
26. __no Other adapters installed Hard disk capacity MB Brand Instruments used National Instruments hardware product model Revision Configuration National Instruments software product Version Configuration The problem is List any error messages The following steps reproduce the problem Fuzzy Logic forG Toolkit Hardware and Software Configuration Form Record the settings and revisions of your hardware and software on the line to the right of each item Complete a new copy of this form each time you revise your software or hardware configuration and use this form as a reference for your current configuration Completing this form accurately before contacting National Instruments for technical support helps our applications engineers answer your questions more efficiently National Instruments Products DAQ hardware Interrupt level of hardware DMA channels of hardware Base I O address of hardware Programming choice LabVIEW or Bridge VIEW version Other boards in system Base I O address of other boards DMA channels of other boards Interrupt level of other boards Other Products Computer make and model Microprocessor Clock frequency or speed Type of video board installed Operating system version Operating system mode Programming language Programming language version Other boards in system Base I O address of other boards DMA channels of other boards Interrupt level of other boards Documentation Comment Form N
27. a mathematical system model With fuzzy logic linguistic representation of engineering knowledge is used to implement a control strategy Suppose you must automate the maneuvering process leading a truck from an arbitrary starting point to a loading ramp The truck should run at a constant low speed and stop immediately when it docks at the loading ramp A human driver is capable of controlling the truck by constantly evaluating the current drive situation mainly defined by the distance from the target position and the orientation of the truck to derive the correct steering angle This is shown in Figure 2 4 Start Position Target Position Figure 2 4 Automation of a Maneuvering Process Example Fuzzy Logic for G Toolkit Reference Manual 2 6 National Instruments Corporation Chapter 2 Overview of Fuzzy Logic Implementing a Linguistic Control Strategy To automate the truck control an ultrasonic distance sensor monitors the truck position in x direction and an electronic compass monitors the truck orientation Each drive situation is identified by at least two conditions The first one describes the vehicle position x from the loading ramp and the second condition describes the vehicle orientation B The conditions are combined with the word AND representing the fact that both conditions must be v
28. data with more expensive higher precision sensors If measuring exact process quantities is too difficult secondary quantities that reveal less specific process information might be sufficient Number of Linguistic Terms The possible values of a linguistic variable are the linguistic terms which are linguistic interpretations of technical quantities The quantity vehicle position x usually called the base variable for example which is measured in meters can have the linguistic interpretations left left center center right center and right When creating a linguistic variable first determine how many terms define the linguistic variable In most applications between three and seven terms make up a linguistic variable It makes no sense to use less than three terms because most linguistic concepts have at least two extreme terms and a middle term between them On the other hand linguistic systems that use more than seven terms are difficult to understand because humans use their short term memory to interpret Fuzzy Logic for G Toolkit Reference Manual 4 2 National Instruments Corporation Chapter 4 Design Methodology technical quantities and our short term memory only can compute up to seven symbols simultaneously Linguistic variables usually have an odd number of terms because they are defined symmetrically and include a middle term between the extremes As a Starting point set up the input variables with at least thre
29. example hot very low small positive and so on The term is defined quantitatively by the corresponding membership function Defines the state of a process variable by the degree of membership of the parameter to each linguistic term defined for example vehicle position left 0 0 left center 0 0 center 0 8 right center 0 1 right 0 0 National Instruments Corporation Max Min inference Mean of Maximum MoM membership function P PID control rule rule base S singleton National Instruments Corporation Glossary Fuzzy inference method using the maximum function for the OR operator and the minimum function for the AND operator Another common inference method is the Max Prod method which uses the product function for the AND operator Method of defuzzification in which the crisp output is determined by selecting a value corresponding to the maximum degree of membership of the composite output membership function If there are multiple maximums the mean of the corresponding values is selected A function that defines degree of membership to the fuzzy set over a defined universe of discourse of the variable parameter A common control strategy in which a process variable is measured and compared to a desired set point to determine an error signal A proportional gain P is applied to the error signal an integral gain I is applied to the integral of the error signal and a derivative gain D i
30. in Chapter 4 Design Methodology you can use either the Center of Maximum method or the Center of Area Select the defuzzification method from the appropriate selector on the Rulebase Editor panel as shown in Figure 5 22 THEN Center of Maximum Fier Reeing anal _Dos Center of Gravity Hean of Maximum wager ni Spoo bit ot Hei p i anes y if no rule te act Take last value v Inference Method HM ax Min v Select form of Aulebase normal Rulebase total rules 35 used ules 35 default DoS 1 00 Figure 5 22 Selecting a Defuzzification Method 5 24 National Instruments Corporation Chapter 5 Using the Fuzzy Logic Controller Design VI The default setting shown in Figure 5 23 can be used as the default controller output The default setting does not affect the application example because the fuzzy controller has a complete rule base and overlapping term arrangements In the example no input variables have definition gaps or undefined intervals See Figure 3 10 I O Characteristic of a Fuzzy Controller Undefined Input Term Interval File Edit Operate Project Windows Help gt Auijebase Zafer Utils v IF THEN with ue Detuzzification Method mae f Cemerot w center Neghted v j eho pik Leny center left Neghed v i PESTE ka center NegSmall if no rule is activ center Sena v Take last value v center FPos5mall w Inference Method center PosMed w l __MaxHin center PosMed 3 i
31. is called defuzzification see Figure 2 10 The relationship between the linguistic values and the corresponding real values always is given by the membership function definitions describing the terms of the linguistic output variable see Figure 2 8 In the example you obtained a fuzzy inference result that is both fuzzy and ambiguous because there are two different actions with nonzero truth degrees to be taken at the same time You must combine two conflicting actions that are defined as fuzzy sets to form a crisp real value A solution to this problem is to find the best compromise between the two different goals This compromise represents the best final conclusion received from the fuzzy inference process One of the two most commonly used methods for calculating the best compromise is the Center of Area method CoA also called Center of Gravity CoG Following this defuzzification method all membership functions representing the conclusion terms are truncated at the degree of validity of the rule to which the conclusion term belongs The areas under the resulting function of all truncated terms are superimposed Find the National Instruments Corporation 2 17 Fuzzy Logic for G Toolkit Reference Manual Chapter 2 Overview of Fuzzy Logic geometric center of the resulting area to determine the crisp compromise value as shown in Figure 2 14 negative negative negative ulo large medium small Validity of Rule 1 po
32. might be necessary to use a compensatory AND operator rather than the pure AND The most important compensatory AND operator is the y operator not discussed in detail here that allows a continuous tuning between AND no compensation and OR full compensation In real situations the word AND sometimes is used to combine two antecedences more like as well as indicating that a little less of one quantity may be compensated This is exactly what can be modeled with the y operator also called compensatory AND Refer to Appendix A References for a list of documents with more information about this topic The standard inference mechanism is the Max Min method Other inference methods have only a marginal influence on the controller characteristic The defuzzification method derives a crisp output value that best represents the linguistic result obtained from the fuzzy inference process As explained in Chapter 2 Overview of Fuzzy Logic there are generally two different linguistic meanings of the defuzzification process e Calculating the best compromise CoM or CoA e Calculating the most plausible result MoM Fuzzy Logic for G Toolkit Reference Manual 4 8 National Instruments Corporation Chapter 4 Design Methodology An important aspect of the defuzzification method is the continuity of the output signal Consider a fuzzy logic system with a complete rule base and overlapping membership functions A defuzzification method
33. plausibility restriction mentioned above so that this point right top of NE1 cannot exceed the left top of ZEL lett battor left top right top 1 00 0 20 0 00 Wo E f Figure 5 3 Plausibility Checking and Point Slider Movement In the truck maneuvering example in the Rule Based Systems section of Chapter 2 Overview of Fuzzy Logic there are two linguistic input variables vehicle position x and vehicle orientation B and the linguistic output variable steering angle It is a good idea to use descriptive variable names instead of the default identifiers offered by the Fuzzy Set Editor Fuzzy Logic for G Toolkit Reference Manual 5 6 National Instruments Corporation Chapter 5 Using the Fuzzy Logic Controller Design VI To rename the input variables input and input2 as vehicle position and vehicle orientation select specify rename variable as shown in Figure 5 4 Pugh Set EOF rename variable Figure 5 4 Selecting the Rename Variable Command National Instruments Corporation 5 7 Fuzzy Logic for G Toolkit Reference Manual Chapter 5 Using the Fuzzy Logic Controller Design VI Now you can change the selected variable identifier inl by entering the new description identifier vehicle position into the text input box above the OK button see Figure 5 5 The new variable identifier is saved by either clicking the OK button or pressing lt Enter gt Ling Varnable Identitiers Mew Ling Variable I
34. position 7 Cursor incr 0 50 Figure 5 35 Controller Characteristic Displayed The I O Characteristic display contains a cursor that you can control with the Cursor Navigation block also shown in Figure 5 35 The cursor can travel along the characteristic curve and identify the active rules for the input situation at each cursor position The current input values and the controller output value are displayed on the 1 O Characteristic function panel Fuzzy Logic for G Toolkit Reference Manual 5 36 National Instruments Corporation Chapter 5 Using the Fuzzy Logic Controller Design VI All active rules within the input situation determined by the cursor position are displayed in the Active Rules display including the degree of truth for each antecedence term Each active rule can be selected as shown in Figure 5 36 File Edit Operate Project Windows Help fo gt JO CAawacTrensic 0 00 value E S000 vane Le P C l l a0 10 0 30 0 270 0 fo Rule DoS 1 00 0 17 F vehicle position left 0 17 JAND vehicle orientation left down 0 31 J THEN steering angle NegSmall 6 Rule Do5 1 003 0 31 SPF vehicle position left center 0 50 AND vehicle orientation left down 0 31 J THEN steering angle NegMed Do5 1 00 0 77 LIF vehicle position left 0 17 AND vehicle orientation left 0 50 J THEN steering angle PosS mall Do5 1 00 4 0 50 F vehicle pogition left
35. this step is a linguistic value for the output variable For example the linguistic result for steering angle adjustment might be steering angle Qa little less than zero Fuzzy Logic for G Toolkit Reference Manual 2 12 National Instruments Corporation Chapter 2 Overview of Fuzzy Logic The Defuzzification step translates the linguistic result back into a real value representing the current value of the control variable Fuzzification Using Linguistic Variables For a more detailed look at the fuzzification process consider a maneuvering situation in which the vehicle position xis 5 1 m and the vehicle orientation B is 70 left right center center center Kf 0 0 0 0 1 0 2 0 3 0 4 0 5 0 current vehicle position x 5 1 m ed Figure 2 11 Fuzzification of the Vehicle Position x 5 1m The current vehicle position x 5 1 m belongs to the following linguistic terms fuzzy sets left with a degree of 0 0 left center with a degree of 0 0 center with a degree of 0 8 right center with a degree of 0 1 right with a degree of 0 0 National Instruments Corporation 2 13 Fuzzy Logic for G Toolkit Reference Manual Chapter 2 Overview of Fuzzy Logic The current vehicle position of 5 1 m is translated into the linguistic value 0 0 0 0 0 8 0 1 0 0 which you can interpret as still center just slightly right center u
36. to 5 16 effect on rule base note 5 14 definition of 2 5 displayed in Fuzzy Set Editor Term Display 5 5 National Instruments Corporation I 5 Index membership function for defining 2 1 vehicle controller example figures 2 9 to 2 10 modifying single terms or whole term arrangements 5 17 plausibility restrictions in Fuzzy Set Editor 5 5 to 5 6 renaming 5 15 to 5 16 rule base for vehicle control example figure 2 11 Term Legend Fuzzy Set Editor 5 5 working with in Fuzzy Set Editor 5 5 linguistic uncertainty definition of 2 2 modeling with fuzzy sets 2 2 to 2 5 linguistic variables adding or removing with specify menu note 5 16 changing data range in Fuzzy Set Editor 5 9 to 5 11 composed of linguistic terms 2 8 default settings in Fuzzy Set Editor 5 5 defining 4 2 to 4 5 number of linguistic terms 4 2 to 4 3 standard membership functions 4 3 to 4 5 definition of 2 5 defuzzification vehicle controller example 2 17 to 2 22 documenting antecedence variables 5 28 to 5 29 consequence variables 5 30 printing documentation figure 5 28 to 5 29 fuzzification vehicle controller example 2 13 to 2 14 renaming in Fuzzy Set Editor 5 7 to 5 8 translation of real values to linguistic values figure 2 5 Variable Selector Fuzzy Set Editor 5 4 5 5 Fuzzy Logic for G Toolkit Reference Manual Index Load Fuzzy Controller VI description 7 1 to 7 2 illustration 6 10 loading fuzzy controller
37. 5 79 90 19 Belgium 02 757 00 20 02 757 03 11 Canada Ontario 905 785 0085 905 785 0086 Canada Quebec 514 694 8521 514 694 4399 Denmark 45 76 26 00 45 76 26 02 Finland 09 527 2321 09 502 2930 France 01 48 14 24 24 01 48 1424 14 Germany 089 741 31 30 089 714 60 35 Hong Kong 2645 3186 2686 8505 Israel 03 5734815 03 5734816 Italy 06 5729961 06 57284309 Japan 03 5472 2970 03 5472 2977 Korea 02 596 7456 02 596 7455 Mexico 5 520 2635 5 520 3282 Netherlands 31 348 43 34 66 31 348 43 06 73 Norway 32 84 84 00 32 84 86 00 Singapore 2265886 2265887 Spain 91 640 0085 91 640 0533 Sweden 08 730 49 70 08 730 43 70 Switzerland 056 200 51 51 056 200 51 55 Taiwan 02 377 1200 02 737 4644 U K 01635 523545 01635 523154 Technical Support Form Photocopy this form and update it each time you make changes to your software or hardware and use the completed copy of this form as areference for your current configuration Completing this form accurately before contacting National Instruments for technical support helps our applications engineers answer your questions more efficiently If you are using any National Instruments hardware or software products related to this problem include the configuration forms from their user manuals Include additional pages if necessary Name Company Address Fax ____ Phone ___ Computer brand Model Processor Operating system include version number Clock speed MHz RAM MB Display adapter Mouse ___ yes
38. 770 000 Figure 5 28 Print Page Antecedence Vehicle Orientation Variable National Instruments Corporation 5 29 Fuzzy Logic for G Toolkit Reference Manual Chapter 5 Using the Fuzzy Logic Controller Design VI Fuzzy Logic Toolkit Linguistic Consequence Yariable Controller Name Date 2 997 Bwdtruck fc Time 1 23 AM minimam 30 00 OOO steeringancle OO O O O DA 1 0 0 8 0 6 0 4 O 2 0 0 30E41 20641 1 0641 OOF 1 0641 20641 30E MegBig Neghed NegSmall ZED FosSmall FPosMed PosBig lnferencemethad Defuzzitymethod Modify Consequence if na rule iz firering setpoints of ling variable MM ae Min Center of Gravity Ves last value sheenng angle Fuzzy Logic for G Toolkit Reference Manual 5 30 a ee el ed a _leftbottom _lefttop righttop right bottom Figure 5 29 Print Page Consequence Methods National Instruments Corporation National Instruments Corporation Fuzzy Logic Toolkit No Rules Chapter 5 Using the Fuzzy Logic Controller Design VI Date 1 25 AM Controller Mame IE widtruck fc Time 2 9 97 IF vehicle pasition left left left left lett lett lett left center left center left center left center left center left center left center center center center center center center center night center nght center nght center right center right center right center right center right rig
39. AULT OR NEGLIGENCE ON THE PART OF NATIONAL INSTRUMENTS SHALL BE LIMITED TO THE AMOUNT THERETOFORE PAID BY THE CUSTOMER NATIONAL INSTRUMENTS WILL NOT BE LIABLE FOR DAMAGES RESULTING FROM LOSS OF DATA PROFITS USE OF PRODUCTS OR INCIDENTAL OR CONSEQUENTIAL DAMAGES EVEN IF ADVISED OF THE POSSIBILITY THEREOF This limitation of the liability of National Instruments will apply regardless of the form of action whether in contract or tort including negligence Any action against National Instruments must be brought within one year after the cause of action accrues National Instruments shall not be liable for any delay in performance due to causes beyond its reasonable control The warranty provided herein does not cover damages defects malfunctions or service failures caused by owner s failure to follow the National Instruments installation operation or maintenance instructions owner s modification of the product owner s abuse misuse or negligent acts and power failure or surges fire flood accident actions of third parties or other events outside reasonable control Under the copyright laws this publication may not be reproduced or transmitted in any form electronic or mechanical including photocopying recording storing in an information retrieval system or translating in whole or in part without the prior written consent of National Instruments Corporation Bridge VIEW Lab VIEW National Instruments and natinst com a
40. Body Temperature _ T F Figure 2 3 A Linguistic Variable Translates Real Values into Linguistic Values The linguistic variable shown in Figure 2 3 allows for the translation of a crisp measured body temperature given in degrees Fahrenheit into its linguistic description A body temperature of 100 5 F for example might be evaluated as a raised temperature or a slightly high fever The overlapping regions of neighboring linguistic terms are important when using linguistic variables to model engineering systems National Instruments Corporation 2 5 Fuzzy Logic for G Toolkit Reference Manual Chapter 2 Overview of Fuzzy Logic Rule Based Systems Another basic fuzzy logic concept involves rule based decision making processes A detailed and precise mathematical description 1s not always necessary for optimized operation of an engineering process In other words human operators often are capable of managing complex situations of a plant without knowing anything about differential equations Their engineering knowledge is perhaps available in a linguistic form such as if the liquid temperature is correct and the pH value is too high adjust the water feed to a higher level Because of fully developed nonlinearities distributed parameters and time constants that are difficult to determine it is often impossible for a control engineer to develop
41. E 5 9 Edt Range Diallon BOK sanoen a aeons aa ee 5 9 Fuzzy Logic for G Toolkit Reference Manual viii National Instruments Corporation Figure 5 8 Figure 5 9 Figure 5 10 Figure 5 11 Figure 5 12 Figure 5 13 Figure 5 14 Figure 5 15 Figure 5 16 Figure 5 17 Figure 5 18 Figure 5 19 Figure 5 20 Figure 5 21 Figure 5 22 Figure 5 23 Figure 5 24 Figure 5 25 Figure 5 26 Figure 5 27 Figure 5 28 Figure 5 29 Figure 5 30 Figure 5 31 Figure 5 32 Figure 5 33 Figure 5 34 Figure 5 35 Figure 5 36 Figure 5 37 Figure 6 1 Figure 6 2 Figure 6 3 Figure 6 4 Figure 6 5 Figure 6 6 Figure 6 7 Figure 6 8 Figure 6 9 National Instruments Corporation Ix Contents Current Input Variable Data Range Changed cccccccccseteeeenteetes 5 10 Output Variable Data Range Changed ccccccccssesceseeeeeeeeeeeeeeeeeeeees 5 11 Open Command and File Dialog BOX 2 0 ccccceecccesssecseeeeeeeeeceeeeeeeeeeees 5 12 Selecting the Add Term After Comman d cccccccccccssseeeeeeeeeeeeeeeeeeees 5 13 New Term Added to the Vehicle Position Variable cc 00ee 5 14 Another New Term Added to the Vehicle Position Variable 5 15 Rename Pein Dialog Box wicca coreceaionnonaniee ener een 5 16 All Vehicle Position Terms Named Correctly cccccccccccsccssseeeeseteeees 5 16 Selecting the Full Term Overlap All Command cccseessseeeeeeeeeees 5
42. F and higher fully belong to that category Modeling uncertain facts such as high fever sets aside the strict distinction between the two membership values one TRUE and zero FALSE and allows arbitrary intermediate membership degrees instead With respect to conventional set theory you can generalize the set notion by allowing elements to be more or less members of a National Instruments Corporation 2 3 Fuzzy Logic for G Toolkit Reference Manual Chapter 2 Overview of Fuzzy Logic certain set This type of set is known as a fuzzy set A graphical representation of such a set is shown in Figure 2 2 u T Membership patients with a high fever 1 0 0 8 95 0 968 986 1004 102 2 1040 105 8 107 6 109 4 Body Temperature TF Figure 2 2 Modeling Uncertainty by Fuzzy Set Membership In the illustration each body temperature is associated with a certain degree of membership u T to the high fever set The function WT is called degree of membership of the element T BT to the fuzzy set high fever The body temperature is called characteristic quantity or base variable T of the universe BT Notice that u ranges from 0 to 1 the values representing absolutely no membership to the set and complete membership respectively The degree of membership to the fuzzy set high fever also can be interpreted as degree of truth a
43. For your convenience this appendix contains forms to help you gather the information necessary to help us solve your technical problems and a form you can use to comment on the product documentation When you contact us we need the information on the Technical Support Form and the configuration form if your manual contains one about your system configuration to answer your questions as quickly as possible National Instruments has technical assistance through electronic fax and telephone systems to quickly provide the information you need Our electronic services include a bulletin board service an FTP site a fax on demand system and e mail support If you have a hardware or software problem first try the electronic support systems If the information available on these systems does not answer your questions we offer fax and telephone support through our technical support centers which are staffed by applications engineers Electronic Services Bulletin Board Support National Instruments has BBS and FTP sites dedicated for 24 hour support with a collection of files and documents to answer most common customer questions From these sites you can also download the latest instrument drivers updates and example programs For recorded instructions on how to use the bulletin board and FTP services and for BBS automated information call 512 795 6990 You can access these services at United States 512 794 5422 Up to 14 400 baud 8 dat
44. Fuzzy Logic for G Toolkit Reference Manual March 1997 Edition Part Number 321511A 01 Copyright 1997 National Instruments Corporation All rights reserved Li Internet Support SupportlnarLinst com E mail info natinst com FTP Site ftp natinst com Web Address http www natinst com Bulletin Board Support BBS United States 512 794 5422 BBS United Kingdom 01635 551422 BBS France 01 48 65 15 59 Jin Fax on Demand Support 512 418 1111 ZTN X Telephone Support U S Tel 512 795 8248 Fax 512 794 5678 XA International Offices Australia 02 9874 4100 Austria 0662 45 79 90 0 Belgium 02 757 00 20 Canada Ontario 905 785 0085 Canada Qu bec 514 694 8521 Denmark 45 76 26 00 Finland 09 527 2321 France 01 48 14 24 24 Germany 089 741 31 30 Hong Kong 2645 3186 Israel 03 5734815 Italy 06 5729961 Japan 03 5472 2970 Korea 02 596 7456 Mexico 5 520 2635 Netherlands 31 348 43 34 66 Norway 32 84 84 00 Singapore 2265886 Spain 91 640 0085 Sweden 08 730 49 70 Switzerland 056 200 51 51 Taiwan 02 377 1200 U K 01635 523545 National Instruments Corporate Headquarters 6504 Bridge Point Parkway Austin TX 78730 5039 Tel 512 794 0100 Important Information Warranty Copyright Trademarks The media on which you receive National Instruments software are warranted not to fail to execute programming instructions due to defects in materials and workmanship for a period of 90 days fr
45. a PID Controller Both the fuzzy controller and the PID controller work in parallel The output signals from both controllers are added but the output signal from the fuzzy controller is zero under normal operating conditions The PID controller output leads the process The fuzzy controller intervenes only when it detects abnormal operating conditions such as strong disturbances Set Point Fuzzy Controller Process Values Rule Base Command IF AND THEN Variable IF AND THEN eee iy Fuzzification Fuzzy Inference Defuzzification CME ral Ji BS Measured Values Figure 3 6 Fuzzy Controller for Correction of a PID Controller Output Mational Instruments Corporation 3 5 Fuzzy Logic for G Toolkit Reference Manual Chapter 3 Fuzzy Controllers I O Characteristics of Fuzzy Controllers You can consider a fuzzy controller to be a nonlinear characteristic field controller Its behavior is determined by its rule base and the membership functions that model the terms of the linguistic input and output variables Because it has no internal dynamic aspects its transient response can be described entirely by its I O characteristics To illustrate how the I O characteristic of a fuzzy controller depends on design parameters such as rule base and membership function specification you must first restrict yourself to a single input fuzzy controller Most of these ideas directly apply to fuzzy controllers with t
46. a bits stop bit no parity United Kingdom 01635 551422 Up to 9 600 baud 8 data bits 1 stop bit no parity France 01 48 65 15 59 Up to 9 600 baud 8 data bits 1 stop bit no parity FTP Support To access our FTP site log on to our Internet host ftp natinst com as anonymous and use your Internet address such as joesmith anywhere com as your password The support files and documents are located in the support directories National Instruments Corporation B 1 Fuzzy Logic for G Toolkit Reference Manual Fax on Demand Support Fax on Demand is a 24 hour information retrieval system containing a library of documents ona wide range of technical information You can access Fax on Demand from a touch tone telephone at 512 418 1111 E Mail Support currently U S only You can submit technical support questions to the applications engineering team through e mail at the Internet address listed below Remember to include your name address and phone number so we can contact you with solutions and suggestions support natinst com Telephone and Fax Support National Instruments has branch offices all over the world Use the list below to find the technical support number for your country If there is no National Instruments office in your country contact the source from which you purchased your software to obtain support gt gt SA Telephone B Fax Australia 02 9874 4100 02 9874 4455 Austria 0662 45 79 90 0 0662 4
47. al sensor signal is not an idealized signal as shown above the characteristic features derived from it are not precise You can model them directly by the appropriate linguistic terms for the two linguistic input variables TH TS and TU TD TS Using the toolkit as described in Chapter 5 Using the Fuzzy Logic Controller Design VI the term arrangements shown in Figures 6 4 and 6 5 exist for the input variables TH TS and TU TD TS File Edit ar Project Windows Help left top right top 0 00 0 10 Figure 6 4 Linguistic Term Arrangement of Input Variable TH TS National Instruments Corporation 6 3 Fuzzy Logic for G Toolkit Reference Manual Chapter 6 Implementing a Fuzzy Controller Figure 6 5 Linguistic Term Arrangement of Input Variable TU TD TS Fuzzy Logic for G Toolkit Reference Manual 6 4 National Instruments Corporation Chapter 6 Implementing a Fuzzy Controller The linguistic output variable object can be composed of singletons each of which represents a specific shape The term arrangement is shown in Figure 6 6 and the rule base is shown in Figure 6 7 Fuzz Sef ZOCF Figure 6 6 Linguistic Term Arrangement of the Output Variable Object National Instruments Corporation 6 5 Fuzzy Logic for G Toolkit Reference Manual Chapter 6 Implementing a Fuzzy Controller Figure 6 7 Complete Rule Base Describing the Pattern Recognition Process Fuzzy Logic for G Tool
48. alid for the respective situation Current Position Figure 2 5 Condition Vehicle Position xand Orientation B Action Steering Angle The situation shown in Figure 2 5 describes a vehicle position left from the target center with a left hand orientation B and a large negative steering angle with the steering wheel turned all the way to the left A control strategy can be defined by using IF THEN rules such as the following IF lt situation gt THEN lt action gt The above rule format describes the necessary reaction or conclusion to a certain situation or condition National Instruments Corporation 2 Fuzzy Logic for G Toolkit Reference Manual Chapter 2 Overview of Fuzzy Logic Note By asking an expert driver for advice about how to proceed when maneuvering the vehicle to the target position you might learn some rules of thumb that can be described by the following IF THEN rules IF vehicle position x is left center AND vehicle orientation B is left up THEN adjust steering angle to positive small or IF vehicle position x is center AND vehicle orientation B is left up THEN adjust steering angle to negative small or IF vehicle position x is left center AND vehicle orientation B is up THEN adjust steering angle to positive medium Or IF vehicle position x is center AND
49. apping linguistic terms NEo negative ZEo zero and POo positive The output variable ranges from 1 0 to 1 0 All linguistic terms of the linguistic variable that 1s activated by the Variable Selector are shown in the Term Display while the term description identifiers are displayed in the Term Legend See Figure 5 2 You can modify the linguistic term being activated by the Term Selector interactively by adjusting the sliders or input controls from the Point Slider Field The Fuzzy Set Editor controls modifications to terms with respect to plausibility restrictions To prevent the user from making implausible term arrangements all input sliders of term points that cannot be modified because of plausibility restrictions are dimmed As the example in Figure 5 3 illustrates you cannot move the left bottom point or left top point of the term NE1 below the left hand range limit of the input variable When modifying a term shape by moving a particular point slider all input sliders are controlled and updated by the Fuzzy Set Editor according to plausibility restrictions too Thus the right top value of the term NEI as shown in Figure 5 3 might not override the left top value of the term ZE1 When moving the right top slider the Fuzzy Set Editor constantly updates this slider according to the National Instruments Corporation 5 5 Fuzzy Logic for G Toolkit Reference Manual Chapter 5 Using the Fuzzy Logic Controller Design VI
50. ational Instruments encourages you to comment on the documentation supplied with our products This information helps us provide quality products to meet your needs Title Fuzzy Logic for G Toolkit Reference Manual Edition Date March 1997 Part Number 321511A 01 Please comment on the completeness clarity and organization of the manual If you find errors in the manual please record the page numbers and describe the errors Thank you for your help Name Title Company Address Phone ___ Fax _ Mail t0 Technical Publications Fax t0 Technical Publications National Instruments Corporation National Instruments Corporation 6504 Bridge Point Parkway 512 794 5678 Austin TX 78730 5039 Glossary Numbers Symbols O Boolean set theory C Center of Area CoA Center of Maximum CoM crisp value National Instruments Corporation degrees percent Traditional set theory based on strict membership or nonmembership of elements to a set Examples are TRUE or FALSE ON or OFF 1 or 0 and so on Method of defuzzification in which the crisp output is determined by the geometrical center of the composite output membership function Also known as Center of Gravity CoG Method of defuzzification in which the crisp output is determined by a weighted average of the maximum values of each output membership function This method is equivalent to the Center of Area method using singleton se
51. ccseancsusiestactouswesvandeatvcews cavatieweatewacsvsctes 5 35 Controller Characteristic Displayed cccccccccccceceecceeeeeceeeeeeeeeeaaeeaaas 5 36 Selecting One of the Active Rules from the Active Rules Display 5 37 Printing Results of a Characteristic Curve ccccccccccccceceeeeeeeeeeeeeeeeseaes 5 38 SEDO FIC pee coer a ese are er nc a ee ae eee en 6 1 Typical Voltage Drop Curves Obtained from a Lefthand Shaped Triangle cccccccccccccccecceeeeeeeeeeeeeeeeeaeeaaas 6 2 Abstract Voltage Drop Curve for Feature Extraction 0000ee 6 2 Linguistic Term Arrangement of Input Variable TH TS 00 6 3 Linguistic Term Arrangement of Input Variable TU TD TS 6 4 Linguistic Term Arrangement of the Output Variable Object 6 5 Complete Rule Base Describing the Pattern Recognition Process 6 6 Block Diagram of the Pattern Recognition Application Prepared for Entering the Pre Defined Fuzzy Controller VI 6 7 Front Panel of the Pattern Recognition Application ccccccceeeseeeees 6 8 Fuzzy Logic for G Toolkit Reference Manual Contents Figure 6 10 Figure 6 11 Figure 6 12 Figure 6 13 Figure 6 14 Figure 6 15 Figure 6 16 Figure 6 17 Figure 6 18 Figure 6 19 Figure 6 20 Tables Fuzzy Logic for G Toolkit Reference Manual X Table 4 1 BUZZ y ONUEOMCE V ee n a Aries vant dae oe task ea da eaaeas 6 9
52. center 0 50 AND vehicle orientation left 0 50 1 THEN steering angle NegSmall a E EFU SS 40 50 60 70 80 30 100 vehicle position Cursor incr 0 50 Figure 5 36 Selecting One of the Active Rules from the Active Rules Display National Instruments Corporation 5 37 Fuzzy Logic for G Toolkit Reference Manual Chapter 5 Using the Fuzzy Logic Controller Design VI The current situation can be printed out for documentation purposes by clicking the Print button above the cursor control block An example printout is shown in Figure 5 37 Fuzzy Logic Toolkit I O Characteristic Function Plot Author M Dahmen Date 279 97 Controller name Bwdtruck tc Time 1 31 AM Description Dual input Fuzzy Controller that is used to automate the maneuvering process leading a truck from an arbitrary stark position in backward direction to a loading ramp The Truck is supposed to be run at constant low speed The maneuvering algorithm i represented by an appropriate tule base knowledge basis The current maneuvering situation is at least represented by Charactenstic Function min to mas sheening angle 30 0 max to min 20 0 680 50 100 vehicle position 7 Cursor incr 0 50 Constant Antecedences vehicle orientation Figure 5 37 Printing Results of a Characteristic Curve Fuzzy Logic for G Toolkit Reference Manual 5 38 National Instruments Corporation Chapter Implementing
53. d directly to the inputs of the Fuzzy Controller VI min 1 through min 4 are the minimum values of the universe of discourse for the corresponding controller input variable Fuzzy Logic for G Toolkit Reference Manual 7 2 National Instruments Corporation Fuzzy Controller VI Chapter 7 Fuzzy Logic VI Descriptions The Fuzzy Controller VI is used to implement fuzzy control in your application A controller data file the project file generated by the Fuzzy Logic Controller Design VI must be loaded by the Load Fuzzy Controller VI The Controller inputs can be connected to appropriate process variables using the Data Acquisition VIs The Fuzzy Controller VI allows up to four inputs and one output Each used name input must have the name of the assigned input variable The inputs of unwired name input are disabled TE Note Controller data name im name ro analog output name 3 output assessment ina emor anay name 4 n4 Controller data is the cluster of all data used to define the fuzzy controller that is read in from the controller data file The Load Fuzzy Controller VI reads all data from the fc file parses the data and creates this cluster to be used by the Fuzzy Controller VI name 1 through name 4 are the names of a defined controller input for the fuzzy controller loaded by the Load Fuzzy Controller VI The names must exactly match the names defined for the controller but the specific inputs 1 4 may be i
54. d its outputs as command values to drive the actuators of the process A corresponding control loop structure is shown in Figure 3 2 Set Point Fuzzy Controller Command Process Values Variables Rule Base AND THEN AND THEN AND THEN Fuzzification Fuzzy Inference Defuzzification Measured Values Figure 3 2 Simple Closed Loop Control Structure with Fuzzy Controller Pure fuzzy control applications are more the exception than the rule In most cases the fuzzy controller output serves as reference parameters such as gains that are provided to a conventional controller instead of driving actuators in the process directly Because you can regard a fuzzy controller as a nonlinear characteristic field controller it has no internal dynamic aspects Thus any dynamic Fuzzy Logic for G Toolkit Reference Manual 3 2 National Instruments Corporation Chapter 3 Fuzzy Controllers property must be implemented by an appropriate preprocessing of the measured input data The Fuzzy PI Controller shown in Figure 3 3 uses the error signal e t and its derivative de t dt from the measured data preprocessing step as inputs If the output signal describes the necessary difference toward the current output value a subsequent integrator device is needed to build up the command variable value Fuzzy Controller Inc Dec Process Command Set Point Variable Rule Base IF AND THEN IF AND
55. d or modified a rule at this point in the example project the Rulebase Editor starts with a project specific complete default rule base as shown in Figure 5 19 Each possible combination of linguistic terms antecedences of the input variables is assigned to a single rule with its consequence part also called conclusion set to none Because there are five terms for the first input variable vehicle position and seven for the second input variable vehicle orientation the rule base offered by the Rulebase Editor contains 35 rules If there are more than fifteen rules available a scrollbar as shown in Figure 5 20 is activated to access the rules not currently displayed on the Rulebase Editor front panel Each rule is associated with a weight factor or Degree of Support DoS to enhance or reduce the influence of a rule on the controller characteristic The DoS ranges between 0 0 and 1 0 In a default rule base all DoS values are set to 1 0 automatically You can use the Utils menu to set weights for all rules Fuzzy Logic for G Toolkit Reference Manual 5 20 National Instruments Corporation You can use weight factors in combination with techniques such as Chapter 5 Using the Fuzzy Logic Controller Design VI genetic algorithms to optimize controller performance File Edit hia The Rulebase Editor panel also contains menu buttons for selecting the defuzzification method and inference method interactively The defau
56. data 6 9 to 6 13 block diagram of pattern recognition application 6 10 File Dialog box figure 6 11 improved controller application block diagram figure 6 13 Load Fuzzy Controller VI figure 6 10 running pattern recognition application figure 6 12 logical operators design considerations 4 8 using in IF THEN rules 2 15 to 2 16 Macintosh and Power Macintosh installation 1 2 manual See documentation Max Min inference 2 17 4 8 Mean of Maximum method defuzzification method example 2 21 to 2 22 3 20 I O characteristics of fuzzy controllers figure 3 20 to 3 21 membership functions defining linguistic terms 2 1 editing automatically in Fuzzy Set Editor 5 17 I O characteristics of fuzzy controllers different overlapping degrees of membership functions for output terms figure 3 16 to 3 18 singleton membership functions as output terms entirely overlapping input terms figure 3 14 to 3 15 wide and small membership functions for output terms figure 3 18 to 3 19 Fuzzy Logic for G Toolkit Reference Manual l 6 standard establishing 4 3 to 4 5 shapes figure 4 3 trapezoidal defining figure 4 5 triangular defining figure 4 4 NOT operator 2 15 0 offline fuzzy controllers 3 2 online fuzzy controllers 3 2 operators See logical operators optimization of fuzzy controllers offline 4 1 online 4 2 OR operator 2 15 P pattern recognition application example 6 1 to 6 8 block dia
57. dentifier Select identifier to be renamed Type in new identifier and click OF in vehicle pozition ine K Figure 5 5 Rename Variable Dialog Box After this select the variable identifier in2 and enter the description identifier vehicle orientation into the text input box Again the new variable identifier is saved by either clicking the OK button or pressing lt Enter gt Complete the rename variable command by clicking the Exit button on the dialog panel To rename the output variable out as steering angle select ANTECEDENCE CONSEQUENCE on the I O Select button to access the output variable You can rename the variable according to the steps demonstrated above To finish this step return the button to the ANTECEDENCE position to be able to access the input variables using the Variable Selector The Fuzzy Set Editor starts a new project with two input variables each of which having the default data range interval 1 0 1 0 The variable data ranges must be changed for the truck application example The vehicle position ranges from 0 0 to 10 0 meters and the vehicle orientation from 90 0 to 270 0 degrees Fuzzy Logic for G Toolkit Reference Manual 5 8 National Instruments Corporation Chapter 5 Using the Fuzzy Logic Controller Design VI To change the data range of the input variable vehicle position select specify edit range as shown in Figure 5 6 ne Pizeh e Eyer Figure 5 6 Selecting the Edi
58. e data range assigned to the related input variable an error message is displayed in the error ring and the output value is set to the default output value also shown in Figure 6 19 ip Test Fuzzy Control vi Figure 6 19 Test Fuzzy Control VI Front Panel with Incorrect Input Value for Input 1 National Instruments Corporation 6 17 Fuzzy Logic for G Toolkit Reference Manual Chapter 6 Implementing a Fuzzy Controller The proper use of all input and output signals supplied by the Load Fuzzy Controller VI and the Fuzzy Controller VI is shown in Figure 6 20 You can use this program structure as a basis for building your own applications using fuzzy logic ip Test Fuzzy Control vi Diagram File Edit Operate Project Windows Help Input value input name 1 beein name Fabel i 2 inout value il rout value ama rou value el f ma pee input value all Figure 6 20 Test Fuzzy Control VI Block Diagram Example Note The inputs and the controller output can be connected directly to the outputs and inputs of the DAQ VIs available in LabVIEW or BridgeVIEW in order to use real process data from sensors instead of the values from the panel controls as shown in Figures 6 18 and 6 19 Fuzzy Logic for G Toolkit Reference Manual 6 18 National Instruments Corporation Chapter Fuzzy Logic VI Descriptions This chapter contains descriptions of the fuzzy logic VIs Fuzzy Logic Controller Design VI
59. e decisions Most often you can approximate with rules that cover only a few distinct cases and apply them to a given situation This approximation 1s possible because of the flexibility of the rules For example if the family doctor agrees to make a house call if a sick child has a high fever of 102 F one definitely would summon the doctor when the thermometer reads 101 5 F Fuzzy Logic for G Toolkit Reference Manual 2 2 National Instruments Corporation Chapter 2 Overview of Fuzzy Logic This situation however cannot be modeled satisfactorily using conventional dual logic because the patient with a body temperature of 101 5 F does not fulfill the criterion for suffering from a high fever and the doctor would not be called A graphical representation of such a set is shown in Figure 2 1 u T Membership patients with a high fever 1 0 0 8 95 0 968 986 100 4 102 2 104 0 105 8 107 6 109 4 Body Temperature ____p_ _siT F Figure 2 1 Modeling Uncertainty by Conventional Set Membership Even if the body temperature was measured with an accuracy of up to five decimal places the situation would be exactly the same The higher precision does not change the fact that patients with a body temperature below 102 F do not fit into the category of patients with a high fever while all patients with a body temperature of 102
60. e nonlinear pass of the controller characteristic Figure 3 9 shows the resulting controller characteristic for nonoverlapping antecedence terms describing the input variable Fuzzy Logic for G Toolkit Reference Manual 3 10 National Instruments Corporation Chapter 3 Fuzzy Controllers positive negative positive 1 0 Max Min Rule 1 IF x negative THEN y negative Inference Rule 2 IF x zero THEN y zero Rule 3 IF x positive THEN y positive Modified CoA Rule 1 Rule 2 Rule 3 active active active 4 a 0 0 2 0 4 0 6 0 8 1 x Figure 3 9 O Characteristic of a Fuzzy Controller Nonoverlapping Input Terms National Instruments Corporation 3 11 Fuzzy Logic for G Toolkit Reference Manual Chapter 3 Fuzzy Controllers In this case only one rule is active for each input situation leading to the stepped controller characteristic shown in Figure 3 9 If there are undefined intervals within input and output terms or the rule base is incomplete you must specify what the fuzzy controller must do If there is no rule available for a certain situation the output value is undefined One way to avoid this problem is to leave the current output value unchanged until the controller encounters a situation that is covered by the rules The resulting effect on the controller characteristic is shown in Figure 3 10
61. e or five terms and the output variables with five or seven terms Standard Membership Functions The degree of truth to which a measurement value of a technical quantity satisfies the linguistic concept of a certain term of a linguistic variable is called degree of membership For a continuous variable the degree of membership can be modeled by a mathematical function The normalized standard membership functions illustrated in Figure 4 1 can be applied to most technical processes These standard functions include Z type A type triangular shape I type trapezoidal shape and S type membership function shapes Figure 4 1 Shapes of Standard Membership Functions To establish standard membership functions complete the following steps 1 Define the typical value for each term This is the value that best fits the linguistic meaning of the term and yields the membership degree u 1 2 For each term set the membership degree to u 0 at the typical values of neighboring terms 3 Connect the point u 1 with the points u 0 by straight lines creating triangular membership function shapes for all inner terms 4 Because there are no terms beyond the rightmost term and below the leftmost term all values that fall into this region belong to the respective border term with the membership degree u
62. ecognition process changes with different input signal conditions see Figure 6 14 f Pattern Recognition Example File Edit Operate Project Windows Help bas 8 00 scale 33 Tu sio SEO inputsignalder 40 50 TD pooo A 10 20 30 40 ABO fall 20 J30 100 signal max TH signal mn ae w fiooo 4 l l l l l l l l l 50 60 70 80 90 100 qe oo 10 20 30 40 50 10 00 80 00 1 00 THATS PEES Tame TU TO TS 0125 Triangle right 0 375 STOF Figure 6 14 Running the Pattern Recognition Application Look back at Figure 6 13 which shows the file dialog box for loading the fuzzy controller data Pressing the Cancel button instead of selecting the fuzzy controller data file FCPR fc executes the default fuzzy controller repeatedly Without having actual data loaded to the controller it will use the default data See the block diagram of the complete pattern recognition application shown in Figure 6 12 Because of security aspects that may occur when running a controller within a real application environment the controller should not start if the Cancel button is pressed To improve your controller design place the While Loop into a Case Structure and connect the selection terminal with the cancel output of the Load Fuzzy Controller VI see Fuzzy Logic for G Toolkit Reference Manual 6 12 National Instruments Corporation Chapter 6 Implementing a Fuzzy Controller Figure 6 11 The result is shown in Fi
63. ed automatically Fuzzy Logic for G Toolkit Reference Manual 5 14 National Instruments Corporation Chapter 5 Using the Fuzzy Logic Controller Design VI To add the second new term between ZE1 and PO1 first select ZE1 from the Term Selector With ZE1 as the active term you can select define add term after again The new term ZE1 is added to the Term Display as shown in Figure 5 13 File Edit o Project Windows Help gt Ol left bottom bottorn lefttop lefttop right top right battam 5 00 a T50 750 7 50 10 00 T fF FOC FT O Figure 5 13 Another New Term Added to the Vehicle Position Variable Before rearranging the linguistic terms according to the desired pattern see Figure 2 6 Linguistic Variable Vehicle Position x and Its Linguistic Terms you can assign the correct term identifiers first by selecting specify rename term Figure 5 14 shows an intermediate state and Figure 5 15 shows the final result of this renaming Mational Instruments Corporation 5 15 Fuzzy Logic for G Toolkit Reference Manual Chapter 5 Using the Fuzzy Logic Controller Design VI Note The specify menu also can be used to add or remove linguistic variables controller inputs ZE1 F 01 Figure 5 14 Rename Term Dialog Box ni Fuy eei E Figure 5 15 All Vehicle Position Terms Named Correctly Fuzzy Logic for G Toolkit Reference Manual 5 16 National Instruments Corporation Chapter 5 Using the Fu
64. ehicle orientation B there are at most N 35 different rules available to form a consistent rule base Because there are only two input variables in this case the complete rule base can be documented in matrix form as shown in Figure 2 9 Fuzzy Logic for G Toolkit Reference Manual 2 10 National Instruments Corporation Chapter 2 Overview of Fuzzy Logic vehicle position x m left center center right center left down negative small negative medium negative medium negative large negative large positive small negative small negative medium negative large negative large positive medium positive small negative small negative medium negative large positive medium positive medium negative medium negative medium z eon c O ao wend c r O 2 s gt right up positive large positive medium positive small negative small negative medium right positive large positive large positive medium positive small negative small right down positive large positive large Figure 2 9 Complete Linguistic Rule Base positive medium positive medium negative small Each combination of a column and a row describes a certain maneuvering situation the condition of a certain rule The conclusion is given by the term at the intersection of the column and row As an
65. er 5 Using the Fuzzy Logic Controller Design VI I Fuzzy Logic Controller Design Oy x File Edit Operate Project Windows Help Aeon Menu Bar ee MATIONAL INSTRUMENTS gt Copyright 1995 All Rights A d File Menu AEA Project Identification Field description controller untitled Project Description Field date Saturday February 08 1997 time 11 13 PM Figure 5 1 Project Manager Front Panel The File Print command prints out the fuzzy controller documentation You can choose different print layouts from the Print submenu which opens when the Print command is selected The existence of a submenu is indicated by a gt in the Print menu Many of the commands in the toolkit work similarly to those in LabVIEW or BridgeVIEW The File Save and File Save as commands store the project data to a file with a fc extension The Quit command exits the application The Quit command checks for unsaved project data and prompts you to save the project if necessary before leaving the application You can access online help by selecting Help Help National Instruments Corporation 5 3 Fuzzy Logic for G Toolkit Reference Manual Chapter 5 Using the Fuzzy Logic Controller Design VI Fuzzy Set Editor Now consider designing a fuzzy controller for the truck maneuvering example described in the Rule Based Systems section of Chapter 2 Overview of Fuzzy Logic When you begin a new project it is best to enter at least a shor
66. ering process leading a truck from an arbitrary start eaen a position in backward direction to a loading ramp The Truck ete i E ti is supposed to be run at constant low speed date 9 6 96 The manewernna alnnnkhm i renresenked hi an annranriake time 10 06 AM Figure 5 24 Selecting Complete Documentation from the File Menu You can leave the Fuzzy Logic Toolkit by selecting File Quit without having saved the project since the last changes Save changes to BWOTAUCE FC before quitting save cancel Figure 5 25 Save Changes Dialog Box Fuzzy Logic for G Toolkit Reference Manual 5 26 National Instruments Corporation Chapter 5 Using the Fuzzy Logic Controller Design VI Figures 5 26 through 5 30 show printed pages from the example project Fuzzy Logic Toolkit Controller Description Date 29 9 Time 1 20 4M Controller Name Bwdtuck fe Path D SLABVIEWSFuzzy EMAMPLESSBwdtuckfe 0000 Date BreoF Time TOrAM 00 Author IN Dahmen Description Dual input Fuzzy Controller that is used to automate the maneuvering process leading a truck from an arbitrary start position in backward direction to a loading ramp The Truck is supposed to be run at constant low speed The maneuvering algorithm is represented by an appropriate rule base Knowledge basis The current maneuvering situation i atleast represented by the two linguistic input variables vehicle position towards the loading ramp position and
67. erview of typical methods of fuzzy controller design and implementation Start with the following chapters if you are familiar with fuzzy logic but interested in learning more about fuzzy controllers Chapter 5 Using the Fuzzy Logic Controller Design VI describes how to use the toolkit to design a fuzzy controller and save the controller data to a file Chapter 6 Implementing a Fuzzy Controller describes how to use the remaining Toolkit VIs to implement the designed controller in your G applications The toolkit VIs are explained in detail in Chapter 7 Fuzzy Logic VI Descriptions National Instruments Corporation 1 3 Fuzzy Logic for G Toolkit Reference Manual Chapter l Overview of Fuzzy Logic This chapter introduces fuzzy set theory and provides an overview of fuzzy logic control What is Fuzzy Logic Fuzzy logic is a method of rule based decision making used for expert systems and process control that emulates the rule of thumb thought process used by human beings The basis of fuzzy logic is fuzzy set theory which was developed by Lotfi Zadeh in the 1960s Fuzzy set theory differs from traditional Boolean or two valued set theory in that partial membership in a set is allowed Traditional Boolean set theory is two valued in the sense that a member either belongs to a set or does not represented by 1 or 0 respectively Fuzzy set theory allows for partial membership or a degree of membership which might be any value a
68. ested to be loaded from disk after starting up the VI Input values can be entered using the input controls of the VI front panel when used as a test environment The controller output is also displayed on the VI front panel Note To use this VI as a subVI in your control application you must define the connector terminals The VI has no defined inputs or outputs so you must edit the terminals and save the VI with the redefined connector Fuzzy Logic for G Toolkit Reference Manual 7 4 National Instruments Corporation Appendix References This appendix lists the reference material used to produce the VIs in this manual These references contain more information on the theory and algorithms implemented in the fuzzy logic VIs Industrial Applications of Fuzzy Logic and Intelligent System Edited by John Yen Reza Langari and Lotfi Zadeh Piscataway NJ IEEE Press 1995 Zimmerman H J Fuzzy Set Theory and Its Applications Second Revised Edition Boston MA Kluwer Academic Publishers 1991 Kahlert J and Frank H Fuzzy Control fuer Ingeniere Braunschweig Wiesbaden Vieweg 1995 Kahlert J and Frank H Fuzzy Logik und Fuzzy Control Braunschweig Wiesbaden Vieweg 1993 Zimmerman H J Fuzzy Sets Decision Making and Expert Systems Boston Dordrecht London Kluwer Academic Publishers 1987 National Instruments Corporation A 1 Fuzzy Logic for G Toolkit Reference Manual Customer Communication
69. ets 2 2 to 2 5 overview 1 2 2 1 to 2 2 rule based systems 2 6 types of uncertainty 2 2 vehicle controller example 2 7 to 2 22 defuzzification using linguistic variables 2 17 to 2 22 fuzzification using linguistic variables 2 13 to 2 14 fuzzy inference using IF THEN rules 2 15 to 2 17 implementing linguistic control Strategy 2 7 to 2 11 rule based system as basis 2 6 structure of fuzzy logic controller 2 12 to 2 22 Fuzzy Logic Controller Design VI 5 1 to 5 38 description 7 1 documenting projects 5 26 to 5 31 Fuzzy Set Editor 5 4 to 5 19 online help 5 1 overview 5 1 Project Manager 5 2 to 5 3 restrictions 5 1 Rulebase Editor 5 20 to 5 25 test facility 5 32 to 5 38 Fuzzy Logic for G Toolkit getting started 1 3 installation 1 1 to 1 2 Macintosh and Power Macintosh 1 2 Windows 3 x 1 2 Windows 95 and Windows NT 1 1 purpose and use 1 3 system configuration requirements 1 1 Fuzzy Logic for G Toolkit Reference Manual l 4 fuzzy logic VI descriptions 7 1 to 7 4 See also specific VIs Fuzzy Controller VI 7 3 to 7 4 Fuzzy Logic Controller Design VI 7 1 Load Fuzzy Controller VI 7 1 to 7 2 Test Fuzzy Control VI 7 4 fuzzy set theory 2 1 Boolean set theory vs 2 1 Fuzzy PI Controller advantages 3 3 closed loop control structure figure 3 3 Fuzzy Set Editor 5 4 to 5 19 Add Term After command figure 5 13 adding new linguistic terms 5 13 to 5 16 ANTECEDENCE CONSEQUENCE I O Select butt
70. example the following rule is highlighted in Figure 2 9 IF vehicle position x is left center AND vehicle orientation B is left THEN adjust steering angle to negative small National Instruments Corporation 2 11 Fuzzy Logic for G Toolkit Reference Manual Chapter 2 Overview of Fuzzy Logic Structure of the Fuzzy Logic Vehicle Controller The complete structure of a fuzzy logic controller is shown in Figure 2 10 Fuzzy Inference Linguistic Variables Linguistic Variables and Terms and Terms vehicle position x center steering angle zero vehicle orientation B up facts Fuzzification Real Variables PR conclusions Linguistic Level Defuzzification Technical Level Control Variable measured quantities Ar steering angle 0 vehicle position x 5 m a vehicle orientation B 90 Figure 2 10 Complete Structure of a Fuzzy Controller In the first step all sensor signals must be translated into linguistic variables For example a measured vehicle position x of 4 8 m must be translated to the linguistic value almost center just slightly left center This step is called Fuzzification because it uses fuzzy sets for translating real variables into linguistic variables Once all input variable values are translated into corresponding linguistic variable values the Fuzzy Inference step is executed to derive a conclusion from the rule base that represents the control strategy The result of
71. front panel is shown in Figure 6 17 pe Test Fuzzy Control vi Figure 6 17 Test Fuzzy Control VI Front Panel The fuzzy controller project identifier is displayed in the controller string indicator as soon as the fuzzy controller data file is loaded The identifiers of all used inputs are displayed in the string input name indicator The currently valid data range for each used input variable is displayed in appropriate minimums and maximums indicators You can enter input values to stimulate the controller by using the input value control The output value is displayed in the controller out indicator Each input value is initialized automatically by its lower data range value National Instruments Corporation 6 15 Fuzzy Logic for G Toolkit Reference Manual Chapter 6 Implementing a Fuzzy Controller Figure 6 18 shows the application front panel immediately after loading the fuzzy controller data file for the pattern recognition example Test Fuzzy Control vi gt Figure 6 18 Test Fuzzy Control VI Front Panel with Controller Data Loaded Fuzzy Logic for G Toolkit Reference Manual 6 16 National Instruments Corporation Chapter 6 Implementing a Fuzzy Controller Remember that a fuzzy controller uses default values if there is an input situation not covered by active rules This situation is indicated by a message displayed in the output assessment string indicator as shown in Figure 6 19 If input values exceed th
72. gram 6 7 complete rule base figure 6 6 front panel 6 8 linguistic term arrangement input variable TH TS figure 6 3 input variable TU TD figure 6 4 output variable object figure 6 5 program structure 6 7 sensor facility figure 6 1 voltage drop curves abstract voltage drop curve for feature extraction figure 6 2 typical curves obtained from lefthand shaped triangle figure 6 2 National Instruments Corporation PID controllers fuzzy controller used with 3 4 to 3 5 correction of PID controller output figure 3 5 parameter adaptation figure 3 5 tuning parameters 3 4 with underlying PID control loops figure 3 4 purpose and use 3 4 plausibility restrictions in Fuzzy Set Editor 5 5 to 5 6 Point Slider Field Fuzzy Set Editor 5 5 Project Manager 5 2 to 5 3 R range for linguistic variables changing 5 9 to 5 11 references A 1 Rename Variable command Fuzzy Set Editor figure 5 7 Rename Variable dialog box figure 5 8 required system configuration 1 1 rule base changing effect fuzzy controller I O characteristics figure 3 22 to 3 23 complete rule base 4 7 pattern recognition application example figure 6 6 vehicle control example figure 2 11 consistent 4 7 continuity 4 8 continuous 4 8 contradicting rules 4 7 defining for fuzzy controllers 4 6 to 4 8 documenting 5 31 effect of adding new terms note 5 14 implementing linguistic control strategy 2 7 to 2 11
73. gure 3 2 Figure 3 3 Figure 3 4 Figure 3 5 Figure 3 6 Figure 3 7 Figure 3 8 Figure 3 9 Figure 3 10 Figure 3 11 Figure 3 12 Figure 3 13 Figure 3 14 Figure 3 15 Figure 3 16 Figure 3 17 Figure 3 18 Figure 4 1 Figure 4 2 Figure 4 3 Figure 5 1 Figure 5 2 Figure 5 3 Figure 5 4 Figure 5 5 Figure 5 6 Figure 5 7 Internal Structure of a Fuzzy Controller cccccccccecccceeccceeeeeeeeeeeeeees 3 1 Simple Closed Loop Control Structure with Fuzzy Controller 3 2 Closed Loop Control Structure with Fuzzy PI Controller 3 3 Fuzzy Controller with Underlying PID Control Loops eee 3 4 Fuzzy Controller for Parameter Adaptation of a PID Controller 3 5 Fuzzy Controller for Correction of a PID Controller Output 0 3 5 I O Characteristic of a Fuzzy Controller Partially Overlapping Input Terms csceissdiccedciasestaretossbadetiesssssanieeiadteiee 3 7 I O Characteristic of a Fuzzy Controller Entirely Overlapping Input Terms cccccesesseseesseeeesseeeeeeeseeeeeeeees 3 9 I O Characteristic of a Fuzzy Controller Nonoverlapping Input Terms enssncbinenni an te bcwteedecntuaeantiea teenies 3 11 I O Characteristic of a Fuzzy Controller Undefined Input Germ Interval isnat a a a 3 13 I O Characteristic of a Fuzzy Controller Singletons as Output Terms Entirely Overlapping Input Terms 3 15 I O Characteristics of a Fu
74. gure 6 15 The TRUE case is empty and the application quits if the Cancel button is pressed Figure 6 15 Improved Controller Application Block Diagram The complete pattern recognition application example also is available within the Fuzzy Logic Toolkit package Saving Controller Data with the Fuzzy Controller You might want to use a fuzzy controller like a predefined VI without the need to load its data first You might wonder how the currently valid controller data file can be made the default for the controller so you can use it as a standalone controller A standalone Fuzzy Controller VI can be built for the pattern recognition application example by performing the following steps 1 Bring the application block diagram to the front and open the Fuzzy Controller VI by double clicking its icon 2 Bring the application front panel to the front Start the application so that the input file dialog box requesting a fuzzy controller data file opens National Instruments Corporation 6 13 Fuzzy Logic for G Toolkit Reference Manual Chapter 6 Implementing a Fuzzy Controller 4 Select the desired fuzzy controller data file as shown in Figure 6 13 Stop the application Bring the front panel of the Fuzzy Controller VI to the front Choose Operate make current values default to make the currently valid controller data the default 8 Use one of the following options e Save a copy of the Fuzzy Controller VI if you want
75. haracteristics HaTIONAL pe NSMT Copyright 1995 All Rights Reserved description Dual input Fuzzy Controller that is used to automate the controller Byydtruck fe maneuvering process leading a truck from an arbitrary stark Eeee aE position in backward direction to a loading ramp The Truck Eite SET is supposed to be run at constant low speed date 2 9 97 The mane nvenna slanithen i renrescented bu am sanoranrnate time 1 07 AM Figure 5 31 Selecting the O Characteristics Command from the Test Menu Fuzzy Logic for G Toolkit Reference Manual 5 32 National Instruments Corporation Chapter 5 Using the Fuzzy Logic Controller Design VI For the application example FuzzyTruck previously loaded into the Fuzzy Logic Toolkit the I O Characteristic test facility starts with a front panel similar to the one shown in Figure 5 32 File Edit Operate Project Windows Help nE HO CPAYAHOISEC 0 00 value F 90 00 value F k iy F oo 10 0 901 0 270 0 30 0 20 0 10 0 20 0 0 100 amp 20 0 min ta max steering angle mas to mri 30 0 og a0 90 10 0 30 00 uit ee Figure 5 32 O Characteristic Project Specific Front Panel Each input variable of the fuzzy controller is represented by a specific parameter control block within the Input Parameter Field of the I O Characteristic front panel It is used to set up the desired test conditions for the different controller inputs
76. ht right right right right right AND vehicle onentatl left down left left up right down left down lett left up up right up right right dowrn left down lett left up up right up right right down left down lett left up up right up right right dowr left down left left up up right up right right dowrn THEN steenng angle Heg mall PosSmall Poskied Poskied PosBig PosBig PosBig Neghted Heg mall PosS mall Poskled Posed PosBig PosBig Neghed Neghted Heg mall ero PosSmall Posked Poskled MegBig MegBig MegBig Meghed Neghted MegSrrall MegSrrall MegBig MegBig MegBig Megbled Megbled Meg mall MegS mall mim pmp pmm gm mm m m mm mmm m m m m m ee m m m m m m a e a a g ee ee ee a Figure 5 30 Print Page Rules 5 37 Fuzzy Logic for G Toolkit Reference Manual Chapter 5 Using the Fuzzy Logic Controller Design VI Test Facilities Before running a fuzzy controller within a designated system environment it is useful to study its I O characteristics within the toolkit Optimization and necessary modifications can be carried out that way An appropriate test environment is available within the Fuzzy Logic Toolkit You can call the test facility to perform the I O characteristic studies of a fuzzy controller by selecting Test I O Characteristics as shown in Figure 5 31 ii Dm a Logic Controller Design Eile Edit E aien Project Windows Help fat 1 0 C
77. is continuous if an arbitrary small change of an input value can never cause an abrupt change in the output signal In this respect the defuzzification methods CoM and CoA are continuous because the best compromise can never jump to a different value with a small change to the inputs assuming overlapping output membership functions To the contrary the defuzzification method MoM is discontinuous because there is always a point at which an arbitrary small change in the input situation of the system will cause a switch to another more plausible result Table 4 1 Comparison of Different Defuzzification Methods Method Assessment Center of Gravity Criteria CoG Center of Area Center of Maximum Mean of Maximum CoA CoM MoM Linguistic Best Compromise Best Compromise Most Plausible Result Characteristic Fit with Implausible with Good Good Intuition varying membership function shapes and strong overlapping membership functions Computational Very High Very Low Effort Application Closed loop Control Closed loop Control Pattern Recognition Field Decision Support Decision Support Decision Support Data Analysis Data Analysis Data Analysis National Instruments Corporation 4 9 Fuzzy Logic for G Toolkit Reference Manual Chapter Using the Fuzzy Logic Controller Design VI This chapter describes how to design a fuzzy controller using the Fuzzy Logic Controller Design VI Overview The VIs that make up
78. it to be available under a unique name Select No when asked to save the original Fuzzy Controller VI to leave it unchanged e Save the original Fuzzy Controller VI which now has the current controller data as default values Only the default values of the original Fuzzy Controller VI have been changed The VI still can be used as a general purpose Fuzzy Controller VI because the default values are used only when the controller is applied without loading specific data into the VI 9 Close the application Now you can use either the new VI or the modified one as a standalone fuzzy controller as shown in Figure 6 16 Fuzzy Controller l with a data set file being made default Figure 6 16 Application Block Diagram with Standalone Fuzzy Controller VI Fuzzy Logic for G Toolkit Reference Manual 6 14 National Instruments Corporation Chapter 6 Implementing a Fuzzy Controller Testing the Fuzzy Controller There is another predefined VI available in the Fuzzy Logic Toolkit package that you can use to build or test fuzzy control applications The Test Fuzzy Control VI supplies a fuzzy control test and application environment for as many as four different controller inputs Input assignment is set automatically according to the data being loaded into the controller This VI was created to show the proper use of all input and output signals supplied by the Load Fuzzy Controller VI and the Fuzzy Controller VI The Test Fuzzy Control VI
79. kit Reference Manual 6 6 National Instruments Corporation Chapter 6 Implementing a Fuzzy Controller The principal program structure of the pattern recognition facility is simply a loop structure which repeatedly takes the input signal from a data acquisition board using the easy I O VIs for example and processing it according to the conditions described above To experiment with the fuzzy controller independently from specific data acquisition equipment consider the following simulation environment The SignalGen VI on the left side of the block diagram shown in Figure 6 8 corresponds to the input side of a process controller The NumtoString VI on the right side of the diagram can be regarded as the output side of a process controller It supplies all necessary output signals including the signals used for process animation Figure 6 8 Block Diagram of the Pattern Recognition Application Prepared for Entering the Pre Defined Fuzzy Controller VI The data acquisition part including all the data pre processing activities is replaced by the SignalGen VI which directly supplies the necessary input signals TH TS and TU TD TS for the example application All other input and output signals used in the block diagram are part of the user interface that includes all the controls and indicators National Instruments Corporation 6 7 Fuzzy Logic for G Toolkit Reference Manual Chapter 6 Implementing a Fuzzy Controller you can u
80. l medium large validity N of Rule 1 Validity of Rule 2 VY VY WY 25 0 20 0 15 0 10 0 5 0 10 0 15 0 20 0 25 0 30 0 defuzzified result 6 1 steering angle gt Figure 2 15 Defuzzification According to Center of Maximum CoM With negative medium 15 and negative small 5 as typical values of the linguistic terms negative medium and negative small and with the validity values V rule 1 0 8 and V rule 2 0 1 for the active rules the possible defuzzification results are O negative medium V rule 2 O negative small V tule 1 out V tule 2 V rule 1 out 6 1 The defuzzification method Center of Maximum is identical to the Center of Gravity method using singleton membership functions National Instruments Corporation 2 19 Fuzzy Logic for G Toolkit Reference Manual Chapter 2 Overview of Fuzzy Logic Figure 2 16 summarizes the fuzzy inference process for the maneuvering situation described above assuming the CoA method of defuzzification 1 IF vehicle position x center AND vehicle orientation B eft up THEN steering angle negative small negative negative center medium small 0 0 5 0 0 90 180 270 0 15 30 vehicle position x m vehicle orientation B steering angle 9 negative negative medium sma
81. l xii National Instruments Corporation About This Manual The symbol leads you through nested menu items and dialog box options to a final action The sequence File Page Setup Options Substitute Fonts directs you to pull down the File menu select the Page Setup item select Options and finally select the Substitute Fonts option from the last dialog box paths Paths in this manual are denoted using backslashes to separate drive names directories and files as in C dirlname dir2name filename LF This icon to the left of bold italicized text denotes a note which alerts you to important information Abbreviations acronyms metric prefixes mnemonics symbols and terms are listed in the Glossary Related Documentation The following documents contain information you might find helpful as you read this manual e LabVIEW User Manual e LabVIEW Tutorial e BridgeVIEW User Manual e G Programming Reference Manual Customer Communication National Instruments wants to receive your comments on our products and manuals We are interested in the applications you develop with our products and we want to help if you have problems with them To make it easy for you to contact us this manual contains comment and configuration forms for you to complete These forms are in Appendix B Customer Communication at the end of this manual National Instruments Corporation xiii Fuzzy Logic for G Toolkit Reference Manual I
82. le asserts positive medium with degree of truth 0 2 while another asserts positive medium with degree of truth 0 7 Because the two rules are related by the OR operator the output of the fuzzy inference for the linguistic term is the maximum value of 0 7 Because the truck example has only one rule asserting a nonzero degree of truth for both negative medium and negative small those values become the maximum values used Fuzzy Logic for G Toolkit Reference Manual 2 16 National Instruments Corporation Chapter 2 Overview of Fuzzy Logic The final result of the fuzzy inference for the linguistic variable steering angle is shown below negative large to a degree of 0 0 negative medium to a degree of 0 1 negative small to a degree of 0 8 Zero to a degree of 0 0 positive small to a degree of 0 0 positive medium to a degree of 0 0 positive large to a degree of 0 0 This type of fuzzy inference is called Max Min inference Because of certain optimization procedures of fuzzy systems sometimes it is necessary to associate individual weights to each rule Defuzzification Using Linguistic Variables The fuzzy inference process results in a linguistic value for the output variable In this case you can interpret the linguistic value 0 0 0 1 0 8 0 0 0 0 0 0 0 0 as still negative small or just slightly negative medium To use this linguistic value to adjust the steering wheel it must be translated into a real physical value This step
83. ler data with fuzzy controller 6 13 to 6 14 testing fuzzy controller 6 15 to 6 18 I O characteristic field dual input controller figure 3 26 to 3 27 with slightly overlapping input terms figure 3 28 to 3 29 National Instruments Corporation l 3 Index I O characteristics 3 6 to 3 29 changed rule base figure 3 22 to 3 23 different overlapping degrees of membership functions for output terms figure 3 16 to 3 18 entirely overlapping input terms figure 3 8 to 3 10 for given I O characteristic figure 3 24 to 3 25 Mean of Maximum entirely overlapping membership functions for input and output terms figure 3 20 to 3 21 nonoverlapping input terms figure 3 11 to 3 12 partially overlapping input terms figure 3 7 to 3 8 singletons as output terms entirely overlapping input terms figure 3 14 to 3 15 test facilities 5 32 to 5 38 undefined input term interval figure 3 12 to 3 13 wide and small membership functions for output terms figure 3 18 to 3 19 offline 3 2 online 3 2 structure 3 1 to 3 2 fuzzy inference step components 2 15 default settings in Rulebase Editor 5 25 definition of 2 12 design considerations 4 8 Max Min inference 2 17 using IF THEN rules vehicle controller example 2 15 to 2 17 Fuzzy Logic for G Toolkit Reference Manual Index fuzzy logic 2 2 to 2 22 definition of 1 2 2 1 linguistic variables and terms 2 5 modeling linguistic uncertainty with fuzzy s
84. ll Fuzzy 2 IF vehicle position x right center AND vehicle orientation B eft up Inference THEN steering angle negative medium negative negative right center A medium small 0 0 0 5 0 10 0 0 90 180 270 i 0 15 30 vehicle position x m vehicle orientation Bl steering angle 9 t Linguistic Level Fuzzification Defuzzification Technical Level vehicle orientation B 70 vehicle position x 5 1 m Tale h steering angle 9 3 Figure 2 16 Fuzzification Fuzzy Inference and Defuzzification for a Certain Maneuvering Situation Without modification the CoA defuzzification method limits the range of the output value compared to the possible range as shown in Figure 2 17 This problem can be solved easily by a fictitious extension of the left and right side border terms when computing the Fuzzy Logic for G Toolkit Reference Manual 2 20 National Instruments Corporation Chapter 2 Overview of Fuzzy Logic center of area With this extension the complete value range of the output variable can be realized see Figure 2 17 In this case the defuzzification method 1s called modified Center of Area Modified CoA Figure 2 17 Modified CoA for Complete Output Value Range The defuzzification methods CoM and CoA are commonly applied to closed loop control applications of fuzzy logic They usually lead to continuous ou
85. ll no term overlap all symmetrical terms left bottom lefttop lefttop tight top top tight battom tight battom 5 00 750 750 10 00 0 Eo 0 EE f Figure 5 16 Selecting the Full Term Overlap All Command Mational Instruments Corporation 5 17 Fuzzy Logic for G Toolkit Reference Manual Chapter 5 Using the Fuzzy Logic Controller Design VI Fuzz Sef EOF Figure 5 17 A Term Arrangement of Completely Overlapping Terms With the Fuzzy Set Editor functions described above you can edit all linguistic variables including the desired term arrangements for the FuzzyTruck example project Figure 5 18 shows the result of the complete editing session Fuzzy Logic for G Toolkit Reference Manual 5 18 National Instruments Corporation Chapter 5 Using the Fuzzy Logic Controller Design VI Fuzzy Sej Eei Figure 5 18 Results of the Complete Editing Session Example Mational Instruments Corporation 5 19 Fuzzy Logic for G Toolkit Reference Manual Chapter 5 Using the Fuzzy Logic Controller Design VI Rulebase Editor After you have entered all the linguistic information of the application example to your FuzzyTruck project you can begin editing The rule base represents expert knowledge about the vehicle maneuvering process If it 1s not active already load the example project FuzzyTruck by selecting File Open Open the Rulebase Editor by selecting Edit Rulebase Because you have not explicitly entere
86. long the continuum of 0 to 1 A linguistic term can be defined quantitatively by a type of fuzzy set known as amembership function The membership function specifically defines degrees of membership based on a property such as temperature or pressure With membership functions defined for controller or expert system inputs and outputs you can formulate a rule base of IF THEN type conditional rules Such a rule base and the corresponding membership functions are employed to analyze controller inputs and determine controller outputs by the process of fuzzy logic inference By defining such a fuzzy controller process control can be implemented quickly and easily Many such systems are difficult or impossible to model mathematically which is required for the design of most traditional control algorithms In addition many processes that might or might not be modeled mathematically are too complex or nonlinear to be controlled with traditional strategies However if a control strategy can be described qualitatively by an expert fuzzy logic can be used to define a controller that emulates the heuristic rule of thumb strategies of the expert Therefore fuzzy logic can be used to control a process that a human can control manually with National Instruments Corporation 2 1 Fuzzy Logic for G Toolkit Reference Manual Chapter 2 Overview of Fuzzy Logic expertise gained from experience The linguistic control rules that a human expert can describe i
87. loop control structures with fuzzy controllers 3 2 to 3 5 for correction of PID controller figure 3 5 for parameter adaptation of PID controller figure 3 5 simple closed loop structure figure 3 2 with Fuzzy PI controller figure 3 3 with underlying PID control loops figure 3 4 composition component of fuzzy inference step 2 15 CONSEQUENCE position I O Select button 5 8 5 10 to 5 11 consequence variables documenting 5 30 crisp real value 2 17 Cursor Navigation Block figure 5 36 customer communication xiii B 1 to B 2 D data range for linguistic variables changing 5 9 to 5 11 define menu Fuzzy Set Editor 5 13 5 15 defuzzification methods 2 17 to 2 22 Center of Area method 2 17 Center of Gravity method 2 17 Center of Maximum method 2 18 to 2 19 definition of 2 13 design considerations 4 8 to 4 9 comparison of different methods table 4 9 selecting in Rulebase Editor 5 24 vehicle controller example 2 17 to 2 22 Fuzzy Logic for G Toolkit Reference Manual Index Degree of Support values 5 20 design methodology See also Fuzzy Logic Controller Design VI defining linguistic variables 4 2 to 4 5 number of linguistic terms 4 2 to 4 3 standard membership functions 4 3 to 4 5 defining rule base 4 6 to 4 8 defuzzification method 4 8 to 4 9 comparison of different methods table 4 9 implementation 4 2 inference mechanism 4 8 knowledge acquisition 4 1 offline optimization 4 1 o
88. lt National Instruments Corporation Operate Project Windows Help Hidjebase Eofor Utils v IF THEN with ue RiuleNr_ vehicle pos vehicle one steerng angl DoS _ left left down left fet ae ce a a co fo at faa atone fee eft center left dowir o a00 7 00 J a00 a00 7 00 700 7 00 a00 7 00 E E 00 ka m Defuzzification Method Center of v Maximum cheetah jony PELETE 4 fo rule i activ Take last value v Inference Method Harx Hin Select form of Aulebase normal Rulebase total rules 35 used ules O default Dod 1 00 Figure 5 19 Project Specific Complete Default Rule Base 5 21 Fuzzy Logic for G Toolkit Reference Manual Chapter 5 Using the Fuzzy Logic Controller Design VI controller output also can be changed for situations with no active rules if the default setting does not fit the application needs File Edit Operate Project Windows Help gt Aujebase Zafer Utis w IF THEN wih Up Defuzzitication Method Rule Nr vehicle pos vehicle oriel steering anal DoS _ el 3 Maximum eft center erii jenn eft center i PATE er if no rule is activ center left Take last value v center Inference Method center HM ax Min v right up i Select form of Rulebase normal Aulebasze center total rules 35 i l used rules O i 1 00 center center center right center D a i T left oo default Dog eo Lia io
89. menu bar contains the four topics File Edit Test and Help In the File menu see Figure 5 1 there are several commands for handling the project data You can activate each command from the File menu by double clicking it Notice that certain commands are dimmed when unavailable As shown in Figure 5 1 the Project Manager front panel has a Project Description Field indicated by the keyword description into which you can enter important project information This description contains development ideas and other a priori information for the fuzzy controller to be developed In addition to this there is a Project Identification Field into which the developer can enter his name input box marked with the key word developer The other entries controller date and time are processed by the Fuzzy Logic Toolkit When the project is closed or saved for the first time the user is prompted to enter a project name which 1s indicated within the controller indication line of the Project Identification Field when the projectis opened later The default project name is untitled as shown in Figure 5 1 The File New command creates a new fuzzy logic project Selecting this command automatically calls the Fuzzy Set Editor The File Open command opens an existing fuzzy controller for further modifications and the File Close command closes the current project Fuzzy Logic for G Toolkit Reference Manual 5 2 National Instruments Corporation Chapt
90. n a different order than the output of the Load Fuzzy Controller VI in 1 through in 4 are the controller input values process parameters to be controlled The input number corresponds to the input number of the name 1 through name 4 inputs analog output is the controller output value process control value determined by the fuzzy logic controller output assessment indicates whether or not at least one rule was activated for the given set of input values During normal fuzzy processing when input values cause at least one rule to fire the string controlled value is returned In the event that no rules are fired all inputs have degree of membership 0 to all linguistic fuzzy sets either default value or last value is returned depending on the option National Instruments Corporation 7 3 Fuzzy Logic for G Toolkit Reference Manual Chapter 7 Fuzzy Logic VI Descriptions specified in the Fuzzy Logic Controller Design VI for the given fuzzy controller oy error array is a cluster that describes the error status after this VI executes error array displays the errors if any that occurred in this VI Test Fuzzy Control VI This VI was created as an example for testing a fuzzy controller application This VI can be used as a general purpose Fuzzy Controller VI with as many as four inputs and one output that can be connected to the desired process directly The fuzzy controller data file containing the fuzzy project data is requ
91. n an intuitive and general manner can be directly translated to a rule base for a fuzzy logic controller Types of Uncertainty Real world situations are often too uncertain or vague to describe precisely Completely describing a complex situation requires more detailed data than a human being can recognize process and understand When applying fuzzy logic concepts there are three different types of uncertainty stochastic informal and linguistic Stochastic uncertainty is the degree of uncertainty of the occurrence of a certain event The event itself is well defined and the stochastic uncertainty is not related to when the event occurs This type of uncertainty is used to describe only large numbered phenomena Informal uncertainty results from a lack of information and knowledge about a situation Linguistic uncertainty results from the imprecision of language Much greater too high and high fever describe subjective categories with meanings that depend on the context in which they are used Modeling Linguistic Uncertainty with Fuzzy Sets One of the basic concepts in fuzzy logic is the mathematical description of linguistic uncertainty using fuzzy sets People often are forced to make decisions based on imprecise subjective information Even when the information does not contain precise quantitative elements people can use fuzzy sets to manage complex situations successfully You do not need to have well defined rules to mak
92. negative Inference Rule 2 IF x zero THEN y zero Rule 3 IF x positive THEN y positive Modified CoA Figure 3 12 O Characteristics of a Fuzzy Controller Different Overlapping Degrees of Membership Functions for the Output Terms National Instruments Corporation 3 17 Fuzzy Logic for G Toolkit Reference Manual Chapter 3 Fuzzy Controllers Figure 3 12 shows that the overlapping degree of the membership functions for the conclusion terms has no significant influence on the controller characteristic if all the conclusion terms are equal in width Instead using output terms that are modeled by membership functions with equally distributed typical values but different scopes of influence significantly influences the controller characteristic The different terms have different areas and thus different weights with respect to the defuzzification process A wide output term has more influence on the inference result than a small neighboring output term This effect is demonstrated in Figure 3 13 Fuzzy Logic for G Toolkit Reference Manual 3 18 National Instruments Corporation Chapter 3 Fuzzy Controllers negative positive negative positive 1 0 N 0 5 y P Max Min Rule 1 IF x negative THEN y negative Inference Rule 2 IF x zero THEN y zero Rule 3 IF x positive THEN y positive Modified CoA
93. nhance or reduce the influence of a rule on the controller characteristic To build up a rule base define one rule for each combination of terms antecedences of the input variables used in the IF part of the rule Then select the most plausible term conclusion from the output variable to specify the THEN part of each rule Assuming a fuzzy controller to be built with m input variables with p terms each the total number N of possible rules is p number of terms for each input variable N p m number of input variables For example for three input variables with five terms each the total number of possible rules is 125 For five input variables with seven terms each the complete rule base totals 16 807 rules Notice that for systems with numerous controller inputs large rule bases can be avoided by using cascading fuzzy controller s outputs from fuzzy controllers serve as the inputs to fuzzy controllers of the next layer Fuzzy Logic for G Toolkit Reference Manual 4 6 National Instruments Corporation Chapter 4 Design Methodology In the case of a fuzzy controller with m input variables each with an individual number of terms p with 1 lt i lt m there are a total of N possible rules according to p number of terms for input variable i m number of input variables This great degree of freedom allows extraordinary design flexibility However for large and complex systems it is very difficult to
94. nline optimization 4 2 operators 4 8 documentation conventions used in manual xii xiii organization of manual xi xii related documentation xiii documenting fuzzy control projects 5 26 to 5 31 linguistic antecedence variable figure 5 28 to 5 29 linguistic consequence variable figure 5 30 printing complete documentation figure 5 26 printing results of characteristic curve figure 5 38 project description figure 5 27 rules figure 5 31 E edit menu Fuzzy Set Editor editing membership functions automatically 5 17 full term overlap all command 5 17 Edit menu Project Manager 5 2 Edit Range command Fuzzy Set Editor figure 5 9 Fuzzy Logic for G Toolkit Reference Manual l 2 Edit Range dialog box figure 5 9 electronic support services B 1 to B 2 e mail support B 2 expert description as basis for rule based systems 2 1 to 2 2 F fax and telephone support B 2 Fax on Demand support B 2 File menu Project Manager 5 2 to 5 3 FTP support B 1 Full Term Overlap All command Fuzzy Set Editor figure 5 17 fuzzification definition of 2 12 vehicle controller example 2 13 to 2 14 Fuzzy Controller VI description 7 3 to 7 4 implementing fuzzy controller in application block 6 9 loading fuzzy controller data 6 9 to 6 13 block diagram of pattern recognition application 6 10 File Dialog box figure 6 11 improved controller application block diagram figure 6 13 Load Fuzzy Controller VI
95. ntroduction Chapter l This chapter introduces the Fuzzy Logic for G Toolkit It contains system configuration information installation instructions and basic information that explains how to start using this toolkit This chapter refers you to other chapters for more information Your Fuzzy Logic for G Toolkit contains the following materials e The Fuzzy Logic Toolkit disks e Fuzzy Logic for G Toolkit Reference Manual Required System Configuration Installation You must have LabVIEW or Bridge VIEW to use the Fuzzy Logic Toolkit System requirements are the same as those for LabVIEW or Bridge VIEW You might need one or more DAQ hardware devices to implement process control of a physical system The following sections contain instructions for installing the Fuzzy Logic for G Toolkit on the Windows 95 Windows NT Windows 3 x Macintosh and Power Macintosh platforms Windows 95 and Windows NT Complete the following steps to install the toolkit 1 Launch Windows 95 2 Insert disk 1 of the Fuzzy Logic for G Toolkit into the 3 5 inch disk drive From the Start menu choose Run and enter A setup exe 4 Follow the instructions on your screen Once you have completed the on screen installation instructions you are ready to run the Fuzzy Logic Controller Design VI National Instruments Corporation 1 1 Fuzzy Logic for G Toolkit Reference Manual Chapter 1 Introduction Windows 3 x Complete the following steps t
96. o install the toolkit 1 Launch Windows 2 Insert disk of the Fuzzy Logic for G Toolkit into the 3 5 inch disk drive From the File Manager run SETUP EXE 4 Follow the instructions on your screen Once you have completed the on screen installation instructions you are ready to run the Fuzzy Logic Controller Design VI Macintosh and Power Macintosh Complete the following steps to install the toolkit 1 Insert disk 1 of the Fuzzy Logic for G Toolkit into the 3 5 inch disk drive and double click on the Fuzzy Logic Installer icon 2 Follow the instructions on your screen Once you have completed the on screen installation instructions you are ready to run the Fuzzy Logic Controller Design VI Introduction to Fuzzy Logic Fuzzy logic is a method of rule based decision making used for expert systems and process control that emulates the rule of thumb thought process used by human beings Fuzzy logic can be used to control a process that a person can control manually with expertise gained from experience The linguistic control rules that a human expert can describe in an intuitive and general manner can be directly translated to a rule base for a fuzzy logic controller Chapter 2 Overview of Fuzzy Logic contains a more detailed explanation of fuzzy logic Fuzzy Logic for G Toolkit Reference Manual 1 2 National Instruments Corporation Chapter 1 Introduction How Does the Fuzzy Logic Toolkit Work With the Fuzzy
97. o the rising intervals of the controller characteristic Within these parts two rules are active simultaneously The output value is determined by the different conclusion terms weighted by the degree of truth of the different active rules Notice that the rising edges of the controller characteristic are nonlinear because of the overlapping triangular conclusion terms Figure 3 8 shows the resulting controller characteristic for entirely overlapping antecedence terms The conclusion term distribution and the rule base are left unchanged for this case Fuzzy Logic for G Toolkit Reference Manual 3 8 National Instruments Corporation negative positive negative Chapter 3 Fuzzy Controllers positive Rule 1 IF x negative THEN y negative Rule 2 IF x zero THEN y zero Rule 3 IF x positive THEN y positive Rules 1 and Rules 2 and Max Min Inference Modified CoA 2 active K J D 3 active Figure 3 8 O Characteristic of a Fuzzy Controller Entirely Overlapping Input Terms National Instruments Corporation 3 9 Fuzzy Logic for G Toolkit Reference Manual Chapter 3 Fuzzy Controllers Because the antecedence terms completely overlap there are always two active rules The output value is determined again by the different conclusion terms weighted by the degree of truth for the different active rules leading to th
98. oad Fuzzy Controler V iss aes ecest a ietun ss a a 6 10 Block Diagram of the Pattern Recognition Application cceeee 6 10 L adine the Fuzzy Controller Data sesei aa a a 6 11 Running the Pattern Recognition Application cccccecccceceeeeeeeeeeeees 6 12 Improved Controller Application Block Diagram cccssseeseeeeeees 6 13 Application Block Diagram with Standalone Fuzzy Controller VI 6 14 Test Fuzzy Control Vi Front Pane lass sisvse iofesvecsodeecenbauansadicaisincaiaceshendadec 6 15 Test Fuzzy Control VI Front Panel with Controller Data Loaded 6 16 Test Fuzzy Control VI Front Panel with Incorrect Input Value FOF THUG Stead eee aetna di ean neem nana 6 17 Test Fuzzy Control VI Block Diagram Example ccccccccceeeeeeees 6 18 Comparison of Different Defuzzification Methods ccsssseeeeeeeees 4 9 National Instruments Corporation About This Manual The Fuzzy Logic for G Toolkit Reference Manual describes the features functions and operation of the Fuzzy Logic Toolkit You can use this toolkit to design and implement rule based fuzzy logic systems for process control or expert decision making To use this manual effectively you should be familiar with basic control theory Knowledge of rule based systems and fuzzy logic is helpful but not absolutely necessary Organization of This Manual The Fuzzy Logic for G Toolkit Reference Manual is organized as follo
99. oject name Notice that fuzzy controller project files always have the extension fc Load an existing project that has not yet been loaded using File Open as shown in Figure 5 10 If Fuzzy Logic Controller Design O x File Edit Opera jeg emer Ei Ss BwOTRUCK FC A lose E Frint EREN E Save as EWDTRUCK FC Cancel Custom Pattern JF fe Tee date Saturday February 08 1997 time 11 37 PM description Figure 5 10 Open Command and File Dialog Box Immediately after a project is loaded by the Project Manager call the Fuzzy Set Editor by selecting Edit Set Editor Now the input and output variables have the correct names and data ranges Fuzzy Logic for G Toolkit Reference Manual 5 12 National Instruments Corporation Chapter 5 Using the Fuzzy Logic Controller Design VI The input variable vehicle position still is set up by the three entirely overlapping default terms NE1 ZE1 and POI as shown in Figure 5 11 Because vehicle position must be composed of the five linguistic terms shown in Figure 2 6 Linguistic Variable Vehicle Position x and Its Linguistic Terms you must add two new linguistic terms See the Rule Based Systems section in Chapter 2 Overview of Fuzzy Logic All linguistic terms must have the same names and shapes so that the complete term arrangement corresponds to that in Figure 2 6 To add a new linguistic term between the terms NEI and ZE1 select define add term after as sh
100. om date of shipment as evidenced by receipts or other documentation National Instruments will at its option repair or replace software media that do not execute programming instructions if National Instruments receives notice of such defects during the warranty period National Instruments does not warrant that the operation of the software shall be uninterrupted or error free A Return Material Authorization RMA number must be obtained from the factory and clearly marked on the outside of the package before any equipment will be accepted for warranty work National Instruments will pay the shipping costs of returning to the owner parts which are covered by warranty National Instruments believes that the information in this manual is accurate The document has been carefully reviewed for technical accuracy In the event that technical or typographical errors exist National Instruments reserves the right to make changes to subsequent editions of this document without prior notice to holders of this edition The reader should consult National Instruments if errors are suspected Inno event shall National Instruments be liable for any damages arising out of or related to this document or the information contained in it EXCEPT AS SPECIFIED HEREIN NATIONAL INSTRUMENTS MAKES NO WARRANTIES EXPRESS OR IMPLIED AND SPECIFICALLY DISCLAIMS ANY WARRANTY OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE CUSTOMER S RIGHT TO RECOVER DAMAGES CAUSED BY F
101. om the process or simulation data obtained from a mathematical process model Transfer characteristics analysis and time response analysis can be performed to observe the system behavior and optimize the controller Lab VIEW and Bridge VIEW support both types of analysis In this step Neuro Fuzzy techniques as well as Genetic or Evolutionary Algorithms can also be used for system optimization National Instruments Corporation 4 1 Fuzzy Logic for G Toolkit Reference Manual Chapter 4 Design Methodology Online Optimization Using the data acquisition capabilities of Lab VIEW and BridgeVIEW you can run the fuzzy controller in conjunction with a process Then you can use online optimization techniques to make modifications to the running system Implementation Although you can use the fuzzy controller directly with LabVIEW and Bridge VIEW real time performance constraints might make it necessary to download the fuzzy controller to a fast microcontroller board Definition of Linguistic Variables The sensors and actuators of the system to be automated determine the input and output quantities of a fuzzy controller Each additional quantity measured provides more information about the current process state Additional sensors can improve accuracy but increase cost Fuzzy systems do not require high precision measurement equipment In fact obtaining many values using inexpensive lower precision sensors is better than acquiring less
102. on 5 8 5 10 to 5 11 changing data range of input variable 5 9 input variable figure 5 10 output variable figure 5 11 default settings 5 5 figure 5 4 Edit Range command figure 5 9 Edit Range dialog box figure 5 9 editing membership functions automatically 5 17 Full Term Overlap All command figure 5 17 invoking 5 4 loading existing project 5 12 modifying whole term arrangement 5 17 to 5 18 plausibility checking and point slider movement figure 5 6 plausibility restrictions 5 5 to 5 6 Point Slider Field 5 5 renaming terms 5 15 to 5 16 renaming variables input variables 5 7 to 5 8 output variables 5 8 National Instruments Corporation results of complete editing session figure 5 19 saving projects 5 12 Term Display 5 5 Term Legend 5 5 Term Selector 5 5 Variable Selector 5 5 H help for Fuzzy Logic Controller Design VI 5 1 Help menu Project Manager 5 3 inference step See fuzzy inference step informal uncertainty 2 2 installation 1 1 to 1 2 Macintosh and Power Macintosh 1 2 Windows 3 x 1 2 Windows 95 and Windows NT 1 1 I O characteristics of fuzzy controllers See fuzzy controllers VO Select button Fuzzy Set Editor ANTECEDENCE CONSEQUENCE position 5 8 5 10 to 5 11 illustration 5 4 K knowledge base for fuzzy controller 4 1 L linguistic control strategy implementing for vehicle controller example 2 7 to 2 11 linguistic terms adding new terms 5 13
103. on method identical to the CoM method Fuzzy Logic for G Toolkit Reference Manual 3 14 National Instruments Corporation Chapter 3 Fuzzy Controllers negative positive negative positive Rule 1 IF x negative THEN y negative Inference Rule 2 IF x zero THEN y zero Rule 3 IF x positive THEN y positive Modified CoA Figure 3 11 1 0 Characteristic of a Fuzzy Controller Singletons as Output Terms Entirely Overlapping Input Terms National Instruments Corporation 3 15 Fuzzy Logic for G Toolkit Reference Manual Chapter 3 Fuzzy Controllers Varying the overlapping degree of the membership functions for the conclusion terms by leaving the input terms entirely overlapped does not change the controller characteristic very much especially if all the conclusion terms are equal in width as shown in Figure 3 12 Then only the typical values of the conclusion terms are important Therefore in most closed loop control applications the output terms can sufficiently be modeled by singleton membership functions rather than triangular or other membership function types Fuzzy Logic for G Toolkit Reference Manual 3 16 National Instruments Corporation Chapter 3 Fuzzy Controllers negative positive negative zero positive 1 0 0 5 0 0 5 y 0 1 Max Min Rule 1 IF x negative THEN y
104. oolkit Reference Manual Chapter 3 Fuzzy Controllers The most important influence on the controller characteristic is applied by the rule base itself The rule base determines the principal functionality of the controller Figure 3 15 illustrates how the controller characteristic changes if the rule base of the previous example is changed to the following Rule 1 IF x negative THEN y negative Rule 2 IF x zero THEN y positive Rule 3 IF x positive THEN y negative Fuzzy Logic for G Toolkit Reference Manual 3 22 National Instruments Corporation Chapter 3 Fuzzy Controllers negative positive negative positive 1 Max Min Rule 1 IF x negative THEN y negative Inference Rule 2 IF x zero THEN y positive Rule 3 IF x positive THEN y negative Modified CoA Figure 3 15 1 0 Characteristic of a Fuzzy Controller with a Changed Rule Base National Instruments Corporation 3 23 Fuzzy Logic for G Toolkit Reference Manual Chapter 3 Fuzzy Controllers The examples show that you can use a fuzzy controller to perform arbitrary I O operations The number of linguistic input and output terms depends on the desired characteristic type and the precision to which the given I O characteristic is approximated Consider for example the stepped linear characteristic curve shown in Figure 3 16 There are four linear sections that can be desc
105. own in Figure 5 11 File Edit Operate Project Windows Help Edit P A Project Windows Help lee vehicle position lt ling variables specity v ANTECEDENCE define lt ling terms add term after add term before remove tern add variable remove variable right top right battam 0 00 5 00 Figure 5 11 Selecting the Add Term After Command The new linguistic term is located below the active term as shown in Figure 5 12 The new term identifier is built from the term identifier of the referred term with a symbol added to the right side National Instruments Corporation 5 13 Fuzzy Logic for G Toolkit Reference Manual Chapter 5 Using the Fuzzy Logic Controller Design VI NEI is the term identifier of the active term and the new term is NE1 Notice that the new term becomes the active term and can be modified immediately File Edit Tei Project Windows Help left bottom left top right top right bottom 0 00 2 50 2 50 5 00 OO Figure 5 12 New Term Added to the Vehicle Position Variable Note Adding a new term to an input variable especially of an existing project causes significant changes to the rule base The rule base is automatically extended by additional rules each with a conclusion predefined as none Adding a new consequence term only extends the possibility to select conclusion terms within the Rulebase Editor Remember that each input and output variable can have a maximum of nine linguistic terms check
106. ple ccccccceeeeeeeeeeees 2 6 Figure 2 5 Condition Vehicle Position x and Orientation B Acon SLCCIING ANGIE Mrana Sri A A AR 2 7 Figure 2 6 Linguistic Variable Vehicle Position x and Its Linguistic Terms 2 9 Figure 2 7 Linguistic Variable Vehicle Orientation B and Its Linguistic Terms 2 9 Figure 2 8 Linguistic Variable Steering Angle and Its Linguistic Terms 2 10 Figure 2 9 Complete Linguistic Rule Base siansecssectaeceatsieeeduatvandtedgetiicianaedt 2 11 Figure 2 10 Complete Structure of a Fuzzy Controller 0 cccccccccccecceeeeceeeeeeeeeeees 2 12 Figure 2 11 Fuzzification of the Vehicle Position x 5 1 M1 ceeeeeeeseseteeeeeeeeeees 2 13 Figure 2 12 Fuzzification of the Vehicle Orientation 70 cceeeeeseesseeeeeeeeeees 2 14 Figure 2 13 Default Set of Fuzzy Logic Operato s 0 0 c sseeseeeeeseeeeeeeeeeneeeees 2 15 Figure 2 14 Defuzzification According to Center of Area COA eeeeeeeeessccereeeeees 2 18 Figure 2 15 Defuzzification According to Center of Maximum CoM 6 2 19 Figure 2 16 Fuzzification Fuzzy Inference and Defuzzification for a Certain Maneuvering Situation cccccccccccccccccceeeeeeeeeeeeeeeeeaeeneas 2 20 Figure 2 17 Modified CoA for Complete Output Value Range ee eecceeeeeees 2 21 National Instruments Corporation vij Fuzzy Logic for G Toolkit Reference Manual Contents Figure 3 1 Fi
107. r input signals from a process and one output signal used as a control value Although the Fuzzy Controller VI has many different inputs and outputs at this time you only need those inputs and outputs shown in bold in Figure 6 10 Controller data hame 1 int na e analog output name 3 Output assessment ing emoranay name 4 img Figure 6 10 Fuzzy Controller VI The input signals TH TS and TU TD TS can be connected to the Fuzzy Controller VI inputs inputi and input2 The output signal of the Fuzzy Controller VI called analog output also can be connected to the input side of the NumtoString VI There are a few inputs of the Fuzzy Controller VI being left unconnected at this time Loading Fuzzy Controller Data EA The Fuzzy Controller VI can be compared to a microprocessor that does not have an executable program loaded To obtain the specific data for the fuzzy controller you must use the Load Fuzzy Controller VI to load the required data into the Fuzzy Controller VI This VI also is included in the Fuzzy Logic Toolkit package Load Fuzzy Controller VI Because the controller data must be loaded into the Fuzzy Controller VI when the pattern recognition application is started place it outside the While Loop as shown in Figure 6 12 Although the Load Fuzzy Mational Instruments Corporation 6 9 Fuzzy Logic for G Toolkit Reference Manual Chapter 6 Implementing a Fuzzy Controller Controller VI has many outputs at thi
108. racteristics 5 32 to 5 38 Active Rules Display figure 5 37 calculating I O Characteristic 5 35 to 5 36 activating calculation figure 5 35 double calculation of controller characteristic note 5 35 printing results figure 5 38 result of calculation figure 5 36 VO Characteristics project specific front panel figure 5 33 selecting I O Characteristics command figure 5 32 setting up test conditions figure 5 34 Test Fuzzy Control VI 6 15 to 6 18 block diagram example figure 6 18 controller data loaded figure 6 16 description 7 4 front panel figure 6 15 incorrect input value for input 1 figure 6 17 Test menu Project Manager 5 2 Fuzzy Logic for G Toolkit Reference Manual l 8 U uncertainty 2 2 See also linguistic uncertainty V Variable Selector Fuzzy Set Editor 5 4 5 5 variables See linguistic variables W weight factor for rules 5 20 to 5 21 Windows 3 x installation 1 2 Windows 95 and Windows NT installation 1 1 Z Zadeh Lotfi 2 1 National Instruments Corporation
109. re linguistic terms that have a small influence interval rather than trying to cover the border regions that have only a few linguistic terms that have a large influence interval A term distribution like this makes the controller more sensitive within the stable state region of the system Disturbance effects on input values such as noise must be taken into account Do not set up membership functions with an interval of influence that is smaller than the amplitude of the noise signal National Instruments Corporation 4 5 Fuzzy Logic for G Toolkit Reference Manual Chapter 4 Design Methodology Definition of a Fuzzy Logic Rule Base The fuzzy logic rule base is the main part of a fuzzy system and contains all the engineering knowledge necessary to control a system The rule base supplies all the actions to be taken by the fuzzy controller in certain situations In a sense the rule base represents the controller s intelligence Changes to a single rule have only a local influence on the controller characteristic Thus you can selectively change the behavior of the fuzzy controller for a certain input situation by modifying a particular rule Because the modification of a rule usually is carried out in discrete steps by changing its consequence term it has a much greater influence on the controller characteristic than modifications to the membership functions To avoid this implement weight factors Degrees of Support for the rules to e
110. re trademarks of National Instruments Corporation Product and company names listed are trademarks or trade names of their respective companies WARNING REGARDING MEDICAL AND CLINICAL USE OF NATIONAL INSTRUMENTS PRODUCTS National Instruments products are not designed with components and testing intended to ensure a level of reliability suitable for use in treatment and diagnosis of humans Applications of National Instruments products invol ving medical or clinical treatment can create a potential for accidental injury caused by product failure or by errors on the part of the user or application designer Any use or application of National Instruments products for or involving medical or clinical treatment must be performed by properly trained and qualified medical personnel and all traditional medical safeguards equipment and procedures that are appropriate in the particular situation to prevent serious injury or death should always continue to be used when National Instruments products are being used National Instruments products are NOT intended to be a substitute for any form of established process procedure or equipment used to monitor or safeguard human health and safety in medical or clinical treatment Contents About This Manual Organization of This Manali cscccicestesaib oine a e a E xi Conventions Used m Thi Mi anal saveed ons cearcssh sds o a E E EA xii Related Documentations kiea a aa a e a a xiii CeO C E a a N a a xiii
111. ribed by the five circled base points xi yi To reproduce the given characteristic by a single input fuzzy controller use five linguistic terms each for the input and output quantities naming them x1 x2 x5 and yl y2 y5 respectively To obtain the stepped linear sections between the base points exactly two active rules always must be available This can be implemented by overlapping triangular membership functions for the input variable entirely each with a typical value that corresponds to a certain base point component Xi To obtain characteristic sections that are exactly linear the output variable must be modeled by singleton membership functions each with a typical value that corresponds to a certain base point component yi The rule base is then a kind of linguistic enumeration of the five base points Fuzzy Logic for G Toolkit Reference Manual 3 24 National Instruments Corporation IF x x1 IF x x2 IF x x3 IF x x4 IF x x5 THEN y y1 THEN y y2 THEN y y3 THEN y y4 THEN y y5 Chapter 3 Fuzzy Controllers Max Min Inference Modified National Instruments Corporation Figure 3 16 Fuzzy Controller for a Given 1 0 Characteristic 3 25 Fuzzy Logic for G Toolkit Reference Manual Chapter 3 Fuzzy Controllers In principle these conclusions about I O characteristics are valid for fuzzy controller
112. s applied to the derivative of the error signal The controller output is a linear combination of the three resulting values A linguistic definition of a specific control action of the form IF condition AND condition THEN action For example IF vehicle position is right center AND vehicle orientation is left up THEN steering angle is negative medium A complete set of rules defined for control of a given system Used during fuzzy inference to determine the linguistic controller output A normalized membership function with an infinitely small width A singleton is used to model a crisp value with a fuzzy set G 3 Fuzzy Logic for G Toolkit Reference Manual A Active Rules Display figure 5 37 Add Term After command Fuzzy Set Editor figure 5 13 5 15 aggregation component of fuzzy inference step 2 15 AND operator 2 15 ANTECEDENCE position I O Select button 5 8 5 10 to 5 11 antecedence variables documenting 5 28 to 5 29 B bibliography A 1 Boolean set theory fuzzy set theory vs 2 1 bulletin board support B 1 C Center of Area method calculating best compromise 2 17 I O characteristics of fuzzy controller 3 20 modified 2 20 to 2 22 vehicle controller example 2 17 to 2 18 Center of Gravity method 2 17 Center of Maximum method applied to closed loop control applications 2 21 steps 2 18 vehicle controller example 2 18 to 2 19 National Instruments Corporation closed
113. s supervised by human operators For automatic operation of such multivariable control problems you must build a model based controller But for most applications either the process is too complex to be modeled adequately or the mathematical modeling task requires too much time The benefit of fuzzy controllers is that the experience and the knowledge of the operators in supervising the process often can be used to form a linguistic rule base with much less effort Fuzzy Controller Reference Process Magnitude Signals Fuzzification Rule Base AND THEN AND THEN AND THEN Fuzzy Inference Defuzzification Measured Values Figure 3 4 Fuzzy Controller with Underlying PID Control Loops The next example structure shows how you cause a fuzzy controller to tune the parameters of a conventional PID controller automatically For this the fuzzy controller constantly interprets the process reaction and calculates the optimal P I and D gains You can apply this control structure to processes that change their characteristics over time This structure is shown in Figure 3 5 Fuzzy Logic for G Toolkit Reference Manual 3 4 National Instruments Corporation Chapter 3 Fuzzy Controllers Set Point Fuzzy Controller Process Values Command Variable Rule Base IF AND THEN IF AND THEN Fuzzification Fuzzy Inference Figure 3 5 Fuzzy Controller for Parameter Adaptation of
114. s time you only need those outputs shown in bold in Figure 6 11 5 Controller out p cancel error out anteced data range minimums anteced data range masimums Open Dialog Input name 1 min 1 Input name 2 min z input name 3 min 3 input name 4 min 4 Figure 6 11 Load Fuzzy Controller VI The result of all the necessary wiring work is shown in Figure 6 12 Figure 6 12 Block Diagram of the Pattern Recognition Application The application example is complete You can start the pattern recognition application using your fuzzy controller by switching back to the front panel and running the VI Fuzzy Logic for G Toolkit Reference Manual 6 10 National Instruments Corporation Chapter 6 Implementing a Fuzzy Controller Immediately after the application begins a file dialog box prompts you to enter a file containing the appropriate controller data see Figure 6 13 Open the project file FCPR fc which represents the fuzzy controller you designed previously gt File Dialog EAMPLES D z E5 0 Bwdtruck fe Oper i FEPR FC Cancel Custom Pattern Jr fe Figure 6 13 Loading the Fuzzy Controller Data National Instruments Corporation 6 11 Fuzzy Logic for G Toolkit Reference Manual Chapter 6 Implementing a Fuzzy Controller When the Fuzzy Controller data is loaded you can try different settings for the pattern recognition process by dragging the sliders You can see how the pattern r
115. s with two or more inputs as well However an additional nonlinear effect is raised by the AND operation combining the different input conditions also called antecedence terms Usually the AND operation is modeled by the minimum operator see Figure 3 16 that always prefers as a result the antecedence term of the rule with the lowest degree of truth Figure 3 17 shows the I O characteristic field for a dual input fuzzy controller Fuzzy Logic for G Toolkit Reference Manual 3 26 National Instruments Corporation Fuzzy Controllers Chapter 3 D z ha ic O a negative positive negative positive negative negative positive 10 xp 1 0 0 8 0 6 0 4 0 2 0 0 1 0 Modified CoA Max Min Inference i TI Ez I ia v I O Characteristic Field of a Dual Input Fuzzy Controller Figure 3 17 Fuzzy Logic for G Toolkit Reference Manual 3 27 National Instruments Corporation Chapter 3 Fuzzy Controllers Because the minimum operator used in the aggregation step is nonlinear the characteristic field is not exactly linear despite the entirely overlapping membership functions for both input variables Nonoverlapping membership functions yield a stepped characteristic field with constant planes as shown in Figure 3 18 Fuzzy Logic for G Toolkit Reference Manual 3 28 National Instruments Corporation
116. se to adjust the pattern recognition application example The front panel is shown in Figure 6 9 10 90 sMo S5 Input signal def a seo ST E gt 10 20 10 ED 70 g0 T i signal max signal mir i lr 16 00 i l l l l i 50 60 70 80 90 100 rg 00 10 20 30 40 50 10 00 81 00 1 00 THATS Bao Teme TU TO TS a Je Triangle left 0 309 STOF Figure 6 9 Front Panel of the Pattern Recognition Application You can use the input signal def sliders to simulate the signal from the reflex light barrier of the real system The signal conditions also can be modified by the signal max and signal min sliders to test how the fuzzy controller works despite having a signal with a very small amplitude The scale xss slider serves to model a kind of gain factor towards the signal that is performed by the data pre processing step It also can be used to study how different signal conditions can affect the result of the pattern recognition process Fuzzy Logic for G Toolkit Reference Manual 6 8 National Instruments Corporation Chapter 6 Implementing a Fuzzy Controller Fuzzy Controller Implementation Fees Now incorporate the fuzzy controller into the application block diagram You do not need to program the fuzzy controller just use the pre defined Fuzzy Controller VI available with the Fuzzy Logic Toolkit package shown in Figure 6 10 Fuzzy Controller VI The pre defined Fuzzy Controller VI can be connected with as many as fou
117. sitive positive positive zero small medium large Validity of Rule 2 0 0 30 0 25 0 20 0 15 0 sof 5 0 0 0 5 0 10 0 15 0 20 0 25 0 30 0 steering angle gt defuzzified result 9 3 Figure 2 14 Defuzzification According to Center of Area CoA This defuzzification method requires much computation because of the numerical integration necessary to calculate the center of area The second defuzzification method is called Center of Maximum CoM In the first step of this method you determine the typical value of each term in the linguistic output variable In the second step you calculate the best compromise with a weighted average of typical values of the terms The most common approach to determine the typical value of each term is to find the maximum of the respective membership function In the case of trapezoidal membership functions the median of the maximizing interval is chosen Fuzzy Logic for G Toolkit Reference Manual 2 18 National Instruments Corporation Chapter 2 Overview of Fuzzy Logic Each typical value is weighted by the degree to which the action term conclusion is true Then the crisp output value is calculated by a weighted average as shown in Figure 2 15 negative negative negative positive positive positive large medium small smal
118. sseesseesseeeeseeeeseenees 2 17 National Instruments Corporation V Fuzzy Logic for G Toolkit Reference Manual Contents Chapter 3 Fuzzy Controllers Sucre ota UZY C OMOU El Sis senators face acltechaueeobiecha tad A E 3 1 Closed Loop Control Structures with Fuzzy Controllers cccccccccccccssssececeseeeesseseseens 3 2 VO Characteristics of Fuzzy Controners vos cists shaveateiaeiancseanienascciusaiaidoraonbcapiiwatssausbadens 3 6 Chapter 4 Design Methodology Design and Implementation Process Overview ccccccsccccesecessseseesesseseesseeeeseeseseeeeeees 4 IMO WIC Se ACQUIS TOM aia a 4 COPECO pit 7 all OM 1554554 cteee ditaatetastebssys S 4 Online putin Za OM sya sisvte Gece Sawant EAR 4 2 MM PleMCNCATIOM esse a E a 4 2 Detiniuoncof Linsuistie Vaniah esenee E cases E 4 2 Number of Linguistic Terms eeeeeeenneseenessssssssssssseesssseesseeeesseerrecreerereresrreeses 4 2 Standard Membership Functions eseeseesseeereeerrreerreereeeesreessseesessssssssssssssss 4 3 Definition of a Fuzzy Logic Rule Base iscestccastsiescidessvactetaceautednaiennnctenncenassedasiatasdssesiansss 4 6 Operators Inference Mechanism and Defuzzification Method cccccccsseesssseeeeeees 4 8 Chapter 5 Using the Fuzzy Logic Controller Design VI Oo AIA IT cen terreno IEE Teeny ET er reer E reno en nee amt tert a armen Serre 5 1 Project Nanai unien nini tt reeled Rance cata eat adels 5 2 FUZZY Ser Ed Oi sea Eaa S
119. ssociated to the statement the patient suffers from high fever Thus using fuzzy sets defined by membership functions within logical expressions leads to the notion Fuzzy Logic As shown in Figure 2 2 the degree of membership is represented by a continuous function W T which often is called a fuzzy set How to define membership functions for certain applications is discussed in the Definition of Linguistic Variables section of Chapter 4 Design Methodology Fuzzy Logic for G Toolkit Reference Manual 2 4 National Instruments Corporation Chapter 2 Overview of Fuzzy Logic Notice that a body temperature of 102 F is considered only slightly different from a body temperature of 101 5 F and not considered a threshold Linguistic Variables and Terms The primary building block of fuzzy logic systems is the linguistic variable A linguistic variable is used to combine multiple subjective categories describing the same context In the previous example there is high fever and raised temperature as well as normal and low temperature in order to specify the uncertain and subjective category body temperature These terms are called linguistic terms and represent the possible values of a linguistic variable Each linguistic term 1s represented by a fuzzy set defined by a membership function normal raised high fever it vie ay 95 0 968 986 100 4 102 2 1040 105 8 107 6 109 4 Linguistic Variable
120. t Range Command Open the Edit Range dialog box to enter the range boundaries as shown in Figure 5 7 Define variable range vehiclepostion ooo 4 10 000 ox Figure 5 7 Edit Range Dialog Box National Instruments Corporation 5 9 Fuzzy Logic for G Toolkit Reference Manual Chapter 5 Using the Fuzzy Logic Controller Design VI Close the dialog box by clicking the OK button Notice that all linguistic terms of the linguistic variable are adapted to the new data range proportionally as shown in Figure 5 8 File Edit Operate Project Windows Help vehicle positian right top 0 00 Figure 5 8 Current Input Variable Data Range Changed For the application example repeat the steps discussed above to set up the correct data range for the second input variable vehicle orientation and for the output variable steering angle which ranges from 30 0 to 30 0 degree Figure 5 9 shows the Fuzzy Set Editor front panel after setting the correct data range for the output variable Notice that the I O Select button is in the CONSEQUENCE position Fuzzy Logic for G Toolkit Reference Manual 5 10 National Instruments Corporation Chapter 5 Using the Fuzzy Logic Controller Design VI File Edit Operate Project Windows Help FS Edit gt nl steenng angle Dar l l l l l l l l l l l l 30 0 25 0 20 0 15 0 10 0 50 00 50 100 150 20 0 25 0 30 0 right top right bottom right battomn 0 00 a Figure 5 9 Outpu
121. t Variable Data Range Changed For the next step you must have access to the input variable vehicle position Do this by clicking the I O Select button until it is in the ANTECEDENCE position and selecting the desired input variable from the Variable Selector Any modifications made during the Fuzzy Set Editor session might have a significant influence on the rule base It is always a good idea to open the Rulebase Editor immediately after you close the Fuzzy Set Editor Because you started your Fuzzy Set Editor session with a new project the Rulebase Editor is called automatically by the Fuzzy Logic Toolkit to create a rule base Because you still have to do additional work on the knowledge base you should add and set up all linguistic terms according to the application example You do not need to work with the Rulebase Editor at this point in the project so exit the Rulebase Editor by clicking the QUIT button immediately after it opens National Instruments Corporation 5 11 Fuzzy Logic for G Toolkit Reference Manual Chapter 5 Using the Fuzzy Logic Controller Design VI When working on an existing project the Rulebase Editor 1s not called automatically when the Fuzzy Set Editor is closed Regardless closing the Fuzzy Set Editor as well as closing the Rulebase Editor activates the Project Manager You can save your project with the File Save or File Save as command When prompted to enter a file name type in FuzzyTruck as the pr
122. t project description and the name of the developer into the Project Identification Field Invoke the Fuzzy Set Editor by choosing File New If there is an existing project already loaded switch to the Fuzzy Set Editor by selecting Edit Set Editor The Fuzzy Set Editor front panel is shown in Figure 5 2 Editing I O Select Term Function Button Legend Selectors File Edit Operate Project Windows Help Variable Selector specif Term Selector SeNig edit Term Display with Point Slider Field fori keinu Se right top Figure 5 2 Default Fuzzy Controller Settings Fuzzy Logic for G Toolkit Reference Manual 5 4 National Instruments Corporation Chapter 5 Using the Fuzzy Logic Controller Design VI A new project always is started with the following default settings e Two normalized linguistic input variables I O Select button switched to ANTECEDENCE assigned by the default description identifiers input and input2 Each input variable ranges from 1 0 to 1 0 e ach linguistic input variable is composed of three entirely overlapping linguistic terms For inputl the linguistic terms NE1 negative ZE1 zero and PO1 positive and for input2 the linguistic terms NE2 negative ZE2 zero and PO2 positive are predefined e One normalized linguistic output variable I O Select button switched to CONSEQUENCE which is assigned to by the default identifier output and composed of the three entirely overl
123. ter left o total rules 35 eft center used rules 0 eft center default Dos 1 00 eft center eft center eft center left down center Figure 5 21 Selecting Negative Small as the Consequence Term of the First Rule The complete rule base can be entered this way The IF part of the Rulebase Editor panel automatically accommodates the number of input variables used in the fuzzy controller National Instruments Corporation 5 23 Fuzzy Logic for G Toolkit Reference Manual Chapter 5 Fuzzy Logic for G Toolkit Reference Manual Using the Fuzzy Logic Controller Design VI Operate Project Windows Help i gt Aidjebase Z0er Utils v IF Negkled v center left ooo Neghled v NegSmall v center ero v PosSmall PosMed 7 o ura 7 of a Oo Oo Of oi ae T i at 2 2 2 2 2 2 o a a a T T i cn io a iD T heis w Nesta w i Neghed v Nestia w Tag Ee o ofa a a mej D io Ta a D iT T D a iD a io Neg5 mall v right down NegSmall v right NegBig v FosMed w cL E io a iD T D F ightup Negked v fight Next select an appropriate defuzzification method Because there must be a continuous output signal for the steering angle control you must select a defuzzification method that calculates the best compromise Following the guidelines in Table 4 1 Comparison of Different Defuzzification Methods
124. the Fuzzy Logic Controller Design are arranged in four layers of abstraction e Project Manager Maintains a fuzzy logic project e Fuzzy Set Editor Defines and modifies linguistic variables including their linguistic terms e Rule Base Editor Defines and modifies the rule base of a fuzzy system to be designed e Testing and project maintenance utilities Online Help is available by clicking the Help button on the active panel The following restrictions are valid e The maximum number of linguistic variables controller inputs is 4 e The maximum number of linguistic terms for each linguistic variable is 9 e The types of membership functions are normalized triangular and trapezoidal membership functions Z A II and S Type and singletons National Instruments Corporation 5 1 Fuzzy Logic for G Toolkit Reference Manual Chapter 5 Using the Fuzzy Logic Controller Design VI Project Manager Start the Project Manager by running the Fuzzy Logic Controller Design VI Its active front panel is shown in Figure 5 1 This VI differs from most VIs in that it is a standalone application with a graphical user interface for designing and editing a fuzzy controller The Fuzzy Logic Controller Design VI is set up to run immediately when opened Although this VI has no inputs or outputs you can use it as a subVI by placing the icon on your application diagram to allow your user to edit the fuzzy controller programmatically The
125. tion of terms used in this manual including abbreviations acronyms metric prefixes mnemonics and symbols e The Index contains an alphabetical list of key terms and topics in this manual including the page where you can find each one Conventions Used in This Manual The following conventions are used in this manual bold italic bold italic monospace lt gt lt Control gt Bold text denotes a parameter menu name palette name menu item return value function panel item icon name or dialog box button or option Italic text denotes variables emphasis a cross reference or an introduction to a key concept Bold italic text denotes an activity objective note caution or warning Text in this font denotes text or characters that you should literally enter from the keyboard Sections of code programming examples and syntax examples also appear in this font This font also is used for the proper names of disk drives paths directories programs subprograms subroutines device names filenames and extensions and for statements and comments taken from program code Angle brackets enclose the name of a key on the keyboard for example lt PageDown gt A hyphen between two or more key names enclosed in angle brackets denotes that you should simultaneously press the named keys for example lt Control Alt Delete gt for Windows Key names are capitalized Fuzzy Logic for G Toolkit Reference Manua
126. tput signals because the best compromise never can jump to a different value with a small change to the inputs For pattern recognition applications the defuzzification method Mean of Maximum MoM must be applied This defuzzification National Instruments Corporation 2 21 Fuzzy Logic for G Toolkit Reference Manual Chapter 2 Overview of Fuzzy Logic method calculates the most plausible result Rather than averaging the different inference results MoM selects the typical value of the output term that is most valid In the example situation the output term negative small is the most valid term see Figures 2 14 and 2 15 Its typical value is negative small 5 which would be the immediate defuzzification result If you want to identify objects by classification of a sensor signal for example you are interested in the most plausible result In decision support systems the choice of the defuzzification method depends on the context of the decision to be calculated by the fuzzy system For quantitative decisions like project prioritization CoM should be applied For qualitative decisions such as an evaluation of credit worthiness MoM is the correct method Fuzzy Logic for G Toolkit Reference Manual 2 22 National Instruments Corporation Chapter Fuzzy Controllers This chapter describes various implementations and Input Output I O characteristics of fuzzy controllers Structure of a Fuzzy Controller A fuz
127. ts A finite single value such as a measured physical quantity for example x 5 3 m G 1 Fuzzy Logic for G Toolkit Reference Manual Glossary D defuzzification degree of membership E expert F fuzzification fuzzy inference fuzzy set fuzzy set theory L linguistic term linguistic variable Fuzzy Logic for G Toolkit Reference Manual G 2 The process of converting the linguistic output of the rulebase evaluation to a crisp controller output value A value that represents the degree of partial membership of an element to a fuzzy set This value may range from 0 to 1 inclusive A human operator of a system or process that has acquired knowledge related to controlling the process through experience The process of evaluating crisp controller input values process parameters using the defined membership functions to determine linguistic input variables for the rulebase evaluation The process by which the rules of the rulebase are evaluated to determine output linguistic variables for defuzzification A set that allows for partial membership of elements Fuzzy sets usually represent linguistic terms and are defined quantitatively by a membership function An extension of traditional Boolean set theory fuzzy set theory is based on the idea that fuzzy sets may be defined such that elements can have partial membership to the set A word or set of words to describe a quality of a process variable for
128. up degree of truth 0 8 minimum degree of truth 1 0 0 8 THEN adjust steering angle to negative small 2 IF vehicle position x is right center AND vehicle orientation B is left up degree of truth 0 1 minimum degree of truth 1 0 0 1 THEN adjust steering angle to negative small Each rule defines an action conclusion to be taken in the THEN condition The degree to which the action is valid is given by the adequateness of the rule to the current situation This adequateness is calculated by the aggregation step as the degree of truth of the IF condition In this case the rule indicated by 1 results in the action adjust steering angle to negative small with a degree of 0 8 The rule indicated by 2 results in the action adjust steering angle to negative medium with a degree of 0 1 The resulting conclusion or action must be composed of the differently weighted THEN conclusions of the active rules This is done within the composition step The rules of this rule base are defined alternatively i e they are logically linked by the word OR Because the resulting conclusions of the rules are partially true you cannot use the OR operator from conventional dual logic to calculate the resulting conclusion In fuzzy logic you must use the maximum operator see Figure 2 13 instead For example assume that two rules assert different degrees of truth for the linguistic term positive medium One ru
129. vehicle orientation B is up THEN adjust steering angle to zero The conditions of each rule are composed of uncertain linguistic terms like left center left up and so on Even the conclusion of each rule contains vague and imprecise facts such as negative small Because there are no precise definitions of the words used in the rules above there is no way to implement them directly using IF THEN statements from a conventional programming language You can implement a linguistic control strategy using fuzzy logic which is capable of modeling uncertain linguistic facts like left center or high fever with fuzzy sets First you must define a linguistic variable for each characteristic quantity of the maneuvering process For example vehicle position x and vehicle orientation B are process or input variables and steering angle is an output variable A linguistic variable is made up of a number of linguistic terms describing the different linguistic interpretations of the characteristic quantity being modeled Each linguistic term is defined again by an appropriate membership function fuzzy set Fuzzy Logic for G Toolkit Reference Manual 2 8 National Instruments Corporation Chapter 2 Overview of Fuzzy Logic Figures 2 6 2 7 and 2 8 show membership functions for the inputs and output of the truck controller left right center center center
130. wo or more inputs Figure 3 7 shows the I O characteristic of a fuzzy controller with only three linguistic terms for the input variable x and the output variable y The rule base consists of three rules indicating that the output increases because of an increasing input value Fuzzy Logic for G Toolkit Reference Manual 3 6 National Instruments Corporation negative positive negative 0 Chapter 3 Fuzzy Controllers positive Rule 1 IF x negative THEN y negative Rule 2 IF x zero THEN y zero Rule 3 IF x positive THEN y positive Rule 1 Rules 1 and Rules 2 and 2 active 3 active Max Min Inference Modified CoA Figure 3 7 O Characteristic of a Fuzzy Controller Partially Overlapping Input Terms National Instruments Corporation 3 7 Fuzzy Logic for G Toolkit Reference Manual Chapter 3 Fuzzy Controllers The resulting controller characteristic shows nonlinear behavior Because of the partially overlapping input terms antecedence terms you obtain different intervals within the controller characteristic Outside of the overlapping regions there is only one valid rule This leads to a constant value for the output value determined by the output term conclusion of the output variable which is independent of the degree of truth for that rule The overlapping sections of the antecedence terms lead t
131. ws e Chapter 1 Introduction introduces the Fuzzy Logic for G Toolkit It contains system configuration information installation instructions and basic information that explains how to start using this toolkit e Chapter 2 Overview of Fuzzy Logic introduces fuzzy set theory and provides an overview of fuzzy logic control e Chapter 3 Fuzzy Controllers describes various implementations and Input Output I O characteristics of fuzzy controllers e Chapter 4 Design Methodology provides an overview of the design methodology of a fuzzy controller e Chapter 5 Using the Fuzzy Logic Controller Design VI describes how to design a fuzzy controller using the Fuzzy Logic Controller Design VI e Chapter 6 Implementing a Fuzzy Controller describes how to implement a fuzzy controller and includes a pattern recognition application example e Chapter 7 Fuzzy Logic VI Descriptions contains descriptions of the fuzzy logic VIs National Instruments Corporation xi Fuzzy Logic for G Toolkit Reference Manual About This Manual e Appendix A References lists the reference material used to produce the VIs in this manual These references contain more information on the theory and algorithms implemented in the fuzzy logic VIs e Appendix B Customer Communication contains forms you can use to request help from National Instruments or to comment on our products and manuals e The Glossary contains an alphabetical list and descrip
132. zy controller is composed of the three calculation steps Fuzzification Fuzzy Inference and Defuzzification The control strategy based on engineering experience with respect to a closed loop control application is implemented by linguistic rules integrated in the rule base of the controller A fuzzy controller has a static and deterministic structure as shown in Figure 3 1 which can be described with an I O characteristic curve Rule Base AND THEN AND THEN AND THEN AND THEN Fuzzification Fuzzy Inference Defuzzification Figure 3 1 Internal Structure of a Fuzzy Controller National Instruments Corporation 3 1 Fuzzy Logic for G Toolkit Reference Manual Chapter 3 Fuzzy Controllers In principle there are two different implementation forms e Offline Fuzzy Controller In this case the three step calculation scheme is transformed into a reference table from which the command values can be derived You can calculate intermediate command values by interpolation e Online Fuzzy Controller In this case the three step calculation scheme is evaluated online This is the standard implementation form of the Fuzzy Logic Toolkit Closed Loop Control Structures with Fuzzy Controllers There are many different ways to use fuzzy controllers in closed loop control applications The most simple structure uses the sensor signals from the process as input signals for the fuzzy controller an
133. zzy Controller Different Overlapping Degrees of Membership Functions forthe OUL DUE FCC casciinds putiad louse a E E 3 17 I O Characteristics of a Fuzzy Controller Wide and Small Membership Functions for the Output Terms 3 19 I O Characteristic of a Fuzzy Controller with Mean of Maximum Entirely Overlapping Membership Functions Lor Miput and Cutout Te riiis cite da as ucuiestavesanes a a 3 21 I O Characteristic of a Fuzzy Controller with a Changed Rule Base 3 23 Fuzzy Controller for a Given I O Characteristic cccccccccccceeeeeeeeeees 3 25 I O Characteristic Field of a Dual Input Fuzzy Controller 3 27 I O Characteristic Field of a Dual Input Fuzzy Controller Slightly Overlapping Input Terms ccccssssseseesseeeeseeeeeeeeeeeeeeeeees 3 29 Shapes of Standard Membership Functions seseeseeeeeeeeeeeeeeeees 4 3 Definition of a Triangular Membership Function for the Linsiistic Term Center eaa Sa ek Ones 4 4 Definition of a Trapezoidal Membership Function forthe Lincuistic Perm Cenier sci on cicn onan ees 4 5 Project Managert Front Paneline cei ae IG Smee 5 3 Default Fuzzy Controller Seine S ireen aE 5 4 Plausibility Checking and Point Slider Movement ccccccccceceeeeeees 5 6 Selecting the Rename Variable Command eeeeeeeeeeeeeeeeeeeeees 5 7 Rename Variable Dialoe Box iseci a Ral eed 5 8 sclectine the Edit Ranse Command oserei a
134. zzy Logic Controller Design VI The Fuzzy Set Editor offers many functions to modify single terms or the whole term arrangement of the active variable It is a good idea to experiment with this function at this point in your project because you must modify the whole term arrangement according to the desired term arrangement shown in Figure 2 6 Linguistic Variable Vehicle Position x and Its Linguistic Terms Figures 5 16 and 5 17 show the term arrangement obtained by selecting edit full term overlap all resulting in a term arrangement with all terms of the active linguistic variable completely overlapping each other The edit menu also has several other functions for editing membership functions automatically You can change individual membership functions or all of them to singleton fuzzy sets typically used for controller output only The tolerance function changes a trapezoidal membership to a triangular function In addition there are options to set the overlap between functions and to make all functions symmetric The left side of the left most term and the right side of the right most term are not changed by this command File Edit ei Project Windows Help Fuzzy Set 2S vehicle position lt ling variables specify v ANTECEDENCE define lt ling terms edit right center change into singleton make all to singletons no tolerance no tolerance at all overlap right side overlap lett side full term overlap a
Download Pdf Manuals
Related Search
Related Contents
Télécharger le dossier de presse kit combo \\POSTE4\partage\Vente en ligne\NOTICES\A CONVERTIR\etiaxil.jpg N131M N201M N301M N401M N501M - Icematic Triarch 32310/2 User's Manual Approx APPKBVLV2 Mode d`emploi de l`outil "Tableau des indicateurs de programme" PDF Istruzioni d`uso AG 100/115-7/-8 (S/D) (IT), 2.7 MB Copyright © All rights reserved.
Failed to retrieve file