DE102012104359B4 - Method and device for driving a plurality of actuators - Google Patents
Method and device for driving a plurality of actuators Download PDFInfo
- Publication number
- DE102012104359B4 DE102012104359B4 DE201210104359 DE102012104359A DE102012104359B4 DE 102012104359 B4 DE102012104359 B4 DE 102012104359B4 DE 201210104359 DE201210104359 DE 201210104359 DE 102012104359 A DE102012104359 A DE 102012104359A DE 102012104359 B4 DE102012104359 B4 DE 102012104359B4
- Authority
- DE
- Germany
- Prior art keywords
- value
- actuator
- time
- slope
- calculated
- 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.)
- Expired - Fee Related
Links
Images
Classifications
-
- H—ELECTRICITY
- H02—GENERATION; CONVERSION OR DISTRIBUTION OF ELECTRIC POWER
- H02P—CONTROL OR REGULATION OF ELECTRIC MOTORS, ELECTRIC GENERATORS OR DYNAMO-ELECTRIC CONVERTERS; CONTROLLING TRANSFORMERS, REACTORS OR CHOKE COILS
- H02P23/00—Arrangements or methods for the control of AC motors characterised by a control method other than vector control
- H02P23/0004—Control strategies in general, e.g. linear type, e.g. P, PI, PID, using robust control
- H02P23/0031—Control strategies in general, e.g. linear type, e.g. P, PI, PID, using robust control implementing a off line learning phase to determine and store useful data for on-line control
-
- 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
- G05B11/00—Automatic controllers
- G05B11/01—Automatic controllers electric
- G05B11/36—Automatic controllers electric with provision for obtaining particular characteristics, e.g. proportional, integral, differential
- G05B11/42—Automatic controllers electric with provision for obtaining particular characteristics, e.g. proportional, integral, differential for obtaining a characteristic which is both proportional and time-dependent, e.g. P.I., P.I.D.
-
- 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/0205—Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric not using a model or a simulator of the controlled system
-
- H—ELECTRICITY
- H02—GENERATION; CONVERSION OR DISTRIBUTION OF ELECTRIC POWER
- H02P—CONTROL OR REGULATION OF ELECTRIC MOTORS, ELECTRIC GENERATORS OR DYNAMO-ELECTRIC CONVERTERS; CONTROLLING TRANSFORMERS, REACTORS OR CHOKE COILS
- H02P5/00—Arrangements specially adapted for regulating or controlling the speed or torque of two or more electric motors
- H02P5/74—Arrangements specially adapted for regulating or controlling the speed or torque of two or more electric motors controlling two or more ac dynamo-electric motors
Abstract
Verfahren (100) zum Ansteuern mehrerer Stellglieder (S1, S2, ... Sn) für das Ändern von Prozesswerten (PW) in einem Prozess mit folgenden Schritten: – es wird für das Verstellen eines jeden Stellgliedes (S1) eine Stellgröße (STG1) ermittelt, die eine Abweichung eines Istwertes (IST) von einem Sollwert (SOLL) angibt; – es wird für jedes Stellglied (S1) eine individuelle Verstellzeit (VZ1) berechnet, die eine Impulsdauer für das Einwirken der Stellgröße (STG1) auf das Stellglied (S1) angibt (Schritt 120), wobei die Verstellzeit (VZ1) abhängig von einem Steigungswert (F_M) berechnet wird, der angibt, mit welcher Geschwindigkeit der mittels des verstellten Stellgliedes (S1) geänderte Prozesswert (PW) sich ändert; und – das jeweilige Stellglied (S1) wird für die berechnete individuelle Verstellzeit (VZ1) mit der Stellgröße (STG1) angesteuert (Schritt 130), wobei die individuelle Verstellzeit (VZ1) mit einem Spielzeitwert (F_CLR) beaufschlagt wird (Schritt 123), der angibt, mit welcher Reaktionszeit das Verstellen des jeweiligen Stellgliedes (S1) erfolgt, wenn die Stellgröße (STG1) eine Veränderung mit einem Vorzeichenwechsel aufweist, und wobei zumindest einmalig vor der ersten Berechnung der Verstellzeit (Schritt 120) eine Lernprozedur (101) zur Berechnung eines ersten Steigungswertes (F_M') durchgeführt wird, wobei die Lernprozedur (101) eine Lernphase (103) umfasst, in welcher folgende Teilschritte durchgeführt werden: das Stellglied (S1) wird mindestens zweimal für eine vorgebbare Zeitdauer (A_OTADJ) auf einen ersten Zustand (AUF) hin angesteuert, so dass in einem Prozess ein erster Prozesswert (F_PV1) und ein zweiter Prozesswert (F_PV2) erreicht werden, und es werden mindestens zwei Teilsteigungswerte (F_M1, F_M2) ermittelt, die angeben, mit welcher Geschwindigkeit der jeweilige Prozesswert erreicht wird, wenn auf den ersten Zustand (AUF) hin angesteuert wird, wobei der erste Steigungswert (F_M') durch eine Mittelwertbildung der Teilsteigungswerte (F_M1, F_M2) berechnet wird.Method (100) for controlling several actuators (S1, S2, ... Sn) for changing process values (PW) in a process with the following steps: - A manipulated variable (STG1) is used to adjust each actuator (S1) determined, which indicates a deviation of an actual value (ACTUAL) from a target value (TARGET); - An individual adjustment time (VZ1) is calculated for each actuator (S1), which specifies a pulse duration for the actuating variable (STG1) to act on the actuator (S1) (step 120), the adjustment time (VZ1) depending on a slope value (F_M) is calculated, which indicates the speed at which the process value (PW) changed by means of the adjusted actuator (S1) changes; and - the respective actuator (S1) is controlled for the calculated individual adjustment time (VZ1) with the manipulated variable (STG1) (step 130), the individual adjustment time (VZ1) being acted upon by a play time value (F_CLR) (step 123), which specifies the response time with which the respective actuator (S1) is adjusted if the manipulated variable (STG1) has a change with a change of sign, and a learning procedure (101) for calculating a step (101) at least once before the first calculation of the adjustment time (step 120) first slope value (F_M ') is carried out, the learning procedure (101) comprising a learning phase (103) in which the following sub-steps are carried out: the actuator (S1) is at least twice for a predefinable period (A_OTADJ) to a first state (OPEN ) controlled so that a first process value (F_PV1) and a second process value (F_PV2) are achieved in a process Two partial slope values (F_M1, F_M2) are determined, which indicate the speed at which the respective process value is reached when the first state (OPEN) is activated, the first slope value (F_M ') being determined by averaging the partial slope values (F_M1, F_M2 ) is calculated.
Description
Die Erfindung betrifft ein Verfahren zum Ansteuern mehrerer Stellglieder sowie eine Vorrichtung zum Durchführen des Verfahrens. Außerdem betrifft die Erfindung die Verwendung einer solchen Vorrichtung in einem rechnergestützten System oder Subsystem, das mehrere Stellglieder ansteuert. Beispielsweise betrifft die Erfindung auch Prozessleitsysteme, die Prozesse, insbesondere Glas-Herstellungsprozesse oder -Verarbeitungsprozesse, durchführen und überwachen, wobei mittels Verstellen der Stellglieder einzelne oder mehrere Prozesswerte des jeweiligen Prozesses veränderbar sind.The invention relates to a method for driving a plurality of actuators and an apparatus for performing the method. Moreover, the invention relates to the use of such a device in a computerized system or subsystem that drives multiple actuators. For example, the invention also relates to process control systems that perform and monitor processes, in particular glass production processes or processing processes, wherein individual or multiple process values of the respective process can be changed by adjusting the actuators.
Verfahren und Vorrichtungen zur Beeinflussung von Prozessen, insbesondere Regelungsvorrichtungen, wie z. B. klassische PID-Regler (Zweipunkt oder Dreipunkt) sind hinlänglich bekannt. Der Einsatz solcher klassischen Regler ist besonders bei komplexen Prozessen, bei denen eine größere Anzahl von Stellgliedern benötigt wird, recht material- und kostenintensiv. Diese Probleme, welche die Anmelderin im Bereich der Glasherstellung und -verarbeitung, z. B. bei der Prozess-Überwachung und Ansteuerung von Schmelzaggregaten, erfahren musste, treten aber auch allgemein in anderen Bereichen immer dort auf, wo Stellglieder, die eine Motorik aufweisen, in einer größeren Vielzahl angesteuert werden müssen.Methods and devices for influencing processes, in particular control devices, such. B. classical PID controller (two-point or three-point) are well known. The use of such classical controller is quite material and cost intensive especially in complex processes in which a larger number of actuators is needed. These problems, which the applicant in the field of glass production and processing, for. As in the process monitoring and control of melting units, had experienced, but also generally occur in other areas always where actuators, which have a motor, must be controlled in a larger variety.
Der Einsatz herkömmlicher PID-Regler erweist sich als kostenintensiv; außerdem ist die übliche Regelung sehr langsam. Da stetig das jeweilige Stellglied angesteuert werden muss, ist der Verschleiß an den Stellgliedern erheblich. Beispielsweise zeigte sich dieser Verschleiß an großen Regeltransformatoren darin, dass die Wicklungen an den Abgriffstellen beschädigt wurden.The use of conventional PID controllers proves to be costly; besides, the usual regulation is very slow. Since the respective actuator must be controlled continuously, the wear on the actuators is considerable. For example, this wear on large variable transformers has been shown to damage the windings at the taps.
Die üblichen Stellglieder bestehen häufig aus einem angesteuerten Elektromotor mit Getriebe bzw. einem Aktuator. Solche Aktuator-Einheiten weisen zwangsläufig störende Hoch- und Nachlaufzeiten auf und sind in der Regel mit Hysterese behaftet. Bei Drehrichtungs-Änderungen treten, bedingt durch das Getriebespiel, störende Spielzeiten auf. Wegen dieser typischen Stellglied-Eigenschaften, können Zwei- oder Dreipunktregler nur stark gedämpft eingesetzt werden. Viele Stellglieder werden deshalb manuell von Hand angesteuert, stündlich kontrolliert und ggf. nachgestellt. Dieses Verfahren ist bei einen Anzahl von z. B. etwa 100 Stellgliedern pro Schmelzaggregat sehr arbeitsaufwendig, zeitintensiv und ungenau.The usual actuators often consist of a driven electric motor with gear or an actuator. Such actuator units inevitably have disturbing up and down times and are generally subject to hysteresis. When changes in direction occur, due to the gear play, disturbing playtime. Because of these typical actuator characteristics, two- or three-position controllers can only be used heavily damped. Many actuators are therefore controlled manually by hand, checked hourly and possibly readjusted. This method is at a number of z. B. about 100 actuators per melting unit very laborious, time-consuming and inaccurate.
Aus der offengelegten Patentanmeldung
Aus der Patentschrift
Aus der Patentschrift
In der offengelegten Patentanmeldung
In der offengelegten Patentanmeldung
Der genannte Stand der Technik befasst sich allenfalls mit der Ansteuerung einzelner Stellglieder. Es besteht daher ein großer Bedarf, ein Verfahren und eine Vorrichtung zu entwickeln, um eine Ansteuerung einer Vielzahl von Stellgliedern ohne die eingangs genannten Nachteile durchführen zu können. Insbesondere soll eine schnelle und genaue Ansteuerung mehrerer Stellglieder ermöglicht werden, ohne auf die bekannten kosten- und arbeitsintensiven Lösungen zurückgreifen zu müssen.The cited prior art deals at most with the control of individual actuators. There is therefore a great need to develop a method and a device in order to be able to carry out a control of a plurality of actuators without the disadvantages mentioned above. In particular, a quick and accurate control of multiple actuators to be enabled without having to resort to the known cost and labor intensive solutions.
Gelöst wird die Aufgabe durch ein Verfahren mit den Merkmalen des Anspruchs 1 sowie durch eine danach arbeitende Vorrichtung mit den Merkmalen des Anspruchs 16.The object is achieved by a method having the features of
Demnach wird ein Verfahren zum Ansteuern mehrerer Stellglieder vorgeschlagen, das folgende Schritte aufweist:
Es wird für das Verstellen eines jeden Stellgliedes eine Stellgröße ermittelt, die eine Abweichung eines Istwertes von einem Sollwert angibt.
Es wird für jedes Stellglied eine individuelle Verstellzeit berechnet, die eine Impulsdauer für das Einwirken der Stellgröße auf das Stellglied angibt, wobei die Verstellzeit abhängig von einem Steigungswert berechnet wird, der angibt, mit welcher Geschwindigkeit der Prozesswert verändert werden kann.
Das jeweilige Stellglied wird für die berechnete individuelle Verstellzeit mit der Stellgröße angesteuert.Accordingly, a method for driving a plurality of actuators is proposed, comprising the following steps:
It is determined for the adjustment of each actuator a manipulated variable indicating a deviation of an actual value of a target value.
An individual adjustment time is calculated for each actuator, which indicates a pulse duration for the action of the control variable on the actuator, wherein the adjustment time is calculated as a function of a slope value which indicates with which speed the process value can be changed.
The respective actuator is controlled with the manipulated variable for the calculated individual adjustment time.
In dem erfindungsgemäßen Verfahren wird die individuelle Verstellzeit mit einem Spielzeitwert beaufschlagt, wenn eine Kompensation eines Spiels (Gewinde) angezeigt ist. Dies ist dann der Fall, wenn die Stellgröße eine Veränderung mit einem Vorzeichenwechsel aufweist, wenn also z. B. eine Drehrichtungswechsel im Aktuator vorliegt. Der Spielzeitwert gibt an, mit welcher Reaktionszeit (Verzögerung aufgrund von Spiel) das Verstellen des jeweiligen Stellgliedes erfolgt.In the method according to the invention, the individual adjustment time is subjected to a game time value if a compensation of a game (thread) is indicated. This is the case when the manipulated variable has a change with a sign change, so if z. B. a change of direction in the actuator is present. The game time value indicates with which reaction time (delay due to game) the adjustment of the respective actuator takes place.
Außerdem wird in dem Verfahren zumindest einmalig vor der ersten Berechnung der Verstellzeit eine Lernprozedur zur Berechnung eines ersten Steigungswertes durchgeführt, wobei die Lernprozedur eine Lernphase umfasst, in welcher folgende Teilschritte durchgeführt werden:
das Stellglied wird mindestens zweimal für eine vorgebbare Zeitdauer auf einen ersten Zustand hin angesteuert, so dass in einem Prozess ein erster Prozesswert und ein zweiter Prozesswert erreicht werden, und
es werden mindestens zwei Teilsteigungswerte ermittelt, die angeben, mit welcher Geschwindigkeit der jeweilige Prozesswert erreicht wird, wenn auf den ersten Zustand hin angesteuert wird, wobei der erste Steigungswert durch eine Mittelwertbildung der Teilsteigungswerte berechnet wird.In addition, in the method, a learning procedure for calculating a first slope value is performed at least once before the first calculation of the adjustment time, wherein the learning procedure comprises a learning phase in which the following partial steps are performed:
the actuator is driven at least twice for a predetermined period of time to a first state, so that in a process, a first process value and a second process value can be achieved, and
at least two partial slope values are determined, which indicate the speed with which the respective process value is reached when the first state is triggered, wherein the first slope value is calculated by averaging the partial slope values.
Ebenso wird eine Vorrichtung zum Ansteuern mehrerer Stellglieder vorgeschlagen, wobei die Vorrichtung zur Durchführung des erfindungsgemäßen Verfahrens beschaffen ist und mindestens eine Recheneinheit aufweist. Die Recheneinheit ermittelt bzw. berechnet für das Verstellen eines jeden Stellgliedes eine Stellgröße, die eine Abweichung eines Istwertes von einem Sollwert angibt. Des Weiteren berechnet die Recheneinheit für jedes Stellglied eine individuelle Verstellzeit, die eine Impulsdauer für das Einwirken der Stellgröße auf das Stellglied angibt, wobei die Verstellzeit abhängig von einem Steigungswert ist, der angibt, mit welcher Geschwindigkeit die Prozessgröße (Prozesswert) beeinflußt wird. Die Recheneinheit ist mit mindestens einer Treibereinheit verbunden, die das jeweilige Stellglied für die berechnete individuelle Verstellzeit mit der Stellgröße ansteuert.Likewise, a device for driving a plurality of actuators is proposed, wherein the device is designed to carry out the method according to the invention and has at least one arithmetic unit. The arithmetic unit determines or calculates for the adjustment of each actuator, a manipulated variable indicating a deviation of an actual value of a target value. Furthermore, the arithmetic unit calculates for each actuator an individual adjustment time, which indicates a pulse duration for the action of the control variable on the actuator, wherein the adjustment time is dependent on a slope value indicating the speed with which the process variable (process value) is influenced. The arithmetic unit is connected to at least one driver unit, which controls the respective actuator for the calculated individual adjustment time with the manipulated variable.
Das Verfahren und die entsprechend danach arbeitende Vorrichtung, die z. B. ein Rechnersystem sein kann, ermöglichen es, dass sehr viele Stellglieder individuell mit einer berechneten Impulszeit in Richtung einer Stellgröße (z. B. AUF oder AB) mit einer hohen Geschwindigkeit und Genauigkeit verstellt werden können. Die für die Berechnung erforderlichen Stellglied-Eigenschaften (Steigung und ggf. Spielzeit) kann die mindestens eine Recheneinheit, welche vorzugsweise als ein digitaler Funktionsblock ausgebildet ist, auf Anforderung selbständig ermitteln und speichern.The method and the accordingly working thereafter, the z. B. may be a computer system, allow that many actuators individually with a calculated pulse time in the direction of Manipulated variable (eg UP or DOWN) can be adjusted with a high speed and accuracy. The actuator properties required for the calculation (slope and possibly playing time) can be independently determined and stored on request by the at least one arithmetic unit, which is preferably designed as a digital function block.
Diese und weitere vorteilhafte Ausgestaltungen ergeben sich aus den Unteransprüchen:
Bei dem erfindungsgemäßen Verfahren kann zumindest einmalig vor der ersten Berechnung der Verstellzeit eine Lernprozedur zur Berechnung des Steigungswertes und/oder des Spielzeitwertes durchgeführt werden, wobei die Lernprozedur eine Lernphase umfasst, in welcher folgende Teilschritte durchgeführt werden:
das Stellglied wird mindestens einmal für eine vorgebbare Zeitdauer auf einen ersten Zustand hin angesteuert, so dass in einem Prozess ein erster Prozesswert erreicht wird, und
danach wird das Stellglied mindestens einmal für die vorgebbare Zeitdauer auf einen zweiten Zustand hin angesteuert, so dass in dem Prozess ein weiterer Prozesswert erreicht wird; und
es werden mindestens zwei Teilsteigungswerte ermittelt, die angeben, mit welcher Geschwindigkeit der jeweilige Prozesswert erreicht wird, wobei der Steigungswert durch eine Mittelwertbildung der Teilsteigungswerte berechnet wird.These and other advantageous embodiments emerge from the subclaims:
In the method according to the invention, a learning procedure for calculating the gradient value and / or the game time value can be carried out at least once before the first calculation of the adjustment time, wherein the learning procedure comprises a learning phase in which the following partial steps are carried out:
the actuator is driven at least once for a predetermined period of time to a first state, so that in a process, a first process value is achieved, and
Thereafter, the actuator is driven at least once for the predetermined period of time to a second state, so that in the process, a further process value is reached; and
at least two partial slope values are determined, which indicate with which speed the respective process value is reached, wherein the slope value is calculated by averaging the partial slope values.
Hierdurch werden durch mindestens eine Verstellung in die eine Richtung (zum ersten Zustand hin; z. B. AUF) und durch mindestens eine Verstellung in die andere (vorzugsweise entgegen gerichtete) Richtung (zweiter Zustand AB) die jeweiligen Teilsteigungen berechnet, aus denen dann die Gesamtsteigung gemittelt wird.As a result, the respective partial gradients are calculated by at least one adjustment in one direction (toward the first state, eg UP) and by at least one adjustment in the other direction (preferably in the opposite direction), from which then the Total slope is averaged.
Vorzugsweise kann ein erster Teilsteigungswert ermittelt werden, indem das Stellglied mindestens einmal in Richtung des ersten Zustands angesteuert wird, so dass ausgehend von einem Anfangs-Prozesswert ein erster Prozesswert erreicht wird, wobei eine erste Dauer ermittelt wird, die benötigt wird, um den ersten Prozesswert zu erreichen, wobei der Quotient aus der Differenz der Prozesswerte und der ersten Dauer den ersten Teilsteigungswert angibt.Preferably, a first partial slope value can be determined by the actuator being driven at least once in the direction of the first state, so that starting from an initial process value, a first process value is reached, wherein a first duration is determined, which is needed to the first process value to reach, wherein the quotient of the difference of the process values and the first duration indicates the first partial slope value.
Außerdem kann noch ein zweiter Teilsteigungswert ermittelt werden, indem das Stellglied nochmals in Richtung des ersten Zustands angesteuert wird, so dass ausgehend von dem ersten Prozesswert ein zweiter Prozesswert erreicht wird, wobei eine zweite Dauer ermittelt wird, die benötigt wird, um den zweiten Prozesswert zu erreichen, wobei der Quotient aus der Differenz der Prozesswerte und der zweiten Dauer den zweiten Teilsteigungswert angibt.In addition, a second partial gradient value can be determined by the actuator being controlled again in the direction of the first state, so that starting from the first process value, a second process value is reached, wherein a second duration is determined, which is required to the second process value reach, wherein the quotient of the difference of the process values and the second duration indicates the second partial slope value.
Des Weiteren kann ein dritter Teilsteigungswert ermittelt werden, indem das Stellglied in Richtung des zweiten Zustands angesteuert wird, so dass ausgehend von dem zweiten Prozesswert ein dritter Prozesswert erreicht wird, wobei eine dritte Dauer ermittelt wird, die benötigt wird, um den dritten Prozesswert zu erreichen, wobei der Quotient aus der Differenz der Prozesswerte und der dritten Dauer den dritten Teilsteigungswert angibt.Furthermore, a third partial slope value can be determined by actuating the actuator in the direction of the second state so that, starting from the second process value, a third process value is reached, whereby a third duration is determined, which is required to reach the third process value , where the quotient of the difference of the process values and the third duration indicates the third partial gradient value.
Auch kann noch ein vierter Teilsteigungswert ermittelt werden, indem das Stellglied nochmals in Richtung des zweiten Zustands angesteuert wird, so dass ausgehend von dem dritten Prozesswert ein vierter Prozesswert erreicht wird, wobei eine vierte Dauer ermittelt wird, die benötigt wird, um den vierten Prozesswert zu erreichen, wobei der Quotient aus der Differenz der Prozesswerte und der vierten Dauer den vierten Teilsteigungswert angibt.A fourth partial gradient value can also be determined by the actuator being controlled again in the direction of the second state, so that starting from the third process value, a fourth process value is reached, whereby a fourth duration is determined, which is required to supply the fourth process value reach, wherein the quotient of the difference of the process values and the fourth duration indicates the fourth partial slope value.
Die Lernphase wird beispielsweise dann abgebrochen, wenn die Differenz der jeweiligen Prozesswerte kleiner als ein erster zulässiger Fehlerwert ist. Das gilt für jeden einzelnen Schritt während der Lernphase, bei dem der Prozesswert sich ändern soll. Ist die Differenz zu klein, so hat sich der Prozesswert nicht merklich geändert (und wird den angestrebten neuen Wert auch nicht erreichen). Daher besteht die Annahme, dass im Stellglied oder an anderer Stelle des Systems ein Fehler vorliegt. Beispielsweise ist der Motor defekt oder der Antrieb verklemmt usw.The learning phase is aborted, for example, if the difference of the respective process values is smaller than a first permissible error value. This applies to every single step during the learning phase at which the process value should change. If the difference is too small, the process value has not changed appreciably (and will not reach the desired new value). Therefore, there is an assumption that there is an error in the actuator or elsewhere in the system. For example, the engine is defective or the drive jammed, etc.
Der Steigungswert wird vorzugsweise durch Mittelwertbildung aus den jeweils ermittelten Teilsteigungswerten berechnet. Insbesondere wird der Steigungswert (F_M) durch Mittelwertbildung aus den vier ermittelten Teilsteigungswerten (F_M1, F_M2, F_M3; F_M4) wie folgt berechnet: F_M = (F_M1 + F_M2 – F_M3 – F_M4)/4.The slope value is preferably calculated by averaging from the respectively determined partial slope values. In particular, the slope value (F_M) is calculated by averaging from the four determined partial slope values (F_M1, F_M2, F_M3, F_M4) as follows: F_M = (F_M1 + F_M2-F_M3-F_M4) / 4.
Außerdem kann zumindest einmalig vor der ersten Berechnung der Verstellzeit eine Lernprozedur zur Berechnung eines zweiten Steigungswertes durchgeführt werden, wobei die Lernprozedur eine Lernphase umfasst, in welcher folgende Teilschritte durchgeführt werden:
das Stellglied wird mindestens zweimal für eine vorgebbare Zeitdauer auf einen zweiten Zustand, der verschieden von dem ersten Zustand ist, hin angesteuert, so dass in dem Prozess ein dritter Prozesswert und ein vierter Prozesswert erreicht werden, und
es werden mindestens zwei Teilsteigungswerte ermittelt, die angeben, mit welcher Geschwindigkeit der jeweilige Prozesswert erreicht wird, wenn auf den zweiten Zustand hin angesteuert wird, wobei der zweite Steigungswert durch eine Mittelwertbildung der Teilsteigungswerte berechnet wird. In addition, a learning procedure for calculating a second slope value can be performed at least once before the first calculation of the adjustment time, wherein the learning procedure comprises a learning phase in which the following partial steps are performed:
the actuator is driven at least twice for a predetermined period of time to a second state, which is different from the first state, so that in the process a third process value and a fourth process value are achieved, and
at least two partial slope values are determined, which indicate the speed at which the respective process value is reached when the second state is being controlled, the second gradient value being calculated by averaging the partial slope values.
Danach wird vorzugsweise die Verstellzeit abhängig von dem ersten Steigungswert berechnet, wenn das Stellglied auf den ersten Zustand hin angesteuert wird, oder wird abhängig von dem zweiten Steigungswert berechnet, wenn das Stellglied auf den zweiten Zustand hin angesteuert wird; wobei das jeweilige Stellglied für die berechnete individuelle Verstellzeit mit der Stellgröße angesteuert wird.Thereafter, preferably, the displacement time is calculated depending on the first slope value when the actuator is driven toward the first state, or is calculated depending on the second gradient value when the actuator is driven toward the second state; wherein the respective actuator for the calculated individual Verstellzeit is controlled with the manipulated variable.
Das Verfahren kann abgebrochen werden, falls der Steigungswert einen vorgegebenen minimalen Steigungswert unterschreitet oder einen vorgegebenen maximalen Steigungswert übersteigt.The method may be aborted if the slope value falls below a predetermined minimum slope value or exceeds a predetermined maximum slope value.
Bei dem erfindungsgemäßen Verfahren kann die Lernprozedur eine Vorbereitungsphase umfassen, in welcher folgende Teilschritte durchgeführt werden, um das Stellglied in einen Anfangs-Zustand zu setzen:
Das Stellglied wird für eine vorgegebene Rück- bzw. Verstellzeit in Richtung eines Zustandes angesteuert, so dass ein Prozesswert, insbesondere ein abgesenkter Prozesswert, erreicht wird, der unterhalb des aktuellen Arbeitspunktes liegt;
Es wird eine vorgegebene feste Pausenzeit gewartet;
Nach Ablauf dieser festen Pausenzeit wird das Stellglied für eine vorgegebene Verstellzeit in Richtung eines anderen Zustandes angesteuert, so dass ein Prozesswert, insbesondere der Anfangs-Prozesswert, erreicht wird, der innerhalb des vorgegebenen Wertebereichs liegt.In the method according to the invention, the learning procedure may comprise a preparation phase in which the following sub-steps are carried out in order to set the actuator to an initial state:
The actuator is driven in the direction of a state for a predetermined return or adjustment time, so that a process value, in particular a lowered process value, is reached, which is below the current operating point;
It is waited for a predetermined fixed break time;
After expiration of this fixed pause time, the actuator is driven for a predetermined adjustment time in the direction of another state, so that a process value, in particular the initial process value is reached, which is within the predetermined value range.
Dabei kann innerhalb der Lernphase der Spielzeitwert aus einem Quotienten einer Prozesswerte-Abweichung und der Verstellzeit berechnet werden, wobei die Prozesswerte-Abweichung sich aus der Differenz zwischen einem ersten Prozesswert und einem davon abweichenden Prozesswert ergibt.In this case, within the learning phase, the game time value can be calculated from a quotient of a process value deviation and the adjustment time, wherein the process value deviation results from the difference between a first process value and a process value deviating therefrom.
Die Prozesswerte-Abweichung kann ermittelt werden, indem das Stellglied ausgehend von dem ersten Prozesswert für die vorgebbare Zeitdauer auf den ersten Zustand hin angesteuert wird, so dass ein bestimmter Prozesswert erreicht wird, und dann ausgehend von diesem bestimmten Prozesswert für dieselbe Zeitdauer auf den zweiten Zustand hin angesteuert wird, so dass der erste Prozesswert wieder erreicht werden müsste, der Prozess aber den davon abweichenden Prozesswert aufweist.The process value deviation can be determined by the actuator being driven from the first process value for the predeterminable period of time to the first state, so that a certain process value is reached, and then from this specific process value for the same period of time to the second state is controlled so that the first process value would have to be reached again, but the process has the deviating process value.
Das Verfahren kann abgebrochen werden, falls der Spielzeitwert einen vorgegebenen maximalen Spielzeitwert übersteigt.The process may be aborted if the game time value exceeds a predetermined maximum game time value.
Die Erfindung und die sich daraus ergebenden Vorteile werden nachfolgend anhand eines Ausführungsbeispiels mit Bezugnahme auf die beiliegenden Zeichnungen näher beschrieben. Die Zeichnungen geben folgende schematischen Darstellungen wieder:The invention and the resulting advantages are described below with reference to an embodiment with reference to the accompanying drawings. The drawings show the following schematic representations:
Die
Die Vorrichtung BVB stellt einen rechnergestützten Funktionsblock dar, der individuell für jedes Stellglied (z. B. für S1) die optimale Verstellzeit (also hier VZ1) anhand des später noch beschriebenen Verfahrens berechnet. Als Eingangsdaten dienen insbesondere der Sollwert SOLL, der Istwert IST und Daten der Parametrierung PAR für das einzustellende Stellglied bzw. für den einzustellenden Prozesswert.The device BVB represents a computer-aided function block, which calculates the optimum adjustment time (ie here VZ1) individually for each actuator (eg for S1) on the basis of the method which will be described later. The input data used are, in particular, the desired value SET, the actual value IST and data of the parameterization PAR for the actuator to be set or for the process value to be set.
Aus der Abweichung des Istwertes IST vom Sollwert SOLL ergibt sich der Stellwert (Regelabweichung), hier z. B. STG1 bezogen auf das erste Stellglied S1. Der Funktionsblock BVB berechnet dann eine Verstellzeit VZ1, d. h. die Impulsdauer für die der Stellwert auf das Stellglied S1 angewendet wird. Es handelt sich also um ein impulsförmiges Verstellen. Dabei wird, wie später noch eingehend beschrieben wird, ein Steigungswert F_M berücksichtigt, der ein Maß für die Geschwindigkeit ist, mit der das Stellglied die gewünschte Änderung des Prozesswertes erreicht. Außerdem wird ggf. ein Spielzeitwert F_CLR berücksichtigt und angewendet, um das in dem Stellglied evtl. vorhandene Spiel ggf. zu kompensieren, insbesondere im Fall eines Drehrichtungs- bzw. Lastwechsels im Getriebe.The deviation of the actual value IST from the nominal value results in the manipulated variable (control deviation), here z. B. STG1 based on the first actuator S1. The function block BVB then calculates an adjustment time VZ1, d. H. the pulse duration for which the control value is applied to the actuator S1. It is therefore a pulse-shaped adjustment. In this case, as will be described in detail later, a slope value F_M is taken into account, which is a measure of the speed at which the actuator reaches the desired change of the process value. In addition, if necessary, a game time value F_CLR is taken into account and used to possibly compensate for the play possibly present in the actuator, in particular in the case of a rotation direction or load change in the transmission.
Die hier vorgestellte intelligente Ansteuerung der Stellglieder wird durch die nachfolgend auch anhand der
Vorzugsweise wird das Verfahren durch eine digitale, programmierte Funktion realisiert, die auf einem echtzeitfähigen oder annähernd echtzeitfähigen Rechnersystem abläuft. Über analoge und digitale Eingänge ermittelt das Rechnersystem direkt, oder über intelligente Subsysteme, die zugehörigen Messwerte und Zustandsvariablen der Regelkreise aus dem gesamten Prozess. Sie werden digitalisiert und gespeichert. Digitale Ausgänge (s.
Die Vorrichtung BVB arbeitet nach einem speziellen digitalen Regelalgorithmus mit zahlreichen Vorteilen, insbesondere mit den folgenden Vorteilen:
- – Alle Datenfelder des digitalen Funktionsblocks sind so angelegt, dass sie in Verbindung mit einem Prozess-Leitsystem angezeigt und somit auch bedient oder ggf. verändert werden können.
- – Ein automatisch ablaufender Lernalgorithmus (wird manuell gestartet) ermittelt und speichert die Steigung und die Spielzeit, (die bei Drehrichtungswechseln anfällt) individuell für jedes Stellglied. Die Steigung gibt an, um wieviel sich die Regelgröße bei einem Stellimpuls von 1000 ms ändert. Die Stellgliedeigenschaften wie Hoch- und Nachlaufzeit und die Hysterese werden automatisch berücksichtigt.
- – Der Regelalgorithmus benötigt keine Rückmeldesignale von den Stellgliedern.
- – Aus der Differenz zwischen Soll- und Istwert wird mit der Steigung und unter Berücksichtigung der letzten Verstellrichtung ggf. mit der Spielzeit eine Verstellzeit berechnet. Entsprechend dem Vorzeichen wird der Digitalausgang des Stellgliedes für AUF oder AB ms genau angesteuert.
- – Ein Gut-Toleranzband verhindert weitere unnötige Verstellungen.
- – Auch nichtlineare Steigungskennlinien bearbeitet das System erfolgreich, da im Arbeitspunkt ein annähernd linearer Zusammenhang besteht.
- – Sehr kurze Einstellzeit (Verstellzeit plus Einstell-Wartezeit) nach einer Sollwertänderung.
- – Geringer Verschleiß an den Stellgliedern und den ggf. nachgeschalteten Einrichtungen.
- – Umfangreiche Plausibilitätsprüfungen verhindern fehlerhafte Verstellungen, ggf. werden Alarmflags gesetzt.
- – Nach einer Verstellung wartet die Funktion eine definierbare Zeit (Totzeit der Regelstrecke und zur Glättung des Messwertes), damit der Istwert sich auf den neuen Endwert einschwingen kann. Diese Wartezeit ist sehr vorteilhaft wenn mehrere Regelkreise eines Systems sich gegenseitig beeinflussen.
- – Jeder Verstellschritt wird gezählt und erst auf null gesetzt wenn der Messwert innerhalb des Gut-Toleranzbandes liegt.
- – Wird nach einer parametrierbaren Anzahl von Verstellschritten das Gut-Toleranzband nicht erreicht werden die Verstellzeiten der nachfolgenden Schritte um x Prozent reduziert. Dieser X%-Wert kann je Stellglied bestimmt werden.
- – Kommt ein Istwert nach n Verstellschritten nicht in das Gut-Toleranzband wird ein Alarmflag gesetzt.
- – Die BV-Funktion erreicht in der Regel (in ca. einer Minute) nach n Verstellschritten das Gut-Toleranzband. Danach finden über einen längeren Zeitraum keine Aktionen mehr statt, es sei denn der Sollwert ändert sich.
- – Die realisierte Stellfunktion ist sehr kostengünstig, pro Stellglied sind nur 2 Relais erforderlich.
- – Die Inbetriebnahme einer Regelstrecke ist mittels der Lernfunktion innerhalb weniger Minuten getan.
- – Durch das sehr schnelle und präzise Erreichen der Sollwerte haben die Volumenströme für Brenner (Öl, Gas, Luft, Sauerstoff) stets das optimale stöchiometrische Verhältnis. Die Verbrennung ist somit Energieoptimal und die Abgase enthalten die niedrigsten Schadstoffmengen.
- - All data fields of the digital function block are designed so that they can be displayed in conjunction with a process control system and thus also operated or changed if necessary.
- - An automatic learning algorithm (started manually) determines and stores the slope and the playing time (which occurs when the direction of rotation changes) individually for each actuator. The slope indicates how much the controlled variable changes with an actuating pulse of 1000 ms. The actuator properties such as acceleration and retardation time and hysteresis are automatically taken into account.
- - The control algorithm requires no feedback signals from the actuators.
- - From the difference between the setpoint and actual value is calculated with the slope and taking into account the last adjustment, possibly with the playing time an adjustment. According to the sign, the digital output of the actuator for UP or DOWN ms is precisely controlled.
- - A good tolerance band prevents further unnecessary adjustments.
- - Nonlinear slope characteristics are also processed successfully by the system, since there is an approximately linear relationship at the operating point.
- - Very short setting time (adjusting time plus setting waiting time) after a setpoint change.
- - Low wear on the actuators and any downstream equipment.
- - Extensive plausibility checks prevent faulty adjustments, if necessary, alarm flags are set.
- - After an adjustment, the function waits for a definable time (dead time of the controlled system and for smoothing the measured value) so that the actual value can settle to the new final value. This waiting time is very advantageous if several control loops of a system influence each other.
- - Each adjustment step is counted and only set to zero if the measured value is within the good tolerance band.
- - If the material tolerance band is not reached after a configurable number of adjustment steps, the adjustment times of the following steps are reduced by x percent. This X% value can be determined per actuator.
- - If an actual value does not enter the good tolerance band after n adjustment steps, an alarm flag is set.
- - The BV function usually reaches (within approx. One minute) the material tolerance band after n adjustment steps. Thereafter, no actions take place over a longer period, unless the target value changes.
- - The realized control function is very cost-effective, only 2 relays per actuator are required.
- - The commissioning of a controlled system is done within a few minutes using the learning function.
- - Due to the very fast and precise reaching of the setpoints, the volume flows for burners (oil, gas, air, oxygen) always have the optimal stoichiometric ratio. The combustion is thus energy optimal and the exhaust gases contain the lowest amounts of pollutants.
Die Erfindung kann z. B. in Schmelz- und Hüttenbetrieben, Kraft- und Heizwerken und in Fertigungseinrichtungen mit einer größeren Anzahl elektrisch angetriebener Stellglieder zum Einsatz kommen. Sie ist den bekannten PID-Reglern, insbesondere Dreipunktreglern, zu bevorzugen, weil sie u. a. folgende Vorteile bietet:
- – Die Funktion der Vorrichtung BVB ermittelt mit dem internen Lernalgorithmus innerhalb weniger Minuten die exakten Stellgliedeigenschaften der Regelgröße. Danach kann sofort die Prozessgröße geregelt werden.
- – Bei der Berechnung des Stellimpulses werden die Zeiten für Hoch-, u. Nachlauf, Spiel und Hysterese berücksichtigt. Durch den ms genauen Stellimpuls wird meistens
mit dem 1. Verstellschritt das Gut-Toleranzband erreicht. - – Stellglieder die bereits Verschleiß aufweisen (eine deutlich erhöhte Spielzeit) können mit der BV-Funktion problemlos weiter genutzt werden, da die Spielzeit bekannt ist und berücksichtigt wird.
- – Die erheblich geringere Anzahl von Verstellschritten reduziert drastisch den Verschleiß in der Anlage.
- – Ein Dreipunktregler kann das mechanische Spiel eines Stellgliedantriebes nicht selbständig erfassen und berücksichtigt bei der Berechnung des Stellimpulses keine Spielzeit.
- – Ein Dreipunktregler ermittelt nicht die Steigung, die erzeugten Stellimpulse des Dreipunktreglers verringern nur stufenweise (gemächlich) die Regelabweichung.
- - The function of the device BVB determined with the internal learning algorithm within a few minutes, the exact actuator properties of the controlled variable. Thereafter, the process size can be regulated immediately.
- - When calculating the actuating pulse, the times for high, u. Caster, play and hysteresis are considered. Due to the ms precise setting pulse, the good tolerance band is usually reached with the 1st adjustment step.
- - Actuators that already have wear (a significantly increased playing time) can be easily used with the BV function, as the playing time is known and taken into account.
- - The significantly smaller number of adjustment steps drastically reduces wear in the system.
- - A three-position controller can not detect the mechanical play of an actuator drive independently and takes into account in the calculation of the control pulse no play time.
- - A three-position controller does not determine the slope, the generated control pulses of the three-position controller reduce the control deviation only gradually (slowly).
Die Grundstruktur des erfindungsgemäßen Verfahrens ist in
In einem Block
Anhand der
Nach dem Start der Vorrichtung BVB, bei der ein Schleifenzähler auf Null zurückgesetzt wird (i = 0) folgt ein erstes Hochzählen des Schleifenzählers i = i + 1 im Schritt
After the start of the device BVB, in which a loop counter is reset to zero (i = 0) is followed by a first incrementing of the loop counter i = i + 1 in
Sollte die Lernfunktion fehlerhaft ablaufen (Schritt
Ausgehend vom Schritt
Im Schritt
Die Schrittfolge zur Berechnung von VZi (s. auch
In dem Block
In the
Mit der jeweils im Schritt
Die
Im Rahmen einer Vorbereitungsphase I (s. auch
As part of a preparatory phase I (see also
Im Rahmen der nachfolgenden Lernphase II (s. auch Schritt
Durch die Lernprozedur wird die Regelfunktion individuell für jedes Stellglied an den aktuellen Arbeitspunkt und die Gegebenheiten der Regelstrecke angepasst. Die Lernphase wird anhand von aufeinander folgenden Verstellungen und Wartezeiten durchgeführt. Je Stellglied sind die folgenden Parameter vorzugeben:
A_OTADJ [0 ... 30 s] = Verstellzeit
A_OTCLR [0 ... 30 s] = Spielzeit
A_OTPAU [0 ... 100 s] = Pausenzeit
A_OCMIN [0 ... 1000] = Fehlerkriterien – Minimale Änderung. Wert, um den sich die Prozessgröße mindestens ändern muss, wenn innerhalb der Lernphase ein Impuls der Länge A_OTADJ ausgegeben wurde. Falls sich der Prozesswert nicht oder nur geringfügig ändert wird die Lernphase abgebrochen.
A_OMMIN [0 ... 200] = Fehlerkriterien – Minimum Steigung, die innerhalb der Lernphase ermittelt werden darf. Falls die ermittelte Steigung geringer ist, gilt das Stellglied als nicht optimiert und die Lernphase wird angehalten.
A_OMMAX [0 ... 200] = Fehlerkriterien – Maximale Steigung, die bei der Lernphase ermittelt werden darf. Falls die ermittelte Steigung größer ist, gilt das Stellglied als nicht optimiert und die Lernphase wird angehalten.
A_OCMAX [0 ... 30s] = Fehlerkriterien – Maximale Spielzeit, die bei der Lernphase ermittelt werden darf. Falls die ermittelte Spielzeit grösser ist, gilt das Stellglied als nicht optimiert und die Lernphase wird angehalten.The learning procedure adjusts the control function individually for each actuator to the current operating point and the conditions of the controlled system. The learning phase is carried out on the basis of successive adjustments and waiting times. The following parameters must be specified for each actuator:
A_OTADJ [0 ... 30 s] = adjustment time
A_OTCLR [0 ... 30 s] = playing time
A_OTPAU [0 ... 100 s] = pause time
A_OCMIN [0 ... 1000] = error criteria - minimum change. Value by which the process variable must at least change if an impulse of length A_OTADJ was output during the learning phase. If the process value does not change or changes only slightly, the learning phase is aborted.
A_OMMIN [0 ... 200] = error criteria - minimum slope, which may be determined during the learning phase. If the determined slope is lower, the actuator is considered not optimized and the learning phase is stopped.
A_OMMAX [0 ... 200] = error criteria - maximum slope, which may be determined during the learning phase. If the determined slope is greater, the actuator is considered not optimized and the learning phase is stopped.
A_OCMAX [0 ... 30s] = Error Criteria - Maximum playing time allowed during the learning phase. If the determined game time is greater, the actuator is considered not optimized and the learning phase is stopped.
Anhand der
Zum Zeitpunkt 1: Das Stellorgan bzw. Stellglied wird für die Zeitdauer A_OTADJ + A_OTCLR zugefahren.
Zum Zeitpunkt 2: Es folgt eine Pausenzeit, die fest z. B. auf 1 Sekunde einprogrammiert ist.
Zum Zeitpunkt 3: Das Stellorgan wird für die Zeit A_OTCLR aufgefahren. Dieser Impuls soll evtl. vorhandenes Antriebsspiel durch den Drehrichtungswechsel beseitigen.
Zum Zeitpunkt 4: Wartezeit der Länge A_OTPAU. Am Ende der Wartezeit wird der aktuelle Prozesswert in F_PVO gestempelt.
Zum Zeitpunkt 5: Das Stellorgan wird für die Zeit A_OTADJ aufgefahren. Die tatsächliche Dauer dieses Ausgangsimpulses wird in F_T1 festgehalten.
Zum Zeitpunkt 6: Wartezeit der Länge A_OTPAU. Am Ende der Wartezeit wird der aktuelle Prozesswert in F_PV1 gestempelt. Falls die Differenz F_PV1 – F_PVO kleiner ist als das Lernphasen-Fehlerkriterien bzw. die Minimum Änderung (A_OCMIN), wird die Lernphase vorzeitig abgebrochen und das Fehlerflag F_OECHG gesetzt.
Zum Zeitpunkt 7: Das Stellorgan bzw. Stellglied wird für die Zeit A_OTADJ aufgefahren. Die tatsächliche Dauer dieses Ausgangsimpulses wird in F_T2 festgehalten.
Zum Zeitpunkt 8: Wartezeit der Länge A_OTPAU. Am Ende der Wartezeit wird der aktuelle Prozesswert in F_PV2 gestempelt. Falls die Differenz F_PV2 – F_PV1 kleiner ist als das Lernphasen-Fehlerkriterien bzw. die Minimum Änderung (A_OCMIN), wird die Lernphase vorzeitig abgebrochen und das Fehlerflag F_OECHG gesetzt.
Zum Zeitpunkt 9: Das Stellorgan wird für die Zeit A_OTADJ zugefahren. Die tatsächliche Dauer dieses Ausgangsimpulses wird in F_T3 festgehalten.
Zum Zeitpunkt 10: Wartezeit der Länge A_OTPAU. Am Ende der Wartezeit wird der aktuelle Prozesswert in F_PV3 gestempelt. Falls die Differenz F_PV3 – F_PV2 kleiner ist als das Lernphasen-Fehlerkriterien bzw. die – Minimum Änderung (A_OCMIN) wird die Lernphase vorzeitig abgebrochen und das Fehlerflag F_OECHG gesetzt.
Zum Zeitpunkt 11: Das Stellorgan wird für die Zeit A_OTADJ zugefahren. Die tatsächliche Dauer dieses Ausgangsimpulses wird in F_T4 festgehalten.
Zum Zeitpunkt 12: Wartezeit der Länge A_OTPAU. Am Ende der Wartezeit wird der aktuelle Prozesswert in F_PV4 gestempelt. Falls die Differenz F_PV4 ~ F_PV3 kleiner ist als das Lernphasen-Fehlerkriterien bzw. die Minimum Änderung (A_OCMIN) wird die Lernphase vorzeitig abgebrochen und das Fehlerflag F_OECHG gesetzt.
Zum Zeitpunkt 13: In diesem Zum Zeitpunkt werden die Steigung und die Spielzeit aus den zuvor ermittelten Daten bestimmt. Das dauert nur einen Zyklus ist deshalb praktisch nicht zu sehen.
Zum Zeitpunkt 14: Falls bei den vorausgegangenen Lernphasen-Schritten (Zeitpunkten) keine Fehler auftraten wird der Zähler auf 14 gesetzt. Diese Zahl ist das Kennzeichen für eine gültige bzw. abgeschlossene Lernphase.Based on
At time 1: The actuator or actuator is closed for the period A_OTADJ + A_OTCLR.
At time 2: It follows a pause, the fixed z. B. is programmed to 1 second.
At time 3: The actuator is raised for the time A_OTCLR. This impulse should eliminate any existing drive clearance due to the change of direction.
At time 4: waiting time of length A_OTPAU. At the end of the waiting period, the current process value is stamped in F_PVO.
At time 5: The actuator is raised for the time A_OTADJ. The actual duration of this output pulse is recorded in F_T1.
At time 6: waiting time of length A_OTPAU. At the end of the waiting time, the current process value is stamped in F_PV1. If the difference F_PV1-F_PVO is less than the learning phase error criteria or the minimum change (A_OCMIN), the learning phase is aborted prematurely and the error flag F_OECHG is set.
At time 7: The actuator or actuator is ramped up for the time A_OTADJ. The actual duration of this output pulse is recorded in F_T2.
At time 8: waiting time of length A_OTPAU. At the end of the waiting period, the current process value is stamped in F_PV2. If the difference F_PV2-F_PV1 is less than the learning phase error criteria or the minimum change (A_OCMIN), the learning phase is aborted prematurely and the error flag F_OECHG is set.
At time 9: The actuator is closed for the time A_OTADJ. The actual duration of this output pulse is recorded in F_T3.
At time 10: waiting time of length A_OTPAU. At the end of the waiting time, the current process value is stamped in F_PV3. If the difference F_PV3 - F_PV2 is less than the learning phase error criteria or the - minimum change (A_OCMIN), the learning phase is aborted prematurely and the error flag F_OECHG is set.
At time 11: The actuator is closed for the time A_OTADJ. The actual duration of this output pulse is recorded in F_T4.
At time 12: waiting time of length A_OTPAU. At the end of the waiting time, the current process value is stamped in F_PV4. If the difference F_PV4 ~ F_PV3 is less than the learning phase error criteria or the minimum change (A_OCMIN), the learning phase is aborted prematurely and the error flag F_OECHG is set.
At time 13: In this time, the slope and the game time are determined from the previously determined data. This only takes one cycle and is therefore practically invisible.
At time 14: If no errors occurred in the previous learning phase steps (times), the counter is set to 14. This number is the indicator for a valid or completed learning phase.
Die Teilsteigungen F_M1 ... F_M4 errechnen sich wie folgt:
F_M1 = (F_PV1 – F_PVO)/F_T1
F_M2 = (F_PV2 – F_PV1)/F_T2
F_M3 = (F_PV3 – F_PV2)/F_T3
F_M4 = (F_PV4 – F_PV3)/F_T4The partial slopes F_M1 ... F_M4 are calculated as follows:
F_M1 = (F_PV1 - F_PVO) / F_T1
F_M2 = (F_PV2 - F_PV1) / F_T2
F_M3 = (F_PV3 - F_PV2) / F_T3
F_M4 = (F_PV4 - F_PV3) / F_T4
Aus den Teilsteigungen wird die Gesamtsteigung, d. h. der Steigungswert für die Berechnung der Verstellzeit, gemittelt: F_M = (F_M1 + F_M2 – F_M3 – F_M4)/4From the part gradients, the total slope, d. H. the slope value for the calculation of the adjustment time, averaged: F_M = (F_M1 + F_M2 - F_M3 - F_M4) / 4
Aus der Differenz des Prozesswertes am Ende von Schritt 6 und Schritt 10 wird die Spielzeit des Antriebes ermittelt: F_CLR = Δ/F_M = (F_PV3 – F_PV1)/F_MFrom the difference of the process value at the end of
Den Steigungswert für die Berechnung der Verstellzeit kann man auch getrennt für die Richtung AUF oder AB wie folgt berechnen (s. auch
Dazu das Stellglied mindestens zweimal in Richtung AUF angesteuert, so dass die Teilsteigungen F_M1 und F_M2 berechnet werden können. Aus der Mittelwertbildung ergibt sich der Steigungswert für die Richtung AUF: F_M' = (F_M1 + F_M2)/2The slope value for the calculation of the adjustment time can also be calculated separately for the direction UP or DOWN as follows (see also
For this purpose, the actuator is actuated at least twice in the direction OPEN, so that the partial slopes F_M1 and F_M2 can be calculated. The averaging results in the slope value for the direction OPEN: F_M '= (F_M1 + F_M2) / 2
Außerdem wird das Stellglied mindestens zweimal in Richtung AB angesteuert, so dass die Teilsteigungen F_M3 und F_M4 berechnet werden können. Aus der Mittelwertbildung ergibt sich der Steigungswert für die Richtung AB: F_M'' = –(F_M3 + F_M4)/2 In addition, the actuator is controlled at least twice in the direction AB, so that the partial slopes F_M3 and F_M4 can be calculated. From the averaging, the slope value for the direction AB results: F_M '' = - (F_M3 + F_M4) / 2
Wenn das Stellglied in Richtung AUF verstellt werden soll, wird der erste Steigungswert F_M' verwendet. Wenn das Stellglied in Richtung AB verstellt werden soll, wird der zweite Steigungswert F_M'' verwendet. Somit wird zwischen den Ansteuerungs-Richtungen differenziert.If the actuator is to be adjusted in the direction of OPEN, the first gradient value F_M 'is used. If the actuator is to be adjusted in the direction of AB, the second slope value F_M '' is used. Thus, differentiation is made between the driving directions.
Die Vorrichtung BVB kann optional ein Modul enthalten, das eine adaptive Funktionalität bereitstellt. Der Steigungswert F_M wird damit selbständig an aktuelle Prozessbedingungen angepasst. Dieses Modul wird nur durchlaufen wenn für ein Stellglied gilt, dass:
- – der Wichtungsfaktor > Null ist
- – die letzte und die neue Verstellrichtung gleich sind (kein Drehrichtungswechsel)
- – die Verstellzeit > n% von der GesamtVerstellzeit (von AB bis AUF) ist
- - the weighting factor> zero
- - the last and the new adjustment direction are the same (no change of direction)
- - the adjustment time is> n% of the total operating time (from DOWN to OPEN)
Zunächst wird berechnet: m = ABS/VZ
wobei ABS der Absolutwert der Differenz „Messwert vor der Verstellung – Messwert nach der Verstellung” ist, d. h. ein vorzeichenloser Wert ist.First we calculate: m = ABS / VZ
where ABS is the absolute value of the difference "measured value before adjustment - measured value after adjustment", ie an unsigned value.
Dann wird der neue Steigungswert berechnet: F_M = [F_M alt·(WF – 1) + m]/WF wobei WF der Wichtungsfaktor ist.Then the new slope value is calculated: F_M = [F_M old * (WF-1) + m] / WF where WF is the weighting factor.
Die hier vorgeschlagene Erfindung kann auch bezüglich der Genauigkeit einer Stellglied-Ansteuerung deutliche Verbesserungen erzielen. Dies wird durch folgende Genauigkeitsbetrachtungen bezogen auf ein Windows-Betriebssystem mit 50 ms Zeitscheiben veranschaulicht:
Die meisten Stellglieder, die mit diesem Verfahren eingestellt werden, haben eine Gesamtlaufzeit von 0% (AB) bis 100% (AUF) von 90 Sekunden.The invention proposed here can also achieve significant improvements with respect to the accuracy of an actuator control. This is illustrated by the following accuracy considerations for a Windows operating system with 50 ms time slices:
Most actuators set with this procedure have a total run time of 0% (AB) to 100% (UP) of 90 seconds.
Bei einer Zykluszeit von 50 ms wird durch Runden mit 25 ms jede Verstellzeit mit einem maximalen Fehler von 25 ms eingestellt, der mittlere Fehler beträgt somit 12,5 ms.For a cycle time of 50 ms, 25 ms rounding sets each adjustment time with a maximum error of 25 ms, so the mean error is 12.5 ms.
Der maximale Einstellfehler = (25·100)/90000 – = 0,027777% vom Stell- bzw. Messbereich.The maximum setting error = (25 · 100) / 90000 - = 0.027777% of the setting or measuring range.
Der mittlere Einstellfehler = (12,5·100)/90000 – = 0,013888% vom Stell- bzw. Messbereich.The mean adjustment error = (12.5 · 100) / 90000 - = 0.013888% of the setting or measuring range.
Das Gut-Toleranzband für ein Stellglied wird auf +/–0,05 oder 0,1% des Messbereichs eingestellt.The good tolerance band for an actuator is set to +/- 0.05 or 0.1% of the measuring range.
Die maximale bleibende Regelabweichung in dieser Konstellation beträgt somit 0,1% des Messbereichs.The maximum remaining control deviation in this constellation is therefore 0.1% of the measuring range.
Der Zeitbedarf zur Beseitigung einer Regelabweichung wird im Wesentlichen durch die Verstellzeit (F_VZ) des Stellgliedes und durch die Wartezeit zur Dämpfung und Glättung der Messwerterfassung bestimmt. Der Berechnungsschritt für eine weitere Verstellung erfordert unter Windows nur 50 ms.The time required to eliminate a control deviation is essentially determined by the adjustment time (F_VZ) of the actuator and by the waiting time for damping and smoothing the measured value acquisition. The calculation step for further adjustment requires only 50 ms under Windows.
Der 1. Verstellschritt beseitigt in der Regel 97% der Regelabweichung.The 1st adjustment step usually eliminates 97% of the control deviation.
Die Analog-Digitalwandler für die Messwerterfassung sollten bei diesen Bedingungen mit einer Auflösung von 12 bis 16 Bit arbeiten.The analog-to-digital converters for the measured value acquisition should work with a resolution of 12 to 16 bits under these conditions.
Mit Echtzeit-Betriebssystemen die Zeitscheiben bzw. Zeitschlitze von 1 oder 5 ms bereitstellen, können um den Faktor 10 bis 50 bessere Ergebnisse erreicht werden.With real time operating systems that provide time slices or time slots of 1 or 5 ms, better results can be achieved by a factor of 10 to 50.
Nachfolgend werden anhand von tabellarischen Ablaufschemen die Berechnungs-Vorgänge am Beispiel eines Stellgliedes veranschaulicht, das über ein Motor-angetriebenes Potentiometer den Strom [A] einer Prozessgröße (z. B. Heizstrom für eine Elektrode) beeinflusst. In diesem Beispiel wird der Ablaufplan (
Claims (10)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE201210104359 DE102012104359B4 (en) | 2012-05-21 | 2012-05-21 | Method and device for driving a plurality of actuators |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE201210104359 DE102012104359B4 (en) | 2012-05-21 | 2012-05-21 | Method and device for driving a plurality of actuators |
Publications (2)
Publication Number | Publication Date |
---|---|
DE102012104359A1 DE102012104359A1 (en) | 2013-11-21 |
DE102012104359B4 true DE102012104359B4 (en) | 2014-11-13 |
Family
ID=49510910
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE201210104359 Expired - Fee Related DE102012104359B4 (en) | 2012-05-21 | 2012-05-21 | Method and device for driving a plurality of actuators |
Country Status (1)
Country | Link |
---|---|
DE (1) | DE102012104359B4 (en) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DD244624A1 (en) * | 1985-12-20 | 1987-04-08 | Metallurgieofenbau Meissen Zb | TEMPERATURE CONTROL METHOD FOR INDUSTRIAL OVEN |
DE4316759A1 (en) * | 1993-05-19 | 1994-11-17 | Heinrich Wolfgang Pro Nikolaus | Directional valve with a proportional function |
DE19722431A1 (en) * | 1997-05-28 | 1998-12-03 | Siemens Ag | Process for controlling a delayed process with compensation and control device for carrying out the process |
DE10350610A1 (en) * | 2003-10-30 | 2005-06-09 | Siemens Ag | Diagnostic device and method for monitoring the operation of a control loop |
DE102004022999B3 (en) * | 2004-05-10 | 2005-12-22 | Siemens Ag | Determining fuel vapor retention system regeneration valve control characteristic involves starting stepwise increase in pulse width at value greater than null, smaller than value corresponding to previously determined minimum pulse width |
-
2012
- 2012-05-21 DE DE201210104359 patent/DE102012104359B4/en not_active Expired - Fee Related
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DD244624A1 (en) * | 1985-12-20 | 1987-04-08 | Metallurgieofenbau Meissen Zb | TEMPERATURE CONTROL METHOD FOR INDUSTRIAL OVEN |
DE4316759A1 (en) * | 1993-05-19 | 1994-11-17 | Heinrich Wolfgang Pro Nikolaus | Directional valve with a proportional function |
DE19722431A1 (en) * | 1997-05-28 | 1998-12-03 | Siemens Ag | Process for controlling a delayed process with compensation and control device for carrying out the process |
DE10350610A1 (en) * | 2003-10-30 | 2005-06-09 | Siemens Ag | Diagnostic device and method for monitoring the operation of a control loop |
DE102004022999B3 (en) * | 2004-05-10 | 2005-12-22 | Siemens Ag | Determining fuel vapor retention system regeneration valve control characteristic involves starting stepwise increase in pulse width at value greater than null, smaller than value corresponding to previously determined minimum pulse width |
Also Published As
Publication number | Publication date |
---|---|
DE102012104359A1 (en) | 2013-11-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP3280894B1 (en) | Operation of a gas turbine with an interpolated operating line deviation | |
DE4141224A1 (en) | Heating load control method for surface heating element e.g. for heated automobile seat - using full heating load for initial heating-up and reduced load for temp. maintenance | |
EP2100196B1 (en) | Method for the adaptation of the control parameters of a drive controller to changed operating conditions | |
DE3632041A1 (en) | Process and device for regulating the output of a steam power station unit | |
DE102012104359B4 (en) | Method and device for driving a plurality of actuators | |
DE4303560B4 (en) | Method and device for controlling an adjusting device | |
DE2939586A1 (en) | Hot water supply system for underfloor heating - uses correction system in circuit with external and hot water temp. sensors | |
EP3599365A1 (en) | Method for operating a combustion engine | |
DE3143512C2 (en) | Control system for magnetic levitation vehicles | |
EP3767174B1 (en) | Method and device for recalibrating a measuring system for regulating a fuel-air mixture in a heating device | |
DE102004029790B4 (en) | Method and device for optimizing controller parameters | |
DE2340636A1 (en) | Continuous casting with stepwise bar extn. from horizontal mould - using program-controlled direct current motor on driving rolls | |
DE3731469A1 (en) | Electric-motor control drive | |
DE3824547C2 (en) | Process for controlling a motor drive that can be switched to manual operation, motor control with switching to manual operation and its use | |
DE4408425A1 (en) | Method and device for adjusting the angular position of a cam shaft | |
EP3324254A1 (en) | Device and method for determining the parameters of a control device | |
EP2732343B1 (en) | Automated adaptation of a power plant control | |
EP1081442A1 (en) | Airconditioning system control method and controller | |
DE4031427A1 (en) | Operating EM regulator at reduced energy level - reducing retention power once switched on and monitoring to boost power if change in switched state is detected | |
DE102015207705B3 (en) | Method for controlling a fuel delivery system | |
DE10315584B4 (en) | Method for actuating an electromagnetic actuating device and device for carrying it out | |
DE10066125B4 (en) | Method and device for processing a control variable of an actuator | |
EP2909535B1 (en) | Method for operating a gas cooking appliance and gas cooker | |
EP1375214A1 (en) | Heating device controlling method, heating device with controlling means designed for carrying out this method, and method for determining one value | |
DE102013205936B4 (en) | Method for controlling a controlled system with a standardized selection variable |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
R012 | Request for examination validly filed | ||
R079 | Amendment of ipc main class |
Free format text: PREVIOUS MAIN CLASS: G05B0011420000 Ipc: G05B0011320000 |
|
R079 | Amendment of ipc main class |
Free format text: PREVIOUS MAIN CLASS: G05B0011320000 Ipc: G05B0024020000 |
|
R016 | Response to examination communication | ||
R016 | Response to examination communication | ||
R018 | Grant decision by examination section/examining division | ||
R020 | Patent grant now final | ||
R119 | Application deemed withdrawn, or ip right lapsed, due to non-payment of renewal fee |