DE102006045428B4 - Verfahren und System zur Steuerung eines Batch-Prozesses - Google Patents

Verfahren und System zur Steuerung eines Batch-Prozesses Download PDF

Info

Publication number
DE102006045428B4
DE102006045428B4 DE102006045428.6A DE102006045428A DE102006045428B4 DE 102006045428 B4 DE102006045428 B4 DE 102006045428B4 DE 102006045428 A DE102006045428 A DE 102006045428A DE 102006045428 B4 DE102006045428 B4 DE 102006045428B4
Authority
DE
Germany
Prior art keywords
control
batch process
control routine
model
out3
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.)
Active
Application number
DE102006045428.6A
Other languages
English (en)
Other versions
DE102006045428A1 (de
Inventor
Terrence L. Blevins
Michael A. Boudreau
Gregory K. McMillan
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 DE102006045428A1 publication Critical patent/DE102006045428A1/de
Application granted granted Critical
Publication of DE102006045428B4 publication Critical patent/DE102006045428B4/de
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B13/00Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion
    • G05B13/02Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric
    • G05B13/04Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric involving the use of models or simulators
    • 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/041Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric involving the use of models or simulators in which a variable is automatically adjusted to optimise the performance
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B13/00Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion
    • G05B13/02Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric
    • G05B13/04Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric involving the use of models or simulators
    • G05B13/048Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric involving the use of models or simulators using a predictor
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B17/00Systems involving the use of models or simulators of said systems
    • G05B17/02Systems involving the use of models or simulators of said systems electric

Landscapes

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

Abstract

Verfahren (150; 260; 280) zur Steuerung eines Batch-Prozesses (212), aufweisend:Erzeugen einer Schätzung (228) eines nicht messbaren Echtzeitparameters (224) eines Batch-Prozesses (212) mittels eines First-Principles-Modells (108; 208);Bereitstellen der Schätzung (228) für eine Prozesssteuerungsroutine (104; 204) zur Steuerung des Batch-Prozesses (212);Erzeugen von Signalen auf der Grundlage der Schätzung (228) unter Verwendung der Prozesssteuerungsroutine (104; 204) zur Steuerung des Batch-Prozesses (212); und mindestens eines von:a) Nutzen einer zweiten Steuerungsroutine, um eine Steuerung auf der Grundlage der Schätzung (228) zu erzeugen, wobei die von der zweiten Steuerungsroutine erzeugten Steuersignale kommunikativ mit den Eingängen (EIN1-EIN3) des First-Principles-Modells (108; 208) verbunden sind; undb) Nutzen einer weiteren Steuerungsroutine (450), um Parameter des First-Principles-Modells (108; 208) auf der Grundlage von Vergleichsausgaben des First-Principles-Modells (108; 208) und Messungen aus dem Batch-Prozess (212) zu aktualisieren.

Description

  • Technisches Gebiet
  • Die vorliegende Erfindung bezieht sich im Allgemeinen auf Prozesssteuerungssysteme und im Besonderen auf Systeme zur Steuerung und/oder Modellierung von Batch-Prozessen.
  • Beschreibung der entsprechenden Technik
  • Prozesssteuerungssysteme wie beispielsweise verteilte oder skalierbare Prozesssteuerungssysteme der Art, wie sie in Prozessen in der Chemie-, Petroleum- und anderen Industrien eingesetzt werden, weisen typischerweise eine oder mehrere Prozesssteuerungen auf, die über analoge, digitale oder kombinierte analoge/digitale Busse miteinander und mit mindestens einer Host- oder Bedienerstation und einem oder mehreren Feldgeräten kommunikativ verbunden sind. Die Feldgeräte, die beispielsweise Ventile, Ventilsteller, Schalter und Geber (beispielsweise Temperatur-, Druck- und Strömungsgeschwindigkeitssensoren) sein können, erfüllen innerhalb des Prozesses bestimmte Funktionen wie beispielsweise Öffnen oder Schließen von Ventilen und Messung von Prozessparametern. Die Prozesssteuerung empfängt Signale, die von den Feldgeräten durchgeführte Prozessmessungen und/oder andere Informationen im Zusammenhang mit den Feldgeräten repräsentieren, verwendet diese Information zur Durchführung einer Steuerungsroutine und erzeugt sodann Steuerungssignale, die über die Busse zu den Feldgeräten übertragen werden, um den Ablauf des Prozesses zu steuern. Die von den Feldgeräten und von der Steuerung kommenden Informationen werden typischerweise einer oder mehreren Anwendungen zur Verfügung gestellt, die von der Bedienerstation ausgeführt werden, damit ein Bediener beliebige gewünschte Funktionen in Bezug auf den Prozess durchführen kann. Dies kann beispielsweise die Betrachtung des aktuellen Status des Prozesses, eine Änderung des Prozessablaufs etc. sein.
  • In der Vergangenheit wurden konventionelle Feldgeräte verwendet, um analoge Signale (beispielsweise 4 bis 20 mA) über einen analogen Bus oder analoge Leitungen zur Prozesssteuerung zu senden und von dieser zu empfangen. Diese 4- bis 20-mA-Signale waren insoweit von ihrer Natur her begrenzt, als sie von der Einrichtung vorgenommene Messungen oder Steuersignale repräsentierten, die von der zur Steuerung des Betriebs der Einrichtung erforderlichen Steuerung erzeugt wurden. Während der vergangenen zehn Jahre haben sich in der Prozesssteuerungsindustrie jedoch in zunehmendem Maß intelligente, einen Mikroprozessor und einen Speicher enthaltende Feldgeräte durchgesetzt. Neben der Ausführung einer primären Funktion innerhalb des Prozesses speichern intelligente Feldgeräte sich auf die Einrichtung beziehende Daten, kommunizieren mit der Steuerung und/oder anderen Geräten unter Verwendung eines digitalen oder eines kombinierten digitalen und analogen Formats und führen sekundäre Aufgaben wie beispielsweise Selbstkalibrierung, Identifizierung, Diagnose etc. aus. Um den gemeinsamen Einsatz intelligenter Feldgeräte unterschiedlicher Hersteller innerhalb desselben Prozesssteuerungsnetzwerks zu ermöglichen, wurden diverse Standard- und Open-Standard-Gerätekommunikationsprotokolle wie beispielsweise das HART®-, PROFIBUS®-, WORLDFIP®,- Device-Net®- und CAN-Protokoll entwickelt. Darüber hinaus verwendet das von der Fieldbus Foundation unter der Bezeichnung FOUNDATION™ Feldbus (nachstehend „Feldbus“) vertriebene, vollständig digitale 2-Draht-Busprotokoll in unterschiedlichen Feldgeräten angeordnete Feldgeräte für die Durchführung von Steuerungsoperationen, die zuvor innerhalb einer zentralen Steuerung ausgeführt worden waren. In diesen Fällen sind die Feldbus-Feldgeräte in der Lage, einen oder mehrere Funktionsblöcke zu speichern und auszuführen, die sämtlich Eingaben von anderen Funktionsblöcken empfangen und/oder Ausgaben zu anderen Funktionsblöcken bereit stellen (sowohl innerhalb derselben Einrichtung als auch innerhalb unterschiedlicher Einrichtungen), und führen diverse Prozesssteuerungsoperationen wie beispielsweise Messung oder Erkennung eines Prozessparameters, Steuerung einer Einrichtung oder Durchführung einer Steuerungsoperation wie beispielsweise die Implementierung einer Proportional-Integral-Differential- (PID-) Steuerungsroutine durch. Die unterschiedlichen Funktionsblöcke innerhalb eines Prozesssteuerungssystems werden konfiguriert, um (beispielsweise über einen Bus) miteinander zu kommunizieren, um einen oder mehrere Prozesssteuerungskreise zu bilden, deren einzelne Operationen über den gesamten Prozess verteilt und mithin dezentral sind.
  • Auf jeden Fall sind die Prozesssteuerungen (oder Feldgeräte) typischerweise so programmiert, dass sie für jeden einer Anzahl unterschiedlicher Steuerungskreise, die für einen Prozess definiert bzw. in einem Prozess enthalten sind wie beispielsweise Durchflusssteuerungskreise, Temperatursteuerungskreise, Drucksteuerungskreise etc., einen unterschiedlichen Algorithmus, eine unterschiedliche Subroutine oder einen Steuerungskreis ausführen. Allgemein gesagt, weist jeder derartige Steuerungskreis einen oder mehrere Eingabeblöcke wie beispielsweise einen Analogeingabe- (AE-) Funktionsblock, einen Steuerungsblock mit einer einzigen Ausgabe wie beispielsweise einen PID- oder einen Fuzzy-Logik-Steuerungsfunktionsblock sowie einen einzelnen Ausgabeblock wie beispielsweise einen Analogausgabe- (AE-) Funktionsblock auf. Diese Steuerungskreise fuhren typischerweise eine Steuerung mit einem einzelnen Eingang / einzelnen Ausgang aus, da der Steuerungsblock eine einzelne Ausgabe erzeugt, die der Steuerung einer einzelnen Prozesseingabe wie beispielsweise einer Ventilposition etc. dient. In bestimmten Fällen ist jedoch die Verwendung einer Anzahl unabhängig arbeitender Steuerungskreise mit einem einzelnen Eingang / einzelnen Ausgang nicht sehr effizient, da die gesteuerten Prozessvariablen oder Prozessausgaben von mehr als einer einzelnen Prozesseingabe beeinflusst werden und da tatsächlich jede Prozesseingabe den Zustand etlicher Prozessausgaben beeinflussen kann. Ein Beispiel hierfür ist ein Prozess, bei dem ein Tank aus zwei Speiseleitungen gefüllt und durch eine einzelne Ausgangsleitung entleert wird, wobei jede Leitung durch ein anderes Ventil gesteuert wird und wobei Temperatur, Druck und Durchsatz des Tanks auf Werte geregelt werden, die in der Nähe von Sollwerten liegen oder diesen genau entsprechen. Wie bereits angesprochen, kann die Steuerung von Durchsatz, Temperatur und Druck des Tanks mittels eines separaten Durchsatzsteuerkreises, eines separaten Temperatursteuerkreises und eines separaten Drucksteuerkreises erfolgen. In dieser Situation kann jedoch der Betrieb des Temperatursteuerkreises mit einer Veränderung der Einstellung eines der Speiseventile zur Steuerung der Temperatur im Tank zu einer Erhöhung des Drucks im Tank führen, wodurch beispielsweise der Drucksteuerkreis das Auslassventil öffnet, um den Druck zu senken. Durch diese Aktion kann sodann der Durchsatzsteuerkreis veranlasst werden, eines der Speiseventile zu schließen, wodurch die Temperatur beeinflusst und der Temperatursteuerkreis veranlasst wird, eine andere Maßnahme durchzuführen. Wie sich an diesem Beispiel zeigt, können die Steuerkreise mit einem einzelnen Eingang / einzelnen Ausgang zu Schwankungen der Prozessausgaben (in diesem Fall Durchsatz, Temperatur und Druck) führen, ohne dass sich jemals ein stabiler Zustand bzw. eingeschwungener Zustand einstellt, was nicht wünschenswert ist.
  • In der Vergangenheit wurden modellprädiktive Steuerungen (MPC) oder andere Arten erweiterter Steuerungen eingesetzt, um in derartigen Situationen Steuerungsfunktionen auszuführen. Allgemein gesagt, ist die modellprädiktive Steuerung eine Steuerungsstrategie mit multiplen Eingängen / multiplen Ausgängen, wobei die Auswirkungen einer Veränderung einer jeden einer Anzahl von Prozesseingaben auf jede einer Anzahl von Prozessausgaben gemessen und diese gemessenen Reaktionen sodann verwendet werden, um ein typischerweise lineares Modell des Prozesses zu erzeugen. Das lineare Modell des Prozesses wird mathematisch invertiert und sodann als Steuerung mit multiplen Eingaben / multiplen Ausgaben benutzt, um die Prozessausgaben auf der Grundlage von Veränderungen der Prozesseingaben zu steuern. In einigen Fällen weist das Prozessmodell für jede der Prozesseingaben eine Prozessausgabe-Antwortkurve auf, wobei diese Kurven beispielsweise auf der Grundlage pseudozufälliger Sprungänderungen an jedem der Prozesseingänge erzeugt werden können. Diese Antwortkurven können auf bekannte Weise zur Modellierung des Prozesses verwendet werden. Die modellprädiktive Steuerung ist in der Fachwelt bekannt und wird daher hier nicht im Detail beschrieben. Eine allgemeine Beschreibung der modellprädiktiven Steuerung findet sich jedoch bei Qin, S., Joe und Thomas A. Badgwell in „An Overview of Industrial Model Predictive Control Technology“ [Übersicht über die industrielle modellprädiktive Steuerungstechnologie], AIChE-Konferenz, 1996. Weiterhin enthält das US-Patent Nr. 6,445,963 B1 die Beschreibung eines Verfahrens zur Integration eines modellprädiktiven Steuerungsblocks in ein Prozesssteuerungssystem zur Verwendung bei der Steuerung eines Prozesses.
  • Prozesse können allgemein in drei Kategorien unterteilt werden, nämlich kontinuierliche Prozesse, semikontinuierliche Prozesse sowie Batch-Prozesse. Ein kontinuierlicher Prozess arbeitet mit Rohstoffen oder Speiseelementen, die mit kontinuierlicher Geschwindigkeit zugeführt werden, und erzeugt an einem Ausgang einen kontinuierlichen Produktstrom. Beispiele für kontinuierliche Prozesse sind unter anderem Erdölraffinationsprozesse, Prozesse zur Produktion von Vitamin C sowie Prozesse zur Herstellung bestimmter Massenchemikalien. Die Werte der Prozessvariablen wie beispielsweise Temperatur, Druck, Durchflussgeschwindigkeit etc. bleiben innerhalb eines kontinuierlichen Prozesses in der Regel an jedem Ort über die Zeit unverändert.
  • Ein Batch-Prozess arbeitet mit einer begrenzten Menge von Rohstoffen oder Speiseelementen als Gruppe und führt diese Speiseelemente zwangsweise durch eine Reihe von im Lauf der Zeit ablaufenden Prozessschritten, um bei Abschluss der Prozessschritte ein Ausgangsprodukt herzustellen. Während des Ablaufs der Prozessschritte werden dem Batch-Prozess in der Regel keine neuen Speiseelemente zugeführt. Beispiele für Batch-Prozesse sind unter anderem die Herstellung von Bier, die Herstellung bestimmter pharmazeutischer Produkte sowie die Produktion zahlreicher Spezialchemikalien. Die Werte der Prozessvariablen wie beispielsweise Temperatur, Druck, Durchflussgeschwindigkeit etc. ändern sich typischerweise über die Zeit an einem oder mehreren Orten innerhalb eines Batch-Prozesses.
  • Ein semikontinuierlicher Prozess ist ein kontinuierlicher Prozess mit darin enthaltenen Komponenten eines Batch-Prozesses. Ein semikontinuierlicher Prozess arbeitet typischerweise mit einer kontinuierlichen Zufuhr von Rohstoffen und erzeugt einen kontinuierlichen Strom eines Ausgangsprodukts, weist jedoch auch beispielsweise Mischer auf, die während einer begrenzten Zeit an einer Stelle innerhalb des Prozesses eine begrenzte Menge der zu verarbeitenden Materialien mischen.
  • Bei Batch-Prozessen (sowie Patch-Prozesskomponenten semikontinuierlicher Prozesse) ist es oftmals nicht möglich, die entsprechenden Prozessvariablen während des Ablaufs des Prozesses zu messen oder diese innerhalb so kurzer Zeit zu messen, dass die Messung noch genutzt werden kann, um den Prozess einzustellen. Um beispielsweise die Konzentration von in einem Gefäß produziertem Penicillin während des Produktionsprozesses zu messen, wird aus dem Gefäß eine Probe entnommen und sodann zur Analyse in ein Labor gegeben. Die Ergebnisse der Laboranalyse stehen möglicherweise erst gewisse Zeit nach der Probenahme oder eventuell sogar erst nach Abschluss des Batch-Prozesses zur Verfügung. Derartige Messungen sind daher oftmals für Einstellungen während des Prozesses nicht hilfreich, um beispielsweise den Ertrag der Charge, die Geschwindigkeit der Fertigstellung der Charge etc. zu steigern. Darüber hinaus stehen derartige Messungen möglicherweise nicht rechtzeitig zur Verfügung, um einen vorzeitigen Abbruch der Charge auf Grund mangelhafter Qualität zu veranlassen oder den Batch-Prozess zur Steigerung des Ertrages zu verlängern etc.
  • Bei einem typischen Verfahren für den Betrieb eines Batch-Prozesses kann ein Bediener Prozessbedingungen aufzeichnen, die während eines erfolgreichen Batch-Prozesses aufgetreten sind. Bei späteren Batch-Prozessen kann der Bediener sodann versuchen, Batch-Prozessbedingungen aufrechtzuerhalten, die denen des bekannten erfolgreichen Batch-Prozesses nahe kommen. Bei diesem Vorgehen wird davon ausgegangen, dass der endgültige Zustand des Batch-Prozesses dem des bekannten erfolgreichen Batch-Prozesses nahe sein müsste, wenn die Batch-Prozessbedingungen ähnlich denen des bekannten erfolgreichen Batch-Prozesses aufrechterhalten werden. Allerdings können auch andere nicht gemessene Bedingungen oder Bedingungen, die nicht exakt gesteuert werden können, den endgültigen Zustand des Batch-Prozesses beeinflussen. Daher kann auch dann, wenn viele Batch-Prozessbedingungen exakt eingehalten werden, das endgültige Ergebnis des Batch-Prozesses von dem des bekannten erfolgreichen Batch-Prozesses abweichen.
  • Für die Abschätzung einer Reaktionsgeschwindigkeit eines Prozesses können eine mathematische Gleichung oder Gleichungen (d.h. ein parametrisches Modell) entwickelt werden, wobei die Gleichung eine Funktion der gemessenen Prozessbedingungen ist. Die Entwicklung einer derartigen Gleichung, die eine Vielzahl von Prozessbedingungen berücksichtigt, ist allerdings äußerst schwierig. Die entwickelte Lösung wird oftmals durch diverse Annahmen simplifiziert, was zu einer Gleichung führt, die lediglich eine grobe Abschätzung der Reaktionsgeschwindigkeit liefert. Entsprechend kann jede Abschätzung des aktuellen Zustands des Batch-Prozesses auf der Grundlage einer derartigen Gleichung lediglich eine grobe Annäherung an den aktuellen Zustand des Batch-Prozesses liefern. Weiterhin können sich die Bedingungen der Ausrüstung und andere Bedingungen in Bezug auf den Batch-Prozess im Lauf der Zeit ändern. Durch die Gleichung gelieferte Schätzungen können daher im Verlauf der Zeit an Genauigkeit abnehmen.
  • Die US 2002/0103548 A1 offenbart ein System zur Steuerung eines Batch-Prozesses, aufweisend:
    • - ein First-Principles-Modell konfiguriert zur Erzeugung mindestens einer Schätzung, die mindestens einem nicht messbaren Echtzeitparameter eines Batch-Prozesses entspricht, und
    • - eine erste Steuerungsroutine mit multiplen Eingängen / multiplen Ausgängen, kommunikativ mit dem First-Principles-Modell verbunden, um die mindestens eine Schätzung zu empfangen, wobei die erste Steuerungsroutine mit multiplen Eingängen / multiplen Ausgängen konfiguriert ist, um Steuerungssignale zur Steuerung des Batch-Prozesses auf der Grundlage der mindestens einen Schätzung zu erzeugen,
    sowie ein entsprechendes Verfahren. Relevanten Stand der Technik stellen darüber hinaus die DE 10 2004 025 876 A1 , die DE 10 2004 026 979 A1 , die DE 601 03 037 T2 und die US 2002/0107604 A1 dar, denen jeweils Vorgehensweisen und Methoden für Prozesssteuerungen zu entnehmen sind.
  • Zusammenfassung der Erfindung
  • Mit der Erfindung werden Verfahren mit den Merkmalen der Ansprüche, 13 und 23 sowie Systeme mit den Merkmalen der Ansprüche 9 und 19 bereitgestellt. Zweckmäßige Fortbildungen der Erfindung sind Gegenstand der jeweiligen abhängigen Ansprüche.
  • Ein First-Principles-Modell kann zur Simulation eines Batch-Prozesses verwendet werden und das First-Principles-Modell kann zur Konfigurierung einer Steuerungsroutine mit multiplen Eingängen / multiplen Ausgängen bzw. Steuerungsroutine mit multiplen Eingaben / multiplen Ausgaben zur Steuerung des Batch-Prozesses verwendet werden. Das First-Principles-Modell kann Schätzungen von Batch-Parametern erzeugen, die während des Ablaufs des realen Batch-Prozesses nicht gemessen werden können oder nicht gemessen werden. Ein Beispiel für einen solchen Parameter ist die Änderungsgeschwindigkeit bzw. Änderungsrate einer Komponente (beispielsweise einer Produktionsgeschwindigkeit, einer Zellwachstumsgeschwindigkeit etc.) des Batch-Prozesses. Das First-Principles-Modell und die konfigurierte Steuerungsroutine mit multiplen Eingängen / multiplen Ausgängen können verwendet werden, um die Steuerung des Batch-Prozesses zu erleichtern.
  • So könnten beispielsweise das First-Principles-Modell und die konfigurierte Steuerungsroutine mit multiplen Eingängen / multiplen Ausgängen verwendet werden, um die Steuerung des Batch-Prozesses zu simulieren. Dies kann helfen, Steuerungsstrategien für die Steuerung des aktuellen Batch-Prozesses zu entwickeln und Strategien zur Erkennung abnormaler Situationen in Verbindung mit dem Batch-Prozess zu entwickeln etc. Zusätzlich könnte das First-Principles-Modell während der Steuerung des aktuellen Batch-Prozesses eingesetzt werden. So könnten beispielsweise die Schätzungen der Batch-Parameter, die während des Ablaufs des realen Batch-Prozesses nicht gemessen werden können oder nicht gemessen werden, verwendet werden, um den Batch-Prozess zu steuern, um einen Endzeitpunkt vorherzusagen, um einen Produktertrag vorherzusagen etc.
  • Figurenliste
    • 1 ist ein Blockdiagramm eines beispielhaften Prozesssteuerungssystems;
    • 2 ist ein Blockdiagramm eines modellprädiktiven Steuerungsblocks, der mit einem First-Principles-Modell eines Batch-Prozesses gekoppelt ist;
    • 3 ist ein Flussdiagramm eines beispielhaften Verfahrens zum Betrieb eines modellprädiktiven Steuerungsblocks, der mit einem First-Principles-Modell eines Batch-Prozesses gekoppelt ist;
    • 4 ist ein Blockdiagramm eines beispielhaften Systems zur Steuerung eines Batch-Prozesses;
    • 5 ist ein Flussdiagramm eines beispielhaften Verfahrens zur Steuerung eines Batch-Prozesses;
    • 6 ist ein Flussdiagramm eines weiteren beispielhaften Verfahrens zur Steuerung eines Batch-Prozesses;
    • 7 ist ein Blockdiagramm eines beispielhaften Systems zur Steuerung eines Batch-Prozesses;
    • 8 ist ein Blockdiagramm eines weiteren beispielhaften Systems zur Steuerung eines Batch-Prozesses;
    • 9 ist ein Flussdiagramm eines beispielhaften Verfahrens zur Aktualisierung eines First-Principles-Modells eines Batch-Prozesses und
    • 10 ist ein Blockdiagramm eines beispielhaften Batch-Prozesssystems zur Herstellung von Penicillin.
  • Detaillierte Beschreibung
  • Wie in 1 dargestellt, weist ein Prozesssteuerungssystem 10 eine Prozesssteuerung 12 auf, die über ein Kommunikationsnetzwerk 18 mit einem Daten-Historienspeicher 14 und mit einer oder mehreren Host-Workstations oder mit einem oder mehreren Computern 16 (wobei dies jeder beliebige Typ von Personal Computer, Workstation etc. sein kann, die jeweils einen Bildschirm 17 besitzen) verbunden ist. Die Steuerung 12 ist weiterhin über die Eingabe-/Ausgabe- (E/A-) Karten 28 und 29 mit den Feldgeräten 20 - 27 verbunden. Das Kommunikationsnetzwerk 18 kann beispielsweise ein Ethernet-Kommunikationsnetzwerk oder jedes andere geeignete oder gewünschte Kommunikationsnetzwerk sein, während der Daten-Historienspeicher 14 jeder gewünschte Typ von Datensammlungseinheit mit jedem gewünschten Speichertyp und jeder gewünschten oder bekannten Software, Hardware oder Firmware zur Speicherung von Daten sein kann. Die Steuerung 12, die beispielsweise die von der Fisher-Rosemount Systems, Inc., vertriebene DeltaV™-Steuerung sein kann, ist mittels jeder gewünschten Hardware und Software, die beispielsweise mit Standard-4-20-mA-Geräten und/oder jedem intelligenten Kommunikationsprotokoll wie beispielsweise dem Feldbus-Protokoll, dem HART-Protokoll etc. eingesetzt werden können, kommunikativ mit den anderen Feldgeräten 20 - 27 verbunden.
  • Die Feldgeräte 20 -27 können jeder Typ von Gerät wie beispielsweise Sensoren, Ventile, Geber, Steller etc. sein, während die E/A-Karten 28 und 29 jeder Typ von E/A-Gerät sein können, das jedem gewünschten Kommunikation- oder Steuerungsprotokoll entspricht. Bei der in 1 dargestellten Ausführung sind die Feldgeräte 20 - 23 Standard-4-20-mA-Geräte, die über analoge Leitungen mit der E/A-Karte 28 kommunizieren, oder HART-Geräte, die über kombinierte analoge und digitale Leitungen mit der E/A-Karte 28 kommunizieren, während die Feldgeräte 24 - 27 intelligente Geräte wie beispielsweise Feldbus-Feldgeräte sind, die mittels Feldbus-Protokollkommunikation über einen digitalen Bus mit der E/A-Karte 29 kommunizieren. Allgemein gesagt, ist das Feldbus-Protokoll ein vollständig digitales, serielles, bidirektionales Kommunikationsprotokoll, das eine standardisierte physikasche Schnittstelle für einen 2-Draht-Kreis oder -Bus darstellt, der zur Verbindung von Feldgeräten dient. Das Feldbus-Protokoll stellt letztlich ein lokales Netzwerk für Feldgeräte innerhalb eines Prozesses dar und versetzt diese Feldgeräte in die Lage (unter Verwendung von entsprechend dem Feldbus-Protokoll definierten Funktionsblöcken), an über eine Prozessanlage verteilten Orten Prozesssteuerungsfunktionen auszuführen und vor und nach der Ausführung dieser Prozesssteuerungsfunktionen miteinander zu kommunizieren, um eine übergeordnete Steuerungsstrategie zu implementieren. Selbstverständlich könnten die Feldgeräte 20 - 27 allen anderen gewünschten Standards oder Protokollen einschließlich aller künftig entwickelten Standards oder Protokolle entsprechen.
  • Die Steuerung 12 weist einen Prozessor 12a auf, der eine oder mehrere Prozesssteuerungsroutinen implementiert oder ausführt, die Steuerungskreise bzw. Regelkreise aufweisen können, die in einem computerlesbaren Speicher 12b gespeichert sind, der darin enthalten oder auf sonstige Weise damit verbunden ist und der mit den Geräten 20 - 27, den Host-Computern 16 und dem Daten-Historienspeicher 14 kommuniziert, um einen Prozess auf jede gewünschte Weise zu steuern. Es ist darauf hinzuweisen, dass, falls gewünscht, Teile jeder hier beschriebenen Steuerungsroutine oder jedes hier beschriebenen Elemente von Prozessoren in verschiedenen Steuerungen oder anderen Einrichtungen wie beispielsweise einem oder mehreren der Feldgeräte 24 - 27 implementiert oder ausgeführt werden können. Entsprechend können die hier beschriebenen, innerhalb des Prozesssteuerungssystems 10 zu implementierenden Steuerungsroutinen oder Elemente jede Form einschließlich Software, Firmware, Hardware etc. annehmen. Ein Prozesssteuerungselement kann jeder Teil eines Prozesssteuerungssystems einschließlich beispielsweise einer Routine, eines Blocks oder eines Moduls sein, die in jedem beliebigen computerlesbaren Medium gespeichert sind. Steuerungsroutinen, die Module oder jeder beliebige Teil einer Steuerungsprozedur wie beispielsweise eine Subroutine, Teile einer Subroutine (wie beispielsweise Codezeilen) etc. sein können, können in jedem gewünschten Softwareformat implementiert werden, beispielsweise unter Verwendung von Leiterlogik, Ablaufsprache, Funktionsblockdiagrammen oder unter Verwendung jeder anderen Software-Programmiersprache oder jedes anderen Konstruktionsparadigmas. Entsprechend können die Steuerungsroutinen beispielsweise in einen oder mehrere EPROMs, EEPROMs, anwendungsspezifische integrierte Schaltungen (ASICs) oder beliebige andere Hardware- oder Firmware-Elemente hardcoded werden. Weiterhin können die Steuerungsroutinen mittels beliebiger Entwicklungstools einschließlich grafischer Entwicklungstools oder jeder beliebigen anderen Art von Software-/Hardware-/Firmware-Programmierung oder Entwicklungswerkzeugen entwickelt werden. Die Steuerung 12 kann mithin konfiguriert werden, um eine Steuerungsstrategie oder Steuerungsroutine auf jede gewünschte Weise zu implementieren.
  • In einer Ausführung implementiert die Steuerung 12 eine Steuerungsstrategie mittels allgemein so genannter Funktionsblöcke, wobei jeder Funktionsblock ein Teil (beispielsweise eine Subroutine) einer umfassenden Steuerungsroutine ist und (über als Verbindungen bezeichnete Kommunikationswege) in Verbindung mit anderen Funktionsblöcken arbeitet, um Prozesssteuerungskreise bzw. -regelkreise innerhalb des Prozesssteuerungssystems 10 zu implementieren. Funktionsblöcke führen typischerweise eine der folgenden Funktionen aus: eine Eingabefunktion, die beispielsweise mit einem Geber, einem Sensor oder einem anderen Gerät zur Messung eines Prozessparameters verbunden ist, eine Steuerungsfunktion, die beispielsweise mit einer Steuerungsroutine verbunden ist, die eine PID-, Fuzzy-Logik- oder eine andere Steuerungsfunktion ausführt, oder eine Ausgabefunktion, die den Betrieb einer Einrichtung wie beispielsweise einem Ventil steuert, um eine physikalische Funktion innerhalb des Prozesssteuerungssystems 10 auszuführen. Selbstverständlich existieren hybride und andere Arten von Funktionsblöcken. Funktionsblöcke können in der Steuerung 12 gespeichert und von dieser ausgeführt werden, was typischerweise der Fall ist, wenn diese Funktionsblöcke für Standard-4-20-mA-Geäte und einige Typen von intelligenten Feldgeräten wie beispielsweise HART-Geräte verwendet werden oder mit diesen verbunden sind, oder sie können in den Feldgeräten selbst gespeichert und von diesen implementiert werden, was bei Feldbus-Geräten der Fall sein kann. Während die Beschreibung des Steuerungssystems hier anhand einer Funktionsblock-Steuerungsstrategie erfolgt, könnten die Steuerungsstrategie oder die Steuerungskreise oder Module auch mit anderen Konventionen wie beispielsweise Leiterlogik, Ablaufsprache etc. oder mittels jeder anderen gewünschten Programmiersprache oder jedes anderen gewünschten Paradigmas implementiert oder entwickelt werden.
  • Eine oder mehrere der Steuerungen 12 können eine Steuerungsanwendung 30 speichern und ausführen, die mittels einer Anzahl verschiedener, unabhängig ausgeführter Steuerungsmodule 32 eine Steuerungsstrategie implementiert. Jeder der Steuerungsmodule 32 kann Funktionsblöcke aufweisen, die in Verbindung mit anderen Funktionsblöcken (über als Verbindungen bezeichnete Kommunikationswege) arbeiten, um innerhalb des Prozesssteuerungssystems Prozesssteuerungskreise zu implementieren. Die Steuerungsmodule 32 können jedoch mittels jedes gewünschten Steuerungsprogrammierungsschemas wie beispielsweise Ablaufsprache, Leiterlogik etc. konzipiert werden.
  • Wie durch den in Explosionsdarstellung gezeigten Block 34 in 1 dargestellt, kann die Steuerung 12 eine Anzahl von Einkreis-Steuerungsroutinen, die als Routinen 36 und 38 dargestellt sind, aufweisen und, falls gewünscht, einen oder mehrere erweiterte bzw. fortschrittliche Steuerungskreise, dargestellt als Steuerungskreis 40, implementieren. Jeder derartige Steuerungskreis kann ein Steuerungsmodul sein. Die Einkreis-Steuerungsroutinen bzw. -Regelroutinen 36 und 38 führen, wie dargestellt, eine Signalkreissteuerung bzw. -regelung mittels eines Fuzzy-Logik-Steuerungsblocks mit einer einzelnen Eingabe / einer einzelnen Ausgabe und eines PID-Steuerungsblocks mit einer einzelnen Eingabe / einer einzelnen Ausgabe aus, die mit entsprechenden analogen Eingabe- (AE) und analogen Ausgabe- (AA) Funktionsblöcken verbunden sind, die mit Prozesssteuerungsgeräten wie beispielsweise Ventilen, mit Messgeräten wie beispielsweise Temperatur- und Druckgebern oder mit jedem beliebigen anderen Gerät innerhalb des Prozesssteuerungssystems 10 verbunden sein können. Der erweiterte Steuerungskreis 40 weist entsprechend der Darstellung ein erweitertes Steuerungssystem 42 auf, das Eingänge besitzt, die kommunikativ mit mehreren AE-Funktionsblöcken und Ausgaben verbunden sind, die kommunikativ mit einem oder mehreren AA-Funktionsblöcken verbunden sind, wobei die Eingaben und Ausgaben des erweiterten Steuerungssystems 42 jedoch auch mit beliebigen anderen gewünschten Funktionsblöcken oder Steuerungselementen verbunden werden können, um andere Typen von Eingaben zu empfangen und andere Typen von Steuerungsausgaben zu liefern. Das erweiterte Steuerungssystem 42, das ausgeführt ist, um, wie in dieser Beschreibung ausführlicher beschrieben, Prozesse mit nicht-linearen Eingabe-/Ausgabecharakteristiken zu steuern, weist generell jeden Typ von Steuerungsroutine mit multiplen Eingängen / multiplen Ausgängen (die typischerweise zur Steuerung von zwei oder mehr Prozessausgängen verwendet werden, indem Steuerungssignale für zwei oder mehr Prozesseingänge zur Verfügung gestellt werden) sowie ein oder mehrere nicht-lineare oder erweiterte Prozessmodelle auf, die entwickelt werden, um die nicht-linearen Charakteristiken des Prozesses präzise zu modellieren. Während in dieser Beschreibung das erweiterte Steuerungssystem 42 zwar einen modellprädiktiven Steuerungsblock (MPC) verwendet, könnte das erweiterte Steuerungssystem 42 in anderen Implementierungen jeden anderen Block mit multiplen Eingängen / multiplen Ausgaben wie beispielsweise einen Steuerungsblock in Form eines neuronalen Netzwerks, einen Steuerungsblock in Form einer Fuzzy Logik mit multiplen Variablen, einen Echtzeit-Optimiererblock etc. aufweisen oder verwenden.
  • Es versteht sich, dass die in 1 dargestellten Funktionsblöcke einschließlich des erweiterten Steuerungssystems 42, die als einer oder mehrere miteinander verbundene Funktionsblöcke implementiert werden können, von der Steuerung 12 ausgeführt werden können. Funktionsblöcke könnten beispielsweise von der Steuerungsanwendung 30 implementiert werden. Zusätzlich oder alternativ können sich Funktionsblöcke in jeder anderen Verarbeitungseinrichtung wie beispielsweise einer der Workstations 16 oder sogar einem der Feldgeräte 24 - 27 befinden und von diesen ausgeführt werden.
  • Eine oder mehrere der Workstations 16 können eine Konfigurierungsanwendung 50 speichern und ausführen, die zur Erzeugung oder Veränderung der Prozesssteuerungsmodule 30 und zum Herunterladen dieser Steuerungsmodule über das Netzwerk 18 in eine der Steuerungen 12 und/oder in Feldgeräte wie beispielsweise eines der Feldgeräte 24 - 27 dient. Die Workstation 16 kann weiterhin eine Darstellungsanwendung 52 speichern und ausführen, die von der Steuerung 12 Daten über das Netzwerk 18 empfängt und diese Informationen mittels vordefinierter Benutzerschnittstellen 54 oder Ansichten, die typischerweise mittels der Konfigurierungsanwendung 50 erzeugt werden, über einen Anzeigemechanismus darstellt. In einigen Fällen empfängt die Darstellungsanwendung 52 Eingaben wie beispielsweise Sollwertänderungen vom Anwender und stellt diese Eingaben der Steuerungsanwendung 30 innerhalb einer oder mehrerer der Workstations 16 und/oder der Steuerungen 12 zur Verfügung.
  • Die Konfiguration der Prozessanlage 10 kann in einer mit dem Netzwerk 18 verbundenen Konfigurationsdatenbank gespeichert werden. Die Konfigurationsdatenbank 60 kann eine Konfigurationsdatenbankanwendung 62 ausführen, die die aktuelle Konfiguration des Prozesssteuerungssystems und die dazu gehörenden Daten speichert. Zusätzlich oder alternativ kann die Konfigurationsdatenbankanwendung 62 auf einer oder mehreren der Workstations 16 ausgeführt werden.
  • Eine oder mehrere der Workstations 16 können weiterhin auch andere Anwendungen wie beispielsweise Schulungs-, Test- und/oder Simulationsanwendungen speichern und ausführen. Derartige Anwendungen interagieren typischerweise mit den Steuerungen 12 und der Konfigurationsdatenbank 60 in Bezug auf den Betrieb oder die Einstellung des Prozesssteuerungssystems und empfangen Daten von diesen. Einer oder mehrere der Prozesssteuerungsmodule 32 innerhalb der Workstation 16, der Steuerung 12 und/oder der Feldgeräte 24 - 27 können in einen Simulationsmodus oder -zustand versetzt werden, um zuvor festgelegte oder vom Bediener vorgegebene Werte in die Simulationssoftware 70 zurückzuspeisen, um einen Test der von den Steuerungsanwendungen 30 verwendeten Steuerungsmodule 32 und der von der Darstellungsanwendung 52 verwendeten Benutzerschnittstellen 54 zu ermöglichen. In einigen Fällen kann eine Simulationsanwendung 70 zusätzlich oder alternativ in der Steuerung 12 implementiert werden.
  • Die Konfigurationsanwendung 50 kann zur Erzeugung, zum Herunterladen und/oder Implementieren des erweiterten Steuerungssystems verwendet werden. Techniken zum Erzeugen, Herunterladen und Implementieren eines erweiterten Steuerungssystems sind im US-Patent Nr. 6,445,963 B1 beschrieben, das dem Inhaber dieser Beschreibung übertragen wurde und durch Verweis hiermit ausdrücklich zum Bestandteil der vorliegenden Beschreibung gemacht wird. Im Gegensatz zu dem im US-Patent Nr. 6,445,963 B1 beschriebenen System kann die Konfigurationsanwendung 50 einem Benutzer jedoch gestatten, das erweiterte Steuerungssystem 42 zu konfigurieren, um in Verbindung mit einem Modell eines Batch-Prozesses zu arbeiten, wie dies im Folgenden ausführlicher beschrieben wird. Während die Konfigurationsanwendung 50 in einem Speicher innerhalb der Workstation 50 gespeichert und von einem dort enthaltenen Prozessor ausgeführt werden kann, kann, falls gewünscht, diese Routine (oder jeder Teil davon) zusätzlich oder alternativ in einer anderen Einrichtung innerhalb des Prozesssteuerungssystems 10 gespeichert und von dieser ausgeführt werden. Der technisch Versierte erkennt, dass die im US-Patent Nr. 6,445,963 B1 beschriebenen Techniken nicht verwendet werden müssen und dass auch andere geeignete Techniken eingesetzt werden können.
  • Wie vorstehend beschrieben, kann das erweiterte Steuerungssystem 42 einen MPC-Block aufweisen. 2 ist ein Blockdiagramm eines MPC-Blocks 104, der kommunikativ mit einem First-Principles-Modell 108 eines Batch-Prozesses verbunden ist. Wie weiter unten beschrieben wird, kann das First-Principles-Modell 108 verwendet werden, um den MPC-Block 104 zu konfigurieren, bevor der MPC-Block 104 zur Steuerung eines Batch-Prozesses verwendet wird. Zusätzlich oder alternativ kann das First-Principles-Modell 108 in Verbindung mit dem MPC-Block 104 zur Steuerung des Batch-Prozesses verwendet werden. Der MPC-Block 104 und das First-Principles-Modell 108 in 2 können beispielsweise von der Simulationsanwendung 70 und/oder der Steuerungsanwendung 30 implementiert werden.
  • Der MPC-Block 104 ist ein 3x3-Steuerungsblock mit drei Eingängen EIN1 - EIN3 und drei Ausgängen AUS1 - AUS3, während das First-Principles-Modell 108 einem Teil des Batch-Prozesses mit den Eingängen X1 - X5 und den Ausgängen Y1 - Y6 entspricht. Selbstverständlich könnten der MPC-Block 104 und das First-Principles-Modell 108 jede andere Anzahl von Eingängen und Ausgängen aufweisen. Während der MPC-Block 104 allgemein ein gleichzahliger Block sein kann, d.h. dieselbe Anzahl von Eingängen und Ausgängen aufweist, ist diese Konfiguration nicht notwendig und der MPC-Block 104 kann unterschiedlich viele Eingänge und Ausgänge aufweisen. Wie in 2 dargestellt, sind die Modellausgänge Y1 - Y3 kommunikativ mit den MPC-Blockeingängen EIN1 - EIN3 verbunden und die MPC-Blockausgänge AUS1 - AUS3 sind kommunikativ mit den Modelleingängen X1 - X3 verbunden. Selbstverständlich können beliebige der Eingänge und Ausgänge des First-Principles-Modells 104 mit anderen Steuerungskreisen oder mit anderen Elementen innerhalb anderer Steuerungsroutinen, Modelle und/oder Simulationen verbunden sein, die mit dem Prozesssteuerungssystem 10 verbunden sind (wie in 2 durch unterbrochene, mit den Prozesseingängen und -ausgängen verbundene Linien dargestellt). Optional können der MPC-Block 104 und die anderen Blöcke, die Steuerungseingaben für das Modell 108 liefern können (wie durch unterbrochene, mit den Prozesseingängen und -ausgängen X1 - X3 verbundene Linien dargestellt), über einen Schalter der einen oder anderen Art verbunden werden, wobei diese Schalter durch die Quadrate 110 in 2 dargestellt sind. Die Schalter 110 können Hardware- oder Softwareschalter und, falls gewünscht, so ausgeführt sein, dass die unterschiedlichen Steuerungseingangssignale an die verschiedenen Eingänge eines Funktionsblocks wie beispielsweise eines Feldbus-Funktionsblocks gesendet werden, der sodann auf der Grundlage der Betriebsart des die beiden Signale empfangenden Funktionsblocks zwischen dem Steuerungssignal vom MPC-Block 104 und einem Steuerungssignal von einem anderen Funktionsblock wie beispielsweise einen PID-Funktionsblock wählen kann.
  • Der technisch Versierte erkennt, dass die Modelleingänge X1 -X3, mit denen die Ausgänge des MPC-Steuerungsblocks 104 in 2 verbunden sind, allen beliebigen Batch-Prozesseingängen einschließlich beispielsweise Eingängen zu innerhalb einer existierenden Steuerungsstrategie definierten Steuerungskreisen, Eingängen zu Ventilen oder anderen mit dem Batch-Prozess verbundenen Einrichtungen etc. entsprechen können. Entsprechend können einer oder mehrere der mit den Eingängen des MPC-Blocks 104 verbundenen Modellausgänge Y1 -Y3 allen beliebigen Batch-Prozessausgängen einschließlich beispielsweise den Ausgängen von Ventilen oder anderen Sensoren, den Ausgängen von AA- oder AE-Funktionsblöcken oder Ausgängen anderer Steuerungselemente oder Routinen etc. entsprechen. Zusätzlich können null, einer oder mehrere der Modellausgänge Y1 - Y3 nicht messbaren Echtzeitparametern entsprechen, die mit dem Batch-Prozess verbunden sind. Nicht messbare Echtzeitparameter sind Batch-Prozess-parameter, deren Messungen in der Praxis nicht innerhalb eines Zeitrahmens erfasst werden können, bei dem die Messungen noch zur Steuerung des laufenden Batch-Prozesses verwendet werden könnten. Echtzeitparameter beinhalten keine Messungen von Batch-Prozessparametern, deren Ermittlung mehrere Minuten oder Stunden in Anspruch nehmen kann. So sind beispielsweise Laboruntersuchungen, bei denen die Ermittlung eines Ergebnisses mehrere Minuten oder Stunden dauert, keine Echtzeitparameter. Weiterhin schließen Echtzeitparameter keine Messungen von Batch-Prozessparametern aus früheren Chargen ein, die zur Steuerung einer aktuellen Charge verwendet werden. Weiterhin schließen nicht messbare Echtzeitparameter keine Batch-Prozess-parameter ein, die in Echtzeit an einem bestimmten Punkt gemessen wurden, jetzt aber beispielsweise wegen eines fehlerhaften oder ausgefallenen Sensors geschätzt werden. Beispiele für nicht messbare Echtzeitparameter sind unter anderem eine Konzentration einer Komponente, eine Änderungsgeschwindigkeit der Konzentration der Komponente, ein Betrag der Komponente, eine Änderungsgeschwindigkeit des Betrags der Komponente etc. Typischerweise beinhaltet die Messung derartiger Parameter während eines Batch-Prozesses die Entnahme von Proben und die Durchführung von Laboranalysen der Proben. Die Laboranalysen können mehrere Minuten oder Stunden dauern.
  • Das First-Principles-Modell 108 kann unter Verwendung einer oder mehrerer auf physikalischen Gesetzen basierender Gleichungen Modellausgaben erzeugen, die einem nicht messbaren Echtzeitparameter entsprechen. So kann beispielsweise eine chemische Reaktion in einem Batch-Prozess durch eine oder mehrere Gleichungen modelliert werden, die auf Prinzipien wie beispielsweise der Massenerhaltung, der Energieerhaltung etc. basieren.
  • Der beispielhafte MPC-Block 104 weist eine Datensammlungseinheit 110, einen Signalgenerator 112, eine generische Steuerungslogik 114 sowie einen Speicher zur Speicherung von Steuerungsparametern 116 und ein Steuerungsprädiktionsprozessmodell 118 auf. Die generische Logik 114 kann beispielsweise eine generische MPC-Routine aufweisen, die Koeffizienten oder andere Steuerungsparameter benötigt, um in einem bestimmten Fall eine Steuerung ausführen zu können. In einigen Fällen kann die generische Logik 114 auch ein Prozessmodell benötigen, das dem vom MPC-Block 104 zu steuernden Prozess entspricht. Während eines Trainingszeitraums kann der MPC-Block 104 Daten zur Verwendung bei der Erzeugung eines Steuerungsprädiktionsprozessmodells 118 sammeln. So kann beispielsweise der Signalgenerator 112 des MPC-Blocks 104 auf entsprechende Anweisung des Bedieners (oder zu einer beliebigen anderen gewünschten Zeit) eine Reihe von Wellenformen an den Ausgängen AUS1 - AUS3 des MPC-Blocks 104 erzeugen, um Erregungswellenformen an jedem der Modelleingänge X1 - X3 zu erzeugen. Falls gewünscht, können diese Wellenformen dem Signalgenerator 112 von Hardware und/oder Software außerhalb des MPC-Blocks 104 (beispielsweise von der Workstation 16, der Steuerung 12 oder einer anderen Einrichtung) übergeben werden. Zusätzlich oder alternativ können die Wellenformen auch vom Signalgenerator 112 erzeugt werden. Diese Wellenformen können gestaltet werden, um das First-Principles-Modell 108 zu veranlassen, in den unterschiedlichen Eingabebereichen, die während des Normalbetriebs des Batch-Prozesses erwartet werden, zu arbeiten. Um ein Steuerungsprädiktionsprozessmodell 118 für eine MPC-Steuerungsroutine zu entwickeln, kann der Signalgenerator 112 jeden der Modelleingänge X1 - X3 mit einer Reihe unterschiedlicher Sätze von Impulsen beaufschlagen, wobei die Impulse innerhalb jedes der Sätze von Pulsen dieselbe Amplitude, jedoch pseudo-zufällige Längen haben und wobei die Impulse innerhalb der verschiedenen Sätze von Impulsen unterschiedliche Amplituden aufweisen. Eine derartige Serie von Sätzen von Impulsen kann für jeden der verschiedenen Modelleingänge X1 -X3 erzeugt und sodann sequenziell auf jeweils einen der verschiedenen Modelleingänge X1-X3 gegeben werden. Während dieser Zeit sammelt die Datensammlungseinheit 110 innerhalb des MPC-Blocks 104 die Daten oder koordiniert auf sonstige Weise die Sammlung der Daten, die die Antwort der Modellausgänge Y1 - Y3 auf jede der vom Signalgenerator 112 erzeugten Wellenformen angeben, und kann die Daten, die sich auf die erzeugte Erregungs-Wellenform beziehen, sammeln oder deren Sammlung koordinieren. Diese Daten können im MPC-Block 104 gespeichert werden. Zusätzlich oder alternativ können diese Daten automatisch zum Daten-Historienspeiche 14 zur Speicherung und/oder zur Workstation 16 übertragen werden, wo diese Daten auf dem Display 17 angezeigt werden können.
  • Selbstverständlich können die vom Signalgenerator 112 erzeugten Wellenformen alle gewünschten Wellenformen sein, die entwickelt werden, um ein Prozessmodell zu erzeugen, das für die Erzeugung von Steuerungslogikparametern für jede erweiterte Steuerungsroutine nützlich ist. In diesem Beispiel erzeugt der Signalgenerator 112 jeden Satz von Wellenformen, von dem bekannt ist, dass er bei der Entwicklung eines Steuerungsprädiktionsprozessmodells für eine modellprädiktive Steuerung nützlich ist, und diese Wellenformen können jede heute bekannte oder zukünftig zu diesem Zweck entwickelte Form annehmen. Da Wellenformen, die zur Erregung eines Prozesses verwendet werden, um Daten zur Entwicklung eines Steuerungsprädiktionsprozessmodells für eine modellprädiktive Steuerung zu sammeln, dem technischen Versierten bestens bekannt sind, werden diese Wellenformen hier nicht weiter beschrieben. Entsprechend können vom Signalgenerator 112 alle anderen oder alle gewünschten Typen von Wellenformen zur Verwendung bei der Entwicklung von Prozessmodellen für erweiterte Steuerungseinheiten (einschließlich Modellierungseinheiten) unter Verwendung anderer Steuerungstechniken wie beispielsweise neuronalen Netzwerken, Fuzzy-Logik mit multiplen Variablen etc. erzeugt werden.
  • Es ist darauf hinzuweisen, dass der Signalgenerator 112 jede gewünschte Form annehmen und beispielsweise in Hardware, Software oder einer Kombination von beidem implementiert werden kann. Bei einer Implementierung in Software kann der Signalgenerator 112 einen Algorithmus, der zur Erzeugung der gewünschten Wellenformen verwendet werden kann, sowie digitale Repräsentationen der zu erzeugenden Wellenformen speichern oder jede andere Routine oder gespeicherte Daten zur Erzeugung derartiger Wellenformen verwenden. Bei Implementierung in Hardware kann der Signalgenerator 112 beispielsweise die Form eines Oszillators oder Rechteck-„Wellen“-Generators annehmen. Falls gewünscht, kann der Bediener aufgefordert werden, bestimmte Parameter einzugeben, die für die Gestaltung der Wellenformen benötigt werden, wie beispielsweise die ungefähre Antwortzeit des Prozesses entsprechend dem First-Principles-Modell 108, die Schrittgröße der Amplitude der an die Prozesseingänge zu übergebenden Wellenformen etc. Der Bediener kann zur Eingabe dieser Informationen aufgefordert werden, wenn der MPC-Block 104 erstmals erzeugt wird oder wenn der Bediener den MPC-Block 104 anweist, das First-Principles-Modell 108 anzustoßen oder zu erregen und Prozessdaten zu sammeln. In einer Ausführung sammelt die Datensammlungseinheit 110 Daten (oder stellt auf andere Weise die Sammlung von Daten sicher) in Reaktion auf jede der Erregungswellenformen für das Drei- oder Fünffache der vom Bediener eingegebenen Antwortzeit um zu gewährleisten, dass ein vollständiges und exaktes Prozessmodell entwickelt werden kann. Daten können jedoch für jede andere Zeitspanne gesammelt werden. Die Datensammlungseinheit 110 kann die Daten direkt vom First-Principles-Modell 108 oder beispielsweise von einem Daten-Historienspeicher sammeln.
  • Auf jeden Fall kann der MPC-Steuerungsblock so lange arbeiten, bis der Signalgenerator 112 die Beaufschlagung jedes der Modelleingänge X1 - X3 mit allen erforderlichen Erregungswellenformen abgeschlossen hat und bis die Datensammlungseinheit 110 Daten für die Modellausgänge Y1 - Y3 gesammelt hat. Selbstverständlich kann der Betrieb des MPC-Blocks 104 unterbrochen werden, wenn dies während dieses Datensammlungsprozesses gewünscht oder erforderlich ist.
  • Das Steuerungsprädiktionsprozessmodell 118 kann eine Vielzahl von Modellen einschließlich bekannter Modelle und einen mathematischen Algorithmus, eine Reihe von Antwortkurven etc. aufweisen. Die Steuerungsparameter 116 können eine Matrix, MPC-Koeffizienten etc. aufweisen. In Implementierungen, bei denen eine andere Steuerungseinheit als eine MPC verwendet wird, können die Steuerungsparameter beispielsweise Einstellparameter, Parameter neuronaler Netzwerke, Skalierungsfaktoren für Fuzzy-Logiken mit multiplen Variablen etc. aufweisen.
  • Der technisch Versierte erkennt, dass der MPC-Steuerungsblock 104 lediglich ein Beispiel einer MPC ist, die verwendet werden kann. Lediglich als ein weiteres Beispiel könnten eine MPC, ein externer Signalgenerator und eine externe Datensammlungseinheit verwendet werden. Der technische Versierte erkennt, dass an Stelle des beispielhaften MPC-Steuerungsblocks 104 zahlreiche andere Konfigurationen verwendet werden könnten.
  • Wie in 1 dargestellt, können der MPC-Block 104 und das First-Principles-Modell 108 von verschiedenen Rechengeräten in der Anlage 10 implementiert werden. So können beispielsweise der MPC-Block 104 und das First-Principles-Modell 108 von einer oder mehreren der Workstations 16 implementiert werden. Zusätzlich könnten zumindest Teile des MPC-Blocks 104 und/oder zumindest Teile des First-Principles-Modells 108 von einer Steuerung 12 und/oder von Feldgeräten implementiert werden. Der technisch Versierte erkennt zahlreiche andere Arten zur Implementierung von Teilen des MPC-Blocks 104 und des First-Principles-Modells 108.
  • 3 ist ein Flussdiagramm eines beispielhaften Verfahrens 150 zum Betrieb einer MPC in Verbindung mit einem First-Principles-Modell eines Batch-Prozesses. Das Verfahren 150 könnte beispielsweise zur Konfigurierung einer MPC zur Verwendung bei der Steuerung des Batch-Prozesses verwende werden. Das Verfahren 150 könnte in Verbindung mit dem MPC-Block 104 und dem First-Principles-Modell 108 in 2 implementiert werden. Der technisch Versierte erkennt jedoch, dass das Verfahren 150 mit verschiedenen MPCs und First-Principles-Modellen implementiert werden könnte.
  • An einem Block 154 werden Ausgaben einer MPC einem First-Principles-Modell eines Batch-Prozesses zur Verfügung gestellt. Wie in Bezug auf 2 beschrieben, könnte die MPC dem First-Principles-Modell beispielsweise Erregungssignale während eines Konfigurationszeitraums übermitteln. Alternativ könnte ein von der MPC getrennter Signalgenerator während des Konfigurierungszeitraums die Erregungssignale liefern. Zusätzlich oder alternativ könnte die MPC, wie nachstehend ausführlicher beschrieben wird, Steuerungssignale für das First-Principles-Modell während des Ablaufs eines Batch-Prozesses bereitstellen.
  • An einem Block 158 werden Ausgaben des First-Principles-Modells der MPC zur Verfügung gestellt. Die Ausgaben des First-Principles-Modells können eine oder mehrere Ausgaben aufweisen, die Ausgaben des Batch-Prozesses entsprechen, wie beispielsweise Ausgaben von Ventilen oder anderen Sensoren, Ausgaben von AA- oder AE-Funktionsblöcken, Ausgaben anderer Steuerungselemente oder Routinen etc. Alternativ können die Ausgaben des First-Principles-Modells eine oder mehrere Ausgaben aufweisen, die nicht messbaren Echtzeitparametern entsprechen, die mit dem Batch-Prozess verbunden sind. Die Ausgaben des First-Principles-Modells können der MPC direkt oder indirekt zur Verfügung gestellt werden. Beispielsweise könnte die MPC mit Daten versorgt werden, die aus einem Daten-Historienspeicher abgerufen werden.
  • An einem Block 162 kann ein Steuerungsprädiktionsprozessmodell der MPC auf der Grundlage mindestens einiger der Ausgaben des First-Principles-Modells erzeugt werden. Das Steuerungsprädiktionsprozessmodell der MPC kann auch auf der Grundlage zusätzlicher Informationen wie beispielsweise simulierter Ausgaben von Funktionsblöcken, Steuerungsroutinen etc. erzeugt werden. Weiterhin können derartige zusätzliche Informationen aus einem aktuellen Batch-Prozess erhaltene Informationen beinhalten. Zur Erzeugung des Steuerungsprädiktionsprozessmodells der MPC kann jede einer Vielzahl von Techniken einschließlich bekannter Techniken verwendet werden. Diese Techniken können optional die Durchführung einer Filterprozedur beinhalten, um Datenausreißer, offensichtlich fehlerhafte Daten etc. zu eliminieren.
  • An einem Block 166 können Steuerungsparameter der MPC auf der Grundlage mindestens einiger der Ausgaben des First-Principles-Modells erzeugt werden. So könnten die Steuerungsparameter beispielsweise durch Invertierung des Steuerungsprädiktionsprozessmodells erzeugt werden, das auf der Grundlage der Ausgaben des First-Principles-Modells am Block 152 erzeugt wurde. Zur Erzeugung der Steuerungsparameter kann jede einer Vielzahl von Techniken einschließlich bekannter Techniken verwendet werden.
  • Sobald die Steuerungsparameter erzeugt sind, kann die MPC bei der Steuerung des Batch-Prozesses und/oder bei der Simulation der Steuerung des Batch-Prozesses verwendet werden. Wie in 2 dargestellt, können der konfigurierte MPC-Block 104 und das First-Principles-Modell 108 in Verbindung mit einer Simulationsanwendung verwendet werden, um den Betrieb des Batch-Prozesses zu simulieren. Wie dem technisch Versierten bekannt ist, kann die Simulation des Batch-Prozesses mit weitaus größeren Geschwindigkeiten simuliert werden als in der Zeit, die für den Abschluss eines realen Batch-Prozesses erforderlich sein kann. Daher können multiple Steuerungsstrategien in relativ kurzer Zeit simuliert werden. So könnte ein Ingenieur beispielsweise „Was-Wenn“-Szenarien durchführen, um eine gute Strategie zu ermitteln oder um eine existierende Strategie zu verbessern. Die Ermittlung von Steuerungsstrategien für eine Simulation könnte eine Ad-hoc-Prozedur oder eine systematische Prozedur beinhalten. So könnten beispielsweise die schneller als in Echtzeit ablaufenden Simulationen verwendet werden, um Profile von Prozesseingaben und Ausgaben für die aktuelle und für zukünftige Chargen für „Was-Wenn-Szenarien“ zu erzeugen, die von anderen Techniken wie beispielsweise multivariater statistischer Prozesssteuerung (MSPC) verwendet werden können, um abnormale Chargen zu diagnostizieren und zu verhindern.
  • Ein mit einem First-Principles-Modell gekoppeltes Steuerungssystem mit multiplen Eingängen / multiplen Ausgängen kann auch verwendet werden, um während des Ablaufs des Batch-Prozesses zu helfen, den Batch-Prozess zu steuern. 4 ist ein Blockdiagramm eines beispielhaften Systems zur Steuerung eines Batch-Prozesses, wobei das System 200 einen Steuerungsblock mit multiplen Eingängen / multiplen Ausgängen aufweist, der in diesem Fall als ein MPC-Block 204 dargestellt ist, der mit einem First-Principles-Modell 208 kommunikativ verbunden ist. Zusätzlich ist der MPC-Block 204 kommunikativ mit einem Batch-Prozess 212 verbunden. In 4 ist ein Satz von Signalen aus Gründen der Übersichtlichkeit mit einer einzelnen Linie dargestellt. Es ist daher darauf hinzuweisen, dass eine einzelne Linie ein oder mehrere Signale repräsentieren kann. Der MPC-Block 204 kann den MPC-Block 104 in 2 oder jeden geeigneten MPC-Block aufweisen und das First-Principles-Modell 208 kann ein First-Principles-Modell wie beispielsweise das in Bezug auf 2 beschriebene First-Principles-Modell sein.
  • Mindestens einige der als Batch-Prozessausgaben 216 bezeichneten Batch-Prozessausgaben (die beispielsweise Steuerungs- und Einschränkungsmessungen oder Parameter sein können) des Batch-Prozesses 212 können auf Eingänge des MPC-Blocks 204 zurückgeführt werden, wie dies bei einer MPC-Steuerung typisch ist. Entsprechend kann ein Satz gemessener oder bekannter Prozessstöreingaben 220 sowohl für den Batch-Prozess 212 als auch für den Eingang des MPC-Blocks 204 bereitgestellt werden, wie dies ebenfalls bei bekannten MPC-Techniken typisch ist.
  • Weiterhin kann ein Satz von Ausgaben des First-Principles-Modells 208 auf Eingänge des MPC-Blocks 204 zurückgeführt werden und diese Ausgaben des First-Principles-Modells 208 sind in 4 mit 224 bezeichnet. Die Ausgaben 224 des First-Principles-Modells 208 können nicht messbaren Echtzeitparametern des Batch-Prozesses 212 entsprechen. Der MPC-Block 204 kann mit anderen Worten mit Schätzungen nicht messbarer Echtzeitparameter des Batch-Prozesses 212 versehen werden. Optional kann ein Satz geschätzter Parameter 228, der vom First-Principles-Modell 208 erzeugt wurde und den gemessenen Parametern 216 entspricht, auf die Eingänge des MPC-Blocks 204 geführt werden.
  • Der MPC-Steuerungsblock 204 kann eine Standard-MPC-Logik mit einem darin enthaltenen linearen Prozessmodell (d.h. einem Steuerungsprädiktionsprozessmodell) aufweisen und allgemein auf typische oder bekannte Weise arbeiten, um einen Satz von Prozesssteuerungssignalen oder Stellgrößensteuerungssignalen 232 zu entwickeln. Die Stellgrößensteuerungssignale 232 können auf Eingänge des Batch-Prozesses 212 und auf Eingänge des First-Principles-Modells 208 geführt werden. Optional kann ein Schalter 236 vorgesehen werden, um ein Umschalten zwischen Stellgrößensteuerungssignalen 232 und anderen Steuerungssignalen 238 zu ermöglichen. Optional können andere Eingangssignale 240 dem Batch-Prozess 212 und dem First-Principles-Modell 208 zur Verfügung gestellt werden.
  • Das First-Principles-Modell 208 kann, wie bereits diskutiert, nicht messbare Echtzeitparameter sowie Parameter, die mindestens einigen der Ausgaben des Batch-Prozesses 212 entsprechen, erzeugen. Das First-Principles-Modell 208 kann diese Parameter auf der Grundlage mindestens einiger der Ausgaben 232 des MPC-Blocks 204, bekannter Prozessstöreingaben 220 und Prozesseingaben 240 erzeugen. Wie bereits beschrieben, können mindestens einige der Ausgaben des First-Principles-Modells 208 dem MPC-Block 204 zur Verfügung gestellt werden.
  • Allgemein kann der MPC-Block 204 Schätzungen nicht messbarer Echtzeitparameter verwenden, die vom First-Principles-Modell 208 erzeugt wurden um zu helfen, den Batch-Prozess 212 zu steuern. Weil Schätzungen nicht messbarer Echtzeitparameter als Eingaben für den MPC-Block 204 zur Verfügung gestellt werden, kann der MPC-Block 204 weiterhin verwendet werden um zu helfen, einen oder mehrere der nicht messbaren Echtzeitparameter beispielsweise mittels bekannter MPC-Techniken zu steuern. So kann der MPC-Block 204 beispielsweise versuchen, einen Änderungsgeschwindigkeitsparameter zu steuern (beispielsweise eine Konzentrationsänderungsgeschwindigkeit eines Produkts, eine Konzentrationsänderungsgeschwindigkeit eines Nebenprodukts, eine Konzentrationsänderungsgeschwindigkeit einer Charge, eine Konzentrationsänderungsgeschwindigkeit einer Verunreinigung etc.). Es kann nützlich sein, eine auf einen Batch-Prozess bezogene Änderungsgeschwindigkeit nahe an einem gewünschten Profil zu halten. So kann beispielsweise die Konstanthaltung einer Änderungsgeschwindigkeit einer Produktkonzentration auf einem gewünschten Niveau während eines gewissen Zeitraums während eines Batch-Prozesses dazu beitragen, einen Produktertrag zu verbessern, die Produktqualität zu verbessern, eine Chargen-Zykluszeit vorherzusagen, die Chargen-Zykluszeit zu verkürzen etc. Schnelle Reaktionsgeschwindigkeiten können in einigen Fällen dazu führen, dass Reaktionen unkontrolliert verlaufen oder unerwünschte Nebenprodukte erzeugen. Langsame Geschwindigkeiten können im Vergleich zu den ansonsten erzielbaren Ergebnissen zu längeren Chargenzeiten und geringerem Ertrag führen. Kontrollierte Geschwindigkeiten können genauere Vorhersagen der Chargenleistung und eine schnellere und genauere Korrektur von Chargenprofilen ermöglichen, indem sie den Effekt von Zeitverlagerungen durch Haltevorgänge und abnormalen Betrieb verringern.
  • Das System 200 kann allgemein dazu beitragen, die Endpunkte des Batch-Prozesses in Verbindung mit einer Verbesserung von Kapazität und/oder Qualität zu verbessern. Ein System wie beispielsweise das System 200 kann dazu beitragen, eine variable Rampenantwort und nichtstationäres Verhalten von Batch-Prozessen zu handhaben, während Modellidentifikations- und MPC-Systeme nach dem früheren Stand der Technik einen stabilen Zustand oder eine konstante Rampengeschwindigkeit voraussetzen, die für kontinuierliche Prozesse typisch sind.
  • Wie in 1 dargestellt, können Teile des Systems 200 durch verschiedene Rechengeräte implementiert werden. So kann das First-Principles-Modell 208 beispielsweise durch eine oder mehrere der Workstations 16 implementiert werden. In einer Ausführung können die Steuerungsanwendung 30 und/oder die Simulationsanwendung 70, die auf einer oder mehreren Workstations 16 ausgeführt werden, das First-Principles-Modell 208 implementieren. Zusätzlich können eine oder mehrere Steuerungen 12 und/oder ein oder mehrere Feldgeräte 24 - 27 den MPC-Block 204 und andere Steuerungsroutinen in Verbindung mit dem Batch-Prozess 212 implementieren. In einer Ausführung kann der MPC-Block 204 von der Steuerungsanwendung 30 implementiert werden, die von einer Steuerung 12 und/oder einem oder mehreren Feldgeräten 24 - 27 implementiert wird. Der technische Versierte erkennt zahlreiche andere Wege zur Implementierung von Teilen des Systems 200. So könnten beispielsweise zumindest Teile des First-Principles-Modells 208 von einer Steuerung 12 und/oder von Feldgeräten implementiert werden und zumindest Teile des MPC-Blocks 204 könnten von einer oder mehreren Workstations 16 implementiert werden.
  • 5 ist ein Flussdiagramm eines beispielhaften Verfahrens 260 zur Steuerung eines Batch-Prozesses. Das Verfahren 260 könnte beispielsweise mittels des Systems 200 in 4 implementiert werden, wobei das Verfahren im Interesse einer leichteren Erläuterung unter Bezugnahme auf 4 beschrieben wird. Der technisch Versierte erkennt jedoch, dass das Verfahren 260 auch mittels anderer Systeme implementiert werden könnte.
  • An einem Block 264 kann ein First-Principles-Modell eines Batch-Prozesses verwendet werden, um Schätzungen nicht messbarer Echtzeitparameter in Verbindung mit dem Batch-Prozess zu erzeugen. So kann das First-Principles-Modell 208 beispielsweise Schätzungen nicht messbarer Echtzeitparameter wie beispielsweise Schätzungen einer Änderungsgeschwindigkeit in Verbindung mit dem Batch-Prozess erzeugen. Am Block 268 können am Block 264 erzeugte Schätzungen einer Steuerungsroutine übergeben werden. Die Steuerungsroutine kann eine Steuerungsroutine mit multiplen Eingängen / multiplen Ausgängen wie beispielsweise den MPC-Block 204 aufweisen. Optional können andere Arten von Steuerungsroutinen wie beispielsweise Fuzzy-Logik-Routinen, neuronale Netzwerke etc. verwendet werden.
  • An einem Block 272 werden Steuerungssignale auf der Grundlage von am Block 264 erzeugten Schätzungen erzeugt, wobei die von der Steuerungsroutine erzeugten Signale helfen sollen, den Batch-Prozess zu steuern. Selbstverständlich können die Steuerungssignale auch auf der Grundlage anderer Informationen wie beispielsweise Messungen aus dem laufenden Batch-Prozess und optional anderer vom First-Principles-Modell erzeugter Ausgaben erzeugt werden. Die Steuerungssignale können zur Steuerung des Batch-Prozesses auf diverse Arten verwendet werden. So können die Steuerungssignale beispielsweise versuchen, eine Änderungsgeschwindigkeit in Verbindung mit dem Batch-Prozess, einen Endpunkt des Batch-Prozesses, eine Produktmenge am Ende der Charge, einen Produktertrag etc. zu steuern. Als weiteres Beispiel können die Steuerungssignale versuchen, eine Änderungsgeschwindigkeit auf einem gewünschten Profil zu halten. Das gewünschte Profil kann eine konstante Änderungsgeschwindigkeit während eines gewissen Zeitraums während des Batch-Prozesses sein. Der technisch Versierte kann erkennen, dass sich das gewünschte Profil in Abhängigkeit von dem spezifischen gesteuerten Batch-Prozess ändern kann. Ein gewünschtes Änderungsgeschwindigkeitsprofil kann daher mindestens einige Zeiträume beinhalten, während derer die Änderungsgeschwindigkeit nicht konstant ist.
  • Die Steuerungsroutine, die die am Block 264 erzeugten Schätzungen verwendet, kann unter Verwendung eines First-Principles-Modells und optional mittels den laufenden Batch-Prozess betreffender Daten konfiguriert werden. Allgemein kann die Steuerungsroutine eine Vielzahl von Steuerungstechniken einschließlich bekannter Techniken verwenden, um eine Vielzahl von Aspekten des Batch-Prozesses durch Verwendung von vom First-Principles-Modell erzeugten Daten nicht messbarer Echtzeitparameter zu steuern.
  • 6 ist ein Flussdiagramm eines weiteren beispielhaften Verfahrens 280 zur Steuerung eines Batch-Prozesses. Das Verfahren 280 könnte beispielsweise mittels des Systems 200 in 4 implementiert werden, wobei das Verfahren im Interesse einer leichteren Erläuterung unter Bezugnahme auf 4 beschrieben wird. Der technisch Versierte erkennt jedoch, dass das Verfahren 280 auch mittels anderer Systeme implementiert werden könnte.
  • An einem Block 284 können Echtzeitschätzungen einer Änderungsgeschwindigkeit einer Batch-Prozesskomponente erzeugt werden. So kann beispielsweise das First-Principles-Modell 208 die Schätzungen erzeugen. Optional könnten auch andere Modellierungs-/Schätzungssysteme wie beispielsweise Fuzzy-Logik-Systeme, neuronale Netzwerke etc. verwendet werden, um die Schätzungen zu erzeugen. An einem Block 288 können die am Block 284 erzeugten Schätzungen einer Steuerungsroutine zur Verfügung gestellt werden. Die Steuerungsroutine kann eine Steuerungsroutine mit multiplen Eingängen / multiplen Ausgängen wie beispielsweise den MPC-Block 204 aufweisen. Optional können andere Arten von Steuerungsroutinen wie beispielsweise Fuzzy-Logik-Routinen, neuronale Netzwerke etc. verwendet werden.
  • An einem Block 292 werden Steuerungssignale auf der Grundlage von am Block 284 erzeugten Schätzungen erzeugt, wobei die von der Steuerungsroutine erzeugten Signale helfen sollen, die Änderungsgeschwindigkeit zu steuern. Selbstverständlich können die Steuerungssignale auch auf der Grundlage anderer Informationen wie beispielsweise Messungen aus dem laufenden Batch-Prozess und optional anderer Schätzungen wie beispielsweise Schützungen nicht messbarer Echtzeitparameter erzeugt werden. Die Steuerungssignale können beispielsweise verwendet werden, um die Änderungsgeschwindigkeit nahe an einem gewünschten Profil zu halten. Das gewünschte Profil kann eine konstante Änderungsgeschwindigkeit während eines gewissen Zeitraums während des Batch-Prozesses sein. Der technisch Versierte kann erkennen, dass sich das gewünschte Profil in Abhängigkeit von dem spezifischen gesteuerten Batch-Prozess ändern kann. Ein gewünschtes Änderungsgeschwindigkeitsprofil kann daher mindestens einige Zeiträume beinhalten, während derer die Änderungsgeschwindigkeit nicht konstant ist. So kann es beispielsweise wünschenswert sein, dass die Änderungsgeschwindigkeit während eines gewissen Zeitraums des Batch-Prozesses konstant ist oder exponentiell zu- oder abnimmt.
  • 7 ist ein Blockdiagramm eines weiteren beispielhaften Systems zur Steuerung eines Batch-Prozesses. Das System 300 weist zahlreiche gleich nummerierte Elemente aus dem beispielhaften System 200 in 4 auf. Zusätzlich können optional die Verfahren 260 und 280 in 5 und 6 durch ein System wie beispielsweise das System 300 implementiert werden. Das System 300 weist allgemein eine virtuelle Anlage 304 und eine reale Anlage 308 auf. Die reale Anlage 308 entspricht der Steuerung der tatsächlichen physischen Einrichtungen, die bei der Implementierung des Batch-Prozesses verwendet werden, während die virtuelle Anlage 34 einer Simulation der realen Anlage 308 entspricht. In 7 ist ein Satz von Signalen aus Gründen der Übersichtlichkeit mit einer einzelnen Linie dargestellt. Es ist daher darauf hinzuweisen, dass eine einzelne Linie ein oder mehrere Signale repräsentieren kann. Wie nachstehend beschrieben wird, können während des Ablaufs eines Batch-Prozesses Daten zwischen der virtuellen Anlage 304 und der realen Anlage 308 ausgetauscht werden, um den Batch-Prozess zu steuern zu helfen.
  • Die reale Anlage 308 weist den MPC-Block 204 und den Batch-Prozess 212 in einer gleichartigen Konfiguration wie das System 200 in 4 auf. Die virtuelle Anlage 304 weist das First-Principles-Modell 208 auf, das kommunikativ mit einem MPC-Block 312 der virtuellen Anlage verbunden ist. Der MPC-Block 312 der virtuellen Anlage kann mit Schätzungen nicht messbarer Echtzeitparameter 228 versehen werden. Optional kann der vom First-Principles-Modell 208 erzeugte Satz geschätzter Parameter 228 auf die Eingänge des MPC-Blocks 312 der virtuellen Anlage geführt werden. Weiterhin kann der MPC-Block 312 der virtuellen Anlage mit Signalen 316 versehen werden, die simulierten Werten der gemessenen oder bekannten Prozessstöreingaben 220 oder den gemessenen oder bekannten Prozessstöreingaben 220 selbst entsprechen.
  • Der MPC-Steuerungsblock 312 der virtuellen Anlage kann eine Standard-MPC-Logik mit einem darin enthaltenen linearen Prozessmodell aufweisen und allgemein auf typische oder bekannte Weise arbeiten, um einen Satz von Prozessteuerungssignalen oder Stellgrößensteuerungssignalen 320 zu entwickeln. Die Stellgrößensteuerungssignale 320 können auf Eingänge des First-Principles-Modells 208 geführt werden. Optional kann ein Schalter 324 vorgesehen werden, um ein Umschalten zwischen den Stellgrößensteuerungssignalen 320 und anderen Signalen 328 zu ermöglichen, die simulierte Signale entsprechend den Steuerungssignalen 238 oder die Steuerungssignale 238 selbst sein können. Optional können andere Signale 323, die Simulationen der Prozesssteuerungssignale 240 oder die Prozessteuerungssignale 240 selbst sein können, dem First-Principles-Modell 208 zugeführt werden.
  • Der MPC-Block 204 und der MPC-Block 312 der virtuellen Anlage können mindestens ähnlich konfiguriert sein. So könnte beispielsweise der MPC-Block 204 auf eine bekannte Weise konfiguriert sein, um den Batch-Prozess 212 zu steuern (beispielsweise könnten ein Steuerungsprädiktionsprozessmodell und Steuerungsparameter erzeugt werden). Sodann könnten dasselbe Steuerungsprädiktionsprozessmodell und/oder die Steuerungsparameter dem MPC-Block 312 der virtuellen Anlage übergeben werden. Selbstverständlich erkennt der technisch Versierte zahlreiche andere Techniken für eine ähnliche Konfiguration des MPC-Blocks 204 und des MPC-Blocks 312 der virtuellen Anlage.
  • Allgemein kann die virtuelle Anlage 304 den Betrieb der realen Anlage 308 während eines Batch-Prozesses simulieren. So empfängt beispielsweise das First-Principles-Modell 208 Eingaben, die die Eingaben zum Batch-Prozess 212 widerspiegeln, und das First-Principles-Modell 208 ist allgemein konfiguriert, um den Ablauf des Batch-Prozesses 212 zu modellieren. Die Ausgaben 228 des First-Principles-Modells 208 sollten daher typischerweise den Ausgaben 216 des Batch-Prozesses 212 folgen. Zusätzlich sollten der MPC-Block 204 und der MPC-Block 312 der virtuellen Anlage dieselben oder ähnliche Stellgrößensteuerungssignale erzeugen, da sie dieselbe oder eine ähnliche Konfiguration haben sollten und da sie jeweils dieselben oder ähnliche Eingaben empfangen sollten.
  • Während des Ablaufs eines Batch-Prozesses können zwischen der virtuellen Anlage 304 und der realen Anlage 308 Informationen kommuniziert werden. So werden beispielsweise die nicht messbaren Echtzeitparameter 224 der MPC 204 übergeben. Weiterhin können beispielsweise auch die gemessenen Parameter 216 in der realen Anlage 308 der virtuellen Anlage 304 mitgeteilt werden, damit die virtuelle Anlage 304 optional die gemessenen Parameter 216 verwenden kann. Der technisch Versierte erkennt zahlreiche andere Arten von Informationen, die zwischen der virtuellen Anlage 304 und der realen Anlage 308 kommuniziert werden können.
  • In einer Ausführung kann die virtuelle Anlage 304 optional Prozessmodule verwenden, die in der Lage sein können, Massentransferraten, Resttrübungen und Blasen, einen modularen Druck-Flow-Solver etc. zu verwenden. Dies kann die virtuelle Anlage 304 in die Lage versetzen, leere Prozessbehälter, Nullströmungen, Ungleichgewichtsbedingungen etc. zu handhaben. Zusätzlich kann in dieser Ausführung die virtuelle Anlage 304 optional Prozessmodule mit unterteilten Behältern und Kreislaufströmungen zu verwenden, um eine Simulation von Mischungs- und Transportverzögerungen zu gestatten.
  • Wie in 1 dargestellt, können die virtuelle Anlage 304 und Teile der realen Anlage 308 durch verschiedene Rechengeräte implementiert werden. So können Teile der virtuellen Anlage 304 beispielsweise durch eine oder mehrere der Workstations 16 implementiert werden. In einer Ausführung können die Steuerungsanwendung 30 und/oder die Simulationsanwendung 70, die auf einer oder mehreren Workstations 16 ausgeführt werden, zumindest einen Teil der virtuellen Anlage 304 implementieren. Zusätzlich können einer oder mehrere Steuerungen 12 und/oder ein oder mehrere Feldgeräte 24 - 27 Teile der realen Anlage 308 wie beispielsweise den MPC-Block 204 und andere Steuerungsroutinen in Verbindung mit dem Batch-Prozess implementieren. In einer Ausführung kann der MPC-Block 204 von der Steuerungsanwendung 30 implementiert werden, die von einer Steuerung 12 und/oder einem oder mehreren Feldgeräten 24 - 27 implementiert wird. Der technisch Versierte erkennt zahlreiche andere Arten zur Implementierung von Teilen der virtuellen Anlage 304 und der realen Anlage 308. So könnten beispielsweise Teile der virtuellen Anlage 304 auf einer Steuerung 12 und/oder Feldgeräten implementiert werden und Teile der realen Anlage 308 könnten von einer oder mehreren Workstations 16 implementiert werden.
  • 8 ist ein Blockdiagramm eines weiteren beispielhaften Systems zur Steuerung eines Batch-Prozesses. Das System 400 ist dem System 300 in 7 ähnlich und weist zahlreiche identisch nummerierte Elemente des beispielhaften Systems 300 auf. Zusätzlich können optional die Verfahren 260 und 280 in 5 und 6 durch ein System wie beispielsweise das System 200 implementiert werden.
  • Wie bekannt ist, können sich die Bedingungen der Ausrüstung und andere Bedingungen in Bezug auf den Batch-Prozess im Lauf der Zeit ändern. Dies kann dazu führen, dass das First-Principles-Modell 208 im Lauf der Zeit an Genauigkeit verliert. Um dieses potenzielle Problem zu berücksichtigen, weist das System 400 ein Modellaktualisierungssystem 402 zum Aktualisieren des First-Principles-Modells 208 auf, um Änderungen des Batch-Prozesses 212 im Lauf der Zeit Rechnung zu tragen.
  • Allgemein vergleicht das Modellaktualisierungssystem 404 die Ausgaben des Batch-Prozesses 212 mit entsprechenden Ausgaben des First-Principles-Modells 208 und passt das First-Principles-Modell 208 auf der Grundlage dieses Vergleichs an. Das Modellaktualisierungssystem 404 weist einen Modellaktualisierungs-MPC-Block 408 auf, der kommunikativ mit dem First-Principles-Modell 208 verbunden ist. So werden nämlich die Parameter des First-Principles-Modells 208 vom Modellaktualisierungs-MPC-Block 408 manipuliert. Mit anderen Worten sind die Ausgaben des MPC-Blocks 408, die oftmals als Stellgrößensteuerungssignale bezeichnet werden, kommunikativ mit dem First-Principles-Modell 208 verbunden, um im First-Principles-Modell 208 Parameter auf der Grundlage eines Vergleichs zwischen den Ausgaben des First-Principles-Modells 208 und den Ausgaben des Batch-Prozesses 212 zu aktualisieren.
  • Wie bekannt ist, kann eine MPC ein Steuerungsprädiktionsprozessmodell aufweisen, das allgemein Antworten eines Prozesses auf Störungen in von der MPC erzeugten Stellgrößensteuerungssignalen modelliert. Der Modellaktualisierungs-MPC-Block kann ein Steuerungsprädiktionsprozessmodell aufweisen, das allgemein Antworten des First-Principles-Modells 208 auf Störungen von Parametern des First-Principles-Modells 208 modelliert. Der Modellaktualisierungs-MPC-Block kann weiterhin Steuerungsparameter wie beispielsweise eine Matrix, MPC-Koeffizienten etc. aufweisen, die allgemein auf dem Steuerungsprädiktionsmodell des MPC-Blocks 408 basieren oder mittels dessen bestimmt werden.
  • Der MPC-Block kann als Eingaben einige oder sämtliche sowohl der Eingaben als auch der Ausgaben des Batch-Prozesses und die entsprechenden Eingaben und Ausgaben des First-Principles-Modells 208 empfangen. Die Eingaben und Ausgaben des Batch-Prozesses 212 könnten über einen Historienspeicher oder von Feldgeräten, Steuerungen etc. innerhalb der Anlage erhalten werden. Optional kann das Modellaktualisierungssystem 404 ein System zum Erhalt von Messungen von Parametern aufweisen, die in Echtzeit nicht erhalten werden konnten oder werden. Ein derartiges System wird hier als Labor 412 bezeichnet. So könnten beispielsweise während einer Charge entnommene Proben von einem Labor verarbeitet werden, um Messungen von Parametern der Charge zu erzeugen, die in Echtzeit nicht gemessen werden konnten, wie beispielsweise Konzentrationen von Komponenten innerhalb eines Gefäßes, Änderungsgeschwindigkeiten von Komponenten etc. Auch wenn diese Messungen nicht in Echtzeit für die Steuerung des Batch-Prozesses zur Verfügung stehen, können sie dennoch genutzt werden, um das First-Principles-Modell 208 anzupassen, indem vom First-Principles-Modell 208 erzeugte, diesen Messungen entsprechende Schätzungen verglichen werden. Somit können Daten, die den vom Labor 412 erzeugten Messungen entsprechen - entsprechend den vom First-Principles-Modell 208 erzeugten Schätzungen nicht messbarer Echtzeitparameter - dem MPC-Block 408 zur Verfügung gestellt werden. Zusätzlich können vom First-Principles-Modell 28 erzeugte Schätzungen nicht messbarer Echtzeitparameter dem MPC-Block 408 zur Verfügung gestellt werden.
  • Der MPC-Block 408 kann ihm zur Verfügung gestellte Daten verwenden, um Parameter des First-Principles-Modells 208 einzustellen. Dies stellt eine Technik dar, um das First-Principles-Modell 208 einzustellen, wenn sich der Batch-Prozess 212 über die Zeit verändert hat. Selbstverständlich ist das oben beschriebene Modellaktualisierungssystem 404 lediglich ein Beispiel für ein System zur Anpassung eines First-Principles-Modells eines Batch-Prozesses. So können beispielsweise andere Systeme mit multiplen Eingängen / multiplen Ausgängen als Alternative zu einem MPC-Block wie beispielsweise Fuzzy-Logik-Systeme, neuronale Netze etc. verwendet werden.
  • Wie in 1 dargestellt, kann das Modellaktualisierungssystem 404 durch verschiedene Rechengeräte implementiert werden. Teile des Modellaktualisierungssystems 404 können beispielsweise durch eine oder mehrere der Workstations 16 implementiert werden. In einer Ausführung können die Steuerungsanwendung 30 und/oder die Simulationsanwendung 70, die auf einer oder mehreren Workstations 16 ausgeführt werden, zumindest einen Teil des Modellaktualisierungssystems 404 wie beispielsweise den MPC-Block 408 implementieren. Zusätzlich können eine oder mehrere Steuerungen 12 und/oder ein oder mehrere Feldgeräte 24 - 27 Teile des Modellaktualisierungssystems 404 wie beispielsweise den MPC-Block 408 implementieren. Der technische Versierte erkennt zahlreiche andere Wege zur Implementierung des Modellaktualisierungssystems 404.
  • 9 ist ein Flussdiagramm eines beispielhaften Verfahrens 450 zur Aktualisierung eines First-Principles-Modells eines Batch-Prozesses. Das Verfahren 450 könnte beispielsweise mittels des Systems 404 in 8 implementiert werden, wobei das Verfahren 450 im Interesse einer leichteren Erläuterung unter Bezugnahme auf 8 beschrieben wird. Der technisch Versierte erkennt jedoch, dass das Verfahren 450 auch mittels anderer Systeme implementiert werden könnte.
  • An einem Block 454 können Ausgaben des First-Principles-Modells einer Steuerungsroutine mit multiplen Eingaben / multiplen Ausgaben übergeben werden. So werden beispielsweise in 8 die Ausgaben des First-Principles-Modells 208 dem Modellaktualisierungsblock 408 übergeben. Die Ausgaben des First-Principles-Modells können Schätzungen
    Figure DE102006045428B4_0001
    Echtzeitparameter des Batch-Prozesses aufweisen. Zusätzlich oder alternativ können die Ausgaben des First-Principles-Modells Schätzungen nicht messbarer Echtzeitparameter des Batch-Prozesses aufweisen. Die am Block 454 bereitgestellten Daten können beispielsweise aus einem Historienspeicher abgerufene Daten beinhalten. Zusätzlich oder alternativ können die am Block 454 bereitgestellten Daten Daten beinhalten, die aus einer Workstation 16, einer Steuerung 12, einem Feldgerät etc. abgerufen wurden.
  • An einem Block 458 werden Ausgabedaten in Verbindung mit dem Batch-Prozess, die den Ausgaben des First-Principles-Modell entsprechen,s der Steuerungsroutine mit multiplen Eingängen / multiplen Ausgängen übergeben. So werden beispielsweise in 8 die Datenausgaben des Batch-Prozesses 212 dem Modellaktualisierungsblock 408 übergeben. Optional können die übergebenen Ausgabedaten Daten vom Labor 408 beinhalten. Die übergebenen Ausgabedaten können daher zusätzlich oder alternativ Ausgabedaten beinhalten, die Schätzungen nicht messbarer Echtzeitparameter enthalten, die vom First-Principles-Modell erzeugt wurden.
  • An einem Block 462 kann das Steuerungssystem mit multiplen Eingängen / multiplen Ausgängen auf der Grundlage der an den Blöcken 454 und 458 empfangenen Daten Ausgaben erzeugen, um Parameter des First-Principles-Modells zu modifizieren. So kann beispielsweise eine vom First-Principles-Modell erzeugte Schätzung als Regelgröße betrachtet werden und ein entsprechender gemessener Parameter aus der realen Anlage kann als Sollwert betrachtet werden. Das Steuerungssystem mit multiplen Eingängen / multiplen Ausgängen kann sodann Daten erzeugen, um einen Parameter des First-Principles-Modells zu modifizieren um zu versuchen, die Schätzung zu veranlassen, dem entsprechenden gemessenen Parameter zu folgen. Ein Beispiel für einen Modellparameter, der eingestellt werden kann, ist der Henry-Koefficient. Der Henry-Koefficient ist ein Parameter zur Bestimmung der Gleichgewichtskonzentration gelösten Sauerstoffs, die den Massentransfer von Sauerstoff zwischen der Gas- und der Flüssigphase bestimmt. Andere Beispiele für Modellparameter, die eingestellt werden können, sind unter anderem Aktivierungsenergie und Koeffizienten für eine spezifische Reaktion, Wachstum, Massentransfer, Produkt- und Nebenproduktbildungsgeschwindigkeiten, Sauerstoffbegrenzung, Substrathemmung, Zellerhalt, Ionendissoziation, Ertrag und Zykluszeit.
  • Der technische Versierte erkennt, dass zahlreiche Variationen möglich sind. So könnten beispielsweise Ausgaben des First-Principles-Modells und/oder entsprechende gemessene Parameter, die dem Steuerungssystem mit multiplen Eingaben / multiplen Ausgaben übergeben werden, gefiltert werden, um kurzfristige Transienten auszufiltern. Ein weiteres Beispiel sind Ausgaben des First-Principles-Modells, die dem Steuerungssystem mit multiplen Eingaben / multiplen Ausgaben übergeben werden und skaliert werden könnten, um die Prozessverstärkungen und den Einstellbereich innerhalb angemessener Grenzen zu halten. In einem weiteren Beispiel könnte die Anpassung während eines Chargenzyklus automatisch gestartet und angehalten werden, um eine Adaptierung lediglich während geeigneter Teile des Chargenzyklus zu gestatten.
  • 10 ist ein Blockdiagramm eines beispielhaften Batch-Prozesssystems 500, das hierin beschriebene Techniken nutzt. Das Batch-Prozesssystem 500 ist konfiguriert, Penicillin zu produzieren. Aus Gründen der einfacheren Erklärung sind zahlreiche Komponenten des Systems 500 in 10 nicht dargestellt. Das System 500 weist einen Bioreaktor 504 auf, der Substrat, basisches Reagens, saures Reagens und Luft aufnimmt. Bei Fertigstellung einer Charge kann der Bioreaktor 504 durch den Batch-Abfluss 508 entleert werden. Eine Pumpe 512 fördert das basische Reagens in den Bioreaktor 504 und eine Pumpe 514 fördert das saure Reagens in den Bioreaktor 504. Die Pumpe 512 kann durch eine Steuerungsroutine 516 und die Pumpe 514 durch eine Steuerungsroutine 518 gesteuert werden. Ein pH-Sensor 520 kann Daten bezüglich des pH-Werts im Bioreaktor erzeugen. Die pH-Daten können einem Splitter 522 zugeführt werden, der seinerseits gesplittete pH-Daten an die Steuerungsroutinen 516 und 518 leitet, die die Pumpen 512 und 514 steuern, um den pH-Wert im Bioreaktor zu steuern.
  • Eine Pumpe 528 fördert das Substrat in den Bioreaktor 504 und die Pumpe 528 kann von einer Steuerungsroutine 530 gesteuert werden. Das Substrat kann Glukose enthalten. Ein Glukosekonzentrationssensor 532 kann die Steuerungsroutine 530 mit Daten bezüglich der Glukosekonzentration im Bioreaktor 504 versorgen. Eine Pumpe 536 fördert die Luft in den Bioreaktor 504 und die Pumpe 536 kann von einer Steuerungsroutine 538 gesteuert werden. Eine Entlüftung 542 zum Bioreaktor 504 kann von einer Steuerungsroutine 544 gesteuert werden.
  • Ein Sensor für gelösten Sauerstoff 520 kann Daten bezüglich einer Konzentration gelösten Sauerstoffs im Bioreaktor 504 erzeugen. Die Daten bezüglich des gelösten Sauerstoffs können einer Steuerungsroutine 550 zugeführt werden. Die Steuerungsroutine 550 kann über einen Splitter 554 ihrerseits Steuerungsdaten zur Steuerungsroutine 538 und zur Steuerungsroutine 544 übermitteln.
  • Ein MPC-Steuerungsblock 560 empfängt Schätzungen einer Biomassen-Wachstumsgeschwindigkeit und einer Produktentstehungsgeschwindigkeit von einer virtuellen Anlage wie beispielsweise der oben beschriebenen virtuellen Anlage, die über ein First-Principles-Modell des Batch-Prozesses verfügt. Die geschätzte Biomassen-Wachstumsgeschwindigkeit und die geschätzte Produktbildungsgeschwindigkeit sind Echtzeitschätzungen der entsprechenden Geschwindigkeiten innerhalb des Bioreaktors 504. Insbesondere kann die geschätzte Biomassen-Wachstumsgeschwindigkeit eine Schätzung der Wachstumsgeschwindigkeit von Pilzzellen innerhalb des Bioreaktors 504 sein und die geschätzte Produktentstehungsgeschwindigkeit kann eine Schätzung der Konzentration von Penicillin innerhalb des Bioreaktors 504 sein.
  • Der MPC-Block 560 erzeugt eine erste Steuerungssignalausgabe und stellt diese der Steuerungsroutine 530 zur Verfügung und erzeugt eine zweite Steuerungssignalausgabe und stellt diese der Steuerungsroutine 550 zur Verfügung. Die vom MPC-Block 560 erzeugten Ausgaben können Sollwerte zur Verwendung durch die Steuerungsroutine 530 und die Steuerungsroutine 550 sein. So kann beispielsweise das erste Steuerungssignal, das der Steuerungsroutine 530 übergeben wird, ein Sollwert für die Glukosekonzentration sein, während das zweite Steuerungssignal, das der Steuerungsroutine 550 übergeben wird, ein Sollwert für die Konzentration des gelösten Sauerstoffs ist. Der MPC-Block 560 kann somit den Sollwert für die Glukosekonzentration und den Sollwert für die Konzentration des gelösten Sauerstoffs während des Ablaufs der Charge als Antwort auf die geschätzte Biomassenwachstumsgeschwindigkeit und die geschätzte Produktbildungsgeschwindigkeit einstellen. Die Steuerungsroutine 530 kann ihrerseits Steuerungsdaten erzeugen, um die Pumpe 536 zu veranlassen, dem Bioreaktor 504 mehr oder weniger Luft zuzuführen, und Steuerungsdaten erzeugen, um die Entlüftung 542 einzustellen, um mehr oder weniger Gase innerhalb des Bioreaktors 504 abzulassen.
  • In einem Batch-Prozess zur Produktion von Penicillin werden Pilzzellen mit Glukose und gelöstem Sauerstoff versorgt. Im Lauf der Zeit sondern die Pilzzellen Penicillin ab und produzieren auch Kohlendioxid. In einer Implementierung wurde die Steuerung unter Verwendung des MPC-Blocks 260 erst nach Verstreichen einer Zeit nach Beginn der Charge verwendet, sobald geschätzt wurde, dass die Produktionsgeschwindigkeit ungefähr ihr Maximum erreicht hatte. Sodann wurde der MPC-Block 260 verwendet um zu versuchen, die Produktionsgeschwindigkeit konstant zu halten.
  • Es wurde beobachtet, dass eine höhere Konzentration des gelösten Sauerstoffs zunehmend in dem Maße die Geschwindigkeit des Biomassenwachstums und der Produktbildung steigerte, in dem die Zellkonzentration zunahm. Ein starker Luftstrom erhöhte jedoch die Kosten der Gasverarbeitung und hohe Drücke erhöhten das gelöste Kohlendioxid, sodass der gelöste Sauerstoff zu Beginn der Charge, als sein nützlicher Effekt minimal war, niedriger gehalten wurde. Eine niedrigere Substratkonzentration verringert auf Grund eines reduzierten Substrathemmungsfaktors die Geschwindigkeit des Biomassenwachstums, steigert jedoch die Geschwindigkeit der Produktbildung. Die Substratkonzentration war somit anfangs hoch, um Zellen wachsen zu lassen, wurde jedoch mit fortschreitender Charge gesenkt, um die Produktbildung zu fördern. Die Einstellung des MPC-Blocks 560 könnte die Verwendung eines höheren Bewegungszuschlags und eines höheren Zuschlags für Fehler für die Produktionsgeschwindigkeit enthalten, da dies wichtiger ist als die Wachstumsgeschwindigkeit während des Fed-Batch-Teils des Batch-Zyklus.
  • Der MPC-Block 560 kann helfen, die Nettoproduktionsgeschwindigkeit vom Absinken abzuhalten. Der MPC-Block 560 kann mithin zu einer Produktkonzentration, die mit einer konstanten Steigung zunimmt, und zu einer kürzeren Chargen-Zykluszeit führen. Zusätzlich sollte die Schätzung der Zeit, innerhalb derer die Charge fertig gestellt wird, relativ genau sein, da die Produktkonzentration mit einer konstanten Steigung zunimmt. Der technische Versierte erkennt, dass mit dem System 500 zahlreiche Variationen möglich sein können. So ist es beispielsweise wünschenswert, das Biomassen-Konzentrationsprofil gegen Ende der Charge zu senken, um die Substratverbrauchsgeschwindigkeit zu reduzieren, und die Steuerung zu entlasten, um die Nettoproduktionsgeschwindigkeit besser aufrechtzuerhalten, und der Sollwert für die Wachstumsgeschwindigkeit könnte gesenkt werden, wenn sich die Produktkonzentration ihrem Endpunkt nähert.
  • Um die Zeit vorherzusagen, die in einer vom System 500 produzierten Charge verbleibt, kann eine Differenz zwischen einer aktuellen Produktkonzentration und einer Endkonzentration durch eine gewichtete Nettoproduktionsgeschwindigkeit geteilt werden. Dies kann sodann zu einer aktuellen Chargenzeit addiert werden, um eine vorhergesagte Chargen-Zykluszeit zu erzeugen. Ein Glukoseverbrauch kann vorhergesagt werden, in dem die in der Charge verbleibende Zeit mit einer gewichteten Glukosezufuhrgeschwindigkeit multipliziert und das Ergebnis zur aktuellen aufsummierten Glukosecharge addiert wird. Eine Produktendkonzentration kann durch einen vorhergesagten Glukoseverbrauch dividiert werden, um einen vorhergesagten Ertrag in Form von Kilogramm Produkt pro Kilogramm Glukose zu erzeugen. Ein vorhergesagter Ertrag kann sodann in Prozent einer Differenz zwischen dem minimalen und maximalen praktischen Ertrag ausgedrückt werden.
  • Das System 500 in 10 ist selbstverständlich lediglich ein Beispiel eines biochemischen Batch-Prozesssystems, das die oben beschriebenen Techniken einsetzen kann. Andere Beispiele sind unter anderem Systeme zur Produktion anderer Antibiotika, komplexer Proteine, Wachstumshormone, Antikörper, Pharmazeutika, Additive, Bier, Wein, Polymere, Schmiermittel, Spezialchemikalien etc.
  • Andere Ausführungen der hier beschriebenen Techniken und Systeme können auf vielfältige Weise verwendet werden. So können beispielsweise Systeme wie das in 2 dargestellte System, die virtuelle Anlage 304 etc. verwendet werden, um Strategien zur Steuerung und/oder zur Behandlung normaler Batch-Vorgänge und/oder abnormaler Situationen zu entwickeln. Derartige Systeme können auch zur Entwicklung von Strategien zur Erkennung abnormaler Situationen entwickelt werden. Weiterhin können Ausführungen der hier beschrieben Techniken und Systeme verwendet werden, um Batch-Profile, die wirtschaftliche Ziele erfüllen, zu identifizieren, vorherzusagen und/oder zu errechnen. Endpunkte einer Charge können vorhergesagt und/oder der Batch-Prozess kann gesteuert werden, um die Kapazität und/oder Qualität zu steigern. Die Chargen-Zykluszeit kann vorhergesagt und/oder der Batch-Prozess kann gesteuert werden, um die Chargen-Zykluszeit zu verkürzen. Identifizierte Profile können gespeichert und verwendet werden, um Änderungen der Chargenablaufbedingungen, Rohstoffe (beispielsweise Spurennährstoffe, Additive etc.) zu erkennen und/oder zu quantifizieren. Profile können a priori mit Werkzeugen wie beispielsweise multivariater statistischer Prozesssteuerung etc. analysiert werden.
  • Verschiedene Steuerungssysteme mit multiplen Eingängen / multiplen Ausgängen wie beispielsweise MPC-Blöcke wurden hier beschrieben. Der technisch Versierte erkennt, dass verschiedene Steuerungssysteme mit multiplen Eingängen / multiplen Ausgängen einschließlich bekannter Systeme in verschiedenen Implementierungen der hier beschriebenen Techniken verwendet werden können. So beschreiben beispielsweise die folgenden allgemein erteilten Patente und Patentanträge Techniken und Systeme, die optional verwendet werden können. Alle der folgenden allgemein erteilten Patente und Patentanträge werden hiermit in ihrer Gesamtheit durch Bezugnahme zum Bestandteil dieser Beschreibung gemacht. Das US-Patent Nr. 6,445,963 B1 beschreibt erweiterte Steuerungsblöcke, die Steuerungen mit multiplen Eingängen / multiplen Ausgängen implementieren, sowie Techniken zum Erzeugen und Konfigurieren derartiger Steuerungsblöcke. Das US-Patent Nr. 6,721,609 B1 beschreibt Steuerungsblöcke mit multiplen Eingängen / multiplen Ausgängen, die eine Optimierung von Steuerungslogik implementieren um zu gewährleisten, dass Stellgrößen Einschränkungen nicht überschreiten oder verletzen. Das US-Patent Nr. 6,901,308 beschreibt Steuerungsblöcke mit multiplen Eingängen / multiplen Ausgängen, die einen Kompensationsblock oder -algorithmus enthalten, um den Ausführungszeitraum des Steuerungsblocks mit multiplen Eingängen / multiplen Ausgängen für verschiedene Betriebsregionen eines Prozesses zu verändern. Der U.S.-Patentantrag Nr. 10/241,350 beschreibt Steuerungsblöcke mit multiplen Eingängen / multiplen Ausgängen, die eine Optimierungsroutine aufweisen, die Betriebsziele für Stellgrößen berechnet. Der U.S.-Patentantrag Nr. 10/454,937 beschreibt Steuerungsblöcke mit multiplen Eingängen / multiplen Ausgängen, die ein lineares Prozessmodell, um den gesteuerten Prozess zu modellieren, sowie ein nicht-lineares Prozessmodell aufweisen, um Korrekturen von Vorhersagen des linearen Prozessmodells zu erzeugen. Dies kann die Steuerung von Prozessen mit nicht-linearen Charakteristiken verbessern.
  • Die hier beschriebenen Steuerungssysteme mit multiplen Eingängen / multiplen Ausgängen, Steuerungsroutinen, Verfahrensblöcke etc. können mittels jeder Kombination von Hardware, Firmware und Software implementiert werden. Die hierin beschriebenen Systeme und Techniken können mithin in einem Standard-Mehrzweck-Prozessor oder mittels eigens konstruierter Hardware oder Firmware, wie gewünscht, implementiert werden. Die Software kann, wenn in Software implementiert, in jedem computerlesbaren Speicher wie beispielsweise auf Magnetplatte, Laser-Disk oder einem anderen Speichermedium, in einem Arbeitsspeicher oder in einem Nurlesespeicher oder Flash-Memory eines Computers oder Prozessors etc. gespeichert werden. Entsprechend kann die Software einem Anwender oder einem Prozesssteuerungssystem mittels jeder bekannten oder gewünschten Übergabemethode wie beispielsweise auf einer computerlesbaren Diskette oder einem anderen transportablen Computer-Speichermedium oder über Kommunikationsmedien übergeben werden. Kommunikationsmedien beinhalten typischerweise computerlesbare Anweisungen, Datenstrukturen, Programmmodule oder andere Daten in einem modulierten Datensignal wie beispielsweise einer Trägerwelle oder einem anderen Transportmedium. Der Begriff „moduliertes Datensignal“ bedeutet ein Signal, bei dem eine oder mehrere seiner Charakteristiken dergestalt eingestellt oder verändert werden, dass Informationen im Signal kodiert werden. Kommunikationsmedien beinhalten beispielsweise, nicht jedoch ausschließlich, verdrahtete Medien wie beispielsweise verdrahtete Netzwerke oder direkt verdrahtete Verbindungen sowie drahtlose Medien wie beispielsweise akustische, Hochfrequenz-, Infrarot- oder andere drahtlose Meaien. Die Software kann mithin einem Anwender oder einem Prozesssteuerungssystem über einen Kommunikationskanal wie beispielsweise eine Telefonleitung, das Internet etc. übermittelt werden (wobei diese als identisch mit der Übermittlung dieser Software über ein transportables Speichermedium bzw. als austauschbar damit betrachtet werden).
  • Während somit die vorliegende Erfindung zwar unter Bezugnahme auf spezifische Beispiele beschrieben wird, die lediglich der Veranschaulichung dienen und diese Erfindung nicht einschränken sollen, ist es jedoch für den technisch Versierten offenkundig, dass Änderungen, Ergänzungen oder Streichungen an den dargestellten Ausführungen vorgenommen werden können, ohne vom Geist und Umfang der Erfindung abzuweichen.

Claims (24)

  1. Verfahren (150; 260; 280) zur Steuerung eines Batch-Prozesses (212), aufweisend: Erzeugen einer Schätzung (228) eines nicht messbaren Echtzeitparameters (224) eines Batch-Prozesses (212) mittels eines First-Principles-Modells (108; 208); Bereitstellen der Schätzung (228) für eine Prozesssteuerungsroutine (104; 204) zur Steuerung des Batch-Prozesses (212); Erzeugen von Signalen auf der Grundlage der Schätzung (228) unter Verwendung der Prozesssteuerungsroutine (104; 204) zur Steuerung des Batch-Prozesses (212); und mindestens eines von: a) Nutzen einer zweiten Steuerungsroutine, um eine Steuerung auf der Grundlage der Schätzung (228) zu erzeugen, wobei die von der zweiten Steuerungsroutine erzeugten Steuersignale kommunikativ mit den Eingängen (EIN1-EIN3) des First-Principles-Modells (108; 208) verbunden sind; und b) Nutzen einer weiteren Steuerungsroutine (450), um Parameter des First-Principles-Modells (108; 208) auf der Grundlage von Vergleichsausgaben des First-Principles-Modells (108; 208) und Messungen aus dem Batch-Prozess (212) zu aktualisieren.
  2. Verfahren (150; 260; 280) nach Anspruch 1, weiterhin aufweisend: Erzeugen einer oder mehrerer zusätzlicher Schätzungen (228) zusätzlicher nicht messbarer Echtzeitparameter (224) des Batch-Prozesses (212) unter Verwendung des First-Principles-Modells (108; 208); Bereitstellen der einen oder mehreren zusätzlichen Schätzungen (228) für die Prozesssteuerungsroutine (104; 204), wobei die Erzeugung der Signale zur Steuerung des Batch-Prozesses (212) die Erzeugung der Signale auf der Grundlage der Schätzung (228) und der einen oder mehreren zusätzlichen Schätzungen (228) unter Verwendung der Prozesssteuerungsroutine (104; 204) aufweist.
  3. Verfahren (150; 260; 280) nach Anspruch 1, weiterhin aufweisend: Bereitstellen eines oder mehrerer gemessener Batch-Prozess-Parameter für die Prozesssteuerungsroutine (104; 204), wobei die Erzeugung der Signale zur Steuerung des Batch-Prozesses (212) die Erzeugung der Signale auf der Grundlage der Schätzung (228) und der einen oder mehreren gemessenen Batch-Prozess-Parameter unter Verwendung der Prozesssteuerungsroutine (104; 204) aufweist.
  4. Verfahren (150; 260; 280) nach Anspruch 1, wobei die Prozesssteuerungsroutine (104; 204) eine Steuerungsroutine mit multiplen Eingängen (EIN1-EIN3) / multiplen Ausgängen (AUS1-AUS3) aufweist.
  5. Verfahren (150; 260; 280) nach Anspruch 4, wobei die Prozesssteuerungsroutine (104; 204) eine modellprädiktive Steuerungsroutine aufweist.
  6. Verfahren (150; 260; 280) nach Anspruch 1, wobei die Erzeugung der Schätzung (228) des nicht messbaren Echtzeitparameters (224) die Erzeugung einer Schätzung (228) einer Änderungsrate einer Komponente des Batch-Prozesses (212) aufweist.
  7. Verfahren (150; 260; 280) nach Anspruch 1, wobei die Erzeugung von Signalen zur Steuerung des Batch-Prozesses (212) mindestens einen der folgenden Schritte aufweist: Erzeugen von Signalen zur Steuerung einer mit dem Batch-Prozess (212) verbundenen Haltezeit; Erzeugen von Signalen zur Steuerung einer Änderungsrate eines mit dem Batch-Prozess (212) verbundenen Parameters oder Erzeugen von Signalen zur Steuerung einer mit dem Batch-Prozess (212) verbundenen Batch-Zykluszeit.
  8. Verfahren (150; 260; 280) nach Anspruch 1, wobei die Erzeugung der Signale zur Steuerung des Batch-Prozesses (212) die Erzeugung eines Sollwerts zur Verwendung durch eine andere Prozesssteuerungsroutine (104; 204) aufweist, wobei das Verfahren weiterhin die Bereitstellung des Sollwerts für die zusätzliche Prozesssteuerungsroutine (104; 204) aufweist.
  9. System (100; 200; 300) zur Steuerung eines Batch-Prozesses (212), aufweisend: ein First-Principles-Modell (108; 208), konfiguriert zur Erzeugung mindestens einer Schätzung (228), die mindestens einem nicht messbaren Echtzeitparameter (224) eines Batch-Prozesses (212) entspricht; eine erste Steuerungsroutine mit multiplen Eingängen (EIN1-EIN3) / multiplen Ausgängen (AUS1-AUS3), kommunikativ mit dem First-Principles-Modell (108; 208) verbunden, um die mindestens eine Schätzung (228) zu empfangen, wobei die erste Steuerungsroutine mit multiplen Eingängen (EIN1-EIN3) / multiplen Ausgängen (AUS1-AUS3) konfiguriert ist, um Steuerungssignale zur Steuerung des Batch-Prozesses (212) auf der Grundlage der mindestens einen Schätzung (228) zu erzeugen; und mindestens eine von: a) eine zweite Steuerungsroutine mit multiplen Eingängen (EIN1-EIN3) / multiplen Ausgängen (AUS1-AUS3), die kommunikativ mit dem First-Principles-Modell (108; 208) verbunden ist, um die mindestens eine Schätzung (228) zu empfangen, wobei die zweite Steuerungsroutine mit multiplen Eingängen (EIN1-EIN3) / multiplen Ausgängen (AUS1-AUS3) konfiguriert ist, um Steuerungssignale zur Steuerung des Batch-Prozesses (212) auf der Grundlage der mindestens einen Schätzung (228) zu erzeugen, wobei die von der zweiten Steuerungsroutine mit multiplen Eingängen (EIN1-EIN3) / multiplen Ausgängen (AUS1-AUS3) erzeugten Steuerungssignale (112) kommunikativ mit den Eingängen (EIN1-EIN3) des First-Principles-Modells (108; 208) verbunden sind; und b) eine dritte Steuerungsroutine mit multiplen Eingängen (EIN1-EIN3) / multiplen Ausgängen (AUS1-AUS3), die kommunikativ mit dem First-Principles-Modell (108; 208) verbunden ist, um Parameter des First-Principles-Modells (108; 208) auf der Grundlage von Vergleichsausgaben des First-Principles-Modells (108; 208) und Messungen aus dem Batch-Prozess (212) zu aktualisieren.
  10. System (100; 200; 300) nach Anspruch 9, wobei die erste Steuerungsroutine mit multiplen Eingängen (EIN1-EIN3) / multiplen Ausgängen (AUS1-AUS3) eine modellprädiktive Steuerungsroutine aufweist.
  11. System (100; 200; 300) nach Anspruch 9, wobei die erste Steuerungsroutine mit multiplen Eingängen (EIN1-EIN3) / multiplen Ausgängen (AUS1-AUS3) kommunikativ verbunden ist, um mindestens einen gemessenen Parameter des Batch-Prozesses (212) zu empfangen, wobei die erste Steuerungs-routine mit multiplen Eingängen (EIN1-EIN3) / multiplen Ausgängen (AUS1-AUS3) konfiguriert ist, um die Steuerungssignale zur Steuerung des Batch-Prozesses (212) auf der Grundlage der mindestens einen Schätzung (228) und des mindestens einen gemessenen Parameters zu erzeugen.
  12. System (100; 200; 300) nach Anspruch 9, wobei die von der ersten Steuerungsroutine mit multiplen Eingängen (EIN1-EIN3) / multiplen Ausgängen (AUS1-AUS3) erzeugten Steuerungssignale kommunikativ mit Eingängen (EIN1-EIN3) des First-Principles-Modells (108; 208) verbunden sind.
  13. Verfahren (150; 260; 280) zur Erleichterung der Steuerung eines Batch-Prozesses (212), aufweisend: Bereitstellen von Steuerungsausgaben einer Steuerungsroutine mit multiplen Eingängen (EIN1-EIN3) / multiplen Ausgängen (AUS1-AUS3) an Eingänge (EIN1-EIN3) eines First-Principles-Modells (108; 208) des Batch-Prozesses (212); Bereitstellen von vom First-Principles-Modell (108; 208) des Batch-Prozesses (212) erzeugten Schätzungen (228) für die Steuerungsroutine mit multiplen Eingängen (EIN1-EIN3) / multiplen Ausgängen (AUS1-AUS3) und Erzeugen eines Modells des Batch-Prozesses (212) zur Verwendung durch die Steuerungsroutine mit multiplen Eingängen (EIN1-EIN3) / multiplen Ausgängen (AUS1-AUS3) auf der Grundlage von vom First-Principles-Modell (108; 208) erzeugten Schätzungen (228).
  14. Verfahren (150; 260; 280) nach Anspruch 13, weiterhin aufweisend die Verwendung der Steuerungsroutine mit multiplen Eingängen (EIN1-EIN3) / multiplen Ausgängen (AUS1-AUS3) zur Steuerung des Batch-Prozesses (212).
  15. Verfahren (150; 260; 280) nach Anspruch 13, weiterhin aufweisend die Übermittlung des erzeugten Modells an eine andere Steuerungsroutine mit multiplen Eingängen (EIN1-EIN3) / multiplen Ausgängen (AUS1-AUS3) zur Steuerung des Batch-Prozesses (212).
  16. Verfahren (150; 260; 280) nach Anspruch 13, weiterhin aufweisend die Verwendung der Steuerungsroutine mit multiplen Eingängen (EIN1-EIN3) / multiplen Ausgängen (AUS1-AUS3) und des First-Principles-Modells (108; 208) zum Testen von Steuerungsstrategien zur Steuerung des Batch-Prozesses (212).
  17. Verfahren (150; 260; 280) nach Anspruch 13, wobei die Steuerungsroutine mit multiplen Eingängen (EIN1-EIN3) / multiplen Ausgängen (AUS1-AUS3) eine modellprädiktive Steuerungsroutine aufweist.
  18. Verfahren (150; 260; 280) nach Anspruch 13, wobei die Bereitstellung von vom First-Principles-Modell (108; 208) des Batch-Prozesses (212) erzeugten Schätzungen (228) für die Steuerungsroutine mit multiplen Eingängen (EIN1-EIN3) / multiplen Ausgängen (AUS1-AUS3) die Bereitstellung mindestens einer Schätzung (228) eines nicht messbaren Echtzeitparameters (224) des Batch-Prozesses (212) aufweist.
  19. System (100; 200; 300) zur Erleichterung der Steuerung eines Batch-Prozesses (212), aufweisend: ein First-Principles-Modell (108; 208) eines Batch-Prozesses (212); eine Steuerungsroutine mit multiplen Eingängen (EIN1-EIN3) / multiplen Ausgängen (AUS1-AUS3) mit einem auf der Grundlage von vom First-Principles-Modell (108; 208) empfangenen Signalen erzeugten Modell des Batch-Prozesses (212), wobei die Steuerungsroutine mit multiplen Eingängen (EIN1-EIN3) / multiplen Ausgängen (AUS1-AUS3) kommunikativ mit dem First-Principles-Modell (108; 208) verbunden ist, um dem First-Principles-Modell (108; 208) Steuerungssignale bereitzustellen und um vom First-Principles-Modell (108; 208) erzeugte Ausgaben zu empfangen.
  20. System (100; 200; 300) nach Anspruch 19, wobei das First-Principles-Modell (108; 208) konfiguriert ist, um eine Schätzung (228) eines nicht messbaren Echtzeitparameters (224) des Batch-Prozesses (212) zu erzeugen, wobei die Steuerungsroutine mit multiplen Eingängen (EIN1-EIN3) / multiplen Ausgängen (AUS1-AUS3) kommunikativ mit dem First-Principles-Modell (108; 208) verbunden ist, um die Schätzung (228) des nicht messbaren Echtzeitparameters (224) zu empfangen.
  21. System (100; 200; 300) nach Anspruch 19, wobei die Steuerungsroutine mit multiplen Eingängen (EIN1-EIN3) / multiplen Ausgängen (AUS1-AUS3) aufweist: einen kommunikativ mit den Eingängen (EIN1-EIN3) des First-Principles-Modells (108; 208) verbundenen Signalgenerator (112), der konfiguriert ist, um Erregungssignale zu erzeugen und einen kommunikativ mit den Ausgängen (AUS1-AUS3) des First-Principles-Modells (108; 208) verbundenen Datensammler (110), der konfiguriert ist, um die als Antwort auf die Erregungssignale erzeugten Ausgaben des First-Principles-Modells (108; 208) zu sammeln.
  22. System (100; 200; 300) nach Anspruch 19, wobei die erste Steuerungsroutine mit multiplen Eingängen (EIN1-EIN3) / multiplen Ausgängen (AUS1-AUS3) eine modellprädiktive Steuerungsroutine aufweist.
  23. Verfahren (150; 260; 280) zur Aktualisierung eines Modells eines Batch-Prozesses (212), aufweisend: Bereitstellen von Messungen verbunden mit einem Batch-Prozess (212) als Eingaben für eine Steuerungsroutine mit multiplen Eingängen (EIN1-EIN3) / multiplen Ausgängen (AUS1-AUS3); Bereitstellen von einem First-Principles-Modell (108; 208) des Batch-Prozesses (212) erzeugten Schätzungen (228) als Eingaben für die Steuerungsroutine mit multiplen Eingängen (EIN1-EIN3) / multiplen Ausgängen (AUS1-AUS3) und Aktualisieren von Parametern des First-Principles-Modells (108; 208) unter Verwendung von in der Steuerungsroutine mit multiplen Eingängen (EIN1-EIN3) / multiplen Ausgängen (AUS1-AUS3) erzeugten Ausgaben.
  24. Verfahren (150; 260; 280) nach Anspruch 23, wobei die Steuerungsroutine mit multiplen Eingängen (EIN1-EIN3) / multiplen Ausgängen (AUS1-AUS3) eine modellprädiktive Steuerungsroutine aufweist.
DE102006045428.6A 2005-09-30 2006-09-26 Verfahren und System zur Steuerung eines Batch-Prozesses Active DE102006045428B4 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US11/241,157 2005-09-30
US11/241,157 US7877154B2 (en) 2005-09-30 2005-09-30 Method and system for controlling a batch process

Publications (2)

Publication Number Publication Date
DE102006045428A1 DE102006045428A1 (de) 2007-04-26
DE102006045428B4 true DE102006045428B4 (de) 2022-12-08

Family

ID=37421252

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102006045428.6A Active DE102006045428B4 (de) 2005-09-30 2006-09-26 Verfahren und System zur Steuerung eines Batch-Prozesses

Country Status (6)

Country Link
US (1) US7877154B2 (de)
JP (2) JP5331301B2 (de)
CN (2) CN102841538B (de)
DE (1) DE102006045428B4 (de)
GB (3) GB2430763B (de)
HK (3) HK1098835A1 (de)

Families Citing this family (59)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7689296B2 (en) * 2006-04-28 2010-03-30 Honeywell Asca Inc. Apparatus and method for controlling a paper machine or other machine using measurement predictions based on asynchronous sensor information
US7747416B2 (en) * 2006-06-06 2010-06-29 Siemens Industry, Inc. System and method for batch process control with diverse distributed control system protocols
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
US8634940B2 (en) * 2006-10-31 2014-01-21 Rockwell Automation Technologies, Inc. Model predictive control of a fermentation feed in biofuel production
US7933849B2 (en) * 2006-10-31 2011-04-26 Rockwell Automation Technologies, Inc. Integrated model predictive control of batch and continuous processes in a biofuel production process
US8571690B2 (en) * 2006-10-31 2013-10-29 Rockwell Automation Technologies, Inc. Nonlinear model predictive control of a biofuel fermentation process
US8521310B2 (en) * 2006-10-31 2013-08-27 Rockwell Automation Technologies, Inc. Integrated model predictive control of distillation and dehydration sub-processes in a biofuel production process
US20080103747A1 (en) * 2006-10-31 2008-05-01 Macharia Maina A Model predictive control of a stillage sub-process in a biofuel production process
US7831318B2 (en) * 2006-10-31 2010-11-09 Rockwell Automation Technologies, Inc. Model predictive control of fermentation temperature in biofuel production
US7844350B2 (en) * 2006-11-22 2010-11-30 Honeywell International Inc. Testing of control strategies in a control system controlling a process control plant
US9298174B2 (en) * 2008-03-20 2016-03-29 Rockwell Automation Technologies, Inc. Determining total inventory of batch and continuous inventories in a biofuel production process
US7840363B2 (en) * 2008-03-20 2010-11-23 Rockwell Automation Technologies, Inc. Determining total mill flow in a biofuel production process
US8755939B2 (en) * 2008-06-30 2014-06-17 Rockwell Automation Technologies, Inc. Throughput/yield optimized model predictive control
US20100063786A1 (en) * 2008-09-11 2010-03-11 Harke Michael C Co-Simulation Process
US9014858B2 (en) * 2008-09-30 2015-04-21 Rockwell Automation Technologies, Inc. Energy optimizer for dehydrating biofuels through distillation towers and molecular sieves
US8103385B2 (en) * 2008-09-30 2012-01-24 Rockwell Automation Technologies, Inc. Optimizing product drying through parallel lines of centrifuges and dryer process units
US9037298B2 (en) * 2008-09-30 2015-05-19 Rockwell Automation Technologies, Inc. Cook flash temperature optimization
US9098093B2 (en) * 2008-09-30 2015-08-04 Rockwell Automation Technologies, Inc. Model predictive control of biofuel denaturant blending
US7855681B2 (en) * 2008-11-19 2010-12-21 Harris Corporation Systems and methods for determining element phase center locations for an array of antenna elements
US20100123618A1 (en) * 2008-11-19 2010-05-20 Harris Corporation Closed loop phase control between distant points
US20100124263A1 (en) * 2008-11-19 2010-05-20 Harris Corporation Systems for determining a reference signal at any location along a transmission media
US8170088B2 (en) * 2008-11-19 2012-05-01 Harris Corporation Methods for determining a reference signal at any location along a transmission media
US7970365B2 (en) * 2008-11-19 2011-06-28 Harris Corporation Systems and methods for compensating for transmission phasing errors in a communications system using a receive signal
US20100125347A1 (en) * 2008-11-19 2010-05-20 Harris Corporation Model-based system calibration for control systems
US7969358B2 (en) * 2008-11-19 2011-06-28 Harris Corporation Compensation of beamforming errors in a communications system having widely spaced antenna elements
KR101814056B1 (ko) 2009-12-01 2018-01-02 옥스포드 나노포어 테크놀로지즈 리미티드 생화학적 분석 기구
US8756039B2 (en) * 2010-03-02 2014-06-17 Fisher-Rosemount Systems, Inc. Rapid process model identification and generation
US9158295B2 (en) 2010-05-21 2015-10-13 Fisher-Rosemount Systems, Inc. Multi-stage process modeling method
US9182752B2 (en) 2010-05-21 2015-11-10 Fisher-Rosemount Systems, Inc. Method and system for multi-zone modeling to determine material properties in storage tanks
US9217565B2 (en) 2010-08-16 2015-12-22 Emerson Process Management Power & Water Solutions, Inc. Dynamic matrix control of steam temperature with prevention of saturated steam entry into superheater
US9447963B2 (en) 2010-08-16 2016-09-20 Emerson Process Management Power & Water Solutions, Inc. Dynamic tuning of dynamic matrix control of steam temperature
US9335042B2 (en) 2010-08-16 2016-05-10 Emerson Process Management Power & Water Solutions, Inc. Steam temperature control using dynamic matrix control
US8788239B2 (en) * 2011-02-11 2014-07-22 Fisher-Rosemount Systems, Inc. Methods, apparatus and articles of manufacture to test batch configurations
CA2826374C (en) 2011-02-11 2024-01-23 Oxford Nanopore Technologies Limited Mutant pores
US9163828B2 (en) 2011-10-31 2015-10-20 Emerson Process Management Power & Water Solutions, Inc. Model-based load demand control
WO2013087973A1 (en) * 2011-12-16 2013-06-20 Metso Automation Oy Method of tuning a process controller
AU2013246702B2 (en) 2012-04-10 2017-06-15 Oxford Nanopore Technologies Limited Mutant lysenin pores
JP5969919B2 (ja) * 2012-12-28 2016-08-17 アズビル株式会社 最適化装置および方法ならびに制御装置および方法
GB201313477D0 (en) 2013-07-29 2013-09-11 Univ Leuven Kath Nanopore biosensors for detection of proteins and nucleic acids
CN103268069B (zh) * 2013-05-22 2015-10-28 常州大学 基于Hammerstein模型的自适应预测控制方法
US10018997B2 (en) 2013-06-28 2018-07-10 Fisher-Rosemount Systems, Inc. Non-intrusive data analytics in a process control system
DE102013108478A1 (de) * 2013-08-06 2015-02-12 Endress+Hauser Process Solutions Ag Verfahren zur Erweiterung einer eingebetteten Softwarekomponente eines Feldgerätes
US10167503B2 (en) 2014-05-02 2019-01-01 Oxford Nanopore Technologies Ltd. Mutant pores
GB2547333B (en) * 2014-08-13 2020-12-23 Fisher Rosemount Systems Inc Model predictive control using wireless process signals
CN114605507A (zh) 2014-09-01 2022-06-10 弗拉芒区生物技术研究所 突变csgg孔
WO2016055778A1 (en) 2014-10-07 2016-04-14 Oxford Nanopore Technologies Limited Mutant pores
US10394973B2 (en) * 2015-12-18 2019-08-27 Fisher-Rosemount Systems, Inc. Methods and apparatus for using analytical/statistical modeling for continued process verification (CPV)
US11543805B2 (en) * 2016-10-17 2023-01-03 Fisher-Rosemount Systems, Inc. Systems and apparatus for distribution of process control data to remote devices
US10656635B2 (en) * 2016-12-02 2020-05-19 Honeywell International Inc. Apparatus and method for performing process simulations for embedded multivariable predictive controllers in industrial process control and automation systems
CN109600245B (zh) * 2017-09-30 2021-11-19 北京国双科技有限公司 服务器自动配置方法及装置
CN107991886B (zh) * 2017-12-28 2020-08-28 杭州电子科技大学 一种废塑料气化炼油炉膛压力的预测优化控制方法
JP7036128B2 (ja) * 2018-01-16 2022-03-15 日本電気株式会社 制御装置、制御方法およびプログラム
EP3671373A1 (de) 2018-12-19 2020-06-24 Bystronic Laser AG Prognoseverfahren zur prognose eines bearbeitungsergebnisses für ein laserbearbeitungsverfahren
CN109981467B (zh) * 2019-03-29 2022-02-11 中国人民银行清算总中心 静态路由更新方法和路由集中管理分发方法
US11899417B2 (en) * 2019-05-02 2024-02-13 Fisher-Rosemount Systems, Inc. Methods and apparatus to implement predictive analytics for continuous control system processes
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
US12050448B2 (en) * 2021-01-29 2024-07-30 Tata Consultancy Services Limited Method and system to control a continuous bioprocessing
US20220308978A1 (en) * 2021-03-24 2022-09-29 International Business Machines Corporation Task simulation using revised goals

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020103548A1 (en) 1999-12-22 2002-08-01 Steven Treiber Computer method and apparatus for optimized controller in a non-linear process
US20020107604A1 (en) 2000-12-06 2002-08-08 Riley Terrence J. Run-to-run control method for proportional-integral-derivative (PID) controller tuning for rapid thermal processing (RTP)
US6445963B1 (en) 1999-10-04 2002-09-03 Fisher Rosemount Systems, Inc. Integrated advanced control blocks in process control systems
US6721609B1 (en) 2000-06-14 2004-04-13 Fisher-Rosemount Systems, Inc. Integrated optimal model predictive control in a process control system
DE102004025876A1 (de) 2003-05-30 2004-12-16 Fisher-Rosemount Systems, Inc., Austin Vorrichtung und Verfahren zur Stapeleigenschaftsschätzung
DE102004026979A1 (de) 2003-06-05 2005-02-17 Fisher-Rosemount Systems, Inc., Austin Vielfacheingabe- /Vielfachausgabe-Steuer-/Regelblöcke mit nichtlinearen Vorhersagefähigkeiten
DE60103037T2 (de) 2000-03-10 2005-04-28 Borealis Technology Oy Prozesssteuersystem
US6901308B1 (en) 2002-07-09 2005-05-31 The Regents Of The University Of California System level analysis and control of manufacturing process variation

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7149590B2 (en) 1996-05-06 2006-12-12 Pavilion Technologies, Inc. Kiln control and upset recovery using a model predictive control in series with forward chaining
KR100205691B1 (ko) * 1997-04-29 1999-07-01 정순착 공정 제어용 혼성예측자 및 혼성 예측 방법
JP2001106703A (ja) * 1999-10-06 2001-04-17 Mitsubishi Rayon Co Ltd 品質予測反応制御システム
JP2001249705A (ja) * 2000-03-03 2001-09-14 Toshiba Corp プロセスシミュレータ応用非線形制御装置およびその方法
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
US6760716B1 (en) * 2000-06-08 2004-07-06 Fisher-Rosemount Systems, Inc. Adaptive predictive model in a process control system
WO2002005042A2 (en) * 2000-07-12 2002-01-17 Aspen Technology, Inc. Automated closed loop step testing of process units
JP2002041108A (ja) * 2000-07-25 2002-02-08 Yokogawa Electric Corp プロセス制御方法及びこれを用いたプロセス制御装置
JP3864781B2 (ja) * 2001-12-28 2007-01-10 オムロン株式会社 温度調節器
US7376472B2 (en) * 2002-09-11 2008-05-20 Fisher-Rosemount Systems, Inc. Integrated model predictive control and optimization within a process control system
US20050193739A1 (en) * 2004-03-02 2005-09-08 General Electric Company Model-based control systems and methods for gas turbine engines
US7203554B2 (en) * 2004-03-16 2007-04-10 United Technologies Corporation Model predictive controller with life extending control
US7117046B2 (en) * 2004-08-27 2006-10-03 Alstom Technology Ltd. Cascaded control of an average value of a process parameter to a desired value

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6445963B1 (en) 1999-10-04 2002-09-03 Fisher Rosemount Systems, Inc. Integrated advanced control blocks in process control systems
US20020103548A1 (en) 1999-12-22 2002-08-01 Steven Treiber Computer method and apparatus for optimized controller in a non-linear process
DE60103037T2 (de) 2000-03-10 2005-04-28 Borealis Technology Oy Prozesssteuersystem
US6721609B1 (en) 2000-06-14 2004-04-13 Fisher-Rosemount Systems, Inc. Integrated optimal model predictive control in a process control system
US20020107604A1 (en) 2000-12-06 2002-08-08 Riley Terrence J. Run-to-run control method for proportional-integral-derivative (PID) controller tuning for rapid thermal processing (RTP)
US6901308B1 (en) 2002-07-09 2005-05-31 The Regents Of The University Of California System level analysis and control of manufacturing process variation
DE102004025876A1 (de) 2003-05-30 2004-12-16 Fisher-Rosemount Systems, Inc., Austin Vorrichtung und Verfahren zur Stapeleigenschaftsschätzung
DE102004026979A1 (de) 2003-06-05 2005-02-17 Fisher-Rosemount Systems, Inc., Austin Vielfacheingabe- /Vielfachausgabe-Steuer-/Regelblöcke mit nichtlinearen Vorhersagefähigkeiten

Also Published As

Publication number Publication date
CN1940781B (zh) 2012-09-26
JP5331301B2 (ja) 2013-10-30
GB0618442D0 (en) 2006-11-01
GB2467683B (en) 2010-10-13
GB2430763B (en) 2010-07-14
JP5479443B2 (ja) 2014-04-23
US7877154B2 (en) 2011-01-25
GB2430763A (en) 2007-04-04
CN102841538B (zh) 2015-09-23
JP2007188473A (ja) 2007-07-26
HK1144715A1 (en) 2011-03-04
CN102841538A (zh) 2012-12-26
US20070078530A1 (en) 2007-04-05
GB2465513A (en) 2010-05-26
HK1098835A1 (en) 2007-07-27
DE102006045428A1 (de) 2007-04-26
HK1148083A1 (en) 2011-08-26
JP2012064245A (ja) 2012-03-29
GB2467683A (en) 2010-08-11
GB201003382D0 (en) 2010-04-14
GB2465513B (en) 2010-07-14
CN1940781A (zh) 2007-04-04
GB201008266D0 (en) 2010-06-30

Similar Documents

Publication Publication Date Title
DE102006045428B4 (de) Verfahren und System zur Steuerung eines Batch-Prozesses
DE102004026979B4 (de) Vielfacheingabe- /Vielfachausgabe-Steuer-/Regelblöcke mit nichtlinearen Vorhersagefähigkeiten
DE10127788B4 (de) Integrierte Optimalmodell-Vorhersagesteuerung in einem Prozeßsteuerungssystem
DE10304902B4 (de) Anpassung von erweiterten Prozeßsteuerblöcken in Abhängigkeit von veränderlichen Prozeßverzögerungen
DE102014102665B4 (de) Verbesserte Kalman-Filter in Prozesssteuerungssystemen
DE112015003733T5 (de) Modellprädiktive Regelung unter Verwendung drahtloser Prozesssignale
DE102006045429B4 (de) Adaptive, Modellprädiktive Online-Steuerung in einem Prozesssteuerungssystem
JP2007188473A5 (de)
EP1606673B1 (de) Verfahren zur übertragung von softwarecode von einer steuereinheit zu einem feldgerät der prozessautomatisierungstechnik
DE10362408B3 (de) Integrierte modellbasierte prädikative Steuerung und Optimierung innerhalb eines Prozesssteuerungssystems
DE60111238T2 (de) System und verfahren zur adaptiven model-basierten prädiktiven, auf ein scharfse nicht-lineares prozessmodel basierte steuerung
DE112009000224T5 (de) Robuster andaptiver modellprädiktiver Regler mit Abstimmung zum Ausgleich einer Modellfehlanpassung
DE112011101738T5 (de) Mehrstufiges Prozessmodellierungsverfahren
JP5476418B2 (ja) バッチ特性推定のための装置及び方法
DE102014109033A1 (de) Nicht intrusive datenanalyse in einem prozesssteuerungssystem
DE10048360A1 (de) Integrierte, fortschrittliche Steuerblöcke in Prozeßsteuersystemen
DE102011012710A1 (de) Schnelle Identifikation und Erzeugung von Prozessmodellen
DE102011102034A1 (de) Online-Abbgleich eines prozessanalytischen Modells mit effektivem Prozessbetrieb
DE10012258A1 (de) Selbst-Abstimmung in einer verteilten Prozeß-Regelumgebung
DE102013100434A1 (de) Kompensieren von Sollwertänderungen in einer nicht-periodisch aktualisierten Steuereinrichtung
WO2009074544A1 (de) Verfahren zum betreiben eines systems aufweisend ein feldgerät und ein bediensystem
DE102016117585A1 (de) Verfahren und Vorrichtung zur Bestimmung von Schritten für eine multi-Zufallsvariablen Batch-Steuerungs-Analyse
DE102016119421A1 (de) Geschwindigkeitsbasierte Regelung in einem nichtperiodisch aktualisierten Controller
Johansen et al. Lyapunov-based optimizing control of nonlinear blending processes
Joelianto et al. Industrial Control Quality Improvement using Statistical Process Control: Tennessee Eastman Process Simulation Case

Legal Events

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