-
Gebiet
-
Die vorliegende Erfindung betrifft eine programmierbare Steuerung, ein programmierbares Steuerungssystem und ein Verfahren zum Erzeugen einer Ausführungsfehlerinformation.
-
Hintergrund
-
Dass viele programmierbare Steuerungen eine Funktion aufweisen, die einen Anwender bei einem Auftreten eines Ausführungsfehlers über einen Ausführungsfehler eines Steuerprogramms informiert, ist bereits bekannt. Durch diese kann ein Anwender die Information nutzen, um zum Ausführungsfehler führende Faktoren zu analysieren.
-
In Patentdokument 1 wird beispielsweise ein Verfahren offenbart, bei dem eine Zentraleinheit (CPU) als Ausführungsfehlerinformation eine Rücksprungadresse eines Unterprogramms erzeugt. Bei diesem Verfahren wird beim Ausführen eines Unterprogramms eine Rücksprungadresse des Unterprogramms in einen Stapelspeicherbereich gespeichert, indem eine Ablaufanweisung zum Speichern der Rücksprungadresse des Unterprogramms ausgeführt wird. Beim Feststellen einer Anomalie bei der Ausführung des Unterprogramms wird auf die in dem Stapelspeicherbereich gespeicherte Rücksprungadresse für das Unterprogramm verwiesen.
-
In Patentdokument 2 wird ein Verfahren offenbart, das einen Anwender mit einer Ausführungsfehlerinformation versorgt. Bei diesem Verfahren werden, wenn in einem Funktionsblock eines Anwenderprogramms eine Anomalie festgestellt wird, in dem Speicher der programmierbaren Steuerung eine Kennung der Zustandsanomalie und ein Zustandscode gesichert, der die Anomalie beschreibt. Auf den Speicher der programmierbaren Steuerung kann von außen zugegriffen werden, um das Vorhandensein der Zustandsanomalie, den die Anomalie aufweisenden Funktionsblock und die Faktoren der Anomalie zu ermitteln.
-
Zitierungsliste
-
Patentliteratur
-
- Patentdokument 1: offengelegte japanische Patentanmeldung Nr. 04-215106 .
- Patentdokument 2: offengelegte japanische Patentanmeldung Nr. 2007-304939 .
-
Kurzbeschreibung
-
Technische Problemstellung
-
In den letzten Jahren tendierten Steuerprogramme dazu, immer umfangreicher zu werden, wodurch die Komponentenspezialisierung von Steuerprogrammen zunimmt. Ein komponentenspezialisiertes Steuerprogramm (nachfolgend als komponentenspezifisches Steuerprogramm bezeichnet) ist im Allgemeinen ein, für eine bestimmte Funktion geschaffenes, Steuerprogramm, das seine beabsichtigte Funktion auf Basis von bereitgestellten Daten erzielt. Ein komponentenspezifisches Steuerprogramm wird daher von mehreren Steuerprogrammen aufgerufen, wobei seine Eingabedaten nicht festgelegt sind.
-
Mit den in den Patentdokumenten 1 und 2 offenbarten Verfahren ist die Analyse von zu einem Ausführungsfehler führenden Faktoren schwierig, wenn der Ausführungsfehler bei einem aufgerufenen Steuerprogramm auftritt, das von mehreren Steuerprogrammen aufgerufen wird.
-
Insbesondere werden bei dem im Patentdokument 1 offenbarten Verfahren, wenn bei einem komponentenspezifischen Steuerprogramm ein Ausführungsfehler auftritt, keine der an das komponentenspezifische Steuerprogramm eingegebenen Daten gespeichert. Bei dem im Patentdokument 2 offenbarten Verfahren werden, wenn bei einem komponentenspezifischen Steuerprogramm ein Ausführungsfehler auftritt, weder der Name des aufrufenden Steuerprogramms, noch die beim Aufruf eingegebenen Daten angezeigt. Hierdurch ergibt sich bei einem komponentenspezifischen Steuerprogramm, das von mehreren Steuerprogrammen aufgerufen wurde und dessen Eingabedaten nicht festgelegt sind, ein Problem, weil die Analyse der Faktoren schwierig ist. Bei dem in Patentdokument 1 offenbarten Verfahren besteht ein anderes Problem darin, dass eine unmittelbare Identifizierung des aufrufenden Steuerprogramms nur schwer möglich ist, weil die Information zum Identifizieren des aufrufenden Steuerprogramms die Rücksprungadresse des Steuerprogramms ist.
-
Die vorliegende Erfindung dient der Überwindung der oben beschriebenen Probleme, wobei eine Aufgabenstellung der Erfindung in der Angabe einer programmierbaren Steuerung, eines programmierbaren Steuerungssystems und eines Verfahrens zum Erzeugen einer Ausführungsfehlerinformation besteht, die einem Anwender beim Auftreten eines Ausführungsfehlers ein korrektes und effizientes Verständnis der zum Ausführungsfehler eines komponentenspezifischen Steuerprogramms führenden Faktoren ermöglicht.
-
Lösung der Problemstellung
-
Die vorliegende Erfindung dient der Lösung der oben angegebenen Aufgabenstellung und bezieht sich auf eine programmierbare Steuerung, die eine Verarbeitung nach Maßgabe eines Steuerprogramms durchführt und die Folgendes aufweist: eine Steuerprogramm-Speichereinheit zum Speichern eines Steuerprogramms und eines aufzurufenden Steuerprogramms, das von dem Steuerprogramm aufgerufen wird, eine Steuerprogramm-Ausführungseinheit zum Ausführen einer Verarbeitung nach Maßgabe des sich in der Steuerprogramm-Speichereinheit befindenden Steuerprogramms, eine Rücksprungadressen-Speichereinheit zum Speichern einer Rücksprungadresse zu der nach der Ausführung des aufzurufenden Steuerprogramms durch die Steuerprogramm-Ausführungseinheit zurückzuspringen ist, eine Eingabedaten-Speichereinheit zum Speichern von Eingabedaten für das aufzurufende Steuerprogramm, eine Abbildungsinformations-Speichereinheit zum Speichern von Abbildungsinformation, die die Speicherpositionen des Steuerprogramms und des aufzurufenden Steuerprogramms in der Steuerprogramm-Speichereinheit mit den Programmnamen des Steuerprogramms und des aufzurufenden Steuerprogramms verknüpft, und eine Ausführungsfehlerinformations-Verwaltungseinheit zum Erfassen einer Ausführungsfehlerinformation wenn ein Fehler bei der Ausführung des aufzurufenden Steuerprogramms durch die Steuerprogramm-Ausführungseinheit auftritt. Die Steuerprogramm-Ausführungseinheit speichert bei einem Aufruf des aufzurufenden Steuerprogramms während der Ausführung des Steuerprogramms in der Rücksprungadressen-Speichereinheit eine Rücksprungadresse, zu der nach Beendigung der Ausführung des aufzurufenden Steuerprogramms zurückgesprungen werden soll, und speichert in der Eingabedaten-Speichereinheit Eingabedaten für das aufzurufende Steuerprogramm. Bei Auftreten eines Fehlers in der Ausführung des aufzurufenden Steuerprogramms erfasst die Ausführungsfehlerinformations-Verwaltungseinheit die Ausführungsfehlerinformation, welche die in der Rücksprungadressen-Speichereinheit gespeicherte Rücksprungadresse, die in der Eingabedaten-Speichereinheit gespeicherten Eingabedaten und einen Programmnamen umfasst, der sich auf die unter Verwendung der Abbildungsinformation erhaltene Rücksprungadresse bezieht.
-
Vorteilhafte Wirkungen der Erfindung
-
Bei der vorliegenden Erfindung werden beim Aufruf eines aufzurufenden Steuerprogramms eine nach der Ausführung des aufzurufenden Steuerprogramms zu verwendende Rücksprungadresse sowie Eingabedaten gespeichert. Tritt bei der Ausführung des aufzurufenden Steuerprogramms ein Fehler auf, dann wird ein aufrufendes Steuerprogramm über die Rücksprungadresse identifiziert, wobei die programmierbare Steuerung eine Ausführungsfehlerinformation erfasst, die den Namen des aufrufenden Steuerprogramms sowie die gespeicherte Rücksprungadresse und die gespeicherten Eingabedaten umfasst. Die Information kann dann einem Anwender zur Verfügung gestellt werden. Auf diese Weise ermöglicht die vorliegende Erfindung einem Anwender bei Auftreten eines Ausführungsfehlers die Identifizierung des aufrufenden Steuerprogramms und der Eingabedaten und damit eine einfache Analyse der zum Ausführungsfehler führenden Faktoren. Die vorliegende Erfindung bewirkt damit eine Reduzierung des Aufwands für Entwicklung und Pflege eines Systems mit einem komponentenspezifischen Steuerprogramm.
-
Kurzbeschreibung der Figuren
-
1 zeigt ein Blockschaltbild zur Veranschaulichung des Aufbaus eines programmierbaren Steuerungssystems gemäß einer Ausführungsform.
-
2 zeigt eine graphische Darstellung zur Veranschaulichung eines Beispiels für in einem Stapelspeicher gespeicherte Daten.
-
3 zeigt eine graphische Darstellung zur Veranschaulichung eines Beispiels für in einer Datenspeichereinheit gespeicherte Daten.
-
4 zeigt eine graphische Darstellung zur Veranschaulichung einer beispielhaften Konfiguration einer Abbildungsinformation.
-
5 zeigt eine graphische Darstellung zur Veranschaulichung eines Beispiels einer Darstellung einer Ausführungsfehlerinformation an einem Bildschirm.
-
6 zeigt eine graphische Darstellung zur Veranschaulichung einer bildlichen Wiedergabe der Ausführung von Anwenderprogrammen in einer programmierbaren Steuerung.
-
7 zeigt eine graphische Darstellung zur Veranschaulichung des Stapelspeichers, der Datenspeichereinheit und der Ausführungsfehlerinformation während der in 6 veranschaulichten Verarbeitung.
-
Beschreibung von Ausführungsformen
-
Unter Bezugnahme auf die Figuren werden bevorzugte Ausführungsformen einer programmierbaren Steuerung, eines programmierbaren Steuerungssystems und eines Verfahren zum Erzeugen einer Ausführungsfehlerinformation gemäß der vorliegenden Erfindung ausführlich beschrieben. Die vorliegende Erfindung ist nicht auf diese Ausführungsformen beschränkt.
-
1 zeigt ein schematisches Blockschaltbild zur Veranschaulichung des Aufbaus eines programmierbaren Steuerungssystems gemäß einer Ausführungsform. Das programmierbare Steuerungssystem weist eine Zentraleinheit 100 und ein Programmierwerkzeug 200 auf, die über eine Kommunikationsleitung miteinander verbunden sind. Die Zentraleinheit 100 bildet eine programmierbare Steuerung und führt ein Anwenderprogramm aus. Ein von der programmierbaren Steuerung auszuführendes Anwenderprogramm wird mit dem Programmierwerkzeug 200 programmiert und von Programmfehlern bereinigt.
-
Die Zentraleinheit 100 weist eine Anwenderprogramm-Speichereinheit 101, bei der es sich um eine Steuerprogramm-Speichereinheit handelt, einen Stapelspeicher 102, bei dem es sich um eine Rücksprungadressen-Speichereinheit handelt, eine Datenspeichereinheit 103, bei der es sich um die Eingabedaten-Speichereinheit handelt, eine Steuerprogramm-Ausführungseinheit 104, bei der es sich um eine Einheit zur Ausführung von Steuerprogrammen handelt, eine Abbildungsinformations-Speichereinheit 105, bei der es sich um eine Einheit zum Speichern von Abbildungsinformationen handelt, eine Backup-Datenspeichereinheit 106, bei der es sich um eine Datensicherungs-Speichereinheit handelt, eine Ausführungsfehlerinformations-Verwaltungseinheit 107, bei der es sich um eine Einheit zur Verwaltung von Ausführungsfehlerinformationen handelt, und eine Kommunikationseinheit 108, bei der es sich um eine Übertragungseinheit handelt, auf.
-
Die Anwenderprogramm-Speichereinheit 101 speichert ein Anwenderprogramm, beispielsweise ein Kontaktplanprogramm (englisch: ladder program), das von der Zentraleinheit 100 ausgeführt werden soll. Bei dieser Ausführungsform wird das Hauptprogramm, bei dem es sich um ein Programm handelt, das gemäß einer Anwenderanweisung ausgeführt wird, als Steuerprogramm bezeichnet, und ein Unterprogramm, bei dem es sich um ein Programm handelt, das ausgeführt wird, wenn es von dem Steuerprogramm aufgerufen wird, wird als komponentenspezifisches Steuerprogramm bezeichnet. Das komponentenspezifische Steuerprogramm entspricht einem aufzurufenden Steuerprogramm. Nachfolgend wird ein Beispiel beschrieben, bei dem in der Anwenderprogramm-Speichereinheit 101 ein Steuerprogramm 121 namens ”MAIN1”, ein Steuerprogramm 122 namens ”MAIN2” und ein Steuerprogramm 123 namens ”MAIN3”, sowie ein komponentenspezifisches Steuerprogramm 131 namens ”FUNC” gespeichert sind. Die drei Steuerprogramme 121 bis 123 sind so ausgebildet, dass sie das komponentenspezifische Steuerprogramm 131 aufrufen.
-
Beim Aufruf des komponentenspezifischen Steuerprogramms durch eines der Steuerprogramme speichert der Stapelspeicher 102 eine Rücksprungadresse, die die Position in dem Steuerprogramm angibt, an die nach Abschluss der Ausführung des komponentenspezifischen Steuerprogramms zurückzuspringen ist. 2 zeigt eine graphische Darstellung zur Veranschaulichung eines Beispiels für in dem Stapelspeicher gespeicherte Daten. Wie der Figur zu entnehmen speichert der Stapelspeicher 102 beim Aufruf des komponentenspezifischen Steuerprogramms durch das Steuerprogramm eine Rücksprungadresse. Die Anzahl der Rücksprungadressen, die in dem Stapelspeicher 102 gespeichert werden können, wird von dem Systementwickler im Voraus festgelegt. Die gespeicherte Rücksprungadresse wird bei Beendigung der Ausführung des aufgerufenen komponentenspezifischen Steuerprogramms gelöscht, und das aufrufende Steuerprogramm wird wieder aufgenommen, wenn die Rücksprungadresse gelesen wurde.
-
In der Datenspeichereinheit 103 werden die Eingabedaten für das aufzurufende komponentenspezifische Steuerprogramm gespeichert. 3 zeigt eine graphische Darstellung zur Veranschaulichung eines Beispiels für in einer Datenspeichereinheit gespeicherte Daten. Wie der Figur zu entnehmen werden in der Datenspeichereinheit 103 beim Aufruf des komponentenspezifischen Steuerprogramms durch das Steuerprogramm Eingabedaten für das komponentenspezifische Steuerprogramm gespeichert. Die in der Datenspeichereinheit 103 gespeicherten Daten werden zu einem beliebigen Zeitpunkt initialisiert. Die gespeicherten Eingabedaten werden beispielsweise gelöscht, wenn die Ausführung des aufgerufenen komponentenspezifischen Steuerprogramms beendet und die Ausführung des aufrufenden Steuerprogramms wieder aufgenommen wird.
-
Die Steuerprogramm-Ausführungseinheit 104 führt die in der Anwenderprogramm-Speichereinheit 101 abgelegten Anwenderprogramme aus und nimmt einen Aufruf vor. Wenn das Steuerprogramm einen Aufruf enthält, speichert die Steuerprogramm-Ausführungseinheit 104 eine Rücksprungadresse in den Stapelspeicher 102, ruft die Eingabedaten für das aufzurufende komponentenspezifische Steuerprogramm von dem aufrufenden Steuerprogramm ab und speichert die Eingabedaten in der Datenspeichereinheit 103, wenn der Aufruf durch das Steuerprogramm erfolgt.
-
Die Abbildungsinformations-Speichereinheit 105 speichert Abbildungsinformation, die die Speicherpositionen (Adressen) des Anwenderprogramms in der Anwenderprogramm-Speichereinrichtung 101 mit den Namen der Anwenderprogramme verknüpft. 4 zeigt eine graphische Darstellung zur Veranschaulichung einer beispielhaften Konfiguration der Abbildungsinformation. Wie der Figur zu entnehmen umfasst die Abbildungsinformation die Namen der Anwenderprogramme (der Steuerprogramme und des komponentenspezifischen Steuerprogramms), die in der Anwenderprogramm-Speichereinheit 101 gespeichert sind, sowie die erste Adresse und die letzte Adresse des Anwenderprogramms, worüber die Speicherpositionen des Anwenderprogramms in der Anwenderprogramm-Speichereinheit 101 angegeben werden.
-
Die Ausführungsfehlerinformations-Verwaltungseinheit 107 erfasst die in dem Stapelspeicher 102 gespeicherte Rücksprungadresse, wenn bei dem aufgerufenen komponentenspezifischen Steuerprogramm ein Ausführungsfehler auftritt. Die Ausführungsfehlerinformations-Verwaltungseinheit 107 erfasst auch den zu der in dem Stapelspeicher 102 gespeicherten Rücksprungadresse gehörenden Namen des aufrufenden Steuerprogramms, indem sie die Abbildungsinformation in der Abbildungsinformations-Speichereinheit 105 nutzt. Die Ausführungsfehlerinformations-Verwaltungseinheit 107 ruft aus der Datenspeichereinheit 103 außerdem die Eingabedaten für das aufgerufene Steuerprogramm ab. Anschließend speichert die Ausführungsfehlerinformations-Verwaltungseinheit 107 die Ausführungsfehlerinformation, welche den Namen des aufrufenden Steuerprogramms, die Adresse der Aufrufposition (Rücksprungadresse) und die abgerufenen Eingabedaten enthält, in der Backup-Datenspeichereinheit 106.
-
Zusätzlich zur Ausführungsfehlerinformation erfasst die Ausführungsfehlerinformations-Verwaltungseinheit 107 Fehlerdetailinformationen, die den Namen des beim Auftreten des Ausführungsfehlers ausgeführten komponentenspezifischen Steuerprogramms, die Fehlerereignisadresse des komponentenspezifischen Steuerprogramms auftrat, und einen den Fehler kennzeichnenden Fehlercode umfassen.
-
Die Backup-Datenspeichereinheit 106 speichert die Ausführungsfehlerinformation, die den Namen des aufrufenden Steuerprogramms, die Adresse der Aufrufposition (Rücksprungadresse) und die von der Ausführungsfehlerinformations-Verwaltungseinheit 107 abgerufenen Eingabedaten enthält. In der Backup-Datenspeichereinheit 106 können auch Detailinformationen zum Fehler gespeichert werden. Die Kommunikationseinheit 108 steht mit dem Programmierwerkzeug 200 in Verbindung. Bei Erhalt einer Anfrage des Programmierwerkzeugs 200 zum Erhalt der Ausführungsdaten überträgt die Kommunikationseinheit 108 die von der Ausführungsfehlerinformations-Verwaltungseinheit 107 erfasste Ausführungsfehlerinformation an das Programmierwerkzeug 200.
-
Das Programmierwerkzeug 200 umfasst eine Anwenderprogramm-Erstellungseinheit 201, eine Anwenderprogramm-Speichereinheit 202, eine Kommunikationseinheit 203, die eine Übertragungseinheit darstellt, und eine Ausführungsfehlerinformationsanzeige-Verarbeitungseinheit 204, bei der es sich um eine Verarbeitungseinheit für die Anzeige von Ausführungsfehlerinformationen handelt.
-
Die Anwenderprogramm-Erstellungseinheit 201 erstellt ein den Eingaben eines Anwenders entsprechendes Anwenderprogramm (ein Steuerprogramm oder ein komponentenspezifisches Steuerprogramm) und zeigt dem Anwender ein Anwenderprogramm an. Die Anwenderprogramm-Speichereinheit 202 speichert ein von dem Anwender erstelltes Anwenderprogramm. Das in der Anwenderprogramm-Speichereinheit 202 gespeicherte Anwenderprogramm wird den Anweisungen des Anwenders entsprechend über die Kommunikationseinheit 203 in der Anwenderprogramm-Speichereinheit 101 der Zentraleinheit 100 gespeichert. Die Kommunikationseinheit 203 steht mit der programmierbaren Steuerung (der Zentraleinheit 100) in Verbindung.
-
Die Ausführungsfehlerinformationsanzeige-Verarbeitungseinheit 204 zeigt die Ausführungsfehlerinformation bei einem Auftreten eines Ausführungsfehlers an, wobei es sich um die Information handelt, die über die Kommunikationseinheit 203 von der Zentraleinheit 100 erhalten wurde. Die Ausführungsfehlerinformationsanzeige-Verarbeitungseinheit 204 kann von der Zentraleinheit 100 auch die detaillierten Informationen zum Fehler erhalten und die detaillierten Fehlerinformationen zusätzlich zur Fehlerinformation darstellen. 5 zeigt eine graphische Darstellung zur Veranschaulichung eines Beispiels einer Darstellung einer Ausführungsfehlerinformation an einem Bildschirm. Wie der Figur zu entnehmen weist die Bildschirmdarstellung 300 einer Ausführungsfehlerinformation einen Anzeigebereich 310 für eine detaillierte Fehlerinformation auf, worin die detaillierte Fehlerinformation angezeigt wird, und einen Anzeigebereich 320 für eine Ausführungsfehlerinformation, worin die Ausführungsfehlerinformation dargestellt wird. Die detaillierte Fehlerinformation umfasst den Fehlercode, der den Typus des aufgetretenen Fehlers identifiziert, die Beschreibung des aufgetretenen Fehlers, die Fehlerereignisadresse, bei der es sich um die Adresse handelt, an der der Fehler auftrat, und den Namen des Steuerprogramms, der das Steuerprogramm identifiziert, bei dem der Fehler aufgetreten ist. Die Ausführungsfehlerinformation gibt den Zustand wieder, in dem sich das aufgerufene komponentenspezifische Steuerprogramm beim Auftreten eines Ausführungsfehlers befand, und wird in der Backup-Datenspeichereinheit 106 der Zentraleinheit 100 gespeichert. Die Ausführungsfehlerinformation umfasst insbesondere den Namen des Steuerprogramms, bei dem der Ausführungsfehler auftrat, die aufrufende Adresse und die Eingabedaten.
-
Das Programmierwerkzeug 200 ist auch mit einer Ausgabeeinrichtung 211 ausgestattet, beispielsweise einem Flüssigkristallbildschirm, sowie einer Eingabeeinrichtung 212, beispielsweise einer Tastatur oder einem Zeigegerät. Die Ausgabeeinrichtung 211 gibt eine Bildschirmgraphik wieder, die von der Anwenderprogramm-Erstellungseinheit 201 und der Ausführungsfehlerinformationsanzeige-Verarbeitungseinheit 204 erzeugt wurde. Die Eingabeeinrichtung 212 gibt die erforderlichen Informationen in die Anwenderprogramm-Erstellungseinheit 201 und die Ausführungsfehlerinformationsanzeige-Verarbeitungseinheit 204 ein.
-
Das oben beschriebene Programmierwerkzeug 200 kann von einem Informationsverarbeitungsgerät aus konfiguriert werden, beispielsweise einem Personal Computer, der einen Hauptprozessor (CPU), einen Festwertspeicher (ROM von englisch: read only memory), einen Direktzugriffsspeicher (RAM von englisch: random access memory), einen sekundären Speicher, eine Kommunikationseinheit, eine Anzeigeeinheit und eine Eingabeeinheit aufweist.
-
Es werden nun die von dem programmierbaren Steuerungssystem mit der oben angegebenen Konfiguration bei einem Auftreten eines Ausführungsfehlers durchgeführten Prozesse beschrieben. 6 zeigt eine graphische Darstellung zur Veranschaulichung einer bildlichen Wiedergabe der Ausführung von Anwenderprogrammen in der programmierbaren Steuerung. 7 zeigt eine schematische graphische Darstellung zur Veranschaulichung des Stapelspeichers, der Datenspeichereinheit und der Ausführungsfehlerinformation während der in 6 dargestellten Verarbeitung.
-
Wie in 6 illustriert führt die Steuerprogramm-Ausführungseinheit 104 der programmierbaren Steuerung (der Zentraleinheit 100) das Steuerprogramm (MAINZ) 121 aus. Das Steuerprogramm 121 weist an der Adresse ”1100” eine Anweisung zum Aufrufen des komponentenspezifischen Steuerprogramms (FUNC) 131 auf. Die Anweisung wird gelesen und bei Ausführung der Anweisung ruft die Steuerprogramm-Ausführungseinheit 104 die Eingabedaten ”10” ab und ruft mit den Eingabedaten ”10” das komponentenspezifische Steuerprogramm 131 auf (Schritt S11 in 6). Beim Aufruf des komponentenspezifischen Steuerprogramms 131 durch das Steuerprogramm 121 speichert die Steuerprogramm-Ausführungseinheit 104 die Rücksprungadresse ”1100” in dem Stapelspeicher 102 und die Eingabedaten ”10” für das komponentenspezifische Steuerprogramm 131 in der Datenspeichereinheit 103 (Schritt S11 in 7).
-
Die Steuerprogramm-Ausführungseinheit 104 führt das durch das Steuerprogramm 121 mit den Eingabedaten ”10” aufgerufene komponentenspezifische Steuerprogramm 131 aus. Hierbei wird angenommen, dass das komponentenspezifische Steuerprogramm 131 erfolgreich beendet wird. Nach Beendigung des komponentenspezifischen Steuerprogramms 131 ruft die Steuerprogramm-Ausführungseinheit 104 die in dem Stapelspeicher 102 gespeicherte Rücksprungadresse ”1100” ab und kehrt zur Adresse ”1100” des aufrufenden Steuerprogramms 121 zurück (Schritt S12 in 6). Beim Abrufen der Rücksprungadresse aus dem Stapelspeicher 102 löscht die Steuerprogramm-Ausführungseinheit 104 in dem Stapelspeicher 102 die zugehörige Rücksprungadresse und in der Datenspeichereinheit 103 die zugehörigen Eingabedaten (Schritt S12 in 7). Anschließend liest die Steuerprogramm-Ausführungseinheit 104 eine Anweisung an der Adresse, die auf die Rücksprungadresse ”1100” folgt, um diese nachstehende Anweisung des Steuerprogramms 121 auszuführen.
-
Nach der Ausführung des Steuerprogramms 121 führt die Steuerprogramm-Ausführungseinheit 104 das Steuerprogramm (MAIN2) 122 aus. Das Steuerprogramm 122 weist an der Adresse ”2340” eine Anweisung zum Aufrufen des komponentenspezifischen Steuerprogramms (FUNC) 131 auf. Die Anweisung wird gelesen und bei Ausführung der Anweisung ruft die Steuerprogramm-Ausführungseinheit 104 die Eingabedaten ”99” ab und ruft mit den Eingabedaten ”99” das komponentenspezifische Steuerprogramm 131 auf (Schritt S13 in 6). Beim Aufruf des komponentenspezifischen Steuerprogramms 131 durch das Steuerprogramm 122 speichert die Steuerprogramm-Ausführungseinheit 104 die Rücksprungadresse ”2340” in dem Stapelspeicher 102 und die Eingabedaten ”99” für das komponentenspezifische Steuerprogramm 131 in der Datenspeichereinheit 103 (Schritt S13 in 7).
-
Die Steuerprogramm-Ausführungseinheit 104 führt das durch das Steuerprogramm 122 mit den Eingabedaten ”99” aufgerufene komponentenspezifische Steuerprogramm 131 aus. Hierbei wird angenommen, dass während der Ausführung des komponentenspezifischen Steuerprogramms 131 ein Ausführungsfehler auftritt (Schritt S14 in 6). Beim Auftreten des Ausführungsfehlers des komponentenspezifischen Steuerprogramms 131 ruft die Ausführungsfehlerinformations-Verwaltungseinheit 107 der Zentraleinheit 100 die in dem Stapelspeicher 102 und in der Datenspeichereinheit 103 über das Auftreten eines Ausführungsfehlers gespeicherte Information ab. Die Ausführungsfehlerinformations-Verwaltungseinheit 107 ruft hierbei die sich in dem Stapelspeicher 102 befindende Rücksprungadresse ”2340” und von einer Adresse, die der Speicherposition der Eingabedaten des Steuerprogramms 122 in der Datenspeichereinheit 103 entspricht, die Eingabedaten ”99” ab (Schritt S15 in 7).
-
Bei einem Auftreten eines Ausführungsfehlers ruft die Ausführungsfehlerinformations-Verwaltungseinheit 107 auch den Namen des aufrufenden Steuerprogramms ab, wobei die abgerufene Rücksprungadresse auf Basis der in der Abbildungsinformations-Speichereinheit 105 befindlichen Abbildungsinformation verwendet wird (Schritt S16 in 7). Die Abbildungsinformation in 4 gibt hierbei an, dass es sich bei dem Anwenderprogramm, zu dem die Rücksprungadresse ”2340” gehört, um ”MAIN2” handelt. An diesem Punkt ruft die Ausführungsfehlerinformations-Verwaltungseinheit 107 auch die detaillierte Fehlerinformation ab, die den Namen des Steuerprogramms, bei dem der Ausführungsfehler auftrat, die Fehlerereignisadresse des Steuerprogramms, den Fehlercode und die Fehlerbeschreibung enthält.
-
Die Ausführungsfehlerinformations-Verwaltungseinheit 107 speichert in der Backup-Datenspeichereinheit 106 zudem die Ausführungsfehlerinformation, die den Namen des Steuerprogramms, die Rücksprungadresse (Adresse der aufrufenden Position) und die abgerufenen Eingabedaten enthält. Zusätzlich zur Ausführungsfehlerinformation speichert die Ausführungsfehlerinformations-Verwaltungseinheit 107 auch die detaillierte Fehlerinformation in der Backup-Datenspeichereinheit 106 ab.
-
Nimmt ein Anwender mithilfe des Programmierwerkzeugs 200 anschließend eine Abfrage zum Abrufen der Ausführungsfehlerinformation vor, dann überträgt die Ausführungsfehlerinformationsanzeige-Verarbeitungseinheit 204 die Abfrage zum Abrufen der Ausführungsfehlerinformation über die Kommunikationseinheit 203 an die Ausführungsfehlerinformations-Verwaltungseinheit 107 der Zentraleinheit 100.
-
Bei einem Empfang der Abfrage zum Abrufen der Ausführungsfehlerinformation überträgt die Ausführungsfehlerinformations-Verwaltungseinheit 107 der Zentraleinheit 100 die Ausführungsfehlerinformation, die den Namen des das komponentenspezifische Steuerprogramm 131, bei dem der Ausführungsfehler auftrat, aufrufenden Steuerprogramms, die Rücksprungadresse (Adresse der aufrufenden Position) und die Eingabedaten für den Aufruf, die durch die oben beschriebene Verarbeitung abgerufen werden, enthält, sowie die detaillierte Fehlerinformation, die den Namen des Steuerprogramms, bei dem der Ausführungsfehler auftrat, die Fehlerereignisadresse des Steuerprogramms, den Fehlercode und die Fehlerbeschreibung enthält, über die Kommunikationseinheit 108 an die Ausführungsfehlerinformationsanzeige-Verarbeitungseinheit 204 des Programmierwerkzeugs 200.
-
Die Ausführungsfehlerinformationsanzeige-Verarbeitungseinheit 204 des Programmierwerkzeugs 200 zeigt beim Erhalt der Ausführungsfehlerinformation und der detaillierten Fehlerinformation die abgerufene Ausführungsfehlerinformation und die abgerufene detaillierte Fehlerinformation an der Ausgabeeinrichtung 211 an. Die Information wird an der Ausgabeeinrichtung 211 unter Verwendung eines frei wählbaren Verfahrens dargestellt und kann zum Beispiel in einer wie in 5 dargestellten Form angezeigt werden. Das Verfahren zum Erzeugen des Ausführungsfehlers und das Verfahren zum Anzeigen des Ausführungsfehlers werden dadurch beendet.
-
Wie oben beschrieben wurde, kann ein Anwender die zu einem Ausführungsfehler führenden Faktoren selbst bei einem komponentenspezifischen Steuerprogramm, das von mehreren Steuerprogrammen aufgerufen wird und dessen Eingabedaten nicht festgelegt sind, einfach analysieren, indem auf der Ausgabeeinrichtung 211 bei einem Auftreten des Ausführungsfehlers als Ausführungsfehlerinformation der Name des aufrufenden Steuerprogramms, die Rücksprungadresse (Adresse der aufrufenden Position) und die beim Aufruf verwendeten Eingabedaten angezeigt werden. Als Folge davon kann der Aufwand für Entwicklung und Pflege eines Systems mit einem komponentenspezifischen Steuerprogramm reduziert werden.
-
Auch wenn bei der oben beschriebenen Ausführungsform die Ausführungsfehlerinformations-Verwaltungseinheit 107 bei einem Auftreten eines Ausführungsfehlers die abgerufene Ausführungsfehlerinformation bei Erhalt einer Abfrage zum Abrufen der Ausführungsfehlerinformation überträgt, ist die oben beschriebene Ausführungsform nicht auf diese Konfiguration beschränkt. Zum Beispiel kann bei einem Auftreten eines Ausführungsfehlers anstatt der abgerufenen Ausführungsfehlerinformation eine zuvor in der Backup-Datenspeichereinheit 106 gespeicherte Ausführungsfehlerinformation übertragen werden. Außerdem kann die Ausführungsfehlerinformation nach Bereinigung des Ausführungsfehlers dargestellt werden.
-
Auch wenn bei der oben beschriebenen Ausführungsform das Programmierwerkzeug 200 eine Abfrage zum Abrufen der Ausführungsfehlerinformation an die Ausführungsfehlerinformations-Verwaltungseinheit 107 der Zentraleinheit 100 überträgt, ist dieses nicht auf diese Konfiguration beschränkt. Statt von dem Programmierwerkzeug 200 kann die Aufgabe zum Beispiel von einer Einrichtung ausgeführt werden, die mit der Zentraleinheit 100 kommunizieren, die Abfrage zum Abrufen der Ausführungsfehlerinformation übertragen und das Ergebnis anzeigen kann.
-
Bei dieser Ausführungsform werden bei der Ausführung eines komponentenspezifischen Steuerprogramms eine Rücksprungadresse und Eingabedaten für das komponentenspezifische Steuerprogramm gespeichert, wobei bei einem Auftreten eines Fehlers in der Ausführung des komponentenspezifischen Steuerprogramms der Name des aufrufenden Steuerprogramms über die Rücksprungadresse unter Verwendung der Abbildungsinformation erhalten wird, welche die Speicherpositionen von Steuerprogrammen in der Anwenderprogramm-Speichereinheit 101 verwaltet. Es wird daher die Ausführungsfehlerinformation abgerufen, die den Namen des Steuerprogramms, die Eingabedaten und die Rücksprungadresse enthält. Hierdurch wird erreicht, dass ein Anwender beim Auftreten des Fehlers in der Ausführung des komponentenspezifischen Steuerprogramms schnell über die Lage informiert wird.
-
Außerdem ruft das Programmierwerkzeug 200 die Ausführungsfehlerinformation ab und zeigt diese Information einem Anwender an. Aus der angezeigten Ausführungsfehlerinformation können somit das aufrufende Steuerprogramm und die Eingabedaten selbst bei einem komponentenspezifischen Steuerprogramm ermittelt werden, das von mehreren Steuerprogrammen aufgerufen wird und dessen Eingabedaten nicht fix sind. Hierdurch kann ein Anwender die zu einem Ausführungsfehler führenden Faktoren einfach analysieren. Dadurch wird erreicht, dass sich der Aufwand für Entwicklung und Pflege eines Systems reduziert, das ein komponentenspezifisches Steuerprogramm aufweist.
-
Gewerbliche Anwendbarkeit
-
Wie oben beschrieben kann das erfindungsgemäße programmierbare Steuerungssystem eine sachgemäße Entwicklung und Pflege eines Systems ermöglichen, das ein von mehreren Steuerprogrammen aufgerufenes komponentenspezifisches Steuerprogramm aufweist.
-
Liste der Bezugszeichen
-
- 100 Zentraleinheit, 101, 202 Anwenderprogramm-Speichereinheit, 102 Stapelspeicher, 103 Datenspeichereinheit, 104 Steuerprogramm-Ausführungseinheit, 105 Abbildungsinformations-Speichereinheit, 106 Backup-Datenspeichereinheit, 107 Ausführungsfehlerinformations-Verwaltungseinheit, 108, 203 Kommunikationseinheit, 121–123 Steuerprogramm, 131 komponentenspezifisches Steuerprogramm, 200 Programmierwerkzeug, 201 Anwenderprogramm-Erstellungseinheit, 204 Ausführungsfehlerinformationsanzeige-Verarbeitungseinheit, 211 Ausgabeeinrichtung, 212 Eingabeeinrichtung, 300 Ausführungsfehlerinformations-Anzeigebildschirm, 310 Anzeigebereich für eine detaillierte Fehlerinformation, 320 Anzeigebereich für eine Ausführungsfehlerinformation.