DE102012207437B3 - Verfahren zum Betrieb einer speicherprogrammierbaren Steuerung - Google Patents

Verfahren zum Betrieb einer speicherprogrammierbaren Steuerung Download PDF

Info

Publication number
DE102012207437B3
DE102012207437B3 DE102012207437A DE102012207437A DE102012207437B3 DE 102012207437 B3 DE102012207437 B3 DE 102012207437B3 DE 102012207437 A DE102012207437 A DE 102012207437A DE 102012207437 A DE102012207437 A DE 102012207437A DE 102012207437 B3 DE102012207437 B3 DE 102012207437B3
Authority
DE
Germany
Prior art keywords
ontology
axioms
axiom
programmable logic
logic controller
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
DE102012207437A
Other languages
English (en)
Inventor
Stephan Grimm
Michael Watzke
Falco Riccardo Cescolini
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Siemens AG
Original Assignee
Siemens AG
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Siemens AG filed Critical Siemens AG
Priority to DE102012207437A priority Critical patent/DE102012207437B3/de
Priority to US13/887,642 priority patent/US9171254B2/en
Application granted granted Critical
Publication of DE102012207437B3 publication Critical patent/DE102012207437B3/de
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/04Programme control other than numerical control, i.e. in sequence controllers or logic controllers
    • G05B19/05Programmable logic controllers, e.g. simulating logic interconnections of signals according to ladder diagrams or function charts
    • G05B19/056Programming the PLC
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N5/00Computing arrangements using knowledge-based models
    • G06N5/02Knowledge representation; Symbolic representation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N5/00Computing arrangements using knowledge-based models

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • General Engineering & Computer Science (AREA)
  • Computing Systems (AREA)
  • Evolutionary Computation (AREA)
  • Computational Linguistics (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Artificial Intelligence (AREA)
  • Automation & Control Theory (AREA)
  • Databases & Information Systems (AREA)
  • Programmable Controllers (AREA)

Abstract

Die Erfindung betrifft ein Verfahren zum Betrieb einer speicherprogrammierbaren Steuerung (1), welche in einem vorgegebenen Speicher ein oder mehrere Programme basierend auf Zyklen mit einer vorbestimmten Zykluszeit (tCYC) ausführt. Dabei ist in der speicherprogrammierbaren Steuerung eine Methode (RE) zum automatischen Schlussfolgern basierend auf einer Ontologie (ON) und einer Beschreibungslogik (DL) implementiert. Um dies zu ermöglichen, werden zumindest die Konzepte und Rollen der Ontologie (ON) durch ganzzahlige Indexnummern und die Axiome (α) der Ontologie (ON) durch Tupel aus ganzzahligen Indexnummern codiert. Durch diese effiziente Codierung wird berücksichtigt, dass eine speicherprogrammierbare Steuerung nur einen begrenzten Speicher zur Programmausführung aufweist. Ferner wird die Methode zum automatischen Schlussfolgern vor dem Ende eines Zyklus unterbrochen und anschließend am aktuellen Zustand der Programmausführung fortgesetzt. Hierdurch wird dem zyklischen Programmierparadigma einer speicherprogrammierbaren Steuerung Rechnung getragen. Das erfindungsgemäße Verfahren kann für beliebige Arten von speicherprogrammierbaren Steuerungen eingesetzt werden, insbesondere für Steuerungen von Geräten einer Automatisierungsanlage bzw. Geräten zur Energieerzeugung. Vorzugsweise wird dabei die Methode zum automatischen Schlussfolgern zur Diagnose der entsprechenden Geräte verwendet.

Description

  • Die Erfindung betrifft ein Verfahren zum Betrieb einer speicherprogrammierbaren Steuerung sowie eine entsprechende speicherprogrammierbare Steuerung.
  • Speicherprogrammierbare Steuerungen (englisch: PLC = Pragrammable Logic Controller) werden hauptsächlich für die Steuerung und Regelung von technischen Anlagen eingesetzt und dazu durch Steuerungslogik basierend auf boolescher Algebra programmiert. Das Wissen über die Funktionsweise der zu steuernden technischen Anlage bzw. Komponente fließt dabei bei der Programmierung der speicherprogrammierbaren Steuerung über das Expertenwissen des programmierenden Ingenieurs ein und ist somit implizit in den entsprechenden Steueranweisungen enthalten.
  • Die US 2010/0138017 A1 zeigt ein Verfahren zum Betrieb einer speicherprogrammierbaren Steuerung, welche in einem vorgegebenen Speicher ein oder mehrere Programme basierend auf Zyklen mit einer vorbestimmten Zykluszeit ausführt, wobei zumindest ein ausgeführtes Programm eine Methode zum automatischen Schlussfolgern basierend auf einer Ontologie und einer Beschreibungslogik ist, wobei die Ontologie eine Mehrzahl von Datenelementen umfassend zumindest Konzepte und Rollen, darstellt.
  • Es handelt sich hier konkret um ein Verfahren zur Steuerung eines industriellen Prozesses durch ein verteiltes Steuerungssystem, welches die auftragsbezogene Fertigung von Produkten steuert. Dies geschieht durch ein Auftragssystem, welches die eingegangenen Aufträge bearbeitet und kommunikativ mit mehreren Agenten in Verbindung steht, wie z. B. ein Auftrags-Agent, ein Produkt-Agent, ein Arbeitsstationen-Agent, ein Transport-Agent und ein Anlagen-Agent. Diese bestehen z. B. aus speicherprogrammierbaren Steuerungen und deren Software und steuern zusammen die Fertigungsstraße. Diese Agenten sind in der Lage, in standardisierter Form miteinander zu kommunizieren und zu kooperieren, da sie ein wissensbasiertes, dynamisches Modell ihrer Umgebung durch verschiedene Ontologien implementieren (z. B. eine Auftrags-Ontologie, siehe 3, eine Produktionsplan-Ontologie, siehe 4 und eine Transport-Ontologie, siehe 5), in welchen das gespeicherte Vorwissen über die Anlage zur Laufzeit durch Eingaben von Sensoren, Benutzereingaben und Kommunikation mit den anderen Agenten erweitert wird. Diese Ontologien, die in der Ontologiesprache OWL ausgedrückt sein können, werden zusammen mit der Beschreibungslogik für das automatische Schlussfolgern mittels Reasoning-Verfahren verwendet.
  • Auch die EP 2 447 845 A1 zeigt ein Verfahren zum Betrieb einer speicherprogrammierbaren Steuerung, welche in einem vorgegebenen Speicher ein oder mehrere Programme ausführt, wobei zumindest ein ausgeführtes Programm eine Methode zum automatischen Schlussfolgern, basierend auf einer Ontologie und einer Beschreibungslogik, ist, wobei die Ontologie eine Mehrzahl von Datenelementen, umfassend zumindest Konzepte und Rollen, darstellt. Das Verfahren wird insbesondere für die automatische Systemdiagnose verwendet und verwendet mehrere Ontologien, um verschiedene Aspekte des Systems zu repräsentieren.
  • Aufgrund des begrenzten Arbeitsspeichers von speicherprogrammierbaren Steuerungen sowie der zyklischen Programmausführung solcher Steuerungen gibt es derzeit keine Ansätze, welche die Verwendung solcher Steuerungen zum wissensbasierten Problemlösen mittels sog. Reasoning-Verfahren beschreiben. Reasoning-Verfahren dienen dabei zum automatisierten rechnergestützten Schlussfolgern unter Verwendung einer sog. Ontologie und Beschreibungslogik.
  • Aufgabe der Erfindung ist es, ein Verfahren zum Betreiben einer speicherprogrammierbaren Steuerung zu schaffen, welches eine Methode zum automatischen rechnergestützten Schlussfolgern auf der speicherpragrammierbaren Steuerung ausführt.
  • Das erfindungsgemäße Verfahren dient zum Betrieb einer speicherprogrammierbaren Steuerung, welche sich dadurch auszeichnet, dass sie in einem vorgegebenen Speicher, der in seiner Größe begrenzt ist, ein oder mehrere Programme basierend auf Zyklen mit einer vorbestimmten Zykluszeit ausführt. Erfindungsgemäß ist zumindest ein ausgeführtes Programm eine Methode zum automatischen Schlussfolgern basierend auf einer Ontologie und einer Beschreibungslogik.
  • Die in dem erfindungsgemäßen Verfahren verwendete Ontologie beinhaltet eine Mehrzahl von Datenelementen umfassend zumindest Konzepte und Rollen sowie eine Mehrzahl von Axiomen, wobei ein Axiom eine (wahre) Aussage zu einem oder mehreren Datenelementen der Ontologie repräsentiert. Die soeben genannten Begrifflichkeiten der Konzepte, Rollen und Axiome sind dabei hinlänglich bekannte Elemente einer Ontologie.
  • Um in dem begrenzten Speicher einer speicherprogrammierbaren Steuerung nunmehr die Methode zum automatischen Schlussfolgern auszuführen, werden die Datenelemente (d. h., die symbolischen Namen der Datenelemente) jeweils durch ganzzahlige Indexnummern und die Axiome durch Tupel aus ganzzahligen Indexnummern codiert. Dabei umfasst ein jeweiliges Tupel eine den Axiomstyp des Axioms codierende ganzzahlige Indexnummer sowie die Indexnummer oder Indexnummern, welche das oder die Datenelemente codieren, die in der Aussage des Axioms enthalten sind.
  • Um ferner das zyklische Programmierparadigma einer speicherprogrammierbaren Steuerung bei der Methode zum automatischen Schlussfolgern zu berücksichtigen, wird vor dem Ende eines Zyklus die Methode zum automatischen Schlussfolgern unterbrochen und der aktuelle Zustand der Programmausführung der Methode gespeichert, wobei im nächsten Zyklus die Methode zum automatischen Schlussfolgern basierend auf dem gespeicherten aktuellen Zustand der Programmausführung wieder aufgenommen wird. Das erfindungsgemäße Verfahren kann somit nur auf solche speicherprogrammierbare Steuerungen angewendet werden, welche einen geeigneten Unterbrechungsmechanismus zur Verfügung stellen.
  • Das erfindungsgemäße Verfahren ermöglicht erstmalig die Implementierung eines Ontologie-basierten Reasoning-Verfahrens in einer speicherprogrammierbaren Steuerung. Dies wird dadurch erreicht, dass die Ontologie effizient über ganzzahlige Indexnummern codiert wird und ferner die zyklische Ausführung von Programmen durch entsprechende Unterbrechung und Wiederaufnahme des Reasoning-Verfahrens berücksichtigt wird.
  • In einer bevorzugten Ausführungsform der Erfindung ist die Ontologie in einem vorbestimmten Speicherbereich des vorgegebenen Speichers der speicherprogrammierbaren Steuerung hinterlegt, wobei der vorbestimmte Speicherbereich die Tupel aus ganzzahligen Indexnummern enthält. Hierdurch wird ein effizienter Zugriff auf die Ontologie während der Programmausführung gewährleistet.
  • In einer weiteren Ausführungsform werden für zumindest die Konzepte und Rollen und ggf. auch weitere Arten von Datenelementen sowie für die Axiomstypen jeweilige separate Indexmengen verwendet, welche vorzugsweise mit der Ganzzahl Null beginnen und fortlaufen. Hierdurch wird die Ontologie besonders effizient codiert.
  • In einer besonders bevorzugten Ausführungsform wird die Beschreibungslogik EL+ oder EL++ als Basis der Ontologie verwendet, welche aus dem Stand der Technik bekannt sind. Die Ontologie wird insbesondere in der ebenfalls bekannten Ontologiesprache OWL 2 und vorzugsweise OWL 2 EL repräsentiert (siehe hierzu die entsprechende W3C-Empfehlung unter http://www.w3.org/TR/owl2-profiles/). Durch Rückgriff auf diese bekannten Beschreibungslogiken kann auf einfache Weise ein wissensbasiertes Modell und ein Reasoning-basiertes Verfahren in einer speicherprogrammierbaren Steuerung implementiert werden.
  • In einer weiteren bevorzugten Ausführungsform umfasst die Mehrzahl von Datenelementen neben den oben beschriebenen Konzepten bzw. Rollen Individuen und/oder Datatype Properties und/oder Concrete-Domain-Prädikate als weitere Datenelemente, welche durch ganzzahlige Indexnummern codiert werden. Diese weiteren Datenelemente sind an sich bekannt und insbesondere in der EL++-Beschreibungslogik enthalten.
  • In einer Ausgestaltung ist die im erfindungsgemäßen Verfahren verwendete Ontologie eine normalisierte Ontologie, bei der die Axiome aus der ursprünglichen Ontologie in Axiome aus einer gegebenen Anzahl von Axiomstypen (auch als Normalformen-Axiome bezeichnet) umgewandelt sind. Solche Normalformen-Axiome sind durch die jeweils betrachtete Beschreibungslogik vorgegeben. Indem nur eine beschränkte Menge von Axiomstypen verwendet wird, kann die Methode zum automatischen Schlussfolgern besonders speichereffizient in der speicherprogrammierbaren Steuerung realisiert werden.
  • Als Methode zum automatischen Schlussfolgern wird in einer bevorzugten Variante des erfindungsgemäßen Verfahrens eine konsequenz-getriebene Methode und insbesondere der CEL-Algorithmus eingesetzt, welcher u. a. in der Druckschrift [1] beschrieben ist. Konsequenz-getriebene Reasoning-Methoden sind aus den Stand der Technik bekannt und führen das Schlussfolgern regelbasiert mittels vorbestimmter Schlussregeln (englisch: completion rules) aus.
  • In einer bevorzugten Ausführungsform des erfindungsgemäßen Verfahrens werden Schlussfolgerungsergebnisse durch Arrays aus Bits dargestellt. Dabei werden Axiome für solche Axiomstypen, auf die oder mit denen durch die Methode zum automatischen Schlussfolgern geschlossen werden kann, durch ein dem jeweiligen Axiomstyp zugeordnetes mehrdimensionales Array aus Bits repräsentiert, wobei die Dimensionen eines Arrays Indexnummern gemäß den jeweiligen Datenelementen repräsentieren, die in der Aussage des dem jeweiligen Axiomstyp entsprechenden Axioms enthalten sind, so dass durch die jeweiligen Positionen von entsprechenden Bitwerten im Array Axiome repräsentiert werden, wobei durch den Bitwert codiert wird, ob auf das Axiom durch die Methode zum automatischen Schlussfolgern geschlossen wurde. In einer bevorzugten Variante der soeben beschiebenen Ausführungsform werden zur Implementierung einer Variante des CEL-Algorithmus Schlussfolgerungsergebnisse der Methode zum automatischen Schlussfolgern für Axiome des Typs C ⊑ D oder des Typs C ⊑ ∃r.D durch ein dem jeweiligen Axiomstyp zugeordnetes zweidimensionales bzw. dreidimensionales Array aus Bits repräsentiert. Dabei repräsentieren die Dimensionen eines Arrays Indexnummern gemäß den jeweiligen Datenelementen (d. h. Indexnummern der Konzeptnamen und/oder Rollennamen), die in einem Axiom des jeweiligen entsprechenden Axiomstyps vorhanden sind, so dass durch die jeweiligen Positionen von entsprechenden Bitwerten im Array Axiome repräsentiert werden, wobei durch den Bitwert codiert wird, ob auf das Axiom durch die Methode zum automatischen Schlussfolgern geschlossen wurde.
  • In einer weiteren bevorzugten Ausführungsform läuft auf der speicherprogrammierbaren Steuerung ausschließlich die Methode zum automatischen Schlussfolgern ab. Gegebenenfalls besteht jedoch auch die Möglichkeit, dass neben dieser Methode ein oder mehrere weitere Programme in der speicherprogrammierbaren Steuerung ausgeführt werden. Diese Programme sind insbesondere die an sich in der speicherprogrammierbaren Steuerung implementierten Programme, welche in der Regel zur Steuerung einer technischen Anlage bzw. Komponente vorgesehen sind.
  • In einer weiteren Ausgestaltung der Erfindung empfängt und verarbeitet die speicherprogrammierbare Steuerung Messgrößen von einer oder mehreren technischen Komponenten, wobei aktuelle Messgrößen in die Ontologie einfließen, indem aus den aktuellen Messgrößen Axiome generiert werden. Auf diese Weise kann der aktuelle Betriebszustand der mit der speicherprogrammierbaren Steuerung überwachten technischen Komponente in der Methode zum wissensbasierten Schlussfolgern geeignet berücksichtigt werden.
  • In einer besonders bevorzugten Ausführungsform wird mit der Methode zum automatischen Schlussfolgern eine Diagnose von einer oder mehreren technischen Komponenten durchgeführt. Insbesondere gibt die Diagnose dabei einen oder mehrere Ausgabewerte aus, welche eine oder mehrere Fehlfunktionen (sofern vorhanden) der technischen Komponente repräsentieren, woraufhin eine oder mehrere Aktionen durch die speicherprogrammierbare Steuerung ausgelöst werden. Im einfachsten Fall kann die speicherprogrammierbare Steuerung Informationen zu den Fehlfunktionen z. B. an eine zentrale Leitstelle oder an eine übergeordnete Diagnoseeinheit weitergeben. Ebenso kann die speicherprogrammierbare Steuerung von sich aus geeignete Steuerbefehle an die überwachte technische Komponente bzw. die überwachten technischen Komponenten geben, um eine Fehlfunktion zu beheben.
  • Das erfindungsgemäße Verfahren kann auf verschiedenen technischen Gebieten eingesetzt werden. Vorzugsweise wird mit dem Verfahren eine speicherprogrammierbare Steuerung für eine oder mehrere technische Komponenten in der Form von einem oder mehreren Geräten einer Automatisierungsanlage betrieben, insbesondere einer Automatisierungsanlage zur Fertigungsautomatisierung bzw. einer Automatisierungsanlage zur Prozessautomatisierung, bspw. zur Diagnose einer solchen Automatisierungsanlage. Ebenso kann das erfindungsgemäße Verfahren für die speicherprogrammierbare Steuerung von einem oder mehreren Geräten zur Energieerzeugung eingesetzt werden, insbesondere für die Diagnose einer oder mehrerer Turbinen, wie z. B. Gasturbinen, Windturbinen, Dampfturbinen oder dergleichen. Mögliche Anwendungen in den entsprechenden technischen Gebieten sind nicht auf Diagnoseanwendungen beschränkt, sondern das erfindungsgemäße Verfahren kann ggf. auch für besondere Steuerungsaufgaben eingesetzt werden.
  • Neben dem oben beschriebenen Verfahren betrifft die Erfindung ferner eine speicherprogrammierbare Steuerung, welche im Betrieb in einem vorgegebenen Speicher ein oder mehrere Programme basierend auf Zyklen mit einer vorbestimmten Zykluszeit ausführt, wobei zumindest ein ausgeführtes Programm eine Methode zum automatischen Schlussfolgern basierend auf einer Ontologie und einer Beschreibungslogik ist. Die speicherprogrammierbare Steuerung ist dabei derart programmiert, dass das erfindungsgemäße Verfahren bzw. eine oder mehrere bevorzugte Varianten des erfindungsgemäßen Verfahrens mit der speicherprogrammierbaren Steuerung durchführbar sind.
  • Ausführungsbeispiele der Erfindung werden nachfolgend anhand der beigefügten Figuren detailliert beschrieben.
  • Es zeigen:
  • 1 eine schematische Darstellung der Konfiguration einer Ausführungsform einer erfindungsgemäßen speicherprogrammierbaren Steuerung;
  • 2 ein Zeitdiagramm, welches die Problemstellung der Ausführung einer Reasoning-Methode im Rahmen des zyklischen Programmierparadigmas einer speicherprogrammierbaren Steuerung verdeutlicht; und
  • 3 eine Detaildarstellung der speicherprogrammierbaren Steuerung aus 1.
  • 1 zeigt eine schematische Darstellung, welche die Implementierung einer Methode zum rechnergestützten automatischen Schlussfolgern (im Folgenden auch als Reasoner bezeichnet) in einer speicherprogrammierbaren Steuerung (im Folgenden auch als SPS bezeichnet) wiedergibt. Die speicherprogrammierbare Steuerung, welche in 1 mit Bezugszeichen 1 bezeichnet ist, ist dabei für eine technische Komponente bzw. gegebenenfalls auch eine Mehrzahl von technischen Komponenten vorgesehen und übernimmt in der hier beschriebenen Ausführungsform die Diagnose der Komponente(n) basierend auf wissensbasierter Problemlösung mit Hilfe eines Reasoners RE. Die speicherprogrammierbare Steuerung kann z. B. ein entsprechendes Gerät bzw. mehrere Geräte einer Automatisierungsanlage überwachen, um Fehlfunktionen der Anlage zu detektieren.
  • Die Steuerung 1 empfängt entsprechende Messwerte von Sensoren, die den Zustand des durch die Steuerung überwachten Geräts beschreiben und unterzieht diese Sensordaten einer Vorverarbeitung. Diese Vorverarbeitung findet in dem Block SI der 1 statt und bildet die Sensordaten auf entsprechende Axiome einer Ontologie ON ab. Diese Axiome fließen in die Wissensbasis bzw. Ontologie ON ein, welche Teil des Reasoners RE ist. Neben aktuellen Zuständen des Geräts berücksichtigt die Ontologie ON ferner auch (statische) Charakteristika des überwachten Geräts. Das heißt, in der Steuerung 1 ist eine Ontologie ON hinterlegt, welche auf das durch die Steuerung überwachte Gerät ausgelegt ist. Die Implementierung dieser Ontologie erfolgt über eine Konfigurationseinheit 2, welche vorzugsweise ein Personal Computer ist, der über die an sich bekannte OPC-Schnittstelle (angedeutet durch den Pfeil OPC; OPC = OLE for Process Control) mit der speicherprogrammierbaren Steuerung 1 kommuniziert. Die Konfigurationseinheit enthält eine Schnittstelle IN zur Kommunikation mit der SPS 1. Dabei ist eine Einheit CO vorgesehen, welche im Rahmen einer OPC-Kommunikation die Ontologie ON in dem Speicher der SPS hinterlegt (Pfeil P3) und zum anderen Ergebnisse des Reasoners RE empfängt (Pfeil P4). Die Schnittstelle IN wird über eine geeignete, auf der Konfigurationseinheit laufende Applikation AP gesteuert (Pfeil P1).
  • Die Ontologie ON beruht auf einer entsprechenden Beschreibungslogik DL, wobei in der hier beschriebenen Ausführungsform die Beschreibungslogik EL+ verwendet wird, wie weiter unten noch näher beschrieben wird. Die Ontologie beinhaltet entsprechende Konzepte C, Rollen bzw. Relationen r, sowie Axiome α. In der hier beschriebenen Ausführungsform existieren sechs Typen von Axiomen NF1, NF2, ..., NF6, welche auch als Normalformen bezeichnet werden.
  • Die Konfigurationseinheit 2 beinhaltet ferner eine Ontologie-Vorverarbeitungs-Einheit PR, welche über einen entsprechenden Lesebefehl (Pfeil P2) zunächst eine Ontologie-Datei OF einliest. In der hier beschriebenen Ausführungsform basiert die Ontologie-Datei auf der Ontologie-Sprache OWL 2 EL. Die Ontologie-Datei OF wird in der Einheit PR geeignet vorverarbeitet, so dass diese auf einer speicherprogrammierbaren Steuerung verwendet werden kann. Hierzu wird zunächst eine Normalisierung NO durchgeführt, bei der die Axiome der Ontologie auf den begrenzten Satz von Axiomstypen NF1 bis NF6 abgebildet wird, wie weiter unten noch näher beschrieben wird. Ferner wird eine Internalisierung IT dieser normalisierten Ontologie durchgeführt, bei der die entsprechenden Konzepte und Rollen der Ontologie auf ganzzahlige Indexnummern und die Axiome auf Tupel solcher ganzzahliger Indexnummern abgebildet werden. Auch dieser Schritt wird weiter unten noch näher erläutert. Im Rahmen der Konfiguration der SPS 1 erhält man somit im Vorverarbeitungsschritt PR eine geeignet aufbereitete Ontologie, welche dann über die Kommunikations-Einheit CO auf der speicherprogrammierbaren Steuerung 1 hinterlegt wird. Die in der hinterlegten Ontologie enthaltenen Elemente charakterisieren in der hier beschriebenen Ausführungsform das entsprechende Gerät, welches durch die speicherprogrammierbare Steuerung überwacht wird.
  • Bevor auf die erfindungsgemäße kompakte Darstellung der im Reasoner RE verarbeiteten Ontologie eingegangen wird, wird zunächst der generelle Aufbau der Ontologie sowie des Reasoners in der SPS 1 erläutert. Ontologien sind aus dem Bereich der Informationstechnologie weithin bekannt und dienen zur computerverarbeitbaren Repräsentation von Wissen, wobei mit entsprechenden Reasonern aus diesem Wissen über Inferenz neues, implizit in der Ontologie enthaltenes Wissen abgeleitet wird. In der hier beschriebenen Ausführungsform wird eine Ontologie basierend auf der aus dem Stand der Technik bekannten Ontologie-Sprache OWL 2 EL verwendet. Als Beschreibungslogik wird EL+ eingesetzt.
  • Die Syntax und Semantik von EL+ lautet wie folgt:
    Figure 00120001
  • Dabei bezeichnen C und D entsprechende Konzepte und r, r1, ..., rk entsprechende Rollen. Grundlegende Bestandteile zur Darstellung von Wissen in EL+ sind dabei die Konzepte, welche mit einer Menge NC von Konzeptnamen korrespondieren. Ein Konzeptname kann z. B. eine technische Komponente, wie z. B. „Gasturbine”, bezeichnen. Ferner enthält die Ontologie sog. Rollen bzw. Relationen, welche mit einer Menge Nr von Rollennamen korrespondieren, wie z. B. „hasComponent” (deutsch: „weist Komponente auf”). Ontologien umfassen ferner entsprechende Operatoren bzw. Konstruktoren zur Beschreibung von Zusammenhängen zwischen Konzepten und Rollen. Mit Hilfe dieser Konstruktoren werden wahre Aussagen (d. h. Axiome) für die durch die Ontologie beschriebene Domäne repräsentiert. Eine EL+-Ontologie kann beispielsweise einen Satz von Konzept-Inklusions-Axiomen umfassen, beispielsweise in der Form Gas-Turbine ⊑ Turbine. Dieses Axiom bedeutet, dass jede Gasturbine eine Turbine ist. Formal wird gelesen, dass die Menge aller Dinge, die eine Gasturbine sind, eine Teilmenge der Menge aller Dinge ist, die Turbinen sind. Ebenso können Rollen-Inklusions-Axiome vorhanden sein, wie z. B. directlyControls o hasSubComponent ⊑ controls, was der Aussage entspricht, dass eine Steuerung über die Partonomie eines Systems propagiert wird. Das Symbol ⊑ repräsentiert eine Teilmengen- bzw. Subsumptionsbeziehung.
  • In der EL+-Ontologie können Konzept-Beschreibungen ferner aus einfacheren Konzepten und Rollen unter Verwendung der EL+-spezifischen Konstruktoren
    Figure 00130001
    (Schnittmenge) und ∃ (Existenz-Quantor) zusammengesetzt werden. Ein Beispiel für ein komplexes EL+-Konzept-Inklusions-Axiom ist GasTurbine ⊑ ∃hasComponent.Combuster, welches die Aussage repräsentiert, dass jede Gasturbine als Komponente einen Verbrenner umfasst. Formal wird gelesen, dass die Menge aller Dinge, die eine Gasturbine sind, eine Teilmenge der Menge aller Dinge sind, die in einer „hasComponent” Beziehung zu einem Element der Menge Verbrenner stehen. Die Beschreibungslogik EL+ ist weithin aus dem Stand der Technik bekannt und in einer Vielzahl von Veröffentlichungen beschrieben. Ein Merkmal der Beschreibungslogik EL+ besteht darin, dass sie keine „Concept Disjointness” (Disjunktheit von Konzepten) über das sog. Bottom-Konzept ⊥ umfasst. Ebenso gibt es in EL+ keine Nominals {o}, welche es ermöglichen, Informationen über bestimmte Instanzen eines Konzepts auszudrücken. In der hier beschriebenen Ausführungsform der Erfindung werden diese Elemente nicht benötigt.
  • Das Hauptziel des Schlussfolgerns in der Beschreibungslogik EL+ ist eine Klassifikation, welche eine komplette geschlussfolgerte Subsumptionshierarchie der Klassen aufbaut, die in der Ontologie genannt sind. Das heißt, es werden deduktiv alle Konzeptubsumptionen C ⊑ D abgeleitet, welche eine logische Konsequenz der Ontologie sind, was formal ausgedrückt werden kann durch O ⊧ C ⊑ D. Dabei bezeichnet O die Ontologie und C bzw. D bezeichnen die entsprechenden Konzeptnamen.
  • Basierend auf der soeben beschriebenen EL+-Ontologie wird in der speicherprogrammierbaren Steuerung der 1 ein sog. konsequenz-getriebenes Reasoning verwendet, bei dem Wissen über Schlussregeln spezifiziert wird, welche ausgehend von einer oder mehrerer Prämissen und einer erfüllten Bedingung eine entsprechende Konsequenz folgern. In der hier beschriebenen Ausführungsform wird der konsequenz-getriebene CEL-Algorithmus verwendet, der u. a. in der Druckschrift [1] beschrieben ist. Es werden dabei folgende Schlussregeln verwendet:
    Figure 00140001
  • Dabei bezeichnen C, C1, C2, D entsprechende Konzepte und r, s, r1, r2 entsprechende Rollen. Durch den Buchstaben 0, der in obigen Formeln in einer besonderen Symbolschreibweise wiedergegeben ist, wird die Ontologie repräsentiert. Die einzelnen Schlussregeln CR1 bis CR6 sind so zu verstehen, dass, falls die Prämisse(n) oberhalb der horizontalen Linie der Schlussregel als Konsequenzen der Ontologie bekannt sind und falls das Axiom in den eckigen Klammern in der Ontologie enthalten ist, dann ist auch die Konklusion unterhalb der horizontalen Linie der entsprechenden Schlussregel eine gültige Konsequenz der Ontologie.
  • Im Rahmen der hier beschriebenen Ausführungsform der Erfindung wird die ursprüngliche Ontologie gemäß der Ontologie-Datei OF in eine semantisch äquivalente normalisierte Ontologie umgewandelt, welche nur Axiome in den Normalformen (NF1) C1 ⊑ D, (NF2) C1
    Figure 00140001
    C2 ⊑ D, (NF3) C1 ⊑ ∃r.D, (NF4) ∃r.C2 ⊑ D, (NF5) r ⊑ s, und (NF6) r1or2 ⊑ s für atomare Konzepte C1, C2 und D enthält. In den oben genannten Schlussregeln existiert dabei genau eine Schlussregel (CRi) für jedes (NFi)-Axiom in der Ontologie. Ausgehend von den trivialen Tautologien (Aussagen, die immer wahr sind) C ⊑ T und C ⊑ C (gültig für jeden Konzeptnamen C in der normalisierten Ontologie), wird dann der konsequenz-getriebene CEL-Algorithmus basierend auf den obigen Schlussregeln angewendet, um zusätzliche Subsumptionen basierend auf den explizit enthaltenen Informationen der normalisierten Ontologie als logische Konsequenzen abzuleiten. Wenn das Schlussfolgern mit dem CEL-Algorithmus beendet ist (d. h. wenn keine der obigen Regeln mehr anwendbar ist), wurden alle gültigen Subsumptionen abgeleitet.
  • Die oben beschriebene Methode kann durch zwei Abbildungen S:N o / C -> P(N o / C) und R:N o / r -> P(N o / C × N o / C) repräsentiert werden, welche die abgeleiteten Subsumptionen darstellen. N o / C bzw. N o / r bezeichnet die Menge der in der Ontologie enthaltenen Konzepte bzw. Rollen und P repräsentiert die Potenzmenge. Dabei wird berücksichtigt, dass die Prämissen und Konklusionen der Schlussregeln (CR1) bis (CR6) nur zwei Typen von Axiomen umfassen, nämlich C ⊑ D und C ⊑ ∃r.D. Alle Axiome dieser Typen werden durch die obigen Abbildungen S und R wie folgt repräsentiert: C ⊑ D entspricht dem Abbildungs-Eintrag D ∊ S(C) und C ⊑ ∃r.D repräsentiert den Eintrag {C, D} ∊ R(r). Diese Abbildungen werden durch S(C) = {C, T} für jeden Konzeptnamen C und durch R(r) = ∅ für jeden Rollennamen r in der normalisierten Ontologie initialisiert. Das Überprüfen der Prämissen in den obigen Schlussregeln entspricht dabei einem Lookup in den Abbildungen S und R. Analog entsprechen die Konklusionen dem Hinzufügen von Elementen zu der entsprechenden Abbildung. Das Klassifikationsergebnis der Ontologie kann dabei einfach aus den Abbildungen S und R nach Abschluss des Reasonings abgeleitet werden. Zwecks genauerer Beschreibung des CEL-Algorithmus wird auf die Druckschriften [1] und [2] verwiesen.
  • Bei der Verwendung des oben beschriebenen Reasonings in einer speicherprogrammierbaren Steuerung besteht das Problem, dass in einer solchen Steuerung nur ein begrenzter und rein statischer Arbeitsspeicher zur Verfügung steht. Des Weiteren haben speicherprogrammierbare Steuerungen üblicherweise keine in der Firmware eingebauten Funktionen zur Verarbeitung von Zeichenketten, um bspw. effizient mit Konzept- und Rollennamen einer Ontologie umgehen zu können. Zur Lösung dieses Problems wird gemäß 1 eine Internalisierung IT durchgeführt, bei der die Konzeptnamen bzw. Rollennamen der EL+-Ontologie kompakt durch ganzzahlige Indexnummern repräsentiert werden, welche durch das einfache Aufzählen der Elemente in der Menge N o / C bzw. N o / r erhalten werden. Die Indexnummern können beispielsweise in der lexikographischen Reihenfolge der String-Namen der Elemente vergeben werden.
  • Die Indexnummern werden in einer array-basierten, kompakten Ontologie-Repräsentation auf der speicherprogrammierbaren Steuerung verwendet. Die entsprechenden Axiome (NFi) der normalisierten Ontologie erfordern höchstens drei Konzeptnamen bzw. Rollennamen als Parameter. Demzufolge werden in der hier beschriebenen Ausführungsform die normalisierten Axiome α als ein Vier-Tupel α = (T, p1, p2, p3) repräsentiert, wobei T den Axiomstyp der entsprechenden Normalformen NFi (i = 1, ..., 6) repräsentiert und pi die ganzzahligen Indexnummern für die im jeweiligen Axiomtyp verwendeten Konzeptnamen bzw. Rollennamen sind.
  • Auch wenn unterschiedliche Positionen in dem obigen Axioms-Tupel durch verschiedene Bit-Längen in Abhängigkeit von der Nummer des Konzeptes bzw. der Rolle codiert werden können, wurde in der hier beschriebenen Ausführungsform eine Repräsentation gewählt, bei der ein vorbestimmter Speicherplatz von zwei Bytes für jeden ganzzahligen Index pro Position eines Axioms verwendet wird, so dass ein codiertes Axiom eine Gesamtlänge von 8 Bytes hat. Eine Codierung mit einer solchen festen Bitlänge ermöglicht einen effizienten Speicherzugriff. Mit der soeben beschriebenen Codierung der Axiome wird somit die normalisierte Ontologie auf der speicherprogrammierbaren Steuerung durch ein Array fester Länge repräsentiert, dessen Größe in Anzahl Bytes der Anzahl der Axiome der Ontologie multipliziert mit 8 Bytes entspricht.
  • Das im Rahmen des CEL-Reasonings abgeleitete Klassifikationsergebnis (Schlussfolgerungsergebnis, Subsumptionshierarchie), welches in den Abbildungen S und R gespeichert ist, wird in der hier beschriebenen Ausführungsform durch die zwei- und dreidimensionalen Bit-Arrays S[i][j] und R[i][j][k] fester Länge repräsentiert, wobei i, j die Indexnummern der Konzeptnamen und k die Indexnummern der Rollennamen darstellt. Über einen Bitwert an der durch die jeweiligen Indizes adressierten Position im Array wird dabei angezeigt, ob das Axiom durch das Schlussfolgern abgeleitet wurde oder nicht. Ein Bitwert von 1 kann dabei für ein geschlussfolgertes Axiom und ein Bitwert von 0 für ein nicht geschlussfolgertes Axiom stehen. D. h. es gilt beispielsweise stets D ∊ S(C) genau dann wenn, S[i][j] = 1, wobei i der Ganzzahlwert für den Konzeptnamen C und j der Ganzzahlwert für den Konzeptnamen D ist. Analog gilt beispielsweise stets {C, D} ∊ R(r) genau dann wenn, R[i][j][k] = 1, wobei i der Ganzzahlwert für den Konzeptnamen C, j der Ganzzahlwert für den Konzeptnamen D und r der Ganzzahlwert für den Rollennamen r ist.
  • Geht man davon aus, dass unter Umständen alle Axiome der Typen A ⊑ B und A ⊑ ∃r.B abgeleitet werden, ergeben sich die folgenden oberen Grenzen in Anzahl Bits für die Länge der Arrays: lS = (#N O / C)2, lR = (#N O / C)2·#N O / r.
  • Somit ist der Gesamtspeicherbedarf, der zur Darstellung der Schlussfolgerungs-Ergebnisse in S und R benötigt wird, gegeben durch (lS + lR)/8 in Bytes.
  • Neben dem begrenzten Speicherbedarf besteht ein weiteres Problem der Implementierung eines Reasoners in einer SPS darin, dass eine SPS auf einem zyklischen Verarbeitungsparadigma beruht, gemäß dem Programme in dem Speicher der SPS in Zyklen fester zeitlicher Länge ausgeführt werden. Im Gegensatz dazu arbeiten Reasoning-Algorithmen mit variierender Verarbeitungszeit, die von der Anzahl der in einer Ontologie enthaltenen Axiome abhängt. Dieses Problem wird nochmals anhand von 2 verdeutlicht. Diese Figur zeigt ein Zeitdiagramm. Entlang der Linie L1 sind dabei die festen aufeinander folgenden Zykluszeiten tCYC einer SPS wiedergegeben. Die Linie L2 zeigt beispielhaft eine Verarbeitungszeit tCEL für ein CEL-Reasoning. Diese Verarbeitungszeit ist wesentlich länger als ein Zyklus und erstreckt sich beispielsweise über mehr als drei Zyklen. Innerhalb der Verarbeitungszeit tCEL werden entsprechende Regeln des Reasoners ausgeführt, wobei die Prozesszeiten für ausgeführte Regeln beispielhaft mit tR1 bzw. tR3 bzw. tR5 bezeichnet sind. Die Regeln korrespondieren dabei mit entsprechenden Schlussregeln des CEL-Algorithmus.
  • Wie man aus 2 erkennt, treten entsprechende Endzeitpunkte der Zyklen innerhalb der Ausführung von Regeln des Reasoners auf. Ohne weitere Maßnahmen würde deshalb die speicherprogrammierbare Steuerung einen Fehlerzustand einnehmen. Erfindungsgemäß wird dieses Problem dadurch gelöst, dass ein Time-Out-Mechanismus implementiert wird, der die Programmausführung des Reasoners künstlich unterbricht. Dies wird dadurch erreicht, dass bei der Abarbeitung der Regeln im Reasoner geprüft wird, ob ein Timer abgelaufen ist, der ein in Kürze bevorstehendes Zyklusende signalisiert. Es muss in geeigneter Weise festgelegt werden, wie lange vor dem Ende des Zyklus der Timer abläuft. Ist der Timer abgelaufen, wird der Zustand der aktuell bearbeiteten Regel gespeichert. Somit liegt bei der Beendigung eines Zyklus kein ausgeführtes Programm vor, so dass kein Fehlerzustand auftritt. Der gespeicherte Zustand umfasst dabei die Indexvariablen, die der Interaktion über die Strukturen S und R dienen, um die Anwendbarkeit einer Regel zu prüfen, sowie den Typ der gerade verarbeiteten Regel. Zu Beginn des neuen Zyklus wird ausgehend von dem gespeicherten Zustand die Regelabarbeitung fortgesetzt. Die Zykluszeiten werden somit effizient für Berechnungen durch den Reasoner ausgenutzt. Der Overhead durch das Abspeichern der Zustände der verarbeiteten Regeln ist dabei vernachlässigbar gering, so dass fast die gesamte Zeit der Zyklen zu Berechnungen durch den Reasoner genutzt werden kann.
  • Das in der speicherprogrammierbaren Steuerung implementierte Reasoning kann für verschiedene Anwendungszwecke eingesetzt werden. In einer bevorzugten Variante wird das Reasoning zur Diagnose entsprechender Geräte verwendet, welche durch die speicherprogrammierbare Steuerung überwacht werden. Eine solche Art der Diagnose wird im Folgenden beispielhaft für eine über eine SPS überwachte Gasturbine beschrieben.
  • Es wird von einem Szenario ausgegangen, bei dem eine zentrale Steuerstelle für eine Energieerzeugungsanlage mit einer entsprechenden Mehrzahl von Gasturbinen zuständig ist. Jede Anlage umfasst typischerweise eine bis drei Gasturbinen, welche mit einigen hundert Sensoren ausgestattet sind, welche an verschiedenen Bauteilen der Turbine vorgesehen sind. Alle Sensoren stellen typischerweise Messwerte mit einer Rate zwischen 0,1 und 1,0 Hz bereit. In einer entsprechenden speicherprogrammierbaren Steuerung jeder Gasturbine ist nunmehr ein Reasoner zur Diagnose von Betriebszuständen implementiert. Der Reasoner wertet hierzu die Messwerte der Sensoren aus und kann Ursachen für anormale Betriebszustände ermitteln. Diese Ursachen werden dann an die zentrale Steuerstelle weitergegeben.
  • Das diagnostische Wissen über die Gasturbine wird durch Axiome der EL+-Beschreibungslogik repräsentiert. Beispielsweise kann ein Axiom die Aussage enthalten „Vibrationen der Turbinenschaufel und Temperaturfluktuationen in der Verbrennungskammer der Turbine zeigen einen Ausfall der Verbrennungsflamme an”. Diese Aussage kann durch folgendes Axiom in der Ontologie repräsentiert werden:
    System
    Figure 00200001
    ∃hasComponent. (Fan
    Figure 00200002
    ∃hasSymptom.Vibrations)
    Figure 00200003
    ∃hasComponent. (CombChamber
    Figure 00200004
    ∃hasSymptom. TempFluctuations) ⊑ ∃hasDiagnosis. CanFlameFailure
  • Dabei bezeichnen „System”, „Vibrations”, „CombChamber”, „TempFluctuations”, „CanFlameFailure” entsprechende Ontologiekonzepte. System steht für ein generisches technisches System, Fan für die Turbinenschaufel, Vibrations für Vibrationen der Turbinenschaufel, CombChamber für die Verbrennungskammer der Turbine, TempFluctuations für Temperaturfluktuationen und CanFlameFailure für einen Ausfall der Verbrennungsflamme. Rollen werden durch die Begriffe „hasComponent” (deutsch: umfasst Komponente), „hasSymptom” (deutsch: weist Symptom auf) sowie „hasDiagnostics” (deutsch: entspricht Diagnose) repräsentiert.
  • Das Modell der Ontologie, welches die Turbine repräsentiert, umfasst dabei die Axiome Turbine ⊑ ∃hasComponent.Fan und Turbine ⊑ ∃hasComponent.CombChamber, welche Komponenten der Turbine beschreiben. Dieses statische Wissen über die Turbine wird zur Laufzeit durch zusätzliche Axiome basierend auf entsprechenden Sensormessungen ergänzt, die von der speicherprogrammierbaren Steuerung ausgewertet werden. Falls z. B. ein Vibrationssensor an der Nabe der Turbinenschaufel Vibrationen detektiert, die eine vorbestimmte Schwelle überschreiten, wird das entsprechende Axiom Fan ⊑ ∃hasSymptom.Vibrations hinzugefügt. Analog werden bei Temperaturfluktuationen, welche in der Verbrennungskammer durch entsprechende Sensoren detektiert werden, das entsprechende Axiom CombChamber ⊑ ∃hasSymptom.TempFluctuations hinzugefügt. Über den Reasoner wird dann aus der hierdurch resultierenden Ontologie das Axiom Turbine ⊑ ∃hasDiagnosis.CanFlameFailure abgeleitet, welches anzeigt, dass ein Ausfall der Verbrennungsflamme vorliegt. Diese Information kann dann an die zentrale Steuerstelle weitergegeben werden, welche den Betrieb einer entsprechenden Energieerzeugung überwacht und entsprechende Gegenmaßnahmen einleitet.
  • Wie sich aus dem obigen Beispiel ergibt, kann somit in einer speicherprogrammierbaren Steuerung eine entsprechende Diagnosefunktionalität direkt an dem überwachten Gerät realisiert werden, wobei diese Funktionalität über eine wissensbasierte Methode mittels eines Reasoners implementiert wird. Um eine Implementierung eines Reasoners in einer SPS zu erreichen, wurde erfindungsgemäß dabei eine Darstellung der Axiome der Ontologie über ganze Zahlen gewählt. Ferner wird die Programmausführung des Reasoners bei Erreichen entsprechender Zyklusenden der Steuerung immer kurzfristig unterbrochen.
  • Das erfindungsgemäße Verfahren wurde von den Erfindern für verschiedene Test-/Benchmark-Ontologien im Rahmen einer Simulation einer speicherprogrammierbaren Steuerung evaluiert. Es konnte nachgewiesen werden, dass das Verfahren in der Tat die Programmausführung eines Reasoners in akzeptabler Laufzeit auf einer speicherprogrammierbaren Steuerung ermöglicht.
  • 3 zeigt eine Detailansicht der speicherprogrammierbaren Steuerung 1 der 1, welche die erfindungswesentlichen Funktionalitäten der Steuerung verdeutlicht. Die Steuerung 1 empfängt zur Laufzeit entsprechende Sensordaten SD als Eingangsgrößen. Aus diesen Daten werden in einem Axiom-Generator AG, der in 1 in der Sensorvorverarbeitung SI integriert ist, entsprechende Axiome generiert, welche dann dem Reasoner RE mit der darin enthaltenen Wissensbasis zugeführt werden. Die statischen Daten der Wissensbasis werden dabei über die Schnittstelle OPC von der Konfigurations-Einheit 2 empfangen. Basierend auf der Wissensbasis ON, welche die überwachte technische Komponente sowie aktuelle Sensordaten der technischen Komponente repräsentiert, erfolgt dann das Reasoning. Das gefolgerte Ergebnis in der Form von neuen Axiomen wird dann einem Diagnose-Evaluator DI zugeführt (nicht separat in 1 gezeigt). Basierend auf den gefolgerten Diagnoseaussagen, wie z. B. der im Vorangegangenen beschriebenen Aussage, dass die Turbinenflamme ausgefallen ist, löst der Diagnose-Evaluator eine oder mehrere entsprechende Aktionen A aus. Ferner kann das Diagnose-Ergebnis im Reasoner RE weiterverarbeitet werden.
  • Im Folgenden erfolgt eine detaillierte Beschreibung der Funktionsweise des Axiom-Generators AG sowie des Diagnose-Evaluators DI.
  • Der Axiom-Generator AG wird mit Daten, die sich als Annotationen in der Ontologie befinden, geladen und erhält als Input die aktuellen Sensorwerte, die daraufhin in EL+ Axiome bzw. EL++ Axiome (siehe weiter unten beschriebene Ausführungsform) umgewandelt werden und zu den Axiomen der Ontologie ON hinzugefügt werden. Der Axiom-Generator AG besteht prinzipiell aus zwei Funktionen. Die erste wird in jedem Ausführungszyklus der SPS einmal aufgerufen, greift die aktuellen Sensorwerte ab und speichert diese in eine dafür vorgesehene Datenstruktur. Arrays können verwendet werden, um einen längeren Zeitraum zu beobachten und somit Aussagen über einen zeitlichen Verlauf hinweg zu ermöglichen. Die zweite Funktion wird im Initialisierungsschritt des Reasoners RE aufgerufen. Sie hat eine Menge parametrisierbarer Unterfunktionen und eine Datenstruktur mit Konfigurationsdaten. Diese Konfigurationsdaten werden aus den Annotationen der Ontologie bestimmt. Dabei handelt es sich um Datensätze, die folgenden Inhalt haben: Aufzurufende Unterfunktion, auszuwertender Speicherbereich und ein Mapping von möglichen Ergebniswerten auf zur Ontologie hinzuzufügende Axiome, z. B. (f2, 0x18, true -> Distance-Sensor ⊑ ∃ shows.Movement). Diese Axiome werden entsprechend den Sensorwerten dann zu den anderen Axiomen des Reasoners hinzugefügt.
  • Der Diagnose-Evaluator DI prüft nach Beendigung des Reasoning-Prozesses gewisse Axiome, die sich in den Arrays S oder R befinden und erzeugt daraufhin eine vorgefertigte Aktion. Dazu hat der Diagnose-Evaluator, ähnlich wie der Axiom-Generator AG, einen Satz vorgefertiger Funktionen, die aufgerufen werden, wenn ein bestimmtes Axiom, z. B System ⊑ DefectSystem, hergeleitet wurde. Eine solche vorgefertigte Funktion kann bspw. einen Eingriff in die Aktorik ausführen oder eine Nachricht an eine zentrale Stelle abschicken oder den Reasoning-Prozess neu starten. Die Funktion des Diagnose-Evaluators DI kann auch über Annotationen, die sich in der Ontologie befinden, konfiguriert sein. Eine solche Annotation in der Ontologie würde ein Axiom als Bedingung, eine Funktion als Aktion und möglicherweise Parameter für die Funktion enthalten, z. B: (System ⊑ DefectSystem, sendMessageSystemDefect, recipient = SPS13). Diese speziellen Annotationen stellen das Bindeglied zwischen der durch den Axiom-Generator AG und den Diagnose-Evaluator DI bereitgestellten Basisfunktionalitäten, den Sensorwerten der Hardware und der Symbolik der Ontologie her. Auf diese Weise kann ein großer Teil des Wissens bezüglich der Hardware und der Auswertungsoperationen innerhalb der Ontologie beschrieben werden. Somit steigt der Grad an Anwendungsunabhängigkeit der auf der SPS implementierten Funktionalitäten.
  • Im Folgenden wird eine weitere Ausführungsform der Erfindung beschrieben, welche anstatt der Beschreibungslogik EL+ die Beschreibungslogik EL++ umsetzt. Wie aus dem Stand der Technik bekannt ist, enthält EL++ gegenüber EL+ als weitere Datenelemente das Bottom-Konzept, Individuen, Nominals, Concrete Domains, Concept und Role Assertions, sowie Domain und Range Restrictions (grenzen den Definitions- und Wertebereich der Object Properties ein). Die Syntax und Semantik von EL++ ergibt sich aus folgender Tabelle (siehe auch Dokument [2]):
    Figure 00240001
  • Im Internalisierungsschritt IT der 1 werden in dieser Ausführungsform drei neue Elemente auf Indexnummern in der Form von Integer-Werten abgebildet. Dies sind:
    • 1. Individuen – konkrete Instanzen eines Konzepts.
    • 2. Datatype Properties (auch Feature Names genannt) – diese verknüpfen Individuen mit rohen Datenwerten wie Integers, Doubles, Strings, etc. Diese Datenwerte können in einer Concrete Domain (im Folgenden auch als CD abgekürzt) verarbeitet werden.
    • 3. Concrete-Domain-Prädikate – Eine CD ist eine Berechnungsdomäne, die außerhalb einer Beschreibungslogik liegt, wie z. B. Prädikatenlogik oder Arithmetik auf ganzen oder reellen Zahlen. Prädikate enthalten Aussagen bezüglich der CD und verknüpfen die Beschreibungslogik mit dieser. Der Internalisierungsschritt IT erzeugt diese Prädikate für die CD aus bestimmten Axiomen.
  • Die Berechnung und Komplexität einer CD kann beliebig hoch werden. Da somit über die CD komplexere Logiken beschreibbar wären als in EL++ zugelassen, muss die CD die p-admissibility Bedingung (p-admissibility constraint, siehe Dokument [2]) einhalten, die so einschränkend ist, dass die CD den Umfang von EL++ nicht verlässt. Die p-admissibility Bedingung besagt, dass eine CD in polynomieller Zeit berechenbar ist und aus der CD keine Disjunktionen herleitbar sind, was sonst EL++ implizit erweitern würde und daher vermieden werden muss.
  • Da eine CD relativ komplex in ihrer Umsetzung sein kann und auf der speicherprogrammierbaren Steuerung nur wenige Ressourcen zur Verfügung stehen, wird in der Ausführungsform eine Integer-Intervall-Domäne verwendet. Diese hält die p-admissibility Bedingung ein, ist sehr performant in der Berechnung und im Speicherplatzbedarf und besonders nützlich im diagnostischen Anwendungsfall, bei dem mit dem Reasoner der SPS eine technische Komponente diagnostiziert wird. Diese Eigenschaften eignen die Integer-Intervall CD besonders für eine Umsetzung auf der SPS.
  • Die Data Property Assertion ist das einzige neue Axiom, das zu den oben beschriebenen Normalformen NF1 bis NF6 hinzugefügt wird und in der Normalisierung NO der 1 nicht zu einer der anderen sechs Normalformen umgewandelt wird. Es enthält die Aussage über die Verknüpfung von Individuen über ein Datatype Property mit rohen Datenwerten. Ein Beispiel hierzu wäre das Axiom {Engine3} ⊑ ∃ hasTemperature.93, das umgangssprachlich ausdrückt, dass die Temperatur des Motors 3 93° Celsius ist.
  • Zur Umsetzung der beschriebenen CD und der Unterstützung von Individuen werden drei zusätzliche Datenstrukturen verwendet. Diese werden DMAP, PredMap und PathMap genannt.
    • • DMAPi,j ist eine zweidimensionale Integer-Matrix mit Index i ∊ NIndividuen (Menge der internalisierten Identifizierer für Individuen) und j ∊ NFeatureNames (Menge der internalisierten Identifizierer für Feature Names). Die Matrix enthält die Werte der Data Property Assertions, also 16 Bit Integer. Der Wert –32768 (hexadezimal 0x8000) ist hervorgehoben und bedeutet, dass keine Assertion bezüglich diesem Feature Name vorhanden ist.
    • • Die PredMapi Datenstruktur enthält alle Daten der in der Internalisierung IT erzeugten CD Prädikate. PredMap ist ein Array und der Index i ist der internalisierte Identifizierer des Prädikats. Ein Eintrag in diesem Array ist ein Tupel der Form (Relation Type, Integer Value, Feature Name) und besteht aus drei Ganzzahl-Werten. Die für die Integer-Intervall-Domäne realisierten Relation Types sind Operatoren „<”, „≤”, „=”, „≥” und „>”. Integer Value ist ein 16-Bit Integer-Wert im Bereich von –32767 bis +32767. Der Wert –32768 (hexadezimal 0x8000) ist hervorgehoben mit der Bedeutung „Wert nicht vorhanden”. Der Feature Name ist der Identifizierer, d. h. der internalisierte Integer-Wert, der zum Prädikat gehörenden Datatype Property. Ein Beispiel für ein solches Prädikat wäre ≥ 18(hasAge), was alle Individuen umfassen würde, die über 18 sind, also eine hasAge Data Property Assertion mit einem Wert größer oder gleich 18 haben.
    • • Die PathMapi,j Datenstruktur hat denselben Aufbau wie S. Die Semantik ist, ob es zwischen zwei Konzepten einen Pfad über eine beliebige Verkettung von Object Property-Relationen gibt. i und j stehen wie bei S für das jeweilige Konzept. Diese Datenstruktur dient der Performanz-Optimierung.
  • Neben diesen Datenstrukturen wurden in dieser Ausführungsform für EL++ die Schlussregeln des CEL-Algorithmus gemäß dem Dokument [2] erweitert.
  • Literaturverzeichnis:
    • [1] F. Baader, S. Brandt, and C. Lutz. Pushing the EL envelope. In Proc. of the 19th Int. Joint Conf. on Artificial Intelligence (IJCAI 2005), Seiten 364–369, 2005
    • [2] Franz Baader, Sebastian Brandt, Carsten Lutz. Pushing the EL envelope. LTCS-Report, LTCS-05-01, Institute for Theoretical Computer Science, TU Dresden, 2005

Claims (16)

  1. Verfahren zum Betrieb einer speicherprogrammierbaren Steuerung (1), welche in einem vorgegebenen Speicher ein oder mehrere Programme basierend auf Zyklen mit einer vorbestimmten Zykluszeit (tCYC) ausführt, wobei zumindest ein ausgeführtes Programm eine Methode (RE) zum automatischen Schlussfolgern basierend auf einer Ontologie (ON) und einer Beschreibungslogik (DL) ist, wobei: – die Ontologie (ON) eine Mehrzahl von Datenelementen umfassend zumindest Konzepte (C) und Rollen (r) sowie eine Mehrzahl von Axiomen (α) vorbestimmter Axiomstypen (NF1, NF6) beinhaltet, wobei ein Axiom (α) eine Aussage zu einem oder mehreren Datenelementen (C, r) der Ontologie (ON) darstellt; – die Datenelemente (C, r) durch ganzzahlige Indexnummern und die Axiome (α) durch Tupel aus ganzzahligen Indexnummern codiert werden, wobei ein jeweiliges Tupel eine den Axiomstyp (NF1, ..., NF6) des Axioms (α) codierende ganzzahlige Indexnummer sowie die Indexnummer oder Indexnummern umfasst, welche das oder die Datenelemente (C, r) codieren, die in der Aussage des Axioms (α) enthalten sind; – vor dem Ende eines Zyklus die Methode (RE) zum automatischen Schlussfolgern unterbrochen und der aktuelle Zustand der Programmausführung der Methode (RE) gespeichert wird, wobei im nächsten Zyklus die Methode (RE) zum automatischen Schlussfolgern basierend auf dem gespeicherten aktuellen Zustand der Programmausführung wieder aufgenommen wird.
  2. Verfahren nach Anspruch 1, bei dem die Ontologie (ON) in einem vorbestimmten Speicherbereich des vorgegebenen Speichers der speicherprogrammierbaren Steuerung (1) hinterlegt ist, wobei der vorbestimmte Speicherbereich die Tupel aus ganzzahligen Indexnummern enthält.
  3. Verfahren nach Anspruch 1 oder 2, bei dem für zumindest die Konzepte (C) und Rollen (r) sowie für die Axiomstypen (NF1, ..., NF6) jeweilige separate Indexmengen verwendet werden.
  4. Verfahren nach einem der vorhergehenden Ansprüche, bei dem die Ontologie (ON) durch die Ontologiesprache OWL2 oder OWL 2 EL repräsentiert wird und/oder die Beschreibungslogik die EL+ Logik oder die EL++ Logik ist.
  5. Verfahren nach einem der vorhergehenden Ansprüche, bei dem die Mehrzahl von Datenelementen (C, r) Individuen und/oder Datatype Properties und/oder Concrete-Domain-Prädikate als weitere Datenelemente umfasst, welche durch ganzzahlige Indexnummern codiert werden.
  6. Verfahren nach einem der vorhergehenden Ansprüche, bei dem die Methode (RE) zum automatischen Schlussfolgern eine konsequenz-getriebene Methode und insbesondere der CEL-Algorithmus ist.
  7. Verfahren nach einem der vorhergehenden Ansprüche, bei dem Axiome (α) für solche Axiomstypen (NF1, ..., NF6), auf die oder mit denen durch die Methode (RE) zum automatischen Schlussfolgern geschlossen werden kann, durch ein dem jeweiligen Axiomstyp (NF1, ..., NF6) zugeordnetes mehrdimensionales Array aus Bits repräsentiert werden, wobei die Dimensionen eines Arrays Indexnummern gemäß den jeweiligen Datenelementen (C, r) repräsentieren, die in der Aussage des dem jeweiligen Axiomstyp (NF1, ..., NF6) entsprechenden Axioms (α) enthalten sind, so dass durch die jeweiligen Positionen von entsprechenden Bitwerten im Array Axiome (α) repräsentiert werden, wobei durch den Bitwert codiert wird, ob auf das Axiom durch die Methode (RE) zum automatischen Schlussfolgern geschlossen wurde.
  8. Verfahren nach einem der vorhergehenden Ansprüche, bei dem die Ontologie (ON) eine normalisierte Ontologie ist, bei der die Axiome aus der ursprünglichen Ontologie in Axiome (α) aus einer vorgegebenen Anzahl von Axiomstypen gewandelt sind.
  9. Verfahren nach einem der vorhergehenden Ansprüche, bei dem auf der speicherprogrammierbaren Steuerung (1) ausschließlich die Methode (RE) zum automatischen Schlussfolgern abläuft oder dass auf der speicherprogrammierbaren Steuerung (RE) ein oder mehrere weitere Programme neben der Methode (RE) zum automatischen Schlussfolgern ablaufen.
  10. Verfahren nach einem der vorhergehenden Ansprüche, bei dem die speicherprogrammierbare Steuerung (1) Messgrößen von einer oder mehreren technischen Komponenten empfängt und verarbeitet, wobei aktuelle Messgrößen in die Ontologie (ON) einfließen, indem aus den aktuellen Messgrößen Axiome (α) generiert werden.
  11. Verfahren nach einem der vorhergehenden Ansprüche, bei dem mit der Methode (RE) zum automatischen Schlussfolgern eine Diagnose von einer oder mehreren technischen Komponenten durchgeführt wird.
  12. Verfahren nach Anspruch 11, bei dem im Rahmen der Diagnose eine oder mehrere Ausgabewerte ausgegeben werden, welche eine oder mehrere Fehlfunktionen des oder der technischen Komponenten repräsentieren, woraufhin eine oder mehrere Aktionen (A) durch die speicherprogrammierbare Steuerung (1) ausgelöst werden.
  13. Verfahren nach einem der vorhergehenden Ansprüche, bei dem die speicherprogrammierbare Steuerung (1) für eine oder mehrere technische Komponenten in der Form von einem oder mehreren Geräten einer Automatisierungsanlage vorgesehen ist, insbesondere einer Automatisierungsanlage zur Fertigungsautomatisierung oder zur Prozessautomatisierung.
  14. Verfahren nach einem der Ansprüche, bei dem die speicherprogrammierbare Steuerung (1) für eine oder mehrere technische Komponenten in der Form von einem oder mehreren Geräten zur Energieerzeugung vorgesehen ist, insbesondere für eine oder mehrere Turbinen.
  15. Speicherprogrammierbare Steuerung, welche im Betrieb in einem vorgegebenen Speicher ein oder mehrere Programme basierend auf Zyklen mit einer vorbestimmten Zykluszeit (tCYC) ausführt, wobei zumindest ein ausgeführtes Programm eine Methode (RE) zum automatischen Schlussfolgern basierend auf einer Ontologie (ON) und einer Beschreibungslogik (DL) ist, wobei die speicherprogrammierbare Steuerung (1) zur Durchführung eines Verfahrens programmiert ist, bei dem: – die Ontologie (ON) eine Mehrzahl von Datenelementen umfassend zumindest Konzepte (C) und Rollen (r) sowie eine Mehrzahl von Axiomen (α) vorbestimmter Axiomstypen (NF1, NF6) beinhaltet, wobei ein Axiom (α) eine Aussage zu einem oder mehreren Datenelementen (C, r) der Ontologie (ON) darstellt: – die Datenelemente (C, r) durch ganzzahlige Indexnummern und die Axiome (α) durch Tupel aus ganzzahligen Indexnummern codiert werden, wobei ein jeweiliges Tupel eine den Axiomstyp (NF1, ..., NF6) des Axioms (α) codierende ganzzahlige Indexnummer sowie die Indexnummer oder Indexnummern umfasst, welche das oder die entsprechenden Datenelemente (C, r) codieren, die in der Aussage des Axioms (α) enthalten sind; – vor dem Ende eines Zyklus die Methode (RE) zum automatischen Schlussfolgern unterbrochen und der aktuelle Zustand der Programmausführung der Methode (RE) gespeichert wird, wobei im nächsten Zyklus die Methode (RE) zum automatischen Schlussfolgern basierend auf dem gespeicherten aktuellen Zustand der Programmausführung wieder aufgenommen wird.
  16. Speicherprogrammierbare Steuerung nach Anspruch 15, welche zur Durchführung eines Verfahrens nach einem der Ansprüche 2 bis 14 ausgestaltet ist.
DE102012207437A 2012-05-04 2012-05-04 Verfahren zum Betrieb einer speicherprogrammierbaren Steuerung Active DE102012207437B3 (de)

Priority Applications (2)

Application Number Priority Date Filing Date Title
DE102012207437A DE102012207437B3 (de) 2012-05-04 2012-05-04 Verfahren zum Betrieb einer speicherprogrammierbaren Steuerung
US13/887,642 US9171254B2 (en) 2012-05-04 2013-05-06 Method for encoding ontology reasoning on a programmable logic controller

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE102012207437A DE102012207437B3 (de) 2012-05-04 2012-05-04 Verfahren zum Betrieb einer speicherprogrammierbaren Steuerung

Publications (1)

Publication Number Publication Date
DE102012207437B3 true DE102012207437B3 (de) 2013-05-29

Family

ID=48288184

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102012207437A Active DE102012207437B3 (de) 2012-05-04 2012-05-04 Verfahren zum Betrieb einer speicherprogrammierbaren Steuerung

Country Status (2)

Country Link
US (1) US9171254B2 (de)
DE (1) DE102012207437B3 (de)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3118697A1 (de) * 2015-07-16 2017-01-18 Siemens Aktiengesellschaft Wissensbasierte programmierbare logiksteuerung mit flexibler feld-wissensverwaltung und -analytik
CN107077114A (zh) * 2014-10-30 2017-08-18 西门子公司 在可编程逻辑控制器中使用软传感器

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPWO2015136973A1 (ja) * 2014-03-14 2017-04-06 オムロン株式会社 制御装置及び制御システム
CN106104397B (zh) * 2014-03-14 2018-07-10 欧姆龙株式会社 控制装置及控制系统
CN107003647B (zh) * 2014-09-25 2019-08-06 西门子公司 用于执行自动化系统的配置的方法和系统
EP3335083B1 (de) * 2015-08-11 2024-02-14 Siemens Aktiengesellschaft Reichhaltige kontextualisierung von automatisierungsdaten
WO2017099772A1 (en) * 2015-12-10 2017-06-15 Siemens Aktiengesellschaft Distributed embedded data and knowledge management system integrated with plc historian
WO2017153005A1 (en) 2016-03-09 2017-09-14 Siemens Aktiengesellschaft Smart embedded control system for a field device of an automation system
EP3403148A1 (de) * 2016-03-24 2018-11-21 Siemens Aktiengesellschaft Verfahren zur steuerung, steuersystem und anlage

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070233287A1 (en) * 2006-03-30 2007-10-04 Samsung Electronics Co., Ltd. Dynamic generation of tasks in resource constrained devices
US20100138017A1 (en) * 2008-12-01 2010-06-03 Pavel Vrba Ontology-Based System and Method for Industrial Control
WO2010112264A1 (de) * 2009-03-30 2010-10-07 Siemens Aktiengesellschaft Vorrichtung und verfahren zur erstellung eines prozessmodells
EP2447845A1 (de) * 2010-10-19 2012-05-02 Siemens Aktiengesellschaft Verfahren, System und Computerprogramm für eine automatische Diagnose mit logischer Begründungsbeschreibumg

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07319512A (ja) * 1994-05-26 1995-12-08 Fanuc Ltd プログラマブル・ロジック・コントローラ
US5765000A (en) * 1994-12-29 1998-06-09 Siemens Energy & Automation, Inc. Dynamic user interrupt scheme in a programmable logic controller
EP1990741A1 (de) * 2007-05-10 2008-11-12 Ontoprise GmbH Evaluierungsarchitektur
CN101996208B (zh) * 2009-08-31 2014-04-02 国际商业机器公司 用于数据库语义查询回答的方法及系统

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070233287A1 (en) * 2006-03-30 2007-10-04 Samsung Electronics Co., Ltd. Dynamic generation of tasks in resource constrained devices
US20100138017A1 (en) * 2008-12-01 2010-06-03 Pavel Vrba Ontology-Based System and Method for Industrial Control
WO2010112264A1 (de) * 2009-03-30 2010-10-07 Siemens Aktiengesellschaft Vorrichtung und verfahren zur erstellung eines prozessmodells
EP2447845A1 (de) * 2010-10-19 2012-05-02 Siemens Aktiengesellschaft Verfahren, System und Computerprogramm für eine automatische Diagnose mit logischer Begründungsbeschreibumg

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
BAADER, F; BRANDT, S.; LUTZ, C.: Pushing the EL envelope. In Proc. of the 19th Int. Joint Conf. on Artificial Intelligence (IJCAI 2005), Seiten 364-369, 2005 *
BAADER, F; BRANDT, S.; LUTZ, C.: Pushing the EL envelope. In Proc. of the 19th Int. Joint Conf. on Artificial Intelligence (IJCAI 2005), Seiten 364–369, 2005
BAADER, F; BRANDT, S.; LUTZ, C.: Pushing the EL envelope. LTCS-Report, LTCS-05-01, Institute for Theoretical Computer Science, TU Dresden, 2005 *

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107077114A (zh) * 2014-10-30 2017-08-18 西门子公司 在可编程逻辑控制器中使用软传感器
US10739746B2 (en) * 2014-10-30 2020-08-11 Siemens Aktiengesellschaft Using soft-sensors in a programmable logic controller
CN107077114B (zh) * 2014-10-30 2020-09-29 西门子公司 在可编程逻辑控制器中使用软传感器
EP3118697A1 (de) * 2015-07-16 2017-01-18 Siemens Aktiengesellschaft Wissensbasierte programmierbare logiksteuerung mit flexibler feld-wissensverwaltung und -analytik
US10409254B2 (en) 2015-07-16 2019-09-10 Siemens Aktiengesellschaft Knowledge-based programmable logic controller with flexible in-field knowledge management and analytics

Also Published As

Publication number Publication date
US9171254B2 (en) 2015-10-27
US20130297548A1 (en) 2013-11-07

Similar Documents

Publication Publication Date Title
DE102012207437B3 (de) Verfahren zum Betrieb einer speicherprogrammierbaren Steuerung
EP0893746B1 (de) Prozessdiagnosesystem und -Verfahren
DE112019002030T5 (de) Qualitätsüberprüfungs-Verwaltungssystem mit konfigurierbaren Ausnahmeregeln
EP0768584B1 (de) Verfahren zur Überwachung einer Maschine oder Anlage
EP2927819B1 (de) Verfahren zur automatischen verarbeitung einer anzahl von protokolldateien eines automatisierungssystems
DE10346478A1 (de) Flexibler Softwareupdate für Automatisierungssysteme über Internet
EP1664954A1 (de) Bereitstellung von diagnoseinformationen
DE102011054006A1 (de) Überwachung und Diagnostizierung des Betriebs eines Generators
EP3047341B1 (de) System zum rechnergestützten erstellen von regeln zur überwachung und/oder diagnose einer technischen anlage
WO2005055134A2 (de) Inferenzmaschine
EP3607405B1 (de) Verfahren zum parametrieren eines feldgeräts sowie parametrierbares feldgerät
EP1634130B1 (de) Vorrichtung und verfahren zur programmierung und/oder ausführung von programmen für industrielle automatisierungssysteme
DE102008027834A1 (de) System und Verfahren zur vereinfachten Bedienung und/oder Handhabung von Automatisierungs- und/oder Prozessleitsystemen
AT523586A1 (de) Verfahren zur zumindest teilweise dezentralen Berechnung des Gesundheitszustandes von mindestens einer Windkraftanlage
EP2712429A1 (de) Ansteuerung eines technischen systems
EP3968149A1 (de) Erzeugung von steuerungsvorschriften aus schematisierten regelwerken
EP2756361A1 (de) Ansteuerung einer maschine
EP4200680A1 (de) Verfahren zur diagnose eines steuer- und/oder regelungssystems sowie steuer- und/oder regelungssystem
WO2020053336A1 (de) Verfahren zur integration von daten von assets einer technischen anlage in eine plattform, digitale plattform und computerprogrammprodukt
EP1202166A1 (de) System zur Verifikation von Software-Anwendungsmodellen in Ketten von Software-Entwurfswerkzeugen
DE102020130022A1 (de) Überprüfen einer Kompatibilität eines neu zu integrierenden Prozessmoduls einer Automatisierungsanlage
DE102008048862A1 (de) Testmodul und Verfahren zum Testen einer O/R-Abbildungs-Middleware
WO2023099059A1 (de) Verfahren zum überwachen eines produktionsprozesses in echtzeit mittels einer maschinen-lern-komponente
WO2018210621A1 (de) Verfahren zur rechnergestützten erstellung von digitalen regeln zur überwachung des technischen systems
Šošić Learning models of behavior from demonstration and through interaction

Legal Events

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

Effective date: 20130830