DE19818041A9 - Computer design generating method for operating and monitoring guiding system - Google Patents

Computer design generating method for operating and monitoring guiding system

Info

Publication number
DE19818041A9
DE19818041A9 DE1998118041 DE19818041A DE19818041A9 DE 19818041 A9 DE19818041 A9 DE 19818041A9 DE 1998118041 DE1998118041 DE 1998118041 DE 19818041 A DE19818041 A DE 19818041A DE 19818041 A9 DE19818041 A9 DE 19818041A9
Authority
DE
Germany
Prior art keywords
client
telegram
variable
message
version
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.)
Granted
Application number
DE1998118041
Other languages
German (de)
Other versions
DE19818041A1 (en
DE19818041B4 (en
Inventor
Friedhelm Dipl.-Inform. 59069 Hamm Klockenhoff
Klaus Dipl.-Ing. 59192 Bergkamen Kollenberg
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
Filing date
Publication of DE19818041A9 publication Critical patent/DE19818041A9/en
Application filed by Siemens AG filed Critical Siemens AG
Priority to DE19818041A priority Critical patent/DE19818041B4/en
Priority claimed from DE19818041A external-priority patent/DE19818041B4/en
Publication of DE19818041A1 publication Critical patent/DE19818041A1/en
Application granted granted Critical
Publication of DE19818041B4 publication Critical patent/DE19818041B4/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Abstract

Um eine überaus einfache, bedienerfreundliche und kostengünstige Handhabung von Leitsystemen (2), insbesondere für Prozeß- und Produktionsanlagen zu ermöglichen, wird mit der vorliegenden Erfindung ein Verfahren zur Erzeugung einer Oberfläche zum Bedienen und Beobachten von Leitsystemen (2), insbesondere für Prozeß- und Produktionsanlagen, vorgeschlagen, wobei im Bereich von Leitsystemen (2) anfallende Informationen von einem an wenigstens ein Leitsystem (2) adaptierbaren Server-Rechner (4) über ein Client-Server-Rechner-Netzwerk auf einem Client-Rechner (5) in Eingabe- und Anzeigeelementen (17) visualisiert werden. In order to enable an extremely simple, user-friendly and inexpensive handling of control systems (2), in particular for process and production systems, the present invention provides a method for generating a surface for operating and monitoring control systems (2), in particular for process and production systems Production plants, proposed, whereby information from a server computer (4) adaptable to at least one control system (2) via a client-server computer network on a client computer (5) in input and display elements (17) are visualized.

Description

Beschreibungdescription

Die vorliegende Erfindung betrifft ein Verfahren zur Erzeugung einer Oberfläche zum Bedienen und Beobachten von Leitsystemen, insbesondere für Prozeß- und Produktionsanlagen. Im Bereich der Leitsystemtechnik werden Oberflächen für die Überwachung und/oder Steuerung von industriellen Anlagen benötigt. Sie dienen dabei der visuellen Darstellung von Prozeßvorgängen, Meß- und Regelungsgrößen und/oder Bedieneinheiten.The present invention relates to a method for generating a surface for operating and monitoring Control systems, in particular for process and production systems. Surfaces are used in the field of control system technology required for the monitoring and / or control of industrial systems. They serve the visual representation of process operations, measurement and control variables and / or operating units.

So sind unterschiedliche plattformspezifische Visualisierungs- und Bedienkonzepte bekannt, die aufgrund der verschiedenen Hardware- und Software-Plattformen keinen Raum für einen systemübergreifenden Informationsaustausch zulassen. Ferner sind die im Bereich der Leitsystemtechnik anfallenden Informationen, beispielsweise Prozeßabläufe beschreibende Eingangs-, Zustands- und Ausgangsgrößen sowie deren Beziehungen untereinander, Sollwerte, Sollzustände und dergleichen, wie sie bei verschiedenen Prozeß- und Produktionsanlagen anfallen, beispielsweise in Kraftwerken, Raffinerien, Frachtsystemen und dergleichen, nur lokal verfügbar, das heißt im weitesten Sinne direkt vor Ort.Different platform-specific visualization and operating concepts are known which, due to the different Hardware and software platforms do not have room for cross-system information exchange allow. Furthermore, the information arising in the field of control system technology, for example process sequences, is descriptive Input, status and output variables and their relationships to one another, setpoints, setpoints and the like, as they occur in various process and production systems, for example in power plants, Refineries, freight systems and the like, only available locally, that is in the broadest sense directly on site.

Es besteht ein Bedarf an einheitlichen Visualisierungs- und Bedienkonzepten, um einerseits dem Bedienpersonal einen einfachen Umgang mit diesen zu ermöglichen, so daß beispielsweise eine schnelle Einarbeitungszeit in unterschiedliche Systeme aufgrund einer einheitlichen, dem Benutzer vertrauten Grundstruktur gegeben ist, und zum anderen um in möglichst vielen Ebenen des Leitsystems einen modularen Aufbau zu ermöglichen, beispielsweise mit standardisierten Komponenten. Um dabei möglichst umfassende Einsatzmöglichkeiten nutzen zu können, ist es erforderlich losgelöst von jeweils gegebenen Hardware- und Softwareumgebungen agieren zu können, also plattformunabhängige Systeme bereitzustellen, die damit gleichzeitig einen systemübergreifenden Informationsaustausch ermöglichen. Ferner ist bei Leitsystemen ein Bedarf hinsichtlich hoher Verfügbarkeit gegeben.There is a need for uniform visualization and operating concepts in order, on the one hand, to give the operating personnel a to enable simple handling of these, so that, for example, a quick familiarization period in different Systems based on a uniform basic structure familiar to the user is given, and on the other hand in order to be as possible to enable a modular structure for many levels of the control system, for example with standardized components. In order to be able to use the widest possible range of possible applications, it is necessary to separate it from each to be able to act in given hardware and software environments, i.e. to provide platform-independent systems, which at the same time enable a cross-system exchange of information. It is also in the case of control systems there is a need for high availability.

Der vorliegenden Erfindung liegt die Aufgabe zugrunde, ein Verfahren zur Erzeugung einer Oberfläche zum Bedienen und Beobachten von Leitsystemen, insbesondere für Prozeß- und Produktionsanlagen, anzugeben, welches eine überaus einfache, bedienerfreundliche und kostengünstige Handhabung von Leitsystemen, insbesondere für Prozeß- und Produktionsanlagen, ermöglicht.The present invention is based on the object of a method for generating a user interface and observation of control systems, especially for process and production systems, to indicate which one is the most simple, user-friendly and inexpensive handling of control systems, especially for process and production systems, enables.

Zur technischen Lösung wird ein Verfahren zur Erzeugung einer Oberfläche zum Bedienen und Beobachten von Leitsystemen, insbesondere für Prozeß- und Produktionsanlagen, bereitgestellt, wobei im Bereich von Leitsystemen anfallende Informationen von einem an wenigstens ein Leitsystem adaptierbaren Server-Rechner über ein Client-Server-Rechner-Netzwerk auf einem Client-Rechner in Eingabe- und Anzeigeelementen viusalisiert werden.For the technical solution, a method for generating a surface for operating and monitoring control systems is required, in particular for process and production plants, provided in the area of control systems Information from a server computer that can be adapted to at least one control system via a client-server computer network be viusalized in input and display elements on a client computer.

Verfahrensgemäß sind die im Bereich von Leitsystemen anfallenden Informationen über einen an das jeweilige Leitsystem adaptierbaren Server-Rechner für einen im Client-Server-Rechner-Netzwerk vorhandenen Client-Rechner zugänglich, wobei die Informationen vom S erver-Rechner auf dem Client-Rechner in Eingabe- und Anzeigeelementen visualisiert werden. Dabei werden die Informationen erst seitens des Client-Rechners aufbereitet und ausgewertet und in den entsprechenden Eingabe- und Anzeigeelementen visualisiert. Die Informationen können so von dem Server-Rechner beispielsweise als reine ASCII-Daten in das Client-Server-Rechner-Netzwerk gegeben und seitens des Client-Rechners auf diesem entsprechend interpretiert werden.According to the method, the information that arises in the area of control systems is sent to the respective control system via a adaptable server computer accessible to a client computer in the client-server computer network, whereby the information from the server computer is visualized on the client computer in input and display elements will. The information is only processed and evaluated by the client computer and stored in visualized with the corresponding input and display elements. The information can be sent from the server computer for example, given as pure ASCII data in the client-server computer network and on the part of the client computer be interpreted accordingly on this.

Dadurch, daß die Informationen verfahrensgemäß client-seitig in Eingabe- und Anzeigeelementen viusalisiert werden, ist eine überaus einfache, bedienerfreundliche und kostengünstige Handhabung von Leitsystemen gegeben.In that the information is viusalized in input and display elements on the client side in accordance with the procedure, an extremely simple, user-friendly and inexpensive handling of control systems is given.

Vorteilhafterweise sind die Eingabe- und Anzeigeelemente frei parametrierbar und konfigurierbar. Dadurch wird das Einsatzspektrum im Bereich unterschiedlicher Leitsysteme erheblich vergrößert, wobei für den Benutzer gleichzeitig eine hohe Individualisierung hinsichtlich Gestaltung seiner Oberfläche gegeben ist.The input and display elements can advantageously be freely parameterized and configured. This will make that The range of use in the area of different control systems has increased considerably, while for the user at the same time there is a high degree of customization with regard to the design of its surface.

Gemäß einem weiteren besonders vorteilhaften Vorschlag der Erfindung ist das Client-Server-Rechner-Netzwerk ein Intra- und/oder Internet. Dadurch wird zum einen eine hohe Verfügbarkeit erzielt, die der rasch voranschreitenden Vernetzung der Bürowelt zu sogenannten Intranets als auch der weltweiten Vernetzung in sogenannten Internets gerecht wird und eine Nutzung der Netze zum Bedienen und Beobachten von Leitsystemen, insbesondere für Prozeß- und Produktionsanlagen ermöglicht. So ist eine globale Bedienung und Beobachtung von Prozeß- und Produktionsanlagen, beispielsweise zur Darstellung von leittechnischen Informationen wie Protokolle, Meldungen, Datenbestände aus Datenbanken, und dergleichen gegeben.According to a further particularly advantageous proposal of the invention, the client-server computer network is a Intranet and / or Internet. On the one hand, this achieves a high level of availability, which is due to the rapidly advancing networking the office world to so-called intranets as well as the worldwide networking in so-called Internet and a use of the networks for operating and monitoring control systems, especially for process and production systems enables. Such is global operation and monitoring of process and production systems, for example for the display of control information such as logs, messages, data stocks from databases, and the like given.

Gemäß einem weiteren vorteilhaften Vorschlag der Erfindung erfolgt die Visualisierung mittels eines Web-Browsers. Damit wird ein Bedienen und Beobachten von Leitsystemen auf einfachste Art und Weise mit gängigen Web-Browsern, welche nahezu für alle Hardware- und Software-Plattformen verfügbar sind, ermöglicht. Der Umgang mit dem Leitsystem wird damit dem Benutzer weiter vereinfacht und bedienerfreundlicher.According to a further advantageous proposal of the invention, the visualization takes place by means of a web browser. This makes it easy to operate and monitor control systems with common web browsers, which are available for almost all hardware and software platforms. Dealing with the control system is thus further simplified and more user-friendly for the user.

Durch die Verwendung der Internet-Technologien wird das Bedienen und Beobachten von Leitsystemen äußerst kostengünstig, da einfache Rechner oder Terminals eingesetzt werden können und nicht erst spezielle und teure Hardware zum Einsatz kommen muß. Die im Bereich von Leitsystemen anfallenden Informationen lassen sich dabei auch auf vielen unterschiedlichen Hardware- und Softwareplattformen sogar gleichzeitig darstellen, vorteilhafterweise nach Zugriffsbefugnissen gestaffelt. Durch einen damit verbundenen geringem Administrations- und Pflegeaufwand lassen sich weitere Kosten einsparen. Ferner können die Anwender in ihrer gewohnten Umgebung, also beispielsweise von zu Hause aus Leitsysteme bedienen und beobachten. Durch einen modularen Software-Aufbau lassen sich darüber hinaus bereits bestehende Leitsysteme nach und nach umrüsten bzw. ausstatten.The use of Internet technologies makes the operation and monitoring of control systems extremely cost-effective, because simple computers or terminals can be used and not special and expensive hardware must be used. The information that arises in the area of control systems can also be found on many display different hardware and software platforms at the same time, advantageously according to access authorizations staggered. With the associated low administration and maintenance effort, save further costs. Furthermore, users can be in their familiar environment, for example from to Operate and monitor control systems from home. Thanks to a modular software structure, Gradually convert or equip existing control systems.

Gemäß einem weiteren besonders vorteilhaften Vorschlag der Erfindung werden die Eingabe- und Anzeigeelemente vom Client-Rechner generiert. Dadurch wird das Client-Server-Rechner-Netzwerk weitestgehend entlastet und die Bearbeitungszeit zum Generieten der Eingabe- und Anzeigeelemente ist im wesentlichen nur noch abhängig von der Leistungsfähigkeit des Client-Rechners. Dazu wird beispielsweise ein Datensatz vom Server auf den Client übertragen, dort interpretiert und ausgeführt und nach einer Verarbeitung durch den Benutzer, beispielsweise durch eine Eingabe, zur Endverarbeitung an den Server zurückgeschickt. Das eigentliche Programm läuft somit auf dem Client-Rechner. Gemäß einem weiteren vorteilhaften Vorschlag der Erfindung werden die Eingabe- und Anzeigeelemente mittels Java-Applets und/oder Java-Beans generiert. Java ist eine von Sun Microsystems entwickelte Interpreter-Sprache, die ähnlich strukturiert ist wie die objekt orientierte Programmiersprache C++. Java-Applets sind mit Java erstellte kleine Programme, die inAccording to a further particularly advantageous proposal of the invention, the input and display elements generated by the client computer. This relieves the client-server computer network as much as possible and reduces processing time for generating the input and display elements is essentially only dependent on the performance of the client computer. For this purpose, for example, a data record is transferred from the server to the client, there interpreted and executed and after processing by the user, for example by input, for Finishing sent back to the server. The actual program thus runs on the client computer. According to Another advantageous proposal of the invention is the input and display elements using Java applets and / or Java beans generated. Java is an interpreter language developed by Sun Microsystems that has a similar structure is like the object-oriented programming language C ++. Java applets are small programs created with Java that are stored in

HTML-Seiten eingebaut und dort für interaktive Anwendungen genutzt werden können. HTML (HyperTextMarkup-Languages) wurde speziell für die Internet-Technologie entwickelt und ist die Basis des World Wide Web (WWW). Das HTML-Format beschreibt die grafische Formatierung von Texten und die Einbindung von Bildern und Ereignissen. Mit HyperText wird die Möglichkeit verstanden, über in einem Text enthaltene Querverweise an eine anderen Stelle in einem Text zu springen, im World Wide Web konkret, eine andere Web-Seite im Internet zu laden. Java-Beans sind Java-Kornponenten, die noch leistungsfähiger sind als Java-Applets, das heißt andere bzw. weitere Möglichkeiten bieten.HTML pages built in and can be used there for interactive applications. HTML (HyperTextMarkup-Languages) was specially developed for Internet technology and is the basis of the World Wide Web (WWW). The HTML format describes the graphic formatting of texts and the integration of images and events. With HyperText is understood to mean the possibility of using cross-references contained in a text to another point in a To jump text, specifically to load another web page on the Internet, on the World Wide Web. Java beans are Java components, which are even more powerful than Java applets, i.e. offer different or further options.

Java selbst eröffnet umfangreiche Vorteile. So ist Java beispielsweise plattformneutral, einfach, sicher, schnell und dynamisch. Die Schnelligkeit von Java beruht darauf, daß in einem in Java entwickelten Applet zwei Technologien vereinigt sind. Zum einen wird der Quellcode eines Programms zunächst in den sogenannten Java-Byte-Code übersetzt. Anschließend wird das so entstandene Applet von einem in gängigen Web-Browsern vorhandenen Interpreter ausgeführt. Die im Applet eingesetzten Bibliotheken zur Erzeugung von Text-, Grafik- und Grafikkomponenten werden erst bei Ausführung des Programms, also zur Laufzeit ausgeführt, also auf dem jeweiligen Client-Rechner.Java itself opens up extensive advantages. For example, Java is platform-neutral, simple, secure, fast and dynamic. The speed of Java is based on the fact that two technologies are combined in an applet developed in Java are. On the one hand, the source code of a program is first translated into the so-called Java byte code. Subsequently the applet created in this way is executed by an interpreter available in common web browsers. The libraries used in the applet to generate text, graphic and graphic components are only used when the of the program, i.e. executed at runtime, i.e. on the respective client computer.

Die mit Java und im Internet gegebenen Leistungsmerkmale lassen sich so auf einfache und kostengünstige Art und Weise zum Bedienen und Beobachten von Leitsystemen einsetzen.The performance features given with Java and on the Internet can thus be easily and inexpensively implemented Use way to operate and monitor control systems.

Vorteilhafterweise umfassen die Eingabe- und Anzeigeelemente mit einem weiteren Vorschlag der Erfindung Meldungen, Kurvenverläufe und/oder Systemgrafiken wie Anlagenbilder und dergleichen.Advantageously, with a further proposal of the invention, the input and display elements include messages, Curves and / or system graphics such as system images and the like.

Weitere Vorteile und Merkmale der Erfindung ergeben sich aus der folgenden Beschreibung anhand von Beispielen. Dabei zeigen:Further advantages and features of the invention emerge from the following description on the basis of examples. Show:

Fig. 1 eine schematisierte Darstellung für eine Kommunikationsstruktur zwischen einzelnen Systemteilen; Fig. 1 is a schematic representation of a communication structure between individual parts of the system;

Fig. 2 eine schematisierte Darstellung für den Aufbau eines Applets, hier zur Visualisierung einer Systemgrafik; Fig. 3 eine Darstellung eines Ausführungsbeispiels für Meldungen; Fig. 2 is a schematic diagram illustrating a structure of an applet, here for visualizing a graphics system; Fig. 3 is an illustration of an exemplary embodiment of messages;

Fig. 4 eine Darstellung eines Ausführungsbeispiels für Kurvenverläufe und Fig. 4 is an illustration of an embodiment of waveforms and

Fig. 5 eine Darstellung eines Ausführungsbeispiels für eine Systemgrafik. Fig. 5 is an illustration of an embodiment of a system graphics.

Fig. 1 zeigt in einer schematisierten Darstellung die Kommunikationsstruktur zwischen den einzelnen Teilen des Systems, die über TCP/IP-Verbindungen (Transmission Control Protocol/Internet Protocol) durchgeführt wird. Die dabei verwendeten Telegramme enthalten reine ASCII-Daten, die in den einzelnen Teilsystemen entsprechend interpretiert werden. Fig. 1 shows in a schematic representation of the communication structure between the different parts of the system, via TCP / IP connections (Transmission Control Protocol / Internet Protocol) is performed. The telegrams used here contain pure ASCII data, which are interpreted accordingly in the individual subsystems.

Die Kommunikationsarchitektur 1 umfaßt drei getrennte Schichten, einen Server 4 zur Anbindung an ein Leitsystem 2, hier beispielsweise an SICALIS PMC WinCC oder SiiX der Firma Siemens, und andere, mittels entsprechender Adaptionsmodule 3, einen Vermittler (Broker) 4, der seitens des Servers 4 bereitgestellt und im weiteren auch Server genannt wird, sowie einen Client 5 zum Generieren und Visualisieren von Eingabe- und Anzeigeelementen durch Aufruf von sogenannten Methoden, hier in Form von Kurvenbausteinen 6, Meldebausteinen 7 und Systemgrafikbausteinen 8, die hier konkret in Form von Beans vorliegen, so daß der Client 5 zur Appletanbindung dient.The communication architecture 1 comprises three separate layers, a server 4 for connection to a control system 2, here for example on SICALIS PMC WinCC or SiiX from Siemens, and others, using appropriate adaptation modules 3, a broker 4, which is provided by the server 4 and hereinafter also referred to as the server as well as a client 5 for generating and visualizing input and display elements by calling of so-called methods, here in the form of curve blocks 6, message blocks 7 and system graphics blocks 8, which are specifically available here in the form of beans, so that the client 5 is used for the applet connection.

Der Kommunikationsfluß zwischen den einzelnen Schichten wird dabei folgendermaßen durchgeführt:The flow of communication between the individual layers is carried out as follows:

Von einer Komponente zum Viusalisieren von Eingabe- und Anzeigeelementen wird eine sogenannte Methode 9 in dem Client 5 aufgerufen, über die ein entsprechendes Telegramm 10 erzeugt und versendet wird. Für diese Aufgabe stellt der Client 5 verschiedene Methoden zum Absetzen und Empfangen von Telegrammen bereit, die zum Beispiel Anmeldung und Abmeldung verschiedener Bausteine zum Generieren von Eingabe- und Anzeigeelementen umfassen.A so-called method 9 in the client 5 called, via which a corresponding telegram 10 is generated and sent. For this task poses the client 5 different methods for sending and receiving telegrams ready, for example registration and deregistering various modules for generating input and display elements.

Diese Schnittstellen werden nachfolgend noch näher beschrieben:These interfaces are described in more detail below:

40 Telegramm verschicken 40 Send telegram

Die Methode sendTelegram versendet ein Telegramm, welches von einer Datenquelle erzeugt wurde. Telegramme die über diese Schnittstelle versandt werden, erwarten stets eine Antwort refuse oder accept.The sendTelegram method sends a telegram that was generated by a data source. Telegrams the sent via this interface always expect a refuse or accept response.

45 Telegramm verschicken ohne Rückantwort 45 Send telegram without reply

Die Methode sendLastTelegram versendet ein Telegramm, auf das keine Antwort von Seiten der Datenquelle erwartet wird, z. B. das Telegramm zum Abmelden von Variablen.The sendLastTelegram method sends a telegram to which no response is expected from the data source will, e.g. B. the telegram for logging off variables.

50 Client-Id erzeugen 50 Generate client ID

Die Methode maketJniquelD dient dazu, eine neue Client-ID zu erhalten, die dann bei den einzelnen Aufträgen mit übergeben werden kann. Die Methode benötigt keine Eingabeparameter. Als Rückgabeparameter wird eine Client-ID als String zurückgeliefert.The maketJniquelD method is used to receive a new client ID, which is then included with the individual orders can be passed. The method does not require any input parameters. A client ID is used as a return parameter as String returned.

Zur Darstellung des Kommunikationsflusses wird im weiteren beispielhaft die Variablenanmeldung zur Visualisierung einer Systemgrafik, also beispielsweise eines Prozeßbildes, erläutert:To illustrate the communication flow, the following is an example of the variable registration for visualization a system graphic, for example a process picture, is explained:

Der Client 5 und der Systemgrafikbaustein 8 laufen dabei in einem Java-Applet ab. Dadurch wird hier keine TCP/EP-Verbindung benötigt. Der Client 5 baut nach Aufruf der entsprechenden Methode 9 das zugehörige Telegramm 10 zusammen. Das Telegramm 10 wird vom Client 5 automatisch um eine sogenannte Client-ID erweitert, die einen String darstellt. Hierüber ist eine eindeutige Kennzeichnung des Anmeldeauftrags über diese TCP/IP-Verbindung gegeben. Die Client-ID wird dabei für spätere, diesen Anmeldeauftrag betreffende Aktionen verwendet.The client 5 and the system graphics module 8 run in a Java applet. This means that there is no TCP / EP connection here needed. After calling the corresponding method 9, the client 5 assembles the associated telegram 10. The telegram 10 is automatically expanded by the client 5 to include a so-called client ID, which is a string represents. This clearly identifies the registration request via this TCP / IP connection. the Client ID is used for subsequent actions relating to this login request.

Das so generierte Telegramm 10 wird vom Client 5 an den Server 4, über eine TCP/IP-Verbindung verschickt. Der Server 4 überprüft beim Eintreffen des Telegramms 10, ob bereits eine Anmeldung für diesen Baustein 8 vorliegt. Ist dies nicht der Fall, so wird für diesen Auftrag eine neue ID-Nummer im Server 4 vergeben, die sogenannte Broker-ID, über die dann die Anmeldung dieses Bausteins 8 verwaltet wird. In dem eingelaufenen Telegramm 10 wird nun die Client-ID durch die Broker-ID ersetzt und der Auftrag 14 an das entsprechende Adaptionsmodul 3 weitergeleitet. Falls für diesen Baustein bereits eine Anmeldung von einem anderen Client vorliegt, wird kein Telegramm an das Adaptionsmodul 3The telegram 10 generated in this way is sent from the client 5 to the server 4 via a TCP / IP connection. the When the telegram 10 arrives, server 4 checks whether there is already a registration for this module 8. Is this if this is not the case, a new ID number in the server 4, the so-called broker ID, is assigned for this order which then the registration of this module 8 is managed. In the received telegram 10, the client ID replaced by the broker ID and the order 14 is forwarded to the corresponding adaptation module 3. If for this one Block already has a registration from another client, no telegram is sent to the adaptation module 3

weitergeleitet, sondern es wird direkt ein Telegramm 12, eine sogenannte positive Quittung an den Client 5 mit der Client-ID zurückgeliefert.forwarded, instead a telegram 12, a so-called positive acknowledgment, is sent directly to the client 5 with the Client ID returned.

Das Adaptionsmodul 3 bearbeitet die Anmeldung 14 für den BaLtstein 8 und schickt ein positives oder negatives Quittungstelegramm 13 an den Server 4 zurück. In diesem Telegramm 13 ist wiederum die Broker-ID enthalten, die im eingelaufenen Telegramm 14 enthalten war.The adaptation module 3 processes the registration 14 for the pad 8 and sends a positive or negative acknowledgment telegram 13 back to server 4. This telegram 13 again contains the broker ID that was received in Telegram 14 was included.

Über diese Broker-ID kann der Server 4 den Auftrag einem bestimmten Client beziehungsweise einer bestimmtenThe server 4 can use this broker ID to send the order to a specific client or to a specific one

Client-ID zuordnen. In dem eingelaufenen Antworttelegramm 13 wird nun die Broker-ID durch die Client-ID ersetzt und das Antworttelegramm 12 an den Client 5 weitergeleitet. Je nach positiver oder negativer Quittung wird vom Client 5 die entsprechende Methode in dem jeweiligen Baustein 8 aufgerufen, hier dargestellt durch den mit 15 gekennzeichneten Pfeil, wo dann die eigentliche Bearbeitung stattfindet. Diese Methoden sind oben bereits vorher ausgeführt.Assign client ID. In the received response telegram 13, the broker ID is now replaced by the client ID and the response telegram 12 is forwarded to the client 5. Depending on the positive or negative acknowledgment, the client 5 receives the corresponding method called up in the respective module 8, represented here by the one marked with 15 Arrow, where the actual processing then takes place. These methods are outlined above.

Ferner wird innerhalb des Clients 5 über unterschiedliche Methoden eine Fehlerbehandlung abgewickelt. Darunter gehört zum einen, daß die TCP/EP-Verbindung zum Server 4 orndungsgemäß geschlossen wurde, zum anderen Fehler die bei der Benutzung der TCP/IP-Verbindung auftreten.Furthermore, error handling is handled within the client 5 using different methods. One of them on the one hand that the TCP / EP connection to the server 4 was properly closed, on the other hand the error occur when using the TCP / IP connection.

Hierzu werden die beiden folgenden Methoden verwendet, die automatisch vom Client 5 aufgerufen werden:
15
For this purpose, the following two methods are used, which are automatically called by the client 5:
15th

TCP/IP-Verbindung geschlossen (TCP closed)TCP / IP connection closed (TCP closed)

Die Methode TCP closed wird beim ordnungsgemäßen Schließen der TCP/IP-Verbindung im Client aufgerufen. Die Methode benötigt die folgenden Parameter:
TCPConnection: Die TCP/IP-Verbindung, die geschlossen wurde.
The method TCP closed is called when the TCP / IP connection is properly closed in the client. The method requires the following parameters:
TCPConnection: The TCP / IP connection that was closed.

TCP/IP-Verbindung fehlerhaft (TCP error)Faulty TCP / IP connection (TCP error)

Die Methode TCP error wird bei einem Fehler der TCP/IP-Verbindung im Client aufgerufen. In der Methode wird die fehlerhafte TCP/IP-Verbindung geschlossen. Die Methode benötigt die folgenden Parameter:
TCPConnection: die TCP/IP-Verbindung, die einen Fehler verursacht hat
TCPException: die erzeugte Exception, die einen Hinweis auf den Fehler enthält.
The method TCP error is called in the case of an error in the TCP / IP connection in the client. In the method, the faulty TCP / IP connection is closed. The method requires the following parameters:
TCPConnection: the TCP / IP connection that caused an error
TCPException: the generated exception that contains an indication of the error.

Desweiteren kann der Client 5 über verschiedene Parameter an spezielle Erfordernisse angepaßt werden, die bestimmte Eigenschaften des Clients 5 berücksichtigen.Furthermore, the client 5 can be adapted to special requirements via various parameters Take into account the properties of the client 5.

Folgende Parameter können verwendet werden:The following parameters can be used:

DebugMode: dient zum Steuern des Debug-Modus im Client. Ist der Debug-Modus eingeschaltet, werden Meldungen auf die Console im Web-Browser ausgegeben.DebugMode: is used to control the debug mode in the client. If the debug mode is switched on, messages output on the console in the web browser.

TCPBuffer: die Größe des TCP/TP-Puffers, die der Client verwendet. Die Größe liegt beispielsweise zwischen 4 Kbyte und 64 Kbyte.TCPBuffer: the size of the TCP / TP buffer that the client is using. The size is, for example, between 4 Kbytes and 64 Kbytes.

Während der Client 5 einen Zugriff auf verschiedene Methoden durch die Bausteine 6, 7 und 8 ermöglicht, bietet der Server 4 keine öffentlichen Methoden zum Zugriff an, da ein Zugriff nur über den Client 5 und das Adaptionsmodul 3 stattfinden soll. Der Kurvenbaustein 6, der Meldebaustein 7 und der Systemgrafikbaustein 8 können somit nicht direkt auf die Methoden des Servers 4 zugreifen.While the client 5 enables access to various methods through the modules 6, 7 and 8, the Server 4 does not offer any public methods for access, since access is only possible via the client 5 and the adaptation module 3 to be held. The curve block 6, the message block 7 and the system graphic block 8 cannot therefore directly access the methods of server 4.

Ebenso wie der Client 5 kann der Server 4 über verschiedene Parameter und spezielle Erfordernisse angepaßt werden. Die Parameter werden beim Start des Servers 4 beispielsweise über die Kommandozeile eingegeben.Like the client 5, the server 4 can be adapted using various parameters and special requirements. When the server 4 is started, the parameters are entered via the command line, for example.

Folgende Parameter können verwendet werden:
Port: dient zur Auswahl des Serversockets.
The following parameters can be used:
Port: is used to select the server socket.

Eine Fehlerbehandlung wird vom Server 4 selbstständig durchgeführt. Dabei können unterschiedliche Fehlerfälle, insbesondere bezüglich der Verbindungen abgefangen werden.
Folgende Fehler können verwendet werden:
Error handling is carried out independently by the server 4. Different error cases, especially with regard to the connections, can be intercepted.
The following errors can be used:

- Verbindungszusammenbruch zu einem Client- Connection breakdown to a client

Im Falle des Zusammenbruchs der TCP/IP-Verbindung zu einem Client werden vom Server die von diesem Client angemeldeten Variablen bei den zugehörigen Adaptionsmodul abgemeldet.In the event of a break in the TCP / IP connection to a client, the server will use that of this client logged-on variables are logged off from the associated adaptation module.

- Verbindungszusammenbruch zu einem Adaptionsmodul- Connection breakdown to an adaptation module

Bricht die TCP/IP-Verbindung zu einem Adaptionsmodul zusammen, werden alle Clients, die Variablen von diesem Adapt beziehen, über den Zusammenbruch der Verbindung informiert. Hierzu verschickt der Server an diese Clients ein shutdown-Telegramm. Der Client ist dann für die weitere Bearbeitung dieser Fehlermeldung zuständig.
- Fehlerhafter Verbindungsaufbau zu einem Adaptionsmodul
If the TCP / IP connection to an adaptation module breaks down, all clients that receive variables from this adapt are informed of the breakdown of the connection. To do this, the server sends a shutdown telegram to these clients. The client is then responsible for further processing this error message.
- Incorrect connection establishment to an adaptation module

Tritt ein Fehler bei einem Verbindungsaufbau zu einem Adaptionsmodul auf, so wird zunächst an den anfordernden Client vom Server ein refuse-Telegramm abgesendet. Der Client kann bei Erhalt des refuse-Telegramms geeignete Maßnahmen einleiten.If an error occurs when establishing a connection to an adaptation module, the requesting module is first sent Client sent a refuse telegram from the server. Upon receipt of the refuse telegram, the client can send suitable Take action.

Die Adaptionsmodule 3 sind für die Anbindung an ein spezielles Leitsystem 2 verantwortlich. Hierzu muß das Adaptionsmodul 3 die über eine TCP/IP-Verbindung eintreffenden Telegramme 14 vom Server 4 in entsprechende Befehle an das Leitsystem 2 umsetzen. Die Telegramme 14 die vom Adaptionsmodul 3 zu verarbeiten sind, umfassen dabei beispielsweise eine Fehlerbehandlung hinsichtlich der Verbindung zum Server 4 bzw. zum Leitsystem 2.
Dabei hat das Adaptionsmodul 3 beispielsweise folgende Fälle zu berücksichtigen:
The adaptation modules 3 are responsible for the connection to a special control system 2. For this purpose, the adaptation module 3 must convert the telegrams 14 arriving from the server 4 via a TCP / IP connection into corresponding commands to the control system 2. The telegrams 14 to be processed by the adaptation module 3 include, for example, error handling with regard to the connection to the server 4 or to the control system 2.
The adaptation module 3 has to take into account the following cases, for example:

- Ordnungsgemäßes Herunterfahren des Adaptionsmoduls- Proper shutdown of the adaptation module

Wird das Adaptionsmodul heruntergefahren, so wird ein shut-down-Telegramm an alle angeschlossenen Server verschickt. Die Server können dieses Telegramm an die entsprechenden Clients weiterleiten.If the adaptation module is shut down, a shutdown telegram is sent to all connected servers. The servers can forward this telegram to the corresponding clients.

- TCP/EP-Verbindungsabbruch zu einem Server- TCP / EP connection to a server aborted

Die Adaptionsmodule sind dafür zuständig, alle Anmeldungen, die von dem gestörten Server durchgeführt worden sind, über Abmeldungen an das Leitsystem zu beenden. Telegramme, die vom Leitsystem an den gestörten Server verschickt werden, können von den Adaptionsmodulen verworfen werden.The adaptation modules are responsible for all registrations that have been carried out by the disturbed server are to be ended by logging out to the control system. Telegrams sent by the control system to the disturbed server can be discarded by the adaptation modules.

- Fehler bei der Auftragsausführung beim Leitsystem 5 Die Adaptionsmodule können Telegramme, die von einem Server eintreffen, mit einer negativen Quittung (refuse-Telegramm) zurückschicken.- Error during job execution in control system 5 The adaptation modules can send telegrams that arrive from a server with a negative acknowledgment (refuse telegram) send back.

- Ordnungsgemäßes Herunterfahren des Leitsystems- Proper shutdown of the control system

Wird das Leitsystem heruntergefahren, so wird ein shutdown-Telegramm an alle angeschlossenen Server verschickt. Die Server können dieses Telegramm an die entsprechenden Clients weiterleiten. 10If the control system is shut down, a shutdown telegram is sent to all connected servers. The servers can forward this telegram to the corresponding clients. 10

Das Adaptionsmodul 3 selbst bietet keine öffentlichen Methoden zum Zugriff an, da ein Zugriff nur über den Server 4 stattfindet. Die Komponenten bzw. Bausteine 6, 7 und 8 zum Visualisieren von Eingabe- und Anzeigeelementen greifen somit nicht direkt auf die Methoden des Servers 4 zu.The adaptation module 3 itself does not offer any public methods of access, since access is only possible via the server 4 takes place. The components or modules 6, 7 and 8 for visualizing input and display elements take effect thus not directly to the methods of the server 4.

Das Adaptionsmodul 3 kann über verschiedene Parameter eingestellt werden, die beispielsweise als Komandozeilen- 15 parameter beim Starten des Adaptionsmoduls 3 eingegeben werden. Die Parameter sind dabei leitsystemspezifisch.The adaptation module 3 can be set using various parameters, which can be used, for example, as command line 15 parameters can be entered when starting the adaptation module 3. The parameters are specific to the control system.

Über ein Quittungstelegramm 13 bestätigt das Adaptionsmodul 3 dem Server 4 den Methodenaufruf und liefert entsprechende Daten zurück.The adaptation module 3 confirms the method call to the server 4 via an acknowledgment telegram 13 and delivers the corresponding Data back.

Die vom System verwendeten Telegramme werden aus einzelnen Parametern zusammengesetzt, die beispielsweise alle durch Trennzeichen voneinander getrennt sind. Die Parameter werden grundsätzlich als ASCH-Zeichenketten über- 20 tragen. Das Telegramm muß mit einem Endzeichen, beispielsweise mit einem "Vn" enden. Die Telegramme werden zwischen einem Client 5, einem Server 4 und einem Adaptionsmodul 3 ausgetauscht.The telegrams used by the system are composed of individual parameters, for example are all separated by a separator. The parameters are basically transmitted as ASCH strings carry. The telegram must end with an end character, for example with a "Vn". The telegrams are between a client 5, a server 4 and an adaptation module 3 exchanged.

Ein Telegramm kann sich dabei wie folgt aufbauen:A telegram can be structured as follows:

version/RQID/TTD/data 25version / RQID / TTD / data 25

version:version:

Telegramm Version "V1.0"Telegram version "V1.0"

Request Identifikator 30Request identifier 30

Die Auftragskennung spezifiziert den Auftrag, den der Empfänger des Telegramms auszuführen hat.The job identifier specifies the job that the recipient of the telegram has to carry out.

startVarUpdate: VariablenaktualisierungstartVarUpdate: variable update

starten: 35start: 35

stop VarUpdate: Variablenaktualisierungstop VarUpdate: variable update

stoppen:to stop:

startMsgUpdate: Meldungsaktualisierung startenstartMsgUpdate: Start message update

stopMsgUpdate: Meldungsaktualisierung stoppenstopMsgUpdate: Stop the update of the message

getVarArchiv: Lesen eines Variablenarchivs 40getVarArchiv: Reading a variable archive 40

getMsgArchiv: Lesen eines MeldungsarchivsgetMsgArchiv: Reading a message archive

setVar: Schreiben einer VariablensetVar: write a variable

get Van Einmaliges Lesen einer Variablenget Van One-time reading of a variable

setMsg: MeldungsbedienungsetMsg: message operation

accept: Positive Quittung 45accept: positive acknowledgment 45

refuse: Negative Quittungrefuse: Negative receipt

shutdown: Das System wurde beendetshutdown: The system was shut down

new Van neuer Variablenwertnew Van new variable value

newMsg: neuer MeldungssatznewMsg: new message record

stop: Ende einer Telegrammfolge 50stop: end of a telegram sequence 50

login: Anmeldung eines Clients beim Serverlogin: login of a client to the server

acceptlogin: Anmeldung abgelehntacceptlogin: Login refused

refuselogin: Ablehnung einer Anmeldungrefuselogin: Rejection of a registration

data: Der Aufbau der Daten ist abhängig von der Auftragskennung. Der genaue Aufbau ist der jeweiligen Auftragsbe- 55 Schreibung zu entnehmen.data: The structure of the data depends on the job ID. The exact structure is the respective order volume To be taken from the spelling.

Die Darstellung von Datum bzw. Uhrzeit erfolgt in den Telegrammen als Zeichenkette. Das Datum und die Uhrzeit repräsentieren die sogenannte GMT-Zeit. Die Darstellung erfolgt beispielsweise mit folgendem Format:The date and time are shown in the telegrams as a character string. Represent the date and time the so-called GMT time. The display takes place, for example, with the following format:

Tag.Monat.Jahr-Stunde:Minute:Sekunde:Millisekunden 60Day.Month.Year-Hour: Minute: Second: Milliseconds 60

Die einzelnen Aufträge bzw. Auftragstelegramme können dabei wie folgt aufbaut sein.The individual orders or order telegrams can be structured as follows.

Variablenaktualisierung starten "startVarUpdate"Start variable update "startVarUpdate"

65 Beschreibung 65 Description

Der Auftrag dient dazu, eine Variable zur Aktualisierung anzumelden. Die angemeldete Variable wird aus dem aktu-The job is used to register a variable for updating. The registered variable is taken from the current

eilen Prozeßabbild des angesprochenen Leitsystems gelesen.rush process image of the addressed control system read.

Telegrammaufb auTelegram structure

version/RQID/IID/host/variable/cycleTimeversion / RQID / IID / host / variable / cycleTime

Parameterparameter

version: Telegrammversion RQID: Request-Id des auslösenden Auftrags HD: Auftragskennung = startVarUpdate host: Name des Rechners, auf dem sich das angesprochene Leitsystem befindet. Der Name muß auf dem Rechner des Servers bekannt sein variable: Name der Variable, die aktualisiert werden soll. Die Syntax des Variablennamens ist systemabhängig. cycletime:version: Telegram version RQID: Request ID of the triggering job HD: Job identifier = startVarUpdate host: Name of the computer on which the addressed control system is located. The name must be on the computer of the Known to the server variable: Name of the variable to be updated. The syntax of the variable name is system-dependent. cycletime:

0 spontane Aktualisierung >0 Zykluszeit in ms0 spontaneous update> 0 cycle time in ms

Variablenaktualisierung beenden "stopVarUpdate"End variable update "stopVarUpdate"

Beschreibungdescription

Der Auftrag dient dazu, eine angemeldete Variable wieder von der Aktualisierung abzumelden. TelegrammaufbauThe job is used to deregister a registered variable from the update. Telegram structure

version/RQID/HDversion / RQID / HD

Parameter 30 Parameter 30

version: Telegrammversion RQID: Request-Id des auslösenden Auftrags HD: Auftragskennung = stop VarUpdateversion: Telegram version RQID: Request ID of the triggering job HD: job identifier = stop VarUpdate

Meldungsaktualisierung starten "startMsgUpdate"Start message update "startMsgUpdate"

Beschreibungdescription

Der Auftrag dient dazu, sich für den Empfang von aktuellen Meldungen anzumelden. 40 The job is used to register to receive current reports. 40

Telegrammaufb auTelegram structure

version/RQID/HD/host/info/cycleTime Parameterversion / RQID / HD / host / info / cycleTime parameter

version: Telegrammversion RQID: Request-Id des auslösenden Auftrags HD: Auftragskennung = startMsgUpd host: Name des Rechners, auf dem sich das angesprochene Leitsystem befindet. Der Name muß auf dem Rechner des Servers bekannt sein.version: Telegram version RQID: Request ID of the triggering job HD: Job ID = startMsgUpd host: Name of the computer on which the addressed control system is located. The name must be on the computer of the Server.

info: Die Zeichenkette beinhaltet systemspezifische Zusatzinformationen, die durch das angesprochene Leitsystem ausgewertet werden. Bei dem Leitsystem besteht dieser Parameter aus dem Formatnamen, mit dem der Meldetext aufbereitet werden soll.info: The character string contains system-specific additional information that is evaluated by the addressed control system will. In the control system, this parameter consists of the format name with which the message text is prepared shall be.

cycleTime: Dieser Parameter ist im Normalfall auf 0 (spontane Aktualisierung) zu setzen. Nur bei Meldesystemen die auf eine Datenbank basieren, ist es unter Umständen notwendig, die Daten zyklisch abzufragen. 0 spontane Aktualisierung >0 Zykluszeit in mscycleTime: This parameter should normally be set to 0 (spontaneous update). Only with reporting systems that are based on a database, it may be necessary to query the data cyclically. 0 spontaneous update> 0 cycle time in ms

Meldungsaktualisierung beenden "stopMsgUpdate"End message update "stopMsgUpdate"

Beschreibungdescription

Der Auftrag dient dazu, die Meldesystemanmeldung zu beenden. 65 The purpose of the job is to end the registration system. 65

Telegrammaufb au
version/RQID/HD
Telegram structure
version / RQID / HD

Parameter 5Parameter 5

version: Telegrammversionversion: Telegram version

RQID: Request-Id des auslösenden AuftragsRQID: Request ID of the triggering order

IID: Auftragskennung = stopMsgUpdateIID: job identifier = stopMsgUpdate

Variable aus dem Archiv lesen "getVarArchiv"Read tag from archive "getVarArchiv"

Beschreibung
Der Auftrag dient dazu, Variablen aus dem Archiv zu lesen. 15
description
The job is used to read tags from the archive. 15th

Telegrammaufb au
version/RQrD/HD/host/variable/archiv/filter
Telegram structure
version / RQrD / HD / host / variable / archive / filter

Parameterparameter

version: Telegrammversion
RQID: Request-Id des auslösenden Auftrags
version: Telegram version
RQID: Request ID of the triggering order

ITD: Auftragskennung = getVarArchiv 25ITD: Job ID = getVarArchiv 25

host: Name des Rechners, auf dem sich das angesprochene Leitsystem befindet. Der Name muß auf dem Rechner des Servers bekannt sein.host: Name of the computer on which the addressed control system is located. The name must be on the computer of the Server.

variable: Name der Variable, die gelesen werden soll. Die Syntax des Variablennamens ist systemabhängig, archiv: Der Archivname ist nur bei Datenbankorientierten Leitsystemen relevant. Der Syntax dE Archivnamens ist Systemabhängig. Wird der P rameter nicht verwendet, so ist dort "unused" einzutragen 30 filter: SQL Statement zur Filterung von Datensätzen aus dem Archiv. Wird kein Filter verwendet., ist "unused" einzutragen.
Syntax:
variable: Name of the variable to be read. The syntax of the variable name is system-dependent, archive: The archive name is only relevant for database-oriented control systems. The syntax of the archive name depends on the system. If the parameter is not used, "unused" must be entered there. 30 filter: SQL statement for filtering data records from the archive. If no filter is used, enter "unused".
Syntax:

where DATE {<, = ,>,> = ,<= } 'tag.monat.jahr.stunde:minute:sekunde.millisekunde' [AND DATE ]where DATE {<, =,>,> =, <=} 'day.month.year.hour: minute: second.millisecond' [AND DATE]

35 Meldungen aus dem Archiv lesen "getMsgArchiv" 35 Read messages from the archive "getMsgArchiv"

Beschreibungdescription

Der Auftrag dient dazu, Meldungen aus dem Archiv zu lesen. 40The job is used to read messages from the archive. 40

Telegrammaufb auTelegram structure

version/RQrD/HD/host/variable/archiv/filterversion / RQrD / HD / host / variable / archive / filter

45 Parameter 45 parameters

version: Telegrammversion
RQID: Request-Id des auslösenden Auftrags
version: Telegram version
RQID: Request ID of the triggering order

HD: Auftragskennung = getMsgArchiv 50HD: job identifier = getMsgArchiv 50

host: Name des Rechners, auf dem sich das angesprochene Leitsystem befindet. Der Name muß auf dem Rechner des Servers bekannt sein.host: Name of the computer on which the addressed control system is located. The name must be on the computer of the Server.

info: Die Zeichenkette beinhaltet systemspezifische Zusatzinformationen, die durch das angespro chene Leitsystem ausgewertet werden. Bei cle Leitsystem besteht dieser Parameter aus dem Formatnamen, mit dem der Meldetext aufberei tet werden soll. 55info: The character string contains system-specific additional information that is evaluated by the control system addressed will. With the cle control system, this parameter consists of the format name with which the message text is prepared shall be. 55

archiv: Der Archivname ist nur bei Datenbankorientierten Leitsystemen relevant. Der Syntax des Archivnamens ist systemabhängig. Wird der P rameter nicht verwendet, so ist dort "unused einzutragen filter: SQL Statement zur Filterung von Datensätzen aus dem Archivarchive: The archive name is only relevant for database-oriented control systems. The syntax of the archive name is system-dependent. If the parameter is not used, "unused" must be entered there. Filter: SQL statement for filtering data records from the archive

Variablen wert schreiben "setVar" 60Write variable value "setVar" 60

Beschreibungdescription

Dieser Auftrag verändert einen Variablenwert im Prozeßabbild.This job changes a variable value in the process image.

65 Telegrammaufb au 65 Telegram structure

version/RQrD/HD/host/variable/value/userversion / RQrD / HD / host / variable / value / user

Parameterparameter

version: Telegrammversion
RQID: Request-Id des auslösenden Auftrags
IID: Auftragskennung = setVar
version: Telegram version
RQID: Request ID of the triggering order
IID: job identifier = setVar

host: Name des Rechners, auf dem sich das angespr chene Leitsystem befindet. Der Name muß auf dem Rechner des Servers bekannt sein.host: Name of the computer on which the addressed control system is located. The name must be on the server computer be known.

variable: Name der Variablen die verändert werden soll. Die Syntax des Variablennamens ist systemab hängig, value: Der Archivname ist nur bei Datenbankorientierten Leitsystemen relevant. Der Syntax des Archivnamens ist Systemabhängig. Wird der Parameter nicht verwendet, so ist dort "unused" einzutragen, user: Der Name des Benutzers, der die Bedienung durchgeführt hat.variable: Name of the variable to be changed. The syntax of the variable name is system-dependent, value: The archive name is only relevant for database-oriented control systems. The syntax of the archive name depends on the system. If the parameter is not used, "unused" must be entered there, user: The name of the user who performed the operation.

Variablen wert lesen "getVar" BeschreibungRead variable value "getVar" Description

Dieser Auftrag dient dazu, den Wert einer Variablen einmalig zu lesen.This job is used to read the value of a variable once.

Telegrammaufb auTelegram structure

version/RQID/HD/host/variableversion / RQID / HD / host / variable

Parameterparameter

version: Telegrammversionversion: Telegram version

RQID: Request-Id des auslösenden AuftragsRQID: Request ID of the triggering order

IID: Auftragskennung = getVarIID: job identifier = getVar

host: Name des Rechners, auf dem sich das angesprochene Leitsystem befindet. Der Name muß auf dem Rechner des Servers bekannt sein.
variable: Name der Variablen die gelesen werden soll. Die Syntax des Variablennamens ist systemabhängig.
host: Name of the computer on which the addressed control system is located. The name must be known on the server computer.
variable: Name of the variable to be read. The syntax of the variable name is system-dependent.

Meldung bedienen "setMsg"Operate message "setMsg"

Beschreibung
35
description
35

Der Auftrag dient zur Bedienung einer Meldung, das heißt es können Meldungen quittiert, gelöscht, und kommentiert werden.The job is used to operate a message, i.e. messages can be acknowledged, deleted and commented on will.

Telegrammaufb au
40
Telegram structure
40

version/RQrD/HD/host/message/function/value/userversion / RQrD / HD / host / message / function / value / user

Parameterparameter

version: Telegrammversionversion: Telegram version

RQID: Request-Id des auslösenden AuftragsRQID: Request ID of the triggering order

IID: Auftragskennung = setMsgIID: job identifier = setMsg

host: Name des Rechners, auf dem sich das angesprochene Leitsystem befindet. Der Name muß auf dem Rechner des Servers bekannt sein.
message: Eindeutige Nummer der Meldung. Wird durch die Leitsysteme unterschiedlich behandelt.
host: Name of the computer on which the addressed control system is located. The name must be known on the server computer.
message: Unique number of the message. Is treated differently by the control systems.

time: Datum/Uhrzeit der Meldungserzeugungtime: Date / time the message was generated

class: Meldungsklasseclass: message class

state: Meldungsstatus function:state: message status function:

Funktion der Bedienung:
acknowledge (Meldung quittieren)
Operation function:
acknowledge (acknowledge message)

delete (Meldung löschen)delete (delete message)

comment (Meldung kommentieren)comment

value: Zusatzparameter zur Funktion. Der Parameter ist zur Zeit nur bei der Funktion "Meldung kommentieren" relevant.value: Additional parameters for the function. The parameter is currently only relevant for the "Comment message" function.

Hier wird der Kommer tar mit übertragen.
user: Der Name des Benutzers, der die Bedienung durchgeführt hat.
The comment is also transmitted here.
user: The name of the user who performed the operation.

Als Quittungstelegramme können positive, negative als auch Fehlermeldungen und dergleichen verwendet werden. Folgende Quittungstelegramme können dabei wie folgt aufgebaut sein:Positive, negative and error messages and the like can be used as acknowledgment telegrams. The following acknowledgment telegrams can be structured as follows:

Positive Quittung "accept" 65 Positive acknowledgment "accept" 65

Beschreibungdescription

Der Auftrag dient dazu, einen Request positiv zu Quittieren.The job is used to positively acknowledge a request.

Telegrammaufb au
version/RQID/HD
Telegram structure
version / RQID / HD

Parameter 5Parameter 5

version: Telegrammversionversion: Telegram version

RQID: Spiegelung der Request-Id des auslösenden AuftragsRQID: Mirroring the request ID of the triggering job

HD: Auftragskennung = acceptHD: order identifier = accept

Negative Quittung "refuse"Negative receipt "refuse"

Beschreibung
Der Auftrag dient dazu, einen Request negativ zu Quittieren. 15
description
The job is used to acknowledge a request negatively. 15th

Telegrammaufb au
version/RQID/nD/refuserD/description
Telegram structure
version / RQID / nD / refuserD / description

Parameterparameter

version: Telegrammversionversion: Telegram version

RQID: Spiegelung der Request-Id des auslösenden AuftragsRQID: Mirroring the request ID of the triggering job

HD: Auftragskennung = refuse 25HD: job identifier = refuse 25

refuselD: Nummer, die den Grund der Ablehnung beschreibtrefuselD: Number that describes the reason for the rejection

description: Zusatztext, der den Grund der Ablehnung beschreibtdescription: Additional text that describes the reason for the rejection

Neuer Variablenwert "newVar"New variable value "newVar"

30 Beschreibung 30 Description

Das Telegramm dient zur Übertragung von Variablendatensätzen. Je nach Anmeldung handelt es sich hierbei um aktuelle Werte aus dem Prozeßabbild oder um Archivwerte.The telegram is used to transfer variable data records. Depending on the registration, these are current Values from the process image or archive values.

35 Telegrammaufb au 35 Telegram structure

version/RQrD/HD/value/time/stateversion / RQrD / HD / value / time / state

Parameter 40Parameter 40

version: Telegrammversionversion: Telegram version

RQID: Spiegelung der Request-Id des auslösenden AuftragsRQID: Mirroring the request ID of the triggering job

HD: Auftragskennung = refuseHD: job identifier = refuse

value: Neuer Wert der Variablen. Zahlenwerte werden grundsätzlich als konvertierter Double-Wert übertragen. 45value: New value of the variable. Numerical values are always transferred as converted double values. 45

time: Zeitstempel des zugehörigen Y-Wertes. Der Zeitwert erfolgt in der Darstellung. tag.monat.jahr-stunde:minute:se-time: time stamp of the associated Y value. The fair value is shown in the presentation. day.month.year-hour: minute: se-

kunde.millisekundecustomer.millisecond

state: Status der Variablenstate: Status of the variables

Neue Meldung "newMsg" 50New message "newMsg" 50

Beschreibungdescription

Das Telegramm dient zur Übertragung von Meldungsdatensätzen. Je nach Anmeldung handelt es sich hierbei um aktuelle Meldungen oder um Archivmeldungen. 55The telegram is used to transmit message data records. Depending on the registration, these are current Messages or archive messages. 55

Telegrammaufb auTelegram structure

version/RQrD/HD/message/time/class/state/string/comment/bgcolor/fgcolor/bold/italic/underlineversion / RQrD / HD / message / time / class / state / string / comment / bgcolor / fgcolor / bold / italic / underline

60 Parameter 60 parameters

version: Telegrammversionversion: Telegram version

RQID: Spiegelung der Request-Id des auslösenden AuftragsRQID: Mirroring the request ID of the triggering job

HD: Auftragskennung = newMsg 65HD: job identifier = newMsg 65

message: Eindeutige Nummer der Meldung. Wird durch die Leitsysteme unterschiedlich behandelt.message: Unique number of the message. Is treated differently by the control systems.

time: Datum/Uhrzeit der Meldungserzeugungtime: Date / time the message was generated

class: Meldungsklasseclass: message class

state: Meldungsstatus
string: Klartext der Meldung
comment: Meldungskommentar
state: message status
string: plain text of the message
comment: message comment

bgcolor: Hintergrundfarbe der Meldung als RGB-Wert (zum Beispiel 255.255.255) fgcolor: Vordergrundfarbe der Meldung als RGB-Wert (z. B. 0.0.0) bold: Text fett darstellen. 0 = Nein; 1 = Ja. italic: Text schräg darstellen. 0 = Nein; 1 = Ja. underline: Text unterstrichen darstellen. 0 = Nein; 1 = Ja.bgcolor: Background color of the message as an RGB value (for example 255.255.255) fgcolor: Foreground color of the message as an RGB value (e.g. 0.0.0) bold: Display text in bold. 0 = no; 1 = yes. italic: display text at an angle. 0 = no; 1 = yes. underline: make text underlined. 0 = no; 1 = yes.

Shutdown "shutdown"Shutdown "shutdown"

Beschreibungdescription

Der Auftrag dient dazu, den Client darüber zu informieren, daß sich eine Komponente beendet hat. 15 The job is to inform the client that a component has ended. 15th

Telegrammaufb auTelegram structure

version/RQID/nD/shutdownlD/description Parameterversion / RQID / nD / shutdownlD / description parameter

version: Telegrammversionversion: Telegram version

RQID: Spiegelung der Request-Id des auslösenden Auftrags IID: Auftragskennung = shutdownRQID: Mirroring the request ID of the triggering job IID: job identifier = shutdown

shutdownID: Nummer, die den Grund des Shutdowns beschreibt description: Zusatztext, der den Grund des Shutdowns be schreibtshutdownID: Number describing the reason for the shutdown description: Additional text that describes the reason for the shutdown

Stop "stop" BeschreibungStop "stop" description

Das "stop" Telegramm kennzeichnet das Ende einer Telegrammsequenz.The "stop" telegram marks the end of a telegram sequence.

Telegrammaufb au 35 Telegram structure 35

version/RQID/HDversion / RQID / HD

Parameterparameter

version: Telegrammversionversion: Telegram version

RQID Spiegelung der Request-Id des auslösenden Auftrags IID: Auftragskennung = stopRQID Mirroring the request ID of the triggering job IID: job identifier = stop

Login "login" 45 Login "login" 45

Beschreibungdescription

Über das "login" Telegram versucht ein Client sich beim Server anzumelden. TelegrammaufbauA client tries to log into the server via the "login" telegram. Telegram structure

version/RQID/HDversion / RQID / HD

Parameter 55 Parameter 55

version: Telegrammversionversion: Telegram version

RQID: Login ID = FFFFFFFF HD; Auftragskennung = loginRQID: Login ID = FFFFFFFF HD; Job ID = login

Login akzeptieren "acceptlogin" 60 Accept login "acceptlogin" 60

Beschreibungdescription

Über das "acceptlogin" Telegram bestätigt der Server die Anmeldung eines Clients und weist ihm eine ID zu. TelegrammaufbauThe server confirms the login of a client via the "acceptlogin" telegram and assigns it an ID. Telegram structure

version/RQID/HD/clientidversion / RQID / HD / clientid

1010

Parameterparameter

version: Telegrammversionversion: Telegram version

RQID: unusedRQID: unused

IID: Auftragskennung = acceptlogin 5IID: order identifier = acceptlogin 5

clientid; ID, die der Server seinen Clients zuweistclientid; ID that the server assigns to its clients

Login ablehnen "refuselogin"Reject login "refuselogin"

Beschreibung 10Description 10

Über das "refuselogin" Telegram meldet der Server, daß eine Anmeldung nicht akzeptiert wurde.The server reports via the "refuselogin" telegram that a registration was not accepted.

Telegrammaufb auTelegram structure

version/RQrD/HD/descriptionversion / RQrD / HD / description

Parameterparameter

version: Telegrammversion 20version: Telegram version 20

RQID: unusedRQID: unused

HD: Auftragskennung = acceptloginHD: order identifier = acceptlogin

clientid: ID, die der Server seinen Clients zuweistclientid: ID that the server assigns to its clients

description: Beschreibung der Ablehnungdescription: Description of the rejection

Der Zugriff auf einzelne Bausteine 6, 7 und 8 zum Generieren von Eingabe- und Anzeigeelementen besteht aus drei 25 einzelnen Phasen:Access to individual modules 6, 7 and 8 for generating input and display elements consists of three 25 individual phases:

1. Anmeldung für die Prozeß variable über den Auftrag, beispielsweise start VarUpdate1. Registration for the process variable via the job, for example start VarUpdate

2. Information des Clients über neue Werte des Bausteins, beispielsweise mit dem Auftrag newVar2. Information of the client about new values of the block, for example with the job newVar

3. Abmeldung für den Baustein, beispielsweise über den Auftrag stop VarUpdate 30 Die einzelnen Phasen können dabei wie folgt dargestellt werden:3. Deregistration for the block, for example via the stop VarUpdate 30 job The individual phases can be represented as follows:

start VarUpdatestart VarUpdate

startVarUpdatestartVarUpdate

-> Variable anmelden-> Register variable

refuserefuse

4040

< Variable konnte nicht angemeldet < Variable could not be registered

werdenwill

accept - ' ' 45 accept - '' 45

< Variable erfolgreich angemeldet < Variable registered successfully

newVar newVar 5050

< ; — neuer Variablenwert<; - new variable value

shutdown . shutdown .

Θ < System wurde beendetΘ < System was terminated

s topVar Update' ' 60 : >' Variable abmeldens topVar Update '' 60 : >'Log off variable

Zur Visualisierung von Kurven mit dem Kurvenbaustein 6 erhält dieser Daten über aktuelle oder archtivierte Prozeßdaten. Je nach der Art der Prozeßdaten, also aktuelle oder archivierte, werden unterschiedliche Aufträge verwendet. Die
Aufträge zur Anforderung von aktuellen Kurvendaten besteht dabei aus drei einzelnen Phasen: 65
In order to visualize curves with curve module 6, this receives data from current or archived process data. Depending on the type of process data, i.e. current or archived, different jobs are used. the
Orders to request current curve data consist of three individual phases: 65

1. Anmeldung für die Prozeß variable, beispielsweise über den Auftrag startTagLog.1. Registration for the process variable, for example via the startTagLog job.

2. Informationen des Clients über neue Werte der Prozeßvariable, beispielsweise mit dem Auftrag newVar.2. Information from the client about new values of the process variable, for example with the job newVar.

3. Abmeldung für die Prozeß variable, beispielsweise über den Auftrag stopTagLog. Die einzelnen Phasen mit den dazugehörigen Auftragen sehen dabei wie folgt aus:3. Deregistration for the process variable, for example via the stopTagLog order. The individual phases with the associated applications look like this:

55 startTagüpdstartTagupd

• > Variable anmelden•> Register variable

refuserefuse

10 Θ < Variable konnte nicht angemeldet 10 Θ < Variable could not be registered

werden accept will be accept

< Variable erfolgreich angemeldet < Variable registered successfully

2020th newTagnewTag

< neuer Variablenwert < new variable value

shutdownshut down

Θ i System wurde beendetΘ i System was terminated

3030th stopTagLogstopTagLog

-> Variable abmelden-> Log off variable

Der Zugriff auf Prozeßvariablen zur Visualisierung von Kurvenverläufen mit archivierten Daten besteht ebenfalls aus 35 drei Phasen:Access to process tags for the visualization of curve progressions with archived data also consists of 35 three phases:

1. Die Anmeldung für die Prozeßvariable, beispielsweise über den Auftrag getTagArch.1. Registration for the process variable, for example via the getTagArch job.

2. Informationen des Clients über neue Werte der Prozeßvariable, beispielsweise mit dem Auftrag newTag.2. Information from the client about new values of the process variable, for example with the job newTag.

3. Automatische Abmeldung für die Prozeßvariable, beispielsweise nach stop. 40 Die einzelnen Phasen mit den dazugehörigen Auftragen sehen dabei wie folgt aus:3. Automatic logoff for the process variable, for example after stop. 40 The individual phases with the associated applications are as follows:

1212th

getTagArch
• > Archiv lesen
getTagArch
•> Read archive

refuse 5 refuse 5

Θ < Archiv konnte nicht gelesen werden Θ < Archive could not be read

acceptaccept

< Archiv kann gelesen werden < Archive can be read

newTagnewTag

< neuer Variablenwert < new variable value

shutdownshut down

Θ < System wurde beendetΘ < System was terminated

stopstop

> Archiv lesen beendet > Finished reading archive

Zur Visualisierung von aktuellen oder archivierten Meldungen werden unterschiedliche Aufträge verwendet.
Der Zugriff auf aktuelle Meldungen einer Prozeßvariable besteht aus drei einzelnen Phasen:
Different jobs are used to visualize current or archived messages.
Access to current messages from a process variable consists of three individual phases:

1. Anmeldung für Meldungen der Prozeßvariable, beispielsweise über den Auftrag startMsgLog.1. Registration for messages from the process variable, for example via the startMsgLog job.

2. Information des Clients über neue Meldungen der Prozeßvariable, beispielsweise mit dem Auftrag newMsg. 352. Information of the client about new messages of the process variable, for example with the job newMsg. 35

3. Abmeldung für Meldungen der Prozeßvariablen, beispielsweise über den Auftrag stopMsgLog.3. Deregistration for messages from the process variables, for example via the stopMsgLog job.

Die einzelnen Phasen mit den dazugehörigen Aufträgen sehen dabei wie folgt aus:The individual phases with the associated orders are as follows:

startMsgLog startMsgLog 4040

• : > Meldeservice anmelden•: > Register reporting service

refuserefuse

© < Service konnte nicht angemeldet 45 © < Service could not be registered 45

werdenwill

acceptaccept

< Service erfolgreich angemeldet < Service successfully registered

newMsg 55 newMsg 55

< neue Meldung<new message

shutdown
Θ < System wurde beendet
shut down
Θ <System was terminated

stopMsgLogstopMsgLog

> Meldeservice abmelden > Unsubscribe from the reporting service

Der Zugriff auf archivierte Meldungen einer Prozeßvariable besteht aus drei einzelnen Phasen:Access to archived messages of a process tag consists of three individual phases:

1. Anmeldung für die Prozeß variable, beispielsweise über den Auftrag getMsgArch.1. Registration for the process variable, for example via the order getMsgArch.

2. Information des Clients über die einzelnen archivierten Meldungen der Prozeßvariable, beispielsweise mit dem 5 Auftrag newMsg.2. Information of the client about the individual archived messages of the process tag, for example with the 5 Order newMsg.

3. Abmeldung für die Prozeß variable, beispielsweise über den Auftrag stop.3. Deregistration for the process variable, for example via the order stop.

Die einzelnen Phasen mit den zugehörigen Aufträgen sehen dabei wie folgt aus:The individual phases with the associated orders look like this:

1010 getMsgArchgetMsgArch

-> Archiv lesen-> read archive

is refuse is refuse

© < Archiv konnte nicht gelesen werden © < Archive could not be read

acceptaccept

< Archiv kann gelesen werden < Archive can be read

newMsgnewMsg

< neuer Meldungssatz<new message record

shutdownshut down

> < System wurde beendet>< System was terminated

© stop © stop

< Archiv lesen beendet < Reading archive finished

Zur Visualisierung von Meldungen bietet das System zwei unterschiedliche Ausprägungen von sogenannten Meldefenstern an, ein sogenanntes aktuelles Meldefenster und ein sogenanntes selektiertes Meldefenster.The system offers two different types of so-called message windows for the visualization of messages on, a so-called current message window and a so-called selected message window.

Das aktuelle Meldefenster stellt die aktuell einlaufenden Meldungen in zeitlich richtiger Reihenfolge dar. Das aktuelle Meldefenster kann mit parametrierbaren Filtern auf die jeweilige Anwendung angepaßt werden. Meldungen die ihren 45 Zustand ändern, werden in dem jeweiligen Anzeigeelement aktualisiert bzw. gelöscht.The current message window shows the current incoming messages in the correct chronological order. The current one Message window can be adapted to the respective application with parameterizable filters. Messages yours 45 Change status are updated or deleted in the respective display element.

In dem sogenannten selektierten Meldefenster werden Meldungen aus einem Meldungsarchiv in zeitlich richtiger Reihenfolge dargestellt. Aus dem selektierten Meldefenster können Meldungsbedienungen durchgeführt werden, beispielsweise Einzel- und Sammelquittierung, Kommentieren von Meldungen, Anzeigen und Ändern von Info-Texten, Bildanwahl, Meldungen löschen, Selektion einstellen. Ein Meldungsaufbau kann dabei wie folgt aussehen, (vgl. auch den in 50 Fig. 3 in den einzelnen Zeilen von links nach rechts dargestellten Meldungsaufbau):In the so-called selected message window, messages from a message archive are displayed in the correct chronological order. Message operations can be carried out from the selected message window, for example individual and group acknowledgments, commenting on messages, displaying and changing info texts, selecting images, deleting messages, setting selections. A message structure can look as follows (cf. also the message structure shown in the individual lines from left to right in Fig. 3):

Datum/Zeit Meldungsbeginn, Anlagen kennzeichnen, Meldungsklasse, Meldungszustand, Meldungstext, Meldungsnummer, Meldungsdauer und Prozeßwert. Date / time start of message, identify systems, message class, message status, message text, message number, message duration and process value.

Dabei können verschiedene Meldungszustände und Meldungsklassen farblich gekennzeichnet werden.Different message states and message classes can be color-coded.

Mit dem Kurvenbaustein werden archivierte Prozeßwerte und Prozeßwerte aus Systemgrafiken grafisch in einer Kur-55 venform dargestellt. Dazu bietet der Kurvenbaustein beispielsweise folgende Funktionalität:With the curve block, archived process values and process values from system graphics are graphically converted into a Kur-55 venform shown. The curve block offers the following functionality, for example:

- Darstellung einer beliebigen Anzahl von Kurven- Representation of any number of curves

- Kurvendarstellung mit unterschiedlichen Farben, Linienarten und Füllmustern- Curve display with different colors, line types and fill patterns

- Darstellung der Kurven als Polygonzug, Treppenkurve und Einzelpunkte- Representation of the curves as a polygon, step curve and single points

60 _ Y-Achsen getrennt für jede Kurve oder für mehrere Kurven gleichzeitig mit automatischer oder manueller Skalierung und Beschriftung 60 _ Y-axes separately for each curve or for several curves simultaneously with automatic or manual scaling and labeling

- Eine X-Achse mit Skalierung und Beschriftung, wahlweise als Zeit- oder Wertachse- An X-axis with scaling and labeling, optionally as a time or value axis

- Scrollen von statischen Kurven, falls deren Umfang den Darstellungsbereich überschreitet, getrennt für alle Achsen. - Scrolling of static curves, if their scope exceeds the display area, separately for all axes.

65 - Dynamische Vergabe von Farbwerten für einzelne Kurven, z. B. um bei Grenzwertverletzungen die Kurvenfarbe65 - Dynamic assignment of color values for individual curves, e.g. B. to change the color of the curve in the event of limit violations

wechseln zu können.to be able to switch.

- Anzeige der Kurvenwerte mittels Lineal.- Display of the curve values using a ruler.

- Vergrößerung (Zoomen) von Ausschnitten- Enlargement (zooming) of sections

- Überlagerung des Kurvenbereichs mit einem Raster- Overlaying the curve area with a grid

- Einblenden einier Legende mit zusätzlicher Information- Show a legend with additional information

- Bildung von Summenkurven- Creation of cumulative curves

- Online Ändern von Parameter.- Online changing of parameters.

Der Systemgrafikbaustein 8 dient einerseits zur Anzeige aktueller Leitsystemdaten, beispielsweise Prozeßdaten aus Prozeßabbildern, und andererseits zur Eingabe von neuen Leitsystemwerten. So wird beispielsweise die Visualisierung eines Anlagenbilds über ein einzelnes Java-Applet durchgeführt. Das Java-Applet enthält visuelle und nichtvisuelle Java-Komponenten, die über bestimmt Eigenschaften parametriert werden. Eine zusätzliche Parametrierung des Java-Applets ist nicht notwendig.The system graphics module 8 is used on the one hand to display current control system data, for example process data Process images and, on the other hand, for entering new control system values. For example, the visualization of a plant diagram is carried out via a single Java applet. The Java applet contains visual and non-visual Java components that are parameterized using certain properties. An additional parameterization of the Java applet is not necessary.

Die visuellen Komponenten des Java-Applets werden zur Darstellung von grafischen Grundelementen wie Linien, Kreisen, Rechtecken und dergleichen, Grafiken und Bedienelementen wie Schaltflächen und dergleichen verwendet. Die nichtvisuellen Komponenten dienen zur Anbindung an bestimmte im jeweiligen Leitsystem gegebene Prozeßvariable.The visual components of the Java applet are used to represent basic graphic elements such as lines, Circles, rectangles and the like, graphics and control elements such as buttons and the like are used. the Non-visual components serve to connect to certain process variables given in the respective control system.

Die Kommunikation zwischen den einzelnen Komponenten wird über sogenannte Java-Events gesteuert.Communication between the individual components is controlled via so-called Java events.

Die Netzwerkanbindung an den Server 4 wird über den Client 5 realisiert. Dabei ist eine entsprechende Client-Kornponente in dem jeweilen Applet eingebettet.The network connection to the server 4 is implemented via the client 5. There is a corresponding client component embedded in the respective applet.

Fig. 2 ist die Architektur eines Java-Applets zur Visualisierung einer Systemgrafik, beispielsweise eines Anlagenbildes dargestellt. Ein Ausführungsbeispiel eines solchen Anlagenbildes zeigt Fig. 5. Die TCP/IP-Verbindung zum Server 4 ist in Fig. 2 durch den mit 11 gekennzeichneten Pfeil dargestellt. Fig. 2 is the architecture of a Java applet for visualization of a graphic system, for example, illustrated a plant picture. An exemplary embodiment of such a system diagram is shown in FIG. 5. The TCP / IP connection to the server 4 is shown in FIG. 2 by the arrow labeled 11.

Die nichtvisuellen Komponenten dienen zur Anbindung des Anlagenbildes an die Prozeßvariablen eines Leitsystems. Dabei ist zu unterscheiden zwischen Elementen bzw. Komponenten zur Ausgabe von Variablenwerten aus dem Leitsystem und Elementen bzw. Komponenten zur Eingabe von Variablenwerten in das Leitsystem.The non-visual components are used to connect the system image to the process variables of a control system. A distinction must be made between elements and components for outputting variable values from the control system and elements or components for entering variable values into the control system.

Die einzelnen Elemente bzw. Komponenten verfügen über einheitliche Schnittstellen, die für die Verkettung von einzelnen nichtvisuellen Komponenten ausgelegt sind. Somit können mehrere nichtvisuelle Ausgabekomponenten zu einer Verarbeitungskette zusammengeschlossen werden. Jede Komponente besitzt einen internen Zustand, der beispielsweise als Doublewert verwaltet wird. Über die einzelnen Methoden kann auf diesen internen Zustand lesend und schreibend zugegriffen werden. Für jede nichtvisuelle Komponente muß der Name der jeweiligen Prozeßvariable und der jeweilige Rechnername, auf dem sich das zugehörige Leitsystem befindet, angegeben werden. Die nichtvisuellen Komponenten werden beim Starten des Applets durch den Client 5 initialisiert. Hierzu wird vom Client ein sogenannter Event abgesetzt, wodurch in den nichtvisuellen Komponenten die entsprechende Methode ausgeführt wird. In diese Methode wird die Anmeldung des Elementes bzw. der Komponente für die eingetragene Prozeßvariable durchgeführt.The individual elements or components have uniform interfaces that are used for the chaining of individual non-visual components are designed. Thus, several non-visual output components can be combined into one Processing chain are linked. Each component has an internal state, for example is managed as a double value. The individual methods can be used to read and write to this internal state can be accessed. For each non-visual component the name of the respective process variable and the respective Computer name on which the associated control system is located must be specified. The non-visual components are initialized by the client 5 when the applet is started. For this purpose, a so-called event is sent by the client, whereby the corresponding method is carried out in the non-visual components. In this method will the registration of the element or the component for the entered process variable is carried out.

Die Ausgabeelemente bzw. -komponenten umfassen dabei Komponenten zur Anbindung an eine Datenquelle, Konverter, die eine Umsetzung des Prozeßwerts in einen anderen Wert vornehmen, beispielsweise einen Zahlenwert in einen String wandeln, und Verknüpfer, die eine Verschmelzung von mehreren Prozeßwerten durchführen.The output elements or components include components for connection to a data source, converter, which convert the process value into another value, for example a numerical value into a Convert strings and links that merge several process values.

Dabei müssen die folgenden Schnittstellenmethoden von den jeweiligen Komponenten implementiert werden:The following interface methods must be implemented by the respective components:

Eingabemethoden (newVar)Input methods (newVar)

Um den internen Zustand der Ausgabekomponente zu setzen, werden mehrere newVar Methoden mit unterschiedlichen Übergabeparametern angeboten. Die Methode newVar mit folgenden Parametern wird von der Client Komponente aufgerufen, wenn ein neuer Prozeßwert anliegt:To set the internal state of the output component, several newVar methods with different Transfer parameters offered. The method newVar with the following parameters is used by the client component called when a new process value is present:

String: Die zugehörige Client-ID, die bei der Anmeldung für diese Prozeßvariable zurückgeliefert wurde.
String: Der neue Wert der Prozeßvariable als String.
String: The associated client ID that was returned when logging on for this process variable.
String: The new value of the process variable as a string.

Neben diesen Übergabeparametern gibt es die Methode newVar mit anderen Typen bei der Wertübergabe der Prozeßvariable. Der Prozeßwert kann auch als double, float, int oder long übergeben werden.In addition to these transfer parameters, there is the newVar method with other types for the value transfer of the process variable. The process value can also be transferred as a double, float, int or long.

45 Ausgabemethoden (getXxxValue) 45 output methods (getXxxValue)

Um den internen Zustand der Ausgabekomponente auszulesen, stehen unterschiedliche get-Methoden zur Verfügung. Die folgenden Methoden können verwendet werden:Various get methods are available to read the internal status of the output component. The following methods can be used:

getDoubleValue: Die Methode liefert den internen Zustand als double zurück.getDoubleValue: The method returns the internal status as a double.

getFloatValue: Die Methode liefert den internen Zustand als float zurück.
getlntValue: Die Methode liefert den internen Zustand als int zurück.
getLongValue: Die Methode liefert den internen Zustand als long zurück.
getStringValue: Die Methode liefert den internen Zustand als String zurück.
getFloatValue: The method returns the internal status as float.
getlntValue: The method returns the internal status as an int.
getLongValue: The method returns the internal status as long.
getStringValue: The method returns the internal status as a string.

55 Spezielle Ausgabemethoden 55 Special Output Methods

Für die Konverter- und Verknüpfungskomponenten existieren spezielle Methoden, um auf die konvertierten und verknüpften Werte zugreifen zu können. Eine genaue Beschreibung dieser Methoden erfolgt bei der entsprechenden Methodenbeschreibung. There are special methods for the converter and link components to access the converted and linked To be able to access values. A detailed description of these methods can be found in the corresponding description of the method.

Um vom Benutzer über den Client 5 eingegebene Werte an das Leitsystem 2 weiterzuleiten, wird ein Eingabeelement bzw. eine Eingabekomponente benötigt. Das Eingabeelement konvertiert den eingegebenen Wert in einen String und schickt ihn mit den benötigten Informationen an den Client, der daraufhin ein Telegramm 10 an den Server 4 verschickt. Der interne Zustand des Eingabeelementes bzw. der Eingabekomponente wird über verschiedene, Übergabeparameter betreffende Methoden beeinflußt.In order to forward values entered by the user via the client 5 to the control system 2, an input element is used or an input component is required. The input element converts the entered value to a string and sends it with the required information to the client, which then sends a telegram 10 to the server 4. The internal state of the input element or the input component is determined by various transfer parameters affected methods.

BeispielsweiseFor example

SetDoubleValue: Die Methode erhält als Übergabeparameter einen double Wert.
setFloatValue: Die Methode erhält als Übergabeparameter einen float Wert.
setlntValue: Die Methode erhält als Übergabeparameter einen int Wert.
setLongValue: Die Methode erhält als Übergabeparameter einen long Wert.
setStringValue: Die Methode erhält als Übergabeparameter einen String Wert.
SetDoubleValue: The method receives a double value as a transfer parameter.
setFloatValue: The method receives a float value as a transfer parameter.
setlntValue: The method receives an int value as a transfer parameter.
setLongValue: The method receives a long value as a transfer parameter.
setStringValue: The method receives a string value as a transfer parameter.

Zusätzlich wird von jeder Methode über den Client 5 ein entsprechendes Telegramm zum Setzen von variablen Werten abgesetzt.In addition, a corresponding telegram for setting variable values is sent from each method via the client 5 discontinued.

Über die visuellen Komponenten bzw. Elemente werden die angebundenen Prozeßwerte grafisch dargestellt. Die Darstellung reicht dabei von der reinen textuellen bis hin zu einer symbolischen Wertedarstellung. Die einzelnen Elemente umfassen dabei primitive, grafische Komponenten, beispielsweise für Kreise, Linien und dergleichen, komplexe grafische Komponenten, beispielsweise für Bilder und dergleichen, sowie sogenannte GUI-Elemente, beispielsweise Checkboxen, Buttons und dergleichen.The connected process values are graphically displayed via the visual components or elements. The representation ranges from the purely textual to a symbolic representation of values. The individual elements include primitive, graphic components, for example for circles, lines and the like, complex graphic Components, for example for images and the like, as well as so-called GUI elements, for example checkboxes, Buttons and the like.

Jede visuelle Komponente bietet spezifische Zugriffsmethoden an, über die das grafische Aussehen der Komponente beeinflußt werden kann.Each visual component offers specific access methods over which the graphical appearance of the component can be influenced.

Die Kommunikation zwischen den visuellen und den nichtvisuellen Elementen bzw. Komponenten wird, wie bereits erläutert, über sogenannte Events gesteuert. Hierzu melden sich Komponenten bei anderen Komponenten an. Die Verschaltung wird dabei rein grafisch, beispielsweise mit den entsprechenden Editoren durchgeführt.The communication between the visual and the non-visual elements or components is, as already explained, controlled via so-called events. To do this, components log on to other components. The interconnection is carried out purely graphically, for example with the appropriate editors.

Ändert sich der Wert einer nichtvisuellen Komponente, so wird nach der Wertänderung ein Event generiert. Bei Auslösen dieses Events wird dann überprüft, welche Komponenten sich für diesen Event der erzeugenden Komponente angemeldet haben. Die angemeldeten Komponenten werden über das Auslösen des Events informiert und daraufhin entsprechende Methoden in den jeweiligen Zielkomponenten aktiviert. Über diesen Mechanismus können so umfangreiche Verarbeitungsketten realisiert werden.If the value of a non-visual component changes, an event is generated after the value change. When triggered This event is then checked to see which components are registered for this event of the generating component to have. The registered components are informed about the triggering of the event and then corresponding Methods activated in the respective target components. This mechanism can be so extensive Processing chains are implemented.

Desweiteren lassen sich über Sonderfunktionen, beispielsweise zur Simulation, Daten an die jeweilige Systemgrafik vorgeben, die zur Simulation und damit auch zur Schulung von Benutzern dienen können.Furthermore, data can be transferred to the respective system graphic using special functions, for example for simulation which can be used for simulation and thus also for training users.

In den Fig. 3, 4 und 5 ist jeweils ein Ausführungsbeispiel für verschiedene Eingabe- und Anzeigeelemente 17 dargestellt, die mittels eines Web-Browsers, dessen Kopfzeile hier mit 16 gekennzeichnet ist, bedienbar und beobachtbar sind.In Figs. 3, 4 and 5, an embodiment for different input and display elements 17 is shown in each case, which are operated and monitored by means of a web browser, the header is indicated here at 16.

Die oben aufgezeigten Ausführungsbeispiele dienen der Erläuterung und sind nicht beschränkend.
30
The exemplary embodiments shown above serve for explanation and are not restrictive.
30th

Claims (8)

PatentansprücheClaims 1. Verfahren zur Erzeugung einer Oberfläche zum Bedienen und Beobachten von Leitsystemen (2), insbesondere für Prozeß- und Produktionsanlagen, wobei im Bereich von Leitsystemen (2) anfallende Informationen von einem an wenigstens ein Leitsystem (2) adaptierbaren Server-Rechner (1) über ein Client-Server-Rechner-Netzwerk auf einem Client-Rechner (5) in Eingabe- und Anzeigeelementen (19) viusalisiert werden.1. A method for generating a surface for operating and monitoring control systems (2), in particular for process and production systems, with information from one in the area of control systems (2) to at least one control system (2) adaptable server computer (1) via a client-server computer network a client computer (5) in input and display elements (19) are viusalized. 2. Verfahren nach Anspruch 1, dadurch gekennzeichnet, daß die Eingabe- und Anzeigeelemente (19) frei parametrierbar und konfigurierbar sind.2. The method according to claim 1, characterized in that the input and display elements (19) can be freely parameterized and are configurable. 3. Verfahren nach Anspruch 1 oder Anspruch 2, dadurch gekennzeichnet, daß das Client-Server-Rechner-Netzwerk ein Intra- und/oder Internet ist.3. The method according to claim 1 or claim 2, characterized in that the client-server computer network is an intranet and / or internet. 4. Verfahren nach einem oder mehreren der Ansprüche 1 bis 3, dadurch gekennzeichnet, daß die Visualisierung mittels eines Web-Browsers (18) erfolgt.4. The method according to one or more of claims 1 to 3, characterized in that the visualization takes place by means of a web browser (18). 5. Verfahren nach einem oder mehreren der Ansprüche 1 bis 4, dadurch gekennzeichnet, daß die Eingabe- und Anzeigeelemente (19) vom Client-Rechner (5) generiert werden.5. The method according to one or more of claims 1 to 4, characterized in that the input and display elements (19) can be generated by the client computer (5). 6. Verfahren nach einem oder mehreren der Ansprüche 1 bis 5, dadurch gekennzeichnet, daß die Eingabe- und Anzeigeelemente (19) mittels Java-Applets generiert werden.6. The method according to one or more of claims 1 to 5, characterized in that the input and display elements (19) can be generated using Java applets. 7. Verfahren nach einem oder mehreren der Ansprüche 1 bis 6, dadurch gekennzeichnet, daß die Eingabe- und Anzeigeelemente (19) mittels Java-Beans generiert werden.7. The method according to one or more of claims 1 to 6, characterized in that the input and display elements (19) can be generated using Java beans. 8. Verfahren nach einem oder mehreren der Ansprüche 1 bis 7, dadurch gekennzeichnet, daß die Eingabe- und An-Zeigeelemente (19) Meldungen, Kurvenverläufe und/oder Systemgrafiken umfassen.8. The method according to one or more of claims 1 to 7, characterized in that the input and display elements (19) Include messages, curves and / or system graphics. Hierzu 5 Seite(n) ZeichnungenFor this 5 page (s) drawings
DE19818041A 1998-04-22 1998-04-22 Method for generating a surface for operating and monitoring control systems Expired - Fee Related DE19818041B4 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
DE19818041A DE19818041B4 (en) 1998-04-22 1998-04-22 Method for generating a surface for operating and monitoring control systems

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE19818041A DE19818041B4 (en) 1998-04-22 1998-04-22 Method for generating a surface for operating and monitoring control systems

Publications (3)

Publication Number Publication Date
DE19818041A9 true DE19818041A9 (en)
DE19818041A1 DE19818041A1 (en) 2000-01-13
DE19818041B4 DE19818041B4 (en) 2008-04-03

Family

ID=7865481

Family Applications (1)

Application Number Title Priority Date Filing Date
DE19818041A Expired - Fee Related DE19818041B4 (en) 1998-04-22 1998-04-22 Method for generating a surface for operating and monitoring control systems

Country Status (1)

Country Link
DE (1) DE19818041B4 (en)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE10007271B4 (en) * 2000-02-17 2006-08-24 Rittal Gmbh & Co. Kg Control cabinet monitoring and control system
EP1758002B1 (en) 2000-03-17 2009-07-29 Digital Electronics Corporation Control server, control terminal, control system, and recording medium storing control communication program
JP3883775B2 (en) 2000-03-17 2007-02-21 株式会社デジタル CONTROL SYSTEM SERVER DEVICE, CONTROL SYSTEM, CONTROL SYSTEM SERVER DEVICE COMMUNICATION METHOD, AND RECORDING MEDIUM CONTAINING THE PROGRAM
DE10345894A1 (en) * 2003-09-30 2005-04-21 Siemens Ag Device and method for web-based process visualization of an automation system

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
ATE113735T1 (en) * 1989-08-16 1994-11-15 Siemens Ag FLEXIBLE AUTOMATION SYSTEM FOR VARIABLE INDUSTRIAL PROCESSES.
CA2097558C (en) * 1992-06-16 2001-08-21 William B. Kilgore Directly connected display of process control system in an open systems windows environment
DE4235186A1 (en) * 1992-10-19 1994-04-21 Dicon Dinkel Ind Automation Gm Connection system linking non networked machine systems to complex network - uses computer server to provide processing of data required for use by number of machine systems
US5928323A (en) * 1996-05-30 1999-07-27 Sun Microsystems, Inc. Apparatus and method for dynamically generating information with server-side software objects
DE19624929C2 (en) * 1996-06-21 2001-08-02 Siemens Ag Process automation system

Similar Documents

Publication Publication Date Title
DE10049504B4 (en) Method and system for transparently supporting remote I / O devices in a process control system
EP1527554B1 (en) Computer network with diagnosis computer nodes
DE69819211T2 (en) DISTRIBUTED INTERFACE ARCHITECTURE OF A PROGRAMMABLE INDUSTRIAL CONTROL
EP1738236B1 (en) Automation network comprising network components that produce status messages
EP0893746A2 (en) Process diagnosis system and method therefor
EP1430369B1 (en) Dynamic access to automation resources
DE10392438T5 (en) Device and method for the central monitoring and control of plants
EP1296207B1 (en) HMI apparatus and method for operating a technical installation, automation system with HMI apparatus and computer program product with program for carrying out the method in a HMI apparatus or in an automation system
EP0807883A2 (en) Communications system with means for exchanging software processes
EP1638028A2 (en) Computer aided generation and change management for user interfaces
DE19831405A1 (en) Control system with personnel computer
EP3637205A1 (en) Image activation on an operator station client
EP3598255B1 (en) Arrangement with operator servers and with operator clients
WO2000031597A2 (en) Automation system for solving a technical-process task and corresponding method
DE60312552T2 (en) PROCESS DATA MANAGEMENT
EP0838054A1 (en) Graphic control process and device for controlling operations in a network management system
EP3699704B1 (en) System and method for validating system requirements of cyber-physical systems
DE19818041A9 (en) Computer design generating method for operating and monitoring guiding system
EP0991984A2 (en) Programming apparatus
DE19818041B4 (en) Method for generating a surface for operating and monitoring control systems
DE19741959C2 (en) System for processing events in technical processes with a distributed data processing system
EP1454201B1 (en) Engineering and automation system
DE19520745C2 (en) Infrastructure for a system of distributed object manager components
DE19818714A1 (en) Blocking device for movable connections of silencers on semi-automatic weapons
LU500646B1 (en) Technique for providing diagnostic functionality for a programmable logic controller based application