DE102007062920A1 - Method for monitoring the logical execution order and the data transmission of a program subdivided into individual modules - Google Patents

Method for monitoring the logical execution order and the data transmission of a program subdivided into individual modules Download PDF

Info

Publication number
DE102007062920A1
DE102007062920A1 DE102007062920A DE102007062920A DE102007062920A1 DE 102007062920 A1 DE102007062920 A1 DE 102007062920A1 DE 102007062920 A DE102007062920 A DE 102007062920A DE 102007062920 A DE102007062920 A DE 102007062920A DE 102007062920 A1 DE102007062920 A1 DE 102007062920A1
Authority
DE
Germany
Prior art keywords
program
value
modules
test
interfaces
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
DE102007062920A
Other languages
German (de)
Inventor
Manfred Hammer
Martin Link
Udo Fuchs
Rainer Faller
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.)
Endress and Hauser SE and Co KG
Original Assignee
Endress and Hauser SE and Co KG
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 Endress and Hauser SE and Co KG filed Critical Endress and Hauser SE and Co KG
Priority to DE102007062920A priority Critical patent/DE102007062920A1/en
Priority to PCT/EP2008/067373 priority patent/WO2009080550A2/en
Publication of DE102007062920A1 publication Critical patent/DE102007062920A1/en
Ceased legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/04Programme control other than numerical control, i.e. in sequence controllers or logic controllers
    • G05B19/042Programme control other than numerical control, i.e. in sequence controllers or logic controllers using digital processors
    • G05B19/0428Safety, monitoring
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/28Error detection; Error correction; Monitoring by checking the correct order of processing

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Quality & Reliability (AREA)
  • General Engineering & Computer Science (AREA)
  • Automation & Control Theory (AREA)
  • Debugging And Monitoring (AREA)

Abstract

Die Erfindung bezieht sich auf ein Verfahren zur Überwachung der Ausführungsreihenfolge und der Datenübertragung eines in einzelne Module unterteilten Programms, wobei die einzelnen Module des Programms mittels definierter Schnittstellen entsprechend einer Reihenfolge miteinander verbunden werden und zwischen den einzelnen Modulen Daten über diese Schnittstellen nach einem vorgegebenen Standard übertragen werden, wobei jeder Schnittstelle eines Moduls ein entsprechender Indikator zugeordnet wird, wobei die zugeordneten Indikatoren bei der Datenübertragung zwischen den einzelnen Schnittstellen mit übertragen werden, wobei aus den Indikatoren der einzelnen Schnittstellen in Abhängigkeit der Verknüpfung der Reihenfolge der Module durch einen Prüfalgorithmus ein Prüfwert gebildet wird.The invention relates to a method for monitoring the execution order and the data transmission of a subdivided into individual modules program, the individual modules of the program by means of defined interfaces are connected in accordance with an order and transfer data between these modules via these interfaces according to a predetermined standard be, with each interface of a module associated with a corresponding indicator, the associated indicators are transmitted in the data transfer between the individual interfaces, from the indicators of the individual interfaces depending on the linkage of the sequence of modules by a test algorithm, a test value is formed ,

Description

Die Erfindung bezieht sich auf ein Verfahren zur Überwachung der logischen Ausführungsreihenfolge und der Datenübertragung eines in einzelne Module unterteilten Programms gemäß dem Anspruch 1.The The invention relates to a method of monitoring logical execution order and data transfer a subdivided into individual modules program according to the Claim 1.

Entsprechende Verfahren zur Überwachung des logischen Ausführungsreihenfolge und der Datenübertragung eines in einzelne Module unterteilten Programms werden in der Prozess- und Automatisierungstechnik in den Messumformern von Messgeräten bzw. von Feldgeräten eingesetzt. Von der Anmelderin werden beispielsweise Feldgeräte oder ganze Messsysteme für Füllstand-, Durchfluss-, Druck- und Temperaturmessung sowie Flüssigkeitsanalyse und Messwertregistrierung verkauft und vertrieben. In der Automations- und Prozesssteuerungstechnik bezeichnet man Messgeräte sowie Stellgeräte als Feldgeräte. Diese Feldgeräte messen beispielsweise eine physikalische Größe, z. B. den Druck, die Temperatur, die Durchflussmenge oder den Füllstand an definierten Stellen in einer Prozessanlage und senden ein Messwertsignal zur Weiterverarbeitung an ein Prozessleitsystem.Appropriate Method for monitoring the logical execution order and the data transmission of a program subdivided into individual modules become in the process and automation technology in the transmitters used by measuring devices or field devices. By the applicant, for example, field devices or entire measuring systems for level, flow, Pressure and temperature measurement as well as liquid analysis and metering registration sold and distributed. In the automation and process control technology are called measuring instruments as well as actuators as field devices. These field devices measure, for example, a physical quantity, z. As the pressure, the temperature, the flow rate or the level at defined points in a process plant and send a measured value signal for further processing to a process control system.

Um Menschen, die Umwelt und industrielle Anlagen bestmöglich zu schützen, werden die Hersteller und Anwender von Feldgeräten mit immer höheren Sicherheitsanforderungen konfrontiert. So sind die Sicherheitsanforderungen in der neuen Beurteilung zur "Funktionalen Sicherheit" nach IEC/ DIN EN 61508 und IEC/ DIN EN 61511 festgelegt. Diese europäischen und internationalen Vorgaben sind die Grundlage zur systematischen Beurteilung des Gefahrenpotenzials von mess-, steuer- und regeltechnischen Einrichtungen und können für die sicherheitsbezogene Auslegung von verfahrenstechnischen Anlagen herangezogen werden. Dabei werden die jeweiligen Anforderungsstufen (SIL), in Abhängigkeit der Risikoparameter, über einen Risikographen bestimmt. Diese Funktionale Sicherheit beinhaltet alle Aspekte zur Verhinderung, Vermeidung und Behandlung von fehlerhaftem Verhalten von Steuerungssystemen und Maschinen und Personal, mit dem Ziel die Risiken für Mitarbeiter, die Umwelt und die Prozessanlagen zu verringern. Funktionale Sicherheit findet man in der Energie- und Verfahrenstechnik (KKW), bei Verkehrstechnik (Bahn), Prozessindustrie (Chemie, Öl-Gas) und bei Werkzeugmaschinen.In order to best protect people, the environment and industrial facilities, the manufacturers and users of field devices are confronted with ever more stringent safety requirements. For example, the safety requirements in the new "Functional Safety" assessment according to IEC / DIN EN 61508 and IEC / DIN EN 61511 established. These European and international specifications are the basis for the systematic assessment of the potential dangers of measuring, control and regulation equipment and can be used for the safety-related design of process plants. The respective requirement levels (SIL), depending on the risk parameters, are determined via a risk graph. This Functional Safety includes all aspects to prevent, prevent and treat faulty behavior of control systems and machinery and personnel, with the aim of reducing the risks to employees, the environment and the process equipment. Functional safety can be found in energy and process engineering (NPP), in traffic engineering (rail), process industry (chemical, oil-gas) and in machine tools.

Die Betreiber von Anlagen mit sicherheitsrelevanten Funktionen legen im Rahmen einer Gefährdungsbeurteilung den Sicherheits-Integritätslevel für die jeweilige Sicherheitsfunktion fest. Entsprechend dieser Festlegung werden die dafür geeigneten Geräte ausgewählt und zu einem System zusammengeführt.The Place operators of installations with safety-relevant functions in the context of a risk assessment, the safety integrity level for the respective safety function. According to this Determination will be the appropriate equipment selected and merged into a system.

Im Rahmen dieser Anforderungen an die erhöhte Sicherheit in Feldgeräten und durch den Einsatz von Rechensystemen in diesen Feldgeräten ist es notwendig, eine Programmablaufüberwachung als eine Maßnahme zur Fehlererkennung während der Betriebsphase des Feldgeräts zu integrieren. Das grundlegende Ziel einer Methode zur Programmablaufkontrolle ist es, unerlaubte Programmabläufe bzw. Abweichungen vom geplanten Programmablauf zu erkennen und entsprechende Maßnahmen bei Abweichungen einzuleiten. Die Abweichungen in einem Programmablauf liegen beispielsweise dann vor, falls Funktionen bzw. Befehlsfolgen eines Programms in einer falschen Reihenfolge, in der falschen Zeitdauer oder gar nicht mehr abgearbeitet werden. Die Programmablaufüberwachung bzw. -kontrolle können in zwei grundlegenden Überwachungsprinzipien eingeteilt werden, die zeitliche oder die logische Programmablaufkontrolle.in the Framework of these requirements for increased safety in Field devices and through the use of computing systems in These field devices it is necessary to program execution monitoring as a measure for error detection during the Incorporate the operating phase of the field device. The basic The aim of a method for program flow control is unauthorized Program sequences or deviations from the planned program sequence too recognize and initiate appropriate measures in case of deviations. The deviations in a program sequence are then present, for example. if functions or command sequences of a program are in the wrong Order, in the wrong time period or not at all. The program flow monitoring or control can divided into two basic monitoring principles the temporal or logical program control.

Methoden zur Programmablaufüberwachung sind in dem Buch der Bundesanstalt für Arbeitsschutz und Arbeitsmedizin – „Wirksamkeit von zeitlichen und logischen Programmablaufüberwachungen beim Betrieb von Rechnersystemen" von H. Gall, K. Kemp aufgeführt.Methods for program monitoring are described in the book of the Federal Institute for Occupational Safety and Health - "Effectiveness of temporal and logical program monitoring during the operation of computer systems" by H. Gall, K. Kemp listed.

Ein fehlersicheres Automatisierungssystem mit einer Standard-CPU ist in der EP 1 043 641 A2 beschrieben.A fail-safe automation system with a standard CPU is in the EP 1 043 641 A2 described.

Ein weiteres Verfahren ist in der noch nicht veröffentlichten Anmeldung DE 10 2007 015 369 A1 beschrieben. In diesem Verfahren werden zur Überwachung von kritischen Funktionen eines Programms entsprechende Überwachungspunkten in das Programm integriert. An diesen Überwachungspunkten wird eine Überwachungsroutine gestartet wird, die die Kennzahl des Überwachungspunktes mit einer in einer Zuordnungsliste vorgegebenen Reihenfolge des Programmablaufs vergleicht und bei einer Abweichung das Programm unterbricht oder erneut startet.Another method is in the not yet published application DE 10 2007 015 369 A1 described. In this procedure, monitoring points are integrated into the program to monitor critical functions of a program. At these monitoring points, a monitoring routine is started, which compares the code number of the monitoring point with an order of the program sequence specified in an assignment list and, in the event of a deviation, interrupts or restarts the program.

Die Aufgabe der Erfindung ist es, ein Verfahren zur Überwachung von modularen Programmen anzugeben, das zuverlässig arbeitet und einfach in Programmen umzusetzen ist.The The object of the invention is a method for monitoring of modular programs that works reliably and easy to implement in programs.

Diese Aufgabe der Erfindung wird durch die im Anspruch 1 angeführten Merkmale gelöst.These The object of the invention is characterized by the recited in claim 1 Characteristics solved.

Vorteilhafte Weiterentwicklungen der Erfindung sind in den Unteransprüchen angegeben.advantageous Further developments of the invention are in the subclaims specified.

Es existiert eine Vielzahl von Methoden die funktionale Sicherheit innerhalb von komplexen und kritischen Modulen in Programmen zu gewährleisten. Ein Vorteil der Erfindung ist, dass die Überwachung der Ausführungsreihenfolge der einzelnen Module des Programms und die Überprüfung der Verknüpfungen der Schnittstellen der Module gleichzeitig erfolgen können.There are a variety of methods to ensure functional safety within programs within complex and critical modules. An advantage of the invention is that the monitoring of the execution order of the individual modules the program and checking the links of the interfaces of the modules can be done simultaneously.

Weitere Einzelheiten, Merkmale und Vorteile des Gegenstandes der Erfindung ergeben sich aus der nachfolgenden Beschreibung mit den zugehörigen Zeichnungen, in denen bevorzugte Ausführungsbeispiele der Erfindung dargestellt sind. In den Figuren dargestellte Ausführungsbeispiele der Erfindung sind zur besseren Übersicht und zur Vereinfachung der Elemente, die sich in ihrem Aufbau und/oder in ihrer Funktion entsprechen, mit gleichem Bezugszeichen versehen. Es zeigen:Further Details, features and advantages of the subject matter of the invention result from the following description with the associated Drawings in which preferred embodiments of the Invention are shown. Embodiments illustrated in the figures The invention are for a better overview and to simplify the Elements that correspond in their structure and / or function provided with the same reference number. Show it:

1a eine erste Darstellung einer korrekten Verknüpfung von Modulen eines Programms, 1a a first representation of a correct linking of modules of a program,

1b eine zweite Darstellung einer inkorrekten Verknüpfung von Modulen eines Programms, 1b a second representation of an incorrect linking of modules of a program,

2a ein erstes Programmablaufdiagramm der in 1 dargestellter Module eines Programms, 2a a first program flow chart of in 1 represented modules of a program,

2b ein zweites Programmablaufdiagramm der in 1 dargestellter Module eines Programms, 2 B a second program flow chart of in 1 represented modules of a program,

2c ein drittes Programmablaufdiagramm der in 1 dargestellter Module eines Programms, 2c a third program flow chart of the in 1 represented modules of a program,

3a eine zweite Darstellung einer fehlerhaften Verknüpfung von Modulen eines Programms, und 3a a second representation of a faulty linking of modules of a program, and

3b ein viertes Programmablaufdiagramm von in 3a dargestellten, fehlerhaft verknüpfter Module eines Programms. 3b a fourth program flow chart from in 3a displayed, incorrectly linked modules of a program.

In 1a ist eine erste Darstellung einer korrekten Verknüpfung (V) von Modulen B eines Programms A dargestellt. Das Programm A ist beispielsweise zu Ausführung von Mess- und Bedienaufgaben und/oder zur Kommunikation in einem Messumformer eines Feldgeräts der Prozess- und/oder Automatisierungstechnik integriert, welches hier nicht explizit gezeigt ist. Ein fortschrittliches Programm A ist in Module B bzw. Blöcke untergliedert, die über definierte Schnittstellen P bzw. Ports statisch und/oder dynamisch zur Laufzeit des Programms A miteinander verknüpft werden und über diese Verknüpfungen V zumindest die in den Modulen B berechneten Daten austauschen. Jeder Schnittstelle P der Module B wird erfindungsgemäß zunächst ein Indikator ID zugeordnet, der beispielsweise einem binären Datenwort von zumindest 8 Bit (binary digit), einer Kennzahl oder einer MAC-Adresse (Media Access Control) entspricht. Dieser Indikator ID ist beispielsweise die binäre Adresse mit der die entsprechende Schnittstelle P als Eingangselement oder als Ausgangselement des Moduls B angesprochen werden kann. Bei der Datenübertragung über eine Verknüpfung V wird dieser Indikator ID der Schnittstelle P mit übertragen, indem diese beispielsweise vor dem im Modul B berechneten Datenwort angehängt wird.In 1a is a first representation of a correct link (V) of modules B of a program A shown. The program A is integrated, for example, in the execution of measuring and operating tasks and / or for communication in a measuring transducer of a field device of process and / or automation technology, which is not explicitly shown here. An advanced program A is subdivided into modules B or blocks which are linked to one another statically and / or dynamically via defined interfaces P or ports at runtime of the program A and exchange at least the data calculated in the modules B via these links V. According to the invention, each interface P of the modules B is first assigned an indicator ID which, for example, corresponds to a binary data word of at least 8 bits (binary digit), a code number or a MAC address (Media Access Control). This indicator ID is, for example, the binary address with which the corresponding interface P can be addressed as an input element or as an output element of the module B. In the case of data transmission via a link V, this indicator ID is transmitted to the interface P by appending it, for example, before the data word calculated in module B.

In der modularen Programmiertechnik werden Prozeduren und deren Daten in logischen Einheiten, so genannten Modulen B, zusammengefasst. Das Programm A wird grundlegend in funktionale Module B zerlegt, die einzeln geplant, programmiert und getestet werden können. Zur Vervollständigung der Programmierung können die einzelnen Module B dann logisch miteinander über Schnittstellen P verknüpft werden, und sind somit einsatzbereit. Die modulare Programmierung mit normierten bzw. standardisieren Schnittstellen P zwischen den Modulen B beschreibt dabei den Versuch, die Programmierung zu vereinfachen und noch effizienter zu machen. Der modulare Aufbau eines Programms A hat vorzugsweise auch den Vorteil, dass die einzelnen Module B auf verschiedene Datenverarbeitungseinrichtungen und/oder von unterschiedlichen Programmierern erzeugt werden können und nur einzelne Module B des Programms A in den Arbeitsspeicher der Datenverarbeitungseinrichtung von beispielsweise einem Messumformer eines Feldgeräts der Prozessautomatisierung geladen werden muss. Desweiteren ist das Programm A durch den modularen Aufbau beliebig erweiterbar und kann leicht und schneller durch den Austausch von einzelnen Modulen B verändert und/oder korrigiert werden. Hierzu muss jedoch die Übergabe der Datenwörter an den universellen Schnittstellen P der Module B definiert worden sein, damit die Module B etwas mit den Datenwörtern der anderen Module B anfangen können. Die geringen Entwicklungskosten und die kurze Entwicklungszeiten, sowie den individuelle Entwicklung der Module B bei einem modularen Aufbau eines Programms A machen diese Art des Programmaufbaus auch für die industriellen Anwendungen hoch interessant.In The modular programming technique becomes procedures and their data in logical units, so-called modules B, summarized. The Program A is basically decomposed into functional modules B, which can be individually planned, programmed and tested. To complete the programming can the individual modules B then logically with each other via interfaces P are linked, and are thus ready for use. The modular Programming with standardized or standardized interfaces P between the modules B describes the attempt to programming simplify and make even more efficient. The modular structure A program A preferably also has the advantage that the individual Module B on various data processing equipment and / or can be generated by different programmers and only individual modules B of program A in the main memory the data processing device of, for example, a transmitter of a process automation field device got to. Furthermore, the program A is due to the modular design expandable and can be easily and quickly through the exchange be changed and / or corrected by individual modules B. However, this requires the transfer of the data words has been defined at the universal interfaces P of the modules B. so that modules B do something with the data words of others Modules B can begin. The low development costs and the short development times, as well as the individual development make the module B in a modular structure of a program A. this kind of program construction also for the industrial ones Applications highly interesting.

In der 1a ist ein Ausschnitt eines Programms A mit sechs Modulen B1, B2, B3, B4, B5, B6 gezeigt. Der modulare Aufbau des Programms A ist jedoch beliebig erweiterbar. Das erste Modul B1 ist über eine Verknüpfung V der ersten Schnittstelle P1 mit der dritten Schnittstelle P3 des zweiten Moduls B2 verbunden und zusätzlich über die zweite Schnittstelle P2 mit der sechsten Schnittstelle P6 des fünften Moduls B5 verbunden. Das zweite Modul B2 ist über eine vierte Schnittstelle P4 mit der achten Schnittstelle P8 des dritten Moduls B3 des Programms A über ein Verknüpfung V verbunden. Desweiteren ist das zweite Modul B2 über die fünfte Schnittstelle P5 mit der zehnten Schnittstelle P10 des vierten Moduls B4 verbunden. Eine weitere Verknüpfung V besteht zwischen der siebten Schnittstelle P7 des fünften Moduls P5 und der zwölften Schnittstelle P12 des sechsten Moduls B6. Die Schnittstellen P9, P11, P13 sind in der 1a nicht mit weiteren Modulen B verbunden, jedoch sind weitere Ausgestaltungen von Programmen A mit ergänzenden Programmmodulen an diesen Schnittstellen P9, P11, P13 denkbar.In the 1a a section of a program A with six modules B1, B2, B3, B4, B5, B6 is shown. However, the modular structure of the program A is arbitrarily expandable. The first module B1 is connected via a link V of the first interface P1 to the third interface P3 of the second module B2 and additionally connected via the second interface P2 to the sixth interface P6 of the fifth module B5. The second module B2 is connected via a fourth interface P4 to the eighth interface P8 of the third module B3 of the program A via a link V. Furthermore, the second module B2 is connected via the fifth interface P5 to the tenth interface P10 of the fourth module B4. Another link V exists between the seventh interface P7 of the fifth module P5 and the twelfth interface P12 of the sixth module B6. The interfaces P9, P11, P13 are in the 1a not connected to other modules B, however, further embodiments of programs A with additional program modules at these interfaces P9, P11, P13 are conceivable.

Die einzelnen Modul B des Programms A werden nacheinander und/oder parallel gemäß den Vorgaben aus der Konfigurationsphase des Programms A ausgeführt. Die Ausführungsreihenfolge der einzelnen Module B ist in der 1a durch die einzelnen nummerierten Module B1, B2, B3, B4, B5, B6 kenntlich gemacht. Ein korrekte Ausgestaltung der Verknüpfungen V der einzelnen Module B über die Schnittstellen P stellt die erste Reihe R1 mit der ersten, dritten, vierten, achten und neunten Schnittstelle P1, P3, P4, P8, P9 dar. Eine weitere korrekte Ausgestaltung der Verknüpfungen V der einzelnen Module B über die Schnittstellen P ist durch das erste, fünfte und sechste Modul B1, B5, B6 mit der zweiten, sechsten, siebten, zwölften und dreizehnten Schnittstellen P2, P6, P7, P12, P13 als dritte Reihe R3 ausgebildet. Die zweite Reihe R2 aus dem ersten Modul B1 mit der zweiten Schnittstelle P2, dem zweiten Modul B2 mit der dritten und fünften Schnittstelle P3, P5 und dem vierten Modul B4 mit der zehnten und elften Schnittstelle P10, P11 ist die Ausführungsreihenfolge der Module B, die in diesem Ausführungsbeispiel erfindungsgemäß überwacht werden soll. Zur besseren Darstellung des überwachten zweiten Reihe R2 sind die überwachten Verknüpfungen V der Schnittstellen P als gestrichelte Linien und die überwachten Schnittstellen P1, P3, P4, P10, P11 selbst als staffierte Quadrate dargestellt. Die erste und dritte Reihe R1, R3 werden in diesen Ausführungsbeispielen aus 1a und 1b nicht überwacht.The individual module B of the program A are executed successively and / or in parallel according to the specifications from the configuration phase of the program A. The order of execution of the individual modules B is in the 1a indicated by the individual numbered modules B1, B2, B3, B4, B5, B6. A correct embodiment of the links V of the individual modules B via the interfaces P represents the first row R1 with the first, third, fourth, eighth and ninth interface P1, P3, P4, P8, P9. Another correct embodiment of the links V of individual modules B via the interfaces P is formed by the first, fifth and sixth module B1, B5, B6 with the second, sixth, seventh, twelfth and thirteenth interfaces P2, P6, P7, P12, P13 as a third row R3. The second row R2 of the first module B1 with the second interface P2, the second module B2 with the third and fifth interface P3, P5 and the fourth module B4 with the tenth and eleventh interface P10, P11 is the execution order of the modules B, to be monitored according to the invention in this embodiment. For better representation of the monitored second row R2, the monitored links V of the interfaces P are shown as dashed lines and the monitored interfaces P1, P3, P4, P10, P11 themselves as staffed squares. The first and third rows R1, R3 are made in these embodiments 1a and 1b not monitored.

In 1b ist eine zweite Darstellung einer inkorrekten Verknüpfung von Modulen B eines Programms A aufgezeigt. Die Verknüpfung V zwischen der ersten Schnittstelle P1 und der dritten Schnittstelle P3 ist in dieser Darstellung aufgetrennt worden, wodurch die erste Schnittstelle P1 ist mit der zehnten Schnittstelle P10 verbunden ist und die elfte Schnittstelle P11 mit der dritten Schnittstelle P3 verbunden ist. Dadurch wird eine inkorrekte Ausführungsreihenfolge der Module B erzeugt, was in dem Programmablaufdiagramm der Berechnungsalgorithmen der Module B und des Prüfalgorithmus der Indikatoren ID der Schnittstellen P in 2c zu sehen ist.In 1b is a second representation of an incorrect linkage of modules B of a program A shown. The link V between the first interface P1 and the third interface P3 has been separated in this illustration, whereby the first interface P1 is connected to the tenth interface P10 and the eleventh interface P11 is connected to the third interface P3. This creates an incorrect execution order of the modules B, which is shown in the program flow diagram of the calculation algorithms of the modules B and the checking algorithm of the indicators ID of the interfaces P in 2c you can see.

In 2a ist ein erstes Programmablaufdiagramm der in 1a dargestellten zu überwachenden Module B des Programms A und der korrekten Verknüpfungen der Schnittstellen P der Module B gezeigt. Das Programm A führt in diesem ersten Ausführungsbeispiel die einzelnen Module B nach der durch beispielsweise eine Nummerierung festgelegten Reihenfolge aus. Die korrekte Verknüpfung der einzelnen Module B über die Schnittstellen P und die Ausführungsreihenfolge der einzelnen Module B wird durch die Bildung von zumindest einem Prüfwert C an den Schnittstellen P der Module B durchgeführt. Beim Start des Programms A wird zuerst die Berechnung des ersten Moduls B1 ausgeführt und ein Startindikator für die Berechnung des Prüfwerts C vorgegeben. Anschließend wird aus dem zur Übergabe an weitere Module B an der ersten Schnittstelle P1 bereitstehen Datenwort ein Vergleichswert S der ersten Prüfwerts C hinzugefügt, der aus dem Startindikator ID0 und dem ersten Indikator ID1 ermittelt wird. Das über die Verknüpfung V an die dritte Schnittstelle P3 des zweiten Moduls B2 zu übertragende Datenwort der ersten Schnittstelle P1 setzt sich aus dem mittels dem des ersten Indikators ID1 errechneten Prüfwert C der ersten Schnittstelle P1 und den Daten, die das erste Modul B1 berechnet hat zusammen. Das an die dritte Schnittstelle P3 des zweiten Moduls B2 übertragene Datenwort wird mittels einem dritten Indikator ID3 der dritten Schnittstelle P3 durch die Berechnung des aktuellen Vergleichswert S des zweiten Prüfwerts C überprüft. Nach dieser Überprüfung wird der zweite Modul B2 ausgeführt. Das von dem zweiten Modul B2 über die fünfte Schnittstelle P5 abgängige Datenwort wird durch die Bildung eines Prüfwerts C mit dem fünften Indikator ID5 überprüft. In der Zwischenzeit kann das dritte Modul B3 ausgeführt werden. Darauf folgend wird das Datenwort welches von der fünften Schnittstelle P5 des zweiten Moduls B2 über die Verknüpfung V an die zehnte Schnittstelle P10 des vierten Moduls B4 mittels einer Berechnung der aktuellen Vergleichswerts S des Prüfwerts C durch den zehnten Indikator ID10 gebildet. In einem nächsten Schritt wird das Programm A mit der Abarbeitung des vierten Moduls B4 ausgeführt. Nach der Abarbeitung des vierten Moduls B4 des Programms A wird an der elften Schnittstelle P11 mittels einer erneuten Bildung des Prüfwerts C ein Vergleichwert S ermittelt. Die elfte Schnittstelle P11 des vierten Moduls B4 ist in diesem Ausführungsbeispiel mit keiner weiteren Schnittstelle P eines Moduls B verknüpft. Als Abschluss der Ausführungsreihenfolge wird das nicht überwachte, fünfte und sechste Modul B5, B6 ausgeführt. Der aktuelle Vergleichswert S des ermittelten Prüfwerts C am Ende der Kette der miteinander verknüpften Module B werden mit den abgespeicherten Erwartungswerten E verglichen, um zu überprüfen, ob die Daten an die zu überwachenden Schnittstellen P1, P3, P5, P10, P11 der zweiten Reihe 2 richtig übermittelt wurden und die Ausführungsreihenfolge der Abarbeitung der einzelnen Module B eingehalten wurden. Das Überwachungsprinzip beinhaltet, dass jede Vertauschung der Ausführungsreihenfolge der einzelnen Module B oder einer Verknüpfung V über die Schnittstellen P der Module B zu einem anderen Endergebnis des Vergleichswerts S des Prüfwerts C am Ende einer Reihenfolge R führt. Deshalb reicht es aus, dass die Überprüfung der Verknüpfungen V und der Ausführungsreihenfolge der Module B nur einmal am Ende des Programms A überprüft werden muss. Ein Alternative ist auch, dass mehrere Varianten von Verknüpfungen V der einzelnen Schnittstellen P erlaubt sind und dadurch mehrere erlaubte Vergleichswerte S des Prüfwerts C für eine Reihenfolge R ermittelt werden können. Für jede Variante der Verknüpfungen V der Schnittstellen P werden dann in dem Speicher entsprechende Erwartungswerte E, mit dem die verschieden Vergleichswerte aus den Verknüpfungsvarianten verglichen werden, abgelegt. Je nach Verknüpfungsvariante wird der aktuelle Vergleichswert S gegen den einen oder anderen Erwartungswert E geprüft.In 2a is a first program flowchart of the in 1a shown to be monitored modules B of the program A and the correct links of the interfaces P of the modules B shown. In this first exemplary embodiment, program A executes the individual modules B according to the sequence specified by, for example, a numbering. The correct linking of the individual modules B via the interfaces P and the execution order of the individual modules B is carried out by the formation of at least one test value C at the interfaces P of the modules B. When the program A is started, first the calculation of the first module B1 is carried out and a start indicator for the calculation of the test value C is specified. Subsequently, from the data word available for transfer to further modules B at the first interface P1, a comparison value S of the first check value C is added, which is determined from the start indicator ID0 and the first indicator ID1. The data word of the first interface P1 to be transmitted via the link V to the third interface P3 of the second module B2 is composed of the test value C of the first interface P1 calculated using the first indicator ID1 and the data calculated by the first module B1 , The data word transmitted to the third interface P3 of the second module B2 is checked by means of a third indicator ID3 of the third interface P3 by the calculation of the current comparison value S of the second test value C. After this check, the second module B2 is executed. The data word which is output by the second module B2 via the fifth interface P5 is checked by forming a test value C with the fifth indicator ID5. In the meantime, the third module B3 can be executed. Subsequently, the data word which is formed by the fifth interface P5 of the second module B2 via the link V to the tenth interface P10 of the fourth module B4 by means of a calculation of the current comparison value S of the test value C by the tenth indicator ID10. In a next step, the program A is executed with the processing of the fourth module B4. After the execution of the fourth module B4 of the program A, a comparison value S is determined at the eleventh interface P11 by means of a renewed formation of the test value C. The eleventh interface P11 of the fourth module B4 is not linked to any further interface P of a module B in this exemplary embodiment. At the completion of the execution order, the unsupervised fifth and sixth modules B5, B6 are executed. The current comparison value S of the determined test value C at the end of the chain of interconnected modules B are compared with the stored expected values E to check whether the data to the monitored interfaces P1, P3, P5, P10, P11 the second row were correctly transmitted and the order of execution of the execution of the individual modules B were met. The monitoring principle implies that any substitution of the execution order of the individual modules B or a link V via the interfaces P of the modules B leads to a different final result of the comparison value S of the test value C at the end of an order R. Therefore it is sufficient that the checking of the links V and the order of execution of the modules B only once at the end of the program A must be checked. An alternative is also that a plurality of variants of links V of the individual interfaces P are allowed and thereby a plurality of permitted comparison values S of the test value C for an order R can be determined. For each variant of the links V of the interfaces P, corresponding expected values E are then stored in the memory, with which the different comparison values from the linking variants are compared. Depending on the linkage variant, the current comparison value S is checked against one or the other expected value E.

Wird an einer Stelle der Vergleichsprüfung der Vergleichswerte S mit den Erwartungswerten E der Prüfwerte C ein Differenz festgestellt, wird das Programm A beispielsweise angehalten und gegebenenfalls neu gestartet oder an einer definierten Stelle mit einem vorgegebene Datenwort fortgesetzt. Der Prüfalgorithmus berechnete beispielsweise den Prüfwert C aus den Indikatoren ID mittels einer zyklischen Redundanzprüfung durch eine Polynomdivision einer Bitfolge.Becomes at one point of the comparison test of the comparison values S with the expected values E of the test values C a difference detected, the program A is stopped, for example, and if necessary, restarted or at a defined point with a given data word continued. The test algorithm For example, calculated the test value C from the indicators ID by means of a cyclic redundancy check by a Polynomial division of a bit sequence.

In 2b ist ein zweites Programmablaufdiagramm der in 1a dargestellten, überwachten, zweiten Reihenfolge R2 der Module B des Programms A gezeigt. Der Unterschied in diesem zweiten Ausführungsbeispiel zu dem in 2a dargestellten ersten Ausführungsbeispiels der Überwachung der Ausführungsreihenfolge der Module B und der korrekten Verknüpfung V der Schnittstellen P der Module B ist, dass die Ausführung des fünften Moduls B5 und des sechsten Moduls B6 zwischen der Übertragung des Datenworts von der ersten Schnittstelle P1 des ersten Moduls B1 an die dritten Schnittstelle P3 des zweiten Moduls B2 erfolgt. Da nur die zweite Reihenfolge R2 der Verknüpfungen V der Schnittstellen P1, P3, P5, P10, P11 in dieser beiden Ausführungsbeispiele aus 2a und 2b überwacht wird, werden hier auch ein korrekter Vergleich der Vergleichswerte S der Prüfwerte C mit den Erwartungswerten E des Prüfwerte C ermittelt.In 2 B is a second program flowchart of the in 1a shown, monitored, second order R2 of the modules B of the program A shown. The difference in this second embodiment from that in FIG 2a The first embodiment of monitoring the execution order of the modules B and the correct linking V of the interfaces P of the modules B is shown in that the execution of the fifth module B5 and the sixth module B6 between the transmission of the data word from the first interface P1 of the first module B1 the third interface P3 of the second module B2 takes place. Since only the second order R2 of the links V of the interfaces P1, P3, P5, P10, P11 in these two embodiments of 2a and 2 B A correct comparison of the comparison values S of the test values C with the expected values E of the test values C is also determined here.

In 2c ist der Fall eines unerlaubten, dritten Programmablaufdiagramms der in 1b überwachten, zweiten Reihenfolge R2 der Module B des Programms A gezeigt, welches keine gültige Prüfsumme C ermittelt. Die erste Schnittstelle P1 des ersten Moduls B1 ist durch eine fehlerhafte Verknüpfung FV mit der zehnten Schnittstelle P10 des vierten Moduls B4 direkt verbunden, da dadurch die Abarbeitung des zweiten Moduls B2 übergangen wird und somit die in der Konfigurationsphase vorgegeben Ausführungsreihenfolge der Module B des Programms A verändert wurde, liefert die Überprüfung des Vergleichswerts S der Prüfwerte C mit dem abgespeicherten Erwartungswert E beispielsweise an der elften Schnittstelle P11 kein korrektes Ergebnis.In 2c is the case of an unauthorized third program flow chart of the 1b monitored, second order R2 of the modules B of the program A, which does not determine a valid checksum C. The first interface P1 of the first module B1 is directly connected to the tenth interface P10 of the fourth module B4 by a faulty link FV, as this bypasses the execution of the second module B2 and thus the execution order of the modules B of the program A specified in the configuration phase was changed, the review of the comparison value S of the test values C with the stored expected value E, for example, at the eleventh interface P11 provides no correct result.

In 3a ist der Fall einer Kreuzverknüpfung K gezeigt, bei dem die erste Schnittstelle P1 des ersten Moduls B1 nicht mit der dritten Schnittstelle P3 des zweiten Moduls B2 sondern mit der sechsten Schnittstelle P6 des fünften Moduls B5 verknüpft ist. Demzufolge ist die zweite Schnittstelle P2 des ersten Moduls B1 nicht mit der dritten Schnittstelle P3 des zweiten Moduls B2 und nicht mit der sechsten Schnittstelle P6 des fünften Moduls B5 verknüpft. Durch diese Kreuzverknüpfung K der Module B1, B2, B3 wird zwar die Ausführungsreihenfolge des Ablaufs des Programms A nicht gestört, jedoch erzeugt die Kreuzverknüpfung K keine korrekten Vergleichswerte S der Prüfwerte C bei der Berechnung des der zweiten Schnittstelle P2 anstatt der ersten Schnittstelle P1 bei einer alleinigen Überwachung der zweiten Reihenfolge R2 der Schnittstellen P1, P3, P5 P10, P11.In 3a the case of a cross-link K is shown, in which the first interface P1 of the first module B1 is not linked to the third interface P3 of the second module B2 but to the sixth interface P6 of the fifth module B5. As a result, the second interface P2 of the first module B1 is not linked to the third interface P3 of the second module B2 and not to the sixth interface P6 of the fifth module B5. Although the execution order of the course of the program A is not disturbed by this cross-linking K of the modules B1, B2, B3, the cross-link K does not produce correct comparison values S of the check values C in the calculation of the second interface P2 instead of the first interface P1 at one sole monitoring of the second order R2 of the interfaces P1, P3, P5 P10, P11.

In 3b ist der Fall eines erlaubten, vierten Programmablaufdiagramms der in 3a überwachten, zweiten Reihenfolge R2 der Module B des Programms A gezeigt, welches aufgrund einer fehlerhaften Verknüpfung FV oder einer Kreuzverknüpfung K keine gültige Prüfwerte C bei der Überprüfung der Verknüpfung der Schnittstellen P1, P3, P5, P10, P11 der zweiten Reihenfolge R2 ermitteln kann. In dem vierten Programmablaufdiagramm wird die im ersten Modul B1 durch den zweiten Indikator ID2 gebildeten Vergleichswert S der Prüfsumme C über die Kreuzverknüpfung K an die dritte Schnittstelle P3 mit dem im zweiten Modul B2 ermittelten Daten übermittelt. Dadurch wird die Bedingungen der zweiten Reihenfolge R2 der Schnittstelle P1, P3, P5, P10, P11 nicht eingehalten und somit wird eine fehlerhafte Verknüpfung V der Schnittstellen P der einzelnen Module B festgestellt. In diesem Fall müssen beispielsweise in einer Konfigurationsphase die einzelnen Verknüpfungen V der einzelnen Schnittstellen P der Module B erneut definiert werden.In 3b is the case of an allowed, fourth program flowchart of FIG 3a monitored, second order R2 of the module B of the program A, which due to a faulty link FV or a cross-link K can not determine valid test values C in the review of the linkage of the interfaces P1, P3, P5, P10, P11 of the second order R2. In the fourth program flow diagram, the comparison value S of the checksum C formed in the first module B1 by the second indicator ID2 is transmitted via the cross-link K to the third interface P3 with the data determined in the second module B2. As a result, the conditions of the second sequence R2 of the interface P1, P3, P5, P10, P11 is not met, and thus a faulty connection V of the interfaces P of the individual modules B is detected. In this case, for example, in a configuration phase, the individual links V of the individual interfaces P of the modules B must be redefined.

AA
Programme, Prozesseprograms, processes
RR
Reihen, Reihenfolgenseries, sequences
R1R1
erste Reihe, erste Reihenfolgefirst Row, first order
R2R2
zweite Reihe, zweite Reihenfolgesecond Row, second order
R3R3
dritte Reihe, dritte Reihenfolgethird Row, third order
BB
Modulemodules
B1B1
erstes Modulfirst module
B2B2
zweites Modulsecond module
B3B3
drittes Modulthird module
B4B4
viertes Modulfourth module
B5B5
fünftes Modulfifth module
B6B6
sechstes Modulsixth module
P1P1
erste Schnittstellefirst interface
P2P2
zweite Schnittstellesecond interface
P3P3
dritte Schnittstellethird interface
P4P4
vierte Schnittstellefourth interface
P5P5
fünfte Schnittstellefifth interface
P6P6
sechste Schnittstellesixth interface
P7P7
siebte Schnittstelleseventh interface
P8P8
achte Schnittstelleeighth interface
P9P9
neunte Schnittstelleninth interface
P10P10
zehnte Schnittstelletenth interface
P11P11
elfte Schnittstelleeleventh interface
P12P12
zwölfte Schnittstelletwelfth interface
P13P13
dreizehnte Schnittstellethirteenth interface
IDID
Indikatorenindicators
ID1ID1
erster Indikatorfirst indicator
ID2ID2
zweiter Indikatorsecond indicator
ID3ID3
dritter Indikatorthird indicator
ID4ID4
vierter Indikatorfourth indicator
ID5ID5
fünfter Indikatorfifth indicator
ID6ID6
sechster Indikatorsixth indicator
ID7ID7
siebter Indikatorseventh indicator
ID8ID8
achter Indikatoreight indicator
ID9ID9
neunter Indikatorninth indicator
ID10ID10
zehnter Indikatortenth indicator
ID11ID11
elfter Indikatoreleventh indicator
ID12ID12
zwölfter Indikatortwelfth indicator
ID13ID13
dreizehnter Indikatorthirteenth indicator
Ee
Erwartungswertexpected value
SS
Vergleichswertcomparison value
CC
Prüfwertcheck value
KK
Kreuzverknüpfungcross-linking
VV
Verknüpfungshortcut
FVFV
Fehlerhafte Verknüpfungfaulty shortcut

ZITATE ENTHALTEN IN DER BESCHREIBUNGQUOTES INCLUDE IN THE DESCRIPTION

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

Zitierte PatentliteraturCited patent literature

  • - EP 1043641 A2 [0007] - EP 1043641 A2 [0007]
  • - DE 102007015369 A1 [0008] - DE 102007015369 A1 [0008]

Zitierte Nicht-PatentliteraturCited non-patent literature

  • - DIN EN 61508 [0003] - DIN EN 61508 [0003]
  • - DIN EN 61511 [0003] - DIN EN 61511 [0003]
  • - „Wirksamkeit von zeitlichen und logischen Programmablaufüberwachungen beim Betrieb von Rechnersystemen" von H. Gall, K. Kemp [0006] - "Effectiveness of temporal and logical program monitoring during the operation of computer systems" by H. Gall, K. Kemp [0006]

Claims (11)

Verfahren zur Überwachung der Ausführungsreihenfolge und der Datenübertragung eines in einzelne Module (B) unterteilten Programms (A), – wobei die einzelnen Module (B) des Programms (A) mittels definierter Schnittstellen (P) entsprechend einer Reihenfolge (R) miteinander verbunden werden und zwischen den einzelnen Modulen (B) Daten über diese Schnittstellen (P) nach einem vorgegeben Standard übertragen werden, – wobei jeder Schnittstelle (P) eines Moduls (B) einen entsprechende Indikator (ID) zugeordnet wird, – wobei die zugeordneten Indikatoren (ID) bei der Datenübertragung zwischen den einzelnen Schnittstellen (P) mit übertragen werden, – wobei aus den Indikatoren (ID) der einzelnen Schnittstellen (P) in Abhängigkeit der Verknüpfung (V) der Reihefolge (R) der Module (B) durch einen Prüfalgorithmus zumindest ein Prüfwert (C) gebildet wird.Procedure for monitoring the execution order and the data transmission of a subdivided into individual modules (B) Program (A), - where the individual modules (B) of the Program (A) by means of defined interfaces (P) accordingly in an order (R) are interconnected and between the individual modules (B) data via these interfaces (P) are transmitted according to a given standard, - in which Each interface (P) of a module (B) has a corresponding indicator (ID) is assigned, - where the associated indicators (ID) during the data transfer between the individual interfaces (P) are transmitted with - where from the Indicators (ID) of the individual interfaces (P) depending on the linking (V) of the series (R) of the modules (B) a test algorithm at least one test value (C) is formed. Verfahren nach Anspruch 1, wobei in der Konfigurationsphase des Programms (A), in der die Verknüpfung (V) der Reihefolge (R) der Module (B) festgelegt wird, zumindest ein Erwartungswerte (E) des Prüfwerts (C) ermittelt wird.The method of claim 1, wherein in the configuration phase of the program (A), in which the join (V) of the order (R) of the modules (B), at least one expected value (E) of the test value (C) is determined. Verfahren nach zumindest einem der Ansprüche 1 oder 2, wobei der Erwartungswert (E) des Prüfwerts (C) in der Konfigurationsphase in einer Speichereinheit abgelegt wird.Method according to at least one of the claims 1 or 2, where the expected value (E) of the test value (C) is stored in the configuration phase in a memory unit. Verfahren nach zumindest einem der Ansprüche 1 oder 2, wobei mehrer Erwartungswerte (E) der Prüfwerte (C) für verschiedene Varianten der korrekten Verknüpfungen (V) der Schnittstellen P der Module B in einer Reihenfolge (R) in der Konfigurationsphase in einer Speichereinheit abgelegt wird.Method according to at least one of the claims 1 or 2, where several expected values (E) of the test values (C) for different variants of the correct links (V) of the interfaces P of the modules B in an order (R) in the configuration phase is stored in a memory unit. Verfahren nach zumindest einem der Ansprüche 1 oder 2, wobei in der Arbeitsphase des Programms (A), in der die Module (B) nach einer in der Konfigurationsphase vorgegebenen Reihenfolge (R) abgearbeitet werden, zumindest ein Vergleichswert (S) des Prüfwerts (C) ermittelt wird.Method according to at least one of the claims 1 or 2, during the working phase of the program (A), in which the Module (B) according to an order specified in the configuration phase (R) are processed, at least one comparison value (S) of the test value (C) is determined. Verfahren nach zumindest einem der Ansprüche 1, 2, 3, 4 oder 5, wobei der Erwartungswert (E) des Prüfwerts (C) aus der Konfigurationsphase mit dem Vergleichswert (S) des Prüfwerts (C) aus der Arbeitsphase durch den Prüfalgorithmus verglichen wird.Method according to at least one of the claims 1, 2, 3, 4 or 5, wherein the expected value (E) of the test value (C) from the configuration phase with the comparison value (S) of the test value (C) is compared from the working phase by the test algorithm. Verfahren nach zumindest einem der Ansprüche 1, 2, 3, 4, 5 oder 6, wobei der aktuelle Vergleichswert (S) des Prüfwerts (C) erst am Ende eine Reihenfolge (R) der verknüpften Module (B) mit dem Erwartungswert (E) durch den Prüfalgorithmus verglichen wird.Method according to at least one of the claims 1, 2, 3, 4, 5 or 6, wherein the current comparison value (S) of the Check value (C) only at the end of an order (R) of the linked Module (B) with the expected value (E) by the test algorithm is compared. Verfahren nach zumindest einem der Ansprüche 6 oder 7, wobei bei einer Übereinstimmung des Erwartungswerts (E) des Prüfwerts (C) mit dem Vergleichswert (S) des Prüfwerts (C) der korrekte logische Ablauf des Programms (A) und die korrekte Verknüpfung (V) der Schnittstellen (P) der einzelnen Modulen (B) angenommen wird.Method according to at least one of the claims 6 or 7, wherein at a match of the expected value (E) of the test value (C) with the reference value (S) of the test value (C) the correct logic flow of the program (A) and the correct Link (V) of the interfaces (P) of the individual modules (B) is accepted. Verfahren nach zumindest einem der Ansprüche 7 oder 8, wobei bei einer Nichtübereinstimmung des Erwartungswerts (E) des Prüfwerts (C) mit dem Vergleichswert (S) des Prüfwerts (C) das Programm (A) neu gestartet wird oder eine Fehlermeldung ausgegeben wird.Method according to at least one of the claims 7 or 8, with a mismatch of the expected value (E) of the test value (C) with the reference value (S) of the test value (C) the program (A) is restarted or an error message is issued. Verfahren nach zumindest einem der vorhergehenden Ansprüche, wobei die Bildung des Prüfwerts (C) mittels einer zyklischen Redundanzprüfung der Indikatoren (ID) durch den Prüfalgorithmus durchgeführt wird.Method according to at least one of the preceding Claims, the formation of the test value (C) by means of a cyclic redundancy check of the indicators (ID) is performed by the checking algorithm. Verfahren nach Anspruch 1, wobei die Module (B) des Programms (A) mittels definierter Schnittstellen (P) statisch und/oder dynamisch zur Laufzeit des Programms (A) in der Arbeitsphase als Reihefolge (R) miteinander verknüpft werden.Method according to claim 1, wherein the modules (B) of the program (A) by means of defined interfaces (P) static and / or dynamically at runtime of the program (A) in the work phase be linked together as a series (R).
DE102007062920A 2007-12-21 2007-12-21 Method for monitoring the logical execution order and the data transmission of a program subdivided into individual modules Ceased DE102007062920A1 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
DE102007062920A DE102007062920A1 (en) 2007-12-21 2007-12-21 Method for monitoring the logical execution order and the data transmission of a program subdivided into individual modules
PCT/EP2008/067373 WO2009080550A2 (en) 2007-12-21 2008-12-12 Method for monitoring the logical execution sequence and the data transmission of a program, which is divided into individual modules

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE102007062920A DE102007062920A1 (en) 2007-12-21 2007-12-21 Method for monitoring the logical execution order and the data transmission of a program subdivided into individual modules

Publications (1)

Publication Number Publication Date
DE102007062920A1 true DE102007062920A1 (en) 2009-06-25

Family

ID=40679232

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102007062920A Ceased DE102007062920A1 (en) 2007-12-21 2007-12-21 Method for monitoring the logical execution order and the data transmission of a program subdivided into individual modules

Country Status (2)

Country Link
DE (1) DE102007062920A1 (en)
WO (1) WO2009080550A2 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102009047724A1 (en) 2009-12-09 2011-06-16 Endress + Hauser Wetzer Gmbh + Co Kg Program sequence monitoring method for operating field device utilized for e.g. measuring physical parameter at defined areas in process plant, involves comparing test value with another test value to monitor program sequence

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0498367A2 (en) * 1991-02-05 1992-08-12 Mitsubishi Denki Kabushiki Kaisha Program debugging device and process
DE19617332A1 (en) * 1996-04-30 1997-08-07 Siemens Ag Process system functional test method for e.g. nuclear reactor
EP1043641A2 (en) 1999-04-09 2000-10-11 Siemens Aktiengesellschaft Failsafe automationsystem with standard-CPU and method for a failsafe automationsystem
EP1063591A2 (en) * 1999-05-22 2000-12-27 Lucas Industries Limited Method and apparatus for detecting a fault condition in a computer processor
DE10063350C1 (en) * 2000-12-19 2002-07-18 Siemens Ag Process for monitoring data processing and transmission
DE102004018857A1 (en) * 2004-04-19 2005-11-10 Elektro Beckhoff Gmbh Unternehmensbereich Industrie Elektronik safety control
DE102007015369A1 (en) 2006-12-29 2008-07-03 Endress + Hauser Gmbh + Co. Kg Critical functions logical program flow monitoring method for use in measuring device of automation and processing control technique, involves storing actually lying identification symbols as predecessor signature for monitoring cycle

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2702577B1 (en) * 1993-03-11 1995-04-28 Gec Alsthom Transport Sa Method for checking the correct execution of a multitasking computer program.
JP4849606B2 (en) * 2006-04-28 2012-01-11 株式会社日立製作所 Control flow error detection method, data processing apparatus, and compiler

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0498367A2 (en) * 1991-02-05 1992-08-12 Mitsubishi Denki Kabushiki Kaisha Program debugging device and process
DE19617332A1 (en) * 1996-04-30 1997-08-07 Siemens Ag Process system functional test method for e.g. nuclear reactor
EP1043641A2 (en) 1999-04-09 2000-10-11 Siemens Aktiengesellschaft Failsafe automationsystem with standard-CPU and method for a failsafe automationsystem
EP1063591A2 (en) * 1999-05-22 2000-12-27 Lucas Industries Limited Method and apparatus for detecting a fault condition in a computer processor
DE10063350C1 (en) * 2000-12-19 2002-07-18 Siemens Ag Process for monitoring data processing and transmission
DE102004018857A1 (en) * 2004-04-19 2005-11-10 Elektro Beckhoff Gmbh Unternehmensbereich Industrie Elektronik safety control
DE102007015369A1 (en) 2006-12-29 2008-07-03 Endress + Hauser Gmbh + Co. Kg Critical functions logical program flow monitoring method for use in measuring device of automation and processing control technique, involves storing actually lying identification symbols as predecessor signature for monitoring cycle

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
"Wirksamkeit von zeitlichen und logischen Programmablaufüberwachungen beim Betrieb von Rechnersystemen" von H. Gall, K. Kemp
DIN EN 61508
DIN EN 61511

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102009047724A1 (en) 2009-12-09 2011-06-16 Endress + Hauser Wetzer Gmbh + Co Kg Program sequence monitoring method for operating field device utilized for e.g. measuring physical parameter at defined areas in process plant, involves comparing test value with another test value to monitor program sequence

Also Published As

Publication number Publication date
WO2009080550A2 (en) 2009-07-02
WO2009080550A3 (en) 2009-11-12

Similar Documents

Publication Publication Date Title
EP2210151B1 (en) Field device for determining or monitoring a process variable in process automation
EP2359201B1 (en) Method for determining a security step and security manager
EP2927819B1 (en) Method for automatically processing a number of protocol files of an automation system
DE102014111361A1 (en) Method for operating a safety control and automation network with such a safety control
DE102017205832A1 (en) Method for parameterizing a field device and parameterizable field device
WO2017102211A1 (en) Access key for a field device
EP2433189B1 (en) Method for analyzing message archives and corresponding computer program to generate a finite states machine
DE102009047724A1 (en) Program sequence monitoring method for operating field device utilized for e.g. measuring physical parameter at defined areas in process plant, involves comparing test value with another test value to monitor program sequence
DE102007062920A1 (en) Method for monitoring the logical execution order and the data transmission of a program subdivided into individual modules
DE102007015369A1 (en) Critical functions logical program flow monitoring method for use in measuring device of automation and processing control technique, involves storing actually lying identification symbols as predecessor signature for monitoring cycle
EP3470939A1 (en) Method and devices for monitoring the security integrity of a security function provided by a security system
EP3341807B1 (en) Method and system for maintaining field devices in an automation plant
DE102013101579A1 (en) Field device for determining or monitoring a process variable in automation technology
EP0961973B1 (en) Redundant electronic device with certified and non-certified channels and method therefor
DE102020209228A1 (en) Method for monitoring at least one computing unit
EP1958101B1 (en) System and method for the automatic verification of planning results
DE19507134C1 (en) Automatic extn. of technical know-how from prod. and process model
DE3413330A1 (en) Method for monitoring and localising a fault in the fabrication cycles of an automatic production line and a device for carrying it out
DE102019109353B3 (en) Dynamic anomaly detection and treatment
EP3709113B1 (en) Data integrity testing method
DE10228142B4 (en) System for securing software components and / or computer programs
EP3741196A1 (en) Method for determining a fault cause in an agricultural working machine
EP1993014B1 (en) Method for localising defective hardware components and/or system errors in a production facility
WO2015044011A1 (en) User interface for associating the installation-specific signals with programming-specific generic signals for a control system of a technical installation
EP4181000A1 (en) Method and computing environment for creating and applying a test algorithm for computing operations

Legal Events

Date Code Title Description
OM8 Search report available as to paragraph 43 lit. 1 sentence 1 patent law
8110 Request for examination paragraph 44
R016 Response to examination communication
R002 Refusal decision in examination/registration proceedings
R003 Refusal decision now final

Effective date: 20111220