EP1646943A1 - Method for controlling an exchange of data - Google Patents

Method for controlling an exchange of data

Info

Publication number
EP1646943A1
EP1646943A1 EP04738790A EP04738790A EP1646943A1 EP 1646943 A1 EP1646943 A1 EP 1646943A1 EP 04738790 A EP04738790 A EP 04738790A EP 04738790 A EP04738790 A EP 04738790A EP 1646943 A1 EP1646943 A1 EP 1646943A1
Authority
EP
European Patent Office
Prior art keywords
data
routine
processing
user
runtime system
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Ceased
Application number
EP04738790A
Other languages
German (de)
French (fr)
Inventor
Thomas Jachmann
Uwe RÜCKL
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Siemens AG
Original Assignee
Siemens AG
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Siemens AG filed Critical Siemens AG
Publication of EP1646943A1 publication Critical patent/EP1646943A1/en
Ceased legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • G06F9/543User-generated data transfer, e.g. clipboards, dynamic data exchange [DDE], object linking and embedding [OLE]

Definitions

  • the invention relates to a method for exchanging data between a communication unit and a data source, in which a runtime system consisting of hardware and software components transmits data between the data source and a communication unit and a processing chain controls and / or monitors the exchange of data.
  • control center systems are usually used to monitor and control large-scale networks such as energy supply networks, water supply lines and rail systems. Larger properties can also be equipped with control center systems to control air conditioning systems, elevators, lighting systems or the like.
  • the components required to control such branched systems are therefore also generally distributed or, in other words, distributed over a large area and connected to one another via a runtime system which has at least one expedient communication network and programmable computer units on which expedient runtime programs enable the exchange of information .
  • hardware interfaces are used for data exchange between the components that supply process values, for example, on the one hand, and the decentrally installed software components of the runtime system, on the other hand.
  • a communication unit such as an input computer connected to the hardware interface via the communication network, is provided to query these process values.
  • Thieves- Work chain is used to control the data exchange between the components and the communication unit.
  • the processing chain checks the user name entered in the runtime system for logging in, as well as the relevant password for the authorization to receive the process values of the selected component. In this way, sensitive process values can be shielded from the knowledge of certain users.
  • machining chains are known which are equipped with a so-called error analysis, by means of which the processing chain, the presence of Inco incompatibili- ty between components used or software modules indicating and, if appropriate solutions to remedy 'exhibits such shortcomings.
  • the known method has the disadvantage that the processing chain is monolithically embedded in the source code of the runtime programs that run during normal operation of the control center system. In this way, such processing steps for controlling the data exchange can only be changed by changing the source code of these software components. After the change, the entire runtime programs must be recompiled and installed on the hardware components.
  • the object of the invention is to provide a method of the type mentioned at the outset which can be changed or expanded easily and without interrupting the runtime system.
  • the invention achieves this object in that the processing chain is composed of processing routines, each of which has a uniform input interface, the processing routines being called up in succession and the data of a called processing routine of the input interface are fed to a processing routine immediately following it, and that the runtime system manages a dynamic memory area and accesses it in order to determine the order in which the processing routines are called.
  • the control and monitoring of the exchange of data is designed to be flexible and can be changed as desired even after the runtime system has been started up.
  • the data is processed in sequence, for example a user-entered request for process values of the component, in order of processing routines.
  • the processing routines monitor the queries, for example by storing them in access files, or control them by adding additional data, for example.
  • Each machining routine has a software-defined input interface that is identical for all machining routines.
  • the data processed by the respective processing routine are then fed to the input interface of the immediately following processing routine.
  • each processing routine is compatible or interchangeable with the other processing routines due to its uniform input interface.
  • the processing routines can therefore be called in any order without the data exchange between the processing routines causing error messages or worse damage.
  • the runtime system comprises runtime programs and hardware components that consist of computers, physical
  • Control center networks interfaces or the like are composed.
  • the physical control center networks include also wireless network connections.
  • the runtime programs can be distributed over the hardware components.
  • the software of the runtime system manages a dynamic memory area, the memory size of which can thus also be changed during the operation of the runtime system.
  • the runtime system accesses processing data stored in the memory area to determine the sequence in which the processing routines are called.
  • the processing data can be, for example, a configuration file in which the addresses of the desired processing routines are listed line by line, the runtime system processing the lines one after the other and thereby calling the processing routine listed in each line by their address.
  • the runtime system processes the lines of configuration data sequentially until the end of the configuration file is displayed to the runtime system.
  • any number of lines can be provided and any number of processing routines can be called up.
  • This can advantageously be used as early as the development of the software components of the runtime system by integrating error diagnosis or, in other words, error analysis routines into the processing chain. After the runtime programs run largely error-free, the number of error diagnosis routines can be greatly reduced in order to use them
  • the data source can be a component of a control center system, the runtime system being connected to the component via appropriate interfaces.
  • the data source can also be a software module, for example a software driver, or a database with information data that correspond to a specific state or the version of a system.
  • the dynamically managed memory area is a memory area of the so-called RAM memory of a computer.
  • the data are advantageously provided with a user ID, at least one authorization routine checking the user ID for a match with entries in predefined user lists and, if it is found that there is no match between the user ID and the user lists, the forwarding of the data is terminated. In this way, only those process values are displayed for which the user is authorized to receive. Sensitive data can thus be displayed user-specifically.
  • the user ID does not necessarily have to have an individualization character.
  • the user ID can have a role-specific character in that the user as such has a particular character Group or role is assigned.
  • the user can be characterized as a developer or parameterizer by the user ID.
  • the data is provided with a data source-specific source data identifier, one or more of the processing routines controlling the exchange of the data as a function of the source data identifier.
  • the source data is identified by adding so-called metadata to the data to be exchanged.
  • At least one processing routine is a buffering routine in which buffering data, each with a buffering data identifier, are buffered, the buffering routine displaying the buffering data identifier assigned to the buffering data identifier and the exchange of the data if the source data identifier matches one of the buffering data identifier - breaks.
  • the source data identifier is, for example, a component identifier
  • the temporarily stored process values are, for example, process values that change only slowly or not at all in comparison with the polling frequency, or parameters that were entered by an authorized third party.
  • the processing routine which is also called the buffering or caching routine, for example, makes the requested process value available without the corresponding component being accessed by the runtime system. Access by the runtime system to the Component has become superfluous, which speeds up the process.
  • a so-called enrichment routine can convert coded data from the runtime system into user-understandable data.
  • the enrichment routine also adds additional control or, in other words, metadata to the data to be exchanged between the communication unit and the data source.
  • One of the processing routines is advantageously an error analysis routine which checks the data for the presence of errors.
  • This can be any fault analysis tool.
  • the data can be checked to determine whether letters or the like have been entered instead of a natural number or an integer.
  • the error analysis routine can also monitor the compatibility of protocols or hardware components of the runtime system.
  • At least one processing routine is advantageously a monitoring routine which stores the data and / or monitoring data derived from the data in a monitoring file.
  • a monitoring file for example, all accesses to the runtime system are stored in one month, so that it can be documented who accessed which data source, for example a component of a control center system, when.
  • the runtime system has a network server with a server program and at least one client computer with a browser program, each browser program accessing the server program via the Internet.
  • data exchange is not only made possible, for example, not only via a control center communication network which is closed to the outside, but also via existing connections to the Internet which have already been physically implemented.
  • At least one processing routine is a tracing routine, which checks the path of the data in the runtime system and generates security parameters as a function of the check. Based on these security parameters, the display or forwarding of the data can now be controlled, for example. If, for example, a user of the method is connected to the runtime system via a so-called intranet, fewer concerns about data sensitivity or security are generally required, since access to the intranet is generally made more difficult by unauthorized persons. In local applications, security concerns can be almost completely eliminated, while only insensitive data or process values are displayed when accessed via the Internet.
  • a configuration file is expediently loaded into the dynamic memory area, the configuration file determining the structure and the sequence of the processing routines.
  • the configuration file is, for example, at Initialization of the runtime system called. In addition, however, it is also possible for the user to trigger the call of the configuration file by the runtime system.
  • the configuration file can also be called up after the implementation by the runtime system without the user, for example at certain times.
  • FIG. 1 shows a flow diagram for the schematic representation of the method according to the invention.
  • FIG. 1 shows a flow chart to illustrate the method according to the invention.
  • a control center system 1 is schematically shown, which consists of local protection devices 2 and 3 and a central control center 4 for controlling and monitoring the protection devices 2, 3.
  • the protective devices 2 and 3 are connected to voltage converters, not shown in the figures, which are coupled on the primary side to a network branch of an energy distribution network, likewise not shown.
  • the transformer current on the secondary side which is proportional to the current in the network branch, is sampled by a measured value acquisition unit of the protective device 2 to obtain sampled values, and the sampled values are then digitized to digital current values.
  • the protective devices 2 or 3 can trigger appropriate switches or circuit breakers that interrupt the current flow in the network branch, for example if the digital current values exceed a threshold value in the event of a short circuit, for example.
  • the protective devices 2 or 3 are arranged in the immediate vicinity of the network branch, ie the primary conductor.
  • the control center 4 is provided for monitoring and controlling the protective devices 2 or 3. For this purpose, it is connected to the protective devices 2 and 3 via an expedient communication network, not shown in the figures.
  • a continuously running runtime program 5 is provided, which is distributed over the hardware components of the runtime system.
  • the runtime program 5 accesses via hardware driver 6
  • communication units such as, for example, a stationary single-user computer 7, a laptop 8 or a so-called PDA are provided connected to the internet via a modem connection, ISDN, DSL or a wireless local network connection.
  • the runtime system comprises an Internet computer on which a server program of the runtime program 5 runs.
  • the communication units use their browser programs 14 to access the server program via the lines of the Internet. It is therefore possible for a user to query and / or control process values of the control center system 1 via the Internet.
  • a processing chain 10 is provided, which is composed of processing routines 11 running one after the other.
  • the software each have a uniform output interface and a uniform input interface, the data to be controlled and monitored from the output interface of one of the processing routines to the input interface of the subsequent processing routine subsequently called reach.
  • a user To query the current value digitized by the protective device 2, a user establishes, for example, the physical connection of his PDA to the Internet using the PDA 9 via a wireless, so-called Bluetooth connection. The user then logs on to the runtime program 5 via his PDA 9, stating his user name and password. Then, for example, he selects protective device 2 and the process value required by protective device 2 from a protective device tree displayed to him. Depending on the selection on the PDA 9, the runtime program 5 generates a component identifier as source data identifier that is specific to the protective device 2. In other words, a component address is generated depending on the selection made by the user. Furthermore, a register address for the selection of the desired current value is generated. The runtime program 5 also generates control data, in this case a so-called “read signal, with which the addressed hardware interface is informed that the addressed register is to be read out. Before running through the processing chain 10 Data still includes a user ID depending on the user name.
  • the first processing routine is a security routine 11a, which accepts the data at its input interface from the runtime program 5.
  • the security routine 11a determines whether the user is authorized to query the data. For this purpose, the security routine 11a compares the user ID of the query data with lists embedded in the security routine and only forwards the data to the output interface of the authorization routine 11a if the user ID matches an entry in this list.
  • the buffer routine 11b checks whether the requested process values are specific process parameters that were defined by the software when the buffer routine was created. Such process values are, for example, only slowly or not at all changing process values compared to the time interval between two successive queries.
  • the buffer routine 11b determines that such a specific process parameter stored in it by a previous query is queried, it makes this previously queried process parameter available and aborts the further query. Otherwise, it passes the data directly to a user routine 11c via its output interface.
  • the user routine 11c passes the data in the request direction 12 to a so-called person without processing the data Tracing routine lld continues, from which the runtime program 5 takes over the processed data again. In the request direction 12, the data is not processed by the tracing routine lld either.
  • the runtime program 5 then accesses the process values of the selected component 2 via the assigned hardware interface 6 and adds a current value as a process value to the data.
  • the runtime program 5 then transfers the data with the current value of the input interface
  • Tracing routine lld The data now runs through the processing chain 10 in the direction 13.
  • the tracing routine lld uses the query data to check from which point the user accesses the runtime program 5. If the user has logged on to the runtime program 5, for example via a local network which is very difficult to access from the outside, the display options of the runtime program are not restricted by the tracing routine lld. In the present example, however, the user of the PDA 9 is logged on to the runtime program 5 via the Internet, so that for security reasons only limited information should be displayed. For this purpose, the tracing routine lld adds further security data to the queried current value and the remaining query data, with which a specific display format of the runtime program 5 is generated.
  • the data then arrives at the user routine 11c, which adds display parameters to the data depending on the role of the user.
  • the user is a parameterizer for whom even highly specialized display data, for example for the determination of errors, could be helpful, which, on the other hand, are confusing for the normal user.
  • the user routine 11c submits the request data forth such display parameters that cause the runtime program 5 to display all data.
  • the data then passes from the user routine 11c to the buffering routine 11b.
  • the buffering routine 11b and the security routine 11a do not process the data.
  • the security routine 11a finally sends this to the runtime program 5, which displays the data on the PDA 9 in accordance with the processing parameters.

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Debugging And Monitoring (AREA)
  • Storage Device Security (AREA)

Abstract

The invention relates to a method for exchanging data between a communications unit (7, 8, 9) and a data source (2, 3, 4) of a control system (1), during which a runtime system comprised of hardware components (2, 3, 4) and software components (5, 6) transfers data between the data source (6, 7, 8) and a communications unit (7, 8, 9), and a processing chain (10) controls and/or monitors the exchange of data. The aim of the invention is to provide a method of the aforementioned type that can be modified easily and without interrupting the runtime system. To this end, the invention provides that the processing chain (10) is composed of processing routines (11), which each have a uniform input interface, whereby the processing routines (11) are called up in succession, and the data of a called up processing routine (11) are fed to the input interface of an immediately subsequent processing routine (11). In addition, the runtime system manages a dynamic storage area and accesses this storage area in order to establish the sequence with which the processing routines (11) are called up.

Description

Beschreibungdescription
Verfahren zum Steuern eines DatenaustauscheMethod of controlling data exchange
Die Erfindung betrifft ein Verfahren zum Austausch von Daten zwischen einer Kommunikationseinheit und einer Datenquelle, bei dem ein aus Hardware- und Softwarekomponenten bestehendes Laufzeitsystem Daten zwischen der Datenquelle und einer Kom- munikationseinheit überträgt und eine Bearbeitungskette den Austausch der Daten steuert und/oder überwacht.The invention relates to a method for exchanging data between a communication unit and a data source, in which a runtime system consisting of hardware and software components transmits data between the data source and a communication unit and a processing chain controls and / or monitors the exchange of data.
Ein solches Verfahren ist aus dem landläufigen Stand der Technik bereits bekannt. So dienen beispielsweise Leitstel- lenanlagen in der Regel zur Überwachung und Steuerung groß- räumiger Netze wie beispielweise Energieversorgungsnetze, Wasserversorgungsleitungen und Schienensysteme. Auch größere Immobilien können zur Steuerung von Klimaanlagen, Aufzügen, Lichtsystemen oder dergleichen mit Leitstellenanlagen ausge- rüstet sein. Die zur Steuerung solcher verzweigten Anlagen notwendigen Bauteile sind daher in der Regel ebenfalls dezentral oder mit anderen Worten großflächig verteilt aufgestellt und über ein Laufzeitsystem miteinander verbunden, das zumindest ein zweckmäßiges Kommunikationsnetz und speicherprogram- mierbare Rechnereinheiten aufweist, auf denen zweckmäßige Laufzeitprogramme den Austausch von Informationen ermöglichen. Im allgemeinen dienen Hardwareschnittstellen zum Datenaustausch zwischen den beispielsweise Prozesswerte liefernden Bauteilen einerseits und den dezentral installierten Soft- Warekomponenten des Laufzeitsystems andererseits. Zur Abfrage dieser Prozesswerte ist eine Kommunikationseinheit wie beispielsweise ein über das Kommunikationsnetz mit der Hardwareschnittstelle verbundener Eingaberechner vorgesehen. Die Be- arbeitungskette dient zur Steuerung des Datenaustauschs zwischen den Bauteilen und der Kommunikationseinheit.Such a method is already known from the state of the art. For example, control center systems are usually used to monitor and control large-scale networks such as energy supply networks, water supply lines and rail systems. Larger properties can also be equipped with control center systems to control air conditioning systems, elevators, lighting systems or the like. The components required to control such branched systems are therefore also generally distributed or, in other words, distributed over a large area and connected to one another via a runtime system which has at least one expedient communication network and programmable computer units on which expedient runtime programs enable the exchange of information , In general, hardware interfaces are used for data exchange between the components that supply process values, for example, on the one hand, and the decentrally installed software components of the runtime system, on the other hand. A communication unit, such as an input computer connected to the hardware interface via the communication network, is provided to query these process values. Thieves- Work chain is used to control the data exchange between the components and the communication unit.
So prüft die Bearbeitungskette beispielsweise den zur Anmel- düng in das Laufzeitsystem eingegebenen Benutzernamen, sowie das diesbezügliche Kennwort auf die Berechtigung zum Empfang der Prozesswerte des ausgewählten Bauteils. Auf diese Weise können sensible Prozesswerte von der Kenntnisnahme bestimmter Benutzer abgeschirmt werden. Darüber hinaus sind Bearbei- tungsketten bekannt, die mit einer sogenannten Fehleranalyse ausgerüstet sind, mit deren Hilfe die Bearbeitungskette das Vorliegen von Inko patibilitäten verwendeter Bauteile oder von Softwaremodulen anzeigt und gegebenenfalls Lösungswege zur Behebung' solcher Mängel aufzeigt.For example, the processing chain checks the user name entered in the runtime system for logging in, as well as the relevant password for the authorization to receive the process values of the selected component. In this way, sensitive process values can be shielded from the knowledge of certain users. In addition, machining chains are known which are equipped with a so-called error analysis, by means of which the processing chain, the presence of Inco incompatibili- ty between components used or software modules indicating and, if appropriate solutions to remedy 'exhibits such shortcomings.
Dem vorbekannten Verfahren haftet der Nachteil an, dass die Bearbeitungskette monolithisch in den Quellcode der bei Normalbetrieb der Leitstellenanlage ablaufenden Laufzeitprogramme eingebettet ist. Auf diese Weise ist eine Änderung solcher Bearbeitungsschritte zum Steuern des Datenaustausches nur über eine Veränderung des Quellcodes dieser Softwarekomponenten möglich. Nach der Änderung müssen daher die gesamten Laufzeitprogramme neu kompiliert und auf den Hardwarekomponenten installiert werden.The known method has the disadvantage that the processing chain is monolithically embedded in the source code of the runtime programs that run during normal operation of the control center system. In this way, such processing steps for controlling the data exchange can only be changed by changing the source code of these software components. After the change, the entire runtime programs must be recompiled and installed on the hardware components.
Aufgabe der Erfindung ist es, ein Verfahren der eingangs genannten Art bereitzustellen, das sich leicht und ohne Unterbrechung des Laufzeitsystems verändern oder erweitern lässt.The object of the invention is to provide a method of the type mentioned at the outset which can be changed or expanded easily and without interrupting the runtime system.
Die Erfindung löst diese Aufgabe dadurch, dass die Bearbeitungskette aus Bearbeitungsroutinen zusammengesetzt ist, die jeweils eine einheitliche Eingangsschnittstelle aufweisen, wobei die Bearbeitungsroutinen nacheinander aufgerufen und die Daten einer aufgerufenen Bearbeitungsroutine der Eingangsschnittstelle einer ihr unmittelbar nachfolgenden Bearbeitungsroutine zugeführt werden, und dass das Laufzeitsystem einen dynamischen Speicherbereich verwaltet und auf diesen zum Festlegen der Reihenfolge zugreift, mit der die Bearbeitungsroutinen aufgerufen werden.The invention achieves this object in that the processing chain is composed of processing routines, each of which has a uniform input interface, the processing routines being called up in succession and the data of a called processing routine of the input interface are fed to a processing routine immediately following it, and that the runtime system manages a dynamic memory area and accesses it in order to determine the order in which the processing routines are called.
Erfindungsgemäß ist die Steuerung und Überwachung des Austausche der Daten flexibel ausgelegt und kann auch nach der Inbetriebnahme des Laufzeitsystems beliebig verändert werden. Dazu durchlaufen die Daten, beispielsweise eine benutzersei- tig eingegebene Anfrage nach Prozesswerten des Bauteils, der Reihe nach Bearbeitungsroutinen. Die Bearbeitungsroutinen überwachen die Abfragen, beispielsweise durch Speichern in Zugriffsdateien, oder steuern diese beispielsweise durch Beilegen weiterer Daten. Dabei weist jede Bearbeitungsroutine eine softwaremäßig festgelegte Eingangsschnittstelle auf, die für alle Bearbeitungsroutinen identisch ist. Zum Austausch werden die durch die jeweilige Bearbeitungsroutine bearbeite- ten Daten anschließend der Eingangsschnittstelle der unmittelbar nachfolgenden Bearbeitungsroutine zugeführt. Mit anderen Worten ist jede Bearbeitungsroutine auf Grund ihrer einheitlichen Eingangsschnittstelle mit den übrigen Bearbeitungsroutinen kompatibel oder austauschbar. Die Bearbeitungs- routinen können daher in jeder beliebigen Reihenfolge ausgerufen werden, ohne dass der Datenaustausch zwischen den Bearbeitungsroutinen Fehlermeldungen oder schlimmere Schäden verursacht. Das Laufzeitsystem umfasst erfindungsgemäß LaufZeitprogramme und Hardwarekomponenten, die aus Rechnern, physikalischenAccording to the invention, the control and monitoring of the exchange of data is designed to be flexible and can be changed as desired even after the runtime system has been started up. For this purpose, the data is processed in sequence, for example a user-entered request for process values of the component, in order of processing routines. The processing routines monitor the queries, for example by storing them in access files, or control them by adding additional data, for example. Each machining routine has a software-defined input interface that is identical for all machining routines. For the exchange, the data processed by the respective processing routine are then fed to the input interface of the immediately following processing routine. In other words, each processing routine is compatible or interchangeable with the other processing routines due to its uniform input interface. The processing routines can therefore be called in any order without the data exchange between the processing routines causing error messages or worse damage. According to the invention, the runtime system comprises runtime programs and hardware components that consist of computers, physical
Leitstellennetzen, Schnittstellen oder dergleichen zusammengesetzt sind. Die physikalischen Leitstellennetze umfassen auch kabellose Netz erbindungen. Die Laufzeitprogramme können über die Hardwarekomponenten verteilt sein.Control center networks, interfaces or the like are composed. The physical control center networks include also wireless network connections. The runtime programs can be distributed over the hardware components.
Um auch während des Ablaufs der Softwarekomponenten des Lauf- zeitsystems die Reihenfolge der Bearbeitungsroutinen den jeweiligen Bedürfnissen entsprechend verändern zu können, verwaltet die Software des Laufzeitsystems einen dynamischen Speicherbereich, dessen Speichergröße somit auch während des Betriebs des Laufzeitsystems verändert werden kann. Zum Fest- legen der Reihenfolge des Aufrufs der Bearbeitungsroutinen greift das Laufzeitsystem auf in dem Speicherbereich abgelegte Bearbeitungsdaten zu. Bei den Bearbeitungsdaten kann es sich beispielsweise um eine Konfigurationsdatei handeln, in der zeilenweise die Adressen der gewünschten Bearbeitungsrou- tinen aufgelistet sind, wobei das Laufzeitsystem die Zeilen nacheinander abarbeitet und dabei die in jeder Zeile aufgelistete Bearbeitungsroutine über ihre Adresse aufruft. Das Laufzeitsystem arbeitet die Zeilen der Konfigurationsdaten solange sequentiell ab, bis dem Laufzeitsystem das Ende der Konfigurationsdatei angezeigt wird.In order to be able to change the sequence of the processing routines according to the respective requirements even while the software components of the runtime system are running, the software of the runtime system manages a dynamic memory area, the memory size of which can thus also be changed during the operation of the runtime system. The runtime system accesses processing data stored in the memory area to determine the sequence in which the processing routines are called. The processing data can be, for example, a configuration file in which the addresses of the desired processing routines are listed line by line, the runtime system processing the lines one after the other and thereby calling the processing routine listed in each line by their address. The runtime system processes the lines of configuration data sequentially until the end of the configuration file is displayed to the runtime system.
Durch die dynamische Verwaltung des Speicherbereichs können beliebig viele Zeilen vorgesehen und somit beliebig viele Bearbeitungsroutinen aufgerufen werden. Dies kann vorteilhaft schon im Zeitpunkt der Entwicklung der Softwarekomponenten des Laufzeitsystems genutzt werden, indem Fehlerdiagnoseoder mit anderen Worten Fehleranalyseroutinen in die Bearbeitungskette eingebunden werden. Nachdem die Laufzeitprogramme weitestgehend fehlerfrei ablaufen, kann die Anzahl der Feh- lerdiagnoseroutinen stark verringert werden, um auf dieseAs a result of the dynamic management of the memory area, any number of lines can be provided and any number of processing routines can be called up. This can advantageously be used as early as the development of the software components of the runtime system by integrating error diagnosis or, in other words, error analysis routines into the processing chain. After the runtime programs run largely error-free, the number of error diagnosis routines can be greatly reduced in order to use them
Weise die Geschwindigkeit eines Datenaustausches zu erhöhen oder mit anderen Worten die sogenannte Performance des Laufzeitsystems zu verbessern. Dazu ist keineswegs notwendig die Softwarekomponenten des Laufzeitsystems zu ändern. Im Rahmen der Erfindung ist beispielsweise lediglich eine Umparametrie- rung vorzunehmen. Dies gilt auch für die Suche nach Fehlern nach der Implementierung des Laufzeitsystems, die beispiels- weise durch die nachträgliche Hinzunahme von Fehleranalyseroutinen in die Bearbeitungskette eingegrenzt werden können.How to increase the speed of a data exchange or in other words to improve the so-called performance of the runtime system. This is by no means necessary Change software components of the runtime system. Within the scope of the invention, for example, only a re-parameterization is to be carried out. This also applies to the search for errors after the implementation of the runtime system, which can be limited, for example, by the subsequent addition of error analysis routines in the processing chain.
Als Datenquelle eigenen sich sowohl Hardwarekomponenten als auch Softwarekomponenten. So kann die Datenquelle beispiels- weise ein Bauteil einer Leitstellenanlage sein, wobei das Laufzeitsystem über zweckmäßige Schnittstellen mit dem Bauteil verbunden ist. Abweichend hiervon kann die Datenquelle jedoch auch ein Softwaremodul etwa ein Softwaretreiber oder aber eine Datenbank mit Informationsdaten sein, die einem be- stimmten Zustand oder der Version einer Anlage entsprechen.Both hardware components and software components are suitable as data sources. For example, the data source can be a component of a control center system, the runtime system being connected to the component via appropriate interfaces. Deviating from this, however, the data source can also be a software module, for example a software driver, or a database with information data that correspond to a specific state or the version of a system.
Bei dem dynamisch verwalteten Speicherbereich handelt es sich erfindungsgemäß um einen Speicherbereich des sogenannten RAM- Speichers eines Rechners.According to the invention, the dynamically managed memory area is a memory area of the so-called RAM memory of a computer.
Vorteilhafterweise werden die Daten mit einer Benutzerkennung versehen, wobei wenigstens eine Berechtigungsroutine die Benutzerkennung auf eine Übereinstimmung mit Eintragungen in vorgegebenen Benutzerlisten überprüft und bei Feststellung einer fehlenden Übereinstimmung zwischen der Benutzerkennung und den Benutzerlisten die Weiterleitung der Daten abbricht. Auf diese Weise werden dem Benutzer nur solche Prozesswerte zur Anzeige gebracht, für deren Empfang er befugt ist. Sensible Daten können somit benutzerspezifisch angezeigt werden. Die Benutzerkennung muss im Rahmen der Erfindung nicht zwangläufig einen Individualisierungscharakter aufweisen. So kann die Benutzerkennung durchaus rollenspezifischen Charakter dahin aufweisen, dass der Nutzer als solcher einer bestimmten Gruppe oder Rolle zugeordnet wird. So kann der Nutzer beispielsweise durch die Benutzerkennung als Entwickler, Para- metrierer charakterisiert werden.The data are advantageously provided with a user ID, at least one authorization routine checking the user ID for a match with entries in predefined user lists and, if it is found that there is no match between the user ID and the user lists, the forwarding of the data is terminated. In this way, only those process values are displayed for which the user is authorized to receive. Sensitive data can thus be displayed user-specifically. Within the scope of the invention, the user ID does not necessarily have to have an individualization character. For example, the user ID can have a role-specific character in that the user as such has a particular character Group or role is assigned. For example, the user can be characterized as a developer or parameterizer by the user ID.
Weiterhin ist es zweckmäßig, die Daten mit einer datenquellenspezifischen Quelldatenkennung zu versehen, wobei ein oder mehrere der Bearbeitungsroutinen den Austausch der Daten in Abhängigkeit der Quelldatenkennung steuern. Die Quelldaten- kennung erfolgt wie die Benutzerkennung über das Beilegen so- genannter Metadaten zu den Daten, die ausgetauscht werden.It is furthermore expedient to provide the data with a data source-specific source data identifier, one or more of the processing routines controlling the exchange of the data as a function of the source data identifier. Like the user ID, the source data is identified by adding so-called metadata to the data to be exchanged.
Gemäß einer diesbezüglich vorteilhaften Weiterentwicklung ist wenigstens eine Bearbeitungsroutine eine Zwischenspeicherroutine, in der Zwischenspeicherdaten mit jeweils einer Zwi- schenspeicherdatenkennung zwischengespeichert sind, wobei die Zwischenspeicherroutine bei einer Übereinstimmung der Quelldatenkennung mit einer der Zwischenspeicherdatenkennung die der Zwischenspeicherdatenkennung zugeordneten Zwischenspeicherdaten zur Anzeige bringt und den Austausch der Daten ab- bricht. Handelt es sich bei der Quelldatenkennung beispielsweise um eine Bauteilkennung, ist es beispielsweise möglich, bei einer Abfrage bestimmter Prozesswerte einer Leistellenanlage die Bearbeitungsroutine zu veranlassen, bestimmte Prozesswerte zwischen zu speichern. Bei den zwischengespeicher- ten Prozesswerten handelt es sich beispielsweise um sich im Vergleich zur Abfragehäufigkeit nur langsam ändernde oder gar nicht ändernde Prozesswerte oder aber um Parameter, die von einem zugriffsberechtigten Dritten eingegebenen wurden. Bei einer erneuten Abfrage stellt die beispielsweise auch Zwi- schenspeicher- oder Cachingroutine genannte Bearbeitungsroutine, den angeforderten Prozesswert zur Verfügung, ohne dass von dem Laufzeitsystem auf das entsprechende Bauteil zugegriffen wurde. Der Zugriff durch das Laufzeitsystem auf das Bauteil ist somit überflüssig geworden, wodurch sich das Verfahren beschleunigt.According to a further development which is advantageous in this regard, at least one processing routine is a buffering routine in which buffering data, each with a buffering data identifier, are buffered, the buffering routine displaying the buffering data identifier assigned to the buffering data identifier and the exchange of the data if the source data identifier matches one of the buffering data identifier - breaks. If the source data identifier is, for example, a component identifier, it is possible, for example, to prompt the processing routine when certain process values of a control center system are queried to temporarily store certain process values. The temporarily stored process values are, for example, process values that change only slowly or not at all in comparison with the polling frequency, or parameters that were entered by an authorized third party. When queried again, the processing routine, which is also called the buffering or caching routine, for example, makes the requested process value available without the corresponding component being accessed by the runtime system. Access by the runtime system to the Component has become superfluous, which speeds up the process.
In diesem Zusammenhang sind beliebige weitere Anzeigemöglich- keiten vorstellbar, die an dieser Stelle nicht abschließend aufgezählt werden können. So kann beispielsweise eine sogenannte Enrichment-Routine kodierte Daten des Laufzeitsystems in benutzerverständliche Daten umwandeln. Auch die Enrichment-Routine legt zur Steuerung der Datenanzeige oder des Da- tenflusses den zwischen der Kommunikationseinheit und der Datenquelle auszutauschenden Daten zusätzliche Steuer- oder mit anderen Worten Metadaten bei.In this context, any other display options are conceivable that cannot be listed in detail here. For example, a so-called enrichment routine can convert coded data from the runtime system into user-understandable data. In order to control the data display or the data flow, the enrichment routine also adds additional control or, in other words, metadata to the data to be exchanged between the communication unit and the data source.
Vorteilhafterweise ist eine der Bearbeitungsroutinen eine Fehleranalyseroutine, welche die Daten auf das Vorliegen von Fehlern hin überprüft. Hierbei kann es sich um jedes beliebige Fehleranalysetool handeln. So können die Daten beispielsweise dahingehend überprüft werden, ob statt einer natürlichen Zahl oder eines Integers Buchstaben oder derglei- chen eingegeben wurden. Die Fehleranalyseroutine kann jedoch auch die Kompatibilität von Protokollen oder Hardwarekomponenten des Laufzeitsystems überwachen.One of the processing routines is advantageously an error analysis routine which checks the data for the presence of errors. This can be any fault analysis tool. For example, the data can be checked to determine whether letters or the like have been entered instead of a natural number or an integer. However, the error analysis routine can also monitor the compatibility of protocols or hardware components of the runtime system.
Vorteilhafterweise ist wenigstens eine Bearbeitungsroutine eine Uberwachungsroutine, welche die Daten und/oder von den Daten abgeleitete Überwachungsdaten in einer Überwachungsdatei speichert. In dieser Überwachungsdatei sind beispielsweise sämtliche Zugriffe auf das Laufzeitsystem in einem Monat gespeichert, so dass auf diese Weise dokumentiert werden kann, wer wann auf welche Datenquelle, beispielsweise ein Bauteil einer Leitstellenanlage, zugegriffen hat. Gemäß eines bevorzugten Ausführungsbeispiels der Erfindung weist das Laufzeitsystem einen Netzserver mit einem Serverprogramm und wenigstens einen Client-Rechner mit einem Browserprogramm auf, wobei jedes Browserprogramm auf das Server- programm über das Internet zugreift. Bei diesem Ausführungsbeispiel der Erfindung wird der Datenaustausch beispielsweise nicht nur über ein nach außen abgeschlossenes Leitstellenkom- munikationsnetz ermöglicht, sondern über bereits physikalisch realisierte bestehende Verbindungen des Internets. Selbstver- ständlich ist im Rahmen der Erfindung beispielsweise auch möglich, das Kommunikationsnetz der Leitstellenanlage in ein übergeordnetes sogenanntes Intranet einzugliedern, das seinerseits mit dem Internet verbindbar ist.At least one processing routine is advantageously a monitoring routine which stores the data and / or monitoring data derived from the data in a monitoring file. In this monitoring file, for example, all accesses to the runtime system are stored in one month, so that it can be documented who accessed which data source, for example a component of a control center system, when. According to a preferred embodiment of the invention, the runtime system has a network server with a server program and at least one client computer with a browser program, each browser program accessing the server program via the Internet. In this exemplary embodiment of the invention, data exchange is not only made possible, for example, not only via a control center communication network which is closed to the outside, but also via existing connections to the Internet which have already been physically implemented. Of course, it is also possible within the scope of the invention, for example, to integrate the communication network of the control center system into a superordinate so-called intranet, which in turn can be connected to the Internet.
Gemäß einer diesbezüglichen Weiterentwicklung ist wenigstens eine Bearbeitungsroutine eine Tracing-Routine, welche den Weg der Daten in dem Laufzeitsystem überprüft und in Abhängigkeit der Überprüfung Sicherheitsparameter erzeugt. Aufgrund dieser Sicherheitsparameter kann nun beispielsweise die Anzeige oder die Weiterleitung der Daten gesteuert werden. Ist beispielsweise ein Nutzer des Verfahrens über ein sogenanntes Intranet an das Laufzeitsystem angeschlossen, sind in der Regel weniger Bedenken hinsichtlich der Datensensibilität oder -Sicherheit erforderlich, da der Zugang zum Intranet durch Unberech- tigte in der Regel erschwert ist. Bei lokalen Anwendungen können Sicherheitsbedenken nahezu vollständig aufgehoben sein, während bei einem Zugriff über das Internet nur unsensible Daten oder Prozesswerte anzeigt werden.According to a further development in this regard, at least one processing routine is a tracing routine, which checks the path of the data in the runtime system and generates security parameters as a function of the check. Based on these security parameters, the display or forwarding of the data can now be controlled, for example. If, for example, a user of the method is connected to the runtime system via a so-called intranet, fewer concerns about data sensitivity or security are generally required, since access to the intranet is generally made more difficult by unauthorized persons. In local applications, security concerns can be almost completely eliminated, while only insensitive data or process values are displayed when accessed via the Internet.
Zweckmäßigerweise wird eine Konfigurationsdatei in den dynamischen Speicherbereich geladen, wobei die Konfigurationsdatei die Struktur und die Reihenfolge der Bearbeitungsroutinen festlegt. Die Konfigurationsdatei wird beispielsweise bei der Initialisierung des Laufzeitsystems aufgerufen. Darüber hinaus ist es jedoch auch möglich, dass der Benutzer den Aufruf der Konfigurationsdatei durch das Laufzeitsystem auslöst. Die Konfigurationsdatei kann auch nach der Implementierung von dem Laufzeitsystem ohne den Benutzer beispielsweise zu bestimmten Zeitpunkten aufgerufen werden.A configuration file is expediently loaded into the dynamic memory area, the configuration file determining the structure and the sequence of the processing routines. The configuration file is, for example, at Initialization of the runtime system called. In addition, however, it is also possible for the user to trigger the call of the configuration file by the runtime system. The configuration file can also be called up after the implementation by the runtime system without the user, for example at certain times.
Weitere zweckmäßige Ausgestaltungen und Vorteile der Erfindung sind Gegenstand der nachfolgenden Beschreibung mit Bezug auf die Figur der Zeichnung, wobeiFurther useful embodiments and advantages of the invention are the subject of the following description with reference to the figure of the drawing, wherein
Figur 1 ein Flussdiagramm zur schematischen Darstellung des erfindungsgemäßen Verfahrens zeigt.FIG. 1 shows a flow diagram for the schematic representation of the method according to the invention.
Figur 1 zeigt ein Flussdiagramm zur Verdeutlichung des erfindungsgemäßen Verfahrens. Schematisch ist eine Leitstellenanlage 1 dargestellt, die aus lokalen Schutzgeräten 2 und 3 sowie einer zentralen Leitstelle 4 zur Steuerung und Überwachung der Schutzgeräte 2, 3 besteht. Die Schutzgeräte 2 und 3 sind mit figürlich nicht dargestellten Spannungswandlern verbunden, die primärseitig mit einem ebenfalls nicht gezeigten Netzzweig eines Energieverteilungsnetzes gekoppelt sind. Der zum Strom im Netzzweig proportionale sekundärseitige Wandlerstrom wird von einer Messwerterfassungseinheit des Schutzge- rätes 2 unter Gewinnung von Abtastwerten abgetastet und die Abtastwerte anschließend zu digitalen Stromwerten digitalisiert. Die Schutzgeräte 2 oder 3 können zweckmäßige Schalter oder Stromunterbrecher auslösen, die den Stromfluss im Netzzweig unterbrechen, wenn beispielsweise die digitalen Stro - werte etwa in einem Kurzschlussfall einen Schwellenwert überschreiten. Dabei sind die Schutzgeräte 2 oder 3 in unmittelbarer Umgebung des Netzzweiges also des Primärleiters angeordnet. Die Leitstelle 4 ist zur Überwachung und Steuerung der Schutzgeräte 2 oder 3 vorgesehen. Dazu ist sie über ein zweckmäßiges figürlich nicht dargestelltes Kommuni ations- netzwerk mit den Schutzgeräten 2 und 3 verbunden. Zur Gewährleistung eines sicheren Datenaustauschs zwischen den Schutzgeräten 2 oder 3 und der Leitstelle 4 ist ein fortwährend ablaufendes LaufZeitprogramm 5 vorgesehen, das über die Hardwarekomponenten des Laufzeitsystems verteilt ist. Dabei greift das Laufzeitprogramm 5 über Hardwaretreiber 6 aufFIG. 1 shows a flow chart to illustrate the method according to the invention. A control center system 1 is schematically shown, which consists of local protection devices 2 and 3 and a central control center 4 for controlling and monitoring the protection devices 2, 3. The protective devices 2 and 3 are connected to voltage converters, not shown in the figures, which are coupled on the primary side to a network branch of an energy distribution network, likewise not shown. The transformer current on the secondary side, which is proportional to the current in the network branch, is sampled by a measured value acquisition unit of the protective device 2 to obtain sampled values, and the sampled values are then digitized to digital current values. The protective devices 2 or 3 can trigger appropriate switches or circuit breakers that interrupt the current flow in the network branch, for example if the digital current values exceed a threshold value in the event of a short circuit, for example. The protective devices 2 or 3 are arranged in the immediate vicinity of the network branch, ie the primary conductor. The control center 4 is provided for monitoring and controlling the protective devices 2 or 3. For this purpose, it is connected to the protective devices 2 and 3 via an expedient communication network, not shown in the figures. To ensure a secure data exchange between the protective devices 2 or 3 and the control center 4, a continuously running runtime program 5 is provided, which is distributed over the hardware components of the runtime system. The runtime program 5 accesses via hardware driver 6
Hardwareschnittstellen der Bauteile 2, 3, 4 der Leitstellenanlage 1 zu. So sind beispielsweise digitale Stromwerte des Schutzgerätes 2 in einem Register des Schutzgerätes 2 abgelegt und können der Leitstelle 4 über das nicht dargestellte Kommunikationsnetzwerk zugeführt werden, wobei die Hardwaretreiber 6 zusammen mit dem Laufzeitprogramm 5 die Adressierung und die Steuerung des Datenflusses übernehmen.Hardware interfaces of components 2, 3, 4 of the control center system 1. For example, digital current values of the protective device 2 are stored in a register of the protective device 2 and can be supplied to the control center 4 via the communication network (not shown), the hardware drivers 6 taking over the addressing and control of the data flow together with the runtime program 5.
Um die Zustände der Bauteile 2, 3 oder 4 der Leitstellenan- läge 1 von außen, also von nicht in das Kommunikationsnetz der Leitstellenanlage 1 eingebundenen Standorten überwachen zu können, sind Kommunikationseinheiten wie beispielsweise ein ortsfester Einzelplatzrechner 7, ein Laptop 8 oder ein sogenanntes PDA vorgesehen, die über einen Modemanschluss, ISDN, DSL oder einer schnurlosen lokalen Netzverbindung an das sogenannte Internet angeschlossen sind. Das Laufzeitsystem umfasst einen Internet-Rechner, auf dem ein Serverprogramm des LaufZeitprogramms 5 abläuft. Die Kommunikationseinheiten greifen mittels ihrer Browserprogramme 14 auf das Ser- verprogramm über die Leitungen des Internets zu. Einem Nutzer ist es daher möglich, über das Internet Prozesswerte der Leitstellenanlage 1 abzufragen und/oder diese zu steuern. Zur Steuerung des Datenaustauschs zwischen den Komponenten 2,In order to be able to monitor the states of the components 2, 3 or 4 of the control center system 1 from the outside, that is to say from locations that are not integrated in the communication network of the control center system 1, communication units such as, for example, a stationary single-user computer 7, a laptop 8 or a so-called PDA are provided connected to the internet via a modem connection, ISDN, DSL or a wireless local network connection. The runtime system comprises an Internet computer on which a server program of the runtime program 5 runs. The communication units use their browser programs 14 to access the server program via the lines of the Internet. It is therefore possible for a user to query and / or control process values of the control center system 1 via the Internet. To control the data exchange between components 2,
3 und 4 der Leitstellenanlage 1 und den Kommunikationseinheiten 7, 8 und 9 ist eine Bearbeitungskette 10 vorgesehen, die aus nacheinander ablaufenden Bearbeitungsroutinen 11 zusam- mengesetzt ist. Um einen reibungslosen Datenaustausch zwischen den Bearbeitungsroutinen 11 bei beliebiger Reihenfolge zu ermöglichen, weisen diese softwareseitig jeweils eine einheitliche Ausgabeschnittstelle sowie jeweils eine einheitliche Eingangsschnittstelle auf, wobei die zu steuernden und überwachenden Daten von der Ausgangsschnittstelle einer der Bearbeitungsroutinen zu der Eingangsschnittstelle der nachfolgenden, anschließend aufgerufenen Bearbeitungsroutine gelangen.3 and 4 of the control center system 1 and the communication units 7, 8 and 9, a processing chain 10 is provided, which is composed of processing routines 11 running one after the other. In order to enable a smooth data exchange between the processing routines 11 in any order, the software each have a uniform output interface and a uniform input interface, the data to be controlled and monitored from the output interface of one of the processing routines to the input interface of the subsequent processing routine subsequently called reach.
Zur Abfrage des vom Schutzgerät 2 digitalisierten Stromwertes stellt ein Anwender beispielsweise mit dem PDA 9 über eine drahtlose sogenannte Bluetooth-Verbindung den physikalischen Anschluss seines PDAs an das Internet her. Anschließend meldet sich der Nutzer über sein PDA 9 unter Angabe seines Be- nutzernamens und seines Kennwortes am Laufzeitprogramm 5 an. Anschließend wählt er beispielsweise aus einem ihm angezeigten Schutzgerätebaum das Schutzgerät 2 und den vom Schutzgerät 2 benötigten Prozesswert aus. Das Laufzeitprogramm 5 erzeugt in Abhängigkeit der Auswahl am PDA 9 eine Bauteilken- nung als Quelldatenkennung, die für das Schutzgerät 2 spezifisch ist. Mit anderen Worten wird eine Bauteiladresse in Abhängigkeit der Auswahl seitens des Benutzers erzeugt. Weiterhin wird eine Registeradresse zur Auswahl des gewünschten Stromwertes generiert. Das Laufzeitprogramm 5 erzeugt ferner Steuerungsdaten, in diesem Fall ein sogenanntes „Read-Sig- nal , mit dem der adressierten Hardwareschnittstelle mitgeteilt wird, dass das adressierte Register ausgelesen werden soll. Vor dem Durchlaufen der Bearbeitungskette 10 wird den Daten weiterhin eine Benutzerkennung in Abhängigkeit des Benutzernamens beigelegt.To query the current value digitized by the protective device 2, a user establishes, for example, the physical connection of his PDA to the Internet using the PDA 9 via a wireless, so-called Bluetooth connection. The user then logs on to the runtime program 5 via his PDA 9, stating his user name and password. Then, for example, he selects protective device 2 and the process value required by protective device 2 from a protective device tree displayed to him. Depending on the selection on the PDA 9, the runtime program 5 generates a component identifier as source data identifier that is specific to the protective device 2. In other words, a component address is generated depending on the selection made by the user. Furthermore, a register address for the selection of the desired current value is generated. The runtime program 5 also generates control data, in this case a so-called “read signal, with which the addressed hardware interface is informed that the addressed register is to be read out. Before running through the processing chain 10 Data still includes a user ID depending on the user name.
Bei einer Anfrage auf Darstellung des digitalen Stromwertes des Schutzgerätes 2 durchlaufen diese Anfragedaten die Bearbeitungskette 10 in eine Anfragerichtung 12. In dem gezeigten Ausführungsbeispiel ist die erste Bearbeitungsroutine eine Sicherheitsroutine 11a, welche die Daten an ihrer Eingangsschnittstelle von dem Laufzeitprogramm 5 entgegennimmt. Die Sicherheitsroutine 11a stellt fest, ob der Benutzer zur Datenabfrage berechtigt ist. Dazu vergleicht die Sicherheitsroutine 11a die Benutzerkennung der Abfragedaten mit in der Sicherheitsroutine eingebetteten Listen und gibt nur bei Übereinstimmung der Nutzerkennung mit einem Eintrag in dieser Liste die Daten an die Ausgabeschnittstelle der Berechtigungsroutine 11a weiter.In the event of a request for representation of the digital current value of the protective device 2, these request data pass through the processing chain 10 in a request direction 12. In the exemplary embodiment shown, the first processing routine is a security routine 11a, which accepts the data at its input interface from the runtime program 5. The security routine 11a determines whether the user is authorized to query the data. For this purpose, the security routine 11a compares the user ID of the query data with lists embedded in the security routine and only forwards the data to the output interface of the authorization routine 11a if the user ID matches an entry in this list.
Von dort aus gelangen die Daten zu der Eingangsschnittstelle einer Zwischenspeicherroutine 11b. Die Zwischenspeicherrou- tine 11b überprüft, ob es sich bei den angeforderten Prozesswerten um bestimmte Prozessparameter handelt, die software- seitig beim Erstellen der Zwischenspeicherroutine festgelegt wurden. Solche Prozesswerte sind beispielsweise sich im Vergleich zum Zeitabstand zwischen zwei aufeinander folgenden Abfragen nur langsam oder gar nicht ändernde Prozesswerte.From there, the data arrive at the input interface of a buffer routine 11b. The buffer routine 11b checks whether the requested process values are specific process parameters that were defined by the software when the buffer routine was created. Such process values are, for example, only slowly or not at all changing process values compared to the time interval between two successive queries.
Stellt die Zwischenspeicherroutine 11b fest, dass ein solcher in ihr von einer vorherigen Abfrage gespeicherter bestimmter Prozessparameter abgefragt wird, stellt sie diesen bereits früher abgefragten Prozessparameter zur Verfügung und bricht die weitere Abfrage ab. Andernfalls gibt sie die Daten über ihre Ausgangsschnittstelle direkt an eine Benutzerroutine 11c weiter. Die Benutzerroutine 11c gibt die Daten in der Anfragerichtung 12 ohne Bearbeitung der Daten an eine sogenannte Tracing-Routine lld weiter, von der das Laufzeitprogramm 5 die bearbeiteten Daten wieder übernimmt. In der Anfragerichtung 12 findet auch durch die Tracing-Routine lld keine Bearbeitung der Daten statt.If the buffer routine 11b determines that such a specific process parameter stored in it by a previous query is queried, it makes this previously queried process parameter available and aborts the further query. Otherwise, it passes the data directly to a user routine 11c via its output interface. The user routine 11c passes the data in the request direction 12 to a so-called person without processing the data Tracing routine lld continues, from which the runtime program 5 takes over the processed data again. In the request direction 12, the data is not processed by the tracing routine lld either.
Anschließend greift das Laufzeitprogramm 5 über die zugeordnete Hardwareschnittstelle 6 auf die Prozesswerte des ausgewählten Bauteils 2 zu und legt den Daten einen Stromwert als Prozesswert bei. Anschließend übergibt das Laufzeitprogramm 5 die Daten mit dem Stromwert der Eingangsschnittstelle derThe runtime program 5 then accesses the process values of the selected component 2 via the assigned hardware interface 6 and adds a current value as a process value to the data. The runtime program 5 then transfers the data with the current value of the input interface
Tracing-Routine lld. Die Daten durchlaufen die Bearbeitungskette 10 nun in Richtung 13. Die Tracing-Routine lld überprüft anhand der Abfragedaten, von welcher Stelle aus der Benutzer auf das Laufzeitprogramm 5 zugreift. Hat sich der Be- nutzer beispielsweise über ein lokales, von außen nur sehr schwer zugängliches Netz an dem Laufzeitprogramm 5 angemeldet, werden die Anzeigemöglichkeiten des Laufzeitprogramms durch Tracing-Routine lld nicht beschränkt. In dem vorliegenden Beispiel ist der Nutzer des PDAs 9 jedoch über das Inter- net an dem Laufzeitprogramm 5 angemeldet, so dass aus Gründen der Sicherheit nur eingeschränkt Informationen zur Anzeige gelangen sollen. Dazu legt die Tracing-Routine lld dem abgefragten Stromwert und den restlichen Abfragedaten weitere Sicherheitsdaten bei, mit denen ein bestimmtes Anzeigeformat des Laufzeitprogrammes 5 erzeugt wird.Tracing routine lld. The data now runs through the processing chain 10 in the direction 13. The tracing routine lld uses the query data to check from which point the user accesses the runtime program 5. If the user has logged on to the runtime program 5, for example via a local network which is very difficult to access from the outside, the display options of the runtime program are not restricted by the tracing routine lld. In the present example, however, the user of the PDA 9 is logged on to the runtime program 5 via the Internet, so that for security reasons only limited information should be displayed. For this purpose, the tracing routine lld adds further security data to the queried current value and the remaining query data, with which a specific display format of the runtime program 5 is generated.
Anschließend gelangen die Daten zur Benutzerroutine 11c, die den Daten je nach der Rolle des Benutzers Anzeigeparameter beilegt. In dem gezeigten Ausführungsbeispiel ist der Nutzer ein Parametrierer, für den auch hochspezialisierte Anzeigedaten, beispielsweise zur Feststellung von Fehlern, hilfreich sein könnten, die für den normalen Benutzer hingegen verwirrend sind. Die Benutzerroutine 11c legt den Anfragedaten da- her solche Anzeigeparameter bei, die das Laufzeitprogramm 5 zur Anzeige sämtlicher Daten veranlassen.The data then arrives at the user routine 11c, which adds display parameters to the data depending on the role of the user. In the exemplary embodiment shown, the user is a parameterizer for whom even highly specialized display data, for example for the determination of errors, could be helpful, which, on the other hand, are confusing for the normal user. The user routine 11c submits the request data forth such display parameters that cause the runtime program 5 to display all data.
Von der Benutzerroutine 11c gelangen die Daten dann zur Zwi- schenspeicherroutine 11b. In der gezeigten Pfeilrichtung 13 bearbeiten die Zwischenspeicherroutine 11b und die Sicherheitsroutine 11a die Daten nicht. Die Sicherheitsroutine 11a gibt diese schließlich an das Laufzeitprogramm 5, das entsprechend den Bearbeitungsparametern die Daten auf dem PDA 9 zur Anzeige bringt. The data then passes from the user routine 11c to the buffering routine 11b. In the direction of the arrow 13 shown, the buffering routine 11b and the security routine 11a do not process the data. The security routine 11a finally sends this to the runtime program 5, which displays the data on the PDA 9 in accordance with the processing parameters.

Claims

Patentansprüche claims
1. Verfahren zum Austausch von Daten zwischen einer Kommunikationseinheit (7,8,9) und einer Datenquelle (2,3,4), bei dem ein aus Hardware- (2,3,4) und Softwarekomponenten (5, 6) bestehendes Laufzeitsystem Daten zwischen dem Bauteil (6,7,8) und einer Kommunikationseinheit (7,8,9) überträgt und eine Bearbeitungskette (10) den Austausch der Daten steuert und/oder überwacht, d a d u r c h g e k e n n z e i c h n e t, dass die Bearbeitungskette (10) aus Bearbeitungsroutinen (11) zusammengesetzt ist, die jeweils eine einheitliche Eingangsschnittstelle aufweisen, wobei die Bearbertungsroutinen (11) nacheinander aufgerufen und die Daten einer aufgerufenen Bearbeitungsroutine (11) der Eingangsschnittstelle einer ihr unmittelbar nachfolgenden Bearbeitungsroutine (11) zugeführt werden, und dass das Laufzeitsystem einen dynamischen Speicherbereich verwaltet und auf diesen zum Festlegen der Reihenfolge zugreift, mit der die Bearbeitungsroutinen (11) aufgerufen werden.1. A method for exchanging data between a communication unit (7,8,9) and a data source (2,3,4), in which a runtime system consisting of hardware (2,3,4) and software components (5, 6) Data is transmitted between the component (6, 7, 8) and a communication unit (7, 8, 9) and a processing chain (10) controls and / or monitors the exchange of the data, characterized in that the processing chain (10) consists of processing routines (11 ), which each have a uniform input interface, the processing routines (11) being called up one after the other and the data of a called processing routine (11) being fed to the input interface of a processing routine (11) immediately following it, and that the runtime system manages a dynamic memory area and accesses this to determine the order in which the processing routines (11) are called.
2. Verfahren nach Anspruch 1, d a d u r c h g e k e n n z e i c h n e t, dass die Daten mit einer Benutzerkennung versehen werden, wobei wenigstens eine Berechtigungsroutine (11a) die Benutzerkennung auf eine Übereinstimmung mit Eintragungen in vorgegebenen Benutzerlisten überprüft und bei Feststellung einer fehlenden Übereinstimmung zwischen der Benutzerkennung und den Benutzerlisten die Weiterleitung der Daten abbricht. 2. The method according to claim 1, characterized in that the data are provided with a user ID, wherein at least one authorization routine (11a) checks the user ID for a match with entries in predetermined user lists and the forwarding if a mismatch is found between the user ID and the user lists the data is canceled.
3. Verfahren nach Anspruch 1 oder 2, d a d u r c h g e k e n n z e i c h n e t, dass die Daten mit einer datenquellenspezifischen Quelldatenkennung versehen werden, wobei eine oder mehrere der Be- arbeitungsroutinen (lld) die Verarbeitung der Daten durch die Bearbeitungsroutine (lld) in Abhängigkeit der Quelldatenkennung steuert.3. The method according to claim 1 or 2, that the data are provided with a data source-specific source data identifier, one or more of the processing routines (lld) controlling the processing of the data by the processing routine (lld) depending on the source data identifier.
4. Verfahren nach Anspruch 3, d a d u r c h g e k e n n z e i c h n e t, dass wenigstens eine Bearbeitungsroutine (11) eine Zwischenspeicherroutine (11b) ist, in der Zwischenspeicherdaten mit jeweils einer Zwischenspeicherdatenkennung zwischengespeichert sind, wobei die Zwischenspeicherroutine - (11b) bei einer Übereinstimmung der Quelldatenkennung mit einer der Zwischenspeicherdatenkennung die der Zwischenspeicherdatenkennung zugeordneten Zwischenspeicherdaten zur Anzeige bringt und den Austausch der Daten abbricht.4. The method according to claim 3, characterized in that at least one processing routine (11) is a buffering routine (11b) in which buffering data are buffered, each with a buffering data identifier, the buffering routine (11b) if the source data identifier matches one of the buffering data identifier displays the buffer data assigned to the buffer data identifier and interrupts the exchange of the data.
5. Verfahren nach Anspruch einem der vorhergehenden Ansprüche, d a d u r c h g e k e n n z e i c h n e t, dass wenigstens eine Bearbeitungsroutine (11) eine Fehlerana- lyseroutine ist, welche die Daten auf das Vorliegen vorbestimmter Fehler hin überprüft.5. The method as claimed in claim 1, which means that at least one processing routine (11) is a fault analysis routine which checks the data for the presence of predetermined faults.
6. Verfahren nach einem der vorhergehenden Ansprüche, d a d u r c h g e k e n n z e i c h n e t, dass wenigstens Bearbeitungsroutine (11) eine Überwachungsroutine ist, welche die Daten und/oder von den Daten abgeleitete Überwachungsdaten in einer Überwachungsdatei speichert. 6. The method according to any one of the preceding claims, characterized in that at least the processing routine (11) is a monitoring routine which stores the data and / or monitoring data derived from the data in a monitoring file.
7. Verfahren nach einem der vorhergehenden Ansprüche, d a d u r c h g e k e n n z e i c h n e t, dass das Laufzeitsystem einen Netzserver mit einem Serverpro- gramm und wenigstens einen Client-Rechner mit einem Browserprogramm (14) aufweist, wobei jedes Browserprogramm (14) auf das Serverprogramm über das Internet zugreift .7. The method according to any one of the preceding claims, that the runtime system has a network server with a server program and at least one client computer with a browser program (14), each browser program (14) accessing the server program via the Internet.
8. Verfahren nach einem der vorhergehenden Ansprüche, d a d u r c h g e k e n n z e i c h n e t, dass wenigstens eine Bearbeitungsroutine (11) eine Tra- cingroutine (lld) ist, welche den Weg der Daten in dem Laufzeitsystem überprüft und in Abhängigkeit der Über- prüfung Sicherheitsparameter erzeugt.8. The method as claimed in one of the preceding claims, that a at least one processing routine (11) is a tracing routine (lld) which checks the path of the data in the runtime system and generates security parameters as a function of the check.
9. Verfahren nach einem der vorhergehenden Ansprüche, d a d u r c h g e k e n n z e i c h n e t, dass eine Konfigurationsdatei in den dynamischen Speicherbe- reich geladen wird, wobei die Konfigurationsdatei die Struktur und die Reihenfolge der Bearbeitungsroutinen festlegt. 9. The method as claimed in one of the preceding claims, that a configuration file is loaded into the dynamic memory area, the configuration file determining the structure and the sequence of the processing routines.
EP04738790A 2003-07-22 2004-06-23 Method for controlling an exchange of data Ceased EP1646943A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
DE10333888A DE10333888B3 (en) 2003-07-22 2003-07-22 Method for controlling a data exchange
PCT/DE2004/001341 WO2005010753A1 (en) 2003-07-22 2004-06-23 Method for controlling an exchange of data

Publications (1)

Publication Number Publication Date
EP1646943A1 true EP1646943A1 (en) 2006-04-19

Family

ID=34088820

Family Applications (1)

Application Number Title Priority Date Filing Date
EP04738790A Ceased EP1646943A1 (en) 2003-07-22 2004-06-23 Method for controlling an exchange of data

Country Status (6)

Country Link
US (1) US20060176891A1 (en)
EP (1) EP1646943A1 (en)
CN (1) CN100367215C (en)
DE (1) DE10333888B3 (en)
HK (1) HK1091917A1 (en)
WO (1) WO2005010753A1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11210426B2 (en) 2016-09-09 2021-12-28 Microsoft Technology Licensing, Llc Tracing objects across different parties

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060205449A1 (en) * 2005-03-08 2006-09-14 Broadcom Corporation Mechanism for improved interoperability when content protection is used with an audio stream
CN104753686A (en) * 2013-12-26 2015-07-01 北京信威通信技术股份有限公司 Terminal state control method and system
FR3024869B1 (en) * 2014-08-14 2016-08-26 Zodiac Aero Electric ELECTRICAL DISTRIBUTION SYSTEM FOR AN AIRCRAFT AND CORRESPONDING CONTROL METHOD

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2584113B2 (en) * 1989-07-21 1997-02-19 松下電器産業株式会社 Data transfer method and data transfer device
IL111154A0 (en) * 1993-10-21 1994-12-29 Martino Ii John A Systems and methods for electronic messaging
US5611059A (en) * 1994-09-02 1997-03-11 Square D Company Prelinked parameter configuration, automatic graphical linking, and distributed database configuration for devices within an automated monitoring/control system
JPH08286932A (en) * 1995-04-11 1996-11-01 Hitachi Ltd Parallel execution control method for job
US5805442A (en) * 1996-05-30 1998-09-08 Control Technology Corporation Distributed interface architecture for programmable industrial control systems
EP0825506B1 (en) 1996-08-20 2013-03-06 Invensys Systems, Inc. Methods and apparatus for remote process control
FR2770665B1 (en) * 1997-11-06 2002-12-20 Alsthom Cge Alkatel EXCHANGE DEVICE BETWEEN INFORMATION PROCESSING UNITS WITH PROCESSORS INTERCONNECTED BY A COMMON BUS
US6201996B1 (en) * 1998-05-29 2001-03-13 Control Technology Corporationa Object-oriented programmable industrial controller with distributed interface architecture
FI106687B (en) * 1998-11-20 2001-03-15 Sonera Oyj Method and system in communication system and subscriber identity module
EP1172977A1 (en) * 2000-07-14 2002-01-16 Koninklijke KPN N.V. A method and a system for data exchange over a data network such as the public internet
CA2346762A1 (en) * 2001-05-07 2002-11-07 Ibm Canada Limited-Ibm Canada Limitee Compiler generation of instruction sequences for unresolved storage devices
US7162534B2 (en) * 2001-07-10 2007-01-09 Fisher-Rosemount Systems, Inc. Transactional data communications for process control systems
DE10144336A1 (en) * 2001-09-10 2003-04-03 Siemens Ag Plant server computer and method for checking the rights for a user input
US7146231B2 (en) * 2002-10-22 2006-12-05 Fisher-Rosemount Systems, Inc.. Smart process modules and objects in process plants

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
FRANK BUSCHMANN, ET AL.: "Pattern-Oriented Software Architecture: A System of Patterns", 1996, JOHN WILEY & SONS LTD, BALFINS LANE, CHICHESTER, WEST SUSSEX PO19 1UD, ENGLAND *
See also references of WO2005010753A1 *

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11210426B2 (en) 2016-09-09 2021-12-28 Microsoft Technology Licensing, Llc Tracing objects across different parties

Also Published As

Publication number Publication date
CN1826587A (en) 2006-08-30
CN100367215C (en) 2008-02-06
WO2005010753A1 (en) 2005-02-03
DE10333888B3 (en) 2005-04-07
US20060176891A1 (en) 2006-08-10
HK1091917A1 (en) 2007-01-26

Similar Documents

Publication Publication Date Title
DE60006018T2 (en) Wireless control of a field device in an industrial process
DE60308700T2 (en) DYNAMIC REMOTE CONFIGURATION OF A WEBSERVER FOR PROVIDING CAPACITY ON REQUEST
EP1430369B1 (en) Dynamic access to automation resources
DE112014004208T5 (en) Integration method and system
EP1199846A1 (en) Method for automaticallly configuring a device in a filed bus system
WO2002067141A2 (en) System and method for saving and generating web pages, which optimises storage space
DE10333888B3 (en) Method for controlling a data exchange
WO2005104055A2 (en) Method and system for remote monitoring remote control and/or remote diagnosis of a device
EP1798620A1 (en) System and method for remote analysis,remote maintenance and/or remote error recovery of a technical equipment.
DE10118125A1 (en) Automatic purchasing system for use with user terminal includes user dialogue system with automatic speech recognition device and speech delivery device
DE102010016858A1 (en) Printing system monitoring method, involves transmitting electronic messages including information about operation of printing system over data network to logbook in wide area network based server computer
DE60312887T2 (en) CORPORATE ACCESS CONFIGURATION METHOD
EP3669501A1 (en) Method for providing data packets from a can bus, control device and system having a can bus
DE19940149A1 (en) Online diagnostics for a diagnostic device and diagnostic device
DE102018000361A1 (en) Apparatus and method for providing machine data
WO2005010752A1 (en) Method for carrying out the layer-oriented and copy-free processing of data
DE202018000385U1 (en) Device for providing machine data
DE10142343B4 (en) Communication method for tool or production machines
EP0392245B1 (en) Automatic addressing of monitoring and/or control processing units comprised in a digital information transmission system
EP3339989A1 (en) Method for verifying a client allocation, computer program product and automation system with field devices
EP1240770B1 (en) Method and arrangement for locally controlling a testing process in a telecommunications network
DE10139245A1 (en) Protocol converter for communication between data processing devices and the data transmission system using them
WO2005010755A2 (en) Method and system for checking a control system
DE10319887A1 (en) Method for aligning a database displayed on a client data processing device with a source database stored on a server data processing device
EP1880352B1 (en) Device and method for communicating between a mobile terminal and the internet

Legal Events

Date Code Title Description
PUAI Public reference made under article 153(3) epc to a published international application that has entered the european phase

Free format text: ORIGINAL CODE: 0009012

17P Request for examination filed

Effective date: 20060105

AK Designated contracting states

Kind code of ref document: A1

Designated state(s): FR GB IT

DAX Request for extension of the european patent (deleted)
RBV Designated contracting states (corrected)

Designated state(s): FR GB IT

RIN1 Information on inventor provided before grant (corrected)

Inventor name: RUECKL, UWE

Inventor name: JACHMANN, THOMAS

STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: THE APPLICATION HAS BEEN REFUSED

18R Application refused

Effective date: 20091018