WO2002037197A2 - Prüfverfahren und prüfvorrichtung zur inbetriebnahme von mittels einer programmlogik gesteuerten systemen - Google Patents

Prüfverfahren und prüfvorrichtung zur inbetriebnahme von mittels einer programmlogik gesteuerten systemen Download PDF

Info

Publication number
WO2002037197A2
WO2002037197A2 PCT/DE2001/004067 DE0104067W WO0237197A2 WO 2002037197 A2 WO2002037197 A2 WO 2002037197A2 DE 0104067 W DE0104067 W DE 0104067W WO 0237197 A2 WO0237197 A2 WO 0237197A2
Authority
WO
WIPO (PCT)
Prior art keywords
call
program logic
block
calls
module
Prior art date
Application number
PCT/DE2001/004067
Other languages
English (en)
French (fr)
Other versions
WO2002037197A3 (de
Inventor
Thilo Opaterny
Original Assignee
Siemens Aktiengesellschaft
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 Aktiengesellschaft filed Critical Siemens Aktiengesellschaft
Priority to EP01992912A priority Critical patent/EP1330685B1/de
Publication of WO2002037197A2 publication Critical patent/WO2002037197A2/de
Priority to US10/428,837 priority patent/US7117395B2/en
Publication of WO2002037197A3 publication Critical patent/WO2002037197A3/de

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/0426Programming the control sequence

Definitions

  • the invention relates to a testing method and a Prufvorraum for commissioning controlled by means of a program logic ⁇ systems, preferably approximately systems of automation ⁇ .
  • Automation systems generally represent cybernetic systems that are constantly running and self-regulating and / or regulating themselves. To control these processes, program logics are used, which are usually composed of program modules that can be called up as required and repeatedly. The programming technology required for this is called cyclic programming.
  • the programmer has to disassemble the respective task as much as possible, so that he splits it into subtasks and programs reusable modules for the solution.
  • graphic programming languages such as a contact plan or function plan
  • These building blocks consist of networks.
  • the networks represent operations that link the operands used within the program logic with one another.
  • the networks ultimately represent a logical link between the operands used.
  • Each block of an interface used within the described network can be called by other blocks.
  • the respective blocks are called in the program by means of a corresponding call.
  • the program After expiration of the relevant block, the program returns to a return address that designates the location of the statement following the block call.
  • the required return addresses are usually stored on a so-called stack. Each time a further block is called, an additional return address must be stored on the stack. The stack thus grows with every building call. After the program returns to the specified return address, the information of the return address does not have to be stored any further. The deposited stack shrinks around this information.
  • the return address consists of a construction name, that is the name of the calling block, and the value of the address payer, which designates the location of the program statement to be executed after the called block.
  • the return address or the information stored in the stack for each block call thus represents a unique designation of the respective block call.
  • the invention is therefore based on the object of creating a test method and a test device for program logics, in particular for use in automation systems, which enables the selection of a specific sequence of a selected module for its observation.
  • This problem can be solved by means of a test method with the features of claim 1 and by a testing device with the features of claim 7.
  • the definition of a specific block call by the Inbet ⁇ ebsetzer represents a significant problem because, due to commonly applied in programs recursion, so the fact that within the blocks called in turn blocks, possibly even the called construction ⁇ stone are themselves invoked the calls relative unuber - are visible. Therefore, the selection of a particular call erfor ⁇ changed first the assessment of all available modules and all possible call paths, to be sure, to determine the selected block and the ge ⁇ desired call.
  • the return address that may be suitable for defining a specific call is usually not available.
  • a cross-reference list of all identifiers used in the program logic and their places of use, which arise in the different translation runs of the program logic, and their places of use are first selected with regard to construction site identifiers of interest here and their places of use.
  • this list of construction designation identifiers the construction designation designation that is of interest in connection with the program part to be checked can then be selected.
  • An overview of the calls or part of the calls is generated and displayed for this selected module. Based on the knowledge that the run of a block is clearly defined by its call, a clear selection of the specific call and thus a specific run of the Modules take place, with exactly this run of the module being output for observation.
  • the erfmdungsgedorfe test method thus provides em tool for the programmer or commissioning an automation ⁇ insurance system, which helps it select a specific block call and can track the passage of this block ⁇ invocation to Pruf societyen.
  • the starting point of the test procedure is the generation of a cross-reference list, which includes all the places of use of the identifiers used, that is to say also the component identifiers of interest.
  • the cross-reference list thus includes the respective construction name and its return address for each call.
  • everyone is by the return address
  • the overview display of the calls of a selected module is constructed as a hierarchical call tree. This overview shows the ranking and in particular the recursions for the translator or programmer at a glance. To avoid creating an endless loop, the calculation of a call path is terminated when a return address is given multiple times.
  • Calls selected in this way can then advantageously be tracked by the programmer or commissioning engineer using a corresponding observation method.
  • test device presented for solving the task according to the invention advantageously provides a display device for the hierarchical representation of the calls of a selected module.
  • this test device of an advantageous embodiment is provided with a marking tool with which certain calls can be marked and selected in the aforementioned display and the calls of a module.
  • the drawing shows a possible representation of the calls of a block.
  • the figure shows a call tree.
  • a cross-reference list is created as part of a special translation step.
  • the cross-reference list contains all identifiers contained within the translated program logic. If you summarize the cross-reference lists obtained during all translation steps, a cross-reference list is created that includes all identifiers used in the program logic and their places of use.
  • This cross-reference list is temporarily stored for later evaluation.
  • all construction designation identifiers are selected from the cross-reference list.
  • a subset of the cross-reference list mentioned thus arises, which includes all the designation of the construction site and their places of use.
  • a call tree is then calculated on the basis of the information contained in the cross-reference list, that is to say the places of use assigned to this construction site identifier.
  • the places of use include the block call and the return address.
  • the return address designates the location of the program statement to be processed after the block has been processed and the name of the calling block.
  • the call tree can be calculated from this information.
  • the correspondingly selected cross-reference list is evaluated with regard to a selected building designation identifier in such a way that in a first step all points of use of the selected building designation identifier, i.e. all building blocks calling this selected building block, are compiled and in a next step the analysis of the subsequent lower recursion level in turn calling construction stones of these blocks are recorded and so on until finally all call paths are completely recorded.
  • each call path contained in the call tree is checked to determine whether a return address appears more than once. In this case the calculation of the call path is aborted and the corresponding path is marked. The calculation of the call tree is then continued on the basis of the other points of use. Otherwise, the program for calculating the call tree was at this point in an endless loop.
  • the call path containing the recursion can also be selected for viewing.
  • the recursion depth cannot be determined more closely due to the abort described above.
  • the call tree shown in the figure comprises nine numbered lines 1-9. In the exemplary embodiment, these are
  • Block FB10 is called by blocks FB5 and OB1 according to the representation of the call tree m in lines 2 and 9.
  • the block FB5 is called by the block FB3 in accordance with the representations in lines 3 and 6.
  • Block FB3 is called by block OB1 according to lines 4, 5, 7 and 8.
  • the call tree also contains information about the call location of the respective block.
  • block FB10 is called by block FB5 according to line 2 through the fourth operation of a network NW10.
  • the block FB5 is in turn called according to line 3 by the sixth operation of the network NW4.
  • the call tree shown in the figure is shown to the user or the commissioning engineer by means of a viewer.
  • a marking tool for selecting individual lines and thus a specific call path is assigned to this viewer.
  • By selecting individual lines, a specific call to a specific module can be defined.
  • the columnar offset of the individual lines 1 - 9 documents the different levels of recursion.
  • this defines the call of block FB10, which is caused by block FB5 in network NW10 during the fourth operation if this block FB5 is from block FB3 in network NW4 on the sixth Operation is called and again this block FB3 is selected by the block OB1 in the network NW5 in the second operation.
  • line 2 can be selected so that block FB10 is only observed if it is called by block FB5 through the fourth operation in network NW10. However, an observation of the block FB10 occurs regardless of whether the block FB5 factory by the block FB3 in the network is called ⁇ NW4 or NW6. Ultimately, the selection of line 2 marks several calls to block FB10. Such a selection would make sense if it is certain that a certain module should be checked, but it is not exactly clear which call should be observed.
  • test method and a test device which, with unprecedented ease of use, enables the commissioning engineer or programmer of an automation system to specifically define specific calls to a selected module and thus select them for further observation.

Abstract

Im Zusammenhang mit der Inbetriebnahme von mittels einer Programmlogik gesteuerten Systemen, vorzugsweise von Automatisierungssystemen, besteht Bedarf, gezielt einzelne Programmbereiche zu beobachten. Derartige Programmbereiche sind in der Regel durch ein oder mehrere Bausteine eines Programms beschrieben. Dabei stellt sich das Problem, dass in Verbindung mit den Bausteinen die Aufrufe der Bausteine zu bezeichnen sind, da diese üblicherweise mehrfach verwendet werden, um eine gezielte Analyse zu ermöglichen.Durch ein neuartiges Prüfverfahren und eine Prüfvorrichtung wird ein hierarchischer Aufrufbaum, der die einem auswählbaren Baustein zugeordneten Aufrufe zeigt, berechnet und zur Anzeige gebracht. Durch Auswahl einzelner Zeilen dieses Aufrufbaums können ein oder mehrere Aufrufe des ausgewählten Bausteins zur Beobachtung ausgewählt werden.

Description

Beschreibung
Prüfverfahren und Prufvorrichtung zur Inbetriebnahme von mittels einer Programmlogik gesteuerten Systemen
Die Erfindung betrifft ein Prüfverfahren und eine Prufvorrichtung zur Inbetriebnahme von mittels einer Programm¬ logik gesteuerten Systemen, vorzugsweise von Automatisie¬ rungssystemen .
Automatisierungssysteme stellen m der Regel permanent laufende und sich dabei selbst steuernde und/oder regelnde kybernetische Systeme dar. Zur Steuerung dieser Ablaufe werden Programmlogiken eingesetzt, die üblicherweise aus Program modulen zusammengesetzt sind, die bedarfsweise und immer wiederkehrend aufrufbar sind. Die hierzu erforderliche Programmiertechnik wird als zyklische Programmierung bezeichnet .
Der Programmierer muss zur Losung einer Steuerungs- und/oder Regelungsaufgabe die jeweilige Aufgabe möglichst zerlegen, so dass er sie in Teilaufgaben aufspaltet und zu deren Losung wiederverwendbare Module programmiert. Im Falle von graphischen Programmiersprachen, wie etwa Kontaktplan oder Funk- tionsplan, spricht man davon, dass die betreffenden Anwenderprogramme aus Bausteinen zusammengesetzt sind. Diese Bausteine bestehen aus Netzwerken. Die Netzwerke stellen Operationen dar, die die innerhalb der Programmlogik verwendeten Operanden miteinander verknüpfen. Die Netzwerke stellen letztlich eine logische Verknüpfung der verwendeten Operanden dar .
Jeder innerhalb des beschriebenen Netzwerks verwendete Baustein einer Schnittstelle kann von anderen Bausteinen auf- gerufen werden. Die jeweiligen Bausteine werden im Programm mittels eines entsprechenden Aufrufs aufgerufen. Nach Ablauf des betreffenden Bausteins springt das Programm an eine Rucksprungadresse zurück, die den Ort des auf den Bausteinaufruf folgenden Statements bezeichnet. Üblicherweise werden hierzu die benotigten Rucksprungadressen auf einem so genannten Stapel abgelegt. Bei jedem Aufruf eines weiteren Bausteins muss eine zusätzliche Rucksprungadresse auf dem Stapel hinterlegt werden. Der Stapel wachst somit bei jedem Bau- stemaufruf . Nach Ruckkehr des Programms an die angegebene Rucksprungadresse muss die Information der Rucksprungadresse nicht weiter gespeichert werden. Der abgelegte Stapel schrumpft um diese Information. Die Rucksprungadresse besteht aus einem Baustem-Bezeichner, also der Bezeichnung des aufrufenden Bausteins, und dem Wert des Adresszahlers, der den Ort des nach Ablauf des aufgerufenen Bausteins auszuführenden Programmstatements bezeichnet. Die Rucksprungadresse bzw. die m dem Stapel abgelegte Information zu jedem Bausteinaufruf stellt somit eine eindeutige Bezeichnung des jeweiligen Bau- stemaufrufs dar.
Im Zusammenhang mit der Inbetriebsetzung von Automatisierungssystemen stellt sich des Öfteren die Aufgabe, die zur Steuerung und/oder Regelung des Automatisierungssystems eingesetzte Programmlogik m bestimmten Situationen, also unter bestimmten Parametern beobachten zu wollen. Dabei erfordert das Beobachten des Programms unter bestimmten definierten Bedingungen oftmals die Beobachtung eines bestimmten Bausteins.
Der Erfindung liegt daher die Aufgabe zugrunde, ein Pruf- verfahren und eine Prufvorrichtung für Programmlogiken, insbesondere zum Einsatz in Automatisierungssystemen, zu schaffen, das bzw. die die Auswahl eines bestimmten -Ablaufs eines ausgewählten Bausteins zu dessen Beobachtung ermöglicht. Die Losung dieser Aufgabe gelingt mittels eines Prüfverfahrens mit den Merkmalen des Anspruchs 1 sowie durch eine Pruf- vorrichtung mit den Merkmalen des Anspruchs 7.
Vorteilhafte Ausgestaltungen der erfmdungsgemaßen Losung sind gemäß den Merkmalen der Anspr che 2 bis 6 sowie der Ansprüche 8 und 9 gegeben.
Die Definition eines bestimmten Bausteinaufrufs durch den Inbetπebsetzer stellt ein erhebliches Problem dar, da aufgrund üblicherweise in Programmen angelegten Rekursionen, also der Tatsache, dass innerhalb der aufgerufenen Bausteine wiederum Bausteine, möglicherweise sogar der aufgerufene Bau¬ stein selbst, aufgerufen werden, die Aufrufe relativ unuber- sichtlich sind. Die Auswahl eines bestimmten Aufrufs erfor¬ dert daher zunächst die Prüfung aller möglichen Bausteine und aller möglichen Aufrufpfade, um sicher zu sein, auch den ge¬ wünschten Aufruf des ausgewählten Bausteins zu bestimmen. Die zur Definition eines bestimmten Aufrufs möglicherweise geeig- nete Rucksprungadresse steht dabei üblicherweise nicht zur Verfugung .
Bei dem erfmdungsgemaßen Verfahren wird anhand einer m den unterschiedlichen Ubersetzungslaufen der Programmlogik ent- stehenden Querverweisliste aller m der Programmlogik eingesetzten Bezeichner und deren Verwendungsstellen zunächst hinsichtlich hier interessierenden Baustem-Bezeichnern und deren Verwendungsstellen selektiert. Mit dieser Liste der Baustem-Bezeichner kann dann der im Zusammenhang mit dem zur Überprüfung anstehenden Programmteil interessierende Baustem-Bezeichner ausgewählt werden. Zu diesem ausgewählten Baustein wird eine Ubersichtsdarstellung der Aufrufe oder eines Teils der Aufrufe erzeugt und dargestellt. Aus der Erkenntnis heraus, dass der Durchlauf eines Bausteins durch seinen Aufruf eindeutig definiert ist, kann dann anhand der erwähnten Ubersichtsdarstellung eine eindeutige Auswahl des bestimmten Aufrufs und damit eines bestimmten Durchlaufs des Bausteins erfolgen, wobei genau dieser Durchlauf des Bausteins zur Beobachtung ausgegeben wird.
Das erfmdungsgemaße Prüfverfahren stellt somit em Werkzeug für den Programmierer oder Inbetriebnehmer eines Automatisie¬ rungssystems bereit, mit dessen Hilfe er einen bestimmten Bausteinaufruf auswählen und den Durchlauf dieses Baustein¬ aufrufs zu Prufzwecken verfolgen kann.
Em derartiges Prüfverfahren ist insbesondere m Verbindung mit den beschriebenen graphischen Programmiersprachen hilfreich. Die Leistungsfähigkeit aber auch die Komplexität dieser Sprachen erfordern besondere Prüfverfahren.
Ausgangspunkt des Prüfverfahrens ist die Generierung einer Querverweisliste, die samtliche Verwendungsstellen der eingesetzten Bezeichner, also auch der interessierenden Bau- stem-Bezeichner umfasst. Die Querverweisliste umfasst somit zu jedem Aufruf den jeweiligen Baustem-Bezeichner und dessen Rucksprungadresse. Anhand der Rucksprungadresse ist jeder
Aufruf eines Bausteins eindeutig definiert. Insofern kann aus dieser bei den Ubersetzungslaufen der Programmlogik gewonnenen Information eine Ubersichtsdarstellung der Aufrufe eines ausgewählten Bausteins errechnet werden. Die Querverweisliste kann ohne zusätzliche Prozessorleistung gewonnen werden, da sie üblicherweise bei der Übersetzung der Programmlogik erzeugt wird. Im Rahmen der erfmdungsgemaßen Losung wird diese Querverweisliste zwischengespeichert und steht anschließend zur weiteren Verwendung und Auswertung bereit.
In vorteilhafter Ausgestaltung ist die Ubersichtsdarstellung der Aufrufe eines ausgewählten Bausteins als hierarchischer Aufrufbaum aufgebaut. Diese Übersicht lasst die Rangfolge und insbesondere die Rekursionen für den Inbetπebsetzer bzw. Programmierer auf einen Blick sichtbar werden. Zur Vermeidung der Erzeugung einer Endlosschleife wird die Berechnung eines Aufrufpfads bei der Mehrfachnennung einer Rucksprungadresse abgebrochen.
Der Nachteil, derart rekursive Aufrufe nicht m frei wahlbaren Tiefen anzeigen und auswählen zu können, ist zur Vermeidung von Systemabsturzen und der verbesserten Übersicht¬ lichkeit der Darstellung hinnehmbar.
Diese Darstellung gestattet es dann, durch einfache Markie¬ rung einer oder mehrerer Zeilen einen oder mehrere Aufrufe des ausgew hlten Bausteins eindeutig zu definieren.
Solcher Art ausgewählte Aufrufe können dann mit Vorteil m einem entsprechenden Beobachtungsverfahren vom Programmierer oder Inbetriebsetzer verfolgt werden.
Die zur Losung der erfmdungsgemaßen Aufgabe vorgelegte Pruf- vorrichtung stellt vorteilhafterweise eine Anzeigevorrichtung für die hierarchische Darstellung der Aufrufe eines ausgewählten Bausteins bereit.
Zusätzlich ist diese Prufvorrichtung vorteilhafter Ausgestaltung mit einem Markierungswerkzeug versehen, mit dem m der erwähnten Anzeige und der Aufrufe eines Bausteins bestimmte Aufrufe markiert und ausgewählt werden können.
Die durch die Auswahl eines oder mehrerer Aufrufe eindeutig definierten Durchlaufe eines Bausteins können dann mittels eines entsprechenden Beobachtungswerkzeuges zu Zwecken der Prüfung beobachtet werden.
Die Erfindung wird nachstehend anhand eines Ausfuhrungs- beispiels naher erläutert. Hierzu ist der Zeichnung eine mögliche Darstellung der Aufrufe eines Bausteins dargestellt. Die Figur zeigt einen Aufrufbaum. Nach der Implementierung einer zur Steuerung/Regelung eines Automatisierungssystems eingesetzten Programmlogik muss diese zunächst die Maschinensprache übersetzt werden. Dabei wird im Rahmen eines speziellen Ubersetzungsschritts eine Quer- verweisliste erstellt. Die Querverweisliste enthalt alle innerhalb der übersetzten Programmlogik enthaltenen Bezeich- ner. Fasst man die wahrend sämtlicher Übersetzungsschritte gewonnenen Querverweislisten zusammen, so entsteht eine Querverweisliste, die sämtliche innerhalb der Programmlogik ver- wendeten Bezeichner und deren Verwendungsstellen umfasst.
Diese Querverweisliste wird zur spateren Auswertung zwischengespeichert .
In einem weiteren Schritt werden aus der Querverweisliste sämtliche Baustem-Bezeichner selektiert. Es entsteht somit eine Untermenge der erwähnten Querverweisliste, die samtliche Baustem-Bezeichner und deren Verwendungsstellen umfasst.
Aus dieser Teilliste kann nun mittels eines entsprechenden Markierungswerkzeugs ein bestimmter Baustem-Bezeichner und damit em Baustein ausgewählt werden. Anhand der m der Querverweisliste enthaltenen Informationen, also der diesem Baustem-Bezeichner zugeordneten Verwendungsstellen, wird dann em Aufrufbaum berechnet. Die Verwendungsstellen umfassen den Bausteinaufruf und die Rucksprungadresse. Die Rucksprungadresse bezeichnet den Ort des nach Durchlauf des Bausteins abzuarbeitenden Programmstatements sowie die Bezeichnung des aufrufenden Bausteins. Aus diesen Informationen kann der Aufrufbaum berechnet werden.
Hierzu wird die entsprechend selektierte Querverweisliste hinsichtlich eines ausgewählten Baustem-Bezeichners derart ausgewertet, dass m einem ersten Schritt alle Verwendungsstellen des ausgewählten Baustem-Bezeichners, also alle diesen ausgewählten Baustein aufrufenden Bausteine zusammengestellt werden und in einem nächsten Schritt zur -Analyse der nachsttieferen Rekursionsebene wiederum die aufrufenden Bau- steine dieser Bausteine erfasst werden und so weiter, bis schließlich alle Aufrufpfade vollständig erfasst sind.
Bei der Berechnung des Aufrufbaumes wird em Algorithmus ver- wendet, der Rekursionen erkennt. Hierzu wird jeder m dem Aufrufbaum enthaltene Aufrufpfad dahingehend überprüft, ob eine Rucksprungadresse mehrfach auftaucht. In diesem Fall wird die Berechnung des Aufrufpfads abgebrochen und der entsprechende Pfad markiert. Die Berechnung des Aufrufbaums wird dann anhand der weiteren Verwendungsstellen fortgesetzt. Ansonsten wurde das Programm zur Berechnung des Aufrufbaums an dieser Stelle m eine Endlosschleife geraten.
Anschließend kann auch der die Rekursion enthaltende Aufruf- pfad zur Betrachtung ausgewählt werden. Allerdings kann hierbei die Rekursionstiefe aufgrund des vorstehend beschriebenen Programmabbruchs nicht naher bestimmt werden.
Unbeschadet dieser Einschränkung steht am Ende der Uber- setzung der Verwendungsstelle eines ausgewählten Baustem- Bezeichners eine Ubersichtsdarstellung m Form des m der Figur dargestellten Aufrufbaums zur Verfugung.
Der in der Figur dargestellte Aufrufbaum umfasst neun be- zifferte Zeilen 1 - 9. In dem Ausfuhrungsbeispiel sind die
Baustem-Bezeichner FB10, FB5, FB3, OB1 enthalten. Es handelt sich um den Aufrufbaum des Baustem-Bezeichners FB10. Der Baustein FB10 wird gemäß der Darstellung des Aufrufbaums m den Zeilen 2 und 9 von den Bausteinen FB5 und OB1 aufgerufen. Dabei wird der Baustein FB5 gemäß den Darstellungen m den Zeilen 3 und 6 seinerseits von dem Baustein FB3 aufgerufen. Der Baustein FB3 wird gemäß den Zeilen 4, 5, 7 und 8 von dem Baustein OB1 aufgerufen. Der Aufrufbaum enthalt überdies die Information über den Aufrufort des jeweiligen Bausteins. So wird der Baustein FB10 gemäß Zeile 2 vom Baustein FB5 durch die vierte Operation eines Netzwerks NW10 aufgerufen. Der Baustein FB5 wird seinerseits gemäß Zeile 3 durch die sechste Operation des Netzwerks NW4 aufgerufen.
Der der Figur dargestellte Aufrufbaum wird mittels eines Viewers dem Benutzer oder dem Inbetriebsetzer dargestellt. Diesem Viewer ist ein Markierungswerkzeug zur Auswahl einzelner Zeilen und damit eines bestimmten Aufrufpfades zugeordnet. Durch die Selektion einzelner Zeilen kann somit em bestimmter Aufruf eines bestimmten Bausteins definiert wer- den.
Der spaltenweise Versatz der einzelnen Zeilen 1 - 9 dokumentiert dabei die unterschiedlichen Rekursionsebenen.
Wählt bei dem hier vorliegenden Ausfuhrungsbeispiel der Anwender die Zeile 5, so ist hierdurch der Aufruf des Bausteins FB10 definiert, der durch den Baustein FB5 im Netzwerk NW10 bei der vierten Operation verursacht wird, wenn dieser Baustein FB5 vom Baustein FB3 im Netzwerk NW4 bei der sechsten Operation aufgerufen wird und wiederum dieser Baustein FB3 vom Baustein OB1 im Netzwerk NW5 bei der zweiten Operation ausgewählt wird.
Durch einfache Markierung einer einzelnen Zeile im Aufrufbaum kann also em ausgesprochen schwierig verschachtelter Aufruf eindeutig und m einfacher Weise ausgewählt werden. Hierdurch ist em bestimmter Ablauf des Bausteins FB10 markiert. Diese eindeutige Definition eines bestimmten Bausteinaufrufs, hier des Bausteins FB10, wird dann an em Beobachtungswerkzeug übergeben, das genau diesen Durchlauf des Bausteins FB10 anzeigt .
Durch Auswahl bestimmter Zeilen können auch nur Teile eines Aufrufpfades ausgewählt werden. Im vorliegenden Beispiel kann durch Selektion der Zeile 2 definiert werden, dass der Baustein FB10 nur beobachtet wird, wenn er vom Baustein FB5 durch die vierte Operation im Netzwerk NW10 aufgerufen wird. Allerdings erfolgt eine Beobachtung des Bausteins FB10 unabhängig davon, ob der Baustein FB5 vom Baustein FB3 im Netz¬ werk NW4 oder NW6 aufgerufen wird. Letztlich sind somit durch die Auswahl der Zeile 2 mehrere Aufrufe des Bausteins FB10 markiert. Eine derartige Auswahl wäre dann sinnvoll, wenn feststeht, dass zwar em bestimmter Baustein überprüft werden soll, aber nicht genau feststeht, welcher Aufruf beobachtet werden soll.
Vorstehend ist somit em Prüfverfahren und eine Prufvorπch- tung beschrieben, die mit einem bisher nicht erreichten Bedienkomfort den Inbetriebsetzer oder Programmierer eines Automatisierungssystems in die Lage versetzt, gezielt bestimmte Aufrufe eines ausgewählten Bausteins zu definieren und diese somit zur weiteren Beobachtung auszuwählen.

Claims

Patentansprüche
1. Prüfverfahren zur Inbetriebnahme von mittels einer Pro- grammlogik gesteuerten Systemen, vorzugsweise von Automati- sierungssystemen, bei dem folgende Schritte durchlaufen werden:
- Generierung einer vorzugsweise vollständigen Querverweisliste mit allen innerhalb der Programmlogik eingesetzten Bezeichnern und deren jeweiliger Verwendungsstellen, - Selektion der zur Bezeichnung von Bausteinen der Pro- grammlogik eingesetzten Baustem-Bezeichner und deren jeweiliger Verwendungsstellen,
- Generierung einer Ubersichtsdarstellung aller oder eines Teils der Aufrufe eines auswahlbaren, von dem jeweiligen Baustem-Bezeichner bezeichneten Bausteins zur
- eindeutigen Auswahl eines oder mehrerer bestimmter Aufrufe dieses Bausteins zur
- Beobachtung dieses oder dieser derart eindeutig definierten Ablaufs bzw. der Ablaufe des ausgewählten Bausteins mittels eines entsprechenden Editors.
2. Prüfverfahren nach Anspruch 1, dadurch gekennzeichnet, dass die Programmlogik m einer graphischen Programmiersprache, vorzugsweise Kontaktplan oder Funktionsplan, implementiert ist und im Wesentlichen aus Bausteinen zusammengesetzt ist.
3. Prüfverfahren nach Anspruch 1 oder 2, dadurch gekennzeichnet, dass die m der Querverweisliste zusammen- gefassten Verwendungsstellen der Baustem-Bezeichner den Bausteinaufruf und dessen jeweilige Rucksprungadresse umfassen.
4. Prüfverfahren nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, dass die Ubersichtsdarstellung der Aufrufe eines ausgewählten Bausteins nach einer Auswertung der den ausgewählten Baustein betreffenden Rucksprung- adressen m der Art eines hierarchischen Aufrufbaumes mittels eines entsprechenden Viewers zur Anzeige gelangt.
5. Prüfverfahren nach Anspruch 4, dadurch gekennzeich- net, dass die Berechnung eines Aufrufpfades des ausgewählten Bausteins im Falle einer Mehrfachnennung einer Rucksprungadresse abgebrochen wird.
6. Prüfverfahren nach Anspruch 4 oder 5, dadurch gekenn- zeichnet, dass dem Viewer e Markierungswerkzeug zur
Markierung einer oder mehrerer Zeilen des Aufrufbaumes zugeordnet ist und hierdurch jeweils em oder mehrere Aufrufe des ausgewählten Bausteins eindeutig definiert werden.
7. Prüfverfahren nach Anspruch 6, dadurch gekennzeichnet, dass der durch die Markierung einer oder mehrerer Zeilen des Aufrufbaums eindeutig definierte Aufruf eines ausgewählten Bausteins angezeigt wird.
8. Prufvorrichtung zur Inbetriebnahme von mittels einer
Programmlogik gesteuerten Systemen, vorzugsweise von Auto- matisierungssystemen, mit
- einem Filterelement zur Auswahl der zur Bezeichnung von Bausteinen der Programmlogik eingesetzten Baustein- Bezeichner und deren jeweiliger Verwendungsstellen aus einer Querverweisliste aller innerhalb der Programmlogik verwendeten Bezeichner und deren Verwendungsstellen innerhalb dieser Programmlogik,
- einer Anzeigevorrichtung zur Darstellung dieser Baustem- Bezeichner-Liste zur Auswahl eines oder mehrerer Bausteine,
- einer Umsetzungseinheit, die sämtliche Aufrufe dieses Bausteines in eine hierarchische Darstellung übersetzt, und - einem Viewer zur Anzeige der hierarchischen Darstellung.
9. Programmierwerkzeug nach Anspruch 8, dadurch gekennzeichnet, dass der Viewer mit einem Markierungswerkzeug zur Markierung einzelner Aufrufe in der hierarchischen Darstellung versehen ist.
10. Prüfvorrichtung nach Anspruch 8 oder 9, dadurch gekennzeichnet, dass ein Editor zur Beobachtung des durch die Auswahl eines bestimmten Aufrufs eines ausgewählten Bausteins eindeutig definierten Ablaufs dieses Bausteins vor- gesehen ist.
PCT/DE2001/004067 2000-11-03 2001-10-26 Prüfverfahren und prüfvorrichtung zur inbetriebnahme von mittels einer programmlogik gesteuerten systemen WO2002037197A2 (de)

Priority Applications (2)

Application Number Priority Date Filing Date Title
EP01992912A EP1330685B1 (de) 2000-11-03 2001-10-26 Prüfverfahren und prüfvorrichtung zur inbetriebnahme von mittels einer programmlogik gesteuerten systemen
US10/428,837 US7117395B2 (en) 2000-11-03 2003-05-05 Testing method and testing device for starting up systems which are controlled by means of a program logic

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
DE10054542A DE10054542A1 (de) 2000-11-03 2000-11-03 Prüfverfahren und Prüfvorrichtung zur Inbetriebnahme von mittels einer Programmlogik gesteuerten Systemen
DE10054542.4 2000-11-03

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US10/428,837 Continuation US7117395B2 (en) 2000-11-03 2003-05-05 Testing method and testing device for starting up systems which are controlled by means of a program logic

Publications (2)

Publication Number Publication Date
WO2002037197A2 true WO2002037197A2 (de) 2002-05-10
WO2002037197A3 WO2002037197A3 (de) 2003-05-08

Family

ID=7662045

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/DE2001/004067 WO2002037197A2 (de) 2000-11-03 2001-10-26 Prüfverfahren und prüfvorrichtung zur inbetriebnahme von mittels einer programmlogik gesteuerten systemen

Country Status (4)

Country Link
US (1) US7117395B2 (de)
EP (1) EP1330685B1 (de)
DE (1) DE10054542A1 (de)
WO (1) WO2002037197A2 (de)

Families Citing this family (57)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7475053B2 (en) * 2000-07-27 2009-01-06 The Johns Hopkins University Method and system for the autonomous design of cybernetic systems
DE10215196A1 (de) * 2002-04-05 2003-10-30 Siemens Ag System und Verfahren zur Programmierung und/oder zum Betreiben eines Automatisierungssystems mit ablauforientierter Verknüpfungslogik
US7043316B2 (en) * 2003-02-14 2006-05-09 Rockwell Automation Technologies Inc. Location based programming and data management in an automated environment
US9104648B2 (en) * 2004-11-08 2015-08-11 Jinan Glasgow Patent claims analysis system and method
US10198478B2 (en) 2003-10-11 2019-02-05 Magic Number, Inc. Methods and systems for technology analysis and mapping
US8645569B2 (en) * 2004-03-12 2014-02-04 Rockwell Automation Technologies, Inc. Juxtaposition based machine addressing
CA2543989C (en) * 2005-04-18 2015-02-17 Research In Motion Limited System and method for generating safe and efficient component relationships in wireless applications
US20100083235A1 (en) * 2007-04-26 2010-04-01 Kabushiki Kaisha Toshiba Debug system for diagram of programmable controller, its programming device and its program
US8762666B2 (en) 2008-10-27 2014-06-24 Lennox Industries, Inc. Backup and restoration of operation control data in a heating, ventilation and air conditioning network
US8600559B2 (en) 2008-10-27 2013-12-03 Lennox Industries Inc. Method of controlling equipment in a heating, ventilation and air conditioning network
US8295981B2 (en) 2008-10-27 2012-10-23 Lennox Industries Inc. Device commissioning in a heating, ventilation and air conditioning network
US9678486B2 (en) 2008-10-27 2017-06-13 Lennox Industries Inc. Device abstraction system and method for a distributed-architecture heating, ventilation and air conditioning system
US8463443B2 (en) 2008-10-27 2013-06-11 Lennox Industries, Inc. Memory recovery scheme and data structure in a heating, ventilation and air conditioning network
US8452906B2 (en) 2008-10-27 2013-05-28 Lennox Industries, Inc. Communication protocol system and method for a distributed-architecture heating, ventilation and air conditioning network
US8543243B2 (en) 2008-10-27 2013-09-24 Lennox Industries, Inc. System and method of use for a user interface dashboard of a heating, ventilation and air conditioning network
US9261888B2 (en) 2008-10-27 2016-02-16 Lennox Industries Inc. System and method of use for a user interface dashboard of a heating, ventilation and air conditioning network
US9268345B2 (en) 2008-10-27 2016-02-23 Lennox Industries Inc. System and method of use for a user interface dashboard of a heating, ventilation and air conditioning network
US8694164B2 (en) 2008-10-27 2014-04-08 Lennox Industries, Inc. Interactive user guidance interface for a heating, ventilation and air conditioning system
US8798796B2 (en) 2008-10-27 2014-08-05 Lennox Industries Inc. General control techniques in a heating, ventilation and air conditioning network
US8744629B2 (en) 2008-10-27 2014-06-03 Lennox Industries Inc. System and method of use for a user interface dashboard of a heating, ventilation and air conditioning network
US9152155B2 (en) 2008-10-27 2015-10-06 Lennox Industries Inc. Device abstraction system and method for a distributed-architecture heating, ventilation and air conditioning system
US8452456B2 (en) 2008-10-27 2013-05-28 Lennox Industries Inc. System and method of use for a user interface dashboard of a heating, ventilation and air conditioning network
US8788100B2 (en) 2008-10-27 2014-07-22 Lennox Industries Inc. System and method for zoning a distributed-architecture heating, ventilation and air conditioning network
US9432208B2 (en) 2008-10-27 2016-08-30 Lennox Industries Inc. Device abstraction system and method for a distributed architecture heating, ventilation and air conditioning system
US8855825B2 (en) 2008-10-27 2014-10-07 Lennox Industries Inc. Device abstraction system and method for a distributed-architecture heating, ventilation and air conditioning system
US8655490B2 (en) 2008-10-27 2014-02-18 Lennox Industries, Inc. System and method of use for a user interface dashboard of a heating, ventilation and air conditioning network
US8564400B2 (en) 2008-10-27 2013-10-22 Lennox Industries, Inc. Communication protocol system and method for a distributed-architecture heating, ventilation and air conditioning network
US8239066B2 (en) 2008-10-27 2012-08-07 Lennox Industries Inc. System and method of use for a user interface dashboard of a heating, ventilation and air conditioning network
US8892797B2 (en) 2008-10-27 2014-11-18 Lennox Industries Inc. Communication protocol system and method for a distributed-architecture heating, ventilation and air conditioning network
US9632490B2 (en) 2008-10-27 2017-04-25 Lennox Industries Inc. System and method for zoning a distributed architecture heating, ventilation and air conditioning network
US8463442B2 (en) 2008-10-27 2013-06-11 Lennox Industries, Inc. Alarm and diagnostics system and method for a distributed architecture heating, ventilation and air conditioning network
US8655491B2 (en) 2008-10-27 2014-02-18 Lennox Industries Inc. Alarm and diagnostics system and method for a distributed architecture heating, ventilation and air conditioning network
US8725298B2 (en) 2008-10-27 2014-05-13 Lennox Industries, Inc. Alarm and diagnostics system and method for a distributed architecture heating, ventilation and conditioning network
US9325517B2 (en) 2008-10-27 2016-04-26 Lennox Industries Inc. Device abstraction system and method for a distributed-architecture heating, ventilation and air conditioning system
US8352081B2 (en) 2008-10-27 2013-01-08 Lennox Industries Inc. Communication protocol system and method for a distributed-architecture heating, ventilation and air conditioning network
US8442693B2 (en) 2008-10-27 2013-05-14 Lennox Industries, Inc. System and method of use for a user interface dashboard of a heating, ventilation and air conditioning network
US8548630B2 (en) 2008-10-27 2013-10-01 Lennox Industries, Inc. Alarm and diagnostics system and method for a distributed-architecture heating, ventilation and air conditioning network
US8977794B2 (en) 2008-10-27 2015-03-10 Lennox Industries, Inc. Communication protocol system and method for a distributed-architecture heating, ventilation and air conditioning network
US8661165B2 (en) 2008-10-27 2014-02-25 Lennox Industries, Inc. Device abstraction system and method for a distributed architecture heating, ventilation and air conditioning system
US8437878B2 (en) 2008-10-27 2013-05-07 Lennox Industries Inc. Alarm and diagnostics system and method for a distributed architecture heating, ventilation and air conditioning network
US8433446B2 (en) 2008-10-27 2013-04-30 Lennox Industries, Inc. Alarm and diagnostics system and method for a distributed-architecture heating, ventilation and air conditioning network
US8437877B2 (en) 2008-10-27 2013-05-07 Lennox Industries Inc. System recovery in a heating, ventilation and air conditioning network
US9377768B2 (en) 2008-10-27 2016-06-28 Lennox Industries Inc. Memory recovery scheme and data structure in a heating, ventilation and air conditioning network
US8874815B2 (en) 2008-10-27 2014-10-28 Lennox Industries, Inc. Communication protocol system and method for a distributed architecture heating, ventilation and air conditioning network
US8994539B2 (en) 2008-10-27 2015-03-31 Lennox Industries, Inc. Alarm and diagnostics system and method for a distributed-architecture heating, ventilation and air conditioning network
US9651925B2 (en) 2008-10-27 2017-05-16 Lennox Industries Inc. System and method for zoning a distributed-architecture heating, ventilation and air conditioning network
US8774210B2 (en) 2008-10-27 2014-07-08 Lennox Industries, Inc. Communication protocol system and method for a distributed-architecture heating, ventilation and air conditioning network
US8600558B2 (en) 2008-10-27 2013-12-03 Lennox Industries Inc. System recovery in a heating, ventilation and air conditioning network
US8615326B2 (en) 2008-10-27 2013-12-24 Lennox Industries Inc. System and method of use for a user interface dashboard of a heating, ventilation and air conditioning network
US8255086B2 (en) 2008-10-27 2012-08-28 Lennox Industries Inc. System recovery in a heating, ventilation and air conditioning network
US8560125B2 (en) 2008-10-27 2013-10-15 Lennox Industries Communication protocol system and method for a distributed-architecture heating, ventilation and air conditioning network
US8802981B2 (en) 2008-10-27 2014-08-12 Lennox Industries Inc. Flush wall mount thermostat and in-set mounting plate for a heating, ventilation and air conditioning system
US8352080B2 (en) 2008-10-27 2013-01-08 Lennox Industries Inc. Communication protocol system and method for a distributed-architecture heating, ventilation and air conditioning network
USD648642S1 (en) 2009-10-21 2011-11-15 Lennox Industries Inc. Thin cover plate for an electronic system controller
USD648641S1 (en) 2009-10-21 2011-11-15 Lennox Industries Inc. Thin cover plate for an electronic system controller
US8260444B2 (en) 2010-02-17 2012-09-04 Lennox Industries Inc. Auxiliary controller of a HVAC system
US11100151B2 (en) 2018-01-08 2021-08-24 Magic Number, Inc. Interactive patent visualization systems and methods

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0483368A1 (de) * 1990-05-10 1992-05-06 Fanuc Ltd. Suchverfahren eines folgesteuerungsprogramms
US6106572A (en) * 1998-03-25 2000-08-22 Origins Software Company Forward and reverse hierarchical page level debugger

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5267145A (en) * 1989-06-30 1993-11-30 Icom, Inc. Method and apparatus for program navigation and editing for ladder logic programs by determining which instructions reference a selected data element address
US5276811A (en) * 1989-06-30 1994-01-04 Icom, Inc. Method for emulating programmable logic controller by exchanging information between debug program which emulates I/O devices and ladder logic program
US5812133A (en) * 1995-11-01 1998-09-22 Allen Bradley Company, Llc Industrial controller with display of rung execution
JP3528478B2 (ja) * 1996-11-19 2004-05-17 三菱電機株式会社 数値制御装置
US6158024A (en) * 1998-03-31 2000-12-05 International Business Machines Corporation Method and apparatus for structured memory analysis of data processing systems and applications
US6557167B1 (en) * 1999-09-03 2003-04-29 International Business Machines Corporation Apparatus and method for analyzing performance of a computer program

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0483368A1 (de) * 1990-05-10 1992-05-06 Fanuc Ltd. Suchverfahren eines folgesteuerungsprogramms
US6106572A (en) * 1998-03-25 2000-08-22 Origins Software Company Forward and reverse hierarchical page level debugger

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
PATENT ABSTRACTS OF JAPAN vol. 1998, no. 11, 30. September 1998 (1998-09-30) & JP 10 149212 A (MITSUBISHI ELECTRIC CORP), 2. Juni 1998 (1998-06-02) *

Also Published As

Publication number Publication date
US20040073850A1 (en) 2004-04-15
DE10054542A1 (de) 2002-06-20
EP1330685B1 (de) 2012-12-12
US7117395B2 (en) 2006-10-03
EP1330685A2 (de) 2003-07-30
WO2002037197A3 (de) 2003-05-08

Similar Documents

Publication Publication Date Title
EP1330685A2 (de) Prüfverfahren und prüfvorrichtung zur inbetriebnahme von mittels einer programmlogik gesteuerten systemen
EP2009525B1 (de) Testvorrichtung zum Testen wenigstens eines elektronischen Steuerungssystems und Verfahren dazu
DE102006046203A1 (de) Verfahren zur rechnergestützten Bewertung von Softwarequellcode
EP3480672B1 (de) Verfahren zum erkennen und anzeigen von operator-zugriffen auf prozessobjekte sowie operator-system
EP1638028A2 (de) Rechnergestützte Erzeugung und Änderungsmanagement für Bedienoberflächen
EP2648094B1 (de) Verfahren und system zum erzeugen eines quellcodes für ein computerprogramm zur ausführung und simulation eines prozesses
EP3320431A1 (de) Computerimplementiertes verfahren zur bearbeitung von datenobjektvarianten
EP3364257B1 (de) Verfahren zum betrieb eines engineering-systems für ein industrielles prozessautomatisierungssystem und steuerungsprogramm
EP0838054B1 (de) Verfahren und steuereinrichtung für eine graphische steuerung von abläufen in einem netzwerkmanagementsystem
EP3598255B1 (de) Anordnung mit operator-servern und mit operator-clients
DE102019001129A1 (de) Numerische Steuervorrichtung
DE102020119853B3 (de) Verfahren zum Steuern eines Automatisierungssystems mit Visualisierung von Programmobjekten eines Steuerprogramms des Automatisierungssystems und Automatisierungssystem
DE19914819B4 (de) Verfahren zur Unterstützung von Entwicklungprozessen
EP1950635A1 (de) Verfahren zum Betrieb eines Automatisierungssystems
EP2479664A1 (de) System und Verfahren zum Erzeugen eines Quellcodes für ein Computerprogramm
EP3285162A1 (de) Verfahren zum projektieren eines projektes sowie anordnung zur durchführung des verfahrens
DE102019131814A1 (de) Verfahren zum Verknüpfen von Objekten eines Steuerprogramms einer Steuereinheit eines Automatisierungssystems und Entwicklungsumgebung
EP2093663A1 (de) Engineering-System für die Entwicklung eines Projektes und Verfahren
AT522186B1 (de) Computerimplementiertes Verfahren zur rechnergestützten Erzeugung eines ausführbaren Steuerungsprogramms zur Steuerung und/oder Regelung eines technischen Prozesses
DE102004050293B3 (de) Verfahren zur Simulation des Betriebs eines Netzwerks
EP1095321B1 (de) Verfahren und anordnung zum entwurf einer steuerung für einen gesamtprozess
EP3273344A1 (de) Verfahren und programmiereinrichtung zur optimierung von quellcode für ein computerprogramm
EP2386920A1 (de) Verfahren zum Auswerten von Diagnosemeldungen
EP2010974B1 (de) Engineeringsystem und verfahren zur projektierung eines automatisierungssystems
DE102022125524A1 (de) Verfahren zum Entwerfen von Maschinensystemen

Legal Events

Date Code Title Description
DFPE Request for preliminary examination filed prior to expiration of 19th month from priority date (pct application filed before 20040101)
121 Ep: the epo has been informed by wipo that ep was designated in this application
WWE Wipo information: entry into national phase

Ref document number: 2001992912

Country of ref document: EP

WWE Wipo information: entry into national phase

Ref document number: 10428837

Country of ref document: US

WWP Wipo information: published in national office

Ref document number: 2001992912

Country of ref document: EP