DE102017110567A1 - Kontaktplanprogrammanalysevorrichtung - Google Patents

Kontaktplanprogrammanalysevorrichtung Download PDF

Info

Publication number
DE102017110567A1
DE102017110567A1 DE102017110567.0A DE102017110567A DE102017110567A1 DE 102017110567 A1 DE102017110567 A1 DE 102017110567A1 DE 102017110567 A DE102017110567 A DE 102017110567A DE 102017110567 A1 DE102017110567 A1 DE 102017110567A1
Authority
DE
Germany
Prior art keywords
ladder
ladder program
execution
execution priority
program analysis
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.)
Pending
Application number
DE102017110567.0A
Other languages
English (en)
Inventor
Toshiyuki Matsuo
Mitsuru Mochizuki
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.)
Fanuc Corp
Original Assignee
Fanuc Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fanuc Corp filed Critical Fanuc Corp
Publication of DE102017110567A1 publication Critical patent/DE102017110567A1/de
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B23/00Testing or monitoring of control systems or parts thereof
    • G05B23/02Electric testing or monitoring
    • G05B23/0205Electric testing or monitoring by means of a monitoring system capable of detecting and responding to faults
    • G05B23/0259Electric testing or monitoring by means of a monitoring system capable of detecting and responding to faults characterized by the response to fault detection
    • G05B23/0262Confirmation of fault detection, e.g. extra checks to confirm that a failure has indeed occurred
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
    • G06F9/4881Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues
    • 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
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/20Pc systems
    • G05B2219/24Pc safety
    • G05B2219/24065Real time diagnostics

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Automation & Control Theory (AREA)
  • General Engineering & Computer Science (AREA)
  • Programmable Controllers (AREA)

Abstract

Eine Kontaktplanprogrammanalysevorrichtung, die Informationen zur Verbesserung der Ausführungseffizienz eines Kontaktplanprogramms darstellen kann, weist eine Kontaktplanprogrammanalyseeinheit und eine Kontaktplanprogrammanalyseergebnisanzeigeeinheit auf. Die Kontaktplanprogrammanalyseeinheit analysiert ein Kontaktplanprogramm, das mehrere Kontaktplankreise enthält, und erstellt eine Ausführungsprioritätssignaltabelle, in der Ausführungsprioritäten der Kontaktplankreise, Bezugssignale, die in die Kontaktplankreise eingegebene Signale angeben, und Aktualisierungssignale, die von den Kontaktplankreisen ausgegebene Signale angeben, miteinander in eine Beziehung gebracht sind. Die Kontaktplanprogrammanalyseergebnisanzeigeeinheit bestimmt durch Vergleichen der Ausführungsprioritäten, der Bezugssignale, und der Aktualisierungssignale von zwei der Kontaktplankreise auf Basis der Ausführungsprioritätssignaltabelle das Vorhandensein oder Nichtvorhandensein eines Kontaktplankreises, für den die Möglichkeit einer Verbesserung der Ausführungseffizienz besteht, und zeigt das Bestimmungsergebnis an.

Description

  • ALLGEMEINER STAND DER TECHNIK
  • 1. Gebiet der Erfindung
  • Die vorliegende Erfindung betrifft eine Kontaktplanprogrammanalysevorrichtung und genauer eine Kontaktplanprogrammanalysevorrichtung, die Informationen zur Verbesserung der Ausführungseffizienz eines Kontaktplanprogramms darstellen kann.
  • 2. Beschreibung des Stands der Technik
  • Ein Kontaktplanprogramm führt Kontaktplankreise, die im Voraus erstellt wurden, der Reihe nach und mit einem vorherbestimmten Zyklus wiederholt aus. Im Allgemeinen wird bei der Erstellung eines Kontaktplanprogramms eine Reihenfolge der Kontaktplankreise so bestimmt, dass ein Signalzustand durch eine Ausführung unter Berücksichtigung einer Bezugsbeziehung zwischen Signalen so effizient wie möglich aktualisiert wird.
  • Als Technik für eine effiziente Erstellung eines Kontaktplanprogramms ist in der Japanischen Patentoffenlegungsschrift Nr. 05-189012 eine Programmiervorrichtung beschrieben, die ein Kontaktplanprogramm unter Verwendung von Kontaktplankreisen, die vorab als Module hergestellt wurden, automatisch erzeugt.
  • JP 3666507 B2 beschreibt ein Simulationsunterstützungswerkzeug, das ein Kontaktplanprogramm für Prüfeingaben, welches Signale an als Kontaktplan verwendete Knoten ausgibt, automatisch erzeugt.
  • JP 4922684 B2 beschreibt eine Programmbearbeitungsvorrichtung, die ein Kontaktplanprogramm automatisch auf Basis eines Timingdiagramms erzeugt.
  • Doch keines der oben genannten Dokumente beschreibt eine Verbesserung bei der Ausführungseffizienz eines Kontaktplanprogramms auf Basis einer Reihenfolge des Kontaktplanaufbaus. Zum Beispiel wird bei einem in 1 veranschaulichten Kontaktplanprogramm ein Prozess, bis ein Signalzustand von A an C ausgegeben wird, durch eine Ausführung des Programms abgeschlossen. Andererseits sind bei einem Kontaktplanprogramm, das in 2 veranschaulicht ist, zwei Ausführungen des Programms nötig, bis ein Signalzustand von A an C ausgegeben wird. Dabei weist das in 1 veranschaulichte Kontaktplanprogramm eine kürzere Aktualisierungszeit und eine bessere Ausführungseffizienz auf. Mit anderen Worten weist das in 2 veranschaulichte Kontaktplanprogramm eine längere Aktualisierungszeit und eine schlechte Ausführungseffizienz auf.
  • Obwohl Kontaktplankreise mit langen Aktualisierungszeiten absichtlich zusammengestellt werden können, ist das Kontaktplanprogramm in den meisten Fällen dazu gestaltet, die Ausführungseffizienz zu verbessern. Im Allgemeinen wird bei einem umfangreichen Kontaktplanprogramm eine Bezugsbeziehung zwischen Signalen nicht leicht verstanden, wenn das Programm so aufgebaut ist, dass es ein Unterprogram oder dergleichen enthält, und ist es daher schwierig, die Ausführungseffizienz des Kontaktplanprogramms zu bestimmen. Das heißt, auch wenn Kontaktplankreise in einer Reihenfolge mit einer schlechten Ausführungseffizienz angeordnet sind, kann ein Benutzer diese Auswirkung nicht leicht verstehen. Entsprechend muss der Benutzer eine Stelle, an der die Reihenfolge der Kontaktplankreise korrigiert werden kann, durch Ausführen des Programms, Abtasten der Signale, die durch die Kontaktplankreise aktualisiert werden, Bestätigen, dass sich diese Signale mit beabsichtigten Timings verändern, und dergleichen manuell herausfinden.
  • KURZDARSTELLUNG DER ERFINDUNG
  • Die vorliegende Erfindung erfolgte zur Lösung der oben beschriebenen Probleme und hat die Aufgabe, eine Kontaktplanprogrammanalysevorrichtung bereitzustellen, die Informationen zur Verbesserung der Ausführungseffizienz eines Kontaktplanprogramms darstellen kann.
  • Eine Kontaktplanprogrammanalysevorrichtung nach einer Ausführungsform der vorliegenden Erfindung weist eine Kontaktplanprogrammanalyseeinheit, die ein Kontaktplanprogramm, das mehrere Kontaktplankreise enthält, analysiert und eine Ausführungsprioritätssignaltabelle, in der Ausführungsprioritäten der Kontaktplankreise, Bezugssignale, die in die Kontaktplankreise eingegebene Signale angeben, und Aktualisierungssignale, die von den Kontaktplankreisen ausgegebene Signale angeben, miteinander in eine Beziehung gebracht sind, erstellt; und eine Kontaktplanprogrammanalyseergebnisanzeigeeinheit, die durch Vergleichen der Ausführungsprioritäten, der Bezugssignale, und der Aktualisierungssignale von zwei der Kontaktplankreise auf Basis der Ausführungsprioritätssignaltabelle das Vorhandensein oder Nichtvorhandensein eines Kontaktplankreises, für den die Möglichkeit einer Verbesserung der Ausführungseffizienz besteht, bestimmt und das Bestimmungsergebnis anzeigt, auf.
  • Bei einer Kontaktplanprogrammanalyseeinheit nach einer anderen Ausführungsform der vorliegenden Erfindung zeigt die Kontaktplanprogrammanalyseergebnisanzeigeeinheit das Bestimmungsergebnis durch Ändern wenigstens eines Anzeigeformats des Kontaktplankreises, für den die Möglichkeit einer Verbesserung der Ausführungseffizienz bestimmt wurde, an.
  • Eine Kontaktplanprogrammanalysevorrichtung nach einer anderen Ausführungsform der vorliegenden Erfindung weist eine Kontaktplanprogrammanalyseeinheit, die ein Kontaktplanprogramm, das mehrere Kontaktplankreise enthält, analysiert und eine Ausführungsprioritätssignaltabelle, in der Ausführungsprioritäten der Kontaktplankreise, Bezugssignale, die in die Kontaktplankreise eingegebene Signale angeben, und Aktualisierungssignale, die von den Kontaktplankreisen ausgegebene Signale angeben, miteinander in eine Beziehung gebracht sind, erstellt; und eine Kontaktplanprogrammsortiereinheit, die durch Vergleichen der Ausführungsprioritäten, der Bezugssignale, und der Aktualisierungssignale der mehreren Kontaktplankreise auf Basis der Ausführungsprioritätssignaltabelle die Ausführungsprioritäten der Kontaktplankreise, für die die Möglichkeit einer Verbesserung der Ausführungseffizienz des Kontaktplanprogramms besteht, bestimmt, auf.
  • Nach der vorliegenden Erfindung ist es möglich, eine Kontaktplanprogrammanalysevorrichtung bereitzustellen, die Informationen zur Verbesserung der Ausführungseffizienz eines Kontaktplanprogramms darstellen kann.
  • KURZE BESCHREIBUNG DER ZEICHNUNGEN
  • Die obige und andere Aufgaben und Merkmale der vorliegenden Erfindung werden aus der folgenden Beschreibung von Ausführungsformen unter Bezugnahme auf die beiliegenden Zeichnungen klar werden, wobei
  • 1 ein Diagramm zur Beschreibung eines Problems der vorliegenden Erfindung ist;
  • 2 ein Diagramm zur Beschreibung eines Problems der vorliegenden Erfindung ist;
  • 3 ein Diagramm ist, das ein Beispiel für ein Kontaktplanprogramm veranschaulicht;
  • 4 ein Diagramm ist, das ein Beispiel für eine Ausführungsprioritätssignaltabelle veranschaulicht;
  • 5 ein Diagramm ist, das ein Ausgabebeispiel einer Kontaktplanprogrammanalyseergebnisanzeigeeinheit veranschaulicht;
  • 6 ein Diagramm ist, das ein Ausgabebeispiel der Kontaktplanprogrammanalyseergebnisanzeigeeinheit veranschaulicht;
  • 7 ein Diagramm ist, das ein Ausgabebeispiel der Kontaktplanprogrammanalyseergebnisanzeigeeinheit veranschaulicht;
  • 8 ein Diagramm ist, das ein Betriebsbeispiel einer Kontaktplanprogrammsortiereinheit veranschaulicht;
  • 9 ein Diagramm ist, das ein Betriebsbeispiel der Kontaktplanprogrammsortiereinheit veranschaulicht;
  • 10 ein Diagramm ist, das ein Betriebsbeispiel der Kontaktplanprogrammsortiereinheit veranschaulicht;
  • 11 ein Diagramm ist, das ein Betriebsbeispiel der Kontaktplanprogrammsortiereinheit veranschaulicht;
  • 12 ein Diagramm ist, das ein Betriebsbeispiel der Kontaktplanprogrammsortiereinheit veranschaulicht;
  • 13 ein Diagramm ist, das ein Betriebsbeispiel der Kontaktplanprogrammsortiereinheit veranschaulicht;
  • 14 ein Diagramm ist, das ein Betriebsbeispiel der Kontaktplanprogrammsortiereinheit veranschaulicht;
  • 15 ein Diagramm ist, das ein Betriebsbeispiel der Kontaktplanprogrammsortiereinheit veranschaulicht;
  • 16 ein Diagramm ist, das ein Betriebsbeispiel der Kontaktplanprogrammsortiereinheit veranschaulicht;
  • 17 ein Diagramm ist, das ein Betriebsbeispiel der Kontaktplanprogrammsortiereinheit veranschaulicht;
  • 18 ein Diagramm ist, das ein Beispiel eines durch die Kontaktplanprogrammanalyseeinheit durchgeführten Prozesses zur Erstellung einer Ausführungsprioritätssignaltabelle veranschaulicht;
  • 19A ein Diagramm ist, das ein Beispiel eines durch die Kontaktplanprogrammanalyseergebnisanzeigeeinheit durchgeführten Kontaktplandiagrammdarstellungsprozesses veranschaulicht;
  • 19B ein Diagramm ist, das Beispiel eines durch die Kontaktplanprogrammanalyseergebnisanzeigeeinheit durchgeführten Kontaktplandiagrammdarstellungsprozesses veranschaulicht;
  • 20 ein Diagramm ist, das ein Beispiel eines durch die Kontaktplanprogrammsortiereinheit durchgeführten Sortierprozesses veranschaulicht;
  • 21 ein Diagramm ist, das ein Beispiel eines durch die Kontaktplanprogrammsortiereinheit durchgeführten Prozesses zum Löschen eines nicht aktualisierten Bezugssignals veranschaulicht;
  • 22A ein Diagramm ist, das ein Beispiel eines durch die Kontaktplanprogrammsortiereinheit durchgeführten Prozesses zur Erstellung einer Ausführungsprioritätssignaltabelle veranschaulicht;
  • 22B ein Diagrammist, das ein Beispiel des durch die Kontaktplanprogrammsortiereinheit durchgeführten Prozesses zur Erstellung einer Ausführungsprioritätssignaltabelle veranschaulicht;
  • 23A ein Diagramm ist, das ein Beispiel eines durch die Kontaktplanprogrammsortiereinheit durchgeführten Prozesses zum Löschen eines Bezugssignals veranschaulicht;
  • 23B ein Diagramm ist, das ein Beispiel des durch die Kontaktplanprogrammsortiereinheit durchgeführten Prozesses zum Löschen eines Bezugssignals veranschaulicht;
  • 24 ein Diagramm ist, das den Aufbau einer Kontaktplanprogrammanalysevorrichtung nach einer ersten Ausführungsform der vorliegenden Erfindung veranschaulicht; und
  • 25 ein Diagramm ist, das den Aufbau einer Kontaktplanprogrammanalysevorrichtung nach einer zweiten Ausführungsform der vorliegenden Erfindung veranschaulicht.
  • AUSFÜHRLICHE BESCHREIBUNG DER BEVORZUGTEN AUSFÜHRUNGSFORMEN
  • Nachstehend wird zuerst ein Überblick über die vorliegende Erfindung beschrieben werden. Die vorliegende Erfindung ist durch eine Technik des Analysierens der Ausführungseffizienz eines Kontaktplanprogramms gekennzeichnet, und in Ausführungsformen der vorliegenden Erfindung werden zwei Verfahren der Verwendung eines Analyseergebnisses offenbart.
  • Bei einer ersten Ausführungsform wird eine Technik des Darstellens von Informationen hinsichtlich eines Teils mit schlechter Ausführungseffizienz in einem Kontaktplanprogramm in einem Kontaktplandiagramm unter Verwendung des Analyseergebnisses des Kontaktplanprogramms offenbart. Zum Beispiel wird ein Knoten, in dem ein Signal effizient verarbeitet wird, in Blau dargestellt und ein Knoten mit schlechter Effizienz in Rot dargestellt.
  • Bei einer zweiten Ausführungsform wird eine Technik des automatischen Sortierens von Kontaktplankreisen in einem Kontaktplanprogramm innerhalb eines beliebigen Bereichs, um eine effiziente Ausführungspriorität zu erreichen, offenbart.
  • Erste Ausführungsform
  • Als erste Ausführungsform wird nachstehend eine Kontaktplanprogrammanalysevorrichtung 100, die die Ausführungseffizienz eines Kontaktplanprogramms analysieren kann und wenigstens Informationen hinsichtlich eines Teils mit schlechter Ausführungseffizienz in einem Kontaktplandiagramm darstellen kann, beschrieben.
  • Der Aufbau der Kontaktplanprogrammanalysevorrichtung 100 wird unter Bezugnahme auf ein in 24 veranschaulichtes Blockdiagramm beschrieben werden. Die Kontaktplanprogrammanalysevorrichtung 100 weist eine Kontaktplanprogrammanalyseeinheit 110, eine Ausführungsprioritätssignaltabelle 120 und eine Kontaktplanprogrammanalyseergebnisanzeigeeinheit 130 auf. Die Kontaktplanprogrammanalysevorrichtung 100 ist typischerweise eine Informationsverarbeitungsvorrichtung, die eine zentrale Verarbeitungseinheit, eine Speichereinheit und eine Ein/Ausgabeeinheit aufweist und eine vorherbestimmte Funktion ausführt, indem sie die zentrale Verarbeitungseinheit dazu bringt, ein in der Speichereinheit gespeichertes Programm auszuführen.
  • Die Kontaktplanprogrammanalyseeinheit 110 führt einen Prozess des Analysierens einer Reihenfolge von Kontaktplankreisen in einem Kontaktplanprogramm, des Erstellens einer Ausführungsprioritätssignaltabelle 120 und des Bewertens der Ausführungseffizienz auf Basis der Ausführungsprioritätssignaltabelle 120 durch.
  • Die Ausführungsprioritätssignaltabelle 120 ist eine Tabelle, die Angibt, in welcher Reihenfolge die Kontaktplankreise auszuführen sind, wenn das Kontaktplanprogramm ausgeführt wird. Die Ausführungsprioritätssignaltabelle 120 wird typischerweise in einem Speicherbereich in der Speichereinheit, die nicht veranschaulicht ist, erstellt.
  • Wie in 3 veranschaulicht weist das Kontaktplanprogramm im Allgemeinen mehrere Programme (ein Hauptprogramm und ein oder mehr Unterprogramme, die durch das Hauptprogramm oder ein Unterprogramm aufgerufen werden) auf. Jedes Programm weist ein oder mehr Netze auf, die Kontaktplankreise enthalten. Die Netze sind nummeriert und werden der Reihe nach in ansteigender Reihenfolge der Nummern ausgeführt.
  • 4 veranschaulicht eine Ausführungsprioritätssignaltabelle 120, die durch Analysieren des in 3 veranschaulichten Kontaktplanprogramms erstellt wurde. Die Kontaktplanprogrammanalyseeinheit 110 analysiert die Netze der Reihe nach gemäß den Ausführungsprioritäten der Kontaktplankreise von dem Anfang bis zu dem Ende des Kontaktplanprogramms. Die Kontaktplanprogrammanalyseeinheit 110 verzeichnet Positionsinformationen, Bezugssignale und Aktualisierungssignale der Netze in der Ausführungsprioritätssignaltabelle 120. Hier enthalten die Positionsinformationen eine Bezeichnung des Programms, zu dem das entsprechende Netz gehört, und seine Netzposition. Wenn das Kontaktplanprogramm ein einzelnes Programm aufweist, braucht die Positionsinformation keine Programmbezeichnung zu enthalten. Das Bezugssignal ist eine Bezeichnung eines Signals, auf das durch das entsprechende Netz verwiesen wird. Das Aktualisierungssignal ist eine Bezeichnung eines Signals, das durch das entsprechende Netz aktualisiert wird.
  • Die Kontaktplanprogrammanalyseergebnisanzeigeeinheit 130 führt einen Prozess des Bestimmens eines optimierten Zustands des Kontaktplanprogramms unter Bezugnahme auf die Ausführungsprioritätssignaltabelle 120 und das Darstellens des Bestimmungsergebnisses für einen Benutzer durch. Typischerweise wird ein Teil mit schlechter Ausführungseffizienz in dem Kontaktplanprogramm extrahiert und der extrahierte Teil in einem Kontaktplandiagramm dargestellt.
  • Wenn, genauer, das Kontaktplandiagramm an einem Bildschirm angezeigt wird, extrahiert die Kontaktplanprogrammanalyseergebnisanzeigeeinheit 130 einen Eintrag (a) im Zusammenhang mit einem anzuzeigenden Kontaktplankreis und einen Eintrag (b), der einen Knoten in dem Kontaktplankreis als Aktualisierungssignal aufweist, aus der Ausführungsprioritätssignaltabelle 120. Ein Beispiel dafür ist in 5 veranschaulicht. Hier wird die Kontaktplanprogrammanalyseergebnisanzeigeeinheit 130 das Netz 1 des Unterprogramms P2 (P2-1) zeichnen. Vor dem Zeichnen extrahiert die Kontaktplanprogrammanalyseergebnisanzeigeeinheit 130 einen Eintrag (a), der P2-1 entspricht, aus der Ausführungsprioritätssignaltabelle 120. Der Eintrag (a) enthält einen Knoten (das heißt, ein Bezugssignal) Y. Daher extrahiert die Kontaktplanprogrammanalyseergebnisanzeigeeinheit 130 auch einen Eintrag (b), der Y als Aktualisierungssignal enthält, aus der Ausführungsprioritätssignaltabelle 120.
  • Dann vergleicht die Kontaktplanprogrammanalyseergebnisanzeigeeinheit 130 die Ausführungsprioritäten des Eintrags (a) und des Eintrags (b). Das Vergleichsergebnis der Ausführungsprioritäten der beiden Einträge wird in den Anzeigeformaten der Kontaktplankreise widergespiegelt. Die Kontaktplanprogrammanalyseergebnisanzeigeeinheit 130 stellt einen Teil mit schlechter Ausführungseffizienz in dem Kontaktplanprogramm für den Benutzer auf Basis eines unterschiedlichen Anzeigeformats dar. Entsprechend kann der Benutzer leicht bestimmen, ob die Ausführungsprioritäten der Kontaktplankreise optimal sind.
  • Wenn zum Beispiel die Ausführungspriorität des Eintrags (a) > die Ausführungspriorität des Eintrags (b) erfüllt wird, sind die Prioritäten der Kontaktplankreise optimal und ist die Ausführungseffizienz gut. In diesem Fall kann die Kontaktplanprogrammanalyseergebnisanzeigeeinheit 130 einen Knoten Y des Kontaktplankreises P2-1 in Blau darstellen. Wenn andererseits die Ausführungspriorität des Eintrags (a) ≤ die Ausführungspriorität des Eintrags (b) erfüllt wird, sind die Prioritäten der Kontaktplankreise nicht optimal und kann die Ausführungseffizienz nicht als gut bezeichnet werden. In diesem Fall kann die Kontaktplanprogrammanalyseergebnisanzeigeeinheit 130 den Knoten Y des Kontaktplankreises P2-1 in Rot anzeigen. Die Güte und Schlechtigkeit der Ausführungseffizienz kann unter Verwendung verschiedener Verfahren ausgedrückt werden. Zum Beispiel kann die Güte und Schlechtigkeit der Ausführungseffizienz anstelle durch die Farbe des Knotens durch eine Hintergrundfarbe eines Knotens ausgedrückt werden. Alternativ kann die Güte und Schlechtigkeit der Ausführungseffizienz durch Anzeigens eines vorherbestimmten Zeichens, einer Figur, einer Nachricht oder dergleichen in der Nähe des Knotens ausgedrückt werden.
  • Unter Bezugnahme auf 5 bis 7 werden nachstehend Beispiele für eine Anzeige, die durch die Kontaktplanprogrammanalyseergebnisanzeigeeinheit 130 vorgenommen wird, beschrieben werden. Bei dem Beispiel, das in 5 veranschaulicht ist, ist die Ausführungspriorität des Eintrags (a) > die Ausführungspriorität des Eintrags (b) erfüllt.
  • Entsprechend stellt die Kontaktplanprogrammanalyseergebnisanzeigeeinheit 130 den Knoten Y in dem Kontaktplankreis P2-1 in Blau dar. Andererseits ist bei dem Beispiel, das in 6 veranschaulicht ist, die Ausführungspriorität des Eintrags (a) ≤ die Ausführungspriorität des Eintrags (b) erfüllt. Entsprechend stellt die Kontaktplanprogrammanalyseergebnisanzeigeeinheit 130 einen Knoten C in dem Kontaktplankreis P1-1 in Rot dar. Ebenso stellt die Kontaktplanprogrammanalyseergebnisanzeigeeinheit 130 einen Knoten A in Netz 1 des Hauptprogramms in Rot dar und stellt sie einen Knoten D in Netz 3 des Hauptprogramms in Blau dar.
  • Unter Bezugnahme auf 18, 19A und 19B wird nachstehend ein Beispiel des Betriebs der Kontaktplanprogrammanalysevorrichtung 100 beschrieben werden. 18 ist ein Ablaufdiagramm, das ein Beispiel eines Prozesses veranschaulicht, um die Kontaktplanprogrammanalyseeinheit 110 zur Erstellung der Ausführungsprioritätssignaltabelle 120, die eine Beziehung zwischen den Ausführungsreihenfolgen des Kontaktplanprogramms und den Signalen angibt, zu bringen (Ausführungsprioritätssignaltabellenerstellungsprozess).
  • S101:
  • Die Kontaktplanprogrammanalyseeinheit 110 initialisiert zuerst die Ausführungsprioritätssignaltabelle 120. Eine Variable ”Ausführungspriorität”, die eine Ausführungspriorität eines Programms aufzeichnet, wird auf 1 gesetzt. Eine Variable ”Ausführungsnetzposition”, die eine Ausführungsnetzposition des Kontaktplanprogramms speichert, wird auf die Anfangsnetznummer des Programms gesetzt.
  • S102:
  • Die Kontaktplanprogrammanalyseeinheit 110 bestimmt, ob an der ”Ausführungsnetzposition” ein ausführbares Netz vorhanden ist. Wenn kein ausführbares Netz vorhanden ist, endet der Prozessablauf.
  • S103:
  • Die Kontaktplanprogrammanalyseeinheit 110 erlangt einen Kontaktplankreis, der der ”Ausführungsnetzposition” entspricht, durch ein Netz. Wenn der erlangte Kontaktplankreis ein CALL-Befehl oder ein RET-Befehl und ein diesen ähnlicher Befehl ist, ist ein Netz, das als nächstes ausgeführt werden soll, bei dem CALL-Befehl ein Anfangsnetz eines Unterprogramms des Aufrufziels, und bei dem RET-Befehl das Netz im Anschluss an den entsprechenden CALL-Befehl.
  • S104:
  • Die Kontaktplanprogrammanalyseeinheit 110 bestimmt, ob in dem erlangten Kontaktplankreis ein Knoten enthalten ist. Wenn darin ein Knoten enthalten ist, geht der Prozessablauf zu S105 über, und wenn darin kein Knoten enthalten ist, geht der Prozessablauf zu S107 über.
  • S105:
  • Die Kontaktplanprogrammanalyseeinheit 110 erlangt ein Signal, das durch den Kontaktplankreis von dem Knoten gelesen wurde, als ”Bezugssignal” und erlangt ein in ihn geschriebenes Signal als ”Aktualisierungssignal”. Eine gegenwärtige ”Ausführungspriorität” wird als ”Ausführungspriorität” definiert, und die ”Ausführungsnetzposition” wird als ”Positionsinformation” definiert. Die ”Ausführungspriorität”, die ”Positionsinformation”, das ”Bezugssignal” und das ”Aktualisierungssignal” werden in der Ausführungsprioritätssignaltabelle 120 verzeichnet.,
  • S106;
  • Die Kontaktplanprogrammanalyseeinheit 110 erhöht die ”Ausführungspriorität” um eins, um einen nächsten Eintrag in der Ausführungsprioritätssignaltabelle 120 zu verzeichnen.
  • S107;
  • Die Kontaktplanprogrammanalyseeinheit 110 setzt eine Position eines Netzes, das als nächstes nach der gegenwärtigen ”Netzposition” ausgeführt wird, als neue ”Ausführungsnetzposition” fest. Dabei wird wie oben unter Bezugnahme auf S103 beschrieben dann, wenn an der gegenwärtigen ”Ausführungsnetzposition” ein CALL-Befehl oder ein RET-Befehl vorhanden ist, ein Netz, das als nächstes ausgeführt werden soll, unter dessen Berücksichtigung festgelegt.
  • Danach erlangt die Kontaktplanprogrammanalyseeinheit 110 der Reihe nach Kontaktplankreise, die an der ”Ausführungsnetzposition” vorhanden sind, bis an der ”Ausführungsnetzposition” kein ausführbares Netz vorhanden ist, und setzt sie die ”Ausführungspriorität”, die ”Positionsinformation”, das ”Bezugssignal” und das ”Aktualisierungssignal” für die erlangten Kontaktplankreise in der Ausführungsprioritätssignaltabelle fest. Entsprechend wird die ”Ausführungsprioritätssignaltabelle” fertiggestellt.
  • 19A und 19B sind Ablaufdiagramme, die einen Prozess veranschaulichen, durch den die Kontaktplanprogrammanalyseergebnisanzeigeeinheit 130 dazu gebracht wird, das Ergebnis der Bestimmung der Ausführungseffizienz jedes Kontaktplankreises in dem Kontaktplandiagramm widerzuspiegeln (Kontaktplandiagrammdarstellungsprozess).
  • S201:
  • Die Kontaktplanprogrammanalyseergebnisanzeigeeinheit 130 speichert zuerst eine Anfangsposition (ein Programm und ein Netz) des Kontaktplanprogramms, das auf dem Bildschirm dargestellt werden soll, als ”Anzeigepositionsinformation”.
  • S202:
  • Die Kontaktplanprogrammanalyseergebnisanzeigeeinheit 130 erstellt Anzeigedaten eines Kontaktplandiagramms eines Netzes, die der gespeicherten ”Anzeigepositionsinformation” entsprechen.
  • S203:
  • Die Kontaktplanprogrammanalyseergebnisanzeigeeinheit 130 extrahiert unter Bezugnahme auf die Ausführungsprioritätssignaltabelle 120, die durch den Ausführungsprioritätssignaltabellenerstellungsprozess erstellt wurde, einen Eintrag, der mit der in der ”Positionsinformation” der Ausführungsprioritätssignaltabelle 120 gespeicherten ”Anzeigepositionsinformation” übereinstimmt. Dann wird die ”Ausführungspriorität” (a) des Eintrags erlangt.
  • S204 bis S206:
  • Die Kontaktplanprogrammanalyseergebnisanzeigeeinheit 130 erlangt ein ”Signal” eines Knotens, wenn der Knoten in dem Kontaktplandiagramm eines Netzes, das bei S202 erstellt wurde, enthalten ist. Die Ausführungsprioritätssignaltabelle 120 wird der Reihe nach von einem Eintrag mit der kleinsten ”Ausführungspriorität” bis zu dem letzten Eintrag durchsucht, und es wird geprüft, ob das gleiche ”Aktualisierungssignal” wie das erlangte ”Signal” vorhanden ist.
  • S207 bis S208:
  • Wenn ein Eintrag, bei dem das von dem Knoten erlangte ”Signal” dem ”Aktualisierungssignal” gleich ist, gefunden wird, erlangt die Kontaktplanprogrammanalyseergebnisanzeigeeinheit 130 eine ”Ausführungspriorität” (b) des Eintrags. Wenn andererseits beide Signale nicht gleich sind, geht der Prozessablauf zu S212 über und wird ein nächster Befehl des erstellten Kontaktplandiagramms erlangt.
  • S209 bis S211:
  • Die Kontaktplanprogrammanalyseergebnisanzeigeeinheit 130 vergleicht die ”Ausführungspriorität” (a) und die ”Ausführungspriorität” (b). Wenn die ”Ausführungspriorität” (a) höher ist, wird das Farbattribut des Knotens zu Blau geändert. Andernfalls wird das Farbattribut des Knotens zu Rot geändert.
  • S212 bis S213:
  • Die Kontaktplanprogrammanalyseergebnisanzeigeeinheit 130 erlangt einen nächsten Befehl, der in dem Kontaktplandiagramm enthalten ist.
  • Wenn der erlangte Befehl ein Knoten ist, werden die Prozesse von S206 und danach erneut an dem Knoten durchgeführt.
  • Die Kontaktplanprogrammanalyseergebnisanzeigeeinheit 130 erstellt durch wiederholtes Durchführen der gleichen Prozesse, bis ein Ende eines Netzes erreicht wird, das heißt, bis das Ende des Kontaktplandiagramms erreicht wird, Anzeigedaten des Kontaktplandiagramm eines Netzes.
  • S214:
  • Die Kontaktplanprogrammanalyseergebnisanzeigeeinheit 130 stellt die erstellten Anzeigedaten des Kontaktplandiagramms eines Netzes auf dem Bildschirm dar.
  • S215:
  • Wenn die Darstellung des Kontaktplandiagramms nicht das Ende des Bildschirms erreicht, aktualisiert die Kontaktplanprogrammanalyseergebnisanzeigeeinheit 130 die ”Anzeigepositionsinformation” zu einer Information hinsichtlich des nächstens Netzes. Die Kontaktplanprogrammanalyseergebnisanzeigeeinheit 130 führt die Prozesse von S202 und danach gleichermaßen an dem nächsten Netz durch. Durch Wiederholen dieser Vorgangsweise, bis die Darstellung des Kontaktplandiagramms das Ende des Bildschirms erreicht, kann die Kontaktplanprogrammanalyseergebnisanzeigeeinheit 130 eine Reihe von Kontaktplandiagrammen darstellen, bei denen das Ergebnis der Bestimmung der Ausführungseffizienz in den Darstellungsfarben der Knoten in dem Kontaktplandiagramm widergespiegelt ist.
  • Nach dieser Ausführungsform analysiert die Kontaktplandiagrammanalyseeinheit 110 ein Kontaktplandiagramm und erstellt sie die Ausführungsprioritätssignaltabelle 120, und stellt die Kontaktplanprogrammanalyseergebnisanzeigeeinheit 130 ein Kontaktplandiagramm dar, in dem das Ergebnis der Bestimmung der Ausführungseffizienz auf der Basis der Ausführungsprioritätssignaltabelle 120 widergespiegelt ist. Da in dem Kontaktplandiagramm ein Teil, dessen Ausführungseffizienz verbessert werden kann, klar ersichtlich dargestellt wird, dient dies entsprechend als Hinweis zur Überprüfung der Optimierung des Kontaktplandiagramm.
  • Zweite Ausführungsform
  • Als zweite Ausführungsform wird nachstehend eine Kontaktplanprogrammanalysevorrichtung 100 beschrieben werden, die die Ausführungseffizienz eines Kontaktplanprogramms analysieren kann und Kontaktplankreise automatisch so sortieren kann, dass die Ausführungseffizienz verbessert wird.
  • Der Aufbau der Kontaktplanprogrammanalysevorrichtung 100 wird unter Bezugnahme auf das in 25 veranschaulichte Blockdiagramm beschrieben werden. Die Kontaktplanprogrammanalysevorrichtung 100 weist eine Kontaktplanprogrammanalyseeinheit 110, eine Ausführungsprioritätssignaltabelle 120 und eine Kontaktplanprogrammsortiereinheit 140 auf.
  • Die Kontaktplanprogrammanalyseeinheit 110 und die Ausführungsprioritätssignaltabelle 120 weisen den gleichen Aufbau wie bei der ersten Ausführungsform auf, weshalb ihre Beschreibung nicht wiederholt werden wird.
  • Die Kontaktplanprogrammsortiereinheit 140 führt einen Prozess des automatischen Sortierens und Optimierens der Prioritäten von Netzen in einem vorherbestimmten Bereich eines Kontaktplanprogramms durch. Die Kontaktplanprogrammsortiereinheit 140 optimiert die Ausführungsprioritäten eines Netzes in einem beliebigen Bereich automatisch auf Basis der Ausführungsprioritätssignaltabelle 120 und einer Liste von Signalen, auf die durch jedes Netz Bezug genommen wird. Hier kann der vorherbestimmte Bereich ein Teil des Kontaktplanprogramms sein, der auf Basis einer Wahl durch einen Benutzer bestimmt wird, oder kann er das gesamte Kontaktplanprogramm sein.
  • Eine Kontaktplanprogrammsortiertätigkeit, die durch die Kontaktplanprogrammsortiereinheit 140 durchgeführt wird, ist eine Tätigkeit zum Bestimmen einer derartigen Anordnungsreihenfolge von Knoten, dass so viele Ränder wie möglich die gleiche Richtung aufweisen, wenn alle Knoten in einem ausgerichteten Diagramm, in dem die Kontaktplankreise als Knoten definiert sind und Bezugsbeziehungen zwischen Signalen als Ränder definiert sind, in einer Linie angeordnet sind. In dieser Hinsicht sind mehrere andere Algorithmen, durch die die gleiche Wirkung erzielt werden kann, vorstellbar. Obwohl hier ein bestimmtes Beispiel dafür beschrieben ist, kann das Sortieren unter Verwendung eines anderen Algorithmus, durch den die gleiche Wirkung erzielt wird, durchgeführt werden.
  • Ein Prozess, der durch die Kontaktplanprogrammsortiereinheit 140 durchgeführt wird, wird unter Bezugnahme auf 8 bis 17 genauer beschrieben werden. Der linke obere Teil von 8 veranschaulicht ein Kontaktplanprogramm vor seiner Sortierung, und der linke untere Teil veranschaulicht die Ausführungsprioritätssignaltabelle 120, die dem Kontaktplanprogramm entspricht. Der obere rechte Teil veranschaulicht das Kontaktplanprogramm nach seiner Sortierung durch die Kontaktplanprogrammsortiereinheit 140.
    • (1) Die Kontaktplanprogrammsortiereinheit 14 löscht zuerst ein nicht aktualisiertes ”Bezugssignal” in dem vorherbestimmten Bereich aus der in 8 veranschaulichten Ausführungsprioritätssignaltabelle 120. Durch gestrichelte Linien umgebene Signale in 9 sind das nicht aktualisierte ”Bezugssignal”.
    • (2) Dann findet die Kontaktplanprogrammsortiereinheit 140 ein Netz, in dem das ”Bezugssignal” in der Ausführungsprioritätssignaltabelle 120 leer ist, und fügt einer ”Ausführungsprioritätstabelle” eine Positionsinformation des gefundenen Netzes hinzu. Durch gestrichelte Linien umgebene Teile in 10 geben an, dass das ”Bezugssignal” leer ist.
    • (3) Die Kontaktplanprogrammsortiereinheit 140 löscht alle gleichen Signale wie die ”Aktualisierungssignale” des Netzes, die der ”Ausführungsprioritätstabelle” hinzugefügt wurden, aus den ”Bezugssignalen” der ”Ausführungsprioritätssignaltabelle”. Durch gestrichelte Linien umgebene Teile in 11 geben gelöschte ”Bezugssignale” an.
    • (4) Die Kontaktplanprogrammsortiereinheit 140 löscht das Netz, das der ”Ausführungsprioritätstabelle” hinzugefügt wurde, aus der Ausführungsprioritätssignaltabelle 120. Ein durch eine gestrichelte Linie umgebener Teil in 12 gibt ein gelöschtes Netz an.
    • (5) Die Kontaktplanprogrammsortiereinheit 140 wiederholt die Tätigkeiten von (2) bis (4), bis die Ausführungsprioritätssignaltabelle 120 leer ist. Wenn bei (2) kein entsprechendes Netz gefunden wird, kann mit einem bestimmten Bewertungskriterium kein Netz gewählt werden. 13 bis 17 veranschaulichen Zustände, in denen Netze der Reihe nach aus der Ausführungsprioritätssignaltabelle 120 gelöscht werden.
    • (6) Die Kontaktplanprogrammsortiereinheit 140 erlangt gemäß den ”Ausführungsprioritäten” ein Netz mit der ”Positionsinformation” aus der ”Ausführungsprioritätstabelle” und ordnet das Netz in der erlangten Reihenfolge neu an. Entsprechend wird ein Kontaktplanprogramm erstellt, in dem die Ausführungsprioritäten optimiert sind.
  • Unter Bezugnahme auf 20 bis 23A und 23B wird nachstehend ein Betrieb beschrieben werden, bei dem die Kontaktplanprogrammanalysevorrichtung 100 die Ausführungsprioritäten von Netzen in einem bestimmten Bereich automatisch sortiert und optimiert. 20 ist ein Ablaufdiagramm, das einen Prozess veranschaulicht, bei dem die Kontaktplanprogrammsortiereinheit 140 dazu gebracht wird, Kontaktplankreise in einem vorherbestimmten Bereich eines Kontaktplanprogramms für jedes Netz automatisch zu sortieren, um eine effiziente Ausführungspriorität zu erzielen (Sortierprozess).
  • S301:
  • Die Kontaktplanprogrammanalyseeinheit 110 führt den ”Ausführungsprioritätssignaltabellenerstellungsprozess” durch, um die ”Ausführungsprioritätssignaltabelle 120” zu erstellen.
  • S302:
  • Die Kontaktplanprogrammsortiereinheit 140 extrahiert Tabelleninformationen von Netzen in einem vorherbestimmten Bereich des Kontaktplanprogramms aus der erstellten Ausführungsprioritätssignaltabelle 120 und erstellt eine ”Ausführungsprioritätswahlsignaltabelle”.
  • S303:
  • Die Kontaktplanprogrammsortiereinheit 140 führt einen ”Prozess zum Löschen nicht aktualisierter Bezugssignale” (später beschrieben) durch und löscht nicht aktualisierte ”Bezugssignale” aus der ”Ausführungsprioritätswahlsignaltabelle”.
  • S304:
  • Die Kontaktplanprogrammsortiereinheit 140 führt einen ”Ausführungsprioritätstabellenerstellungsprozess” (später beschrieben) durch und erstellt eine ”Ausführungsprioritätstabelle”.
  • S305:
  • Die Kontaktplanprogrammsortiereinheit 140 sortiert die Kontaktplankreise auf Basis der erstellten ”Ausführungsprioritätstabelle” in einer neuen Reihenfolge. Entsprechend wird das Kontaktplanprogramm in dem vorherbestimmten Bereich automatisch korrigiert, um die effiziente Ausführungspriorität zu erzielen.
  • 21 ist ein Ablaufdiagramm, das einen Prozess des Löschens aller nicht geschriebenen ”Bezugssignale” (einen Prozess des Löschens aller nicht aktualisierten Bezugssignale” auf Basis der ”Aktualisierungssignale” in der ”Ausführungsprioritätswahlsignaltabelle” veranschaulicht.
  • S401:
  • Die Kontaktplanprogrammsortiereinheit 140 erstellt einen veränderlichen ”Index”, der eine Eintragsposition in der ”Ausführungsprioritätswahlsignaltabelle” angibt, und setzt eine Position des Anfangseintrags in den ”Index”.
  • S402:
  • Die Kontaktplanprogrammsortiereinheit 140 erlangt aus dem Eintrag, der durch den ”Index” in der ”Ausführungsprioritätswahlsignaltabelle” angegeben wird, eine ”Positionsinformation” und ein ”Bezugssignal”.
  • S403:
  • Wenn die erlangte ”Positionsinformation” leer ist, erhöht die Kontaktplanprogrammsortiereinheit 140 den ”Index” um eins. Wenn der Index das Ende der ”Ausführungsprioritätswahlsignaltabelle” nicht überschreitet, werden die Prozesse von S402 und danach unter Verwendung eines neuen ”Index” erneut durchgeführt.
  • S404:
  • Wenn das erlangte ”Bezugssignal” leer ist, erhöht die Kontaktplanprogrammsortiereinheit 140 den ”Index” um eins. Wenn der Index das Ende der ”Ausführungsprioritätswahlsignaltabelle” nicht überschreitet, werden die Prozesse von S402 und danach unter Verwendung eines neuen ”Index” erneut durchgeführt.
  • S405:
  • Wenn sowohl die erlangte ”Positionsinformation” als auch die erlangte ”Bezugsinformation” nicht leer sind, prüft die Kontaktplanprogrammsortiereinheit 140, ob unter den ”Aktualisierungssignalen” in der ”Ausführungsprioritätswahlsignaltabelle” das gleiche Signal wie das ”Bezugssignal” vorhanden ist. Wenn das gleiche Signal vorhanden ist, wird das ”Bezugssignal” in der ”Ausführungsprioritätswahlsignaltabelle” gelöscht.
  • S406 bis S407:
  • Wenn nach dem ”Bezugssignal” des durch den ”Index” in der ”Ausführungsprioritätswahlsignaltabelle” angegebenen Eintrags ein nächstes ”Bezugssignal” vorhanden ist, führt die Kontaktplanprogrammsortiereinheit 140 die Prozesse von S405 und danach erneut an dem nächsten ”Bezugssignal” durch. Das heißt, der Prozess des Löschens des Bezugssignals” in der ”Ausführungsprioritätswahlsignaltabelle” wird wiederholt durchgeführt.
  • S408:
  • Wenn andererseits kein nächstes ”Bezugssignal” vorhanden ist, erhöht die Kontaktplanprogrammsortiereinheit 140 den ”Index” um eins. Sofern der ”Index” das Ende nicht überschreitet, werden die Prozesse von S402 und danach wiederholt durchgeführt. Wenn der ”Index” das Ende überschreitet, endet der Prozessablauf.
  • 22A und 22B sind Ablaufdiagramme, die einen Prozess veranschaulichen, wodurch die Kontaktplanprogrammsortiereinheit 140 dazu gebracht wird, unter Verwendung der ”Ausführungsprioritätswahlsignaltabelle” und der ”Ausführungsprioritätstabelle” eine optimale Ausführungspriorität eines Kontaktplankreises zu bestimmen (Ausführungsprioritätstabellenerstellungsprozess).
  • S501:
  • Die Kontaktplanprogrammsortiereinheit 140 erstellt eine Variable ”Index B”, die eine Eintragsposition in der ”Ausführungsprioritätstabelle” angibt, und legt die Position des Anfangseintrags fest.
  • S502:
  • Die Kontaktplanprogrammsortiereinheit 140 setzt die Position des Anfangseintrags in eine Variable ”Index A”, die eine Eintragsposition in der ”Ausführungsprioritätswahlsignaltabelle” angibt.
  • S503:
  • Die Kontaktplanprogrammsortiereinheit 140 initialisiert eine Variable ”Anzahl der verarbeiteten Netze”, in der die Häufigkeit des Hinzufügens von ”Positionsinformationen” von der ”Ausführungsprioritätswahlsignaltabelle” zu der Ausführungsprioritätstabelle” gespeichert wird, eine Variable ”Anzahl der nicht verarbeiteten Netze”, in der eine Häufigkeit der Unmöglichkeit des Hinzufügens von ”Positionsinformation” gespeichert wird, und eine Variable ”nicht verarbeiteter Index”, in der ein Index in der ”Ausführungsprioritätswahlsignaltabelle”, dem keine ”Positionsinformation” hinzugefügt werden konnte, gespeichert wird.
  • S504:
  • Die Kontaktplanprogrammsortiereinheit 140 erlangt aus einem Eintrag, der durch den ”Index A” in der ”Ausführungsprioritätswahlsignaltabelle” angegeben wird, eine ”Positionsinformation” und ein ”Bezugssignal”.
  • S505:
  • Wenn in der ”Positionsinformation” keine Daten vorhanden sind, erhöht die Kontaktplanprogrammsortiereinheit 140 den ”Index A” um eins. Hier wird geprüft, ob der ”Index A” das Ende überschreitet, und werden die Prozesse von S504 und danach erneut unter Verwendung eines neuen ”Index A” durchgeführt, wenn der ”Index A” das Ende nicht überschreitet.
  • S506 und S509:
  • Wenn in der ”Positionsinformation” Daten vorhanden sind und in dem ”Bezugssignal” keine Daten vorhanden sind, bestimmt die Kontaktplanprogrammsortiereinheit 140, dass der Eintrag ein Kontaktplankreis ist, der bevorzugt ausgeführt werden sollte. Die Kontaktplanprogrammsortiereinheit 140 fügt dem Eintrag, der durch den ”Index B” in der ”Ausführungsprioritätstabelle” angegeben wird, die aus dem ”Index A” erlangte ”Positionsinformation” hinzu.
  • S510 bis S511:
  • Die Kontaktplanprogrammsortiereinheit 140 erhöht die ”Anzahl der verarbeiteten Netze” um eins und erhöht den ”Index B” in der ”Ausführungsprioritätstabelle” um eins.
  • S512:
  • Die Kontaktplanprogrammsortiereinheit 140 sucht und löscht durch einen ”Bezugssignallöschprozess” (später beschrieben) alle ”Bezugssignale”, die sich auf das ”Aktualisierungssignal” in dem Eintrag, der durch den Index A” in der ”Ausführungsprioritätswahlsignaltabelle” angegeben wird, beziehen.
  • S513:
  • Die Kontaktplanprogrammsortiereinheit 140 löscht die ”Positionsinformation” und das ”Aktualisierungssignal” in dem Eintrag, der durch den Index A” in der ”Ausführungsprioritätswahlsignaltabelle” angegeben wird.
  • S514:
  • Die Kontaktplanprogrammsortiereinheit 140 erhöht den ”Index A” in der ”Ausführungsprioritätswahlsignaltabelle” um eins.
  • S515:
  • Wenn der ”Index A” das Ende nicht überschreitet, führt die Kontaktplanprogrammsortiereinheit 140 die Prozesse von S504 und danach unter Verwendung eines neuen ”Index A” erneut durch. Wenn der Index A das Ende der ”Ausführungsprioritätswahlsignaltabelle” überschreitet, geht der Prozessablauf zu S516 über.
  • S507 bis S508 und S514 bis S515:
  • Wenn in der ”Positionsinformation” Daten vorhanden sind und in dem ”Bezugssignal” Daten vorhanden sind, erhöht die Kontaktplanprogrammsortiereinheit 140 die ”Anzahl der nicht verarbeiteten Netze” um eins und speichert sie den ”Index A” in der ”Ausführungsprioritätswahlsignaltabelle” in dem ”nicht verarbeiteten Index”. Der ”Index A” in der ”Ausführungsprioritätswahlsignaltabelle” wird um eins erhöht. Die Prozesse werden wiederholt durchgeführt, bis der ”Index A” das Ende der ”Ausführungsprioritätswahlsignaltabelle” überschreitet.
  • S516 bis S517:
  • Wenn der ”Index A” das Ende der ”Ausführungsprioritätswahlsignaltabelle” überschreitet, die ”Anzahl der nicht verarbeiteten Netze” anders als 0 lautet und die ”Anzahl der verarbeiteten Netze” gleich oder größer als 0 ist, führt die Kontaktplanprogrammsortiereinheit 140 die Prozesse von S502 und danach des Festlegens der Position des Anfangseintrags in dem ”Index A” in der ”Ausführungsprioritätswahlsignaltabelle” wiederholt durch.
  • Wenn der ”Index A” das Ende der ”Ausführungsprioritätswahlsignaltabelle” überschreitet, die ”Anzahl der nicht verarbeiteten Netze” anders als 0 lautet, und die ”Anzahl der verarbeiteten Netze” 0 ist, erlangt die Kontaktplanprogrammsortiereinheit 140 den ”Index A” in der ”Ausführungsprioritätswahlsignaltabelle” aus dem gespeicherten ”nicht verarbeiteten Index”, findet sie den ”Index A”, bei dem die Anzahl der ”Bezugssignale” in dem durch den ”Index A” angegebenen Eintrag am geringsten ist, löscht sie die ”Bezugssignale”, und führt sie die Prozesse von S502 und danach, die die Position des Anfangseintrags in dem ”Index A” in der ”Ausführungsprioritätswahlsignaltabelle” festlegen, wiederholt durch.
  • Wenn der ”Index A” das Ende der ”Ausführungsprioritätswahlsignaltabelle” überschreitet und die ”Anzahl der nicht verarbeiteten Netze” 0 lautet, beendet die Kontaktplanprogrammsortiereinheit 140 den Prozessablauf. Durch die oben beschriebenen Prozesse werden die optimierten Ausführungsprioritäten der Kontaktplankreise in der ”Positionsinformation” in der ”Ausführungsprioritätstabelle” gespeichert.
  • 23A und 23B sind Ablaufdiagramme, die einen Prozess veranschaulichen, wodurch die Kontaktplanprorammsortiereinheit 140 unter Verwendung des ”Aktualisierungssignals” in der ”Ausführungsprioritätswahlsignaltabelle” dazu gebracht wird, alle ”Bezugssignale”, die dem ”Aktualisierungssignal” entsprechen, zu löschen (Bezugssignallöschprozess).
  • S601:
  • Die Kontaktplanprogrammsortiereinheit 140 erlangt von dem Eintrag, der durch den ”Index” in der ”Ausführungsprioritätswahlsignaltabelle” angegeben wird, ein ”Aktualisierungssignal”.
  • S602 bis S603:
  • Wenn das ”Aktualisierungssignal” erlangt wird, setzt die Kontaktplanprogrammsortiereinheit 140 die Position des Anfangseintrags in den ”Index”, der die Eintragsposition in der ”Ausführungsprioritätswahlsignaltabelle” angibt.
  • S604:
  • Die Kontaktplanprogrammsortiereinheit 140 erlangt von dem ”Eintrag”, der durch den ”Index” in der ”Ausführungsprioritätswahlsignaltabelle” angegeben wird, ein ”Bezugssignal”.
  • S605 bis S606:
  • Wenn in S604 das ”Bezugssignal” erlangt wird, prüft die Kontaktplanprogrammsortiereinheit 140, ob das ”Bezugssignal” in dem ”Aktualisierungssignal” enthalten ist.
  • S607:
  • Wenn das ”Bezugssignal” in dem ”Aktualisierungssignal” enthalten ist, löscht die Kontaktplanprogrammsortiereinheit 140 das ”Bezugssignal” in dem Eintrag, der durch den ”Index” in der ”Ausführungsprioritätswahlsignaltabelle” angegeben wird.
  • S608 und S610:
  • Wenn in dem Eintrag ein nächstes ”Bezugssignal” verblieben ist, erlangt die Kontaktplanprogrammsortiereinheit 140 das nächste ”Bezugssignal”, und führt sie die Prozesse von S605 und danach an dem neuen ”Bezugssignal” durch.
  • S609:
  • Wenn in dem Eintrag kein nächstes ”Bezugssignal” enthalten ist, erhöht die Kontaktplanprogrammsortiereinheit 140 den ”Index” in der ”Ausführungsprioritätswahlsignaltabelle” um eins.
  • S611:
  • Wenn der ”Index” das Ende der ”Ausführungsprioritätswahlsignaltabelle” nicht überschreitet, erlangt die Kontaktplanprogrammsortiereinheit 140 ein erstes ”Bezugssignal” von dem Eintrag, der durch den ”Index” in der ”Ausführungsprioritätswahlsignaltabelle” angegeben ist (S604), und führt sie die Prozesse von S605 und danach wiederholt durch.
  • Wenn der ”Index” das Ende der ”Ausführungsprioritätswahlsignaltabelle” überschreitet, beendet die Kontaktplanprogrammsortiereinheit 140 den Prozessablauf.
  • Nach dieser Ausführungsform sortiert die Kontaktplanprogrammsortiereinheit 40 Kontaktplankreise, die in einem Kontaktplanprogramm in einem vorherbestimmten Bereich enthalten sind, auf Basis der durch die Kontaktplanprogrammanalyseeinheit 110 erstellten Ausführungsprioritätssignaltabelle 120 automatisch in einer effizient ausführbaren Reihenfolge. Entsprechend muss ein Benutzer die Kontaktplankreise nicht von Hand korrigieren.
  • Die vorliegende Erfindung ist nicht auf die oben angeführten Ausführungsformen beschränkt, sondern kann Abwandlungen wie etwa Ersetzungen, Weglassungen und Hinzufügungen von Komponenten und einer Änderung der Reihenfolge unterzogen werden, ohne von dem Hauptinhalt der vorliegenden Erfindung abzuweichen.
  • ZITATE ENTHALTEN IN DER BESCHREIBUNG
  • 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.
  • Zitierte Patentliteratur
    • JP 05-189012 [0003]
    • JP 3666507 B2 [0004]
    • JP 4922684 B2 [0005]

Claims (3)

  1. Kontaktplanprogrammanalysevorrichtung, umfassend: eine Kontaktplanprogrammanalyseeinheit, die ein Kontaktplanprogramm, das mehrere Kontaktplankreise enthält, analysiert und eine Ausführungsprioritätssignaltabelle, in der Ausführungsprioritäten der Kontaktplankreise, Bezugssignale, die in die Kontaktplankreise eingegebene Signale angeben, und Aktualisierungssignale, die von den Kontaktplankreisen ausgegebene Signale angeben, miteinander in eine Beziehung gebracht sind, erstellt; und eine Kontaktplanprogrammanalyseergebnisanzeigeeinheit, die durch Vergleichen der Ausführungsprioritäten, der Bezugssignale, und der Aktualisierungssignale von zwei der Kontaktplankreise auf Basis der Ausführungsprioritätssignaltabelle das Vorhandensein oder Nichtvorhandensein eines Kontaktplankreises, für den die Möglichkeit einer Verbesserung der Ausführungseffizienz besteht, bestimmt und das Bestimmungsergebnis anzeigt.
  2. Kontaktplanprogrammanalysevorrichtung nach Anspruch 1, wobei die Kontaktplanprogrammanalyseergebnisanzeigeeinheit das Bestimmungsergebnis durch Ändern wenigstens eines Anzeigeformats des Kontaktplankreises, für den die Möglichkeit einer Verbesserung der Ausführungseffizienz bestimmt wurde, anzeigt.
  3. Kontaktplanprogrammanalysevorrichtung, umfassend: eine Kontaktplanprogrammanalyseeinheit, die ein Kontaktplanprogramm, das mehrere Kontaktplankreise enthält, analysiert und eine Ausführungsprioritätssignaltabelle, in der Ausführungsprioritäten der Kontaktplankreise, Bezugssignale, die in die Kontaktplankreise eingegebene Signale angeben, und Aktualisierungssignale, die von den Kontaktplankreisen ausgegebene Signale angeben, miteinander in eine Beziehung gebracht sind, erstellt; und eine Kontaktplanprogrammsortiereinheit, die durch Vergleichen der Ausführungsprioritäten, der Bezugssignale, und der Aktualisierungssignale der mehreren Kontaktplankreise auf Basis der Ausführungsprioritätssignaltabelle die Ausführungsprioritäten der Kontaktplankreise, für die die Möglichkeit einer Verbesserung der Ausführungseffizienz des Kontaktplanprogramms besteht, bestimmt.
DE102017110567.0A 2016-05-19 2017-05-16 Kontaktplanprogrammanalysevorrichtung Pending DE102017110567A1 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2016-100578 2016-05-19
JP2016100578A JP6356726B2 (ja) 2016-05-19 2016-05-19 ラダープログラム解析装置

Publications (1)

Publication Number Publication Date
DE102017110567A1 true DE102017110567A1 (de) 2017-11-23

Family

ID=60255419

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102017110567.0A Pending DE102017110567A1 (de) 2016-05-19 2017-05-16 Kontaktplanprogrammanalysevorrichtung

Country Status (4)

Country Link
US (2) US10565010B2 (de)
JP (1) JP6356726B2 (de)
CN (1) CN107402563B (de)
DE (1) DE102017110567A1 (de)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10976907B2 (en) 2014-09-26 2021-04-13 Oracle International Corporation Declarative external data source importation, exportation, and metadata reflection utilizing http and HDFS protocols
US10210246B2 (en) 2014-09-26 2019-02-19 Oracle International Corporation Techniques for similarity analysis and data enrichment using knowledge sources
WO2019171428A1 (ja) * 2018-03-05 2019-09-12 株式会社日立製作所 回路生成装置及びソフトウェア生成装置
JP6795568B2 (ja) * 2018-11-07 2020-12-02 ファナック株式会社 トレース装置及びプログラマブルコントローラ
WO2020174627A1 (ja) * 2019-02-27 2020-09-03 三菱電機株式会社 設計支援装置、設計支援方法および設計支援プログラム
JP7423895B2 (ja) * 2019-03-12 2024-01-30 オムロン株式会社 ラダー図プログラム作成支援装置、ラダー図プログラム作成支援方法、およびラダー図プログラム作成支援プログラム
JP7483184B1 (ja) 2023-08-31 2024-05-14 三菱電機株式会社 分析プログラム、分析装置、支援システム及び分析方法

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS4922684B1 (de) 1971-07-09 1974-06-11
JPH05189012A (ja) 1992-01-10 1993-07-30 Yaskawa Electric Corp プログラマブルコントローラのプログラミング装置
JP3666507B2 (ja) 2003-07-25 2005-06-29 オムロン株式会社 シミュレーション支援ツールおよびラダープログラムの検証システムならびにテスト入力ラダープログラム生成方法ならびにラダープログラムの検証方法

Family Cites Families (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS61143809A (ja) * 1984-12-17 1986-07-01 Fuji Electric Co Ltd プログラマブルコントロ−ラ
JPH11110010A (ja) * 1997-10-03 1999-04-23 Nissan Motor Co Ltd 不要ラダー回路の検索方法及びその装置
JP2002099312A (ja) * 2000-09-22 2002-04-05 Mitsubishi Electric Corp プログラマブルコントローラおよび制御プログラム開発支援装置
US20050033457A1 (en) * 2003-07-25 2005-02-10 Hitoshi Yamane Simulation aid tools and ladder program verification systems
JP4513806B2 (ja) * 2004-04-15 2010-07-28 三菱電機株式会社 プログラマブルロジックコントローラの周辺装置及びそのプログラム作成方法
JP4541437B2 (ja) * 2006-03-29 2010-09-08 三菱電機株式会社 プログラム作成支援装置、プログラム作成支援方法とその方法をコンピュータに実行させるプログラムおよびそれを記録した記録媒体
JP4494361B2 (ja) * 2006-03-31 2010-06-30 三菱電機株式会社 ラダープログラム最適化装置および最適化プログラム
JP4922684B2 (ja) 2006-07-10 2012-04-25 神奈川県 ラダー図作成方法
JP5279901B2 (ja) * 2009-05-27 2013-09-04 三菱電機株式会社 シーケンスプログラムのデバッグ装置、デバッグ方法、及び、プログラム
JP2011257904A (ja) * 2010-06-08 2011-12-22 Hitachi Ltd 制御装置及びそのデータ処理方法
JP5599535B2 (ja) * 2012-03-26 2014-10-01 三菱電機株式会社 シーケンスプログラムデバッグ支援装置
CN104160344B (zh) 2012-12-17 2016-01-20 三菱电机株式会社 程序解析辅助装置及控制装置
CN105074591A (zh) * 2013-03-07 2015-11-18 三菱电机株式会社 梯形图程序显示程序及梯形图程序显示装置
JP6127755B2 (ja) * 2013-06-13 2017-05-17 オムロン株式会社 情報処理装置、情報処理装置の制御方法および制御プログラム
JP6626240B2 (ja) * 2014-03-13 2019-12-25 オムロン株式会社 コントローラ
JP2015176370A (ja) * 2014-03-14 2015-10-05 オムロン株式会社 制御システム、方法、プログラムおよび情報処理装置
DE112014003085T5 (de) * 2014-07-14 2016-03-17 Mitsubishi Electric Corporation SPS-System und Vorrichtung zur Unterstützung von Datenerzeugung für arithmetische Ausdrücke
JP6372308B2 (ja) * 2014-10-29 2018-08-15 オムロン株式会社 情報処理装置、情報処理方法、情報処理プログラム、および記録媒体
JP6563187B2 (ja) * 2014-11-12 2019-08-21 株式会社東芝 分散制御システム、制御装置及び制御方法
JP6224575B2 (ja) * 2014-12-19 2017-11-01 ファナック株式会社 指定した信号の演算条件によりラダー回路を検索可能なラダープログラム検索装置
JP6058244B2 (ja) * 2015-01-22 2017-01-11 三菱電機株式会社 エンジニアリングツールプログラム及びエンジニアリングツール
JP6122054B2 (ja) * 2015-03-13 2017-04-26 ファナック株式会社 ラダープログラムの分岐回路抽出表示機能を有するモニタ装置
WO2017138156A1 (ja) * 2016-02-12 2017-08-17 三菱電機株式会社 エンジニアリングツール

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS4922684B1 (de) 1971-07-09 1974-06-11
JPH05189012A (ja) 1992-01-10 1993-07-30 Yaskawa Electric Corp プログラマブルコントローラのプログラミング装置
JP3666507B2 (ja) 2003-07-25 2005-06-29 オムロン株式会社 シミュレーション支援ツールおよびラダープログラムの検証システムならびにテスト入力ラダープログラム生成方法ならびにラダープログラムの検証方法

Also Published As

Publication number Publication date
JP6356726B2 (ja) 2018-07-11
CN107402563A (zh) 2017-11-28
US20170337082A1 (en) 2017-11-23
CN107402563B (zh) 2019-08-13
US10838764B2 (en) 2020-11-17
US10565010B2 (en) 2020-02-18
US20200065142A1 (en) 2020-02-27
JP2017207962A (ja) 2017-11-24

Similar Documents

Publication Publication Date Title
DE102017110567A1 (de) Kontaktplanprogrammanalysevorrichtung
DE102005046388A1 (de) Modellgestützte Diagnose und Reparatur mittels Ereignisprotokollierung
DE102011014830A1 (de) Verfahren und vorrichtung zum analysieren vonsoftware
DE102018118330A1 (de) Simulationseinrichtung und Simulationsverfahren für Robotersystem
DE19612016A1 (de) Verfahren zur rechnergestützten Geometriemodellierung
DE102015016413A1 (de) Leiterprogrammabrufvorrichtung, die dazu fähig ist, Leiterschaltungen basierend auf vorgegebenen Signaloperationsbedingungen abzurufen
EP2854045B1 (de) Verfahren und System zum Bewerten von erhobenen Messwerten eines Systems
DE102019001129A1 (de) Numerische Steuervorrichtung
DE102016104029B4 (de) Kontrollvorrichtung mit der Funktion zum Extrahieren und Darstellen eines Zweigkreises in einem Kontaktplanprogramm
DE102016006202B4 (de) Numerische Steuervorrichtung zum Verwalten von Bearbeitungsdaten und Bearbeitungsergebnissen
DE102019125348A1 (de) Verfahren zur Unterstützung eines Benutzers bei einer landwirtschaftlichen Tätigkeit
DE112015006551T5 (de) Speicherprogrammierbare Steuerung, Entwicklungswerkzeug und Entwicklungswerkzeugprogramm
WO1996033470A1 (de) Abbildung eines graphen in einen speicher
DE102016007651A1 (de) Numerische Steuerung mit Funktion zur automatischen Auswahl eines Speicherungsziels für ein Bearbeitungsprogramm
DE102016103019A1 (de) Hardwaregestützte Kantenprofilerstellung
EP1092210B1 (de) Vorrichtung und verfahren zur erstellung eines virtuellen anlagenmodells
DE112013007399T5 (de) Globale Gittererstellung in Aufschiebungsbereichen durch ein optimiertes Entzerrungsverfahren
DE19963493A1 (de) Verfahren und System zur Prüfmuster-Erzeugung sowie rechnerlesbares Medium, welches das System zur Durchführung des Verfahrens anweist
DE10111831A1 (de) Verfahren zum automatischen Suchen und Sortieren von Fehlersignaturen von Wafern
DE112019001332T5 (de) Ermittlungsvorrichtung, fotoelektrischer Sensor mit mehreren optischen Achsen, Verfahren zur Steuerung einer Ermittlungsvorrichtung, Informationsverarbeitungsprogramm und Aufzeichnungsmedium
EP3508928A1 (de) Verfahren zum verarbeiten von alarmen in einem prozessleitsystem sowie operator-system
EP2642749B1 (de) Vorrichtung und Verfahren zur Optimierung der Bestimmung von Aufnahmebereichen
DE202023104442U1 (de) Auf Software-Evolution basierendes Aspekt-Mining-System für Data Mining
WO2021243387A1 (de) Verfahren zum detektieren von bauten einer nagetierpopulation auf einem geländeabschnitt
WO2017041191A1 (de) Vorhersage des aussehens einer textilen fläche

Legal Events

Date Code Title Description
R012 Request for examination validly filed
R016 Response to examination communication
R082 Change of representative

Representative=s name: HL KEMPNER PATENTANWAELTE, SOLICITORS (ENGLAND, DE

Representative=s name: HL KEMPNER PATENTANWALT, RECHTSANWALT, SOLICIT, DE