Die Erfindung betrifft speicherprogrammierbare Steuerungen nach dem Oberbegriff von Anspruch 1, wie sie beispielsweise aus dem Artikel "Speicherprogrammierbare Steuerungen: Abgrenzung und Definitionen" in der Zeitschrift "Automatisierungstechnische Praxis" ATP 6/1989 Seite 264ff. als bekannt hervorgeht.The invention relates to programmable logic controllers according tothe preamble of claim 1, such as from theArticle "Programmable logic controllers: delimitation andDefinitions "in the magazine" Automation technologyPractice "ATP 6/1989 page 264ff. Emerges as known.
In dieser Schrift versucht der Autor zu definieren, durch welche charakteristischen Eigenschaften sich eine speicherprogrammierte Steuerung (SPS) von anderen rechnergesteuerten Steuerungen unterscheidet. Auf Seite 267 Spalte 2 des Artikels werden die wesentlichen Merkmale einer speicherprogrammierten Steuerung dargestellt, dazu gehört vor allem, daß der Programmablauf zyklisch geschieht.In this document the author tries to define by whatThe characteristic features of a memory programmated control (PLC) from other computer-controlled controlsgene differs. On page 267 column 2 of the article will bethe essential features of a memory-programmed controlshown above all, that includes the program flowhappens cyclically.
Bei einem zyklischen Programmablauf ist die Reaktionszeit der Steuerung durch die zur Ausführung eines Programmzyklus benötigten Zeit begrenzt. Da in einer Kette von Prozessen der langsamste Prozeß die Geschwindigkeit bestimmt, ist man bemüht, die benötigte Reaktionszeit einer Maschine so gering wie möglich zu halten, um die Produktivität zu erhöhen. Um kurze Reaktionszeiten zu gewährleisten, ist es also notwendig, die Dauer eines Programmzyklusses so gering wie möglich zu halten. Dies ermöglicht gleichzeitig auch feinfühliger und präziser auf die Stellglieder einzuwirken. Im Gegensatz dazu ist die Berechnung von Steuersignalen unter Verwendung von Fuzzy-Regeln aufwendig. Es wird viel Rechenzeit benötigt, wie zum Beispiel für numerische Integrationen, so daß die Verwendung von Fuzzy-Regeln die Zykluszeiten erhöht. Da speicherprogrammierbare Steuerungen ur sprünglich nur mit logischen Vergleichen arbeiteten und erst Weiterentwicklungen die Durchführung von einfachen arithmetischen Operationen ermöglichten und die speicherprogrammierbaren Steuerungen nicht für solche internen Arbeitsabläufe konzipiert sind, sind aufwendige mathematische Operationen entweder gar nicht oder nur sehr umständlich und langsam möglich. Dadurch wird die von einer speicherprogrammierbaren Steuerung benötigte Rechenzeit für die Berechnung der Stellgröße und damit-die Zyklenzeit zu groß, um damit in sinnvoller Geschwindigkeit Vorgänge zu steuern.In the case of a cyclical program run, the reaction time is theControlled by the necessary to execute a program cyclelimited time. Because in a chain of processes the longThe speed of the entire process determines the effortrequired response time of a machine as short as possiblehold to increase productivity. At short reaction timeTo guarantee this, it is necessary to cover the duration of oneKeep the program cycle as low as possible. This enableslight is also more sensitive and precise to the positionact on limbs. In contrast, the calculation ofControl signals using fuzzy rules are complex. Itmuch computing time is required, such as for numericalIntegrations so that the use of fuzzy rules the Zyklusetime increased. Since programmable logic controllers ur originally only worked with logical comparisons and onlyFurther developments the implementation of simple arithmetioperations enabled and the programmableControl systems are not designed for such internal work processescomplex mathematical operations are either donenot possible or only very cumbersome and slow. Therebyis the one required by a programmable logic controllerComputing time for the calculation of the manipulated variable and thus the cycletime too long to be able to process at a reasonable speedto control.
Aufgabe der Erfindung ist es, für die gattungsgemäß zugrundegelegte speicherprogrammierbare Steuerung das Steuerungsverfahren nach den Regeln der Fuzzy-Logik dahingehend zu verbessern, daß die von der Steuerung zur Ermittlung der Stellgröße benötigten Steuer- und Zyklenzeiten auf praxistaugliche Werte verringert werden.The object of the invention is for those of the generic typeprogrammable logic controller laid the control procedureaccording to the rules of fuzzy logic to improve thatthose required by the controller to determine the manipulated variableControl and cycle times reduced to practical valueswill.
Diese Aufgabe wird bei Zugrundelegung der gattungsgemäßen speicherprogrammierten Steuerung erfindungsgemäß durch die kennzeichnenden Merkmale von Anspruch 1 gelöst.This task is based on the generic speicherprogrammed control according to the invention by the kennDrawing features of claim 1 solved.
In dem Artikel "Fuzzy Control - heuristische Regelung mittels unscharfer Logik" in der Zeitschrift "Automatisierungstechnische Praxis" ATP 4/1992 Seite 176ff., fortgesetzt in 5/1992 Seite 239ff., werden die Regeln vorgestellt und beschrieben, nach denen unscharfe logische Schlüsse ermittelt und nach denen bei Steuerungen aus gemessenen Zustandsgrößen ein Stellsignal berechnet wird. In der Praxis haben sich die in dem Artikel vorgestellte "Min-Max"-Methode zur Durchführung unscharfer logischer Schlüsse und die Schwerpunktmethode zur Berechnung eines Stellsignales aus dem Ergebnis der "Min-Max"-Methode durchgesetzt. Zur Berechnung eines Stellsignales nach der Schwerpunktmethode ist es allerdings notwendig, numerische Integrationen durchzuführen. Numerische Integrationen sind aber sehr rechenintensiv und daher nicht in vernünftigem Rechenzeitaufwand auf speicherprogrammierbaren Steuerungen durchführbar. Noch aufwendiger als die Schwerpunktberechnung selbst ist Berechnung der Schnittpunkte der sich überlagernden Zugehörigkeitsfunktionen der Fuzzy-Regeln.In the article "Fuzzy Control - heuristic regulation by means offuzzy logic "in the magazine" Automatisierungstechnipractice "ATP 4/1992 page 176ff., continued in 5/1992Page 239ff., The rules are presented and described,according to which fuzzy logical conclusions are determined and according to whichin the case of controls from measured state variables, an actuating signalis calculated. In practice, those in the articlepresented "Min-Max" method for performing blurredlogical conclusions and the main method of calculationan actuating signal from the result of the "Min-Max" methodenforced. To calculate an actuating signal after thePriority method, however, it is necessary to use numerical To carry out integrations. However, numerical integrations arevery computationally intensive and therefore not in reasonable computing timeeffort can be carried out on programmable logic controllers.Be is even more complex than the center of gravity calculation itselfcalculation of the intersection of the overlapping associatedfunctions of the fuzzy rules.
Um die Aufgabe zu lösen, muß die speicherprogrammierbare Steuerung so weit wie möglich von zeitaufwendigen Berechnungen befreit werden. Als eine Möglichkeit, dies zu realisieren, schlägt der Artikel "Fuzzy Control - heuristische Regelung mittels unscharfer Logik" vor, nach Art eines Kennfeldes in einer Matrix die Stellgröße in Abhängigkeit von der/den Zustandsgröße(n) der Eingangsvariable(n) abzuspeichern. Dabei werden nur die Stellgrößen bestimmter Werte der Zustandsgrößen abgespeichert, dazwischenliegende Werte sollen mittels Interpolation bestimmt werden. Diese Methode wäre zwar auf speicherprogrammierbaren Steuerungen anwendbar, aber die notwendigen numerisch auszuführenden Interpolationen sind ebenfalls rechenintensiv. Ferner ist der Speicherplatzbedarf, insbesondere wenn mehrere Steuerungssignale von der Steuerung berücksichtigt werden, äußerst groß.In order to solve the task, the programmable logic controlleras far as possible from time-consuming calculationsbecome free. As one way of realizing this, suggeststhe article "Fuzzy Control - heuristic regulation using unsharp logic "before, in the manner of a map in a matrixthe manipulated variable as a function of the state variable (s)Save input variable (s). Only the positionsizes of certain values of the state variables are stored becauseIntermediate values should be determined using interpolationwill. This method would be programmableControls applicable, but the necessary numerical executionInterpolations are also computationally intensive. Furtheris the storage space requirement, especially if there are several taxestion signals from the controller are taken into account, extremelylarge.
Erfindungsgemäß erfolgt die Berechnung des Schwerpunktes, der die Stellgröße bestimmt, aus den einzelnen Zugehörigkeitsfunktionen nach einem anderen Verfahren, das es erlaubt, die von der speicherprogrammierbaren Steuerung durchzuführenden Berechnungen auf eine kleine Anzahl von einfachen Operationen zurückzuführen, wobei auf eine begrenzte Anzahl vorausberechenbarer und stets benutzter Zwischenergebnisse der Berechnung aus einem dafür reservierten Speicherbereich der speicherprogrammierbaren Steuerung zurückgegriffen wird. Die Berechnung dieser Zwischenergebnisse ist nur einmal notwendig. Sie kann auf einem Rechner vorab stattfinden und die Zwischenergebnisse können dann bei der Programmierung der speicherprogrammierbaren Steuerung direkt in dem dafür reservierten Speicherbereich abgelegt werden. Ein weiterer Vorteil der im Folgenden beschriebenen Methode ist es, daß der nach dem erfindungsgemäßen Verfahren berechnete Gesamtschwerpunkt dem nach der bekannten Schwerpunktmethode berechneten Schwerpunkt entspricht.According to the invention, the calculation of the center of gravity takes placedetermines the manipulated variable from the individual membership radiotion according to another procedure which allows that ofthe programmable logic controller to be performedback to a small number of simple operationsfeed, being predictable to a limited numberand always used intermediate results of the calculation from onereserved memory area for the programmable logic controllerControl is used. Calculating this intermediateresults are only necessary once. You can on a computertake place in advance and the interim results can then be sent to programming the programmable logic controller distored directly in the memory area reserved for this.Another advantage of the method described below isit that the calculated according to the inventive methodOverall focus on the known focus methodcalculated center of gravity corresponds.
Bei dem erfindungsgemäßen Verfahren wird der Wertebereich der Steuerungssignale in verschiedene Teilbereiche, die sich überlappen können, unterteilt und jedem dieser Teilbereiche eine Zugehörigkeitsfunktion der Zustandsgröße in dem Teilbereich zugeordnet. Daneben wird jeder dieser Zugehörigkeitsfunktionen in ihrem von dem Wahrheitswert Null verschiedenen Wertebereich eine konstante Zugehörigkeitsfunktion im "Dann-Teil" zugeordnet. Als Abszissenwert des Einzelschwerpunktes xk, der k-ten Zugehörigkeitsfunktion, wird der Abszissenwert des Schwerpunktes des aus der Breite des Wertebereiches und aus dem Wert der konstanten Zugehörigkeitsfunktion des "Dann-Teiles" gebildeten Fläche Ak verwendet. Im Folgenden werden einfachheitshalber an Stelle der Bezeichnungen "Abszissenwert des (Einzel-)Schwerpunktes" kurz die Bezeichnungen "(Einzel-)Schwerpunkt" benutzt, da in dem Verfahren nur die Abszissenwerte von Bedeutung sind und die Ordinatenwerte der Zugehörigkeitsfunktionen in den Schwerpunkten zu Ermittlung des Stellsignales nicht benötigt werden. Die Zahlenwerte Ak und xk werden nach der Festlegung der Zugehorigkeitsfunktionen einmal berechnet und danach in ihnen jeweils zugeordneten, direkt durch die Prozessoreinheit der speicherprogrammierbaren Steuerung zugänglichen Speicherbereichen abgespeichert. Die Berechnung des Gesamtschwerpunktes erfolgt dann in durch die speicherprogrammierbare Steuerung als durch den Wert uk der jeweiligen Zugehörigkeitsfunktion für das gemessene Steuerungssignal gewichtetes Mittel aus den Einzelschwerpunkten xk der Zugehörigkeitsfunktionen und den Werten der Fläche Ak nach der Formel:In the method according to the invention, the range of values of the control signals is subdivided into different sub-areas that can overlap and each of these sub-areas is assigned a membership function of the state variable in the sub-area. In addition, a constant membership function in the "then part" is assigned to each of these membership functions in their value range that differs from the zero truth value. As the abscissa value of the individual center of gravity xk , the kth membership function, the abscissa value of the center of gravity t of the area Ak formed from the width of the value range and from the value of the constant membership function of the "then part" is used. In the following, for the sake of simplicity, the terms "abscissa value of the (single) focus", in short the terms "(single) focus" are used, since only the abscissa values are important in the method and the ordinate values of the membership functions in the focus to be determined of the control signal are not required. The numerical values Ak and xk are calculated once after the membership functions have been determined and then stored in memory areas which are respectively assigned to them and are directly accessible by the processor unit of the programmable logic controller. The total center of gravity is then calculated in the programmable logic controller as the mean weighted by the value uk of the respective membership function for the measured control signal from the individual centers of gravity xk of the membership functions and the values of the area Ak according to the formula:
Von der speicherprogrammierbaren Steuerung sind während eines Programmzyklus dann nur noch eine Division sowie zwei m-gliedrige Summationen durchzuführen, wobei die Summandenen jeweils aus dem Produkt eines bzw. zweier an einem bekannten Speicherplatz abgelegten Zahlenwertes mit dem in jedem Zyklus zu berechnenden konstanten Wert uk der jeweiligen Zugehörigkeitsfunktion für das gemessene Steuerungssignal bestehen. Dabei ist m die Anzahl der Zugehörigkeitsfunktionen. Werden mehrere Steuerungssignale berücksichtigt, so erhöht sich die Anzahl der abzuspeichernden Zahlenwerte linear um die Anzahl der hinzukommenden Zugehörigkeitsfunktionen. So sind beispielsweise bei vier zu berücksichtigenden Steuerungssignalen, deren Wertebereich von jeweils drei Zugehörigkeitsfunktionen abgedeckt wird, in jeder Summe nur m=12 Glieder zu berechnen und zu addieren und es müssen insgesamt nur 24 Zahlenwerte Ak, uk abgespeichert werden.From the programmable logic controller, only one division and two m-element summations are then to be carried out during a program cycle, the summands each consisting of the product of one or two numerical values stored in a known memory location with the constant value to be calculated in each cycle uk of the respective membership function for the measured control signal. M is the number of membership functions. If several control signals are taken into account, the number of numerical values to be stored increases linearly by the number of membership functions to be added. For example, with four control signals to be taken into account, the value range of which is covered by three membership functions, only m = 12 elements have to be calculated and added in each sum and only a total of 24 numerical values Ak , uk have to be stored.
Zweckmäßige Ausgestaltungen der Erfindung können den Unteransprüchen entnommen werden.Advantageous embodiments of the invention can the Unteransayings are taken.
Um eine weitere Verkürzung der von der speicherprogrammierbaren Steuerung benötigten Rechenzeit zu erzielen, kann man das Produkt Bk=A *xk aus der Größe der Fläche Ak und dem Einzelschwerpunkt xk der Zugehörigkeitsfunktionen ebenfalls vorberechnet anstelle des Einzelschwerpunktes xk in dem Speicher abgelegen. Man spart dadurch in jedem Programmzyklus m Multiplikationen, ohne an der Art der Berechnung etwas zu modifizieren.To achieve a further reduction in the computing time required by the programmable logic controller, the product Bk = A* xk can also be precalculated from the size of the area Ak and the individual center of gravity xk of the membership functions instead of the individual center of gravity xk in the Out of memory. This saves m multiplications in each program cycle without modifying the type of calculation.
Wenn man für alle Zugehörigkeitsfunktionen der Wert der konstanten Zugehörigkeitsfunktion im "Dann-Teil" als gleich groß festsetzt, kann man die Rechenzeit des speicherprogrammierbaren Steuerung weiter verringern. Die Berechnungsformel für den Schwerpunkt reduziert sich dann nämlich auf:If one considers the value of the conconstant membership function in the "then part" as the same sizefixes, one can calculate the computing time of the programmable Reduce control further. The calculation formula for theThe focus is then reduced to:
Dadurch werden die zur Berechnung der Summenglieder notwendigen Multiplikationen weiter reduziert.This makes the necessary for the calculation of the sum elementsMultiplications further reduced.
Im Gegensatz zu diesen die Rechenzeit der speicherprogrammierbaren Steuerung verringernden Maßnahmen kann man auch jedem Einzelschwerpunkt ein von der Zugehörigkeitsfunktion des "Dann-Teiles" unabhängigen Wichtungsfaktor zuordnen. Dadurch gewinnt man einen direkten Einfluß auf das Steuerungsverhalten, erhöht jedoch die in jedem Zyklus durchzuführenden mathematischen Operationen. Die Wichtungsfaktoren werden vorzugsweise in einem für sie reservierten Speicherbereich abgespeichert.In contrast to this the computing time of the memory programmerYou can also take measures to reduce controlSingle focus one from the membership function of the "Then-Assign part "independent weighting factoryou gain a direct influence on the control behavior,however, increases the mathematics to be performed in each cycleoperations. The weighting factors are preferably ina memory area reserved for them.
Der Steuerungsablauf erfolgt nach folgendem Muster. Von den Signalgebern wird ein Steuerungssignal als Maß für die gemessene Zustandsgröße an die Prozessoreinheit geleitet. Diese ermittelt den Wert der Zugehörigkeitsfunktionen für die Steuerungssignale. Anschließend erfolgt die Schwerpunktberechnung unter direktem Zugriff auf die in dem Speicher abgelegten Zahlenwerte für die Schwerpunkte xk und die Fläche Ak. Aus dem Schwerpunkt ermittelt die Prozessoreinheit dann die an die Stellglieder zu übermittelnden Stellsignale.The control process follows the following pattern. A control signal is sent from the signal transmitters to the processor unit as a measure of the measured state variable. This determines the value of the membership functions for the control signals. The center of gravity calculation is then carried out with direct access to the numerical values stored in the memory for the center of gravity xk and the area Ak . The processor unit then determines the control signals to be transmitted to the actuators from the center of gravity.
| Application Number | Priority Date | Filing Date | Title | 
|---|---|---|---|
| DE4230756ADE4230756A1 (en) | 1992-09-15 | 1992-09-15 | Stored-program control in accordance with fuzzy logic principles - involves defuzzification by centre-of-gravity computation of fuzzy conclusions obtd. from defined regional pertinence functions | 
| Application Number | Priority Date | Filing Date | Title | 
|---|---|---|---|
| DE4230756ADE4230756A1 (en) | 1992-09-15 | 1992-09-15 | Stored-program control in accordance with fuzzy logic principles - involves defuzzification by centre-of-gravity computation of fuzzy conclusions obtd. from defined regional pertinence functions | 
| Publication Number | Publication Date | 
|---|---|
| DE4230756A1true DE4230756A1 (en) | 1993-11-04 | 
| Application Number | Title | Priority Date | Filing Date | 
|---|---|---|---|
| DE4230756AWithdrawnDE4230756A1 (en) | 1992-09-15 | 1992-09-15 | Stored-program control in accordance with fuzzy logic principles - involves defuzzification by centre-of-gravity computation of fuzzy conclusions obtd. from defined regional pertinence functions | 
| Country | Link | 
|---|---|
| DE (1) | DE4230756A1 (en) | 
| Publication number | Priority date | Publication date | Assignee | Title | 
|---|---|---|---|---|
| DE4439225A1 (en)* | 1993-12-27 | 1995-06-29 | Ford Motor Co | Defuzzification method for fuzzy logic output signals and controller device therefor | 
| DE4440094C1 (en)* | 1994-10-13 | 1996-02-29 | Vms Gmbh Vollenbroich Mecatron | Motion control of rotary inertia loads e.g. for sewing machine drive shaft | 
| US5764855A (en)* | 1994-04-29 | 1998-06-09 | Siemens Aktiengesellschaft | Method for fuzzifying input signals present at the inputs of a fuzzy processor by using input membership functions | 
| DE10144441A1 (en)* | 2001-09-06 | 2003-03-27 | Biotronik Mess & Therapieg | Fuzzy inference engine | 
| Publication number | Priority date | Publication date | Assignee | Title | 
|---|---|---|---|---|
| DE3936503A1 (en)* | 1988-11-04 | 1990-05-10 | Olympus Optical Co | Digital fuzzy logic controller - has parallel processing stages to operate on specific parameters for fast operation | 
| Publication number | Priority date | Publication date | Assignee | Title | 
|---|---|---|---|---|
| DE3936503A1 (en)* | 1988-11-04 | 1990-05-10 | Olympus Optical Co | Digital fuzzy logic controller - has parallel processing stages to operate on specific parameters for fast operation | 
| Title | 
|---|
| GRÖTSCH, E.: "Speicherprogrammierbare Steuerungen: Abgrenzung und Definition" in: Automatisierungstechnische Praxis 31 (1989), H. 6, S. 264-271* | 
| PREUSS, H.P.: "Fuzzy Control-heuristische Regelung mittels unscharfer Logik" in: Automatisierungstechnische Praxis 34 (1992), H. 5, S. 239-246* | 
| SCHRÖDER, E.: "Prüfstandsteuerung mit Fuzzy- Logik" in: Messen & Prüfen Mai 1992, S. 48, 49* | 
| Publication number | Priority date | Publication date | Assignee | Title | 
|---|---|---|---|---|
| DE4439225A1 (en)* | 1993-12-27 | 1995-06-29 | Ford Motor Co | Defuzzification method for fuzzy logic output signals and controller device therefor | 
| DE4439225B4 (en)* | 1993-12-27 | 2005-01-27 | Ford Motor Company, Dearborn | Defuzzification method for fuzzy logic output signals and controller device for this purpose | 
| US5764855A (en)* | 1994-04-29 | 1998-06-09 | Siemens Aktiengesellschaft | Method for fuzzifying input signals present at the inputs of a fuzzy processor by using input membership functions | 
| DE4440094C1 (en)* | 1994-10-13 | 1996-02-29 | Vms Gmbh Vollenbroich Mecatron | Motion control of rotary inertia loads e.g. for sewing machine drive shaft | 
| DE10144441A1 (en)* | 2001-09-06 | 2003-03-27 | Biotronik Mess & Therapieg | Fuzzy inference engine | 
| Publication | Publication Date | Title | 
|---|---|---|
| DE102018000342B4 (en) | NUMERICAL CONTROL AND MACHINE LEARNING DEVICE | |
| DE69225723T2 (en) | Two-stage system identification device with optimization | |
| DE3883192T2 (en) | Neural network circuit and structure. | |
| DE102017011544A1 (en) | Control and machine learning device | |
| DE29521338U1 (en) | Computer with a neutral network | |
| EP3701433B1 (en) | Method, device and computer program for developing a deep neural network | |
| DE3889039T2 (en) | SELF-PROGRAMMING PROCEDURE. | |
| DE69319716T2 (en) | Chaos feedback system | |
| DE69228517T2 (en) | Simulator using a neural network | |
| DE102019113229B4 (en) | Programmable Controller and Machine Learning Device | |
| EP3953865B1 (en) | Method, device, and computer program for operating a deep neural network | |
| EP0875808A2 (en) | Method and system for generating a process model of a technical installation | |
| DE69026324T2 (en) | Regulator with two degrees of freedom | |
| EP0419706A1 (en) | Method for position or path control | |
| DE3750428T2 (en) | CRUISE CONTROL ARRANGEMENT. | |
| DE4230756A1 (en) | Stored-program control in accordance with fuzzy logic principles - involves defuzzification by centre-of-gravity computation of fuzzy conclusions obtd. from defined regional pertinence functions | |
| DE69118981T2 (en) | Facility for "fuzzy" inference | |
| DE69203592T2 (en) | Electronic fuzzy logic control and associated memory construction method. | |
| EP3542317A1 (en) | Model-calculating unit and control device for selectively calculating an rbf model, a gaussian process model, and an mlp model | |
| EP0561813B1 (en) | Method of determining pilot position-control parameters | |
| EP0791192B1 (en) | Process for designing a fuzzy-controller | |
| DE68928071T2 (en) | Apparatus and method for generating fuzzy inference rules | |
| EP0600569B1 (en) | Method for evaluating a number of linguistic rules | |
| DE69313622T2 (en) | Storage organization method for a control with fuzzy logic and device for it | |
| DE19827238B4 (en) | Method for operating a vector computer | 
| Date | Code | Title | Description | 
|---|---|---|---|
| OAV | Applicant agreed to the publication of the unexamined application as to paragraph 31 lit. 2 z1 | ||
| OP8 | Request for examination as to paragraph 44 patent law | ||
| 8130 | Withdrawal |