DE10341573A1 - Integrierte modellbasierte prädikative Steuerung und Optimierung innerhalb eines Prozesssteuerungssystems - Google Patents

Integrierte modellbasierte prädikative Steuerung und Optimierung innerhalb eines Prozesssteuerungssystems Download PDF

Info

Publication number
DE10341573A1
DE10341573A1 DE10341573A DE10341573A DE10341573A1 DE 10341573 A1 DE10341573 A1 DE 10341573A1 DE 10341573 A DE10341573 A DE 10341573A DE 10341573 A DE10341573 A DE 10341573A DE 10341573 A1 DE10341573 A1 DE 10341573A1
Authority
DE
Germany
Prior art keywords
control
variables
auxiliary
manipulated
subset
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.)
Granted
Application number
DE10341573A
Other languages
English (en)
Other versions
DE10341573B4 (de
Inventor
Terrence L. Round Rock Blevins
Wilhelm K. Round Rock Wojsznis
Mark Round Rock Nixon
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fisher Rosemount Systems Inc
Original Assignee
Fisher Rosemount Systems Inc
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Fisher Rosemount Systems Inc filed Critical Fisher Rosemount Systems Inc
Publication of DE10341573A1 publication Critical patent/DE10341573A1/de
Application granted granted Critical
Publication of DE10341573B4 publication Critical patent/DE10341573B4/de
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B13/00Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion
    • G05B13/02Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric
    • G05B13/04Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric involving the use of models or simulators
    • G05B13/048Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric involving the use of models or simulators using a predictor
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B11/00Automatic controllers
    • G05B11/01Automatic controllers electric
    • G05B11/32Automatic controllers electric with inputs from more than one sensing element; with outputs to more than one correcting element
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B13/00Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion
    • G05B13/02Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric
    • G05B13/04Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric involving the use of models or simulators
    • G05B13/042Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric involving the use of models or simulators in which a parameter or coefficient is automatically adjusted to optimise the performance

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Automation & Control Theory (AREA)
  • Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Evolutionary Computation (AREA)
  • Medical Informatics (AREA)
  • Software Systems (AREA)
  • Feedback Control In General (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

Eine integrierte Optimierungs- und Steuertechnik vereinigt eine Optimierungsprozedur, z. B. eine lineare oder quadratische Programmierungs-Optimierungsprozedur, mit einer erweiterten Steuerung, z. B. einer modellbasierten prädiktiven Steuerung, innerhalb ener Prozessanlage, bei der die Anzahl der Steuer- und Hilfsgrößen größer als die Anzahl der Stellgrößen in der Prozessanlage sein kann. Das Verfahren legt als erstes eine Sprungantwortmatrix fest, die die Korrelation zwischen den Änderungen in den Stellgrößen und jeder der während der Optimierung verwendeten Prozessgrößen definiert. Ein Teilsatz der Steuergrößen und Hilfsgrößen wird dann zur Verwendung als Eingaben an eine modellbasierte prädiktive Steuerroutine ausgewählt, die zum Ausführen einer Steuerung während des Prozessbetriebs verwendet wird, und eine M mals M-Steuermatrix wird zur Verwendung durch die modellbasierte prädiktive Steuerroutine erzeugt. Darauf folgend berechnet während jeder Abfrage der Prozesssteuerung die Optimierroutine das optimale Betriebsziel jeder der Größen aus dem vollständigen Satz der Steuer- und Hilfsgrößen und stellt die ermittelten Zielbetriebswerte für jede der Größen aus dem ausgewählten Teilsatz der Steuer- und Hilfsgrößen an die modellbasierte prädiktive Steuerung als Eingaben bereit. Die modellbasierte prädiktive Steuerungsroutine stellt Änderungen in den Stellgrößen zum Verwenden für eine Steuerung des Prozesses aus den Ziel- und gemessenen Werten für jede Größe aus dem ...

Description

  • Die Erfindung betrifft Prozesssteuerungssysteme im Allgemeinen, insbesondere die Anwendung einer optimierten modellbasierten prädiktiven Steuerung in einem Prozesssteuerungssystem.
  • Prozesssteuerungssysteme, z.B. verteilte oder skalierbare Prozesssteuerungssysteme, wie sie in chemischen, erdölverarbeitenden oder anderen Prozesssen verwendet werden, enthalten typischerweise eine oder mehrere Prozesssteuerungen, die kommunikativ miteinander, mit mindestens einem Host oder einer Operatorworkstation und zu einem oder mehreren Feldgeräten („field devices") über analoge, digitale oder kombinierte analog/digitale Busse gekoppelt sind. Die Feldgeräte, die beispielsweise Ventile, Ventilpositionierer bzw. -steller, Schalter und Transmitter oder Messwertgeber (bspw. Temperatur-, Druck- und Durchflussratensensoren) sein können, führen Funktionen innerhalb des Prozesses aus, z.B. das Öffnen oder Schließen von Ventilen und das Messen von Prozessparametern. Die Prozesssteuerung empfängt Signale, die auf die durch die Feldgeräte ausgeführten Prozessmessungen und/oder andere, die Feldgeräte betreffende Informationen, angeben. Die Prozesssteuerung nutzt diese Informationen zum Implementieren einer Steuerungsroutine und erzeugt dann Steuerungssignale, die über die Busse an die Feldgeräte gesendet werden, um den Prozess zu steuern. Die Informationen von den Feldgeräten und der Steuerung werden typischerweise einer oder mehreren, auf der Operatorworkstation ausgeführten Anwen dung bzw. -en zur Verfügung gestellt, um es einem Operator zu ermöglichen, jede gewünschte, prozessbezogene Funktion auszuführen, z.B. das Ansehen des momentanen Prozesszustands, das Modifizieren des Prozessbetriebs usw.
  • Prozesssteuerungen sind typischerweise programmiert, um verschiedene Algorithmen, Subroutinen oder Steuerschleifen (die alle Steuerroutinen sind) für jede einer Anzahl unterschiedlicher Schleifen auszuführen, die für einen Prozess definiert sind oder in einem Prozess beinhaltet sind, wie etwa Flusssteuerungsschleifen, Temperatursteuerungsschleifen, Drucksteuerungsschleifen etc. Im allgemeinen enthält jede dieser Steuerungsschleifen einen oder mehrere Eingabeblöcke, z.B. einen Funktionsblock für analoge Eingabe („analog Input", AI), einen Steuerungsblock mit einzelner Ausgabe, z.B. einen Proportional-Integral-Differential-(PID)-Steuerungsfunktionsblock oder einen Fuzzy-Logik-Steuerungsfunktionsblock, und einen Einzelausgabeblock, z.B. einen Funktionsblock zur analogen Ausgabe (AO). Diese Steuerschleifen führen typischerweise Einzeleingang/Einzelausgang-Steuerungen aus, weil der Steuerunsgblock eine einzelne Steuerausgabe erzeugt, die zum Steuern einer einzelnen Prozesseingabe verwendet wird, z.B. zum Steuern einer Ventilposition etc. In gewissen Fällen ist allerdings die Verwendung einer Anzahl unabhängig voneinander arbeitender Einzeleingang/Einzelausgang-Steuerungschleifen nicht sehr effektiv, weil die gesteuerten Prozessgrößen durch mehr als eine einzelne Prozesseingabe beeinflusst werden und faktisch jede Prozesseingabe den Zustand vieler Prozessausgaben beeinflussen kann. Ein Beispiel hierfür kann beispielsweise bei einem Prozess eintreten, der einen durch zwei Zuführleitungen gefüllten und durch eine einzelne Auslassleitung geleerten Tank beinhaltet, wobei jede Leitung durch ein anderes Ventil gesteuert wird und die Temperatur, der Druck und der Durchsatz des Tanks gesteuert werden, um bei oder nahe bei gewünschten Werten zu liegen. Wie oben angedeutet, kann die Steuerung des Durchsatzes, der Temperatur und des Druckes des Tanks unter Verwendung einer separaten Durchsatzsteuerschleife, einer separaten Temperatursteuerschleife und einer separaten Drucksteuerschleife ausgeführt werden. Allerdings kann in dieser Situation der Betrieb der Temperatursteuerschleife über ein Verändern der Einstellung von einem der Eingabeventile, um die Temperatur im Inneren des Tanks zu steuern, zu einer Druckerhöhung im Tankinneren führen. Das kann z.B. die Drucksteuerschleife zu einem Öffnen des Auslassventils veranlassen, um den Druck abzusenken. Diese Aktion kann dann die Durchsatzsteuerschleife veranlassen, eines der Einlassventile zu schlie ßen, wodurch die Temperatur beeinflusst wird und die Temperatursteuerschleife veranlasst wird, eine andere Aktion auszuführen. Wie aus diesem Beispiel ersichtlich, veranlassen die Einzeleingang/Einzelausgang-Steuerschleifen die Prozessausgaben (in diesem Fall Durchsatz, Temperatur und Druck), sich in nicht hinzunehmender Weise zu verhalten, wobei die Ausgaben oszillieren, ohne jemals einen stabilen Zustand zu erreichen.
  • Die modellgestützte prädiktive Regelung bzw. Steuerung („modell predictive control", MPC) oder andere Arten einer fortgeschrittenen Steuerung sind angewendet worden, um eine Prozesssteuerung in Situationen auszuführen, bei denen Veränderungen einer bestimmten gesteuerten Prozessgröße mehr als eine Prozessgröße oder mehr als eine Prozessausgabe beeinflussen. Seit den späten 1970er Jahren wurden von vielen erfolgreichen Implementierungen modellgestützter prädiktiver Regelungen bzw. Steuerungen berichtet und MPC wurde eine bevorzugte Form einer fortgeschrittenen Multigrößen-Steuerung in der Prozessindustrie. Weiterhin wurde die MPC-Steuerung in verteilten Steuerungssystemen als geschichtete Software („layered software") im verteilten Steuersystem implementiert. Die US-Patente mit den Nummern 4,616,308 und 4,349,869 beschreiben allgemein innerhalb eines Prozesssteuerungssystems verwendbare MPC-Steuerungen.
  • Allgemein gesprochen, ist MPC eine Steuerungsstrategie für mehrfache Eingabe und mehrfache Ausgabe, bei der die Wirkungen einer Veränderung einer jeden von einer Anzahl von Prozesseingaben auf eine jede aus einer Anzahl von Prozessausgaben gemessen wird und diese gemessenen Antworten dann dazu verwendet werden, um eine Steuerungsmatrix oder ein Modell des Prozesses zu erstellen. Das Prozessmodell oder die Steuerungmatrix (die allgemein den stabilen Zustand des Prozesses definiert), wird mathematisch invertiert und dann in einer oder als eine Steuerung mit mehrfacher Eingabe/mehrfacher Ausgabe zum Steuern der Prozessausgaben auf der Grundlage von durch die Prozesseingaben gemachten Veränderungen verwendet. In einigen Fällen wird das Prozessmodell durch eine Prozessausgabe-Antwortkurve (typischerweise eine Sprungantwort- bzw. Übergangsfunktionskurve) für jede der Prozesseingaben repräsentiert. Diese kurven können z.B. auf Basis einer Reihe von pseudozufälligen Schrittänderungen erzeugt werden, die an jede der Prozesseingänge geliefert werden. Diese Antwortkurven können dazu benutzt werden, um den Prozess in bekannter Weise zu modellieren. Die modellgestützte prädiktive Regelung bzw. Steuerung ist bekannt, weshalb deren Einzelheiten im Folgenden nicht beschrieben werden. Die MPC wird jedoch in allgemeiner Weise in Qin, S. Joe und Thomas A. Badgwell, „An Overview of Industrial Modell Predictive Control Technology", AIChE Conference, 1996, beschrieben.
  • Die MPC hat sich als eine sehr effektive und nützliche Steuerungstechnik erwiesen und wurde in Verbindung mit der Prozessoptimierung benutzt. Um eine Prozess zu optimieren, der MPC benutzt, minimiert oder maximiert ein Optimierer eine oder mehrere der durch die MPC-Routine festgelegten Prozesseingabegrößen so, dass der Prozess zum an einem optimalen Punkt abläuft. Während diese Technik rechnerisch möglich ist, ist es notwendig, diejenigen Prozessgrößen auszuwählen, die z.B. eine signifikante Wirkung auf die Verbesserung der ökonomischen Arbeitsweise des Prozesses haben (z.B. auf Prozessdurchsatz oder Qualität), um den Prozess von einem ökonomischen Standpunkt aus zu optimieren. Der Betrieb des Prozesses an einem von einem finanziellen oder ökonomischen Gesichtspunkt aus optimalen Punkt erfordert typischerweise das Steuern vieler Prozessgrößen in gegenseitiger Abhängigkeit voneinander, nicht nur einer einzigen Prozessgrößen.
  • Eine Optimierung unter Verwendung quadratischer Programmiertechniken oder aktuelleren Techniken wie etwa Innere-Punkt-Methoden wurde als Lösung zum Verwirklichen einer dynamischen Optimierung mit MPC vorgeschlagen. Mit diesen Methoden wird eine Optimierungslösung bestimmt, und der Optimierer stellt der Steuerung Veränderungen in den Steuerungsausgaben (d.h. den Stellgrößen des Prozesses) bereit, wobei er die Prozessdynamik, momentanen Randbedingungen und Optimierungsziele berücksichtigt. Allerdings führt dieser Ansatz zu einem immensen Rechenaufwand und ist bei dem gegenwärtigen technologischen Stand nicht praktikabel anzuwenden.
  • In den meisten Fällen, in denen MPC verwendet wird, ist die Anzahl der innerhalb des Prozesses verfügbaren Stellgrößen (d. h. der Steuerausgaben der MPC-Routine) größer als die Anzahl der Steuergrößen des Prozesses (d. h. der Anzahl der Prozessgrößen, die zu steuern sind, damit sie sich an einem bestimmten Punkt befinden). Als Resultat hiervon gibt es für gewöhnlich mehrere Freiheitsgrade, die für die Optimierung und Behandlung der Randbedingungen verfügbar sind. Theoretisch sollten zum Ausführen eine solchen Optimierung Werte berechnet werden, die – ausgedrückt durch Prozessgrößen, Randbedingungen, Grenzen und ökonomischen Faktoren – einen optimalen Arbeitspunkt definieren. In vielen Fällen sind diese Prozessgrößen durch Randbedingungen eingeschränkte Größen, weil sie auf physikalische Eigenschaften des zugehörigen Prozesses bezogene Grenzen aufweisen, innerhalb derer diese Größen gehalten werden müssen. So ist beispielsweise eine einen Tankfüllstand repräsentierende Prozessgröße auf die maximalen und minimalen Füllstände des tatsächlich physikalisch verfügbaren Tankes begrenzt. Eine Optimierungsfunktion kann die Kosten und/oder die Gewinne berechnen, die mit jeder der eingeschränkten oder Hilfsgrößen verbunden sind, um einen Betrieb zu gewährleisten, bei dem der Gewinn maximiert wird, die Kosten minimiert werden, etc. Messungen dieser Hilfsgrößen können dann als Eingaben der MPC-Routine bereitgestellt und durch die MPC-Routine als Steuergrößen behandelt werden, die einen Sollwert hat, der gleich dem Betriebspunkt für die durch die Optimierungsroutine definierte Hilfsgröße hat.
  • MPC liefert die besten Ergebnisse, die häufig von der Anwendung angefordert wird, nur für eine quadratische Steuerung, bei der die Anzahl der Steuereingaben in den Prozess (d.h. der durch die Steuerroutine gebildeten Stellgrößen) gleich der Anzahl der gesteuerten Prozessgrößen ist (das heißt der Eingaben an die Steuerung). In den meisten Fällen ist allerdings die Anzahl der beschränkten Hilfsgrößen plus der Anzahl der Prozesssteuergrößen größer als die Anzahl der Stellgrößen. Die Implementierung der MPC für derartige nicht-quadratische Konfigurationen führt zu einer unakzeptabel geringen Leistungsfähigkeit.
  • Vermutlich ist versucht worden, dieses Problem zu umgehen, und zwar durch dynamische Auswahl eines Satzes von Steuer- und Randbedingungsgrößen gleich zu der Anzahl der Stellgrößen und durch eine Erzeugung der Steuerung on-line oder während des Prozessbetriebs, um die nächsten Veränderungen der Stellgrößen zu bestimmen. Eine derartige Technik ist allerdings rechnerisch aufwendig, denn sie erfordert eine Matrixinvertierung und kann in einigen Fällen nicht benutzt werden, etwa dann, wenn MPC als ein Funktionsblock in einer Prozesssteuerung implementiert ist. Von gleicher Bedeutung ist, dass sich aus einigen Eingaben/Ausgaben-Kombinationen der erzeugten Steuerung eine schlecht-konditionierte Steuerung ergibt, was zu einem nicht akzeptablen Betrieb führt. Während die Konditionierung der Steuerung überprüft und verbessert werden kann, wenn die Konfiguration der Steuerung offline aufgesetzt wird, bedeutet diese Aufgabe im Online-Betrieb eine beträchtliche Last und ist praktisch unmöglich auf der Steuerungsebene zu implementieren.
  • Eine integrierte Optimierungs- und Steuerungstechnik gemäß der Erfindung kombiniert eine Optimierungsprozedur mit einer erweiterten Steuerungsprozedur, wie einer modellbasierten prädiktiven Steuerung, bei der die Anzahl der Steuer- und Hilfsgrößen größer oder kleiner als die Anzahl der Stellgrößen innerhalb der Prozessanlage sein kann. Die Technik bestimmt zuerst eine Sprungantwortmatrix, die die Korrelation zwischen Änderungen der Stellgrößen und jeder der innerhalb eines Optimierers verwendeten Prozessgrößen (die Steuergrößen und Hilfsgrößen sein können) definiert, um den optimalen Betriebspunkt für den Prozess zu bestimmen. Ein Teilsatz der Prozesssteuergrößen und Hilfsgrößen, der eine Anzahl aufweist, die gleich zu oder kleiner als die Anzahl der Stellgrößen ist, wird zur Verwendung als Eingaben an die MPC-Routine während des Prozessbetriebes ausgewählt. Die auf diesem Teilsatz der Steuer- und Hilfsgrößen und Stellgrößen basierende Verstärkungsmatrix für die MPC-Steuerung wird dann zur Erzeugung der während des Betriebs der MPC-Routine verwendeten MPC-Steuerung genutzt. Danach berechnet die Optimierer-Routine während jedem Scan der Prozesssteuerung das optimale Betriebsziel von jeder Größe aus dem vollständigen Satz von Steuer- und Hilfsgrößen und stellt einen Satz von abgeleiteten Zielbetriebspunkten für jede Größe des gewählten Teilsatzes der Steuer- und Hilfsgrößen der MPC-Routine als Eingaben bereit. Die MPC-Routine bestimmt sodann Änderungen in den Stellgrößen zum Einsatz bei der Prozesssteuerung durch die vorgegebene MPC-Matrix unter Verwendung des Teilsatzes der Steuer- und Hilfsgrößen als Eingaben. Typischerweise werden für den Teilsatz der Steuer- und Hilfsgrößen diejenigen Steuer- und Hilfsgrößen ausgewählt, die Sprungantworten mit dem höchsten Verstärkungsfaktor und der schnellsten Antwortzeit für eine der Stellgrößen aufweisen. Diese Technik ermöglicht es, die MPC-Routine zu verwenden, die die gleiche Anzahl von Eingaben und Ausgaben hat, während es gleichzeitig ermöglicht wird, dass eine Optimierungsroutine den optimalen Betriebspunkt des Prozesses unter Verwendung einer Optimierungsroutine bestimmt, die mehr Steuer- und Hilfsgrößen einbezieht, als Stellgrößen innerhalb des Prozesses vorliegen. Diese Technik ist stabil, weil sie so arbeitet, dass sie in Reaktion auf Störungen und Rauschen innerhalb des Prozesses schnell auf einen gewünschten Betriebspunkt zu steuert, und ist weiterhin rechnerisch einfach, da sie keine Neuberechnung der MPC-Matrix während jedes Scans des Prozesssteuerungssystems erfordert.
  • 1 ist ein Blockdiagramm eines Prozesssteuerungssystems, enthaltend ein Steuerungsmodul mit einem erweiterten, einen Optimierer mit einer MPC-Steuerung integrierenden Steuerungsfunktionsblock;
  • 2 ist ein Blockdiagramm des erweiterten, einen integrierten Optimierer und eine MPC-Steuerung enthaltenden Steuerungsfunktionsblocks aus 1;
  • 3 ist ein die Art und Weise einer Erzeugung und Installation des integrierten Optimierers und des MPC-Steuerungsfunktionsblock aus 2 illustrierendes Flussdiagramm;
  • 4 ist ein den Betrieb des integrierten Optimierers und der MPC-Steuerung aus 2 während des Onlineprozessbetriebs illustrierendes Flussdiagramm;
  • 5 ist eine einen erweiterten Steuerblock innerhalb eines Steuermoduls verdeutlichende Bildschirmanzeige einer die Prozesssteuerung ausführenden Konfigurationsroutine;
  • 6 ist eine Dialogbox darstellende, auf die Eigenschaften des erweiterten Steuerungsblocks von 5 verweisende Bildschirmanzeige einer Konfigurationsroutine;
  • 7 ist eine die Art und Weise einer Auswahl und eine Spezifizierung von Eingaben zu und Ausgaben aus einem erweiterten Steuerungsfunktionsblock illustrierende Bildschirmdarstellung einer in der Darstellung von 5 abgebildeten Konfigurationsroutine;
  • 8 ist eine von einer Konfigurationsroutine bereitgestellte Bildschirmdarstellung, die es einem Nutzer oder Operator ermöglicht, eine Zielfunktion aus einem Satz von Zielfunktionen auszuwählen, die zum Erzeugen eines erweiterten Steuerungsblocks benötigt werden.
  • 9 ist eine Bildschirmdarstellung eines Testbildschirms, der dazu verwendet werden kann, um es einem Nutzer zu ermöglichen, ein Testen und ein Erzeugen eines Prozessmodells während des Erzeugens eines erweiterten Steuerungsblocks auszuführen;
  • 10 ist eine Bildschirmdarstellung einer eine Anzahl von Sprungantworten darstellenden Konfigurationsroutine, die die Antwort verschiedener Steuer- und Hilfsgrößen auf eine bestimmte Stellgröße angeben;
  • 11 ist eine Bildschirmdarstellung einer Konfigurationsroutine, die die Art und Weise der Auswahl einer als primär mit der Stellgröße verknüpften Steuer- und Hilfsgröße aus 9 illustriert;
  • 12 ist eine Bildschirmdarstellung einer eine Anzahl von Sprungantworten darstellenden Konfigurationsroutine, die die Antwort der gleichen Steuer- und Hilfsgrößen auf verschiedene Stellgrößen angeben;
  • 13 ist eine Bildschirmdarstellung die die Art und Weise eines Kopierens einer in ein verschiedenes Anwendungsmodell zu kopierenden Sprungantwort zeigt;
  • 14 ist eine die Art und Weise einer Ansicht und einer Änderung einer Sprungantwortkurve darstellende Bildschirmanzeige;
  • 15 ist eine einen Dialogbildschirm darstellende Bildschirmanzeige, der Informationen an den Operator während des Betriebs des erweiterten Steuerungsblocks bereitstellt; und
  • 16 ist eine einen Diagnosebildschirm darstellende Bildschirmanzeige, der einem Nutzer oder Operator zum Ausführen von Diagnosen auf dem erweiterten Steuerungsblock bereitgestellt wird.
  • Unter Bezugnahme auf 1 enthält ein Prozesssteuerungssystem 10 eine Prozesssteuerung 11, die kommunikativ mit einem Datenhistorian 12 und einer oder mehreren Hostworkstations oder Computern 13 (die von jedem Typ von Personalcomputer, Workstations usw. sein können) verbunden sind, wobei diese jeweils einen Anzeigebildschirm 14 aufweisen. Die Steuerung 11 ist ebenfalls mit den Feldgeräten 15 bis 22 über Eingabe/Ausgabe-(I/O)-Karten 26 und 28 verbunden. Der Datenhistorian 12 kann von jedem gewünschten Typ einer Datensammeleinheit sein. Sie kann jeden gewünschten Speichertyp und jede gewünschte oder bekannte Software, Hardware oder Firmware zum Speichern von Daten aufweisen, und kann (wie in 1 gezeigt) von einer der Workstations 13 abgetrennt oder als ein Teil von diesen ausgeführt sein. Die Steuerung 11, die z.B. eine von Fisher-Rosemount-Systems Inc. vertriebene Delta VTM Steuerung sein kann, ist kommunikativ mit den Hostcomputern 13 und dem Datenhistorian 12 bspw. über eine Ethernetverbindung oder jedes andere gewünschte Kommunikationsnetzwerk 29 verbunden. Das Kommunikationsnetzwerk 29 kann in der Form eines Local Area Network (LAN), eines Wide Area Network (WAN), eines Telekommunikationsnetzwerks und dgl. ausgeführt und unter Verwendung fest verdrahteter oder drahtloser Technologie verwirklicht sein. Die Steuerung 11 ist kommunikativ mit den Feldgeräten 15 bis 22 unter Verwendung jeglicher erforderlicher Hardware und Software verbunden, die bspw, mit 4-20 mA Standardgeräten und/oder jedem Smart-Kommunikationsprotokoll, d.h. einem intelligenten Kommunikationsprotokoll, z.B. dem FOUNDATION-Fieldbusprotokoll (Fieldbus), dem HART-Protokoll usw. verknüpft ist.
  • Die Feldgeräte 15 bis 22 können von jedem Gerätetyp, z.B. Sensoren, Ventile, Transmitter, Stellglieder und so weiter sein, während die I/O- Karten 26 und 28 von jedem I/O-Gerätetyp sein können, der mit jedem erforderlichen Kommunikations- oder Steuerprotokoll konform ist. In der in 1 gezeigten Ausführungsform sind die Feldgeräte 15 bis 18 4-20 mA-Standardgeräte, die über analoge Leitungen mit der IO-Karte 26 kommunizieren, während die Feldgeräte 19 bis 22 intelligente Einrichtungen, bzw. Smartgeräte, z.B. Fieldbus-Feldgeräte sind, die über einen digitalen Bus mit der IO-Karte 26 unter Verwendung von Fieldbusprotokoll-Kommunikationen kommunizieren. Natürlich können die Feldgeräte 15 bis 22 passend zu beliebigen anderen geforderten Standards oder Protokollen unter Einschluß beliebiger zukünftig sich entwickelnder Standards oder Protokollen ausgeführt sein.
  • Die Steuerung 11, die eine von mehreren innerhalb der Anlage 10 verteilten Steuerungen sein kann und über mindestens einen eingefügten Prozessor verfügt, verwirklicht oder überwacht eine oder mehrere Prozesssteuerungsroutinen, welche in diese eingespeicherte oder ihnen auf andere Weise zugeordnete Steuerschleifen enthalten können. Die Steuerung 11 kommuniziert ebenfalls mit den Geräten 15 bis 22, den Hostcomputern 13 und dem Datenhistorian 12, um den Prozess auf jede gewünschte Weise zu steuern. Es ist zu betonen, das jede der hier beschriebenen Steuerroutinen oder Elemente Bestandteile enthalten können, die wenn gewünscht, durch unterschiedliche Steuerungen oder von anderen Geräten ausgeführt oder auf diesen realisiert sein können. Ebenso können die hier beschriebenen und in das Prozesssteuerungssystem 10 implementierten Steuerroutinen oder Elemente jede Form, einschließlich Software, Firmware, Hardware usw. annehmen. Für den Zweck der hier gegebenen Darstellung kann ein Prozesssteuerelement jeder beliebige Teil oder Abschnitt eines Prozesssteuerungssystems, einschließlich z.B. eine Routine, ein Block oder ein auf jedem computerlesbaren Medium gespeichertes Modul sein. Die Steuerroutinen, die Module oder ein beliebiger Abschnitt einer Steuerprozedur, z.B. eine Subroutine, Teile einer Subroutine (z.B. Codezeilen) usw. sein können, können in jedem gewünschten Softwareformat, z.B. unter Verwendung von Ladder-Logic, sequenziellen Funktionslisten, Funktionsblockdiagrammen, objektorientierter Programmierung oder jeder anderer Softwareprogrammiersprache oder Designparadigmas ausgeführt sein. Ebenso können die Steuerroutinen in beispielsweise einem oder mehreren EPROM, EEPROM, anwendungsspezifischen integrierten Schaltkreisen (ASICs) oder jedem anderen Hardware- oder Firmwareelement fest eincodiert sein. Weiterhin können die Steuerroutinen unter Verwendung jedes Designwerkzeugs, einschließlich graphischer Designwerkzeuge oder jedes anderen Typs einer Software/Hardware/Firmware-Programmierung oder Designwerkzeugs gestaltet sein. Die Steuerung 11 kann daher zum Verwirklichen einer Steuerstrategie oder Steuerroutine in jeder gewünschten Weise konfiguriert sein.
  • In einer Ausführungsform verwirklicht die Steuerung 11 eine Steuerstrategie unter Verwendung von üblicherweise als Funktionsblöcke bezeichneten Objekten, wobei jeder Funktionsblock ein Bestandteil oder Objekt einer übergeordneten Steuerroutine ist und in Verknüpfung mit anderen Funktionsblöcken (über Kommunikationsbeziehun gen, die als Links oder Verbindungen bezeichnet werden) betrieben wird, um Prozesssteuerschleifen innerhalb des Prozesssteuerungssystems 10 zu verwirklichen. Die Funktionsblöcke führen typischerweise entweder eine Eingabefunktion, die bspw. mit einem Transmitter, einem Sensor oder anderen Messgeräten für Prozessparameter verknüpft ist, eine Steuerfunktion, die z.B. einer PID-, Fuzzylogik-, und dgl. Steuerung ausführenden Steuerroutine zugeordnet ist oder eine Ausgabefunktion aus, die den Betrieb eines Gerätes, z.B. eines Ventils, steuert, um eine physikalische Funktion in dem Prozesssteuerungsystem 10 auszuführen. Natürlich gibt es auch hybride oder andere Funktionsblocktypen. Die Funktionsblöcke können in der Steuerung 11 gespeichert und durch die Steuerung 11 ausgeführt werden. Dies ist typischerweise dann der Fall, wenn diese Funktionsblöcke für 4 – 20 mA-Standardgeräte genutzt werden oder diesen und anderen Typen intelligenter Feldgeräte wie bspw. HART-Geräten, zugeordnet sind. Sie können auch in den Feldgeräten selbst gespeichert und durch die realisiert sein, wobei dies bei Fieldbus-Geräten der Fall sein kann. Während die an dieser Stelle gegebene Beschreibung des Steuerungssystems eine Funktionsblock-Steuerungsstrategie anwendet, die ein objektorientiertes Programmparadigma nutzt, können die Steuerstrategie oder Steuerschleifen oder Module auch unter Verwendung anderer Konventionen, z.B. Ladder-Logic, sequenzieller Funktionslisten (function charts) usw. oder jeder anderer Programmiersprache oder jedes Paradigmas verwirklicht und gestaltet sein.
  • Wie durch den vergrößerten Block 30 aus 1 illustriert ist, kann die Steuerung 11 eine Anzahl von Einzel-Schleifen-Steuerroutinen, dargestellt als die Routinen 32 und 34, enthalten, und eine oder mehrere erweiterte Steuerschleifen, dargestellt als die Steuerschleife 36, ausführen. Jede Schleife wird typischerweise als ein Steuermodul bezeichnet. Die Einzel-Schleifen-Steuerroutinen 32 und 34 sind als Einzel-Schleifen-Steuerungen ausführende Routinen dargestellt, die einen Einzeleingang/Einzelausgang-Fuzzylogik-Steuerblock bzw. einen Einzeleingang/Einzelausgang-PID-Steuerblock nutzen. Sie sind mit geeigneten Funktionsblöcken für einen Analogeingang (AI) und einen Analogausgang (AO) verbunden. Diese können Prozesssteuerungsgeräten, z.B. Ventilen, Messgeräten, bspw. Temperatur- und Messtransmittern oder jedem anderen Gerät innerhalb des Prozesssteuerungssystems 10 zugeordnet sein. Die erweiterte Steuerschleife 36 ist als einen erweiterten Steuerblock 38 enthaltend dargestellt. Dieser weist Eingänge auf, die kommunikativ mit verschiedenen AI- Funktionsblöcken verbunden sind und Ausgänge auf, die mit verschiedenen AO- Funktionsblöcken verbunden sind. Darüber hinaus können die Eingänge und Ausgänge des erweiterten Steuerblocks 38 kommunikativ mit jeden anderen gewünschten Funktionsblöcken oder Steuerelementen verbunden sein, um andere Eingabetypen zu empfangen und andere Steuerausgabetypen bereitzustellen. Wie im Folgenden beschrieben wird, kann der erweiterte Steuerblock 38 ein Steuerblock sein, der eine Modell prädiktive Steuerroutine mit einem Optimierer integriert, um eine optimierte Steuerung des Prozesses oder eines Abschnittes des Prozesses auszuführen. Während der erweiterte Steuerblock 38 hier als ein ein Modell prädiktiver Steuerblock (MPC) beschrieben wird, kann der erweiterte Steuerblock 38 jede andere Steuerroutine mit multipler Eingabe/multipler Ausgabe oder Prozedur, z.B. als eine ein neuronales Netzwerk modellierende Steuerroutine, eine multivarable Fuzzylogik-Steuerroutine usw. enthalten. Es versteht sich, dass die in 1 dargestellten Funktionsblöcke, einschließlich des erweiterten Steuerblocks 38, durch die Steuerung 11 ausgeführt oder alternativ in jedem anderen verarbeitenden Gerät, z.B. eine der Workstations 13 oder sogar eines der Feldgeräte 1922, lokalisiert und von diesen ausgeführt werden können.
  • Wie in 1 dargestellt, enthält eine der Workstations 13 eine Erzeugungsroutine 40 für den erweiterten Steuerblock, die zum Erzeugen, einem Laden und Implementieren des erweiterten Steuerblocks 38 verwendet wird. Während die Erzeugungsroutine 40 für den erweiterten Steuerblock in einem Speicher innerhalb der Workstation 13 und durch einen darin enthaltenen Prozessor gespeichert und ausgeführt werden kann, ist es möglich, dass diese Routine (oder jeder beliebige Teil derselben) zusätzlich oder alternativ dazu in jedem anderen Gerät innerhalb des Prozesssteuerungssystems 10 gespeichert und ausgeführt wird, falls dies so gewünscht ist. Allgemein gesprochen enthält die Erzeugungsroutine 40 für den erweiterten Steuerblock eine Steuerblockerzeugungsroutine 42, die einen erweiterten Steuerblock wie im Folgenden beschrieben erzeugt und diesen erweiterten Steuerblock mit dem Prozesssteuersystem verbindet. Weiterhin enthält sie eine Prozessmodellierungsroutine 44, die ein Prozessmodell für den Prozess oder einen Teil des Prozesses auf der Basis der durch den erweiterten Steuerblock gesammelten Daten erzeugt. Sie weist weiterhin eine Steuerlogikparameter-Erzeugungsroutine 46 auf, die Steuerlogikparameter für den erweiterten Steuerblock aus dem Prozessmodell erzeugt und diese Steuerlogikparame ter herunter lädt oder in dem erweiterten Steuerblock zur Verwendung in einer Steuerung des Prozesses speichert, und eine Optimiererroutine 48, die einen Optimierer zur Verwendung mit dem erweiterten Steuerblock erzeugt. Es ist selbstverständlich, dass die Routinen 42, 44, 46 und 48 aus einer Folge verschiedener Routinen bestehen können, bspw. einer ersten Routine, die ein erweitertes Steuerelement erzeugt, das Steuereingänge, die zum Empfangen von Prozessausgaben ausgestaltet sind und Steuerausgänge hat, die zum Bereitstellen von Steuersignalen an die Prozesseingänge angepaßt sind. Weiterhin einer zweiten Routine, die es einem Nutzer ermöglicht, das erweiterte Steuerelement innerhalb der Prozesssteuerroutine herunterzuladen und kommunikativ zu verbinden (wobei dies jede gewünschte Konfigurationsroutine sein kann). Eine dritte Routine benutzt das erweiterte Steuerelement zum Bereitstellen von Anregungskurven an jeden der Prozesseingänge, Eine vierte Routine verwendet das erweiterte Steuerelement zum Sammeln von die Antwort auf jede der Prozessausgaben auf die Anregungskurven wiedergebende Daten. Eine fünfte Routine wählt einen Eingabensatz für den erweiterten Steuerblock entweder selbst aus oder ermöglicht es einem Nutzer, diese auszuwählen. Eine sechste Routine erzeugt ein Prozessmodell, eine siebente Routine entwickelt erweiterte Steuerlogikparameter aus dem Prozessmodell. Eine achte Routine platziert die die erweiterte Steuerlogik und, falls gebraucht, das Prozessmodell innerhalb des erweiterten Steuerelementes, um dem erweiterten Steuerelement die Steuern des Prozesses zu ermöglichen. Und schließlich wählt ein neunte Routine einen Optimierer zur Verwendung in dem erweiterten Steuerblock 38 entweder selbst aus oder ermöglicht es einem Nutzer, diesen auszuwählen.
  • 2 zeigt ein detaillierteres Blockdiagramm einer Ausführungsform des erweiterten Steuerblocks 38, der kommunikativ an einen Prozesss 50 gekoppelt ist, wobei, wie zu entnehmen ist, der erweiterte Steuerblock 38 einen Satz von Stellgrößen MV erzeugt, die an andere wiederum mit Steuereingängen des Prozesses 50 verbundene Funktionsblöcke bereitgestellt wird. Wie in 2 dargestellt, enthält der erweiterte Steuerblock 38 einen MPC-Steuerblock 52, einen Optimierer 54, einen Zielkonversionsblock 55, eine Sprungantwortmodell- oder Steuermatrix 56 und einen Eingabe-Verarbeitungs/Filter-Block 58. Die MPC-Steuerung 52 kann jede übliche, quadratische M mal M (wobei M von jeder Zahl größer als 1 sein kann) MPC- Routine oder Prozedur sein, die die gleiche Anzahl von Eingängen und Ausgängen hat. Die MPC-Steuerung 52 empfängt als Eingaben einen Satz von innerhalb des Prozesses 50 gemessenen N Steuerungs- und Hilfsgrößen CV und AV (die Vektoren dieser Werte sind), einen Satz von Störgrößen DV, die bekannte oder erwartete, in dem Prozess 50 zu einem zukünftigen Zeitpunkt auftretende Veränderungen oder Störungen sind, und einen Satz von Stabilzustands-Zielsteuerungs und -Hilfsgrößen CVT und AVT, die von dem Zielkonversionsblock 55 bereitgestellt werden. Die MPC-Steuerung 52 verwendet diese Eingaben, um einen Satz von M Stellgrößen MV (in Form von Steuersignalen) zu erzeugen und gibt die Stellgrößen MV – Signale zum Steuern an den Prozess 50 aus.
  • Weiterhin errechnet die MPC-Steuerung 52 einen Satz von vorausgesagten prädiktiven Beharrungszustandssteuergrößen CVSS und -hilfsgrößen AVSS zusammen mit einem Satz von vorausgesagten Beharrungsstellgrößen MVSS, die die vorausgesagten Werte der Steuergrößen CV, der Hilfsgrößen AV bzw, der Stellgrößen MV am Steuerhorizont repräsentieren und stellt diese an den Eingabe-Verarbeitungs/Filterblock 58 bereit. Der Eingabe-Verarbeitungs/Filterblock 58 verarbeitet die festgestellten vorausgesagten Beharrungswerte der Steuerungs-, Hilfs- und Stellgrößen CVSS, AVSS und MVSS, um Rauscheffekte und Einflüsse nicht vorausgesagter Störungen auf diese Größen zu reduzieren. Es versteht sich, dass der Eingabe-Verarbeitungs/Filterblock 58 einen Tiefpass-Filter oder eine beliebige andere Eingabeverarbeitung aufweisen kann, die die Effekte von Rauschen, Modellierungsfehlern und Störungen auf diese Werte reduziert und die gefilterten Steuer-, Hilfs- und Stellgrößen CVSSfil, AVSSfil und MVSSfil an den Optimierer 54 bereitstellt.
  • Der Optimierer 54 ist, bei diesem Beispiel, ein Optimieren mit linearer Programmierung (LP), der eine Zielfunktion (OF) benutzt, die von einem Auswahlblock 62 für das Ausführen einer Prozessoptimierung bereitgestellt werden kann. Alternativ dazu kann der Optimierer 54 ein Optimierer mit quadratischer Programmierung sein. Dieser ist ein Optimierer mit einem linearen Modell und einer quadratischen Zielfunktion. Allgemein gesagt wird die Zielfunktion OF mit jeder aus der Zahl der Steuer-, Hilfs- und Stellgrößen verknüpfte Kosten und Gewinne bestimmen und der Optimierer 54 durch eine Maximierung oder Minimierung der Zielfunktion Zielwerte für diese Größen vorgeben. Der Auswahlblock 62 kann die Zielfunktion OF auswählen, die durch den Optimierer 54 als eine aus einem Satz von vorab gespeicherten Zielfunktionen 64 bereitgestellt wird. Diese repräsentieren jeweils verschiedene Arten einer Festlegung eines optimalen Betriebs des Prozesses 50. Beispielsweise kann eine der vorab gespeicher ten Zielfunktionen 64 zum Maximieren des Gewinns der Anlage eingerichtet sein. Eine andere der Zielfunktionen 64 kann daraufhin eingerichtet sein, die Verwendung eines bestimmten Rohmaterials mit begrenztem Vorrat zu minimieren, während schließlich eine andere der Zielfunktionen 64 dazu eingerichtet sein kann, um die Qualität des in dem Prozess 50 hergestellten Produktes zu maximieren. Generell nutzt die Zielfunktion einen mit jeder Bewegung einer Steuer-, Hilfsgröße und Stellgröße verbunden Kosten oder Gewinn, um den optimalsten Prozessbetriebspunkt innerhalb des Satzes akzeptabler Punkte festzulegen, die durch die Sollpunktwerte oder Bereiche der Steuergrößen CV und den Grenzen der Hilfs- und Stellgrößen AV und MV definiert sind. Natürlich kann jede gewünschte Zielfunktion anstelle oder zusätzlich zu den hier beschriebenen Funktionen verwendet werden, einschließlich von Zielfunktionen, die jede betreffende Zahl, z.B. die Verwendung von Rohmaterial, Gewinnabilität usw. in einem gewissen Maße optimieren.
  • Um aus den Zielfunktionen 64 eine Funktion auszuwählen, kann ein Nutzer oder Operator einen Verweis auf die zu verwendende Zielfunktion 64 durch eine Auswahl dieser Zielfunktion an einem Operator- oder Nutzerterminal (wie zum Beispiel eine der Workstations 13 aus 1) angeben, wobei diese Auswahl über eine Eingabe 66 an den Auswahlblock 62 geleitet wird. In Antwort auf die Eingabe 66 stellt der Auswahlblock 62 die ausgewählte Zielfunktion OF an den Optimierer 54 bereit. Natürlich kann der Nutzer oder Operator die während des Betriebs des Prozesses verwendete Zielfunktion ändern. Wenn gewünscht, kann eine vorgegebene Zielfunktion in Fällen verwendet werden, bei denen der Nutzer keine Zielfunktion anbietet oder auswählt. Eine mögliche vorgegebene Zielfunktion wird weiter unten genauer beschrieben. Während die Zielfunktionen als Bestandteil des erweiterten Steuerblocks 38 dargestellt sind, können die verschiedenen Zielfunktionen in dem Operatorterminal 13 aus 1 gespeichert sein und eine dieser Zielfunktionen kann an den erweiterten Steuerblock 38 während der Erstellung oder Erzeugung dieses Blocks bereitgestellt werden.
  • Zusätzlich zu der Zielfunktion OF empfängt der Optimierer 54 als Eingaben einen Satz von Steuergrößen, Sollwerten (die typischerweise spezifizierte Sollwerte für die Steuergrößen CV des Prozesses 50 sind und durch den Operator oder einen anderen Nutzer verändert werden können) und einen Bereich und eine Gewichtung oder eine mit jeder der Steuergrößen CV verknüpfte Priorität. Der Optimierer 54 empfängt zusätz lich dazu einen Satz von Bereichen oder Randbedingungen und einen Satz von Gewichtungen oder Prioritäten für die Hilfsgrößen AV und einen Satz von Grenzen für die Stellgrößen MV, die zur Steuerung des Prozesses 50 verwendet werden. Allgemein gesagt legen die Bereiche der Hilfsgrößen und Stellgrößen die Grenzen (typischerweise auf der Grundlage von physikalischen Eigenschaften der Anlage) für die Hilfsgrößen und Stellgrößen fest, während die Bereiche für die Steuergrößen einen Bereich angeben, in dem die Steuergrößen eine befriedigende Steuerung des Prozesses betreiben. Die Gewichtungen für die Steuer- und Hilfsgrößen legen die relative Wichtigkeit der aufeinander bezogenen Steuergrößen und Hilfsgrößen während des Optimierungsprozesses fest und können gegebenenfalls dazu verwendet werden, um dem Optimierer eine Generierung einer Steuerungsziellösung zu ermöglichen, wenn einige der Randbedingungen verletzt werden.
  • Während des Betriebs kann der Optimierer 54 eine lineare Programmierungstechnik (LP) zum Ausführen der Optimierung verwenden. Wie bekannt, ist eine lineare Programmierung ein mathematisches Verfahren zum Lösen eines Satzes von linearen Gleichungen und Ungleichungen, die eine gewisse zusätzliche, als Zielfunktion bezeichnete Funktion maximieren oder minimieren. Wie oben dargestellt, kann die Zielfunktion einen ökonomischen Wert wie Kosten oder Gewinne, aber an deren Stelle auch andere Zielvorgaben ausdrücken. Ferner versteht sich, dass die Beharrungsversträrkungsmatrix die Beharrungszustandsverstärkung für jedes mögliche Paar der Stellgrößen und der Steuer- und Hilfsgrößen definiert. M.a.W. definiert die Beharrungsverstärkungsmatrix die Beharrungszustandsverstärkung in jeder Steuer- und Hilfsgröße für eine Einheitsänderung in jeder der Stellgrößen und Störgrößen. Diese Beharrungsverstärkungsmatrix ist im allgemeinen eine N mal M- Matrix, wobei N die Anzahl der Steuer- und Hilfsgrößen und M die Anzahl der in der Optimierroutine verwendeten Stellgrößen ist. Im allgemeinen kann N größer, gleich oder kleiner als M sein, mit dem meist auftretenden Fall, dass N größer als M ist.
  • Unter Verwendung jedes bekannten oder üblichen LP-Algorithmus oder -Verfahrens, führt der Optimierer 54 Iterationen aus, um den Satz von Zielstellgrößen MVT (wie durch die Beharrungszustandsverstärkungsmatrix festgelegt) zu finden, der die ausgewählte Zielfunktion OF maximiert oder minimiert. Daraus ergibt sich ein Prozessbetrieb, der die Sollwertbereichsgrenzen der Steuergrößen CV, die Randbedingungs grenzen der Hilfsgrößen AV und die Grenzen der Stellgrößen MV trifft oder in diese hinein fällt. In einer Ausführungsform stellt der Optimierer 54 auch die Veränderungen in den Stellgrößen fest und wendet die Angabe auf die vorausgesagten Beharrungszustands-Steuergrößen, -Hilfsgrößen und -Stellgrößen CVSSfil, AVSSfil und MVSSfil an, um die Veränderung in dem Prozessbetrieb aus dessen aktuellem Betrieb heraus festzustellen und somit den dynamischen Betrieb der MPC-Steuerroutine während des Prozesses der Annäherung an das Ziel oder den optimalen Prozessbetriebspunkt festzustellen. Dieser dynamische Betrieb ist von großer Bedeutung, weil es notwendig ist, sicherzustellen, dass keine der Randbedingungsgrenzen während der Bewegung von dem aktuellen Betriebspunkt zu dem Zielbetriebspunkt verletzt werden.
  • In einer Ausführungsform kann der LP-Optimierer 54 ausgeführt sein, um eine Zielfunktion der folgenden Form zu minimieren: Q = Pt·A·ΔMV + CtΔMVwobei:
    Q = Gesamtkosten/Gewinn
    P = den AVs und CVs zugeordneter Gewinnvektor
    C = den MVs zugeordneter Kostenvektor
    A = Verstärkungsmatrix
    ΔMV = Vektor für eine berechnete Veränderung in den MVs.
  • Die Gewinnwerte sind positive Zahlen und die Kostenwerte negative Zahlen, um deren Einfluss auf die Zielsetzung anzuzeigen. Unter Anwendung dieser Zielfunktion errechnet der LP-Optimierer 54 diejenigen Veränderungen in den Stellgrößen MV, die die Zielfunktionen minimieren. Dabei wird gesichert, dass die Steuergrößen CV innerhalb eines Bereiches um den Zielsollwert verbleiben, die Hilfsgrößen AV innerhalb ihrer oberen und unteren Randbedingungsgrenzen verbleiben und dass die Stellgrößen MV innerhalb ihrer oberen und unteren Grenzen sind.
  • In einer zu verwendenden Optimierungsprozedur werden inkrementelle Werte von Stellgrößen an der aktuellen Zeit (t) und eine Summe von Inkrementen der Stellgrö ßen über den Steuerhorizont mit inkrementellen Werten der am Ende des Prädiktionshorizonts festgestellten Steuer- und Hilfsgrößen anstelle von auf den Zustand bezogenen aktuellen Werten verwendet. Dies ist für LP-Anwendungen typisch. Natürlich kann der LP-Algorithmus in geeigneter Weise für diese Variation modifiziert werden. Auf jeden Fall kann der LP-Optimierer 54 ein Beharrungszustandsmodell verwenden und daher ist eine Beharrungszustandsbedingung für diese Anwendung erforderlich. Mit einem normalerweise in der MPC-Gestaltung verwendeten Prädiktionshorizont ist ein zukünftiger Beharrungszustand für einen selbstregulierenden Prozess garantiert. Eine mögliche vorausgesagte Prozessbeharrungszustandsgleichung für einen m × n Eingabe-Ausgabeprozess mit einem Prädiktionshorizont p, einem Steuerhorizont c, ausgedrückt in der inkrementellen Form ist: ΔCV (t + p) = A·ΔMV (t + c)wobei
    Figure 00180001
    die vorausgesagten Veränderungen in den Ausgaben am Ende des Prädiktionshorizonts (t + p) bezeichnet,
    Figure 00180002
    die Prozessbeharrungszustands – m × n -Verstärkungsmatrix ist,
    Figure 00180003
    die Veränderungen in den Stellgrößen am Ende des Steuerungshorizontes (p + c) bezeichnet.
  • Der Vektor ΔMV(p + c) repräsentiert die Summe der Veränderungen über den Steuerhorizont, die durch jede Steuerungsausgabe mvi gemacht wurden, sodass gilt:
    Figure 00190001
  • Die Veränderungen sollten die Grenzen sowohl der Stellgrößen MV als auch der Steuergrößen CV erfüllen (hier werden die Hilfsgrößen als Steuergrößen behandelt): MVmin ≤ MVcurrent + ΔMV (t + c) ≤ MVmax CVmin ≤ CVpredicted + ΔCV (t + p) ≤ CVmax
  • In diesem Fall kann die Zielfunktion zum Maximieren des Produktwertes und zum Minimieren der Rohmaterialkosten zusammenfassend so definiert werden:
    Figure 00190002
    wobei:
    UCV der Kostenvektor für eine Einheitsänderung in dem Steuergrößen CV-Prozesswert ist; und
    UMV der Kostenvektor für eine Einheitsänderung in dem Stellögrößen MV-Prozesswert ist.
  • Unter Anwendung der oben genannten ersten Gleichung kann die Zielfunktion in Termen der Stellgrößen MV ausgedrückt werden als:
    Figure 00190003
  • Um eine optimale Lösung zu ermitteln, berechnet der LP-Algorithmus die Zielfunktionen für einen initialen Eckpunkt in dem durch diese Gleichung definierten Gebiet, und verbessert die Lösung an jedem nächst folgenden Schritt, bis der Algorithmus den Eckpunkt mit dem maximalen (oder minimalen) Wert der Zielfunktion als eine optimale Lösung ermittelt. Der festgestellte optimale Stellgrößenwert wird als die zu erhaltenden Zielstellgröße MVT innerhalb des Steuerhorizontes verwendet.
  • Allgemein gesagt gibt der Ablauf des LP-Algorithmus auf der vorbereiteten Matrix drei mögliche Resultate zurück. In einem ersten Fall gibt es eine eindeutige Lösung für die Zielstellgrößen MVT. In einem zweiten Fall ist die Lösung unbeschränkt, wobei dies nicht auftreten sollte, wenn jede Steuer- und Hilfsgröße eine oberen und eine unteren Grenze besitzen. In einem dritten Fall gibt es keine Lösung, wobei dies bedeutet, dass die Grenzen oder Abhängigkeiten der Hilfsgrößen zu eng sind. Um den dritten Fall zu behandeln können die allgemeinen Randbedingungen gelockert werden, um eine Lösung zu erhalten. Die grundlegende Prämisse dabei ist, das die Grenzen der Stellgrößen (Hi/Lo-Grenzen) nicht durch den Optimierer geändert werden können. Das Gleiche trifft auch für die Grenzen oder Randbedingungen der Hilfsgröße zu (Hi/Lo-Grenzen). Allerdings kann der Optimierer von einem Ansteuern der Steuergröße CV an den spezifizierten Sollpunkt (CV-Sollwertsteuerung) zu einem Ansteuern der Steuergrößen zu jedem der Werte innerhalb eines Bereiches von oder um den Sollwert herum wechseln (CV-Bereichssteuerung). In diesem Fall wird es den Werte der Steuergrößen erlaubt, sich innerhalb eines Bereiches anstatt an einem spezifischen Sollwert einzustellen. Gibt es mehrere Hilfsgrößen AV, die ihre Randbedingungen verletzen und ergibt das Umschalten von der CV-Sollwertsteuerung zur CV-Bereichssteuerung keine Lösung, ist es auch möglich, die Randbedingungen der Hilfsgrößen auf der Grundlage der vorliegenden Gewichtungen oder Prioritätsangaben freizugeben oder zu ignorieren. In einer Ausführungsform kann beispielsweise eine Lösung durch eine Minimierung des quadratischen Fehlers der Hilfsgrößen, die es jeder Größe erlaubt, ihre jeweiligen Randbedingungen zu verletzen oder durch ein Ungültigsetzen der Randbedingungen der Hilfsgröße mit niedrigster Priorität in einer fortschreitenden Weise ermittelt werden.
  • Wie oben bemerkt, kann die Zielfunktion OF ausgewählt werden oder als Voreinstellung durch das Steuerblockerzeugungsprogramm 40 gesetzt sein. Eine Methode zum Erstellen einer solchen Voreinstellung wird weiter unten bereitgestellt. Während es insbesondere erforderlich ist, das Optimierungsvermögen bereitzustellen, fordern viele Situationen möglicherweise nur, das die Sollwerte für die Steuergrößen in einer Weise behandelt werden, die die Betriebs-Randbedingungen der Hilfsgrößen und Stellgrößen nach wie vor befolgt. Für diese Anwendungen kann der Block 38 so konfiguriert sein, dass dieser ausschließlich als MPC-Funktionsblock betrieben wird. Um diesen Bedienkomfort bereitzustellen, kann eine vorab eingestellte „Betriebs"zielfunktion automatisch mit voreingestellten Kosten erzeugt werden, die den verschiedenen Größen darin und einhergehend mit vorgegebenen Hilfsgrößen AV-Gewichtungen zugeordnet sind. Diese Voreinstellungen können alle Kosten für die Hilfsgrößen AV und die Stellgrößen MV gleichsetzen oder eine andere voreingestellte Kostenzuordnungen für die Hilfsgrößen und Stellgrößen AV und MV bereitstellen. Wenn eine Expertenoption ausgewählt worden ist, kann der Nutzer zusätzliche Optimierungsauswahlen erzeugen und deren damit zugeordnete Kosten für die verschiedenen Zielfunktionen 64 festlegen. Dem Expertennutzer wird es ebenfalls erlaubt, die vorgegebenen Hilfsgrößen- und die Steuergrößen- AV und CV-Gewichtungen für die vorgegebene Zielfunktion zu modifizieren.
  • Bei einer Ausführungsform, wenn z.B. Wirtschaftlichkeiten für die Prozesskonfigurationen nicht definiert sind, kann die Zielfunktion aus der MPC-Konfiguration automatisch konstruiert werden. Im Allgemeinen kann die Zielfunktion unter Anwendung folgender Formel konstruiert werden:
    Figure 00210001
  • Die Größen Cj und pj können aus den Konfigurationseinstellungen definiert werden. Insbesondere ist unter der Annahme, dass der Sollwert der Steuergröße CV nur an LL oder HL definiert werden kann, der pj–Wert in folgender Weise definiert:
    pj = -1, wenn der Sollwert an LL definiert ist oder Minimieren ausgewählt wurde; und
    pj = 1 wenn der Sollwert an HL definiert ist oder Maximieren ausgewählt wurde.
  • Unter der Annahme, das keine Konfigurationsinformation für die Hilfsgrößen AV eingegeben wurde, ist pj = 0 für alle Hilfsgrößen AV. In vergleichbarer Weise hängt für die Stellgrößen MV der Cj–Wert davon ab, ob das bevorzugte Stellgrößenziel MVT definiert ist oder nicht.
  • Wenn das bevorzugte Stellgrößenziel MVT definiert sind, gilt:
    Cj = 1, wenn MVT an HL (obere Grenze) ist oder Maximieren gewählt wurde, Cj = -1, wenn MVT an LL (untere Grenze) ist oder Minimieren ausgewählt wurde, und
    Cj = 0, wenn MVT nicht definiert ist.
  • Wenn gewünscht kann die Auswahl für die Benutzung des Optimierers 54 in Zusammenhang mit der MPC-Steuerung 52 einstellbar sein, um somit einen gewissen Optimierungsgrad zu ermöglichen. Um diese Funktion auszuführen, kann die Änderung in den von der Steuerung 52 verwendeten Stellgrößen MV durch ein Anlegen verschiedener Gewichtungen an die Änderungen in den Stellgrößen MV, die durch die MPC-Steuerung 52 und den Optimierer 54 festgelegt werden, abgeändert werden. Eine solche gewichtete Kombination der Stellgrößen MV wird hier als eine effektive MV (MVe ff) bezeichnet. Die effektive MVeff kann wie folgt gewonnen werden: ΔMVe ff = ΔMVmpc (1 + α/S) + ΔMVopt (1 - α) 0 < α < 1wobei S willkürlich oder heuristisch ausgewählt wird. Typischerweise wird S größer als 1 und in der Größenordnung von 10 sein.
  • Hier, mit α = 1, trägt der Optimierer zu der effektiven Ausgabe bei, wie dies bei der Generierung vorgegeben worden ist. Mit α = 0 stellt die Steuerung nur eine MPC- dynamische Steuerung bereit. Natürlich stellt der Bereich zwischen 0 und 1 verschiedene Beiträge des Optimierers und der MPC-Steuerung bereit.
  • Die oben beschriebene Standard-Zielfunktion kann dazu verwendet werden, um den Betrieb des Optimierers während unterschiedlicher möglicher Betriebsmodi desselben zu verwirklichen. Insbesondere dann, wenn die Anzahl der Steuergrößen CV der Anzahl der Stellgrößen MV entspricht, ist das erwartete Verhalten mit den Standard- Einstellwerten derart, dass die Sollgrößen der Steuergröße CV aufrecht erhalten werden, solange die Hilfsgrößen AV und die Stellgrößen MV innerhalb ihrer Grenzen zu erwarten sind. Wenn vorherzusehen ist, dass eine Hilfsgröße oder eine Stellgröße ihre Grenze verletzen wird, werden die Betriebssollgrößen der Steuergrößen innerhalb ihres Bereiches geändert, um diese Grenzen vor einer Verletzung zu bewahren. Wenn in diesem Fall der Optimierer 54 keine Lösung finden kann, die die Grenzen der Hilfsgrößen und Stellgrößen erfüllt und dabei die Steuergrößen innerhalb ihres Bereichs belässt, werden die Steuergrößen innerhalb ihres Bereiches aufrecht erhalten, während es den Hilfsgrößen erlaubt wird, sich von ihren Randbedingungs-Grenzen zu entfernen. Beim Auffinden der besten Lösung werden diejenigen Hilfsgrößen AV, bei denen mit einem Verletzen einer Grenze zu rechnen ist, gleichbehandelt und ihre durchschnittliche Grenzabweichung minimiert.
  • Um dieses Verhalten zu erreichen, werden die in der Zielfunktion verwendeten Standard-Kosten/Gewinne automatisch so eingestellt, dass den Steuergrößen CV ein Gewinn von 1 zugeordnet wird, wenn der Bereich definiert ist, dass dieser eine Abweichung unter den Sollwert erlaubt, und den Steuergrößen CV ein Gewinn von -1 zugeordnet wird, wenn der Bereich so definiert ist, dass dieser eine Abweichung über den Sollwert erlaubt. Den Hilfsgrößen AV innerhalb der Grenzen wird ein Gewinn von 0 zugeordnet und den Stellgrößen MV wird ein Kosten von 0 zugeordnet.
  • Wenn die Anzahl der Steuergrößen CV kleiner als die Anzahl der Stellgrößen MV ist, können dann die zusätzlichen Freiheitsgrade dazu verwendet werden, um die Bedingungen anzusteuern, die der finalen Ruhelage der konfigurierten Stellgrößen MV zugeordnet sind. Dann werden die Sollwerte der Steuergröße (sofern Steuergrößen CV definiert sind) aufrecht erhalten, solange die Hilfsgrößen und Stellgrößen innerhalb ihrer Grenzen zu erwarten sind. Die Durchschnittsabweichung der Stellgrößen von der konfigurierten finalen Ruheposition wird minimiert. Wenn zu erwarten ist, das eine oder mehrere der Hilfsgrößen und Stellgrößen ihre Grenzen verletzen werden, werden die Betriebssollwerte der Steuergrößen innerhalb ihrer Bereiche geändert, um eine Verletzung dieser Grenzen zu verhindern. Falls Mehrfachlösungen existieren, wird unter dieser Bedingung die für die Steuerung verwendete Lösung die Durchschnittsabweichung der Stellgrößen von der konfigurierten finalen Ruhelage minimieren.
  • Wenn der Optimierer 54 keine Lösung finden kann (d.h. dass eine Lösung nicht existiert), die die Hilfsgrößen- und Stellgrößengrenzen nicht erfüllt, während die Steuergrößen innerhalb ihres Bereiches aufrecht erhalten werden, so werden dann die Steuergrößen innerhalb eines Bereiches gehalten, während es den Hilfsgrößen erlaubt wird, sich von deren Randbedingungsgrenzen zu lösen. Mit dem Auffinden der besten Lösung werden die Hilfsgrößen, von denen Verletzung einer Grenze vorauszusehen ist, gleich behandelt, und deren durchschnittliche Grenzabweichung wird minimiert. Um dieses Verhalten zu erreichen, werden die voreingestellten, durch die Zielfunktionen benutzten Kosten/Gewinne automatisch so eingestellt, dass den Steuergrößen ein Gewinn von 1 zugeordnet wird, wenn der Bereich so definiert ist, das dieser eine Abweichung unter den Sollwert erlaubt, und ein Gewinn von -1, wenn der Bereich so definiert ist, dass dieser eine Abweichung über den Sollwert erlaubt. Den Hilfsgrößen wird ein Gewinn von 1 oder -1 und den Stellgrößen wird ein Kosten von 0.1 zugeordnet.
  • In jedem Fall stellt nach dem Betrieb der Optimierer 54 den Satz von optimalen oder Zielstellgrößen MVT an den Zielkonversionsblock 55 bereit, der die Beharrungszustands-Verstärkungsmatrix anwendet, um die Zielbeharrungszustands-Steuerung und die Stellgrößen festzulegen, die sich aus den Zielstellgrößen MVT ergeben. Diese Umformung ist rechnerisch in einfacher Weise auszuführen, weil die Beharrungszustands-Verstärkungsmatrix die Wechselwirkung zwischen den Stellgrößen und den Steuer- und Hilfsgrößen definiert und aus diesem Grund dazu verwendet werden kann, um die Zielstellgrößen und Hilfsgrößen CVT und AVT eindeutig aus den definierten Ziel (Beharrungszustands)-Stellgrößen MVT zu gewinnen.
  • Einmal festgelegt, wird mindestens ein Teilsatz aus N Ziel-Steuer- und Hilfsgrößen CVT und AVT als Eingaben an die MPC-Steuerung 52 bereitgestellt, die, wie vorherge hend erwähnt, diese Zielgrößen CVT und AVT verwendet, um einen neuen Satz von Beharrungswert-Stellgrößen (über den Steuerhorizont) MVSS abzuleiten, die die aktuellen Steuergrößen und Stellgrößen CV und AV in Richtung der Zielgrößen CVT und AVT am Ende des Steuerhorizonts steuern. Natürlich ändert bekanntermassen die MPC-Steuerung die Stellgrößen in Schritten, mit dem Ziel, diejenigen Beharrungszustandswerte für diese Größen MVSS zu erreichen. Diese werden theoretisch die durch den Optimierer 54 festgelegten Zielstellgrößen MVT sein. Weil, wie oben erwähnt, der Optimierer 54 und die MPC-Steuerung 52 während jeder Prozessabfrage arbeiten, können sich die Zielgrößen der Stellgrößen MVT von Abfrage zu Abfrage ändern. Als Resultat hervon kann die MPC-Steuerung niemals tatsächlich jede einzelne Größe des Satzes der Zielstellgrößen MVT, vor allem in der Gegenwart von Rauschen, unerwarteten Störungen, Veränderungen innerhalb des Prozesses, usw. erreichen. Allerdings steuert der Optimierer 54 die Steuerung 52 immer so an, dass die Stellgrößen MV in Richtung der optimalen Lösung bewegt werden.
  • Wie bekannt, enthält die MPC-Steuerung 52 ein Steuerungsvorhersage-Prozessmodell 70, das eine N mal M + D Sprungantwortmatrix sein kann (wobei N die Anzahl der Steuergrößen CV plus der Anzahl der Hilfsgrößen AV ist, M die Anzahl der Stellgrößen MV und D die Anzahl der Störgrößen DV ist). Das Steuerungsvorhersage-Prozessmodell 70 erzeugt an einem Ausgang 72 eine vorausberechnete Vorhersage für jede der Steuer- und Hilfsgrößen CV und AV und ein Vektoraddierer 74 subtrahiert für die laufende Zeit diese vorausgesagten Werte von den tatsächlich gemessenen Werten der Steuer- und Hilfsgrößen CV und AV, um einen Fehler oder Korrektionsvektor an den Eingang 76 bereitzustellen.
  • Das Steuerungsvorhersage-Prozessmodell 70 verwendet dann die N mal M + D Sprungantwortmatrix, um einen zukünftigen Steuerparameter für jede der Steuergrößen und Hilfsgrößen CV und AV über den Steuerhorizont auf der Grundlage der Störgrößen und Stellgrößen vorherzusagen, die an andere Eingänge des Steuerungsvorhersage-Prozessmodells 70 bereitgestellt werden. Das Steuerungsvorhersage-Prozessmodell 70 stellt ebenfalls die vorausgesagten Beharrungszustandswerte der Steuergrößen und Hilfsgrößen CVSS und AVSS an den Eingabe-Verarbeitungs/Filterblock 58 bereit.
  • Ein Steuerungszielblock 80 legt einen Steuerungszielvektor für jede der N Zielsteuerungs- und -hilfsgrößen CVT und AVT fest, die an diesen durch den Zielkonversionsblock 55 unter Anwendung eines vorab für den Block 38 erstellten Trajektorienfilters 82 bereitgestellt werden. Insbesondere stellt der Trajektorienfilter einen Einheitsvektor bereit, der die Vorgehensweise festlegt, in welcher die Steuer- und Hilfsgrößen in an deren Zielwerte im Laufe der Zeit zu steuern sind. Der Steuerungszielblock 80 nutzt diesen Einheitsvektor und die Zielgrößen CVT und AVT, um einen dynamischen Steuerungszielvektor für jede derjenigen Steuer- und Hilfsgrößen festzulegen, die die Veränderungen in den Zielgrößen CVT und AVT über eine durch die Steuerhorizontzeit festgelegte Zeitperiode definieren. Ein Vektoraddierer 84 subtrahiert dann den zukünftigen Steuerparametervektor für jede der Steuer- und Hilfsgrößen CV und AV von den dynamischen Steuervektoren, um einen Fehlervektor für jede der Steuer- und Hilfsgrößen CV und AV zu ermitteln. Der zukünftige Fehlervektor für jede der Steuer- und Hilfsgrößen CV und AV wird dann dem MPC-Algorithmus bereitgestellt, der so abläuft, dass dieser die Sprünge der Stellgrößen MV auswählt, die bspw. den Fehler der kleinsten Quadrate innerhalb des Steuerhorizonts minimieren. Natürlich verwendet der MPC-Algorithmus oder die Steuerung ein M mal M- Prozessmodell oder eine Steuermatrix, die aus den Verknüpfungen zwischen der Eingabe der N Steuer- und Hilfsgrößen an die MPC-Steuerung 52 und der Ausgabe der M Stellgrößen durch die MPC-Steuerung 52 erstellt wurde.
  • Insbesondere verfolgt der mit dem Optimierer zusammen arbeitende MPC-Algorithmus zwei Hauptzieistellungen. Erstens versucht der MPC-Algorithmus den CV-Steuerfehler mit minimalen MV-Bewegungen innerhalb der operativen Einschränkungen zu minimieren. Zweitens versucht der MPC-Algorithmus einen durch den Optimierer aufgestellten Satz von optimalen Beharrungszustands-MV-Werten und einen Zustand der Ziel-CV-Werte zu erreichen, die direkt aus den optimalen Beharrungszustands-MV-Werten errechnet worden sind.
  • Um diese Zielstellungen zu befriedigen, kann der anfänglich bedingungsfreie MPC-Algorithmus erweitert werden, um die MV-Ziele in die Lösung der kleinsten Quadrate einzufügen. Die Zielfunktion für diese MPC-Steuerung ist
    Figure 00270001
    wobei:
    CV(k) der gesteuerte Ausgabe-p-Sprung in Richtung des Vorhersagevektors ist;
    R(k) der p-Sprung in Richtung des Referenztrajektorien (Sollwert)-Vektors ist;
    ΔMV(k) der c-Sprung in Richtung des inkrementellen Steuerbewegungsvektors ist;
    Γy = diag{Γy 1,...,Γy p} eine Strafmatrix des gesteuerten Ausgabefehlers ist;
    Γu = diag{Tu 1,...,Γu c} eine Strafmatrix der Steuerbewegungen ist;
    p der Prädiktionshorizont ist (Anzahl der Sprünge);
    c der Steuerhorizont ist (Anzahl der Sprünge); und
    Γ0 eine Strafe auf einen Fehler der Summe der Steuerungsausgabebewegungen im Steuerhorizont bezüglich der durch den Optimierer definierten und angezielten optimalen Veränderung der MV ist.
  • Für die Einfachheit der Notation ist die Zielfunktion für eine Einzeleingang/Einzelausgang (SISO-single input/single output)-Steuerung gezeigt.
  • Es versteht sich, dass die ersten beiden Terme die Zielfunktion für die bedingungsfreie MPC-Steuerung sind, während der dritte Term eine zusätzliche Bedingung einführt, die die Summe der Steuerungsausgabebewegungen den optimalen Zielen gleich setzt. M.a.W. legen die ersten beiden Terme Zielstellungen für den dynamischen Betrieb der Steuerung fest, während der dritte Term Optimierungszielstellungen des Beharrungszustands festlegt.
  • Es ist zu beachten, dass die allgemeine Lösung für diese Steuerung in einer zu der Lösung für die bedingungsfreie MPC-Steuerung vergleichbaren Weise wie folgt ausgedrückt werden kann:
    Figure 00280001
    wobei:
    ΔMV(k) die Veränderung in der MPC-Steuerungsausgabe zum Zeitpunkt k ist;
    Kompc die optimierte MPC-Steuerungsverstärkung ist;
    Su die Prozessdynamik-Matrix ist, die aus den Sprungantworten der Dimension
    p × c für ein SISO-Modell und p·n·x c·m für ein mehrfach-Eingangs/mehrfach-Ausgangs-(multiple-input/multiple-output) MIMO-Modell mit m Stelleingängen und n Steuerausgängen aufgebaut wurde.
  • Für die optimierte MPC wird die dynamische Matrix auf die Größe (p + 1) × m für das SISO-Modell und (p + m)·n × i·m für das MIMO-Modell erweitert, um den MV-Fehler anzupassen. Ep+1(k) ist der CV-Fehlervektor über den Prädiktionshorizont und der Fehler der Summe der Steuerungsausgabebewegungen über den Steuerungshorizont bezüglich der zieloptimalen Veränderung der MV. Die Matrix T verbindet die Matritzen Γy und Γ0 und ist eine quadratische Matrix der Dimension (p + 1) für eine SISO- Steuerung und [n(p + n)] für die Mehrgrößen-Steuerung. Das hochgestellte T bezeichnet eine transponierte Matrix.
  • Weil der Optimierer 54 auf der Grundlage aller Steuer- und Hilfsgrößen CV und AV optimiert, um einen Zielsatz von einen eindeutigen optimalen Betriebspunkt definierenden Stellgrößen MVT festzulegen, ist es, wie festgestellt wurde, ohne Bedeutung, dass die MPC-Steuerung 52 nur unter Verwendung eines Teilsatzes der Steuer- und Hilfsgrößen CV und AV in deren Steuermatrix zu einem eigentlich aus dieser heraus erfolgenden Erzeugen der Stellgrößen MV-Ausgabe betrieben wird. Wenn die Steuerung 52 den ausgewählten Teilsatz der Steuer- und Hilfsgrößen CV und AV an die ihnen zugeordneten Ziele steuert, werden sich die anderen Größen des vollständigen Satzes der Steuer- und Hilfsgrößen ebenfalls an ihren Zielwerten befinden. Als Ergebnis wurde festgestellt, das eine quadratische (M × M)-MPC-Steuerung mit einer M mal M-Steuerungsmatrix mit einem Optimieren verwendet werden kann, der ein rechteckiges (N × M)-Prozessmodell zum Ausführen der Prozessoptimierung anwendet. Dies ermöglicht eine Anwendung von üblichen MPC-Steuerungsverfahren zusammen mit üblichen Optimierungsverfahren in einer Steuerung, ohne eine nichtquadratische Matrix mit den bei derartigen Umformungen einhergehenden Näherungen und Risiken invertieren zu müssen.
  • In einer Ausführungsform, bei der die MPC-Steuerung quadratisch ist, d.h. bei der die Anzahl der Stellgrößen MV gleich der Anzahl der Steuergrößen CV ist, kann das Stellgrößen MV-Ziel durch Veränderungen in den CV- Werten effektiv wie folgt erreicht werden:
    ΔCV = A·ΔMVT
    ΔMVT – optimale Zielveränderung der MV
    ΔCV – CV-Veränderungen zum Erreichen der optimalen MV.
  • Die CV- Veränderung wird durch ein Betreiben der CV-Sollwerte verwirklicht.
  • Während des Betriebs setzt der Optimieren 54 die Beharrungszustandsziele für die bedingungsfreie MPC-Steuerung bei jedem Scan auf und aktualisiert diese. Die MPC- Steuerung 52 führt somit einen bedingungsfreien Algorithmus aus. Weil die Ziele CVT und AVT so vorgegeben werden, dass die Randbedingungen so lange berücksichtigt werden, wie eine geeignete Lösung existiert, arbeitet die Steuerung innerhalb der Randbedingungsgrenzen. Die Optimierung ist somit ein integraler Bestandteil der MPC-Steuerung.
  • Die 3 und 4 stellen ein Flussdiagramm 90 dar, das die Schritte verdeutlicht, die zum Ausführen einer integrierten modellbasierten prädiktiven Steuerung und Optimierung notwendig sind. Das Flussdiagramm 90 ist in zwei Abschnitte 90a (3) und 90b (4) unterteilt. Diese verdeutlichen Funktionen, die vor dem Prozessbetrieb (90a) und während des Prozessbetriebs (90b), d.h. während jeder Abfrage des Prozessbetriebs ablaufen. Vor dem Prozessbetrieb führt ein Operator oder Ingenieur eine Reihe von Schritten aus, um den erweiterten Steuerblock 38 einschließlich einer integrierten MPC-Steuerung und eines Optimierers zu erstellen. An einem Block 92 kann insbesondere eine erweiterte Steuerungsvorlage zur Verwendung als erweiterter Steuerblock 38 ausgewählt werden. Die Vorlage kann in einer Bibliothek in einem Anwendungsprogramm für eine Konfigurierung auf der Nutzerschnittstelle 13 gespeichert sein oder kopiert werden und kann die allgemeinen mathematischen und logischen Funktionen der MPC-Steuerroutine 52 und des Optimierers 54 ohne die einzelnen MPC-, Prozessmodelle und Beharrungszustandsverstärkungs- oder Steuermatrizen und die jeweilige Zielfunktion enthalten. Diese erweiterte Steuerungsvorlage kann in einem Modul untergebracht sein, das andere Blöcke, bspw. Eingabe- und Ausgabeblöcke aufweist, die zu einer Kommunikation mit Geräten in dem Prozess 50 eingerichtet sind sowie auch andere Funktionsblocktypen, z.B. Steuerblöcke, einschließlich PID-, neuronale Netzwerk- und Fuzzylogic-Steuerblöcke. Es versteht sich, dass in allen Ausführungsformen die Blöcke in einem Modul jeweils Objekte in einem objektorientierten Programmparadigma sind, die jeweils miteinander verbundene Ein- und Ausgänge zum Ausführen einer Kommunikation zwischen den Blöcken aufweisen. Während des Betriebs führt der die Module abarbeitende Prozessor jeden der Blöcke aufeinander folgend zu unterschiedlichen Zeiten aus und verwendet die Blockeingaben zum Erzeugen der Blockausgaben, um diese, durch die spezifizierten Kommunikationsverbindungen zwischen den Blöcken definiert, an die Eingänge anderer Blöcke bereitzustellen.
  • An einem Block 94 definiert der Operator die einzelnen Stellgrößen, Steuergrößen, Hilfsgrößen und Störgrößen für die Verwendung innerhalb des Blocks 38. Wenn gewünscht, kann in einem Konfigurationsprogramm, z.B. in dem Programm 40 aus 1, der Nutzer die Steuerungsvorlage ansehen, zu benennende und zu konfigurierende Eingänge und Ausgänge auswählen, unter Verwendung jedes üblichen Browsers innerhalb der Konfigurationsumgebung blättern, um die aktuellen Eingaben und Ausgaben innerhalb des Steuersystems aufzufinden und sowohl die aktuellen Steuergrößen als auch die Eingabe- und Ausgabesteuergrößen für die Steuerungsvorlage auszuwählen. 5 verdeutlicht eine von einer Konfigurationsroutine erzeugte Bildschirmdarstellung, die ein eine Reihe von miteinander verbundenen Funktionsblöcken aufwei sendes Steuermodul DEB_MPC darstellt, das eine Reihe von AI (analogen Eingängen) und AO (analogen Ausgängen)-Funktionsblöcken, eine Reihe von PID-Steuerfunktionsblöcken und einen MPC-PRO-Funktionsblock, der ein erweiterter Funktionsblock ist, enthält. Die Baumstruktur auf der linken Seite der Darstellung aus 5 verdeutlicht die Funktionsblöcke innerhalb des DIB_MPC-Moduls einschließlich bspw. Block 1, C4_AI, C4_DGEN usw.
  • Es versteht sich, dass der Nutzer die Eingaben zu und die Ausgaben von dem MPC-PRO-Funktionsblock durch ein Ziehen von Linien zwischen diesen Eingängen und Ausgängen und den Eingängen und Ausgängen der anderen Funktionsblöcke festlegt. Alternativ dazu kann der Nutzer den MPC-PRO-Block auswählen, um einen Zugriff auf die Eigenschaften des MPC-PRO-Blocks zu bekommen. Eine bspw. in 6 gezeigte Dialogbox kann angezeigt werden, um es dem Nutzer zu ermöglichen, die Eigenschaften des MPC-PRO-Blocks anzusehen. Wie in 6 dargestellt ist, kann für jede der Steuergrößen, der Stellgrößen, der Störgrößen und der Randbedingungs-(Hilfs-)-Größen eine jeweils eigene Tabelle bereitgestellt werden, um eine Verwaltung dieser Größen zu ermöglichen. Diese ist insbesondere dann notwendig, wenn vielerlei Größen, bspw. 20 oder mehr mit dem erweiterten Steuerblock 38 verknüpft sind. Innerhalb der Tabelle können für eine jeweilige Größe eine Beschreibung, eine untere und obere Grenze (Randbedingung) und ein Pfadname bereitgestellt werden. Zusätzlich dazu kann der Nutzer oder der Operator festlegen, was der Block für den Fall eines fehlerhaften Zustands der Größe ausführen soll, wie z.B. keine Aktion ausführen, Verwenden des simulierten Wertes der Größe anstelle des gemessenen Wertes oder Akzeptieren einer manuellen Eingabe. Weiterhin kann der Operator festlegen, ob diese Größe zum Ausführen einer Optimierung entweder zu minimieren oder zu maximieren ist, und die Priorität oder die Gewichtung und damit zusammen hängende Gewinnwerte der Größe festlegen. Diese Felder müssen ausgefüllt werden, wenn die voreingestellte Zielfunktion nicht angewendet wird. Natürlich kann der Nutzer unter Verwendung der entsprechenden Tasten auf der rechten Seite der Dialogbox Informationen über die Größen hinzufügen, verschieben, verändern oder löschen.
  • Der Nutzer kann die Information für eine oder mehrere Größen durch Auswahl der Größen festlegen oder ändern. In diesem Fall kann dem Nutzer eine Dialogbox wie z.B. eine in 7 für die Stellgröße REFLUX FLOW gezeigte Dialogbox, präsentiert werden. Der Nutzer kann die Information in den jeweils unterschiedlichen Boxen ändern und Informationen, z.B. einen Pfadnamen der Größe (d.h. ihre Eingabe- und Ausgabeverbindung) mittels eines Durchblätterns festlegen. Unter Verwendung des Bildschirms aus 7 kann der Nutzer einen internen oder externen Browserknopf für ein Blättern innerhalb des Moduls oder extern zu dem Modul, in dem der MPC-PRO-Block lokalisiert ist, auswählen. Natürlich kann, falls gewünscht, der Operator oder der Nutzer eine Adresse, einen Pfadnamen, einen Namen zur Markierung, d.h. einen Tag-Namen usw. manuell angeben, welche die Verbindungen zu und von den Eingängen und Ausgängen des erweiterten Steuerblocks definieren.
  • Nach Auswahl der Eingänge und Ausgänge des erweiterten Steuerfunktionsblocks kann der Nutzer die mit den Steuergrößen verbundenen Sollwerte, die Hilfsgrößen und die Stellgrößen und die Gewichtungen definieren, die mit jeder der Steuer-, Hilfsgrößen und Stellgrößen verbunden sind. Natürlich ein Teil dieser Information, z.B. Randbedingungsgrenzen oder Bereiche, bereits diesen Größen zugeordnet sein, weil diese Größen innerhalb der Konfigurationsumgebung des Prozesssteuerungssystems ausgewählt oder gefunden worden sind. Wenn gewünscht, kann an einem Block 96 aus 3 der Operator die innerhalb des Optimierers zu verwendenden Zielfunktionen bzw. die Menge der Zielfunktionen durch Spezifizieren der Einheiten, Kosten oder Gewinne für jede der Stellgrößen, der Steuergrößen und der Hilfsgrößen konfigurieren. Natürlich kann der Operator an diesem Punkt wählen, die vorgegebene Zielfunktion zu einer wie oben beschriebenen Verwendung zu nutzen. 8 ist eine von einer Konfigurationsroutine bereitgestellte Bildschirmdarstellung, die es einem Nutzer oder Operator ermöglicht, eine Auswahl aus einem Satz von Zielfunktionen vorzunehmen, um diese zum Erzeugen eines erweiterten Steuerblocks zu verwenden. Es verständlich, dass der Nutzer die wie die in 8 gezeigte Bildschirmdarstellung anwenden kann, um aus einem Satz von vorab gespeicherten Zielfunktionen, hier dargestellt als eine Standardzielfunktion und Zielfunktionen 2–5, eine Auswahl zu treffen.
  • Nachdem die Eingaben (Steuer-, Hilfs- und Störgrößen) benannt, mit den erweiterten Steuervorgaben verknüpft und an Block 98 in 3 die Gewichtungen, Beschränkungen und damit verbundene Sollwerte angefügt wurden, wird die erweiterte Steuerungsvorlage in eine ausgewählte Steuerung innerhalb eines Prozesses als ein für die Steuerung zu verwendender Funktionsblock geladen. Der allgemeine Aufbau des Steuerblocks und die Art und Weise einer Konfiguration dieses Steuerblocks ist in dem US-Patent Nummer 6,445,963 mit dem Titel „Integrated Advanced Control Blocks in Process Control Systems" beschrieben, das von dem Anmelder hier beschriebenen Erfindung angemeldet wurde und hier ausdrücklich als Referenz einbezogen wird. Während dieses Patent die Art und Weise einer Erzeugung einer MPC-Steuerung in einem Prozesssteuerungssystems beschreibt und nicht das Vorgehen behandelt, mit dem ein Optimierer mit dieser Steuerung verbunden werden kann, ist es selbstverständlich, dass die allgemeinen zum Verbinden und Konfigurieren der Steuerung ausgeführten Schritte für den hier beschriebenen Steuerblock 38 mit der Vorlage einschließlich aller hier behandelten logischen Elemente für den Steuerblock 38 anstelle der hier beschriebenen verwendet werden können.
  • In jedem Fall kann nun, nachdem die erweiterte Steuerungsvorlage in die Steuerung geladen wurde, der Operator an einem Block 100 die Entscheidung zum Ausführen einer Testphase der Steuerungsvorlage treffen, um die Sprungantwortmatrix und das innerhalb des MPC-Steuerungsalgorithmus zu verwendende Prozessmodell zu erzeugen. Wie in dem oben genannten Patent beschrieben, erzeugt die Steuerungslogik innerhalb des erweiterten Steuerungsblocks 38 an den Prozess während der Testphase eine Folge von Pseudozufalls-kurven als Stellgrößen und beobachtet die Veränderungen in den Steuer- und Hilfsgrößen (die durch die MPC-Steuerung hauptsächlich als Steuergrößen verhandelt werden). Wenn gewünscht, können die Stellgrößen und Störgrößen, aber auch die Steuer- und Hilfsgrößen durch den Historian 12 aus 1 gesammelt werden, und der Operator kann das Konfigurationsprogramm 40 (1) aktivieren, um diese Daten von dem Historian 12 zu erhalten und auf diese Art eine Hochrechnung über diese Daten auszuführen, um die Matrix der Sprungantworten zu erhalten oder abzuleiten. Jede Sprungantwort bezeichnet die zeitabhängige Antwort einer der Steuer- und Hilfsgrößen auf eine Einheitsveränderung in einer (und nur einer) der Stellgrößen und Steuergrößen. Diese Einheitsveränderung ist im Allgemeinen eine Sprungveränderung, kann aber auch von einem anderen Veränderungstyp, z.B. ein Impuls oder eine kontinuierliche Veränderung mit einem Anstieg sein. Falls gewünscht, kann andererseits der Steuerblock 38 die Sprungantwortmatrix in Antwort auf die gesammelten Daten dann erzeugen, wenn die pseudozufälligen kurven an den Prozess 50 angelegt werden. Er kann anschließend diese kurven an die durch den O perator oder Nutzer genutzte Operatorschnittstelle 30 bereitstellen und dabei den erweiterten Steuerblock 38 installieren.
  • 9 erläutert die durch die Testroutine bereitgestellte Bildschirmanzeige, um dem Operator mit graphischen Darstellungen der gesammelten und hochgerechneten Daten zu versorgen. Diese ermöglichen es dem Operator, die Erzeugung der Sprungantwortkurve und damit das Prozessmodell oder der in der MPC-Steuerung verwendeten Steuermatrix des erweiterten Steuerblocks zu überwachen. Eine Plotregion 101 gibt insbesondere die Daten für eine Reihe von Eingaben oder Ausgaben oder andere (z.B. vorab durch den Operator festgelegte) Daten in Antwort auf die Test-kurven aus. Eine Balkengraphenregion 102 stellt einen Balkengraphen für jede der behandelten Datengrößen bereit, der für jede der hochgerechneten Größen den Namen der Größe, den aktuellen Wert der Größe in einer graphischen Balkenform, falls verfügbar, einen Sollwert (angezeigt durch ein größeres Dreieck über dem Balkengraphen) und, falls verfügbar, Grenzen (angezeigt durch ein kleineres Dreieck über dem Balkengraphen) anzeigt. Andere Bereiche der Anzeige zeigen andere Angaben über den erweiterten Steuerblock an, beispielsweise das Ziel und den aktuellen Modus des Blocks 104 und die eingestellte Zeit bis zum Beharrungszustand 106. Dem Erzeugen eines Prozessmodells für den erweiterten Steuerblock vorausgehend, kann der Operator graphisch die für die Hochrechnungs-Plots 101 zu verwendenden Daten festlegen. Insbesondere kann der Operator die Beginn- und Endpunkte 108 und 110 des Plots 102 festlegen, sofern die Daten zum Erstellen der Sprungantwort zu verwenden sind. Die Daten in diesem Bereich können mit einer jeweils verschiedenen Farbe eingefärbt werden, z.B. in Grün, um die ausgewählten Daten visuell auszuzeichnen. Weiterhin kann der Operator Abschnitte innerhalb dieses eingefärbten Gebietes als auszuschließende Abschnitte (und als somit als nicht repräsentativ, als einen Rauscheffekt oder eine unerwünschte Störung usw.) festlegen. Dieses Gebiet ist zwischen den Linien 112 und 114 dargestellt und kann beispielsweise in Rot gefärbt sein, um darauf hinzuweisen, dass diese Daten nicht in die Erzeugung der Sprungantwort einzubeziehen sind. Natürlich kann der Nutzer jede gewünschte Daten ein- oder ausschließen und diese Funktion für jede der (9 zeigt, dass in diesem Fall acht Hochrechnungsplots verfügbar sind) mit verschiedenen, z.B. einer Reihe von Stellgrößen, Steuergrößen, Hilfsgrößen usw. verknüpften Hochrechnungsplots ausführen.
  • Um einen Satz von Sprungantworten zu erzeugen, kann der Operator die Modellgenerierungstaste 116 auf der Bildschirmdarstellung von 9 auswählen. Die Erzeugungsroutine wird dann die ausgewählten Daten aus den Hochrechnungsplots zum Erzeugen eines Satzes von Sprungantworten verwenden, wobei jede Sprungantwort auf die Antwort einer der Steuer- und Hilfsgrößen auf eine der Stellgrößen oder Störgrößen verweist. Dieser Erzeugungsprozess ist bekannt und wird aus diesem Grund an dieser Stelle nicht im Detail dargestellt.
  • Nachdem die Sprungantwortmatrix für den Fall erzeugt wurde, bei welchem die Steuer- und Hilfsgrößen die Stellgrößen in ihrer Anzahl übertreffen, wird die Sprungantwortmatrix dazu verwendet, um den Teilsatz der Steuer- und Hilfsgrößen auszuwählen, die in dem MPC- Algorithmus verwendet werden sollen, bei dem die M mal M-Prozessmodell- oder Steuermatrix invertiert und innerhalb der MPC-Steuerung 52 verwendet wird. Dieser Auswahlprozess kann manuell durch den Operator oder automatisch durch eine z.B. innerhalb der Nutzerschnittstelle 13 abgelegte Routine erfolgen, die einen Zugriff auf die Sprungantwortmatrix hat. Generell wird eine der Steuer- und Hilfsgrößen als zu einer der Stellgrößen am nächsten in Beziehung stehende Größe gekennzeichnet. Somit wird eine einzelne und eindeutige (d.h. von allen anderen verschiedene) Steuer- und Hilfsgröße (die Eingaben an die Prozesssteuerung sind) mit jeder der unterschiedlichen Stellgrößen verknüpft (die die Ausgaben der Prozesssteuerung bilden), sodass der MPC-Algorithmus auf einem Prozessmodell aufgebaut werden kann, das von dem M mal M-Satz der Sprungantworten erzeugt wurde.
  • In einer Ausführungsform, die einen heuristischen Ansatz bei der Bereitstellung einer Paarung verwendet, wählt die automatische Routine oder der Operator den Satz von M (wobei M gleich der Anzahl der Stellgrößen ist) Steuer- und Hilfsgrößen mit dem Ziel aus, diejenigen Steuer- oder Hilfsgrößen auszuwählen, die eine gewisse Verknüpfung mit der größten Verstärkung und schnellsten Antwortzeit auf eine Einheitsänderung bezüglich einer der Stellgrößen haben und paart diese beiden Größen. Natürlich wird in einigen Fällen eine bestimmte Steuer- oder Hilfsgröße eine große Verstärkung und eine schnelle Antwortzeit mit mehreren Stellgrößen aufweisen. In diesem Fall kann diese Steuer- oder Hilfsgröße mit jeder der damit verknüpften Stellgrößen gepaart werden. Sie kann sogar mit einer Stellgröße gepaart werden, die nicht die größte Verstärkung und schnellste Antwortzeit erzeugt, weil im Ganzen diejenige Stellgrö ße, die die kleinere Verstärkung hat und die langsamere Antwortzeit verursacht, keine andere Steuer- oder Hilfsgröße bis zu einem zulässigen Grad beeinflusst. Somit werden die Paare der Stellgrößen auf der einen Seite und der Steuer- und Hilfsgrößen auf der anderen Seite so ausgewählt, um im Großen und Ganzen die Stellgrößen mit dem Teilsatz der Steuer- und Hilfsgrößen zu paaren, die am meisten beeinflussbaren Steuergrößen bezüglich der Stellgrößen sind. Weiterhin macht es nichts aus, wenn nicht alle Steuergrößen aus dem Teilsatz der M-Steuer- und Hilfsgrößen ausgewählt wurden und damit die MPC-Steuerung nicht alle Steuergrößen als ihre Eingaben empfängt, weil der Satz der Steuer- und Hilfsgrößenziele durch den Optimierer zum Bezeichnen eines Betriebspunktes des Prozesses ausgewählt wurde, an dem die nicht ausgewählten Steuer- (und ebenso die nicht ausgewählten Hilfs-) Größen an ihrem Sollwert oder innerhalb eines vorbestimmten Betriebsbereiches sind.
  • Weil natürlich einige zehn oder hunderte Steuer- und Hilfsgrößen auf dereinen Seite und einige zehn oder hunderte Stellgrößen auf der anderen Seite vorhanden sein können, kann es, nicht zuletzt auch in Hinblick auf die Bedürfnisse der Visualisierung, schwierig sein, einen Satz von Steuergrößen und Hilfsgrößen auszuwählen, der die beste Antwort auf jede der verschiedenen Stellgrößen hat. Um dieses Problem zu überwinden, kann die erweiterte Steuerblockerzeugungsroutine 40 innerhalb der Operatorschnittstelle 30 einen Satz von Bildschirmdarstellungen für den Nutzer Operator enthalten, um dem Operator zu helfen oder es diesem zu ermöglichen, geeignete Auswahlen aus denjenigen Steuer- und Hilfsgrößen zu machen, die als ein Teilsatz der in der MPC-Steuerung 52 während des Betriebs zu verwendenden Steuer- und Hilfsgrößen genutzt werden soll.
  • Somit wird bei einem in 3 aufgeführten Block 120 dem Operator ein Bildschirm präsentiert, auf dem dieser die Antwort jeder der Steuer- und Hilfsgrößen auf eine einzelne oder ausgewählte Stellgröße ansehen kann. Ein derartiger Bildschirm ist in 10 dargestellt und zeigt die Antwort jeder aus einer Anzahl von Steuer- und (als Randbedingung benannten) Hilfsgrößen auf eine hier als TOP_DRAW bezeichnete Stellgröße. Der Operator kann durch die Stellgrößen nacheinander hindurch scrollen, die Sprungantwort auf jede der Steuer- und Hilfsgrößen zu jeder der verschiedenen Stellgrößen anschauen und während des Prozesses die eine Steuer- oder Hilfsgröße auswählen, die am besten auf die Stellgröße anspricht. Typischerweise wird dann der Operator versuchen, diejenige Steuer- und/oder Stellgröße auszuwählen, die die beste Kombination aus der höchsten Beharrungszustandsverstärkung und der kürzesten Antwortzeit auf die Stellgröße aufweist. Wie in 11 gezeigt ist, kann eine der Steuer- und Hilfsgrößen als die für diese Stellgröße am meisten signifikante Größe unter Verwendung einer Dialogbox ausgewählt werden. Wie in 11 gezeigt, kann falls gewünscht, die aus den Steuer- und Hilfsgrößen ausgewählte Größe in einer anderen Farbe hervorgehoben werden, beispielsweise in Rot, während vorhergehend ausgewählte (d.h. Steuer- und Hilfsgrößen, die für andere Stellgrößen ausgewählt wurden) in einer davon abweichenden Farbe, wie z.B. in Gelb eingefärbt werden. In dieser Ausführungsform kann die Steuerroutine 40, die natürlich die vorausgehend gewählten Steuer- und Hilfsgrößen in einem Speicher speichert, einen Test ausführen, um sicherzustellen, dass der Operater nicht die gleiche Steuergröße oder Stellgröße als zwei verschiedenen Stellgrößen zugeordnete Größe auswählt. Wenn der Nutzer oder Operator eine Steuer- oder Hilfsgröße auswählt, die schon für eine andere Stellgröße gewählt wurde, kann die Routine 40 eine Fehlernachricht an den Nutzer oder Operator ausgeben, die den Nutzer oder Operator über die Auswahl der vorhergehend ausgewählten Steuer- und Hilfsgröße informiert. Auf diese Weise vermeidet die Routine 40 die Auswahl der selben Steuer- und Hilfsgrößen für zwei oder mehrere verschiedene Stellgrößen.
  • Wie in 12 dargestellt, kann der Operator oder der Nutzer ebenfalls die Wahl treffen, sich die verschiedenen Sprungantworten für jede der verschiedenen Stellgrößen und Störgrößen anzusehen. 11 zeigt die Sprungantwort von TOP_END_POINT auf jede der Stellgrößen und Störgrößen, die vorab für den erzeugten erweiterten Steuerblock festgelegt wurden. Natürlich kann der Operator die An zeige von 12 verwenden, um eine der Stellgrößen als mit der Steuergröße TOP_END_POINT verknüpfte Stellgröße auszuwählen.
  • Es versteht sich, dass es die Bildschirmanzeigen der 10 bis 12 dem Operator ermöglichen, die Untermenge der als Eingaben an den MPC- Steueralgorithmus ver wendeten M Steuer- und Hilfsgrößen zu visualisieren und auszuwählen. Dies ist besonders dann nützlich, wenn eine Vielzahl dieser Größen vorhanden ist. Natürlich kann der Satz der in dem Block 74 festgelegten Steuer- und Randbedingungs-Größen automatisch oder elektronisch auf der Grundlage einiger vorab aufgestellter Kriterien oder einer Selektionsroutine ausgewählt werden. Diese wählt die zu verwendenden Eingabegrößen auf der Grundlage einer Kombination von aus den Sprungantworten der gesteuerten Randbedingungs-Größen und Steuergrößen festgestellten Verstärkungsantworten und Zeitverzögerungen aus.
  • In einer anderen Ausführungsform kann ein automatischer Auswahlprozess zunächst eine Steuermatrix durch Auswahl einer Eingabe/Ausgabe-Matrix auf der Grundlage der Konditions- oder Bedingungszahl der Matrix, d.h. durch ein Minimieren der Bedingungszahl auf einen gewissen Betrag und durch Erstellen einer Steuerungskonfiguration aus der Steuermatrix definieren.
  • In diesem Beispiel kann für eine Prozessverstärkungsmatrix A die Bedingungszahl der Matrix ATA festgestellt werden, um die Steuerbarkeit der Matrix zu testen. Eine kleinere Bedingungszahl bedeutet im Allgemeinen eine bessere Steuerbarkeit, während eine höhere Bedingungszahl eine geringere Steuerbarkeit anzeigt und mehr Steuersprünge oder Bewegungen während des dynamischen Steuerbetriebs erfordert. Es gibt keine strengen Kriterien zum Festlegen eines vertretbaren Grades einer Steuerbarkeit und somit kann die Bedingungszahl als eine relative Vergleichsmöglichkeit zwischen verschiedenen möglichen Steuermatrizen und als ein Test für schlecht eingestellte Matrizen verwendet werden. Wie bekannt ist, erreicht die Bedingungszahl für eine schlecht eingestellte Matrix einen unendlichen Wert. Mathematisch bedeutet dies, das eine schlechte Einstellung in dem Fall co-linearer Prozessgrößen auftritt – d.h. auf Grund von co-linearen, insbesondere linear abhängigen, Zeilen oder Spalten in der Steuermatrix. Ein Hauptfaktor, der die Bedingungszahl und die Steuerbarkeit beeinflusst, ist somit eine Kreuzkorrelation zwischen Zeilen und Spalten in der Matrix. Eine sorgfältige Auswahl der Eingabe- Ausgabegrößen und der Steuermatrix kann die Konditionierungsprobleme reduzieren. Praktisch sollten dann Bedenken bestehen, wenn die Bedingungszahl einer Steuermatrix bei einem Wert in der Größenordnung von einigen hundert (zum Beispiel 500) oder höher liegt. Mit einer derartigen Matrix sind steuerungsgeführte Größenbewegungen in hohem Maße aufwendig.
  • Wie oben dargestellt, löst die Steuermatrix das dynamische Steuerproblem, während der LP-Optimierer das Beharrungszustands-Optimierungsproblem löst und die Steuermatrix eine quadratische Eingabe-Ausgabematrix sogar in dem Fall sein muss, wenn der MPC-Steuerungsblock eine ungleiche Anzahl von MV (einschließlich AV) und CV hat. Zu Beginn der Auswahl der Eingaben und Ausgaben für die zur Erzeugung der Steuerung zu nutzenden Steuermatrix werden alle verfügbaren MVs typischerweise als Ausgaben der Steuerung zusammengefaßt oder ausgewählt. Nach dem Auswählen der Ausgaben (die MV) müssen die Prozessausgabegrößen (das heißt die CV und AV), die zu einem Bestandteil der dynamischen Steuerungsmatrix gemacht wurden, so ausgewählt werden, dass eine quadratische Steuermatrix erzeugt wird, die nicht schlecht eingestellt ist.
  • Ein Verfahren einer automatischen oder manuellen Auswahl der CV und AV als Eingaben innerhalb der Steuermatrix wird nun dargestellt, wobei es sich versteht, das andere Verfahren ebenso angewendet werden können.
  • Schritt 1 – die CVs werden ausgewählt bis, falls möglich, die Anzahl der CVs gleich der Anzahl der MVs (das heißt der Anzahl der Ausgaben Steuerung) ist. In dem Fall, bei dem mehr CVs als MVs vorhanden sind, können die CVs in jeder Reihenfolge auf der Basis jedes gewünschten Kriteriums, beispielsweise der Priorität, der Verstärkungs- oder Phasenantworten, von Nutzereingaben usw. gewählt werden. Wenn die mögliche Gesamtzahl der CVs gleich der Anzahl der MVs ist, dann laufe zu Schritt 4 und überprüfe, ob die sich daraus ergebende quadratische Bedingungszahl der Steuermatrix vertretbar ist. Wenn die Anzahl der CVs kleiner als die Anzahl der MVs ist, können AVs wie in Schritt 2 beschrieben gewählt werden. Sind keine CVs definiert, wähle die AVs mit einer maximalen Verstärkungsbeziehung zu einem MVs aus und gehe zu Schritt 2.
  • Schritt 2 – errechne nacheinander die Bedingungszahl für jede mögliche AV, die zu einer bereits ausgewählten, durch die vorhergehend gewählten CVs und AVs definierten Steuerungsmatrix hinzugezählt wurde. Es versteht sich, dass die durch die ausgewählten CV's definierte Matrix eine Zeile für jedes ausgewählte CV und AV enthält, die die Beharrungszustandsverstärkung für diese CV oder AV bezüglich der ausgewählten MV's definieren.
  • Schritt 3 – wähle die in Schritt 2 festgelegten AVs aus, die zu einer minimalen Bedingungszahl für die sich ergebende Matrix führen und definiere die Matrix als die für das Hinzufügen der ausgewählten AV vorab gegebene Matrix. Wenn die Anzahl der MV an diesem Punkt gleich der Anzahl der ausgewählten CV plus der Anzahl der ausgewählten AVs ist (d.h., wenn die Matrix nun quadratisch ist) gehe zu Schritt 4. Wenn nicht, laufe zu Schritt 2 zurück.
  • Schritt 4 – Errechne die Bedingungszahl für die erzeugte quadratische Steuerungsmatrix Ac. Wenn gewünscht, kann die Berechnung der Bedingungszahl für die Matrix Ac anstelle der Matrix Ac TAc verwendet werden, weil sich die Bedingungszahlen für diese verschiedenen Matrizen über die Quadratwurzel der jeweils anderen beziehen.
  • Schritt 5 – Wenn die in Schritt 4 berechnete Bedingungszahl vertretbar ist, ordne jedes CV und ausgewähltes AV einem MV durch eine Auswahl des CV oder AV zu, das eine Maximumverstärkung in Bezug auf ein spezifisches MV hat, bis die Paarung vollständig ist. An diesem Punkt ist der Auswahlprozess abgeschlossen. Wenn andererseits die Bedingungszahl größer als die minimal vertretbare Bedingungszahl ist, entferne das letzte zur Steuermatrix hinzugefügte AV/CV und führe die Wrap-Around-Prozedur von Schritt 6 aus.
  • Schritt 6 – Führe eine als Wrap-Around-Prozedur bezeichnete Ersetzungsprozedur für eine der ausgewählten MV's nach der anderen aus und berechne die Bedingungszahl der Matrix, die sich aus jedem Wrap-Around ergibt. Im Wesentlichen wird eine Schleifenprozedur durch ein der Reihe nach erfolgendes, wechselndes Anordnen einer Antwort in Form einer Eins, d.h. eine Eins-Antwort für jede der verschiedenen MVs anstelle der entfernten AV (oder CV) ausgeführt. Die Eins-Antwort ist jeweils eine Eins an einer Stelle in der Zeile der Matrix und Null überall sonst. In diesem Fall wird im Wesentlichen jedes der einzelnen MVs als eine Eingabe und eine Ausgabe anstatt der AV benutzt, um eine gut eingestellte quadratische Steuermatrix zu bilden. Als Beispiel werden für eine 4 × 4-Matrix die Kombinationen 1000, 0100, 0010 und 0001 in die Zeile der entfernten AV-Aufstellung in die Verstärkungsmatrix Ac eingefügt.
  • Schritt 7 – Nach Ausführen der Wrap-Around-Prozedur für jede der MVs, wähle die die zu einer minimalen Bedingungszahl führende Kombination aus. Tritt keine Verbesserung ein, behalte die ursprüngliche Matrix bei. Ordne dann jedes ausgewählte CV und jedes ausgewählte AV einem MV durch Auswählen des CV oder AV mit einer maxima len Verstärkung bezüglich eines spezifischen MV zu, aber unter Ausschluss der MV, die für die Steuerung selbst verwendet wird (das heißt der MV, die in der Wrap-Around-Prozedur nach Schritt 6 ersetzt wurde).
  • Natürlich kann die durch diese Prozedur definiert Steuermatrix wie auch die sich ergebende Bedingungszahl an den Nutzer übermittelt werden und der Nutzer kann die definierte Steuerungsmatrix für eine Verwendung in der Steuerung zulassen oder zurückweisen.
  • Es ist darauf hinzuweisen, dass in der oben beschriebenen automatischen Prozedur nur höchstens ein MV für die Selbststeuerung zum Zwecke einer Verbesserung der Steuerbarkeit ausgewählt (d.h., mittels der Wrap-Around-Prozedur eingesetzt) wurde. In einer manuellen Prozedur kann die Anzahl der Wrap-Around-MVs willkürlich sein. Die für die Selbststeuerung ausgewählten MVs stechen durch eine nicht vorhandene mit ihnen verknüpften Auswahl einer Ausgabengröße in der Steuerungskonfiguration hervor. Ebenso kann man mehrere MVs als Wrap-Around-Größen zur Steuerung verwenden, wenn die Anzahl der MVs größer als die Anzahl der gesamten CVs plus die der AVs ist. Auf diese Weise wird schließlich immer eine quadratische Steuerungsmatrix für die Steuerung bereitgestellt, die jede der MVs als Ausgaben hat. Es versteht sich, dass der Prozess des Ausführens und des Anwendens der Wrap-Around-Prozedur bedeutet, dass die Anzahl der für die Steuermatrix ausgewählten CVs und AVs kleiner als die Anzahl der die durch die Steuerung gesteuerten MVs sein kann, wobei deren Differenz die Anzahl der Wrap-Around-MVs als Eingänge für die Steuermatrix ist. Ferner kann diese Wrap-Around-Prozedur in einem Prozesssteuerungssystem verwendet werden, das weniger CVs plus AVs als MVs aufweist.
  • Natürlich wurde vorhergehend die Bedingungszahl unter Verwendung der Beharrungszustandsverstärkung berechnet und damit definiert die Steuerungsmatrix im Wesentlichen eine Steuerbarkeit für den Beharrungszustand. Die Prozessdynamik (Totzeiten, Verzögerungen usw.) und die Modellunsicherheiten haben ebenfalls einen Einfluss auf die dynamische Steuerbarkeit, und diese Effekte können durch eine Veränderung der Priorität der Prozessgrößen (d.h. der Steuer- und Hilfsgrößen) in Betracht gezogen werden. Diese können ihre Einbeziehung in die Steuermatrix auf Grund der durch sie auf die dynamische Steuerung ausgeübten Effekte vorschreiben.
  • Es ist ebenfalls möglich, weitere heuristische Prozeduren zu verwenden, die zur Verbesserung sowohl des Beharrungszustandes als auch der dynamischen Steuerbarkeit vorgesehen sind. Eine derartige Prozedur weist typischerweise eine Menge heuristischer Kriterien auf, von denen einige sich möglicherweise einander widersprechen, und die in verschiedenen Phasen der Entwicklung an eine Steuermatrix angelegt werden und dadurch zur Auswahl eines geeigneten Satzes von Steuerungseingaben führen, der gewisse Verbesserungen der Steuermatrix bewirkt. In einer solchen heuristischen Prozedur werden die CVs und die AVs durch eine MV auf der Basis der höchsten Verstärkungsbeziehung gruppiert. Dann wird für jede MV-Gruppierung diejenige Prozessausgabe mit der schnellsten Dynamik und der signifikanten Verstärkung ausgewählt. Dieser Auswahlprozess kann ein Toleranzintervall berücksichtigen und Präferenzen an die CVs über die AVs (die ansonsten alle gleichwertig sind) vergeben. Die Prozessmodellerzeugungsroutine wird dann die aus jeder Gruppe während der MPC-Steuerungserzeugung ausgewählten Parameter anwenden. Weil nur ein Parameter für jedes MV ausgewählt wurde, ist die Antwortmatrix quadratisch und kann invertiert werden.
  • In jedem Fall generiert ein Block 124 aus 3 nach Auswahl des Teilsatzes von M (oder weniger) Steuer- und Hilfsgrößen-Eingaben für die MPC-Steuerung das in dem MPC-Steueralgorithmus 86 aus 2 zu verwendende Prozessmodell oder die Steuerung aus der festgelegten quadratischen Steuermatrix. Wie bekannt, ist dieser Steuerungserzeugungsschritt eine rechenintensive Prozedur. Ein Block 126 lädt dann dieses MPC-Prozessmodell (das die Steuermatrix von vornherein enthält) oder die Steuerung und, falls gebraucht, die Sprungantworten und die Beharrungszustands Sprungantwortverstärkungsmatrix in den Steuerblock 38. Diese Daten werden in den Steuerblock 38 für den Betrieb eingebaut. Dann ist der Steuerblock 38 für einen Online-Betrieb innerhalb des Prozesses 50 bereit.
  • Wenn gewünscht, können die Prozesssprungantworten auf eine Weise rekonfiguriert oder bereitgestellt werden, sich von der Weise der Erzeugung dieser Sprungantworten unterscheidet. So kann bspw. eine der Sprungantworten aus verschiedenen Modellen kopiert und auf den Bildschirmen bspw. der 10 bis 12 bereitgestellt werden, um die Sprungantwort einer bestimmten Steuerungs- oder Hilfsgröße auf eine Stell größe oder Störgröße festzulegen. 13 zeigt einen Bildschirmanzeige, in der der Nutzer eine der Sprungantworten eines bestimmten Prozesses oder Modells auswählen und kopieren und dann die gleiche Antwort mittels eines Drag-and-Drop-Vorgangs in ein sich davon unterscheidendes Modell verschieben kann und somit diese Sprungantwort in das neue Modell einfügt. Es wird somit dem Nutzer ermöglicht, auf manuelle Weise ein Sprungantwortmodell festzulegen. Natürlich kann als Teil dieses Ablaufes der Nutzer eine oder mehrere der die wie oben beschrieben automatisch generierten Sprungantwortmodelle löschen.
  • 14 zeigt eine Bildschirmanzeige, in welcher der Nutzer eine besondere Sprungantwort ansehen kann (hier die Sprungantwort auf TOP_END_POINT vs. TOP_DRAW). Die Parameter für diesen Sprungantwort, wie z.B. die Beharrungszustandsverstärkungs, die Antwortzeit, die Zeitkonstante erster Ordnung und der quadratische Fehler, werden auf der Anzeige in einfacher, einen Bezug leicht herstellenden Weise dem Nutzer oder Operator angezeigt. Wenn gewünscht, kann der Nutzer die Eigenschaften dieser Sprungantwort einsehen und durch ein Festfegen einer Reihe von Parametern z.B. einer unterschiedlichen Verstärkung oder Zeitkonstante, falls erforderlich, verändern. Wenn der Nutzer eine andere Verstärkung oder einen anderen Parameter festlegt, kann das Sprungantwortmodell mathematisch regeneriert werden, um diese neuen Parameter oder den Satz der Parameter zu enthalten. Diese Vorgehensweise ist nützlich, wenn der Nutzer die Parameter der Sprungantwort kennt und die erzeugte Sprungantwort ändern muss, um dieser Parameter anzupassen oder zu befriedigen.
  • Unter Bezugnahme auf 4 werden nun die allgemeinen Schritte erläutert, die während jedes Betriebszyklus oder einer Abfrage des unter Verwendung des Flussdiagramms 90a aus 3 erzeugten erweiterten Steuerblocks 38 ausgeführt werden, wenn der Prozess 50 online betrieben wird. An einem Block 150 empfängt die MPC-Steuerung 52 (2) die gemessenen Werte der Steuer- und Hilfsgrößen CV und AV und verarbeitet diese. Insbesondere verarbeitet das Steuerungsvorhersage-Prozessmodell die CV-, AV- und DV- Messungen oder Eingaben, um sowohl den Zukunfts-Steuerparametervektor als auch die vorausgesagten Beharrungszustandssteuer- und Hilfsgrößen CVSS und AVSS zu erzeugen.
  • Als Nächstes verarbeitet oder filtert an einem Block 152 der Eingabe-Verarbeitungs/Filterblock 58 (2) die vorausgesagten Steuer- und Hilfsgrößen und Stellgrößen CVSS, AVSS und MVSS, die durch die MPC-Steuerung 52 erstellt wurden, und stellt diese gefilterten Werte an den Optimieren 54 bereit. An einem Block 154 führt der Optimierer 54 übliche LP-Verfahren aus, um den Satz von M Stellgrößenzielen MVT festzulegen, die die gewählte oder voreingestellte Zielfunktion maximieren oder minimieren und dabei keine der Beschränkungen der Hilfsgrößen und Stellgrößen verletzt, während die Steuergrößen an ihrem festgelegten Sollwert oder innerhalb der festgelegten Bereiche für diese Größen verbleiben. Allgemein gesagt errechnet der Optimieren 54 durch ein Ansteuern jeder der Steuergrößen und der Hilfsgrößen an ihre Grenzen eine Lösung für die Zielstellgröße MVT. Wie oben gezeigt, wird in vielen Fällen eine Lösung existieren, bei der sich jede der Steuergrößen an ihrem Sollwert befinden (die anfänglich als eine obere Grenze der Steuergröße behandelt werden können), während jede der Hilfsgrößen in ihren jeweiligen Randbedingungsgrenzen verbleibt. Wenn dies der Fall ist, muss der Optimierer 54 nur die festgestellten Stellgrößenziele MVT ausgeben, die ein optimales Resultat für die Zielfunktion erzeugen.
  • In einigen Fällen kann es allerdings aufgrund von engen Randbedingungen bei einigen oder allen der Hilfsgrößen oder Stellgrößen unmöglich sein, einen Betriebspunkt zu finden, an dem sich alle der Steuergrößen an ihrem Sollwert befinden und alle der Hilfsgrößen innerhalb ihrer jeweiligen Randbedingungsgrenzen sind, weil es eine solche Lösung nicht gibt. In diesen Fällen kann es, wie oben bemerkt, der Optimierer 54 den Steuergrößen ermöglichen, sich innerhalb ihrer festgelegten Sollwertbereiche mit dem Ziel frei zu bewegen, um damit einen Betriebspunkt zu finden, bei dem die Hilfsgrößen innerhalb ihrer jeweiligen Randbedingungen betrieben werden. Wenn in diesem Fall keine Lösung existiert, kann der Optimierer eine der Randbedingungsgrenzen der Hilfsgrößen als Grenze der Lösung verwerfen und stattdessen den optimalen Prozessbetriebspunkt bei einem Ignorieren der Randbedingungsgrenzen der verworfenen Hilfsgröße festlegen. Hierzu wählt der Optimierer aus, welche Hilfs- oder Steuergröße als eine Randbedingungsgrenze auf der Grundlage ihrer jeweiligen für jede der Steuer- und Hilfsgrößen bereitgestellten Gewichtungen zu verwerfen ist (wobei z.B. das niedrigsten Gewicht oder der höchsten Priorität als erstes verworfen wird). Der Optimierer 54 fährt fort, Hilfs- oder Steuergrößen auf der Basis ihrer bereitgestellten Gewichtungen oder Prioritäten zu verwerfen, bis dieser eine Zielstellgröße MVT-Lösung findet, bei der alle der Sollwertbereiche für die Steuergrößen und die Grenzen für die verbleibenden Hilfsgrößen mit höherer Priorität befriedigt werden.
  • Als Nächstes wendet an einem Block 156 der Zielkonversionsblock 55 (2) die Beharrungszustands-Sprungantwort-Verstärkungsmatrix an, um die Zielwerte der Steuer- und Hilfsgrößen CVT und AVT aus den Zielwerten der Stellgrößen MVT zu bestimmen und stellt die ausgewählten N Werte (wobei N gleich oder kleiner als M ist) des Teilsatzes dieser Werte an die MPC-Steuerung 52 als Zieleingaben bereit. An Block 158 nutzt die MPC-Steuerung 52 die Steuermatrix oder die von dieser abgeleitete Logik, um eine wie oben beschriebene bedingungsfreie MPC-Steuerung zu betreiben, um die zukünftigen CV- und AV-Vektoren für diese Zielwerte zu bestimmen, und führt eine Vektorsubtraktion mit den zukünftigen Steuerungsparametervektor aus, um den Zukunftsfehlervektor zu ermitteln. Der MPC-Algorithmus arbeitet in einer bekannten Weise, um die Beharrungszustands-Stellgrößen MVSS auf der Grundlage des von den M mal M-Sprungantworten erstellten Prozessmodells festzulegen und stellt diese MVSS-Werte an den Eingabe-Verarbeitungs/Filterblock 58 (2) bereit. An Block 160 legt der MPC-Algorithmus auch die MV-Sprünge fest, die an den Prozess 50 auszugeben sind und gibt die ersten dieser Schritte an den Prozess 50 in jeder geeigneten Weise aus.
  • Während des Betriebs können eine oder mehrere Überwachungsanwendungen, die z.B. in einer der Nutzerschnittstellen 13 ablaufen, zu einer Information aus dem erweiterten Steuerblock oder anderen mit diesem kommunikativ verbundenen Funktionsblöcken entweder direkt oder über den Historian 12 beitragen und eine oder mehrere Ansichten oder Diagnostikanzeigen an den Nutzer oder Operator zum Ansehen des Betriebszustandes des erweiterten Steuerblocks ausgeben. Das Funktionsblockverfahren verwendet sowohl Kaskadeneingaben (CAS_IN) und entfernte Kaskadeneingaben (RCAS_IN) als auch korrespondierende Rückkalkulationsausgaben (BKCAL_OUT und RCAS_OUT) sowohl an den Steuer- als auch an den Ausgabefunktionsblöcken. Es ist möglich, unter Verwendung dieser Verbinder eine supervisor-optimierte MPC-Steuerungsstrategie auf die gegebene Steuerungsstrategie aufzusetzen. Diese Supervisor-Steuerungsstrategie kann unter Verwendung von einem oder mehreren Sichtbildschirmen oder Anzeigen verfolgt werden. Wenn gewünscht, können weiterhin Ziele für die optimierte MPC-Steuerung ebenso aus einer Strategie heraus modifiziert werden.
  • 15 ist eine beispielhafte Bildschirmanzeige, die durch eine oder mehrere derartige Anzeigeanwendungen erzeugt wird, und die einen Dialogbildschirm für einen Optimierer darstellt, der den Betrieb des erweiterten Steuerblocks betreffende Information während dessen Betriebs an den Operator bereitstellt. Insbesondere sind die Eingaben an den Prozess (die Stellgrößen MV) und die Ausgaben (die Steuer- und Hilfsgrößen CV und AV) voneinander getrennt dargestellt. Für jede dieser Größen zeigt die Bildschirmanzeige den Namen (die Bezeichnung) der Größe, deren aktuellen Messwert, einen verfügbaren Sollwert, den durch den Optimierer berechneten Zielwert, die Einheiten und die Einheitenwerte der Größenveranderungen und einen Verweis auf die laufenden Größenwerte. Für die Ausgangsgrößen wird ebenfalls eine Angabe darüber angezeigt, ob diese Größe eine der ausgewählten und durch die MPC-Steuerung verwendeten Größen ist. Der vorhergesehene, durch die MPC-Steuerung festgestellte Wert dieser Größe und die voreingestellte Priorität dieser Größe wird ebenfalls angezeigt. Dieser Bildschirm ermöglicht es dem Operator, den aktuellen Betriebszustand des erweiterten Steuerblocks einzusehen, um zu beobachten, wie der erweiterte Steuerblock die Steuerung ausführt. Weiterhin kann der Nutzer einige gesteuerte Parameter für die Fähigkeit einer fernen Sollwertsetzung einrichten, sodass von äußere Anwendungen Bedienungsziele für eine von außen durchgreifende Abstimmung gesetzt werden können.
  • 16 ist eine Bildschirmanzeige, die durch eine Anwendung für eine Diagnose erzeugt werden kann, und die einen Diagnosebildschirm zeigt, der einem Nutzer oder Operator zum Ausführen von Diagnosen in dem erweiterten Steuerblock bereitgestellt wird. Insbesondere stellt der Diagnosebildschirm aus 16 die Steuer- und Randbedingungs-(die Hilfs-) Größen, die Stell- und die Störgrößen getrennt von einander dar. Für jede wird der Name oder die Bezeichnung der Größe mit (in der ersten Spalte) einem Verweis angezeigt, ob eine Fehler- oder Alarmbedingung für diese Größe existiert. Ein solche Fehler oder Alarm kann graphisch unter Verwendung beispielsweise eines grünen Merkzeichens oder eines roten „x" oder in jeder anderen gewünschten Weise graphisch dargestellt werden. Ein Wert und ein Zustand wird ebenfalls für jede dieser Größen angezeigt. Für die Stellgrößen wird der Wert und der Zu stand der Back_Cal (der rückgerechneten oder Feedback-) Größe für diese Signale angezeigt. Es versteht sich, dass dieser Bildschirm zum Ausführen von Diagnosen in dem erweiterten Steuerblock ausgeführt werden kann, wobei dieser den Operator mit den Information versorgt, die zum Feststellen von Problemen innerhalb des Steuersystems notwendig sind. Natürlich können andere Typen von Bildschirmen und Informationen dem Operator bereitgestellt werden, um es diesem zu ermöglichen, den Betrieb des erweiterten Steuerblocks und die Ausführung von Diagnosen auf dem erweiterten Steuerblock und den Modulen, in welchen er verwirklicht ist, einzusehen und auszuführen.
  • Während der erweiterte Funktionsblock in dieser Beschreibung so dargestellt worden ist, dass dieser einen in dem gleichen Funktionsblock lokalisierten Optimierer hat, und aus diesem Grund in dem selben Gerät wie die MPC-Steuerung ausgeführt wird, ist es ebenfalls möglich, den Optimierer in einem getrennten Gerät zu verwirklichen. Insbesondere kann der Optimierer in einem anderen Gerät lokalisiert sein, z.B. in einer der Nutzerworkstations 13, und mit der MPC-Steuerung wie in 2 beschrieben während jeder Ausführung oder Systemabfrage der Steuerung zum Berechnen und Bereitstellen von Zielstellgrößen (MVT) oder zum Bereitstellen des Teilsatzes der im Ergebnis an die MPC-Steuerung festgelegten Steuer- und Hilfsgrößen (CV und AV) kommunizieren. Natürlich kann eine spezielle Schnittstelle, wie zum Beispiel die bekannte OPC-Schnittstelle verwendet werden, um die Kommunikationsschnittstelle zwischen der Steuerung und dem die MPC-Steuerung enthaltenden Funktionsblock und der Workstation oder dem anderen, den Optimierer realisierenden oder ausführenden Computer bereitzustellen. Wie bei der unter Bezugnahme auf 2 beschriebenen Ausführungsform müssen der Optimierer und die MPC-Steuerung miteinander während jedes Abfragezyklus kommunizieren, um die integrierte optimierte MPC-Steuerung auszuführen. Allerdings können in diesem Fall andere gewünschte Typen von Optimierern genutzt werden, z.B. bekannte oder üblichen Echtzeitoptimierer, die bereits innerhalb einer Prozesssteuerungsumgebung vorhanden sein können. Dieses Merkmal kann auch vorteilhaft genutzt werden, wenn das Optimierungsproblem nicht linear ist und deren Lösung nicht lineare Programmierungstechniken erfordert.
  • Während der erweiterte Steuerblock und andere hier behandelte Blöcke und Routinen so beschrieben wurden, dass diese in Verbindung mit Fieldbus- und Standard 4–20 mA Geräten verwendet werden, können diese natürlich unter Verwendung jeder anderer Prozesssteuerungs-Kommunikationsprotokolle oder Programmierungsumgebungen verwirklicht sein und zusammen mit jedem anderen Typ von Geräten, Funktionsblöcken oder Steuerungen verwendet werden. Obwohl die erweiterten Steuerblöcke und die hier beschriebenen zugeordneten Erzeugungs- und Testroutinen vorzugsweise in Form von Software verwirklicht sind, können diese ebenfalls in Form von Hardware, Firmware und so weiter realisiert sein und durch jeden anderen, einem Prozesssteuerungssystem zugeordneten Prozessor ausgeführt werden. So kann die hier beschriebene Routine 40 in einer üblichen Mehrzweck-CPU oder auf einer spezifisch dafür entworfenen Hardware oder Firmware, beispielsweise einem ASIC, wenn gewünscht, verwirklicht sein. Ist diese in Softwareform gegeben, kann diese Software in jedem computerlesbaren Speicher, z.B. einer Magnetscheibe, insbesondere einer Diskette oder Festplatte, einer Laserdisk, einer optischen Disk oder jedem anderen Speichermedium, in einem RAM oder ROM eines Computers oder Prozessors und so weiter gespeichert werden. Ebenfalls kann diese Software an einen Nutzer oder ein Prozesssteuerungssystem über jede bekannte oder erforderliche Übertragungsmethode einschließlich z.B. einer Computerlesbaren Scheibe oder jedem anderen transportablen Computerspeichermechanismus oder über einen Kommunikationskanal, bspw. eine Telefonleitung, das Internet (was als das gleiche oder austauschbar in Bezug auf das Bereitstellen derartiger Software über ein transportierbares Speichermedium angesehen wird) übertragen werden.
  • Somit ist es, während hier dargestellte Erfindung unter Bezugnahme auf spezifische nur als illustrativ anzusehende und nicht einschränkend auf die Erfindung wirkende Beispiele beschrieben wurde, für einen Fachmann offensichtlich, dass Änderungen, Hinzufügungen oder Weglassungen an den beigefügten Ausführungsformen erfolgen können, ohne eine Entfernung von der Absicht und dem Bereich der Erfindung vornehmen zu müssen.

Claims (61)

  1. Prozesssteuerungssystem zum Steuern eines Prozesses, welches folgendes aufweist: – eine Steuerung mit mehrfacher Eingabe/mehrfacher Ausgabe, die zur Erzeugung mehrerer Steuerausgaben während eines jeden Betriebszyklusses des Prozesssteuerungssystems, wobei die Steuerausgaben zum Steuern des Prozesses konfiguriert sind, auf der Grundlage mehrerer Messeingaben von dem Prozess und auf der Grundlage eines Satzes von Zielwerten ausgebildet ist, die der Steuerung mit mehrfacher Eingabe/mehrfacher Ausgabe während eines jeden Betriebszyklusses des Prozesssteuerungssystems bereitgestellt werden; und – einen Optimierer, der zum Entwickeln des Satzes von Zielwerten zur Verwendung durch die Steuerung mit mehrfacher Eingabe/mehrfacher Ausgabe während eines jedes Betriebszyklusses des Prozesssteuerungssystems ausgebildet ist.
  2. Prozesssteuerungssystem nach Anspruch 1, wobei der Optimierer ein Optimierer mit quadratischer Programmierung ist.
  3. Prozesssteuerungssystem nach Anspruch 1, wobei der Optimierer ein Optimierer mit linearer Programmierung ist.
  4. Prozesssteuerungssystem nach einem der vorhergehenden Ansprüche, wobei die Steuerung mit mehrfacher Eingabe/mehrfacher Ausgabe eine modellbasierte prädiktive Steuerung ist.
  5. Prozesssteuerungssystem nach einem der vorhergehenden Ansprüche, wobei die Steuerung mit mehrfacher Eingabe/mehrfacher Ausgabe aus einer quadratischen Steuermatrix entwickelt ist, die die gleiche Zahl von Eingängen als Ausgänge aufweist.
  6. Prozesssteuerungssystem nach einem der vorhergehenden Ansprüche, wobei der Optimierer eine Zielfunktion beinhaltet, die die Kosten oder Gewinne definiert, die mindestens einer Eingabe an den Prozess und mindestens einer Ausgabe des Prozesses zugeordnet sind.
  7. Prozesssteuerungssystem nach einem der vorhergehenden Ansprüche, wobei der Optimierer den Satz von Zielwerten basierend auf prädiktiven Werten im stabilen Zustand der Steuerungs- und Hilfsausgaben des Prozesses erzeugt.
  8. Prozesssteuerungssystem nach einem der vorhergehenden Ansprüche, wobei der Optimierer ein Optimierer mit linearer oder quadratischer Programmierung ist, der eine Zielfunktion aufweist, und der Optimierer ausgebildet ist, um die Zielfunktion zu minimieren oder maximieren, während ein Satz von Steuergrößen an vorgegebenen Sollwerten, ein Satz von Hilfsgrößen innerhalb eines Satzes vorgegebener Hilfsgrößen-Randbedingungsgrenzen und ein Satz von Stellgrößen innerhalb eines Satzes vorgegebener Stellgrößen-Randbedingungsgrenzen gehalten wird, und um, wenn keine Lösung existiert, zu ermöglichen, dass mindestens eine der Steuergrößen innerhalb eines vorgegebenen Sollwertbereiches gehalten wird.
  9. Prozesssteuerungssystem nach einem der vorhergehenden Ansprüche, wobei der Optimierer ein Optimierer mit linearer oder quadratischer Programmierung ist, der eine Zielfunktion aufweist, und der Optimierer ausgebildet ist, um die Zielfunktion zu minimieren oder maximieren, während ein Satz von Steuergrößen innerhalb vorgegebener Sollwertgrenzen, ein Satz von Hilfsgrößen innerhalb eines Satzes vorgegebener Hilfsgrößen-Randbedingungsgrenzen und ein Satz von Stellgrößen innerhalb eines Satzes von vorgegebenen Stellgrößen-Randbedingungsgrenzen gehalten wird, und um, wenn keine Lösung existiert, zu ermöglichen, dass mindestens eine der Hilfsgrößen-Grenzen verletzt wird.
  10. Prozesssteuerungssystem nach Anspruch 9, wobei der Optimierer ausgebildet ist, um einen Satz von Prioritätszahlen für den Satz von Hilfsgrößen zu speichern, und wobei der Optimierer die Prioritätszahlen verwendet, um die mindestens eine zu verletzende Hilfsgrößengrenze zu bestimmen.
  11. Prozesssteuerungssystem zum Steuern eines Prozesses, das folgendes aufweist: – einen Optimierer, der ausgebildet ist, um einen optimalen Betriebspunktes des Prozesses auf der Grundlage einer ersten Anzahl prädiktiver Werte der Steuerungs- und Hilfsgrößen des Prozesses und auf der Grundlage einer zweiten Anzahl momentaner Werte von Stellgrößen des Prozesses zu bestimmen; und – eine Steuerung mit mehrfacher Eingabe/mehrfacher Ausgabe, die ausgebildet ist, um die zweite Anzahl von Stell-Steuersignalen auf der Grundlage eines vorgegebenen Teilsatzes der ersten Anzahl prädiktiver Werte der Steuerungs- und Hilfsgrößen des Prozesses zu erzeugen, wobei der vorgegebene Teilsatz sich zahlenmäßig von der ersten Anzahl der Steuerungs- und Hilfsgrößen des Prozesses unterscheidet.
  12. Prozesssteuerungssystem nach Anspruch 11, wobei der vorgegebene Teilsatz kleiner oder gleich der zweiten Anzahl der Stellgrößen ist.
  13. Prozesssteuerungssystem nach Anspruch 11 oder 12, wobei die Steuerung mit mehrfacher Eingabe/mehrfacher Ausgabe eine modellbasierte prädiktive Steuerung ist, die eine Steuerungsmatrix im Quadrat einschließt.
  14. Prozesssteuerungssystem nach Anspruch 13, wobei die quadratische Steuermatrix Steuer- und Hilfsgrößen des Prozesses als Eingaben und Stellgrößen des Prozesses als Ausgaben beinhaltet und eine Anzahl von Steuer- und Hilfsgrößen beinhaltet, die gleich der Anzahl der Stellgrößen ist.
  15. Prozesssteuerungssystem nach Anspruch 13, wobei die quadratische Steuermatrix Steuer- und Hilfsgrößen des Prozesses als Eingaben und Stellgrößen des Prozesssteuerungssystems als Ausgaben enthält und eine Anzahl von Steuer- und Hilfsgrößen enthält, die kleiner als die Anzahl der Stellgrößen ist und mindestens eine der Stellgrößen sowohl als Stellgrößenausgabe und Steuergrößeneingabe hat.
  16. Prozesssteuerungssystem nach Anspruch 15, wobei die Anzahl der mindestens einen der Stellgrößen, denen zugewiesen ist, dass sie sowohl Stellgrößenausgaben als auch Steuergrößeneingaben sind, gleich der Differenz zwischen der Gesamtzahl der Stellgrößen und der Anzahl der als Steuergrößeneingabe der Steuermatrix verwendeten Steuer- und Hilfsgrößen ist.
  17. Prozesssteuerungssystem nach Anspruch 15 oder 16, wobei die mindestens eine der sowohl als Stellgrößenausgabe als auch als Steuergrößeneingabe verwendeten Stellgrößen eine Sprungantwort mit dem Verstärkungsfaktor Eins enthält.
  18. Prozesssteuerungssystem nach einem der Ansprüche 13 bis 17, wobei die modellbasierte prädiktive Steuerung zum Minimieren des quadratischen Steuerungsfehlers über einen Prädiktionshorizont und zum Minimieren von Stellgrößen-Bewegungen über einen Steuerungshorizont erzeugt wird.
  19. Prozesssteuerungssystem nach Anspruch 18, wobei die modellbasierte prädiktive Steuerung erzeugt wird, um die Summe der Stellgrößenbewegungen über den Steuerungshorizont gleich zu einer optimalen Zielveränderung der Stellgrößen zu erhalten.
  20. Prozesssteuerungssystem nach Anspruch 18 oder 19, wobei ein Satisfaktionsgrad der Minimierung des quadratischen Fehlers über den Prädiktionshorizont und der Minimierung der Stellgrößenbewegungen willkürlich eingestellt werden kann.
  21. Prozesssteuerungssystem nach Anspruch einem der Ansprüche 18 bis 20, wobei der Satisfaktionsgrad des Erhaltens optimaler Zielveränderungen der Stellgrößen willkürlich eingestellt werden kann.
  22. Prozesssteuerungssystem nach einem der Ansprüche 11 bis 21, wobei der Optimierer ein Optimierer mit linearer oder quadratischer Programmierung ist.
  23. Prozesssteuerungssystem nach Anspruch 22, wobei der Optimierer einen Satz von Zielwerten für den vorgegebenen Teilsatz der ersten Anzahl der Steuer- und Hilfsgrößen erzeugt und die Steuerung mit mehrfacher Eingabe/mehrfacher Ausgabe die Zielwerte für den vorgegebenen Teilsatz der ersten Anzahl der Steuer- und Hilfsgrößen mit gemessenen Werten des vorgegebenen Teilsatzes der ersten Anzahl von Steuer- und Hilfsgrößen kombiniert, um die Stell-Steuersignale zu erzeugen.
  24. Prozesssteuerungssystem nach Anspruch 23, wobei die Steuerung mit mehrfacher Eingabe/mehrfacher Ausgabe einen Satz prädiktiver Steuer- und Hilfsgrößen und einen Satz prädiktiver Stellgrößen erzeugt und wobei der Optimierer den Satz der vorgegebenen Steuer- und Hilfsgrößen und den Satz der vorgegebenen Stellgrößen verwendet, um den Satz von Zielwerten für den vorgegebenen Teilsatz der ersten Anzahl der Steuer- und Hilfsgrößen zu erzeugen.
  25. Prozesssteuerungssystem nach Anspruch 24, welches weiterhin eine Antwortmatrix aufweist, die die Reaktion von jeder aus der ersten Anzahl der Steuer- und Hilfsgrößen auf eine Veränderung von jeder der zweiten Anzahl der Stellgrößen definiert, wobei der Optimierer einen Satz von Ziel-Stellgrößenwerten erzeugt, die einen optimalen Betriebspunkt definieren, und der Optimierer die Antwortmatrix verwendet, um die Zielwerte des vorgegebenen Teilsatzes der ersten Anzahl der Steuer- und Hilfsgrößenwerte aus dem Satz der Ziel-Stellgrößenwerte zu bestimmen.
  26. Prozesssteuerungssystem nach Anspruch 25, bei dem der Optimierer ausgebildet ist, um den Satz der Ziel-Stellgrößenwerte, die eine Zielfunktion maximieren oder minimieren, zu erzeugen, während jede der Steuergrößen an vorgegebenen Sollwerten und jede der Hilfsgrößen und Stellgrößen innerhalb vorgegebener Randbedingungsgrenzen gehalten wird.
  27. Prozesssteuerungssystem nach Anspruch 26, bei dem der Optimierer ausgebildet ist, um einen Satz von Ziel-Stellgrößenwerten zu erzeugen, die die Zielfunktion maximieren oder minimieren, während jede der Steuergrößen innerhalb vorgegebener Sollwertgrenzen und jede der Hilfsgrößen und Stellgrößen innerhalb von Randbedingungsgrenzen gehalten wird, wenn eine Lösung nicht existiert, bei der jede der Steuergrößen an vorbestimmten Sollwerten und jede der Hilfsgrößen und Stellgrößen innerhalb vorgegebener Randbedingungsgrenzen gehalten wird.
  28. Prozesssteuerungssystem nach Anspruch 27, bei der der Optimierer ausgebildet ist, um den Satz von Ziel-Stellgrößenwerten, der die Zielfunktion maximiert oder minimiert, zu erzeugen, während jede der Steuergrößen innerhalb vorgegebener Sollwertgrenzen und die Stellgrößen innerhalb vorgegebener Randbedingungsgrenzen gehalten werden, und während es einer oder mehrerer der Hilfsgrößen erlaubt ist, vorgegebene Randbedingungsgrenzen zu verletzen, und zwar auf der Grundlage von mit den Hilfsgrößen verknüpften Prioritäten, wenn eine Lösung nicht existiert, bei der jede der Steuergrößen innerhalb vorgegebener Sollwertgrenzen und jede der Hilfsgrößen und Stellgrößen innerhalb vorgegebener Randbedingungsgrenzen gehalten wird.
  29. Verfahren zum Steuern eines Prozesses mit einer Vielzahl von Stellgrößen und einer Mehrzahl von Steuer- und Hilfsgrößen, die durch Änderungen in den Stellgrößen beeinflussbar sind, wobei die Vielzahl der Stellgrößen zahlenmäßig von der Mehrzahl der Steuer- und Hilfsgrößen verschieden ist, und wobei das Verfahren folgende Schritte umfasst: – Auswählen eines Teilsatzes aus der Mehrzahl der Steuer- und Hilfsgrößen zur Verwendung beim Durchführen der Prozesssteuerung; – Erzeugen einer Steuermatrix unter Verwendung des ausgewählten Teilsatzes der Mehrzahl von Steuer- und Hilfsgrößen und der Vielzahl der Stellgrößen; – Erzeugen einer Steuerung aus der Steuermatrix, die den ausgewählten Teilsatz aus der Mehrzahl von Steuer- und Hilfsgrößen als Eingaben und die Vielzahl der Stellgrößen als Ausgaben aufweist; – Durchführen einer Prozessoptimierung durch Auswählen eines Prozessbetriebspunktes, um eine Zielfunktion, abhängig von der Vielzahl der Stellgrößen und der Mehrzahl der Steuer- und Hilfsgrößen, zu minimieren oder zu maximieren, wobei der Prozessbetriebspunkt durch einen Satz von Zielwerten für den ausgewählten Teilsatz der Mehrzahl der Steuer- und Hilfsgrößen definiert wird; – Ausführen einer Steuerungstechnik mit mehrfacher Eingabe/mehrfacher Ausgabe unter Verwendung einer aus der Steuermatrix erzeugten Steuerung, um einen Satz von Stellgrößenwerten aus den Zielwerten für den ausgewählten Teilsatz der Mehrzahl der Steuer- und Hilfsgrößen und den gemessenen Werten des ausgewählten Teilsatzes der Mehrzahl von Steuer- und Hilfsgrößen zu entwickeln; und – Verwenden des entwickelten Satzes von Stellgrößenwerten, um den Prozess zu steuern.
  30. Verfahren nach Anspruch 29, wobei die Schritte des Durchführens der Prozessoptimierung und des Durchführens der Steuerungstechnik mit mehrfacher Eingabe/mehrfacher Ausgabe während aufeinanderfolgender Scanperioden des Prozesses ausgeführt werden.
  31. Verfahren nach Anspruch 29 oder 30, wobei die Schritte der Auswahl des Teilsatzes aus der Mehrzahl der Steuer- und Hilfsgrößen und der Erzeugung einer Steuermatrix vor dem Onlinebetrieb des Prozesses erfolgen.
  32. Verfahren nach einem der Ansprüche 29 bis 31, wobei die Schritte der Auswahl des Teilsatzes aus der Mehrzahl der Steuer- und Hilfsgrößen beinhaltet, dass jeder der Steuer- oder Hilfsgrößen innerhalb des Teilsatzes der Mehrzahl der Steuer- oder Hilfsgrößen auf der Grundlage einer minimalen Bedingungsanzahl für die Steuermatrix ausgewählt wird.
  33. Verfahren nach einem der Ansprüche 29 bis 32, wobei der Schritt der Auswahl des Teilsatzes der Mehrzahl der Steuer- und Hilfsgrößen beinhaltet, dass eine der Steuer- oder Hilfsgrößen auf der Grundlage einer Verstärkungsantwort von einer der Steuer- oder Hilfsgrößen auf eine der Stellgrößen als am meisten auf eine der Stellgrößen ansprechend ausgewählt wird.
  34. Verfahren nach einem der Ansprüche 29 bis 33, wobei der Schritt der Auswahl des Teilsatzes aus der Mehrzahl der Steuer- und Hilfsgrößen beinhaltet, dass eine der Steuer- oder Hilfsgrößen auf der Grundlage einer Antwortzeit einer der Steuer- oder Hilfsgrößen auf eine der Stellgrößen als am meisten auf eine der Stellgrößen ansprechend ausgewählt wird.
  35. Verfahren nach einem der Ansprüche 29 bis 34, wobei der Schritt der Auswahl des Teilsatzes aus der Mehrzahl der Steuer- und Hilfsgrößen beinhaltet, dass eine der Steuer- oder Hilfsgrößen als am meisten auf eine der Stellgrößen ansprechend ausgewählt wird, und zwar auf der Grundlage einer Kombination einer Verstärkungsantwort und einer Antwortzeit der einen der Steuer- oder Hilfsgrößen auf die eine der Stellgrößen.
  36. Verfahren nach einem der Ansprüche 29 bis 35, wobei der Schritt der Durchführung der Prozesssteuerungstechnik mit mehrfacher Eingabe/mehrfacher Ausgabe den Schritt einer modellbasierten prädiktiven Steuerungstechnik beinhaltet.
  37. Verfahren nach Anspruch 36, wobei der Schritt der Durchführung der Prozessoptimierung den Schritt einer Durchführung einer linearen oder quadratischen Programmiertechnik beinhaltet.
  38. Verfahren nach einem der Ansprüche 29 bis 37, wobei der Schritt der Auswahl des Teilsatzes aus der Mehrzahl der Steuer- und Hilfsgrößen den Schritt des Auswählens einer einzelnen und unterschiedlichen der Steuer- und Hilfsgrößen für jede der Mehrzahl von Stellgrößen beinhaltet.
  39. Prozesssteuerungselement, ausgebildet zur Verwendung als ein Bereich einer auf einem Prozessor implementierten Steuerungsroutine, um eine Vielzahl von Steuer- und Hilfsparametern eines Prozesses unter Verwendung einer Mehrzahl von Stellparametern zu steuern, wobei das Prozesssteuerungselement folgendes enthält: – einen computerlesbaren Datenträger; – einen auf dem computerlesbaren Datenträger gespeicherten und für die Ausführung auf dem Prozessor ausgebildeten Funktionsblock, um eine Steuerung mit mehrfacher Eingabe/mehrfacher Ausgabe des Prozesses während jeder Steuerungs-Scanperiode zu implementieren, wobei der Funktionsblock enthält: – eine Zielfunktion, die ein Optimierungskriterium auf der Grundlage der Vielzahl von Steuer- und Hilfsparametern definiert; – eine Optimierer-Routine, die die Zielfunktion verwendet, um einen Satz optimaler Zielwerte für die Steuer- und Hilfsparameter während jeder Steuerungs-Scanperiode zu erzeugen; – eine Steuermatrix, die einen vorgegebenen Teilsatz der Vielzahl der Steuer- und Hilfsparameter zu der Mehrzahl der Stellparameter in Beziehung setzt; und – eine Steuerungsroutine für mehrfache Eingabe/mehrfache Ausgabe, die ein Steuersignal für jeden der Mehrzahl der Stellparameter während jeder Steuer-Scanperiode unter Verwendung der Steuermatrix und der Zielwerte für den Teilsatz der Vielzahl der Steuer- und Hilfsgrößen erzeugt, wobei die Steuersignale so bestimmt werden, dass sie den Teilsatz der Vielzahl der Steuer- und Hilfsparameter zu den optimalen Zielwerten für den Teilsatz der Steuer- und Hilfsparameter treiben.
  40. Prozesssteuerungselement nach Anspruch 39, wobei die Optimierer-Routine eine lineare oder quadratische Programmierroutine beinhaltet.
  41. Prozesssteuerungselement nach Anspruch 40, wobei die Steuerroutine für die mehrfache Eingabe/mehrfache Ausgabe eine modellbasierte prädiktive Steuerungsroutine enthält.
  42. Prozesssteuerungselement nach Anspruch 41, wobei die Steuermatrix quadratisch ist und eine erste Anzahl von Steuer- und Hilfsparametern und die erste Anzahl der Stellparameter verwendet und wobei die Zielfunktion ein Optimierungskriterium auf der Grundlage einer zweiten Anzahl von Steuer- und Hilfsparametern definiert, wobei die zweite Anzahl verschieden von der ersten Anzahl ist.
  43. Prozesssteuerungselement nach einem der Ansprüche 39 bis 42, wobei die Zielfunktion für den Benutzer während des Prozessbetriebs wählbar ist.
  44. Prozesssteuerungselement nach einem der Ansprüche 39 bis 43, das weiterhin eine Vielzahl unterschiedlicher potentieller Zielfunktionen beinhaltet, die als Zielfunktion, die durch die Optimierer-Routine zu verwenden ist, auswählbar sind.
  45. Prozesssteuerungselement nach einem der Ansprüche 39 bis 44, wobei der Funktionsblock einen Speicher zum Speichern eines Satzes von Steuerparameter-Sollwerten und eines Satzes von Hilfs- und Stellparameter- Grenzen beinhaltet und wobei die Optimierer-Routine konfiguriert ist, um den Satzes optimaler Zielwerte für die Stellparameter zu bestimmen, die dazu führen, dass die Steuerparameter sich an den Steuerparameter-Sollwerten befinden, die Hilfs- und Stellparameter sich innerhalb der Hilfs- und Stellparametergrenzen befinden und die Zielfunktion minimiert oder maximiert wird.
  46. Prozesssteuerungselement nach Anspruch 45, bei dem der Speicher ebenfalls einen Satz von Steuerparameter-Sollwertgrenzen speichert und die Optimierer-Routine ausgebildet ist, um den Satz optimaler Zielwerte für die Stellparameter zu erzeugen, die die Zielfunktion maximieren oder minimieren, während jeder der Steuerparameter innerhalb der Steuerparameter-Sollwertgrenzen und jeder der Hilfsparameter und Stellparameter innerhalb der Hilfs- und Stellparametergrenzen gehalten wird, wenn eine Lösung nicht existiert, die die Steuerparameter bei den Steuerparameter-Sollwerten und die Hilfs- und Stellparameter innerhalb der Hilfs- und Stellparametergrenzen hält.
  47. Prozesssteuerungselement nach Anspruch 46, bei dem der Speicher weiterhin einen Satz von Prioritätsangaben für die Hilfsparameter speichert und die Optimierer-Routine ausgebildet ist, um einen Satz von Ziel-Stellparametern zu erzeugen, die die Zielfunktion maximieren oder minimieren, während jeder der Steuerparameter innerhalb der Steuerparameter- Sollwertgrenzen gehalten wird, und während es einem oder mehreren der Hilfsparameter auf der Grundlage der Prioritätsangaben für die Hilfsparameter gestattet wird, die Hilfsparametergrenzen zu verletzen, wenn eine Lösung nicht existiert, bei der jeder der Steuerparameter innerhalb der Steuerparameter-Sollwertgrenzen und jeder der Hilfsparameter und Stellparameter innerhalb der Hilfs- und Stellparametergrenzen gehalten wird.
  48. Prozesssteuerungselement nach einem der Ansprüche 39 bis 47, bei dem die Steuerroutine zum Erzeugen eines prädiktiven Wertes für jeden der Steuer-, Hilfs- und Stellparameter und zum Bereitstellen der Prädiktionswerte von jedem der Steuer-, Hilfs- und Stellparameter für die Optimierer-Routine ausgebildet ist und bei dem die Optimierer-Routine für die Verwendung der prädiktiven Werte für die Steuer-, Hilfs- und Stellparameter ausgebildet ist, um die Zielwerte für die Teilsatz der Steuer- und Hilfsparameter zu bestimmen.
  49. Verfahren zum Ausführen einer Steuerung eines Prozesses, der eine erste Anzahl von Steuer- und Hilfsgrößen aufweist, die durch eine zweite Anzahl von Stellgrößen gesteuert werden, wobei das Verfahren folgende Schritte aufweist: – Bestimmen einer Sprungantwortmatrix, die eine Antwort auf jede der Steuer- und Hilfsgrößen auf Änderungen in jede der Stellgrößen definiert; – Auswählen eines Teilsatzes der Steuer- und Hilfsgrößen, wobei der Teilsatz die gleiche oder eine kleinere Anzahl von Steuer- und Hilfsgrößen als Stellgrößen hat; – Erstellen einer quadratischen Steuermatrix aus den Antworten innerhalb der Antwortmatrix für den ausgewählten Teilsatz von Steuer- und Hilfsgrößen und die Stellgrößen; und während jedes Prozess-Scans: – Gewinnen einer Messung von jeder von dem ausgewählten Teilsatz der Steuer- und Hilfsgrößen; – Berechnen eines optimalen Betriebszielwertes für jede von dem ausgewählten Teilsatz der Steuer- und Hilfsgrößen; – Durchführen einer Steuerungsroutine mit mehrfacher Eingabe/mehrfacher Ausgabe unter Verwendung der Zielwerte für jede von dem ausgewählten Teilsatz der Steuer- und Hilfsgrößen, der Messungen des ausgewählten Teilsatzes der Steuer- und Hilfsgrößen und der Steuermatrix, um einen Satz von Stellparametersignalen zu erzeugen; und – Verwenden der Stellparametersignale, um den Prozess zu steuern.
  50. Verfahren zum Durchführen einer Prozesssteuerung nach Anspruch 49, wobei die Schritte der Auswahl des Teilsatzes und des Erzeugens einer quadratischen Steuermatrix vor dem Onlinebetrieb des Prozesses durchgeführt werden.
  51. Verfahren zum Durchführen einer Prozesssteuerung nach Anspruch 49 oder 50, wobei der Schritt der Auswahl des Teilsatzes von Steuer- und Hilfsgrößen das Auswählen einer der Steuer- und Hilfsgrößen als am besten auf eine der Stellgrößen ansprechend beinhaltet.
  52. Verfahren zum Durchführen einer Prozesssteuerung nach einem der Ansprüche 49 bis 51, wobei der Schritt der Auswahl eines Teilsatzes der Steuer- und Hilfsgrößen das Auswählen einer der Steuer- und Hilfsgrößen als am besten auf eine der Stellgrö ßen ansprechend beinhaltet, und zwar auf der Basis einer Verstärkungsantwort von der einen der Steuer- oder Hilfsgrößen auf die eine der Stellgrößen.
  53. Verfahren zum Durchführen einer Prozesssteuerung nach einem der Ansprüche 49 bis 52, wobei der Schritt der Auswahl eines Teilsatzes der Steuer- und Hilfsgrößen das Auswählen von einer der Steuer- oder Hilfsgrößen als am besten auf eine der Stellgrößen ansprechend beinhaltet, und zwar auf der Basis einer Antwortzeit der einen der Steuer- oder Hilfsgrößen auf die eine der Stellgrößen.
  54. Verfahren zum Durchführen einer Prozesssteuerung nach einem der Ansprüche 49 bis 53, wobei der Schritt der Auswahl eines Teilsatzes der Steuer- und Hilfsgrößen das Auswählen von einer der Steuer- und Hilfsgrößen als am besten auf eine der Stellgrößen ansprechend beinhaltet, und zwar auf der Basis einer Kombination einer Verstärkungsantwort und einer Antwortzeit der einen der Steuer- und Hilfsgrößen auf die eine der Stellgrößen.
  55. Verfahren zum Durchführen einer Prozesssteuerung nach einem der Ansprüche 49 bis 54, wobei der Schritt der Auswahl des Teilsatzes von Steuer- und Hilfsgrößen das automatische Auswählen des Teilsatzes von Steuer- und Hilfsgrößen auf der Grundlage der Antwortmatrix beinhaltet.
  56. Verfahren zum Durchführen einer Prozesssteuerung nach einem der Ansprüche 49 bis 55, wobei der Schritt der Auswahl des Teilsatzes der Steuer- und Hilfsgrößen ein Bestimmen einer Bedingungsanzahl einer Matrix beinhaltet, die den ausgewählten Teilsatz der Steuer- und Hilfsgrößen beinhaltet.
  57. Verfahren zum Durchführen einer Prozesssteuerung nach einem der Ansprüche 49 bis 56, wobei der Schritt des Erzeugens der quadratischen Steuermatrix folgendes beinhaltet: ein Verwenden von Steuer- und Hilfsgrößen des Prozesses als Eingaben und von Stellgrößen des Prozesses als Ausgaben und ein Auswählen einer Anzahl von Steuer- und Hilfsgrößen, die kleiner als die Anzahl von Stellgrößen ist, und ein Auswählen von mindestens einer der Stellgrößen als eine Steuergrößeneingabe.
  58. Verfahren zum Durchführen einer Prozesssteuerung nach einem der Ansprüche 49 bis 57, wobei der Schritt der Durchführung der Steuerungsroutine mit mehrfacher Eingabe/mehrfacher Ausgabe den Schritt des Durchführens einer modellbasierten prädiktiven Steuerungstechnik enthält.
  59. Verfahren zum Durchführen einer Prozesssteuerung nach Anspruch 58, wobei der Schritt der Berechnung eines optimalen Betriebszielwertes das Ausführen einer linearen oder quadratischen Programmiertechnik beinhaltet.
  60. Verfahren zum Durchführen einer Prozesssteuerung nach Anspruch 59, wobei der Schritt der Durchführung einer linearen Programmiertechnik das Verwenden einer Zielfunktion enthält, die einen optimalen Betrieb des Prozesses auf der Grundlage der ersten Anzahl der Steuer- und Hilfsgrößen und der zweiten Anzahl der Stellgrößen definiert.
  61. Verfahren zum Durchführen einer Prozesssteuerung nach Anspruch 60, das weiterhin das Auswählen von einer aus einem vorgegebenen Satz von Zielfunktionen als die Zielfunktion beinhaltet, die innerhalb der linearen Programmiertechnik zu verwenden ist.
DE10341573.4A 2002-09-11 2003-09-09 Integrierte modellbasierte prädikative Steuerung und Optimierung innerhalb eines Prozesssteuerungssystems Expired - Lifetime DE10341573B4 (de)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US10/241,350 2002-09-11
US241350 2002-09-11
US10/241,350 US7376472B2 (en) 2002-09-11 2002-09-11 Integrated model predictive control and optimization within a process control system

Publications (2)

Publication Number Publication Date
DE10341573A1 true DE10341573A1 (de) 2004-07-08
DE10341573B4 DE10341573B4 (de) 2016-09-01

Family

ID=29250253

Family Applications (2)

Application Number Title Priority Date Filing Date
DE10362408.2A Expired - Lifetime DE10362408B3 (de) 2002-09-11 2003-09-09 Integrierte modellbasierte prädikative Steuerung und Optimierung innerhalb eines Prozesssteuerungssystems
DE10341573.4A Expired - Lifetime DE10341573B4 (de) 2002-09-11 2003-09-09 Integrierte modellbasierte prädikative Steuerung und Optimierung innerhalb eines Prozesssteuerungssystems

Family Applications Before (1)

Application Number Title Priority Date Filing Date
DE10362408.2A Expired - Lifetime DE10362408B3 (de) 2002-09-11 2003-09-09 Integrierte modellbasierte prädikative Steuerung und Optimierung innerhalb eines Prozesssteuerungssystems

Country Status (6)

Country Link
US (3) US7376472B2 (de)
JP (2) JP4413563B2 (de)
CN (3) CN100381956C (de)
DE (2) DE10362408B3 (de)
GB (1) GB2394313B (de)
HK (1) HK1063224A1 (de)

Families Citing this family (243)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE10341762B4 (de) * 2002-09-11 2014-05-15 Fisher-Rosemount Systems, Inc. Handhabung der Realisierbarkeit von Beschränkungen und Grenzen in einem Optimierer für Prozesssteuerungssysteme
US7376472B2 (en) * 2002-09-11 2008-05-20 Fisher-Rosemount Systems, Inc. Integrated model predictive control and optimization within a process control system
US7050863B2 (en) * 2002-09-11 2006-05-23 Fisher-Rosemount Systems, Inc. Integrated model predictive control and optimization within a process control system
DE10242919A1 (de) * 2002-09-16 2004-03-25 Siemens Ag System zur virtuellen Prozessanbindung über Remote Desktop Protocol (RDP)
US7493309B2 (en) * 2003-01-16 2009-02-17 International Business Machines Corporation Framework for dynamic analysis of varying structured data using multiple analysis techniques
JP3963174B2 (ja) * 2003-03-14 2007-08-22 オムロン株式会社 表示・編集装置及び表示方法並びにプログラム
US7272454B2 (en) * 2003-06-05 2007-09-18 Fisher-Rosemount Systems, Inc. Multiple-input/multiple-output control blocks with non-linear predictive capabilities
GB0320670D0 (en) * 2003-09-04 2003-10-01 Curvaceous Software Ltd Multi-variable operations
US20070282480A1 (en) * 2003-11-10 2007-12-06 Pannese Patrick D Methods and systems for controlling a semiconductor fabrication process
US8639365B2 (en) * 2003-11-10 2014-01-28 Brooks Automation, Inc. Methods and systems for controlling a semiconductor fabrication process
US10086511B2 (en) 2003-11-10 2018-10-02 Brooks Automation, Inc. Semiconductor manufacturing systems
US8639489B2 (en) * 2003-11-10 2014-01-28 Brooks Automation, Inc. Methods and systems for controlling a semiconductor fabrication process
WO2005077038A2 (en) * 2004-02-06 2005-08-25 Wisconsin Alumni Research Foundation Siso model predictive controller
US7502715B1 (en) * 2004-09-21 2009-03-10 Asml Netherlands B.V Observability in metrology measurements
US7554970B2 (en) * 2004-10-13 2009-06-30 Alcatel Lucent Simulated annealing for traffic matrix estimation
US7937462B2 (en) * 2004-12-14 2011-05-03 International Business Machines Corporation Verification of correctness of networking aspects of an information technology system
US7523092B2 (en) * 2004-12-14 2009-04-21 International Business Machines Corporation Optimization of aspects of information technology structures
US8645513B2 (en) 2004-12-14 2014-02-04 International Business Machines Corporation Automation of information technology system development
US11477093B2 (en) * 2004-12-14 2022-10-18 Kyndryl, Inc. Coupling of a business component model to an information technology model
US8028334B2 (en) * 2004-12-14 2011-09-27 International Business Machines Corporation Automated generation of configuration elements of an information technology system
US7568022B2 (en) * 2004-12-14 2009-07-28 International Business Machines Corporation Automated display of an information technology system configuration
US7467614B2 (en) 2004-12-29 2008-12-23 Honeywell International Inc. Pedal position and/or pedal change rate for use in control of an engine
US20060200552A1 (en) * 2005-03-07 2006-09-07 Beigi Mandis S Method and apparatus for domain-independent system parameter configuration
ES2259931B1 (es) * 2005-04-12 2007-10-16 Model Predictive Control, S.L. Procedimiento para obtener un sistema de contr0l digital predictivo cuasi-optimo con requisitos computacionales reducidos.
US20060265098A1 (en) * 2005-05-18 2006-11-23 Infineon Technologies Richmond, Lp System and method for real time prediction and/or inheritance of process controller settings in a semiconductor manufacturing facility
US7127304B1 (en) * 2005-05-18 2006-10-24 Infineon Technologies Richmond, Lp System and method to predict the state of a process controller in a semiconductor manufacturing facility
GB0515726D0 (en) * 2005-07-30 2005-09-07 Curvaceous Software Ltd Multi-variable operations
US7389773B2 (en) 2005-08-18 2008-06-24 Honeywell International Inc. Emissions sensors for fuel control in engines
US7451004B2 (en) * 2005-09-30 2008-11-11 Fisher-Rosemount Systems, Inc. On-line adaptive model predictive control in a process control system
US7877154B2 (en) * 2005-09-30 2011-01-25 Fisher-Rosemount Systems, Inc. Method and system for controlling a batch process
US7444191B2 (en) * 2005-10-04 2008-10-28 Fisher-Rosemount Systems, Inc. Process model identification in a process control system
US8036760B2 (en) * 2005-10-04 2011-10-11 Fisher-Rosemount Systems, Inc. Method and apparatus for intelligent control and monitoring in a process control system
US7738975B2 (en) * 2005-10-04 2010-06-15 Fisher-Rosemount Systems, Inc. Analytical server integrated in a process control network
GB2446343B (en) 2005-12-05 2011-06-08 Fisher Rosemount Systems Inc Multi-objective predictive process optimization with concurrent process simulation
US7525929B2 (en) * 2005-12-19 2009-04-28 Alcatel Lucent Fast simulated annealing for traffic matrix estimation
US7376471B2 (en) * 2006-02-21 2008-05-20 United Technologies Corporation System and method for exploiting a good starting guess for binding constraints in quadratic programming with an infeasible and inconsistent starting guess for the solution
US20070234014A1 (en) * 2006-03-28 2007-10-04 Ryotaro Kobayashi Processor apparatus for executing instructions with local slack prediction of instructions and processing method therefor
US7840287B2 (en) * 2006-04-13 2010-11-23 Fisher-Rosemount Systems, Inc. Robust process model identification in model based control techniques
US7768973B2 (en) * 2006-04-21 2010-08-03 Fujitsu Limited Proportional fair scheduler for OFDMA wireless systems with QOS constraints
US7756591B2 (en) * 2006-04-25 2010-07-13 Pegasus Technologies, Inc. System for optimizing oxygen in a boiler
US7496413B2 (en) * 2006-05-03 2009-02-24 Honeywell Asca Inc. Apparatus and method for coordinating controllers to control a paper machine or other machine
US8005575B2 (en) * 2006-06-01 2011-08-23 General Electric Company Methods and apparatus for model predictive control in a real time controller
US20080071395A1 (en) * 2006-08-18 2008-03-20 Honeywell International Inc. Model predictive control with stochastic output limit handling
US7930044B2 (en) * 2006-09-07 2011-04-19 Fakhruddin T Attarwala Use of dynamic variance correction in optimization
EP2059652A4 (de) * 2006-09-15 2010-11-24 Abb As Verfahren zur produktionsoptimierung in einem öl- und/oder gasproduktionssystem
US7949417B2 (en) 2006-09-22 2011-05-24 Exxonmobil Research And Engineering Company Model predictive controller solution analysis process
US7599751B2 (en) * 2006-10-13 2009-10-06 Cutler Technology Corporation Adaptive multivariable MPC controller with LP constraints
US8634940B2 (en) * 2006-10-31 2014-01-21 Rockwell Automation Technologies, Inc. Model predictive control of a fermentation feed in biofuel production
US7987005B2 (en) * 2006-12-19 2011-07-26 Chevron U.S.A. Inc. System, method and program for dynamic control and optimization of a process having manipulated and controlled variables
US8140609B2 (en) * 2007-01-25 2012-03-20 International Business Machines Corporation Congruency and similarity of information technology (IT) structures and associated applications
US20080236771A1 (en) * 2007-03-26 2008-10-02 Metso Automation Usa Inc. System and method for controlling a processor including a digester utilizing time-based assessments
CA2587166C (en) * 2007-05-03 2008-10-07 Imperial Oil Resources Limited An improved process for recovering solvent from asphaltene containing tailings resulting from a separation process
US8981751B1 (en) 2007-05-09 2015-03-17 Intersil Americas LLC Control system optimization via adaptive frequency adjustment
CA2592725C (en) * 2007-06-26 2009-04-14 Imperial Oil Resources Limited A method for cleaning fouled vessels in the paraffinic froth treatment process
US20090103488A1 (en) * 2007-06-28 2009-04-23 University Of Maryland Practical method for resource allocation for qos in ofdma-based wireless systems
CA2594205C (en) * 2007-07-20 2009-11-24 Imperial Oil Resources Limited Use of a fluorocarbon polymer as a surface of a vessel or conduit used in a paraffinic froth treatment process for reducing fouling
CA2595336C (en) * 2007-07-31 2009-09-15 Imperial Oil Resources Limited Reducing foulant carry-over or build-up in a paraffinic froth treatment process
EP2179334A1 (de) * 2007-08-14 2010-04-28 Siemens Aktiengesellschaft Verfahren zur steuerung für ein prozessleitsystem und leitsystem zur steuerung eines industrieprozesses
US20090054998A1 (en) * 2007-08-23 2009-02-26 Chevron U.S.A. Inc. System and process for optimizing process control
KR101385747B1 (ko) * 2007-09-21 2014-04-21 삼성전자주식회사 전자 종이 표시 유니트 및 이를 갖는 이동 통신 단말기
US8548777B2 (en) * 2007-09-28 2013-10-01 Rockwell Automation Technologies, Inc. Automated recommendations from simulation
US20090089031A1 (en) * 2007-09-28 2009-04-02 Rockwell Automation Technologies, Inc. Integrated simulation of controllers and devices
US7801710B2 (en) * 2007-09-28 2010-09-21 Rockwell Automation Technologies, Inc. Simulation controls for model variability and randomness
US20090089029A1 (en) * 2007-09-28 2009-04-02 Rockwell Automation Technologies, Inc. Enhanced execution speed to improve simulation performance
US8069021B2 (en) * 2007-09-28 2011-11-29 Rockwell Automation Technologies, Inc. Distributed simulation and synchronization
US20090089234A1 (en) * 2007-09-28 2009-04-02 Rockwell Automation Technologies, Inc. Automated code generation for simulators
CN101446804B (zh) * 2007-11-26 2010-11-24 北京北方微电子基地设备工艺研究中心有限责任公司 一种工艺控制方法和装置
US7668707B2 (en) * 2007-11-28 2010-02-23 Landmark Graphics Corporation Systems and methods for the determination of active constraints in a network using slack variables and plurality of slack variable multipliers
US8634325B2 (en) * 2007-12-31 2014-01-21 Schneide Electric USA, Inc. Tuning of industrial automation system performance based on device operating characteristics
US20090200210A1 (en) * 2008-02-11 2009-08-13 Hommema Scott E Method Of Removing Solids From Bitumen Froth
CA2716809C (en) * 2008-03-20 2014-04-08 Exxonmobil Upstream Research Company Enhancing emulsion stability
US8078291B2 (en) 2008-04-04 2011-12-13 Honeywell International Inc. Methods and systems for the design and implementation of optimal multivariable model predictive controllers for fast-sampling constrained dynamic systems
US20090287320A1 (en) * 2008-05-13 2009-11-19 Macgregor John System and Method for the Model Predictive Control of Batch Processes using Latent Variable Dynamic Models
US8352148B2 (en) * 2008-05-21 2013-01-08 General Electric Company System for controlling input profiles of combined cycle power generation system
US8046089B2 (en) * 2008-06-20 2011-10-25 Honeywell International Inc. Apparatus and method for model predictive control (MPC) of a nonlinear process
US8252170B2 (en) 2008-06-27 2012-08-28 Exxonmobil Upstream Research Company Optimizing feed mixer performance in a paraffinic froth treatment process
US20100011067A1 (en) * 2008-07-10 2010-01-14 Allstrom Peter E Transmitter Instant Messaging Interface in a Distributed Control System
US8060290B2 (en) 2008-07-17 2011-11-15 Honeywell International Inc. Configurable automotive controller
US8914303B2 (en) * 2008-08-13 2014-12-16 International Business Machines Corporation System and method for direct manipulation of a triangular distribution of information using a graphical user interface
US7930045B2 (en) * 2008-10-07 2011-04-19 Emerson Process Management Power & Water Solutions, Inc. Two-stage model predictive control technique
US8638076B2 (en) * 2008-10-23 2014-01-28 Intersil Americas Inc. Transient processing mechanism for power converters
US8504505B2 (en) * 2008-10-31 2013-08-06 Caterpillar Inc. System and method for controlling an autonomous worksite
JP2010128583A (ja) * 2008-11-25 2010-06-10 Toshiba Corp テスト容易化設計装置ならびにその方法およびプログラム
US20100134911A1 (en) * 2008-12-02 2010-06-03 Jin Zhen Multi-parameter optimization of write head performance using adaptive response surface
US8271104B2 (en) * 2009-04-22 2012-09-18 Terndrup Consult & Associates Bv Method and system for dynamic optimisation of industrial processes
US8145329B2 (en) * 2009-06-02 2012-03-27 Honeywell International Inc. Method and system for combining feedback and feedforward in model predictive control
CA2672004C (en) 2009-07-14 2012-03-27 Imperial Oil Resources Limited Feed delivery system for a solid-liquid separation vessel
US8806510B2 (en) * 2009-09-10 2014-08-12 International Business Machines Corporation Determining operator partitioning constraint feasibility
US8620461B2 (en) 2009-09-24 2013-12-31 Honeywell International, Inc. Method and system for updating tuning parameters of a controller
US9141098B2 (en) 2009-10-30 2015-09-22 Rockwell Automation Technologies, Inc. Integrated optimization and control for production plants
US9268317B2 (en) * 2009-12-02 2016-02-23 Shell Oil Company Economics-based coordination of advanced process control and real-time optimization
WO2011071651A1 (en) 2009-12-07 2011-06-16 Exxonmobil Upstream Research Company Solvent surveillance in solvent-based heavy oil recovery processes
DE102009054905A1 (de) * 2009-12-17 2011-06-22 Robert Bosch GmbH, 70469 Verfahren zum Ermitteln von Funktionsparametern für ein Steuergerät
AU2010337990B2 (en) * 2009-12-31 2014-03-06 Abb Schweiz Ag Process optimization method and system for a power plant
US8756039B2 (en) * 2010-03-02 2014-06-17 Fisher-Rosemount Systems, Inc. Rapid process model identification and generation
WO2011131806A1 (es) * 2010-04-19 2011-10-27 Universidad Nacional De Educación A Distancia (Uned) Método de control avanzado para optimizar los costes de operación en estaciones depuradoras de aguas residuales con eliminación de nitrógeno
US8712738B2 (en) * 2010-04-30 2014-04-29 International Business Machines Corporation Determining ill conditioning in square linear system of equations
US8504175B2 (en) * 2010-06-02 2013-08-06 Honeywell International Inc. Using model predictive control to optimize variable trajectories and system control
US8880202B2 (en) * 2010-07-09 2014-11-04 Emerson Process Management Power & Water Solutions, Inc. Optimization system using an iteratively coupled expert engine
US9335748B2 (en) 2010-07-09 2016-05-10 Emerson Process Management Power & Water Solutions, Inc. Energy management system
US9217565B2 (en) 2010-08-16 2015-12-22 Emerson Process Management Power & Water Solutions, Inc. Dynamic matrix control of steam temperature with prevention of saturated steam entry into superheater
US9335042B2 (en) 2010-08-16 2016-05-10 Emerson Process Management Power & Water Solutions, Inc. Steam temperature control using dynamic matrix control
US9447963B2 (en) 2010-08-16 2016-09-20 Emerson Process Management Power & Water Solutions, Inc. Dynamic tuning of dynamic matrix control of steam temperature
WO2012021995A1 (en) * 2010-08-18 2012-02-23 Manufacturing Technology Network Inc. Computer apparatus and method for real-time multi-unit optimization
US8620705B2 (en) * 2010-09-21 2013-12-31 Exxonmobil Research And Engineering Company Method of connecting different layers of optimization
CA2714842C (en) 2010-09-22 2012-05-29 Imperial Oil Resources Limited Controlling bitumen quality in solvent-assisted bitumen extraction
US20120078730A1 (en) * 2010-09-29 2012-03-29 Viswanathan Ramaiyer Automatic Internet Search Advertising Campaign Variable Optimization for Aiding Advertising Agency Efficiencies
US8670945B2 (en) 2010-09-30 2014-03-11 Honeywell International Inc. Apparatus and method for product movement planning to support safety monitoring in inventory management systems
US8855804B2 (en) * 2010-11-16 2014-10-07 Mks Instruments, Inc. Controlling a discrete-type manufacturing process with a multivariate model
US8554343B2 (en) * 2010-12-08 2013-10-08 Mitsubishi Electric Research Laboratories, Inc. Method for solving control problems
US8897900B2 (en) * 2011-03-18 2014-11-25 Rockwell Automation Technologies, Inc. Graphical language for optimization and use
US8417361B2 (en) * 2011-03-22 2013-04-09 General Electric Company Model predictive control system and method for integrated gasification combined cycle power generation
CA2734811C (en) 2011-03-29 2012-11-20 Imperial Oil Resources Limited Feedwell system for a separation vessel
CN102221828B (zh) * 2011-05-04 2013-02-13 沈阳机床(集团)设计研究院有限公司 数控机床控制程序模块化系统
US8515715B2 (en) 2011-06-17 2013-08-20 International Business Machines Corporation Method, system and program storage device for simulating electronic device performance as a function of process variations
EP2560062A1 (de) * 2011-08-16 2013-02-20 ABB Research Ltd. Verfahren und Steuersysteme zur Steuerung eines Industriesystems
US9677493B2 (en) 2011-09-19 2017-06-13 Honeywell Spol, S.R.O. Coordinated engine and emissions control system
US9163828B2 (en) 2011-10-31 2015-10-20 Emerson Process Management Power & Water Solutions, Inc. Model-based load demand control
US20130111905A1 (en) 2011-11-04 2013-05-09 Honeywell Spol. S.R.O. Integrated optimization and control of an engine and aftertreatment system
US9650934B2 (en) 2011-11-04 2017-05-16 Honeywell spol.s.r.o. Engine and aftertreatment optimization system
EP2607975A1 (de) 2011-12-21 2013-06-26 Siemens Aktiengesellschaft Modellbasierter Prädiktivregler und Verfahren zur Regelung eines technischen Prozesses
CN103365207B (zh) * 2012-03-28 2016-05-11 新奥科技发展有限公司 一种工业过程的控制方法和设备
CN103365206B (zh) * 2012-03-28 2016-03-23 新奥科技发展有限公司 一种工业过程的控制方法和设备
US9910412B2 (en) * 2012-03-29 2018-03-06 Nec Corporation State control device, control method, and program
JP5744321B2 (ja) * 2012-04-02 2015-07-08 三菱電機株式会社 パラメータ設定装置
US9541471B2 (en) 2012-04-06 2017-01-10 Mks Instruments, Inc. Multivariate prediction of a batch manufacturing process
US9429939B2 (en) 2012-04-06 2016-08-30 Mks Instruments, Inc. Multivariate monitoring of a batch manufacturing process
US9244452B2 (en) * 2012-11-02 2016-01-26 Rockwell Automation Technologies, Inc. Configuration and monitoring via design diagram representation
CN103257572B (zh) * 2012-11-29 2016-05-18 浙江大学 分馏系统中稳态优化的软约束控制方法
US10418833B2 (en) 2015-10-08 2019-09-17 Con Edison Battery Storage, Llc Electrical energy storage system with cascaded frequency response optimization
US9235657B1 (en) 2013-03-13 2016-01-12 Johnson Controls Technology Company System identification and model development
US9852481B1 (en) 2013-03-13 2017-12-26 Johnson Controls Technology Company Systems and methods for cascaded model predictive control
US9436179B1 (en) 2013-03-13 2016-09-06 Johnson Controls Technology Company Systems and methods for energy cost optimization in a building system
US9448546B2 (en) 2013-03-15 2016-09-20 Rockwell Automation Technologies, Inc. Deterministic optimization based control system and method for linear and non-linear systems
US9400491B2 (en) 2013-03-15 2016-07-26 Rockwell Automation Technologies, Inc. Stabilized deteministic optimization based control system and method
EP2971699B8 (de) 2013-03-15 2020-01-15 Rolls-Royce Corporation Lebensdauer- und leistungsoptimierungsmanagement für einen turbinenmotor
US10317857B2 (en) 2013-03-15 2019-06-11 Rockwell Automation Technologies, Inc. Sequential deterministic optimization based control system and method
DK177915B1 (en) * 2013-05-28 2015-01-05 Core As Process control method
DE102013108478A1 (de) * 2013-08-06 2015-02-12 Endress+Hauser Process Solutions Ag Verfahren zur Erweiterung einer eingebetteten Softwarekomponente eines Feldgerätes
US9593566B2 (en) * 2013-10-23 2017-03-14 Baker Hughes Incorporated Semi-autonomous drilling control
US11199821B2 (en) 2013-11-11 2021-12-14 Rockwell Automation Technologies, Inc. Configuring and operating control systems using a database
US9804580B2 (en) 2013-11-22 2017-10-31 Mitsubishi Electric Research Laboratories, Inc. Feasible tracking control of machine
US10307863B2 (en) * 2013-12-06 2019-06-04 Mitsubishi Electric Research Laboratories, Inc. Control of redundant laser processing machines
IN2014CH00257A (de) * 2014-01-21 2015-07-31 Yokogawa Electric Corp
US10133268B2 (en) * 2014-01-30 2018-11-20 Exxonmobil Research And Engineering Company Real time optimization of batch processes
JP6835589B2 (ja) * 2014-03-20 2021-02-24 フィッシャー−ローズマウント システムズ,インコーポレイテッド 制御ループにおけるコントローラ更新の低減、被制御デバイスを制御する方法、プロセス制御システム、プロセスコントローラ
US10338543B2 (en) * 2014-04-04 2019-07-02 Schneider Electric Software, Llc Integrated model predictive control and advanced process control
US10101730B2 (en) 2014-05-01 2018-10-16 Johnson Controls Technology Company Incorporating a load change penalty in central plant optimization
US9733629B2 (en) * 2014-07-21 2017-08-15 Honeywell International Inc. Cascaded model predictive control (MPC) approach for plantwide control and optimization
US10025301B2 (en) 2014-08-29 2018-07-17 General Electric Company Method and system of adaptive model-based control for multiple-input multiple-output plants
US9747543B1 (en) * 2014-09-30 2017-08-29 Hrl Laboratories, Llc System and method for controller adaptation
US10281507B2 (en) 2014-11-21 2019-05-07 Kohler Co. Generator sizing
US9665089B2 (en) * 2015-01-21 2017-05-30 Honeywell International Inc. Method and apparatus for advanced control using function blocks in industrial process control and automation systems
EP3051367B1 (de) 2015-01-28 2020-11-25 Honeywell spol s.r.o. Ansatz und system zur handhabung von einschränkungen für gemessene störungen mit unsicherer vorschau
EP3056706A1 (de) 2015-02-16 2016-08-17 Honeywell International Inc. Ansatz zur nachbehandlungssystemmodellierung und modellidentifizierung
US9946241B2 (en) 2015-02-23 2018-04-17 Mitsubishi Electric Research Laboratories, Inc. Model predictive control with uncertainties
US10845781B2 (en) * 2015-03-23 2020-11-24 Fisher Controls International Llc Integrated process controller with loop and valve control capability
US10082773B2 (en) * 2015-04-30 2018-09-25 Aspen Technology, Inc. Formulating steady-state targets using prioritized objective functions
EP3091212A1 (de) 2015-05-06 2016-11-09 Honeywell International Inc. Identifikationsansatz für verbrennungsmotor-mittelwertmodelle
US11086310B2 (en) * 2015-05-27 2021-08-10 Honeywell International Inc. Method and apparatus for real time model predictive control operator support in industrial process control and automation systems
US10281897B2 (en) * 2015-06-02 2019-05-07 Mitsubishi Electric Research Laboratories, Inc. Model predictive control with uncertainties
CN107615183B (zh) 2015-06-05 2022-01-25 国际壳牌研究有限公司 模型预测控制应用程序中相对于最佳性能值的优良性能的系统和方法
US10429800B2 (en) * 2015-06-26 2019-10-01 Honeywell Limited Layered approach to economic optimization and model-based control of paper machines and other systems
JP6522445B2 (ja) * 2015-06-30 2019-05-29 三菱日立パワーシステムズ株式会社 制御パラメータ最適化システム及びそれを備えた運転制御最適化装置
EP3125052B1 (de) 2015-07-31 2020-09-02 Garrett Transportation I Inc. Quadratischer programmlöser für mpc mit variabler anordnung
US10272779B2 (en) 2015-08-05 2019-04-30 Garrett Transportation I Inc. System and approach for dynamic vehicle speed optimization
US10190789B2 (en) 2015-09-30 2019-01-29 Johnson Controls Technology Company Central plant with coordinated HVAC equipment staging across multiple subplants
US10700541B2 (en) 2015-10-08 2020-06-30 Con Edison Battery Storage, Llc Power control system with battery power setpoint optimization using one-step-ahead prediction
US10283968B2 (en) 2015-10-08 2019-05-07 Con Edison Battery Storage, Llc Power control system with power setpoint adjustment based on POI power limits
US10554170B2 (en) 2015-10-08 2020-02-04 Con Edison Battery Storage, Llc Photovoltaic energy system with solar intensity prediction
US10190793B2 (en) 2015-10-08 2019-01-29 Johnson Controls Technology Company Building management system with electrical energy storage optimization based on statistical estimates of IBDR event probabilities
US10186889B2 (en) 2015-10-08 2019-01-22 Taurus Des, Llc Electrical energy storage system with variable state-of-charge frequency response optimization
US10222427B2 (en) 2015-10-08 2019-03-05 Con Edison Battery Storage, Llc Electrical energy storage system with battery power setpoint optimization based on battery degradation costs and expected frequency response revenue
US10389136B2 (en) 2015-10-08 2019-08-20 Con Edison Battery Storage, Llc Photovoltaic energy system with value function optimization
US10250039B2 (en) 2015-10-08 2019-04-02 Con Edison Battery Storage, Llc Energy storage controller with battery life model
US10742055B2 (en) 2015-10-08 2020-08-11 Con Edison Battery Storage, Llc Renewable energy system with simultaneous ramp rate control and frequency regulation
US10197632B2 (en) 2015-10-08 2019-02-05 Taurus Des, Llc Electrical energy storage system with battery power setpoint optimization using predicted values of a frequency regulation signal
US10418832B2 (en) 2015-10-08 2019-09-17 Con Edison Battery Storage, Llc Electrical energy storage system with constant state-of charge frequency response optimization
US11210617B2 (en) 2015-10-08 2021-12-28 Johnson Controls Technology Company Building management system with electrical energy storage optimization based on benefits and costs of participating in PDBR and IBDR programs
US10564610B2 (en) 2015-10-08 2020-02-18 Con Edison Battery Storage, Llc Photovoltaic energy system with preemptive ramp rate control
JP6918791B2 (ja) * 2015-10-09 2021-08-11 フィッシャー−ローズマウント システムズ,インコーポレイテッド 原因結果マトリックスの安全論理を検証するためのシステム及び方法
CN106647250B (zh) * 2015-10-30 2019-07-16 中国科学院沈阳自动化研究所 基于离线优化/在线查表方式的双层结构预测控制方法
USD810104S1 (en) 2015-11-16 2018-02-13 Kohler, Co. Display screen with graphical user interface
USD811423S1 (en) 2015-11-16 2018-02-27 Kohler, Co. Display screen with graphical user interface
GB2545899B (en) * 2015-12-21 2018-07-25 Imperial Innovations Ltd Management of liquid conduit systems
US10415492B2 (en) 2016-01-29 2019-09-17 Garrett Transportation I Inc. Engine system with inferential sensor
US10124750B2 (en) 2016-04-26 2018-11-13 Honeywell International Inc. Vehicle security module system
US10036338B2 (en) 2016-04-26 2018-07-31 Honeywell International Inc. Condition-based powertrain control system
DE102016108053A1 (de) * 2016-04-29 2017-11-02 Khs Gmbh Verfahren zum Optimieren des Abfüllens eines Behälters
US10643167B2 (en) 2016-07-28 2020-05-05 Honeywell International Inc. MPC with unconstrained dependent variables for KPI performance analysis
US10594153B2 (en) 2016-07-29 2020-03-17 Con Edison Battery Storage, Llc Frequency response optimization control system
US10778012B2 (en) 2016-07-29 2020-09-15 Con Edison Battery Storage, Llc Battery optimization control system with data fusion systems and methods
CN107844093B (zh) * 2016-09-18 2020-02-07 南京南瑞继保电气有限公司 一种基于元件模型的自定义功能块及组态封装方法
EP3548729B1 (de) 2016-11-29 2023-02-22 Garrett Transportation I Inc. Inferenzflusssensor
US11238547B2 (en) 2017-01-12 2022-02-01 Johnson Controls Tyco IP Holdings LLP Building energy cost optimization system with asset sizing
US11847617B2 (en) 2017-02-07 2023-12-19 Johnson Controls Tyco IP Holdings LLP Model predictive maintenance system with financial analysis functionality
US11900287B2 (en) * 2017-05-25 2024-02-13 Johnson Controls Tyco IP Holdings LLP Model predictive maintenance system with budgetary constraints
US20180275621A1 (en) * 2017-03-24 2018-09-27 Mitsubishi Electric Research Laboratories, Inc. Model Predictive Control with Uncertainties
US10168705B2 (en) * 2017-04-06 2019-01-01 Uber Technologies, Inc. Automatic tuning of autonomous vehicle cost functions based on human driving data
US10466684B2 (en) 2017-05-25 2019-11-05 Honeywell International Inc. Apparatus and method for adjustable identification of controller feasibility regions to support cascaded model predictive control (MPC)
US11409274B2 (en) 2017-05-25 2022-08-09 Johnson Controls Tyco IP Holdings LLP Model predictive maintenance system for performing maintenance as soon as economically viable
US11416955B2 (en) 2017-05-25 2022-08-16 Johnson Controls Tyco IP Holdings LLP Model predictive maintenance system with integrated measurement and verification functionality
US11636429B2 (en) 2017-05-25 2023-04-25 Johnson Controls Tyco IP Holdings LLP Model predictive maintenance systems and methods with automatic parts resupply
JP7184797B2 (ja) 2017-05-25 2022-12-06 ジョンソン コントロールズ テクノロジー カンパニー ビルディング機器用のモデル予測的メンテナンスシステム
US11120411B2 (en) 2017-05-25 2021-09-14 Johnson Controls Tyco IP Holdings LLP Model predictive maintenance system with incentive incorporation
US11747800B2 (en) 2017-05-25 2023-09-05 Johnson Controls Tyco IP Holdings LLP Model predictive maintenance system with automatic service work order generation
US10678195B2 (en) 2017-06-12 2020-06-09 Honeywell International Inc. Apparatus and method for identifying, visualizing, and triggering workflows from auto-suggested actions to reclaim lost benefits of model-based industrial process controllers
JP6939162B2 (ja) * 2017-07-13 2021-09-22 横河電機株式会社 プラント制御支援装置、プラント制御支援方法、プラント制御支援プログラム及び記録媒体
US10401816B2 (en) * 2017-07-20 2019-09-03 Honeywell International Inc. Legacy control functions in newgen controllers alongside newgen control functions
US10969749B2 (en) * 2017-08-22 2021-04-06 Honeywell Limited Application of model predictive control (MPC)-based forced ramping of process input variables and process output reference trajectory design over a prediction horizon for MPC-based paper machine grade change control
EP3557453B1 (de) * 2017-08-29 2023-05-03 Siemens Aktiengesellschaft Verfahren und vorrichtung zur bestimmung einer datenleseperiode
JP2019057010A (ja) * 2017-09-20 2019-04-11 アズビル株式会社 調節計
US11057213B2 (en) 2017-10-13 2021-07-06 Garrett Transportation I, Inc. Authentication system for electronic control unit on a bus
US11073804B2 (en) * 2017-11-07 2021-07-27 Exxonmobil Research & Engineering Company Interface between processing environment optimization layers
US10838440B2 (en) 2017-11-28 2020-11-17 Johnson Controls Technology Company Multistage HVAC system with discrete device selection prioritization
US10838441B2 (en) 2017-11-28 2020-11-17 Johnson Controls Technology Company Multistage HVAC system with modulating device demand control
CN108596415B (zh) 2017-12-15 2023-11-24 创新先进技术有限公司 一种模型整合方法及装置
US10976712B2 (en) * 2018-02-05 2021-04-13 Honeywell International Inc. Method and system to provide cost of lost opportunity to operators in real time using advance process control
CN108549228B (zh) * 2018-04-18 2021-02-02 南京工业大学 一种基于交叉评估的多变量dmc系统模型失配通道定位方法
US10741429B2 (en) * 2018-06-21 2020-08-11 Lam Research Corporation Model-based control of substrate processing systems
US10795330B2 (en) * 2018-07-30 2020-10-06 Mitsubishi Electric Research Laboratories, Inc. Symmetry alternating direction method of multipliers
US11159022B2 (en) 2018-08-28 2021-10-26 Johnson Controls Tyco IP Holdings LLP Building energy optimization system with a dynamically trained load prediction model
US11163271B2 (en) 2018-08-28 2021-11-02 Johnson Controls Technology Company Cloud based building energy optimization system with a dynamically trained load prediction model
US10783304B1 (en) * 2018-09-28 2020-09-22 Cadence Design Systems, Inc. System, method, and computer program product for displaying debugging during a formal verification
US11934159B2 (en) * 2018-10-30 2024-03-19 Aspentech Corporation Apparatus and methods for non-invasive closed loop step testing with controllable optimization relaxation
EP3667439A1 (de) * 2018-12-13 2020-06-17 ABB Schweiz AG Vorhersagen für ein verfahren in einer industrieanlage
JP7151547B2 (ja) * 2019-02-25 2022-10-12 オムロン株式会社 予測制御開発装置、予測制御開発方法、及び予測制御開発プログラム
EP3938969A1 (de) * 2019-03-15 2022-01-19 3M Innovative Properties Company Bestimmung von ursachenmodellen zur steuerung von umgebungen
WO2020210034A1 (en) * 2019-04-10 2020-10-15 Exxonmobil Research And Engineering Company Dynamic quality control in petrochemical, chemical, and pharmaceutical manufacturing processes
WO2020246973A1 (en) * 2019-06-05 2020-12-10 Google Llc Network optimization systems
US11782401B2 (en) 2019-08-02 2023-10-10 Aspentech Corporation Apparatus and methods to build deep learning controller using non-invasive closed loop exploration
US11480360B2 (en) 2019-08-06 2022-10-25 Johnson Controls Tyco IP Holdings LLP Building HVAC system with modular cascaded model
DE102019214034A1 (de) * 2019-09-13 2021-03-18 Putzmeister Engineering Gmbh Verfahren zum Betreiben einer Arbeitsmaschine und Arbeitsmaschine
US11644814B2 (en) 2019-11-20 2023-05-09 Abb Schweiz Ag Method and apparatus for coordinating the utilization of operational zones to achieve production goals
JP7111761B2 (ja) * 2020-03-11 2022-08-02 株式会社日立製作所 プラント運転最適化支援装置、プラント運転最適化制御装置並びに方法
JP7392566B2 (ja) * 2020-04-28 2023-12-06 横河電機株式会社 制御支援装置、制御支援方法、制御支援プログラム、および制御システム
CN112327666B (zh) * 2020-10-22 2023-02-07 智慧航海(青岛)科技有限公司 动力巡航系统控制模型的目标函数权重矩阵确定方法
US20220155117A1 (en) 2020-11-16 2022-05-19 Sensia Llc System and method for quantitative verification of flow measurements
CN113031451B (zh) * 2021-05-31 2021-08-03 浙江中控技术股份有限公司 一种适用于流程工业预测控制的稳态优化方法
CN113485109B (zh) * 2021-07-12 2022-07-12 山东大学 一种基于可变优先级的变流器动态级联控制方法及系统
US11868098B2 (en) * 2021-11-12 2024-01-09 Phaidra, Inc. Chiller and pump control using customizable artificial intelligence system
CN115455341B (zh) * 2022-10-31 2023-02-07 湖南大学 一种原材料下料排样的求解方法
CN115963795B (zh) * 2023-01-04 2023-07-07 浙江中智达科技有限公司 一种流程工业控制方法、装置、设备及存储介质

Family Cites Families (96)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3828171A (en) * 1972-08-14 1974-08-06 Phillips Petroleum Co Process apparatus control system for optimizing objective variable quality
US4054408A (en) 1976-08-30 1977-10-18 Shell Oil Company Method for optimizing the position of a furnace damper without flue gas analyzers
US4349869A (en) 1979-10-01 1982-09-14 Shell Oil Company Dynamic matrix control method
JPS6069702A (ja) 1983-09-26 1985-04-20 Toshiba Corp サンプル値プロセス制御装置
US4616308A (en) 1983-11-15 1986-10-07 Shell Oil Company Dynamic process control
US4912624A (en) * 1988-03-30 1990-03-27 Syracuse University Multi-parameter optimization circuit
JP2553675B2 (ja) 1988-11-18 1996-11-13 日本電気硝子株式会社 プロセスの制御方法
US5018215A (en) 1990-03-23 1991-05-21 Honeywell Inc. Knowledge and model based adaptive signal processor
ATE143509T1 (de) * 1990-06-21 1996-10-15 Honeywell Inc Auf variablem horizont basierende adaptive steuerung mit mitteln zur minimierung der betriebskosten
US5159562A (en) * 1990-07-31 1992-10-27 Westinghouse Electric Corp. Optimization of a plurality of multiple-fuel fired boilers using iterated linear programming
US5180896A (en) 1990-10-11 1993-01-19 University Of Florida System and method for in-line heating of medical fluid
US5159547A (en) 1990-10-16 1992-10-27 Rockwell International Corporation Self-monitoring tuner for feedback controller
US5216593A (en) * 1991-01-24 1993-06-01 International Business Machines Corporation Method and apparatus for discrete activity resourse allocation through cardinality constraint generation
WO1992014197A1 (en) * 1991-02-08 1992-08-20 Kabushiki Kaisha Toshiba Model forecasting controller
JPH04271669A (ja) * 1991-02-27 1992-09-28 Matsushita Electric Ind Co Ltd 階調補正装置
US5215100A (en) 1991-04-29 1993-06-01 Occupational Preventive Diagnostic, Inc. Nerve condition monitoring system and electrode supporting structure
US5335164A (en) 1991-07-31 1994-08-02 Universal Dynamics Limited Method and apparatus for adaptive control
DE69225605T2 (de) 1991-12-18 1998-11-26 Honeywell Inc Auf einem neuronalen netzwerk basierende automatische einstellvorrichtung für einen geschlossenen regelkreis
SE501000C2 (sv) * 1992-02-03 1994-10-17 Jana System Ab Utportioneringsanordning för flytande substanser
US5329443A (en) * 1992-06-16 1994-07-12 Praxair Technology, Inc. Two-phase method for real time process control
US5384698A (en) 1992-08-31 1995-01-24 Honeywell Inc. Structured multiple-input multiple-output rate-optimal controller
US5477444A (en) 1992-09-14 1995-12-19 Bhat; Naveen V. Control system using an adaptive neural network for target and path optimization for a multivariable, nonlinear process
US5351184A (en) 1993-01-26 1994-09-27 Honeywell Inc. Method of multivariable predictive control utilizing range control
CA2118885C (en) * 1993-04-29 2005-05-24 Conrad K. Teran Process control system
US5453925A (en) 1993-05-28 1995-09-26 Fisher Controls International, Inc. System and method for automatically tuning a process controller
US5424942A (en) * 1993-08-10 1995-06-13 Orbital Research Inc. Extended horizon adaptive block predictive controller with an efficient prediction system
US6041320A (en) 1993-08-23 2000-03-21 Fisher Controls International, Inc. Multi-region fuzzy logic control system with auxiliary variables
US5461559A (en) 1993-10-04 1995-10-24 The United States Of America As Represented By The Secretary Of The Air Force Hierarchical control system for molecular beam epitaxy
JP2001273278A (ja) 1993-12-14 2001-10-05 Masaharu Ishii 適性化装置および適性化方法
US5457625A (en) 1994-04-13 1995-10-10 The M. W. Kellogg Company Maximizing process production rates using permanent constraints
US5587899A (en) 1994-06-10 1996-12-24 Fisher-Rosemount Systems, Inc. Method and apparatus for determining the ultimate gain and ultimate period of a controlled process
EP0731397B1 (de) * 1994-09-26 2001-05-16 Kabushiki Kaisha Toshiba Methode und system zur optimierung der nützlichkeit einer anlage
US5696696A (en) * 1994-10-11 1997-12-09 Betzdearborn, Inc. Apparatus and method for automatically achieving and maintaining congruent control in an industrial boiler
US5519605A (en) * 1994-10-24 1996-05-21 Olin Corporation Model predictive control apparatus and method
US5568378A (en) 1994-10-24 1996-10-22 Fisher-Rosemount Systems, Inc. Variable horizon predictor for controlling dead time dominant processes, multivariable interactive processes, and processes with time variant dynamics
US5550732A (en) * 1994-12-19 1996-08-27 Motorola, Inc. Controller for nonlinear systems
US5659667A (en) 1995-01-17 1997-08-19 The Regents Of The University Of California Office Of Technology Transfer Adaptive model predictive process control using neural networks
US5748467A (en) 1995-02-21 1998-05-05 Fisher-Rosemont Systems, Inc. Method of adapting and applying control parameters in non-linear process controllers
US5572420A (en) * 1995-04-03 1996-11-05 Honeywell Inc. Method of optimal controller design for multivariable predictive control utilizing range control
US5574638A (en) * 1995-04-03 1996-11-12 Lu; Zhuxin J. Method of optimal scaling of variables in a multivariable predictive controller utilizing range control
US5682309A (en) 1995-04-28 1997-10-28 Exxon Chemical Patents Inc. Feedback method for controlling non-linear processes
US5561599A (en) 1995-06-14 1996-10-01 Honeywell Inc. Method of incorporating independent feedforward control in a multivariable predictive controller
US5758047A (en) * 1995-06-14 1998-05-26 Lu; Zhuxin Joseph Method of process controller optimization in a multivariable predictive controller
US6249712B1 (en) 1995-09-26 2001-06-19 William J. N-O. Boiquaye Adaptive control process and system
JPH09179603A (ja) * 1995-12-21 1997-07-11 Kawasaki Steel Corp 空気分離装置の製品ガス発生スケジュール決定方法
JP3412384B2 (ja) 1996-03-13 2003-06-03 株式会社日立製作所 制御モデル構築支援装置
US6047221A (en) * 1997-10-03 2000-04-04 Pavilion Technologies, Inc. Method for steady-state identification based upon identified dynamics
US7058617B1 (en) * 1996-05-06 2006-06-06 Pavilion Technologies, Inc. Method and apparatus for training a system model with gain constraints
US5933345A (en) 1996-05-06 1999-08-03 Pavilion Technologies, Inc. Method and apparatus for dynamic and steady state modeling over a desired path between two end points
US6381504B1 (en) * 1996-05-06 2002-04-30 Pavilion Technologies, Inc. Method for optimizing a plant with multiple inputs
US6438430B1 (en) * 1996-05-06 2002-08-20 Pavilion Technologies, Inc. Kiln thermal and combustion control
US6278899B1 (en) * 1996-05-06 2001-08-21 Pavilion Technologies, Inc. Method for on-line optimization of a plant
US5735134A (en) * 1996-05-30 1998-04-07 Massachusetts Institute Of Technology Set point optimization in vapor compression cycles
US5754446A (en) * 1996-08-19 1998-05-19 Voith Hydro, Inc. Method and apparatus for optimizing performance of a kaplan turbine
US5930762A (en) * 1996-09-24 1999-07-27 Rco Software Limited Computer aided risk management in multiple-parameter physical systems
US6336050B1 (en) * 1997-02-04 2002-01-01 British Telecommunications Public Limited Company Method and apparatus for iteratively optimizing functional outputs with respect to inputs
US6055483A (en) * 1997-05-05 2000-04-25 Honeywell, Inc. Systems and methods using bridge models to globally optimize a process facility
US6122555A (en) * 1997-05-05 2000-09-19 Honeywell International Inc. System and methods for globally optimizing a process facility
US5920478A (en) 1997-06-27 1999-07-06 Oakleaf Engineering, Inc. Multi-input multi-output generic non-interacting controller
US6055524A (en) * 1997-10-06 2000-04-25 General Cybernation Group, Inc. Model-free adaptive process control
DE19806267A1 (de) * 1997-11-10 1999-05-20 Siemens Ag Verfahren und Einrichtung zur Steuerung einer hüttentechnischen Anlage
FI974328A (fi) * 1997-11-25 1999-05-26 Valmet Automation Inc Menetelmä ja laitteisto paperin ominaisuuksien säätämiseksi
FI974327A (fi) * 1997-11-25 1999-05-26 Valmet Automation Inc Menetelmä ja laitteisto paperin ominaisuuksien säätämiseksi
JPH11259450A (ja) 1998-03-09 1999-09-24 Hitachi Ltd 最適な出力決定方法および装置
WO2004084371A1 (ja) * 1998-08-31 2004-09-30 Kaoru Fujita 発電プラントの最適化制御方法及び最適化制御装置
US6714899B2 (en) * 1998-09-28 2004-03-30 Aspen Technology, Inc. Robust steady-state target calculation for model predictive control
US6381505B1 (en) * 1998-09-28 2002-04-30 Aspen Technology, Inc. Robust steady-state target calculation for model predictive control
US7043409B1 (en) 1998-12-03 2006-05-09 Siemens Aktiengesellschaft Method and device for designing a technical system
US6542782B1 (en) * 1998-12-31 2003-04-01 Z. Joseph Lu Systems for generating and using a lookup table with process facility control systems and models of the same, and methods of operating such systems
US6298454B1 (en) * 1999-02-22 2001-10-02 Fisher-Rosemount Systems, Inc. Diagnostics in a process control system
DE19910910A1 (de) * 1999-03-11 2000-09-28 Voith Sulzer Papiertech Patent Verfahren zur Durchführung eines optimierten Faser- oder Papierherstellungsprozesses
CN1099060C (zh) 1999-04-14 2003-01-15 袁璞 通用多变量模型预估协调控制方法
US6330483B1 (en) 1999-05-07 2001-12-11 The Boeing Company Optimal control system
US6377908B1 (en) * 1999-05-14 2002-04-23 General Electric Company Method for optimizing transfer function outputs
US6445963B1 (en) * 1999-10-04 2002-09-03 Fisher Rosemount Systems, Inc. Integrated advanced control blocks in process control systems
US6654649B2 (en) 1999-12-22 2003-11-25 Aspen Technology, Inc. Computer method and apparatus for optimized controller in a non-linear process
US6587738B1 (en) * 1999-12-30 2003-07-01 Ge-Harris Railway Electronics, L.L.C. Optimal locomotive assignment for a railroad network
US6684122B1 (en) * 2000-01-03 2004-01-27 Advanced Micro Devices, Inc. Control mechanism for matching process parameters in a multi-chamber process tool
GB0005866D0 (en) * 2000-03-10 2000-05-03 Borealis Polymers Oy Process control system
JP2001255903A (ja) * 2000-03-14 2001-09-21 Toshiba Corp プロセス制御システム
US6721609B1 (en) * 2000-06-14 2004-04-13 Fisher-Rosemount Systems, Inc. Integrated optimal model predictive control in a process control system
CN1449511A (zh) 2000-06-30 2003-10-15 陶氏化学公司 多变量矩阵处理控制
US6701223B1 (en) * 2000-09-11 2004-03-02 Advantica, Inc. Method and apparatus for determining optimal control settings of a pipeline
AU2001288856A1 (en) * 2000-09-15 2002-03-26 Advanced Micro Devices Inc. Adaptive sampling method for improved control in semiconductor manufacturing
US6772019B2 (en) * 2000-11-16 2004-08-03 Lockheed Martin Corporation Method and system for multi-parameter choice optimization
US6954713B2 (en) 2001-03-01 2005-10-11 Fisher-Rosemount Systems, Inc. Cavitation detection in a process plant
US6701123B2 (en) * 2001-08-03 2004-03-02 Konica Corporation Cleaning device with improved damping member and image forming apparatus using the same
US20030125818A1 (en) * 2001-12-28 2003-07-03 Honeywell Inc. Global equation solver and optimizer
US6980938B2 (en) * 2002-01-10 2005-12-27 Cutler Technology Corporation Method for removal of PID dynamics from MPC models
US6678668B2 (en) * 2002-03-07 2004-01-13 Insyst Ltd. System and method for complex process optimization and control
US6678868B2 (en) * 2002-04-17 2004-01-13 Sun Microsystems, Inc. Using Boolean expressions to represent shapes within a layout of an integrated circuit
DE10341762B4 (de) * 2002-09-11 2014-05-15 Fisher-Rosemount Systems, Inc. Handhabung der Realisierbarkeit von Beschränkungen und Grenzen in einem Optimierer für Prozesssteuerungssysteme
US7050863B2 (en) 2002-09-11 2006-05-23 Fisher-Rosemount Systems, Inc. Integrated model predictive control and optimization within a process control system
US7376472B2 (en) 2002-09-11 2008-05-20 Fisher-Rosemount Systems, Inc. Integrated model predictive control and optimization within a process control system
DE10341764B4 (de) 2002-09-11 2019-01-10 Fisher-Rosemount Systems, Inc. Integrierte Modell-Vorhersagesteuerung und -Optimierung innerhalb eines Prozesssteuerungssystems
US6993396B1 (en) 2003-03-20 2006-01-31 John Peter Gerry System for determining the health of process control feedback loops according to performance assessment criteria

Also Published As

Publication number Publication date
CN1975611A (zh) 2007-06-06
US20040049295A1 (en) 2004-03-11
CN102566415A (zh) 2012-07-11
DE10341573B4 (de) 2016-09-01
US7337022B2 (en) 2008-02-26
CN100381956C (zh) 2008-04-16
CN1490690A (zh) 2004-04-21
US7376472B2 (en) 2008-05-20
JP4413563B2 (ja) 2010-02-10
US20040049299A1 (en) 2004-03-11
JP2004152265A (ja) 2004-05-27
GB0321278D0 (en) 2003-10-08
JP2009277239A (ja) 2009-11-26
US7330767B2 (en) 2008-02-12
DE10362408B3 (de) 2017-06-01
GB2394313B (en) 2006-07-19
US20040049300A1 (en) 2004-03-11
JP5016002B2 (ja) 2012-09-05
CN1975611B (zh) 2012-01-04
HK1063224A1 (en) 2004-12-17
GB2394313A (en) 2004-04-21

Similar Documents

Publication Publication Date Title
DE10362408B3 (de) Integrierte modellbasierte prädikative Steuerung und Optimierung innerhalb eines Prozesssteuerungssystems
DE10341764B4 (de) Integrierte Modell-Vorhersagesteuerung und -Optimierung innerhalb eines Prozesssteuerungssystems
DE102004026979B4 (de) Vielfacheingabe- /Vielfachausgabe-Steuer-/Regelblöcke mit nichtlinearen Vorhersagefähigkeiten
DE10341574A1 (de) Konfiguration und Betrachtungsanzeige für einen integrierten prädiktiven Modellsteuerungs- und Optimierungsfunktionsblock
DE10127788B4 (de) Integrierte Optimalmodell-Vorhersagesteuerung in einem Prozeßsteuerungssystem
DE10048360B4 (de) Integrierte, fortschrittliche Steuerblöcke in Prozeßsteuersystemen
DE102006045429B4 (de) Adaptive, Modellprädiktive Online-Steuerung in einem Prozesssteuerungssystem
DE10304902B4 (de) Anpassung von erweiterten Prozeßsteuerblöcken in Abhängigkeit von veränderlichen Prozeßverzögerungen
DE69823049T2 (de) Modellfreie adaptive prozesssteuerung
EP2108139B1 (de) Verfahren zur rechnergestützten regelung und/oder steuerung eines technischen systems, insbesondere einer gasturbine
DE102007017039B4 (de) Robuste Prozessmodellidentifikation bei modellbasierten Steuerungstechniken
DE10012258B4 (de) Selbst-Abstimmung in einer verteilten Prozeß-Regelumgebung
DE102004058238B4 (de) Adaptive, multivariable Prozesssteuerung, die Modellschaltung und Attribut-Interpolation nutzt
DE10049513B4 (de) Verfahren und System zum Ermitteln von Abstimmparametern für eine Prozesssteuereinrichtung aus einer Robustheitskarte
DE10341762B4 (de) Handhabung der Realisierbarkeit von Beschränkungen und Grenzen in einem Optimierer für Prozesssteuerungssysteme
EP2112568B1 (de) Verfahren zur rechnergestützten Steuerung und/oder Regelung eines technischen Systems
DE112009000224T5 (de) Robuster andaptiver modellprädiktiver Regler mit Abstimmung zum Ausgleich einer Modellfehlanpassung
DE102004019352A1 (de) Zustandsbasierter adaptiver Feedback-/Feedforward-PID-Regler (PID-Steuerungseinheit)
DE10012249A1 (de) Modifikationsfunktionsblöcke in einem Prozeßsteuerungssystem
DE102019204861A1 (de) Maschinenlernvorrichtung; steuervorrichtung und maschinelles lernverfahren
DE10392599T5 (de) Verfahren zur Steuerung eines Zielsystems
DE102015204258A1 (de) Verfahren zum Ermitteln einer Schaltfunktion für einen Sliding Mode Regler und Sliding Mode Regler
WO2011120552A1 (de) Engineering-werkzeug und verfahren zur parametrierung eines modellbasierten prädiktivreglers
EP1546823B1 (de) Verfahren zur rechnergestützten erstellung von prognosen für operative systeme sowie system zur erstellung von prognosen für operative systeme
EP4014148A1 (de) Verfahren zum optimieren eines baukastensystems für technische funktionseinheiten einer prozesstechnischen anlage

Legal Events

Date Code Title Description
8110 Request for examination paragraph 44
R016 Response to examination communication
R016 Response to examination communication
R130 Divisional application to

Ref document number: 10362408

Country of ref document: DE

R018 Grant decision by examination section/examining division
R020 Patent grant now final
R071 Expiry of right