DE10242916A1 - System zur Bereitstellung eines Standard-Frameworks für Automatisierungsgeräte - Google Patents

System zur Bereitstellung eines Standard-Frameworks für Automatisierungsgeräte Download PDF

Info

Publication number
DE10242916A1
DE10242916A1 DE10242916A DE10242916A DE10242916A1 DE 10242916 A1 DE10242916 A1 DE 10242916A1 DE 10242916 A DE10242916 A DE 10242916A DE 10242916 A DE10242916 A DE 10242916A DE 10242916 A1 DE10242916 A1 DE 10242916A1
Authority
DE
Germany
Prior art keywords
automation
functionality
specific
independent
devices
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.)
Ceased
Application number
DE10242916A
Other languages
English (en)
Inventor
Rainer Heller
Thomas Jachmann
Norbert Portner
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 DE10242916A priority Critical patent/DE10242916A1/de
Priority to EP03797171A priority patent/EP1570346A2/de
Priority to PCT/DE2003/002753 priority patent/WO2004027608A2/de
Priority to US10/527,914 priority patent/US7757205B2/en
Publication of DE10242916A1 publication Critical patent/DE10242916A1/de
Ceased legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/20Software design
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02PCLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
    • Y02P90/00Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
    • Y02P90/02Total factory control, e.g. smart factories, flexible manufacturing systems [FMS] or integrated manufacturing systems [IMS]

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Stored Programmes (AREA)
  • Organic Low-Molecular-Weight Compounds And Preparation Thereof (AREA)

Abstract

Die Erfindung betrifft ein System sowie ein Verfahren zur Bereitstellung von standardisierter, geräteunabhängiger Funktionalität für das Erstellen einer Lösung im Automatisierungsumfeld. Hierbei werden die spezifischen Eigenschaften und Funktionen unterschiedlicher Automatisierungssysteme (6¶1..n¶) auf den jeweiligen Geräten direkt durch einen systemspezifischen Adapter, dem Automation-Runtime-Layer (ARL) (3¶1..n¶), abgedeckt bzw. generalisiert. Eine weitere, auf dem jeweiligen Gerät implementierte Komponente, das Runtime-Framework (RF) (4), stellt allgemeine Automatisierungs- und/oder Basisfunktionalität zur Verfügung. Die Automatisierungslösung kann,entsprechend standardisiert und auf einem Engineering-System (2) erstellt,unabhängig von der jeweiligen Zielplattform (6¶1..n¶), beliebig portiert werden. Die Nutzung einheitlicher Objektbibliotheken (7) und die Wiederverwendung einmal erstellter Lösungen ist systemunabhängig möglich.

Description

  • Die Erfindung betrifft ein System sowie ein Verfahren zur Bereitstellung standardisierter, geräteunabhängiger Funktionalität für die Erstellung von Steuerungssoftware für Automatisierungssysteme.
  • In der heutigen Automatisierungswelt besitzen Automatisierungsgeräte unterschiedlichen Bautyps jeweils eigene Programmierschnittstellen und haben einen eigenen Befehlssatz, der bei der Programmierung bzw. Implementierung einer Automatisierungslösung auf dem jeweiligen Gerät verwendet wird. Aufgrund dieser Unterschiede werden die im Rahmen einer Automatisierungslösung benötigten verschiedenen Automatisierungssysteme (Geräte einheitlichen Bautyps) unterschiedlich programmiert. Die Programmierung erfolgt dabei auf einem sehr niedrigen Niveau, das heißt es wird, vergleichbar zur Assemblerprogrammierung, eine einfache Syntax verwendet. Zur Realisierung einer komplexen Automatisierungslösung wird entsprechend eine Großzahl einfacher Befehle benötigt. Die so entstehenden Automatisierungslösungen sind spezifisch für die jeweiligen Automatisierungssysteme entwickelt und lassen sich, durch ihre Spezifität bedingt, nicht auf andere Automatisierungssysteme übertragen, welche jeweils wieder einen anderen Befehlssatz haben. Heutzutage werden also spezifische Lösungen mit hohem Programmieraufwand realisiert. Eine Übertragung von Programmen zwischen unterschiedlichen Automatisierungssystemen ist vor allem aufgrund der Tatsache nicht möglich, dass Basismechanismen der Automatisierung, wie das Ansprechen von Zählern oder das Herunterladen von Bausteinen auf jedem Gerätetyp unterschiedlich repräsentiert sind. Entsprechend werden die verschiedenen Automatisierungssysteme heutzutage als Einzelsysteme betrachtet. Jedes System hat seine eigene, spezielle Implementierung und eine eigene Pro grammierschnittstelle. Hieraus resultiert eine Vielzahl von spezifischen Compilern, die die jeweiligen Automatisierungsprogramme für entsprechende Zielsysteme übersetzen. Hinzu kommt, dass sich auch die Programmierumgebungen für die Erstellung einer Automatisierungslösung zwischen den einzelnen Automatisierungssystemen stark unterscheiden. So ist zum Beispiel das Download, also das Herunterladen einer erstellten Software, und das Debuggen, das Beheben von Fehlern im Programmcode für die jeweiligen Automatisierungssysteme unterschiedlich realisiert. Aus diesem Grund existieren Experten für die Programmierung einzelner Systeme. Nur wenige dieser Experten beherrschen verschiedene Automatisierungssysteme gleich gut und kennen deren jeweilige Spezifika.
  • Die Aufgabe der vorliegenden Erfindung ist es, eine standardisierte und vereinfachte Programmierung und Implementierung von Automatisierungslösungen für verschiedene Automatisierungssysteme zu ermöglichen.
  • Diese Aufgabe wird gelöst durch ein System zur Bereitstellung von geräteunabhängiger Funktionalität für Automatisierungsgeräte mit ersten Mitteln zur Kapselung spezifischer Funktionen mindestens eines Automatisierungsgeräts und zum Bereitstellen von Basisfunktionalität des Automatisierungsgeräts und aufden ersten Mitteln aufsetzende zweite Mittel zur Bereitstellung von allgemeiner Funktionalität und/oder Automatisierungsfunktionalität.
  • Der Erfindung liegt die Erkenntnis zugrunde, dass derzeit im Automatisierungsumfeld in der Regel eine heterogene Hardwarewelt anzutreffen ist. Bei der Erstellung einer Automatisierungslösung für eine Anlage ist der Programmierer somit mit verschiedenen Automatisierungsgeräten konfrontiert, die jeweils eine eigene Sprache verstehen. Um die Erstellung einer Lösung zu vereinfachen, wird vorgeschlagen, eine einheitliche Umgebung zu schaffen, auf der Automatisierungslösungen für unterschiedliche Automatisierungssysteme auf standardisierte Weise erstellt werden können. Hierzu wird ein so genanntes Standard-Framework für Automatisierungsgeräte bereitgestellt. Das Standard-Framework bildet eine Abstraktion der untergelagerten Hardware, also der Automatisierungsgeräte und stellt hierbei gleichermaßen allgemeine Funktionalität, wie beispielsweise Download oder Ansprechen von Ein- und Ausgängen zur Verfügung, aber auch Automatisierungsfunktionalität, wie beispielsweise die Bereitstellung von Diagnosedaten oder das Forcen von Variablen. Das definierte Standard-Framework ist speziell auf die Belange der Automatisierungstechnik zugeschnitten und bietet unter anderem eine Vereinheitlichung der Runtime-Umgebung für verschiedene Automatisierungsgeräte sowie die Möglichkeit der Kapselung spezifischer Hardwareeigenheiten. Für die Erstellung des Programms, das auf einer speziellen Hardware läuft, werden hierbei Klassen des Frameworks genutzt. Eine Automatisierungslösung kann somit basierend auf den Funktionen und Automatisierungsobjekten des Standard-Frameworks realisiert werden. Die standardisierte Funktionalität des Frameworks wird hierbei von den Automatisierungsgeräten selbst angeboten. Hierzu sind auf den Automatisierungsgeräten Mittel zur Kapselung spezifischer Funktionen der Automatisierungsgeräte und zum Bereitstellen von Basisfunktionalität in Form des so genannten "Automation-Runtime-Layer" (ARL) realisiert. Der ARL bietet von der jeweiligen Hardware, also dem Automatisierungsgerät, abstrahierende, unabhängige Basisdienste an. Hierzu zählen beispielsweise Framing, Synchronisation, Speichermanagement, Merker sowie Zähler. Der ARL ist plattformspezifische ausgebildet und besitzt die Aufgabe, alle plattformspezifischen Funktionen zu überdecken. Auf dem ARL setzen Mittel zur Bereitstellung allgemeiner Funktionalität in Form des so genannten "Runtime-Framework" (RF) auf. Das RF bietet hierbei höhere Dienste an und stellt neben allgemeiner Funktionalität (wie Speicherverwaltung, Threading, Synchronisation,...) auch Automatisierungsfunktionalität zur Verfügung. Im Gegensatz zum ARL ist die Implementierung des RF nicht plattformspezifisch. Hierdurch kann eine einmalige Implementierung mit geringem Aufwand auf ver schiedene Zielplattformen, das heißt Automatisierungssysteme, portiert werden. Vorteilhaft ist hierbei vor allem, dass bei der Erstellung von Automatisierungslösungen eine Bereitstellung von allgemeinen Automatisierungsdiensten, die generell verwendet werden können, ermöglicht wird. Die Nutzung des vorgestellten Systems führt zu einer Vereinfachung der Implementierung einzelner Automatisierungskomponenten. Es erfolgt eine Standardisierung der Services zum Zugriff auf die Automatisierungsgeräte und zum Zugriff auf automatisierungsspezifische Objekte, Alarme und Prozesswerte. Durch die Abstraktion von der spezifischen Hardware, das heißt eine Unabhängigkeit von speziellen Automatisierungssystemen, wird eine hardwareunabhängige Programmierung der Automatisierungskomponenten ermöglicht. Spezifisches, auf ein Automatisierungssystem zugeschnittenes Expertenwissen, ist für die Erstellung der Automatisierungslösung hierdurch nicht mehr nötig. Ein aufwendiges Erstellen von speziellem Programmcode, der auf relativ niedrigem Niveau ist, erübrigt sich durch die Nutzung des vorgestellten Systems, es ermöglicht vielmehr eine Programmierung unter Nutzung von Hochsprachenprogrammiersprachen. Dadurch wird dem Programmierer ermöglicht, sich auf die Lösung der eigentlichen automatisierungsspezifischen Probleme zu konzentrieren, statt seine Kapazität in die Erzeugung von rudimentären Programmbestandteilen investieren zu müssen. Des Weiteren sorgt das Standard-Framework für eine Durchgängigkeit bei der Diagnose und den Fehleranalysen über die Grenzen der Automatisierungssysteme hinweg. Auch das Zusammenspiel verschiedener Komponenten, die in einer Automatisierungslösung realisiert sind, ist einfacher zu analysieren bzw. zu debuggen. Durch die Nutzung des Standard-Frameworks bietet sich die Möglichkeit, höherwertige Zusatzpakete zu entwickeln, die Objekte oder Funktionen anbieten, welche dann e-benfalls unabhängig von der Zielplattform sein können. Solche technologischen Objekte oder Zusatzpakete können innerhalb des Systems in Form von Bibliotheken hinterlegt werden, um für wiederkehrende Automatisierungsaufgaben zur Verfügung zu stehen. Zudem ermöglicht die Verwendung des Standard- Frameworks ein Portieren von Automatisierungslösungen über verschiedene Gerätefamilien hinweg.
  • Eine weitere vorteilhafte Ausbildung der Erfindung ist dadurch gekennzeichnet, dass die ersten Mittel zur Überdeckung spezifischer Funktionen als automatisierungsgerätespezifische Adapter ausgebildet sind. Die automatisierungsgerätespezifischen Eigenschaften werden vom ARL dadurch auf relativ niedriger Ebene im Gesamtsystem standardisiert, so dass sie in Form von, für ein Programmiersystem allgemein verständlichen, Befehlen zur Verfügung stehen. Hierdurch ist gewährleistet, dass alle Automatisierungsgeräte einheitlich auf niedriger Ebene angesprochen werden können. Eine Standardisierung auf höherer Hierarchieebene innerhalb eines Automatisierungssystems würde unter Umständen zu einem Verlust von automatisierungsgerätespezifischen Eigenschaften führen. Die Verwendung von spezifischen Adaptern sorgt hingegen dafür, dass alle Eigenschaften auch in allgemeiner Form zur Verfügung gestellt werden können.
  • Eine weitere vorteilhafte Ausbildung des Systems ist dadurch gekennzeichnet, dass die Mittel zur Bereitstellung von allgemeiner Funktionalität und/oder Automatisierungsfunktionalität geräteunabhängig ausgebildet sind. Vorteilhaft ist hierbei, dass allgemeine Funktionalität wie beispielsweise die Realisierung eines Downloads nicht in dem gerätespezifischen ARL integriert werden muss. Besonders Automatisierungsfunktionalität, die unabhängig von spezifischen Automatisierungsgeräten ist, wie beispielsweise das Durchführen von Diagnosen, muss nicht auf den spezifischen ARLs realisiert sein. Dadurch dass diese Funktionalitäten geräteunabhängig sind, müssen sie nur einmal implementiert werden und können dann automatisierungsgerätespezifisch unabhängig verwendet werden. Eine einmalige Erstellung des Runtime-Framework (RF) wird hierdurch ermöglicht.
  • Eine weitere vorteilhafte Ausbildung der Erfindung ist dadurch gekennzeichnet, dass das System zur Nutzung durch ein Erstellsystem für die Erstellung von Steuerungssoftware vorgesehen ist. Die vom System bereitgestellte standardisierte sowie geräteunabhängige Funktionalität kann dadurch vorteilhaft von einem gängigen automatisierungstechnischen Editor, einem Programmierwerkzeug oder allgemein, einem Engineering-System verwendet werden. Eine einfachere, schnellere und kostengünstigere Herstellung von Steuerungssoftware wird durch diese vorteilhafte Ausbildung ermöglicht.
  • Eine weitere vorteilhafte Ausbildung der Erfindung ist dadurch gekennzeichnet, dass das System zur Bereitstellung von technologischen Objekten für Automatisierungsgeräte vorgesehen ist. Objekte wie beispielsweise ein Hubtisch, ein Förderband oder Kessel können, wenn sie sich in Form von allgemein wieder verwendbaren Funktionen abbilden lassen in Form einer Bibliothek abgelegt werden. Diese technologischen Objekte stehen dem Programmierer dann standardmäßig mit ihren Eigenschaften und Methoden für die Realisierung einer Automatisierungslösung zur Verfügung. Der Programmieraufwand wird durch diese vorgegebenen Objekte erheblich verringert.
  • Eine weitere vorteilhafte Ausbildung der Erfindung ist dadurch gekennzeichnet, dass ein Speicher zur Speicherung von Automatisierungslösungen für wiederkehrende Aufgaben vorgesehen ist. Die bereits realisierten Automatisierungslösungen können auf dem Automatisierungsgerät hinterlegt werden, und stehen für die Wiederverwendung in neuen Automatisierungslösungen zur Verfügung. Einem zur Erstellung von Steuerungssoftware genutzten Engineering-System können sind sie bekannt. Eine schnellere Entwicklung und auch die Nutzung bereits vorhandenen Lösungswissens wird hierdurch ermöglicht.
  • Eine weitere vorteilhafte Ausbildung der Erfindung ist dadurch gekennzeichnet, dass das System zur Nutzung eines Internet und/oder Intranet zur Übertragung von Daten vorgesehen ist. Hierdurch wird beispielsweise eine vom Ort der Automatisierungsgeräte unabhängige Installation eines zur Programmierung verwendeten Engineering-Systems ermöglicht. Eine erstellte Automatisierungslösung kann über das Internet oder Intranet an die jeweiligen Zielautomatisierungsgeräte gesendet werden. Die Versendung von programmierten Lösungen in Form von Disketten oder anderen Datenträgern erübrigt sich durch diese Ausbildung der Erfindung.
  • Eine weitere vorteilhafte Ausbildung der Erfindung ist dadurch gekennzeichnet, dass eine automatisierungsspezifisch ausgebildete Programmiersprache für die Erstellung einer Steuerungssoftware als Zwischensprache für Automatisierungssprachen, als Zielsprache von Erstellsystemen und zur Abbildung auf die ersten Mittel (dem RF) auf einem Automatisierungsgerät als Zielplattform vorgesehen ist. Die Realisierung dieser automatisierungsspezifisch ausgebildeten Zwischensprache für Automatisierungslösungen bietet den Vorteil, dass spezifische Programmiersprachen, die heutzutage in der Automatisierungstechnik von den Erstellsystemen verwendet werden, auf eine einzige Programmiersprache als Zielsprache abgebildet werden können. vorteilhaft ist hierbei, dass für die Lösung einer Automatisierungsaufgabe für die Erstellung geeignete Editoren und Erstellsysteme verwendet werden können. Diese Editoren und Erstellsysteme haben jeweils ihre eigene Programmiersprache, die dann in die Zwischensprache für Automatisierungssprachen (AIL = Automation Intermediate Language) übersetzt wird. Durch die anschließende Nutzung der AIL wird gewährleistet, dass die speziellen Automatisierungsaufgaben, die mit Hilfe der jeweiligen Editoren gelöst wurden, später problemlos zusammenarbeiten. Vorteilhaft ist hierbei außerdem, dass es zu einer Abstraktion der Programmierwerkzeuge von der zugrundeliegenden Hardware kommt. Die Nutzung der AIL ermöglicht auch das einheitliche Debuggen bzw. die Fehleranalyse der erstellten Automatisierungslösung, da die unterschiedlichen Programmiersprachen zuvor in eine einheitliche Sprache übersetzt worden sind. Die Nutzung der RIL ermöglicht somit erstmals, einen Standard-Debugger zu verwenden. Hierdurch wird der Zugriff vom PC bis hinunter auf die Steuerung ermöglicht.
  • Eine weitere vorteilhafte Ausbildung des Systems ist dadurch gekennzeichnet, dass Compiler (5) zur Abbildung der Sprache auf die Zielplattform vorgesehen sind. Die Programmierwerkzeuge müssen sich ausschließlich auf die Abbildung in die AIL konzentrieren. Die Übersetzung in die hardwarespezifische Version erfolgt durch die speziellen Compiler. Eine Realisierung der entsprechenden Lösung auf eine bestimmte Zielplattform hin muss nicht erfolgen. Hierdurch wird die Grundlage für die Erstellung hardwareunabhängiger Automatisierungskomponenten gebildet. Eine Automatisierungslösung läuft auf einem Automatisierungsgerät genau dann, wenn die Anforderungen an den jeweiligen RRL erfüllt sind. Die Anzahl der dafür benötigten Compiler verringert sich, da nicht jede mögliche Editor-Automatisierungssystem-Kombination ihren eigenen Compiler benötigt. Es werden nur System- bzw. Editorenspezifische Compiler in die AIL und von der AIL benötigt.
  • Im Folgenden wird die Erfindung anhand der in den Figuren dargestellten Ausführungsbeispiele näher beschrieben und erläutert. Es zeigen:
  • 1 eine schematische Darstellung eines Ausführungsbeispiels des Standard-Frameworks für Automatisierungssysteme,
  • 2 eine schematische Darstellung der Verwendung einer automatisierungsspezifischen Zwischensprache.
  • 1 zeigt eine schematische Darstellung eines Ausführungsbeispiels eines Standard-Frameworks zur Bereitstellung geräteunabhängiger, standardisierter Funktionalität für unterschiedliche Automatisierungssysteme 6 1..n. Auf den Automatisierungssystemen 6 1..n setzen systemspezifische Adapter 3 1..n, so genannte Automation-Runtime-Layer (ARL) auf. Die ALR 3 1..n überdecken automatisierungsgerätespezifische Funktionen und stellen Basisfunktionalität der Automatisierungssysteme 6 1..n zur Verfügung. Auf den Adaptern 3 1..n setzen automatisierungssystemunabhängige Runtime-Frameworks (RF) 4 auf. Die RFs 4 stellen allgemeine Funktionalität und Automatisierungsfunktionalität zur Verfügung. Die Automatisierungslösung wird mit Hilfe eines Engineering-Systems 2 erstellt. Hierzu kann auf eine Bibliothek mit technologischen Objekten 7 zurückgegriffen werden. Bereits realisierte Automatisierungslösungen können in einem Speicher 8 auf den Automatisierungsgeräten zur Wiederverwendung hinterlegt werden. Die mittels des Engineering-Systems erstellte Software wird mit Hilfe der Compiler 5 1..n für die jeweiligen Automatisierungssysteme 6 1..n in eine Runtimeversion übersetzt. Die Daten werden mit Hilfe einer Datenübertragungsvorrichtung 9 übertragen.
  • Die Besonderheit des in 1 dargestellten Systems 1 besteht darin, dass auf einem beliebigen Engineering-System 2 eine standardisierte, geräteunabhängige Automatisierungslösung erstellt werden kann. Diese Besonderheit wird dadurch gewährleistet, dass die automatisierungssystemspezifischen Eigenschaften mit Hilfe der ARL 3 1..n überdeckt werden. Im Zusammenwirken mit dem systemunabhängigen RF 4, welches weitere Funktionalität bereitstellt, steht auf den Automatisierungsgeräten 6 1..n eine vereinheitlichte Ebene zur Verfügung, auf der mit Hilfe höherwertiger Programmiersprachen eine Automatisierungslösung realisiert werden kann. Dies ermöglicht die Verwendung allgemeiner Bausteine, wie beispielsweise technologischen Objekten 7, die dem Engineering-System zur Verfügung stehen. Eine spezifische Implementierung der jeweiligen Lösung für die einzelnen Automatisierungssysteme 6 1..n erübrigt sich auf diese Weise. Einmal entwickelte Lösungen können geräte- und systemunabhängig wieder verwendet werden. Der jeweilige Compiler 5 1..n sorgt dann für eine entsprechende Übersetzung des allgemeinen Programmcodes in eine vom jeweiligen Automatisierungssystem 6 1..n interpretierbare Form. Allgemein wird durch das vorgestellte System die Implementierung einer Automatisierungslösung enorm vereinfacht: Automatisierungssystemspezifisches Expertenwissen ist nicht mehr notwendig und eine Wiederverwendung bereits implementierter Lösungen ist möglich.
  • 2 zeigt die beispielhafte Verwendung einer automatisierungsspezifischen Programmiersprache als Zwischensprache 10 zwischen Programmiersprachen automatisierungstechnischer Editoren 12 und automatisierungsgerätespezifischen Sprachen. Die mittels automatisierungsspezifischer Editoren 12 erstellten Programmcodes werden mit Hilfe von spezifischen Compilern 11 in die Zwischensprache 10 übersetzt. Aus der Zwischensprache heraus werden mittels Compiler 5 1..n die Anweisungen in automatisierungssystemspezifische Anweisungen übersetzt. Die Daten können hierbei auf die Automatisierungsgeräte 6 1..n über ein Intranet bzw. Internet 13 übertragen werden.
  • Der wesentliche Vorteil der in 2 dargestellten schematischen Ausbildung des Systems mit einer Zwischensprache 10 für Automatisierungssysteme (AIL = Automation Intermediate Language) besteht darin, dass die Menge der zu verwendenden Compiler, die für die Erstellung einer Automatisierungslösung verwendet werden müssen, wesentlich reduziert werden kann. Ohne die Verwendung einer AIL muss jede verwendete Programmiersprache eines automatisierungsspezifischen Editoren 12 1..m mittels eines speziellen Compilers für die konkrete Zielplattform 6 1..n übersetzt werden. Hieraus ergibt sich eine Menge von n*m Compilern für eine Menge von m Editoren und n Automatisierungsgeräten. Bei der Verwendung der Zwischensprache 10 übersetzen die Compiler 11 1..m ihren Quellcode in die Zwischensprache 10. Von der Zwischensprache wird der Code mit Hilfe systemspezifischer Compiler 5 1..n in die Sprache der Zielplattform 6 1..n übersetzt. Bei der Verwendung der AIL sind somit nur noch n+m Compiler notwendig, um eine spezifische Automatisierungslösung zu realisieren. Außerdem kann ein Großteil der Realisierung innerhalb der AIL selbst erstellt werden. Somit vereinfacht sich die Erstellung einer Automatisierungslösung um ein Vielfaches.
  • Zusammenfassend betrifft die Erfindung ein System sowie ein Verfahren zur Bereitstellung von standardisierter, geräteunabhängiger Funktionalität für das Erstellen einer Lösung im Automatisierungsumfeld. Hierbei werden die spezifischen Eigenschaften und Funktionen unterschiedlicher Automatisierungssysteme 6 1.. n auf den jeweiligen Geräten direkt durch einen systemspezifischen Adapter, dem Automation-Runtime-Layer (ARL) 3 1..n abgedeckt, bzw. generalisiert. Eine weitere, auf dem jeweiligen Gerät implementierte Komponente, das Runtime-Framework (RF) 4 stellt allgemeine Automatisierungs- und/oder Basisfunktionalität zur Verfügung. Die Automatisierungslösung kann entsprechen standardisiert auf einem Engineering-System 2 erstellt unabhängig von der jeweiligen Zielplattform 6 1..n beliebig portiert werden. Die Nutzung einheitlicher Objektbibliotheken 7 und die Wiederverwendung einmal erstellter Lösungen ist systemunabhängig möglich.

Claims (20)

  1. System zur Bereitstellung von geräteunabhängiger Funktionalität für Automatisierungsgeräte mit – ersten Mitteln (3) zur Kapselung spezifischer Funktionen mindestens eines Automatisierungsgeräts (6) und zum Bereitstellen von Basisfunktionalität des Automatisierungsgeräts (6) und – auf den ersten Mitteln (3) aufsetzende zweite Mittel (4) zur Bereitstellung von allgemeiner Funktionalität und/oder Automatisierungsfunktionalität.
  2. System nach Anspruch 1, dadurch gekennzeichnet, dass die ersten Mittel (3) als automatisierungsgerätespezifische Adapter ausgebildet sind.
  3. System nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, dass die zweiten Mittel (4) geräteunabhängig ausgebildet sind.
  4. System nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, dass das System zur Nutzung durch ein Erstellsystem (2) für die Erstellung von Steuerungssoftware vorgesehen ist.
  5. System nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, dass das System zur Bereitstellung von technologischen Objekten (7) für Automatisierungsgeräte (61 ..n ) vorgesehen ist.
  6. System nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, dass ein Speicher (8) zur Speicherung von Automatisierungslösungen für wiederkehrende Aufgaben vorgesehen ist.
  7. System nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, dass das System zur Nutzung eines Internet und/oder Intranet (13) zur Übertragunq von Daten vorgesehen ist.
  8. Verfahren zur Bereitstellung von geräteunabhängiger Funktionalität für Automatisierungsgeräte bei dem – spezifische Funktionen mindestens eines Automatisierungsgeräts (6) überdeckt werden und Basisfunktionalität des Automatisierungsgeräts (6) bereitgestellt wird, – allgemeine Funktionalität und/oder Automatisierungsfunktionalität bereitgestellt wird.
  9. Verfahren nach Anspruch 8, dadurch gekennzeichnet, dass automatisierungsgerätespezifische Adapter auf den Automatisierungsgeräten (6) verwendet werden.
  10. Verfahren nach einem der Ansprüche 8 oder 9, dadurch gekennzeichnet, dass die allgemeine Funktionalität und/oder Automatisierungsfunktionalität geräteunabhängig bereitgestellt wird.
  11. Verfahren nach einem der Ansprüche 8 bis 10, dadurch gekennzeichnet, dass ein Erstellsystem (2) für die Erstellung von Steuerungssoftware genutzt wird.
  12. Verfahren nach einem der Ansprüche 8 bis 11, dadurch gekennzeichnet, dass technologische Objekte (7) für Automatisierungsgeräte (61..n ) bereitgestellt werden.
  13. Verfahren nach einem der Ansprüche 8 bis 12, dadurch gekennzeichnet, dass Automatisierungslösungen für wiederkehrende Aufgaben gespeichert werden.
  14. Verfahren nach einem der Ansprüche 8 bis 13, dadurch gekennzeichnet, dass eine Internet und/oder Intranet (13) zur Übertragung von Daten genutzt wird.
  15. Automatisierungsspezifisch ausgebildete Programmiersprache für die Erstellung einer Steuerungssoftware für ein System sowie für ein Verfahren nach den Ansprüchen 1 bis 14.
  16. Programmiersprache nach Anspruch 15, dadurch gekennzeichnet, dass die Programmiersprache – als Zwischensprache für Automatisierungssprachen, – als Zielsprache von Erstellsystemen (2) und – zur Abbildung auf die ersten Mittel (3) auf einem Automatisierungsgerät (6) als Zielplattform vorgesehen ist.
  17. Programmiersprache nach den Ansprüchen 15 oder 16, dadurch gekennzeichnet, dass Compiler (5) zur Abbildung der Programmiersprache auf die Zielplattform vorgesehen sind.
  18. Automatisierungsgerät mit – ersten Mitteln (3) zur Überdeckung spezifischer Funktionen und zum Bereitstellen von Basisfunktionalität des Automatisierungsgeräts (6) und – auf den ersten Mitteln aufsetzende zweite Mittel (4) zur Bereitstellung von allgemeiner Funktionalität und/oder Automatisierungsfunktionalität.
  19. Automatisierungsgerät nach Anspruch 18, dadurch gekennzeichnet, dass die ersten Mittel (3) als automatisierungsgerätespezifische Adapter ausgebildet sind.
  20. Automatisierungsgerät nach Anspruch 18, dadurch gekennzeichnet, dass die zweiten Mittel (4) geräteunabhängig ausgebildet sind.
DE10242916A 2002-09-16 2002-09-16 System zur Bereitstellung eines Standard-Frameworks für Automatisierungsgeräte Ceased DE10242916A1 (de)

Priority Applications (4)

Application Number Priority Date Filing Date Title
DE10242916A DE10242916A1 (de) 2002-09-16 2002-09-16 System zur Bereitstellung eines Standard-Frameworks für Automatisierungsgeräte
EP03797171A EP1570346A2 (de) 2002-09-16 2003-08-18 System zur bereitstellung eines standard-frameworks für automatisierungsgeräte
PCT/DE2003/002753 WO2004027608A2 (de) 2002-09-16 2003-08-18 System zur bereitstellung eines standard-frameworks für automatisierungsgeräte
US10/527,914 US7757205B2 (en) 2002-09-16 2003-08-18 System for preparing a standard framework for automation appliances

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE10242916A DE10242916A1 (de) 2002-09-16 2002-09-16 System zur Bereitstellung eines Standard-Frameworks für Automatisierungsgeräte

Publications (1)

Publication Number Publication Date
DE10242916A1 true DE10242916A1 (de) 2004-03-25

Family

ID=31896038

Family Applications (1)

Application Number Title Priority Date Filing Date
DE10242916A Ceased DE10242916A1 (de) 2002-09-16 2002-09-16 System zur Bereitstellung eines Standard-Frameworks für Automatisierungsgeräte

Country Status (4)

Country Link
US (1) US7757205B2 (de)
EP (1) EP1570346A2 (de)
DE (1) DE10242916A1 (de)
WO (1) WO2004027608A2 (de)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102007062453A1 (de) * 2007-12-22 2009-06-25 Robert Bosch Gmbh Verfahren zum Programmieren und/oder Diagnostizieren einer speicherprogrammierbaren Steuerung
DE102009033967A1 (de) * 2009-07-21 2011-01-27 Robert Bosch Gmbh Verfahren zum Programmieren einer speicherprogrammierbaren Steuerung mit resistenter Abspeicherung von Daten

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070078966A1 (en) * 2005-09-30 2007-04-05 Rockwell Automation Technologies, Inc. Presentation of automation data
EP2359203B1 (de) 2008-11-24 2015-10-28 ABB Research Ltd. Verfahren zur bereitstellung von steuer- und automatisierungsdiensten
US20100268521A1 (en) * 2009-04-17 2010-10-21 Rainer Heller Monitoring An Automation System
US8418074B2 (en) 2010-06-29 2013-04-09 Sap Ag Shared user interface services framework
CN102360308B (zh) * 2011-09-29 2013-06-12 用友软件股份有限公司 组件的分布式部署系统和方法

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6131166A (en) * 1998-03-13 2000-10-10 Sun Microsystems, Inc. System and method for cross-platform application level power management

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6192282B1 (en) * 1996-10-01 2001-02-20 Intelihome, Inc. Method and apparatus for improved building automation
US5978578A (en) * 1997-01-30 1999-11-02 Azarya; Arnon Openbus system for control automation networks
US6028998A (en) * 1998-04-03 2000-02-22 Johnson Service Company Application framework for constructing building automation systems
US6336118B1 (en) * 1998-12-03 2002-01-01 International Business Machines Corporation Framework within a data processing system for manipulating program objects
DE19910311A1 (de) * 1999-03-09 2000-09-14 Siemens Ag Automatisierungssystem mit wiederverwendbaren Automatisierungsobjekten und Verfahren zur Wiederverwendung von Automatisierungslösungen in Engineering-Werkzeugen
US6553223B1 (en) * 1999-12-30 2003-04-22 Qualcomm Incorporated Virtual device architecture for mobile telephones
DE10055168A1 (de) 2000-08-03 2002-02-21 Siemens Ag Industrielle Steuerung auf der Basis verteilbarer Technologischer Objekte
US7117049B2 (en) * 2000-08-03 2006-10-03 Siemens Aktlencesellschaft Industrial controller based on distributable technology objects
US6442451B1 (en) * 2000-12-28 2002-08-27 Robotic Workspace Technologies, Inc. Versatile robot control system
US7293261B1 (en) * 2001-04-25 2007-11-06 Microsoft Corporation Language-neutral representation of software code elements

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6131166A (en) * 1998-03-13 2000-10-10 Sun Microsystems, Inc. System and method for cross-platform application level power management

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
http://jara.sun.com/products/jdk/1.2/docs/guide/jn i/spec/jniTOC.doc.html: "Java Native Interface Specification", May 1997
http://jara.sun.com/products/jdk/1.2/docs/guide/jni/spec/jniTOC.doc.html: "Java Native Interface Specification", May 1997 *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102007062453A1 (de) * 2007-12-22 2009-06-25 Robert Bosch Gmbh Verfahren zum Programmieren und/oder Diagnostizieren einer speicherprogrammierbaren Steuerung
DE102009033967A1 (de) * 2009-07-21 2011-01-27 Robert Bosch Gmbh Verfahren zum Programmieren einer speicherprogrammierbaren Steuerung mit resistenter Abspeicherung von Daten

Also Published As

Publication number Publication date
EP1570346A2 (de) 2005-09-07
WO2004027608A2 (de) 2004-04-01
WO2004027608A3 (de) 2005-07-07
US20060142882A1 (en) 2006-06-29
US7757205B2 (en) 2010-07-13

Similar Documents

Publication Publication Date Title
DE19781804B4 (de) Vorrichtung zur Simulation einer Echtzeit-Prozesssteuerung
EP1723513B1 (de) Verfahren zur konfiguration eines computerprogramms
DE10116809A1 (de) Programmierbare Steuereinrichtung und Vorrichtung zur Unterstützung einer Steuerprogrammentwicklung
EP3538960A1 (de) Ablaufsteuerung von programmmodulen
EP3542232A1 (de) Steuerung für eine industrielle automatisierungsanlage und verfahren zum programmieren und betreiben einer derartigen steuerung
WO2004046837A1 (de) Verahren zum erzeugen von softwaremodulen für feldgeräte der prozessautomatisierungstechnik
DE102005042129A1 (de) Verfahren und Vorrichtung zum automatisierten Bewerten der Qualität eines Software-Quellcodes
EP0913750A1 (de) Anordnung zum Fernsteuern und/oder Fernbedienen eines Feldgeräts mittels eines Steuergeräts über einen Feldbus
DE10242916A1 (de) System zur Bereitstellung eines Standard-Frameworks für Automatisierungsgeräte
DE102017215556A1 (de) Verfahren zum programmieren von elektronischen fahrzeug-steuermodulen
EP4049129A1 (de) Verfahren zum verknüpfen von objekten eines steuerprogramms einer steuereinheit eines automatisierungssystems und entwicklungsumgebung
DE102008047238A1 (de) Frameworkbasierte Steuerung für Automatisierungssysteme
EP3629108B1 (de) Projektierung eines automatisierungssystems
DE102008023873A1 (de) Verfahren zum Betrieb eines Antriebssystems
WO1997003389A1 (de) Verfahren zur erstellung eines anwenderspezifischen funktionsplanes für speicherprogrammierbare steuerungen (sps)
DE102016121788A1 (de) Konfiguration einer Automatisierungsanlage
WO2012025364A1 (de) Verfahren und system zur planung mechatronischer systeme mit mechatronikeinheiten
EP1043657A1 (de) Softwareobjekt, System und Verfahren für ein Automatisierungsprogramm mit Funktionsregeln mit Mehrfachnutzung für verschiedene Programmierwerkzeuge
DE102009017816A1 (de) Verfahren zum Parametrieren von Betriebsmitteln
EP2251756A2 (de) Verfahren und System zum Testen von Applikationen auf dezentral einsetzbaren programmierbaren Steuergeräten eines Automatisierungssystems
DE102005008136A1 (de) Entwicklungssystem für Prozessleitsysteme sowie zugehöriges Verfahren und Computerprogrammprodukt
EP1393137B1 (de) Verfahren zum festlegen von automatisierten prozessen
EP3757692A1 (de) Verfahren zum durchführen von änderungen an einer industriellen maschine
EP2363771A1 (de) Programmierschnittstelle und Verfahren zur Steuerung einer Anwendung eines Gerätes einer industriellen Automatisierungsanordnung
EP4123396A1 (de) Technik zur realisierung einer visualisierung für eine automatisierungstechnische anlage mit einer speicherprogrammierbaren steuerung

Legal Events

Date Code Title Description
OP8 Request for examination as to paragraph 44 patent law
R002 Refusal decision in examination/registration proceedings
R003 Refusal decision now final

Effective date: 20130316