-
Die Erfindung betrifft ein Verfahren zum Austausch von Daten in einer automatisierungstechnischen Anlage gemäß dem Oberbegriff des Anspruchs 1.
-
Die Automatisierungstechnik ist ein wesentlicher Bestandteil in vielen Industriebereichen. Eine besondere Rolle spielt dabei der Austausch von Daten zwischen den einzelnen Komponenten und Systemen ohne den eine Automatisierung nicht möglich wäre.
-
Sensoren, Steuerungen und Maschinen liefern verschiedene Daten wie z. B. Prozessdaten, Fertigungsdaten, Verbrauchsdaten, Materialdaten, Benutzerdaten an übergeordnete Systeme wie z. B. Planungssysteme, Leitsysteme oder Management-Systeme, die auf der Basis dieser Informationen Steuerbefehle oder Vorgabedaten generieren. Ein übergeordnetes System kann auch ein Archivierungssystem sein.
-
Die Vernetzung der Komponenten und Systeme und auch die Menge der anfallenden Daten nimmt immer mehr zu.
-
Typischerweise ist eine industrielle Anlage entsprechend der eingesetzten Techniken und Aufgaben in unterschiedliche Ebenen eingeteilt. Beispielhaft sei hier eine Fertigungsanlage erwähnt. Die unterste Ebene des Fertigungsprozesses ist die Feld- bzw. Maschinenebene mit den Sensoren bzw. Aktoren. Über der Feld- bzw. Maschinenebene befindet sich die Steuerungsebene. Über der Steuerungsebene ist die Leitebene angeordnet, die zum Bedienen/Steuern und Beobachten sowie zur Datenarchivierung dient. Die Fertigungsplanung erfolgt in der Betriebsleitebene bzw. in der Unternehmensebene, die für die Produktionsgrobplanung und der Bestellabwicklung zuständig ist.
-
Für die unterschiedlichen Ebene haben sich verschiedene meist englische Abkürzungen etabliert.
-
ERP-System steht für Enterprise Ressource Planning-System, bei dem es sich um ein komplexes softwaregestützes System handelt, das alle im betrieblichen Zusammenhang mit der Fertigung stehende Ressourcen erfasst und ihr Zusammenwirken abstimmt. ERP-Systeme werden von unterschiedlichen Herstellern wie SAP, Oracle, Microsoft etc. angeboten.
-
MES steht für Manufacturing Execution System. Hersteller solcher Systeme sind z. B. die Firmen MPDV oder itac. SCADA steht für Supervisory Control and Data Acquisition.
-
In den unterschiedlichen Ebenen werden unterschiedliche Systeme und Softwareprogramme eingesetzt, um die entsprechenden Aufgaben zu lösen. Dabei werden in den einzelnen Ebenen Daten verarbeitet und aufbereitet, um sie den anderen Ebenen zu Verfügung zu stellen. Die verschiedenen Systeme verwenden in der Regel zur Kommunikation unterschiedliche Datenformate und unterschiedliche Protokolle. Damit unterschiedliche Systeme Daten miteinander reibungslos austauschen können, müssen entsprechende Schnittstellenadapter entwickelt werden. An den Schnittstellen findet entsprechend eine Anpassung der Protokoll bzw. der Formate statt.
-
Um einen Datenaustausch zwischen verschiedenen Systemen insbesondere zwischen der Produktionsebene und der Managementebene mit den MES- bzw. ERP-Systemen zu ermöglichen wurden Schnittstellenstandards wie z. B. OPC geschaffen. Damit ist es möglich z. B. zwischen einer Maschinensteuerung und einem ERP-System Daten über einen OPC-Server auszutauschen. Ist eine Maschine mit dem OPC-Server verbunden so dient der OPC-Server als Datensammler für die Maschinendaten. Die aktuellen Maschinendaten werden vom OPC-Server in regelmäßigen Abständen aus der Maschinensteuerung ausgelesen und in einem Datenpool vorgehalten. Das ERP- System ruft die Maschinendaten in regelmäßigen Abständen aus dem OPC-Datenpool ab.
-
Für die Anbindung der jeweiligen Maschinensteuerung (z. B. S7 Siemens, Beckhoff oder Rockwell) benötigt man eine OPC-konformen Treibersoftware, die idealerweise vom Steuerungshersteller zur Verfügung gestellt wird.
-
Die jeweilige Treibersoftware wandelt die proprietären Datenformate in ein OPC-spezifisches Datenformat um.
-
Der OPC-Standard erlaubt heute den Datenaustausch von unterschiedlichen Daten wie Echtzeitdaten, Archivierungsdaten, Alarmmeldungen und Steuerungsdaten (Befehlsübermittlung).
-
Neben OPC existieren noch weiter Datenaustauschformate wie z. B. IPC-2501 für den web-basierten Austausch von XML-Daten in der Fabrikautomatisierung.
-
Bei den herkömmlichen Verfahren zum Austausch von Daten in einer automatisierungstechnischen Anlage müssen alle Treiber, wenn z. B. eine neue Schnittstelle von der Steuerung zum ERP-System gewünscht wird, angepasst werden.
-
Dies ist sehr aufwendig und entsprechend teuer.
-
Um einen durchgängigen Datenaustausch von der Feldebene bis hin zur Unternehmensebene zu gewährleisten, müssten alle beteiligten Systeme und Komponenten die entsprechende Schnittstelle unterstützen. Dies ist aufgrund der Vielfalt der eingesetzten Komponenten und Systeme nicht möglich.
-
Wenn die Verbindung zum ERP-System verloren geht, ist dies meist mit einem Datenverlust verbunden.
-
Herkömmliche Verfahren unterstützen nur einen bestimmten Standard, damit ist man beim Zielsystem auf den betreffenden Standard eingeschränkt.
-
Eine intelligente Fehlerbehandlung ist bei den bekannten Verfahren zum Datenaustausch nicht vorgesehen.
-
Aufgabe der Erfindung ist es deshalb ein Verfahren zum Austausch von Daten in einer automatisierungstechnischen Anlage anzugeben, das an beliebige Datenquellen bzw. Datenempfänger einfach anpassbar ist, das schnell an weitere Schnittstellenstandards anpassbar ist, das eine einfach Kommunikation mit unterschiedlichen Schnittstellen bzw. Schnittstellenstandards erlaubt und das für einen durchgängigen Datenaustausch von der Feldebene bis zur Unternehmensebene geeignet ist.
-
Gelöst wird diese Aufgabe durch das im Anspruch 1 angegebene Verfahren.
-
Vorteilhafte Weiterentwicklungen sind in den Unteransprüchen angegeben.
-
Die wesentliche Idee der Erfindung besteht darin beim Datenaustausch einen Konverter einzusetzen, der eine konfigurierbare Eingangsschnittstelle und eine konfigurierbare Ausgangsschnittstelle aufweist, die für verschiedene Datenformate und/oder Protokolle ausgelegt sind und in dem ein schnittstellenunabhängiges Datenformat definiert ist, in das die Eingangsdaten konvertiert werden und aus dem die Ausgangsdaten generiert werden.
-
Nachfolgend ist die Erfindung anhand eines in der Zeichnung dargestellten Ausführungsbeispiels näher erläutert.
-
1 zeigt beispielhaft die Automatisierungspyramide in einer automatisierungstechnischen Anlage mit den verschiedenen Ebenen.
-
2 Blockdiagram einer Steuerung mit einer OPC-Schnittstelle
-
3 Blockdiagram eines Firmennetzwerkes
-
4 Blockdiagram eines erfindungsgemäßen Konverters
-
5 Temperaturwert in verschiedenen Datenformaten
-
6 Architektur des Konverters
-
1 zeigt beispielhaft eine automatisierungstechnische Fertigungsanlage als Pyramide. Unmittelbar am Fertigungsprozess sind in der Feld- bzw. Maschinenebene Sensoren und Aktoren angeordnet. Die Feldebene tauscht Daten mit der Steuerungsebene aus, von der aus die Steuerung und Regelung des Fertigungsprozesses erfolgt. Über der Steuerungsebene ist die Leitebene angeordnet, die zum Bedienen und Beobachten und zur Datenarchivierung dient. In der Betriebsleitebene erfolgt die Produktionsfeinplanung und Produktionsdatenerfassung. In dieser Ebene sind auch das Materialmanagement und das Qualitätsmanagement angesiedelt. In der Unternehmensebene erfolgen die Produktionsgrobplanung und die Bestellabwicklung. Für die einzelnen Komponenten in den jeweiligen Ebene kommunizieren in unterschiedlichen Protokollen und unterschiedlichen Datenformate. In der Regel sind zwischen den Ebenen Gateways notwendig, die die entsprechende Anpassung durchführen.
-
2 zeigt einen OPC-Server über den der Datenaustausch zwischen einer Steuerung und einem ERP-System erfolgt. Der OPC-Server hat eine Eingangsschnittstelle E1 und eine Ausgangsschnittstelle A1. Mittels eines herstellerspezifischen Treibers können die Daten aus einer Steuerung (z. B. S7 Fa. Siemens) ausgelesen werde. Der OPC-Server konvertiert die von der Steuerung über die Eingangsschnittstelle E1 gelieferten Daten in das OPC-Format und stellt die Daten in einem Datenpool dem ERP-System, das ebenfalls eine OPC-Schnittstelle besitzt, im OPC-Format zur Verfügung.
-
An die Ausgangsschnittstelle A1 können nur solche Systeme angeschlossen werden, die eine OPC-Schnittstelle unterstützen.
-
3 zeigt ein Firmennetzwerk. Ein I/O-Link-Sensor ist mit einem I/O-Link Master verbunden, der an eine Ethernet-Netzwerk angeschlossen ist. An das Ethernet sind verschieden Komponenten angeschlossen; neben einem Industrie-PC sind dies eine Steuerung S7 und ein SAP-R3 System. Das erfindungsgemäße Verfahren wird als Programm ausgeführt, das z. B. auf dem Industrie-PC abläuft.
-
Zur Datenanpassung an das SAP-System dient das Modul PCo (plant connectivity).
-
4 zeigt ein Blockdiagramm eines erfindungsgemäßen Konverters. Der weist eine Eingangsschnittstelle ES und eine Ausgangsschnittstelle AS auf. Beispielhaft ist die Eingangsschnittstelle ES für drei Protokolle P11-P13 und drei Datenformate D11- D13 ausgelegt. Entsprechend ist die Ausgangsschnittstelle AS für zwei Protokolle P21, P22 und zwei Datenformate.
-
Für die unterschiedlichen Steuerungen (Siemens S7, Beckhoff) gibt es entsprechende Libraries, die die jeweiligen Protokolle implementieren. Wo die entsprechenden Daten in der Steuerung abgelegt sind, ist in der Steuerungssoftware festgelegt. Dies ist bei der Systemintegration zu beachten.
-
6 zeigt die Architektur des Konverters mit dem Betriebssystem, den hardwareabhängigen Elementen insbesondere den Schnittstellen und den hardwareunabhängigen Elementen wie den 4 Manager für Tasks, Monitoring, Konfiguration (Config) bzw. Schnittstellen (Interfaces) sowie mehreren Tasks.
-
Nachfolgend ist das erfindungsgemäße Verfahren näher erläutert.
-
Über die Eingangsschnittstelle ES liest der Konverter Daten von einer Datenquelle beispielsweise Sensordaten, Steuerungsdaten oder Maschinendaten ein. Die Daten werden von der jeweiligen Datenquelle über quellenspezifischen Schnittstellen zur Verfügung gestellt. Die Datenformate und/oder Protokolle und/oder Dateninhalte der quellenspezifischen Schnittstellen sind je nach Quellentyp unterschiedlich.
-
Als Protokolle P1n sind z. B. denkbar TCP/IP, IO-LINK, IPC2501, SEMI E5; als Datenformate HTTP, SOAP, XML, CSV bzw. proprietäre Binärformate.
-
Die Eingangsschnittstelle ist deshalb beispielhaft für n = 3 Protokolle P11-P13 mit m = 3 Datenformaten D11–D13 ausgelegt.
-
Im Konverter ist ein schnittstellenunabhängiges Datenformat D definiert, in das die an der Eingangsschnittstelle ES gelieferten Daten aus dem jeweiligen Datenformat D11–D13 umgewandelt werden. Zur Weitergabe der jeweiligen Daten an einen bestimmten Datenempfänger, wie ein ERP-System müssen die Daten aus dem schnittstellenunabhängigen Datenformat D in das betreffende Format des Datenempfängers umgewandelt werden. Aus dem schnittstellenunabhängigen Datenformat werden somit die an der Ausgangsschnittstelle AS ausgegebenen Daten in dem erforderlichen Datenformat D21 bzw. D22 (I = 2) generiert und in dem entsprechenden Protokoll P21 bzw. P22 (k = 2) an den Datenempfänger übertragen.
-
Als Protokolle P2k sind z. B. SAP oder Baan denkbar; als Datenformate z. B. XML, IDOCs oder Baan format text.
-
Damit können Daten aus quasi beliebigen Datenquellen an quasi beliebige Datenempfänger übertragen werden. Wichtige Maschinendaten stehen beliebigen Planungssystemen, Leitsystemen oder Archivierungssystemen schnell und einfach zur Verfügung. Ein wesentlicher Vorteil des Verfahrens besteht in der hohen Flexibilität und in der verlustfreien Datenkonvertierung.
-
Der Konverter ist weder eingangs- noch ausgangsseitig auf die dargestellten Protokolle bzw. Datenformate beschränkt.
-
Die Erweiterung des Konverters z. B. für eine neue Steuerung ist einfach möglich. Hierzu muss die Bibliothek, mit Hilfe derer das entsprechende Protokoll implementiert wird, integriert werden.
-
Stehen die Daten dieser neuen Steuerung in dem schnittstellenunabhängigen Datenformat D zur Verfügung, so ist die Generierung der Daten für das jeweilige Protokoll bzw. Format der Ausgangsschnittstelle ohne Aufwand möglich.
-
Je nach den verwendeten Sensoren, Steuerungen oder Maschinen muss die Eingangsschnittstelle z. B. für I/O-Link oder Profibus PA entsprechend konfiguriert werden. Gleiches gilt auf der Seite der Ausgangsschnittstelle z. B. für ein SAP- System oder eine Siemens Steuerung wie etwa die S7 Steuerung.
-
Mit der Erfindung ist ein durchgängiger Datenaustausch zwischen einfachen Sensoren in der Feldebene bzw. aufwendigeren Steuerungen und einem übergeordneten Planungssystem (SAP R3) möglich.
-
5 zeigt ein Beispiel für die unterschiedlichen Datenformate eines Temperaturwertes die bei der Datenübertragung eine Rolle spielen. Der Sensor liefert den Temperaturwert 11101010 zusammen mit dem Schaltzustand 1. Die Rohdaten (Wert 117) des Sensors liegen an der Sensorschnittstelle in einem ganz speziellen Datenformat Format 1 vor. Im Konverter wird der Temperaturwert in das schnittstellenunabhängige Datenformat D umgewandelt.
-
Aus diesem Datenformat D wird der Temperaturwert dann in das Datenformat Format 2 (Fließkommazahl) umgewandelt, bevor er an eine Steuerung z. B. S7 weitergeleitet wird.
-
Ähnliches gilt für Formate wie Datum und Uhrzeit, die in unterschiedlichen Datenformaten verwendet werden. Im schnittstellenunabhängigen Datenformat liegt die Uhrzeit nanosekundengenau vor. Damit kann die Uhrzeit in jedes beliebige Zeitformat ohne Informationsverlust umgewandelt werden.
-
Steuerungen arbeiten typischerweise mit folgenden Zahlenformaten 8 bit, 16 bit oder 32 bit;
-
Datenbanken auch noch mit 64 bit, deshalb muss als schnittstellenunabhängiges Datenformat das 64 bit Format gewählt werden, damit kein Datenverlust erfolgt.
-
Bevor die Daten ausgeben werden, können sie auch aufbereitet werden, z. B. durch eine statistische Mittelung.
-
Die Erfindung ermöglicht auch eine parametrierbare Fehlerbehandlung. Fehler bei der Datenübertragung, Protokollfehler sowie inhaltliche Fehler werden geprüft und aktiv protokolliert. Intelligente Fehlerbehandlungsmaßnahmen können implementiert werden.
-
Weiterhin erlaubt die Erfindung eine Langzeit-Datenpufferung mit Historie, wenn die Verbindung z. B. zu einem ERP-System verloren geht. Gepufferte Daten werden an das ERP-System übergeben sobald die Verbindung wieder hergestellt ist.
-
Der Konverter kann vorteilhaft als .NET-Variante oder als embedded Variante ausgeführt werden.
-
Die Umsetzung der Erfindung auf Basis des .NET Frameworks erlaubt die Abstraktion der zugrunde liegenden Hardware Plattform. Die Erfindung ist lauffähig auf jeder Plattform, für die eine Umsetzung des .NET Frameworks verfügbar ist. Dadurch werden potenzielle Inkompatibilitäten vermieden und es besteht keine direkte Abhängigkeit zu einer spezifischen auszuwählenden Hardware Plattform. Diese Variante unterstützt zudem die von .NET bereit gestellten Systemschnittstellen und -Dienste und ermöglicht die flexible Erweiterbarkeit der Schnittstellen.
-
Die Umsetzung der Erfindung als embedded Variante erlaubt die Integration in intelligenten rechnergesteuerte Systeme mit geringer Ressourcenverfügbarkeit Die Integration des autonomen Konverters in eine Hardware, bspw. ein intelligenter Sensor, ein Feldbus-Gateway oder eine Steuerung erlaubt die direkte Kommunikation der Hardware mit dem ERP System ohne dass ein weiteres Hostsystem notwendig wird. Dies führt zu einer Kostenreduktion in weiten Bereichen wie Investition, Einrichtung, Betrieb u. Wartung.
-
Der Nachteil dieser Variante liegt in der gewöhnlich geringeren Schnittstellenflexibilität und der begrenzten Ressourcen der Hardware.
-
Die Erfindung benötigt keine mit einem hohen Aufwand verbundene Entwicklung von spezifischen Schnittstellenadaptern, die zwischen zwei bestimmten Schnittstellen vermitteln.
-
Die Erfindung erlaubt nicht nur einen Austausch von Daten bzw. Datenprotokollen sondern auch von Dateninhalten zwischen unterschiedlichen Systemen.
-
Die ist anhand des folgenden Beispiels näher erläutert.
-
Eine Steuerung als Datenquelle meldet den Zustand des Prozesses als 1-Bit-Information, 0 entspricht nicht O.K., 1 entspricht O.K.
-
Der Datenempfänger versteht jedoch nur Bytefolgen, die ANSI oder UTF-8 kodierten Text enthalten.
-
Die Bit-Informationen wird daher zunächst von der Datenquelle gelesen und im Konverter intern in eine Zahl umgewandelt, hier 0 oder 1, der ein bestimmter Dateninhalt zugeordnet ist.
-
Anschließend wird mit Hilfe eines konfigurierbaren Mappings (Wertezuordnung) der gelesenen Zahl eine Zeichenfolge zugeordnet, wobei dem Wert 0 die Zeichenfolge "FAIL" und dem Wert 1 die Zeichenfolge "PASS" zugeordnet wird. Zuletzt wird die Zeichenfolge an den Datenempfänger gesendet. Dazu wird die Zeichenfolge "PASS" oder "FAIL" mittels ANSI oder UTF-8 Textkodierung in die zu übertragende Bytefolge umgewandelt.
-
Alternativ kann auch das Auslösen von Aktionen, z.B. Prozesse starten, erforderlich sein.
-
Die Datenquelle liefert bspw. ein Kommando in Form einer vorzeichenbehafteten 16 Bit Zahl.
-
Die Werte 0 und 10 sollen Aktionen auslösen, der Wert -1 bedeutet keine Aktion. Dieser Dateninhalt wird intern in einen Wert umgewandelt, der schnittstellenunabhängig ist, dessen Bedeutung aber für den Konverter klar ist.
-
Abhängig vom Wert wird beim Datenempfänger eine von zwei Funktionen bspw. mittels COM-Technologie aufgerufen, bspw. PROZESS_A() und PROZESS_B(). Falls der Wert -1 ist, wird keine Funktion aufgerufen.
-
Der Datenaustausch kann bidirektional erfolgen. Beide Kommunikationspartner können gleichzeitig sowohl Datenquelle als auch Datenempfänger sein.
-
Ein weiteres Beispiel ist nachfolgend beschrieben. Sowohl eine Siemens S7 Steuerung als auch Beckhoff Steuerung kennen den Datentypen DATE_AND_TIME. Ein solcher Wert speichert in der Steuerung ein Datum inkl. Uhrzeit.
-
Die Steuerungen gehen dabei sehr unterschiedlich vor. Während die Siemens S7 diesen Wert in 8 Bytes speichert, braucht die Beckhoff Steuerung nur 4 Bytes.
-
Der Konverter weiß wie er die Bytes interpretieren muss und wandelt sie in sein internes Datum/Uhrzeit Zwischenformat um.
-
Beim Senden an einen Datenempfänger (Zielsystem, z.B. eine Datenbank) wandelt der Konverter dann Datum/Uhrzeit aus dem schnittstellenunabhängigen Datenformat in das Zielformat, d. h. das Datenformat des Datenempfängers um.
-
Bei der Datenbank ist dies bspw. ein Text nach dem Muster "yyyy-MM-dd H:mm.ss.fff + zzz".
-
Die Erfindung ist z. B. geeignet um einen Informationsaustausch zwischen einer Steuerung bzw. Sensoren und einem Cloud-Speicher via einer IoT-Anwendung von SAP zu realisieren. Das erfindungsgemäße Verfahren wird dabei der IoT-Anwendung vorgeschaltet.
-
Neben den bereits erwähnten Möglichkeiten können mit dem erfindungsgemäßen Konverter verschiedene weitere Datenbanken wie z. B. Microsoft SQL Server, MySQL, OLE DB (Access), Oracle oder verschiedene Steuerungen wie Allen Bradley, Beckhoff, Omron, Simatic S7, Simatic Sinumerik verbunden werden. Im Konverter sind folgende Formate implementiert HTTP, FTP, Modbus, TCP Client Master, TCP Client Slave, TCP Server.
-
Außerdem können verschiedene Maschine / Sensor Schnittstellen bedient werden wie z. B. Fuji Trax, HISCam, ifm VSE.