DE10048360B4 - Integrierte, fortschrittliche Steuerblöcke in Prozeßsteuersystemen - Google Patents

Integrierte, fortschrittliche Steuerblöcke in Prozeßsteuersystemen Download PDF

Info

Publication number
DE10048360B4
DE10048360B4 DE10048360.7A DE10048360A DE10048360B4 DE 10048360 B4 DE10048360 B4 DE 10048360B4 DE 10048360 A DE10048360 A DE 10048360A DE 10048360 B4 DE10048360 B4 DE 10048360B4
Authority
DE
Germany
Prior art keywords
control
block
outputs
inputs
model
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
DE10048360.7A
Other languages
English (en)
Other versions
DE10048360A1 (de
Inventor
Terrence L. Blevins
Wilhelm K. Wojsznis
Dirk Thiele
Vasiliki Tzovla
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 DE10048360A1 publication Critical patent/DE10048360A1/de
Application granted granted Critical
Publication of DE10048360B4 publication Critical patent/DE10048360B4/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/0265Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric the criterion being a learning criterion
    • G05B13/0285Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric the criterion being a learning criterion using neural networks and fuzzy logic
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B11/00Automatic controllers
    • G05B11/01Automatic controllers electric
    • G05B11/32Automatic controllers electric with inputs from more than one sensing element; with outputs to more than one correcting element
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B13/00Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion
    • G05B13/02Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric
    • G05B13/04Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric involving the use of models or simulators
    • G05B13/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
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S706/00Data processing: artificial intelligence
    • Y10S706/902Application using ai with detail of the ai system
    • Y10S706/919Designing, planning, programming, CAD, CASE
    • Y10S706/92Simulation

Abstract

Prozess-Steuerung zur Steuerung eines Prozesses (58), umfassend: eine Vielzahl von Steuereingängen (IN1–IN3), die mit einer Vielzahl von Prozessausgängen verbunden sind, wobei jeder Steuereingang (IN1–IN3) ein Prozessausgangssignal von einem von der Vielzahl von Prozessausgängen empfängt; eine Vielzahl von Steuerausgängen (OUT1–OUT3), die mit einer Vielzahl von Prozesseingängen verbunden sind, wobei jeder Steuerausgang (OUT1–OUT3) ein Steuersignal an einen von der Vielzahl von Prozesseingängen (X1–X5) abgibt; einen Wellenformgenerator zum Erzeugen von Anregungswellenformen an jedem der Vielzahl von Steuerausgängen (IN1–IN3); eine Datensammeleinheit zum Sammeln von Daten, die Signalwerte an jedem der Vielzahl von Steuereingängen (IN1–IN3) darstellen, wenn der Wellenformgenerator die Anregungswellenformen an jedem der Vielzahl von Steuerausgängen (OUT1–OUT3) erzeugt; einen Steuerlogikparametergenerator, der die gesammelten Daten nutzt, um ein Prozessmodell für den Prozess (58) zu erzeugen, basierend darauf, wie jede der Steuereingänge auf die bei jeder der Vielzahl von Steuerausgängen erzeugten Anregungswellenformen antwortet, und Steuerlogikparameter gemäß des erzeugten Prozessmodells erzeugt; und eine Mehrfacheingabe-/Mehrfachausgabe-Steuerlogik, derart ausgebildet, vor der Erzeugung des Prozessmodells nicht konfiguriert zu sein und keine Steuerlogikparameter zu beinhalten und nach der Erzeugung der Steuerlogikparameter als modellvorhersagende Steuerung gemäß den Steuerlogikparameter konfiguriert zu sein, wobei die Prozess-Steuerung derart ausgebildet ist, ein Steuersignal an jedem der Vielzahl von Steuerausgängen zu erzeugen, basierend auf (i) der konfigurierten Mehrfacheingabe-/Mehrfachausgabe-Steuerlogik, und (ii) der Vielzahl von Prozessausgangssignalen, die an der Vielzahl von Steuereingängen empfangen wurden.

Description

  • Die vorliegende Erfindung betrifft allgemein Prozeßsteuersysteme und insbesondere die Verwendung von fortschrittlichen Steuerblöcken, wie etwa modellvorhersagenden und neuronalen Netzwerk-Steuerblöcken, in Prozeßsteuersystemen.
  • Prozeßsteuersysteme, wie verteilte oder skalierbare Prozeßsteuersysteme, die beispielsweise in chemischen Prozessen, in Erdölverarbeitungsprozessen oder anderen Prozessen verwendet werden, enthalten allgemein eine oder mehrere Prozeßsteuereinrichtungen, die miteinander und mit wenigstens einer Host- oder Bedienungsworkstation und mit einer oder mehreren Anlageneinrichtungen über analoge, digitale oder kombiniert analog-digitale Busverbindungen in Kommunikationsverbindung stehen. Die Anlageneinrichtungen, die beispielsweise Ventile, Ventilpositioniereinrichtungen, Schalter, Sensoren (wie zum Beispiel Temperatur-, Druck- und Durchflußmengensensoren) sein können, fuhren Steuerfunktionen im Prozeß aus, wie zum Beispiel Öffnen oder Schließen von Ventilen und das Messen von Prozeßparametern. Die Prozeßsteuereinrichtung empfängt Signale, die die Größen des Prozeßablaufes anzeigen, die von den Anlageneinrichtungen stammen, oder andere Informationen der Anlageneinrichtungen darstellen, verwendet diese Informationen zur Umsetzung eines Steuerprogramms und empfängt Steuersignale, die über die Busverbindungen zu den Anlageneinrichtungen geleitet werden, um den Betriebsablauf des Prozesses zu steuern bzw. zu regeln. Die Informationen von den Anlageneinrichtungen und der Steuereinrichtung sind üblicherweise einer oder mehreren Anwendungen, die von der Bedienungsworkstation ausgeführt werden, zugänglich, um es dem Bediener zu ermöglichen, jede gewünschte Funktion in Bezug auf den Prozeß auszuführen, so z. B. die Überwachung des Ist-Zustandes des Prozesses, Modifizierung des Prozeßablaufes, etc.
  • In der Vergangenheit wurden herkömmliche Anlageneinrichtungen verwendet, um analoge (beispielsweise 4–20 Milliampere) Signale zu und von der Prozeßsteuereinrichtung über eine analoge Busverbindung oder analoge Kanäle zu leiten. Diese 4–20 Milliamperesignale waren in ihrer Art derart begrenzt, daß sie die von der Einrichtung gemachten Messungen anzeigten oder Steuersignale waren, die von der Steuereinrichtung erzeugt wurden, um den Betrieb der Einrichtung zu steuern. Jedoch wurden ungefähr in der letzten Dekade intelligente Anlageneinrichtungen mit einem Mikroprozessor und einem Speicher in der Prozeßsteuerungsindustrie vorherrschend. Zusatzlich zur Ausführung einer Primärfunktion im Prozeß speichern die intelligenten Anlageneinrichtungen zu der Einrichtung gehörende Daten, kommunizieren mit der Steuereinrichtung und/oder anderen Einrichtungen in einem digitalen oder kombinierten digitalen und analogen Format und fuhren weitere Aufgaben aus, wie beispielsweise Selbstkalibrierung, Identifikation, Diagnose und dergleichen. Eine Anzahl standardisierter und offener intelligenter Einrichtungskommunikationsprotokolle, wie zum Beispiel das HART®-, PROFIBUS®-, WORLDFIP®-, Device-Net®- und CAN-Protokoll, wurden entwickelt, um es intelligenten Anlageneinrichtungen, die von verschiedenen Herstellern erzeugt wurden, zu ermöglichen, im gleichen Prozeßsteuernetz miteinander verwendet zu werden.
  • Desweiteren gab es in der Prozeßsteuerungsindustrie die Tendenz, die Prozeßsteuerfunktionen zu dezentralisieren. Zum Beispiel verwendet das voll digitalisierte Zweileitungs-Busverbindungsprotokoll, das von der Fieldbus Foundation propagiert wurde und als FOUNDATIONTM Fieldbus bekannt ist (nachfolgend ”Fieldbus” genannt), Protokoll-Funktionsblöcke, die in unterschiedlichen Anlageneinrichtungen angeordnet sind, um Steueraufgaben auszuführen, die vorher in einer zentralisierten Steuereinrichtung ausgeführt wurden. Im Besonderen ist jede Fieldbus-Anlageneinrichtung in der Lage, einen oder mehrere Funktionsblöcke einzubeziehen und anzusteuern, von denen jeder Eingangssignale von anderen Funktionsblöcken empfängt und/oder Ausgangssignale liefert (sei es in der gleichen Einrichtung oder in anderen Einrichtungen). Jeder Funktionsblock führt Prozeßsteuerbefehle, wie zum Beispiel Messung oder Erfassung eines Prozeßparameters, Steuerung einer Einrichtung oder Durchführung eines Steuerbefehls, wie zum Beispiel Umsetzung einer proportional derivativ integralen Steuerroutine (PID), aus. Die verschiedenen Funktionsblöcke in einem Prozeßsteuersystem sind derart ausgelegt, daß sie miteinander kommunizieren (z. B. über eine Busverbindung), um eine oder mehrere Prozeßsteuerschleifen bzw. Regelkreise zu bilden, deren individuelle Operationen über den ganzen Prozeß verteilt und somit dezentralisiert sind.
  • Prozeßsteuereinrichtungen sind typischerweise dazu programmiert, verschiedene Algorithmen, Subroutinen oder Steuerschleifen (die alle Steuerroutinen sind) für jede einer Anzahl von verschiedenen Schleifen, die zu dem Prozeß definiert oder in ihm enthalten sind, wie zum Beispiel Durchfluß-Steuerschleifen, Temperatur-Steuerschleifen, Druck-Steuerschleifen etc. auszuführen. Im allgemeinen enthält jede derartige Steuerschleife einen oder mehrere Eingangssignalblöcke, wie zum Beispiel einen analogen Eingabefunktionsblock (AI), einen Einzelausgabesteuerblock, wie zum Beispiel einen proportional integral derivativen Steuerfunktionsblock (PID), oder einen Fuzzy-Logik-Steuerfunktionsblock, und einen Einzelausgabeblock, wie zum Beispiel einen analogen Ausgabefunktionsblock (AO). Diese Steuerschleifen führen typischerweise Einzeleingabe-/Einzelausgabesteuerfunktionen aus, da der Steuerblock ein einzelnes Ausgangssignal erzeugt, um ein einzelnes Prozeßeingangssignal zu steuern, wie zum Beispiel eine Ventilposition oder dergleichen. Jedoch ist in bestimmten Fällen die Verwendung einer Anzahl von unabhängig arbeitenden Einzeleingabe-/Einzelausgabesteuerschleifen nicht sehr effektiv, da die zu steuernden Prozeßgrößen von mehr als einem einzelnen Prozeßeingangssignal beeinflußt sind und jedes Prozeßeingangssignal den Zustand vieler Prozeßausgangssignale tatsächlich beeinflußt. Als Beispiel hierfür kann ein Prozeß gewählt werden, bei dem ein Tank über zwei Einläufe gefüllt und über einen einzelnen Auslauf geleert wird, wobei die Zu- und Abläufe von verschiedenen Ventilen gesteuert werden und wobei die Temperatur, der Druck und der Durchsatz im Tank gesteuert werden, um die gewünschten Werte zu erreichen. Wie oben beschrieben kann die Steuerung des Durchsatzes, der Temperatur und des Drucks im Tank mit einer getrennten Durchsatzsteuerschleife, einer getrennten Temperatursteuerschleife und einer getrennten Drucksteuerschleife ausgeführt werden. Jedoch kann bei dieser Anordnung die Bedienung der Temperatursteuerschleife mit dem Ändern der Einstellung eines der Einlaßventile zur Steuerung der Temperatur im Tank verursachen, daß der Druck im Tank ansteigt, was zum Beispiel die Drucksteuerschleife veranlaßt, das Auslaßventil zu öffnen und den Druck zu erniedrigen. Dies kann die Durchsatzsteuerschleife dazu veranlassen, eines der Einlaßventile zu schließen und dadurch die Temperatur zu beeinflussen und zu verursachen, daß die Temperatursteuerschleife eine weitere Maßnahme vornimmt. Wie aus diesem Beispiel ersichtlich, verursachen die Einzeleingabe-/Einzelausgabesteuerschleifen, daß die Prozeßausgangssignale (in diesem Fall Durchsatz, Temperatur und Druck) schwanken, ohne jemals einen Gleichgewichtszustand zu erreichen, was unerwünscht ist.
  • Modellvorhersagende Steuerungen oder andere Arten von fortschrittlichen Steuerungen wurden in der Vergangenheit verwendet, um derartige Vorgänge zu steuern. Im allgemeinen ist eine modellvorhersagende Steuerung eine Mehrfacheingabe-/Mehrfachausgabesteuerstrategie, bei der die Auswirkung der Änderung von jeweils einer Anzahl von Prozeßeingangssignalen auf jeweils eine Anzahl von Prozeßausgangssignalen gemessen wird und diese gemessenen Reaktionen verwendet werden, um ein Modell des Prozesses zu erzeugen. Das Modell des Prozesses wird mathematisch invertiert und als Mehrfacheingabe-/Mehrfachausgabesteuereinrichtung verwendet, um die Prozeßausgangssignale auf der Grundlage der Änderungen der Prozeßeingangssignale zu steuern. In einigen Fällen umfaßt das Prozeßmodell eine Prozeßausgangssignalreaktionskurve für jedes Prozeßeingangssignal und diese Kurven können auf der Grundlage einer Reihe von beispielsweise pseudo-zufälligen Schrittänderungen erzeugt werden, die für jedes der Prozeßeingangssignale erzeugt werden. Diese Reaktionskurven können in bekannter Weise dazu verwendet werden, den Prozeß zu modellieren. Die modellvorhersagende Steuerung ist im Stand der Technik bekannt und daher werden ihre Eigenheiten hier nicht beschrieben. Die modellvorhersagende Steuerung ist allgemein in Qin, S. Joe und Thomas A. Badgwell, ”An Overview of Industrial Model Predictive Control Technology”, AIChE Conference, 1996, beschrieben.
  • In der Vergangenheit erforderte die Schaffung einer modellvorhersagenden Steuerung und die Einbindung dieser Steuerung in einem Prozeßsteuernetz eine erhebliche Zeitdauer und Anstrengungen und konnte extrem teuer sein. Normalerweise wurde zur Schaffung einer modellvorhersagenden Steuerung für einen bestimmten Prozeß ein Prozeßexperte, typischerweise ein externer Berater, beschäftigt, der zu der Anlage kam und sie oder die Prozeßbedienung überwachte. Nach der Auswahl der geeigneten Prozeßeingangs- und Ausgangssignale für die modellvorhersagende Steuerung saß der Experte im Kontrollraum und wies den Bediener an, eine Reihe von gestuften Eingangssignalwellenformen an jeden der ausgewählten Prozeßeingänge zu leiten und die Auswirkungen jedes dieser Eingangssignale auf jedes der ausgewählten Prozeßausgangssignale zu messen. Nach Sammlung all dieser Prozeßdaten ubermittelte der Experte im allgemeinen die gesammelten Daten an ein nicht angeschlossenes System. Dort führte der Experte eine erste Routine durch, um die gesammelten Daten durchzusehen, um schlechte Daten auszusondern, wie beispielsweise Daten, die gesammelt wurden, als der Prozeß nicht normal ablief, beendet wurde oder bei welchen ein anderer Fehler vorhanden war, der verhinderte, daß die gesammelten Daten den normalen Ablauf des Prozesses darstellen. Das nicht angeschlossene System führte dann eine zweite Routine durch, die die kontrollierten Daten verwendete, um ein Modell des Prozesses zu erzeugen. Danach wurde das Modell des Prozesses invertiert oder in anderer bekannter Weise bearbeitet, um eine modellvorhersagende Steuereinrichtung fur den Prozeß zu erhalten. Nachdem die modellvorhersagende Steuereinrichtung erzeugt war, mußte sie in das Prozeßsteuersystem eingefügt werden, was im allgemeinen bedeutete, daß ein Prozeßingenieur das Steuerprogramm bereits in das Steuersystem zu programmieren hatte, um jedes der bestimmten Steuereingangs- sowie -ausgangssignale der modellvorhersagenden Steuereinrichtung zuzuführen, so daß die modellvorhersagende Steuereinrichtung jedes der Steuerausgangssignale sowie Steuereingangssignale an den geeigneten Ort im Steuersystem leiten konnte, um die Steuerung durchzuführen. Obwohl einige Händler die gleichen Bezeichnungen für die modellvorhersagenden Steuereingangs- und -ausgangssignale wie in der Prozeßsteuerroutine oder im Prozeßsteuersystem verwendeten, war es in einigen Fallen notwendig, die Eingangs- und Ausgangssignale der modellvorhersagenden Steuerung an die Prozeßeingänge und -ausgänge gemäß der Definiton im Prozeßsteuersystem anzupassen. Auf jeden Fall konnte der Schritt des Einbeziehens einer modellvorhersagenden Steuerung in ein Prozeßsteuersystem eine erhebliche Programmierarbeit erfordern.
  • Obwohl nach dem Stand der Technik allgemein bekannt, ist daher das Erzeugen eines Prozeßmodells aus den gesammelten Daten, das Erzeugen einer modellvorhersagenden Steuerung und das Einbeziehen dieser Steuerung in einen Prozeß langwierig und erfordert im allgemeinen das Hinzuziehen eines Experten und kann sehr teuer sein. Tatsächlich kann es mehrere Monate dauern und hunderttausende Dollar kosten, eine einzelne modellvorhersagende Steuerung für einen Prozeß zu erzeugen. Zum Nachteil des Prozeßbedieners können Änderungen im Prozeß, wie etwa die durch Alterung der Prozeßeinrichtungen verursachten, dafur verantwortlich sein, daß die vorhandene modellvorhersagende Steuerung obsolet wird oder nicht mehr an den Prozeß angepaßt ist, was bedeutet, daß der gesamte Vorgang wiederholt werden muß, um eine neue modellvorhersagende Steuerung zu erzeugen.
  • Da ferner die modellvorhersagende Steuerung typischerweise von einem nicht angeschlossenen System erzeugt wurde, war diese Steuerung im allgemeinen nicht in der gleichen Weise wie Einzelschleifen- oder andere Steuerroutinen, die von dem Steuersystem ausgeführt werden, in das Prozeßsteuersystem integriert und erforderte daher das Erstellen von speziellen grafischen Darstellungen, damit der Anwender oder Bediener den Zustand und Betrieb der modellvorhersagenden Steuerung betrachten konnte. Daher war es schwierig, modellvorhersagende Steuerungen in Prozeßsteuersysteme, wie zum Beispiel das- von Fisher-Rosemount Systems Inc. vertriebene DeltaVTM-Steuersystem, einzubeziehen, die eine Prozeßsteuerungsanzeigeeinrichtung haben, die in den Betriebsablauf der Steuerblöcke oder Steuerschleifen in der Steuereinrichtung integriert ist. Tatsächlich liefert das DeltaVTM-System verschiedene Ansichten, wie für einen Ingenieur, einen Bediener oder dergleichen, die den Betrieb des Prozesses einem Anwender darstellen. Einmal installiert, werden diese Ansichten durch den Betriebsablauf der Funktionsblöcke, die beispielsweise in der Prozeßsteuerung ausgeführt werden, automatisch auf den neuesten Stand gebracht. Um jedoch eine Ansicht oder eine andere Informationsbildschirmdarstellung für eine modellvorhersagende Steuerung hinzuzufügen, die von einem anderen nicht angeschlossenen System entworfen wurde, war es notwendig, spezielle grafische Anzeigen zu erzeugen, und zwar üblicherweise in einem anderen Format als dem von dem DeltaVTM-System verwendeten.
  • Die Druckschrift WO 97/42553 A1 beschreibt ein Verfahren zum Modellieren von dynamischen und stationären Prozessen für die Vorhersage, Steuerung und Optimierung. Hierzu werden ein unabhängiges statisches Modell und ein unabhängiges dynamisches Modell verwendet.
  • Die Druckschrift WO 96/34324 A1 erläutert ein Feedback Verfahren zum Steuern eines nichtlinearen Prozesses. Hierbei verwendet ein Prozessor Daten zum Beschreiben eines Prozessmodels, wobei vorhergesagte Werte für eine Steuerungsvariable bereitgestellt werden.
  • Die Druckschrift DE 69409250 T2 beschreibt einen Störungsprädiktor auf der Basis eines neuronalen Netzes zur modellprädiktiven Regelung.
  • Die Druckschrift US 5477449 A bezieht sich auf ein hierarchisches modellvorhersagendes Steuerungssystem, das ein dezentralisiertes Steuersystem mit zahlreichen PID Reglern und einem modellvorhersagendem Steuermittel umfasst.
  • Die Druckschrift US 5920478 A beschreibt eine Multi-Input Multi-Output Steuerung, die als multivariable Steuerung mit adaptiven Eigenschaften konfiguriert ist.
  • Die Druckschrift JP 2954660 B2 bezieht sich auf eine modellvorhersagende Steuerung, die ein dynamisches Modelleinschätzungsmittel bereitstellt.
  • Während die zuvor genannten Probleme für modellvorhersagende Steuerungen bestehen, bestehen die gleichen oder ähnliche Probleme in der Entwicklung und beim Gebrauch anderer fortschrittlicher Mehrfacheingabe-/Mehrfachausgabesteuerblöcke oder -systeme, wie etwa modellbildende Systeme oder Steuersysteme mit neuronalen Netzwerken oder Fuzzy-Logik-Steuerungen mit mehreren Variablen, Echtzeitoptimierungssysteme und dergleichen.
  • Es ist Aufgabe der Erfindung, ein Prozeßsteuersystem mit fortschrittlichen Steuerblöcken zu schaffen, bei dem die nach dem Stand der Technik auftretenden Probleme vermieden werden.
  • Die Lösung der Aufgabe ergibt sich aus den Patentansprüchen. Unteransprüche beziehen sich auf bevorzugte Ausführungsformen der Erfindung.
  • Gemäß einem Aspekt der Erfindung setzt ein fortschrittlicher Steuerblock Mehrfacheingabe-/Mehrfachausgabesteuerfunktionen, wie zum Beispiel modellvorhersagende Steuerung, Modellbildung oder Steuerung in einem neuronalen Netzwerk, und dergleichen, in einem Prozeßsteuersystem in einer Weise um, bei der die Integration in die implementierten Steuerblöcke unter Verwendung eines Steuerparadigmas, wie zum Beispiel eines Fieldbus-Paradigmas, erfolgt. Der fortschrittliche Steuerblock kann durch Erstellen eines Steuerblocks begonnen werden, der die gewünschten Eingänge und Ausgänge hat, die mit den jeweiligen Prozeßeingängen und -ausgängen verbunden werden um einen Prozeß zu steuern. Der Steuerblock kann so ausgelegt sein, daß er bestimmungsgemäß schließlich beispielsweise eine vollständige modellvorhersagende Steuereinrichtung beinhaltet, hat jedoch anfangs eine Datensammelroutine und einen Wellenformgenerator, die ihm zugeordnet sind. Wenn gewünscht, kann der Steuerblock eine Steuerlogik haben, die nicht abgestimmt ist oder anderweitig nicht entwickelt ist, da dieser Logik Abstimmparameter, Matrix-Koeffizienten oder andere Steuerparameter fehlen, die zur Implementierung erforderlich sind. Der Steuerblock ist in dem Prozeßsteuersystem angeordnet, wobei die definierten Ein- und Ausgänge in dem Steuersystem in der Weise in Kommunikationsverbindung verbunden sind, wie die Ein- und Ausgange verbunden wären, wenn der fortschrittliche Steuerblock verwendet würde, um den Prozeß zu steuern. Während eines Testlaufs regt der Steuerblock systematisch jeden der Prozeßeingänge über die Ausgangssignale des Steuerblocks unter Verwendung von Wellenformen an, die vom Wellenformgenerator erzeugt werden, der speziell für die Verwendung bei der Entwicklung eines Prozeßmodells gestaltet ist. Dann koordiniert der Steuerblock uber die Steuerblockeingänge die Sammlung der Daten, die die Reaktion jedes der Prozeßausgangssignale auf jede der erzeugten Wellenformen, die an jeden der Prozeßeingänge geleitet wurden, darstellen. Diese Daten konnen zum Beispiel zur Speicherung an einen Archivdatenspeicher geleitet werden.
  • Nachdem ausreichend Daten gesammelt wurden, wird ein Ablauf zur Prozeßmodellierung durchgeführt, bei dem ein Prozeßmodell beispielsweise unter Verwendung einer Routine zur Bildung eines Prozeßmodells für eine modellvorhersagende Steuereinrichtung aus den gesammelten Daten gebildet wird. Danach wird eine Routine zur Bestimmung der Logikparameter der fortschrittlichen Steuerblöcke, zum Bilden und Entwickeln der von der Steuerlogik benötigten Parameter angewendet, um den Prozeß zu steuern. Die Steuerlogikparameter und, wenn benötigt, das Prozeßmodell werden dann in den Steuerblock heruntergeladen, um das Erstellen des fortschrittlichen Steuerblocks zu vervollständigen, so daß der fortschrittliche Steuerblock, mit den Parametern der fortschrittlichen Steuerlogik und dem Prozeßmodell darin, zur Steuerung des Prozesses verwendet werden kann.
  • Der fortschrittliche Steuerblock kann im gleichen Format wie oder den gleichen Programmierparadigmen wie andere Steuerblöcke in dem Prozeßsteuersystem entsprechend entworfen werden und kann daher die gleichen grafischen Abbildungen unterstützen, die auch von anderen Blöcken (oder Elementen) in dem Prozeßsteuerprogramm unterstützt werden. Daher kann der fortschrittliche Steuerblock eine oder mehrere grafische Abbildungen haben, die einem oder mehreren Nutzern angezeigt werden, und er kann während des Betriebs des fortschrittlichen Steuerblocks Daten an diese Abbildungen leiten.
  • Desweiteren kann das Prozeßmodell, das durch den Prozeßmodellierungsvorgang erzeugt wurde, dazu verwendet werden, den Ablauf des Prozesses zu simulieren und/oder den Dialog des Prozesses mit dem fortschrittlichen Steuerblock zu simulieren. In einem Fall kann ein Prozeßsimulationsblock aus dem bestimmten Prozeßmodell gebildet und in Kommunikationsverbindung mit dem erzeugten fortschrittlichen Steuerblock gebracht werden, um den Betrieb des fortschrittlichen Steuerblocks zu testen, bevor der fortschrittliche Steuerblock verwendet wird, um einen tatsächlichen Prozeß zu steuern. In einem anderen Fall kann ein Prozeßsimulationsblock, der unter Verwendung einer geänderten Version des bestimmten Prozeßmodells erzeugt wurde, dazu verwendet werden, die Alterung oder andere Änderungen innerhalb des Prozesses wiederzugeben. Dieser Simulationsblock kann in Kommunikationsverbindung mit dem fortschrittlichen Steuerblock gebracht werden, um den Betrieb des fortschrittlichen Steuerblocks bei der Anwesenheit von Änderungen im Prozeß zu simulieren, um damit die Leistung des fortschrittlichen Steuerblocks in der Anwesenheit von Abweichungen vom Prozeßmodell zu bestimmen. In einem weiteren Fall kann ein Simulationsblock, der aus dem Prozeßmodell entwickelt ist, in Verbindung mit dem Prozeß betrieben und dazu verwendet werden, virtuelle Prozeßausgangssignale zu erzeugen, die als Eingangssignale für den fortschrittlichen Steuerblock verwendet werden, wenn zum Beispiel ein Sensor versagt, der die Messwerte eines tatsächlichen Prozeßausgangssignals erfaßt. Die simulierten Prozeßausgangssignale können auch mit den tatsächlichen Prozeßausgangssignalen verglichen werden, um den Grad der Abweichung zwischen dem Prozeß und dem Prozeßmodell, das zur Erzeugung des fortschrittlichen Steuerblocks verwendet wurde, zu bestimmen, das heißt die Abweichung zwischen Prozeß und Prozeßmodell.
  • Nachfolgend wird eine Ausführungsform der Erfindung anhand der Zeichnung näher beschrieben.
  • 1 zeigt ein Blockdiagramm/schematisches Diagramm eines Prozeßsteuersystems, in dem ein fortschrittlicher Steuerblock erzeugt und verwendet werden kann;
  • 2 ist ein Flußdiagramm, das den Betrieb und die Erzeugung eines fortschrittlichen Steuerblocks im Prozeßsteuersystem von 1 zeigt;
  • 3 ist ein Blockdiagramm eines modellvorhersagenden Steuerblocks, der zur Steuerung eines Prozesses in eine Prozeßsteuerroutine eingebunden ist;
  • 4A und 4B sind Blockdiagramme eines modellvorhersagenden Steuerfunktionsblocks, der zur Koordinierung einer bestehenden Steuerstrategie mit Funktionsblöcken in einer Prozeßsteuerroutine verbunden ist;
  • 5 ist ein Blockdiagramm eines modellvorhersagenden Steuerfunktionsblocks, der zur Koordinierung von Einzelschleifen-Steuerroutinen mit Funktionsblöcken in einer Prozeßsteuerroutineverbunden ist;
  • 5 zeigt ein Beispiel für eine Bildschirmanzeige, die von einem prozeßmodellierenden Tool zur Entwicklung eines fortschrittlichen Steuerblocks erzeugt wird;
  • 7 ist ein Blockdiagramm/schematisches Diagramm eines Teils des Prozeßsteuersystems aus 1, wobei die mit einem fortschrittlichen Steuerblock verbundenen grafischen Ansichten verdeutlicht sind;
  • 8 zeigt ein Blockdiagramm eines modellvorhersagenden Steuerblocks, der mit einem Prozeßsimulationsblock verbunden ist;
  • 9 zeigt ein Beispiel für eine Bildschirmanzeige, die von einem prozeßmodellierenden Tool erzeugt wird, das zur Entwicklung eines fortschrittlichen Steuerblocks oder zur Entwicklung eines Prozeßsimulationsblocks verwendet wird;
  • 10 ist eine beispielhafte Bildschirmanzeige, die von einem prozeßmodellierenden Tool erzeugt wird, das zur Entwicklung eines fortschrittlichen Steuerblocks oder zur Entwicklung eines Prozeßsimulationsblocks verwendet wird; und
  • 11 zeigt ein Blockdiagramm eines modellvorhersagenden Steuerblocks, der sowohl mit einem Prozeßblock als auch einem Prozeßsimulationsblock verbunden ist, der den Betrieb des Prozesses simuliert, um virtuelle Prozeßausgangssignale zu erzeugen.
  • 1 zeigt ein Prozeßsteuersystem 10, das eine Prozeßsteuereinrichtung 11 enthalt, die mit einem Archivspeicher 12 und mit einer oder mehreren Host-Workstations oder Computern 13 (die jede Art von Personal Computer, Workstation etc. sein können) verbunden ist, von welchen jeder einen Anzeigebildschirm 14 hat. Die Steuereinrichtung 11 ist ferner mit Anlageneinrichtungen 15 bis 22 über Eingabe-/Ausgabe-(I/O)-Karten 26 und 28 verbunden. Der Archivspeicher 12 kann jede gewunschte Art von Datensammeleinheit sein mit jeder gewünschten Art eines Speichers oder jeder gewünschten oder bekannten Software, Hardware oder Firmware zur Speicherung von Daten, und er kann, wie in 1 dargestellt, getrennt oder als Teil einer der Workstations 13 vorhanden sein. Die Steuereinrichtung 11, die zum Beispiel die von Fisher-Rosemount Systems Inc. vertriebene DeltaVTM-Steuereinrichtung sein kann, steht beispielsweise über eine Ethernet-Verbindung oder jedes andere gewünschte Kommunikationsnetzwerk in Kommunikationsverbindung mit den Hostcomputern 13 und dem Archivspeicher 12. Die Steuereinrichtung 11 steht auch in Kommunikationsverbindung mit den Anlageneinrichtungen 15 bis 22 unter Verwendung jeder gewünschten Hardware und Software, die beispielsweise den standardisierten 4–20 Milliampere-Einrichtungen oder einem beliebigen intelligenten Verbindungsprotokoll, wie z. B. dem Fieldbus-Protokoll, dem HART-Protokoll etc. zugehörig ist.
  • Die Anlageneinrichtungen 15 bis 22 können jede Art von Einrichtungen sein, wie zum Beispiel Sensoren, Ventile, Übertragungsmittel, Stelleinrichtungen etc., während die I/O-Karten 26 und 28 jede Art von I/O-Einrichtungen sein können, die zu den gewünschten Kommunikations- oder Steuerprotokollen passen. In der in 1 dargestellten Ausführungsform sind die Anlageneinrichtungen 15 bis 18 Standard- 4–20 Milliampere-Einrichtungen, die über analoge Kanäle mit der I/O-Karte 26 kommunizieren, während die Anlageneinrichtungen 19 bis 22 intelligente Einrichtungen sind, wie zum Beispiel Fieldbus-Anlageneinrichtungen, die über digitale Busverbindungen mit der I/O-Karte 28 unter Verwendung von Fieldbus-Protokollverbindungen kommunizieren. Allgemein ausgedrückt ist das Fieldbus-Protokoll ein volldigitales, serielles, Zwei-Wege-Kommunikationsprotokoll, das eine standardisierte physikalische Schnittstelle für eine Zweidrahtschleife oder Busverbindung, die mit den Anlageneinrichtungen verbunden ist, zur Verfügung stellt. Das Fieldbus-Protokoll bildet tatsächlich ein lokales Netzwerk für die Anlageneinrichtungen in einem Prozeß, das es diesen Anlageneinrichtungen ermöglicht, Prozeßsteuerfunktionen (unter Verwendung von Funktionsblöcken, die entsprechend dem Fieldbus-Protokoll definiert sind) an über die Prozeßanlage verteilten Orten auszuführen, und vor und nach der Ausführung der Prozeßsteuerfunktionen miteinander zu kommunizieren, um eine generelle Steuerstrategie umzusetzen. Es ist klar, daß, obwohl das Fieldbus-Protokoll ein relativ neues volldigitales Verbindungsprotokoll ist, das zur Verwendung in Prozeßsteuernetzwerken entwickelt wurde, dieses Protokoll im Stand der Technik bekannt ist und in zahlreichen Artikeln, Broschüren und Beschreibungen ausführlich beschrieben ist, die unter anderem von der Fieldbus Foundation, einer gemeinnutzigen Organisation mit Sitz in Austin, Texas, veröffentlicht, verteilt und zugänglich gemacht wurden. Daher wird das Fieldbus Kommunikationsprotokoll hier nicht im Detail beschrieben. Natürlich konnen die Anlageneinrichtungen 15 bis 22 auch jedem anderen gewünschten Standard oder Protokoll entsprechen, einschließlich jeglicher Standards oder Protokolle, die in Zukunft entwickelt werden.
  • Die Steuereinrichtung 11 implementiert ein oder mehrere Prozeßsteuerroutinen, die darin gespeicherte oder in anderer Weise damit verbundene Steuerschleifen bzw. Regelkreise enthalten, und kommuniziert zur Steuerung bzw. Regelung eines Prozesses in jeder gewünschten Weise mit den Einrichtungen 15 bis 22, dem Hostcomputer 13 und dem Archivspeicher 12. Es soll festgehalten werden, daß jede Steuerroutine oder jedes Steuerelement, das hier beschrieben wird, Teile haben kann, die von unterschiedlichen Steuereinrichtungen oder anderen Einrichtungen umgesetzt oder ausgeführt werden, wenn es gewünscht ist. Daher können die im Prozeßsteuersystem 10 umzusetzenden Steuerroutinen oder -elemente, die hier beschrieben sind, jede Form, einschließlich Software, Firmware, Hardware etc. annehmen. Für die Zwecke dieser Erfindung kann ein Prozeßsteuerelement jeder Teil oder Abschnitt eines Prozeßsteuersystems sein, einschließlich zum Beispiel einer Routine, eines Blocks oder eines Moduls, die auf jedem computerlesbaren Medium gespeichert sind. Steuerroutinen, die ein Modul oder irgendein Teil eines Steuervorgangs sein können, wie zum Beispiel eine Subroutine, Teile einer Subroutine (wie Zeilen des Codes) etc., können in jedem gewünschten Softwareformat umgesetzt werden, wie beispielsweise unter Verwendung von Leiterlogik, sequentieller Funktionsdiagramme, Funktionsblockdiagramme oder jeder anderen Programmiersprache oder Entwurfsparadigmen. Dementsprechend können die Steuerroutinen auf zum Beispiel einem oder mehreren EPROMs, EEPROMs, anwendungsspezifischen integrierten Schaltkreisen (ASICs) oder beliebigen anderen Hardware- oder Firmware-Elementen fest codiert sein. Desweiteren können die Steuerroutinen unter Verwendung beliebiger Entwurfstools gebildet sein, einschließlich grafischer Entwurfstools oder jeder anderen Art von Software/Hardware/Firmware-Programmier- oder -gestaltungstools. Daher kann die Steuereinrichtung 11 so konfiguriert sein, daß sie eine Steuerstrategie oder eine Steuerroutine in jeder gewünschten Weise umsetzt.
  • In einer Ausführungsform setzt die Steuereinrichtung 11 eine Steuerstrategie unter Verwendung von allgemein als Funktionsblöcke bezeichneten Elementen um, wobei jeder Funktionsblock ein Teil (zum Beispiel eine Subroutine) einer Gesamtsteuerroutine ist und zur Umsetzung von Prozeßsteuerschleifen im Prozeßsteuersystem 10 in Verbindung mit anderen Funktionsblöcken (über Kommunikationsverbindungen genannte Verbindungen) arbeitet. Funktionsblöcke führen typischerweise entweder eine Eingabefunktion aus, wie zum Beispiel eine, die mit einem Geber, einem Sensor oder einer anderen Einrichtung zur Messung eines Prozeßparameters verbunden ist, eine Steuerfunktion, wie zum Beispiel die, die mit einer Steuerroutine verbunden ist, die eine PID-, Fuzzy-Logik-Steuerung oder dergleichen ausführt, oder eine Ausgabefunktion, die den Betrieb einer Einrichtung steuert, wie zum Beispiel eines Ventils, um eine physikalische Funktion im Prozeßsteuersytem 10 auszuführen.
  • Selbstverständlich existieren Hybrid- und andere Arten von Funktionsblöcken. Funktionsblöcke können in der Steuereinrichtung 11 gespeichert und ausgeführt werden, was typischerweise der Fall ist, wenn diese Funktionsblöcke mit Standard 4–20 Milliampere-Einrichtungen und einigen Arten von intelligenten Anlageneinrichtungen, wie zum Beispiel HART-Einrichtungen, verwendet werden oder diesen zugehörig sind. Sie können auch in den Anlageneinrichtungen selbst gespeichert und umgesetzt werden, was bei Fieldbus-Einrichtungen der Fall sein kann. Wahrend die Beschreibung des Steuersystems hier unter Verwendung einer Funktionsblocksteuerstrategie erfolgt, konnen die Steuerstrategie oder die Steuerschleifen oder die Module auch unter Verwendung von anderen Normen, wie zum Beispiel der Leiter-Logik, sequentiellen Funktionsdiagrammen etc., oder unter Verwendung jeder anderen gewünschten Programmiersprache oder -paradigmen entworfen und umgesetzt werden.
  • Wie im vergrößerten Block 30 in 1 gezeigt, kann die Steuereinrichtung 11 eine Anzahl von Einzelschleifen-Steuerroutinen enthalten, die als Routinen 32 und 34 bezeichnet sind, und kann auf Wunsch eine oder mehrere fortschrittliche Steuerschleifen umsetzen, die als Steuerschleife 36 dargestellt ist. Jede der Schleifen wird üblicherweise als ein Steuermodul bezeichnet. Die Einzelschleifen-Steuerroutinen 32 und 34 sind so dargestellt, daß sie eine Signalschleifensteuerung ausführen unter Verwendung eines Einzeleingabe-/Einzelausgabe-Fuzzy-Logik-Steuerblocks und eines Einzeleingabe-/Einzelausgabe-PID-Steuerblocks, die mit geeigneten analogen Eingangs-(AI)- und analogen Ausgangs-(AO)-Funktionsblöcken verbunden sind, die mit Prozeßsteuereinrichtungen, wie zum Beispiel Ventilen, Meßeinrichtungen, wie zum Beispiel Temperatur- und Druckgebern, oder mit jeder anderen Einrichtung im Prozeßsteuersystem 10 verbunden sein können. Die fortschrittliche Steuerschleife 36 ist so dargestellt, daß sie einen fortschrittlichen Steuerblock 38 enthält, dessen Eingänge in Kommunikationsverbindung mit zahlreichen AI-Funktionsblöcken stehen und dessen Ausgänge in Kommunikationsverbindung mit zahlreichen AO-Funktionsblöcken stehen. Die Ein- und Ausgänge des Steuerblocks 38 können aber auch mit beliebigen gewunschten Funktionsblöcken oder Steuerelementen verbunden sein und andere Arten von Eingangssignalen erhalten und andere Arten von Steuerausgangssignalen liefern. Der fortschrittliche Steuerblock 38 kann jede Art von Mehrfacheingabe-/Mehrfachausgabesteuerblock sein, der zur Steuerung zweier oder mehrerer Prozeßausgangssignale verwendet wird, indem Steuersignale an zwei oder mehr Prozeßeingänge abgegeben werden. Während der fortschrittliche Steuerblock 38 im folgenden als ein modellvorhersagender Steuerblock (MPC) beschrieben wird, kann der fortschrittliche Steuerblock 38 auch jede andere Art von Mehrfacheingabe-/Mehrfachausgabeblock sein, wie zum Beispiel ein modellbildender Block oder Steuerblock in einem neuronalen Netzwerk, ein Fuzzy-Logik-Steuerblock mit mehreren Variablen, ein Echtzeit-Optimierungsblock etc. Es ist klar, daß die in 1 dargestellten Funktionsblöcke einschließlich des fortschrittlichen Steuerblocks 38 von der Steuereinrichtung 11 ausführbar sein oder alternativ dazu in jeder anderen Prozeßeinrichtung angeordnet und ausgeführt werden können, wie zum Beispiel einer der Workstations 13 oder sogar einer der Anlageneinrichtungen 19 bis 22.
  • Wie in 1 dargestellt, enthält eine der Workstations 13 ein Routine 40 zur Erzeugung eines fortschrittlichen Steuerblocks, die dazu verwendet wird, den fortschrittlichen Steuerblock 38 in einer im folgenden näher beschriebenen Weise zu erzeugen, zu laden und umzusetzen. Während die Routine 40 zur Erzeugung des fortschrittlichen Steuerblocks in einem Speicher in der Workstation gespeichert sein kann und von einem Prozessor darin ausführbar ist, kann die Routine (oder jeder Teil davon) zusätzlich oder alternativ dazu in jeder anderen Einrichtung im Prozeßsteuersystem 10 gespeichert und ausgeführt werden, wenn es erwünscht ist. Im allgemeinen beinhaltet die Routine 40 zur Erzeugung eines fortschrittlichen Steuerblocks eine Routine 42 zur Erzeugung eines Steuerblocks, die einen fortschrittlichen Steuerblock erzeugt und die diesen fortschrittlichen Steuerblock in das Prozeßsteuersystem einbindet, eine Routine 44 zur Prozeßmodellbildung, die ein Prozeßmodell für den Prozeß oder einen Teil davon auf der Grundlage der von dem fortschrittlichen Steuerblock erfaßten Daten erzeugt, und eine Routine 46 zur Erzeugung eines Steuerlogikparameters, die einen Steuerlogikparameter für den fortschrittlichen Steuerblock aus dem Prozeßmodell erzeugt und die diesen Steuerlogikparameter in den fortschrittlichen Steuerblock zur Steuerung des Prozesses speichert oder lädt. Es ist klar, daß die Routinen 42, 44 und 46 aus einer Reihe verschiedener Routinen bestehen können, wie zum Beispiel einer ersten Routine, die ein fortschrittliches Steuerelement mit Steuereingängen erzeugt, die dazu geeignet sind, Prozeßausgangssignale zu empfangen, und mit Steuerausgängen, die dazu geeignet sind, Steuersignale an Prozeßeingänge abzugeben, eine zweite Routine, die es einem Benutzer ermöglicht, das fortschrittliche Steuerelement mit der Prozeßsteuerroutine (die jede gewünschte Konfigurationsroutine sein kann) in Kommunikationsverbindung zu bringen, eine dritte Routine, die das fortschrittliche Steuerelement dazu verwendet, Anregungswellenformen an jeden der Prozeßeingänge abzugeben, eine vierte Routine, die das fortschrittliche Steuerelement dazu verwendet, Daten zu erfassen, die die Reaktion jedes Prozeßausgangs auf die wellenförmigen Anregungen wiederzugeben, eine fünfte Routine, die ein Prozeßmodell aus den gesammelten Daten erzeugt, eine sechste Routine, die aus dem Prozeßmodell fortschrittliche Steuerlogikparameter entwickelt, und eine siebte Routine, die die fortschrittliche Steuerlogik und, wenn notwendig, das Prozeßmodell in das fortschrittliche Steuerelement einbindet, um es dem fortschrittlichen Steuerelement zu ermöglichen, den Prozeß zu steuern.
  • In 2 stellt ein Flußdiagramm 50 die Schritte des Erzeugens und der Anwendung eines fortschrittlichen Steuerblocks, insbesondere eines MPC-Steuerblocks, in einem Prozeßsteuersystem, wie etwa dem Prozeßsteuersystem 10 aus 1, dar. Während das Flußdiagramm 50 aus 2 die Erzeugung eines MPC-Blocks oder -Moduls zeigt, können die gleichen oder ähnliche Schritte ausgeführt werden, um einen beliebigen anderen fortschrittlichen Steuerblock, wie zum Beispiel einen beliebigen Mehrfacheingabe-/Mehrfachausgabesteuerblock, wie etwa einen modellbildenden Block oder einen Steuerblock in einem neuronalen Netzwerk, einen Fuzzy-Logik-Steuerblock mit mehreren Variablen etc., zu erstellen und zu verwenden.
  • Zunächst wird zu einem bestimmten Zeitpunkt 52 eine Entscheidung getroffen, durch Umsetzung eines MPC-Ablaufes die Steuerung im Prozeßsteuersystem 10 vorzusehen oder zu verbessern. Die Entscheidung kann zu dem Zeitpunkt getroffen werden, zu dem das Prozeßsteuersystem erstmalig installiert wird, oder eine gewisse Zeit später, zum Beispiel wenn festgestellt wird, daß andere Steuerroutinen, wie etwa Einzelschleifensteuerroutinen, mangelhaft steuern. Zum Zeitpunkt 52 führt ein Bediener oder ein anderer Benutzer die Routine 40 zur Erzeugung eines MPC-Blocks aus, um damit zu beginnen, ein MPC-Modul oder eine Steuerschleife im Prozeßsteuersystem zu erzeugen. Als Teil dieses Prozesses wählt der Bediener die Prozeßeingänge, an die die Ausgänge des im Entstehen befindlichen MPC-Blocks angeschlossen werden sollen, und wählt die Prozeßausgänge, an die die Eingänge des im Entstehen befindlichen MPC-Blocks angeschlossen werden sollen. Während der MPC-Block jede Anzahl von Ein- und Ausgängen haben kann, hat jeder MPC-Block im wesentlichen drei Arten von Eingängen, darunter Eingänge für die geregelten Parameter, die die Prozeßvariablen oder -parameter sind, die auf einem Sollwert (oder innerhalb eines eingestellten Bereiches) zu halten sind, beschränkte Eingänge, die die Prozeßvariablen sind, die auf der Grundlage von beispielsweise physikalischen Beschränkungen des Prozesses auf einen bestimmten Grenzwert oder Wertebereich beschränkt sind und die vom MPC-Block nicht zwangsweise aus dem beschränkten Bereich oder Grenzwert gebracht werden dürfen, und Prozeßstörparametereingänge, die andere Prozeßvariable sind, von denen bekannt ist, daß, wenn sie geändert werden, Änderungen in den geregelten Parametern verursacht werden. Der MPC-Block verwendet die Prozeßstörparametereingänge zur Vorhersage von Änderungen der gesteuerten Parameter, das heißt der geregelten Prozeßausgänge, und zur Begrenzung der Auswirkungen dieser Änderungen, bevor sie auftreten. Weitere Eingänge können an dem MPC-Block vorgesehen sein, wie zum Beispiel Rückkopplungen von einer Einrichtung oder einem anderen Prozeßelement, das gesteuert wird, die es dem MPC-Steuerblock ermöglichen, eine effektivere Steuerung dieser Elemente auszuführen. In ähnlicher Weise können die Ausgänge des MPC-Blocks derart angeschlossen sein, daß jede gewünschte Prozeßvariable oder andere Prozeßeingangssignale, einschließlich Steuerschleifeneingangssignale, Einrichtungssteuereingaben etc. gesteuert werden können. Die Routine, die durch den Anschluß des MPC-Blocks an andere Steuerelemente entwickelt wurde, wird hier als MPC-Modul bezeichnet. Während der Benutzer einen MPC-Funktionsblock erzeugen kann, kann er auch einen ursprünglichen Funktionsblock aus einem Speicher, wie zum Beispiel einer Bibliothek von Funktionsblöcken, entnehmen und diesen Funktionsblock verwenden oder eine Instanz dieses Funktionsblocks zur Verwendung in dem Prozeßsteuersystem erzeugen. Entsprechend kann der Nutzer oder ein anderer Anwender einen Funktionsblock oder ein anderes Steuerelement in jeder gewünschten Weise vorsehen.
  • In Schritt 54 erzeugt der Bediener ein MPC-Modul mit einem MPC-Block (der noch nicht alle notwendigen Informationen hat, um eine modellvorhersagende Steuerung zu liefern) mit den angegebenen Ein- und Ausgängen, die in Kommunikationsverbindung mit dem Prozeßsteuersystem verbunden sind, und lädt den Block oder das Modul auf die geeignete Steuereinrichtung oder eine andere Einrichtung, die das MPC-Modul umsetzen wird. Als Teil dieses Vorgangs konfiguriert der Bediener das Prozeßsteuersystem 10 zur Umsetzung des MPC-Blocks, indem die Ausgänge des MPC-Blocks mit den geeigneten Prozeßeingängen in Kommunikationsverbindung gesetzt werden und indem die Eingänge des MPC-Blocks mit den geeigneten Prozeßausgängen in Kommunikationsverbindung gesetzt werden.
  • In 3 ist ein MPC-Block 56 dargestellt, der an einen Prozeß 58 angeschlossen ist. Der MPC-Block 56 ist ein 3 × 3 Steuerblock mit drei Eingängen IN1–IN3 und drei Ausgängen OUT1–OUT3, während der Prozeß 58 Eingänge X1–X5 und Ausgänge Y1–Y6 hat. Der MPC-Block 56 und der Prozeß 58 können auch jede andere Anzahl von Ein- und Ausgangen haben. Während der MPC-Block 56 im allgemeinen ein quadratischer Block sein kann, das heißt mit der gleichen Anzahl von Ein- und Ausgängen, ist diese Konfiguration nicht unbedingt notwendig und der MPC-Block 56 kann auch eine unterschiedliche Anzahl von Ein- und Ausgängen haben. Wie in 3 dargestellt schließt der Bediener die Prozeßausgänge Y1–Y3 jeweils an die MPC-Block-Eingänge IN1–IN3 in Kommunikationsverbindung an und schließt die MPC-Block-Ausgänge OUT1–OUT3 jeweils an die Prozeßeingänge X1–X3 in Kommunikationsverbindung an. Jeder der Ein- und Ausgange des Prozesses 58 kann selbstverständlich an andere Steuerschleifen oder an andere Elemente in anderen Steuerroutinen, die mit dem Steuerprozeßsystem 10 verbunden sind, angeschlossen werden, wie durch die gepunkteten Linien an den Prozeßein- und -ausgängen in 3 dargestellt. Im allgemeinen werden der MPC-Block 56 und andere Blocke, die Steuereingaben an den Prozeß 58 abgeben (wie durch die gepunkteten Linien an den Prozeßeingängen X1–X3 angedeutet), über Schalter einer beliebigen Art angeschlossen. Die Schalter sind durch Kästchen 59 in 3 dargestellt. Die Schalter 59 können Hardware- oder Softwareschalter sein. Wenn gewünscht können sie derart vorgesehen sein, daß unterschiedliche Steuereingangssignale an verschiedene Eingänge eines Funktionsblocks, wie etwa eines Fieldbus-Funktionsblocks geleitet werden, der dann zwischen dem Steuersignal des MPC-Blocks 56 und einem Steuersignal von einem anderen Funktionsblock, wie zum Beispiel einem PID-Funktionsblock, auf der Grundlage des Modus des Funktionsblocks, der die beiden Signale empfängt, auswählt.
  • Selbstverständlich kann der Bediener den MPC-Block 56 in jeder gewünschten Weise mit dem Prozeß 58 verbinden, und verwendet allgemein ausgedrückt das gleiche Steuerkonfigurations- oder Entwicklungsprogramm, das der Bediener verwendet, um andere Steuerschleifen, wie etwa Einzelschleifensteuerroutinen, im Prozeßsteuersystem 10 zu erstellen. Zum Beispiel kann der Benutzer jede gewünschte Grafikprogrammierroutine verwenden, um die Verbindungen zwischen dem MPC-Block 56 und den Prozeßein- und -ausgängen anzugeben. Auf diese Weise wird der MPC-Block 56 in gleicher Art wie andere Steuerblöcke, -elemente oder -routinen unterstützt, wodurch die Konfiguration und der Anschluß des MPC-Blocks 56 und die Unterstützung dieses Blocks im Steuersystem 10 sich nicht von der Konfiguration, Steuerung und Unterstützung anderer Blöcke im System unterscheiden. In einer Ausführungsform sind der MPC-Block 56 sowie die anderen Blöcke im Steuersystem 10 Funktionsblöcke, die gleich oder ähnlich wie Fieldbus-Funktionsblöcke gebildet sind. Bei dieser Ausführung kann der MPC-Block 56 die gleichen Arten von Ein- und Ausgängen etc. haben wie im Fieldbus-Protokoll angegeben oder vorgesehen, und ist in der Lage, von beispielsweise der Steuereinrichtung 11 unter Verwendung von Kommunikationsverbindungen, die gleich oder ähnlich den im Fieldbus-Protokoll angegebenen sind, umgesetzt zu werden. Ein Verfahren zur grafischen Erzeugung von Prozeßsteuerroutinen und Elementen davon ist in Dove et al., US-Patent Nr. 5,838,563 mit dem Titel ”System for Configuring a Process Control Environment” beschrieben. Es können auch andere Strategien zum Entwurf von Steuerschleifen oder Steuermodulen verwendet werden, einschließlich solcher, die andere Arten von Funktionsblöcken verwenden oder andere Routinen, Subroutinen oder Steuerelemente in einem Prozeßsteuerkonfigurationsparadigma verwenden.
  • Wenn ein Steuersystem auf der Grundlage der Verbindung von Funktionsblöcken verwendet wird, wie etwa solche, die durch das Fieldbus-Funktionsblockparadigma vorgesehen sind, kann der MPC-Block 56 direkt mit anderen Funktionsblöcken in der Prozeßsteuerroutine verbunden werden. Zum Beispiel kann der MPC-Block 56 mit Steuereinrichtungen, wie zum Beispiel Ventilen etc., direkt verbunden werden, indem ein Steuerausgang des MPC-Blocks 56 mit einem Ausgangsblock (wie zum Beispiel einem AO-Block) verbunden wird, der zu der zu steuernden Einrichtung gehört. Entsprechend kann der MPC-Block 56 Steuersignale an Funktionsblöcke in anderen Steuerschleifen, wie etwa an die Eingänge anderer Steuerfunktionsblöcke, abgeben, um den Betrieb dieser Steuerschleifen zu überwachen oder zu korrigieren.
  • 4A und 4B zeigen als Beispiel einen MPC-Funktionsblock 60 des Fieldbus-Typs, der mit anderen Funktionsblöcken des Fieldbus-Typs in einem Prozeßsteuersystem verbunden ist, um bestehende Strategien mit mehreren Variablen, die von Einzelschleifensteuerroutinen umgesetzt werden, zu koordinieren. Insbesondere hat der MPC-Funktionsblock 60 einen ersten Ausgang OUT1, der an den Eingang RCAS_IN (ferngesteuerte Kaskade) eines AO-Blocks 62 angeschlossen ist, der zu einem zu betätigenden Ventil gehört, und einen zweiten Ausgang OUT2, der an den Eingang RCAS_IN (ferngesteuerte Kaskade) eines PID-Funktionsblocks 64 angeschlossen ist. Desweiteren hat der MPC-Block 60 einen ersten Eingang I1 (der ein gesteuerter Parametereingang ist), der Signale von einem AI-Funktionsblock 66 erhält, einen zweiten Eingang I2 (der auch ein gesteuerter Parametereingang ist), der Signale von einem AI-Funktionsblock 68 in 4B erhält, und einen dritten Eingang (der ein Störparametereingang ist), der Signale von einem AI-Funktionsblock 70 erhält. Die AI-Funktionsblöcke 66, 68 und 70 können zu Anlageneinrichtungen, wie zum Beispiel Sensoren, gehören und von diesen gemessene Signale abgeben, die an die Steuerroutine über einen Geber oder andere Einrichtungen übertragen werden. Der MPC-Block 60 empfängt ferner Rückkopplungen an Eingängen BKCAL_IN1 und BKCAL_IN2 (Rückkalibrierungseingänge) von den ferngesteuerten Kaskadenausgängen (RCAS_OUT) des AO-Funktionsblocks 62 und des PID-Funktionsblocks 64 zur Verwendung bei der Bestimmung der Auswirkungen der Steuersignale, die vom MPC-Block 60 an die Funktionsblocke 62 und 64 geleitet werden. Der Ausgang des AI-Funktionsblocks 66 wird auch an einen Eingang eines PID-Funktionsblocks 72 abgegeben, der ein Steuersignal an den Kaskadeneingang (CAS_IN) des AO-Funktionsblocks 62 abgibt und ein Rückkopplungssignal vom Ausgang OUT des AO-Funktionsblocks 62 am BKCAL_IN-Eingang des PID-Funktionsblocks 72 empfängt, um damit das betätigte Ventil während des normalen Prozeßablaufs zu steuern, das heißt ohne den MPC-Betrieb. Entsprechend gibt der AO-Funktionsblock 68 sein Ausgangssignal, das ein Prozeßausgangssignal ist, an den Auto-Eingang eines PID-Funktionsblocks 74 ab, der ein Steuersignal an den Kaskadeneingang des PID-Funktionsblocks 64 leitet. Der PID-Funktionsblock 74 empfängt auch ein Rückkopplungssignal des PID-Funktionsblocks 64 am BKCAL_IN-Eingang des Funktionsblocks 74. Die Ein- und Ausgänge der Funktionsblöcke in 4A und 4B sowie in 5 sind dem Fieldbus-Protokoll entsprechend definiert und arbeiten entsprechend den Definitionen und Bestimmungen des Fieldbus-Protokolls.
  • Die Funktionsblöcke 66, 72 und 62 bilden eine erste Einzelschleifensteuerroutine, während die Funktionsblöcke 68, 74 und 64 eine zweite Einzelschleifensteuerroutine bilden, die beide wahrend des regulären oder automatischen Ablaufs des Prozesses arbeiten können, um eine Einzelschleifensteuerung zu erhalten. Der MPC-Block 60 kann jedoch die Steuerung des AO-Funktionsblocks 62 (und der zugehörigen Einrichtung) übernehmen sowie die Steuerung der Schleife, die zu dem PID-Funktionsblock 64 gehört, indem Steuereingangssignale an die ferngesteuerten Kaskadeneingänge des AO-Funktionsblocks 62 und des PID-Funktionsblocks 64 abgegeben werden. Dadurch arbeiten diese Blöcke im ferngesteuerten Modus (anstatt im automatischen Modus), und daher verwenden sie im Betrieb die Steuereingangssignale an den ferngesteuerten Eingängen anstatt an den Auto-Eingängen. Während des Betriebs im ferngesteuerten Modus ignorieren die Funktionsblöcke 62 und 64 die Eingangssignale der jeweiligen PID-Funktionsblocke 72 und 74. Auf diese Weise kann der MPC-Block 60 an die Blöcke 62 und 64 angeschlossen werden und steuert sie, wobei dies an- und abschaltbar ist. Wenn die Blocke 62 und 64 nicht durch den MPC-Funktionsblock 60 gesteuert werden, werden sie immer noch jeweils von den Blöcken 72 und 74 gesteuert, das heißt entsprechend einer Einzelschleifensteuerstrategie.
  • In gleicher Weise stellt 5 einen MPC-Funktionsblock 80 dar, der mit einer Prozeßsteuerroutine zur Koordinierung von Einzelschleifenroutinen verbunden ist. Insbesondere empfängt der MPC-Funktionsblock 80 gesteuerte Parametereingangssignale von den AI-Funktionsblöcken 82 und 84 und ein Störparametereingangssignal vom AI-Funktionsblock 86. Der MPC-Funktionsblock 80 liefert ein Steuerausgangssignal an einen AO-Funktionsblock 90, der zu einem betätigten Ventil gehört, und leitet ein Sollwertausgangssignal an den Kaskadeneingang (CAS_IN) eines PID-Funktionsblocks 92 in einer Steuerschleife 94. Der AO-Funktionsblock 90 und der PID-Funktionsblock 92 liefern Rückkalibrierungsausgangssignale an die Rückkalibrierungseingänge des MPC-Funktionsblocks 80. Die Steuerschleife 94 enthält ferner einen AI-Funktionsblock 96, der ein Steuerparametereingangssignal (das heißt ein Prozeßausgangssignal) an den Auto-Eingang des PID-Funktionsblocks 92 abgibt, der dann ein Steuerausgangssignal an den AO-Funktionsblock 98 leitet, der zum Beispiel zu einem anderen Ventil oder einer anderen Einrichtung gehört. Der AO-Funktionsblock 98 gibt eine Rückkopplung an den Rückkalibrierungseingang des PID-Funktionsblocks 92 ab. In der Anordnung in 5 steuert der MPC-Funktionsblock 80 das Ventil, das zu dem AO-Funktionsblock 90 gehört, direkt und steuert den Betrieb der Schleife 94 durch Beeinflussung des Sollwerts dieser Schleife. Jedoch arbeitet die Schleife 94 weiter, wenn der MPC-Funktionsblock 80 in Betrieb ist. Daher steuert der MPC-Funktionsblock 80 die Einrichtung, die zu dem AO-Funktionsblock 98 gehört, indirekt, steuert aber die Steuerschleife 94 direkt. Die MPC-Blocke können selbstverständlich in einer Prozeßsteuerroutine in jeder anderen gewunschten Weise zur direkten oder indirekten Steuerung von Einrichtungen oder anderen Steuerelementen verbunden sein. Desweiteren können die Steuerroutinen oder -module unter Verwendung jeder Technik, einschließlich grafischer oder nichtgrafischer Programmiertechniken, entwickelt werden.
  • Es versteht sich daher, daß die Prozeßeingaben X1 bis X3, an die die Ausgänge des MPC-Steuerblocks 56 in 3 angeschlossen sind, jede Art von gewunschten Prozeßeingaben sein können, einschließlich Eingangssignalen für Steuerschleifen, die in bestehenden Steuerstrategien festgelegt sind, oder Eingangssignalen für Ventile oder andere Einrichtungen des Prozesses. Ebenso können die Ausgangssignale Y1 bis Y3, die an die Eingänge des MPC-Blocks 56 angeschlossen sind, jede Art von gewünschten Prozeßausgaben sein, einschließlich Ausgangssignalen von Ventilen oder anderen Sensoren, Ausgaben von AO- oder AI-Funktionsblöcken oder Ausgaben von anderen Steuerelementen oder Routinen.
  • In Schritt 54 in 2 wird, nachdem der Bediener ein Steuermodul erzeugt hat, das einen ursprünglichen MPC-Block enthalt, der Aus- und Eingänge hat, die jeweils mit den gewunschten Prozeßein- und -ausgängen verbunden sind, das Steuermodul mit dem ursprünglichen MPC-Block darin zur Ausführung auf eine entsprechende Einrichtung geladen, wie auf die Steuereinrichtung 11 oder eine der Workstations 13. Dann weist bei einem Schritt 99 der Bediener den ursprünglichen MPC-Block an, den Prozeß in bekannter Weise anzuregen und Prozeßeingangs- und -ausgangsdaten zu sammeln, während der Prozeß angeregt wird.
  • Wie 3 zeigt, umfaßt der ursprüngliche MPC-Block 56 eine Datensammelroutine 100, einen Wellenformgenerator 101, eine auswahlbare Steuerlogik 102 und einen Speicher zur Speicherung von Steuerparametern 103 und eines Prozeßmodells 104. Die auswählbare Logik 102 kann zum Beispiel eine auswählbare MPC-Routine sein, die Koeffizienten oder andere Steuerparameter benötigt, um zum Betrieb in der Lage zu sein und die Steuerung in einem bestimmten Fall ausführen zu können. In einigen Fallen kann die auswählbare Logik 102 auch ein Prozeßmodell für den zu steuernden Prozeß benötigen, um den Prozeß zu steuern. Nachdem er zum Beispiel auf die Steuereinrichtung 11 geladen wurde, wird der ursprüngliche MPC-Block 56 über die MPC-Erzeugungsroutine 42 angewiesen, die nächste Phase der Entwicklung eines MPC-Blocks 56 zu beginnen, in der Daten jedes Prozeßausgangssignals für die Verwendung in der Erzeugung eines Prozeßmodells gesammelt werden. Insbesondere beginnt der Wellenformgenerator 101 des MPC-Blocks 56, wenn er entsprechend vom Bediener angewiesen wird oder zu jeder anderen gewünschten Zeit, eine Reihe von Wellenformen an den Ausgängen OUT1–OUT3 zu erzeugen, um Anregungswellenformen an jeden der Prozeßeingänge X1–X3 zu leiten. Wenn gewünscht können diese Wellenformen dem Generator 101 über Software in der Workstation 13 des Nutzers zu Verfügung gestellt werden, vorzugsweise werden sie jedoch vom Generator 101 erzeugt. Die Wellenformen, die vom Wellenformgenerator 101 erzeugt werden, sind vorzugsweise derart ausgebildet, daß sie verursachen, daß der Prozeß über unterschiedliche Wertebereiche der erwarteten Eingangssignale während des normalen Ablaufs des Prozesses arbeitet. Zur Entwicklung eines Prozeßmodells für eine MPC-Steuerroutine kann der Wellenformgenerator 101 an jeden der Prozeßeingänge X1–X3 eine Reihe von unterschiedlichen Impulssätzen leiten, wobei die Impulse in jedem dieser Impulssätze die gleiche Amplitude haben, aber pseudo-zufallsverteilte Langen, wobei die Impulse in den verschiedenen Impulssätzen unterschiedliche Amplituden haben. Eine derartige Reihe von Impulssätzen kann für jeden der verschiedenen Prozeßeingänge X1–X3 erzeugt und dann aufeinanderfolgend jeweils einzeln an diese geleitet werden. Während dieser Zeit sammelt die Datensammeleinheit 100 in dem MPC-Block 56 Daten oder koordiniert auf andere Weise das Sammeln der Daten, die die Reaktoin der Prozeßausgänge Y1–Y3 auf jede der vom Wellenformgenerator 101 erzeugten Wellenformen anzeigen, und sie kann die Daten sammeln oder das Sammeln der Daten koordinieren, die zu den erzeugten Anregungswellenformen gehören. Diese Daten können im MPC-Block 56 gespeichert werden, vorzugsweise werden sie aber automatisch an den Archivspeicher 12 zur Speicherung und/oder an die Workstation 13 gesendet, wo diese Daten auf dem Anzeigebildschirm 14 dargestellt werden können.
  • Anstatt zu versuchen, den Prozeß 58 unter Verwendung einer fortschrittlichen Steuerlogik zu steuern (die bis jetzt noch nicht vollständig entwickelt ist), leitet so der MPC-Block 56 zuerst eine Reihe von Anregungswellenformen an den Prozeß 58 und mißt die Reaktion des Prozesses 58 auf diese Anregungswellenformen. Selbstverständlich können die Anregungswellenformen, die vom Wellenformgenerator 101 erzeugt werden, jede gewünschte Wellenform sein, die entwickelt werden, um ein Prozeßmodell zu erzeugen, das fur die Bildung von Steuerlogikparametern fur jede fortschrittliche Steuerroutine nützlich ist. In diesem Beispiel erzeugt der Wellenformgenerator 101 jeden Satz von Wellenformen, von welchen bekannt ist, daß sie bei der Entwicklung eines Prozeßmodells für eine modellvorhersagende Steuereinrichtung nützlich sind. Diese Wellenformen können jede bisher bekannte oder noch in Zukunft für diesen Zweck zu entwickelnde Form annehmen. Da Wellenformen, die dazu verwendet werden, einen Prozeß zum Zwecke des Sammelns von Daten anzuregen, um ein Prozeßmodell zur modellvorhersagenden Steuerung zu entwickeln, bekannt sind, werden diese Wellenformen hier nicht weiter beschrieben. Entsprechend kann jede andere oder jede gewünschte Art von Wellenformen mit dem Wellenformgenerator 101 erzeugt werden, um damit Prozeßmodelle für andere fortschrittliche Steuerroutinen, die das Modellieren beinhalten, zu entwickeln, wie zum Beispiel Steuerroutinen für neuronale Netze, für Fuzzy-Logik mit mehreren Variablen und dergleichen.
  • Es ist zu beachten, daß der Wellenformgenerator 101 jede gewünschte Ausbildung haben kann und zum Beispiel in Hardware, Software oder einer Kombination daraus umgesetzt sein kann. Wenn er in Software umgesetzt ist, kann der Wellenformgenerator 101 einen Algorithmus speichern, der dazu verwendet wird, die gewünschten Wellenformen zu erzeugen, kann er eine digitale Darstellung der zu erzeugenden Wellenform speichern oder kann er jedes andere Programm oder gespeicherte Daten zur Erzeugung derartiger Wellen verwenden. Wenn er in Hardware umgesetzt ist, kann der Wellenformgenerator 101 beispielsweise die Form eines Oszillators oder eines Rechteckwellengenerators haben. Wenn es gewünscht ist, kann der Bediener aufgefordert werden, bestimmte Parameter einzugeben, die zur Festlegung der Wellenform notwendig sind, wie die ungefähre Reaktionszeit des Prozesses, die Schrittgröße der Amplitude der an die Prozeßeingänge zu leitenden Wellenformen und dergleichen. Der Bediener kann nach diesen Informationen abgefragt werden, wenn der MPC-Block 56 das erste Mal erzeugt wird oder wenn der Bediener den MPC-Block 56 anweist, den Prozeß zu beginnen oder anzuregen und Prozeßdaten zu sammeln. In einer bevorzugten Ausführungsform sammelt die Datensammeleinrichtung 100 Daten (oder stellt deren Erfassung anderweitig sicher), die über das Drei- bis Fünffache der vom Bediener eingegebenen Ansprechzeit in Reaktion auf jede der Anregungswellenformen erfaßt wurden, um sicherzustellen, daß ein vollständiges und genaues Prozeßmodell entwickelt werden kann. Jedoch können die Daten auch für jede andere Zeitspanne gesammelt werden.
  • Auf jeden Fall arbeitet der MPC-Block 56 vorzugsweise bis der Wellenformgenerator 101 jede der notwendigen Anregungswellenformen an jeden der Prozeßeingange X1–X3 geleitet hat und die Datensammeleinheit 100 Daten für die Prozeßausgänge Y1–Y3 gesammelt hat. Selbstverständlich kann der Betrieb des MPC-Blocks 56, wenn es gewünscht wird oder während des Datensammelvorgangs notwendig ist, unterbrochen werden.
  • 6 zeigt eine Bildschirmanzeige 118, die dem Bediener auf einer der Anzeigen 14 durch die Routine 40 zur Erzeugung einer Steuerlogik angezeigt werden kann. Es ermöglicht dem Bediener, die unterschiedlichen Schritte der Erzeugung eines fortschrittlichen Steuerblocks umzusetzen. Insbesondere beinhaltet die Bildschirmanzeige 118 ein Datenanzeigefeld 120 und drei Schaltflächen 122, 123 und 124, die dazu verwendet werden können, verschiedene Teile der Routine 40 zur Erzeugung eines fortschrittlichen Steuerblocks zu starten. Die Testschaltfläche 122 ermöglicht es dem Bediener, den ursprünglichen MPC-Block 56 zu veranlassen, Anregungssignale an den Prozeß 58 zu senden und Eingangs- und Ausgangsdaten zur Übermittlung an den Archivspeicher 12 zu sammeln. Die Schaltfläche 122 kann zum Beispiel die Zeit anzeigen, die zur Durchführung der Anregungsroutine verbleibt, das heißt die Zeit, die der MPC-Steuerblock 56 braucht, um alle Anregungswellenformen zu erzeugen und die Prozeßdaten, die ansprechend auf diese Wellenformen erzeugt werden, zu sammeln. Vor dem Drücken der Schaltfläche 122 kann der Benutzer eine Ansprechzeit eingeben, die einer typischen Zeit entspricht, die der Prozeß benötigt, um auf ein Eingangssignal anzusprechen, und kann die Schrittgröße angeben oder festlegen, die vom MPC-Block 56 zur Erzeugung von Anregungswellenformen verwendet werden soll, wobei diese Daten an den Wellenformgenerator 101 des MPC-Blocks 56 geleitet werden können. Nach dem Drücken der Schaltfläche 122 können die von dem MPC-Block 56 gesammelten Daten auch auf dem Datenanzeigefeld 120 angezeigt werden, und, wenn gewünscht, kann der Nutzer die Daten, die nicht zur Erzeugung eines Prozeßmodells verwendet werden sollen, markieren. Es ist selbstverständlich, daß die Datensammeleinheit 100 diese Daten derart sammeln kann, daß sichergestellt ist, daß die Daten an den Archivspeicher 12 oder eine andere Speichereinrichtung zur Speicherung geleitet werden.
  • Danach, wie in 2 bei Schritt 125 dargestellt, kann der Bediener an einem bestimmten Punkt entscheiden, daß die nächste Phase der Entwicklung des MPC-Blocks durch Ausführung des Prozeßmodellierungsroutine 44 umgesetzt wird, die auf die gesammelten Daten in dem Archivspeicher 12 zugreift und eine beliebige bekannte Routine zur Erzeugung eines Prozeßmodells verwendet, um ein Prozeßmodell aus den gesammelten Daten zu erzeugen. Im allgemeinen kann der Bediener diese Phase durch Betätigung der Schaltfläche ”Steuerung erstellen” 123 auf der Bildschirmanzeige aus 6 beginnen.
  • Wenn gewünscht, kann die Prozeßmodellierungsroutine 44 einen Datenprüfvorgang der gesammelten Daten durchführen. Dieser Datenprüfvorgang kann die gesammelten Daten auf Ausreißer und andere offensichtlich fehlerhafte Daten kontrollieren und kann andere mit den gesammelten Daten verknüpfte Werte überprüfen, wie zum Beispiel Zustands- und Grenzwerte, die zu den gesammelten Daten gehören, um zu bestimmen, ob die Daten von einem Funktionsblock in schlechtem oder ungeeignetem Zustand erzeugt wurden, ob die Daten an einem Grenzwert liegen, ob die Daten erzeugt wurden, als ein Funktionsblock oder ein anderes Element in einem ungeeigneten Modus waren oder ob die Daten auf andere Weise unter abnormalen oder unerwünschten Prozeßbedingungen erzeugt wurden. Zum Beispiel im Fieldbus-Kommunikationsprotokoll beinhalten die von Funktionsblöcken erzeugten Daten auch eine Status-, eine Grenzwert- und eine Modusangabe, die zusammen mit den Daten im Archivspeicher 12 speicherbar und zur Kontrolle der Daten verwendbar sind. Wenn gewünscht, kann die Datenprüfroutine die gesammelten Daten dem Bediener auf dem Datenanzeigefeld 120 aus 6 darstellen und es dem Bediener ermöglichen, die zu kontrollierenden oder auszusondernden Daten zu markieren. Dies erfolgt beispielsweise durch Hervorhebung oder andere Kenntlichmachung dieser Daten auf der Grundlage des Wissens des Bedieners über die Prozeßbedingungen. Auf diese Weise können Daten, die vom MPC-Block 56 gesammelt wurden, wenn der Prozeß 58 nicht angeschlossen war, wenn der Prozeß 58 nicht korrekt gesteuert war, wenn der Prozeß 58 gewartet wurde, wenn ein Sensor oder eine andere Einrichtung im Prozeß 58 fehlerhaft war oder ausgetauscht wurde etc., ausgewählt und aus den Daten entfernt werden, aus denen ein Prozeßmodell erzeugt wird.
  • Wie in 6 dargestellt, kann eine Tendenz auf dem Anzeigefeld 120 dargestellt werden, die die MPC-Eingangs- und Ausgangssignale als ein Trenddiagramm enthält. Das Diagramm kann auf der Grundlage der Werte der Eingangs- und Ausgangssignale selbsttätig skaliert sein. Auch wird das Zeitfenster des dargestellten Abschnitts des Diagramms vorzugsweise der zweifachen festgelegten Ansprechzeit entsprechen. Mit Hilfe eines Schiebebalkens 126 kann das Zeitfenster verschoben werden, um Werte einer vorhergegangenen Zeit anzuzeigen, wie zum Beispiel aus den letzten zwei Tagen. Zur Sicherstellung, daß gute Daten beim Betrieb der Anlage gesammelt werden, kann eine automatisierte Testfunktion verwendet werden. Durch Betätigung der Testschaltfläche 122 werden die Prozeßeingangssignale, die von dem MPC-Block bearbeitet werden, mit der festgelegten Schrittgröße in eine pseudo-zufallsverteilte Folge über die festgelegte Ansprechzeit verteilt. Desweiteren wird, wenn die Testschaltfläche 122 betätigt wird, der Start- und der Endteilerbalken automatisch auf die Datenanzeige gesetzt, um den Start und das Ende des automatisierten Tests anzuzeigen, und der MPC-Block 56 übernimmt die Steuerung der bearbeiteten Ausgangssignale durch Weiterleitung der pseudo-zufallsverteilten Folge von Ausgangssignalen als Anregungswellenformen an den Prozeß 58.
  • Die Zeitbalken oder das Datenfenster in dem Anzeigefeld 120 können auch dazu verwendet werden, Daten auszuwählen, mit denen das Prozeßmodell entwickelt wird. Ein Bediener kann einen der Teilerbalken auswählen und ihn an die gewünschte Start- oder Endzeit ziehen, um das Zeitfenster zu ändern, das für die Prozeßmodellidentifizierung in Betracht gezogen wird. Wenn ein Teil der Zeit zwischen dem Start- und dem Endbalken nicht repräsentativ für den normalen Betrieb der Anlage ist, kann der Nutzer oder Bediener diesen Zeitabschnitt, zu dem Datenwerte gesammelt werden, markieren, so daß er während des Vorgangs zur Prozeßmodellidentifizierung ignoriert wird. Ansprechend darauf kann das ausgewählte Gebiet mit einer dunkleren Hintergrundfarbe dargestellt und automatisch ausgenommen werden, wenn das Prozeßmodell erzeugt wird.
  • Nach Kontrolle der Daten erzeugt die Prozeßmodellierungsroutine 44 ein Prozeßmodell aus den ausgewählten Daten. Wie oben ausgeführt, kann die Prozeßmodellierungsroutine 44 jede gewünschte oder bekannte Art von Prozeßmodellierungsanalyse durchführen, um aus den gesammelten und geprüften Daten ein Prozeßmodell zu entwickeln. Das entwickelte Prozeßmodell kann jede Form annehmen, wie zum Beispiel einen mathematischen Algorithmus, eine Reihe von Reaktionskurven und dergleichen.
  • Wenn die Prozeßmodellierungsroutine 44 Schwierigkeiten hat, ein Prozeßmodell zu bestimmen, kann ein Hinweis auf das Problem in einem Statusfeld auf der Benutzeranzeige wie der in 6 gezeigten angezeigt werden. Ein Problem, das angezeigt werden kann ist, daß nicht ausreichend Proben vorhanden sind zur Festlegung oder Erzeugung eines Prozeßmodells. Eine Nachricht wie zum Beispiel ”Für die festgelegte Konfiguration ist eine Mindestanzahl von XXX Proben notwendig. Der Datensatz enthält nur XXX Proben” kann erzeugt werden, um den Benutzer auf dieses Problem aufmerksam zu machen. Ein anderes Problem, das festgestellt werden kann, ist, daß nicht genügend Anregungen an den Prozeßeingängen erfolgten. Ein entsprechender Hinweis mit Identifizierung der Signalmarkierungsnamen, wie zum Beispiel Markierung-X, Markierung-Y etc., und die Mindestveränderung des Ausmaßes der Anregungen kann dem Bediener übermittelt werden, wenn ein derartiges Problem auftritt.
  • Wenn gewünscht und auf der Grundlage, daß die Bedingungen identifiziert wurden, die das erfolgreiche Bestimmen eines Modells verhinderten, kann der Nutzer den Zeitrahmen, über den die Prozeßmodellierung durchgeführt wird, ändern, oder er kann die Prozeßeingangssignale derart ändern, daß die von der Prozeßmodellierungsroutine 44 verwendeten Daten gültig sind. Das Prozeßmodell, das bestimmt wird, kann automatisch in jeder gewünschten Datenbank gespeichert werden, um für späteren Gebrauch zugänglich zu sein. Erfahrenere Nutzer könnten es wünschen, das Prozeßmodell, das bestimmt wurde, zu untersuchen oder zu uberarbeiten. Durch Auswahl der Schaltfläche 124 ”Fortgeschritten” auf dem Bildschirm aus 6 kann dem Nutzer eine Auswahl gegeben werden, eine MPC-Steuereinrichtung aus einem ausgewählten Modell und der derzeitigen MPC-Funktionsblockkonfiguration zu erzeugen oder ein bestimmtes Modell zu bearbeiten und das erhaltene Modell als ein neues Modell zur Erzeugung einer MPC-Steuerlogik zu speichern. Wenn die Option zur Erzeugung einer Steuereinrichtung gewählt wird, kann dem Nutzer ein Dialog vorgelegt werden, aus dem er ein Modell auswählt, das vorher für den MPC-Block im MPC-Modul gespeichert wurde, das überarbeitet wird. Durch Auswahl der Überarbeitungsoption kann dem Nutzer eine Liste von Modellen dargestellt werden, die fur das in Frage stehende MPC-Modul entwickelt wurden. Nach Auswahl eines Modells können dem Nutzer eine Anzeige mit einem Überblick über die Prozeßschrittreaktionen und andere Bildschirmanzeigen gezeigt werden, wie im folgenden beschrieben, um Prozeßschrittreaktionen zu überarbeiten um ein neues oder geändertes Modul zu erzeugen.
  • An einem bestimmten Punkt im Prozeß kann die Routine 46 zur Erzeugung eines Logikparameters ausgeführt werden, um die Parameter zu erzeugen (die in den Variablen im MPC-Block 56 gespeichert werden), welche von der auswählbaren Logik 102 des ursprünglichen MPC-Blocks 56 benötigt werden, um eine modellvorhersagende Steuerung durchzuführen. Diese Steuerparameter, die zum Beispiel Matrix- oder andere MPC-Koeffizienten für eine MPC-Logik, Abstimmparameter, neuronale Netzparameter (für ein neuronales Netz), Skalierungsfaktoren (für Fuzzy-Logik mit mehreren Variablen) oder jede andere gewünschte Art von Parametern sein können, werden üblicherweise auf der Grundlage des erzeugten Prozeßmodells festgelegt. Die Routine 46 zur Erzeugung eines Logikparameters kann jede gewünschte oder bekannte Prozedur zur Erzeugung der Parameter aus dem Prozeßmodell ausführen. Im allgemeinen bringt dieser Prozeß das Invertieren des Prozeßmodells in ein Matrixformat mit sich. Jedoch können andere gewünschte Routinen zur Erzeugung von Logikparametern verwendet werden. Da die Eigenheiten der Erzeugung eines Prozeßmodells aus gesammelten Daten eines Prozesses und die Erzeugung von MPC- oder anderen Steuerlogikparametern aus diesem Prozeßmodell im Stand der Technik bekannt sind, werden diese Vorgehensweisen hier nicht weiter beschrieben. Es ist jedoch festzustellen, daß der Bediener einigen Einfluß auf die Erzeugung der Steuerlogikparameter für den MPC-Block 56 hat. Tatsachlich kann der Bediener aufgefordert oder auf andere Weise ermächtigt werden, die Werte bestimmter Variablen anzugeben, die üblicherweise zur Erzeugung einer MPC-Steuereinrichtung verwendet werden. Zum Beispiel kann der Benutzer die Sollwerte und Grenzwerte jeder der beschränkten Eingänge des MPC-Blocks festlegen, den Zeitrahmen, über welchen Änderungen in der Steuerung erfolgen sollen, das heißt den Sollwert-Trajektorien-Filter und die mit diesem Filter verknüpften Zeitkonstanten, die maximale oder minimale Bewegung (Verhältnisgrenze) eines MPC-Ausgangssignals oder eines Prozeßausgangssignals, ob einer der gesteuerten Parameter in integrierter Weise anspricht, MPC-Optimierungsfaktoren, Variable oder Abstimmungsparameter, den Horizont des MPC-Steuerblocks, das heißt wie viele Schritte zur Steuerung eines gewünschten Zustandes im voraus berechnet werden, die berechneten Einheitenbereiche für jeden der Ein- und Ausgänge des MPC-Blocks 56, welche der bearbeiteten variablen Ziele gelockert oder nicht verwirklicht werden, wenn eine der Beschränkungen verletzt wird, eine Beschreibung und/oder ein Name jedes der MPC-Block-Eingangs- und Ausgangssignale, den Wert von Optimierungsvariablen, die gewählt werden können, den Wert von Variablen bezogen auf das Ansprechverhalten oder die Widerstandsfähigkeit des MPC-Blocks und dergleichen. Wenn gewunscht, kann die Routine 46 zur Erzeugung einer Steuerlogik Standardwerte für einige oder alle dieser Variablen oder Einstellungen speichern und diese Standardwerte zur Erzeugung der MPC-Logik verwenden. Jedoch kann der Bediener oder jeder andere Nutzer in der Lage sein, die Einstellungen über die Benutzeranzeige 14 zu ändern.
  • Auf jeden Fall verwendet die Routine 46 zur Erzeugung von MPC-Logikparametern diese Informationen und alle anderen erforderlichen Informationen zur Erzeugung von MPC- oder anderen Steuerlogikparametern, wie zum Beispiel MPC-Koeffizienten. Die Schaltfläche ”Steuerung erzeugen” 123 auf der Bildschirmanzeige 118 kann anzeigen, ob die Erzeugung eines Prozeßmodells und von Steuerlogikparametern erfolgreich war oder nicht.
  • Nachdem in Schritt 128 in 2 die MPC-Steuerlogikparameter erzeugt sind, können die MPC-Steuerlogikparameter oder Koeffizienten mit einem Prozeßsimulationsblock getestet werden. Dieser Simulationsblock kann im allgemeinen aus dem für den Prozeß erzeugten Prozeßmodell entwickelt werden und an einen MPC-Block in einer Testumgebung angeschlossen werden, wie nachfolgend beschrieben wird, um zu testen, ob die erzeugte MPC-Steuerlogik über den normalen Betriebsbereich des Prozesses zufriedenstellend arbeitet. Wenn die MPC-Logik nicht zufriedenstellend ist, konnen einige oder alle der Schritte 54, 99 und 125 wiederholt werden, um eine andere MPC-Steuerlogik zu entwickeln. Wenn jedoch die MPC-Steuerlogik zufriedenstellend ist, können die MPC-Steuerlogikparameter und das Prozeßmodell in einem Schritt 130 in den MPC-Block 56 zur Speicherung im Parameterspeicher 130 und in den Prozeßmodellspeicher 104 zur Verwendung bei der Steuerung des Prozesses 58 geladen werden. Auf diese Weise sind die von der MPC-Steuerlogik benötigten Parameter in dem MPC-Block 56 bereitgestellt und enthalten, und der MPC-Block 56 kann für den Betrieb kommissioniert werden oder entsprechend der MPC-Steuerlogik 102 die tatsächliche Steuerung des Prozesses ausfuhren. Wenn gewünscht, kann die tatsächliche MPC-Logik 102 zusammen mit den dafür benötigten Parametern in der Workstation 13 erzeugt und auf den MPC-Block 16 geladen werden.
  • Wenn das MPC-Modul oder die Schleife mit dem MPC-Block 56 darin einmal auf die Steuereinrichtung 11 geladen und ausgeführt ist, kann sie in der gleichen Weise wie andere Blöcke oder Elemente in der Steuerroutine Berichtsfunktionen ausführen, da – wie oben ausgeführt – der MPC-Block 56 und das diesen Block enthaltende Steuermodul mit denselben Programmparadigmen wie die anderen Steuerblöcke in dem Prozeßsteuersystem 10 gebildet sind. In einer Ausführungsform kann der MPC-Block oder das -Modul damit verknüpfte grafische Ansichten haben, die einem Nutzer oder Bediener beispielsweise über einen der Anzeigeschirme 14 einer oder mehrerer der Workstations 13 angezeigt werden, wobei diese Ansichten Daten abonnieren, die zu den Blöcken in dem MPC-Steuermodul gehoren, und wobei diese Daten in einer vorherbestimmten oder festgelegten Weise angezeigt werden.
  • In 7 sind als Beispiel Abschnitte des Prozeßsteuersystems 10 aus 1 dargestellt, einschließlich der Steuereinrichtung 11, die über eine nicht gesondert dargestellte Kommunikationsverbindung an die Nutzeranzeigen 14A und 14B und an die Einrichtungen 15 bis 22 angeschlossen ist. In der Steuereinrichtung 11 ist ein MPC-Modul 132 dargestellt, mit einem MPC-Funktionsblock, der Eingangssignale von einer Reihe von AI-Funktionsblöcken empfängt und jeweils Ausgangssignale an eine Reihe von AO-Funktionsblocken leitet, während eine Einzelschleifensteuerroutine 134 derart dargestellt ist, daß sie einen PID-Block hat, der ein Eingangssignal zur Steuerung eines AO-Funktionsblock von einem AI-Funktionsblock empfängt.
  • Unterschiedliche Ansichten des Betriebs dieser beiden Steuermodule, wie zum Beispiel eine Bedieneransicht und eine Technikeransicht sind auf den Anzeigebildschirmen 14A und 14B grafisch abgebildet. Insbesondere umfaßt eine Technikeransicht auf der Anzeige 14A eine grafische Darstellung des Betriebs der Schleife 132 sowie eine grafische Darstellung der Schleife 134, die erstellt wurden, um es dem Techniker zu ermöglichen, auf Informationen über diese Schleifen zuzugreifen und diese Schleifen zu bearbeiten. Dementsprechend ist eine Bedieneransicht mit einer grafischen Abbildung des Betriebs der Schleife 132 sowie einer grafischen Abbildung der Schleife 134 auf der Anzeige 14B vorhanden, um dem Bediener zu ermöglichen, auf Informationen über diese Schleifen zuzugreifen und diese Schleifen zu bearbeiten. Jedoch können die zur Verfügung gestellten Informationen in der Bedieneransicht sich von den Informationen in der Technikeransicht unterscheiden, und die Möglichkeiten zur Beeinflussung der Schleifen 132 und 134 durch diese Ansichten können unterschiedlich sein. Zum Beispiel kann die Bedieneransicht es dem Bediener lediglich ermöglichen, die Sollwerte zu ändern und beschränkte Funktionen durchzufuhren, während die Technikeransicht es dem Nutzer ermöglicht, Änderungen in der Einstellung einer Schleife vorzunehmen, die Programmierung der Funktionsblöcke zu ändern und dergleichen. Diese unterschiedlichen Ansichten können in Zusammenhang mit den Funktionsblöcken in einer Weise erzeugt werden, die ähnlich der Weise ist, die in Bezug auf die in dem US-Patent Nr. 5,594,858 von Blevins ”Uniform Control Template Generating System and Method for Process Control Programming” erörterten Vorlagen beschrieben wurde. Es ist jedoch klar, daß die MPC-Blöcke und Module, die unter Verwendung dieser Blöcke erzeugt wurden, die gleiche Art der grafischen oder berichtenden Unterstützung wie andere Blöcke, Programme oder Elemente im Prozeßsteuersystem 10 liefern können, da der MPC-Block im Online-Zustand unter Verwendung der gleichen Programmstrategie wie bei den anderen Steuerblöcken erzeugt wurde. Dieses Merkmal beseitigt die Notwendigkeit der Bereitstellung spezieller Programmierungen und ermöglicht es dem Bediener, Techniker, Ingenieur etc. in einfacher Weise anzusehen, was im MPC-Steuermodul oder -block vor sich geht.
  • Wenn gewünscht, kann das MPC-Modul 132 jede gewünschte Information an einen Benutzer über eine vorherbestimmte Ansicht oder Anzeige berichten und es dem Nutzer oder Bediener ermöglichen, jede gewünschte Handlung vorzunehmen. Zum Beispiel kann dem Nutzer eine Bildschirmanzeige gezeigt werden, die Alarmmeldungen erläutert, die vom MPC-Modul 132 erzeugt wurden oder zu ihm gehören, die eine grafische Darstellung der gesteuerten, beschränkten oder der Störparamter (die auch zukünftige vorausberechnete Werte dieser gesteuerten und beschränkten Parameter sein können) anzeigt, die es einem Nutzer oder Bediener ermöglicht, die Ausführung des MPC-Moduls 132 zu steuern, beispielsweise unter Verwendung des Modusparameters (wenn das MPC-Modul 132 entwickeltes ist, das zum Beispiel ein Fieldbus-Protokoll nutzt), die numerisch oder mit einem Balkendiagramm die Werte der Sollwerte, Beschränkungen und der gesteuerten und beschränkten Eingangs- und Ausgangssignale darstellt, die es zu ermöglicht, die MPC-Sollwerte oder Ziele zu ändern, die den Zustand der MPC-Eingangssignale anzeigen, um zum Beispiel anzuzeigen, ob die Eingangssignale schlecht, unbestimmt oder beschränkt sind, oder die jede andere Art von gewünschten Daten erläutert oder jede andere gewünschte Funktion ausführt.
  • Zusätzlich zum Herunterladen der MPC-Steuerlogik auf den MPC-Block im MPC-Steuermodul kann bei Schritt 135 in 2 die MPC-Logik oder ein MPC-Block, der die entwickelte Logik enthält, an eine Workstation geleitet werden, um in einer oder mehreren Simulationsumgebungen verwendet zu werden, um zum Beispiel den Gebrauch eines MPC-Steuerblocks Nutzern beizubringen, den MPC-Block zu testen, etc. Eine derartige Simulationsumgebung kann unter Verwendung des Systems bereitgestellt werden, das im einzelnen in der Druckschrift US 7257523 B1 ”Integrating Distributed Process Control System Functionality on a Single Computer”, angemeldet am 6. Mai 1999, beschrieben ist.
  • 8 zeigt eine Simulationsanordnung 149 mit einem MPC-Block 150, der erzeugt wurde und mit einem Prozeßsimulationsblock 152 in einer Simulationsumgebung verbunden ist. Die Simulationskonfiguration 149 kann bei Schritt 128 in 2 verwendet werden, um zum Beispiel einen vervollständigten MPC-Block zu testen, um zu bestimmen, ob er den Prozeß, für den er entwickelt wurde, angemessen steuert. Oder sie kann bei Schritt 135 in 2 verwendet werden, um zum Beispiel eine Übungs- oder andere Testumgebungen mit MPC-Blöcken zur Verfügung zu stellen. Der MPC-Block 150 in 8, der mitdrei Eingängen IN1–IN3 und drei Ausgängen OUT1–OUT3 dargestellt ist, ist mit dem Simulationsblock 152 mit drei Eingängen X1–X3 und drei Ausgängen Y1–Y3 verbunden, wobei die Ausgänge Y1–Y3 an die jeweiligen Eingänge IN1–IN3 des MPC-Blocks 150 angeschlossen sind. Der Simulationsblock 152 kann den Prozeß simulieren, für den der MPC-Funktionsblock 150 mit dem Prozeßmodell erzeugt wurde, das bei Schritt 125 in 2 erzeugt wurde, wie durch den Block 154 in 8 dargestellt. In diesem Fall kann das Prozeßmodell, das bei Schritt 125 in 2 erzeugt wurde, im Simulationsblock 152 gespeichert werden und mit ihm kann das Ansprechverhalten des Prozesses auf der Grundlage dieses Prozeßmodells und der Eingangssignale, die vom MPC-Block 150 erhalten werden, simuliert werden. Alternativ dazu kann der Simulationsblock 152 aus einem Prozeßmodell erzeugt werden, das bezüglich des Prozeßmodells, das bei Schritt 125 erzeugt wurde, geändert wurde, wie durch den Block 156 in 8 dargestellt. In diesem Fall kann das bei Schritt 125 erzeugte Prozeßmodell derart geändert werden, daß es zum Beispiel Änderungen im Prozeß simuliert, die zum Beispiel durch physikalische Änderungen im Prozeß, Alterung der Prozeßausrüstung etc. verursacht werden. Wenn gewünscht, kann das im Block 125 in 2 erzeugte Prozeßmodell auf verschiedene Arten geändert werden, um den Betrieb des MPC-Blocks 150 zu testen, wenn dieser Block zur Steuerung eines Prozesses verwendet wird, der sich von dem Prozeß unterscheidet, der zuerst verwendet wurde, um den MPC-Block 150 zu erzeugen. Daher kann, wenn gewünscht, das geänderte Prozeßmodell von Block 156 im Simulationsblock 152 verwendet werden, um den Steuerbereich, den ein MPC-Block bietet, wenn sich der Prozeß ändert oder nicht mit der MPC-Steuerlogik übereinstimmt, zu bestimmen, um es dem Nutzer zu ermöglichen, MPC-Blöcke zu entwerfen, die über längere Zeitdauern arbeiten oder die besser zur Steuerung von Prozessen in der Anwesenheit von Prozeßänderungen in der Lage sind.
  • Um einen geanderten Prozeß zu erzeugen, führt der Nutzer oder Bediener eine Routine aus, um das bei Schritt 125 erzeugte Prozeßmodell oder die Reihe der dazu gehörenden Prozeßeingangssignal-/Ausgangssignal-Reaktionskurven anzusehen, wie beispielsweise die in der Bildschirmanzeige in 9 für einen 5 × 5 MPC-Block dargestellten, um eine oder mehrere dieser Reaktionskurven, die geändert werden sollen, auszuwählen. Die ausgewählte Reaktionskurve (dargestellt als Überhang %C3H6 gegen Rückkocherölfluß) kann dann in einem weiteren Bildschirm angezeigt und bearbeitet werden, wie etwa dem in 10 dargestellten. Wie in 10 dargestellt, kann der Nutzer oder Bediener eine Reaktionskurve importieren oder streichen, eine FIR-Reaktion hinzufügen, die Reaktionsparameter, wie zum Beispiel Totzeit und Verstärkung, ändern, neue Start- oder Endpunkte auswählen, den Wert jedes der Punkte in der Kurve ändern, die Steigung der Kurven ändern, die Kurven skalieren etc., um geänderte Reaktionskurven und folglich ein geändertes Prozeßmodell zu erzeugen. Natürlich kann der Nutzer oder Bediener das Prozeßmodell in jeder anderen Weise ändern. Der Nutzer kann ein Prozeßmodell 150 erzeugen oder überarbeiten, kann einen Prozeßsimulationsblock oder -element 152 aus einem solchen Modell erzeugen, kann den Prozeßsimulationsblock 152 mit dem MPC-Block 150 in Kommunikationsverbindung setzen und die angeschlossene Schleife unter Verwendung einer Routine, wie etwa der Routine 153, dargestellt in 1 im linken Prozessor 13, oder in jeder anderen gewünschten Simulationsumgebung oder in der Prozeßumgebung betreiben.
  • In 11 ist eine weitere Steuerschleife 170 mit einem MPC-Block 172 dargestellt, der an einen tatsächlichen Prozeß 174 angeschlossen ist. In diesem Fall sind die drei Ausgänge OUT1–OUT3 des MPC-Blocks 172 mit den drei Prozeßeingängen X1–X3 des Prozesses 174 verbunden sowie mit den drei Eingängen X1SIM–X3SIM eines simulierten Prozeßblocks 176, der auf einem Prozeßmodell 178 basiert, das für den Prozeß 174 erzeugt wurde. In dieser Anordnung steuert der MPC-Block 172 sowohl den Prozeß 174 während der Laufzeit als auch den simulierten Prozeßblock 176, der zum Beispiel in einer der Workstations 13 in 1 oder in jeder anderen Steuereinrichtung oder Einrichtung umgesetzt wird, und der simulierte Ausgangssignale Y1SIM–Y3SIM erzeugt. In einem derartigen System können die Ausgangssignale Y1SIM–Y3SIM des simulierten Prozeßblocks 176 und die Ausgangssignale Y1–Y3 des tatsächlichen Prozesses 174 miteinander verglichen werden, um zu bestimmen, ob die Prozeßausgangssignale Y1–Y3 merklich von den simulierten Ausgangssignalen Y1SIM–Y3SIM abweichen und ob es somit eine Abweichung zwischen dem tatsächlichen Prozeß 174 und dem Prozeßmodell 178 gibt, aus dem der MPC-Block 172 erzeugt wurde. Wenn dem so ist, kann es notwendig sein, einen anderen MPC-Block 172 zu erzeugen oder die Logikparameter oder das Modell, das vom MPC-Block 172 bei der Steuerung des Prozesses 174 verwendet wird, zu erneuern.
  • Auch wenn aus einem beliebigen Grund eines der Ausgangssignale Y1–Y3 des Prozesses 174 aufgrund von zum Beispiel einer Fehlfunktion des Sensors, der dieses Ausgangssignal mißt, fehlerhaft ist, kann das entsprechende simulierte Ausgangssignal des simulierten Prozeßblocks 174 dem entsprechenden Eingang des MPC-Blocks 172 zugeleitet werden, wie durch die gepunktete Linie in 11 dargestellt, um es dem MPC-Block 172 zu ermöglichen, den tatsachlichen Prozeß 174 besser zu steuern, bis der fehlerhafte Sensor oder die Einrichtung ausgetauscht oder repariert ist. Auf diese Weise kann ein virtuelles Prozeßausgangssignal für jedes der tatsächlichen Prozeßausgangssignale durch den simulierten Prozeßblock 176 entwickelt werden und eines oder mehrere dieser virtuellen Ausgangssignale kann als Eingangssignal für den MPC-Bock 172 verwendet werden, wenn das entsprechende tatsachliche Prozeßausgangssignal fehlerhaft oder in anderer Weise nicht verwendbar ist. Zum Beispiel kann, wenn ein Sensor zur Messung eines der Prozeßausgangssignale Y1–Y3 nachts eine Fehlfunktion hat, der Nutzer oder Bediener einfach das entsprechende virtuelle Ausgangssignal auf den Eingang des MPC-Block 172 legen, so daß der MPC-Block 172 den Prozeß 174 angemessen steuert, bis am nächsten Tag ein Monteur den fehlerhaften Sensor auswechselt oder repariert. Es ist klar, daß der simulierte Prozeßblock 176 zu allen Zeiten, zu denen der tatsächliche Prozeß 174 abläuft, betrieben werden kann und mit den gleichen Eingangssignalen versorgt wird, so daß der simulierte Prozeßblock 176 realistische virtuelle Ausgangssignale erzeugen kann. Natürlich können andere Simulationsszenarien umgesetzt werden und ein Prozeßmodell verwenden, das in Verbindung mit der Erzeugung des MPC-Blocks 150 oder 172 erzeugt wurde, oder sie können ein Prozeßmodell verwenden, das eine Abänderung der Prozeßmodelle ist, die in Verbindung mit der Erzeugung des MPC-Blocks 150 oder 172 erzeugt wurden.
  • Die Erzeugung eines MPC-Steuerblocks ohne die dafür notwendigen Steuerlogikparameter und Prozeßmodelle und das Verbinden dieses Blockes mit dem Prozeßsteuersystem in einer Weise, die gleich der ist, in der andere Steuerblöcke oder -elemente mit dem System verbunden werden, der Betrieb des MPC-Steuerblocks zur Sammlung von Prozeßdaten, das Erzeugen eines Prozeßmodells aus diesen Daten, die Erzeugung von Logikparametern für den MPC-Block aus diesem Prozeßmodell und das Laden der Logikparameter und, wenn notwendig, des Prozeßmodells in einen MPC-Steuerblock ermöglicht es einem Nutzer, einen MPC-Steuerblock oder ein -Modul in einer Prozeßsteuerroutine zu erzeugen, ohne in den nicht angeschlossenen bzw. Offline-Zustand gehen zu müssen, ohne daß es notwendig ist, großes Wissen über die Erzeugung einer MPC-Steuerroutine zu haben, ohne daß viel Ingenieursarbeit zur Erzeugung von Wellenformen zur Bildung eines Prozeßmodells geleistet werden muß und ohne daß eine Steuerroutine zur Einführung modellvorhersagender oder anderer fortschrittlicher Steuerung neu programmiert werden muß. Im Ergebnis spart dieses Verfahren Zeit und Kosten und ermöglicht die Verwendung der erzeugten Prozeßmodelle für andere Zwecke, wie zum Beispiel zur Simulation und zur Erzeugung virtueller Prozeßausgangssignale in der Prozeßsteuerumgebung.
  • Die Routinen und Verfahren zur Erzeugung von MPC- oder fortschrittlichen Steuerlogiken, die hier beschrieben sind, ermöglichen es Benutzern, fortschrittliche Steuerblöcke wie z. B. MPC-Steuerblöcke, Blöcke zur Modellierung oder Steuerblöcke in neuronalen Netzen etc. zu erzeugen, ohne daß sie viel Expertenwissen haben, wie diese Blöcke erzeugt werden. Sie ermöglichen es dem Bediener, einen fortschrittlichen Steuerblock zu erzeugen und zu nutzen, ohne daß die Prozesse zur Einführung der fortschrittlichen Steuerung mit großem Aufwand umprogrammiert werden müssten. Auch können, da die fortschrittlichen Steuerblöcke mit den gleichen Programmparadigmen wie die anderen Steuerelemente im System erzeugt wurden, übereinstimmende Ansichten des Prozesses oder grafische Darstellungen des Prozesses mit dem fortschrittlichen Steuerblock dargestellt werden. Desweiteren kann, da das Prozeßmodell zum Beispiel zur Erzeugung eines MPC-Funktionsblocks erstellt werden muß, dieses Prozeßmodell dazu verwendet werden, Simulationsfunktionsblöcke zu erzeugen, die zur Simulierung des Prozesses für andere Zwecke verwendet werden können, wie zum Beispiel Testen, Schulung, Auffinden von Abweichungen zwischen Prozeß und Prozeßmodell, oder zur Erzeugung virtueller Ausgangssignale des Prozesses zur Verwendung bei der Steuerung eines Prozesses.
  • Während die fortschrittlichen Steuerblöcke, die Prozeßsimulationsblocke und die damit verknüpften Routinen zur Erzeugung und zum Testen hier derart beschrieben wurden, daß sie in Verbindung mit Fieldbus- und Standard 4–20 Milliampere-Einrichtungen genutzt werden, können sie natürlich auch unter Verwendung jedes anderen Prozeßsteuerkommunikationsprotokolls oder jeder anderen Programmierungsumgebung implementiert werden, und sie können mit jeder anderen Art von Einrichtungen, Funktionsblöcken oder Steuereinrichtungen verwendet werden. Desweiteren ist festzuhalten, daß die Verwendung des Ausdrucks ”Funktionsblock” hier nicht darauf beschränkt ist, was das Fieldbus-Protokoll oder das DeltaV-Steuereinrichtungs-Protokoll unter Funktionsblock versteht, sondern daß auch jede andere Art von Block, Programm, Hardware, Firmware, etc. eingeschlossen ist, die zu jeder Art von Steuersystem und/oder Kommunikationsprotokoll gehören, mit denen eine Prozeßsteuerfunktion implementiert werden kann. Auch ist es nicht notwendig, daß die Funktionsblöcke die übliche Form von Objekten in einer objektorientierten Programmierungsumgebung haben.
  • Obwohl die fortschrittlichen Steuerblöcke, die Prozeßsimulationsblocke und die hier beschriebenen, damit verbundenen Erzeugungs- und Testroutinen vorzugsweise in Software implementiert sind, können sie auch in Hardware, Firmware, etc. implementiert werden und können mit jedem anderen mit einem Prozeßsteuersystem verknüpften Prozessor umgesetzt werden. Folglich kann die hier beschriebene Routine 40 in einer standardisierten Mehrzweck-CPU implementiert werden oder, wenn es gewünscht ist, in speziell hierfür entworfener Hardware oder Firmware, wie zum Beispiel in ASICs. Wenn sie in Software implementiert ist, kann die Software auf jedem computerlesbaren Speicher wie einer Magnetplatte, einer Laserplatte, einer optischen Platte oder anderen Speichermedien, in einem RAM oder ROM eines Computers oder Prozessors etc. gespeichert werden. Dementsprechend kann die Software an den Nutzer oder ein Prozeßsteuersystem über jede bekannte oder gewünschte Lieferart geliefert werden, einschließlich zum Beispiel auf einer computerlesbaren Platte oder anderen transportablen Computerspeichereinrichtungen, oder über einen Kommunikationskanal, wie eine Telefonverbindung, das Internet etc. übermittelt werden (was als gleichartig oder austauschbar zur Bereitstellung der Software über ein transportables Speichermedium angesehen wird).

Claims (25)

  1. Prozess-Steuerung zur Steuerung eines Prozesses (58), umfassend: eine Vielzahl von Steuereingängen (IN1–IN3), die mit einer Vielzahl von Prozessausgängen verbunden sind, wobei jeder Steuereingang (IN1–IN3) ein Prozessausgangssignal von einem von der Vielzahl von Prozessausgängen empfängt; eine Vielzahl von Steuerausgängen (OUT1–OUT3), die mit einer Vielzahl von Prozesseingängen verbunden sind, wobei jeder Steuerausgang (OUT1–OUT3) ein Steuersignal an einen von der Vielzahl von Prozesseingängen (X1–X5) abgibt; einen Wellenformgenerator zum Erzeugen von Anregungswellenformen an jedem der Vielzahl von Steuerausgängen (IN1–IN3); eine Datensammeleinheit zum Sammeln von Daten, die Signalwerte an jedem der Vielzahl von Steuereingängen (IN1–IN3) darstellen, wenn der Wellenformgenerator die Anregungswellenformen an jedem der Vielzahl von Steuerausgängen (OUT1–OUT3) erzeugt; einen Steuerlogikparametergenerator, der die gesammelten Daten nutzt, um ein Prozessmodell für den Prozess (58) zu erzeugen, basierend darauf, wie jede der Steuereingänge auf die bei jeder der Vielzahl von Steuerausgängen erzeugten Anregungswellenformen antwortet, und Steuerlogikparameter gemäß des erzeugten Prozessmodells erzeugt; und eine Mehrfacheingabe-/Mehrfachausgabe-Steuerlogik, derart ausgebildet, vor der Erzeugung des Prozessmodells nicht konfiguriert zu sein und keine Steuerlogikparameter zu beinhalten und nach der Erzeugung der Steuerlogikparameter als modellvorhersagende Steuerung gemäß den Steuerlogikparameter konfiguriert zu sein, wobei die Prozess-Steuerung derart ausgebildet ist, ein Steuersignal an jedem der Vielzahl von Steuerausgängen zu erzeugen, basierend auf (i) der konfigurierten Mehrfacheingabe-/Mehrfachausgabe-Steuerlogik, und (ii) der Vielzahl von Prozessausgangssignalen, die an der Vielzahl von Steuereingängen empfangen wurden.
  2. Prozess-Steuerung nach Anspruch 1, dadurch gekennzeichnet, dass die Steuerlogik eine neuronale Netzwerksteuerlogik ist.
  3. Prozess-Steuerung nach Anspruch 1, dadurch gekennzeichnet, dass die Steuerlogik ein auf einer Steuerlogik basierendes Prozessmodell ist.
  4. Prozess-Steuerung nach Anspruch 1, dadurch gekennzeichnet, dass der Wellenformgenerator eine Reihe von Impulsen mit pseudo-zufallsverteilter Länge als Anregungswellenformen erzeugt.
  5. Prozess-Steuerung nach Anspruch 1, dadurch gekennzeichnet, dass der Wellenformgenerator Anregungswellenformen erzeugt, die zur Entwicklung eines Prozessmodells für den Prozess zur Verwendung bei der Erzeugung einer modellvorhersagenden Steuereinrichtung ausgelegt sind.
  6. Prozess-Steuerung nach Anspruch 1, dadurch gekennzeichnet, dass Prozess-Steuerung des Weiteren eine grafische Ansicht enthält, um Informationen, die den Betriebsablauf der Prozess-Steuerung betreffen, über eine Benutzerschnittstelle anzeigt.
  7. Prozess-Steuerung nach Anspruch 1, ferner enthaltend einen Prozesssimulationsblock, der kommunikativ mit den Steuereingängen (IN1–IN3) und Steuerausgängen (OUT1–OUT3) verbunden ist.
  8. Prozess-Steuerung nach Anspruch 7, dadurch gekennzeichnet, dass der Prozesssimulationsblock ein Prozessmodell enthält, das den Betrieb des Prozesses simuliert.
  9. Verfahren zur Entwicklung eines fortschrittlichen Steuerelements (38) zur Verwendung in einer Prozesssteuerroutine, die einen Prozess (58) steuert, wobei das Verfahren die folgenden Schritte enthält: a) Erzeugen eines fortschrittlichen Steuerelements (38) mit einer ersten Vielzahl von Steuereingängen (IN1–IN3) zum Empfangen von einer Vielzahl von Prozessausgangssignalen aus Prozessausgängen (Y1–Y6), einer zweiten Vielzahl von Steuerausgängen (OUT1–OUT3) zum Abgeben von Steuersignalen an eine Vielzahl von Prozesseingänge (X1–X5) des Prozesses (58) und nicht-konfigurierte keine Steuerlogikparameter beinhaltende Mehrfacheingabe-/Mehrfachausgabe-Steuerlogik (102) durch eine Workstation oder Steuereinrichtung (11); b) Herstellen einer Kommunikationsverbindung für das fortschrittliche Steuerelement (38), wobei die Steuerausgänge (OUT1–OUT3) mit den Prozesseingängen (X1–X5) und die Steuereingänge (IN1–IN3) mit den Prozessausgängen (Y1–Y6) in Kommunikationsverbindung gesetzt werden; c) Ausführen des fortschrittlichen Steuerelements (38) auf der Steuereinrichtung (11) oder der Workstation (13), um Anregungswellenformen an jeden der Prozesseingänge (X1–X5) abzugeben; d) Sammeln von Daten durch das fortschrittliche Steuerelement (38), wobei die Daten das Ansprechen jedes der Prozessausgänge (Y1–Y6) auf die Anregungswellenformen wiedergeben; e) Erzeugen eines Prozessmodells aus den gesammelten Daten; f) Entwickeln von fortschrittlichen Steuerlogikparametern aus dem Prozessmodell, wobei Koeffizienten zur modellvorhersagenden Steuerung entwickelt werden; und g) Konfigurieren der Mehrfacheingabe-/Mehrfachausgabe-Steuerlogik des fortschrittlichen Steuerelements (38) gemäß den fortschrittlichen Steuerlogikparametern, um dem fortschrittlichen Steuerelement (38) das Steuern des Prozesses (58) zu ermöglichen wobei das fortschrittliche Steuerelement ein Steuersignal an jeden der Vielzahl von Steuerausgängen abgibt, basierend auf (i) der konfigurierten Mehrfacheingabe-/Mehrfachausgabe-Steuerlogik, und (ii) der Vielzahl von Prozessausgangssignalen, die an der Vielzahl von Steuereingängen empfangen wurden.
  10. Verfahren nach Anspruch 9, dadurch gekennzeichnet, dass das fortschrittliche Steuerelement ein Funktionsblock oder Fieldbus-Funktionsblock ist.
  11. Verfahren nach Anspruch 9, dadurch gekennzeichnet, dass der Schritt b) die Schritte umfasst: b1) Herstellen einer Kommunikationsverbindung eines der Steuereingänge (OUT1–OUT3) mit einem ersten Funktionsblock und b2) Herstellen einer Kommunikationsverbindung eines der Steuerausgänge (OUT1–OUT3) mit einem zweiten Funktionsblock.
  12. Verfahren nach Anspruch 11, dadurch gekennzeichnet, dass der Schritt b2) den Schritt des Herstellens einer Kommunikationsverbindung des einen der Steuerausgänge (OUT1–OUT3) mit einem Steuerfunktionsblock beinhaltet, um eine Steuerschleife in der Prozesssteuerroutine zu steuern.
  13. Verfahren nach Anspruch 11, dadurch gekennzeichnet, dass der Schritt b2) den Schritt des Herstellens einer Kommunikationsverbindung des einen der Steuerausgänge (OUT1–OUT3) mit einem Ausgangsfunktionsblock beinhaltet, der zu einer Anlageneinrichtung (1522) gehört, um die Anlageneinrichtung (1522) zu steuern.
  14. Verfahren nach Anspruch 9, dadurch gekennzeichnet, dass der Schritt c) den Schritt des Erzeugens einer Reihe von Impulsen mit pseudo-zufallsverteilter Länge als die Anregungswellenformen enthält.
  15. Verfahren nach Anspruch 9, dadurch gekennzeichnet, dass der Schritt c) den Schritt des Erzeugens einer Reihe von Anregungswellenformen beinhaltet, die dazu ausgelegt sind, ein Prozessmodell für den Prozess (58) zu entwickeln, das zur Erzeugung einer modellvorhersagenden Steuereinrichtung verwendet wird.
  16. Verfahren nach Anspruch 9, dadurch gekennzeichnet, dass der Schritt e) den Schritt des Erzeugens eines Satzes von Ansprechkurven aus den gesammelten Daten als das Prozessmodell beinhaltet.
  17. Verfahren nach Anspruch 16, dadurch gekennzeichnet, dass der Schritt e) den Schritt des Änderns einer oder mehrerer Kurven des Satzes von Ansprechkurven beinhaltet, die aus den gesammelten Daten erzeugt wurden, um einen geänderten Satz von Ansprechkurven zu erzeugen und den geänderten Satz von Ansprechkurven als Prozessmodell zu verwenden.
  18. Verfahren nach Anspruch 9, gekennzeichnet durch den Schritt h) Verwenden des fortschrittlichen Steuerelements in einer Simulationsumgebung.
  19. Verfahren nach Anspruch 18, dadurch gekennzeichnet, dass der Schritt h) den Schritt des Verbindens des fortschrittlichen Steuerelements mit einem simulierten Prozesselement beinhaltet.
  20. Verfahren nach Anspruch 19, dadurch gekennzeichnet, dass der Schritt h) den Schritt des Entwickelns des simulierten Prozesselements aus dem Prozessmodell beinhaltet.
  21. Verfahren nach Anspruch 19, dadurch gekennzeichnet, dass der Schritt h) den Schritt der Änderung des Prozessmodells sowie der Entwicklung des simulierten Prozesselements aus dem geänderten Prozessmodell beinhaltet.
  22. Verfahren nach Anspruch 9, dadurch gekennzeichnet, dass der Schritt a) den Schritt der Einbindung einer Steuerlogik in das fortschrittliche Steuerelement vor dem Schritt b) beinhaltet.
  23. Verfahren nach Anspruch 9, ferner enthaltend den Schritt: i) Vorsehen des Prozessmodells für den fortschrittlichen Steuerblock zur Verwendung bei der Steuerung des Prozesses (58).
  24. Verfahren nach Anspruch 9, dadurch gekennzeichnet, dass der Schritt e) den Schritt des Überprüfens der gesammelten Daten und des Erzeugens des Prozessmodells aus den überprüften Daten beinhaltet.
  25. System zur Entwicklung eines fortschrittlichen Steuerelements zur Verwendung in einer Prozesssteuerroutine, wobei das System zur Durchführung des Verfahrens nach einem der Ansprüche 9–24 ausgebildet ist.
DE10048360.7A 1999-10-04 2000-09-29 Integrierte, fortschrittliche Steuerblöcke in Prozeßsteuersystemen Expired - Lifetime DE10048360B4 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US09/412,078 US6445963B1 (en) 1999-10-04 1999-10-04 Integrated advanced control blocks in process control systems
US09/412,078 1999-10-04

Publications (2)

Publication Number Publication Date
DE10048360A1 DE10048360A1 (de) 2001-05-10
DE10048360B4 true DE10048360B4 (de) 2016-09-15

Family

ID=23631513

Family Applications (1)

Application Number Title Priority Date Filing Date
DE10048360.7A Expired - Lifetime DE10048360B4 (de) 1999-10-04 2000-09-29 Integrierte, fortschrittliche Steuerblöcke in Prozeßsteuersystemen

Country Status (5)

Country Link
US (1) US6445963B1 (de)
JP (3) JP5190161B2 (de)
DE (1) DE10048360B4 (de)
GB (1) GB2355545B (de)
HK (1) HK1061578A1 (de)

Families Citing this family (174)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8044793B2 (en) 2001-03-01 2011-10-25 Fisher-Rosemount Systems, Inc. Integrated device alerts in a process control system
US6633782B1 (en) * 1999-02-22 2003-10-14 Fisher-Rosemount Systems, Inc. Diagnostic expert in a process control system
US7636915B1 (en) * 1999-12-02 2009-12-22 Invensys Systems, Inc. Multi-level multi-variable control process program execution scheme for distributed process control systems
US6826521B1 (en) * 2000-04-06 2004-11-30 Abb Automation Inc. System and methodology and adaptive, linear model predictive control based on rigorous, nonlinear process model
US6721609B1 (en) * 2000-06-14 2004-04-13 Fisher-Rosemount Systems, Inc. Integrated optimal model predictive control in a process control system
US6580953B1 (en) * 2000-06-14 2003-06-17 Vansco Electronics Ltd. Electrical control apparatus including retrievable stored operationing program
US8280533B2 (en) * 2000-06-20 2012-10-02 Fisher-Rosemount Systems, Inc. Continuously scheduled model parameter based adaptive controller
US6643555B1 (en) * 2000-10-10 2003-11-04 Schneider Automation Inc. Method and apparatus for generating an application for an automation control system
US6742136B2 (en) * 2000-12-05 2004-05-25 Fisher-Rosemount Systems Inc. Redundant devices in a process control system
DE10065418A1 (de) * 2000-12-27 2002-07-18 Siemens Ag Integrationsverfahren für Automatisierungskomponenten
CN1310106C (zh) 2001-03-01 2007-04-11 费舍-柔斯芒特系统股份有限公司 制炼控制系统数据的远程分析
US7720727B2 (en) 2001-03-01 2010-05-18 Fisher-Rosemount Systems, Inc. Economic calculations in process control system
US7389204B2 (en) 2001-03-01 2008-06-17 Fisher-Rosemount Systems, Inc. Data presentation system for abnormal situation prevention in a process plant
US6795798B2 (en) 2001-03-01 2004-09-21 Fisher-Rosemount Systems, Inc. Remote analysis of process control plant data
US8073967B2 (en) 2002-04-15 2011-12-06 Fisher-Rosemount Systems, Inc. Web services-based communications for use with process control systems
ATE377209T1 (de) * 2001-05-25 2007-11-15 Parametric Optimization Soluti Verbesserte prozesssteuerung
GB0113627D0 (en) * 2001-06-05 2001-07-25 Univ Stirling Controller and method of controlling an apparatus
US8357454B2 (en) 2001-08-02 2013-01-22 Siemens Energy, Inc. Segmented thermal barrier coating
WO2003025689A2 (en) * 2001-09-14 2003-03-27 Ibex Process Technology, Inc. Large scale process control by driving factor identification
US20070088518A1 (en) * 2001-12-27 2007-04-19 Michael Braun Automated method for generating program modules, to be used for controlling field devices, from a machine-readable parameterized specification of the field devices
US6901300B2 (en) * 2002-02-07 2005-05-31 Fisher-Rosemount Systems, Inc.. Adaptation of advanced process control blocks in response to variable process delay
US6973508B2 (en) * 2002-02-12 2005-12-06 Fisher-Rosemount Systems, Inc. Highly versatile process control system controller
US7110924B2 (en) * 2002-05-15 2006-09-19 Caterpillar Inc. Method for controlling the performance of a target system
US7289861B2 (en) * 2003-01-28 2007-10-30 Fisher-Rosemount Systems, Inc. Process control system with an embedded safety system
US7076312B2 (en) * 2002-08-02 2006-07-11 Fisher-Rosemount Systems, Inc. Integrated electronic signatures for approval of process control and safety system software objects
DE10362369B3 (de) * 2002-09-11 2022-09-29 Fisher-Rosemount Systems, Inc. Integrierte Modell-Vorhersagesteuerung und -optimierung innerhalb eines Prozesssteuerungssystems
US7376472B2 (en) * 2002-09-11 2008-05-20 Fisher-Rosemount Systems, Inc. Integrated model predictive control and optimization within a process control system
US7050863B2 (en) * 2002-09-11 2006-05-23 Fisher-Rosemount Systems, Inc. Integrated model predictive control and optimization within a process control system
US7146231B2 (en) 2002-10-22 2006-12-05 Fisher-Rosemount Systems, Inc.. Smart process modules and objects in process plants
US9983559B2 (en) * 2002-10-22 2018-05-29 Fisher-Rosemount Systems, Inc. Updating and utilizing dynamic process simulation in an operating process environment
DE10348563B4 (de) * 2002-10-22 2014-01-09 Fisher-Rosemount Systems, Inc. Integration von Grafikdisplayelementen, Prozeßmodulen und Steuermodulen in Prozeßanlagen
US20040117166A1 (en) * 2002-12-11 2004-06-17 Cesar Cassiolato Logic arrangement, system and method for automatic generation and simulation of a fieldbus network layout
US6941177B2 (en) * 2002-12-17 2005-09-06 Xerox Corporation System and method for implementing real-time applications based on stochastic compute time algorithms
US7865251B2 (en) * 2003-01-28 2011-01-04 Fisher-Rosemount Systems, Inc. Method for intercontroller communications in a safety instrumented system or a process control system
US7272454B2 (en) * 2003-06-05 2007-09-18 Fisher-Rosemount Systems, Inc. Multiple-input/multiple-output control blocks with non-linear predictive capabilities
JP4166637B2 (ja) * 2003-07-10 2008-10-15 株式会社東芝 プロセス制御装置の調整方法及びその調整ツール
US7018800B2 (en) * 2003-08-07 2006-03-28 Rosemount Inc. Process device with quiescent current diagnostics
US7280048B2 (en) * 2003-08-07 2007-10-09 Rosemount Inc. Process control loop current verification
US7447664B2 (en) * 2003-08-28 2008-11-04 Boeing Co Neural network predictive control cost function designer
DE10342769A1 (de) * 2003-09-16 2005-04-21 Voith Paper Patent Gmbh System zur computergestützten Messung von Qualitäts- und/oder Prozessdaten
US7565655B2 (en) 2003-10-17 2009-07-21 International Business Machines Corporation Methods and systems for control discovery in computing systems
DE102004058238B4 (de) * 2003-12-03 2016-02-04 Fisher-Rosemount Systems, Inc. Adaptive, multivariable Prozesssteuerung, die Modellschaltung und Attribut-Interpolation nutzt
US7222047B2 (en) * 2003-12-19 2007-05-22 Teletrol Systems, Inc. System and method for monitoring and controlling an aquatic environment
JP2005209281A (ja) * 2004-01-22 2005-08-04 Hitachi Global Storage Technologies Netherlands Bv データ記憶装置、記憶装置の制御方法及び磁気ディスク駆動装置
US7234084B2 (en) * 2004-02-18 2007-06-19 Emerson Process Management System and method for associating a DLPDU received by an interface chip with a data measurement made by an external circuit
US7058089B2 (en) * 2004-02-18 2006-06-06 Rosemount, Inc. System and method for maintaining a common sense of time on a network segment
US7676287B2 (en) 2004-03-03 2010-03-09 Fisher-Rosemount Systems, Inc. Configuration system and method for abnormal situation prevention in a process plant
DE102004018642A1 (de) * 2004-04-16 2005-12-01 Sick Ag Prozesssteuerung
JP2007536634A (ja) * 2004-05-04 2007-12-13 フィッシャー−ローズマウント・システムズ・インコーポレーテッド プロセス制御システムのためのサービス指向型アーキテクチャ
US7729789B2 (en) 2004-05-04 2010-06-01 Fisher-Rosemount Systems, Inc. Process plant monitoring based on multivariate statistical analysis and on-line process simulation
US7415312B2 (en) * 2004-05-25 2008-08-19 Barnett Jr James R Process module tuning
WO2005124491A1 (en) * 2004-06-12 2005-12-29 Fisher-Rosemount Systems, Inc. System and method for detecting an abnormal situation associated with a process gain of a control loop
US7904488B2 (en) 2004-07-21 2011-03-08 Rockwell Automation Technologies, Inc. Time stamp methods for unified plant model
US8756521B1 (en) 2004-09-30 2014-06-17 Rockwell Automation Technologies, Inc. Systems and methods for automatic visualization configuration
US7173539B2 (en) * 2004-09-30 2007-02-06 Florida Power And Light Company Condition assessment system and method
US20060089737A1 (en) * 2004-10-08 2006-04-27 General Electric Company Methods and systems for integrating design software modules
US7248968B2 (en) * 2004-10-29 2007-07-24 Deere & Company Obstacle detection using stereo vision
US7467614B2 (en) 2004-12-29 2008-12-23 Honeywell International Inc. Pedal position and/or pedal change rate for use in control of an engine
US8005647B2 (en) * 2005-04-08 2011-08-23 Rosemount, Inc. Method and apparatus for monitoring and performing corrective measures in a process plant using monitoring data with corrective measures data
US9201420B2 (en) 2005-04-08 2015-12-01 Rosemount, Inc. Method and apparatus for performing a function in a process plant using monitoring data with criticality evaluation data
US7672737B2 (en) 2005-05-13 2010-03-02 Rockwell Automation Technologies, Inc. Hierarchically structured data model for utilization in industrial automation environments
US8799800B2 (en) 2005-05-13 2014-08-05 Rockwell Automation Technologies, Inc. Automatic user interface generation
US7650405B2 (en) 2005-05-13 2010-01-19 Rockwell Automation Technologies, Inc. Tracking and tracing across process boundaries in an industrial automation environment
US7676281B2 (en) 2005-05-13 2010-03-09 Rockwell Automation Technologies, Inc. Distributed database in an industrial automation environment
US7809683B2 (en) 2005-05-13 2010-10-05 Rockwell Automation Technologies, Inc. Library that includes modifiable industrial automation objects
FR2887044B1 (fr) * 2005-06-10 2007-08-10 Wuilfert Societe Par Actions S Dispositif de reglage automatique des asservissements d'un simulateur mecanique de mouvements et dispositif associe
JP4442524B2 (ja) * 2005-07-12 2010-03-31 株式会社ジェイテクト 安全plc
US7389773B2 (en) 2005-08-18 2008-06-24 Honeywell International Inc. Emissions sensors for fuel control in engines
US7881812B2 (en) 2005-09-29 2011-02-01 Rockwell Automation Technologies, Inc. Editing and configuring device
US7548789B2 (en) * 2005-09-29 2009-06-16 Rockwell Automation Technologies, Inc. Editing lifecycle and deployment of objects in an industrial automation environment
US7877154B2 (en) * 2005-09-30 2011-01-25 Fisher-Rosemount Systems, Inc. Method and system for controlling a batch process
US7451004B2 (en) * 2005-09-30 2008-11-11 Fisher-Rosemount Systems, Inc. On-line adaptive model predictive control in a process control system
US7526794B2 (en) 2005-09-30 2009-04-28 Rockwell Automation Technologies, Inc. Data perspectives in controller system and production management systems
US7734590B2 (en) 2005-09-30 2010-06-08 Rockwell Automation Technologies, Inc. Incremental association of metadata to production data
US8484250B2 (en) 2005-09-30 2013-07-09 Rockwell Automation Technologies, Inc. Data federation with industrial control systems
US7660638B2 (en) 2005-09-30 2010-02-09 Rockwell Automation Technologies, Inc. Business process execution engine
US8275680B2 (en) 2005-09-30 2012-09-25 Rockwell Automation Technologies, Inc. Enabling transactional mechanisms in an automated controller system
US7801628B2 (en) 2005-09-30 2010-09-21 Rockwell Automation Technologies, Inc. Industrial operator interfaces interacting with higher-level business workflow
US7738975B2 (en) 2005-10-04 2010-06-15 Fisher-Rosemount Systems, Inc. Analytical server integrated in a process control network
US7444191B2 (en) * 2005-10-04 2008-10-28 Fisher-Rosemount Systems, Inc. Process model identification in a process control system
GB2446343B (en) * 2005-12-05 2011-06-08 Fisher Rosemount Systems Inc Multi-objective predictive process optimization with concurrent process simulation
US20070135944A1 (en) * 2005-12-12 2007-06-14 Schmid James J Method, apparatus and computer program product for providing status of a process
US7840287B2 (en) 2006-04-13 2010-11-23 Fisher-Rosemount Systems, Inc. Robust process model identification in model based control techniques
US8005575B2 (en) 2006-06-01 2011-08-23 General Electric Company Methods and apparatus for model predictive control in a real time controller
US7657399B2 (en) 2006-07-25 2010-02-02 Fisher-Rosemount Systems, Inc. Methods and systems for detecting deviation of a process variable from expected values
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
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
US7912676B2 (en) 2006-07-25 2011-03-22 Fisher-Rosemount Systems, Inc. Method and system for detecting abnormal operation in a process plant
US8527252B2 (en) * 2006-07-28 2013-09-03 Emerson Process Management Power & Water Solutions, Inc. Real-time synchronized control and simulation within a process plant
US7949417B2 (en) * 2006-09-22 2011-05-24 Exxonmobil Research And Engineering Company Model predictive controller solution analysis process
CN102789226B (zh) 2006-09-28 2015-07-01 费舍-柔斯芒特系统股份有限公司 热交换器中的异常情况预防
US8014880B2 (en) 2006-09-29 2011-09-06 Fisher-Rosemount Systems, Inc. On-line multivariate analysis in a distributed process control system
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
EP2111580A1 (de) * 2007-02-12 2009-10-28 Philips Intellectual Property & Standards GmbH Vorrichtung für ein vernetztes steuersystem
JP2008242572A (ja) * 2007-03-26 2008-10-09 Hitachi Ltd 制御処理シミュレーション装置
US10410145B2 (en) 2007-05-15 2019-09-10 Fisher-Rosemount Systems, Inc. Automatic maintenance estimation in a plant environment
US8407716B2 (en) * 2007-05-31 2013-03-26 Fisher-Rosemount Systems, Inc. Apparatus and methods to access information associated with a process control system
JP5294136B2 (ja) * 2007-07-18 2013-09-18 横河電機株式会社 目標値入力装置
US20110264243A1 (en) 2007-08-14 2011-10-27 Ulrich Kunze Method of Control for a Process Control System, and Control System for Controlling an Industrial Process
US8301676B2 (en) 2007-08-23 2012-10-30 Fisher-Rosemount Systems, Inc. Field device with capability of calculating digital filter coefficients
US7702401B2 (en) 2007-09-05 2010-04-20 Fisher-Rosemount Systems, Inc. System for preserving and displaying process control data associated with an abnormal situation
US9323247B2 (en) 2007-09-14 2016-04-26 Fisher-Rosemount Systems, Inc. Personalized plant asset data representation and search system
US20090089234A1 (en) * 2007-09-28 2009-04-02 Rockwell Automation Technologies, Inc. Automated code generation for simulators
US8548777B2 (en) * 2007-09-28 2013-10-01 Rockwell Automation Technologies, Inc. Automated recommendations from simulation
US20090089031A1 (en) * 2007-09-28 2009-04-02 Rockwell Automation Technologies, Inc. Integrated simulation of controllers and devices
US7801710B2 (en) * 2007-09-28 2010-09-21 Rockwell Automation Technologies, Inc. Simulation controls for model variability and randomness
US20090089029A1 (en) * 2007-09-28 2009-04-02 Rockwell Automation Technologies, Inc. Enhanced execution speed to improve simulation performance
US8055479B2 (en) 2007-10-10 2011-11-08 Fisher-Rosemount Systems, Inc. Simplified algorithm for abnormal situation prevention in load following applications including plugged line diagnostics in a dynamic process
US20090132060A1 (en) * 2007-11-21 2009-05-21 Winston Jenks Foundation fieldbus simulation system
DE102008023901B4 (de) * 2008-05-16 2010-05-12 Festo Ag & Co. Kg Simulationsmodul und Simulationsverfahren für eine Wartungsgeräteanordnung
US8060290B2 (en) 2008-07-17 2011-11-15 Honeywell International Inc. Configurable automotive controller
DE102008036968A1 (de) * 2008-08-08 2010-02-11 Endress + Hauser Gmbh + Co. Kg Diagnoseverfahren eines Prozessautomatisierungssystem
DE112009002304T5 (de) * 2008-09-29 2012-01-19 Fisher-Rosemount Systems, Inc. Effiziente Auslegung und Konfigurierung von Elementen in einem Prozesssteuerungssystem
US8881039B2 (en) 2009-03-13 2014-11-04 Fisher-Rosemount Systems, Inc. Scaling composite shapes for a graphical human-machine interface
US9256219B2 (en) * 2009-08-11 2016-02-09 Fisher-Rosemount Systems, Inc. System configuration using templates
US8620461B2 (en) * 2009-09-24 2013-12-31 Honeywell International, Inc. Method and system for updating tuning parameters of a controller
US8825183B2 (en) 2010-03-22 2014-09-02 Fisher-Rosemount Systems, Inc. Methods for a data driven interface based on relationships between process control tags
CN101813918A (zh) * 2010-04-09 2010-08-25 哈尔滨工业大学 基于模糊神经网络的通讯机房既有空调的控制系统
US8484401B2 (en) 2010-04-15 2013-07-09 Rockwell Automation Technologies, Inc. Systems and methods for conducting communications among components of multidomain industrial automation system
US8984533B2 (en) 2010-04-15 2015-03-17 Rockwell Automation Technologies, Inc. Systems and methods for conducting communications among components of multidomain industrial automation system
US9392072B2 (en) 2010-04-15 2016-07-12 Rockwell Automation Technologies, Inc. Systems and methods for conducting communications among components of multidomain industrial automation system
US8396695B2 (en) * 2010-05-06 2013-03-12 Honeywell International Inc. Reference model for production plants and related system and method
US8504175B2 (en) 2010-06-02 2013-08-06 Honeywell International Inc. Using model predictive control to optimize variable trajectories and system control
TWI427722B (zh) * 2010-08-02 2014-02-21 Univ Nat Cheng Kung 使用具有信心指標之虛擬量測的先進製程控制系統與方法及其電腦程式產品
US9217565B2 (en) 2010-08-16 2015-12-22 Emerson Process Management Power & Water Solutions, Inc. Dynamic matrix control of steam temperature with prevention of saturated steam entry into superheater
US9335042B2 (en) 2010-08-16 2016-05-10 Emerson Process Management Power & Water Solutions, Inc. Steam temperature control using dynamic matrix control
US9447963B2 (en) 2010-08-16 2016-09-20 Emerson Process Management Power & Water Solutions, Inc. Dynamic tuning of dynamic matrix control of steam temperature
US20120245710A1 (en) * 2011-03-22 2012-09-27 General Electric Company Control system with state capture and restoration
US9927788B2 (en) 2011-05-19 2018-03-27 Fisher-Rosemount Systems, Inc. Software lockout coordination between a process control system and an asset management system
US9020768B2 (en) 2011-08-16 2015-04-28 Rosemount Inc. Two-wire process control loop current diagnostics
US9677493B2 (en) 2011-09-19 2017-06-13 Honeywell Spol, S.R.O. Coordinated engine and emissions control system
US9163828B2 (en) 2011-10-31 2015-10-20 Emerson Process Management Power & Water Solutions, Inc. Model-based load demand control
US20130111905A1 (en) 2011-11-04 2013-05-09 Honeywell Spol. S.R.O. Integrated optimization and control of an engine and aftertreatment system
US9650934B2 (en) 2011-11-04 2017-05-16 Honeywell spol.s.r.o. Engine and aftertreatment optimization system
WO2013103383A1 (en) 2012-01-06 2013-07-11 1/2)Ge Intelligent Platforms, Inc. Apparatus and method for third party creation of control logic
US9529348B2 (en) 2012-01-24 2016-12-27 Emerson Process Management Power & Water Solutions, Inc. Method and apparatus for deploying industrial plant simulators using cloud computing technologies
DE102012204358A1 (de) * 2012-03-20 2013-09-26 Siemens Aktiengesellschaft Verfahren zum Betreiben einer Prozess- und/oder Fertigungsanlage, Steuervorrichtung einer solchen Anlage und Modul für die Steuervorrichtung
DE102012010537A1 (de) * 2012-05-29 2013-12-05 Robert Bosch Gmbh Programmiervorlage für verteilteAnwendungsprogramme
US20140058544A1 (en) * 2012-08-21 2014-02-27 Ge Intelligent Platforms, Inc. Apparatus and method for the deployment and monitoring of control logic
US9292010B2 (en) * 2012-11-05 2016-03-22 Rockwell Automation Technologies, Inc. Online integration of model-based optimization and model-less control
DK177915B1 (en) * 2013-05-28 2015-01-05 Core As Process control method
US9086688B2 (en) 2013-07-09 2015-07-21 Fisher-Rosemount Systems, Inc. State machine function block with user-definable actions on a transition between states
CN103439889B (zh) * 2013-08-28 2015-10-21 山西太钢不锈钢股份有限公司 基于排放烟气分析的烧结终点预测方法
DE102013220432A1 (de) * 2013-10-10 2015-04-16 Robert Bosch Gmbh Modellberechnungseinheit für einen integrierten Steuerbaustein zur Berechnung von LOLIMOT
US9841185B2 (en) 2013-10-29 2017-12-12 Emerson Process Management Power & Water Solutions, Inc. Steam temperature control using model-based temperature balancing
US9665089B2 (en) * 2015-01-21 2017-05-30 Honeywell International Inc. Method and apparatus for advanced control using function blocks in industrial process control and automation systems
EP3051367B1 (de) 2015-01-28 2020-11-25 Honeywell spol s.r.o. Ansatz und system zur handhabung von einschränkungen für gemessene störungen mit unsicherer vorschau
EP3056706A1 (de) 2015-02-16 2016-08-17 Honeywell International Inc. Ansatz zur nachbehandlungssystemmodellierung und modellidentifizierung
EP3091212A1 (de) 2015-05-06 2016-11-09 Honeywell International Inc. Identifikationsansatz für verbrennungsmotor-mittelwertmodelle
CN104932488B (zh) * 2015-06-30 2017-06-16 南京工业大学 一种模型预测控制性能评估与诊断方法
EP3734375B1 (de) 2015-07-31 2023-04-05 Garrett Transportation I Inc. Quadratischer programmlöser für mpc mit variabler anordnung
US10272779B2 (en) 2015-08-05 2019-04-30 Garrett Transportation I Inc. System and approach for dynamic vehicle speed optimization
US10367612B2 (en) 2015-09-30 2019-07-30 Rosemount Inc. Process variable transmitter with self-learning loop diagnostics
CN105511263B (zh) * 2015-12-18 2018-08-07 浙江大学 一种基于层次分解的分布式模型预测控制方法
US10415492B2 (en) 2016-01-29 2019-09-17 Garrett Transportation I Inc. Engine system with inferential sensor
US10036338B2 (en) 2016-04-26 2018-07-31 Honeywell International Inc. Condition-based powertrain control system
US10124750B2 (en) 2016-04-26 2018-11-13 Honeywell International Inc. Vehicle security module system
US10878140B2 (en) 2016-07-27 2020-12-29 Emerson Process Management Power & Water Solutions, Inc. Plant builder system with integrated simulation and control system configuration
US10929324B2 (en) * 2016-10-07 2021-02-23 Schneider Electric Systems Usa, Inc. Systems and methods for communication and/or control of scalable, modular network nodes
US11199120B2 (en) 2016-11-29 2021-12-14 Garrett Transportation I, Inc. Inferential flow sensor
EP3404497B1 (de) 2017-05-15 2021-11-10 Siemens Aktiengesellschaft Verfahren und system zur bereitstellung einer optimierten steuerung eines komplexen dynamischen systems
US11057213B2 (en) 2017-10-13 2021-07-06 Garrett Transportation I, Inc. Authentication system for electronic control unit on a bus
US11613094B2 (en) * 2018-01-31 2023-03-28 Mitsubishi Heavy Industries Machinery Systems, Ltd. Method for manufacturing cardboard sheet using prediction model of sheet warpage with deletion of prescribed information
CN108897215B (zh) * 2018-06-25 2020-07-14 西北工业大学 基于分布式模型预测控制的多海洋机器人协同环形扫描方法
US11429409B2 (en) * 2018-09-04 2022-08-30 Lam Research Corporation Software emulator for hardware components in a gas delivery system of substrate processing system
TWI791949B (zh) * 2019-03-15 2023-02-11 日商住友重機械工業股份有限公司 監視裝置、顯示裝置、監視方法及監視程式
EP3715965A1 (de) * 2019-03-27 2020-09-30 Siemens Aktiengesellschaft Verfahren zum virtuellen testen einer anlagensteuerung sowie simulationsvorrichtung
US11604459B2 (en) 2019-07-12 2023-03-14 Emerson Process Management Power & Water Solutions, Inc. Real-time control using directed predictive simulation within a control system of a process plant
CN111596627A (zh) * 2020-05-27 2020-08-28 南京南瑞继保电气有限公司 实际控制器和虚拟控制器混合组网系统及其数据通讯的方法
US11424865B2 (en) 2020-12-10 2022-08-23 Fisher-Rosemount Systems, Inc. Variable-level integrity checks for communications in process control environments
US11418969B2 (en) 2021-01-15 2022-08-16 Fisher-Rosemount Systems, Inc. Suggestive device connectivity planning
CN113325694B (zh) * 2021-05-26 2022-12-09 西安交通大学 一种基于机器学习的模型预测控制参数的整定方法

Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0433102A (ja) * 1990-05-30 1992-02-04 Toshiba Corp モデル予測制御装置
JPH0695706A (ja) * 1992-09-11 1994-04-08 Toshiba Corp モデル予測制御装置
US5477449A (en) * 1993-04-14 1995-12-19 Kabushiki Kaisha Toshiba Hierarchical model predictive control system based on accurate manipulation variable prediction
WO1996034324A1 (en) * 1995-04-28 1996-10-31 Exxon Chemical Patents Inc. Feedback method for controlling non-linear processes
US5594858A (en) * 1993-07-29 1997-01-14 Fisher-Rosemount Systems, Inc. Uniform control template generating system and method for process control programming
WO1997042553A1 (en) * 1996-05-06 1997-11-13 Pavilion Technologies, Inc. Method and apparatus for modeling dynamic and steady-state processes for prediction, control and optimization
DE69409250T2 (de) * 1993-10-07 1998-11-05 Honeywell Inc Störungsprädiktor auf basis eines neuronalen netzes zur modellprädiktiven regelung
US5838656A (en) * 1990-01-31 1998-11-17 Sony Corporation Optical disk system having an objective lens with a numerical aperture related to the thickness of the protective layer
US5920478A (en) * 1997-06-27 1999-07-06 Oakleaf Engineering, Inc. Multi-input multi-output generic non-interacting controller
US7257523B1 (en) * 1999-05-06 2007-08-14 Fisher-Rosemount Systems, Inc. Integrated distributed process control system functionality on a single computer

Family Cites Families (30)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6394304A (ja) * 1986-10-09 1988-04-25 Omron Tateisi Electronics Co 離散時間制御装置
DE69122313T2 (de) 1990-06-21 1997-03-20 Honeywell Inc Auf variablem Horizont basierende adaptive Steuerung mit Mitteln zur Minimierung der Betriebskosten
JPH04266101A (ja) * 1991-02-20 1992-09-22 Toshiba Corp 多変数モデル予測制御装置
JPH04309101A (ja) * 1991-04-08 1992-10-30 Toshiba Corp モデル予測制御の入力装置
EP0524317A4 (en) 1991-02-08 1995-02-15 Tokyo Shibaura Electric Co Model forecasting 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
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
EP0687369A1 (de) 1993-03-02 1995-12-20 Pavilion Technologies Inc. Methode und vorrichtung zur auswertung eines neuronalen netzes innerhalb von gewünschten betriebsparametergrenzen
JPH06289907A (ja) * 1993-03-30 1994-10-18 Chubu Electric Power Co Inc 調整支援システム
US5453925A (en) * 1993-05-28 1995-09-26 Fisher Controls International, Inc. System and method for automatically tuning a process controller
JPH0784609A (ja) * 1993-09-14 1995-03-31 Toshiba Corp 制御モデル調整装置
JP3040901B2 (ja) * 1993-10-20 2000-05-15 株式会社日立製作所 ニューラルネットワークによる制御方法および内蔵制御装置
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
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
JPH08211903A (ja) * 1995-02-06 1996-08-20 Meidensha Corp モデル予測制御におけるオートチューニング装置
US5748467A (en) * 1995-02-21 1998-05-05 Fisher-Rosemont Systems, Inc. Method of adapting and applying control parameters in non-linear process controllers
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
US5659467A (en) 1996-06-26 1997-08-19 Texas Instruments Incorporated Multiple model supervisor control system and method of operation
JPH1091211A (ja) * 1996-09-13 1998-04-10 Toshiba Corp 制御定数調整装置
JP3339810B2 (ja) * 1997-12-03 2002-10-28 トヨタ自動車株式会社 多入力多出力制御装置、方法、及び媒体
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
US6298454B1 (en) * 1999-02-22 2001-10-02 Fisher-Rosemount Systems, Inc. Diagnostics in a process control system

Patent Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5838656A (en) * 1990-01-31 1998-11-17 Sony Corporation Optical disk system having an objective lens with a numerical aperture related to the thickness of the protective layer
JPH0433102A (ja) * 1990-05-30 1992-02-04 Toshiba Corp モデル予測制御装置
JP2954660B2 (ja) * 1990-05-30 1999-09-27 株式会社東芝 モデル予測制御装置
JPH0695706A (ja) * 1992-09-11 1994-04-08 Toshiba Corp モデル予測制御装置
US5477449A (en) * 1993-04-14 1995-12-19 Kabushiki Kaisha Toshiba Hierarchical model predictive control system based on accurate manipulation variable prediction
US5594858A (en) * 1993-07-29 1997-01-14 Fisher-Rosemount Systems, Inc. Uniform control template generating system and method for process control programming
DE69409250T2 (de) * 1993-10-07 1998-11-05 Honeywell Inc Störungsprädiktor auf basis eines neuronalen netzes zur modellprädiktiven regelung
WO1996034324A1 (en) * 1995-04-28 1996-10-31 Exxon Chemical Patents Inc. Feedback method for controlling non-linear processes
WO1997042553A1 (en) * 1996-05-06 1997-11-13 Pavilion Technologies, Inc. Method and apparatus for modeling dynamic and steady-state processes for prediction, control and optimization
US5920478A (en) * 1997-06-27 1999-07-06 Oakleaf Engineering, Inc. Multi-input multi-output generic non-interacting controller
US7257523B1 (en) * 1999-05-06 2007-08-14 Fisher-Rosemount Systems, Inc. Integrated distributed process control system functionality on a single computer

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
JP 2954660 B2 (Maschinenübersetzung), AIPN JPO (abgerufen am 30.11.2012)

Also Published As

Publication number Publication date
JP2012164341A (ja) 2012-08-30
JP5190161B2 (ja) 2013-04-24
JP2014059900A (ja) 2014-04-03
GB0024094D0 (en) 2000-11-15
GB2355545A (en) 2001-04-25
JP2001216003A (ja) 2001-08-10
GB2355545B (en) 2004-02-25
DE10048360A1 (de) 2001-05-10
JP5833088B2 (ja) 2015-12-16
HK1061578A1 (en) 2004-09-24
US6445963B1 (en) 2002-09-03

Similar Documents

Publication Publication Date Title
DE10048360B4 (de) Integrierte, fortschrittliche Steuerblöcke in Prozeßsteuersystemen
DE102004026979B4 (de) Vielfacheingabe- /Vielfachausgabe-Steuer-/Regelblöcke mit nichtlinearen Vorhersagefähigkeiten
DE10362408B3 (de) Integrierte modellbasierte prädikative Steuerung und Optimierung innerhalb eines Prozesssteuerungssystems
DE102007017039B4 (de) Robuste Prozessmodellidentifikation bei modellbasierten Steuerungstechniken
DE10304902A1 (de) Anpassung von erweiterten Prozeßsteuerblöcken in Abhängigkeit von veränderlichen Prozeßverzögerungen
DE10012258B4 (de) Selbst-Abstimmung in einer verteilten Prozeß-Regelumgebung
DE10127788B4 (de) Integrierte Optimalmodell-Vorhersagesteuerung in einem Prozeßsteuerungssystem
DE10021698B4 (de) Auf einem einzelnen Computer realisierte integrierende Funktionalität für ein verteiltes Prozessregelsystem
DE102004025875B4 (de) Funktionsblock mit Boolescher Logik
DE102006046870B4 (de) Prozessmodellidentifizierung in einem Prozesssteuersystem
EP3279756B1 (de) Diagnoseeinrichtung und verfahren zur überwachung des betriebs einer technischen anlage
DE19639424A1 (de) Entwurfsverfahren für die Anlagentechnik und rechnergestütztes Projektierungssystem zur Verwendung bei diesem Verfahren
DE102014109033A1 (de) Nicht intrusive datenanalyse in einem prozesssteuerungssystem
DE10341764A1 (de) Integrierte Modell-Vorhersagesteuerung und -Optimierung innerhalb eines Prozesssteuerungssystems
DE10007972A1 (de) Diagnosevorrichtung und -verfahren in einem Prozeßsteuersystem
WO2006018410A1 (de) Parameteridentifikation für feldgeräte in der automatisierungstechnik
DE10008020B4 (de) Diagnosevorrichtung in einem Prozeßsteuersystem, das Mehrgrößen-Regeltechniken verwendet
DE10341762A1 (de) Handhabung der Realisierbarkeit von Beschränkungen und Grenzen in einem Optimierer für Prozesssteuerungssysteme
EP1714197B1 (de) Gerätetreiber für feldgeräte der prozessautomatisierungstechnik
DE10341325B4 (de) Testeinrichtung und Testverfahren zum Testen von Werkzeug- oder Produktionsmaschinen
DE4212370C2 (de) Automatisierungsverfahren für eine verfahrenstechnische Anlage mit einem "Wegenetz", Automatisierungsgerät zur Durchführung des Verfahrens und bevorzugte Verwendungen desselben
EP4095632A1 (de) Verfahren und system zum managen von alarmen in modularen produktionsanlagen
EP3715965A1 (de) Verfahren zum virtuellen testen einer anlagensteuerung sowie simulationsvorrichtung
DE102006008726B4 (de) Verfahren und Vorrichtung zum Aktualisieren einer Anlagensoftware
EP2913728B1 (de) Verfahren zum Betrieb eines Automatisierungsgeräts sowie Automatisierungsgerät

Legal Events

Date Code Title Description
8110 Request for examination paragraph 44
R016 Response to examination communication
R016 Response to examination communication
R016 Response to examination communication
R018 Grant decision by examination section/examining division
R020 Patent grant now final
R071 Expiry of right