DE102015213700A1 - Method and system for homogeneous integration of programmable logic controllers in a plant model - Google Patents

Method and system for homogeneous integration of programmable logic controllers in a plant model Download PDF

Info

Publication number
DE102015213700A1
DE102015213700A1 DE102015213700.7A DE102015213700A DE102015213700A1 DE 102015213700 A1 DE102015213700 A1 DE 102015213700A1 DE 102015213700 A DE102015213700 A DE 102015213700A DE 102015213700 A1 DE102015213700 A1 DE 102015213700A1
Authority
DE
Germany
Prior art keywords
information
variable
plant
plc
variable names
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.)
Withdrawn
Application number
DE102015213700.7A
Other languages
German (de)
Inventor
Andreas Müller
Wolfgang Wohlgemuth
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 DE102015213700.7A priority Critical patent/DE102015213700A1/en
Publication of DE102015213700A1 publication Critical patent/DE102015213700A1/en
Withdrawn legal-status Critical Current

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

Abstract

Die Erfindung umfasst eine Lösung zur effizienten Einbindung von Speicherprogrammierbaren Steuerungen (SPS, SPS1) in anlagenmodellgestützte Beschreibungen von Automatisierungsanlagen. Durch Vermeidung von Informationsbrüchen entlang der Strecke von der Anlagenmodellierung über die SPS-Projektierung bis zur Ergebnisverwendung in Client-Applikationen werden durchgängige Informationsflüsse erreicht. Als uniform und zentral adressierbare Ressource können SPSen direkt Auskunft über sich und ihre Rolle in einer Anlage geben und so nachgelagerten Applikationen den direkten Kontext hinsichtlich des Anlagenmodells liefern. Bei gleichzeitiger Einsparung von Datenvolumen in der SPS werden Fehlprojektierungen im Informationsaustausch vermieden sowie der Zugriff nur berechtigten Akteuren gestattet.The invention comprises a solution for the efficient integration of programmable logic controllers (PLC, SPS1) in plant model-based descriptions of automation systems. By avoiding information breaks along the route from plant modeling to PLC configuration to the use of results in client applications, consistent information flows are achieved. As a uniform and centrally addressable resource, PLCs can provide direct information about themselves and their role in a plant, thus providing downstream applications with a direct context in terms of the plant model. With simultaneous savings of data volume in the PLC, incorrect configuration in the exchange of information is avoided and access is only granted to authorized actors.

Description

Die Erfindung betrifft eine Lösung zur effizienten Einbindung von Speicherprogrammierbaren Steuerungen in anlagenmodellgestützte Beschreibungen von Automatisierungsanlagen. The invention relates to a solution for the efficient integration of programmable logic controllers in plant model-based descriptions of automation systems.

Speicherprogrammierbare Steuerungen als informationsverarbeitende Komponenten einer Fertigungsanlage verarbeiten anlagenbezogene Informationen. Diese Informationen werden auch in sogenannten Anlagenmodellen repräsentiert. Ein Anlagenmodell beschreibt zentral und übergeordnet die einzelnen Komponenten der Anlage mit ihren Ein- und Ausgangs-Größen und ihren strukturellen wie dynamischen Zusammenhängen in Anlagenaufbau und Prozessabläufen. Bei der Erstellung von Steuerungsprogrammen, von Kommunikationswegen zwischen Steuerungen untereinander sowie zwischen Steuerungen und übergeordneten Systemen werden dazu diese Größen (z. B. zu Komponenten, Variablen, Wertgrenzen, ...) aus dem oder den Anlagenmodellen referenziert. Dies stellt den Kern semantischer Maschine-zu-Maschine-Kommunikation dar, sowie aus Sicht eines Steuerungsprogramms globale, nach extern sichtbare Variablen. Programmable logic controllers as information-processing components of a production plant process plant-related information. This information is also represented in so-called plant models. A plant model describes centrally and superordinate the individual components of the plant with their input and output variables and their structural and dynamic relationships in plant structure and process flows. When creating control programs, communication paths between controllers and between controllers and higher-level systems, these variables (eg, for components, variables, value limits, etc.) are referenced from the system model (s). This represents the core of semantic machine-to-machine communication and, from the perspective of a control program, global externally visible variables.

Um hierfür die Bedeutungen der einzelnen Größen (er)kennen zu können, ist es für die Partner entlang der Kommunikationswege erforderlich, entsprechende Metainformationen zu erhalten. Beispielsweise kann heute ein Leitsystem (die Mensch-Maschine-Schnittstelle der Anlage, HMI, ...) oder eine andere Client-Applikation aus zwei angebundenen Steuerungen jeweils eine Variable „Temperatur“ beziehen, hat aber anhand der verfügbaren Informationen keine Möglichkeit zu identifizieren, um welche Temperaturmessung mit welchen Zusammenhängen es sich genau handelt. Diese Informationen liefert ein semantisches Anlagenmodell, wozu allerdings weiterhin eine Anleitung, (ein „Einstiegspunkt“ in das Modell) erforderlich ist. In order to be able to know the meanings of the individual variables, it is necessary for the partners along the communication paths to obtain appropriate meta-information. For example, today a control system (the human-machine interface of the plant, HMI, ...) or another client application can receive one variable "temperature" from two connected controllers, but has no possibility to identify based on the available information. Which temperature measurement with which contexts it is exactly. This information provides a semantic asset model, but still requires guidance (an "entry point" into the model).

(„Wie ist die Metainformation zu finden?“). Diesen liefert jedoch eine bekannte Speicherprogrammierbare Steuerung in ihrem Variablenhaushalt nicht, während eine HMI-/Client-Applikation oder ein menschlicher Anwender ihn aber benötigt, um ggf. auf ein passendes Anlagenmodell für weiterführende Informationen zuzugreifen. ("How to find the metainformation?"). However, this is not provided by a known programmable logic controller in its tag management, whereas an HMI / client application or a human user requires it in order, if necessary, to access a suitable plant model for further information.

Semantische Modelle identifizieren ihre Elemente (und damit den jeweiligen „Einstiegspunkt“) typischerweise auf Basis von eindeutigen URIs (Uniform Resource Identifier) oder IRIs (Internationalized Resource Identifier); nachfolgend sei vereinfacht von URIs die Rede. Ein Beispiel für eine solche Variablenadressierung sei:
http://ExamplePlant/ExampleStation/PLC1#Temperature .
Semantic models typically identify their elements (and thus the respective "entry point") on the basis of unique URIs (Uniform Resource Identifiers) or IRIs (Internationalized Resource Identifiers); Below is a simplified talk of URIs. An example of such a variable addressing is:
http: // ExamplePlant / ExampleStation / PLC1 # Temperature ,

Derartige URIs können sehr lang werden und entsprechend viel Speicherplatz benötigen, welcher auf einer Steuerung jedoch nur sehr begrenzt vorhanden ist. Zudem erfolgt die Identifikation von Variablen und anderen Größen auf einer Steuerung individuell über freie, vom zugehörigen Anlagenmodell losgelöste Variablennamen. Dies führt zu dem Problem zwangsläufiger Informationsbrüche entlang der Kommunikationswege: Client-Applikationen oder Anwender müssen für Zugriffe auf Variablen aufwändig mehrere Informationsquellen manuell abgleichen, um die korrekte Bedeutung zu erfahren und Variablen entsprechend dieser zu nutzen. Such URIs can become very long and require a corresponding amount of storage space, which is only very limited on a controller. In addition, the identification of variables and other variables on a controller takes place individually via free variable names detached from the associated plant model. This leads to the problem of inevitable information breaches along the communication channels: client applications or users have to manually reconcile multiple sources of information for accessing variables in order to find out the correct meaning and to use variables accordingly.

Für die Programmierung von Steuerungen kommen heute eigenständige, nicht an ein semantisches Anlagenmodell gekoppelte und damit den jeweiligen Anlagenkontext kennende, Projektierungs- und Programmiersysteme zum Einsatz. Es besteht also eine direkte Beziehung nur zwischen dem Programmiersystem und der Steuerung. Aufgrund des dort beschränkten Speicherplatzes für Variablennamen (zulässige Länge) müssen Informationen in der Symboltabelle durch Namenskonventionen, Benennungsregeln, Hilfsvariablen, usw. manuell abgebildet und mitgeführt werden. Dieser Ansatz wird auch von verschiedenen branchenspezifischen Programmierstandards/-konventionen verfolgt. Diese können jedoch individuell und über die Zeit unterschiedlich sein oder es kann im einfachsten Fall zu Tippfehlern o. ä. kommen. Ebenso ist die Befolgung der Konventionen in Steuerungsprogrammen prinzipiell frei, weshalb es zu einer Heterogenität von Konventionen und damit unklarer Variablensemantik führen kann. Damit sind Brüche bei der Einbindung von Steuerungsgrößen in einen übergeordneten Applikations- oder Kommunikationskontext nicht zu verhindern, was zu einem erhöhten Aufwand bei der Systemerstellung und -pflege führt, auch unter Aspekten der IT-Sicherheit. Independent programming and programming systems that are not linked to a semantic system model and are therefore familiar with the respective system context are used today for the programming of controllers. So there is a direct relationship only between the programming system and the controller. Due to the limited storage space for variable names (permissible length), information in the symbol table must be mapped and stored manually using naming conventions, naming rules, auxiliary variables, etc. This approach is also followed by various industry-specific programming standards / conventions. However, these can be different individually and over time, or in the simplest case, typing errors or the like can occur. Likewise, adhering to the conventions in control programs is basically free, which can lead to a heterogeneity of conventions and thus unclear variable semantics. Thus, breaks in the integration of control variables into a superordinate application or communication context can not be prevented, which leads to an increased effort in system creation and maintenance, also under aspects of IT security.

Im Umfeld des über das Internet abrufbaren Systems von Hypertext-Dokumenten (Webseiten) existieren bereits Ansätze zur verkürzten Darstellung von URIs, wie z. B. von bitly oder tinyurl. Diese setzen jedoch einen externen Speicher für die Hinterlegung der ursprünglichen, über die Verkürzung erreichbaren, URL oder URIs voraus. Ein derartiger Ansatz erlaubt also nicht die Betrachtung von SPS als eigenständige Datenquelle mit alleine darauf aufsetzender Projektierung von Client-Applikationen ohne Erfordernis von Dritt-Applikationen für das Nachschlagen / Lookup etc. Für menschliche Anwender (Programmierer, Projektierer) ist die Bedeutung im Klartext nicht mehr ersichtlich. In the context of the retrievable over the Internet system of hypertext documents (web pages) already exist approaches for the shortened representation of URIs, such. From bitly or tinyurl. However, these require an external memory for the deposit of the original, reachable via the shortening, URL or URIs. Thus, such an approach does not allow the consideration of PLC as a stand-alone data source with it alone based on projecting client applications without the need of third-party applications for reference / lookup etc. For human users (programmers, project developers) the meaning in plain text is no longer apparent.

Die Aufgabe der Erfindung liegt daher darin, ein Verfahren und ein System zur homogenen Integration von Speicherprogrammierbaren Steuerungen anzugeben. Es ist weiter die Aufgabe der Erfindung, ein System anzugeben, welches die oben aufgeführten Nachteile vermeidet. Die Aufgabe wird gelöst durch ein Verfahren mit den Merkmalen des unabhängigen Patentanspruchs 1. Die Aufgabe wird weiterhin gelöst durch eine Vorrichtung gemäß den Merkmalen des unabhängigen Patentanspruchs 8. The object of the invention is therefore to specify a method and a system for the homogeneous integration of programmable logic controllers. It is a further object of the invention to provide a system which avoids the disadvantages listed above. The object is achieved by a method having the features of independent claim 1. The object is further achieved by a device according to the features of independent patent claim 8.

Die Variablennamen in der Symboltabelle werden in codierter Form abgelegt. Dazu werden die Eigenschaften, dass URIs typischerweise längere Präfix-Zeichenketten enthalten, aber insgesamt dennoch eher kurze Textblöcke darstellen, genutzt. Weiterhin wird die Eigenschaft genutzt, dass die Variablen Unterelemente eines gemeinsamen übergeordneten Elternelements im Anlagenmodell sind. Betrachten wir wieder das Beispiel von oben: http://ExamplePlant/ExampleStation/PLC1#Temperature und als zweite Variable
http://ExamplePlant/ExampleStation/PLC1#Pressure .
The variable names in the symbol table are stored in coded form. To do this, the properties that URIs typically contain longer prefix strings but, overall, are rather short blocks of text, are used. Furthermore, the property is used that the variables are subelements of a common parent element in the plant model. Consider again the example from above: http: // ExamplePlant / ExampleStation / PLC1 # Temperature and as a second variable
http: // ExamplePlant / ExampleStation / PLC1 # Pressure ,

Wie oben beschrieben handelt es sich hier um einen Teil einer Anlagenhierarchie, was bedeutet, dass sämtliche Variablen dieser Steuerung in dem zugehörigen Anlagenmodell einem identifizierbaren Elternknoten zugeordnet sind. Das gemeinsame Elternelement (Präfix) ist in diesem Fall http://ExamplePlant/ExampleStation/PLC1 als Repräsentanten der Steuerung PLC1, auf der sie als Variablen abgelegt und verarbeitet werden sollen. As described above, this is part of a plant hierarchy, which means that all variables of this controller in the associated plant model are assigned to an identifiable parent node. The common parent element (prefix) is in this case http: // ExamplePlant / ExampleStation / PLC1 as representatives of PLC1, where they are to be stored and processed as variables.

Die Symboltabelle auf der Steuerung, in welcher die Variablennamen gespeichert sind, wird transparent, d. h. unsichtbar für einen menschlichen Anwender, unter Verwendung von Bitarrays definiert, in die als ASCII oder Unicode gelieferte URI-Zeichen verlustfrei komprimiert codiert werden. Für eine Komprimierung kurzer Texte kann z. B. allgemein eine Huffman-Codierung verwendet werden. Die dazu erforderliche codierverfahrensspezifische Konfiguration wird separat außerhalb der Variablentabelle, aber auf der Steuerung, gehalten. Das gemeinsame Präfix wird extrahiert, in codierter Form auf der Steuerung außerhalb der Variablentabelle gehalten und von den codierten Variablennamen aus transparent referenziert. The symbol table on the controller where the variable names are stored becomes transparent, i. H. invisible to a human user, defined using bit-arrays in which URI characters supplied as ASCII or Unicode are losslessly compressed. For a compression of short texts z. As a general Huffman coding can be used. The coding method-specific configuration required for this purpose is kept separately outside the variable table but on the controller. The common prefix is extracted, held in coded form on the control outside the variable table, and referenced transparently from the coded variable names.

Im weiteren wird die Erfindung durch Figuren dargestellt. Dabei zeigt In the following, the invention is represented by figures. It shows

die 1 eine schematische Grundstruktur nach dem Stand der Technik und im Vergleich dazu gemäß der Erfindung und the 1 a schematic basic structure according to the prior art and in comparison therewith according to the invention and

die 2 eine Gesamtsicht auf ein erfindungsgemäßes System. the 2 an overall view of a system according to the invention.

Das Projektierungs-/Programmierwerkzeug für die Speicherprogrammierbare Steuerung nutzt das zur Programmieraufgabe gehörige semantische Anlagenmodell und führt den erforderlichen Codier-/Decodiervorgang automatisch in Zusammenspiel mit der SPS und dem dortigen Datenhaushalt für den Anwender transparent durch. Die SPS enthält sämtliche Informationen, die erforderlich sind, um die Codierung/Decodierung der auf ihre hinterlegten Variablen durchführen zu können. Die Durchführung selbst kann durch das Projektierungs-/Programmierwerkzeug durchgeführt werden, wie auch durch die SPS – in diesem Fall muss anhand einer Abschätzung für das verwendete Verfahren ein geringer Speicherplatz für die Codierung/Decodierung eines Variablennamens reserviert werden. The programmable logic controller programming / programming tool uses the semantic system model associated with the programming task and transparently performs the required coding / decoding process in interaction with the PLC and the local data management for the user. The PLC contains all the information necessary to carry out the coding / decoding of the variables stored on it. The execution itself can be carried out by the configuration / programming tool, as well as by the PLC - in this case, a small memory space must be reserved for the coding / decoding of a variable name based on an estimate for the method used.

Ein Vorteil der Erfindung ist, dass eine Client-Applikation oder ein Anwender damit stets die vollständigen Variablennamen im Klartext sieht, SPS-intern wird aber durchgehend mit den codierten Repräsentationen gearbeitet. Dabei benötigt die codierte Repräsentation deutlich weniger Speicherplatz – welcher im SPS-Umfeld besonders begrenzt ist -als die Klartextbezeichnung, so dass aufgrund der Komprimierung auch umfangreichere Modellbezüge abgelegt werden können. One advantage of the invention is that a client application or a user thus always sees the complete variable names in plain text, but the internal SPS process works continuously with the coded representations. The coded representation requires significantly less memory space - which is particularly limited in the PLC environment - as the plaintext designation, so that due to the compression even more complex model references can be stored.

Beim Zugriff einer Client-Applikation kann diese damit die enthaltenen Variablen mit zugehörigen Referenzen auf Anlagenmodelle direkt zugreifen und damit die passenden Anlagenmodelle anhand der SPS allein ermitteln. Im Rahmen einer Maschine-zu-Maschine-Kommunikation kann bei Bedarf auch eine andere SPS als ein „Client“ aus Sicht der befragten SPS deren Variablen abfragen (da die URIs ohne weiteres rekonstruierbar sind) und deren Werte wie bisher nutzen. Die Gesamtsicht auf ein derartiges System stellt sich dar wie in 2 schematisiert. When a client application is accessed, it can thus directly access the contained variables with associated references to plant models and thus determine the appropriate plant models based on the PLC alone. In the context of machine-to-machine communication, if required, another PLC as a "client" can query its variables from the point of view of the polled PLC (since the URIs can be easily reconstructed) and use their values as before. The overall view of such a system is as in 2 schematically.

Speicherprogrammierbare Steuerungen können erfindungsgemäß in Anlagenmodellen ohne Informationsbrüche referenzierbar mit ihren Variablen als Endpunkten projektiert und als direkte Informationslieferanten in der Anlage eingebunden werden. Die Bedeutung von Variablen kann durchgehend einheitlich, nachvollziehbar und validierbar dargestellt werden. Damit stellen Steuerungen und Variablen anhand eines Anlagenmodells einheitlich und zentral adressierbare Ressourcen dar. In accordance with the invention, programmable logic controllers can be projected in plant models without information fractions with their variables as end points and integrated as direct information suppliers in the plant. The meaning of variables can be consistently represented in a consistent, comprehensible and validatable manner. This means that controllers and variables based on a system model represent uniform and centrally addressable resources.

Vorteilhafterweise besteht weiterhin eine Absicherung gegen Fehlprojektierungen einzelner Steuerungen in einem Anlagenkontext durch direkte Verwendbarkeit des übergeordneten Anlagenmodells zur Überprüfung. Durch die Codierung wird es ermöglicht, auch umfangreichere Anlagenmodelle bei begrenztem Speicherplatz auf der Steuerung zu referenzieren, während gleichzeitig Anwender und Client-Applikationen die für sie erforderlichen Informationen dennoch beziehen können. Client-Applikationen wie z. B. HMI können bei einem Zugriff auf eine Steuerung die Verbindung zum Anlagenmodell anhand der gelieferten Informationen selbsttätig und ohne Verwendung von Hilfsinformationen direkt herstellen. Advantageously, there is also a safeguard against incorrect configuration of individual controls in a plant context by direct usability of the higher-level plant model for review. Encoding makes it possible to reference even larger plant models with limited space on the controller, while still allowing users and client applications to get the information they need. Client applications such. B. HMI can connect to the plant model based on the information supplied automatically and without the use of auxiliary information when accessing a controller.

Gleichzeitig ermöglicht es die Codierung, dass nur als sicher definierte, wie z. B. zertifizierte, Applikationen, Zugriff auf den Variablenhaushalt erhalten dürfen. Dies ist auch insofern wichtig, als dass grundsätzlich durch Informationsdurchgängigkeit ein größerer Kontext bei den Kommunikationspartnern sichtbar wird, d. h. ein Client erlangt auch begrenzt Kenntnis über die Modellstrukturen. At the same time it allows coding that defined only as safe, such. As certified, applications, access to the tag management may receive. This is also important insofar as, in principle, through information continuity, a larger context becomes visible among the communication partners, i. H. a client also gains limited knowledge of the model structures.

Im Rahmen der Maschine-zu-Maschine-Kommunikation kann der Bezug einzelner Größen zu Anlagenmodellen auch auf der Feldebene hergestellt und weitergegeben werden. Sämtliche erforderlichen Informationen werden von der Steuerung mitgeführt und bereitgestellt. Die Konsistenz von SPS-Projektierungen und Informationsflüssen kann auf standardisierte Weise automatisch überprüfbar ermöglicht werden – ein wesentlicher Baustein für die system- und prozessübergreifend durchgängige Digitalisierung von Anlagen. In the context of machine-to-machine communication, the relation of individual quantities to plant models can also be produced and transmitted at the field level. All required information is carried and provided by the controller. The consistency of PLC configurations and information flows can be made automatically verifiable in a standardized manner - an essential element for system-wide and cross-process integrated digitization of plants.

In einem Ausführungsbeispiel bezogen auf 2 seien zwei Variablen Temperature und Pressure gegeben, die gemäß einem gegebenen Anlagenmodell die Datenschnittstelle an einer Steuerung PLC1 darstellen, und die durch die URIs http://ExamplePlant/ExampleStation/PLC1#Temperature und http://ExamplePlant/ExampleStation/PLC1#Pressure bezeichnet sind (in diesem Beispiel wird die Verarbeitung der Namensinformationen ohne Datentypen ausgeführt). In one embodiment, based on 2 Given two variables, Temperature and Pressure, which according to a given plant model represent the data interface on a controller PLC1, and those through the URIs http: // ExamplePlant / ExampleStation / PLC1 # Temperature and http: // ExamplePlant / ExampleStation / PLC1 # Pressure (in this example, the processing of name information is performed without data types).

Desweiteren wird in diesem Beispiel eine ASCII-Huffman-Codierung für die Codec-Stufe verwendet (andere verlustfreie Komprimierungsverfahren sind ebenfalls möglich). Das SPS-Projektierungswerkzeug nutzt diese URIs, um aus den gemeinsamen Präfixen abgeleitet automatisch die betrachtete SPS http://ExamplePlant/ExampleStation/PLC1 zu nennen. Weiterhin legt das Projektierungswerkzeug automatisch einen Schnittstellen-Datenbaustein (welcher gleich mit dem Namen bezeichnet sein kann) mit den beiden Variablen Temperature und Pressure an. Dabei wird in diesem Beispiel zunächst aus den URIs unter Mitführung der ‚#‘-Zeichen als Separatoren ein Gesamttext gebildet, in dem zuerst das Präfix, gefolgt von den Namen der Variablen in der Reihenfolge, wie sie im Datenbaustein erscheinen sollen (anstelle von Separatoren wären z. B. auch Indizes möglich):
http://ExamplePlant/ExampleStation/PLC1#Temperature#Pressure
Furthermore, in this example, ASCII Huffman coding is used for the codec stage (other lossless compression schemes are also possible). The PLC configuration tool uses these URIs to automatically derive the considered PLC from the common prefixes http // ExamplePlant / ExampleStation / PLC1 to call. Furthermore, the configuration tool automatically creates an interface data block (which can be named with the name) with the two variables Temperature and Pressure. In this example, in this example, first of all, the URIs, together with the '#' characters as separators, form a complete text in which the prefix is first followed by the names of the variables in the order in which they should appear in the data block (instead of separators) eg also indices possible):
http: // ExamplePlant / ExampleStation / PLC1 # # Temperature Pressure

Dieser Gesamttext wird mittels der Codec-Stufe in einen Gesamt-Binärcode übersetzt (verschiedene Codier-Algorithmen möglich – für das Beispiel wurde http://cryptool-online.org verwendet) und bei der Kommunikation 90, 91, 93 verwendet:
101001 001 001 0101 100000 1001 1001 10001 10101 1111 0100 0101 0001 011 11101 0001 1111 11000 001 1001 10001 10101 1111 0100 0101 0001 011 111001 001 1111 001 111000 100001 11000 1001 11101 000011 000010 101000 10111 00000 011 0100 0101 011 1101 1111 001 10110 1101 011 10111 11101 1101 011 11001 11001 10110 1101 011
This total text is translated by means of the codec stage into a total binary code (different coding algorithms possible - for the example became http://cryptool-online.org used) and in communication 90 . 91 . 93 used:
101001 001 001 0101 100000 1001 1001 10001 10101 1111 0100 0101 0001 011 11101 0001 1111 11000 001 1001 10001 10101 1111 0100 0101 0001 011 111001 001 1111 001 111000 100001 11000 1001 11101 000011 000010 101000 10111 00000 011 0100 0101 011 1101 1111 001 10110 1101 011 10111 11101 1101 011 11001 11001 10110 1101 011

Das bei der Codierung ermittelte Beispiel-Wörterbuch (als Konfiguration der Codec-Stufe) definiert die Bitfolgen, die einzelne Zeichen codieren: Huffman-Bitfolge Codiertes Zeichen ASCII-Bitfolge 10111 # 00100011 1001 / 00101111 101000 1 00110001 100000 : 00111010 000010 C 01000011 10001 E 01000101 000011 L 01001100 11101 P 01010000 111001 S 01010011 00000 T 01010100 1111 a 01100001 011 e 01100101 101001 h 01101000 111000 i 01101001 0001 l 01101100 0100 m 01101101 11000 n 01101110 100001 o 01101111 0101 p 01110000 1101 r 01110010 11001 s 01110011 001 t 01110100 10110 u 01110101 10101 x 01111000 The coded example dictionary (as the codec stage configuration) defines the bit strings that encode individual characters: Huffman bit sequence Coded character ASCII bit sequence 10111 # 00100011 1001 / 00101111 101000 1 00110001 100000 : 00111010 000010 C 01000011 10001 e 01000101 000011 L 01001100 11101 P 01010000 111001 S 01010011 00000 T 01010100 1111 a 01100001 011 e 01100101 101001 H 01101000 111000 i 01101001 0001 l 01101100 0100 m 01101101 11000 n 01101110 100001 O 01101111 0101 p 01110000 1101 r 01110010 11001 s 01110011 001 t 01110100 10110 u 01110101 10101 x 01111000

Die Konfiguration wird auf der SPS1 in Speicher 13 hinterlegt, wobei sich der dafür erforderliche Speicherplatz in Speicher 11 aus der Abschätzung des jeweils verwendeten Codierverfahrens und der erlaubten Zeichen ergibt. Den Namen der SPS stellt der Bitstrom bis zum ersten Separator (#: 10111) dar:
101001 001 001 0101 100000 1001 1001 10001 10101 1111 0100 0101 0001 011 11101 0001 1111 11000 001 1001 10001 10101 1111 0100 0101 0001 011 111001 001 1111 001 111000 100001 11000 1001 11101 000011 000010 101000
The configuration is stored on the SPS1 in memory 13 deposited, whereby the storage space required in memory 11 from the estimate of the coding method used and the characters allowed. The name of the PLC represents the bit stream up to the first separator (#: 10111):
101001 001 001 0101 100000 1001 1001 10001 10101 1111 0100 0101 0001 011 11101 0001 1111 11000 001 1001 10001 10101 1111 0100 0101 0001 011 111001 001 1111 001 111000 100001 11000 1001 11101 000011 000010 101000

Diese Bitfolge wird an die SPS als „Präfix“/Elternelement übertragen. Die Namen der Variablen werden ausschließlich in ebenso codierter Form (Temperature: 00000 011 0100 0101 011 1101 1111 001 10110 1101 011; Pressure: 11101 1101 011 11001 11001 10110 1101 011) an die SPS übertragen und etwa bei der Erzeugung des Schnittstellen-Datenbausteins verwendet. This bit sequence is transferred to the PLC as a "prefix" / parent element. The names of the variables are transmitted to the PLC in the same encoded form (Temperature: 00000 011 0100 0101 011 1101 1111 001 10110 1101 011; Pressure: 11101 1101 011 11001 11001 10110 1101 011) and used, for example, in the generation of the interface data block ,

Bei der Verwendung des Datenbausteins sieht der Anwender die Variablen dann auf herkömmliche Weise: das Projektierungs-/Programmierwerkzeug PW oder eine andere Client-Applikation C nutzt das auf der SPS hinterlegte Wörterbuch, um aus den Bitfolgen mittels Codec-Stufe 14 wieder lesbare Namen zu erzeugen, anzuzeigen und weiter zu nutzen. Während die Variablen mit ihren eigentlichen Namen angezeigt werden, werden sie im Hintergrund jedoch als vollwertige URIs, zusammengesetzt aus Präfix-Bitstrom, Separator-Bitkette und Namens-Bitstrom, behandelt. Damit wird eine Durchgängigkeit bei der Semantik von Variablen von der Anlagenplanung bis hinunter auf die Feldebene und weiter zu darauf aufsetzenden Applikationen erreicht („Roundtrip“). Dies alles läuft unsichtbar für den Anwender ab. When using the data block, the user then sees the variables in a conventional manner: the configuration / programming tool PW or another client application C uses the dictionary stored on the PLC to extract the bit sequences by means of the codec stage 14 to generate, display and continue to use readable names. However, while the variables are displayed with their actual names, they are treated in the background as full-fledged URIs composed of prefix bitstream, separator bit string, and name bitstream. This achieves consistency in the semantics of variables from plant planning down to the field level and on to applications based on this ("round trip"). All of this is invisible to the user.

In dem hier beschriebenen Beispiel würde eine ASCII-basierte Hinterlegung der Informationen auf der SPS einen Speicherbedarf von 60 Byte (480 Bit) erfordern, während die codierte Darstellung nur 32,5 Byte (260 Bit) benötigt. In the example described here, an ASCII-based storage of the information on the PLC would require a memory requirement of 60 bytes (480 bits) while the coded representation requires only 32.5 bytes (260 bits).

ZITATE ENTHALTEN IN DER BESCHREIBUNG QUOTES INCLUDE IN THE DESCRIPTION

Diese Liste der vom Anmelder aufgeführten Dokumente wurde automatisiert erzeugt und ist ausschließlich zur besseren Information des Lesers aufgenommen. Die Liste ist nicht Bestandteil der deutschen Patent- bzw. Gebrauchsmusteranmeldung. Das DPMA übernimmt keinerlei Haftung für etwaige Fehler oder Auslassungen.This list of the documents listed by the applicant has been generated automatically and is included solely for the better information of the reader. The list is not part of the German patent or utility model application. The DPMA assumes no liability for any errors or omissions.

Zitierte Nicht-PatentliteraturCited non-patent literature

  • http://ExamplePlant/ExampleStation/PLC1#Temperature [0005] http: // ExamplePlant / ExampleStation / PLC1 # Temperature [0005]
  • http://ExamplePlant/ExampleStation/PLC1#Temperature [0010] http: // ExamplePlant / ExampleStation / PLC1 # Temperature [0010]
  • http://ExamplePlant/ExampleStation/PLC1#Pressure [0010] http: // ExamplePlant / ExampleStation / PLC1 # Pressure [0010]
  • http://ExamplePlant/ExampleStation/PLC1 [0011] http: // ExamplePlant / ExampleStation / PLC1 [0011]
  • http://ExamplePlant/ExampleStation/PLC1#Temperature [0023] http: // ExamplePlant / ExampleStation / PLC1 # Temperature [0023]
  • http://ExamplePlant/ExampleStation/PLC1#Pressure [0023] http: // ExamplePlant / ExampleStation / PLC1 # Pressure [0023]
  • http://ExamplePlant/ExampleStation/PLC1 [0024] http: // ExamplePlant / ExampleStation / PLC1 [0024]
  • http://ExamplePlant/ExampleStation/PLC1#Temperature#Pressure [0024] http: // ExamplePlant / ExampleStation / PLC1 # Temperature # Pressure [0024]
  • http://cryptool-online.org [0025] http://cryptool-online.org [0025]

Claims (8)

Verfahren zur homogenen Integration einer speicherprogrammierbaren Steuerung zur Steuerung einer Anlage, bestehend aus Anlagen-Komponenten, welche mittels eines hierarchischen Anlagenmodells der Struktur der Anlage und des Prozessablaufs in der Anlage beschrieben ist, wobei Informationen die Anlage betreffend mittels eindeutiger Variablennamen referenziert sind, und wobei die eindeutigen Variablennamen analog zur hierarchischen Struktur der Anlage hierarchisch aufgebaut sind und die referenzierten Variablennamen jeweils Unterelemente eines gemeinsamen übergeordneten Elternelements im Anlagenmodell sind dadurch gekennzeichnet, dass der das übergeordneten Elternelement referenzierende gemeinsame Präfix der Variablennamen extrahiert, in codierter Form auf der Steuerung außerhalb der Variablentabelle gehalten und von den codierten Variablennamen aus transparent referenziert wird. Method for the homogeneous integration of a programmable logic controller for controlling a system, consisting of system components, which is described by means of a hierarchical system model of the structure of the system and the process flow in the system, wherein information concerning the system are referenced by means of unique variable names, and wherein the unambiguous variable names are hierarchically structured analogously to the hierarchical structure of the system and the referenced variable names are respectively subelements of a common parent element in the system model characterized in that the common prefix of the variable names referencing the parent element is extracted, held in coded form on the control outside the variable table and is referenced transparently from the coded variable names. Verfahren gemäß Patentanspruch 1, dadurch gekennzeichnet, dass es sich bei dem Variablennamen um einen Uniform Ressource Identifyer URI oder einen Internationalized Ressource Identifyer IRI handelt. Method according to claim 1, characterized in that the variable name is a Uniform Resource Identifier URI or an Internationalized Resource Identifier IRI. Verfahren gemäß Patentanspruch 1 oder 2, dadurch gekennzeichnet, dass es sich bei den die Anlage betreffenden Informationen um Informationen zur einer Anlagen-Komponente, Informationen zum Betrieb der Anlage, oder um Informationen zur Wertgrenze einer Anlagen-Komponente handelt. Method according to claim 1 or 2, characterized in that the information concerning the installation is information about a plant component, information about the operation of the plant, or information about the value limit of a plant component. Verfahren gemäß einem der Patentansprüche 1 bis 3, dadurch gekennzeichnet, dass der Variablenname transparent in einer Symboltabelle als Bitkette gespeichert werden. Method according to one of the claims 1 to 3, characterized in that the variable names are stored transparently in a symbol table as a bit string. Verfahren gemäß einem der vorherigen Patentansprüche, dadurch gekennzeichnet, dass die Komprimierung des Variablennamen mittels eines Codierverfahrens geschieht, insbesondere mittels ASCII-Huffman-Codierung. Method according to one of the preceding claims, characterized in that the compression of the variable name is done by means of a coding method, in particular by means of ASCII-Huffman coding. Verfahren gemäß Patentanspruch 5, dadurch gekennzeichnet, dass die Konfiguration des Codierverfahrens auf der Steuerung separat außerhalb der Symboltabelle gehalten wird. A method according to claim 5, characterized in that the configuration of the coding method on the controller is kept separately outside the symbol table. Verfahren gemäß einem der vorherigen Patentansprüche, dadurch gekennzeichnet, dass nur als sicher geltende Zugriffe auf die Variable zugelassen werden. Method according to one of the preceding claims, characterized in that only valid accesses to the variable are permitted. System zur Durchführung des Verfahrens gemäß einem der Patentansprüche 1 bis 7. System for carrying out the method according to one of the claims 1 to 7.
DE102015213700.7A 2015-07-21 2015-07-21 Method and system for homogeneous integration of programmable logic controllers in a plant model Withdrawn DE102015213700A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
DE102015213700.7A DE102015213700A1 (en) 2015-07-21 2015-07-21 Method and system for homogeneous integration of programmable logic controllers in a plant model

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE102015213700.7A DE102015213700A1 (en) 2015-07-21 2015-07-21 Method and system for homogeneous integration of programmable logic controllers in a plant model

Publications (1)

Publication Number Publication Date
DE102015213700A1 true DE102015213700A1 (en) 2017-01-26

Family

ID=57738969

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102015213700.7A Withdrawn DE102015213700A1 (en) 2015-07-21 2015-07-21 Method and system for homogeneous integration of programmable logic controllers in a plant model

Country Status (1)

Country Link
DE (1) DE102015213700A1 (en)

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6385496B1 (en) * 1999-03-12 2002-05-07 Fisher-Rosemount Systems, Inc. Indirect referencing in process control routines
US20030225462A1 (en) * 2002-04-15 2003-12-04 Bachman George E. Component object model communication method for process, factory-floor, environmental, computer aided manufacturing-based or other control system
US20090210071A1 (en) * 2007-10-01 2009-08-20 Agrusa Russell L Operational process control data server
US20100305720A1 (en) * 2009-05-29 2010-12-02 Invensys Systems, Inc. Methods and apparatus for control configuration with control objects that are fieldbus protocol-aware
US20140032555A1 (en) * 2012-06-07 2014-01-30 Honeywell International Inc. System and method to classify telemetry from automation systems
US20150134733A1 (en) * 2013-11-08 2015-05-14 Rockwell Automation Technologies, Inc. Industrial monitoring using cloud computing

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6385496B1 (en) * 1999-03-12 2002-05-07 Fisher-Rosemount Systems, Inc. Indirect referencing in process control routines
US20030225462A1 (en) * 2002-04-15 2003-12-04 Bachman George E. Component object model communication method for process, factory-floor, environmental, computer aided manufacturing-based or other control system
US20090210071A1 (en) * 2007-10-01 2009-08-20 Agrusa Russell L Operational process control data server
US20100305720A1 (en) * 2009-05-29 2010-12-02 Invensys Systems, Inc. Methods and apparatus for control configuration with control objects that are fieldbus protocol-aware
US20140032555A1 (en) * 2012-06-07 2014-01-30 Honeywell International Inc. System and method to classify telemetry from automation systems
US20150134733A1 (en) * 2013-11-08 2015-05-14 Rockwell Automation Technologies, Inc. Industrial monitoring using cloud computing

Non-Patent Citations (4)

* Cited by examiner, † Cited by third party
Title
http://cryptool-online.org
http://ExamplePlant/ExampleStation/PLC1
http://ExamplePlant/ExampleStation/PLC1#Temperature
http://ExamplePlant/ExampleStation/PLC1#Temperature#Pressure

Similar Documents

Publication Publication Date Title
EP3158462B1 (en) Device with interface and method to control database access
EP3782354B1 (en) Method for communication between an application and a machine in a fabrication
WO2004077305A1 (en) System and method for managing and exchanging the data of a technical project, technical installation and individual installation components
DE102013111690A1 (en) Method for providing limited access keys for field devices
DE112014003087T5 (en) Program for common parameter interface generation and program for reading parameters
EP3076633A1 (en) Method for configuring a web service gateway and web service gateway
EP2439691A1 (en) Method and device for mechanical production of a process diagram
DE102008038501A1 (en) Method for determining a static data structure of a field device
EP3391611B1 (en) Access key for a field device
EP2927818A1 (en) Method for automatically processing a number of protocol files of an automation system
WO2016110356A1 (en) Method for integration of semantic data processing
DE10155090A1 (en) Provision of information in an automation system
DE102014016180A1 (en) Method and device for managing and configuring field devices of an automation system
DE102015213700A1 (en) Method and system for homogeneous integration of programmable logic controllers in a plant model
DE102010027963A1 (en) Method for operating field device e.g. pressure measuring device for detecting pressure in process automation engineering, involves providing list of static parameters whose value is changed such that list is read by control tool
DE102014019368A1 (en) Device for managing and configuring field devices of an automation system
DE102014016819A1 (en) Method and device for managing and configuring field devices of an automation system
DE10342591A1 (en) Automation object or method for the information description of an automation object
EP1950635A1 (en) Method for operating an automation system
WO2002093476A2 (en) Graphic editor for ontologies of a database
van Holt et al. Investigation of the Phase Distribution in Packed Columns and Validation of a Cell Model
DE202008015021U1 (en) Programmable speed monitor for Safety at Work
DE102008057003B4 (en) Procedure for safe parameterization of AS Interface slaves
DE10103845A1 (en) computer system
EP2544057A1 (en) Method and device for accessing at least one value of at least one parameter of a module and method and module for providing at least one value of at least one parameter

Legal Events

Date Code Title Description
R163 Identified publications notified
R119 Application deemed withdrawn, or ip right lapsed, due to non-payment of renewal fee