DE102015204751A1 - DEVICE AND METHOD FOR CREATING APPLICATIONS FOR APPLICATIONS FOR A COMMUNICATION BETWEEN A SERVER AND A CLIENT OF AN AUTOMATION PLANT - Google Patents
DEVICE AND METHOD FOR CREATING APPLICATIONS FOR APPLICATIONS FOR A COMMUNICATION BETWEEN A SERVER AND A CLIENT OF AN AUTOMATION PLANT Download PDFInfo
- Publication number
- DE102015204751A1 DE102015204751A1 DE102015204751.2A DE102015204751A DE102015204751A1 DE 102015204751 A1 DE102015204751 A1 DE 102015204751A1 DE 102015204751 A DE102015204751 A DE 102015204751A DE 102015204751 A1 DE102015204751 A1 DE 102015204751A1
- Authority
- DE
- Germany
- Prior art keywords
- server
- client
- application
- communication object
- communication
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/30—Creation or generation of source code
- G06F8/35—Creation or generation of source code model driven
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/54—Interprogram communication
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer And Data Communications (AREA)
Abstract
Es ist eine Vorrichtung (30) und ein Verfahren zum Erstellen von Applikationen (12, 200, 300) für Anwendungen (2, 3) zur Kommunikation zwischen einem Server (10) und einem Client (20) einer Automatisierungsanlage (1; 2; 3) bereitgestellt. Die Vorrichtung (30) umfasst eine Erzeugungseinrichtung (32; 33) zur Erzeugung eines Rumpfprogramms (610) für eine auf dem Server (10) oder einer dem Server (10) vorgelagerten Anwendung ausführbare Applikation (12, 200, 300) auf der Grundlage einer Kommunikationsobjektbeschreibung (60), welche ein Kommunikationsobjekt zwischen dem Server (10) und dem Client (20) derart beschreibt, dass auch ein Rumpfprogramm (620) für eine Applikation (22, 600, 700) auf Seiten des Clients (20) mit der Erzeugungseinrichtung (32; 33) oder einer weiteren Erzeugungseinrichtung (33; 32) auf der Grundlage der Kommunikationsobjektbeschreibung (60) erzeugbar ist, und eine Bereitstelleinrichtung (34) zum Bereitstellen des Rumpfprogramms (610) für den Server (10) oder die dem Server (10) vorgelagerte Anwendung (2, 3), so dass eine Kommunikation zwischen dem Server (10) und dem Client (20) oder zwischen der dem Server (10) vorgelagerten Anwendung (2, 3) und dem Client (20) gemäß dem in der Kommunikationsobjektbeschreibung (60) beschriebenen Kommunikationsobjekt ausführbar ist. Alternativ oder zusätzlich kann auch eine Erzeugungseinrichtung (33; 32) zur Erzeugung eines Rumpfprogramms (620) für eine auf dem Client (20) oder einer dem Client (20) vorgelagerten Anwendung ausführbare Applikation (22, 600, 700) auf der Grundlage einer Kommunikationsobjektbeschreibung (60) vorgesehen sein.It is a device (30) and a method for creating applications (12, 200, 300) for applications (2, 3) for communication between a server (10) and a client (20) of an automation system (1, 2, 3 ) provided. The device (30) comprises a generating device (32; 33) for generating a body program (610) for an application (12, 200, 300) executable on the server (10) or an application (10) upstream of the server (10) on the basis of a A communication object description (60) which describes a communication object between the server (10) and the client (20) such that a trunk program (620) for an application (22, 600, 700) on the side of the client (20) with the generation device (32; 33) or another generation device (33; 32) can be generated on the basis of the communication object description (60), and a provisioning device (34) for providing the core program (610) for the server (10) or the server (10 ) upstream application (2, 3), so that a communication between the server (10) and the client (20) or between the server (10) upstream application (2, 3) and the client (20) according to the in the Kommunikationsobj ektbeschreibung (60) described is executable communication object. Alternatively or additionally, a generating device (33; 32) for generating a body program (620) for an application (22, 600, 700) executable on the client (20) or an application upstream of the client (20) on the basis of a communication object description (60) be provided.
Description
Die vorliegende Erfindung bezieht sich auf eine Vorrichtung und ein Verfahren zum Erstellen von Applikationen für Anwendungen zur Kommunikation zwischen einem Server und einem Client einer Automatisierungsanlage.The present invention relates to an apparatus and a method for creating applications for applications for communication between a server and a client of an automation system.
Automatisierungsanlagen werden bei der Fertigung von Produkten, wie Fahrzeugen, Teile für Fahrzeuge, Textilien, Zeitungen, Möbel, Elektrogeräte, usw. eingesetzt. Hierbei kann beispielsweise ein Produktionsleitsystem, das auch als mehrschichtiges Fertigungsmanagementsystem (Manufacturing Execution System = MES) bezeichnet wird, mit einer speicherprogrammierbaren Steuerung kommunizieren, die nachfolgend auch kurz SPS genannt wird.Automation systems are used in the manufacture of products such as vehicles, parts for vehicles, textiles, newspapers, furniture, electrical appliances, etc. Here, for example, a production control system, which is also referred to as a multi-level manufacturing management system (Manufacturing Execution System = MES), communicate with a programmable logic controller, which is also referred to below as PLC.
Das Produktionsleitsystem ist in der Regel direkt an alle verteilten Systeme der Prozessautomatisierung angebunden und ermöglicht die Führung und/oder Lenkung und/oder Steuerung und/oder Kontrolle der gesamten Produktion in Echtzeit. Hierfür wird eine klassische Datenerfassung und Datenaufbereitung durchgeführt, wie beispielsweise eine Betriebsdatenerfassung, Maschinendatenerfassung und Personaldatenerfassung. Es können aber auch alle anderen Prozesse, die eine zeitnahe Auswirkung auf den Fertigungs-/Produktionsprozess haben, in der klassischen Datenerfassung und -aufbereitung umfasst sein.The production control system is usually connected directly to all distributed process automation systems and allows the management and / or control and / or control and / or control of the entire production in real time. For this purpose, a classic data acquisition and data processing is performed, such as an operating data acquisition, machine data collection and personal data collection. However, all other processes that have a timely effect on the production / production process can also be included in the classic data collection and processing.
Das Produktionsleitsystem ist ein mehrschichtiges Gesamtsystem, das die betriebswirtschaftlichen berichtenden und die Produktion planenden Ebenen eines Unternehmens und den eigentlichen Fertigungs- bzw. Produktionsprozess in der Fertigungs- bzw. Automatisierungsebene, in der beispielsweise die SPS angeordnet ist, reflektiert. Insbesondere dient das Produktionsleitsystem der fortlaufend steuernden Durchsetzung (engl. execution) einer bestehenden und gültigen Planung und der Rückmeldung aus der Ausführung der Planung.The production control system is a multi-layered overall system, which reflects the business reporting and production planning levels of a company and the actual production or production process in the manufacturing or automation level, in which the PLC is arranged, for example. In particular, the production control system serves the ongoing controlling enforcement of existing and valid planning and the feedback from the execution of the planning.
Zwischen dem Produktionsleitsystem und der SPS als einzelne Komponente des Gesamtsystems erfolgt die Datenübertragung über vordefinierte Datentypen und/oder Datenstrukturen, die mindestens zwei variable Grunddatentypen aufweisen. Die Definition auf der Seite des Produktionsleitsystems erfolgt in der Regel zuerst. Am Ende der Inbetriebnahme der Automatisierungsanlage werden dann SPS-seitig die erforderlichen Datenstrukturen mit den mindestens zwei variablen Grunddatentypen angelegt und mit Leben erfüllt.Between the production control system and the PLC as a single component of the overall system, the data is transferred via predefined data types and / or data structures that have at least two variable basic data types. The definition on the production control system side is usually first. At the end of commissioning of the automation system, the required data structures with at least two variable basic data types are created on the PLC side and brought to life.
Nachteilig daran ist, dass sowohl ein Programmierer des MES-Systems als auch ein Programmierer der SPS die erforderlichen Datenstrukturen, Methoden, wie beispielsweise ein Arbeitsablauf oder eine Änderung von Betriebsarten, usw., und Events, wie beispielsweise eine Fehlermeldung oder Meldungen eines Zustandsautomats, usw., nachträglich in der SPS anlegen und die Datenversorgung programmieren muss. Aufgrund von in der Zwischenzeit auftretenden Änderungen muss bei der ersten Kommunikation zwischen dem Produktionsleitsystem und der SPS häufig nachgebessert werden. Dies ist sehr mühsam und zeitaufwändig und daher kostenintensiv. Vor allem bei einem großen Gesamtsystem ergibt sich dadurch ein beträchtlicher Aufwand.The disadvantage of this is that both a programmer of the MES system and a programmer of the PLC, the necessary data structures, methods such as a workflow or a change of operating modes, etc., and events, such as an error message or messages of a state machine, etc ., subsequently create in the PLC and program the data supply. Due to changes that have occurred in the meantime, the initial communication between the production control system and the PLC must often be improved. This is very tedious and time consuming and therefore costly. Especially with a large overall system, this results in a considerable effort.
Ein weiterer Nachteil ergibt sich daraus, dass die Änderung der Client- und Server-seitigen Funktionalität oft getrennt programmiert wird. Hierbei sind normalerweise unterschiedliche Personen tätig. Dies bringt einen erhöhten Dokumentations- und/oder Abstimmungsbedarf mit sich, der zeit- und kostenintensiv ist.Another disadvantage arises from the fact that the change of the client and server-side functionality is often programmed separately. There are usually different people working here. This entails an increased need for documentation and / or coordination, which is time-consuming and cost-intensive.
Schwierigkeiten entstehen auch dadurch, dass die semantische Bedeutung der Variablen für die Kommunikation häufig nur unzureichend beschrieben wird. Beispielsweise ist nicht immer klar, ob es sich bei der Variable um einen Wert handelt oder ob die Variable ein Auslöser einer Funktion oder eine Anzeige eines Ereignisses oder eines Ablaufs ist. Noch dazu sind oft die Abläufe in Bezug darauf unklar, wer wann was wie ausführen muss, oder welcher Wert einer Variablen welchen Zustand herbeiführt. Daher muss für die Kommunikation zwischen dem Produktionsleitsystem oder einem ähnlichen System und der SPS entsprechend geschultes Fachpersonal eingesetzt werden. Trotzdem ist die Inbetriebnahme der Kommunikation zwischen dem Produktionsleitsystem oder einem ähnlichen System und der SPS schwierig einzurichten. Alles dies trägt zu einer weiteren Verteuerung der Realisierung einer zuverlässigen Kommunikation mit den gewünschten Funktionen zwischen dem Produktionsleitsystem oder einem ähnlichen System und der SPS bei.Difficulties also arise because the semantic meaning of variables for communication is often described inadequately. For example, it is not always clear if the variable is a value or if the variable is a trigger of a function or an indication of an event or expiration. In addition, often the procedures are unclear as to who needs to do what and when, or what value of a variable causes which state. Therefore, appropriately trained personnel must be used for communication between the production control system or a similar system and the PLC. Nevertheless, the commissioning of the communication between the production control system or a similar system and the PLC is difficult to set up. All this contributes to further increasing the cost of implementing reliable communication with the desired functions between the production control system or similar system and the PLC.
Daher ist es Aufgabe der vorliegenden Erfindung, eine Vorrichtung und ein Verfahren zum Erstellen von Applikationen für Anwendungen zur Kommunikation zwischen einem Server und einem Client einer Automatisierungsanlage bereitzustellen, mit welchen die zuvor genannten Probleme gelöst werden können. Insbesondere sollen eine Vorrichtung und ein Verfahren zum Erstellen von Applikationen für Anwendungen zur Kommunikation zwischen einem Server und einem Client einer Automatisierungsanlage bereitgestellt werden, bei welchen die Realisierung eines Datenaustauschs, das Auslösen von Funktionen sowie das Absetzen von Events, gegebenenfalls mit Datenstrukturen, zwischen Teilnehmern einer Kommunikation vereinfacht und damit günstiger wird.It is therefore an object of the present invention to provide an apparatus and a method for creating applications for applications for communication between a server and a client of an automation system, with which the aforementioned problems can be solved. In particular, an apparatus and a method for creating applications for communications between a server and a client of an automation system are to be provided, in which the realization of a data exchange, the triggering of functions and the issuing of events, possibly with data structures, between participants of a Communication is simplified and thus cheaper.
Die Aufgabe wird durch eine Vorrichtung zum Erstellen von Applikationen für Anwendungen zur Kommunikation zwischen einem Server und einem Client einer Automatisierungsanlage nach Patentanspruch 1 gelöst. Die Vorrichtung umfasst eine Erzeugungseinrichtung zur Erzeugung eines Rumpfprogramms für eine auf dem Server oder einer dem Server vorgelagerten Anwendung, wie eine SPS, ausführbare Applikation auf der Grundlage einer Kommunikationsobjektbeschreibung, welche ein Kommunikationsobjekt zwischen dem Server und dem Client derart beschreibt, dass auch ein Rumpfprogramm für eine Applikation auf Seiten des Clients mit der Erzeugungseinrichtung oder einer weiteren Erzeugungseinrichtung auf der Grundlage der Kommunikationsobjektbeschreibung erzeugbar ist, und eine Bereitstelleinrichtung zum Bereitstellen des Rumpfprogramms für den Server oder die dem Server vorgelagerte Anwendung, so dass eine Kommunikation zwischen dem Server und dem Client oder zwischen der dem Server vorgelagerten Anwendung und dem Client gemäß dem in der Kommunikationsobjektbeschreibung beschriebenen Kommunikationsobjekt ausführbar ist. The object is achieved by a device for creating applications for applications for communication between a server and a client of an automation system according to
Die Aufgabe wird durch eine Vorrichtung zum Erstellen von Applikationen für Anwendungen zur Kommunikation zwischen einem Server und einem Client einer Automatisierungsanlage nach Patentanspruch 2 gelöst. Die Vorrichtung umfasst eine Erzeugungseinrichtung zur Erzeugung eines Rumpfprogramms für eine auf dem Client oder einer dem Client vorgelagerten Anwendung, wie eine HMI, ausführbare Applikation auf der Grundlage einer Kommunikationsobjektbeschreibung, welche ein Kommunikationsobjekt zwischen dem Server und dem Client derart beschreibt, dass auch ein Rumpfprogramm für eine Applikation auf Seiten des Servers mit der Erzeugungseinrichtung oder einer weiteren Erzeugungseinrichtung auf der Grundlage der Kommunikationsobjektbeschreibung erzeugbar ist, und einer Bereitstelleinrichtung zum Bereitstellen des Rumpfprogramms für den Client oder die dem Client vorgelagerte Anwendung, so dass eine Kommunikation zwischen dem Server und dem Client oder zwischen dem Server und der dem Client vorgelagerten Anwendung gemäß dem in der Kommunikationsobjektbeschreibung beschriebenen Kommunikationsobjekt ausführbar ist.The object is achieved by a device for creating applications for communications between a server and a client of an automation system according to
Im einfachsten Fall stellt die Erzeugungseinrichtung dem Client die vorabdefinierten Datenstrukturen und/oder Datentypen sowie Definitionen von eventuell verwendeten Methoden und/oder Events in der jeweiligen Programmiersprache zur Verfügung.In the simplest case, the generating device provides the client with the predefined data structures and / or data types as well as definitions of any methods and / or events in the respective programming language.
Mit den Vorrichtungen ist jeweils eine schnelle Inbetriebnahme der Kommunikation und der zugehörigen Abläufe zwischen den einzelnen Komponenten der Automatisierungsanlage möglich, wie einem Server und einem Client., Der Server kann insbesondere eine SPS sein, die ihre Daten unmittelbar mit einem Server der Automatisierungsanlage austauscht. Der Clientkann insbesondere eine Mensch-Maschine-Schnittstelle (Human Machine Interface = HMI) sein, die ihre Daten unmittelbar über den Client mit anderen Komponenten der Automatisierungsanlage austauscht). Mit den Vorrichtungen kann innerhalb kürzester Zeit unter Verwendung einer Beschreibung, die in einer Beschreibungssprache oder bevorzugt als grafische Definition abgefasst ist, das gewünschte Kommunikationsobjekt beschrieben werden, so dass sowohl für die Client- als auch für die Serverseitige Anwendung einfach und sicher automatisch Programmcode generiert werden kann.With the devices, in each case a rapid startup of the communication and the associated processes between the individual components of the automation system is possible, such as a server and a client. The server can be in particular a PLC, which exchanges its data directly with a server of the automation system. In particular, the client may be a human machine interface (HMI) which exchanges its data directly with other components of the automation equipment via the client). With the devices can be described within a very short time using a description that is in a description language or preferably as a graphical definition, the desired communication object, so that both the client and the server-side application easily and safely generated automatically program code can.
Die Vorrichtung kann in allen Bereichen der Automatisierungstechnik zum Einsatz kommen, in denen zwischen zwei Kommunikationsteilnehmern Daten auszutauschen sind.The device can be used in all areas of automation technology in which data is to be exchanged between two communication participants.
Vorteilhafte weitere Ausgestaltungen der Vorrichtungen sind in den abhängigen Patentansprüchen angegeben.Advantageous further embodiments of the devices are specified in the dependent claims.
Möglicherweise ist die Erzeugungseinrichtung zudem ausgestaltet, mindestens eine Datenstruktur und/oder Datentyp und/oder Methode und/oder Event für den Client aus der Kommunikationsobjektbeschreibung zu erzeugen, und/oder die Bereitstellungseinheit ist zudem ausgestaltet zu prüfen, ob der Server und/oder der Client berechtigt ist, das jeweilige Rumpfprogramm und/oder die mindestens eine Datenstruktur und/oder Datentyp und/oder Methode und/oder Event zu empfangen.Possibly, the generating device is also configured to generate at least one data structure and / or data type and / or event for the client from the communication object description, and / or the provisioning unit is also designed to check whether the server and / or the client is entitled to receive the respective body program and / or the at least one data structure and / or data type and / or method and / or event.
In einer speziellen Ausgestaltung ist die Erzeugungseinrichtung zudem ausgestaltet, in dem Rumpfprogramm für den Client Sequenzen zu erzeugen, aufgrund welcher die Anwendung automatisch eine Kommunikationsverbindung mit dem Server herstellen kann, und/oder wobei die Erzeugungseinrichtung zudem ausgestaltet ist, aus einem Schlüsselwort in der Kommunikationsobjektbeschreibung eine vorbestimmte Codesequenz für die Applikation zu erzeugen. Auf diese Weise könnte auch noch zur Laufzeit Code, wie beispielsweise bestimmte SPS-Programmteile/Funktionsbausteine erzeugt, nachgeladen oder ausgewählt werden.In a special embodiment, the generating device is also configured to generate sequences in the body program for the client, on the basis of which the application can automatically establish a communication connection with the server, and / or wherein the generation device is also configured from a keyword in the communication object description generate predetermined code sequence for the application. In this way, even at runtime code, such as certain PLC program parts / function blocks generated, reloaded or selected.
Außerdem kann die Erzeugungseinrichtung ausgestaltet sein, aus der Kommunikationsobjektbeschreibung einen virtuellen Server oder einen virtuellen Client zu erzeugen.In addition, the generation device can be configured to generate a virtual server or a virtual client from the communication object description.
Vorzugsweise sind die Applikation auf Seiten des Servers und die Applikation auf Seiten des Clients ausgestaltet, in Echtzeit Daten gemäß dem Kommunikationsobjekt auszutauschen.Preferably, the application on the server side and the application on the client side are configured to exchange data according to the communication object in real time.
Zumindest eine der zuvor beschriebenen Vorrichtungen kann Teil einer Automatisierungsanlage sein, die zudem mindestens eine Anwendung mit Verbindung zu einem Server, und mindestens eine weitere Anwendung mit Verbindung zu einem Client aufweist, wobei der Client mit dem Server über eine Kommunikationsverbindung verbunden ist. Hierbei kann einem Server des mindestens einen Servers eine SPS und einem Client des mindestens einen Clients ein Produktionsleitsystem vorgelagert sein, oder eine Anwendung des Clients ein Produktionsleitsystem (MES) und eine Anwendung des Servers eine speicherprogrammierbare Steuerung (SPS) sein, und/oder einem Server des mindestens einen Servers kann eine speicherprogrammierbare Steuerung (SPS) und einem Client des mindestens einen Clients kann eine Mensch-Maschine-Schnittstelle (HMI) vorgelagert sein. Jegliche Kombinationen sind denkbar. Beispielsweise übernimmt ein Server für eine numerische Steuerung (Numeric Control = NC) und eine SPS die Kommunikation mit anderen Clients. At least one of the devices described above may be part of an automation system, which also has at least one application connected to a server, and at least one further application connected to a client, wherein the client is connected to the server via a communication link. In this case, a server of the at least one server, a PLC and a client of the at least one client may be preceded by a production control system, or an application of the client may be a production control system (MES) and an application of the server a programmable logic controller (PLC), and / or a server The at least one server may be preceded by a programmable logic controller (PLC) and a client of the at least one client may have a human-machine interface (HMI). Any combinations are conceivable. For example, a Numeric Control (NC) server and a PLC handle communication with other clients.
Die Aufgabe wird zudem durch ein Verfahren zum Erstellen von Applikationen für Anwendungen zur Kommunikation zwischen einem Server und einem Client einer Automatisierungsanlage nach Patentanspruch 8 gelöst. Das Verfahren weist die Schritte auf: Erzeugen, mit einer Erzeugungseinrichtung, eines Rumpfprogramms für eine auf dem Server oder einer dem Server vorgelagerten Anwendung, wie einer SPS), ausführbare Applikation auf der Grundlage einer Kommunikationsobjektbeschreibung, welche ein Kommunikationsobjekt zwischen dem Server und dem Client derart beschreibt, dass auch ein Rumpfprogramm für eine Applikation auf Seiten des Clients mit der Erzeugungseinrichtung oder einer weiteren Erzeugungseinrichtung auf der Grundlage der Kommunikationsobjektbeschreibung erzeugbar ist, und Bereitstellen, mit einer Bereitstelleinrichtung, des Rumpfprogramms für den Server oder die dem Server vorgelagerte Anwendung, so dass eine Kommunikation zwischen dem Server und dem Client oder zwischen der dem Server vorgelagerten Anwendung und dem Client gemäß dem in der Kommunikationsobjektbeschreibung beschriebenen Kommunikationsobjekt ausführbar ist.The object is also achieved by a method for creating applications for applications for communication between a server and a client of an automation system according to claim 8. The method comprises the steps of: generating, with a generator, a body program for an application upstream of the server or an application upstream of the server, such as a PLC), executable application based on a communication object description which is a communication object between the server and the client describes that also a body program for an application on the part of the client with the generation device or another generation device based on the communication object description can be generated, and providing, with a provisioning device, the core program for the server or the server upstream application, so that a Communication between the server and the client or between the server upstream application and the client according to the communication object described in the communication object description is executable.
Die Aufgabe wird zudem durch ein Verfahren zum Erstellen von Applikationen für Anwendungen zur Kommunikation zwischen einem Server und einem Client einer Automatisierungsanlage nach Patentanspruch 9 gelöst. Das Verfahren weist die Schritte auf: Erzeugen, mit einer Erzeugungseinrichtung, eines Rumpfprogramms für eine auf dem Client oder einer dem Client vorgelagerten Anwendung, wie einer HMI, ausführbare Applikation auf der Grundlage einer Kommunikationsobjektbeschreibung, welche ein Kommunikationsobjekt zwischen dem Server und dem Client derart beschreibt, dass auch ein Rumpfprogramm für eine Applikation auf Seiten des Servers mit der Erzeugungseinrichtung oder einer weiteren Erzeugungseinrichtung auf der Grundlage der Kommunikationsobjektbeschreibung erzeugbar ist, und Bereitstellen, mit einer Bereitstelleinrichtung, des Rumpfprogramms für den Client oder die dem Client vorgelagerte Anwendung, so dass eine Kommunikation zwischen dem Server und dem Client oder zwischen dem Server und der dem Client vorgelagerten Anwendung gemäß dem in der Kommunikationsobjektbeschreibung beschriebenen Kommunikationsobjekt ausführbar ist.The object is also achieved by a method for creating applications for applications for communication between a server and a client of an automation system according to claim 9. The method comprises the steps of generating, with a generating means, a body program for an application upstream of the client or a client, such as an HMI, executable application based on a communication object description describing a communication object between the server and the client in that a body program for an application can also be generated by the server with the generation device or another generation device on the basis of the communication object description, and providing, with a provisioning device, the trunk program for the client or the application upstream of the client, such that a communication between the server and the client or between the server and the application upstream of the client according to the communication object described in the communication object description is executable.
Die Verfahren erzielen die gleichen Vorteile, wie sie zuvor in Bezug auf die Vorrichtung genannt sind.The methods achieve the same advantages as previously mentioned with respect to the device.
Die Verfahren können zudem einen Schritt eines Erstellens der Kommunikationsobjektbeschreibung aufweisen.The methods may also include a step of creating the communication object description.
Weitere mögliche Implementierungen der Erfindung umfassen auch nicht explizit genannte Kombinationen von zuvor oder im Folgenden bezüglich der Ausführungsbeispiele beschriebenen Merkmale oder Ausführungsformen. Dabei wird der Fachmann auch Einzelaspekte als Verbesserungen oder Ergänzungen zu der jeweiligen Grundform der Erfindung hinzufügen.Further possible implementations of the invention also include not explicitly mentioned combinations of features or embodiments described above or below with regard to the exemplary embodiments. The skilled person will also add individual aspects as improvements or additions to the respective basic form of the invention.
Nachfolgend ist die Erfindung unter Bezugnahme auf die beiliegende Zeichnung und anhand von Ausführungsbeispielen näher beschrieben. Es zeigen:The invention is described in more detail below with reference to the accompanying drawings and to exemplary embodiments. Show it:
In den Figuren sind gleiche oder funktionsgleiche Elemente, sofern nichts anderes angegeben ist, mit denselben Bezugszeichen versehen.In the figures, identical or functionally identical elements are provided with the same reference numerals, unless stated otherwise.
Es sind beliebige andere Ausgestaltungen möglich. Beispielsweise ist es bei einer hier nicht weiter betrachteten Variante auch möglich, dass das Produktionsleitsystem
In
Die HMI
Die Vorrichtung
Die erste Erzeugungseinheit
Die Bereitstellung der Rumpfprogramme
Beispielsweise hat die Datenstruktur
Die Datenstrukturen
In dem Beispiel von
Das Objekt „EnergyManagement” in der Kommunikationsobjektbeschreibung
In
Ein Pfeil EN (EventNotification) in
Wie durch einen Pfeil WD (WriteData) in
Ein Pfeil DCN (DataChangeNotification) in
Ein weiterer Pfeil RD (ReadData) in
Ein Pfeil IR (InvokeRoutine) in
Gemäß
Somit wird bei dem Schritt S1 eine eindeutige Beschreibung des Kommunikationsobjekts für die jeweils benötigte Funktionalität der Kommunikation zwischen Server
Bei dem Schritt S2 wird das Rumpfprogramm
Bei dem Schritt S3 wird das Rumpfprogramm
Bei dem Schritt S4 werden die Rumpfprogramme
Bei dem Verfahren müssen der Schritt S2 und S3 nicht in der genannten Reihenfolge nacheinander ausgeführt werden. Der Schritt S3 kann auch vor dem Schritt S2 ausgeführt werden. Außerdem ist es möglich, dass bei nachfolgenden Änderungen des Kommunikationstyps auch nur entweder der Schritt S2 oder der Schritt S3 ausgeführt wird, wenn die Änderung des Kommunikationstyps nur Auswirkungen auf eines der Rumpfprogramme
Somit können sowohl für die Client- als auch für die Server-seitige Applikation
Auf diese Weise können Änderungen der Kommunikation zwischen dem Server
Ein großer Vorteil bei der zuvor geschilderten Ausführung liegt darin, dass nur eine Quelle zur Kommunikationsbeschreibung, nämlich die Kommunikationsobjektbeschreibung
In einer Modifikation des ersten Ausführungsbeispiels kann die Bereitstellung der Beschreibung der Datenstrukturen
Somit ist hier die Erzeugungseinrichtung
Gleiches soll auch auf Client-Seite ermöglicht werden, wie in
In diesem Fall ist also die Erzeugungseinrichtung
Alle zuvor beschriebenen Ausgestaltungen der Automatisierungsanlagen
Die in den Figuren dargestellten Teile sind schematisch dargestellt und können in der genauen Ausgestaltung von den in den Figuren gezeigten Formen abweichen, solange deren zuvor beschriebenen Funktionen gewährleistet sind.The parts shown in the figures are shown schematically and may differ in the exact embodiment of the shapes shown in the figures, as long as their functions described above are guaranteed.
Es ist auch denkbar, dass der Server
Außerdem ist es möglich, dass die Vorrichtung
Claims (10)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE102015204751.2A DE102015204751A1 (en) | 2015-03-17 | 2015-03-17 | DEVICE AND METHOD FOR CREATING APPLICATIONS FOR APPLICATIONS FOR A COMMUNICATION BETWEEN A SERVER AND A CLIENT OF AN AUTOMATION PLANT |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE102015204751.2A DE102015204751A1 (en) | 2015-03-17 | 2015-03-17 | DEVICE AND METHOD FOR CREATING APPLICATIONS FOR APPLICATIONS FOR A COMMUNICATION BETWEEN A SERVER AND A CLIENT OF AN AUTOMATION PLANT |
Publications (1)
Publication Number | Publication Date |
---|---|
DE102015204751A1 true DE102015204751A1 (en) | 2016-09-22 |
Family
ID=56852733
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE102015204751.2A Withdrawn DE102015204751A1 (en) | 2015-03-17 | 2015-03-17 | DEVICE AND METHOD FOR CREATING APPLICATIONS FOR APPLICATIONS FOR A COMMUNICATION BETWEEN A SERVER AND A CLIENT OF AN AUTOMATION PLANT |
Country Status (1)
Country | Link |
---|---|
DE (1) | DE102015204751A1 (en) |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6230117B1 (en) * | 1997-03-27 | 2001-05-08 | International Business Machines Corporation | System for automated interface generation for computer programs operating in different environments |
US6578191B1 (en) * | 1999-05-17 | 2003-06-10 | International Business Machines Corporation | Method and apparatus for dynamic generation of adapters |
US6708074B1 (en) * | 2000-08-11 | 2004-03-16 | Applied Materials, Inc. | Generic interface builder |
EP2088507A2 (en) * | 2008-01-31 | 2009-08-12 | NCR Corporation | Interoperability method and software |
US8510762B1 (en) * | 2011-10-12 | 2013-08-13 | Google Inc. | Generate custom client library samples based on a machine readable API description |
WO2014061516A1 (en) * | 2012-10-19 | 2014-04-24 | 国立大学法人東京大学 | Method and device for generation of conversion module linking between different robot middleware types |
-
2015
- 2015-03-17 DE DE102015204751.2A patent/DE102015204751A1/en not_active Withdrawn
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6230117B1 (en) * | 1997-03-27 | 2001-05-08 | International Business Machines Corporation | System for automated interface generation for computer programs operating in different environments |
US6578191B1 (en) * | 1999-05-17 | 2003-06-10 | International Business Machines Corporation | Method and apparatus for dynamic generation of adapters |
US6708074B1 (en) * | 2000-08-11 | 2004-03-16 | Applied Materials, Inc. | Generic interface builder |
EP2088507A2 (en) * | 2008-01-31 | 2009-08-12 | NCR Corporation | Interoperability method and software |
US8510762B1 (en) * | 2011-10-12 | 2013-08-13 | Google Inc. | Generate custom client library samples based on a machine readable API description |
WO2014061516A1 (en) * | 2012-10-19 | 2014-04-24 | 国立大学法人東京大学 | Method and device for generation of conversion module linking between different robot middleware types |
Non-Patent Citations (1)
Title |
---|
WO 2014061516 A1 (abstract). WPI [online]. |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP1330685B1 (en) | Testing method and testing device for starting up systems which are controlled by means of a program logic | |
EP2799983B1 (en) | Flexible distribution of I/O channels of a hardware component | |
DE112011100069T5 (en) | A method of developing software and apparatus for the same | |
DE112014001359T5 (en) | Predictive system for deploying enterprise applications | |
DE102011055657A1 (en) | Method, system and computer program product for simulating a production automation system with service-oriented architecture | |
EP3948446A1 (en) | Generating and distributing configuration data structures for control systems | |
AT412131B (en) | AUTOMATION SYSTEM FOR SOLVING A PROCESS TECHNICAL TASK AND METHOD FOR THIS | |
EP1634130B1 (en) | Device and method for programming and/or executing programs for industrial automation systems | |
DE10324594A1 (en) | Method for providing improved simulation capabilities of a dynamic system outside of the original modeling environment | |
EP3709188A1 (en) | Computer architecture for an interface for aggregation of data objects in a distributed system | |
DE10215653A1 (en) | Program code automatic generation method in which program code sections are generated using input and output controls or masks so that flexible engineering workflows can be gernated | |
DE102015204751A1 (en) | DEVICE AND METHOD FOR CREATING APPLICATIONS FOR APPLICATIONS FOR A COMMUNICATION BETWEEN A SERVER AND A CLIENT OF AN AUTOMATION PLANT | |
DE10354938B4 (en) | Automated management data processing system and method for automated management of a data processing system | |
WO2010034548A1 (en) | Test module and method for testing an o/r imaging middleware | |
EP3771979A1 (en) | Method and device for optimal configuration of a device of a device class | |
DE102004023634B4 (en) | Method for checking the completeness and consistency of an information library | |
AT522186B1 (en) | Computer-implemented method for the computer-aided generation of an executable control program for controlling and / or regulating a technical process | |
EP2093663A1 (en) | Engineering system for developing a project and method | |
DE102020005055A1 (en) | Adaptation of data transmission from a control device to a cloud system using machine learning | |
DE102008060970A1 (en) | Device for generating a marked reference data stream | |
DE102021119116A1 (en) | Technology for realizing a visualization for an automation system with a programmable logic controller | |
WO2023208578A1 (en) | Method and computer program for automatically generating communication interfaces in algorithms from the field of artificial intelligence | |
EP3376736A1 (en) | Method and device for communications of data in a computer network and computer program with an implementation of the method | |
DE102021123596A1 (en) | Technique for providing diagnostic functionality for a programmable logic controller based application | |
DE102021210933A1 (en) | Computer-implemented method and computing unit for controlling a device through voice input |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
R163 | Identified publications notified | ||
R005 | Application deemed withdrawn due to failure to request examination |