DE4240788A1 - Fuzzy logic based servo controller - has loop input error values received by fuzzy logic circuit to determine corrective action based upon linguistic rules - Google Patents
Fuzzy logic based servo controller - has loop input error values received by fuzzy logic circuit to determine corrective action based upon linguistic rulesInfo
- Publication number
- DE4240788A1 DE4240788A1 DE19924240788 DE4240788A DE4240788A1 DE 4240788 A1 DE4240788 A1 DE 4240788A1 DE 19924240788 DE19924240788 DE 19924240788 DE 4240788 A DE4240788 A DE 4240788A DE 4240788 A1 DE4240788 A1 DE 4240788A1
- Authority
- DE
- Germany
- Prior art keywords
- linguistic
- membership
- value
- values
- controller
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Withdrawn
Links
- 230000006870 function Effects 0.000 claims abstract description 48
- 230000008859 change Effects 0.000 claims description 2
- 238000000034 method Methods 0.000 abstract description 3
- 230000008569 process Effects 0.000 abstract description 2
- 238000004886 process control Methods 0.000 abstract 1
- 230000006399 behavior Effects 0.000 description 6
- 230000003111 delayed effect Effects 0.000 description 4
- 238000010586 diagram Methods 0.000 description 4
- 230000004913 activation Effects 0.000 description 2
- 230000015572 biosynthetic process Effects 0.000 description 2
- 238000004088 simulation Methods 0.000 description 2
- 238000012935 Averaging Methods 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 230000001934 delay Effects 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 239000012636 effector Substances 0.000 description 1
- 230000002349 favourable effect Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B13/00—Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion
- G05B13/02—Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric
- G05B13/0265—Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric the criterion being a learning criterion
- G05B13/0275—Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric the criterion being a learning criterion using fuzzy logic only
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
- B25J9/1602—Programme controls characterised by the control system, structure, architecture
- B25J9/161—Hardware, e.g. neural networks, fuzzy logic, interfaces, processor
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/30—Nc systems
- G05B2219/34—Director, elements to supervisory
- G05B2219/34065—Fuzzy logic, controller
Landscapes
- Engineering & Computer Science (AREA)
- Artificial Intelligence (AREA)
- Physics & Mathematics (AREA)
- Automation & Control Theory (AREA)
- Software Systems (AREA)
- Mathematical Physics (AREA)
- Fuzzy Systems (AREA)
- Evolutionary Computation (AREA)
- Robotics (AREA)
- Mechanical Engineering (AREA)
- Health & Medical Sciences (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Medical Informatics (AREA)
- General Physics & Mathematics (AREA)
- Feedback Control In General (AREA)
Abstract
Description
Die Erfindung betrifft einen Regler, auf den Eingangs-Variable aufgeschaltet sind und der eine Ausgangsgröße als Stellgröße liefert.The invention relates to a controller on the input variable are switched on and an output variable as a manipulated variable delivers.
Regler der vorgenannten Art sind üblicherweise PID-Regler, die auf der Basis der linearen Regelungstheorie ausgelegt sind. Solche Regler bringen Probleme mit sich, wenn die Regelstrecken nichtlinear sind. Ihr Verhalten ist auch stark abhängig von Parametern der Regelstrecke. Veränderungen dieser Parameter führen leicht dazu, daß die Regelung instabil wird.Regulators of the aforementioned type are usually PID controllers that are designed on the basis of linear control theory. Such controllers pose problems if the Control systems are non-linear. Your behavior is strong too depending on the parameters of the controlled system. Changes this Parameters easily cause the control to become unstable.
Es sind auch "optimale" Regler bekannt, die Kalman-Filter als Zustandsbeobachter verwenden. Auch solche Regler bauen auf einer linearen Theorie auf. Die Anwendung solcher Kalman- Filter ist für viele Anwendungen zu komplex.There are also known "optimal" controllers which are called Kalman filters Use condition monitors. Such controllers are also based a linear theory. The application of such Kalman Filter is too complex for many applications.
Der Erfindung liegt die Aufgabe zugrunde, einen Regler so aufzubauen, daß er mit vergleichsweise geringem technischen Aufwand auch nichtlineare Regelstrecken zu beherrschen gestattet und im Vergleich zum Stand der Technik unempfindlich gegen Parameteränderungen ist.The invention has for its object a controller build that he with comparatively low technical Effort to master non-linear controlled systems permitted and insensitive to the prior art against parameter changes.
Erfindungsgemäß wird diese Aufgabe bei einem Regler der eingangs genannten Art gelöst durchAccording to the invention, this object is achieved with a controller solved at the outset by
- a) eine unscharfe Logikschaltung zum Umsetzen der Eingangs- Variablen in linguistische Werte entsprechend überlappenden Wertebereichen der Eingangs-Variablen,a) an unset logic circuit for converting the input Variables in linguistic values accordingly overlapping value ranges of the input variables,
- b) erste Speichermittel zur Festlegung von Zugehörigkeits- Funktionen, die jeweils in den einzelnen Wertebereichen definiert sind und einen Grad der Zugehörigkeit zu einem dem betreffenden Wertebereich entsprechenden linguistischen Wert angeben,b) first storage means for determining membership Functions, each in the individual value ranges are defined and a degree of belonging to one corresponding to the relevant value range specify linguistic value
- c) zweite Speichermittel zur Festlegung und Speicherung von Regeln zur Verknüpfung von linguistischen Eingangs-Werten zur Bildung eines liguistischen Ausgangs-Wertes,c) second storage means for defining and storing Rules for linking linguistic input values to form a liguistic starting value,
- d) Mittel zur Bestimmung der linguistischen Werte, die den Eingangs-Variablen zuzuordnen sind, und der zugehörigen Zugehörigkeits-Grade,d) means for determining the linguistic values that the Input variables are to be assigned, and the associated one Degrees of membership,
- e) eine Korrelations-Logikschaltung zur Korrelation der Zugehörigkeits-Grade nach Maßgabe der Verknüpfungs-Regeln für die linguistischen Eingangs-Werte zur Bildung eines Zugehörigkeits-Grades für den linguistischen Ausgangs- Wert,e) a correlation logic circuit for correlating the Degrees of membership according to the rules of association for the linguistic input values to form a Degree of affiliation for the linguistic initial Value,
- f) Mittel zur Veränderung der Zugehörigkeits-Funktion des linguistischen Ausgangs-Wertes nach Maßgabe des sich aus der Korrelation ergebenden Zugehörigkeits-Grades dieses Ausgangs-Wertes undf) means for changing the membership function of the initial linguistic value according to the the correlation of the degree of membership of this Output value and
- g) Mittel zur Bildung einer auf Stellgliedmittel aufzuschaltenden Ausgangs-Variablen des Reglers aus den so veränderten Zugehörigkeits-Funktionen der angesprochenen linguistischen Ausgangs-Werte.g) Means for forming an actuator means output variables of the controller to be activated from the so changed membership functions of the addressed initial linguistic values.
Es werden somit Wertebereiche für die verschiedenen Eingangsgrößen festgelegt. Diese Wertebereiche überlappen sich. Den Wertebereichen werden "linguistische Werte" zugeordnet. Das sind Werte, die nicht durch Zahlen sondern durch unscharfe Begriffe wie "groß", "mittel" oder "klein" ausgedrückt sind. Auch "null" kann in einer solchen unscharfen Logik einen endlichen Wertebereich um den tatsächlichen Wert null der Eingangsgröße herum bedeuten. Den verschiedenen Wertebereichen werden "Zugehörigkeits-Funktionen" zugeordnet. Diese Zugehörigkeits-Funktionen geben einen "Zugehörigkeits- Grad" an, mit welchem ein betrachteter Eingangswert zu einem bestimmten Wertebereich und linguistischen Wert gehört. In den nicht überlappenden Teilen der Wertebereiche hat diese Zugehörigkeits-Funktion zweckmäßigerweise den Wert "1". In den überlappenden Teilen der Wertebereiche haben die Zugehörigkeits-Funktionen dann Werte kleiner als eins. Ein betrachteter Eingangswert kann dann zwei benachbarten Wertebereichen angehören und z. B. mit einem Zugehörigkeits- Grad 0,2 "groß" und mit einem zugehörigkeits-Grad 0,8 "mittel" sein.There are thus value ranges for the different Input variables fixed. These ranges of values overlap yourself. The value ranges are "linguistic values" assigned. These are values that are not through numbers but through fuzzy terms such as "large", "medium" or "small" are expressed. Even "zero" can be blurred in such a way Logic a finite range of values around the actual value mean zero of the input quantity around. The different Value ranges are assigned to "membership functions". These membership functions give a "membership Degree "with which a considered input value for a certain range of values and linguistic value. In the has non-overlapping parts of the value ranges Membership function expediently the value "1". In the overlapping parts of the value ranges have the Membership functions then values less than one. A The input value considered can then be two neighboring ones Belong to values and z. B. with a membership Grade 0.2 "large" and with a membership grade 0.8 "medium" his.
Es erfolgt nun zunächst eine Verarbeitung dieser linguistischen Werte aufgrund bestimmter wissensbasierter Regeln. Daraus ergibt sich ein - wieder linguistischer- Ausgangs-Wert. Dieser linguistische Ausgangs-Wert erhält durch die Korrelations-Logikschaltung wieder einen "Zugehörigkeits- Grad", der sich aus den Zugehörigkeits-Graden der linguistischen Eingangs-Werte ergibt. Eine Zugehörigkeits- Funktion dieses linguistischen Ausgangs-Wertes wird nach Maßgabe dieses Zugehörigkeits-Grades verändert. Da für eine betrachtete Kombination von Eingangswerten ggf. mehrere der wissensbasierten Regeln anwendbar sein können, wenn eine oder mehrere der Eingangs-Variablen in überlappenden Teilen der Wertebereiche liegen, können sich mehrere solcher veränderter Zugehörigkeits-Funktionen ergeben. Die Ausgangs-Variable muß wieder eine analoge Größe oder ein definierter Zahlenwert sein, der aus den ggf. mehreren veränderten Zugehörigkeits- Funktionen durch eine geeignete Operation gebildet wird. This is now processed first linguistic values based on certain knowledge-based Regulate. This results in a - again linguistic - Initial value. This linguistic output value is given by the correlation logic circuit again a "membership Degree ", which results from the degrees of membership of the gives linguistic input values. A membership The function of this linguistic output value is based on In accordance with this degree of membership changed. There for one considered combination of input values, possibly several of the knowledge-based rules may apply if one or several of the input variables in overlapping parts of the Ranges of values, several such can change Membership functions result. The output variable must again an analog quantity or a defined numerical value be made up of the possibly changed membership Functions are formed by an appropriate operation.
Dieses Verfahren mit dem "Umweg" über linguistische Werte, die dann aber doch wieder in analoge Signale oder Zahlenwerte umgesetzt werden müssen erscheint kompliziert. Es bietet aber in vielen Fällen entscheidende Vorteile:This procedure with the "detour" over linguistic values that but then again in analog signals or numerical values needs to be implemented seems complicated. But it offers decisive advantages in many cases:
Die gespeicherten, wissensbasierten Regeln hängen von dem jeweiligen Bereich der Eingangs-Variablen ab. Diese Regeln können daher für die verschiedenen Bereiche unterschiedlich sein. Dadurch kann dem empirisch bestimmten oder theoretisch erkannten, ggf. nichtlinearen Verhalten der Regelstrecke Rechnung getragen werden.The saved, knowledge-based rules depend on that the respective range of input variables. These rules can therefore be different for different areas his. This can be empirically determined or theoretical recognized, possibly non-linear behavior of the controlled system Be taken into account.
Änderungen von Parametern der Regelstrecke treten wegen der Unterteilung der Meßbereiche der Eingangs-Variablen in Wertebereiche nicht unmittelbar in Erscheinung. Die Regelung wird dadurch unempfindlicher gegen solche Parameteränderungen. Das läßt sich durch eine Simulation zeigen. Durch Simulation läßt sich auch zeigen, daß die Regelung mit unscharfer Logik zu brauchbaren Regelgenauigkeiten führt.Changes to parameters of the controlled system occur because of the Subdivision of the measuring ranges of the input variables into Value ranges not immediately apparent. The regulation this makes it less sensitive to such parameter changes. This can be shown by a simulation. Through simulation can also be shown that the control with fuzzy logic leads to usable control accuracies.
Ausgestaltungen der Erfindung sind Gegenstand der abhängigen Patentansprüche.Embodiments of the invention are the subject of the dependent Claims.
Ausführungsbeispiele der Erfindung sind nachstehend unter Bezugnahme auf die zugehörigen Zeichnungen näher erläutert.Embodiments of the invention are below Reference to the accompanying drawings explained in more detail.
Fig. 1 zeigt als eine - einfache - Anwendung der Regelung mit unscharfer Logik (Fuzzy-Logic) und wissensbasierten Regeln die Regelung einer Nachführung nach einem Ziel. . The control with fuzzy logic (fuzzy logic), and knowledge-based rules using the control of a tracking for a target - Figure 1 shows as a - simple.
Fig. 2 veranschaulicht die dabei verwendeten Koordinatensysteme. Fig. 2 illustrates the coordinate systems used therein.
Fig. 3 ist ein Blockdiagramm und veranschaulicht den Grundaufbau des Regelkreises. Fig. 3 is a block diagram and illustrates the basic structure of the control loop.
Fig. 4 ist ein Blockdiagramm und veranschaulicht den Aufbau des Reglers. Fig. 4 is a block diagram illustrating the construction of the controller.
Fig. 5 zeigt für zwei Eingangs-Variable den Verlauf der Zugehörigkeits-Funktionen. Fig. 5 shows for two input variables the course of the membership functions.
Fig. 6 ist eine schematische Darstellung und zeigt eine geometrische Veranschaulichung eines Regel-Speichers zur Festlegung und Speicherung der Regeln. FIG. 6 is a schematic illustration and shows a geometrical illustration of a rule memory for defining and storing the rules.
Fig. 7 ist ein Blockdiagramm und veranschaulicht die Verarbeitung der linguistischen Eingangs-Werte und der Zugehörigkeits-Grade zu einem linguistischen Ausgangs- Wert und einer für diesen geltenden Zugehörigkeits- Funktion. Figure 7 is a block diagram illustrating the processing of input linguistic values and degrees of membership to an output linguistic value and a membership function applicable to it.
Fig. 8 veranschaulicht die Bildung einer Ausgangs-Variablen des Reglers, durch welche ein Stellglied ansteuerbar ist. Fig. 8 illustrates the formation of an output variable of the regulator, through which an actuator is controlled.
Fig. 9 zeigt als weitere Anwendung des beschriebenen Reglers einen Roboter mit sechs Freiheitsgraden mit seiner Regelung für eine Achse des Roboters unter Verwendung eines Reglers der vorliegenden Art. Fig. 9 shows the controller described as another application of a robot having six degrees of freedom, with its system for one axis of the robot using a controller of the present type.
Fig. 10 zeigt den Aufbau des Regelkreises für die Achse des Roboters von Fig. 10 in einer ähnlichen Darstellung wie in Fig. 3. FIG. 10 shows the structure of the control loop for the axis of the robot from FIG. 10 in a representation similar to that in FIG. 3.
In Fig. 1 ist ein optisches Instrument, beispielsweise ein Fernrohr, mit 10 bezeichnet. Das Instrument 10 soll ein bewegliches Ziel verfolgen. Zu diesem Zweck ist das Instrument 10 in einem Rahmen 12 um eine Achse YT schwenkbar. Die Verschwenkung erfolgt mittels eines Elevations-Stellmotors 14. In Fig. 1, an optical instrument, for example a telescope, is designated by 10 . The instrument 10 is intended to pursue a moving target. For this purpose, the instrument 10 can be pivoted in a frame 12 about an axis Y T. The pivoting takes place by means of an elevation servomotor 14 .
Mittels eines Elevations-Abgriffs 16 kann der Schwenkwinkel um die Achse YT als Elevationswinkel abgegriffen werden. Eine Achse XT ist die Sichtlinie zum Ziel. Eine Achse ZT ist senkrecht zu beiden anderen Achsen dieses Koordinatensystems.The pivot angle about the axis Y T can be tapped as an elevation angle by means of an elevation tap 16 . An axis X T is the line of sight to the target. An axis Z T is perpendicular to the other two axes of this coordinate system.
Der Rahmen 12 ist um eine vertikale Achse drehbar gelagert. Die Verstellung des Rahmens 12 um die vertikale Achse erfolgt durch einen Azimut-Stellmotor 18. Die Azimutstellung des Rahmens 12 wird durch einen Azimut-Abgriff 20 abgegriffen.The frame 12 is rotatably supported about a vertical axis. The frame 12 is adjusted about the vertical axis by an azimuth servomotor 18 . The azimuth position of the frame 12 is tapped by an azimuth tap 20 .
Azimut- und Elevation sind bezogen auf ein erdfestes Koordinatensystem XR, YR und ZR. Dabei ist XR beispielsweise die Nordrichtung, ZR die Vertikale und die von den Richtungen XR und YR aufgespannte Ebene die Horizontalebene. Der Elevationswinkel ist mit EL bezeichnet. Der Azimutwinkel ist mit AZ bezeichnet (Fig. 2).Azimuth and elevation are based on an earth-fixed coordinate system X R , Y R and Z R. X R is, for example, the north direction, Z R the vertical and the plane spanned by the directions X R and Y R the horizontal plane. The elevation angle is labeled EL. The azimuth angle is designated AZ ( Fig. 2).
Der Elevationswinkel EL des Instruments 10 wird von dem Elevations-Abgriff 16 auf einen Regler 22 aufgeschaltet. Das ist durch eine Leitung 24 dargestellt. Der Azimutwinkel AZ des Instruments 10 wird von dem Azimut-Abgriff 20 ebenfalls auf den Regler 22 aufgeschaltet. Das ist durch eine Leitung 26 dargestellt. Der Regler 22 erhält weiterhin über einen Elevations-Eingang 28 einen Meßwert für die Elevation des Ziels und über einen Azimut-Eingang 30 einen Meßwert für das Azimut des Ziels. Durch Differenzbildung werden Regelabweichungen für Elevation und Azimut bestimmt.The elevation angle EL of the instrument 10 is applied from the elevation tap 16 to a controller 22 . This is represented by a line 24 . The azimuth angle AZ of the instrument 10 is also applied to the controller 22 by the azimuth tap 20 . This is represented by a line 26 . The controller 22 also receives a measured value for the elevation of the target via an elevation input 28 and a measured value for the azimuth of the target via an azimuth input 30 . Control deviations for elevation and azimuth are determined by forming the difference.
Fig. 3 zeigt als Blockdiagramm den Regelkreis für die Nachführung im Azimut: Dem Regler 22 wird die Regelabweichung im Taktintervall k, die Zeitableitung der Regelabweichung im Taktintervall k und - als Rückführung - die Ausgangsvariable des Reglers 22 im Taktintervall k-1 zugeführt. Die Ausgangsvariable ist hier die Winkelgeschwindigkeit ω des Rahmens 12 um die ZR-Achse. Fig. 3 shows a block diagram of the control loop for tracking in azimuth: The controller 22 is fed the control deviation in the clock interval k, the time derivative of the control deviation in the clock interval k and - as a feedback - the output variable of the controller 22 in the clock interval k-1. The output variable here is the angular velocity ω of the frame 12 around the Z R axis.
Die Regelabweichung ε wird in einem Summierpunkt 32 gebildet. Auf den Summierpunkt 23 ist einmal mit negativem Vorzeichen der Azimut-Winkel von dem Azimut-Abgriff 20 aufgeschaltet. Das ist durch eine Leitung 34 dargestellt. Zum anderen ist von einer - nicht dargestellten - Meßeinrichtung der Azimut-Winkel eines zu verfolgenden Zieles über den Azimut-Eingang 30 aufgeschaltet.The control deviation ε is formed in a summing point 32 . The azimuth angle of the azimuth tap 20 is applied to the summing point 23 once with a negative sign. This is represented by a line 34 . On the other hand, the azimuth angle of a target to be tracked is applied via a azimuth input 30 by a measuring device, not shown.
Die Regelabweichung εk ist auf einen ersten Eingang 36 aufgeschaltet. Auf einen zweiten Eingang 38 ist die Zeitableitung k- der Regelabweichung aufgeschaltet. Diese Zeitableitung wird aus der Regelabweichung gebildet, indem die Regelabweichung εk in einem Zweig 40 durch ein Verzögerungsglied 42 um ein Taktintervall T verzögert wird. In einem Summierpunkt 44 wird die Differenz zwischen der Regelabweichung εk im Taktintervall k und und der Regelabweichung εk-1 im Taktintervall k-1 gebildet. Diese Differenz wird, wie durch Block 46 dargestellt ist, durch die Länge T des Taktintervalls geteilt. Das liefert k.The control deviation ε k is applied to a first input 36 . The time derivative k - of the control deviation is applied to a second input 38 . This time derivative is formed from the system deviation by delaying the system deviation ε k in a branch 40 by a delay element 42 by a clock interval T. The difference between the control deviation ε k in the clock interval k and and the control deviation ε k-1 in the clock interval k-1 is formed in a summing point 44 . This difference, as represented by block 46 , is divided by the length T of the clock interval. That provides k .
Die Ausgangs-Variable ωk des Reglers 22 wird in einer Rückführschleife 48 durch ein Verzögerungsglied 50 um ein Taktintervall T verzögert. Die verzögerte Ausgangs-Variable, nämlich die Winkelgeschwindigkeit ωk-1 des Rahmens 12, ist auf einen Eingang 52 des Reglers 22 aufgeschaltet.The output variable ω k of the controller 22 is delayed in a feedback loop 48 by a delay element 50 by a clock interval T. The delayed output variable, namely the angular velocity ω k-1 of the frame 12 , is applied to an input 52 of the controller 22 .
Fig. 4 zeigt schematisch den Aufbau des Reglers 22. Fig. 4 schematically shows the structure of the regulator 22.
Der Regler 22 enthält einen Speicher 54 zur Festlegung und Speicherung von "Zugehörigkeits-Funktionen". Der Speicher 54 ist über eine Verbindung 56 mit einer Einrichtung 58 zur Bestimmung von "Zugehörigkeits-Graden" verbunden. Auf die Einrichtung 58 sind über die Eingänge 36, 38 und 52 die Eingangs-Variablen des Reglers 22 aufgeschaltet. Die Einrichtung 58 bildet daraus Zugehörigkeits-Grade, welche den Grad der Zugehörigkeit der Eingangs-Variablen zu verschiedenen linguistischen Werten "groß", "klein" etc. wiedergeben. The controller 22 contains a memory 54 for defining and storing "membership functions". The memory 54 is connected via a connection 56 to a device 58 for determining "degrees of membership". The input variables of the controller 22 are connected to the device 58 via the inputs 36 , 38 and 52 . The device 58 forms membership degrees from this, which reflect the degree of affiliation of the input variables to various linguistic values "large", "small" etc.
Die Zugehörigkeits-Grade sind über Verbindungen 60 auf eine Datenbank- und Inferenzeinrichtung 62 geschaltet. Die Datenbank- und Inferenzeinrichtung 62 enthält einen Speicher, in welchem wissensbasierte Regeln in "Wenn-Dann"-Form abgelegt sind, nach denen linguistische Eingangs-Werte in ebenfalls linguistische Ausgangs-Werte umgesetzt werden. Aus den linguistischen Eingangs-Werten und den diesen zugeordneten Zugehörigkeits-Graden werden Zugehörigkeits-Funktionen gebildet, aus deren Summe, dargestellt durch einen Summierpunkt 64 mittels eines Ausgangs-Generators eine Ausgangsvariable ωk des Reglers 22 erzeugt wird.The degrees of membership are connected to a database and inference device 62 via connections 60 . The database and inference device 62 contains a memory in which knowledge-based rules are stored in “if-then” form, according to which linguistic input values are also converted into linguistic output values. Membership functions are formed from the linguistic input values and the degrees of membership assigned to them, the sum of which, represented by a summing point 64 using an output generator, is used to generate an output variable ω k of the controller 22 .
Fig. 5 veranschaulicht die Umsetzung der Eingangs-Variablen des Reglers in "linguistische Werte" und Zugehörigkeits-Grade. Der Meßbereich der Eingangsvariablen, also ε, und ω wird unterteilt in einander überlappende Wertebereiche. Diesen Wertebereichen werden linguistische Werte zugeordnet. Im vorliegenden Fall sind das die linguistischen Werte: "negativ groß" = NL, "negativ mittel" = NM, "negativ klein" = NS, "null" = ZE, "positiv klein" = PS, "positiv mittel" = PM und "positiv groß" = PL. In der ersten Zeile von Fig. 5 ist das für die Rückführ-Variable (ωk-1) dargestellt. In der zweiten Zeile ist das dargestellt für die Regelabweichung ε und deren Zeitableitung . Den verschiedenen überlappenden Wertebereichen sind Zugehörigkeits-Funktionen zugeordnet. Eine Eingangs-Variable, die in einem Überlappungsbereich der Wertebereiche liegt, kann zwei verschiedenen linguistischen Werten zugeordnet sein. So ist etwa der Wert 30°/sec der Eingangs-Variablen ω sowohl "positiv klein" als auch "positiv mittel". Sie liegt im Überlappungsbereich dieser beiden Wertebereiche. Die Zugehörigkeits-Funktionen geben dann an, zu welchem Grad der Wert der Eingangs-Variablen dem einen und zu welchem Grad sie dem anderen linguistischen Wert zuzuordnen ist. Fig. 5 shows the conversion of the input variables of the controller illustrated in "linguistic values" and belongingness degrees. The measuring range of the input variables, i.e. ε, and ω, is divided into overlapping value ranges. Linguistic values are assigned to these value ranges. In the present case these are the linguistic values: "negative large" = NL, "negative medium" = NM, "negative small" = NS, "zero" = ZE, "positive small" = PS, "positive medium" = PM and "positive large" = PL. This is shown in the first line of FIG. 5 for the feedback variable (ω k-1 ). The second line shows this for the control deviation ε and its time derivative. Membership functions are assigned to the various overlapping value ranges. An input variable that lies in an overlap area of the value areas can be assigned to two different linguistic values. For example, the value 30 ° / sec of the input variables ω is both "positive small" and "positive medium". It lies in the overlap area of these two value areas. The membership functions then indicate the degree to which the value of the input variable is assigned to one and the degree to which it is assigned to the other linguistic value.
Wie aus Fig. 5 ersichtlich sind, haben diese Zugehörigkeits- Funktionen bei dem hier beschriebenen Ausführungsbeispiel einen trapezförmigen Verlauf: In dem Teil jedes Wertebereiches, in dem keine Überlappung mit einem benachbarten Wertebereich stattfindet, ist der Wert der Zugehörigkeits-Funktion "1,0". Außerhalb des Wertebereichs ist die zugeordnete Zugehörigkeits-Funktion "0". Innerhalb der Überlappungsbereiche wird ein linearer Anstieg der Zugehörigkeits-Funktion von 0 auf 1,0 angenommen. Die Zugehörigkeits-Funktionen können ggf. auch einen anderen als trapezförmigen Verlauf haben. Die Zugehörigkeits-Funktionen sind in Fig. 5 über den betreffenden Wertebereichen dargestellt. Mit 68 ist beispielsweise die Zugehörigkeits- Funktion für den Wertebereich des linguistischen Wertes "positiv mittel" bezeichnet. Die Wertebereiche für die linguistischen Werte positiv oder negativ "groß" sind nach einer Seite unbegrenzt.As can be seen from FIG. 5, these membership functions have a trapezoidal course in the exemplary embodiment described here: in the part of each value range in which there is no overlap with an adjacent value range, the value of the membership function is "1.0" . The assigned membership function is "0" outside the value range. Within the overlap areas, a linear increase in membership function from 0 to 1.0 is assumed. The membership functions can possibly also have a course other than trapezoidal. The membership functions are shown in FIG. 5 above the relevant value ranges. The membership function for the value range of the linguistic value "positive medium" is designated by 68 , for example. The value ranges for the linguistic values positive or negative "large" are unlimited on one side.
In Fig. 7 ist dargestellt, wie für eine bestimmte Kombination von Eingangs-Variablen εk = 1,8, k = 5 und ωk-1 = -9 die Zugehörigkeits-Grade und ein linguistischer Ausgangswert sowie die zu diesem Ausgangswert gehörige Zugehörigkeits-Funktion bestimmt werden. FIG. 7 shows how, for a specific combination of input variables ε k = 1.8, k = 5 and ω k-1 = -9, the degrees of membership and a linguistic output value as well as the membership value belonging to this output value Function can be determined.
Das geschieht unter Benutzung der in Fig. 5 dargestellten Zugehörigkeits-Funktionen. Für εk = 1,8 ergibt sich aus der Zugehörigkeits-Funktion 70 für den linguistischen Wert "null" (ZE) ein Zugehörigkeits-Grad von mZE (εk) = 0,2. Für k = 5 ergibt sich aus der Zugehörigkeits-Funktion 72 für den linguistischen Wert "positiv klein" (PS) ein Zugehörigkeits- Grad von mPS (-k) = 0,4. Für ωk-1 = -9 ergibt sich aus der Zugehörigkeits-Funktion 74 für den linguistischen Wert "negativ klein" (NS) ein Zugehörigkeits-Grad mNS (ωk-1)= 0,3. Die Bestimmung der linguistischen Werte ZE, PS und NS und der diesen zugeordneten Zugehörigkeits-Grade ist in Fig. 7 durch Blöcke 76, 78 und 80 symbolisiert. This is done using the membership functions shown in FIG. 5. For ε k = 1.8, the membership function 70 results in a degree of membership of m ZE (ε k ) = 0.2 for the linguistic value “zero” (ZE). For k = 5, the membership function 72 for the linguistic value "positive small" (PS) results in a degree of membership of m PS (- k ) = 0.4. For ω k-1 = -9 a membership degree m NS (ω k-1 ) = 0.3 results from the membership function 74 for the linguistic value "negative small" (NS). The determination of the linguistic values ZE, PS and NS and the degrees of membership assigned to them is symbolized in FIG. 7 by blocks 76 , 78 and 80 .
Nach einer wissensbasierten, in dem Speicher abgelegten Regel wird aus den linguistischen Eingangs-Werten ein linguistischer Ausgangs-Wert bestimmt. Dieser Speicher ist in Fig. 7 durch einen Block 82 dargestellt. In den Block 82 ist ein Beispiel für eine wissensbasierte Regel angegeben:According to a knowledge-based rule stored in the memory, a linguistic output value is determined from the linguistic input values. This memory is represented by a block 82 in FIG. 7. An example of a knowledge-based rule is given in block 82 :
IF εk = ZE AND k = PS AND ωk-1 = NS THEN ωk = ZE.IF ε k = ZE AND k = PS AND ω k-1 = NS THEN ω k = ZE.
Wenn kumulativ die Regelabweichung den linguistischen Wert "null", die Zeitableitung der Regelabweichung den linguistischen Wert "positiv klein" und die rückgeführte Winkelgeschwindigkeit den linguistischen Wert "negativ klein" hat, dann hat die als Ausgangs-Variable des Reglers 22 wirkende Winkelgeschwindigkeit den linguistischen Wert "null". Der linguistische Wert null ist dabei ein den Zahlenwert null umgebender endlicher Wertebereich mit einer zugeordneten Zugehörigkeits-Funktion 84. Nach der angegebenen Regel würde sich mit den Werten der Eingangs-Variablen dieser linguistische Ausgangswert ZE ergeben.If the control deviation cumulatively has the linguistic value "zero", the time derivative of the control deviation has the linguistic value "positive small" and the returned angular velocity has the linguistic value "negatively small", then the angular velocity acting as the output variable of the controller 22 has the linguistic value "zero". The linguistic value zero is a finite range of values surrounding the numerical value zero with an assigned membership function 84 . According to the specified rule, the values of the input variables would result in this linguistic output value ZE.
Die Regeln enthalten drei Eingangs-Variable εk, k und ωk-1. Das kann geometrisch in der in Fig. 6 dargestellten Weise durch drei Koordinaten dargestellt werden. Wertebereiche NL, NM, NS, ZE, PS, PM und PL definieren Abschnitte auf der Koordinatenachse. Jede der Regeln kann durch einen Würfel in diesem Koordinatensystem mit bestimmten zugeordneten linguistischen Werten z. B. PL, NM, NS als "Koordinaten" dargestellt werden, in welchem diese Regel "abgelegt" ist. In Fig. 6 ist beispielsweise die "ε = PL"-Ebene dargestellt. In Fig. 6 ist mit 92 der auf diese Weise organisierte Speicher bezeichnet, in welchem jeweils drei "linguistischen" Eingangs- Werten ein sich nach einer Regel ergebender linguistischer Ausgangswert zugeordnet ist. Fig. 6 zeigt auch ein weiteres Beispiel für eine so gespeicherte Regel.The rules contain three input variables ε k , k and ω k-1 . This can be represented geometrically in the manner shown in FIG. 6 by three coordinates. Value ranges NL, NM, NS, ZE, PS, PM and PL define sections on the coordinate axis. Each of the rules can be defined by a cube in this coordinate system with certain assigned linguistic values e.g. B. PL, NM, NS are shown as "coordinates" in which this rule is "filed". In FIG. 6, "ε = PL" for example is shown plane. In FIG. 6, 92 denotes the memory organized in this way, in which in each case three “linguistic” input values are assigned a linguistic output value that results according to a rule. Fig. 6 also shows another example of such a stored rule.
Durch eine Korrelations-Logikschaltung 86 wird aus den Zugehörigkeits-Graden der verschiedenen Eingangs-Variablen, im vorliegenden Fall 0,2; 0,4 und 0,3, ein Zugehörigkeits-Grad bestimmt, welcher der Ausgangs-Variablen ωk zukommt. Da die verschiedenen Eingangs-Variablen in der hier angewandten Regel durch UND verknüpft sind, ist der Zugehörigkeits-Grad der Ausgangs-Variablen gleich dem kleinsten der Zugehörigkeits- Grade der Eingangs-Variablen. Das ist gewissermaßen deren Schnittmenge. Der Zugehörigkeits-Grad der Ausgangs-Variablen ist somit mZE (ωk) = 0,2. Die Zugehörigkeits-Funktion 84 für den linguistischen Wert "null" (ZE) der Winkelgeschwindigkeit wird mit diesem Zugehörigkeits-Grad 0,2 multipliziert. Das gibt die Funktion 88 in Fig. 7. Die Bildung dieser veränderten Zugehörigkeits-Funktion 88 ist in Fig. 7 durch einen Block 90 dargestellt.A correlation logic circuit 86 converts the degrees of membership of the various input variables, in the present case 0.2; 0.4 and 0.3, a degree of membership determines which of the output variables ω k is assigned. Since the various input variables are linked by AND in the rule used here, the degree of affiliation of the output variables is equal to the smallest of the degrees of affiliation of the input variables. In a way, that's their intersection. The degree of membership of the output variables is thus m ZE (ω k ) = 0.2. The membership function 84 for the linguistic value "zero" (ZE) of the angular velocity is multiplied by this membership degree 0.2. This gives the function 88 in FIG. 7. The formation of this changed membership function 88 is represented in FIG. 7 by a block 90 .
Wenn die Regel eine ODER Verknüpfung enthält, dann wird analog zu einer Vereinigungsmenge der jeweils höchste der zugeordneten Zugehörigkeits-Grade als Zugehörigkeits-Grad der Ausgangs-Variablen gewählt.If the rule contains an OR link, it becomes analog to a union the highest of each assigned degrees of membership as the degree of membership of the Output variables selected.
Da die Werte der Eingangs-Variablen u. U. gleichzeitig in verschiedenen der sich überlappenden Wertebereiche liegen und damit gleichzeitig verschiedenen linguistischen Werten mit entsprechenden Zugehörigkeits-Graden zuzuordnen sind, werden u. U. gleichzeitig mehrere der vorerwähnten Regeln angesprochen. Diese Regeln können unterschiedlich sein, so daß auch nichtlinearen und verkoppelten Regelstrecken Rechnung getragen werden kann. Jede dieser Regeln führt zu einer linguistischen Ausgangsgröße mit einer zugehörigen, nach Maßgabe des Zugehörigkeits-Grades veränderten Zugehörigkeits- Funktion.Since the values of the input variables U. in at the same time different of the overlapping value ranges and with different linguistic values at the same time corresponding degrees of affiliation are to be assigned u. U. at the same time several of the aforementioned rules addressed. These rules can be different so that also account for non-linear and coupled controlled systems can be worn. Each of these rules leads to one linguistic output variable with an associated, after In accordance with the degree of membership changed membership Function.
Das ist in Fig. 8 angedeutet. Die in Block 82 von Fig. 7 angegebene Regel führt mit den angegebenen Werten der Eingangs-Variablen zu der um den Faktor 0,2 veränderten Zugehörigkeits-Funktion des linguistischen Wertes "null" (ZE). Das ist in Fig. 8 durch den Block 90 (entsprechend Fig. 7) dargestellt. Die gleichen Werte der Eingangs-Variablen εk, k und ωk-1 führen mit anderen Zugehörigkeits-Graden zu anderen linguistischen Eingangs-Werten, ggf. zur Anwendbarkeit einer anderen der gespeicherten Regeln und schließlich zu einem anderen linguistischen Ausgangs-Wert PM mit einer Zugehörigkeits-Funktion 68 und einer mit dem Faktor 0,15 veränderten Zugehörigkeits-Funktion 94. Das ist in Fig. 8 durch einen Block 96 angedeutet.This is indicated in Fig. 8. The rule specified in block 82 of FIG. 7 leads, with the specified values of the input variables, to the membership function of the linguistic value "zero" (ZE) which has been changed by a factor of 0.2. This is represented in FIG. 8 by block 90 (corresponding to FIG. 7). The same values of the input variables ε k , k and ω k-1 lead to different linguistic input values with different degrees of membership, possibly to the applicability of another one of the stored rules and finally to another linguistic output value PM with one Membership function 68 and a membership function 94 changed by a factor of 0.15. This is indicated in FIG. 8 by a block 96 .
Die erhaltenen veränderten Zugehörigkeits-Funktionen 88 und 94 werden über Ausgänge F1 und F2 ausgegeben und überlagert. Das ist durch einen "Summierpunkt" 96 angedeutet. Es ergibt sich eine überlagerte Zugehörigkeits-Funktion mu (ω), die in Fig. 8 durch die Kurve 96 dargestellt ist. Aus dieser überlagerten Zugehörigkeits-Funktion mu (ω) wird die Ausgangs-Variable ωk des Reglers 22 durch gewichtete Mittelwertbildung gewonnen. Es wird mit der Funktion mu (ω) gebildet:The changed membership functions 88 and 94 obtained are output and superimposed on outputs F 1 and F 2 . This is indicated by a "summing point" 96 . The result is a superimposed membership function m u (ω), which is represented by curve 96 in FIG. 8. The output variable ω k of the controller 22 is obtained from this superimposed membership function m u (ω) by weighted averaging. It is formed with the function m u (ω):
Diese Größe ωk bildet die Ausgangs-Variable des Reglers 22. Die Einrichtung zur Durchführung dieser Operationen ist in Fig. 8 generell durch einen Block 98 dargestellt.This variable ω k forms the output variable of the controller 22 . The device for performing these operations is generally represented by a block 98 in FIG. 8.
Fig. 9 und 10 veranschaulichen eine weitere Anwendung eines Reglers der vorliegenden Art. Gemäß Fig. 9 und 10 wird ein Sechsachsen-Roboter geregelt. Fig. 9 zeigt dabei die Regelung einer Nickachse. FIGS. 9 and 10, a further application illustrate a regulator of the present type. In Fig. 9 and 10, a six-axis robot is controlled. Fig. 9, the control shows a pitch axis.
Nach dem Stand der Technik ist für jede der Achsen ein linearer PID-Regler mit bestimmten Aufschaltwerten für den P-, D- und I-Anteil vorgesehen. Der Regler steuert einen Stellmotor 100 (Fig. 9). Zur Rückführung des Istwertes dient ein an der zu regelnden Achse angebrachter Winkelgeber 102. Jeder Regler arbeitet unabhängig von den Regelvorgängen der anderen Achsen. Dabei ergeben sich verschiedene Probleme: Es ist schwierig, die Aufschaltwerte der Regler an den verschiedenen Achsen so einzustellen, daß der Roboter als Ganzes unter allen Bedingungen, z. B. Störungen, im gesamten Arbeitsraum zufriedenstellendes statisches und dynamisches Verhalten zeigt. Das Verhalten des Reglers kann sehr gegenüber Parameterschwankungen oder -änderungen sein. Das Verhalten des Roboters wird beeinflußt durch die auf den Endeffektor wirkenden Kräfte, die z. B. durch Lasten hervorgerufen werden.According to the prior art, a linear PID controller is provided for each of the axes with certain activation values for the P, D and I component. The controller controls a servomotor 100 ( FIG. 9). An angle encoder 102 attached to the axis to be controlled is used to feed back the actual value. Each controller works independently of the control processes of the other axes. There are various problems with this: It is difficult to set the activation values of the controllers on the various axes so that the robot as a whole under all conditions, e.g. B. disturbances, shows satisfactory static and dynamic behavior in the entire work area. The behavior of the controller can be very different from parameter fluctuations or changes. The behavior of the robot is influenced by the forces acting on the end effector, e.g. B. caused by loads.
Ein Regler der vorliegenden Art, der mit unscharfer Logik und wissensbasierten Regeln arbeitet, kann hier zu einem günstigeren Regelverhalten führen.A controller of the present type, with fuzzy logic and knowledge-based rules can become one lead more favorable control behavior.
In Fig. 9 ist mit 104 ein Sechsachsen-Roboter bezeichnet. Es wird nur die Regelung einer Achse mit dem Stellmotor 100 und dem Winkelgeber 102 betrachtet. Diese Regelung erfolgt mittels eines Reglers 106. Dem Regler 106 wird ein Winkelstellungs- Sollwert über einen Eingang 108 zugeführt. Der Winkelstellungs-Sollwert wird mit einem Winkelstellungs- Istwert verglichen, der von dem Winkelgeber 104 über eine Rückführschleife 110 geliefert wird. Der Regler 106 liefert ein Regelsignal über eine Leitung 112 an den Stellmotor 100.In Fig. 9, 104 is a six-axis robot. Only the regulation of an axis with the servomotor 100 and the angle encoder 102 is considered. This regulation takes place by means of a controller 106 . An angular position setpoint is supplied to controller 106 via an input 108 . The desired angular position value is compared with an actual angular position value, which is supplied by the angle sensor 104 via a feedback loop 110 . The controller 106 supplies a control signal to the servomotor 100 via a line 112 .
Durch Differenzbildung zwischen dem kommandierten Winkelstellungs-Sollwert an dem Eingang 108 und einem Winkelstellungs-Istwert von dem Winkelgeber 102 in einem Summierpunkt 114 wird eine Regelabweichung εk gebildet. Die Regelabweichung εk ist auf einen Eingang 116 des Reglers 106 geschaltet. An einem Eingang 118 des Reglers 106 liegt die Zeitableitung k- der Regelabweichung. Schließlich liegt an einem Eingang 120 - ähnlich wie in Fig. 3 - als Rückführung die um eine Taktperiode T verzögerte Ausgangs-Variable ωk-1 des Reglers 106. Die verzögerte Ausgangs-Variable wird vom Ausgang 122 des Reglers 106 über eine Rückführschleife 124 auf den Eingang 120 zurückgeführt. Die Rückführschleife 124 enthält ein Verzögerungsglied, welche den Ausgang des Reglers 106 um eine Taktperiode verzögert. Die Zeitableitung k der Regelabweichung wird aus der Regelabweichung mittels eines Verzögerungsgliedes 128 gebildet. In einem Summierpunkt 130 wird die Differenz von εk und εk-1 gebildet. Diese Differenz wird, wie durch Block 132 dargestellt ist, durch die Länge T des Taktintervalls dividiert. Das liefert k. Der Ausgang 122 des Reglers 106 liefert eine Drehgeschwindigkeit ωk des Stellmotors 100. Der Ausgang 122 des Reglers 106 ist dazu mit dem Stellmotor 100 verbunden.A control deviation ε k is formed by forming the difference between the commanded angular position setpoint at the input 108 and an actual angular position value from the angle transmitter 102 in a summing point 114 . The control deviation ε k is connected to an input 116 of the controller 106 . The time derivative k - the control deviation - is located at an input 118 of the controller 106 . Finally, at an input 120 - similar to FIG. 3 - the output variable ω k-1 of the controller 106 delayed by a clock period T is present as feedback. The delayed output variable is fed back from the output 122 of the controller 106 to the input 120 via a feedback loop 124 . The feedback loop 124 contains a delay element which delays the output of the controller 106 by one clock period. The time derivative k of the control deviation is formed from the control deviation by means of a delay element 128 . The difference between ε k and ε k-1 is formed at a summing point 130 . This difference, as represented by block 132 , is divided by the length T of the clock interval. That provides k . The output 122 of the controller 106 delivers a rotational speed ω k of the servomotor 100 . For this purpose, the output 122 of the controller 106 is connected to the servomotor 100 .
Der Aufbau des Reglers 106 selbst entspricht im wesentlichen dem des Reglers 22 bei dem Ausführungsbeispiel von Fig. 1 bis 9. Die vorgegebenen Regeln sind natürlich an die speziellen Verhältnisse des Roboters 104 angepaßt.The structure of the controller 106 itself essentially corresponds to that of the controller 22 in the exemplary embodiment from FIGS. 1 to 9. The predetermined rules are of course adapted to the special conditions of the robot 104 .
Claims (7)
- a) eine unscharfe Logikschaltung (58) zum Umsetzen der Eingangs-Variablen in linguistische Werte entsprechend überlappenden Wertebereichen der Eingangs-Variablen,
- b) erste Speichermittel (54) zur Festlegung von Zugehörigkeits-Funktionen, die jeweils in den einzelnen Wertebereichen definiert sind und einen Grad der Zugehörigkeit zu einem dem betreffenden Wertebereich entsprechenden linguistischen Wert angeben,
- c) zweite Speichermittel (92) zur Festlegung und Speicherung von Regeln zur Verknüpfung von linguistischen Eingangs- Werten zur Bildung eines liguistischen Ausgangs-Wertes,
- d) Mittel (76, 78, 80) zur Bestimmung der Zugehörigkeits-Grade, mit denen die Eingangs-Variablen zu den linguistischen Wertebereichen der Premisse-Teile der Verknüpfungs-Regeln gehören.
- e) eine Korrelations-Logikschaltung (86) zur Korrelation der Zugehörigkeits-Grade nach Maßgabe der Verknüpfungs-Regeln für die linguistischen Eingangs-Werte zur Bildung eines Zugehörigkeits-Grades für den linguistischen Ausgangs- Wert,
- f) Mittel (90) zur Veränderung der Zugehörigkeits-Funktion des linguistischen Ausgangs-Wertes nach Maßgabe des sich aus der Korrelation ergebenden Zugehörigkeits-Grades dieses Ausgangs-Wertes und
- g) Mittel (98) zur Bildung eines auf Stellgliedmittel aufzuschaltenden Regler-Ausgangssignals aus den so veränderten Zugehörigkeits-Funktionen der angesprochenen linguistischen Ausgangs-Werte.
- a) an unset logic circuit ( 58 ) for converting the input variables into linguistic values corresponding to overlapping value ranges of the input variables,
- b) first storage means ( 54 ) for defining membership functions, which are each defined in the individual value ranges and indicate a degree of membership in a linguistic value corresponding to the relevant value range,
- c) second storage means ( 92 ) for defining and storing rules for linking linguistic input values to form a liguistic output value,
- d) means ( 76 , 78 , 80 ) for determining the degrees of membership with which the input variables belong to the linguistic value ranges of the premise parts of the linking rules.
- e) a correlation logic circuit ( 86 ) for correlating the degrees of membership in accordance with the linking rules for the linguistic input values in order to form a level of membership for the linguistic output value,
- f) means ( 90 ) for changing the membership function of the linguistic output value in accordance with the degree of membership of this output value resulting from the correlation and
- g) means ( 98 ) for forming a controller output signal to be connected to the actuator means from the membership functions of the linguistic output values mentioned which have been changed in this way.
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| DE19924240788 DE4240788A1 (en) | 1992-12-04 | 1992-12-04 | Fuzzy logic based servo controller - has loop input error values received by fuzzy logic circuit to determine corrective action based upon linguistic rules |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| DE19924240788 DE4240788A1 (en) | 1992-12-04 | 1992-12-04 | Fuzzy logic based servo controller - has loop input error values received by fuzzy logic circuit to determine corrective action based upon linguistic rules |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| DE4240788A1 true DE4240788A1 (en) | 1994-06-09 |
Family
ID=6474366
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| DE19924240788 Withdrawn DE4240788A1 (en) | 1992-12-04 | 1992-12-04 | Fuzzy logic based servo controller - has loop input error values received by fuzzy logic circuit to determine corrective action based upon linguistic rules |
Country Status (1)
| Country | Link |
|---|---|
| DE (1) | DE4240788A1 (en) |
Cited By (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| DE19516627A1 (en) * | 1995-05-05 | 1996-11-07 | Ranco Inc | Method and device for controlling a process |
| EP0985988A1 (en) * | 1998-09-11 | 2000-03-15 | Sck.Cen | An adaptive fuzzy controller and simulation method |
| CN114474079A (en) * | 2022-04-15 | 2022-05-13 | 深圳市纬华机械有限公司 | Manipulator compatible with workpieces of various models and control method |
-
1992
- 1992-12-04 DE DE19924240788 patent/DE4240788A1/en not_active Withdrawn
Cited By (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| DE19516627A1 (en) * | 1995-05-05 | 1996-11-07 | Ranco Inc | Method and device for controlling a process |
| US5726880A (en) * | 1995-05-05 | 1998-03-10 | Ranco Incorporated Of Delaware | Method of and apparatus for controlling a process |
| EP0985988A1 (en) * | 1998-09-11 | 2000-03-15 | Sck.Cen | An adaptive fuzzy controller and simulation method |
| WO2000016173A3 (en) * | 1998-09-11 | 2000-07-06 | Sck Cen | An adaptive fuzzy controller and simulation method |
| CN114474079A (en) * | 2022-04-15 | 2022-05-13 | 深圳市纬华机械有限公司 | Manipulator compatible with workpieces of various models and control method |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| DE69119573T2 (en) | Control system with sliding action | |
| DE69731060T2 (en) | Method and apparatus for calculating and controlling non-linear disturbances in a feedback control system | |
| EP0754317B1 (en) | Device designed to compensate for non-linearity of machine shafts | |
| DE69420734T2 (en) | MULTI-RANGE FUZZY LOGIC CONTROL SYSTEM WITH AUXILIARY VARIABLES | |
| DE102018115279B4 (en) | ROBOT THAT PERFORMS LEARNING CONTROL IN APPLICATIONS THAT REQUIRE CONSTANT SPEED, AND CONTROL METHODS FOR SUCH | |
| DE3884745T2 (en) | DEVICE FOR CONTROLLING THE SPEED OF A SERVO MOTOR. | |
| DE10261727A1 (en) | Control system in fuzzy logic for a wheel of a motor vehicle and method for implementing a fuzzy logic unit for such a wheel of a motor vehicle | |
| EP3376626B1 (en) | Method for controlling the power output of a wind farm and corresponding wind farm | |
| DE112017001162T5 (en) | Servo control device | |
| DE69119562T2 (en) | Control system with sliding action | |
| EP3984688A1 (en) | Method, computer program and laser cutting system for smart corner cutting | |
| EP0706680B1 (en) | Control device, especially for a non-linear process varying in time | |
| EP0998700A2 (en) | Method for generating connecting paths which can be used for guiding a vehicle to a predetermined target path | |
| DE3028312A1 (en) | SERVO CONTROL SYSTEM | |
| DE102005006099A1 (en) | Method for automatically setting the control parameters of a magnetic suspension system | |
| DE10017600A1 (en) | Flight regulator for aircraft uses algorithm based upon real time solution of optimization equation to determine optimum control parameter based upon state vector and control vector | |
| DE4240788A1 (en) | Fuzzy logic based servo controller - has loop input error values received by fuzzy logic circuit to determine corrective action based upon linguistic rules | |
| DE69808779T2 (en) | METHOD FOR AVOIDING WINDUP IN PID CONTROLLERS THROUGH NON-LINEAR REINFORCEMENT | |
| DE69524768T2 (en) | FILTERS AND A REPEATING AND LEARNABLE CONTROL SYSTEM, BOTH EQUIPPED WITH SUCH A FILTER | |
| EP0786709B1 (en) | Circuit arrangement for a controller with yielding feedback | |
| EP0700536B1 (en) | Regulating device | |
| EP0561792B1 (en) | Knowledge-based control and regulation device | |
| EP0750239B1 (en) | Device for attitude and optionally position control of a space vehicle and method therefor | |
| DE102005032336B4 (en) | Method for influencing a control or for controlling a movement device and control or control component of a movement device | |
| EP0844542B1 (en) | Numerical control method and control structure for controlling movement of objects whereby speed control is effected at a higher rate than position control |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| 8110 | Request for examination paragraph 44 | ||
| 8139 | Disposal/non-payment of the annual fee |