EP1436697A2 - Verfahren zur verarbeitung von daten - Google Patents

Verfahren zur verarbeitung von daten

Info

Publication number
EP1436697A2
EP1436697A2 EP02750814A EP02750814A EP1436697A2 EP 1436697 A2 EP1436697 A2 EP 1436697A2 EP 02750814 A EP02750814 A EP 02750814A EP 02750814 A EP02750814 A EP 02750814A EP 1436697 A2 EP1436697 A2 EP 1436697A2
Authority
EP
European Patent Office
Prior art keywords
data processing
data
identifier
processing unit
external
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Withdrawn
Application number
EP02750814A
Other languages
English (en)
French (fr)
Inventor
Wilhelm BOLLHÖFER
Michael Dreher
Jürgen LAFORSCH
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
Siemens Corp
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, Siemens Corp filed Critical Siemens AG
Publication of EP1436697A2 publication Critical patent/EP1436697A2/de
Withdrawn legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/70Software maintenance or management
    • G06F8/71Version control; Configuration management
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • G06F9/44521Dynamic linking or loading; Link editing at or after load time, e.g. Java class loading

Definitions

  • the invention relates to a method for processing data of a data processing system, for example a programmable logic controller for automation of a tech ⁇ African plant, in particular a machine, a manufacturing generating, procedural or power plant.
  • a data processing system for example a programmable logic controller for automation of a tech ⁇ African plant, in particular a machine, a manufacturing generating, procedural or power plant.
  • Data processing systems are used in a variety of ways in the context of industrial automation processes.
  • a plurality of data processing units are connected to complex computer and data networks via at least one data transmission unit.
  • So-called operator stations or operating and monitoring units are usually provided for operating and / or monitoring the data processing units controlling the system.
  • each data processing unit includes data processing programs.
  • a data processing program usually includes, for example, an operating program, a main program or a main routine, in which a number of control and / or data processing commands for the technical system are processed essentially sequentially.
  • Such a data processing program for a user-specific, automated technical system such as a production system, a machine tool or a measuring system, is also referred to as so-called user software.
  • so-called subroutines or function blocks are called as required, for example cyclically or event-controlled.
  • function modules take on certain closed control and / or regulation functions in the manner of modules.
  • the main program accesses individual function blocks as needed for example, m are stored in separate executable files.
  • the main program, subroutines or function blocks if necessary, access appropriately provided data, for example data storage blocks (abbreviated to data blocks).
  • the data processing program usually runs in the data processing units, e.g. m from a central control unit and m decentralized on-site controls of the technical system and controls, among other things, the exchange of data between the central control unit and components of the technical system. Switching commands or control values are transmitted from the data processing program to the components on the one hand, and measurement data or characteristic process and / or operating parameters are read from the components on the other hand. Depending on the type and structure of the technical system, there may also be access from a data processing unit to the data processing program, in particular to a function block and / or data block, from another data processing unit.
  • a change in a function block or a data block leads to changes both in the data processing program of the data processing unit concerned and in changes in the data processing program of other data processing units in data exchange with the data processing unit concerned. This can lead to incompatibilities between them due to the fact that all relevant data processing units are not updated at the same time. This can lead to an access error when processing the data processing programs that have not yet been changed. Such an access error causes a failure of this data processing unit and / or a failure or a malfunction of the production system controlled by the data processing unit.
  • the invention is therefore based on the object of specifying a method for processing data which works particularly reliably even with frequent reconfiguration and thus enables a consistent operation of several data processing units.
  • the object is achieved by a method for processing data from a data processing system, comprising a plurality of data processing units and operating and observation units which are connected to one another via a data transmission unit, a data processing program with associated function modules and data modules on each of the data processing units is implemented, for which at least one identifier is stored in a conversion table associated with the respective data processing unit, with one access an external data processing unit to a data block and / or function block of another data processing unit, the conversion table is interposed in such a way that the relevant data block and / or function block is called using the external data processing unit with an external identifier that characterizes this access, the external identifier by means of the The conversion table is converted into an internal identifier stored for this external identifier, and if the internal identifier for the relevant external identifier is available, the data block and / or function block of the relevant data processing unit is processed, otherwise it is omitted.
  • the invention is based on the consideration that a particularly secure access of one of the data processing units to another data processing unit should also be possible when a function block or data block of an individual data processing or computer program is changed.
  • reconfiguration should already be recognized when the data processing unit starts up or during operation.
  • a conversion table is interposed in the manner of a novel protective function if the corresponding request comes from an external module to be secured from another data processing unit .
  • An identifier is stored in the conversion table in the manner of a name list, an external identifier provided for communication with the external application or data processing unit for the relevant data block or function block being related to an identifier used internally in the operating system for this data block or function block becomes.
  • the external data processing unit or the external user module accesses the respective data block or function block by specifying an "external identifier".
  • an error message is returned to the requesting external data processing unit.
  • the parallel use of the internal and external identifiers for processing the relevant data block or function block ensures that data processing programs or sub-programs that access each other are not re-addressed every time the respective data blocks or function blocks are updated, because in this case Both the actual data block or function block and the data processing program accessing it are updated synchronously and self-consistently.
  • Reconfiguration affects only those data processing units that are actually to be changed.
  • the respective identifier is stored in the associated data block and / or function block, in particular in the so-called "header".
  • the conversion table is expediently updated when an object, ie the function block and / or the data block, is changed.
  • a change message is preferably sent to the data processing unit and / or operating and monitoring unit relating to this update. This ensures that when a function block or data block is changed and the resulting change in the conversion table, a corresponding message is output to a number of external data processing units that are specially provided or registered for this purpose.
  • the respective external data processing unit is advantageously registered as the intended recipient.
  • Each update of the conversion table is expediently provided with an associated version identifier, in particular an associated time stamp, which is stored in the conversion table itself.
  • an associated version identifier in particular an associated time stamp, which is stored in the conversion table itself.
  • any change of the relaying ⁇ table having a characteristic for the conversion table such as time stamp.
  • This timestamp thus represents the last change to the conversion table.
  • the associated stored identifier and the associated stored time stamp are preferably queried and updated when the data processing unit and / or the operating and monitoring unit starts to operate.
  • plausibility checks can be carried out when starting up the relevant data processing unit in such a way that a query is used to check whether, for example, all the required data blocks or function blocks are contained in the conversion table and therefore for one
  • a time stamp characterizing the last change to the respective data block or function block or the time stamp of the conversion table could be queried.
  • a data processing system is expediently provided with a plurality of data processing units and operating and observation units which are connected to one another via a data transmission unit, data processing programs which are dependent on the respective update status being implemented on the data processing units, in the event of a change in an object, ie a function block or data block, a data processing program of one of the data processing units, a conversion table for assigning an identifier representing the change in the object, in particular an internal and external identifier, and possibly a means for determining and assigning a time stamp determining the time of the change, an analysis module for comparing the internal data processing unit and / or an operating and monitoring unit processing the object of the relevant data processing unit Identifier with the external identifier on the basis of which regular processing of the object can be carried out in the case of equality, otherwise is omitted, is provided.
  • the analysis module is used to compare the internal with the external identifier. On the other hand, the analysis module also serves to update the identifier and, if appropriate, the associated version identifier or the associated time stamp and thus to monitor the consistency of the
  • Data processing unit present requirement for an object to be processed in another data processing unit identifiable by comparing the internal with the external identifier. As a result, failures of the data processing units due to incorrect access are largely avoided.
  • a data processing system constructed in this way is therefore particularly suitable for consistent maintenance and is particularly economical and effective in terms of its availability and its use as an automation system in safety-relevant systems.
  • the interposition of the conversion table is also particularly suitable in the event that a subset of available block numbers, for example all numbers> 32k, are only designed for restricted access. In this case, in an application program with free verfugbaren block numbers, for example, block numbers ⁇ 32k, to work, the gerat for a secure data access in the automation by the conversion to the secured block ⁇ numbers> 32k be transformed. A jerk transformation can then take place in the automation device using the conversion table stored there.
  • FIG. 1 shows schematically a data processing system with a plurality of data processing units and operating and monitoring units
  • FIG. 2 schematically shows a data memory for storing the change indicator.
  • FIG. 1 shows a data processing system 1 with a plurality of data processing units 2 and with a plurality of operating and monitoring units 4, which are connected to one another via a data transmission unit 6.
  • a programmable logic controller, a personal computer or another data processing unit is used as the data processing unit 2, for example.
  • a personal computer or a workstation, for example, serves as the operating and monitoring unit 4.
  • the data transmission unit 6 is a standardized transmission line, for example an Ethernet coax cable, and also has standardized transmission elements, not shown, such as amplifiers, repeaters or bridges.
  • the data processing units 2 and the operating and monitoring units 4 are connected to a computer network by means of the data transmission unit 6.
  • each data processing unit 2 and on each control and monitoring unit 4 are computer programs or data processing programs 8 implemented by means of which machine a technical installation, such as a manufacturing facility or tool ⁇ , controlled and / or monitored.
  • the verar ⁇ processing program 8 also referred to as main program or application software runs m the data processing unit 2 for
  • the data processing program 8 of the operating and monitoring unit serves to operate and monitor the inputs and / or outputs and / or the data processing programs 8 of the data processing units 2.
  • the respective data processing program 8 has a modular structure and comprises as objects a number of function blocks FBI to FBn, which take over completed control and / or regulation functions for the technical system.
  • a plurality of data storage modules DB1 to DBn (hereinafter referred to as data module) are provided as further objects for storing and / or archiving static and / or dynamic data.
  • Data blocks DB1 to DBn are, for example, static memories, also called read memories, such as ROM's (read-only-memory), or dynamic memory, also called read / write memory, such as RAM's (read access memory).
  • read memories such as ROM's (read-only-memory)
  • dynamic memory also called read / write memory, such as RAM's (read access memory).
  • read memory In the read memory are e.g. fixed parameterization data of the software and / or hardware of the data processing system 1 are stored.
  • dynamic memory also called read programmable read-only-memory
  • RAM's read access memory
  • the currently recorded data of the inputs and / or outputs of peripheral modules are stored, for example.
  • Called conversion table 10 for storing at least one identifier K for objects, i.e. for the function blocks FBI to FBn and / or data blocks DB1 to DBn.
  • the dynamic data memory can also be designed as a data block.
  • An internal identifier KI or an external identifier KE is stored as identifier K for the respective data blocks DB1 to DBn and / or the function block FBI to FBn.
  • the external identifier KE represents the identifier K by means of which an external data processing unit 2 accesses another data processing unit 2 with the interposition of the conversion table 10.
  • the conversion table 10 serves as a protective function for the relevant data processing unit 2 in such a way that the external identifier KE of the external data processing unit 2 is converted into an associated internal identifier KI before the object in question is accessed. If a corresponding internal identifier KI is stored for the requested external identifier KE, the internal identifier KI enables or enables access by the external data processing unit 2 to the respective object. For such a comparison of the relevant external identifier KE with the internal identifier KI, each data processing unit 2 and each operating and monitoring unit 4 comprise an associated analysis module 12.
  • the conversion table 10 is designed as a table, as shown by way of example in FIG. 2A.
  • the conversion table 10 represents the Update status for a previous change of the identifier K and thus for a reconfiguration.
  • the conversion table 10 'in the figure 2B represents the aktua ⁇ ized conversion table 10 and thus the update status for a subsequent change in the identifier KE, KI at least one of the objects, that is, one of the data blocks DB or one of the function blocks FB.
  • the conversion table 10, 10 ' Comprises a time stamp Z relating to the respective object, which thus describes the time of the last update.
  • the associated conversion table 10 includes a time stamp Zg that represents the last change to one of the objects and thus one of the identifiers KE, KI and / or an associated one for each object Timestamp Z.
  • the operating and observation units 4 are assigned a new object name or external identifier KE which characterizes the change and m the conversion table 10, 10 'deposited.
  • the data processing unit 2 and the operating and monitoring unit 4 each have a means for assigning the relevant external identifier KE.
  • the means is preferably designed as a function block FB, which executes or updates this function each time the unit concerned changes or is restarted.
  • a further means which is designed as a function block FB, is provided for determining the time stamp Z determining the time of the change.
  • the relevant external identifier K is provided with a the time of the change determining timestamp Z.
  • all objects ie data blocks DB100, DB200 and
  • the relevant entry that is to say the line concerned, can also be removed from the conversion table 10 '.
  • the new external identifier KE which represents the function block FBI, is given a consecutive number for free numbers, if the number is exhausted entire numbering, the external identifier KE receives a number that has already been deleted and is no longer used.
  • a change in the four objects data blocks DB100, DB200, function blocks FBI, FB10 m of the relevant data processing unit 2 is made by means of a change message to the other external data processing units 2 and / or operating and monitoring units processing these objects DB100, DB200, FBI, FB10 4 sent.
  • the associated conversion table 10, 10 ' is then updated in each case. Is one of the others
  • Data processing units 2 and / or operating and monitoring units 4 are switched off at this point in time, so that the identifier K, KE, KI and the time stamp Z stored in the associated conversion table 10, 10 'are updated the next time the operation starts or starts up.
  • signals S When the data processing system 1 is operating, large amounts of data in the form of control commands and / or status messages and storm messages, hereinafter referred to as signals S, are transmitted between the data processing units 2 and / or the control and monitoring units 4 via the data transmission unit 6.
  • the signals are processed internally by the external data processing unit 2 accessing a function block FB or data block DB of the other data processing unit 2. If all data processing units 2 and / or operating and monitoring units 4 and Different specifications resulting from this can lead to incompatibilities when the external data processing unit 2 or control and monitoring unit 4 accesses the relevant function block FB or data block DB of the other data processing unit 2 or control and monitoring unit 4.
  • the conversion table 10 is interposed by means of the analysis module 12 such that a call of the relevant data ⁇ DB100 and / or FBI function block is executed using the external data processing unit 2 with an external identifier KE that characterizes this access, the external identifier KE being converted into an internal identifier KI stored for this external identifier KE by means of the conversion table 10. If the internal identifier KI for the relevant external identifier KE is present, processing of the data block DB100 and / or function block FBI of the relevant data processing unit 2 is carried out, otherwise this is not done.
  • the internal identifier KI is the same for the requesting external identifier KE, ie the specifications of the two data processing units 2 and / or operating and monitoring units 4 communicating with one another are the same, regular processing of the object is carried out, otherwise processing is omitted.
  • Appropriate status information or a change message is sent to the operator, for example if the specification is OK, if the specification is not identical.
  • the compatibility of objects of the data processing programs 8 between communicating data processing units 2 and / or the operating and observation units 4 can be checked by comparing the relevant time stamps Z or the entire time stamp Zg. If the time stamps Z or Zg differ, a change or reconfiguration has taken place in the meantime and an error message can be displayed to the operator, otherwise the processing is carried out.
  • the consistency of all relevant objects can be checked during startup. Such a consistency check is also made possible by reading the conversion table 10.
  • the advantages achieved by the invention consist, in particular, in that consistent monitoring of the specification changes to the individual data processing units 2 and / or operating and monitoring units 4 of the data processing system 1 ensures consistent, incremental and transparent maintenance of data processing programs 8.
  • Processing objects in the case of equality or non-processing in the event of inequality ensures that signals or functions which are exchanged between two units can initially only be changed or deleted in one of the units, with failure of the unit in question being reliably avoided.

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Testing And Monitoring For Control Systems (AREA)
  • Stored Programmes (AREA)

Abstract

Um auch bei häufigen Spezifikationsänderungen einen besonders sicheren Betrieb einer Datenverarbeitungsanlage zu ermöglichen, sind erfindungsgemäß bei einem Verfahren zur Verarbeitung von Daten einer Datenverarbeitungsanlage (1), umfassend eine Mehrzahl von Datenverarbeitungseinheiten (2) und Bedien- und Beobachtungseinheiten (4), welche über eine Datenübertragungseinheit (6) miteinander verbunden sind, auf den Datenverarbeitungseinheiten (2) jeweils ein Datenverarbeitungsprogramm (8) mit zugehörigen Funktionsbausteinen (FB1 bis FBn) und Datenbausteinen (DB1 bis DBn) implementiert, für welche in einer der jeweiligen Datenverarbeitungseinheit (2) zugehörigen Umsetztabelle (10) mindestens eine Kennung (K, KE, KI) hinterlegt ist, wobei a) bei einem Zugriff einer externen Datenverarbeitungseinheit (2) auf einen Datenbaustein (DB1 bis DBn) und/oder Funktionsbaustein (FB1 bis FBn) einer anderen Datenverarbeitungseinheit (2) die Umsetztabelle (10) derart zwischengeschaltet wird, dass ein Aufruf des betreffenden Datenbausteins (DB1 bis DBn) und/oder Funktionsbausteins (FB1 bis FBn) anhand der externen Datenverarbeitungseinheit (2) mit einer diesen Zugriff charakterisierenden externen Kennung (KE) ausgeführt wird, b) die externe Kennung (KE) mittels der Umsetztabelle (10) in eine für diese externe Kennung (KE) hinterlegte interne Kennung (KI) umgesetzt wird, c) bei Vorliegen der internen Kennung (KI) für die betreffende externe Kennung (KE) eine Bearbeitung des Datenbausteins (DB1 bis DBn) und/oder Funktionsbausteins (FB1 bis FBn) der betreffenden Datenverarbeitungseinheit (2) ausgeführt wird, andernfalls unterbleibt.

Description

Beschreibung
Verfahren zur Verarbeitung von Daten
Die Erfindung betrifft ein Verfahren zur Verarbeitung von Daten einer Datenverarbeitungsanlage, z.B. einer speicherprogrammierbaren Steuerung zur Automatisierung einer tech¬ nischen Anlage, insbesondere einer Maschine, einer Ferti- gungs-, verfahrenstechnischen oder Kraftwerksanlage.
Datenverarbeitungsanlagen finden vielseitige Anwendung im Rahmen von industriellen Automatisierungsprozessen. Dabei sind m komplexen technischen Anlagen eine Mehrzahl von Datenverarbeitungseinheiten zu aufwendigen Computer- und Datennetzen ber mindestens eine Datenubertragungsemheit verbunden. Zur Bedienung und/oder Beobachtung der die Anlage steuernden Datenverarbeitungseinheiten sind üblicherweise sogenannte Operatorstationen oder Bedien- und Beobachtungseinheiten vorgesehen. Zur Steuerung und/oder Regelung der technischen Anlage umfasst dabei jede Datenverarbeitungseinheit Datenverarbeitungsprogramme .
Üblicherweise umfasst ein Datenverarbeitungsprogramm beispielsweise ein Betriebsprogramm, ein Hauptprogramm oder eine Hauptroutine, m welchem im Wesentlichen sequentiell eine Anzahl von Steuerungs- und/oder Datenverarbeitungsbefehlen für die technische Anlage abgearbeitet werden. Ein derartiges Datenverarbeitungsprogramm für eine anwenderspezifisch ausgebildete, automatisierte technische Anlage, wie beispiels- weise eine Fertigungsanlage, eine Werkzeugmaschine oder ein Messsystem, wird auch als sogenannte Anwendersoftware bezeichnet. Aus diesem Hauptprogramm werden bedarfsweise, z.B. zyklisch oder ereignisgesteuert, sogenannte Subroutmen oder Funktionsbausteine aufgerufen. Diese Funktionsbausteine uber- nehmen in der Art von Modulen bestimmte abgeschlossene Steuerungs- und/oder Regelungsfunktionen. Das Hauptprogramm greift dabei bedarfsweise auf einzelne Funktionsbausteine zu, die beispielsweise m separaten ausfuhrbaren Dateien hinterlegt sind. Zudem greifen das Hauptprogramm, Subroutinen oder Funktionsbausteine bedarfsweise auf entsprechend vorgesehene Daten, beispielsweise Datenspeicherbausteinen (kurz Datenbausteine genannt) , zu.
Das Datenverarbeitungsprogramm lauft üblicherweise m den Datenverarbeitungseinheiten, z.B. m einer zentralen Steuereinheit sowie m dezentralen Vor-Ort-Steuerungen der techni- sehen Anlage ab und steuert unter anderem den Austausch von Daten zwischen der zentralen Steuereinheit und Komponenten der technischen Anlage. Dabei werden vom Datenverarbeitungsprogramm einerseits Schaltbefehle oder Stellwerte an die Komponenten übermittelt und andererseits Messdaten oder charakteristische Prozess- und/oder Betriebsparameter von den Komponenten gelesen. Je nach Art und Aufbau der technischen Anlage kann es dabei auch zu einem Zugriff von einer Daten- verarbeitungsemheit auf das Datenverarbeitungsprogramm, insbesondere auf einen Funktionsbaustein und/oder Datenbau- stein, einer anderen Datenverarbeitungseinheit kommen.
Bei der Herstellung derartiger anwenderspezifischer Daten- verarbeitungsprogramme oder aber auch im laufenden Betrieb der Anlage kann es aufgrund von Änderungen im Prozessablauf zu einer Anpassung und somit zu einer nderung der Funktionsbausteine oder Datenbausteine der Datenverarbeitungsprogramme einzelner oder mehrerer Datenverarbeitungseinheiten und/oder Bedien- und Beobachtungseinheiten kommen. Diese programmspezifischen Änderungen können zu sogenannten Spezifikationsfeh- lern fuhren, die ggf. zu einem Ausfall einzelner Datenverarbeitungseinheiten oder gar der gesamten Datenverarbeitungsanlage fuhren können. Ein derartiger Spezifikationsfehler kann zudem als relevant für die Anlagensicherheit insgesamt einzustufen sein und somit zu einem Ausfall der gesamten Pro- duktionsanlage fuhren. Ein Spezifikationsfehler liegt beispielsweise dann vor, wenn ein Objekt, d.h. ein Funktionsbaustein oder ein Datenbaustein einer Datenverarbeitungseinheit verändert, d.h. umprojektiert wird, wobei diese Änderung des Objekts nicht auf allen be- treffenden Datenverarbeitungseinheiten gleichzeitig erfolgt. Mit anderen Worten: Eine Änderung eines Funktionsbausteins oder eines Datenbausteins, fuhrt zu Änderungen sowohl des Datenverarbeitungsprogramms der betroffenen Datenverarbeitungseinheit als auch zu Änderungen des Datenverarbeitungs- programms von mit der betreffenden Datenverarbeitungseinheit im Datenaustausch stehenden anderen Datenverarbeitungsem- heiten. Dabei kann es bedingt durch die nicht gleichzeitige Aktualisierung aller relevanten Datenverarbeitungseinheiten zu Inkompatibilitaten zwischen diesen kommen. Dies kann dazu fuhren, dass es beispielsweise zu einem Zugriffsfehler bei der Abarbeitung der noch nicht geänderten Datenverarbeitungsprogramme kommt. Ein derartiger Zugriffsfehler bewirkt einen Ausfall dieser Datenverarbeitungseinheit, und/oder einen Ausfall oder eine Störung der durch die Datenverarbe tungs- emheit gesteuerten Produktionsanlage.
Der Erfindung liegt daher die Aufgabe zugrunde, ein Verfahren zur Verarbeitung von Daten anzugeben, das auch bei häufiger Umprojektierung besonders sicher arbeitet und somit einen konsistenten Betrieb mehrerer Datenverarbeitungseinheiten ermöglicht .
Die Aufgabe wird erfmdungsgemaß gelost durch ein Verfahren zur Verarbeitung von Daten einer Datenverarbeitungsanlage, umfassend eine Mehrzahl von Datenverarbeitungseinheiten und Bedien- und Beobachtungseinheiten, welche über eine Daten- ubertragungseinheit miteinander verbunden sind, wobei auf den Datenverarbeitungseinheiten jeweils ein Datenverarbeitungsprogramm mit zugehörigen Funktionsbausteinen und Datenbau- steinen implementiert ist, für welche m einer der jeweiligen Datenverarbeitungseinheit zugehörigen Umsetztabelle mindestens eine Kennung hinterlegt ist, wobei bei einem Zugriff einer externen Datenverarbeitungseinheit auf einen Datenbaustein und/oder Funktionsbaustein einer anderen Datenver- arbeitungsemheit die Umsetztabelle derart zwischengeschaltet wird, dass ein Aufruf des betreffenden Datenbausteins und/oder Funktionsbausteins anhand der externen Datenverarbeitungseinheit mit einer diesen Zugriff charakterisierenden externen Kennung ausgeführt wird, die externe Kennung mittels der Umsetztabelle in eine für diese externe Kennung hinterlegte interne Kennung umgesetzt wird, und bei Vorliegen der internen Kennung für die betreffende externe Kennung eine Bearbeitung des Datenbausteins und/oder Funktionsbausteins der betreffenden Datenverarbeitungseinheit ausgeführt wird, andernfalls unterbleibt.
Die Erfindung geht dabei von der Überlegung aus, dass ein besonders sicherer Zugriff einer der Datenverarbeitungsem- heiten auf eine andere Datenverarbeitungseinheit auch bei einer Änderung eines Funktionsbausteins oder Datenbausteins eines einzelnen Datenverarbeitungs- oder Rechnerprogramms ermöglicht sein sollte. Insbesondere eine Umprojektierung sollte bereits im Anlauf der Datenverarbeitungseinheit oder auch im laufenden Betrieb erkannt werden. Dazu wird bevorzugt bei einem Zugriff auf einen hinterlegten Datenbaustein oder Funktionsbaustein, beispielsweise im in der CPU der betref- fenden Datenverarbeitungseinheit implementierten Betriebssystem, m der Art einer neuartigen Schutzfunktion eine Umsetztabelle zwischengeschaltet, wenn die entsprechende Anfrage von einem externen, abzusichernden Modul einer anderen Datenverarbeitungseinheit stammt. In der Umsetztabelle ist dabei in der Art einer Namensliste eine Kennung hinterlegt, wobei eine f r die Kommunikation mit der externen Anwendung oder Datenverarbeitungseinheit vorgesehene externe Kennung für den relevanten Datenbaustein oder Funktionsbaustein mit einer Betriebssystem-intern verwendeten Kennung für diesen Datenbaustein bzw. Funktionsbaustein in Beziehung gesetzt wird. Mit anderen Worten: Die externe Datenverarbeitungseinheit oder das externe Anwendermodul fuhrt seinen Zugriff auf den jeweiligen Datenbaustein oder Funktionsbaustein unter Angabe einer "Kennung extern" aus. Diese externe Kennung wird zunächst anhand der Umsetztabelle m eine "Kennung Betriebssystem-intern" (= interne Kennung) überfuhrt. Falls für die angeforderte externe Kennung eine entsprechende interne Kennung in der Umsetztabelle hinterlegt ist, wird unter dieser internen Kennung ein Zugriff auf den jeweiligen Datenbaustein oder Funktionsbaustein ermöglicht oder freigegeben. Falls dies nicht der Fall ist, erfolgt hingegen die Ruckgabe einer Fehlermeldung an die anfragende externe Datenverarbeitungseinheit. Durch einen Vergleich der externen Kennung mit der internen Kennung in Bezug darauf, ob das zu bearbeitende Objekt und damit das Datenverarbeitungsprogramm auf derselben oder einer geänderten Spezifikation beruhen, wird die Kompatibilität der beiden Datenverarbeitungseinheiten für das betreffende Objekt, d.h. für den Datenbaustein oder den Funktionsbaustein, festgestellt. Bei Gleichheit der Spezifika- tionen erfolgt eine Bearbeitung des Objekts. Ggf. kann eine entsprechende Statusinformation eingestellt werden, wie z.B. "Spezifikation OK". Bei Ungleichheit kann entsprechend die Statusinformation "Spezifikation Error" eingestellt werden. Somit wird durch die parallele Verwendung der internen und der externen Kennung zur Bearbeitung des betreffenden Datenbausteins oder Funktionsbausteins sichergestellt, dass aufeinander zugreifende Datenverarbeitungsprogramme oder Teilprogramme nicht jedes Mal neu adressiert werden, wenn eine Aktualisierung der jeweiligen Datenbausteine oder Funktions- bausteine erfolgt, da m diesem Fall sowohl der eigentliche Datenbaustein oder Funktionsbaustein als auch das darauf zugreifende Datenverarbeitungsprogramm synchron und selbstkonsistent aktualisiert werden.
Mit anderen Worten: Im Falle einer derartigen Aktualisierung wird einerseits der betreffende Datenbaustein oder Funktionsbaustein verändert, andererseits aber gleichzeitig auch die Kennung des darauf zugreifenden Teilprogramms entsprechend aktualisiert. Auch unter Beibehaltung der bisher für diesen Datenbaustein oder Funktionsbaustein verwendeten internen Kennung ist somit ein Übertragungsfehler wegen unterschied- licher Datenformate oder Spezifikationen ausgeschlossen. Ein derartiger Ubertragungsfehler kann somit lediglich bei einer von extern auf den jeweiligen Datenbaustein oder Funktionsbaustein zugreifenden Datenverarbeitungseinheit auftreten, falls diese noch nicht aktualisiert ist, und somit ein falsches oder ein veraltetes Datenformat als Antwort erwar¬ tet. Durch die Beibehaltung der alten internen Kennung wird insbesondere die Dokumentation von Änderungen erleichtert. Insbesondere ist sichergestellt, dass ungeschützte externe Datenverarbeitungseinheiten weiterhin optional auf den betreffenden Datenbaustein oder Funktionsbaustein zugreifen können, ohne dass sämtliche externe Datenverarbeitungsem- heiten aktualisiert werden. Darüber hinaus können einzelne Datenverarbeitungseinheiten dezentral oder mobil, d.h. vor Ort, aktualisiert werden. Dabei ist insbesondere eine Um- Projektierung im laufenden Betrieb ermöglicht, wobei die
Umprojektierung lediglich diejenigen Datenverarbeitungsem- heiten betrifft, die tatsachlich zu andern sind.
Alternativ oder zusätzlich wird die jeweilige Kennung im zugehörigen Datenbaustein und/oder Funktionsbaustein, insbesondere im sogenannten "Header", hinterlegt. Zweckmaßigerwei- se wird bei einer Änderung eines Objekts, d.h. des Funktionsbausteins und/oder des Datenbausteins, die Umsetztabelle aktualisiert. Bevorzugt wird bei einer Aktualisierung der Umsetztabelle eine Anderungsmeldung an die diese Aktualisierung betreffende Datenverarbeitungseinheit und/oder Bedien- und Beobachtungseinheit gesendet. Hierdurch ist sichergestellt, dass bei einer nderung eines Funktionsbausteins oder Datenbausteins und der daraus resultierenden Änderung der Umsetztabelle eine entsprechende Meldung an eine Anzahl von zu diesem Zweck speziell vorgesehenen oder angemeldeten externen Datenverarbeitungseinheiten ausgegeben wird. Die jeweilige externe Datenverarbeitungseinheit ist dazu vor- teilhafterweise als vorgesehener Empfanger registriert.
Zweckmaßigerweise wird jede Aktualisierung der Umsetztabelle mit einer zugehörigen Versionskennung, insbesondere einem zugehörigen Zeitstempel, versehen, die m der Umsetztabelle selbst hinterlegt wird. Dazu wird jede Änderung der Umsetz¬ tabelle mit einem für die Umsetztabelle als solche charakteristischen Zeitstempel versehen. Somit repräsentiert dieser Zeitstempel die letzte Änderung der Umsetztabelle. Alternativ oder zusätzlich werden vorzugsweise bei einem Betriebsstart der Datenverarbeitungseinheit und/oder der Bedien- und Beobachtungseinheit die zugehörige hinterlegte Kennung und der zugehörige hinterlegte Zeitstempel abgefragt und aktua- lisiert. Je nach Art und Ausfuhrung der Datenverarbeitungsanlage können beim Hochfahren der betreffenden Datenverarbeitungseinheit Plausibilitatsprufungen derart ausgef hrt werden, dass mittels einer Abfrage geprüft wird, ob beispielsweise alle benotigten Datenbausteine oder Funktionsbausteine in der Umsetztabelle enthalten sind und somit f r einen
Zugriff einer externen Datenverarbeitungseinheit zur Verfugung stehen. Darüber hinaus konnte ein die letzte Änderung des jeweiligen Datenbausteins oder Funktionsbausteins charakterisierender Zeitstempel oder der Zeitstempel der Umsetz- tabelle abgefragt werden.
Zweckmaßigerweise ist eine Datenverarbeitungsanlage vorgesehen mit einer Mehrzahl von Datenverarbeitungseinheiten und Bedien- und Beobachtungseinheiten, welche über eine Daten- ubertragungsemheit miteinander verbunden sind, wobei auf den Datenverarbeitungseinheiten vom jeweiligen Aktualisierungs- status abhangige Datenverarbeitungsprogramme implementiert sind, wobei bei einer Änderung eines Objekts, d.h. eines Funktionsbausteins oder Datenbausteins, eines Datenverarbei- tungsprogramms einer der Datenverarbeitungseinheiten eine Umsetztabelle zur Zuordnung einer die Änderung des Objekts repräsentierenden Kennung, insbesondere eine interne und externe Kennung, sowie ggf. ein Mittel zur Bestimmung und Zuordnung eines den Zeitpunkt der Änderung bestimmenden Zeitstempels vorgesehen sind, wobei bei einer Bearbeitung des Objekts der betreffenden Datenverarbeitungseinheit durch eine andere Datenverarbeitungseinheit und/oder durch eine Bedien- und Beobachtungseinheit ein Analysemodul zum Vergleich der internen Kennung mit der externen Kennung anhand dessen bei Gleichheit eine reguläre Bearbeitung des Objekts ausfuhrbar ist, andernfalls unterbleibt, vorgesehen ist.
Mittels des Analysemoduls wird zum einen der Vergleich der internen mit der externen Kennung ausgeführt. Zum anderen dient das Analysemodul auch der Aktualisierung der Kennung und ggf. der zugehörigen Versionskennung oder des zugehörigen Zeitstempels und somit zur Überwachung der Konsistenz der
Datenverarbeitungsprogramme aller Datenverarbeitungseinheiten und/oder Bedien- und Beobachtungseinheiten der Datenverarbeitungsanlage .
Die mit der Erfindung erzielten Vorteile bestehen insbesondere darin, dass durch ein Vergleich der ein Objekt charakterisierenden anfordernden externen Kennung mit der für dieses Objekt hinterlegten internen Kennung nur solche Objekte verarbeitet werden, die auf ein und derselben Spezifikation beruhen. Somit ist die Kompatibilität der von einer anderen
Datenverarbeitungseinheit vorliegenden Anforderung für ein in einer anderen Datenverarbeitungseinheit zu verarbeitendes Objekt anhand des Vergleichs der internen mit der externen Kennung identifizierbar. Demzufolge sind Ausfalle der Daten- Verarbeitungseinheiten bedingt durch Fehlzugriffe weitgehend vermieden. Somit ist eine derartig aufgebaute Datenverarbeitungsanlage, insbesondere für eine konsistente Wartung, geeignet und hinsichtlich seiner Verfügbarkeit sowie seines Einsatzes als Automatisierungssystem in sicherheitsrelevanten Anlagen besonders wirtschaftlich und effektiv. Die Zwischenschaltung der Umsetztabelle eignet sich auch besonders für den Fall, dass eine Teilmenge von verfugbaren Bausteinnummern, beispielsweise alle Nummern >32k, nur für einen eingeschränkten Zugriff ausgelegt sind. In diesem Fall kann in einem Anwendungsprogramm mit frei verfugbaren Bau- steinnummern, z.B. Bausteinnummern <32k, gearbeitet werden, die für einen gesicherten Datenzugriff im Automatisierungs- gerat mittels der Umsetztabelle auf die gesicherten Baustein¬ nummern >32k transformiert werden. Im Automatisierungsgerat kann sodann eine Rucktransformation mittels der dort hinterlegten Umsetztabelle erfolgen.
Ausfuhrungsbeispiele der Erfindung werden anhand einer Zeichnung naher erläutert. Darin zeigen:
Figur 1 schematisch eine Datenverarbeitungsanlage mit einer Mehrzahl von Datenverarbeitungseinheiten und Bedien- und Beobachtungseinheiten, und Figur 2 schematisch einen Datenspeicher zur Hinterlegung der Anderungskennzahl .
Einander entsprechende Teile sind in beiden Figuren mit den gleichen Bezugszeichen versehen.
Die Figur 1 zeigt eine Datenverarbeitungsanlage 1 mit einer Mehrzahl von Datenverarbeitungseinheiten 2 und mit einer Mehrzahl von Bedien- und Beobachtungseinheiten 4, welche über eine Datenubertragungsemheit 6 miteinander verbunden sind. Als Datenverarbeitungseinheit 2 dient beispielsweise eine speicherprogrammierbare Steuerung, ein Personal Computer oder eine andere Datenverarbeitungseinheit. Als Bedien- und Beobachtungseinheit 4 dient beispielsweise ein Personal Computer oder eine Workstation. Die Datenubertragungsemheit 6 ist eine standardisierte Ubertragungsleitung, z.B. ein Ethernet-Koaxkabel, und weist ebenfalls standardisierte, nicht dargestellte Ubertragungselemente, wie Verstarker, Repeater oder Bridges auf. Die Datenverarbeitungseinheiten 2 und die Bedien- und Beobachtungseinheiten 4 sind mittels der Datenubertragungsemheit 6 zu einem Rechnernetz verbunden.
Auf jeder Datenverarbeitungseinheit 2 und auf jeder Bedien- und Beobachtungseinheit 4 sind Rechnerprogramme oder Daten- verarbeitungsprogramme 8 implementiert, mittels derer eine technische Anlage, z.B. eine Fertigungsanlage oder Werkzeug¬ maschine, gesteuert und/oder überwacht wird. Das Datenverar¬ beitungsprogramm 8, auch Hauptprogramm oder Anwendersoftware genannt, lauft m der Datenverarbeitungseinheit 2 zur
Ansteuerung und/oder Erfassung von Ein- und/oder Ausgange zugehöriger, nicht dargestellter Peripherie-Baugruppen ab. Das Datenverarbeitungsprogramm 8 der Bedien- und Beobachtungseinheit dient der Bedienung und Beobachtung der E - und/oder Ausgange und/oder der Datenverarbeitungsprogramme 8 der Datenverarbeitungseinheiten 2. Das jeweilige Datenverarbeitungsprogramm 8 ist modular aufgebaut und umfasst als Objekte eine Anzahl von Funktionsbausteinen FBI bis FBn, welche abgeschlossene Steuerungs- und/oder Regelungsfunk- tionen für die technische Anlage übernehmen. Dar ber hinaus sind als weitere Objekte eine Mehrzahl von Datenspeicherbausteine DBl bis DBn (im weiteren kurz Datenbaustein genannt) zur Hinterlegung und/oder Archivierung von statischen und/oder dynamischen Daten vorgesehen. Datenbausteine DBl bis DBn sind beispielsweise statische Speicher, auch Lesespeicher genannt, wie z.B. ROM's (read-only-memory) , oder dynamische Speicher, auch Lese-/Schreιbspeιcher genannt, wie z.B. RAM's (read access memory) . In den Lesespeicher sind z.B. feste Parametrierdaten der Software und/oder Hardware der Daten- verarbeitungsanlage 1 hinterlegt. In den dynamischen
Speichern werden beispielsweise die aktuell erfassten Daten der Ein- und/oder Ausgange von Peripherie-Baugruppen hinterlegt.
Je nach Art und Ausfuhrung der Datenverarbeitungsanlage 1 kommt es zu einem Austausch von Daten, z.B. von Eingangs- /Ausgangsdaten sowie Steuerungsdaten, sowohl zwischen den Datenverarbeitungseinheiten 2 als auch zwischen den Daten- verarbeitungsemheiten 2 und den Bedien- und Beobachtungseinheiten 4. Beispielsweise erfolgt ein Zugriff von einer Datenverarbeitungseinheit 2 auf den Datenbaustein DBl und/oder Funktionsbaustein FBI einer anderen Datenverarbei¬ tungseinheit 2. Hierzu sind sowohl die Datenbausteine DBl bis DBn als auch die Funktionsbausteine FBI bis FBn beispielswei¬ se anhand einer fortlaufenden Numerierung gekennzeichnet.
Darüber hinaus ist ein dynamischer Datenspeicher, auch
Umsetztabelle 10 genannt, zur Hinterlegung mindestens einer Kennung K für Objekte, d.h. f r die Funktionsbausteine FBI bis FBn und/oder Datenbausteine DBl bis DBn, ausgebildet. Der dynamische Datenspeicher kann dabei ebenfalls als Datenbau- stein ausgebildet sein. Als Kennung K ist für den jeweiligen Datenbaustein DBl bis DBn und/oder den Funktionsbaustein FBI bis FBn eine interne Kennung KI bzw. eine externe Kennung KE hinterlegt. Die externe Kennung KE repräsentiert dabei diejenige Kennung K, mittels welcher eine externe Datenverarbei- tungsemheit 2 auf eine andere Datenverarbeitungseinheit 2 unter Zwischenschaltung der Umsetztabelle 10 zugreift. Dabei dient die Umsetztabelle 10 derart als Schutzfunktion für die betreffende Datenverarbeitungseinheit 2, dass die externe Kennung KE der externen Datenverarbeitungseinheit 2 vor einem Zugriff auf das betreffende Objekt in eine zugehörige interne Kennung KI überfuhrt wird. Falls für die angeforderte externe Kennung KE eine entsprechende interne Kennung KI hinterlegt ist, wird mittels der internen Kennung KI ein Zugriff der externen Datenverarbeitungseinheit 2 auf das jeweilige Objekt ermöglicht oder freigegeben. Für einen derartigen Abgleich der betreffenden externen Kennung KE mit der internen Kennung KI umfasst jede Datenverarbeitungseinheit 2 und ede Bedien- und Beobachtungseinheit 4 ein zugehöriges Analysemodul 12.
Je nach Art und Ausfuhrung ist die Umsetztabelle 10 als eine Tabelle ausgebildet, wie sie Figur 2A beispielhaft dargestellt ist. Die Umsetztabelle 10 repräsentiert den Aktualisierungsstatus für eine vorangegangene Änderung der Kennung K und somit für eine Umprojektierung. Die Umsetztabelle 10' in der Figur 2B repräsentiert dabei die aktua¬ lisierte Umsetztabelle 10 und somit den Aktualisierungsstatus für eine nachfolgende Änderung der Kennung KE, KI mindestens eines der Objekte, d.h. eines der Datenbausteine DB oder eines der Funktionsbausteine FB. Zur Bestimmung eines den Zeitpunkt einer Änderung repräsentierenden Zeitstempels Z umfasst die Umsetztabelle 10, 10' einen das jeweilige Objekt betreffenden Zeitstempel Z, der somit den Zeitpunkt der letzten Aktualisierung beschreibt. Je nach Art und Ausbildung der Datenverarbeitungseinheiten 2 und/oder der Bedien- und Beobachtungseinheiten 4 umfasst die jeweils zugehörige Umsetztabelle 10 einen die letzte Änderung eines der Objekte und damit eine der Kennungen KE, KI gemeinsam repräsentierenden Zeitstempel Zg und/oder für jedes Objekt einen zugehörigen Zeitstempel Z.
Bei der Erstellung des Datenverarbeitungsprogramms 8, msbe- sondere bei der Erweiterung oder Änderung des Datenverarbeitungsprogramms 8 für Steuerungs- und/oder Regelungsfunk- tionen anhand der Funktionsbausteine FBI bis FBn und/oder der Datenbausteine DBl bis DBn, ist es zur Vermeidung von Inkon- sistenzen zwischen den austauschenden Einheiten wichtig zu wissen, welche Hardware- und/oder Software-Adressen durch die Peripherie-Baugruppen bzw. das Datenverarbeitungsprogramm 8 sowie welche Speicherbereiche durch die Datenspeicher DBl bis DBn belegt, frei oder geändert worden sind.
Bei einer Änderung eines der Objekte, z.B. bei einer Änderung einer Funktion m einem Funktionsbaustein FBI bis FBn, beim Loschen eines Datenbausteins DBl bis DBn oder beim Hinzufugen eines neuen Datenbausteins DBl bis DBn, in einer der Daten- verarbeitungse heiten 2 und/oder m einer der Bedien- und Beobachtungseinheiten 4 wird dem betreffenden Objekt eine die Änderung charakterisierende neue Objektbezeichnung oder externe Kennung KE zugeordnet und m der Umsetztabelle 10, 10' hinterlegt. Dazu weist ede Datenverarbeitungseinheit 2 und Bedien- und Beobachtungseinheit 4 ein Mittel zur Zuordnung der relevanten externen Kennung KE auf. Das Mittel ist bevorzugt als ein Funktionsbaustein FB ausgebildet, der diese Funktion bei jeder Änderung bzw. bei einem Neustart der betreffenden Einheit ausfuhrt bzw. aktualisiert.
Zur Bestimmung des den Zeitpunkt der Änderung bestimmenden Zeitstempeis Z ist ein weiteres Mittel, welches als Funk- tionsbaustem FB ausgebildet ist, vorgesehen. Mittels eines externen, beispielsweise m einem Proj ektierungsgerat hinter¬ legten weiteren zeitrelevanten Funktionsbausteins wird die betreffende externe Kennung K mit einem den Zeitpunkt der Änderung bestimmenden Zeitstempel Z versehen. Beispielsweise erhalten alle Objekte, d.h. Datenbausteine DB100, DB200 und
Funktionsbaustein FBI, die wahrend einer sogenannten Revision oder Umprojektierung am 23.02.2001 geändert worden sind, den Zeitstempel Z = "23.02.2001" und eine zugehörige für externe Anforderungen erforderliche externe Kennung KE, d.h. 32811, 32812 bzw. 50000, welche m der Umsetztabelle 10 hinterlegt werden. Die jeweilige interne Kennung KI ändert sich nicht.
Wie anhand der die nächste Änderung oder Revision repräsentierenden Umsetztabelle 10' ersichtlich, wird für gelöschte Objekte, wie den Datenbaustein DB100, die interne Kennung KI geloscht (= "explizites Loschen"). Dabei kann auch der genannte diesbezügliche Eintrag, also die genannte betroffene Zeile, aus der Umsetztabelle 10' entfernt werden. Geänderte Objekte, wie den Funktionsbaustein FBI, erhalten bei beste- hender Numerierung der FB-Nummer und somit bei bestehender interner Kennung KI eine neue die Änderung repräsentierende externe Kennung KE, mit KE = 50001. Dabei wird die alte, externe Kennung KE = 50000 für den Funktionsbaustein FBI geloscht (= "implizites Loschen"). Die neue den Funktions- baustem FBI repräsentierende, externe Kennung KE erhalt bei freien Nummern eine fortlaufende Nummer, bei Ausschopfung der gesamten Nummerierung erhalt die externe Kennung KE eine bereits gelöschte und nicht mehr verwendete Nummer.
Neu hinzukommende Objekte, wie den Funktionsbaustein FB10, werden je nach Belegung der bereits vergebenen Numerierungen, die fortlaufende Numerierung eingekettet, wenn alle Num¬ mern für die externe Kennung KE bereits vergeben sind, oder bei noch freien Nummern wird die externe Kennung KE, mit K = 50001, fortlaufend numeriert. Bei jeder weiteren Änderung oder Umprojektierung wird analog verfahren.
Eine Änderung der vier Objekte Datenbausteine DB100, DB200, Funktionsbausteine FBI, FB10 m der betreffenden Datenver- arbeitungse heit 2 wird mittels einer Anderungsmeldung an die diese Objekte DB100, DB200, FBI, FB10 bearbeitenden anderen, externen Datenverarbeitungseinheiten 2 und/oder Bedien- und Beobachtungseinheiten 4 gesendet. In den externen Datenverarbeitungseinheiten 2 und/oder Bedien- und Beobachtungseinheiten 4 erfolgt dann jeweils eine Aktualisierung der zugehörigen Umsetztabelle 10, 10'. Ist eine der anderen
Datenverarbeitungseinheiten 2 und/oder Bedien- und Beobachtungseinheiten 4 zu diesem Zeitpunkt abgeschaltet, so erfolgt die Aktualisierung der in der zugehörigen Umsetztabelle 10, 10' hinterlegten Kennung K, KE, KI und des Zeitstempeis Z beim nächsten Betriebsstart oder Anlauf.
Beim Betrieb der Datenverarbeitungsanlage 1 werden über die Datenubertragungsemheit 6 große Datenmengen in Form von Steuerbefehlen und/oder Zustandsmeldungen sowie Stormel- düngen, im weiteren Signale S genannt, zwischen den Daten- verarbeitungsemheiten 2 und/oder den Bedien- und Beobachtungseinheiten 4 übertragen. Dabei werden die Signale durch Zugriff der externen Datenverarbeitungseinheit 2 auf einen Funktionsbaustein FB oder Datenbaustein DB der anderen Daten- Verarbeitungseinheit 2 dieser intern verarbeitet. Bei nicht gleichzeitiger Aktualisierung aller Datenverarbeitungs- emheiten 2 und/oder Bedien- und Beobachtungseinheiten 4 und daraus resultierenden unterschiedlichen Spezifikationen kann es zu Inkompatibilitäten beim Zugriff der externen Datenverarbeitungseinheit 2 bzw. Bedien- und Beobachtungseinheit 4 auf den betreffenden Funktionsbaustein FB oder Datenbaustein DB der anderen Datenverarbeitungseinheit 2 bzw. Bedien- und Beobachtungseinheit 4 kommen. Dies führt dann zu evtl. sicherheitsrelevanten Instabilitäten oder Zugriffsfehlern in der Bearbeitung der Datenverarbeitungsprogramme 8 der "inter¬ nen" Datenverarbeitungseinheit 2. Um einen daraus resultie- renden Ausfall der betreffenden Datenverarbeitungseinheit 2 oder Bedien- und Beobachtungseinheit 4, die beispielsweise noch nicht aktualisiert worden ist, zu vermeiden, umfasst jede Datenverarbeitungseinheit 2 bzw. Bedien- und Beob¬ achtungseinheit 4 das Analysemodul 12.
Bei einer Anforderung zur Bearbeitung des Objekts FBI oder DB100 der betreffenden Datenverarbeitungseinheit 2 und somit bei einem Zugriff durch eine externe Datenverarbeitungseinheit 2 und/oder Bedien- und Beobachtungseinheit 4 wird mittels des Analysemoduls 12 die Umsetztabelle 10 derart zwischengeschaltet, dass ein Aufruf des betreffenden Daten¬ bausteins DB100 und/oder Funktionsbausteins FBI anhand der externen Datenverarbeitungseinheit 2 mit einer diesen Zugriff charakterisierenden externen Kennung KE ausgeführt wird, wobei die externe Kennung KE mittels der Umsetztabelle 10 in eine für diese externe Kennung KE hinterlegte interne Kennung KI umgesetzt wird. Bei Vorliegen der internen Kennung KI für die betreffende externe Kennung KE wird eine Bearbeitung des Datenbausteins DB100 und/oder Funktionsbausteins FBI der betreffenden Datenverarbeitungseinheit 2 ausgeführt, andernfalls unterbleibt dies. Mit anderen Worten: Bei Gleichheit der internen Kennung KI für die anfordernde externe Kennung KE, d.h. die Spezifikationen der beiden miteinander kommunizierenden Datenverarbeitungseinheiten 2 und/oder Bedien- und Beobachtungseinheiten 4 sind gleich, wird eine reguläre Bearbeitung des Objekts ausgeführt, andernfalls unterbleibt eine Bearbeitung. Je nach Art und Ausführung kann eine entsprechende Statusinformation oder Anderungsmeldung an den Bediener, z.B. bei Gleichheit "Spezifikation OK", bei Ungleichheit "Spezifikation Error", gesendet werden.
Alternativ oder zusatzlich kann anhand eines Vergleichs der relevanten Zeitstempel Z oder des gesamten Zeitstempeis Zg die Kompatibilität von Objekten der Datenverarbeitungsprogramme 8 zwischen kommunizierenden Datenverarbeitungsem- heiten 2 und/oder der Bedien- und Beobachtungseinheiten 4 geprüft werden. Bei einer Abweichung der Zeitstempel Z bzw. Zg hat zwischenzeitlich eine Änderung oder Umprojektierung stattgefunden und dem Bediener kann eine Fehlermeldung angezeigt werden, andernfalls wird die Bearbeitung ausgeführt. Durch die alleinige Auswertung eines einzelnen Zeitstempeis Z oder Zg kann dabei die Konsistenz aller relevanten Objekte bereits im Anlauf geprüft werden. Eine derartige Konsistenzprufung ist auch durch Auslesen der Umsetztabelle 10 ermöglicht.
Die mit der Erfindung erzielten Vorteile bestehen insbesondere darin, dass durch Überwachung der Speziflkationsande- rungen den einzelnen Datenverarbeitungsemheiten 2 und/oder Bedien- und Beobachtungseinheiten 4 der Datenverarbeitungsanlage 1 eine konsistente, mkrementelle und transparente Wartung von Datenverarbeitungsprogrammen 8 gewahrleistet ist. Durch die Bearbeitung der Objekte bei Gleichheit bzw. Nichtbearbeitung bei Ungleichheit ist sichergestellt, dass Signale oder Funktionen, die zwischen zwei Einheiten ausgetauscht werden, zunächst nur in eine der Einheiten geändert oder geloscht werden können, wobei ein Ausfall der betreffenden Einheit sicher vermieden ist.

Claims

Patentansprüche
1. Verfahren zur Verarbeitung von Daten einer Datenverarbeitungsanlage (1), umfassend eine Mehrzahl von Datenverarbei- tungsemheiten (2) und/oder Bedien- und Beobachtungseinheiten (4), welche über eine Datenubertragungsemheit (6) miteinan¬ der verbunden sind, wobei auf den Datenverarbeitungseinheiten (2) jeweils ein Datenverarbeitungsprogramm (8) mit zugehörigen Funktionsbausteinen (FBI bis FBn) und Datenbausteinen (DBl bis DBn) implementiert ist, für welche einer der jeweiligen Datenverarbeitungseinheit (2) zugehörigen Umsetztabelle (10) mindestens eine Kennung (K, KE, KI) hinterlegt ist, wobei a) bei einem Zugriff einer externen Datenverarbeitungseinheit (2) auf einen Datenbaustein (DBl bis DBn) und/oder Funk¬ tionsbaustein (FBI bis FBn) einer anderen Datenverarbei- tungsemheit (2) die Umsetztabelle (10) derart zwischenge¬ schaltet wird, dass ein Aufruf des betreffenden Datenbau- steins (DBl bis DBn) und/oder Funktionsbausteins (FBI bis FBn) anhand der externen Datenverarbeitungseinheit (2) mit einer diesen Zugriff charakterisierenden externen Kennung (KE) ausgeführt wird, b) die externe Kennung (KE) mittels der Umsetztabelle (10) m eine für diese externe Kennung (KE) hinterlegte interne Kennung (KI) umgesetzt wird, c) bei Vorliegen der internen Kennung (KI) für die betreffende externe Kennung (KE) eine Bearbeitung des Datenbau- steins (DBl bis DBn) und/oder Funktionsbausteins (FBI bis FBn) der betreffenden Datenverarbeitungseinheit (2) aus- gefuhrt wird, andernfalls unterbleibt.
2. Verfahren nach Anspruch 1, bei dem die Kennung im zugehörigen Datenbaustein (DB bis DBn) und/oder Funktionsbaustein
(FBI bis FBn) hinterlegt wird.
3. Verfahren nach Anspruch 1 oder 2, bei dem bei einer Ände¬ rung des Funktionsbausteins (FBI bis FBn) und/oder des Datenbausteins (DB bis DBn) die Umsetztabelle (10) aktualisiert wird.
4. Verfahren nach Anspruch 3, bei dem bei einer Aktuali- sierung der Umsetztabelle (10) eine Anderungsmeldung an die diese Aktualisierung betreffende Datenverarbeitungseinheit (2) und/oder Bedien- und Beobachtungseinheit (4) gesendet wird.
5. Verfahren nach Anspruch 3 oder 4, bei dem jede Aktualisierung der Umsetztabelle (10) mit einem zugehörigen Zeitstempel (Z, Zg) oder einer Versionserkennung versehen wird, der bzw. die hinterlegt wird.
6. Verfahren nach einem der Ansprüche 1 bis 5, bei dem bei einem Betriebsstart der Datenverarbeitungseinheit (2) und/oder der Bedien- und Beobachtungseinheit (4) der zugehörige hinterlegte Zeitstempel (Z, Zg) abgefragt und aktualisiert wird.
EP02750814A 2001-07-02 2002-07-02 Verfahren zur verarbeitung von daten Withdrawn EP1436697A2 (de)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
DE10131944 2001-07-02
DE10131944A DE10131944A1 (de) 2001-07-02 2001-07-02 Verfahren zur Verarbeitung von Daten
PCT/DE2002/002404 WO2003005218A2 (de) 2001-07-02 2002-07-02 Verfahren zur verarbeitung von daten

Publications (1)

Publication Number Publication Date
EP1436697A2 true EP1436697A2 (de) 2004-07-14

Family

ID=7690281

Family Applications (1)

Application Number Title Priority Date Filing Date
EP02750814A Withdrawn EP1436697A2 (de) 2001-07-02 2002-07-02 Verfahren zur verarbeitung von daten

Country Status (4)

Country Link
US (1) US7234135B2 (de)
EP (1) EP1436697A2 (de)
DE (1) DE10131944A1 (de)
WO (1) WO2003005218A2 (de)

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE10301937A1 (de) * 2003-01-20 2004-07-29 Siemens Ag Verfahren und Vorrichtung zur Verarbeitung von in verschiedenen Datenspeichern hinterlegten Daten
DE102004005730A1 (de) * 2004-02-05 2005-08-25 Robert Bosch Gmbh Verfahren zur Konfiguration eines Computerprogramms
US8155761B2 (en) * 2009-07-23 2012-04-10 Fisher-Rosemount Systems, Inc. Process control system with integrated external data sources
CN101840336A (zh) * 2010-04-30 2010-09-22 大连海事大学 一种采用联合编程处理外部数据的方法
US8898634B2 (en) 2012-11-06 2014-11-25 Rockwell Automation Technologies, Inc. Customized object design for industrial automation application
US9135000B2 (en) * 2012-11-06 2015-09-15 Rockwell Automation Technologies, Inc. Runtime process diagnostics
US9355193B2 (en) 2012-11-06 2016-05-31 Rockwell Automation Technologies, Inc. Object design data model
US9563861B2 (en) 2012-11-06 2017-02-07 Rockwell Automation Technologies, Inc. Integration of workflow and library modules
US9031975B2 (en) 2012-11-06 2015-05-12 Rockwell Automation Technologies, Inc. Content management
CN104778077B (zh) * 2015-04-27 2018-03-27 华中科技大学 基于随机和连续磁盘访问的高速核外图处理方法及系统

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3489123B2 (ja) * 1992-04-15 2004-01-19 株式会社日立製作所 アプリケーション結合方法
US5734903A (en) * 1994-05-13 1998-03-31 Apple Computer, Inc. System and method for object oriented message filtering
JP3599392B2 (ja) * 1994-12-15 2004-12-08 富士通株式会社 交換機
CA2199108C (en) * 1996-03-05 2002-04-23 Hirotoshi Maegawa Parallel distributed processing system and method of same
US6385660B2 (en) * 1997-10-06 2002-05-07 Sun Microsystems, Inc. Site specific message dispatch in object-oriented systems
US6317796B1 (en) * 1997-10-06 2001-11-13 Sun Microsystems, Inc. Inline database for receiver types in object-oriented systems

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
WILLIAMS S ET AL: "THE COMPONENT OBJECT MODEL. THE FOUNDATION FOR OLE SERVICES", DR. DOBB'S SPECIAL REPORT, XX, XX, vol. 19, no. 16, 21 December 1994 (1994-12-21), pages 14 - 22, XP002025907 *

Also Published As

Publication number Publication date
WO2003005218A3 (de) 2004-04-22
US7234135B2 (en) 2007-06-19
WO2003005218A2 (de) 2003-01-16
DE10131944A1 (de) 2003-01-16
US20040225378A1 (en) 2004-11-11

Similar Documents

Publication Publication Date Title
EP0906596B1 (de) Prozessautomatisierungssystem
EP2591404B1 (de) Verfahren zur konfigurierung einer steuerungseinrichtung
DE102009045386A1 (de) Verfahren zum Betreiben eines Feldbus-Interface
EP1865394A1 (de) Verfahren zum Austausch eines Feldgerätes der Automatisierungstechnik
EP3001310B1 (de) Verfahren und Einrichtung zur Aktualisierung von Firmware für Komponenten einer industriellen Automatisierungsanordnung
EP1779203A1 (de) Parameteridentifikation für feldgeräte in der automatisierungstechnik
EP1436697A2 (de) Verfahren zur verarbeitung von daten
EP1714197B1 (de) Gerätetreiber für feldgeräte der prozessautomatisierungstechnik
EP2157536A2 (de) System zur Überwachung, Steuerung und Datenerfassung technischer Prozesse
DE10208530A1 (de) Betriebseinheit, Peripheriegerät und Verfahren zum Betrieb eines Peripheriegeräts
DE10312756A1 (de) Verfahren zum Betrieb einer Steuerung an einem Kommunikationsmedium
EP2480940B1 (de) Verfahren zum bereitstellen von sicherheitsfunktionen
EP2557464B1 (de) Verfahren zum Betrieb eines Automatisierungssystems
EP2770382B1 (de) Verfahren zur Inbetriebnahme eines Automatisierungssystems
DE102021100762A1 (de) Verfahren zur Kontrolle eines automatisierten IO-Gerätesystems
DE10353052A1 (de) Automatisierungsanlage mit untereinander kommunizierenden Komponenten
EP4148514B1 (de) Integriertes diagnosesystem für sps-basierte fernwirk-aussenstationen
EP3652595B1 (de) Verfahren und system zum überwachen einer anlage der automatisierungstechnik
EP1454201B1 (de) Engineeringsystem und automatisierungssystem
EP3948449B1 (de) Verfahren und engineering-system zur änderung eines programms einer industriellen automatisierungskomponente
WO2016079091A1 (de) Verfahren zum betreiben eines ersten und zumindest eines zweiten feldgerätes
WO2011042258A2 (de) Verfahren zum betreiben eines feldbus-interface
EP3349081A1 (de) Verfahren zur automatischen konfiguration von funktionseinheiten eines automatisierungssystems, computerprogramm mit einer implementation des verfahrens sowie nach dem verfahren arbeitendes gerät
WO2008077358A1 (de) Geräteverbund mit einem automatisierungsgerät und einem bediengerät sowie verfahren zum betrieb eines solchen geräteverbunds
EP1243989B1 (de) Verfahren zur Verringerung des Programmieraufwandes bei einer speicherprogrammierbaren Steuerung mit Zentraleinheit und Bedienungsgerät

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: 20031219

AK Designated contracting states

Kind code of ref document: A2

Designated state(s): AT BE BG CH CY CZ DE DK EE ES FI FR GB GR IE IT LI LU MC NL PT SE SK TR

17Q First examination report despatched

Effective date: 20100312

RAP1 Party data changed (applicant data changed or rights of an application transferred)

Owner name: SIEMENS AKTIENGESELLSCHAFT

RAP1 Party data changed (applicant data changed or rights of an application transferred)

Owner name: SIEMENS AKTIENGESELLSCHAFT

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

Free format text: STATUS: THE APPLICATION HAS BEEN WITHDRAWN

18W Application withdrawn

Effective date: 20140707