-
GEBIET DER TECHNIK
-
Das vorliegende Patent betrifft im Allgemeinen Prozessanlagen und Prozesssteuerungssysteme und insbesondere die Nutzung eines Datenmodellierungsstudios, um Datenverarbeitungsmodelle in Prozessanlagen und/oder Prozesssteuerungssystemen und insbesondere in Prozesssteuerungssystemen, in denen große Datenarchitekturen implementiert sind, anzulegen und auszuführen.
-
ALLGEMEINER STAND DER TECHNIK
-
Verteilte Prozesssteuerungssysteme wie diejenigen in chemischen, Erdöl verarbeitenden oder sonstigen Prozessanlagen enthalten typischerweise eine oder mehrere Prozesssteuerungseinheiten, die über Analog-, Digital- oder kombinierte Analog-/Digitalbusse oder über eine drahtlose Kommunikationsverbindung oder ein Netzwerk kommunikativ mit einem oder mehreren Feldvorrichtungen verbunden sind. Die Feldvorrichtungen, bei denen es sich beispielsweise um Ventile, Ventilstellungsregler, Schalter und Messwertgeber (z. B. Temperatur-, Druck-, Füllstands- und Durchflusssensoren) handeln kann, befinden sich in der Prozessumgebung und führen im allgemeinen physikalische oder Prozesssteuerungsfunktionen wie etwa das Öffnen und Schließen von Ventilen, das Messen von Prozessparametern usw. zur Steuerung eines oder mehrerer Prozesse innerhalb der Prozessanlage oder des Systems aus. Intelligente Feldvorrichtungen wie etwa Feldvorrichtungen, die dem bekannten Feldbusprotokoll entsprechen, können auch Steuerungsberechnungen, Alarmfunktionen und sonstige Steuerungsfunktionen übernehmen, die üblicherweise in einer Prozesssteuerungseinheit implementiert sind. Die Prozesssteuerungseinheiten, die sich typischerweise ebenfalls in der Anlagenumgebung befinden, empfangen Signale, die auf Prozessmessungen durch die Feldvorrichtungen und/oder sonstige Informationen der Feldvorrichtungen hinweisen, und führen eine Steuerungseinheitenanwendung aus, die beispielsweise beschriebene Steuerungsmodule ablaufen lässt, die Prozesssteuerungsentscheidungen treffen, Steuersignale auf der Grundlage der empfangenen Informationen erzeugen und sich mit den Steuerungsmodulen oder -blöcken koordinieren, die in den Feldvorrichtungen wie etwa HART®-, WirelessHART®- und FOUNDATION®-Feldbus-Feldvorrichtungen ausgeführt werden. Die Steuerungsmodule in der Steuerungseinheit senden Steuersignale über Kommunikationsleitungen oder -verbindungen an die Feldvorrichtungen, um dadurch den Betrieb mindestens eines Abschnitts der Prozessanlage oder des Systems zu steuern.
-
Informationen von den Feldvorrichtungen und der Steuerungseinheit werden üblicherweise über eine Datenautobahn für eines oder mehrere Hardwaregeräte verfügbar gemacht, wie etwa Bediener-Workstations, Personal Computer oder Rechenvorrichtungen, Datenhistorieneinheiten, Berichtserstellungssysteme, zentralisierte Datenbanken oder sonstige zentralisierte administrative Rechenvorrichtungen, die typischerweise in Leitstandräumen oder an sonstigen Orten fern von der raueren Anlagenumgebung angeordnet sind. Jedes dieser Hardwarevorrichtungen ist typischerweise in der Prozessanlage oder in einem Teil der Prozessanlage zentralisiert. Auf diesen Hardwarevorrichtungen laufen Anwendungen, die beispielsweise einen Bediener befähigen, Funktionen in Bezug auf das Steuern eines Prozesses und/oder das Bedienen der Prozessanlage durchzuführen, wie etwa Ändern der Einstellungen der Prozesssteuerungsroutinen, Ändern des Betriebs der Steuerungsmodule innerhalb der Steuerungseinheiten oder der Feldvorrichtungen, Ansehen des aktuellen Prozesszustands, Ansehen von Alarmen, die von Feldvorrichtungen und Steuerungseinheiten erzeugt werden, Simulieren des Prozessbetriebs zum Zwecke der Personalschulung oder Testen der Prozesssteuerungssoftware, Pflegen und Aktualisieren einer Konfigurationsdatenbank usw. Die Datenautobahn, die von den Hardwarevorrichtungen, Steuerungseinheiten und Feldvorrichtungen benutzt wird, kann drahtgebundene Kommunikationspfade, drahtlose Kommunikationspfade oder eine Kombination aus drahtgebundenen und drahtlosen Kommunikationspfaden enthalten.
-
Als Beispiel enthält das Steuerungssystem DeltaVTM, verkauft von Emerson Process Management, mehrere Anwendungen, die in verschiedenen, an verschiedenen Stellen einer Prozessanlage befindlichen Vorrichtungen innerhalb einer Prozessanlage gespeichert sind und von diesen ausgeführt werden. Mit einer Konfigurationsanwendung, die auf einer oder mehreren Workstations oder Rechenvorrichtungen liegt, können Benutzer Prozesssteuerungsmodule anlegen oder ändern und diese Prozesssteuerungsmodule über eine Datenautobahn auf dedizierte verteilte Steuerungseinheiten herunterladen. Typischerweise bestehen diese Steuerungsmodule aus kommunikativ miteinander verbundenen Funktionsbausteinen, die Objekte in einem objektorientierten Programmierprotokoll darstellen, die Funktionen innerhalb des Steuerungsplans auf der Grundlage von Eingaben in diesen ausführen und die Ausgaben an andere Funktionsbausteine innerhalb des Steuerungsplans bereitstellen. Die Konfigurationsanwendung kann es einem Konfigurationsplaner auch ermöglichen, Bedieneroberflächen anzulegen oder zu ändern, die von einer Ansichtsanwendung dazu genutzt werden, einem Bediener Daten anzuzeigen und den Bediener befähigen, Einstellungen wie etwa Sollwerte innerhalb der Prozesssteuerungsroutinen zu ändern. Jede dedizierte Steuerungseinheit und in manchen Fällen ein oder mehrere Feldvorrichtungen speichern eine entsprechende Steuerungsanwendung, die die Steuerungsmodule, die ihr zugeordnet und auf sie heruntergeladen wurden, ablaufen lässt, um die eigentlichen Prozesssteuerungsfunktionen zu implementieren. Die Ansichtsanwendungen, die auf einem oder mehreren Bediener-Workstations (oder auf einer oder mehreren entfernt angeordneten Rechenvorrichtungen in kommunikativer Verbindung mit den Bediener-Workstations und der Datenautobahn stehen), empfangen über die Datenautobahn Daten von der Steuerungsanwendung und zeigen diese Daten den Prozesssteuerungssystemplanern, Bedienern oder Benutzern, die die Benutzerschnittstellen benutzen, an und können eine beliebige Anzahl verschiedener Ansichten bereitstellen, wie etwa eine Bedieneransicht, eine Ingenieursansicht, eine Technikeransicht usw. Eine Datenhistorienanwendung ist typischerweise in einer Datenhistorienvorrichtung gespeichert, die einige oder alle der über die Datenautobahn bereitgestellten Daten erfasst und speichert, und wird von dieser ausgeführt, während eine Konfigurationsdatenbankanwendung auf einem weiteren, an die Datenautobahn angeschlossenen Computer ablaufen kann, um die aktuelle Konfiguration der Prozesssteuerungsroutine und die damit verbundenen Daten zu speichern. Alternativ kann sich die Konfigurationsdatenbank auf derselben Workstation befinden wie die Konfigurationsanwendung.
-
Die Architektur von derzeit bekannten Prozesssteuerungsanlagen und Prozesssteuerungseinheiten wird durch den begrenzten Speicher der Steuerungseinheit und der Vorrichtungen, die Kommunikationsbandbreite und die Fähigkeit der Steuerungseinheit und des Vorrichtungsprozessors stark beeinflusst. Beispielsweise bei derzeit bekannten Prozesssteuerungssystemarchitekturen wird die Verwendung eines dynamischen und statischen nicht-flüchtigen Speichers in der Steuerungseinheit normalerweise minimiert oder wenigstens sorgfältig verwaltet. Als Ergebnis muss ein Benutzer bei der Systemkonfiguration (z. B. a priori) typischerweise wählen, welche Daten in der Steuerungseinheit archiviert oder gespeichert werden müssen, mit welcher Häufigkeit sie gespeichert werden und ob eine Komprimierung verwendet wird oder nicht. Danach ist die Steuerungseinheit entsprechend mit diesem begrenzten Datenregelsatz konfiguriert. Folglich werden Daten, die bei der Fehlersuche und Prozessanalyse nützlich sein könnten, häufig nicht archiviert, und wenn sie erfasst werden, können die nützlichen Information durch Datenkomprimierung verloren gegangen sein.
-
Außerdem werden zum Minimieren der Speichernutzung einer Steuerungseinheit bei derzeit bekannten Prozesssteuerungssystemen ausgewählte Daten, die archiviert oder gespeichert werden sollen (wie durch die Konfiguration der Steuerungseinheit angegeben) an die Workstation oder die Rechenvorrichtung zur Speicherung in einer geeigneten Datenhistorienvorrichtung oder einem Datensilo berichtet. Die aktuellen Techniken, die dazu dienen, die Daten zu berichten, nutzen Kommunikationsressourcen schlecht aus und führen zu einer übermäßigen Belastung der Steuerungseinheit. Außerdem sind die Datenerfassung und Zeitstempelung aufgrund der Kommunikationsverzögerungen und der Abtastung der Datenhistorienvorrichtung oder des Silos nicht synchron mit dem tatsächlichen Prozess.
-
Genauso bleiben bei Chargenprozesssteuerungssystemen zur Minimierung der Speichernutzung bei Steuerungseinheiten Chargenrezepte und Momentaufnahmen einer Konfiguration der Steuerungseinheit typischerweise in einer zentralisierten administrativen Rechenvorrichtung oder Stelle (z. B in einem Datensilo oder einer Datenhistorienvorrichtung) gespeichert und werden nur bei Bedarf an eine Steuerungseinheit übertragen. Eine solche Strategie bringt erhebliche stoßweise Belastungen in die Steuerungseinheit und in die Kommunikation zwischen der Workstation oder der zentralisierten administrativen Rechenvorrichtung und der Steuerungseinheit ein.
-
Ferner spielen die Fähigkeit und die Leistungsbegrenzungen relationaler Datenbanken von derzeit bekannten Prozesssteuerungssystemen, verbunden mit den bisherigen hohen Kosten einer Plattenspeicherung, eine große Rolle bei der Strukturierung des Datenabrufs und des Speicherns in unabhängige Einheiten oder Silos, um die Ziele bestimmter Anwendungen zu erfüllen. Beispielsweise werden bei manchen aktuellen Systemen Prozessmodelle, fortlaufende Verlaufsdaten und Chargen- und Ereignisdaten in drei verschiedenen Anwendungsdatenbanken oder Datensilos zur Archivierung gespeichert. Jeder Silo hat eine andere Schnittstelle, um auf die darin gespeicherten Daten zuzugreifen.
-
Ein Strukturieren der Daten auf diese Weise schafft eine Barriere in der Art und Weise, in der auf historisierte Daten zugegriffen wird und diese verwendet werden. Beispielsweise kann die grundlegende Ursache von Schwankungen der Produktqualität mit Daten, die in mehr als einem dieser Datensilos gespeichert sind, zusammenhängen oder von diesen bestimmt werden. Jedoch ist es wegen der unterschiedlichen Dateistrukturen der Silos nicht möglich oder zumindest nicht leicht, Werkzeuge bereitzustellen, mit denen Daten für eine Analyse rasch und einfach abgerufen werden können. Ferner müssen Audit- oder Synchronisierfunktionen durchgeführt werden, um dafür zu sorgen, dass die Daten über verschiedene Silos hinweg einheitlich sind.
-
Die die oben erörterten Einschränkungen bei derzeit bekannten Prozessanlagen und Prozesssteuerungssystemen und sonstige Einschränkungen können sich unerwünschterweise bei der Erfassung von Daten zur Konfiguration oder Anlage von Datenmodellen zeigen, die eine beliebige Routine enthalten können, die den Prozessbetrieb modelliert oder abschätzt oder eine Analyse eines Prozessaspekts mittels erfasster Prozessdaten oder auf der Grundlage von Prozessdaten aus einem realen oder simulierten Prozess durchführt. Derzeit bekannte Systeme verlangen, dass Benutzer die gewünschten Daten auswählen und die Anlageneinrichtung dafür konfigurieren, die gewünschten Daten zu erfassen. Wenn ein Benutzer später feststellt, dass zusätzliche Daten notwendig sind, muss der Benutzer die Anlage neu konfigurieren, um die neuen Daten zu erfassen, und die Anlage so betreiben, dass sie die neuen Daten erfasst, ein Prozess, der einen beliebigen Zeitraum von wenigen Wochen bis wenige Monate dauern kann. Da Benutzer selten alle Daten kennen, die notwendig sein können, um gleich zu Beginn beim Anlegen des Modells ein Modell für einen Prozess zu erzeugen, erst recht nicht zu Beginn beim Konfigurieren der Anlage, machen die derzeit bekannten Systeme häufig eine komplexe Prozessmodellierung innerhalb tatsächlicher Prozesse ineffizient oder unpraktikabel. Auch wenn die Anlage dazu fähig ist, alle notwendigen Daten zu erfassen, erfordern es Speicher- und Bandbreitenzwänge bei derzeit bekannten Systemen normalerweise, dass die erfassten Daten hoch komprimiert werden, mit einer geringen Häufigkeitsrate erfasst werden und/oder verschobene oder falsche Zeitstempel bekommen. Entsprechend können Daten häufig falsch, unvollständig und untauglich sein, um komplexe Vorhersagen und Bestimmungen zum Betrieb der Anlage vorzunehmen.
-
“Big data“ (Massendaten) bezieht sich im Allgemeinen auf eine Erfassung von einem oder mehreren Datensätzen, die so groß oder komplex sind, dass herkömmliche Datenbankverwaltungswerkzeuge und/oder Datenverarbeitungsanwendungen (z. B. relationale Datenbanken und Desktop-Statistikpakete) nicht dazu fähig sind, die Datensätze innerhalb eines tolerablen Zeitraums zu verwalten. Typischerweise sind Anwendungen, die Massendaten verwenden, transaktional und auf den Endbenutzer gerichtet oder fokussiert. Beispielsweise können Internetsuchmaschinen, Anwendungen sozialer Medien, Marketinganwendungen und Einzelhandelsanwendungen Massendaten verwenden und handhaben. Massendaten können von einer verteilten Datenbank unterstützt werden, die es ermöglicht, die Fähigkeit zur Parallelverarbeitung moderner Mehrprozess-, Mehrkernserver voll auszulasten. Es gibt einige jüngste Entwicklungen hin zu einer Einbeziehung von Massendaten oder Massendatenmaschinen in ein Prozesssteuerungssystem zum Zweck der Archivierung von Prozesssteuerungsdaten auf einem Niveau, das in der Vergangenheit nicht verfügbar war. Jedoch gibt es aktuell keine oder nur eine begrenzte Fähigkeit zum Analysieren oder Verwenden dieser Daten wie sie von einer Prozessanlage oder einem Prozess erfasst werden, um eine umfassende oder systematische Analyse des Anlagenbetriebs durchzuführen, Trends erkennen zu können, eine vorhersagende Analyse durchzuführen, Anomalien innerhalb des Anlagenbetriebs zu erkennen, die Anlage neu zu einzustellen oder neu zu konfigurieren, damit sie wirtschaftlicher betrieben wird, usw. Insbesondere müssen die Benutzer Datenmodelle oder Modellierungsroutinen immer noch manuell anlegen und testen, um die Daten in einer bestimmten Weise zu verarbeiten, was sehr zeitaufwändig und schwierig zu bewerkstelligen ist.
-
KURZDARSTELLUNG
-
Ein Datenmodellierungsstudio stellt eine strukturierte Umgebung für ein grafisches Anlegen oder Programmieren von Datenmodellen bereit, die beispielsweise dafür konfiguriert werden kann, Daten von einer Massendatenmaschine zu nutzen oder zu analysieren, um damit eine systematischere oder umfassendere Diagnose, Prognose, Analyse, Erkennung von Beziehungen usw. innerhalb einer Prozesssteuerung durchzuführen. Das Datenmodellierungsstudio enthält eine Konfigurationsroutine oder -maschine zum Erzeugen von Benutzerschnittstellenelementen, um einen grafischen Aufbau oder eine grafische Programmierung eines Datenmodells und einer Laufzeitmaschine zum Ausführen von Modellen zur Durchführung einer Analyse eines Prozesses oder in Bezug darauf zu erleichtern. Die Konfigurationsmaschine kann eine Schnittstellenroutine enthalten, die Benutzerschnittstellenelemente, eine Vielzahl von in einem Speicher abgelegten Modellvorlagen, die als Bausteine für das Modell dienen, und einen Modellkompilierer, der das angelegte Modell in ein durch die Laufzeitmaschinen ausführbares Softwareformat konvertiert, enthalten. Die Laufzeitmaschine kann eine Datenabrufroutine zum Abrufen von Daten, die beim Ausführen eines Modells verwendet werden, und eine Modellausführungsroutine, die abläuft oder das ausführbare Modell ausführt, enthalten.
-
Die Schnittstellenroutine kann im Speicher abgelegte Anweisungen, die in einem Prozessor ausgeführt einen Bibliotheksbereich in einer Benutzeranzeige, die Gruppen von Modellvorlagen anzeigt, die zur Verwendung beim Anlegen eines Datenmodells verfügbar sind, sowie einen Leinwandbereich erzeugen, der als Hauptpräsentationsfenster zum grafischen Anlegen von Datenmodellen dient, enthalten. Insbesondere kann der Bibliotheksbereich Modellvorlagen anzeigen, die Elemente darstellen, die beim Aufbauen des Modells in Form von Dateneingabehinweisvorlagen, Datenausgabehinweisvorlagen, mathematischen oder anderen funktionalen Operationen oder Datenbearbeitungsvorlagen usw. verwendet werden. Somit sind die Modellvorlagen in einem Speicher abgelegte allgemeine Modellelemente, die auf Datenquellen für in der Anlage erfasste Daten, Vorrichtungen in der Prozessanlage, an den Daten der Anlage durchzuführende mathematische Operationen, Datenempfänger (z. B. Vorrichtungen, Schnittstellen usw.), die die Ausgabe der Datenmodelle empfangen sollen, usw. hinweisen. Bei manchen Ausführungsformen können die Daten, die für ein Datenmodell verwendet werden sollen, in einer Massendatenmaschine gespeicherte umfassende, getreue Daten sein, die beliebige oder alle der verschiedenen Parameter einer Prozessanlage definieren, in der eine Massendatenarchitektur implementiert ist.
-
Im Allgemeinen kann der Benutzer die Konfigurationsroutine des Datenmodellierungsstudios nutzen, um die Modellvorlagen im Leinwandbereich (der dem Benutzer ein Präsentationsfenster bereitstellt, das das Datenmodell beim Aufbauen grafisch anzeigt) anzuordnen, um grafisch die Modellvorlagen miteinander zu verbinden, um die Art und Weise zu definieren, in der die Vorlagen miteinander kommunizieren, wenn sie innerhalb des Modells ausgeführt werden, um die Parameter der Vorlagen zu konfigurieren, Datenquellen als Eingaben in das Datenmodell auszuwählen, an diesen Daten auszuführende Funktionen auszuwählen und eine oder mehrere Arten auszuwählen, in der die vom Datenmodell erzeugten Ausgaben der Anlage präsentiert oder in dieser verwendet werden. Beispielsweise kann ein Benutzer eine oder mehrere Modellvorlagen oder Hinweise von Modellvorlagen aus der Bibliothek auswählen, sie in den Leinwandbereich ziehen und dort ablegen. Der Benutzer kann dann die verschiedenen Vorlagen im Leinwandbereich grafisch miteinander verbinden, um zu definieren, wie die Vorlagen miteinander interagieren, wie etwa Daten zwischen ihnen zu bewegen. Der Benutzer kann auch jede Vorlage auf verschiedene Arten modifizieren oder konfigurieren, damit die Vorlage auf eine bestimmte Art und Weise oder bei bestimmten Daten funktioniert, die Vorlagen benennen usw. Der Modellkompilierer kann eine in einem Speicher abgelegte Kompilierroutine enthalten, um die grafische Darstellung des vom Benutzer angelegten Datenmodells mittels der Benutzerschnittstellenroutine in ein kompiliertes Modell in einem von der Laufzeitmaschine unterstützten ausführbaren Format zu verwandeln. Das Datenmodell kann auch als eine neue Vorlage im Speicher abgelegt werden und das kompilierte Modell kann als ausführbares Modell im Speicher abgelegt werden. Danach kann das Datenmodell von der Laufzeitmaschine innerhalb der Anlagenumgebung betrieben oder ausgeführt werden, um Daten von der Anlage zu analysieren, wie etwa in der Massendatenmaschine (oder einer sonstigen Datenbank) gespeicherte Prozessanlagendaten zu analysieren, Echtzeitdaten der Anlage zu analysieren, usw.
-
In manchen Fällen kann der Benutzer ein Datenmodell anlegen, dieses Modell mit historischen Daten, die in der Massendatenmaschine (oder einer anderen Datenbank) gespeichert sind, ablaufen lassen, um zu sehen, ob das Datenmodell für seinen beabsichtigten Zweck angemessen funktioniert. Wenn nicht, kann der Benutzer das Datenmodell abändern oder verändern, indem er beispielsweise zusätzliche Prozessparameter oder Prozessdaten in das Datenmodell einbezieht, und kann dann das abgeänderte Datenmodell mit demselben historischen Datensatz (oder Daten aus demselben Zeitraum) noch einmal ablaufen lassen, um dadurch das geänderte Modell zu testen. Wenn das Datenmodellierungsstudio mit einer Prozessanlage mit Massendatenmaschine, die alle oder die meisten der im Prozess erzeugten oder erkannten Daten erfasst, verbunden ist, sind die Daten, die zu den im geänderten Modell verwendeten neuen Parametern gehören, sofort in der Historiendatenbank der Massendaten verfügbar, das diese Daten als Teil der Massendatenarchitektur des Prozesses erfasst wurden. Auf diese Weise kann ein Modellanleger schnell oder einfacher Modelle mit historischen Daten innerhalb einer Simulationsumgebung der Anlage, innerhalb einer Erkenntnisgewinnungsumgebung der Anlage planen, testen, ändern und neu testen, bevor er diese Modelle innerhalb einer Online-Umgebung der Anlage in Betrieb nimmt.
-
Der Benutzer kann somit die Konfigurationsmaschine nutzen, um grafisch ein Modell zum Bestimmen der Eigenschaften von Produkten, die in der Anlage erzeugt werden, Erkennen von Fehlern in der Anlageneinrichtung, Analysieren des Anlagenbetriebs, Modellieren des Anlagenbetriebs, Diagnostizieren eines aktuellen Problems in einer Anlage, Vorhersagen möglicher zukünftiger Probleme in einer Anlage, Erkennen von Beziehungen innerhalb der Anlagendaten und der Anlageeinrichtung usw. zu erzeugen und zu kompilieren.
-
Allgemein ausgedrückt, die Laufzeitmaschine führt ein oder mehrere kompilierte Datenmodelle aus, um die gewünschten Ausgaben zu erzeugen. Die Laufzeitmaschine kann eine Abrufroutine zum Abrufen von Daten, die den Dateneingabevorlagen eines Modells aus einem Speicher (wie etwa einer Massendatenmaschine) oder aus der Anlage selbst entsprechen, und eine Modellausführungsroutine, die das ausführbare Modell ausführt, enthalten. Insbesondere kann der Prozessor die Abrufroutine ausführen, um Daten aus Datenquellen, die den im Modell verwendeten grafischen Dateneingabevorlagen entsprechen, abzufragen. Bei manchen Ausführungsformen kann die Abrufroutine Daten aus einem Massendatengerät, das zum Speichern von Daten dient, die aus einem oder mehreren Vorrichtungen eines Prozesssteuerungssystems abgerufen wurden, abrufen, während die Modellausführungsroutine in einem Speicher abgelegte Anweisungen enthält, die ein kompiliertes Modell ausführen (mittels der aus dem Speicher abgerufenen Vorlagen angelegt), um anhand der abgerufenen Daten eine Ausgabe zu erzeugen. Die Modellausführungsroutine kann ein mit Hilfe der Konfigurationsmaschine angelegtes Modell oder ein im Datenmodellierungsstudio enthaltenes vorkonfiguriertes Modell ausführen. Bei manchen Ausführungsformen können eine oder mehrere Vorrichtungen in der Anlage die Modellausführungsroutine automatisch ausführen, um die Datenmodelle zu betreiben, während bei einigen anderen Ausführungsformen ein Benutzer entscheiden kann, die Modellausführungsroutine auszuführen, um ein Modell ablaufen zu lassen. Ferner kann die Modellausführungsroutine ein Datenmodell in einer vom Anlagenbetrieb getrennten Offline-Umgebung ausführen, in der das Modell mit im Speicher abgelegten historischen Daten betrieben werden kann. Die Modellausführungsroutine kann auch in einem Modell in einer Online-Umgebung betrieben werden, wobei das Abrufmodell Echtzeit- oder Fast-Echtzeit-Datenströme von einer oder mehreren Vorrichtungen in der Anlage und/oder von einem Massendatengerät abrufen kann, um eine Ausgabe zu erzeugen, die den Betrieb der Anlage beeinflusst. Ferner kann der Prozessor die Modellausführungsroutine im Hintergrund (d. h. von einer Vorrichtung im Prozesssteuerungssystem ohne Interaktion mit dem Benutzer betrieben) oder im Vordergrund (mit Interaktion mit dem Benutzer) ausführen.
-
Das hier beschriebene Datenmodellierungsstudio stellt eine robuste und effiziente Architektur für ein grafisches Anlegen und Ausführen von Datenmodellen in einer Prozessanlagenumgebung bereit und ist beim Analysieren von Daten, die in einer Massendatenmaschine gespeichert sind, besonders nützlich. Wenn das Datenmodellierungsstudio in einer Prozesssteuerung implementiert ist, die eine Massendatenarchitektur verwendet, die ein Massendatengerät enthält, das alle (oder fast alle) der erfassten Prozess- und Anlagendaten speichert, ermöglicht das Datenmodellierungsstudio das effiziente Anlegen, Testen oder Ablaufenlassen von Modellen, die diese Daten verwenden. Beispielsweise kann der Benutzer das Datenmodell dazu nutzen, grafisch und iterativ Datenmodelle anzulegen und zu bearbeiten, ohne den Anlagenbetrieb neu zu konfigurieren, um zusätzliche Daten zu erfassen, was eine viel schnellere Modellentwicklungsumgebung ausmacht. Da alle der Anlagendaten in einer Massendatenmaschine verfügbar sind, kann darüber hinaus ein Modell angelegt werden, das selbst auf verschiedene Arten iteriert oder sich ändert, um neue, mehr oder andere Daten in einer Modellierungsroutine hinzuzufügen oder neue oder neue andere Daten als Teil der Modellierungsroutine zu analysieren, die sich selbst testet und selbst iterativ verändert, um ein besseres oder genaueres Modell zu entwickeln, das bessere oder genauere Vorhersagen, eine Trendanalyse, eine Erkennung von Fehlern oder anormalen Situationen usw. bereitstellt. In noch einem weiteren Fall kann ein Benutzer ein oder mehrere Datenmodelle anlegen, die in einer Erkenntnisgewinnungsumgebung verwendet werden können, um Daten in einer Massendatenmaschine zu analysieren, um Beziehungen, Trends usw. hinsichtlich dieser Daten und somit der Anlage zu erkennen.
-
KURZE BESCHREIBUNG DER ZEICHNUNGEN
-
1 ist ein Blockschaubild eines Beispiels für eine Prozessanlage oder ein Prozesssteuerungssystem mit einer Massendatenmaschine, die Daten von einer Anlage erfasst und speichert, und einem Datenmodellierungsstudio, das zum Anlegen und Ausführen von Datenmodellen, die die von der Anlage erfassten Daten verwenden oder analysieren, genutzt werden kann;
-
2 ist ein Blockschaubild einer beispielhaften Ausführungsform des Datenmodellierungsstudios von 1, angeschlossen in einer allgemeinen Anlagenumgebung;
-
3 ist eine Bildschirmpräsentation einer grafischen Benutzerschnittstelle des Datenmodellierungsstudios von 1 und 2;
-
4 ist ein Ablaufplan eines beispielhaften Verfahrens zum Anlegen eines Datenmodellierungsstudios unter Anwendung des Datenmodellierungsstudios von 1 und 2;
-
5 ist eine Bildschirmdarstellung eines Datenexplorers, der zum Anlegen oder Ausführen von Modellen verwendet werden kann.
-
6 ist ein Blockschaubild, das eine beispielhafte Anordnung mehrerer Gruppen von Knoten in einem beispielhaften Massendatennetzwerk für eine Prozessanlage oder ein Prozesssteuerungssystem veranschaulicht;
-
7 ist ein Blockschaubild, das eine beispielhafte Anordnung von Bereitstellknoten, die Daten für eine Verwendung durch Modelle, die unter Anwendung eines Datenmodellierungsstudios angelegt und ausgeführt werden, erfassen.
-
8 ist ein Blockschaubild, das eine beispielhafte Verwendung von Gerätedatenempfängern zum Speichern oder Historisieren von Daten für eine Verwendung durch Modelle, die unter Anwendung eine Datenmodellierungsstudios angelegt und ausgeführt wurden, veranschaulicht.
-
9 ist ein Ablaufplan eines beispielhaften Erkenntnisgewinnungsverfahrens 1100, das in einem Prozesssteuerungssystem oder einer Prozessanlage ausgeführt wird.
-
Die Figuren stellen Ausführungsformen der vorliegenden Erfindung nur für Veranschaulichungszwecke dar. Ein Fachmann wird aus der folgenden Erörterung leicht erkennen, dass andere Ausführungsformen der hier veranschaulichten Strukturen und Verfahren angewandt werden können, ohne von den hier beschriebenen Grundsätzen der Erfindung abzuweichen.
-
DETAILLIERTE BESCHREIBUNG
-
1 ist ein Blockschaubild eines beispielhaften Prozesssteuerungssystems 10 einer Prozessanlage, die ein Massendatennetzwerk 100 enthält, das wiederum Daten in einer Prozessanlage erfasst. Das Prozesssteuerungssystem von 1 enthält außerdem eine Benutzerschnittstellenstation 103, die beispielsweise in der Prozessanlagenumgebung bereitgestellt ist und ein Datenmodellierungsstudio 109 ausführt, das einen Benutzer befähigt, verschiedene Datenmodelle mit den vom Massendatennetzwerk erfassten Daten anzulegen und ablaufen zu lassen. Die Benutzerschnittstellenstation 103 führt auch eine Wissensgewinnungsanwendung 114 aus, die Modelle ausführt, die eine systematische oder umfassende Diagnose, Prognose, Analyse, Erkennung von Beziehungen usw. durchführen, um von einer Prozessanlage abgerufene Daten zu entdecken und zu bewerten. Auch wenn 1 darstellt, dass nur eine einzige Benutzerschnittstellenstation 103 das Datenmodellierungsstudio 109 und die Wissensgewinnungsanwendung 114 aufnimmt, können das Datenmodellierungsstudio 109 und die Wissensgewinnungsanwendung 114 bei manchen Ausführungsformen auf verschiedenen Benutzerschnittstellenstationen 103 oder mehreren Benutzerschnittstellenstationen 103 liegen oder auf eine oder mehrere Vorrichtungen in der Prozessanlage 109 verteilt sein. Insbesondere stellt das Datenmodellierungsstudio 109 wie in der Prozessanlage oder dem Prozesssteuerungssystem 10 implementiert einem Benutzer oder Modellentwickler ein Werkzeug bereit, um ihn beim systematischen und effizienten Definieren oder Anlegen von Datenmodellen (Modellierroutinen) zu unterstützen, die innerhalb der Anlagenumgebung mit zuvor in der Anlage erfassten historischen Daten, aktuell in der Anlage erfassten Echtzeitdaten oder beidem funktionieren. Das Datenmodellierungsstudio 109 und die Wissensgewinnungsanwendung 114 können einen Vorteil daraus ziehen, dass das Massendatennetzwerk 100 alle oder die meisten Daten, die in der Anlage oder dem Prozesssteuerungssystem 10 erzeugt oder erfasst werden, erfasst, speichert und einen effizienten Zugang zu diesen bereitstellt. Darüber hinaus verwendet das Datenmodellierungsstudio 109 diese Daten, um dem Modellentwickler eine effizientere Art des Planens, Testens und Implementierens von Modellen in der Anlage oder im Prozesssteuerungssystem 10 bereitzustellen. Die Wissensgewinnungsanwendung 114 stellt eine zusätzliche Umgebung zum Implantieren von Modellen in die Anlage oder das Prozesssteuerungssystem 10 bereit, sowie zum Ansehen und Untersuchen von Beziehungen zwischen diesen Daten sowie der Ergebnisse des ausgeführten Modells. Wie in 1 veranschaulicht, kann das Datenmodellierungsstudio 109 ein Satz von Anweisungen sein, die durch einen oder mehrere Prozessoren eines oder mehrerer Vorrichtungen wie etwa in der Benutzerschnittstellenstation 103 ausgeführt werden. Selbstverständlich kann das Datenmodellierungsstudio 109 auf einem beliebigen einer Vielzahl von Rechenvorrichtungen wie Tablets, Mobiltelefonen, Laptop-Computer, Desktop-Computer, Server usw. ausgeführt werden und auf nur einer Vorrichtung ausgeführt werden oder auf eine Anzahl solcher Vorrichtungen verteilt sein. Genauso kann die Wissensgewinnungsanwendung 114 ein Satz von Anweisungen sein, die durch einen oder mehrere Prozessoren eines oder mehrerer Vorrichtungen ausgeführt werden und auf einer beliebigen einer Vielzahl von Rechenvorrichtungen ausgeführt werden.
-
Ganz allgemein enthält das beispielhafte Massendatennetzwerk 100 des beispielhaften Prozesssteuerungssystems eine Massendateneinrichtung oder ein Massendatengerät 102 des Prozesssteuerungssystems, einen Massendatennetzwerk-Hauptstrang 105 des Prozesssteuerungssystems und eine Vielzahl von Knoten 108, die kommunikativ mit dem Hauptstrang 105 verbunden sind. Die Knoten 108 sind außerdem mit Prozessanlageneinrichtungen wie Steuerungseinheiten, Feldvorrichtungen, Anlageneinrichtungen usw. verbunden. Prozessbezogene Daten, anlagenbezogene Daten, kommunikationsbezogene Daten und sonstige Arten von Daten können in der Vielzahl von Knoten 108 erfasst und zwischengespeichert werden, und diese Daten können über den Netzwerk-Hauptstrang 105 an die Massendateneinrichtung oder das -gerät 102 des Prozesssteuerungssystems zur Langzeitspeicherung (z. B. Historisierung) und Verarbeitung geliefert werden. Wenigstens einige dieser Daten können zwischen Knoten 108 des Netzwerks 100 geliefert werden (z. B.), um einen Prozess in Echtzeit zu steuern.
-
Im Massendatengerät 102 des Prozesssteuerungssystems kann jede Art von Daten in Bezug auf das Prozesssteuerungssystem 10 erfasst und gespeichert werden. Beispielsweise können Echtzeit-Prozessdaten wie kontinuierliche, Chargen-, Mess- und Ereignisdaten, die während der Steuerung eines Prozesses in der Prozessanlage 10 erzeugt werden (und in manchen Fällen auf eine Wirkung einer Echtzeitausführung des Prozesses hinweisen) und gespeichert werden. Darüber hinaus können Prozessdefinitions-, -anordnungs- oder -einstelldaten wie Prozessanlagenkonfigurationsdaten und/oder Chargenrezeptdaten erfasst und gespeichert werden. Außerdem können Daten, die der Konfiguration, der Ausführung und den Prozessdiagnoseergebnissen entsprechen, erfasst und gespeichert werden. Selbstverständlich können andere Arten von Prozessdaten wie Alarme oder Warnungen ebenfalls erfasst und gespeichert werden. Auf ähnliche Weise können der Datenautobahnverkehr und Netzwerkverwaltungsdaten des Hauptstrangs 105 und verschiedener andere Kommunikationsnetzwerke der Prozessanlage 10 erfasst und gespeichert werden. Genauso können benutzerbezogene Daten wie etwa Daten zum Benutzerverkehr, Anmeldeversuche, Abrufe und Anweisungen erfasst und gespeichert werden. Weiterhin können Textdaten (z. B. Protokolle, Bedienprozeduren, Handbücher etc.), Raumdaten (z. B. standortbasierte Daten) und Multimediadaten (z. B. Betriebsfernsehen, Videoclips usw.) erfasst und gespeichert werden.
-
Der Massendatennetzwerk-Hauptstrang 105 des Prozesssteuerungssystems kann eine Vielzahl vernetzter Rechenvorrichtungen wie die Benutzerschnittstellenvorrichtung 103 (mit dem Datenmodellierungsstudio 109 und der Wissensgewinnungsanwendung 114) oder Schalteinrichtungen enthalten, die dafür konfiguriert sind, Pakete von/zu verschiedenen Knoten 108 des Massendatennetzwerks 100 des Prozesssteuerungssystems und zu/von dem Massendatengerät 102 des Prozesssteuerungssystems (das selbst einen Knoten des Massendatennetzwerks 100 des Prozesssteuerungssystems bildet) zu leiten. Die Vielzahl vernetzter Rechenvorrichtungen des Hauptstrangs 105 kann durch eine beliebige Anzahl von drahtlosen und/oder drahtgebundenen Verbindungen miteinander verbunden sein. Darüber hinaus kann der Massendatennetzwerk-Hauptstrang 105 des Prozesssteuerungssystems eine oder mehrere Firewall-Vorrichtungen enthalten.
-
Beispielhaft kann der Massendatennetzwerk-Hauptstrang 105 ein oder mehrere geeignete Weiterleitungsprotokolle, z. B. Protokolle, die in der Internet Protocol(IP)-Suite (z. B. UPD (User Datagram Protocol), TCP (Transmission Control Protocol), Ethernet usw.) enthalten sind, oder andere geeignete Weiterleitungsprotokolle enthalten. Wenn gewünscht, können wenigstens einige der Knoten 108 ein Streaming-Protokoll wie das Stream Control Transmission Protocol (SCTP) verwenden, um einen Datenstrom zwischengespeicherter Daten über den Netzwerkhauptstrang 105 von den Knoten 108 zum Massendatengerät 102 des Prozesssteuerungssystems fließen zu lassen. Typischerweise kann jeder Knoten 108, der im Massendatennetzwerk 100 des Prozesssteuerungssystems enthalten ist, mindestens eine Anwendungsschicht (und bei manchen Knoten zusätzliche Schichten) des vom Hauptstrang 105 unterstützten Weiterleitungsprotokolls unterstützen. Jeder Knoten 108 kann innerhalb des Massendatennetzwerks 100 des Prozesssteuerungssystems eindeutig identifiziert werden, z. B. durch eine eindeutige Netzwerkadresse. Außerdem kann wenigstens ein Teil des Massendatennetzwerks 100 des Prozesssteuerungssystems ein Ad-hoc-Netzwerk sein. Von daher können sich wenigstens einige der Knoten 108 mit dem Netzwerkhauptstrang 105 (oder mit einem anderen Knoten des Netzwerks 100) ad hoc verbinden.
-
Darüber hinaus können Daten, die auf die Prozessanlage 10 (z. B. auf physische Einrichtungen wie Maschinen und Vorrichtungen, die in der Prozessanlage 10 enthalten sind) bezogen sind, aber von Anwendungen, die einen Prozess direkt konfigurieren, steuern oder diagnostizieren, vielleicht nicht erzeugt werden, ebenfalls in der Massendatenmaschine 102 erfasst und gespeichert werden. Beispielsweise können Schwingungsdaten und Kondensatabscheidungsdaten und Daten, die auf einen Wert eines Parameters hinweisen, der der Anlagensicherheit entspricht (z. B. Korrosionsdaten, Gaserkennungsdaten usw.) gespeichert werden. Genauso können Daten, die auf ein der Anlagensicherheit entsprechendes Ereignis hinweisen, in der Massendatenmaschine 102 erfasst und gespeichert werden. Genauso können Daten, die der Funktionstüchtigkeit von Maschinen, Anlageneinrichtungen und/oder Vorrichtungen entsprechen, Einrichtungsdaten (z. B. Daten zur Funktionstüchtigkeit einer Pumpe auf der Grundlage von Schwingungsdaten oder sonstigen Daten), Daten, die der Konfiguration, Ausführung und den Ergebnissen der Diagnose von Einrichtungen, Maschinen und/oder Vorrichtungen entsprechen, erfasst und gespeichert werden.
-
In manchen Fällen können Daten, die von Einheiten außerhalb der Prozessanlage 10 erzeugt oder an diese übertragen werden, wie etwa Daten zu Rohstoffkosten, erwarteten Ankunftszeiten von Teilen oder Einrichtungen, Wetterdaten oder andere externe Daten, in der Massendatenmaschine 102 erfasst und gespeichert werden. Selbstverständlich können alle Daten, die von einem beliebigen der kommunikativ mit dem Netzwerkhauptstrang 105 verbundenen Knoten 108 erzeugt, empfangen oder beobachtet werden, erfasst werden und im Massendatengerät 102 des Prozesssteuerungssystems gespeichert werden.
-
Wie in 1 veranschaulicht, kann das Datenmodellierungsstudio 109 des Prozesssteuerungssystems dafür konfiguriert werden, für die Konfiguration und Datenexploration eine primäre Schnittstelle zum Massendatennetzwerk 100 des Prozesssteuerungssystems bereitzustellen, z. B. an einer Benutzerschnittstelle oder sonstigen Schnittstelle zur Verwendung durch einen Benutzer oder andere Anwendungen. Das Datenmodellierungsstudio 109 des Prozesssteuerungssystems kann über den Massendatennetzwerk-Hauptstrang 105 des Prozesssteuerungssystems mit dem Massendatengerät 102 verbunden werden oder kann direkt mit dem Massendatengerät 102 verbunden werden oder kann auf sonstige Weise mit dem Massendatengerät 102 gekoppelt werden.
-
Im beispielhaften Massendatenprozesssteuerungsnetzwerk 100 des Prozesssteuerungssystems von 1 ist die Massendateneinrichtung oder das -gerät 102 im Netzwerk 100 zentralisiert und dafür konfiguriert, Daten (z. B. über Streaming und/oder über ein anderes Protokoll) von den Knoten 108 des Netzwerks 100 zu empfangen und die empfangenen Daten zu speichern. Die Massendateneinrichtung oder das -gerät 102 des Prozesssteuerungssystems als solche kann einen Datenspeicherbereich 120 zum Historisieren oder Speichern der von den Knoten 108 empfangenen Daten, eine Vielzahl von Gerätedatenempfängern 122, die Daten für die Speicherung in der Massendatenmaschine 102 erfassen können, und eine Vielzahl von Geräteanforderungsbearbeitungseinheiten 135, die Daten vom Massendatenspeicher 120 anfordern und auf diese zugreifen, enthalten. Auf jeden Falls ist es sinnvoll, wenn alle oder die meisten Daten, die im Prozesssteuerungsnetzwerk erfasst und im Datenspeicherbereich 120 gespeichert werden, für einen Benutzer des Datenmodellierungsstudios 109 und die Wissensgewinnungsanwendung 114 verfügbar sind.
-
Der Massendatenspeicherbereich 120 des Prozesssteuerungssystems kann mehrere physische Datenlaufwerke oder Speichereinheiten enthalten, wie etwa einen RAID-Speicher (Redundant Array of Independent Disks, redundante Anordnung unabhängiger Speicherplatten), Cloud-Speicher oder eine beliebige geeignete Datenspeichertechnik, die für eine Datenbank- oder Datenzentrumspeicherung geeignet ist. Jedoch kann der Datenspeicher 120 für die Knoten 108 des Netzwerks 100 als ein einziger oder einheitlicher logischer Datenspeicherbereich bzw. -einheit angesehen werden. Von daher kann der Datenspeicher 120 als zentralisierter Massendatenspeicherbereich 120 für das Massendatennetzwerk 100 der Prozesssteuerung oder für die Prozessanlage 10 angesehen werden. Wenn gewünscht, kann ein einziger logischer zentralisierter Datenspeicherbereich 120 mehrere Prozessanlagen bedienen (z. B. die Prozessanlage 10 und eine sonstige Prozessanlage). Beispielsweise kann ein zentralisierter Datenspeicherbereich 120 mehrere Raffinerien eines Energieunternehmens bedienen. Außerdem kann der zentralisierte Datenspeicherbereich 120 beispielsweise über eine Kommunikationsverbindung mit großer Bandbreite direkt mit dem Hauptstrang 105 verbunden sein. Darüber hinaus kann der zentralisierte Datenspeicherbereich 120 eine integrierte Firewall enthalten.
-
Die Struktur des einheitlichen logischen Datenspeicherbereichs 120 kann die Speicherung aller oder der meisten prozesssteuerungssystembezogenen Daten unterstützen. Beispielsweise kann jeder Eintrag, jeder Datenpunkt oder jede Beobachtung der Datenspeichereinheit einen Hinweis auf die Identität der Daten (z. B. Quelle, Vorrichtung, Schlagwort, Standort usw.), einen Dateninhalt (z. B. Messung, Wert usw.) und einen Zeitstempel, der eine Zeit angibt, zu der die Daten erfasst, erzeugt, empfangen oder beobachtet wurden, enthalten. Von daher werden diese Einträge, Datenpunkte oder Beobachtungen als „Zeitreihendaten“ bezeichnet. Die Daten können im Datenspeicherbereich 120 unter Verwendung eines gemeinsamen Formats nach einem Schema gespeichert werden, das beispielsweise einen skalierbaren Speicher, gestreamte Daten und Abfragen geringer Latenz unterstützt.
-
In einem Fall kann das Schema ein Speichern mehrerer Beobachtungen in jeder Reihe und ein Verwenden eines Reihenschlüssels mit einem benutzerdefinierten Rautenzeichen zum Filtern der Daten in der Reihe enthalten. Das Rautenzeichen kann auf dem Zeitstempel und einem Schlagwort basieren. Beispielsweise kann das Rautenzeichen einen gerundeten Wert des Zeitstempels darstellen, und das Schlagwort kann einem Ereignis oder einer Einheit des Prozesssteuerungssystems entsprechen oder auf diese bezogen sein. Metadaten, die jeder Reihe oder einer Gruppe von Reihen entsprechen, können ebenfalls im Datenspeicherbereich 120 gespeichert werden, entweder zusammen mit den Zeitreihendaten oder getrennt von den Zeitreihendaten. Beispielsweise können die Metadaten in einer schemalosen Art getrennt von den Zeitreihendaten gespeichert werden.
-
Wenn gewünscht, kann das Schema, das zum Speichern der Daten im Gerätedatenspeicher 120 benutzt wird, auch dazu dienen, Daten im Zwischenspeicher von mindestens einem der Knoten 108 zu speichern. Entsprechend wird in diesem Fall das Schema beibehalten, wenn Daten von den lokalen Speicherbereichen der Knoten 108 über den Hauptstrang 105 an den Massendatenspeicher 120 der Prozesssteuerung übertragen wird.
-
Zusätzlich zum Datenspeicher 120 kann das Massendatengerät 102 des Prozesssteuerungssystems ferner eine oder mehrere Gerätedatenempfänger 122 enthalten, von denen jeder dafür konfiguriert ist, Datenpakete vom Hauptstrang 105 zu empfangen, die Datenpakete zu verarbeiten, um die inhaltlichen Daten und den darin getragenen Zeitstempel abzurufen, und die inhaltlichen Daten und den Zeitstempel im Datenspeicherbereich 120 zu speichern. Die Gerätedatenempfänger 122 können beispielsweise auf einer Vielzahl von Rechenvorrichtungen oder Schalteinheiten liegen. Mehrere Gerätedatenempfänger 122 (und/oder mehrere Instanzen von mindestens einem Datenempfänger 122) können parallel an mehreren Datenpaketen operieren.
-
In Fällen, in denen die empfangenen Datenpakete das Schema enthalten, das vom Massengerätedatenspeicherbereich 120 der Prozesssteuerung verwendet wird, pflegen die Gerätedatenempfänger 122 nur zusätzliche Einträge oder Beobachtungen des Datenspeicherbereichs 120 mit den Schemainformationen ein (und können optional entsprechende Metadaten speichern, wenn gewünscht). In Fällen, in denen die empfangenen Datenpakete nicht das Schema enthalten, das vom Massengerätedatenspeicherbereich 120 der Prozesssteuerung verwendet wird, können die Gerätedatenempfänger 122 die Pakete entschlüsseln und Beobachtungen zu Zeitreihendaten oder Datenpunkte des Massengerätedatenspeicherbereichs 120 der Prozesssteuerung (und optional entsprechende Metadaten) entsprechend einpflegen.
-
Außerdem kann das Massendatengerät 102 des Prozesssteuerungssystems eine oder mehrere Geräteanforderungsbearbeitungseinheiten 135 enthalten, von denen jede dafür konfiguriert ist, auf Zeitreihendaten und/oder Metadaten zugreifen, die im Massengerätedatenspeicher 120 des Prozesssteuerungssystems gespeichert sind, z. B. durch die Anforderung einer anfordernden Einheit oder Anwendung. Die Geräteanforderungsbearbeitungseinheiten 135 können beispielsweise auf einer Vielzahl von Rechenvorrichtungen oder Schalteinheiten liegen. Wenigstens manche der Geräteanforderungsbearbeitungseinheiten 135 und der Gerätedatenempfänger 122 können auf derselben Rechenvorrichtung oder denselben Rechenvorrichtungen liegen (z. B. einer integrierten Vorrichtung) oder können in einer integrierten Anwendung enthalten sein.
-
In manchen Fällen können mehrere Geräteanforderungsbearbeitungseinheiten 135 (und/oder mehrere Instanzen von mindestens einer Geräteanforderungsbearbeitungseinheit 135) parallel mehrere Anforderungen von mehreren anfordernden Einheiten oder Anwendungen bearbeiten. Selbstverständlich kann eine einzige Geräteanforderungsbearbeitungseinheit 135 mehrere Anforderungen bearbeiten, wie etwa mehrere Anforderungen von einer einzigen Einheit oder Anwendung oder mehrere Anforderungen von verschiedenen Instanzen einer Anwendung. Auf jeden Fall können das Datenmodellierungsstudio 109 und die Wissensgewinnungsanwendung 114 von 1 über einen oder mehrere Geräteanforderungsbearbeitungseinheiten 135 auf die Daten zugreifen, die im Datenspeicherbereich 120 gespeichert sind.
-
2 ist ein Blockschaubild einer beispielhaften Ausführungsform des Datenmodellierungsstudios 109, über den Massendatenhauptstrang 105 der Prozesssteuerung von 1 gekoppelt an das Massendatengerät 102 und die Prozessanlage 10. Wie in 2 weiter veranschaulicht, können eine oder mehrere Benutzerschnittstellenvorrichtungen 113 über den Massendatenhauptstrang 105 auf das Datenmodellierungsstudio 109 zugreifen. Außerdem ist die Wissensgewinnungsanwendung 114 an den Massendatenhauptstrang 105 der Prozesssteuerung angeschlossen. Allgemein ausgedrückt, stellt das Datenmodellierungsstudio 109 eine strukturierte Umgebung für ein grafisches Anlegen oder Programmieren von Datenmodellen bereit, die beispielsweise dafür konfiguriert werden kann, Daten von der Massendatenmaschine zu nutzen. In diesem Kontext ist ein Modell eine mathematische Routine, die an Daten durchgeführt wird, um eine Ausgabe zu erzeugen, die Wissen über den Betrieb einer Prozessanlage (wie etwa der Prozessanlage 10) verschafft. Das Modell ist aus einer oder mehreren Dateneingaben, einer oder mehreren Funktionen, die an den Dateneingaben durchgeführt werden, und eine oder mehrere Ausgaben, die ein Ergebnis der Funktionen sind, aufgebaut.
-
Wie in 2 veranschaulicht, enthält das Datenmodellierungsstudio 109 eine Konfigurationsmaschine 123 zum Erzeugen einer strukturierten Umgebung, um die grafische Erstellung von Modellen zu erleichtern, und eine Laufzeitmaschine 124 zum Ausführen der angelegten Modelle. Insbesondere enthält die Konfigurationsmaschine 123 eine Schnittstellenroutine 125, um Elemente einer grafischen Benutzerschnittstelle für die strukturierte Umgebung, eine Vielzahl von Vorlagen 129, die als Bausteine des Modells dienen, und einen Modellkompilierer 127, der das Modell in ein durch die Laufzeitmaschine 124 ausführbares Datenformat konvertiert. Die Laufzeitmaschine 124 enthält eine Datenabrufroutine 126 zum Abrufen von Daten, die beim Ausführen eines Modells verwendet werden, und eine Modellausführungsroutine 128 zum Ausführen des ausführbaren Modells.
-
Die Schnittstellenroutine 125 enthält einen im Speicher abgelegten Satz von Anweisungen, die von einem Prozessor ausgeführt, einen Satz von Benutzerschnittstellenelementen einer grafischen Benutzerschnittstelle mit „Drag und Drop“-Funktion, um das Anlegen des Modells zu erleichtern, darunter ein Bibliotheksbereich 125a, in dem die Vorlagen 129 angezeigt werden, und einen Leinwandbereich 125b, der als Hauptpräsentationsfenster zum Anlegen von Modellen dient. Die Vorlagen 129 dienen als Bausteine des Modells und können ausgewählt und in den Leinwandbereich 125b verschoben werden, um das Modell anzulegen. Die Vorlagen 129, die in der Konfigurationsmaschine 123 des Datenmodellierungsstudios 109 enthalten sind, enthalten Datenquellenvorlagen 129a (die Quellen von im Modell verwendeten Daten angeben), Funktionsvorlagen 129b (die Routinen angeben, durchgeführt an Daten, die durch die Datenquellenvorlagen 129a dargestellt sind), Ausgabevorlagen 129c (die angeben, wie vom Modell erzeugte Daten präsentiert oder gesendet werden sollen) und Datenflussvorlagen 129d (die die Eingaben und Ausgaben der Vorlagen 129 angeben, die das Modell bilden).
-
Die Datenquellenvorlagen 129a weisen auf Datenquellen, die verschiedene (strukturierte und/oder unstrukturierte) Datentypen erfassen, Kontexte und/oder Grenzbedingungen von Daten, die innerhalb der Prozessanlage 10 kommuniziert, erzeugt, empfangen und/oder beobachtet werden, hin. Die Datenquellenvorlagen 129a können zu Datenbankdaten, gestreamten Daten, transaktionalen Daten und/oder sonstigen Arten von Daten gehören, die über das Massendatennetzwerk 100 des Prozesssteuerungssystems kommuniziert werden und im Massendatenspeicher 120 des Prozesssteuerungssystems gespeichert oder historisiert werden. Die Datenquellenvorlagen 129a können auch Datenquellen enthalten, die im Massendatengerät 102 gespeichert sind, das alle (oder fast alle) Prozessdaten und Anlagendaten, die als Teil der Massendatenarchitektur der Prozessanlage 10 erfasst werden, erfasst und speichert. Die Datenquellen 129a können umfassende, getreue und im Massendatengerät 102 gespeicherte Daten definieren, die einen beliebigen oder alle der verschiedenen Parameter der Prozessanlage 10, in der eine Massendatenarchitektur implementiert sind, definieren.
-
Beispielhafte Datenquellenvorlagen 129a sind unter anderem Druckmesswerte, Ventilmesswerte, Temperaturmesswerte und Schwingungsmesswerte. Der Benutzer kann Parameter für die historischen oder Echtzeitdaten setzen, so dass nur eine Teilmenge der Daten ausgewählt wird. Beispielsweise können die Datenquellenvorlagen 129a auf eine Datenquelle hinweisen, die Temperaturdaten in Grad Celsius erfasst, die typischerweise im Bereich von Temperatur A bis Temperatur B erwartet werden. Die Datenquellenvorlagen 129a können auch Datenquellen außerhalb der Prozessanlage 10 darstellen, wie etwa einen externen Anlagenstandort oder eine externe Datenbank, wie etwa eine Wetter- oder Umweltdatenbank.
-
Die Funktionsvorlagen 129b können eine beliebige grundlegende oder einheitliche Funktionalität darstellen, die an den Daten durchgeführt wird. Beispielsweise können die Funktionsvorlagen 129b mathematische Funktionen wie eine neuronale Netzwerkroutine, eine Korrelationsroutine, eine Schwellenwertroutine oder ein statistischer Prozess wie etwa eine Mittelungsroutine, eine Höchstwertroutine, eine Mindestwertroutine, eine Filterroutine usw. beinhalten. Die Funktionsvorlagen 129b können auch Klassifizierungstechniken wie Random Forest-Algorithmen oder Regression der partiellen kleinsten Quadrate beinhalten. Ferner können die Funktionsvorlagen 129b Datenverarbeitungstechniken zum Vorbereiten von Daten für eine Analyse enthalten, wie etwa eine Filterroutine, die Daten über einem bestimmten Schwellenwert entfernt, oder eine Ausschnittroutine, um Ausreißer zu entfernen. Der Benutzer kann auch dazu fähig sein, einen oder mehrere Parameter der Funktionsvorlagen 129b zu abzuändern. Beispielsweise kann der Benutzer eine Filterroutine auswählen und die Eigenschaften von Tiefpunktfiltern (eine bestimmte Neigung), eines Ausschnittfilters (ein Schwellenwert) definieren.
-
Die Ausgabevorlagen 129c definieren, wie das Ergebnis des Funktionsumfangs, der durch das vollständige Modell an den Daten durchgeführt wird, interpretiert und/oder präsentiert werden soll. Wenn die Ausgabe eines Modells einem Benutzer beispielsweise grafisch dargestellt werden soll, kann eine Ausgabevorlage 129c eine Kurve, ein Diagramm oder eine Anzeige darstellen. Die Ausgabevorlage kann ferner eine oder mehrere Datenmassagetechniken definieren, um die Daten für die von der Ausgabevorlage grafische Darstellung vorzubereiten. Beispielsweise kann ein Balkendiagramm es erfordern, dass ein numerischer Wert auf zwei aussagekräftige Zahlen gerundet wird, und die Ausgabevorlage kann auch eine Rundungsroutine zum Vorbereiten der Daten enthalten. Die Ausgabevorlagen 129c können auch auf eine bestimmte Stelle hinweisen, an die die Ausgabe eines Modells gesendet werden soll. Beispielsweise kann eine Ausgabevorlage 129c darauf hinweisen, dass eine Menge von Werten, die vom Modell erzeugt werden, an eine oder mehrere Steuerungseinheiten in einer Prozessanlage gesendet werden sollen (wie etwa der Prozessanlage 10). Beispielwerte sind unter anderem ein Sollwert, eine Steuerungsroutine usw. Jedoch kann eine Ausgabe ein beliebiger Wert, wie etwa eine Anbindung, die eine Beziehung darstellt, ein bestimmter Wert, ein Binärwert, der angibt, ob eine Datenausgabe einen Schwellenwert einhält, ein Prozentsatz, der einer Stärke entspricht, usw. sein.
-
Die Datenflussvorlagen 129d dienen dazu, die Eingaben und Ausgaben der Vorlagen 129 anzugeben. Beispielsweise kann eine Datenflussvorlage 129d darauf hinweisen, dass eine bestimmte Datenquellenvorlage 129a die Eingabe in eine bestimmte Funktionsvorlage 129b bildet, um eine bestimmte Ausgabe zu erzeugen (die grafisch durch eine Ausgabevorlage 129c dargestellt wird).
-
Jedoch ist der Benutzer nicht darauf beschränkt, vordefinierte Vorlagen zu verwenden, die in dem Datenmodellierungsstudio 109 enthalten sind. Der Benutzer kann vorhandene Vorlagen bearbeiten, neue Vorlagen hinzufügen und/oder die bearbeitete/neue Vorlage im Datenmodellierungsstudio 109 für zukünftigen Gebrauch speichern. Wenn beispielsweise eine vorher bestehende Mittelungsroutine (grafisch durch eine Funktionsvorlage 129b dargestellt) 2 Datenquelleneingaben akzeptiert, kann ein Benutzer die Mittelungsroutinenvorlagen bearbeiten, damit sie 3 Eingaben akzeptiert. Der Benutzer kann neue Vorlagen von Grund auf anlegen, um dem Datenmodellierungsstudio 109 eine zusätzliche Funktionalität hinzuzufügen. Der Benutzer kann auch Modelle oder Abschnitte von Modellen, die mit dem Datenmodellierungsstudio angelegt wurden, als Vorlagen für zukünftigen Gebrauch speichern.
-
Der Modellkompilierer 127 kann eine im Speicher abgelegte Kompilierroutine 127a enthalten, die in einem Prozessor ausgeführt wird, um das anhand der Benutzerschnittstelle angelegte grafische Modell in ein kompiliertes Modell in einem von der Laufzeitmaschine 124 unterstützten ausführbaren Datenformat zu verwandeln.
-
Die Laufzeitmaschine 124, die das kompilierte Modell ausführt, um eine gewünschte Ausgabe zu erzeugen (wie durch das Modell definiert), enthält eine Datenabrufroutine 126 zum Abrufen von Daten aus dem Speicher 120 und/oder von Anlagenvorrichtungen und eine Modellausführungsroutine 128 zum Ablaufenlassen und/oder Ausführen der ausführbaren Modelle. Insbesondere kann ein Prozessor die Abrufroutine 126 ausführen, um Daten aus Datenquellen und Funktionen, die den im Modell verwendeten grafischen Dateneingabevorlagen 129 entsprechen, aus dem Speicher abzurufen. Bei manchen Ausführungsformen kann die Abrufroutine 126 Daten über den Massendatennetzwerk-Hauptstrang 105 aus einem Massendatengerät 120 und/oder aus der Anlage selbst abrufen. Die Modellausführungsroutine 128 kann einen im Speicher abgelegten Satz von Anweisungen enthalten, die ein kompiliertes Modell in einem Prozessor ausführen, um eine Ausgabe zu erhalten.
-
Die Modellausführungsroutine 128 kann ein Modell in einer vom Anlagenbetrieb getrennten Offline-Umgebung ausführen, in der das Modell mit im Speicher abgelegten historischen Daten betrieben werden kann, oder auch ein Modell in einer Online-Umgebung ausführen, wobei die Abrufroutine 126 Echtzeit- oder Fast-Echtzeit-Datenströme von einer oder mehreren Vorrichtungen in der Anlage oder von einem Massendatengerät abrufen kann, um eine Ausgabe zu erzeugen, die für einen Benutzer bereitgestellt wird und/oder die dazu dient, den Betrieb der Anlage zu beeinflussen.
-
Als spezifischeres Beispiel kann eine Datenquellenroutine 129a (die die Daten definiert, die in das Modell eingegeben werden) mit einer ersten Funktionsvorlage 129b verbunden werden, die eine Filterfunktionalität (z. B. einen Tiefpass-, einen Hochpass, einen Glättungsfilter usw.) definiert. Die Filterfunktionsvorlage 129b kann mit einer zweiten Funktionsvorlage 129b verbunden werden, die eine Ausschnittroutine definiert, die mit einer dritten Funktionsvorlage 129b verbunden werden kann, die eine neuronale Netzwerktechnik definiert, die dann mit einer vierten Funktionsvorlage 129b verbunden werden kann, die eine weitere Filtertechnik definiert, die mit einer fünften Funktionsvorlage 129b verbunden werden kann, die eine Mittelungstechnik definiert, die mit einer sechsten Funktionsvorlage 129b verbunden werden kann, die eine Schwellenwerterkennungsroutine definiert, die mit einer Anzeigevorlage verbunden werden kann (z. B. einer Ausgabevorlage).
-
3 veranschaulicht eine beispielhafte grafische Benutzerschnittstelle 300 des Datenmodellierungsstudios 109 zur Erleichterung der grafischen Erstellung von Modellen. Wie oben erörtert, erzeugt die Schnittstellenroutine 125 der Konfigurationsmaschine 123 eine grafischen Benutzerschnittstelle 300 mit „Drag und Drop“-Funktion, darunter ein Bibliotheksbereich 125a, in dem die Vorlagen 129 angezeigt werden, und ein Leinwandbereich 125b, der als Hauptpräsentationsfenster zum Anlegen von Modellen dient. Wie in 3 veranschaulicht, werden im Bibliotheksbereich 125a eine Vielzahl von Vorlagen 129 angezeigt, die als grafische Bausteine des Modells dienen. Die Vorlagen 129 können enthalten: Datenquellenvorlagen 129a, die auf Daten hinweisen, die durch Vorrichtungen in der Prozessanlage erfasst werden, Funktionsvorlagen 129b, die eine einheitliche oder grundlegende Funktionalität darstellen, die an den Daten durchgeführt wird, Ausgabevorlagen 129c, die eine Ausgabe des Modells definieren, und Datenflussvorlagen 129d, die einen Datenfluss innerhalb des Modells wie Eingaben, Anbindungen, Verbindungen und Operationen, Modelldatenempfänger, die die Ausgabe erhalten, darstellen.
-
Ein Benutzer kann das Modell aufbauen, indem er verschiedene Vorlagen 129 aus dem Bibliotheksbereich 125a auswählt und sie in den Leinwandbereich 125b zieht. Der Benutzer kann die Vorlagen 129 im Leinwandbereich 126b anordnen und die Datenflussvorlagen 129d verwenden, um den Datenfluss innerhalb des Modells zu simulieren. Auch wenn 3 eine grafische Benutzerschnittstelle mit „Drag und Drop“-Funktion veranschaulicht, können andere Ausführungsformen des Datenmodellierungsstudios 109 andere grafische oder nicht-grafische Schnittstellen enthalten.
-
Die Konfigurationsmaschine ermöglicht es einem Benutzer, die im Leinwandbereich 125b dargestellten Datenmodellvorlagen 129a zu ändern, indem er bestimmte Parameter, die in den Vorlagen 129 verwendet werden sollen, und die Verbindungen zwischen den Datenmodellvorlagen definiert, um miteinander verbundene Modellbausteine anzulegen, die ein Datenmodell bilden. Das Datenmodell kann beispielsweise einen Modelleingabebaustein, der eine bestimmte Datenquelle von Daten, die für das Datenmodell abgerufen werden sollen, einen oder mehrere Modellfunktionsbausteine, die Datenverarbeitungsprozeduren definieren, die an den Daten aus der bestimmten Datenquelle durchgeführt werden sollen, und einen Modellausgabebaustein, der eine Operation definiert, die mit der Ausgabe des einen oder der mehreren Funktionsbausteine in Verbindung steht, definieren.
-
4 veranschaulicht einen Ablaufplan eines beispielhaften Verfahrens 400 zum Nutzen der grafischen Benutzerschnittstelle 300, die durch die Schnittstellenroutine 125 erzeugt wurde, um ein Modell in einer Prozesssteuerungsumgebung anzulegen. Das Verfahren 400 kann auch im Massendatennetzwerk 100 des Prozesssteuerungssystems von 1 implementiert sein. Zum Zweck der Veranschaulichung (nicht der Einschränkung) wird das Verfahren 400 nachstehend unter gleichzeitiger Bezugnahme auf 1 bis 3 erörtert.
-
In Block 402 kann eine erste Vorlage aus dem Bibliotheksbereich 125a ausgewählt werden, wie etwa eine Datenquellenvorlage 129a, die für Daten, die durch Vorrichtungen in der Prozessanlage erfasst werden, auf eine Datenquelle hinweist. Ein Benutzer kann eine Eingabe tätigen, wie etwa einen Mausklick, ein Tastendruck auf der Tastatur, einen Sprachbefehl, einen Druck auf einen Touchscreen usw., um die erste Vorlage auszuwählen. Der Benutzer kann die ausgewählte Datenquellenvorlage 129a aus dem Bibliotheksbereich 125a an eine gewünschte Stelle im Leinwandbereich 129b ziehen. Die Datenvorlagen 129a können auch Parameter und Verbindungen enthalten (die die Verbindungen zwischen den verschiedenen Vorlagen 129 und Parameter definieren), die definiert und geändert werden können. Das Datenmodellierungsstudio kann ferner die empfangene Datenquellenvorlage 129a und beliebige spezifizierte Parameter und/oder Verbindungen ändern, um einen Modelleingabebaustein zu erzeugen, der eine bestimmte Datenquelle definiert, die für das Datenmodell abgerufen werden soll. Auch wenn das Verfahren 400 nur eine Datenquellenvorlage 129a zur Einbeziehung in das Modell darstellt, dient dies nur Veranschaulichungszwecken und eine oder mehrere Datenquellenvorlagen 129a können in das Modell einbezogen werden.
-
In Block 404 kann eine zweite Vorlage aus dem Bibliotheksbereich ausgewählt werden, wie etwa eine Funktionsvorlage 129b. Wie oben beschrieben, stellen die Funktionsvorlagen 129b allgemeine oder vordefinierte mathematische Operationen dar, die an den dafür bereitgestellten Daten durchgeführt werden sollen, um Ausgaben zu erzeugen. Die Funktionsvorlagen 129b können auch Parameter (z. B. Verstärkungen, Filtereinstellungen, Schwellenwerte usw.) und Verbindungen (die die Verbindungen zwischen den verschiedenen Vorlagen 129 und Parametern definieren) enthalten, die definiert und geändert werden können. Nach Auswahl der Funktionsvorlage 129b aus dem Bibliotheksbereich 125a kann der Benutzer die ausgewählte Vorlage an eine gewünschte Stelle im Leinwandbereich 129b ziehen. Der Benutzer kann auch einen oder mehrere Parameter der Funktionsvorlage 129b abändern. Das Datenmodellierungsstudio kann ferner die empfangene Funktionsvorlage 129b und beliebige spezifizierte Parameter und/oder Verbindungen ändern, um einen Modellfunktionsbaustein zu erzeugen, der Datenverarbeitungsprozeduren definiert, die an den Daten aus der bestimmten Datenquelle durchgeführt werden sollen. Wenn beispielsweise die Funktionsvorlage 125b eine Filterroutine ist, kann der Benutzer Eigenschaften oder Parameter des Filters definieren, um einen Tiefpunktfilter mit einer bestimmten Neigungscharakteristik anzulegen. Auch wenn das Verfahren 400 nur eine ausgewählte Funktionsvorlage 125b darstellt, dient dies nur Veranschaulichungszwecken und eine oder mehrere Funktionsvorlagen 125b können einbezogen werden.
-
In Block 406 kann der Benutzer eine dritte Vorlage wie etwa eine oder mehrere Datenausgabevorlagen 129c und/oder eine oder mehrere Datenflussvorlagen 129d auswählen, um sie dem Modell hinzufügen. Die Datenausgabevorlagen 129c und die Datenflussvorlagen 129 können auch Parameter und Verbindungen enthalten (die die Verbindungen zwischen den verschiedenen Vorlagen 129 und Parameter definieren), die definiert und geändert werden können. Beispielsweise kann der Benutzer eine Eingabevorlage auswählen, um grafisch darauf hinzuweisen, dass eine Ausgabe einer Datenquellenvorlage 129a eine Eingabe in einen bestimmten Bereich der Funktionsvorlage 129b bildet. Der Benutzer kann eine Ausgabevorlage auswählen, um grafisch darauf hinzuweisen, dass das Ergebnis der Funktionsvorlage 129b einem Benutzer grafisch in einer Übersichtsansicht dargestellt wird. Im Datenmodellierungsstudio kann ferner die empfangene Datenausgabevorlage 129c und/oder die Datenflussvorlage 129d geändert werden, um einen Modellausgabebaustein und/oder einen Modelldatenflussbaustein anzulegen, die jeweils eine Operation definieren, die mit der Ausgabe des einen oder der mehreren Funktionsbausteine in Zusammenhang stehen.
-
Verbundene Modellbausteine bilden ein Datenmodell. Das Datenmodell kann beispielsweise einen oder mehrere Funktionsbausteine, die Datenverarbeitungsprozeduren definieren, die an den Daten aus der bestimmten Datenquelle durchgeführt werden sollen, und einen Modellausgabebaustein, der eine Operation definiert, die zur Ausgabe des einen oder der mehreren Funktionsbausteine gehört, enthalten.
-
In Block 408 kann der Benutzer eine Eingabeauswahl durchführen, um das Modell zu kompilieren. Entsprechend wird das grafische Modell, das mit Hilfe der Konfigurationsmaschine 123 angelegt wird, in ein kompiliertes Modell in einem von der Laufzeitmaschine 124 unterstützten ausführbaren Datenformat konvertiert. Nach dem Kompilieren kann der Benutzer das Modell und/oder das kompilierte Modell im Speicher ablegen. Das kompilierte Modell kann vom Benutzer des Datenmodellierungsstudios 109 zu einem späteren Zeitpunkt abgerufen werden und/oder kann von einem Benutzer der Wissensgewinnungsanwendung 114 abgerufen werden.
-
In Block 410 kann eine Abrufroutine 126 der Laufzeitmaschine 124 Daten abrufen, die den Vorlagen 129 entsprechen. Beispielsweise kann die Abrufroutine 126 Daten aus den Datenquellen, auf die die Datenquellenvorlagen 129a hinweisen, und Anweisungen, die den Funktionsvorlagen 129b entsprechen, aus dem Speicher abrufen. Beispielsweise kann die Abrufroutine 124 Daten aus dem Massendatengerät 102 des Massendatennetzwerks 100 des Prozesssteuerungssystems abrufen, z. B. durch einen oder mehrere Datenempfänger 122. Die Datenquellenvorlagen 129a können den Prozesssteuerungsdaten und den Prozessanlagendaten entsprechen. Die Daten können Echtzeitdaten, die beim Steuern eines Prozesses in der Prozessanlage erzeugt werden, Konfigurationsdaten, Chargendaten, Netzwerkverwaltungs- und -verkehrsdaten verschiedener Netzwerke in der Prozessanlage, auf Benutzer- oder Bedienerhandlungen hinweisende Daten, Daten, die der Funktion und dem Zustand von Einrichtungen und Vorrichtungen der Prozessanlage entsprechen, Daten, die durch Einheiten außerhalb der Prozessanlage erzeugt oder an diese übertragen werden, und sonstige Daten enthalten. Die Daten können auch von einer Fremddatenbank abgerufen werden, wie etwa einer Wetterdatenbank oder einer sonstigen Prozessanlage, auf die über den Massendatenhauptstrang 105 zugegriffen wird.
-
In Block 412 kann das Modell durch die Modellausführungsroutine 128 ausgeführt werden. Die Modellausführungsroutine 128 kann das Modell in einer vom Anlagenbetrieb getrennten Offline-Umgebung ausführen, in der das Modell mit im Speicher abgelegten historischen Daten betrieben werden kann. Die Modellausführungsroutine 128 kann das Modell auch in einer Online-Umgebung betreiben, wobei die Datenabrufroutine 126 Echtzeit- oder Fast-Echtzeit-Datenströme von einer oder mehreren Vorrichtungen in der Anlage und/oder von einem Massendatengerät abrufen kann.
-
In Block 414 kann die Modellausführungsroutine 128 eine oder mehrere Ausgaben als Ergebnis des Modellbetriebs erzeugen. Bei manchen Ausführungsformen können die Ausgaben eines oder mehrere von einer Beziehung, einer Anbindung, einem Modell, einem Parameter, einem Parameterwert usw. enthalten. Das Modell kann auch eine Ausgabe in Form einer oder mehrerer möglicher Benutzerhandlungen erzeugen, um sie in das Prozesssteuerungssystems und/oder die Prozessanlage einzubinden, um beispielsweise zur Sicherung der Produktqualität die Temperatur eines Bottichs einzustellen. Das Modell kann eine Ausgabe in Form einer Steuerungsroutine oder einer Einstellung einer Steuerungsroutine erzeugen. Das Datenmodellierungsstudio 109 kann auch eine Ausgabe in Form einer Warnung darstellen, die an einen oder mehrere Benutzer gesendet wird. Die Warnung kann ferner auf der Grundlage von deren Funktion und Verantwortung in der Prozessanlage erfolgen. Beispielsweise kann ein Bediener, der für die Wartung eines Kessels verantwortlich ist, eine auf den Kessel bezogene Warnung erhalten. Die Warnung kann das mögliche Problem, das das Modell erkannt hat, sowie eine oder mehrere mögliche Lösungen oder Aktionen, die der Benutzer vornehmen kann, enthalten. Das Datenmodellierungsstudio 109 kann die Ergebnisse von einer oder mehreren Anwendungen anzeigen. Beispielsweise können die Ergebnisse als eine Menge von Rohdatenpunkten angezeigt werden, die als Eingaben in eine andere Datenvorlage oder als Teil eines anderen Datenmodells verwendet werden kann.
-
In Block 416 kann die Ausgabe, die durch die Ausgabevorlage 129c des Modells definiert ist, gespeichert werden. Beispielsweise kann die Ausgabe im einheitlichen logischen Massendatenspeicherbereich gespeichert werden. Bei manchen Ausführungsformen kann die Ausgabe eine Routine sein, die in eine oder mehrere Vorrichtungen in der Prozessanlage hochgeladen werden kann. Beispielsweise kann das Datenmodellierungsstudio eine Steuerungsroutine ausgeben, die über den Massendatenhauptstrang 105 an eine oder mehrere Steuerungseinheiten in der Prozessanlage oder an eine andere Prozessanlage übertragen wird. Ferner kann das Modell im Massendatengerät 102 für einen zukünftigen Gebrauch oder Zugriff gespeichert werden.
-
Die Ausgabe des Modells kann auch grafisch dargestellt werden, wie etwa als Diagramm, Kurve usw. Eine Anzeigenart, die sinnvoll sein kann, besteht darin, Anlagendaten mit Datenelementen aus anderen Datenquellen zu versehen, wie etwa von anderen Anlagen und/oder Fremddatenbanken wie einer Wetterdatenbank. Bei einer Ausführungsform kann das Datenmodellierungsstudio 109 ein Diagramm der Prozesshistorienansicht erzeugen und Ereignischronikdaten sowie Ereignisdaten aus anlagenexternen Datenquellen anzeigen. Elemente aus anderen Datenquellen können in einer zeitlichen Reihenfolge im Diagramm platziert werden, ebenso wie die Ereignisse der Prozessanlage wie Alarme platziert werden. Bei manchen Ausführungsformen können dies auch live verbundene Elemente sein, die den Benutzer zu den anderen Datenquellen und/oder sonstigen Informationsanzeigen führen und eine Erforschung dieser anderen Datenquellen sowie Modellierung und Analytik ermöglichen, damit der Benutzer Beziehungen zwischen den Anlagendaten und externen Daten feststellen kann. Außerdem kann das Datenmodell 109 eine Informationsanzeige auf der Grundlage von einer oder mehreren Abfragen im Zusammenhang mit den aktuellen Fragestellungen erzeugen. Die aktuellen Probleme können mit einer Vielzahl von Techniken bestimmt werden, wie etwa einer manuellen Auswahl der aktuellen Fragestellung oder auf der Grundlage eines kürzlich erfolgten Alarms.
-
Der Benutzer kann mit dem Auswählen und Anordnen von Vorlagen 129 fortfahren und eine oder mehrere Datenflussvorlagen 129d auswählen, um Verbindungen zwischen den Vorlagen 129 darzustellen. Wieder auf 3 verweisend, kann ein Benutzer grafisch ein Modell aufbauen, um zu bestimmen, ob Temperaturmesswerte von verschiedenen Sensoren einen Schwellenwert erreichen. Wie in 3 veranschaulicht, sind vier Datenvorlagen, die den Sensoren D1 (302), D2 (304), D3 (306) und D4 (308) entsprechen, im Leinwandbereich 125b positioniert. Ferner sind drei Funktionsvorlagen, die einer Ausschnittroutine 310, einer Filterroutine 312 und einer Schwellenwertroutine 314 entsprechen, ebenfalls im Leinwandbereich 125b positioniert. Der Benutzer hat ferner Datenflussvorlagen 302a, 304a und 306a ausgewählt, die darauf hinweisen, dass die Datenquellen D1 (302), D2 (304) und D3 (306) jeweils als Eingaben für die Ausschnittroutinen-Funktionsvorlage 310 dienen. Die Datenflussvorlage 310a weist grafisch darauf hin, dass die Ausgabe der Ausschnittroutine 310 eine Eingabe in die Filterroutinen-Funktionsvorlage 312 darstellt. Die Datenflussvorlage 308a weist grafisch darauf hin, dass die Datenquelle D4 (308) ebenfalls in die Filterroutinen-Funktionsvorlage 312 eingegeben wird. Die Datenflussroutine 312a weist darauf hin, dass die Ausgabe der Filterroutine 312 in eine Funktionsvorlage eingegeben wird, die der Schwellenwertroutine 314 entspricht. In diesem Beispiel kann die Schwellenwertroutine 314 die Daten aus der Filterroutine 312 übernehmen und mit Hilfe der Schwellenwertroutine 314 ermitteln, ob Werte einen Schwellenwert erreichen. Ein Datenflusszeiger 314a weist darauf hin, dass die Ausgabe der Schwellenwertroutine 314 (die beispielsweise ein Binärwert sein kann, der darauf hinweist, ob der Schwellenwert erreicht wurde) in einer Übersichtsansicht ausgegeben wird, die im Modell durch die Übersichtsvorlage 316 grafisch dargestellt ist. Außerdem weist der Datenflusszeiger 314b darauf hin, dass die Ausgabe der Schwellenwertroutine auch an einen Alarm ausgegeben wird, der im Modell durch die Alarmvorlage 318 grafisch dargestellt ist. Die Alarmvorlage 318 kann eingestellt werden, um einen Benutzer zu warnen (entweder grafisch, akustisch usw.), dass der Schwellenwert nicht erreicht wird.
-
Bei manchen Ausführungsformen kann der Benutzer eine oder mehrere Datenflussvorlagen 129d auswählen, um eine Eingabe in die Funktionsvorlagen 129b darzustellen. Der Benutzer kann die Ausgabe einer ersten Funktionsvorlage 129b auswählen, damit diese als Eingabe für eine zweite Funktionsvorlage 129b dient. Beispielsweise kann der Benutzer zwei Datenquellenvorlagen 129a als Eingaben in eine Modellierstrukturroutine auswählen, um den Betrieb der Anlage anhand der Datenquellen zu modellieren. Der Benutzer kann die Ausgabe dieses Modells als Eingabe in eine Funktionsvorlage 129b auswählen, die eine Analyseroutine wie etwa eine Regressionsanalyse definiert. Bei manchen Ausführungsformen möchte der Benutzer vielleicht zwei Datenvorlagen 129a „aneinanderbinden“, um auf eine Beziehung hinzuweisen. Beispielsweise kann ein Benutzer die Schnittstelle dazu verwenden, die Temperaturausgabe eines Bottichs an einen Alarm zu binden, der mit einer bestimmten Steuerungseinheit in einer Prozessanlage wie der Prozessanlage 10 in Zusammenhang steht.
-
Der Benutzer kann auch ein Modell erzeugen, um den Betrieb der Prozessanlage 10 zu simulieren, und eine Ausgabevorlage 129d einstellen, um eine oder mehrere Vorhersagen einzubeziehen, die die Qualität eines oder mehrerer der von der Prozessanlage 10 hergestellten Produkte beeinflussen. Durch Ausführen des Simulationsmodells muss der Benutzer nicht warten, bis die Prozessanlage 10 mit der Herstellung eines Produkts fertig ist, um die Eigenschaften eines Produkts zu testen. Beispielsweise kann in einer Prozessanlage, die einen Impfstoff herstellt, der Betrieb der Prozessanlage 10 auf der Grundlage von Echtzeitdaten modelliert werden, und eine Analyse und/oder Modellierung anhand von Echtzeit- oder Fast-Echtzeitdaten und historischen Daten durchgeführt werden, um die Stärke des Impfstoffs vorherzusagen. Ein mit Datenmodellierungsstudio 109 grafisch erzeugtes Modell kann die Stärke des Virus auf der Grundlage der aktuellen Anlagenbedingungen und Prozesssteuerungsmesswerte vorhersagen und sie mit historischen Gründen vergleichen, um die Stärke eines Impfstoffs zu bestimmen oder den Betrieb der Prozessanlage 10 einzustellen, beispielsweise die Temperatur eines Bottichs einzustellen.
-
Ein Benutzer des Datenmodellierungsstudios 109 ist jedoch nicht nur auf das Anlegen von Modellen beschränkt, die den Betrieb einer Prozessanlage modellieren, sondern auch dazu verwendet werden können, eine Analyse der Anlageneinrichtung selbst durchzuführen. Die Datenquellenvorlagen 129a können auch Datenquellen enthalten, die im Massendatengerät 102 gespeichert sind, das alle (oder fast alle) Prozessdaten und Anlagendaten, die als Teil der Massendatenarchitektur der Prozessanlage 10 erfasst werden, erfasst und speichert. Die Datenquellen 129a können umfassende, getreue und im Massendatengerät 102 gespeicherte Daten definieren, die einen beliebigen oder alle der verschiedenen Parameter der Prozessanlage 10, in der eine Massendatenarchitektur implementiert ist, definieren. Da das Datenmodellierungsstudio 109 Zugriff auf eine Vielfalt von Datenquellenvorlagen 129a bereitstellt, die auf Datenquellen hinweisen, die Daten aus der gesamten Anlage und aus externen Quellen abrufen, ermöglicht das Datenmodellierungsstudio 109 Benutzern, genauere Modelle anzulegen und eine genauere Analyse durchzuführen.
-
Bei manchen Ausführungsformen kann ein mit Datenmodellierungsstudio 109 angelegtes Modell eine Warnung ausgeben, die auf eine oder mehrere mögliche Probleme bezogen ist, und dem Benutzer eine oder mehrere Aktionen vorschlagen, die in der Prozessanlage vorgenommen werden können, um die Probleme zu lösen, beispielsweise den Druck eines Ventils einzustellen.
-
Bei manchen Ausführungsformen kann das Datenmodellierungsstudio 109 dazu verwendet werden, Funktionen im Hinblick auf die Funktionstüchtigkeit und den Zustand von Anlageneinrichtungen durchzuführen. Der Benutzer kann die grafische Benutzerschnittstelle 300 des Datenmodellierungsstudios 109 verwenden, um eine oder mehrere Datenquellenvorlagen 129a auszuwählen, die auf Datenquellen hinweisen, die Daten zum Zustand der Anlageneinrichtung erfassen, beispielsweise Druckstrom-, Ventildruck-, Schwingungsdaten usw. Die Datenquellenvorlagen 129a können historische Daten enthalten, die sich auf Warnungen, Wartungsberichte, Anlagenausfälle in der Vergangenheit usw. beziehen. Das Modell kann auch eine oder mehrere Datenquellenvorlagen 129a enthalten, die auf Datenquellen hinweisen, die Echtzeitdaten erfassen, wie etwa Schwingungsmesswerte der Einrichtung. Die Datenströme können in Echtzeit oder Fast-Echtzeit von einer oder mehreren Anlageneinheiten empfangen werden oder historische Daten, Daten von einer anderen Prozessanlage usw. sein. Der Benutzer kann auch eine oder mehrere Modellierungs- und/oder Analysevorlagen auswählen und die Datenquellenvorlagen 129a als eine Eingabe in die Modellierungs- und/oder Analysevorlagen eingeben.
-
In einem beispielhaften Szenario führt eine bestimmte Kombination von Ereignissen in einer Prozessanlage zu einer schlechten Produktqualität, wenn das Produkt zu einem späteren Zeitpunkt schließlich erzeugt wird (z. B. mehrere Stunden nach dem Eintreten der Kombination von Ereignissen). Der Bediener kennt die Beziehung zwischen dem Eintreten der Ereignisse und der Produktqualität nicht. Statt die schlechte Produktqualität mehrere Stunden danach zu erkennen und festzustellen und eine Fehlersuche durchzuführen, um die grundlegende Ursache der schlechten Produktqualität zu ermitteln (wie es aktuell in bekannten Prozesssteuerungssystemen erfolgt), kann der Benutzer ein Modell anlegen und ausführen, um die Kombination von Ereignissen bei ihrem Eintreten oder kurz danach zu erkennen, z. B. wenn die Daten, die dem Eintreten der Ereignisse entsprechen, an das Gerät 102 übertragen werden. Die Modellausgabe des Modells kann eine Vorhersage der schlechten Produktqualität auf der Grundlage des Eintretens dieser Ereignisse, eine Warnung des Bedieners vor der Vorhersage und/oder Prozessdaten sein, um einen oder mehrere Parameter oder Prozesse in Echtzeit einzustellen oder zu ändern, um die Auswirkungen der Kombination von Ereignissen zu mildern. Beispielsweise kann die Ausgabe des Modells ein korrigierter Sollwert oder korrigierte Parameterwerte sein. Der Benutzer kann die Ausgabe des Modells verwenden, um das Modell weiter zu verfeinern, ein neues Modell anzulegen, dasselbe Modell mit verschiedenen Daten zu betreiben usw. Da das Datenmodellierungsstudio 109 auf die umfassenden getreuen Daten, die in der Massendatenmaschine 102 gespeichert sind, Zugriff hat, ist es nicht nötig, vor der Durchführung des Verfahrens einen oder alle der verschiedenen Parameter einer Prozessanlage zu definieren, die im Wissensgewinnungsverfahren 110 erfasst und verwendet werden sollen. Somit müssen beim Datenmodellierungsstudio 109 die Benutzer nicht zuerst die gewünschten Daten auswählen und die Anlageneinrichtung konfigurieren, um diese gewünschten Daten vor dem Verarbeiten der Daten zu erfassen. Auf diese Weise ermöglichen es die Modelle, die durch das Datenmodellierungsstudio 109 konfiguriert und ausgeführt werden, dass Probleme viel schneller und effizienter erkannt und möglicherweise gemildert werden als bei aktuell bekannten Prozesssteuerungssystemen.
-
In einem weiteren beispielhaften Szenario kann ein Modell verwendet werden, um Änderungen in der Produktfunktion zu erkennen. Beispielsweise kann das Modell eine erkannte Änderung bei bestimmten Kommunikationsgeschwindigkeiten und/oder Änderungen oder Muster von Parameterwerten, die von einem Sensor oder von mehreren Sensoren im Verlauf der Zeit ausgegeben werden, ausgeben, die darauf hinweisen kann, dass sich die Systemdynamik möglicherweise ändert. In noch einem weiteren beispielhaften Szenario kann ein Modell verwendet werden, um auf der Grundlage des Prozessverhaltens und des Auftretens von Alarmen während des Betriebs der Prozessanlage zu diagnostizieren und festzustellen, dass ein bestimmtes Los von Ventilen oder andere zugelieferte Einrichtungen fehlerhaft sind.
-
In einem anderen beispielhaften Szenario kann ein Modell den Betrieb einer Prozessanlage simulieren und Produktfähigkeiten wie etwa die Stärke eines Impfstoffs vorhersagen. Es kann sogar ein Modell angelegt werden, um potenzielle Sicherheitsprobleme im Zusammenhang mit der Prozessanlage 10 zu überwachen und zu erkennen, wie etwa Zunahme in Login-Mustern, wiederholte Versuche und ihre jeweiligen Standorte in mehreren Anlagen und/oder Anlagenstandorten. Auf diese Weise kann ein Unternehmen, das mehrere Prozessanlage besitzt und betreibt, diagnostische und/oder prognostische Informationen auf der Grundlage einer Region oder einer Industrie oder unternehmensweit sammeln.
-
Wie oben unter Bezugnahme auf 2 bis 4 erörtert, kann ein Benutzer Datenquellenvorlagen 129a auswählen, um Daten, die in ein mit dem Datenmodellierungsstudio 109 angelegten Modell einbezogen werden sollen, grafisch darzustellen. Jedoch kann ein Benutzer bei manchen Ausführungsformen einen Datenexplorer 155 verwenden, um Datenquellen auszuwählen, die in das Modell einbezogen werden sollen. Auch wenn es unter Bezugnahme auf das Datenmodellierungsstudio 109 erörtert wurde, ist ersichtlich, dass auf den Datenexplorer 155 auch durch die Wissensgewinnungsanwendung 114 zur Datenexploration, Exploration usw. zugegriffen werden kann.
-
Nun auf 5 verweisend, ist eine Benutzerschnittstelle 1000 des Datenexplorers 155 veranschaulicht. Die Benutzerschnittstelle 1000 des Datenexplorers 155 stellt eine grafische Ansicht der hierarchischen Beziehungen zwischen den verschiedenen Hardware- und Softwarekomponenten in eine Prozessanlage (wie der Prozessanlage 10) bereit. Der Datenexplorer 155 zeigt die bestimmten Teile der in einer bestimmten Prozessanlage verwendeten Anlageneinrichtung sowie die verschiedenen Softwarekomponenten wie etwa Steuerungsroutinen an, die dazu dienen, die verschiedenen Teile der Anlageneinrichtung in der bestimmten Prozessanlage zu betreiben.
-
Auf diese Weise stellt der Datenexplorer 155 einen Zugriff auf Daten bereit, die im Massendatenspeicherbereich 102 des Prozesssteuerungssystems gespeichert sind. Die Daten können historisierte Daten sein, darunter Zeitreihendatenpunkte 120a, die während der Laufzeit des Prozesssteuerungssystems 10 erfasst und im Massendatenspeicherbereich 120 des Prozesssteuerungssystems (zusammen mit entsprechenden Metadaten 120b) gespeichert wurden. Beispielsweise können die historisierten Daten Hinweise auf Steuerungsroutinen, Parameter und Parameterwerte, Chargenrezepte, Konfigurationen usw. enthalten, die beim Betrieb der Prozessanlage 10 verwendet werden, und die historisierten Daten können Hinweise auf Benutzeraktionen, die beim Betrieb der Prozessanlage 10 vorkamen, oder verwandte Aktivitäten enthalten.
-
Der Benutzer des Datenmodellierungsstudios 109 möchte vielleicht bestimmte Definitionen untersuchen und kann eine Eingabe tätigen, indem er die Datenexplorerwerkzeug-Schaltfläche 714 auswählt, um den Datenexplorer auszuführen. Sobald das Datenexplorerwerkzeug ausgeführt wird, kann die Benutzerschnittstelle 1000 von 5 angezeigt sein. Die Benutzerschnittstelle 1000 kann ein Hauptbedienfenster 1002 enthalten, das textliche Pull-down-Menüs, piktografische Menüs und sonstige Optionen enthält. Die Benutzerschnittstelle 1002 kann auch einen Seitenbalken 1004 enthalten, der dem Benutzer eine Ansicht von Definitionen hinsichtlich ihrer hierarchischen Beziehung ermöglicht. Beispielhafte hierarchische Systeme sind unter anderem Steuerungssystem, Funktionen und physische Anlagen. In der Steuerungssystemhierarchie können Definitionen angezeigt werden, die verschiedenen in der Anlage verwendeten Steuerungsroutinen entsprechen. In der Funktionshierarchie können Definitionen angezeigt werden, die Funktionen entsprechen, die durch die Prozessanlage durchgeführt werden können oder durch das Datenmodellierungsstudio nach den Modellier- und/oder Analysedefinitionen durchgeführt werden können. In der physischen Anlagenhierarchie können die physischen Vorrichtungen angezeigt werden, die in der Prozessanlage verwendet werden. Selbstverständlich sind diese hierarchischen Systeme nur Beispiele und es können andere Systeme und/oder Systemkombinationen verwendet werden. Ferner kann jede Hierarchie eine oder mehrere Teilhierarchien aufweisen. Bestimmte Datenquellen können auch zu zwei oder mehreren hierarchischen Systemen gehören. Beispielsweise kann eine Steuerungseinheit in der Steuerungssystemhierarchie sowie in der Hierarchie der physischen Anlage enthalten sein.
-
Der Datenexplorer 155 ermöglicht es dem Benutzer, eine übergreifende Hierarchie (d. h. physische Anlage) auszuwählen und ein Baumansichtssymbol 1006 auswählen, um eine Ebene auszuklappen („drill down“) und nur die Datenobjekte anzusehen, die auf diese Hierarchie bezogen sind oder zu dieser gehören. Der Benutzer wünscht vielleicht auch, bestimmte Datenquellen zu durchforschen, indem er ein Datenexplorerwerkzeug ausführt, um die Daten in einer hierarchischen Struktur anzusehen. Der Datenexplorer 155 ermöglicht es dem Benutzer, Datenquellen zu durchforschen, die im Massendatengerät 102 gespeichert sind, das alle (oder fast alle) Prozessdaten und Anlagendaten, die als Teil der Massendatenarchitektur der Prozessanlage 10 erfasst werden, erfasst und speichert. Die Daten können umfassende, getreue im Massendatengerät 102 gespeicherte Daten beinhalten, die beliebige oder sämtliche der verschiedenen Parameter der Prozessanlage 10, in der eine Massendatenarchitektur implementiert ist, definieren. Ein Benutzer kann mit Hilfe des Datenexplorers 155 historisierte oder gespeicherte Daten 120 durchforschen. Der Datenexplorer 155 kann einen Benutzer befähigen, wenigstens Abschnitte der gespeicherten Daten 120 auf der Grundlage von Datenstromdefinitionen 170 (und in manchen Fällen auf der Grundlage wenigstens mancher Analysendefinitionen 172) anzusehen oder zu visualisieren. Beispielsweise kann der Datenexplorer 155 es einem Benutzer ermöglichen, Temperaturdaten eines bestimmten Bottichs aus einem bestimmten Zeitraum herauszuziehen und eine Trendanalyse anzuwenden, um die Temperaturänderungen während dieses Zeitraums anzusehen. In einem weiteren Beispiel kann der Datenexplorer 155 es einem Benutzer ermöglichen, eine Regressionsanalyse durchzuführen, um unabhängige oder abhängige Variablen zu bestimmen, die die Bottichtemperatur beeinflussen. Der Benutzer kann auch Daten auswählen, die detaillierter in der Hauptbildschirmdarstellung 1008 angezeigt werden. Beispielsweise kann der Benutzer die Hierarchie der physischen Anlage und die Hierarchie der Hardwarealarme ausklappen.
-
Das hier beschriebene Datenmodellierungsstudio stellt eine robuste und effiziente Architektur zum grafischen Anlegen und Ausführen von Modellen bereit. Bei Ausführungsformen, bei denen das Datenmodellierungsstudio 109 in einer Prozessanlage implementiert ist, die eine Massendatenarchitektur verwendet, die ein Massendatengerät enthält, das alle (oder fast alle) der erfassten Prozessdaten und Anlagendaten speichert, kann der Benutzer die Schnittstellenroutine 300 des Datenmodellierungsstudios 109 verwenden, grafisch und iterativ Datenmodelle anzulegen und zu bearbeiten, ohne den Anlagenbetrieb neu konfigurieren zu müssen, um zusätzliche Daten zu erfassen, was eine viel schnellere Modellentwicklungsumgebung ausmacht.
-
Als ein Beispiel kann ein Benutzer glauben, dass ein Temperaturmesswert mit der Qualität eines Produkts korreliert ist, das durch eine Prozessanlage (wie die Prozessanlage 109) hergestellt wird. Entsprechend kann der Benutzer die grafische Benutzerschnittstelle 300 des Datenmodellierungsstudios 109 verwenden, um ein Modell anzulegen, das eine Korrelationsroutine an Produktqualitätsdaten und Temperaturdaten durchführt. Entsprechend kann der Benutzer eine erste Datenquellenvorlage 129a, die einem Temperaturmesswert entspricht, eine zweite Datenquellenvorlage 129b, die einer Qualität eines Produkts entspricht, und eine Funktionsvorlage 129b, die einer Korrelationsroutine entspricht, auswählen. Der Benutzer kann ferner die Datenflussvorlagen 129d verwenden, um darauf hinzuweisen, dass die erste und die zweite Datenquellenvorlage 129a in die Korrelationsroutine eingegeben werden. Der Benutzer kann auch eine Ausgabevorlage 129c auswählen, die darauf hinweist, dass das Ergebnis der Korrelationsroutine (beispielsweise ein Korrelationsprozentsatz) in einer Übersicht ausgegeben wird. Der Benutzer kann dann das Model mit Hilfe der Laufzeitmaschine 124 ausführen. Jedoch kann die Ausgabe des ausgeführten Modells darauf hinweisen, dass der Temperaturwert nicht mit der Qualität des Produkts korreliert ist. Es kann sein, dass der Benutzer wiederum das Korrelationsmodell in einer anderen Dateneingabe noch einmal ausführt, beispielsweise mit Ventildruckdaten.
-
Herkömmlicherweise müsste dann der Benutzer die Prozessanlage konfigurieren, um die Ventildruckdaten im Betrieb zu erfassen. Aufgrund der Einschränkungen bisheriger Prozesssteuerungssysteme könnte das Erfassen der Ventildruckdaten beinhalten, die Prozessanlage zu betreiben, um das Produkt herzustellen, und die Ventildruckdaten mit der Abtastrate zu erfassen, die für das Modell nötig ist. Der Prozess des erneuten Betriebs der Prozessanlage zum Erfassen der Ventildruckdaten könnte Stunden, Tage und sogar Monate dauern, um genügend Daten für die Ausführung eines genauen Modells zu erfassen. Ferner könnte die Anlage in der Zeit, in der die Prozessanlage erneut läuft und Daten erfasst werden, suboptimal laufen, weil der Benutzer nicht ermittelt hat, ob und welche Prozesssteuerungsdaten mit der Produktqualität korreliert sind.
-
Da das Datenmodellierungsstudio 109 auf alle Anlagendaten, die in einer Massendatenmaschine verfügbar sind, Zugriff hat, sind die Ventildruckdaten bereits aufgezeichnet und der Benutzer muss zum Anpassen des Modells nur noch eine Datenquellenvorlage 129a (aus dem Bibliotheksbereich 125a der grafischen Benutzerschnittstelle 300 des Datenmodellierungsstudios 109) auswählen, die den Ventildruckdaten entspricht. Der Benutzer kann sogar das Datenmodellierungsstudio 109 dazu verwenden, ein Modell anzulegen, das die Korrelationsfunktionen an verschiedenen Datenquellen innerhalb der Prozessanlage automatisch erneut ausführt, um zu ermitteln, ob und welche Werte der Produktqualität entsprechen. Der Benutzer kann ferner die Genauigkeit des mit dem Datenmodellierungsstudio 109 angelegten Modells verbessern, indem er die hierarchischen Systeme verwendet, die in der Schnittstelle 1000 des Datenexplorers 155 dargestellt sind, und Prozesssteuerungsdaten aus bestimmten, in der bestimmten Prozessanlage verwendeten Anlageneinrichtungselementen auswählt.
-
Selbstverständlich stellt dies nur ein vereinfachtes Beispiel dessen dar, was mit dem Datenmodellierungsstudio 109 bewerkstelligt werden kann. Dem Fachmann ist ersichtlich, dass mit zunehmender Komplexität der Modellanlage und strengeren Datenanforderungen für genaue Modelle die Einfachheit der Bedienung des Datenmodellierungsstudios 109 und die Robustheit der getreuen Daten aus dem Massendatengerät 102 das Anlegen umfassenderer und genauerer Modelle ermöglicht.
-
Nun auf 6 verweisend, wird die Vielzahl von Knoten 108 (in 1 veranschaulicht) detaillierter erörtert. Die Vielzahl von Knoten 108 des Massendatennetzwerks 100 der Prozesssteuerung kann mehrere verschiedene Gruppen von Knoten 110 bis 115 enthalten, und das Datenmodellierungsstudio 109 und/oder die Wissensgewinnungsanwendung 114 können Daten aus einem oder mehreren Knoten 108 in kommunikativer Verbindung mit dem Massendatennetzwerk 100 der Prozesssteuerung abrufen (in 1). Ferner kann ein Modell, das durch die Laufzeitmaschine des Datenmodellierungsstudios 109 (in 1 veranschaulicht) ausgeführt wird, Daten (z. B. Prozesssteuerungsdaten) an einen oder mehrere Knoten 108 zur Ausführung an diesen Knoten ausgeben, wie nachstehend detailliert beschrieben ist, Eine erste Gruppe von Knoten 110, die hier als „Bereitstellknoten 110“ oder „Bereitstellvorrichtungen 110“ bezeichnet werden, können einen oder mehrere Knoten oder Vorrichtungen enthalten, die Prozesssteuerungsdaten erzeugen, weiterleiten und/oder empfangen, damit Prozesse in einer Prozessanlagenumgebung (wie der Prozessanlage 10) in Echtzeit gesteuert werden können. Beispiele für Bereitstellvorrichtungen oder -knoten 110 sind unter anderem Vorrichtungen, deren Primärfunktion darauf gerichtet ist, Prozesssteuerungsdaten zu erzeugen und/oder zu verarbeiten, um einen Prozess zu steuern, z. B. drahtgebundene und drahtlose Feldvorrichtungen (wie Sensoren und Ventile), Steuerungseinheiten oder Eingabe/Ausgabevorrichtungen (E/A-Vorrichtungen). Andere Beispiele für Bereitstellvorrichtungen 110 sind unter anderem Vorrichtungen, deren Primärfunktion darin besteht, Zugang zu einem oder mehreren Kommunikationsnetzwerken des Prozesssteuerungssystems (von denen eines das Massendatennetzwerk 100 des Prozesssteuerungssystems ist) bereitzustellen oder Wege durch diese bereitzustellen, z. B. Zugangspunkte, Router, Schnittstellen zu drahtgebundenen Steuerungsbussen, Gateways zu drahtlosen Kommunikationsnetzwerken, Gateways zu externen Netzwerken oder Systemen und sonstige solche Routing- und Netzwerkvorrichtungen. Noch weitere Beispiele für Bereitstellvorrichtungen 110 können unter anderem Vorrichtungen sein, deren Primärfunktion darin besteht, Prozessdaten und sonstige darauf bezogene Daten, die im gesamten Prozesssteuerungssystem 10 angesammelt werden, vorübergehend zu speichern und dafür zu sorgen, dass die vorübergehend gespeicherten Daten zur Historisierung an das Massendatengerät 102 des Prozesssteuerungssystems (in 1 veranschaulicht) übertragen werden.
-
Wenigstens eines der Bereitstellvorrichtungen 110 kann direkt oder indirekt kommunikativ mit dem Massendatennetzwerk-Hauptstrang 105 des Prozesssteuerungssystems verbunden sein. Beispielsweise kann eine drahtlose Feldvorrichtung kommunikativ über einen Router, einen Zugangspunkt und/oder ein Drahtlos-Gateway mit dem Hauptstrang 105 verbunden sein. Typischerweise weisen Bereitstellvorrichtungen 110 keine integrierte Benutzerschnittstelle auf, auch wenn manche der Bereitstellvorrichtungen 100 die Fähigkeit aufweisen können, in kommunikativer Verbindung mit einer Benutzer-Rechenvorrichtung oder einer Benutzerschnittstelle zu stehen, z. B durch Kommunizieren über eine drahtgebundene oder drahtlose Kommunikationsverbindung oder durch Einstecken einer Benutzerschnittstellenvorrichtung an einen Anschluss der Bereitstellungsvorrichtung 110.
-
Eine zweite Gruppe von Knoten 112, die hier als „Benutzerschnittstellenknoten 112“ oder „Benutzerschnittstellenvorrichtungen 113“ bezeichnet werden, können einen oder mehrere Knoten oder Vorrichtungen enthalten, die jeweils eine integrierte Benutzerschnittstelle aufweisen, über die ein Benutzer oder Bediener mit dem Datenmodellierungsstudio 109 und/oder der Wissensgewinnungsanwendung 114 interagieren kann. Beispiele für diese Benutzerschnittstellenknoten oder -vorrichtungen 112 können unter anderem mobile oder stationäre Rechenvorrichtungen, Workstations, Handgeräte, Tablets, Oberflächenrechenvorrichtungen, Smartphones und eine beliebige Rechenvorrichtung mit einem Prozessor, einem Speicher und einer integrierten Benutzerschnittstelle sein. Integrierte Benutzerschnittstellen können unter anderem ein Bildschirm, eine Tastatur, ein Tastenfeld, eine Maus, Tasten, ein Berührungsbildschirm, ein Berührungspad, eine biometrische Schnittstelle, Lautsprecher und Mikrofone, Kameras und/oder beliebige sonstige Benutzerschnittstellentechnik sein. Jeder Benutzerschnittstellenknoten 112 kann eine oder mehrere Benutzerschnittstellen enthalten. Darüber hinaus können Benutzerschnittstellenknoten 112 eine direkte Verbindung zum Massendatennetzwerk-Hauptstrang 105 des Prozesssteuerungssystems enthalten oder eine indirekte Verbindung zum Hauptstrang 105 enthalten, z. B. über ein Zugangspunkt oder ein Gateway. Benutzerschnittstellenknoten 112 können sich drahtgebunden oder drahtlos kommunikativ mit dem Massendatennetzwerk-Hauptstrang 105 des Prozesssteuerungssystems verbinden. Bei manchen Ausführungsformen kann sich ein Benutzerschnittstellenknoten 112 ad hoc mit dem Netzwerkhauptstrang 105 verbinden.
-
Selbstverständlich ist die Vielzahl der Knoten 108 des Massendatennetzwerks 100 des Prozesssteuerungssystems nicht nur auf Bereitstellknoten 110 und Benutzerschnittstellenknoten 112 beschränkt. In der Vielzahl der Knoten 108 kann auch eine oder mehrere Arten von Knoten 115 enthalten sein. Beispielsweise kann ein Knoten eines Systems, das außerhalb der Prozessanlage 10 liegt (z. B. ein Laborsystem oder ein Materialtransportsystem), kommunikativ mit dem Netzwerkhauptstrang 105 des Systems 100 verbunden sein. Ein Knoten oder eine Vorrichtung 115 kann über eine direkte oder eine indirekte Verbindung kommunikativ mit dem Hauptstrang 105 verbunden sein oder kann über eine drahtgebundene oder drahtlose Verbindung kommunikativ mit dem Hauptstrang 105 verbunden sein. Bei manchen Ausführungsformen kann die Gruppe sonstiger Knoten 115 vom Massendatennetzwerk 100 des Prozesssteuerungssystems weggelassen sein.
-
Wenigstens manche der Knoten 108 können jeweils entsprechende Arbeitsspeicher (in 1 durch die Symbole MX bezeichnet) enthalten, um Aufgaben, Messungen, Ereignisse und sonstige Daten in Echtzeit zu speichern oder zwischenzuspeichern. Ein Arbeitsspeicher MX kann hochdichte Speichertechnologie enthalten, z. B. einen Festkörperlaufwerksspeicher, einen Halbleiterspeicher, einen optischen Speicher, einen Molekularspeicher, einen biologischen Speicher oder eine beliebige, geeignete hochdichte Speichertechnologie. Jedoch kann der Arbeitsspeicher MX auch einen Flash-Speicher, Festplattenlaufwerke oder beliebige sonstige Arten von Speicher enthalten. Der Arbeitsspeicher MX (und in manchen Fällen der Flash-Speicher) kann dafür konfiguriert sein, Daten, die durch ihren jeweiligen Knoten 108 erzeugt, von diesem empfangen oder auf sonstige Weise beobachtet werden, vorübergehend zu speichern oder zwischenzuspeichern. Der Flash-Speicher MX von wenigstens manchen der Knoten 108 (z. B. eine Steuerungsvorrichtung) kann auch Momentaufnahmen der Knotenkonfiguration, Chargenrezepte und/oder sonstiger Daten speichern, um eine Verzögerung bei der Nutzung dieser Information im Normalbetrieb oder nach einem Stromausfall oder einem sonstigen Ereignis, durch das der Knoten offline ist, zu minimieren. Selbstverständlich kann jeder beliebige oder alle Knoten 110, 112 und jede beliebige Anzahl der Knoten 115 einen hochdichten Arbeitsspeicher MX enthalten. Es versteht sich, dass verschiedene Arten oder Technologien eines hochdichten Speichers MX in der gesamten Menge der Knoten 108 oder in einer Teilmenge der Knoten verwendet werden können, die in der Menge der Knoten 108 enthalten sind.
-
Beispiele (aber keine umfassende Liste) für Echtzeitdaten, die von Bereitstellknoten oder -vorrichtungen 110 zwischengespeichert oder erfasst werden können, sind unter anderem Messdaten, Steuersignaldaten, Konfigurationsdaten, Chargendaten, Ereignisdaten und/oder fortlaufende Daten. Beispielsweise können Echtzeitdaten, die Konfigurationen, Chargenrezepten, Sollwerten, Ausgaben, Geschwindigkeiten, Steuerungsaktionen, Diagnosen, Alarmen, Ereignissen und/oder Änderungen derselben entsprechen, erfasst werden. Sonstige Beispiele für Echtzeitdaten können unter anderem Prozessmodelle, Statistiken, Statusdaten und Netzwerk- und Anlagenverwaltungsdaten sein.
-
Beispiele für Echtzeitdaten, die von Benutzerschnittstellenknoten oder -vorrichtungen 112 zwischengespeichert oder erfasst werden, können beispielsweise Benutzeranmeldungen, Benutzerabfragen, von einem Benutzer erfasste Daten (durch eine Kamera, ein Audio- oder Videoaufzeichnungsgerät), Benutzerbefehle, Anlage, Änderung oder Löschung von Dateien, ein physischer und räumlicher Standort eines Benutzerschnittstellenknotens oder einer -vorrichtung, Ergebnisse einer Diagnose oder eines Tests, die von der Benutzerschnittstellenvorrichtung 113 durchgeführt werden, und sonstige Aktionen oder Aktivitäten, die von einem Benutzer, der mit einem Benutzerschnittstellenknoten 112 interagiert, initiiert werden oder mit diesem in Zusammenhang stehen, sein.
-
Erfasste Daten können dynamische oder statische Daten sein und können unter anderem beispielsweise Datenbankdaten, Streaming-Daten und/oder transaktionale Daten sein. Im Allgemeinen können beliebige Daten, die ein Knoten 108 erzeugt, empfängt oder beobachtet, mit einem entsprechenden Zeitstempel oder einem Hinweis auf eine Erfassungs-/Zwischenspeicherungszeit erfasst oder zwischengespeichert werden. In einer bevorzugten Ausführungsform werden alle Daten, die ein Knoten 108 erzeugt, empfängt oder beobachtet, mit einem entsprechenden Hinweis auf eine Zeit der jeweiligen Datumserfassung/-zwischenspeicherung in seinem Speicher (z. B. einen hochdichten Arbeitsspeicher MX) erfasst oder zwischengespeichert.
-
Jeder der Knoten 110, 112 (und optional wenigstens einer der anderen Knoten 115 können dafür konfiguriert werden, Echtzeitdaten automatisch zu erfassen oder zwischenzuspeichern und zu veranlassen, dass die erfassten/zwischengespeicherten Daten an das Massendatengerät 102 und/oder sonstige Knoten 108 geliefert werden, ohne eine verlustreiche Datenkomprimierung, Datenunterabtastung oder Konfigurierung des Knotens für Datenerfassungszwecke zu erfordern. Anders als bei Prozesssteuerungssystemen nach dem Stand der Technik muss die Identität von Daten, die an den Knoten oder Vorrichtungen 108 des Massendatennetzwerks 100 des Prozesssteuerungssystems nicht a priori in den Vorrichtungen 108 konfiguriert sein. Ferner muss auch die Rate, mit der die Daten von den Knoten 108 erfasst und geliefert werden, nicht konfiguriert, ausgewählt oder definiert werden. Stattdessen können die Knoten 110, 112 (und optional wenigstens einer der sonstigen Knoten 115) des Massendatensystems 100 des Prozesssteuerungssystems automatisch alle Daten erfassen, die vom Knoten mit der Rate, mit der Daten erzeugt, empfangen oder gewonnen werden, erzeugt, empfangen oder gewonnen und veranlassen, dass die erfassten Daten getreu (z. B. ohne verlustreiche Datenkomprimierung oder sonstige Techniken, die einen Verlust der ursprünglichen Informationen verursachen kann) an das Massendatengerät 102 der Prozesssteuerung und optional an sonstige Knoten 108 des Netzwerks 100 geliefert werden.
-
Ein detailliertes Blockschaubild, das beispielhafte Bereitstellknoten 110 veranschaulicht, die an einen Massendatennetzwerk-Hauptstrang 105 des Prozesssteuerungssystems angeschlossen sind, ist in 7 veranschaulicht. Insbesondere können die Bereitstellknoten dazu dienen, Daten, die von der Prozessanlage 10 erfasst und im Datenspeicherbereich 120 gespeichert sind, zu erfassen und zwischenzuspeichern. Die Datenquellenvorlagen 129a (die zum Aufbauen des Modells in der grafischen Benutzerschnittstelle 300 des Datenmodellierungsstudios 109 verwendet werden) sind grafische Darstellungen oder Anzeiger für Daten, die im Datenspeicherbereich 120 gespeichert sind. Auf diese Weise sind alle Daten, die im Massendatennetzwerk 100 der Prozesssteuerung erfasst und im Datenspeicherbereich 120 gespeichert werden, für einen Benutzer des Datenmodellierungsstudios 109 und die Wissensgewinnungsanwendung 114 verfügbar.
-
Wie zuvor erörtert können Bereitstellknoten 110 eine oder mehrere Vorrichtungen enthalten, deren Hauptfunktion darin besteht, Prozesssteuerungsdaten, die dazu dienen, Funktionen zum Steuern eines Prozesses in Echtzeit in der Prozessanlagenumgebung 10 durchzuführen, wie etwas Prozesssteuerungseinheiten, Feldvorrichtungen und E/A-Vorrichtungen, automatisch zu generieren und/oder zu empfangen. In einer Prozessanlagenumgebung 10 empfangen Prozesssteuerungseinheiten typischerweise Signale, die auf Prozessmessungen durch Feldvorrichtungen hinweisen, verarbeiten diese Informationen, um eine Steuerungsroutine zu implementieren, und erzeugen Steuersignale, die über drahtgebundene oder drahtlose Kommunikationsverbindungen an andere Feldvorrichtungen gesendet werden, um den Betrieb eines Prozesses in der Anlage 10 zu steuern. Typischerweise führt wenigsten eine Feldvorrichtung eine physische Funktion durch (z. B. Öffnen oder Schließen eines Ventils, Erhöhen oder Verringern einer Temperatur, einer Brennerflamme, einer Lüfterdrehzahl usw.), um den Betrieb eines Prozesses zu steuern, und manche Arten von Feldvorrichtungen können mit Hilfe von E/A-Vorrichtungen mit Steuerungseinheiten kommunizieren. Prozesssteuerungseinheiten, Feldvorrichtungen und E/A-Vorrichtungen können drahtgebunden oder drahtlos sein, und eine beliebige Anzahl und Kombination drahtgebundener oder drahtloser Prozesssteuerungseinheiten, Feldvorrichtungen und E/A-Vorrichtungen können in den Knoten 110 des Massendatennetzwerks 100 der Prozesssteuerung enthalten sein.
-
Wie in 7 veranschaulicht, ist die Steuerungseinheit 11 über die Eingangs-/Ausgangs(E/A)-Karten 26 und 28 kommunikativ mit den drahtgebundenen Feldvorrichtungen 15 bis 22 und über ein Drahtlos-Gateway 35 und den Netzwerkhauptstrang 105 kommunikativ mit den drahtlosen Feldvorrichtungen 40 bis 46 verbunden. (Bei einer anderen Ausführungsform kann aber die Steuerungseinheit 11 kommunikativ über ein anderes Kommunikationsnetzwerk als den Hauptstrang 105 mit dem Drahtlos-Gateway 35 verbunden sein, wie etwa über eine sonstige drahtgebundene oder drahtlose Kommunikationsverbindung.) In 7 ist die Steuerungseinheit 11 als ein Knoten 110 des Massendatennetzwerks 100 des Prozesssteuerungssystems dargestellt und direkt mit dem Massendatennetzwerk-Hauptstrang 105 des Prozesssteuerungssystems verbunden.
-
Die Steuerungseinheit 11, die beispielhaft die Steuerungseinheit DeltaVTM von Emerson Process Management sein kann, kann betriebe werden, um einen Chargenprozess oder einen kontinuierlichen Prozess mit Hilfe wenigstens mancher der Feldvorrichtungen 15 bis 22 und 40 bis 46 zu implementieren. Die Steuerungseinheit 11 kann mit den Feldvorrichtungen 15 bis 22 und 40 bis 46 kommunikativ verbunden sein, wobei beliebige gewünschte Hardware und Software verwendet werden kann, die beispielsweise mit 4- bis 20-mA-Standardvorrichtungen, I/O-Karten 26, 28, und/oder einem beliebigen intelligenten Kommunikationsprotokoll wie dem FOUNDATION® Fieldbus-Protokoll, dem HART®-Protokoll, dem WirelessHART®-Protokoll usw. in Zusammenhang stehen. Die Steuerungseinheit 11 kann zusätzlich oder alternativ mit wenigstens manchen der Feldvorrichtungen 15 bis 22 und 40 bis 46 über den Massendatennetzwerk-Hauptstrang 105 verbunden sein. Bei der in 7 veranschaulichten Ausführungsform sind die Steuerungseinheit 11, die Feldvorrichtungen 15 bis 22 und die E/A-Karten 26, 28 drahtgebundene Vorrichtungen und die Feldvorrichtungen 40 bis 46 sind drahtlose Feldvorrichtungen. Selbstverständlich könnten die drahtgebundenen Feldvorrichtungen 15 bis 22 und die drahtlosen Feldvorrichtungen 40 bis 46 beliebigen sonstigen Standards oder Protokollen entsprechen, wie etwa beliebigen Protokoll für drahtgebundene oder drahtlose Kommunikation, einschließlich beliebiger Standard oder Protokolle, die in der Zukunft entwickelt werden.
-
Die Steuerungseinheit 11 von 7 enthält einen Prozessor 30, der eine oder mehrere Prozesssteuerungsroutinen (in einem Speicher 32) implementiert oder überwacht, die Steuerungsschleifen enthalten können. Der Prozessor 30 kann mit den Feldvorrichtungen 15 bis 22 und 40 bis 46 und mit anderen Knoten (z. B. Knoten 110, 112, 115) kommunizieren, die mit dem Hauptstrang 105 kommunikativ verbunden sind, um Steuerungsaktivitäten durchzuführen. Es ist zu beachten, dass bei beliebigen der hier beschriebenen Steuerungsroutinen oder -module (darunter Qualitätsprognose und Fehlererkennungsmodule oder Funktionsbausteine) Teile davon durch verschiedene Steuerungseinheiten oder sonstige Vorrichtungen implementiert oder ausgeführt werden, wenn es so gewünscht wird. Genauso können die hier beschriebenen Steuerungsroutinen oder -module, die im Prozesssteuerungssystem 10 implementiert werden sollen, eine beliebige Form annehmen, unter anderem Software, Firmware, Hardware usw. Steuerungsroutinen können in einem beliebigen gewünschten Softwareformat implementiert sein, wie etwa Verwendung von objektorientierter Programmierung, Kontaktplan, sequentiellen Funktionsdiagrammen, Funktionsbausteindiagrammen oder Verwendung einer beliebigen sonstigen Softwareprogrammiersprache oder eines beliebigen Entwurfsparadigmas. Die Steuerungsroutinen können in einer beliebigen Art von Speicher, wie etwa Arbeitsspeicher (RAM) oder Nur-Lese-Speicher (ROM) gespeichert werden. Genauso können die Steuerungsroutinen beispielsweise in einem oder mehreren EPROMs, EEPROMs, anwendungsspezifischen integrierten Schaltkreisen (ASICs) oder beliebigen sonstigen Hardware- oder Firmware-Elementen fest encodiert sein. Somit kann die Steuerungseinheit 11 dafür konfiguriert sein, eine Steuerungsstrategie oder Steuerungsroutine in einer beliebigen Art und Weise zu implementieren.
-
Bei manchen Ausführungsformen wird durch die Steuerungseinheit 11 eine Steuerungsstrategie implementiert, die verwendet was üblicherweise als Funktionsbaustein bezeichnet wird, wobei jeder Funktionsbaustein ein Objekt oder anderes Teil (z. B. eine Teilroutine) einer übergreifenden Steuerungsroutine darstellt und in Verbindung mit anderen Funktionsbausteinen (über als Verbindungen bezeichnete Kommunikation), um Prozesssteuerungsschleifen innerhalb des Prozesssteuerungssystems 10 zu implementieren. Steuerungsbasierte Funktionsbausteine führen typischerweise eine von einer Eingabefunktion, wie etwa verbunden mit einem Messwertgeber, einem Sensor oder einer sonstigen Messvorrichtung für Prozessparameter, einer Steuerungsfunktion, wie etwa verbunden mit einer Steuerungsroutine, die PID, Fuzzy-Logik usw. -steuerung, oder einer Ausgabefunktion, die den Betrieb einer Vorrichtung wie etwa eines Ventils steuert, um eine physische Funktion innerhalb des Prozesssteuerungssystems 10 durchzuführen. Selbstverständlich gibt es hybride und sonstige Arten von Funktionsbausteinen. Funktionsblöcke können in der Steuerungseinheit 11 gespeichert sein und von ihr ausgeführt werden, was typischerweise der Fall ist, wenn diese Funktionsblöcke mit 4- bis 20-mA-Standardgeräten und manchen Arten intelligenter Feldvorrichtungen wie HART-Vorrichtungen verbunden sind, oder können in den Feldvorrichtungen selbst gespeichert und durch diese implementiert sein, was bei Feldbus-Feldvorrichtungen der Fall sein kann. Die Steuerungseinheit 11 kann eine oder mehrere Steuerungsroutinen 38 enthalten, die eine oder mehrere Steuerungsschleifen implementieren. Jede Steuerungsschleife wird typischerweise als Steuerungsmodul bezeichnet und kann durch Ausführen eines oder mehrerer der Funktionsbausteine durchgeführt werden.
-
Die drahtgebundenen Feldvorrichtungen 15 bis 22 können beliebige Arten von Vorrichtungen sein, wie etwa Sensoren, Ventile, Messwertgeber, Stellungsregler usw., während die E/A-Karten 26 und 28 beliebige Arten von E/A-Vorrichtungen sein können, die einem beliebigen gewünschten Kommunikations- oder Steuerungseinheitenprotokoll entsprechen. Bei der in 7 veranschaulichten Ausführungsform sind die Feldvorrichtungen 15 bis 18 4- bis 20-mA-Standardvorrichtungen oder HART-Vorrichtungen, die über Analogleitungen oder kombinierte Analog-/Digitalleitungen mit der E/A-Karte 26 kommunizieren, während die Feldvorrichtungen 19 bis 22 intelligente Vorrichtungen sind, wie Feldvorrichtungen mit FOUNDATION®-Feldbus, die unter Verwendung eines Feldbus-Kommunikationsprotokolls über einen Digitalbus mit der E/A-Karte 28 kommunizieren. Bei manchen Ausführungsformen können jedoch wenigstens manche der drahtgebundenen Feldvorrichtungen 15 bis 22 und/oder mindestens manche der E/A-Karten 26, 28 mit der Steuerungseinheit 11 über den Massendatennetzwerk-Hauptstrang 105 kommunizieren. Bei manchen Ausführungsformen können wenigstens manche der drahtgebundenen Feldvorrichtungen 15 bis 22 und/oder mindestens manche der E/A-Karten 26, 28 Knoten des Massendatennetzwerks 100 des Prozesssteuerungssystems sein.
-
Bei der in 7 veranschaulichten Ausführungsform kommunizieren die drahtlosen Feldvorrichtungen 40 bis 46 in einem drahtlosen Netzwerk 70 mit Hilfe eines drahtlosen Protokolls wie etwa des WirelessHART-Protokolls. Solche drahtlosen Feldvorrichtungen 40 bis 46 können direkt mit einem oder mehreren Knoten 108 des Massendatennetzwerks 100 des Prozesssteuerungssystems kommunizieren, die auch dafür konfiguriert sind, drahtlos zu kommunizieren (beispielsweise unter Verwendung des Drahtlos-Protokolls). Um mit einem oder mehreren sonstigen Knoten 108 zu kommunizieren, die nicht für drahtloses Kommunizieren konfiguriert sind, können die drahtlosen Feldvorrichtungen 40 bis 46 ein Drahtlos-Gateway 35 verwenden, das mit dem Hauptstrang 105 oder mit einem anderen Prozesskommunikationsnetzwerk verbunden ist. Bei manchen Ausführungsformen können wenigstens manche der drahtlosen Feldvorrichtungen 40 bis 46 Knoten des Massendatennetzwerks 100 des Prozesssteuerungssystems sein.
-
Das Drahtlos-Gateway 35 ist ein Beispiel für eine Bereitstellvorrichtung 110, die einen Zugang zu verschiedenen drahtlosen Vorrichtungen 40 bis 58 eines drahtlosen Kommunikationsnetzes 70 bereitstellen kann. Insbesondere stellt das Drahtlos-Gateway 35 eine kommunikative Kopplung zwischen den drahtlosen Vorrichtungen 40 bis 58, den drahtgebundenen Vorrichtungen 11 bis 28 und/oder sonstigen Knoten 108 des Massendatennetzwerks 100 des Prozesssteuerungssystems her (darunter die Steuerungseinheit 11 von 7). Beispielsweise kann das Drahtlos-Gateway 35 eine kommunikative Kopplung unter Verwendung des Massendatennetzwerk-Hauptstrangs 105 und/oder unter Verwendung eines oder mehrerer sonstiger Kommunikationsnetzwerke der Prozessanlage 10 bereitstellen.
-
Das Drahtlos-Gateway 35 stellt eine kommunikative Kopplung bereit, in manchen Fällen durch die Weiterleitungs-, Puffer- und Zeitdienste für untere Schichten der Protokollstapel für drahtgebundene und drahtlose Kommunikation (z. B. Addressenumwandlung, Weiterleitung, Paketsegmentierung, Priorisierung usw.), während eine gemeinsam genutzte Schicht oder Schichten des Protokollstapels für drahtgebundene und drahtlose Kommunikation getunnelt werden. In anderen Fällen kann das Drahtlos-Gateway 35 Befehle zwischen Protokollen für drahtgebundene und drahtlose Kommunikation, die keine Protokollschichten gemeinsam nutzen, übersetzen. Zusätzlich zur Protokoll- und Befehlsumwandlung kann das Drahtlos-Gateway 35 eine synchronisierte Taktung bereitstellen, die von Zeitschlitzen und Superframes (Sätze von Kommunikationszeitschlitzen mit gleichem zeitlichen Abstand) eines Zeitablaufplans, der mit dem im drahtlosen Netzwerk 70 implementierten Drahtlos-Protokoll verbunden ist. Ferner kann das Drahtlos-Gateway 35 Netzwerkverwaltungs- und administrative Funktionen für das drahtlose Netzwerk 70 bereitstellen, wie etwa Ressourcenverwaltung, Leistungseinstellungen, Netzwerkfehlermigration, Verkehrsüberwachung, Sicherheit und dergleichen. Das Drahtlos-Gateway 35 kann ein Knoten 110 des Massendatennetzwerks 100 des Prozesssteuerungssystems sein.
-
Ähnliche wie die drahtgebundenen Feldvorrichtungen 15 bis 22 können die drahtlosen Feldvorrichtungen 40 bis 46 des drahtlosen Netzwerks 70 physische Steuerungsfunktionen innerhalb der Prozessanlage 10, z. B. Öffnen oder Schließen von Ventilen oder Messungen von Prozessparametern ausführen. Die drahtlosen Feldvorrichtungen 40 bis 46 sind jedoch dafür konfiguriert, über das Drahtlos-Protokoll des Netzwerks 70 zu kommunizieren. Von daher sind die drahtlosen Feldvorrichtungen 40 bis 46, das Drahtlos-Gateway 35 und sonstige drahtlose Knoten 52 bis 58 des drahtlosen Netzwerks 70 Produzenten und Konsumenten drahtloser Kommunikationspakete.
-
In manchen Szenarien kann das drahtlose Netzwerk 70 nicht-drahtlose Vorrichtungen enthalten. Beispielsweise kann eine Feldvorrichtung 48 von 7 eine alte Vorrichtung von 4 bis 40 mA und eine Feldvorrichtung 50 kann eine herkömmliche drahtgebundene HART-Vorrichtung sein. Um innerhalb des Netzwerks 70 zu kommunizieren, können die Feldvorrichtungen 48 und 50 über einen Drahtlos-Adapter (WA) 52a oder 52b mit dem drahtlosen Kommunikationsnetzwerk 70 verbunden werden. usw. Außerdem können die drahtlosen Adapter 52a, 52b andere Kommunikationsprotokolle wie etwa Foundation® Fieldbus, PROFIBUS, DeviceNet, usw. unterstützen. Das drahtlose Netzwerk 70 kann weiterhin einen oder mehrere Zugangspunkte 55a, 55b enthalten, die getrennte physische Vorrichtungen in drahtgebundener Kommunikation mit dem Drahtlos-Gateway 35 oder als eine integrierte Vorrichtung mit dem Drahtlos-Gateway 35 vorgesehen sein können. Das drahtlose Netzwerk 70 kann auch einen oder mehrere Router 58 enthalten, um Pakete von einer drahtlosen Vorrichtung zu einer anderen drahtlosen Vorrichtung innerhalb des drahtlosen Kommunikationsnetzwerks 70 weiterzuleiten. Die drahtlosen Vorrichtungen 32 bis 46 und 52 bis 58 können über drahtlose Verbindungen 60 des drahtlosen Kommunikationsnetzwerks 70 miteinander und mit dem Drahtlos-Gateway 35 kommunizieren.
-
Entsprechend enthält 7 mehrere Beispiele für Bereitstellvorrichtungen 110, die primär dazu dienen, eine Weiterleitungsfunktionalität im Netzwerk und eine Verwaltung für verschiedene Netzwerke des Prozesssteuerungssystems bereitzustellen. Beispielsweise enthalten das Drahtlos-Gateway 35, die Zugangspunkte 55a, 55b und der Router 58 eine Funktionalität, Drahtlos-Pakete im drahtlosen Kommunikationsnetzwerk 70 weiterzuleiten. Das Drahtlos-Gateway 35 führt eine Verkehrsverwaltung und Verwaltungsfunktionen für das drahtlose Netzwerk 70 durch und leitet Datenverkehr von und zu drahtgebundenen Netzwerken, die mit dem drahtlosen Netzwerk 70 in kommunikativer Verbindung stehen. Das drahtlose Netzwerk 70 kann ein Drahtlos-Prozesssteuerungsprotokoll verwenden, das speziell Prozesssteuerungsmeldungen und -funktionen unterstützt, wie etwa Wireless HART.
-
Die Bereitstellknoten 110 des Massendatennetzwerks 100 des Prozesssteuerungssystems können aber auch sonstige Knoten enthalten, die über andere Drahtlos-Protokolle kommunizieren. Beispielsweise können die Bereitstellknoten 110 einen oder mehrere drahtlose Zugangspunkte 72 enthalten, die andere Drahtlos-Protokolle verwenden, wie etwa Wi-Fi oder ein sonstiges Protokoll für drahtlose lokale Netzwerke nach IEEE 802.11, konforme Mobilkommunikationsprotokolle wie WiMAX (Worldwide Interoperability for Microwave Access, weltweite Interoperabilität für Mikrowellenzugang), LTE (Long Term Evolution, Langzeitevolution) oder sonstige mit ITU-R (International Telecommunication Union Radiocommunication Sector, Abteilung Funkkommunikation der International Telecommunication Union) kompatible Protokolle, Kurzwellen-Funkkommunikation wie etwa Nahbereichskommunikation (near field communication, NFC) und Bluetooth oder sonstige Protokolle für drahtlose Kommunikation. Typischerweise ermöglichen es solche drahtlosen Zugangspunkte 72 Handgeräten oder anderen tragbaren Kommunikationsvorrichtungen (z. B. Benutzerschnittstellenvorrichtungen 113), über ein jeweiliges drahtloses Netzwerk zu kommunizieren, das sich vom drahtlosen Netzwerk 70 unterscheidet und ein anderes Drahtlosprotokoll unterstützt als das drahtlose Netzwerk 70. In manchen Szenarien können zusätzlich zu tragbaren Rechenvorrichtungen eine oder mehrere Prozesssteuerungsvorrichtungen (z. B. Steuerungseinheit 11, Feldvorrichtungen 15 bis 22 oder drahtlose Vorrichtungen 35, 40 bis 58) auch das drahtlose Netzwerk nutzen, das durch die Zugangspunkte 72 unterstützt wird.
-
Zusätzlich oder alternativ können die Bereitstellknoten 110 ein oder mehrere Gateways 75, 78 zu Systemen enthalten, die außerhalb des unmittelbaren Prozesssteuerungssystems 10 liegen. Typischerweise sind solche Systeme Kunden oder Lieferanten von Informationen, die vom Prozesssteuerungssystem 10 erzeugt oder weiterverarbeitet wird. Beispielsweise kann ein Gateway-Knoten 75 der Anlage die unmittelbare Prozessanlage 10 (die ihren eigenen Massendatennetzwerk-Hauptstrang 105 aufweist) mit einer anderen Prozessanlage kommunikativ verbinden, die ihren Massendatennetzwerk-Hauptstrang aufweist. Wenn gewünscht, kann ein einziger Massendatennetzwerk-Hauptstrang 105 mehrere Prozessanlagen oder Prozesssteuerungsumgebungen bedienen.
-
In einem anderen Beispiel kann ein Gateway-Knoten 75 der Anlage die unmittelbare Prozessanlage 10 mit einer alten oder dem Stand der Technik entsprechenden Prozessanlage verbinden, die kein Massendatennetzwerk 100 bzw. keinen Hauptstrang 105 des Prozesssteuerungssystems enthält. Bei diesem Beispiel kann der Gateway-Knoten 75 der Anlage Meldungen zwischen einem Protokoll, das vom Massendatennetzwerk-Hauptstrang 105 der Prozessanlage 10 verwendet wird, und einem anderen Protokoll, das vom alten System verwendet wird (z. B. Ethernet, Profibus, Fieldbus, DeviceNet usw.), konvertieren oder übersetzen.
-
Die Bereitstellknoten 110 können einen oder mehrere System-Gateway-Knoten 78 enthalten, um das Massendatennetzwerk 100 der Prozesssteuerung mit dem Netzwerk eines externen öffentlichen oder privaten Systems zu verbinden, wie etwa eines Laborsystems (e.g., Laboratory Information Management System oder LIMS), einer Bedienerrundendatenbank, eines Materialtransportsystems, eines Wartungsverwaltungssystems, eines Produkt-Bestandskotrollsystems, ein Produktionsplanungssystems, eines Wetterdatensystems, eines Versand- und Transportsystems, eines Verpackungssystems, des Internets, des Prozesssteuerungssystems eines anderen Bereitstellers oder sonstiger externer Systeme.
-
Auch wenn 7 nur eine einzige Steuerungseinheit 11 mit einer endlichen Anzahl von Feldvorrichtungen 15 bis 22 und 40 bis 46 veranschaulicht, ist dies nur eine veranschaulichende und nicht-einschränkende Ausführungsform. Eine beliebige Anzahl von Steuerungseinheiten 11 kann in den Bereitstellknoten 110 des Massendatennetzwerks 100 des Prozesssteuerungssystems enthalten sein, und eine beliebige der Steuerungseinheiten 11 kann mit einer beliebigen Anzahl von drahtgebundenen oder drahtlosen Feldvorrichtungen 15 bis 22, 40 bis 46 verbunden sein, um einen Prozess in der Anlage 10 zu steuern. Ferner kann die Prozessanlage 10 auch eine beliebige Anzahl von Drahtlos-Gateways 35, Routern 58, Zugangspunkten 55, drahtlosen Kommunikationsnetzwerken 70 der Prozesssteuerung, Zugangspunkten 72 und/oder Gateways 75, 78 enthalten.
-
Wie zuvor erörtert, kann einer oder mehrere Bereitstellknoten 110 einen jeweiligen Mehrkernprozessor PMCX, einen jeweiligen hochdichten Arbeitsspeicher MX oder sowohl einen jeweiligen Mehrkernprozessor PMCX als auch einen jeweiligen hochdichten Arbeitsspeicher MX enthalten (in 7 durch das Symbol BD bezeichnet). Jeder Bereitstellknoten 100 kann seinen Arbeitsspeicher MX nutzen (und bei manchen Ausführungsform seinen Flash-Speicher), um Daten zu erfassen und zwischenzuspeichern. Jeder der Knoten 110 kann veranlassen, dass seine zwischengespeicherten Daten an das Massendatengerät 102 des Prozesssteuerungssystems übertragen wird. Beispielsweise kann ein Knoten 110 veranlassen, dass wenigstens ein Teil der Daten in seinem Zwischenspeicher periodisch an das Massendatengerät 102 übertragen wird. Alternativ oder zusätzlich kann der Knoten 110 veranlassen, dass wenigstens ein Teil der Daten an das Massendatengerät 102 gestreamt wird. In einem Fall kann das Massendatengerät 102 des Prozesssteuerungssystems ein Teilnehmer eines Streaming-Dienstes sein, der die zwischengespeicherten oder erfassten Daten vom Knoten 110 liefert. In einem anderen Fall kann der Bereitstellknoten 110 als Host für den Streaming-Dienst fungieren.
-
Bei Knoten 110, die eine direkte Verbindung zum Hauptstrang 105 haben (z. B. die Steuerungseinheit 11, das Anlagen-Gateway 75, das Drahtlos-Gateway 35), können die jeweiligen zwischengespeicherten oder erfassten Daten über den Hauptstrang 105 direkt vom Knoten 110 an das Massendatengerät 102 der Prozesssteuerungssystem übertragen werden. Bei wenigstens manchen der Knoten 110 kann jedoch die Erfassung und/oder in Ebenen oder Schichten erfolgen, so dass zwischengespeicherte oder erfasste Daten an einem Knoten, der weiter stromabwärts (z. B. weiter entfernt) vom Massendatengerät 102 der Prozesssteuerung liegt, sofort in einem Knoten zwischengespeichert wird, der weiter stromaufwärts liegt (z. B. näher am Massendatengerät 102).
-
Um ein Beispiel für eine Datenzwischenspeicherung in Schichten oder Ebenen zu veranschaulichen, speichert eine Feldvorrichtung 22 Prozesssteuerungsdaten, die sie erzeugt oder empfängt, und veranlasst, dass die Inhalte ihres Zwischenspeichers an eine „stromaufwärts“ liegende Vorrichtung geliefert wird, die im Kommunikationsweg zwischen der Feldvorrichtung 22 und dem Massendatengerät 102 der Prozesssteuerungssystem liegt, wie etwa die E/A-Vorrichtung 28 oder die Steuerungseinheit 11. Beispielsweise kann die Feldvorrichtung 22 die Inhalte ihres Zwischenspeichers an die E/A-Vorrichtung 28 streamen, oder die Feldvorrichtung 22 kann die Inhalte ihres Zwischenspeichers periodisch an die E/A-Vorrichtung 28 streamen. Die E/A-Vorrichtung 28 speichert die Informationen, die von der Feldvorrichtung 22 empfangen wurde, in ihrem Arbeitsspeicher M5 zusammen mit anderen Daten, die die E/A-Vorrichtung 28 direkt erzeugt, empfängt und beobachtet, zwischen (und kann bei manchen Ausführungsformen auch Daten, die von anderen stromabwärts liegenden Feldvorrichtungen 19 bis 21 empfangen wurden, in ihrem Arbeitsspeicher M5 zwischenspeichern). Die Daten, die in der E/A-Vorrichtung 28 erfasst und zwischengespeichert werden (darunter die Inhalte des Zwischenspeichers der Feldvorrichtung 22), können dann periodisch an die stromaufwärts liegende Steuerungseinheit 11 übertragen und/oder gestreamt werden. Genauso speichert auf der Ebene der Steuerungseinheit 11 die Steuerungseinheit 11 Informationen, die von stromabwärts liegenden Vorrichtungen (z. B. die E/A-Karten 26, 28 und/oder einer beliebigen der Feldvorrichtungen 15 bis 22) empfangen wurden, in ihrem Arbeitsspeicher M6 zwischen und fasst in ihrem Arbeitsspeicher M6 die von stromabwärts erhaltenen Daten mit Daten zusammen, die die Steuerungseinheit 11 selbst direkt erzeugt und beobachtet. Die Steuerungseinheit 11 kann dann periodisch die zusammengefassten erfassten oder zwischengespeicherten Daten periodisch an das Massendatengerät 102 der Prozesssteuerung liefen und/oder streamen. Auf diese Weise stellen die Feldvorrichtungen 22 dem Benutzer des Datenmodellierungsstudios 109 und/oder der Wissensgewinnungsanwendung 114 einen Zugang zu Echtzeit- oder Fast-Echtzeitdaten bereit.
-
In einem zweiten beispielhaften Szenario einer Zwischenspeicherung in Schichten oder Ebenen steuert die Steuerungseinheit 11 einen Prozess mit Hilfe drahtgebundener Feldvorrichtungen (z. B. eine oder mehrere der Vorrichtungen 15 bis 22) und mindestens einer drahtlosen Feldvorrichtung (z. B. der drahtlosen Feldvorrichtung 44). Bei einer ersten Ausführungsform dieses zweiten beispielhaften Szenarios werden die zwischengespeicherten oder erfassten Daten der drahtlosen Vorrichtung 44 von der drahtlosen Vorrichtung 44 direkt an die Steuerungseinheit 11 gestreamt (z. B. über das Massendatennetzwerk 105) und werden im Zwischenspeicher der Steuerungseinheit M6 zusammen mit Daten von anderen Vorrichtungen oder Knoten gespeichert, die von Steuerungseinheit 11 stromabwärts liegen. Die Steuerungseinheit 11 kann dann die in ihrem Zwischenspeicher M6 gespeicherten Daten periodisch an das Massendatengerät 102 der Prozesssteuerung liefen und/oder streamen.
-
Bei einer anderen Ausführungsform dieses zweiten beispielhaften Szenarios können die zwischengespeicherten oder erfassten Daten der drahtlosen Vorrichtung 44 schließlich über einen anderen Pfad mit Ebenen oder Schichten an das Massendatengerät 102 der Prozesssteuerung geliefert werden, z. B. über die Vorrichtung 42a, den Router 52a, den Zugangspunkt 55a und das Drahtlos-Gateway 35. Bei dieser Ausführungsform können wenigstens manche der Knoten 41a, 52a, 55a oder 35 des anderen Pfads Daten von stromabwärts liegenden Knoten zwischenspeichern und zwischengespeicherte Daten periodisch an einen Knoten liefern oder streamen, der weiter stromaufwärts liegt.
-
Entsprechend können verschiedene Arten von Daten an verschiedenen Knoten des Massendatennetzwerks 100 des Prozesssteuerungssystems mit Hilfe verschiedener Schichten- oder Ebenen Anordnungen zwischengespeichert werden. In manchen Fällen können Daten, die der Steuerung eines Prozesses entsprechen, mit Hilfe von Bereitstellvorrichtungen 110, deren primäre Funktionalität das Steuern ist (z. B. Feldvorrichtungen, E/A-Karten, Steuerungseinheiten) geschichtet zwischengespeichert und geliefert werden, wogegen Daten, die einer Messung des Netzwerkverkehrs entsprechen, mit Hilfe von Bereitstellvorrichtungen 110, deren primäre Funktionalität die Verkehrsverwaltung ist (z. B. Router, Zugangspunkte und Gateways) geschichtet zwischengespeichert und geliefert werden. Wenn gewünscht, können Daten über Bereitstellknoten oder Vorrichtungen 110 geliefert werden, deren primäre Funktion (in manchen Szenarien einzige Funktion) darin besteht, Daten von stromabwärts liegenden Vorrichtungen zu erfassen und zwischenzuspeichern (hier als „Historikerknoten“ bezeichnet). Beispielsweise kann sich ein Ebenen System von Historikerknoten oder Rechenvorrichtungen im gesamten Netzwerk 100 befinden und jeder Knoten 110 kann periodisch zwischengespeicherte Daten an einen Historikerknoten einer gleichen Ebene liefern oder streamen, z. B. über den Hauptstrang 105. Stromabwärts liegende Historikerknoten können zwischengespeicherte Daten an stromaufwärts liegende Historikerknoten liefern oder streamen, und schließlich können die Historikerknoten, die sich direkt stromabwärts vom Massendatengerät 102 der Prozesssteuerung befinden, die jeweiligen zwischengespeicherten Daten zur Speicherung im Massendatengerät 102 der Prozesssteuerung liefern oder streamen.
-
Ein geschichtetes Zwischenspeichern kann auch oder zusätzlich durch Knoten 110 erfolgen, die über den Massendatennetzwerk-Hauptstrang 105 des Prozesssteuerungssystems miteinander kommunizieren. Genauso können wenigstens manche der Knoten 110 zwischengespeicherte Daten an andere Knoten 110 auf einer anderen Ebene kommunizieren, indem sie ein anderes Kommunikationsnetzwerk und/oder Protokoll verwenden, wie etwa HART, WirelessHART, Fieldbus, DeviceNet, WiFi, Ethernet oder ein sonstiges Protokoll.
-
Zwischenspeichern in Ebenen oder Schichten wurde zwar in Bezug auf Bereitstellknoten 110 erörtert, aber die Konzepte und Techniken können selbstverständlich gleichermaßen für Benutzerschnittstellenknoten 112 und/oder sonstige Arten von Knoten 115 des Massendatennetzwerk 100 des Prozesssteuerungssystems gelten. Beispielsweise kann eine Teilmenge der Knoten 108 ein ebenen- oder schichtweises Zwischenspeichern durchführen, während eine andere Teilmenge der Knoten 108 veranlassen kann, dass ihre zwischengespeicherten/erfassten Daten direkt an das Massendatengerät 102 der Prozesssteuerung geliefert wird, ohne in einem Zwischenknoten zwischengespeichert oder vorübergehend gespeichert zu werden. Zusätzlich können Historikerknoten Daten von verschiedenen Arten von Knoten zwischenspeichern, z. B. von einem Bereitstellknoten 110 und von einem Benutzerschnittstellenknoten 112.
-
8 ist ein beispielhaftes Blockschaubild, das detailliertere Konzepte und Techniken veranschaulicht, die durch Verwendung der Gerätedatenempfänger 122 und der Geräteanforderungsbearbeitungseinheiten 135 des Massendatengeräts 102 des Prozesssteuerungssystems erreicht werden können. Insbesondere ist 8 ein beispielhaftes Blockschaubild, das die Verwendung von Gerätedatenempfängern 122 zum Übertragen von Daten (z. B. gestreamte Daten) von den Knoten 108 des Massendatennetzwerks 100 des Prozesssteuerungssystems an das Massendatengerät 102 für eine Speicherung und Historisierung. 8 veranschaulicht vier beispielhafte Knoten 108 von 1, d. h. die Steuerungseinheit 11, eine Benutzerschnittstellenvorrichtung 12, das Drahtlos-Gateway 35 und ein Gateway zu einer Fremdmaschine oder einem Fremdnetzwerk 78. Jedoch können die Techniken und Konzepte, die in Bezug auf 8 erörtert werden, auch für jede beliebige Art und Anzahl von Knoten 108 gelten. Außerdem können, auch wenn 8 nur drei Gerätedatenempfänger 122a, 122b und 122c veranschaulicht, die Techniken und Konzepte, die 8 entsprechen, auch für jede beliebige Art und Anzahl von Gerätedatenempfängern 122 gelten.
-
Bei der in 8 veranschaulichten Ausführungsform enthält jeder der Knoten 11, 12, 35 und 78 eine jeweilige Abtasteinrichtung S11, S12, S35, S78, um Daten zu erfassen, die vom Knoten 11, 12, 35 und 78 erzeugt, empfangen oder sonst beobachtet werden. Die Funktionalität jeder Abtasteinrichtung S11, S12, S35, S78 kann durch einen jeweiligen Prozessor PMCX des jeweiligen Knotens 11, 12, 35, 78 ausgeführt werden. Die Abtasteinrichtung S11, S12, S35, S78 kann veranlassen, dass die erfassten Daten und ein entsprechender Zeitstempel in einem jeweiligen lokalen Arbeitsspeicher M11, M12, M35, M78 vorübergehend gespeichert oder zwischengespeichert werden, beispielsweise auf eine zuvor beschriebene Weise. Von daher enthalten die erfassten Daten Zeitreihendaten oder Echtzeitdaten. Die erfassten Daten können in jedem der Arbeitsspeicher M11, M12, M35 und M78 gespeichert oder zwischengespeichert werden, indem sie das Schema anwenden, das vom Massendatenspeicherbereich 120 der Prozesssteuerung verwendet wird.
-
Jeder Knoten 11, 12, 35 und 78 kann wenigstens manche der zwischengespeicherten Daten an eine oder mehrere Gerätedatenempfänger 122a bis 122c übertragen, z. B. über den Netzwerkhauptstrang 105. Beispielsweise kann mindestens ein Knoten 11, 12, 35, 78 wenigstens manche der Daten aus seinem jeweiligen Arbeitsspeicher MX abschieben, wenn der Zwischenspeicher bis zu einem bestimmten Schwellenwert gefüllt ist. Der Schwellenwert des Zwischenspeichers kann einstellbar sein und wenigstens ein Knoten 11, 12, 35, 78 kann wenigsten manche seiner Daten aus seinem jeweiligen Arbeitsspeicher MX abschieben, wenn eine Ressource (z. B. eine Bandbreite des Netzwerks 105, der Prozessor PMCX oder eine andere Ressource) ausreichend verfügbar ist. Ein Verfügbarkeitsschwellenwert einer bestimmten Ressource kann einstellbar sein.
-
In manchen Fällen kann wenigstens ein Knoten 11, 12, 35, 78 wenigstens manche der in den Arbeitsspeichern MX gespeicherten Daten in periodischen Intervallen abschieben. Die Periodizität eines bestimmten Zeitintervalls, in dem Daten abgeschoben werden, kann auf einer Art der Daten, der Art des Abschubknotens, des Standorts des Abschubknotens und/oder sonstigen Kriterien beruhen. Die Periodizität eines bestimmten Zeitintervalls kann einstellbar sein. Andererseits kann wenigstens ein Knoten 11, 12, 35, 78 Daten als Antwort auf eine Anforderung bereitstellen (z. B. vom Massendatengerät 102 der Prozesssteuerung).
-
In manchen Fällen kann wenigstens ein Knoten 11, 12, 35, 78 wenigstens manche der Daten in Echtzeit streamen, während die Daten von jedem Knoten 11, 12, 35, 78 erzeugt, empfangen oder sonst beobachtet werden (z. B. kann es sein, dass der Knoten die Daten nicht vorübergehend speichert oder zwischenspeichert oder die Daten nur so lange speichert, wie der Knoten braucht, um die Daten für das Streaming vorzubereiten). Beispielsweise können wenigstens manche der Daten nach einem Streaming-Protokoll an einen oder mehrere Gerätedatenempfänger 122 gestreamt werden. Ein Knoten 11, 12, 35, 78 kann als Host für einen Streaming-Dienst fungieren, und wenigstens einer der Datenempfänger 122 und/oder der Datenspeicherbereich 120 kann den Streaming-Dienst abonnieren.
-
Entsprechend können die übertragenen Daten von einem oder mehreren Gerätedatenempfängern 122a bis 122c empfangen werden, z. B. über den Netzwerk-Hauptstrang 105. Ein bestimmter Gerätedatenempfänger 122 kann benannt werden, um Daten von einem oder mehreren bestimmten Knoten zu empfangen und/oder ein bestimmter Gerätedatenempfänger 122 kann benannt werden, um Daten von nur einem oder mehreren bestimmten Arten von Vorrichtungen zu empfangen (z. B. Steuerungseinheiten, Router oder Benutzerschnittstellenvorrichtungen). Außerdem kann ein bestimmter Gerätedatenempfänger 122 benannt werden, um nur eine oder mehrere Arten von Daten zu empfangen (z. B. nur Netzwerkverwaltungsdaten oder nur sicherheitsbezogene Daten).
-
Die Gerätedatenempfänger 122a bis 122c können veranlassen, dass die Daten im Massendatenspeicherbereich 120 gespeichert oder historisiert werden. Beispielsweise können die Daten, die von jedem der Gerätedatenempfänger 122a bis 122c empfangen werden, im Datenspeicherbereich 120 nach dem Massendatenschema der Prozesssteuerung gespeichert werden. Bei der in 8 dargestellten Ausführungsform werden die Zeitreihendaten 120a als getrennt von entsprechenden Metadaten 120b gespeichert veranschaulicht, auch wenn in manchen Fällen wenigstens manche der Metadaten 120b integriert mit den Zeitreihendaten 120a gespeichert werden können.
-
Daten, die über die Vielzahl von Gerätedatenempfänger 122a bis 122c empfangen werden, können so integriert werden, dass Daten von mehreren Quellen kombiniert werden können (z. B. in eine gleiche Gruppe von Reihen des Datenspeicherbereichs 120). In manchen Fällen werden Daten, die über die Vielzahl von Gerätedatenempfängern 122a bis 122c empfangen werden, gereinigt, um Rauschen und uneinheitliche Daten zu entfernen. Ein Gerätedatenempfänger 122 kann eine Datenreinigung und/oder Datenintegration an wenigstens manchen der empfangenen Daten durchführen, bevor die empfangenen Daten gespeichert werden, und/oder das Massendatengerät 102 des Prozesssteuerungssystems kann manche oder alle der empfangenen Daten reinigen, nachdem die empfangenen Daten im Speicherbereich 102 gespeichert wurden. Eine Vorrichtung oder ein Knoten (wie die Knoten 110, 112, 115) kann veranlassen, dass zusätzliche Daten mit Bezug auf die Dateninhalte übertragen werden, und der Gerätedatenempfänger 122 und/oder Massendatenspeicherbereich 120 kann diese zusätzlichen Daten verwenden, um eine Datenreinigung durchzuführen. Wenigstens manche Daten können durch einen Knoten 110, 112, 115 gereinigt werden (wenigstens teilweise), bevor der Knoten 110, 112, 115 veranlasst, dass die Daten zur Speicherung an den Massendatenspeicherbereich 120 übertragen wird.
-
9 veranschaulicht ein Verfahren 1100 zur Wissensgewinnung mit Hilfe von Modellen, die mit dem Datenmodellierungsstudio 109 angelegt wurden. Allgemein ausgedrückt, kann das Verfahren 1100 zur Wissensgewinnung durch eine Wissensgewinnungsanwendung 114 ausgeführt werden, die Hinweise auf Prozesssteuerungsdaten empfängt, die beispielsweise für einen Benutzer interessant sind, und Modelle ausführt, die eine systematische und/oder umfassende Diagnose, Prognose, Analyse, Erkennung von Beziehungen usw. an diesen Daten durchführt, um einen Benutzer zu befähigen, von einer Prozessanlage abgerufene Daten zu entdecken und zu bewerten. In einem allgemeinen Sinn ermöglicht es das Wissensgewinnungsverfahren, das von der Wissensgewinnungsanwendung 114 ausgeführt wird, einem Benutzer, im Massendatengerät 102 gespeicherte Daten anzusehen und zu durchforschen, Daten aus dem Massendatengerät 102 auszuwählen und verschiedene Operationen an diesen Daten durchzuführen (beispielsweise unter Verwendung eines oder mehrerer der Datenmodelle, die auf die oben beschriebene Weise angelegt wurden), Beziehungen oder andere Informationen zu erkennen, die für einen effizienteren Betrieb der Anlage 10, ein Minimieren von Fehlern oder Ausfallzeiten der Anlage 10, ein Maximieren der Qualität der Anlagenergebnisse usw. nützlich sein können. Ferner kann die Wissensgewinnungsanwendung 114 eine Ausgabeexplorationsschnittstelle erzeugen, durch die ein Benutzer diese Informationen ansehen kann, die die Form von grafischen Darstellungen der Ausgaben der Modelle annehmen können, beispielsweise Datenwerte, Diagramme, Kurven, Alarme usw., sowie Beziehungen zwischen der Ausgabe der Datenmodelle und den verschiedenen Software- und Hardwaremodulen, die in der Prozessanlage betrieben werden.
-
In einem allgemeinen Sinn kann das Wissensgewinnungsverfahren durch einen oder mehrere Prozessoren der Schnittstellenstation 103 ausgeführt werden, die als Host für die Wissensgewinnungsanwendung 114 fungiert. Bei manchen Ausführungsformen können einer oder mehrere der Schritte des Verfahrens 1100 auf verschiedene Vorrichtungen in der Prozessanlage 10 verteilt sein, wie etwa eine oder mehrere Client-Vorrichtungen 113, eine oder mehrere Steuerungseinheiten 11, eine oder mehrere Knoten 108 usw. Ferner kann die Ausgabe eines Schritts des Verfahrens 1100 an die Einheit übertragen werden, die den nächsten Schritt durchführt.
-
Ein Prozessor von einer oder mehreren Vorrichtungen wie die Benutzerschnittstellenstation 103 kann automatisch das Wissensgewinnungsverfahren ausführen. Der Prozessor kann über das Massendatennetzwerk oder den Hauptstrang 105 auf die Wissensgewinnungsanwendung 114 und die darin verwendeten Daten zugreifen und kann in manchen Fällen periodisch eines oder mehrere Datenmodelle als Teil des Wissensgewinnungsprozesses ausführen, iterativ eines oder mehrere Datenmodelle als Teil des Wissensgewinnungsprozesses ausführen, kontinuierlich eines oder mehrere Datenmodelle als Teil des Wissensgewinnungsprozesses ausführen (z. B. im Hintergrund oder automatisch ohne Benutzereingriff usw.), entweder im Betrieb der Anlage oder nachdem die Anlage betrieben wurde und Anlagendaten beispielsweise im Massendatengerät 102 gespeichert wurden. Ferner kann der Prozessor die Wissensgewinnungsanwendung 114 im Hintergrund (d. h. von einer Vorrichtung im Prozesssteuerungssystem ohne Interaktion mit dem Benutzer betrieben) oder im Vordergrund (mit Interaktion mit dem Benutzer) ausführen. Hintergrundsprozesse können verwendet werden, um eine gezielte Datenextraktion, Datenmodellierung und sonstige datenanalytische Techniken bereitzustellen, während Daten von der Prozessanlage 10 empfangen werden. Bei manchen Ausführungsformen können die Daten in Echtzeit oder Fast-Echtzeit empfangen werden.
-
Wenn gewünscht, kann das Wissensgewinnungsverfahren iterativ sein, so dass nach jedem Verfahrensschritt, der eine oder die mehreren Prozessoren, die das Verfahren ausführen, die Ausgabe einer Ausführung eines Prozesses oder eines im Prozess verwendeten Datenmodells als Eingabe in einen nächsten Schritt verwenden kann und/oder Einstellungen anhand einer vorherigen Ausgabe vornehmen kann. Das Wissensgewinnungsverfahren 1100 kann automatisiert sein oder einen oder mehrere manuelle Schritte enthalten, die durch einen oder mehrere Benutzer durchgeführt werden, beispielsweise dem Datenmodellierungsstudio 109. Ein Benutzer kann mit Hilfe der Wissensgewinnungsanwendung 114 auch einen oder mehrere Aspekte des Wissensgewinnungsverfahrens konfigurieren. Das Verfahren 1100 kann eine oder mehrere Ausgaben beispielsweise in Form von Anweisungen, um einen Benutzer während der Ausführung des Verfahrens 1100 einmal oder mehrfach zu warnen, einer vorgeschlagenen Abhilfemaßnahme auf der Grundlage der Ausgabe, die automatisch ergriffen werden oder dem Benutzer für weiteres Vorgehen präsentiert werden kann, usw. bereitstellen.
-
Darüber hinaus kann die Wissensgewinnungsanwendung 114, bei der das Verfahren 1100 implementiert ist, nach Bedarf auf den Datenexplorer 155, das Massendatengerät 102 und das Datenmodellierungsstudio 109 zugreifen, um Datenmodelle zu gewinnen oder Datenmodelle zu verwenden oder auf Daten zuzugreifen, die von den Datenmodellen oder sonstigen Komponenten des Wissensgewinnungsverfahrens 1100 verwendet werden sollen. Beispielsweise kann die Wissensgewinnungsanwendung 114 auf eines oder mehrere Datenmodelle zugreifen, die mit Hilfe des Datenmodellierungsstudios 109 angelegt wurde, sowie auf die Laufzeitmaschine 124 des Datenmodellierungsstudios 109 zugreifen, um das eine oder die mehreren solcher Datenmodelle auszuführen, die Daten von der Anlage 10 und/oder vom Massendatengerät 102 verwenden.
-
Beim Betrieb kann die Wissensgewinnungsanwendung 114 eine Vielzahl grafischer Darstellungen von Datenmodellen anzeigen, die an den Daten durchgeführt werden können, und kann eine Schnittstelle zu den in der Anlage verfügbaren Daten (z. B. im Massendatengerät 102 gespeichert) bereitstellen, um es einem Benutzer zu ermöglichen, anzusehen, anzugeben oder auszuwählen, welche Daten verarbeitet werden sollen und welches Datenmodell oder welche Datenmodelle zur Verarbeitung dieser Daten verwendet werden sollen. Selbstverständlich kann ein Datenmodell, wie oben bemerkt, eine beliebige Routine enthalten, die den Betrieb der Prozessanlage 10 modelliert oder schätzt oder die eine Analyse eines Aspekts des Prozessbetriebs in der Prozessanlage 10 anhand erfasster Prozessdaten oder auf der Grundlage von Prozessdaten aus einem realen oder simulierten Prozess durchführt. Die Datenmodelle, die im Wissensgewinnungsverfahren verwendet werden, können vorkonfigurierte Modelle sein oder Modelle sein, die mit Hilfe des Datenmodellierungsstudios 109 angelegt wurden, aus Vorlagen 129 aufgebaut sind und eine oder mehrere Datenquellenvorlagen 129a, Funktionsvorlagen 129b, Datenflussvorlagen 129d und/oder Datenausgabevorlagen 129c enthalten, wie oben beschrieben. Die Datenmodelle können über ein Computernetzwerk (wie etwa den Massendatennetzwerk-Hauptstrang 105 des Prozesssteuerungssystems) abgerufen werden oder als Teil des Wissensgewinnungsverfahrens 1100 erzeugt werden.
-
Wieder auf 9 Bezug nehmend, kann ein Prozessor in Block 1102, der das Wissensgewinnungsverfahren 1100 ausführt, eine Anweisung ausführen, um einem Benutzer eine Benutzerschnittstelle zu präsentieren, damit ein Benutzer ein oder mehrere Arten von im Massendatengerät 102 gespeicherten Prozessdaten, die von der Prozessanlage 10 verfügbar sind, ansehen, ausklappen und auswählen kann. Diese Schnittstelle kann die Beziehungen zwischen Daten, wie in den Anlagenkonfigurationsdaten gespeichert oder bereitgestellt, veranschaulichen, einen Benutzer dazu befähigen, die eigentlichen Daten anzusehen oder zusammenfassende Statistiken der Daten anzusehen, usw. Die Schnittstelle kann den Benutzer befähigen, mehrere verschiedene Arten von Daten oder Datenströme gleichzeitig oder verschiedene Datenströme aus der Anlage auszuwählen, um sie im Wissensgewinnungsprozess zu verwenden. Beispielsweise kann das Verfahren den Benutzer befähigen, den oben beschriebenen Datenexplorer 155 zu verwenden.
-
Somit kann in Block 1102 der Prozessor, der das Verfahren 1100 ausführt, eine Anweisung ausführen, um eine Datenexplorationsschnittstelle zu erzeugen, die im Massendatengerät gespeicherte Prozesssteuerungsdaten anzeigt. Die Prozesssteuerungsdaten können unter anderem Konfigurationsdaten sein, die in der Prozessanlage verwendete Hardware- und Softwaremodule und die konfigurierten Beziehungen zwischen diesen Elementen definieren. Hardwaremodule können unter anderem Benutzerschnittstellen, Server, Datenbanken, Steuerungseinheiten, Feldvorrichtungen, Einheiten, Einheitenmodule, Einrichtungen, Einrichtungsmodule und eine beliebige sonstige Vorrichtung sein, die in der Prozessanlage 10 verwendet werden. Softwaremodule können unter anderem Steuerungssoftware sein, die die Hardware steuert, die den Datenfluss zwischen den Hardware- und Softwaremodulen lenkt, usw. und können Steuerungsroutinen, Datenerfassungsroutinen, Datenabrufroutinen usw. sein. Die Softwaremodule können unter anderem auch Kommunikationssoftware, die die Kommunikation innerhalb der Prozessanlage 10 steuert oder lenkt, Wartungssoftware, die Daten für Wartungszwecke erfasst und verarbeitet, Geschäftsmodule, die Daten verarbeiten, um Geschäftsfunktionen durchzuführen, usw. sein. Selbstverständlich können Prozesssteuerungsdaten Prozessmessdaten sein, die Werten entsprechen, die durch die Hardware- und Softwaremodule erzeugt werden oder in diesen aufgezeichnet werden, beispielsweise Temperaturwerte, Druckwerte usw., Steuerungsdaten wie etwa Steuersignale usw. Die Prozesssteuerungsdaten können auch von einem oder mehreren der Vielzahl von Knoten 108 und/oder dem Massendatengerät 102 gestreamt werden.
-
Die Wissensgewinnungsanwendung 114 kann ferner die Prozesssteuerungsdaten integrieren, damit diese Daten mit Daten von mehreren anderen Quellen der Prozessanlage, Quellen außerhalb der Prozessanlage, externen Datenquellen, Fremddatenquellen usw. angesehen werden können. Beispielsweise können die Daten vom Massendatengerät 102 einer ersten Anlage mit Daten von einem Massendatengerät 102 einer oder mehrerer anderer Prozessanlagen integriert sein. Bei manchen Ausführungsformen können die Prozesssteuerungsdaten in Daten aus einer oder mehreren Prozessanlagen nach anderen Datenschemata wie etwa in Prozessanlage verwendete alte Schemata integriert werden. Die Daten können weiter mit Fremddaten integriert werden, beispielsweise Umweltdaten. Die Umweltdaten können unter anderem Wetterdaten sein, wie etwa Temperatur, Wetterbedingungen usw.
-
Die Datenexplorationsschnittstelle kann hierarchische Konfigurationsdaten enthalten, die eine oder mehrere hierarchische Beziehungen zwischen den Hardware- und Softwaremodulen in der Prozessanlage definieren. Beispielsweise kann die Datenexplorationsschnittstelle eine bestimmte Prozessanlage sowie die bestimmten Hardwareelemente und bestimmte Softwareroutinen, die in der Prozessanlage verwendet werden, definieren. Prozesssteuerungsdaten sind unter anderem auch Verbindungsdaten, die eine oder mehrere Verbindungen zwischen den Hardware- und Softwaremodulen in der Prozessanlage definieren, wie etwa Datenerfassung, Datenabruf, welche Steuerungsroutinen in welchen Steuerungseinheiten angeordnet sind, usw.
-
Darüber hinaus kann ein Block 1104 betrieben werden, um eine Benutzerauswahl eines oder mehrerer Datenmodelle zu empfangen, die auf die ausgewählten Daten oder Datenströme angewandt werden sollen. Die ausgewählten Datenmodelle können Verarbeitungsroutinen definieren, die an der einen oder mehreren der ausgewählten Datenquellen durchgeführt werden sollen, wie etwa eine Datenvorverarbeitungsroutine (eine Ausschnittroutine, eine Ausreißerentfernungsroutine usw.), eine oder mehrere Funktionen, die an den ausgewählten Datenströmen durchgeführt werden sollen, um eine Ausgabe zu erzeugen (eine Korrelationsroutine, eine Mittelungsroutine usw.) und/oder eine oder mehrere Funktionen, die an der Ausgabe des Datenmodells durchgeführt werden sollen, wie etwa eine grafische Darstellung, ein Alarm usw.
-
Beispielsweise können die Datenverarbeitungstechniken Rauschen, uneinheitliche Daten, Ausreißer usw. entfernen. Die Datenverarbeitungstechniken können auch Konvertierungsroutinen sein, die die vorverarbeiteten Daten in ein Datenformat konvertieren, das mit einer Funktionsroutine bzw. einem Funktionsbaustein eines Datenmodells kompatibel ist. Funktionen, die durch die Datenmodelle durchgeführt werden, können unter anderem Datenextraktionstechniken oder sonstige intelligente Verfahren sein, die ein oder mehrere Datenmuster ermitteln oder entdecken.
-
Auf jeden Fall, kann die Wissensgewinnungsanwendung 114, wie in Block 1106 veranschaulicht, eine Auswahl von Prozesssteuerungsdaten empfangen, die eine oder mehrere Prozessdateneingaben definieren, die durch das/die ausgewählte(n) Datenmodell(e) verarbeitet werden sollen. In einem Block 1108 wird das Datenmodell bzw. die -modelle an den ausgewählten Prozesssteuerungsdaten ausgeführt, um die Ausgabe zu erzeugen, die durch die Datenmodelle definiert sind. Die Wissensgewinnungsanwendung 114 kann auf die Laufzeitmaschine 124 des Datenmodellierungsstudios 109 zugreifen, und die Modellausführungsroutine 128 der Laufzeitmaschine 124 verwenden, um die Datenmodelle zu verwenden. In einem Block 1110 kann die Wissensgewinnungsanwendung 114 eine Ausgabenexplorationsschnittstelle erzeugen, damit ein Benutzer die von einem Datenmodell erzeugte Ausgabe ansehen kann. Insbesondere kann die Ausgabenexplorationsschnittstelle eine grafische Darstellung der vom Modell erzeugten Ausgabe, Beziehungen zwischen der Ausgabe und dem Hardware- und Softwaremodulen in der Prozessanlage und andere möglicherweise relevante Daten usw. anzeigen.
-
Die Ausgabenexplorationsschnittstelle ermöglicht es dem Benutzer, Muster zu bewerten und gewünschte oder bedeutungsvolle Datenmuster, Beziehungen zu erkennen usw. Bei manchen Ausführungsformen kann ein Benutzer eine Eingabe tätigen, die eine Auswahl eines gewünschten Datenmusters angibt, und die Wissensgewinnungsanwendung 114 kann ein oder mehrere Datenmodelle ausführen, um nach Paaren oder Gruppen von Daten zu suchen, die diese Beziehung zeigen. Beispielsweise kann ein Benutzer eine Eingabe tätigen, die eine Auswahl angibt, um Datenmuster, die sich auf die Qualität eines Produkts beziehen, oder Muster zwischen Alarm und Temperatur zu erkennen. Eine oder mehrere Vorhersagen können auf der Grundlage der Ergebnisse und/oder der visualisierten Daten erfolgen.
-
Die Wissensgewinnungsanwendung 1100 kann die Schritte 1102 bis 1110 von 9 auch iterativ ausführen. Beispielsweise möchte ein Benutzer auf der Grundlage der Ausgabe einer ersten Ausführung des Modells vielleicht das ausgewählten Datenmodell nach der ersten Ausführung des Modells mit zusätzlichen Prozesssteuerungsdaten betreiben, ein anderes Modell mit denselben Prozesssteuerungsdaten ausführen, usw. Auf diese Weise kann das Verfahren 1100 iterativ sein und einen Benutzer befähigen, die Prozesssteuerungsdaten des Massendatengeräts 102 nutzbar zu machen, um schnell und effizient Modelle auszuführen.
-
Da Wissensgewinnungsanwendung 114 auf die umfassenden getreuen Daten, die in der Massendatenmaschine 102 gespeichert sind, Zugriff hat, ist es nicht nötig, vor der Durchführung des Verfahrens einen oder alle der verschiedenen Parameter einer Prozessanlage zu definieren, die im Wissensgewinnungsverfahren 110 erfasst und verwendet werden sollen. Somit müssen bei der Wissensgewinnungsanwendung 114 die Benutzer nicht zuerst die Daten auswählen, die sie möchten, und die Anlageneinrichtung konfigurieren, um diese gewünschten Daten vor dem Verarbeiten der Daten zu erfassen. Stattdessen muss ein Benutzer, wenn er beim Ausführen des hier beschriebenen Wissensgewinnungsverfahrens Daten auswählt, mit denen Modelle durchgespielt werden sollen, und später feststellt, dass zusätzlich Daten notwendig sind, muss nicht die Anlage neu konfigurieren, um die neuen Daten zu erfassen, und die Anlage betreiben, um die neuen Daten zu erfassen (ein Prozess, der einen beliebigen Zeitraum von wenigen Wochen bis wenige Monate dauern kann), weil die neuen Daten sofort in der Massendatenmaschine 102 verfügbar sind. Da Benutzer selten alle Daten kennen, die notwendig sein können, um gleich zu Beginn beim Anlegen des Modells ein Modell für einen Prozess zu erzeugen, erst recht nicht zu Beginn beim Konfigurieren der Anlage, erleichtert die Wissensgewinnungsanwendung 114 eine schnelle und effiziente komplexe Prozessmodellierung und Analyse.
-
Wenn gewünscht, kann der Prozessor, der die Wissensgewinnungsanwendung 114 ausführt, auch eine oder mehrere Anwendungen ausführen, um über den Massendatennetzwerk-Hauptstrang 105 automatisch auf eine oder mehrere Vorrichtungen zuzugreifen und einen Befehl auszuführen, um den tatsächlichen Betrieb der Prozessanlage auf der Grundlage der Wissensgewinnungsanwendung 114 zu beeinflussen. Es kann jedoch gefährlich sein, der Wissensgewinnungsanwendung 114 zu erlauben, automatische Änderungen zu implementieren. Entsprechend kann ein automatisiertes System, das mit der Anwendung 114 verbunden oder als Teil davon bereitgestellt ist, einen Bediener, einen Ingenieur oder sonstigen Benutzer mit den Ergebnissen der Musterbewertung und/oder Vorhersagen sowie einer oder mehreren Lösungen oder Konfigurationsänderungen, die der Benutzer auf der Grundlage der Musterbewertung vornehmen kann, warnen.
-
In einem Block 1112 können die Ergebnisse der Wissensgewinnung gespeichert oder auf sonstige Weise in das Prozesssteuerungssystem integriert werden. Beispielsweise können die Daten, die aus der Musterbewertung dargestellt werden, zurück in die Anlage eingegeben werden und automatisch an eine oder mehrere Steuerungsstrategien zurückgebunden werden. Eines oder mehrere Muster, die vom Prozess bestimmt werden, können im Massendatengerät 102 oder dem Datenmodellierungsstudio 109 als Vorlage für zukünftigen Gebrauch oder Zugriff gespeichert werden. Die Ausgabe des Wissensgewinnungsprozesses kann in einen anderen Teil der Anlage wie etwa eine Steuerungseinheit, Datenanalysemaschine usw. hochgeladen und/oder dort gespeichert werden. Das Datenmodell kann in einen oder mehrere Teile der Online-Anlage geladen werden und in der Online-Laufzeitumgebung der Anlage ausgeführt werden.
-
Die folgenden zusätzlichen Überlegungen gelten für die vorherige Erörterung. In dieser gesamten Beschreibung können Komponenten, Operationen oder Strukturen in mehrere Instanzen implementiert werden, die als eine einzige Instanz beschrieben sind. Auch wenn einzelne Operationen einer oder mehrerer Routinen oder Verfahren als separate Operationen veranschaulicht und beschrieben sind, können eine oder mehrere Operationen gleichzeitig durchgeführt werden, und nichts erfordert, dass die Operationen in der veranschaulichten Reihenfolge durchgeführt werden müssen. Strukturen und Funktionalität, die in Beispielkonfigurationen als separate Komponenten dargestellt sind, können als eine kombinierte Struktur oder kombinierte Komponente implementiert sein. Ähnlich können Strukturen und Funktionalität, die als eine einzige Komponenten dargestellt sind, als eine separate Komponenten implementiert sein. Diese und andere Variationen, Modifikationen, Hinzufügungen und Verbesserungen fallen in den Umfang des Gegenstands der vorliegenden Offenbarung.
-
Außerdem sind bestimmte Ausführungsformen so beschrieben, dass sie Logik oder eine Anzahl von Komponenten, Module oder Mechanismen oder Einheiten enthalten. Module oder Einheiten können entweder Softwaremodule (z. B. Code, der auf einem nicht-vorübergehenden maschinenlesbaren Medium gespeichert ist) oder Hardwaremodule darstellen. Ein Hardwaremodul ist eine materielle Einheit, die bestimmte Operationen durchführt und kann auf eine bestimmte Weise konfiguriert oder eingerichtet sein. Bei beispielhaften Ausführungsformen können ein oder mehrere Computersysteme (z. B. ein autonomes, Client- oder Server-Computersystem) oder ein oder mehrere Hardwaremodule eines Computersystems (z. B. ein Prozessor oder eine Gruppe von Prozessoren) durch Software (z. B. eine Anwendung oder ein Anwendungsteil) als ein Hardwaremodul konfiguriert sein, das betrieben wird, um bestimmte Operationen wie hier beschrieben durchzuführen.
-
Ein Hardwaremodul kann eine dedizierte Schaltungsanordnung oder Logik umfassen, die dauerhaft konfiguriert ist (z. B. ein spezieller Prozessor wie etwa ein feldprogrammierbares Gate-Array (FPGA) oder ein anwendungsspezifischer integrierter Schaltkreis (ASICs), um bestimmte Operationen durchzuführen. Ein Hardwaremodul kann auch eine programmierbare Logik oder Schaltungsanordnung enthalten (z. B. wie sie in einem universellen oder anderen programmierbaren Prozessor vorliegt), die durch Software dauerhaft konfiguriert ist, um bestimmte Operationen durchzuführen. Es ist ersichtlich, dass die Entscheidung, ein Hardwaremodul in eine dedizierte und dauerhaft konfigurierte Schaltungsanordnung oder in eine dedizierte und vorübergehend konfigurierte Schaltungsanordnung (z. B. durch Software konfiguriert) zu implementieren, durch Überlegungen zum Kosten- und Zeitaufwand motiviert sein kann.
-
Entsprechend sind die Hardwareausdrücke, die hier verwendet werden, so zu verstehen, dass sie materielle Einheiten umfassen, nämlich Einheiten, die physisch aufgebaut, dauerhaft konfiguriert (z. B. fest verdrahtet) oder vorübergehend konfiguriert (z. B. programmiert) sind, um auf eine bestimmte Weise zu funktionieren oder bestimmte hier beschriebene Operationen durchzuführen. Bei der Betrachtung von Ausführungsformen, bei denen Hardwaremodule vorübergehend konfiguriert (z. B. programmiert) sind, muss nicht jedes der Hardwaremodule in jeder zeitlichen Instanz konfiguriert oder instanziiert werden. Wenn beispielsweise Hardwaremodule einen universellen Prozessor umfassen, der mit Software konfiguriert wird, kann der universelle Prozessor zu verschiedenen Zeiten als jeweils verschiedenes Hardwaremodul konfiguriert werden. Software kann entsprechend einen Prozessor beispielsweise dafür konfigurieren, in einer zeitlichen Instanz ein bestimmtes Hardwaremodul und in einer anderen zeitlichen Instanz ein anderes Hardwaremodul zu bilden.
-
Hardware- und Softwaremodule können Informationen für andere Hardware- und Softwaremodule bereitstellen und Informationen von diesen empfangen. Entsprechend können die beschriebenen Hardwaremodule als kommunikativ gekoppelt angesehen werden. Wenn mehrere solcher Hardware- und Softwaremodule gleichzeitig vorhanden sind, kann die Kommunikation durch Signalübertragung erreicht werden (z. B. über geeignete Schaltungsanordnungen, Leitungen und Busse), die die Hardware- und Softwaremodule verbinden. Bei Ausführungsformen, bei denen mehrere Hardware- und Softwaremodule zu verschiedenen Zeiten konfiguriert und instanziiert werden, kann die Kommunikation zwischen solchen Hardware- und Softwaremodulen beispielsweise durch Speicherung und Abruf von Informationen in Speicherstrukturen erreicht werden, auf die die mehreren Hardware- und Softwaremodule Zugriff haben. Beispielsweise kann ein Hardware- und Softwaremodul eine Operation durchführen und die Ausgabe dieser Operation in einer Speichervorrichtung speichern, mit der es kommunikativ gekoppelt ist. Ein weiteres Hardware- und Softwaremodul kann dann zu einem späteren Zeitpunkt auf die Speichervorrichtung zugreifen, um die gespeicherte Ausgabe abzurufen und zu verarbeiten. Hardware- und Softwaremodule können auch eine Kommunikation mit Eingabe- oder Ausgabevorrichtungen initiieren und können eine Ressource verarbeiten (z. B. eine Informationserfassung).
-
Die verschiedenen Operationen von hier beschriebenen beispielhaften Verfahren können durch einen oder mehrere Prozessoren, die vorübergehend konfiguriert (z. B. durch Software) oder dauerhaft konfiguriert sind, durchgeführt werden, um die einschlägigen Operationen durchzuführen. Ob vorübergehend oder dauerhaft konfiguriert, können solche Prozessoren prozessorimplementierte Module bilden, die funktionieren, um eine oder mehrere Operationen oder Funktionen durchzuführen. Die hier genannten Module können bei manchen beispielhaften Ausführungsformen prozessorimplementierte Module enthalten.
-
Ähnlich können die hier beschriebenen Verfahren oder Routinen wenigstens teilweise prozessorimplementiert sein. Beispielsweise können wenigstens manche der Operationen eines Verfahrens von einem oder mehreren Prozessoren oder prozessorimplementierten Hardwaremodulen durchgeführt werden. Die Durchführung bestimmter Operationen kann auf einen oder mehrere Prozessoren verteilt sein, die nicht nur in einer einzigen Maschine liegen, sondern in einer Anzahl von Maschinen installiert sind. Bei manchen beispielhaften Ausführungsformen kann sich der Prozessor oder die Prozessoren an einem Ort befinden (z. B. in einer häuslichen Umgebung, einer Büroumgebung oder als eine Serverfarm), während bei anderen Ausführungsformen die Prozessoren auf eine Anzahl von Orten verteilt sein können.
-
Abschnitte dieser Beschreibung sind dargestellt als Algorithmen oder symbolische Darstellungen von Operationen an Daten, die als Bits oder binäre Digitalsignale in einem Maschinenspeicher gespeichert sind (z. B. ein Computerspeicher). Diese Algorithmen oder symbolische Darstellungen sind Beispiele von Techniken, die von Fachleuten in der Datenverarbeitungstechnik verwendet werden, um die Substanz ihrer Arbeit anderen Fachleuten zu vermitteln. Wie hier verwendet, ist eine „Anwendung“, ein „Algorithmus“ oder eine „Routine“ eine stimmige Abfolge von Operationen oder ähnlicher Verarbeitung, die zu einem gewünschten Ergebnis führt. In diesem Kontext beinhalten Anwendungen, Algorithmen, Routinen und Operationen eine physikalische Manipulation physikalischer Größen. Typischerweise, aber nicht notwendigerweise, können solche Größen die Form elektrischer, magnetischer oder optischer Signale annehmen, die dazu fähig sind, von einer Maschine gespeichert, abgegriffen, übertragen, kombiniert, verglichen oder auf sonstige Weise manipuliert zu werden. Es ist manchmal zweckmäßig, hauptsächlich aus Gründen des allgemeinen Sprachgebrauchs, solche Signale mit Wörtern wie „Daten“, „Inhalt“, „Bits“, „Werte“, „Elemente“, „Symbole“, „Zeichen“, „Ausdrücke“, „Zahlen“, „Zahlzeichen“ oder dergleichen zu bezeichnen. Diese Wörter sind jedoch nur zweckmäßige Etiketten und sind mit geeigneten physikalischen Größen zu verbinden.
-
Sofern nicht speziell anders angegeben, können sich hier enthaltene Erörterungen, bei denen Wörter wie „verarbeiten“, „berechnen“, „rechnen“, „bestimmen“, „darstellen“, „anzeigen“ oder dergleichen verwendet werden, auf Aktionen oder Prozesse einer Maschine (z. B. eines Computers) beziehen, der Daten manipuliert oder umwandelt, die als physikalische (z. B. elektronische, magnetische oder optischen) Größen in einem oder mehreren Speichern (z. B. flüchtiger Speicher, nicht-flüchtiger Speicher oder eine Kombination davon), Registern oder sonstige Maschinenkomponenten dargestellt sind, die Informationen empfangen, speichern, übertragen oder anzeigen.
-
Wie hier verwendet, bedeutet jede Bezugnahme auf „eine Ausführungsform“, dass ein bestimmtes Element, Merkmal, Struktur oder Eigenschaft, die in Verbindung mit der Ausführungsform beschrieben wird, in wenigstens einer Ausführungsform enthalten ist. Das Vorkommen der Formulierung „in einer Ausführungsform“ an verschiedenen Stellen in der Beschreibung bezieht sich nicht jedes Mal auf dieselbe Ausführungsform.
-
Manche Ausführungsformen können mit dem Ausdruck „gekoppelt“ oder „verbunden“ und ihren Ableitungen beschrieben werden. Beispielsweise können manchen Ausführungsformen mit dem Ausdruck „gekoppelt“ beschrieben werden, um darauf hinzuweisen, dass zwei oder mehrere Elemente in direktem physischen oder elektrischen Kontakt stehen. Der Ausdruck „gekoppelt“ kann auch bedeuten, dass zwei oder mehrere Elemente nicht in direktem Kontakt miteinander stehen, aber dennoch miteinander kooperieren oder interagieren. Die Ausführungsformen sind in diesem Kontext nicht eingeschränkt.
-
Wie hier verwendet, sollen die Ausdrücke „umfasst“, „umfassen“, „enthält“, „enthaltend“, „haben/aufweisen“, „habend/aufweisend“ oder eine beliebige Variation davon einen nicht ausschließenden Einschluss abdecken. Beispielsweise ist ein Prozess, ein Verfahren, ein Artikel oder eine Einrichtung, der/die eine Liste von Elementen umfasst, nicht unbedingt auf nur diese Elemente beschränkt, sondern kann andere Elemente enthalten, die nicht ausdrücklich aufgelistet sind oder in einem Prozess, einem Verfahren, einem Artikel oder einer Einrichtung inhärent sein. Ferner bezieht sich „oder“, sofern nicht ausdrücklich das Gegenteil ausgesagt wird, auf ein einschließendes Oder nicht auf ein ausschließendes Oder. Beispielsweise wird eine Bedingung A oder B durch jedes des Folgenden erfüllt: A ist wahr (oder vorhanden) und B ist falsch (oder nicht vorhanden), A ist falsch (oder nicht vorhanden) und B ist wahr (oder vorhanden), und sowohl A als auch B sind wahr (oder vorhanden).
-
Außerdem werden „ein“, „eines“, „eine“ oder „einer“ dazu verwendet, Elemente und Komponenten der hier beschriebenen Ausführungsformen zu beschreiben. Dies geschieht der Zweckmäßigkeit halber und um einen allgemeinen Sinn der Beschreibung wiederzugeben. Diese Beschreibung ist so zu lesen, dass eines oder wenigstens eines enthalten ist, und der Singular schließt den Plural ein, sofern es nicht offensichtlich ist, dass es anders gemeint ist.
-
Beim Lesen dieser Offenbarung werden den Fachleuten noch zusätzliche alternative strukturelle und funktionale Entwürfe zum Implementieren eines Datenmodellierungsstudios zum Konfigurieren und Ausführen von Modellen wie hier offenbart ersichtlich werden. Somit gilt, dass hier zwar bestimmte Ausführungsformen und Anwendungen veranschaulicht und beschrieben wurden, es aber so zu verstehen ist, dass die offenbarten Ausführungsformen nicht auf den genauen Aufbau und die Komponenten, die hier offenbart sind, beschränkt sind. Verschiedenen Modifikationen, Änderungen und Variationen, die Fachleuten ersichtlich sind, können bei der Anordnung, der Funktion und den Details der hier offenbarten Verfahren und Strukturen vorgenommen werden, ohne von dem in den Ansprüchen definierten Geist und Umfang abzuweichen.