DE10304902B4 - Anpassung von erweiterten Prozeßsteuerblöcken in Abhängigkeit von veränderlichen Prozeßverzögerungen - Google Patents

Anpassung von erweiterten Prozeßsteuerblöcken in Abhängigkeit von veränderlichen Prozeßverzögerungen Download PDF

Info

Publication number
DE10304902B4
DE10304902B4 DE10304902A DE10304902A DE10304902B4 DE 10304902 B4 DE10304902 B4 DE 10304902B4 DE 10304902 A DE10304902 A DE 10304902A DE 10304902 A DE10304902 A DE 10304902A DE 10304902 B4 DE10304902 B4 DE 10304902B4
Authority
DE
Germany
Prior art keywords
block
control
execution rate
parameter
mpc
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Lifetime
Application number
DE10304902A
Other languages
English (en)
Other versions
DE10304902A1 (de
Inventor
Terrence L. Blevins
Wilhelm K. Wojszins
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 DE10304902A1 publication Critical patent/DE10304902A1/de
Application granted granted Critical
Publication of DE10304902B4 publication Critical patent/DE10304902B4/de
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Images

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

Landscapes

  • Engineering & Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Evolutionary Computation (AREA)
  • Medical Informatics (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Automation & Control Theory (AREA)
  • Feedback Control In General (AREA)

Abstract

Prozeßsteuerungselement, das ausgebildet ist zum Gebrauch als ein Teil einer Prozeßsteuerungsroutine, die auf einem Prozessor zur Steuerung eines Prozesses implementiert ist, dadurch gekennzeichnet, daß das Prozeßsteuerungselement folgendes aufweist: ein computerlesbares Medium; und einen Steuerblock (38), der auf dem computerlesbaren Medium gespeichert und so ausgebildet ist, daß er auf dem Prozessor ausführbar ist, um die Steuerung des Prozesses zu implementieren, wobei der Steuerblock aufweist: eine erste Vielzahl von Eingängen, wobei jeder Eingang zum Empfang eines jeweils verschiedenen eines Sets von Prozeßparametern ausgebildet ist; eine zweite Vielzahl von Ausgängen, wobei jeder Ausgang so ausgebildet ist, daß er mit einem jeweils verschiedenen Prozeßeingang kommunikativ verbindbar ist, um das Set von Prozeßparametern zu steuern; eine Steuerlogik (54), die auf die erste Vielzahl von Eingängen anspricht und ein Steuersignal an jedem der zweiten Vielzahl von Ausgängen erzeugt; und einen Ausführungsratenblock (40), der so ausgebildet ist, daß er...

Description

  • Die Erfindung betrifft allgemein Prozeßsteuerungssysteme und speziell die Anwendung von Multifunktions- bzw. erweiterten Steuerblöcken wie etwa Modellvorhersagesteuerblöcken bei Vorhandensein einer stark veränderlichen Prozeßverzögerung.
  • Prozeßsteuerungssysteme wie etwa verteilte oder skalierbare Prozeßsteuerungssysteme, wie sie in chemischen, Erdöl- oder anderen Prozessen verwendet werden, umfassen typischerweise einen oder mehrere Prozeßsteuereinheiten, die kommunikativ miteinander, mit mindestens einem Hauptrechner oder Bediener-Arbeitsplatzrechner und mit einer oder mehreren Feldeinrichtungen über analoge, digitale oder kombinierte Analog-/Digital-Busse gekoppelt sind. Die Feldeinrichtungen, die beispielsweise Ventile, Ventilpositionierer, Schalter und Meßumformer (z. B. Temperatur-, Druck- und Durchflußmengensensoren) sein können, führen innerhalb des Prozesses Funktionen aus wie etwa das Öffnen oder Schließen von Ventilen und das Messen von Prozeßparametern. Die Prozeßsteuereinheit empfängt Signale, die von den Feldeinrichtungen durchgeführte Prozeßmessungen und/oder andere Informationen bezeichnen, die die Feldeinrichtungen betreffen, nutzt diese Information zur Implementierung einer Steuerroutine und erzeugt dann Steuersignale, die über die Busse an die Feldeinrichtungen gesendet werden, um den Ablauf des Prozesses zu steuern. Informationen von den Feldeinrichtungen und der Steuereinheit werden typischerweise für eine oder mehrere Anwendungen verfügbar gemacht, die von dem Bediener-Arbeitsplatzrechner ausgeführt werden, um einem Bediener die Durchführung jeder gewünschten Funktion in bezug auf den Prozeß zu gestatten, etwa das Betrachten des aktuellen Prozeßzustands, eine Modifikation des Ablaufs des Prozesses usw.
  • Manche Prozeßsteuersysteme wie etwa das DeltaV®-System von Fisher Rosemount Systems, Inc., Austin, Texas, verwenden Funktionsblöcke oder Gruppen von Funktionsblöcken, die als Module bezeichnet werden und in der Steuereinheit oder in verschiedenen Feldeinrichtungen angeordnet sind, um Steuervorgänge auszuführen. In diesen Fällen ist die Steuereinheit oder eine andere Einrichtung imstande, einen oder mehrere Funktionsblöcke oder Module zu enthalten und auszuführen, von denen jeder Eingänge von anderen Funktionsblöcken (entweder innerhalb derselben Einrichtung oder in verschiedenen Einrichtungen) empfängt und/oder Ausgänge an andere Funktionsblöcke (entweder innerhalb derselben Einrichtung oder in verschiedenen Einrichtungen) abgibt, und führt einen Prozeßvorgang wie etwa das Messen oder Detektieren eines Prozeßparameters, die Steuerung einer Einrichtung oder die Ausführung eines Steuerungsvorgangs wie etwa die Implementierung einer PID-Steuerroutine aus. Die verschiedenen Funktionsblöcke und Module innerhalb eines Prozeßsteuersystems sind im allgemeinen so ausgelegt, daß sie miteinander kommunizieren (z. B. über einen Bus), um eine oder mehrere Prozeßsteuerschleifen zu bilden.
  • Prozeßsteuereinheiten sind typischerweise so programmiert, daß sie für jede einer Reihe von verschiedenen Schleifen, die für einen Prozeß definiert oder darin enthalten sind, wie etwa Durchflußsteuerschleifen, Temperatursteuerschleifen, Drucksteuerschleifen usw., einen unterschiedlichen Algorithmus, eine unterschiedliche Subroutine oder Steuerschleife (die sämtlich Steuerroutinen sind) ausführen. Allgemein gesagt, enthält jede solche Steuerschleife einen oder mehrere Eingangsblöcke wie etwa einen Analogeingang(AI)-Funktionsblock, einen Einzelausgang-Steuerblock wie etwa einen PID- oder einen Fuzzylogik-Steuerfunktionsblock und einen Ausgangsblock wie etwa einen Analogausgangs(AO)-Funktionsblock. Diese Steuerschleifen führen typischerweise eine Einzeleingang-/Einzelausgang-Steuerung durch, weil der Steuerblock einen einzelnen Ausgang erzeugt, der dazu dient, einen einzelnen Prozeßeingang wie etwa eine Ventilposition usw. zu steuern.
  • In bestimmten Fällen ist jedoch die Anwendung einer Reihe von selbständig arbeitenden Einzeleingang-/Einzelausgang-Steuerschleifen nicht sehr effektiv, weil die zu steuernden Prozeßvariablen von mehr als einem einzelnen Prozeßeingang beeinflußt werden und eigentlich jeder Prozeßeingang den Zustand von vielen Prozeßeingängen beeinflussen kann. Ein Beispiel hierfür könnte beispielsweise in einem Prozeß stattfinden, der einen Behälter hat, der von zwei Eingangsleitungen gefüllt und von einer einzigen Ausgangsleitung geleert wird, wobei jede Leitung von einem anderen Ventil gesteuert wird und wobei Temperatur, Druck und Durchsatz des Behälters so gesteuert werden, daß sie Sollwerte haben oder nahe diesen liegen. Wie oben angedeutet, kann die Steuerung des Durchsatzes, der Temperatur und des Drucks des Behälters unter Verwendung einer separaten Durchsatzsteuerschleife, einer separaten Temperatursteuerschleife und einer separaten Drucksteuerschleife erfolgen. In diesem Fall kann jedoch der Betrieb der Temperatursteuerschleife bei einer Änderung der Einstellung eines der Eingangsventile zur Steuerung der Temperatur innerhalb des Behälters einen Druckanstieg in dem Behälter bewirken, was beispielsweise dazu führt, daß die Druckschleife das Auslaßventil öffnet, um den Druck zu verringern. Diese Handlung kann dann die Durchsatzsteuerschleife veranlassen, eines der Eingangsventile zu schließen, wodurch die Temperatur beeinflußt und die Temperatursteuerschleife veranlaßt wird, eine andere Aktion vorzunehmen. Wie dieses Beispiel zeigt, veranlassen die Einzeleingang-/Einzelausgang-Steuerschleifen die Prozeßausgänge (in diesem Fall Durchsatz, Temperatur und Druck) dazu, zu oszillieren, ohne jemals einen stabilen Zustand zu erreichen, was unerwünscht ist.
  • In der Vergangenheit wurden die Modellvorhersagesteuerung (MPC) oder andere Arten von erweiterter Steuerung verwendet, um in diesen Situationen die Steuerung durchzuführen. Allgemein gesagt, ist die Modellvorhersagesteuerung eine Vielfacheingang-/Vielfachausgang-Steuerstrategie, bei der die Wirkungen der Änderung jedes einer Reihe von Prozeßeingängen auf jeden einer Reihe von Prozeßausgängen gemessen werden und diese gemessenen Reaktionen dann zur Erstellung eines Modells des Prozesses genutzt werden. Das Prozeßmodell wird mathematisch invertiert und dann als eine Vielfacheingang-/Vielfachausgang-Steuereinheit zur Steuerung der Prozeßausgänge auf der Basis von Änderungen verwendet, die an den Prozeßeingängen vorgenommen werden. In einigen Fällen umfaßt das Prozeßmodell eine Prozeßausgang-Antwortkurve für jeden der Prozeßeingänge, und diese Kurven können auf der Basis einer Serie von beispielsweise pseudowillkürlichen Schrittänderungen geschaffen werden, die jedem der Prozeßeingänge zugeführt werden. Diese Antwortkurven können genutzt werden, um den Prozeß auf bekannte Weise zu modellieren. Die Modellvorhersagesteuerung ist im Stand der Technik bekannt, und daher werden ihre Einzelheiten hier nicht beschrieben. Die Modellvorhersagesteuerung wird jedoch allgemein von S. Joe Qin und Thomas A. Badgwell in ”An Overview of Industrial Model Predictive Control Technology”, AIChE Conference, 1996, beschrieben. Aus der DE 42 38 037 A1 ist ein entsprechendes Prozeßsteuerungselement bekannt, das eine Prozeßsteuerung implementiert, wobei ein entsprechender Steuerblock eine erste Vielzahl von Eingängen zum Empfangen eines Satzes von Prozeßparametern und eine zweite Vielzahl von Ausgängen zum Ausgeben von Ausgabeparametern umfasst, um den Prozeß zu steuern.
  • Derzeit verwenden einige Prozeßsteuersysteme die Modellvorhersagesteuerung bzw. MPC, um eine Steuerung für multivariable Prozesse zu erhalten, und in mindestens einem Fall unterstützt das Prozeßsteuersystem die automatische Prüfung des Prozesses, um das Prozeßmodell festzustellen, das zur Entwicklung der speziellen MP-Steuerroutine verwendet wird, hier als MPC-Modul bezeichnet. Diese Vorgehensweise ist in der Offenlegungsschrift DE 100 48 360 A1 beschrieben. In diesem Fall werden Werkzeuge, die gewöhnlich verfügbar sind, dazu verwendet, ein dynamisches Prozeßmodell für den Prozeß automatisch zu identifizieren, wobei historische Daten der Prozeßausgänge und -eingänge genutzt werden. Das Steuersystem erzeugt dann automatisch ein Steuermodell, das von dem Modellvorhersagesteuermodul auf der Basis des festgestellten Prozeßmodells zu verwenden ist. Insbesondere kann, nachdem das Prozeßmodell festgestellt ist, das Steuermodell oder die Steuerlogik für ein MPC-Modul generiert werden unter Anwendung einer Reihe von Schritt- oder Impulsantwortmodellen, die die dynamischen Beziehungen zwischen Prozeßeingängen und Prozeßausgängen auf der Basis des festgestellten Prozeßmodells gewinnen. Jedes Schritt- oder Impulsantwortmodell repräsentiert eine bestimmte Prozeßausgangsantwort über die Zeit auf einen Schritt oder Impuls, wobei sämtliche anderen Eingänge konstant bleiben. Typischerweise ist jedes der Antwortmodelle als eine Serie von Koeffizienten zu diskreten Zeitpunkten über die Zeit dargestellt, die erforderlich ist, bis der Prozeß vollständig anspricht, und die gewöhnlich als die Zeitdauer bis zum stabilen Zustand, Tss, bezeichnet wird. Die Zahl der Koeffizienten wird normalerweise so gewählt, daß sie für alle Schritt- oder Impulsantwortkurven, die die Eingangs-/Ausgangs-Wechselwirkungen eines bestimmten Prozesses beschreiben, der gleiche Wert ist. Beispielsweise kann jede Einzelschritt- oder Einzelimpulsantwortkurve 120 Koeffizienten aufweisen, die die Antwort zu gleichbeabstandeten Zeitpunkten über die Zeitdauer bis zum stabilen Zustand repräsentieren.
  • Da die Erzeugung der Definition oder Logik der Modellvorhersagesteuerung auf den Schritt- oder Impulsantwortkurven basiert, wird das Steuermodell oder die Steuerdefinition, die aus den Antwortkurven erzeugt wird, herkömmlich mit der gleichen Abtastrate ausgeführt, die durch den zeitlichen Abstand der Koeffizienten in den Antwortkurven oder dem Prozeßmodell repräsentiert ist. Wenn beispielsweise das Prozeßmodell aus 120 Koeffizienten gebildet ist und die Zeitdauer bis zum stabilen Zustand 120 Minuten beträgt, dann würde die Steuerdefinition oder Steuerlogik, die aus diesem Modell erzeugt wird, einmal pro Minute, d. h. in der Zeit, die durch den Abstand zwischen den Einzelkoeffizienten der Antwortkurven repräsentiert ist, ausgeführt.
  • Bei vielen Implementierungen der MPC wird davon ausgegangen, daß der Prozeß als linear und zeitlich unveränderlich charakterisiert werden kann. Wenn diese Annahmen richtig sind, läuft die Modellvorhersagesteuerroutine, die von einem im normalen Anlagenbetrieb identifizierten Prozeßmodell generiert wurde, gut ab. Wenn sich jedoch die Prozeßdynamik gegenüber derjenigen ändert, die durch das Prozeßmodell erkannt wird, können diese Änderungen die Steuerung verschlechtern, weil die Steuerung auf dem Prozeßmodell vor der Änderung basiert. Beispielsweise kann in einigen Fällen die Prozeßaufgaberate die Prozeßverzögerungszeit ändern, die erforderlich ist, bis ein Prozeßausgang eine Änderung eines Prozeßeingangs reflektiert. Solche Änderungen in der Prozeßantwort können häufig auf die Wirkung der Prozeßaufgaberate auf die Transportverzögerung durch den Prozeß zurückgeführt werden. Ein Beispiel hierfür ist die Zeitdauer, die erforderlich ist, bis sich Pulpe in einem Bleichverfahren durch einen Turm bewegt, was strikt eine Funktion der Aufgaberate unter der Annahme von Massenfluß durch den Turm ist. In diesem Fall ist die Zeitdauer, die erforderlich ist, bis der Helligkeitssensor an der Abstromseite des Turms Änderungen als Ergebnis von chemischen Zusätzen vor dem Turm anzeigt, mit der Pulpedurchflußrate veränderlich.
  • In Fällen, in denen sich das Prozeßmodell infolge einer veränderlichen Prozeßverzögerung oder von anderen Bedingungen signifikant ändert, verwenden MPC-Anwendungen heute Vielfachprozeßmodelle und somit Vielfachsteuermodelle oder -definitionen, und zwar eines für jeden der erwarteten Bereiche des Prozeßablaufs. Dabei schaltet die MPC-Steuerroutine zwischen verschiedenen Prozeßmodellen und somit verschiedenen Steuermodellen auf der Basis der Prozeßbetriebsbedingungen um. Diese Vorgehensweise ist zwar effektiv, erfordert aber die Entwicklung einer Vielzahl von Steuerroutinen und deren Speicherung in der Steuereinheit, was nicht in allen Fällen notwendig ist, wie noch aufgezeigt wird.
  • Diese Probleme bestehen für Modellvorhersagesteuereinheiten, aber die gleichen oder ähnliche Probleme bestehen bei der Entwicklung und Anwendung von anderen erweiterten Vielfacheingang-/Vielfachausgang-Steuerblöcken oder -systemen wie etwa Neuronennetzmodellierungs- oder -steuersystemen, multivariablen Fuzzylogiksteuereinheiten, Echtzeitoptimierern usw.
  • Eine erfindungsgemäße erweiterte Steueranwendung verwendet einen Kompensationsblock oder -algorithmus und ein einziges Steuermodell auf der Basis eines einzigen Prozeßmodells, um eine erweiterte Steuerung wie etwa MPC-Steuerung in einem Prozeß zu ermöglichen, der eine stark variable Prozeßverzögerung hat. Der Kompensationsblock ändert die Ausführungsperiode des erweiterten Steuermoduls, um Änderungen in der einen oder den mehreren Prozeßvariablen, die für die veränderliche Prozeßverzögerung verantwortlich sind, zu berücksichtigen. Dieses erweiterte Steuersystem eliminiert die Notwendigkeit der Bereitstellung von verschiedenen erweiterten Steuermodellen oder Steuerdefinitionen für unterschiedliche Betriebsbereiche eines Prozesses in Fällen, in denen die Verzögerung in einem Prozeßausgang eine meßbare Prozeß- oder Steuerungsvariable wie etwa eine Prozeßbeschickungsrate oder einen Prozeß- durchsatz reflektiert.
  • Bei einer Ausführungsform implementiert ein erweitertes Steuerelement eine Vielfacheingang-/Vielfachausgang-Steuerung wie etwa eine Modellvorhersagesteuerung, eine Neuronennetzsteuerung usw. innerhalb eines Prozeßsteuersystems. Das erweiterte Steuerelement, das auf einem computerlesbaren Medium speicherbar und auf einem Prozessor beispielsweise innerhalb einer Steuereinheit ausführbar ist, kann einen Steuerblock aufweisen, der folgendes hat: eine erste Vielzahl von Eingängen, wobei jeder Eingang so ausgebildet ist, daß er einen jeweils anderen einer Gruppe von Prozeßparametern empfängt, eine zweite Vielzahl von Ausgängen, wobei jeder Ausgang so ausgebildet ist, daß er mit einem anderen Prozeßeingang kommunikativ gekoppelt ist zur Steuerung der Gruppe von Prozeßparametern, und eine Steuerlogik, die auf die erste Vielzahl von Eingängen anspricht und ein Steuersignal an jedem der zweiten Vielzahl von Ausgängen erzeugt. Das erweiterte Steuerelement kann ferner einen Ausführungsratenblock aufweisen, der so ausgebildet ist, daß er Werte eines Parameters empfängt, der bevorzugt eine Prozeßverzögerung bewirkt, und der eine Ausführungsrate für die Steuerlogik auf der Basis des Parameters errechnet. Der Ausführungsratenblock kann aufweisen: ein Filter, das so ausgebildet ist, daß es den Parameter filtert, einen Rechenblock, der die Ausführungsrate für die Steuerlogik als eine lineare oder eine nichtlineare Funktion des Parameters bestimmt, und einen Begrenzer, der so ausgebildet ist, daß er die von dem Rechenblock bestimmte Ausführungsrate begrenzt.
  • Die Erfindung wird nachstehend auch hinsichtlich weiterer Merkmale und Vorteile anhand der Beschreibung von Ausführungsbeispielen unter Bezugnahme auf die beiliegenden Zeichnungen näher erläutert. Diese zeigen in:
  • 1 ein Blockbild/Schema eines Prozeßsteuersystems mit einem erweiterten Steuerblock, der zur Kompensation einer veränderlichen Prozeßverzögerung ausgebildet ist;
  • 2A und 2B Diagramme, die verschiedene Prozeßverzögerungen für einen Prozeß bei unterschiedlichen Durchsätzen zeigen;
  • 3 ein Blockbild, das ein erweitertes Steuermodul zeigt, das eine Matrix von Impulsantworten, die einem Prozeßmodell zugeordnet sind, und einen Ausführungsratenkompensationsblock hat, der die Ausführungsrate des erweiterten Steuerblocks auf der Basis eines Werts einer Prozeßvariablen ändert;
  • 4 ein Diagramm, das die Operation eines MPC-Blocks bei Vorhandensein einer stark veränderlichen Prozeßverzögerung sowohl mit als auch ohne Ausführungsratenkompensation zeigt;
  • 5 ein Ablaufdiagramm, das die Operation und Erzeugung eines erweiterten Steuerblocks zeigt, der eine veränderliche Prozeßverzögerung innerhalb des Prozeßsteuersystems von 1 kompensiert; und
  • 6 ein Blockbild eines MPC-Blocks mit Ausführungsratenkompensation, der in einen Prozeß eingeschaltet ist.
  • Gemäß 1 weist ein Prozeßsteuersystem 10 eine Prozeßsteuereinheit 11 auf, die mit einem Stammdatenspeicher 12 sowie mit einem oder mehreren Hauptarbeitsplatzrechnern 13 (die jede Art von PC, Arbeitsplatzrechner usw. sein können), die jeweils einen Anzeigebildschirm 14 haben, verbunden ist. Die Steuereinheit 11 ist ferner mit Feldeinrichtungen 15 bis 22 über Eingabe-/Ausgabe- bzw. E/A-Karten 26 und 28 verbunden. Der Stammdatenspeicher 12 kann jede gewünschte Art von Datensammeleinheit mit jeder gewünschten Art von Speicher und jeder gewünschten oder bekannten Software, Hardware oder Firmware zur Datenspeicherung sein. Der Stammdatenspeicher 12 kann von den Arbeitsplatzrechnern 13 getrennt (wie in 1 gezeigt) oder ein Teil eines derselben sein. Die Steuereinheit 11, die beispielsweise die DeltaV-Steuereinheit von Fisher-Rosemount Systems, Inc., sein kann, ist mit den Hauptrechnern 13 und dem Stammdatenspeicher 12 beispielsweise über eine Ethernetverbindung oder jedes andere gewünschte Nachrichtenübertragungsnetz kommunikativ verbunden. Die Steuereinheit 11 ist ferner kommunikativ mit den Feldeinrichtungen 15 bis 22 verbunden unter Verwendung jeder gewünschten Hardware und Software, die beispielsweise 4-20-mA-Standardeinrichtungen und/oder einem intelligenten Kommunikationsprotokoll wie etwa dem FOUNDATION Fieldbus-Protokoll, dem HART-Protokoll usw. zugeordnet ist.
  • Die Feldeinrichtungen 15 bis 22 können jede Art von Einrichtungen wie etwa Sensoren, Ventile, Meßwertumformer, Positionierer usw. sein, während die E/A-Karten 26 und 28 jede Art von E/A-Einrichtung sein können, die mit jedem gewünschten Kommunikations- oder Controller-Protokoll konform sind. Bei der in 1 gezeigten Ausführungsform sind die Feldeinrichtungen 15 bis 18 4-20-mA-Standardeinrichtungen, die über Analogleitungen mit der E/A-Karte 26 kommunizieren, wogegen die Feldeinrichtungen 19 bis 22 intelligente Einrichtungen wie etwa Fieldbus-Feldeinrichtungen sind, die über einen Digitalbus mit der E/A-Karte 28 unter Anwendung von Fieldbus-Protokollkommunikation in Verbindung stehen. Selbstverständlich könnten die Feldeinrichtungen 15 bis 22 mit jedem anderen gewünschten Standard oder Protokoll konform sein, was alle in Zukunft noch entwickelten Standards oder Protokolle einschließt.
  • Die Steuereinheit 11 weist einen Prozessor 20 auf, der eine oder mehrere Prozeßsteuerroutinen (die in einem Speicher 22 gespeichert sind) implementiert oder beaufsichtigt, die Steuerschleifen aufweisen können, die darin gespeichert oder ihnen anderweitig zugeordnet sind, und kommuniziert mit den Einrichtungen 15 bis 22, den Hauptrechnern 13 und dem Stammdatenspeicher 12, um einen Prozeß auf eine gewünschte Weise zu steuern. Es ist zu beachten, daß alle hier beschriebenen Steuerroutinen oder -elemente Teile haben können, die, falls gewünscht, von anderen Steuereinheiten oder anderen Einrichtungen implementiert oder ausgeführt werden können. Ebenso können die hier beschriebenen und innerhalb des Prozeßsteuersystems 10 zu implementierenden Steuerroutinen oder -elemente jede Form einschließlich Software, Firmware, Hardware usw. haben. Für die Zwecke der vorliegenden Offenbarung kann ein Prozeßsteuerelement jeder Teil oder Bereich eines Prozeßsteuersystems sein, was beispielsweise eine Routine, einen Block oder ein Modul umfaßt, der auf irgendeinem computerlesbaren Medium gespeichert ist. Steuerroutinen, die Module oder irgendein Teil eines Steuerablaufs wie etwa eine Subroutine, Teile einer Subroutine (wie etwa Codezeilen) usw. sein können, können in jedem gewünschten Softwareformat implementiert werden, beispielsweise unter Anwendung einer objektorientierten Programmierung, unter Anwendung von Kettenlogik, Sequenzfunktionsdiagrammen, Funktionsblockdiagrammen, oder unter Anwendung jeder anderen Softwareprogrammiersprache oder jedes anderen Designparadigmas. Ebenso können die Steuerroutinen beispielsweise in einem oder mehreren EPROM, EEPROM, anwendungsspezifischen integrierten Schaltkreisen (ASIC) oder irgendwelchen anderen Hardware- oder Firmware-Elementen festcodiert sein. Ferner können die Steuerroutinen unter Anwendung aller Entwicklungswerkzeuge einschließlich graphischer Entwicklungswerkzeuge oder jeder anderen Art von Software-/Hardware-/Firmware-Programmierungs- oder -Entwicklungswerkzeugen ausgebildet sein. Somit kann die Steuereinheit 11 so konfiguriert sein, daß sie eine Steuerstrategie oder Steuerroutine auf jede gewünschte Weise implementiert.
  • Bei einer Ausführungsform implementiert die Steuereinheit 11 eine Steuerstrategie unter Anwendung von Funktionsblöcken, wie sie allgemein genannt werden, wobei jeder Funktionsblock ein Teil (z. B. eine Subroutine) einer Gesamtsteuerroutine ist und in Verbindung mit anderen Funktionsblöcken (über als Verknüpfung bezeichnete Nachrichtenverbindungen) wirkt, um Prozeßsteuerschleifen innerhalb des Prozeßsteuersystems 10 zu implementieren. Funktionsblöcke führen typischerweise eine von einer Eingabefunktion, wie sie etwa einem Meßwertumformer, einem Sensor oder einer anderen Prozeßparametermeßeinrichtung zugeordnet ist, einer Steuerfunktion, wie sie etwa einer Steuerroutine zugeordnet ist, die PID-, Fuzzylogik-Steuerung usw. ausführt, oder einer Ausgabefunktion aus, die die Operation einer Einrichtung wie etwa eines Ventils steuert, um eine physische Funktion innerhalb des Prozeßsteuersystems 10 auszuführen. Selbstverständlich gibt es Hybrid- und andere Arten von Funktionsblöcken. Funktionsblöcke können in der Steuereinheit 11 gespeichert und von ihr ausgeführt werden, was typischerweise der Fall ist, wenn diese Funktionsblöcke für 4-20-mA-Standardeinrichtungen und einige Arten von intelligenten Feldeinrichtungen wie etwa HART-Einrichtungen benutzt werden oder ihnen zugeordnet sind, oder sie können in den Feldeinrichtungen selber gespeichert und von diesen implementiert werden, was bei Fieldbus-Einrichtungen der Fall sein kann. Die vorliegende Beschreibung des Steuersystems verwendet eine Funktionsblock-Steuerstrategie, aber die Steuerstrategie (Steuerschleifen oder Module) könnte ebenso unter Anwendung anderer Konventionen implementiert oder ausgelegt sein, etwa unter Verwendung von Kettenlogik, Sequenzfunktionsdiagrammen usw., oder unter Verwendung jeder anderen gewünschten Programmiersprache oder jedes anderen gewünschten Denkmodells.
  • Wie der auseinandergezogene Block 30 in 1 zeigt, kann die Steuereinheit 11 eine Reihe von Einzelschleifen-Steuerroutinen aufweisen, die als Routinen 32 und 34 gezeigt sind, und kann, falls gewünscht, einen oder mehrere erweiterte Steuerschleifen, die als Steuerschleife 36 gezeigt sind, implementieren. Jede solche Schleife wird typischerweise als ein Steuermodul bezeichnet. Die Einzelschleifen-Steuerroutinen 32 und 34 sind so gezeigt, daß sie eine Einzelschleifensteuerung durchführen unter Verwendung eines Einzeleingang-/Einzelausgang-Fuzzylogik-Steuerblocks bzw. eines Einzeleingang-/Einzelausgang-PID-Steuerblocks, die mit geeigneten analogen Eingangs(AI)- und analogen Ausgangs(AO)-Funktionsblöcken verbunden sind, die Prozeßsteuereinrichtungen wie etwa Ventilen, Meßeinrichtungen wie etwa Temperatur- und Druckmeßwertumformern oder jeder anderen Einrichtung innerhalb des Prozeßsteuersystems 10 zugeordnet sein können. Die gezeigte erweiterte Steuerschleife 36 umfaßt einen erweiterten Steuerblock 38 mit Eingängen, die kommunikativ mit zahlreichen AI-Funktionsblöcken verbunden sind, und Ausgängen, die mit zahlreichen AO-Funktionsblöcken kommunikativ verbunden sind, obwohl die Eingänge und Ausgänge des erweiterten Steuerblocks 38 auch mit irgendwelchen anderen gewünschten Funktionsblöcken oder Steuerelementen verbunden sein können, um andere Arten von Eingängen zu empfangen und andere Arten von Steuerausgängen abzugeben. Der erweiterte Steuerblock 38 kann jede Art von Vielfacheingang-/Vielfachausgang-Steuerblock sein, der zur Steuerung von zwei oder mehr Prozeßausgängen durch Abgabe von Steuersignalen an einen oder mehrere Prozeßeingänge verwendet wird. Der erweiterte Steuerblock 38 wird hier zwar als ein Modellvorhersagesteuerblock bzw. MPC-Block beschrieben, aber der erweiterte Steuerblock 38 könnte jeder andere Vielfacheingang-/Vielfachausgang-Block wie etwa ein Neuralnetzmodellierungs- oder -steuerblock, ein vielfachvariabler Fuzzylogik-Steuerblock, ein Echtzeit-Optimierungsblock usw. sein. Es versteht sich, daß die in 1 gezeigten Funktionsblöcke einschließlich des erweiterten Steuerblocks 38 von der Steuereinheit 11 ausführbar sind oder alternativ in einer anderen Verarbeitungseinrichtung liegen können und von dieser ausgeführt werden, etwa von einem der Arbeitsplatzrechner 13 oder auch einer der Feldeinrichtungen 19 bis 22.
  • Selbstverständlich ist die Verwendung eines MPC- oder anderen erweiterten Steuerblocks innerhalb einer Steuereinheit bekannt, und im allgemeinen besteht die Hauptaufgabe vieler herkömmlicher MPC-Installationen in der Prozeßindustrie darin, den Durchsatz einer großen Einheit wie etwa einer Destillierkolonne zu maximieren. Unter Nutzung der Fähigkeit eines MPC-Systems, einen Prozeß an seiner Betriebsgrenze zu halten, ist es häufig möglich, einen Durchsatzsteigerung von 1 bis 3% in einer solchen Anlage zu erzielen. Bei diesen Betriebsbedingungen kann jedoch erwartet werden, daß sich der Durchsatz des Prozesses innerhalb eines sehr kleinen Bereichs ändert, und infolgedessen ist die Auswirkung des Durchsatzes auf die Prozeßreaktion häufig vernachlässigbar. Aus diesem Grund ergibt das Steuermodell oder die Steuerdefinition, die unter Anwendung eines bei Normaldurchsatz identifizierten Prozeßmodells generiert wird, dann eine gute Steuerung, wenn die Beschickungsrate und damit die Prozeßverzögerung sich über einen sehr kleinen Bereich ändern.
  • Bei vielen nicht-herkömmlichen Anlagen wie etwa bei der Helligkeitssteuerung in der Zellstoff- und Papierindustrie, der MC-Steuerung von Papiermaschinen, der Steuerung des H/N-Verhältnisses in der Ammoniakindustrie und anderen verursachen jedoch große Änderungen irgendeiner Prozeßvariablen wie etwa des Durchsatzes große Änderungen der Prozeßtotzeit oder der Prozeßverzögerung. Insoweit diese Prozeßarten bisher MPC implementiert haben, mußten sie das unter Anwendung von Steuerschaltvorgängen tun, wobei im wesentlichen verschiedene Prozeßmodelle verwendet werden, die für verschiedene Betriebsbereiche des Prozesses definiert sind. Dabei sind die Betriebsbereiche hauptsächlich durch den Prozeßdurchsatz definiert. Unter Anwendung dieser Technik wird ein Prozeßmodell bei jeder einer Reihe von Betriebsbedingungen identifiziert, und ein jeweils anderes MPC-Steuermodell wird für jedes dieser verschiedenen Prozeßmodelle erzeugt. Während sich die Prozeßbedingungen ändern, beispielsweise mit einer Änderung des Durchsatzes, schaltet die MPC-Steuereinheit Steuerdefinitionen oder -modelle um zur Anpassung an den aktuellen Prozeßzustand. Bei Anwendung dieser Technik werden somit zahlreiche verschiedene MPC-Steuermodelle definiert und gespeichert, die für zahlreiche verschiedene Prozeßbeschickungsraten oder Durchsatze gedacht sind. Diese Art der Steuerungsumschaltung ist eine sehr allgemeine Vorgehensweise, die die Behandlung jeder Nichtlineartität, die eine Funktion einer gemessenen Prozeßvariablen ist, erlaubt. Zur Anwendung dieser Technik müssen jedoch eine Vielzahl von Prozeßmodellen identifiziert werden, um die Erzeugung der Steuermodelle bei verschiedenen Betriebsbedingungen zu ermöglichen. Die Einführung von Vielfachprozeßmodellen und -steuerdefinitionen erhöht die Komplexität bei der Erstellung und Aufrechterhaltung eines MPC-Steuersystems.
  • Es wurde jedoch entdeckt, daß es dann, wenn die Prozeßverzögerung sich primär als eine Funktion eines bestimmten Sets von Prozeß-(oder Steuer-)Parametern wie etwa des Durchsatzes ändert, möglich ist, die Komplexität der Steuerumschaltung in erweiterten Steuerblöcken zu vermeiden. In diesem Fall ist sogar festgestellt worden, daß das gleiche Prozeßmodell verwendet werden kann, um die MPC-Steuerung (oder eine andere erweiterte Steuerung) bei allen oder den meisten Prozeßbetriebsbedingungen auch dann vorzusehen, wenn sich die Prozeßverzögerung stark ändert. Insbesondere ist es möglich, ein einziges Prozeßmodell zu verwenden, um eine erweiterte bzw. fortgeschrittene Steuerroutine oder ein solches Steuermodell zu definieren und durch Ändern der Ausführungsrate der Steuerroutine als Funktion des oder der Prozeß- oder Steuerparameter, die die Prozeßverzögerung bewirken, eine effektive MPC oder andere erweiterte Steuerung über den Gesamtbereich des Prozeßbetriebs auszuführen. Eine Art der Implementierung dieser Kompensation der Ausführungsrate in dem System von 1 besteht im Vorsehen eines separaten Ausführungsraten-Modifikationsblocks 40, der ein Signal liefert, das die Ausführungsrate des MPC-Blocks 38 steuert. Wie 1 zeigt, empfängt der Ausführungsraten-Modifikationsblock 40 ein Signal, das den Wert eines Prozeß- oder Steuerparameters (im vorliegenden Fall eines Prozeßparameters) bezeichnet, der die Prozeßverzögerung signifikant beeinflußt. In diesem Fall kann der AI-Block, der ein Signal an den Ausführungsraten-Modifikationsblock 40 abgibt, ein Signal abgeben, das den Prozeßdurchsatz oder die Beschickungsrate bezeichnet. In jedem Fall bestimmt der Ausführungsraten-Modifikationsblock 40 auf der Basis des Werts des Prozeßparameters ein Ausführungsratensignal und liefert dieses Signal an den MPC-Block 38. Der MPC-Block 38 führt dann mit der durch das Ausführungsratensignal bezeichneten Rate aus, um die Prozeßsteuerung durchzuführen.
  • Als ein Beispiel für dieses Konzept zeigen die 2A und 2B die Stufenreaktionen für einen Prozeß, der eine Prozeßverzögerung hat, die primär eine lineare Funktion der Aufgaberate oder des Durchsatzes bei zwei verschiedenen Durchsätzen ist, und zwar bei einem Durchsatz von 500 Gallonen/min (GPM) und einem Durchsatz von 1000 GPM. Es ist ersichtlich, daß dabei die Zeitdauer bis zum stabilen Zustand (Tss) in diesem Fall für die Rate von 500 GPM (2A) der zweifache Wert wie für die Rate von 1000 GPM (2B) ist. Ferner ist die Prozeßantwort grundsätzlich die gleiche für den Fall mit 1000 GPM wie für den Fall mit 500 GPM mit der Ausnahme, daß im Fall von 1000 GPM der Zeitmaßstab verändert oder reduziert ist. Das bedeutet, der Prozeß erreicht bei dem Durchsatz von 1000 GPM den stabilen Zustand in der halben Zeit, die im Fall des Durchsatzes von 500 GPM erforderlich ist.
  • Bei einem Vergleich der beiden Stufenantworten der 2A und 2B ist sogar ersichtlich, daß der einzige Unterschied darin besteht, daß die Antwort über eine unterschiedliche Zeitdauer bis zum stabilen Zustand verteilt ist, d. h. daß die Koeffizienten der Stufenantwort (unter der Annahme, daß es in jedem Fall eine gleiche Zahl von Koeffizienten gibt) gleich sind, aber der Zeitunterschied zwischen den Koeffizienten umgekehrt proportional zu der Aufgaberate ist. Infolgedessen wäre das Steuermodell, das für Prozeßmodelle erzeugt wird, die bei verschiedenen Prozeßdurchsätzen bestimmt werden (die die gleiche Zahl von Koeffizienten haben), grundsätzlich gleich mit der Ausnahme, daß die Steuerungsausführungsrate unterschiedlich wäre (weil die Modellzeitdauer bis zum stabilen Zustand über einen längeren Zeitraum verteilt ist). In dem Fall, in dem die Prozeßverzögerung eine feststellbare Funktion (linear oder nichtlinear) einer Prozeßvariablen wie etwa der Aufgaberate, des Durchsatzes usw. ist, ist es daher möglich, die Steuerungsausführungsrate einer MPC-Steuerroutine so einzustellen, daß die Änderung der Prozeßtotzeit kompensiert wird.
  • Die Kompensation der Ausführungsperiode des MPC-Steuerblocks oder der MPC-Steuerroutine kann für den Fall, in dem die Prozeßtotzeit eine lineare Funktion des Prozeßdurchsatzes ist, mathematisch entsprechend der nachstehenden Gleichung bestimmt werden: Ausführungsperiode = (Blockausführungsperiode)·(Ausführungsmodifikator) = (Tss/Nc)·(Fn/Fa)
  • Dabei bedeuten:
  • Tss
    = Zeitdauer bis zum stabilen Zustand des verwendeten Modells zur Erzeugung der erweiterten Steuerroutine;
    Nc
    = Anzahl der in dem Modell verwendeten Koeffizienten;
    Fn
    = Prozeßdurchsatz während des Sammelns von Daten zum Erzeugen des Prozeßmodells; und
    Fa
    = aktueller Prozeßdurchsatz.
  • Selbstverständlich ist die Ausführungsrate Eins geteilt durch die Ausführungsperiode Bei jeder in der Praxis angewandten Implementierung sollte ferner die errechnete Ausführungsperiode oder -rate begrenzt und auf Werte beschränkt sein, die von dem Steuersystem unterstützt werden. Außerdem kann der aktuelle Durchsatzwert stark gefiltert werden, um die Auswirkungen von Prozeßrauschen zu eliminieren.
  • Bei einer anderen Ausführungsform kann die MPC-Blockausführungsrate unter Nutzung der Zeitdauer bis zum stabilen Zustand, die zur Erzeugung des Prozeßmodells verwendet wurde, und einer festgelegten Zahl von Modellkoeffizienten (z. B. 120) berechnet werden. Auf der Basis der berechneten MPC-Ausführungsrate und der Modulausführungsrate wird dann der MPC-Blockausführungs-Multiplikator automatisch so eingestellt, daß die richtige Blockausführungszeit entsprechend der folgenden Gleichung erhalten wird: MPC-Blockausführungszeit = Modulausführungszeit·MPC-Blockausführungs-Multiplikator
  • In diesem Fall kann eine Änderung der Prozeßtotzeit korrigiert werden durch Einstellen des MPC-Blockausführungs-Multiplikators wie folgt: MPC-Blockausführungs-Multiplikator = ganze Zahl (Mn·(Fn/Fa))
  • Dabei bedeuten:
  • Mn
    = ursprünglicher MPC-Blockausführungs-Multiplikator;
    Fn
    = Durchsatz des Prozesses beim Sammeln von Daten zur Erzeugung des Prozeßmodells; und
    Fa
    = aktueller Durchsatz des Prozesses.
  • Der berechnete Ausführungsmultiplikator sollte auf Werte beschränkt sein, die größer oder gleich 1 sind, und die gemessene Variable, z. B. der Durchsatz (Fa), sollte gefiltert und auf den zu erwartenden Bereich für den Normalbetrieb begrenzt werden.
  • Selbstverständlich kann das gleiche Konzept bei einer von linear verschiedenen anderen Beziehung zwischen der Prozeßtotzeit und einem gemessenen Prozeßparameter sowie für andere Arten von Prozeßparametern angewandt werden. Allgemein gesagt, kann sogar die Beziehung DT = f(X, Y, Z ...) für einen bestimmten Prozeß definiert werden, wobei DT die Prozeßtotzeit und f(x) eine lineare oder nichtlineare Funktion von Prozeß- oder Steuerparametern X, Y, Z ist. Dann kann auf der Basis der errechneten DT die Abtastperiode oder Ausführungsrate des MPC-Funktionsblocks nach Maßgabe der definierten Beziehung eingestellt werden. Beispielsweise kann die eingestellte Ausführungsperiode als die ursprüngliche Ausführungsperiode, multipliziert mit dem Verhältnis der Ist-Totzeit dividiert durch die ursprüngliche Totzeit, bestimmt werden.
  • Falls gewünscht, kann die Einstellung der Ausführungsrate des MPC-Blocks auf der Grundlage der Meßwerte der ein oder mehr Prozeß-/Steuervariablen, die die Prozeßverzögerungszeit oder Totzeit beeinflussen, automatisch durchgeführt werden. In dem einen Fall, wie er in 1 gezeigt ist, kann ein Verbundblock verwendet werden, um die Ausführungsrate des MPC-Blocks als eine Funktion einer Durchsatzeingabe oder einer anderen Prozeß-/Steuervariablen zu modifizieren. Andererseits kann diese Fähigkeit, falls gewünscht, in den MPC-Block (oder einen anderen erweiterten Steuerblock) integriert sein. Selbstverständlich kann die Projektion bzw. Vorausschau von gesteuerten und begrenzenden Parametern, die dem Bediener bei der Entwicklung des MPC-Blocks gezeigt wurden, dem Bediener gezeigt werden, und der Bediener kann nach Wunsch die Wahl treffen, dieses Feature anzuwenden oder nicht.
  • Ferner kann die Bestimmung der Ausführungsrate unter Verwendung jeder Prozeß- oder Steuervariablen erfolgen, die gemessen oder auf andere Weise erhalten wird. Beispielsweise kann ein Bediener die Werte der zu verwendenden Variablen manuell bestimmen oder erhalten und diese Werte dem Ausführungsratenblock als Sollwertsignale zuführen. In einem Fall kann der Bediener die Durchsatz- oder Prozeßrate auf der Basis von anderen Faktoren, die dem Bediener zur Verfügung stehen, periodisch bestimmen und dann ein diese Rate bezeichnendes Signal an den Ausführungsratenblock senden. Falls gewünscht, kann der Bediener oder ein sonstiger Anwender jedoch statt dessen die Prozeßtotzeit manuell bestimmen oder messen und eine Anzeige der bestimmten Totzeit an den Ausführungsratenblock übermitteln. In diesem Fall kann der Ausführungsratenblock den Wert der Prozeßtotzeit direkt als die Eingangsvariable nutzen, um die Ausführungsrate der Steuerlogik zu ändern. Es versteht sich, daß die Totzeit im allgemeinen zu der Ausführungsrate in direkter Beziehung steht (d. h. mit zunehmender Prozeßtotzeit nimmt die Ausführungsrate zu), während der Prozeßdurchsatz im allgemeinen zu der Ausführungsrate in umgekehrter Beziehung steht (d. h. mit zunehmendem Durchsatz nimmt die Ausführungsrate ab). Selbstverständlich können andere Variablen außer der Prozeßtotzeit und dem Durchsatz verwendet werden, und die Werte dieser Variablen können auf jede Weise wie beispielsweise automatisch, manuell, durch direkte oder empirische Beobachtungen oder Messungen usw. gewonnen werden.
  • 3 zeigt einen erweiterten Steuerblock 50, der in diesem Fall ein MPC-Steuerblock ist und ein Steuermodell 52 mit einer Matrix von Eingangs-/Ausgangskurven 53 und eine Steuerlogik 54 hat, die für ein bestimmtes Prozeßmodell entwickelt wurden. Der MPC-Steuerblock 50 nutzt diese Kurven und die entwickelte Logik zur Durchführung einer Vielfacheingang-/Vielfachausgang-Steuerung. Wie 3 zeigt, liefert der MPC-Block 50 eine Vielzahl von Steuerausgängen (Prozeßeingängen) an einen Prozeß 55 zur Steuerung des Prozesses 55. Der MPC-Block 50 ist ferner mit dem Prozeß 55 so verbunden, daß er eine Vielzahl von Prozeßparametern oder -variablen (Prozeßausgängen) empfängt, die als Eingänge zu dem MPC-Block 50 und insbesondere zu der Steuerlogik 54 dienen. Es versteht sich, daß der MPC-Block 50 das Steuermodell 52 verwendet, um an seinen Ausgängen Steuersignale bereitzustellen, die so bestimmt sind, daß sie die Eingänge des MPC-Blocks (die Prozeßausgänge oder Prozeßvariablen) auf gewünschte Werte treiben. Eine der Prozeßvariablen, in diesem Fall der Durchsatz, wird jedoch auch an einen Ausführungsratenblock 58 geliefert. Der Ausführungsratenblock 58 nutzt den Wert der Prozeßvariablen, bei der es sich um die Variable handelt, die die Prozeßverzögerung oder Totzeit hauptsächlich beeinflußt, um eine Ausführungsrate oder -periode für den MPC-Logikblock 54 festzulegen. Der Ausgang des Kompensationsblocks 58 wird dem MPC-Logikblock 54 zugeführt und bestimmt die Ausführungsrate des MPC-Logikblocks 54.
  • Falls gewünscht, kann der Ausführungsratenblock 58 ein Filter 60 aufweisen, das die ankommende Prozeßvariable (den Prozeßparameter) filtert, um die Änderungen der Ausführungsrate des Blocks 50 auf der Basis von Rauschen oder vorübergehenden Schwankungen der Prozeßvariablen zu verringern. Dieses Filter kann beispielsweise ein Tiefpaß sein und unter Verwendung von gewünschten Analog- oder Digitalfiltertechniken implementiert sein. Das gefilterte Prozeßvariablensignal wird dann einem Rechenblock 62 zugeführt, der auf der Grundlage der oben beschriebenen Techniken eine neue Ausführungsrate für den Block 50 auf der Basis des Werts der gefilterten Prozeßvariablen errechnet oder festlegt. Diese neue Ausführungsrate wird dann einem Begrenzer zugeführt, der sicherstellt, daß die Ausführungsrate ein ganzzahliger Wert ist und innerhalb des Bereichs möglicher Ausführungsraten liegt, die von der Einrichtung oder dem System unterstützt werden, in dem sich der Block 50 befindet. Die begrenzte Ausführungsrate wird dann dem Steuerlogikblock 54 zur Bestimmung der Ausführungsrate dieses Blocks zugeführt.
  • Selbstverständlich kann der Ausführungsraten-Kompensationsblock 58 die oben beschriebenen Gleichungen oder Beziehungen nutzen, um die Ausführungsrate des erweiterten Steuerblocks 50 zu bestimmen. Insbesondere kann in dem Kompensationsblock 58 die Ausführungsrate gespeichert sein, mit der der MPC-Block 50 ausgebildet wurde, um auf der Basis des Steuermodells 52 zu wirken, das seinerseits auf dem Wert des Durchsatzes des Prozesses basiert, in dessen Verlauf Daten gesammelt wurden, um das Prozeßmodell zu erschaffen, das zur Erstellung des Steuermodells 52 verwendet wurde. Wenn sich dann der Durchsatz ändert, nutzt der Kompensationsblock 58 die bekannte Beziehung zwischen der Prozeßvariablen (in diesem Fall dem Durchsatz) und der Prozeßverzögerung, um eine neue Ausführungsrate für den MPC-Logikblock 54 zu berechnen. Selbstverständlich kann die Beziehung zwischen der Prozeßvariablen und der Prozeßtotzeit linear oder nichtlinear sein, und der Ausführungsratenblock 58 kann eine Vielzahl von Prozeßvariablen nutzen, um die neue Ausführungsrate festzulegen, wenn die Prozeßverzögerung eine Funktion von mehr als einer Variablen oder mehr als einem Parameter ist. Bei dem vorliegenden Beispiel ist zwar die Prozeßvariable der Durchsatz oder die Aufgaberate, aber jede andere Prozeß- oder Steuervariable, die eine Prozeßverzögerung bewirkt, kann verwendet und dem Ausführungsratenblock 58 zugeführt werden. Es ist somit zu beachten, daß die neue Ausführungsperiode oder -rate des MPC-Blocks 50 eine lineare oder nichtlineare Funktion von einer oder mehreren Prozeß- oder Steuervariablen sein kann und von der Beziehung zwischen der einen oder den mehreren Prozeßvariablen und der Prozeßverzögerung abhängig ist. Ferner verwendet zwar der Ausführungsratenblock 58 von 3 eine Prozeßvariable, die auch dem Steuerlogikblock 54 zugeführt und bei der Durchführung von Steuersignalberechnungen verwendet wird, dies braucht jedoch nicht der Fall zu sein. Tatsächlich könnte dem Ausführungsratenblock 58 ein separates Signal oder eine separate Prozeßvariable zugeführt werden, die vom Rest des Steuerblocks 50 nicht genutzt wird.
  • 4 zeigt die Auswirkungen der MPC-Steuerung, wobei die Ausführungsratenkompensation mit eingeschlossen ist und nicht für einen Prozeß eingeschlossen ist, bei dem sich die Prozeßverzögerung stark als eine Funktion des Durchsatzes ändert. Bei diesem Beispiel wurde ein Prozeßmodell festgelegt und verwendet, um ein Steuermodell aufzubauen. Die ursprünglichen Modellparameter und Identifikationsergebnisse sind in der nachstehenden Tabelle 1 angegeben. Tabelle 1
    simulierter Prozeß CV-MV identifiz.Modell CV-MV simulierter Prozeß CV-DV identifiz. Modell CV-DV
    Totzeit 60 s 57 s 7 s 18 s
    Verstärkung 0,6 0,598 0,25 0,17
    Verzögerungen) 10 s 7,5 s 30 s 12 s
  • In diesem Fall wurden an die Stellgröße (MV) Pseudozufallssignale mit der Amplitude von 5% angelegt. Die Überlagerung des Sinussignals, des Rechteckwellensignals und des Zufallssignals der Tabelle 2 wurde ebenfalls an die Störgröße (DV) angelegt. Tabelle 2
    Periode (s) Amplitude (%) Zufallsfilter (s)
    Sinuswelle 60 3
    Rechteckwelle 150 2
    Zufall 10 30
  • Es ist ersichtlich, daß die Beziehung der Zwangsvariablen (CV) zu der Stellgröße (MV) sehr genau identifiziert wurde, wogegen die CV-DV-Beziehung eine erhebliche Fehlanpassung zwischen dem Prozeß und dem Modell ausdrückt. Diese Fehlanpassung geht auf eine unzureichende Erregungsamplitude für Identifikationszwecke zurück und wurde mit Absicht gewählt, um eine reale Situation zu reflektieren, bei der störungsabhängige Schrittantworten schlecht erregt und identifiziert werden. Das Prozeßmodell für dieses Beispiel wurde mit Tss = 240 s, 120 Koeffizienten und einer Abtast- oder Ausführungsperiode von 2 s erstellt. Es wurde davon ausgegangen, daß die Prozeßtotzeit sich in Abhängigkeit von dem Prozeßzustand (z. B. Durchsatz, Verhältnis usw.) ändert.
  • Ein Anfangstest, beginnend am Punkt A in 4, wurde mit den nominellen MPC-Steuerparametern und bei dem Prozeßdurchsatz durchgeführt, der zur Erstellung des Prozeßmodells benutzt worden war. Wie 4 zeigt, lief der MPC-Block mit einer Sollwertänderung und Störungskompensation (4 – Punkt A bis Punkt B) adäquat ab. Am Punkt B (10:43) wurde die Totzeit in dem simulierten Prozeß von 60 s auf 120 s erhöht als Ergebnis einer simulierten Änderung des Prozeßdurchsatzes. Nach Punkt B wurde der Sollwert geändert, was in einer oszillierenden Steuerung durch den MPC-Block in Abhängigkeit von Sollwertänderungen resultierte, was in einer realen Situation vollständig inakzeptabel ist.
  • Zur Berichtigung der Situation wurde die Abtastperiode des MPC-Blocks erhöht (am Punkt C in 2), und zwar von 2 s auf 4 s entsprechend dem oben beschriebenen Konzept. Es ist ersichtlich, daß nach dem Punkt C die Steuerschleife zu dem Betrieb zurückkehrte, der sehr nahe an dem Betrieb liegt, der zu Beginn des Tests mit dem richtig identifizierten Prozeßmodell erreicht wird, und zwar auch im Hinblick auf Sollwertänderungen und Störungskompensation nach Punkt C. Insbesondere sprach das Steuersystem an den Punkten D und E als Reaktion auf Sollwertänderungen in geeigneter Weise an. Somit ist aus 4 ersichtlich, daß die richtige Kompensation der Ausführungsrate des MPC-Blocks eine Änderung der Prozeßtotzeit oder -verzögerung infolge einer Änderung des Prozeßzustands (in diesem Fall des Durchsatzes) ausgleicht.
  • Selbstverständlich kann der MPC oder ein anderer erweiterter Steuerblock auf jede gewünschte Weise erschaffen und zu einer Steuereinheit oder anderen Einrichtung heruntergeladen werden. Wie 1 zeigt, kann einer der Arbeitsplatzrechner 13 eine Routine 140 zur Erzeugung eines erweiterten Steuerblocks aufweisen, die dazu genutzt wird, den erweiterten Steuerblock 38 (und den Ausführungsratenblock 40) von 1 oder den Block 50 von 3 auf eine hier im einzelnen zu beschreibende Weise zu erschaffen, herunterzuladen und zu implementieren. Die Routine 140 zur Erzeugung eines erweiterten Steuerblocks kann zwar in einem Speicher innerhalb des Arbeitsplatzrechners 13 gespeichert und von einem Prozessor dort ausgeführt werden, diese Routine (oder ein Teil davon) kann aber zusätzlich oder alternativ in einer anderen Einrichtung innerhalb des Prozeßsteuersystems 10 gespeichert und ausgeführt werden, falls das gewünscht wird. Allgemein gesagt, umfaßt die Routine 140 zur Erzeugung eines erweiterten Steuerblocks eine Steuerblockerzeugungsroutine 142, die einen erweiterten Steuerblock erzeugt und diesen erweiterten Steuerblock in das Prozeßsteuersystem einfügt, eine Prozeßmodellerstellungsroutine 144, die ein Prozeßmodell für den Prozeß oder einen Bereich davon auf der Basis von Daten erstellt, die von dem erweiterten Steuerblock gesammelt werden, und eine Steuerlogikparametererzeugungsroutine 146, die Steuerlogikparameter für den erweiterten Steuerblock aus dem Prozeßmodell erzeugt und diese Steuerlogikparameter in dem erweiterten Steuerblock speichert oder sie in ihn herunterlädt zum Gebrauch bei der Steuerung des Prozesses. Es versteht sich, daß die Routinen 142, 144 und 146 aus einer Serie verschiedener Routinen bestehen können, etwa einer ersten Routine, die ein erweitertes Steuerelement erzeugt, das Steuereingänge zum Empfang von Prozeßausgängen und Steuerausgänge zur Abgabe von Steuersignalen an Prozeßeingänge hat, einer zweiten Routine, die einem Anwender ermöglicht, das erweiterte Steuerelement kommunikativ in die Prozeßsteuerroutine (die jede gewünschte Konfigurationsroutine sein kann) einzufügen, einer dritten Routine, die das erweiterte Steuerelement nutzt, um Erregungswellenformen an jeden der Prozeßeingänge zu liefern, einer vierten Routine, die das erweiterte Steuerelement nutzt, um Daten zu sammeln, die die Reaktion jedes der Prozeßausgänge auf die Erregungswellenformen reflektieren, einer fünften Routine, die ein Przeßmodell aus den gesammelten Daten erschafft, einer sechsten Routine, die erweiterte Steuerlogikparameter aus dem Prozeßmodell entwickelt, und einer siebten Routine, die die erweiterte Steuerlogik und erforderlichenfalls das Prozeßmodell in dem erweiterten Steuerelement plaziert, um dem erweiterten Steuerelement zu ermöglichen, den Prozeß zu steuern.
  • 5 ist ein Ablaufdiagramm 150, das die Schritte der Erzeugung und Anwendung eines erweiterten Steuerblocks und speziell eines MPC-Steuerblocks mit Ausführungsratenkompensation innerhalb eines Prozeßsteuersystems wie etwa des Prozeßsteuersystems 10 von 1 veranschaulicht. Das Ablaufdiagramm 150 von 5 zeigt zwar die Erstellung eines MPC-Blocks oder -Moduls, aber die gleichen oder ähnliche Schritte könnten ausgeführt werden, um jeden anderen erweiterten Steuerblock zu erzeugen und anzuwenden, beispielsweise jeden Vielfacheingang-/Vielfachausgang-Steuerblock wie einen Neuronennetzmodellierblock oder -steuerblock, einen Vielfachvariablen-Fuzzylogik-Block usw.
  • Zuerst wird zu einem Zeitpunkt 152 entschieden, die Steuerung innerhalb des Prozeßsteuersystems 10 durch Implementierung eines MPC-Verfahrens zu verbessern oder vorzusehen. Diese Entscheidung kann zu dem Zeitpunkt erfolgen, zu dem das Prozeßsteuersystem 10 erstmals eingerichtet wird, oder zu einem späteren Zeitpunkt, nachdem sich gezeigt hat, daß beispielsweise andere Steuerroutinen wie etwa Einzelschleifensteuerroutinen eine unzureichende Steuerung ergeben. Zu dem Zeitpunkt 152 führt ein Bediener oder anderer Anwender die MPC-Blockerzeugungsroutine 140 aus, um die Schritte der Erschaffung eines MPC-Moduls oder einer MPC-Steuerschleife zu beginnen, die innerhalb des Prozeßsteuersystems eine Ausführungsratenkompensation hat. Als Teil dieses Vorgangs wählt der Bediener die Prozeßeingänge, mit denen die Ausgänge des zu entwerfenden MPC-Blocks zu verbinden sind, und wählt die Prozeßausgänge, mit denen die Eingänge des zu entwerfenden MPC-Blocks zu verbinden sind. Der MPC-Block kann zwar jede Zahl von Ein- und Ausgängen haben, aber jeder MPC-Block hat im allgemeinen drei Arten von Eingängen, und zwar gesteuerte Parametereingänge, die die Prozeßvariablen oder -parameter sind, die auf einem Sollwert (oder innerhalb eines Vorgabebereichs) zu halten sind, Zwangseingänge, die die Prozeßvariablen sind, die zwangsläufig einen bestimmten Grenzwert oder Bereich haben, der beispielsweise auf physischen Begrenzungen basiert, die zu dem Prozeß gehören und die der MPC-Block nicht auf einen Wert außerhalb des Zwangsbereichs oder -grenzwerts zwingen darf, und Prozeßstörungsparametereingänge, die andere Prozeßvariablen wie etwa Prozeßeingänge sind, von denen bekannt ist, daß sie bei einer Veränderung zu Änderungen der gesteuerten Parameter führen. Der MPC-Block nutzt die Prozeßstörungsparametereingänge, um Änderungen an den gesteuerten Parametern (d. h. den gesteuerten Prozeßausgängen) vorherzusehen und die Auswirkungen dieser Änderungen vor deren Auftreten zu begrenzen. Andere Eingänge können dem MPC-Block ebenfalls zugeführt werden, beispielsweise eine Rückmeldung von einer Einrichtungen oder einem anderen gesteuerten Prozeßelement, die es dem MPC-Steuerblock ermöglicht, eine wirkungsvollere Steuerung dieser Elemente vorzusehen.
  • Gleichermaßen können die Ausgänge des MPC-Blocks so verbunden werden, daß sie jede gewünschte Prozeßvariable oder jeden anderen Prozeßeingang einschließlich Steuerschleifeneingänge, Steuereingänge von Einrichtungen usw. steuern. Die Routine, die durch Verschalten des MPC-Blocks mit anderen Steuerelementen entwickelt wird, wird hier als ein MPC-Modul bezeichnet. Der Anwender kann einen MPC-Funktionsblock erschaffen, er kann aber auch einen Anfangsfunktionsblock von einem Speicher wie etwa einer Bibliothek von Funktionsblöcken erhalten und diesen Funktionsblock nutzen oder ein Objekt dieses Funktionsblocks erzeugen, um es in dem Prozeßsteuersystem zu verwenden. Ebenso kann ein Anwender oder sonstiger Provider einen Funktionsblock oder ein anderes Steuerelement auf eine andere gewünschte Weise bereitstellen.
  • Dabei kann der Anwender eine Beziehung zwischen einer oder mehreren Prozeß- oder Steuervariablen und der Prozeßtotzeit bestimmen oder angeben. Diese Beziehung kann als eine Gleichung oder als eine Reihe von bekannten potentiellen Beziehungen wie etwa als eine lineare Funktion, eine von einer Anzahl verschiedener möglicher nichtlinearer Funktionen usw. angegeben werden. Ferner kann der Anwender das System anweisen, eine Beziehung zwischen einem oder mehreren Prozeß- oder Steuerparametern und der Prozeßtotzeit zu bestimmen, wenn das gewünscht wird.
  • In einem Schritt 154 erzeugt der Bediener ein MPC-Modul mit einem MPC-Block (der noch nicht die gesamte Information hat, die notwendig ist, um eine Modellvorhersagesteuerung bereitzustellen), wobei die bezeichneten Eingänge und Ausgänge kommunikativ in das Prozeßsteuersystem eingefügt sind, und mit einem Ausführungsratenkompensationsblock und lädt diese Blöcke oder Module zu der entsprechenden Steuereinheit oder sonstigen Einrichtung herunter, die das MPC-Modul implementiert. Als Teil dieses Prozesses konfiguriert der Bediener das Prozeßsteuersystem 10 zur Implementierung des MPC-Blocks durch kommunikatives Koppeln der Ausgänge des MPC-Blocks mit den entsprechenden Prozeßeingängen und durch kommunikatives Koppeln der Eingänge des MPC-Blocks mit den entsprechenden Prozeßausgängen.
  • 6 zeigt einen MPC-Block 156, der mit einem Prozeß 158 verbunden ist. Der MPC-Block 156 ist ein 3 × 3-Steuerblock mit drei Eingängen IN1 bis IN3 und drei Ausgängen OUT1 bis OUT3, während der Prozeß 158 Eingänge X1 bis X5 und Ausgänge Y1 bis Y6 aufweist. Selbstverständlich könnten der MPC-Block 156 und der Prozeß 158 jede andere Anzahl von Eingängen und Ausgängen aufweisen. Der MPC-Block 156 kann zwar im allgemeinen ein quadratischer Block sein, d. h. er kann die gleiche Zahl von Eingängen und Ausgängen haben, aber diese Konfiguration ist nicht notwendig, und der MPC-Block 156 kann eine jeweils verschiedene Anzahl von Eingängen und von Ausgängen haben. Wie 6 zeigt, verbindet der Bediener die Prozeßausgänge Y1 bis Y3 kommunikativ mit den MPC-Blockeingängen IN1 bis IN3 und verbindet die MPC-Blockausgänge OUT1 bis OUT3 jeweils mit den Prozeßeingängen X1 bis X3. Selbstverständlich kann jeder der Eingänge und Ausgänge des Prozesses 158 mit anderen Steuerschleifen oder anderen Elementen in anderen Steuerroutinen verbunden sein, die dem Prozeßsteuersystem 10 zugeordnet sind, wie durch Strichlinien angedeutet ist, die mit den Prozeßeingängen und -ausgängen in 6 verbunden sind). Dabei kann der Bediener auch die ein oder mehr Prozeßvariablen, die die Prozeßverzögerung bewirken, mit einem Ausführungsratenkompensationsblock 160 kommunikativ verbinden. Allgemein gesagt, werden der MPC-Block 156 und die übrigen Blöcke, die dem Prozeß 158 Steuereingänge zuführen können (wie durch Strichlinien angedeutet ist, die mit den Prozeßeingängen X1 bis X3 verbunden sind), durch irgendeinen Schalter angeschlossen, wobei diese Schalter durch die Kästchen 162 in 6 veranschaulicht sind. Die Schalter 162 können Hardware- oder Softwareschalter sein, und falls gewünscht, können sie dadurch vorgesehen sein, daß die verschiedenen Steuereingangssignale unterschiedlichen Eingängen eines Funktionsblocks wie etwa eines Fieldbus-Funktionsblocks zugeführt werden, die dann eine Auswahl zwischen dem Steuersignal von dem MPC-Block 156 und einem Steuersignal von einem anderen Funktionsblock wie etwa einem PID-Funktionsblock auf der Basis des Modus des die beiden Signale empfangenden Funktionsblocks treffen können.
  • Selbstverständlich kann der Bediener den MPC-Block 156 auf jede gewünschte Weise mit dem Prozeß 158 verbinden und verwendet im allgemeinen die gleiche Steuerkonfiguration oder das gleiche Entwurfsprogramm, das der Bediener benutzt, um andere Steuerschleifen wie etwa Einzelschleifenroutinen innerhalb des Prozeßsteuersystems 10 zu erschaffen. Beispielsweise kann der Bediener jede gewünschte graphische Programmierroutine verwenden, um die Verbindungen zwischen dem MPC-Block 156 und den Prozeßeingängen und -ausgängen zu bezeichnen. Auf diese Weise wird der MPC-Block 156 auf die gleiche Weise wie andere Steuerblöcke, Elemente oder Routinen unterstützt, so daß die Konfiguration und Verbindung des MPC-Blocks 156 und die Unterstützung dieses Blocks innerhalb des Steuersystems 10 sich nicht von Konfiguration, Verbindung und Unterstützung der anderen Blöcke innerhalb des Systems unterscheiden. Bei einer Ausführungsform sind der MPC-Block 156 und die anderen Blöcke innerhalb des Steuersystems 10 Funktionsblöcke, die so ausgebildet sind, daß sie gleich oder ähnlich wie Fieldbus-Funktionsblöcke sind. Bei dieser Ausführungsform kann der MPC-Block 156 die gleichen oder ähnliche Arten von Eingängen, Ausgängen usw. haben, wie sie in dem Fieldbus-Protokoll bezeichnet sind oder davon bereitgestellt werden, und ist imstande, beispielsweise von der Steuereinheit 11 implementiert zu werden unter Anwendung von Kommunikationsverbindungen, die gleich oder ähnlich wie diejenigen sind, die in dem Fieldbus-Protokoll angegeben sind. Eine Methode der graphischen Erstellung von Prozeßsteuerroutinen und Elementen davon ist in Dove et al., US-PS 5 838 563 mit dem Titel ”System for Configuring a Process Control Environment” angegeben. Selbstverständlich könnten ebenso andere Steuerschleifen- oder Steuermodul-Entwurfsstrategien angewandt werden einschließlich derjenigen, die anderen Arten von Funktionsblöcken verwenden oder die andere Routinen, Subroutinen oder Steuerelemente innerhalb eines Denkmodells einer Prozeßsteuerungskonfiguration verwenden.
  • Bei Verwendung eines Steuersystems auf der Basis der Zusammenschaltung von Funktionsblöcken wie etwa von solchen, die durch das Fieldbus-Funktionsblock-Denkmodell bereitgestellt werden, kann der MPC-Block 156 direkt mit anderen Funktionsblöcken innerhalb der Prozeßsteuerroutine verbunden werden. Beispielsweise kann der MPC-Block 156 mit Steuereinrichtungen wie etwa Ventilen usw. direkt verbunden werden, indem ein Steuerausgang des MPC-Blocks 156 mit einem Ausgangsblock (etwa einem AO-Block) verbunden wird, der der zu steuernden Einrichtung zugeordnet ist. Ebenso kann der MPC-Block 156 Steuersignale an Funktionsblöcke in anderen Steuerschleifen wie etwa an den Eingang von anderen Steuerfunktinsblöcken liefern, um den Betrieb dieser Steuerschleifen zu überwachen oder unwirksam zu machen.
  • Es versteht sich also, daß die Prozeßeingänge X1 bis X3, mit denen die Ausgänge des MPC-Steuerblocks 156 in 6 verbunden sind, irgendwelche gewünschten Prozeßeingänge sein können einschließlich Eingänge zu Steuerschleifen, die in einer bestehenden Steuerstrategie definiert sind, oder Eingänge zu Ventilen oder anderen Einrichtungen, die mit dem Prozeß verbunden sind. Ebenso können die Prozeßausgänge Y1 bis Y3, die mit den Eingängen des MPC-Blocks 156 verbunden sind, alle gewünschten Prozeßausgänge sein einschließlich Ausgänge von Ventilen oder anderen Sensoren, Ausgänge von AO- oder AI-Funktionsblöcken oder Ausgänge von anderen Steuerelementen oder Routinen.
  • Es wird nun erneut auf Schritt 154 von 5 Bezug genommen. Nachdem der Bediener ein Steuermodul erschaffen hat, das einen Anfangs-MPC-Block aufweist, dessen Ein- und Ausgänge mit gewünschten Prozeßausgängen bzw. -eingängen verbunden sind, und einen Ausführungsratenkompensationsblock hat, wird das Steuermodul mit dem darin befindlichen Anfangs-MPC-Block in die entsprechende Einrichtung wie etwa die Steuereinheit 11 oder einen der Arbeitsplatzrechner 13 zur Ausführung heruntergeladen. In einem Schritt 199 weist der Bediener den Anfangs-MPC-Block an, damit zu beginnen, den Prozeß auf bekannte Weise zu aktivieren und Prozeßeingangs- und -ausgangsdaten zu sammeln, während der Prozeß aktiviert wird.
  • Wie 6 zeigt, umfaßt der Anfangs-MPC-Block 156 eine Datensammelroutine 200, einen Wellenformgenerator 201, eine generische Steuerlogik 202 und einen Speicher zur Speicherung von Steuerparametern 203 und ein Prozeßmodell 204. Die generische Steuerlogik 202 kann beispielsweise eine generische MPC-Routine sein, die Koeffizienten oder andere Steuerparameter benötigt, um aktiv sein zu können, um die Steuerung in einem bestimmten Fall auszuführen. In einigen Fällen kann die generische Steuerlogik 202 eventuell ein Prozeßmodell für den zu steuernden Prozeß benötigen, um diesen Prozeß zu steuern. Nachdem der Anfangs-MPC-Block 156 beispielsweise in die Steuereinheit 11 heruntergeladen worden ist, wird er über die MPC-Erzeugungsroutine 142 angewiesen, die nächste Entwicklungsphase des MPC-Blocks 156 zu beginnen, in der Daten für jeden der Prozeßausgänge zur Verwendung bei der Erstellung eines Prozeßmodells gesammelt werden. Speziell bei einer entsprechenden Anweisung durch den Bediener (oder zu jeder anderen gewünschten Zeit) beginnt der Wellenformgenerator 201 des MPC-Blocks 156 damit, an seinen Ausgängen OUT1 bis OUT3 eine Serie von Wellenformen zu erzeugen, um jedem der Prozeßeingänge X1 bis X3 Anregungswellenformen zu liefern. Falls gewünscht, können diese Wellenformen dem Generator 201 von Software innerhalb des Anwender-Arbeitsplatzrechners 13 geliefert werden, aber bevorzugt werden sie von dem Generator 201 erzeugt. Die von dem Wellenformgenerator 201 erzeugten Wellenformen sind bevorzugt so ausgebildet, daß sie den Prozeß veranlassen, über die verschiedenen Bereiche von Eingängen wirksam zu sein, die im Normalbetrieb des Prozesses zu erwarten sind und die stark unterschiedliche Durchsätze aufweisen können. Zur Entwicklung eines Prozeßmodells für eine MPC-Steuerroutine kann der Wellenformgenerator 201 jedem der Prozeßeingänge X1 bis X3 eine Serie von unterschiedlichen Impulsgruppen zuführen, wobei die Impulse innerhalb jeder der Gruppe von Impulsen gleiche Amplitude, aber pseudozufällige Länge haben und wobei die Impulse innerhalb der verschiedenen Impulsgruppen unterschiedliche Amplituden haben. Eine solche Serie von Impulsgruppen kann für jeden der verschiedenen Prozeßeingänge X1 bis X3 aufeinanderfolgend erzeugt und jeweils einzeln zu einem Zeitpunkt zugeführt werden. Während dieser Zeit sammelt die Datensammeleinheit 200 innerhalb des MPC-Blocks 156 die Daten oder koordiniert auf andere Weise das Sammeln von Daten, die die Reaktion der Prozeßausgänge Y1 bis Y3 auf jede der von dem Wellenformgenerator 201 erzeugte Wellenform bezeichnen, und kann Daten sammeln oder das Sammeln von Daten koordinieren, die die gerade erzeugte Anregungswellenform betreffen. Diese Daten können in dem MPC-Block 156 gespeichert werden, werden aber bevorzugt dem Stammdatenspeicher 12 zur Speicherung und/oder dem Arbeitsplatzrechner 13 automatisch zugeführt, wo diese Daten auf dem Anzeigeschirm 14 angezeigt werden können.
  • Anstatt also zu versuchen, den Prozeß 158 unter Anwendung einer erweiterten Steuerlogik (die noch nicht vollständig entwickelt worden ist) zu steuern, liefert der MPC-Block 156 zuerst eine Gruppe von Anregungswellenformen an den Prozeß 158 und mißt die Reaktion des Prozesses 158 auf diese Anregungswellenformen. Selbstverständlich können die von dem Wellenformgenerator 201 erzeugten Anregungswellenformen alle gewünschten Wellenformen sein, die entwickelt werden, um ein Prozeßmodell zu erschaffen, das für die Erstellung von Steuerlogikparametern für jede erweiterte Steuerroutine nützlich ist. Bei diesem Beispiel erzeugt der Wellenformgenerator 201 jede Gruppe von Wellenformen, von denen bekannt ist, daß sie zur Entwicklung eines Prozeßmodells für eine Modellvorhersagesteuerung brauchbar sind, und diese Wellenformen können jede heute bekannte oder in Zukunft für diesen Zweck entwickelte Form haben. Da Wellenformen, die zur Anregung eines Prozesses für den Zweck des Sammelns von Daten zur Entwicklung eines Prozeßmodells für die Modellvorhersagesteuerung verwendet werden, wohlbekannt sind, werden diese Wellenformen hier nicht näher beschrieben. Ebenso können alle anderen oder alle gewünschten Arten von Wellenformen von dem Wellenformgenerator 201 entwickelt und bei der Entwicklung von Prozeßmodellen für andere erweiterte Steuerroutinen (was Modellierungsroutinen einschließt) wie etwa Neuronennetze, multivariable Fuzzylogik- usw. -Steuerroutinen verwendet werden.
  • Es ist zu beachten, daß der Wellenformgenerator 201 jede gewünschte Ausbildung haben kann und beispielsweise als Hardware, Software oder eine Kombination aus beidem implementiert werden kann. Bei Implementierung in Software kann der Wellenformgenerator 201 einen Algorithmus speichern, der dazu dienen kann, die gewünschten Wellenformen zu erzeugen, kann digitale Darstellungen der zu erzeugenden Wellenformen speichern oder kann jede andere Routine oder gespeicherte Daten zur Erschaffung solcher Wellenformen nutzen. Bei Implementierung in Hardware kann der Wellenformgenerator 201 beispielsweise ein Oszillator oder ein Rechteckwellengenerator sein. Falls gewünscht, kann der Bediener aufgefordert werden, bestimmte für die Entwicklung der Wellenformen erforderliche Parameter einzugeben wie etwa die ungefähre Reaktionszeit des Prozesses, die Schrittgröße der Amplitude der an die Prozeßeingänge zu liefernden Wellenformen usw. Der Bediener kann nach dieser Information gefragt werden, wenn der MPC-Block 156 geschaffen wird oder wenn der Bediener den MPC-Block 156 anweist, mit der Aktivierung des Prozesses und dem Sammeln von Prozeßdaten zu beginnen. Bei einer bevorzugten Ausführungsform sammelt die Datensammeleinheit 200 Daten (oder gewährleistet das Sammeln von Daten auf andere Weise) in Abhängigkeit von jeder der Anregungswellenformen über das Drei- oder Fünffache der Reaktionszeit, die von dem Bediener eingegeben wurde, um sicherzustellen, daß ein komplettes und genaues Prozeßmodell entwickelt werden kann. Daten können jedoch über jeden anderen Zeitraum hinweg gesammelt werden.
  • In jedem Fall ist der MPC-Steuerblock 156 bevorzugt wirksam, bis der Wellenformgenerator 201 die Abgabe aller erforderlichen Anregungswellenformen an jeden der Prozeßeingänge X1 bis X3 beendet hat und die Datensammeleinheit 200 Daten für die Prozeßausgänge Y1 bis Y3 gesammelt hat. Selbstverständlich kann, falls das während dieses Datensammelvorgangs gewünscht wird oder notwendig ist, die Operation des MPC-Blocks 156 unterbrochen werden.
  • Wie in 5 bei Schritt 225 gezeigt ist, kann der Bediener als nächstes irgendwann bestimmen, daß mit der Implementierung der nächsten Phase der Entwicklung des MPC-Blocks begonnen wird durch Ausführen der Prozeßmodellierroutine 144, die auf die gesammelten Daten des Stammdatenspeichers 12 zugreift und jede bekannte Prozeßmodellerzeugungsroutine ablaufen läßt, um aus den gesammelten Daten ein Prozeßmodell zu erzeugen.
  • Falls gewünscht, kann die Prozeßmodellierroutine 144 einen Datenscreeningvorgang an den gesammelten Daten ablaufen lassen. Dieser Datenscreeningvorgang kann die gesammelten Daten in bezug auf Ausreißer und andere offensichtlich fehlerhafte Daten prüfen und andere den gesammelten Daten zugeordnete Werte wie etwa Status- und Grenzwerte, die den gesammelten Daten zugeordnet sind, überprüfen, um festzustellen, ob die Daten von einem Funktionsblock erzeugt wurden, der einen schlechten oder unrichtigen Status hat, ob die Daten bei einem Grenzwert liegen, ob die Daten erzeugt wurden, als sich ein Funktionsblock oder ein andere Element in einem falschen Modus befand, oder ob die Daten auf irgendeine andere Weise unter abnormalen oder unerwünschten Prozeßbedingungen erzeugt wurden. Beispielsweise in dem Fieldbus-Kommunikationsprotokoll weisen von Funktionsblöcken erzeugte Daten auch eine Status-, eine Grenzwert- und eine Modusanzeige auf, die mit den Daten in dem Stammdatenspeicher 12 gespeichert und zum Screenen der Daten genutzt werden kann. Falls gewünscht, kann die Datenscreeningroutine die gesammelten Daten für den Bediener sichtbar machen und es ihm ermöglichen, die zu screenenden oder zu beseitigenden Daten zu markieren, indem diese Daten auf der Grundlage der Kenntnisse des Bedieners über die Prozeßbedingungen beispielsweise hervorgehoben oder anderweitig kenntlich gemacht werden. Auf diese Weise können Daten, die von dem MPC-Block 156 gesammelt wurden, als der Prozeß 158 offline war, als der Prozeß 158 nicht ordnungsgemäß gesteuert wurde, als der Prozeß 158 in einer Reparaturphase war, als ein Sensor oder eine andere Einrichtung in dem Prozeß 158 fehlerhaft war oder gerade ersetzt wurde, usw. ausgewählt und aus den für die Erstellung eines Prozeßmodells zu verwendenden Daten eliminiert werden.
  • Nach dem Screenen der Daten erzeugt die Prozeßmodellroutine 144 ein Prozeßmodell aus den gewählten Daten. Wie oben gesagt wurde, kann die Prozeßmodellierroutine 144 jede gewünschte oder bekannte Art von Prozeßmodellieranalyse ausführen, um ein Prozeßmodell aus den gesammelten und gescreenten Daten zu erstellen, und das entwickelte Prozeßmodell kann jede Form wie etwa ein mathematischer Algorithmus, eine Serie von Ansprechkurven usw. haben.
  • Wenn die Prozeßmodellierroutine 144 in bezug auf die Bestimmung des Prozeßmodells ein Problem hat, dann kann eine Bezeichnung des Problems in einem Statusbereich eines Anwenderdisplays wiedergegeben werden. Ein Problem, das angezeigt werden kann, ist, daß nicht ausreichend Stichproben vorhanden sind, um ein Prozeßmodell zu erkennen oder zu erschaffen. Eine Nachricht wie etwa ”Für die definierte Konfiguration ist eine Mindestzahl von XXX Stichproben erforderlich. Datendatei enthält nur XXX Stichproben.” kann erzeugt werden, um den Bediener über dieses Problem zu informieren. Ein anderes Problem, das detektiert werden kann, ist, daß an den Prozeßeingängen keine hinreichende Anregung stattgefunden hat. Eine entsprechende Meldung und die Erkennung der Signalkennungsnamen wie etwa KennungX, KennungY usw. und die Mindeständerungen des Anregungsumfangs kann dem Bediener bei Auftreten eines solchen Problems angeboten werden.
  • Falls gewünscht und auf der Basis der Bedingungen, die die Erkennung eines erfolgreichen Modells verhinderten, kann der Anwender den Zeitrahmen ändern, über den die Prozeßmodellierung ausgeführt wird, oder er kann Prozeßeingänge so ändern, daß die in der Prozeßmodellierroutine 144 verwendeten Daten gültig sind. Das Prozeßmodell, das erkannt wird, kann automatisch in jeder gewünschten Datenbank gesichert werden, um zum späteren Gebrauch zugänglich zu sein. Anwender mit größerer Erfahrung können vielleicht das Prozeßmodell, das erkannt wurde, untersuchen oder editieren wollen. Ferner kann der Anwender eine Routine ablaufen lassen, um festzustellen, ob sich die Prozeßverzögerungszeit über die Betriebsbedingungen deutlich ändert und, wenn das der Fall ist, welche Prozeß- oder Steuervariablen mit dieser Änderung in Beziehung stehen. Die Routine kann auch eine Beziehung zwischen diesen Variablen und der Prozeßverzögerung liefern, und diese Beziehung kann dem Ausführungsratenblock 160 innerhalb des MPC-Blocks 156 von 6 zugeführt werden.
  • Zu irgendeinem Zeitpunkt in dem Verfahren kann die Logikparametererzeugungsroutine 146 ausgeführt werden, um die Parameter zu erzeugen (die in den Variablen innerhalb des MPC-Blocks 156 gespeichert werden sollen), die die generische Logik 202 des Anfangs-MPC-Blocks 156 benötigt, um eine Modellvorhersagesteuerung durchzuführen. Diese Steuerparameter, die beispielsweise Matrix- oder andere MPC-Koeffizienten für MPC-Logik, Abstimmparameter, Neuronennetzparameter (für ein Neuronennetz), Skalierfaktoren (für multivariable Fuzzylogik) oder alle sonstigen gewünschten Parameter sein können, werden normalerweise auf der Basis des erzeugten Prozeßmodells bestimmt. Die Logikparametererzeugungsroutine 146 kann jedes gewünschte oder bekannte Verfahren zur Erzeugung der Parameter aus einem Prozeßmodell ausführen. Allgemein gesagt, bedingt dieser Vorgang das Umwandeln des Prozeßmodells in ein Matrixformat. Es könnte jedoch jede andere gewünschte Logikparametererzeugungsroutine verwendet werden. Da die Einzelheiten der Erstellung eines Prozeßmodells aus gesammelten Daten für einen Prozeß und die Erzeugung von MPC- oder anderen Steuerlogikparametern von diesem Prozeßmodell im Stand der Technik bekannt ist, werden diese Verfahren hier nicht weiter beschrieben. Es ist jedoch zu beachten, daß der Bediener einen gewissen Input bei der Erzeugung der Steuerlogikparameter für den MPC-Block 156 hat. Dabei kann der Bediener aufgefordert oder anderweitig in die Lage versetzt werden, die Werte bestimmter Variablen anzugeben, die typischerweise zur Erschaffung einer MPC-Steuereinheit verwendet werden. Beispielsweise kann der Bediener folgendes bezeichnen: die Sollwerte und Grenzwerte jedes der Zwangseingänge zu dem MPC-Block, den Zeitrahmen, in dem Steuerungsänderungen vorzunehmen sind, d. h. das Sollwert-Trajektoriefilter und die zu diesem Filter gehörenden Zeitkonstanten, die maximale oder minimale Bewegung (den Ratengrenzwert) eines MPC-Ausgangs oder eines Prozeßausgangs, ob irgendwelche der gesteuerten Parameter auf eine integrierte Weise ansprechen, MPC-Optimierungsfaktoren, -Variablen oder -Abstimmparameter, den Horizont des MPC-Steuerblocks, d. h. wie viele Schritte von Vorwärtsberechnungen auszuführen sind, um die Steuerung bis zu einem gewünschten Zustand durchzuführen, die Entwicklungseinheitsbereiche für jeden der Eingänge und Ausgänge des MPC-Blocks 156, welches von den Stellgrößen-Zielen gelockert werden darf oder nicht realisiert zu werden braucht, wenn eine der Zwangsvorgaben verletzt wird, eine Beschreibung und/oder einen Namen jedes der MPC-Blockeingänge und -ausgänge, den Wert von etwaigen Optimierungsvariablen, die vorgegeben werden können, den Wert von Variablen, die auf die Aggressivität oder Robustheit des MPC-Blocks bezogen sind, usw. Falls gewünscht, kann die Steuerlogikerzeugungsroutine 146 Standardwerte für einige oder sämtliche dieser Variablen oder Vorgaben speichern und diese Standardwerte dazu verwenden, die MPC-Logik zu erzeugen. Der Bediener oder ein anderer Anwender kann jedoch imstande sein, diese Vorgaben über den Anwenderbildschirm 14 zu ändern. Ferner kann der Bediener eine anfängliche Abtast- oder Ausführungsrate auf der Basis der für das Prozeßmodell festgelegten Koeffizienten auswählen und wählen, ob der Steuerblock die Ausführungsratenkompensation auf der Basis einer Beziehung zwischen einer oder mehreren Prozeß- oder Steuervariablen und der vom Anwender oder automatisch vom System bestimmten Prozeßverzögerung verwenden soll.
  • In jedem Fall läuft die MPC-Logikparametererzeugungsroutine 146 unter Verwendung dieser Informationen und aller anderen Informationen ab, die erforderlich sein können, um MPC- (oder andere) Steuerlogikparameter wie etwa MPC-Koeffizienten zu erzeugen.
  • Nachdem die MPC-Steuerlogikparameter und die Ausführungsratenkompensationsfaktoren erstellt sind, können in einem Schritt 228 in 5 die MPC-Steuerlogikparameter oder -koeffizienten unter Verwendung eines Prozeßsimulationsblocks getestet werden. Dieser Simulationsblock kann allgemein aus dem für den Prozeß erschaffenen Prozeßmodell entwickelt und mit einem MPC-Block in einer Prüfumgebung verbunden werden, um zu prüfen, ob die erzeugte MPC-Steuerlogik über den Normalbetriebsbereich des Prozesses zufriedenstellend wirkt und ob der Ausführungsratenblock über den Bereich von erwarteten Prozeßverzögerungszeiten adäquat wirksam ist. Wenn die MPC-Logik nicht zufriedenstellend ist, können einige oder alle der Schritte 154, 199 und 225 wiederholt werden, um eine davon verschiedene MPC-Steuerlogik oder Ausführungsratenlogik zu entwickeln. Wenn jedoch die MPC-Steuerlogik zufriedenstellend ist, können die MPC-Steuerlogikparameter und das Prozeßmodell in einem Schritt 230 in den MPC-Block 156 heruntergeladen und in dem Parameterspeicher 203, dem Prozeßmodellspeicher 204 und dem Kompensationsblock 160 gespeichert und zur Steuerung des Prozesses 158 genutzt werden. Auf diese Weise werden die von der MPC-Steuerlogik benötigten Parameter dem MPC-Block 156 zugeführt und sind in ihm enthalten, und der MPC-Block 156 kann beauftragt werden, innerhalb des Prozesses nach Maßgabe der MPC-Steuerlogik 202 wirksam zu sein oder die Steuerung tatsächlich auszuführen. Falls gewünscht, kann natürlich die eigentliche MPC-Logik 202 gemeinsam mit den dafür benötigten Parametern in dem Arbeitsplatzrechner 13 erzeugt und in den MPC-Block 16 heruntergeladen werden.
  • Nach dem Herunterladen und der Ausführung durch die Steuereinheit 11 kann das MPC-Modul oder die MPC-Schleife mit dem darin befindlichen MPC-Block 156 Berichtsfunktionen auf die gleiche Weise wie andere Blöcke oder Elemente innerhalb der Steuerroutine ausführen, weil, wie bereits erwähnt, der MPC-Block 156 und das diesen Block enthaltende Steuermodul so ausgebildet sind, daß sie das gleiche Programmier-Denkmodell wie die übrigen Steuerblöcke innerhalb des Prozeßsteuersystems 10 verwenden.
  • Es versteht sich, daß die hier beschriebenen Routinen zum Erzeugen der MPC- oder erweiterten Steuerlogik und die hier beschriebenen Verfahren es einem Anwender ermöglichen, erweiterte Steuerblöcke wie etwa MPC-Steuerblöcke, Neuronennetzmodellier- oder -steuerblöcke usw. zu erschaffen, ohne viel Fachkenntnis darüber zu besitzen, wie diese Blöcke erzeugt werden, und es einem Bediener ermöglichen, einen erweiterten Steuerblock zu erzeugen und zu verwenden, ohne eine erhebliche Umprogrammierung des Prozesses zur Implementierung der erweiterten Steuerung auszuführen. Da ferner der erweiterte Steuerblock unter Anwendung des gleichen Programmier-Denkmodells wie die anderen Steuerelemente in dem System erzeugt wird, können dem Anwender beständige Ansichten des Prozesses oder grafische Anzeigen des Prozesses mit dem darin befindlichen erweiterten Steuerblock geboten werden. Da außerdem das Prozeßmodell beispielsweise für einen MPC-Funktionsblock erzeugt werden muß, kann dieses Prozeßmodell dazu genutzt werden, Simulationsfunktionsblöcke zu erzeugen, die dazu dienen können, den Prozeß für andere Zwecke wie etwa zum Prüfen, zum Training, zum Detektieren von Prozeß-/Prozeßmodell-Fehlanpassungen oder zum Erzeugen von virtuellen Ausgängen des Prozesses zur Verwendung bei der Steuerung eines Prozesses zu simulieren.
  • Die erweiterten Steuerblöcke, die Prozeßsimulationsblöcke und die zugehörigen Erzeugungs- und Prüfroutinen wurden im vorliegenden Fall zwar in Verbindung mit ihrer Verwendung mit Fieldbus- und 4-20-mA-Standardeinrichtungen beschrieben, sie können aber selbstverständlich unter Verwendung jedes anderen Prozeßsteuerungs-Kommunikationsprotokolls oder jeder anderen Programmierumgebung implementiert werden und können mit jeder anderen Art von Einrichtungen, Funktionsblöcken oder Steuereinheiten verwendet werden. Ferner ist zu beachten, daß die Verwendung des Ausdrucks ”Funktionsblock” nicht auf das beschränkt ist, was das Fieldbus-Protokoll oder das DeltaV-Controllerprotokoll als einen Funktionsblock identifiziert, sondern statt dessen jede andere Art von Block, Programm, Hardware, Firmware usw. umfaßt, die mit jeder Art von Steuersystem und/oder Kommunikationsprotokoll zusammenwirkt, das zur Implementierung einer Prozeßsteuerfunktion verwendbar ist. Ferner haben Funktionsblöcke zwar typischerweise die Form von Objekten innerhalb einer objektorientierten Programmierumgebung, dies braucht jedoch nicht der Fall zu sein.
  • Die erweiterten Steuerblöcke, die Ausführungsratenkompensationsblöcke, die Prozeßsimulationsblöcke und die zugeordneten Erzeugungs- und Prüfroutinen, die hier beschrieben wurden, sind bevorzugt in Software implementiert, sie können aber auch in Hardware, Firmware usw. implementiert werden und können von jedem anderen einem Prozeßsteuersystem zugeordneten Prozessor ausgeführt werden. Somit kann die hier beschriebene Routine 140 in einer Standard-Universal-CPU oder einer speziell ausgelegten Hardware oder Firmware wie beispielsweise ASIC implementiert werden, falls das gewünscht wird. Bei Implementierung in Software kann diese in jedem computerlesbaren Speicher gespeichert sein, wie etwa auf einer Magnetplatte, einer Laserplatte, einer Bildplatte oder einem anderen Speichermedium, in einem RAM oder ROM eines Computers oder Prozessors usw. Diese Software kann einem Anwender oder einem Prozeßsteuersystem ebenso mittels jeder bekannten oder gewünschten Liefermethode geliefert werden, beispielsweise auf einer computerlesbaren Platte oder einem anderen transportierbaren Computerspeichermechanismus oder über einen Nachrichtenübertragungskanal wie etwa eine Telefonleitung, das Internet usw. (was als gleich oder austauschbar mit der Lieferung dieser Software mittels eines transportablen Speichermediums angesehen wird).

Claims (39)

  1. Prozeßsteuerungselement, das ausgebildet ist zum Gebrauch als ein Teil einer Prozeßsteuerungsroutine, die auf einem Prozessor zur Steuerung eines Prozesses implementiert ist, dadurch gekennzeichnet, daß das Prozeßsteuerungselement folgendes aufweist: ein computerlesbares Medium; und einen Steuerblock (38), der auf dem computerlesbaren Medium gespeichert und so ausgebildet ist, daß er auf dem Prozessor ausführbar ist, um die Steuerung des Prozesses zu implementieren, wobei der Steuerblock aufweist: eine erste Vielzahl von Eingängen, wobei jeder Eingang zum Empfang eines jeweils verschiedenen eines Sets von Prozeßparametern ausgebildet ist; eine zweite Vielzahl von Ausgängen, wobei jeder Ausgang so ausgebildet ist, daß er mit einem jeweils verschiedenen Prozeßeingang kommunikativ verbindbar ist, um das Set von Prozeßparametern zu steuern; eine Steuerlogik (54), die auf die erste Vielzahl von Eingängen anspricht und ein Steuersignal an jedem der zweiten Vielzahl von Ausgängen erzeugt; und einen Ausführungsratenblock (40), der so ausgebildet ist, daß er Werte eines Parameters, der auf den Prozeß bezogen ist, empfängt und eine Ausführungsrate für die Steuerlogik auf der Basis des Parameters berechnet.
  2. Prozeßsteuerungselement nach Anspruch 1, dadurch gekennzeichnet, daß der Ausführungsratenblock (40) ein Filter aufweist, das zum Filtern des Parameters ausgebildet ist.
  3. Prozeßsteuerungselement nach Anspruch 2, dadurch gekennzeichnet, daß der Ausführungsratenblock (40) ferner einen Rechenblock aufweist, der die Ausführungsrate für die Steuerlogik auf der Basis des gefilterten Parameters bestimmt.
  4. Prozeßsteuerungselement nach Anspruch 3, ferner gekennzeichnet durch ein Begrenzungselement, das so ausgebildet ist, daß es die von dem Rechenblock bestimmte Ausführungsrate begrenzt.
  5. Prozeßsteuerungselement nach Anspruch 1, dadurch gekennzeichnet, daß der Ausführungsratenblock (40) einen Rechenblock aufweist, der die Ausführungsrate für die Steuerlogik als eine lineare Funktion des Parameters bestimmt.
  6. Prozeßsteuerungselement nach Anspruch 1, dadurch gekennzeichnet, daß der Ausführungsratenblock einen Rechenblock aufweist, der die Ausführungsrate für die Steuerlogik als eine nichtlineare Funktion des Parameters bestimmt.
  7. Prozeßsteuerungselement nach Anspruch 1, dadurch gekennzeichnet, daß der Ausführungsratenblock ferner so ausgebildet ist, daß er Werte eines zweiten Parameters empfängt und die Ausführungsrate des Logikblocks als eine Funktion des Parameters und des zweiten Parameters bestimmt.
  8. Prozeßsteuerungselement nach Anspruch 1, dadurch gekennzeichnet, daß der Ausführungsratenblock so ausgebildet ist, daß er den den Prozeßdurchsatz bezeichnenden Parameter empfängt und die Ausführungsrate der Steuerlogik auf der Basis von Werten des Prozeßdurchsatzes bestimmt.
  9. Prozeßsteuerungselement nach Anspruch 1, dadurch gekennzeichnet, daß die Steuerlogik eine Modellvorhersagesteuerlogik aufweist.
  10. Prozeßsteuerungselement nach Anspruch 1, dadurch gekennzeichnet, daß die Steuerlogik eine Neuronennetzsteuerlogik aufweist.
  11. Prozeßsteuereinheit, die zur Steuerung eines Prozesses ausgebildet ist, der eine Vielzahl von Feldeinrichtungen hat, wobei die Prozeßsteuereinheit aufweist: einen Prozessor (10); einen Speicher; einen in dem Speicher gespeicherten Steuerblock (38), der so ausgebildet ist, daß er von dem Prozessor zur Durchführung von Steuerungsberechnungen ausführbar ist, um ein oder mehr Steuersignale zur Steuerung des Prozesses zu erzeugen, wobei der Steuerblock so ausgebildet ist, daß er auf dem Prozessor mit einer Ausführungsrate ausgeführt wird; und einen Ausführungsratenblock (40), der in dem Speicher gespeichert und zur Ausführung auf dem Prozessor ausgebildet ist, um die Ausführungsrate des Steuerblocks auf der Basis eines Werts eines dem Prozeß zugeordneten Parameters zu bestimmen.
  12. Prozeßsteuereinheit nach Anspruch 11, dadurch gekennzeichnet, daß der Ausführungsratenblock ein Filter aufweist, das zum Filtern des dem Prozeß zugeordneten Parameters ausgebildet ist.
  13. Prozeßsteuereinheit nach Anspruch 12, dadurch gekennzeichnet, daß der Ausführungsratenblock ferner einen Rechenblock aufweist, der die Ausführungsrate für den Steuerblock auf der Basis des gefilterten Werts des Parameters bestimmt.
  14. Prozeßsteuereinheit nach Anspruch 13, ferner gekennzeichnet durch ein Begrenzungselement, das so ausgebildet ist, daß es die von dem Rechenblock bestimmte Ausführungsrate begrenzt.
  15. Prozeßsteuereinheit nach Anspruch 11, dadurch gekennzeichnet, daß der Ausführungsratenblock einen Rechenblock aufweist, der die Ausführungsrate für den Steuerblock als eine lineare Funktion des Parameters bestimmt.
  16. Prozeßsteuereinheit nach Anspruch 11, dadurch gekennzeichnet, daß der Ausführungsratenblock einen Rechenblock aufweist, der die Ausführungsrate für den Steuerblock als eine nichtlineare Funktion des Parameters bestimmt.
  17. Prozeßsteuereinheit nach Anspruch 11, dadurch gekennzeichnet, daß der Ausführungsratenblock ferner so ausgebildet ist, daß er die Ausführungsrate des Steuerblocks als eine Funktion des Parameters und eines zweiten Parameters bestimmt.
  18. Prozeßsteuereinheit nach Anspruch 11, dadurch gekennzeichnet, daß der Ausführungsratenblock so ausgebildet ist, daß er die Ausführungsrate des Steuerblocks auf der Basis eines dem Prozeßdurchsatz zugeordneten Werts bestimmt.
  19. Prozeßsteuereinheit nach Anspruch 11, dadurch gekennzeichnet, daß der Steuerblock so ausgebildet ist, daß er eine Modellvorhersagesteuerung durchführt.
  20. Prozeßsteuereinheit nach Anspruch 11, dadurch gekennzeichnet, daß der Steuerblock ein Vielfacheingang-/Vielfachausgang-Steuerblock ist.
  21. Prozeßsteuereinheit nach Anspruch 20, dadurch gekennzeichnet, daß der Steuerblock so ausgebildet ist, daß er Neuronennetzsteuerlogik ausführt.
  22. Prozeßsteuerungselement, das ausgebildet ist zum Gebrauch bei der Unterstützung der Steuerung eines Prozesses, der ein Prozeßsteuersystem hat, das einen Steuerblock auf einem Prozessor mit einer Ausführungsrate ausführt, um Prozeßsteuerfunktionen innerhalb des Prozesses durchzuführen, dadurch gekennzeichnet, daß das Prozeßsteuerungselement aufweist: einen Speicher; und einen Ausführungsratenblock (40), der in dem Speicher gespeichert und zur Ausführung auf dem Prozessor ausgebildet ist, um die Ausführungsrate des Steuerblocks (38) während des Betriebs des Prozesses auf der Basis von Werten eines dem Prozeß zugehörigen Parameters zu bestimmen.
  23. Prozeßsteuerungselement nach Anspruch 22, dadurch gekennzeichnet, daß der Ausführungsratenblock ein Filter aufweist, das ausgebildet ist, um den dem Prozeß zugehörigen Parameter zu filtern.
  24. Prozeßsteuerungselement nach Anspruch 23, dadurch gekennzeichnet, daß der Ausführungsratenblock ferner einen Rechenblock aufweist, der die Ausführungsrate für den Steuerblock auf der Basis des gefilterten Werts des Parameters bestimmt.
  25. Prozeßsteuerungselement nach Anspruch 24, dadurch gekennzeichnet, daß der Ausführungsratenblock ferner ein Begrenzungselement aufweist, das ausgebildet ist, um die von dem Rechenblock bestimmte Ausführungsrate zu begrenzen.
  26. Prozeßsteuerungselement nach Anspruch 22, dadurch gekennzeichnet, daß der Ausführungsratenblock einen Rechenblock aufweist, der die Ausführungsrate für den Steuerblock als eine lineare Funktion des Parameters bestimmt.
  27. Prozeßsteuerungselement nach Anspruch 22, dadurch gekennzeichnet, daß der Ausführungsratenblock einen Rechenblock aufweist, der die Ausführungsrate für den Steuerblock als eine nichtlineare Funktion des Parameters bestimmt.
  28. Prozeßsteuerungselement nach Anspruch 22, dadurch gekennzeichnet, daß der Ausführungsratenblock ferner so ausgebildet ist, daß er die Ausführungsrate des Steuerblocks als eine Funktion des Parameters und eines zweiten Parameters bestimmt.
  29. Verfahren zum Steuern eines Prozesses, der eine Prozeßverzögerung hat, die eine Funktion eines Parameters ist, dadurch gekennzeichnet, daß das Verfahren die folgenden Schritte aufweist: Ausführen eines Steuerblocks, der während des Betriebs des Prozesses eine Vielfacheingang-/Vielfachausgang-Steuerung implementiert, mit einer Ausführungsrate; Gewinnen einer Angabe des Parameters; und Bestimmen der Ausführungsrate des Steuerblocks als eine Funktion der Angabe des Parameters.
  30. Verfahren nach Anspruch 29, dadurch gekennzeichnet, daß der Schritt des Gewinnens den Schritt der Messung des Parameters während des Betriebs des Prozesses aufweist.
  31. Verfahren nach Anspruch 29, dadurch gekennzeichnet, daß der Schritt des Gewinnens den Schritt des Bestimmens eines Durchsatzes des Prozesses aufweist.
  32. Verfahren nach Anspruch 29, dadurch gekennzeichnet, daß der Schritt des Gewinnens den Schritt des Bestimmens einer Aufgaberate des Prozesses aufweist.
  33. Verfahren nach Anspruch 29, dadurch gekennzeichnet, daß der Schritt des Ausführens den Schritt des Ausführens eines Steuerblocks aufweist, der eine Modellvorhersagesteuerung mit der Ausführungsrate implementiert.
  34. Verfahren nach Anspruch 29, dadurch gekennzeichnet, daß der Schritt des Bestimmens den Schritt des Filterns des gemessenen Parameters aufweist.
  35. Verfahren nach Anspruch 34, dadurch gekennzeichnet, daß der Schritt des Bestimmens ferner den Schritt des Berechnens der Ausführungsrate und des Begrenzens der berechneten Ausführungsrate aufweist.
  36. Verfahren nach Anspruch 29, dadurch gekennzeichnet, daß der Schritt des Bestimmens den Schritt des Bestimmens der Ausführungsrate als eine lineare Funktion des Parameters aufweist.
  37. Verfahren nach Anspruch 29, dadurch gekennzeichnet, daß der Schritt des Bestimmens den Schritt des Bestimmens der Ausführungsrate als eine nichtlineare Funktion des Parameters aufweist.
  38. Verfahren nach Anspruch 29, ferner gekennzeichnet durch den Schritt des Gewinnens einer Angabe eines zweiten Parameters, wobei der Schritt des Bestimmens den Schritt des Bestimmens der Ausführungsrate als eine Funktion der Angabe des Parameters und der Angabe des zweiten Parameters aufweist.
  39. Verfahren nach Anspruch 29, dadurch gekennzeichnet, daß der Schritt des Gewinnens den Schritt des Bestimmens einer zu dem Prozeß gehörenden Totzeit aufweist.
DE10304902A 2002-02-07 2003-02-06 Anpassung von erweiterten Prozeßsteuerblöcken in Abhängigkeit von veränderlichen Prozeßverzögerungen Expired - Lifetime DE10304902B4 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US10/072,029 US6901300B2 (en) 2002-02-07 2002-02-07 Adaptation of advanced process control blocks in response to variable process delay
US10/072029 2002-02-07

Publications (2)

Publication Number Publication Date
DE10304902A1 DE10304902A1 (de) 2003-10-23
DE10304902B4 true DE10304902B4 (de) 2012-09-13

Family

ID=22105119

Family Applications (1)

Application Number Title Priority Date Filing Date
DE10304902A Expired - Lifetime DE10304902B4 (de) 2002-02-07 2003-02-06 Anpassung von erweiterten Prozeßsteuerblöcken in Abhängigkeit von veränderlichen Prozeßverzögerungen

Country Status (6)

Country Link
US (1) US6901300B2 (de)
JP (1) JP4194396B2 (de)
CN (1) CN1332275C (de)
DE (1) DE10304902B4 (de)
GB (1) GB2386437B (de)
HK (2) HK1055475A1 (de)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102013003570B4 (de) 2012-03-30 2018-03-22 Keihin Corporation Elektronische Regelvorrichtung

Families Citing this family (63)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8280533B2 (en) * 2000-06-20 2012-10-02 Fisher-Rosemount Systems, Inc. Continuously scheduled model parameter based adaptive controller
SE522691C3 (sv) * 2002-06-12 2004-04-07 Abb Ab Dynamisk on-line-optimering av produktionsprocesser
US7272454B2 (en) * 2003-06-05 2007-09-18 Fisher-Rosemount Systems, Inc. Multiple-input/multiple-output control blocks with non-linear predictive capabilities
CA2447098A1 (en) * 2003-10-28 2005-04-28 Centre De Recherche Industrielle Du Quebec Method for estimating an optimal dosage of bleaching agent to be mixed with wood chips
DE10357276B4 (de) * 2003-12-05 2012-02-23 Abb Research Ltd. System und Verfahren zur gerichteten Bereitstellung und Installation von gerätespezifischen Funktionalitäten und/oder Informationen für die Feldgeräte eines verteilten Systems
TWI346849B (en) * 2003-12-05 2011-08-11 Saurer Gmbh & Co Kg Method and apparatus for order control in a production process for a fibre product
US7117044B2 (en) * 2003-12-30 2006-10-03 Square D Company Alternative energy system control method and apparatus
US20050182500A1 (en) * 2004-02-17 2005-08-18 Continuous Control Solutions, Inc. Time delay definition
US7203555B2 (en) * 2004-05-14 2007-04-10 University Of Delaware Predictive regulatory controller
US7415312B2 (en) * 2004-05-25 2008-08-19 Barnett Jr James R Process module tuning
US7460984B1 (en) * 2004-05-25 2008-12-02 The Mathworks, Inc. Compensating for delay in modeling environments
US7451004B2 (en) * 2005-09-30 2008-11-11 Fisher-Rosemount Systems, Inc. On-line adaptive model predictive control 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
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
US7444191B2 (en) * 2005-10-04 2008-10-28 Fisher-Rosemount Systems, Inc. Process model identification in a process control system
US7587252B2 (en) * 2005-10-25 2009-09-08 Fisher-Rosemount Systems, Inc. Non-periodic control communications in wireless and other process control systems
US7620460B2 (en) * 2005-10-25 2009-11-17 Fisher-Rosemount Systems, Inc. Process control with unreliable communications
US8719327B2 (en) * 2005-10-25 2014-05-06 Fisher-Rosemount Systems, Inc. Wireless communication of process measurements
US8005575B2 (en) 2006-06-01 2011-08-23 General Electric Company Methods and apparatus for model predictive control in a real time controller
DE102006028006A1 (de) * 2006-06-14 2007-12-20 Siemens Ag Feldgerät und Verfahren zum Verarbeiten mindestens einer Messgröße in einem Feldgerät
US8145358B2 (en) 2006-07-25 2012-03-27 Fisher-Rosemount Systems, Inc. Method and system for detecting abnormal operation of a level regulatory control loop
US7912676B2 (en) 2006-07-25 2011-03-22 Fisher-Rosemount Systems, Inc. Method and system for detecting abnormal operation in a process plant
US8606544B2 (en) * 2006-07-25 2013-12-10 Fisher-Rosemount Systems, Inc. Methods and systems for detecting deviation of a process variable from expected values
US7668623B2 (en) * 2006-08-01 2010-02-23 Emerson Process Management Power & Water Solutions, Inc. Steam temperature control using integrated function block
US20080071395A1 (en) * 2006-08-18 2008-03-20 Honeywell International Inc. Model predictive control with stochastic output limit handling
US7949417B2 (en) * 2006-09-22 2011-05-24 Exxonmobil Research And Engineering Company Model predictive controller solution analysis process
EP2392982B1 (de) * 2006-09-28 2015-03-25 Fisher-Rosemount Systems, Inc. Verhinderung anomaler Situationen in einem Wärmetauscher
US8032340B2 (en) * 2007-01-04 2011-10-04 Fisher-Rosemount Systems, Inc. Method and system for modeling a process variable in a process plant
US8032341B2 (en) 2007-01-04 2011-10-04 Fisher-Rosemount Systems, Inc. Modeling a process using a composite model comprising a plurality of regression models
US7827006B2 (en) * 2007-01-31 2010-11-02 Fisher-Rosemount Systems, Inc. Heat exchanger fouling detection
US8238414B1 (en) 2007-09-25 2012-08-07 National Semiconductor Corporation Sliding error sampler (SES) for latency reduction in the PWM path
US7930045B2 (en) * 2008-10-07 2011-04-19 Emerson Process Management Power & Water Solutions, Inc. Two-stage model predictive control technique
US8756039B2 (en) * 2010-03-02 2014-06-17 Fisher-Rosemount Systems, Inc. Rapid process model identification and generation
TWI427722B (zh) * 2010-08-02 2014-02-21 Univ Nat Cheng Kung 使用具有信心指標之虛擬量測的先進製程控制系統與方法及其電腦程式產品
US9335042B2 (en) 2010-08-16 2016-05-10 Emerson Process Management Power & Water Solutions, Inc. Steam temperature control using dynamic matrix control
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
US9447963B2 (en) 2010-08-16 2016-09-20 Emerson Process Management Power & Water Solutions, Inc. Dynamic tuning of dynamic matrix control of steam temperature
WO2013007867A1 (en) * 2011-07-11 2013-01-17 Metso Automation Oy Wireless control for process automation
CN102354114A (zh) * 2011-07-18 2012-02-15 安徽工程大学 一种网络控制***的随机时延建模方法
US8788069B2 (en) * 2011-09-27 2014-07-22 Fisher-Rosemount Systems, Inc. Method and apparatus for eliminating aliasing
US9163828B2 (en) 2011-10-31 2015-10-20 Emerson Process Management Power & Water Solutions, Inc. Model-based load demand control
US10423127B2 (en) 2012-01-17 2019-09-24 Fisher-Rosemount Systems, Inc. Velocity based control in a non-periodically updated controller
US9298176B2 (en) 2012-01-17 2016-03-29 Fisher-Rosemount Systems, Inc. Compensating for setpoint changes in a non-periodically updated controller
US11199824B2 (en) 2012-01-17 2021-12-14 Fisher-Rosemount Systems, Inc. Reducing controller updates in a control loop
JP5565431B2 (ja) * 2012-04-18 2014-08-06 横河電機株式会社 制御装置及び制御システム
CN102854797B (zh) * 2012-09-10 2015-11-18 广东电网公司电力科学研究院 火电机组先进控制多模型切换方法
US9714616B2 (en) * 2014-03-26 2017-07-25 GM Global Technology Operations LLC Non-model predictive control to model predictive control transitions
US9784198B2 (en) 2015-02-12 2017-10-10 GM Global Technology Operations LLC Model predictive control systems and methods for increasing computational efficiency
US9863345B2 (en) 2012-11-27 2018-01-09 GM Global Technology Operations LLC System and method for adjusting weighting values assigned to errors in target actuator values of an engine when controlling the engine using model predictive control
US9765703B2 (en) 2013-04-23 2017-09-19 GM Global Technology Operations LLC Airflow control systems and methods using model predictive control
US9920697B2 (en) 2014-03-26 2018-03-20 GM Global Technology Operations LLC Engine control systems and methods for future torque request increases
US9797318B2 (en) 2013-08-02 2017-10-24 GM Global Technology Operations LLC Calibration systems and methods for model predictive controllers
US9732688B2 (en) 2014-03-26 2017-08-15 GM Global Technology Operations LLC System and method for increasing the temperature of a catalyst when an engine is started using model predictive control
CN103676649A (zh) * 2013-10-09 2014-03-26 江苏师范大学 局部自适应小波神经网络训练***、设备及方法
US9696709B2 (en) * 2014-02-21 2017-07-04 Mitsubishi Electric Research Laboratories, Inc. Method and system for computing reference signals for machines with redundant positioning
WO2016116896A1 (en) * 2015-01-24 2016-07-28 Abb Technology Ltd. A method for controlling a process plant using transition data
CN104834285B (zh) * 2015-03-30 2018-01-12 福州大学 对角递归神经网络控制器在多平台中的实现方法
CN104950681A (zh) * 2015-06-25 2015-09-30 安徽工业大学 一种石灰窑燃烧过程的模糊预测控制***及其控制方法
US9938908B2 (en) 2016-06-14 2018-04-10 GM Global Technology Operations LLC System and method for predicting a pedal position based on driver behavior and controlling one or more engine actuators based on the predicted pedal position
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
WO2019119142A1 (en) * 2017-12-22 2019-06-27 Mcmaster University Controlling operational parameters of a cooling unit
US11879656B2 (en) * 2018-04-04 2024-01-23 International Business Machines Corporation Initialization of radial base function neural network nodes for reinforcement learning incremental control system
CN108549236B (zh) * 2018-05-15 2021-06-04 浙江工业大学 计量泵电机转速信号滤波时延与网络传输时延补偿方法

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE4238037A1 (en) * 1992-11-11 1993-04-08 Voith Gmbh J M Paper web profile fault correction - uses mathematical model for current operation to eliminate residual faults on the lateral profile

Family Cites Families (47)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB1583545A (en) 1976-08-04 1981-01-28 Martin Sanchez J Control systems
US4054780A (en) * 1976-11-01 1977-10-18 Phillips Petroleum Company Gain-adaptive process control
DE69122313T2 (de) 1990-06-21 1997-03-20 Honeywell Inc Auf variablem Horizont basierende adaptive Steuerung mit Mitteln zur Minimierung der Betriebskosten
JP2539540B2 (ja) 1990-09-19 1996-10-02 株式会社日立製作所 プロセス制御装置
EP0524317A4 (en) 1991-02-08 1995-02-15 Tokyo Shibaura Electric Co Model forecasting controller
US5283729A (en) 1991-08-30 1994-02-01 Fisher-Rosemount Systems, Inc. Tuning arrangement for turning the control parameters of a controller
US5353207A (en) 1992-06-10 1994-10-04 Pavilion Technologies, Inc. Residual activation neural network
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
US5740033A (en) 1992-10-13 1998-04-14 The Dow Chemical Company Model predictive controller
US5351184A (en) 1993-01-26 1994-09-27 Honeywell Inc. Method of multivariable predictive control utilizing range control
CA2157198A1 (en) 1993-03-02 1994-09-15 James David Keeler Method and apparatus for analyzing a neural network within desired operating parameter constraints
US5825646A (en) 1993-03-02 1998-10-20 Pavilion Technologies, Inc. Method and apparatus for determining the sensitivity of inputs to a neural network on output parameters
JPH06301406A (ja) 1993-04-14 1994-10-28 Toshiba Corp 階層型モデル予測制御システム
US5453925A (en) 1993-05-28 1995-09-26 Fisher Controls International, Inc. System and method for automatically tuning a process controller
US5594858A (en) 1993-07-29 1997-01-14 Fisher-Rosemount Systems, Inc. Uniform control template generating system and method for process control programming
US5386373A (en) 1993-08-05 1995-01-31 Pavilion Technologies, Inc. Virtual continuous emission monitoring system with sensor validation
US5539638A (en) 1993-08-05 1996-07-23 Pavilion Technologies, Inc. Virtual emissions monitor for automobile
US5408406A (en) 1993-10-07 1995-04-18 Honeywell Inc. Neural net based disturbance predictor for model predictive control
US5587897A (en) 1993-12-27 1996-12-24 Nec Corporation Optimization device
US5517424A (en) 1994-03-31 1996-05-14 Electric Power Research Institute, Inc. Steam turbine fuzzy logic cyclic control method and apparatus therefor
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
US5586221A (en) 1994-07-01 1996-12-17 Syracuse University Predictive control of rolling mills using neural network gauge estimation
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
US5704011A (en) 1994-11-01 1997-12-30 The Foxboro Company Method and apparatus for providing multivariable nonlinear control
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
US5682309A (en) 1995-04-28 1997-10-28 Exxon Chemical Patents Inc. Feedback method for controlling non-linear processes
US5680409A (en) 1995-08-11 1997-10-21 Fisher-Rosemount Systems, Inc. Method and apparatus for detecting and identifying faulty sensors in a process
US5873251A (en) 1995-09-13 1999-02-23 Kabushiki Kaisha Toshiba Plant operation control system
US5841652A (en) 1996-04-03 1998-11-24 Scap Europa, S.A. Adaptive-predictive control and optimization system
US5838563A (en) 1996-04-12 1998-11-17 Fisher-Rosemont Systems, Inc. System for configuring a process control environment
US6438430B1 (en) * 1996-05-06 2002-08-20 Pavilion Technologies, Inc. Kiln thermal and combustion control
US6493596B1 (en) * 1996-05-06 2002-12-10 Pavilion Technologies, Inc. Method and apparatus for controlling a non-linear mill
US5659467A (en) 1996-06-26 1997-08-19 Texas Instruments Incorporated Multiple model supervisor control system and method of operation
US6424872B1 (en) * 1996-08-23 2002-07-23 Fieldbus Foundation Block oriented control system
US5970430A (en) * 1996-10-04 1999-10-19 Fisher Controls International, Inc. Local device and process diagnostics in a process control network having distributed control functions
US5920478A (en) 1997-06-27 1999-07-06 Oakleaf Engineering, Inc. Multi-input multi-output generic non-interacting controller
US6453308B1 (en) * 1997-10-01 2002-09-17 Aspen Technology, Inc. Non-linear dynamic predictive device
US6215907B1 (en) 1998-06-26 2001-04-10 Fisher-Rosemont Systems, Inc. Recursive on-line wavelet data compression technique for use in data storage and communications
US6253113B1 (en) * 1998-08-20 2001-06-26 Honeywell International Inc Controllers that determine optimal tuning parameters for use in process control systems and methods of operating the same
US6269274B1 (en) 1998-09-09 2001-07-31 Honeywell International Inc System and method for balancing and distributing control algorithm processing load and real time plant control system employing the same
US6360131B1 (en) * 1998-10-16 2002-03-19 Cheng Model-free adaptive control for flexible production systems
US6298454B1 (en) 1999-02-22 2001-10-02 Fisher-Rosemount Systems, Inc. Diagnostics in a process control system
US6445963B1 (en) 1999-10-04 2002-09-03 Fisher Rosemount Systems, Inc. Integrated advanced control blocks in process control systems

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE4238037A1 (en) * 1992-11-11 1993-04-08 Voith Gmbh J M Paper web profile fault correction - uses mathematical model for current operation to eliminate residual faults on the lateral profile

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102013003570B4 (de) 2012-03-30 2018-03-22 Keihin Corporation Elektronische Regelvorrichtung

Also Published As

Publication number Publication date
HK1055475A1 (en) 2004-01-09
US20030149493A1 (en) 2003-08-07
JP2003295907A (ja) 2003-10-17
GB2386437B (en) 2005-11-09
HK1057785A1 (en) 2004-04-16
CN1438554A (zh) 2003-08-27
JP4194396B2 (ja) 2008-12-10
GB2386437A (en) 2003-09-17
US6901300B2 (en) 2005-05-31
DE10304902A1 (de) 2003-10-23
GB0302813D0 (en) 2003-03-12
CN1332275C (zh) 2007-08-15

Similar Documents

Publication Publication Date Title
DE10304902B4 (de) Anpassung von erweiterten Prozeßsteuerblöcken in Abhängigkeit von veränderlichen Prozeßverzögerungen
DE10048360B4 (de) Integrierte, fortschrittliche Steuerblöcke in Prozeßsteuersystemen
DE10127788B4 (de) Integrierte Optimalmodell-Vorhersagesteuerung in einem Prozeßsteuerungssystem
DE102004026979B4 (de) Vielfacheingabe- /Vielfachausgabe-Steuer-/Regelblöcke mit nichtlinearen Vorhersagefähigkeiten
DE10127790B4 (de) Adaptives Vorhersagemodell in einem Prozeßsteuerungssystem
DE10012258B4 (de) Selbst-Abstimmung in einer verteilten Prozeß-Regelumgebung
DE10049513B4 (de) Verfahren und System zum Ermitteln von Abstimmparametern für eine Prozesssteuereinrichtung aus einer Robustheitskarte
DE10362408B3 (de) Integrierte modellbasierte prädikative Steuerung und Optimierung innerhalb eines Prozesssteuerungssystems
DE2735012C2 (de)
DE102007017039B4 (de) Robuste Prozessmodellidentifikation bei modellbasierten Steuerungstechniken
DE102006045428B4 (de) Verfahren und System zur Steuerung eines Batch-Prozesses
DE10021698B4 (de) Auf einem einzelnen Computer realisierte integrierende Funktionalität für ein verteiltes Prozessregelsystem
DE112011101738T5 (de) Mehrstufiges Prozessmodellierungsverfahren
DE10341764A1 (de) Integrierte Modell-Vorhersagesteuerung und -Optimierung innerhalb eines Prozesssteuerungssystems
DE102020118259A1 (de) Echtzeitsteuerung unter verwendung der gerichteten vorhersage-simulation innerhalb eines steuerungssystems einer prozessanlage
DE102004042813A1 (de) Alarmmanagementsystem
DE10007972A1 (de) Diagnosevorrichtung und -verfahren in einem Prozeßsteuersystem
DE10341574A1 (de) Konfiguration und Betrachtungsanzeige für einen integrierten prädiktiven Modellsteuerungs- und Optimierungsfunktionsblock
DE10341762B4 (de) Handhabung der Realisierbarkeit von Beschränkungen und Grenzen in einem Optimierer für Prozesssteuerungssysteme
DE102011012710A1 (de) Schnelle Identifikation und Erzeugung von Prozessmodellen
DE10008020A1 (de) Diagnosevorrichtung in einem Prozeßsteuersystem, das Mehrgrößen-Regeltechniken verwendet
EP1530770A1 (de) Verfahren und vorrichtung zur prozessoptimierung
DE102004025876B4 (de) Vorrichtung und Verfahren zur Stapeleigenschaftsschätzung
DE68928609T2 (de) Fuzzy-Gerät
EP3542229B1 (de) Einrichtung und verfahren zur bestimmung der parameter einer regeleinrichtung

Legal Events

Date Code Title Description
8110 Request for examination paragraph 44
8125 Change of the main classification

Ipc: G05B 13/04 AFI20051017BHDE

R018 Grant decision by examination section/examining division
R020 Patent grant now final

Effective date: 20121214

R071 Expiry of right