-
Gebiet
-
Die vorliegende Erfindung betrifft eine Ablaufprogrammerstellungshilfsvorrichtung, die den Aufwand zum Erstellen eines Ablaufprogramms für die Steuerung einer speicherprogrammierbaren Steuerung vereinfacht.
-
Hintergrund
-
Ein Steuersystem umfasst eine speicherprogrammierbare Steuerung (auch als programmierbare Steuerung bezeichnet) und eine Erweiterungseinheit, wie beispielsweise eine Netzwerkeinheit. Die speicherprogrammierbare Steuerung und die Erweiterungseinheit werden mittels eines Ablaufprogramms gesteuert.
-
Das Ablaufprogramm wird mit Hilfe eines Entwicklerwerkzeugs erstellt, bei dem es sich um eine Ablaufprogrammerstellungshilfsvorrichtung handelt. Wenn das Ablaufprogramm bei der speicherprogrammierbaren Steuerung und der Erweiterungseinheit eine Ausführung eines Prozesses bewirkt, ist in dem Ablaufprogramm eine für eine im Voraus definierte Vorrichtung spezifische Anweisung (nachfolgend als dedizierte Anweisung bezeichnet) beschrieben.
-
Die dedizierte Anweisung setzt sich aus einem Anweisungsnamen und Steuerdaten zusammen. Die Steuerdaten sind in einer Einrichtung der speicherprogrammierbaren Steuerung gespeichert. Die speicherprogrammierbare Steuerung und die Erweiterungseinheit führen die Arbeitsabläufe auf Basis von Einstellwerten aus, die in der Einrichtung gespeichert sind.
-
Im Patentdokument 1 wird eine Programmerzeugungshilfsvorrichtung offenbart, die Systemkonfigurationsinformation über eine mit einer CPU-Einheit (einem zentralen Rechenbaugruppenmodul) verbundene Erweiterungseinheit erfasst, auf Basis einer Information über den Typ der Erweiterungseinheit als Suchziel ein Befehlswort festgelegt, das den Betrieb einer mit der Erweiterungseinheit verbundenen gesteuerten Vorrichtung anweist, und ein Befehlswort extrahiert und anzeigt, das einer Zeichenfolge einer eingegebenen Anweisung entspricht. In dem Patentdokument 2 wird eine Programmiervorrichtung für eine programmierbare Steuerung offenbart, mit der eine Bedienperson einen anweisungsgemäßen Eingabevorgang zum Erzeugen eines Ablaufprogramms vornimmt. In dem Patentdokument 3 wird eine Steuerprogrammerzeugungsvorrichtung offenbart, bei der eine Bedienperson an einer Bearbeitungsmaske eines im Kontaktplanformat dargestellten Steuerprogramms zum Hinzufügen einer Gerätebezeichnung ein Eingabefeld für eine Anweisung oder eine Speicheradresse zur Bezeichnung eines Geräts und ein Eingabefeld für eine Geräteerläuterung eingibt, um einen Kontaktplan mit der Geräteerläuterung anzuzeigen. In dem Patentdokument 4 wird eine Steuersystementwicklervorrichtung offenbart, die aus der Projektinformation einer SPS (speicherprogrammierbaren Steuerung) Systemkonfigurationsinformationen und einen Status ausliest und ein anzuschließendes Netzwerk erfasst.
-
Liste der Zitate
-
Patentliteratur
-
- Patentdokument 1: Offengelegte japanische Patentanmeldung Nr. 2011-28562 .
- Patentdokument 2: Offengelegte japanische Patentanmeldung Nr. H5-80814 .
- Patentdokument 3: Offengelegte japanische Patentanmeldung Nr. 2007-299 205 .
- Patentdokument 4: Internationale Veröffentlichung Nr. 2008/146380 .
-
Kurzbeschreibung
-
Technische Problemstellung
-
Beim Festlegen von Steuerdaten für eine dedizierte Anweisung muss eine Bedienperson, die ein Ablaufprogramm erstellt, herkömmlicherweise ein Programm zum Speichern von Einstellwerten in Geräten einer speicherprogrammierbaren Steuerung manuell erstellen. Beim Erstellen eines Ablaufprogramms durch eine ungeübte Bedienperson, besteht das Problem, dass das Erstellen aufgrund von Fehlern beim Festlegen der Werte und/oder Fehlern bei einem Programm, bei dem eine solche Einstellung unterlassen wird, zeitintensiv ist.
-
Geräte, in denen Steuerdaten gespeichert werden, sollten vorzugsweise für nichts anderes als die Steuerdatenspeicherung verwendet werden. Es muss daher deutlich darauf hingewiesen werden, dass die Geräte für die Steuerdatenspeicherung bestimmt sind. Als Mittel zum deutlichen Kennzeichnen der Nutzung der Geräte existiert ein Verfahren zum Hinzufügen einer Geräteerläuterung (Zuweisung einer Zeichenfolge zu jedem der Geräte). Das Problem hierbei ist jedoch, dass das manuelle Hinzufügen einer Erläuterung zu jedem der Geräte seine Zeit braucht.
-
Die in dem Patentdokument 1 offenbarte Erfindung zeigt nicht alle bei einer Einheit verwendbaren Anweisungen an. Die Erstellung eines Programms mit einem eingegebenen, nicht extrahierten, Befehlswort wird daher nicht unterstützt. Die in dem Patentdokument 2 offenbarte Erfindung offenbart nichts über eine automatische Eingabe von Kommentaren (Geräteerläuterungen), die zusammen mit den Geräten in ein Ablaufprogramm eingegeben werden. Bei der in dem Patentdokument 3 offenbarten Erfindung kann es, da eine Bedienperson die Anweisungen und Speicheradressen zur Bestimmung der Geräte selbst eingibt, vorkommen, dass es zu Fehlern bei den Einstellungen kommt. Die im Patentdokument 4 offenbarte Erfindung offenbart nichts über das Beziehen der Konfigurationsinformation der Erweiterungseinheiten und das Anzeigen einer Liste von zu relevanten Erweiterungseinheiten gehörenden Befehlswörtern.
-
Die vorliegende Erfindung wurde angesichts des oben Beschriebenen konzipiert, wobei eine Aufgabe der vorliegenden Erfindung in der Angabe einer Ablaufprogrammerstellungshilfsvorrichtung besteht, die die Bedienung eines Geräts vereinfacht, dass die in einem Ablaufprogramm beschriebene dedizierte Anweisung und Steuerdaten für die dedizierte Anweisung speichert.
-
Lösung der Problemstellung
-
Zur Lösung der oben angegebenen Probleme und der Aufgabenstellung wird eine Ablaufprogrammerstellungshilfsvorrichtung gemäß der vorliegenden Erfindung angegeben, die eine Unterstützung bei der Arbeit zum Erstellen eines Ablaufprogramms darstellt, das von einer ein Steuersystem konfigurierenden speicherprogrammierbaren Steuerung ausgeführt wird, wobei die Ablaufprogrammerstellungshilfsvorrichtung aufweist: eine Speichereinheit, in der für jedes Modell der speicherprogrammierbaren Steuerung eine Dedizierte-Anweisungs-Information gespeichert ist, die einen Anweisungsnamen einer dedizierten Anweisung enthält, die von der zu dem Steuersystem passenden speicherprogrammierbaren Steuerung ausgeführt werden kann; eine Dedizierte-Anweisungs-Informations-Ausleseeinheit, die aus der Speichersektion die, zu einem Modell der das Steuersystem konfigurierenden speicherprogrammierbaren Steuerung gehörende, dedizierte Anweisungsinformation ausliest, wenn festgestellt wird, dass ein Vorgang zum Eingeben der dedizierten Anweisung an einer Ablaufprogrammerzeugungsmaske vorgenommen wird; und eine Dedizierte-Anweisungs-Listen-Anzeigeeinheit, die Anweisungsnamen von dedizierten Anweisungen in der Liste auf Basis der aus der Speichersektion ausgelesenen dedizierten Anweisungsinformation anzeigt.
-
Vorteilhafte Wirkungen der Erfindung
-
Die Ablaufprogrammerstellungshilfsvorrichtung gemäß der vorliegenden Erfindung vereinfacht die Angabe der dedizierten Anweisung bei der Ablaufprogrammerstellung. Im Ergebnis kann daher selbst eine ungeübte Bedienperson ohne Umstände ein fehlerfreies Ablaufprogramm erstellen.
-
Kurzbeschreibung der Figuren
-
1 zeigt eine grafische Darstellung einer Ausführungsform einer Ablaufprogrammerstellungshilfsvorrichtung gemäß der vorliegenden Erfindung im Zustand der Verwendung.
-
2 zeigt eine grafische Darstellung der Hardwarekonfiguration eines Computers, an dem die Entwicklungswerkzeugsoftware ausgeführt wird.
-
3 zeigt eine grafische Darstellung eines als Entwicklungswerkzeug fungierenden Computers.
-
4 zeigt eine grafische Darstellung eines Beispiels einer Datenstruktur einer Anweisungsinformationstabelle.
-
5 zeigt ein Flussdiagramm zur Erläuterung eines Prozessablaufs zu dem Zeitpunkt, zu dem ein Vorgang zum Eingeben einer dedizierten Anweisung an einer Ablaufprogrammerstellungsmaske vorgenommen wird.
-
6 zeigt eine grafische Darstellung eines Beispiels für eine Ablaufprogrammerstellungsmaske.
-
7 zeigt eine grafische Darstellung eines Beispiels eines Vorrichtungslistenfensters.
-
8 zeigt eine grafische Darstellung eines Beispiels eines Anweisungslistenfensters.
-
9 zeigt eine grafische Darstellung eines Beispiels für ein Steuerdateneingabefenster.
-
10 zeigt eine grafische Darstellung eines Beispiels für ein Steuerdateneingabefenster, in das bereits Einstellwerte und Speicherzielgeräte eingegeben sind.
-
11 zeigt eine grafische Darstellung eines Beispiels eines Ablaufprogramms, dem eine dedizierte Anweisung hinzugefügt wurde.
-
Beschreibung von Ausführungsformen
-
Nachfolgend wird eine Ausführungsform einer Ablaufprogrammerstellungshilfsvorrichtung gemäß der vorliegenden Erfindung ausführlich unter Bezugnahme auf die Figuren erläutert. Es wird darauf hingewiesen, dass die vorliegende Erfindung nicht auf die Ausführungsform beschränkt ist.
-
Ausführungsform
-
Die Darstellung von 1 zeigt eine Ausführungsform einer Ablaufprogrammerstellungshilfsvorrichtung gemäß der vorliegenden Erfindung im Zustand der Verwendung. Ein als Ablaufprogrammerstellungshilfsvorrichtung fungierendes Entwicklungswerkzeug 100 ist über eine Übertragungsleitung 10 mit einer speicherprogrammierbaren Steuerung (einer zentralen Rechenbaugruppeneinheit) 101 verbunden. Mehrere Erweiterungseinheiten 102 1, 102 2, ... und 102 n sind mit der speicherprogrammierbaren Steuerung 101 verbunden. Die speicherprogrammierbare Steuerung 101 und die Erweiterungseinheiten 102 1, 102 2, ... und 102 n bilden ein Steuersystem 500. Es wird darauf hingewiesen, dass als Beispiel eine Konfiguration beschrieben ist, bei der die Vielzahl der Erweiterungseinheiten 102 1, 102 2, ... und 102 n mit der speicherprogrammierbaren Steuerung 101 verbunden sind. Die Anzahl der Erweiterungseinheiten muss jedoch nur eins oder mehr betragen.
-
Das Entwicklungswerkzeug 100 wird durch die Installation einer Entwicklungswerkzeugsoftware auf einem Standardcomputer ausgebildet. Die Darstellung von 2 zeigt den Hardwareaufbau eines Computers, auf dem die Entwicklungswerkzeugsoftware ausgeführt wird. Ein Computer 300 weist eine CPU (zentrale Verarbeitungssektion) 301, ein RAM (Random Access Memory, Direktzugriffsspeicher) 302, ein ROM (Read Only Memory, Festwertspeicher) 303, eine Speichersektion 304, eine Eingabesektion 305, eine Anzeigesektion 306 und eine Kommunikations-I/F (Schnittstelle) 309 auf.
-
Bei der CPU 301 handelt es sich um eine arithmetische Sektion, die die Entwicklungswerkzeugsoftware ausführt. Das RAM 302 stellt die Arbeitsumgebung, die von der CPU 301 bei Ausführung eines Programms benutzt wird. Im ROM 303 ist ein Programm (ein Initial Program Loader (IPL) usw.) in einer nichtflüchtigen Weise gespeichert, das von der CPU 301 zum Zeitpunkt des Startens des Computers 300 ausgeführt wird. Bei der Speichereinrichtung 304 handelt es sich um ein Gerät, das Informationen in einer nichtflüchtigen Weise speichert. Als Speichersektion 304 können eine Festplatte, ein Halbleiterspeicher oder dergleichen eingesetzt werden. Die Eingabesektion 305 wird von einer Benutzerschnittstelle zum Eingeben von Informationen durch eine Bedienperson gebildet. Als Eingabesektion 305 können ein Zeigegerät (eine Maus, ein Touchpanel, usw.), eine Tastatur und dergleichen eingesetzt werden. Die Anzeigesektion 306 wird von einem Gerät gebildet, das Informationen anzeigt. Als Anzeigesektion 306 können ein LCD (Liquid Crystal Display, Flüssigkristallanzeige), ein OLED (Organic Light Emitting Display, organische Leuchtdiodenanzeige) und dergleichen eingesetzt werden. Bei der Kommunikations-I/F 309 handelt es sich um eine Schnittstelle zur Kommunikation mit der speicherprogrammierbaren Steuerung 101 über die Übertragungsleitung 10.
-
Die im Computer 300 installierte Entwicklungswerkzeugsoftware ist in der Speichersektion 304 gespeichert. Die CPU 301 liest die in der Speichersektion 304 gespeicherte Entwicklungswerkzeugsoftware 307 aus und führt diese aus, wodurch der Computer 300 in einen Zustand überführt wird, in dem der Computer 300 als Entwicklungswerkzeug 100 fungiert. Die Darstellung von 3 zeigt den als Entwicklungswerkzeug fungierenden Computer. Bei dem Entwicklungswerkzeug 100 werden auf der CPU 301 eine Editirsektion 203 und eine Maskenanzeigesektion 201 erzeugt. Die in der Speichersektion 304 gespeicherte Entwicklungswerkzeugsoftware 307 weist Anweisungsinformationstabellen 202 1 bis 202 m auf. Von den Anweisungsinformationstabellen 202 1 bis 202 m entspricht jeweils eine Tabelle einem der Modelle der speicherprogrammierbaren Steuerung 101 bzw. der Erweiterungseinheiten 102 1, 102 2, ... und 102 n. Das bedeutet, dass von den Anweisungsinformationstabellen 202 1 bis 202 m für jedes Modell der speicherprogrammierbaren Steuerung 101 und der Erweiterungseinheiten 102 1, 102 2, ... und 102 n eine Tabelle erstellt wird. Es wird darauf hingewiesen, dass bei den nachfolgenden Erläuterungen, wenn auf die Anweisungsinformationstabellen 202 1 bis 202 m generell Bezug genommen wird, die Anweisungsinformationstabellen 202 1 bis 202 m als Anweisungsinformationstabelle 202 bezeichnet werden.
-
Die Editorsektion 203 bewirkt, dass die Anzeigensektion 306 eine Ablaufprogrammerstellungsmaske anzeigt und einen Arbeitsablauf zum Erstellen und Editieren eines Ablaufprogramms entsprechend den von der Bedienperson an der Eingabesektion 305 vorgenommenen Betätigungen ausführt. Die Funktion der Editorsektion 203 ist mit einer Editorfunktion eines allgemeinen Entwicklungswerkzeugs identisch.
-
Die Maskenanzeigesektion 201 bewirkt unter Bezugnahme auf die Anweisungsinformationstabelle 202 der Speichersektion 304, dass die Anzeigesektion 306 diverse Fenster anzeigt, die eine Eingabe einer dedizierten Anweisung an der Programmerstellungsmaske unterstützen. Es wird darauf hingewiesen, dass Einzelheiten über die diversen Fenster, die eine Eingabe einer dedizierten Anweisung unterstützen, unten erläutert werden. Die Maskenanzeigesektion 201 steht mit der speicherprogrammierbaren Steuerung 101 über die Kommunikations-I/F 309 und die Übertragungsleitung 10 in Verbindung und bezieht Informationen (z. B. Modellnummern) zum Bestimmen der Modelle der speicherprogrammierbaren Steuerung 101 und der Erweiterungseinheiten 102 1, 102 2, ... und 102 n.
-
Die Darstellung von 4 zeigt ein Beispiel einer Datenstruktur einer Anweisungsinformationstabelle. Die Anweisungsinformationstabelle 202 weist Spalten für Anweisungsnamen 30, Inhalt 31 und Steuerdaten 32 1, 32 2, ... auf. Die Steuerdaten 32 1, 32 2, ... umfassen jeweils Spalten für Objektnamen 32a 1, 32a 2, ... und Einstellbereiche 32b 1, 32b 2, .... Das bedeutet, dass eine dedizierte Anweisungsinformation, die jeweils einen Eintrag der Anweisungsinformationstabelle 202 bildet, aus einer Kombination des Anweisungsnamens 30, des Inhalts 31 und der Steuerdaten 32 1, 32 2, ... aufgebaut ist. Der Anweisungsname 30 stellt eine Zeichenfolge dar, die einen Namen angibt, der vorab in einer dedizierten Anweisung festgelegt ist. Beim Anzeigen der dedizierten Anweisung an der Ablaufprogrammerstellungsmaske wird die als Anweisungsname 30 festgelegte Zeichenfolge dargestellt. Der Inhalt 31 stellt eine Zeichenfolge dar, die den Inhalt der Verarbeitung der dedizierten Anweisung repräsentiert. Der Inhalt 31 wird durch einen Ersteller der Anweisungsinformationstabelle 202 (z. B. einem Anbieter der Entwicklungswerkzeugsoftware 307) festgelegt. Die Steuerdaten 32 1, 32 2, ... stellen Informationen (Argumente) dar, die für die Ausführung der dedizierten Anweisung erforderlich sind. Die Objektnamen 32a 1, 32a 2, ... sind Zeichenfolgen, die die Bedeutung der jeweiligen Steuerdaten (was die Steuerdaten als Wert definieren) repräsentieren. Die Objektnamen 32a 1, 32a 2, ... werden durch den Ersteller der Anweisungsinformationstabelle 202 definiert. Die Einstellbereiche 32b 1, 32b 2, ... stellen Wertebereiche dar, die von den jeweiligen Steuerdaten 32 1, 32 2, ... angenommen werden können.
-
Es wird darauf hingewiesen, dass, wenn das Steuersystem 500 im realen Einsatz mit einem anderen System über ein Netzwerk verbunden ist, dem Steuersystem 500 ein Stationsname zur Bezeichnung des Systems an dem Netzwerk zugewiesen ist. In 4 bedeutet daher eine Zeichenfolge einer Zielstationsnummer, die in dem Objektnamen 32a 1 gesetzt ist, dass die Zielstationsnummer Steuerdaten darstellt, die zur Angabe einer Kommunikationsgegenstelle verwendet werden, wenn die speicherprogrammierbare Steuerung 101 mit einem anderen System auf dem Netzwerk kommuniziert. Es wird darauf hingewiesen, dass als Zielstationsnummer die Stationsnummer der eigenen Station festgelegt werden kann.
-
Das Flussdiagramm der 5 dient der Erläuterung des Prozessablaufs zu dem Zeitpunkt, an dem an der Ablaufprogrammerstellungsmaske ein Vorgang zum Eingeben einer dedizierten Anweisung vorgenommen wird. Die Maskenanzeigesektion 201 erfasst das Ausführen eines Vorgangs zum Eingeben einer dedizierten Anweisung an einer Ablaufprogrammerstellungsmaske 401, die veranlasst durch die Editorsektion 203 an der Anzeigesektion 306 angezeigt wird (Schritt S101). Die Darstellung von 6 zeigt ein Beispiel einer Ablaufprogrammerstellungsmaske. Die Maskenanzeigesektion 201 erfasst die Vornahme eines Vorgangs zum Eingeben einer dedizierten Anweisung an der Eingabesektion 305 in einem Zustand, bei dem ein Cursor 4012 an einer Sprosse 4011 platziert ist, an der eine dedizierte Anweisung eingegeben werden soll. Es wird darauf hingewiesen dass eine Sprosse eines Kontaktplanprogramms ein Schaltkreis ist, der von einem mit einem linksseitigen Bus verbundenen Kontakt zu einem Ausgang führt, oder eine Anweisung darstellt, die mit einem rechtsseitigen Bus verbunden ist (ein strahlenförmiger Bereich, der die Busse verbindet). Die in 5 dargestellte Sprosse 4011 zeigt jedoch einen halbfertigen Zustand der Erstellung. Daher ist die Sprosse 4011 mit einem linksseitigen Bus 61, jedoch nicht mit einem rechtsseitigen Bus 62 verbunden. Der Schaltkreis ist nicht vollständig.
-
Bei Vornahme eines Vorgangs zum Eingeben einer dedizierten Anweisung durch die Bedienperson bezieht die Maskenanzeigesektion 201 über die Kommunikation-I/F 309 und die Übertragungsleitung 10 Informationen über die speicherprogrammierbare Steuerung 101 und die Erweiterungseinheiten 102 1, 102 2, ... und 102 n (Schritt S102). Das bedeutet, dass die Maskenanzeigesektion 201 aus der speicherprogrammierbaren Steuerung 101 Konfigurationsinformationen über das Steuersystem 500 ausliest und bezieht. Die Maskenanzeigesektion 201, die die Information über die speicherprogrammierbare Steuerung 101 und die Erweiterungseinheiten 102 1, 202 2, ... und 102 n bezogen hat, bewirkt, dass die Anzeigensektion 306 ein Vorrichtungslistenfenster 402 anzeigt (Schritt S103). Die Darstellung von 7 zeigt ein Beispiel für ein Vorrichtungslistenfenster. In dem Vorrichtungslistenfenster 402 werden eine Modellnummer 4021 der speicherprogrammierbaren Steuerung 101, Modellnummern 4022 1, 4022 2, ... und 4022 n der Erweiterungseinheiten 102 1, 102 2, ... und 102 n, eine ”Weiter”-Schaltfläche 4023 und eine ”Abbrechen”-Schaltfläche 402 4 dargestellt.
-
Wenn eine Vornahme eines Vorgangs zum Drücken der ”Weiter”-Schaltfläche 4023 durch die Bedienperson in einem Zustand erfasst wird, in dem in dem Vorrichtungslistenfenster 402 aus der Modellnummer 4021 der speicherprogrammierbaren Steuerung 101 und den Modellnummern 4022 1, 4022 2, ... und 4022 n der Erweiterungseinheiten 102 1, 102 2, ... und 102 n eine beliebige ausgewählt ist, liest die Maskenanzeigesektion 201 Informationen aus, die in den Spalten der Tabelle für den Anweisungsnamen 30 und den Inhalt 31 gespeichert sind, wobei auf die zu der Vorrichtung gehörende Anweisungsinformationstabelle Bezug genommen wird, deren Modellnummer unter den Anweisungsinformationstabellen 202 1 bis 202 n ausgewählt ist (Schritt S104). Danach veranlasst die Maskenanzeigesektion 201 die Anzeigensektion 306 zur Anzeige eines Anweisungslistenfensters 403 auf Basis der in den Spalten für den Anweisungsnamen 30 und den Inhalt 31 gespeicherten Informationen (Schritt S105). Das heißt, dass die Maskenanzeigesektion 201 als Dedizierte-Anweisungs-Informations-Ausleseeinheit fungiert, um aus der Speichersektion 304 eine dedizierte Anweisungsinformation über eine dedizierte Anweisung auszulesen, die in der speicherprogrammierbaren Steuerung 101 oder den Erweiterungseinheiten 102 1, 102 2, ... und 102 n, die das Steuersystem 500 ausbilden, ausgeführt werden kann. Außerdem fungiert die Maskenanzeigesektion 201 als Dedizierte-Anweisungs-Listen-Anzeigeeinheit, um mit dem Anweisungslistenfenster 403 einen Anweisungsnamen einer dedizierten Anweisung der Liste auf der Anzeigesektion 306 anzuzeigen. Die Darstellung von 8 zeigt ein Beispiel für ein Anweisungslistenfenster. In dem Anweisungslistenfenster 403 wird die in der Spalte für den Anweisungsnamen 30 der Anweisungsinformationstabelle 202 gespeicherte Information in einer Spalte für einen Anweisungsnamen 4031 dargestellt und die in der Spalte für den Inhalt 31 der Anweisungsinformationstabelle 202 gespeicherte Information wird in einer Spalte für den Inhalt 4032 dargestellt. Eine ”Weiter”-Schaltfläche 4033, eine ”Abbrechen”-Schaltfläche 4034 und eine ”Zurück”-Schaltfläche 4035 werden in dem Anweisungslistenfenster 403 dargestellt.
-
Es wird darauf hingewiesen, dass beim Erfassen der Vornahme eines Vorgangs zum Drücken der ”Abbrechen”-Schaltfläche 4024 durch die Bedienperson auf dem Vorrichtungslistenfenster 402 die Maskenanzeigesektion 201 den Vorgang zum Eingeben einer dedizierten Anweisung stoppt. Um jedoch ein besseres Verständnis des Vorgangs zum Eingeben einer dedizierten Anweisung zu ermöglichen, wurde in 5 eine diesen Vorgang betreffende Veranschaulichung unterlassen.
-
Beim Erfassen einer Vornahme eines Vorgangs zum Drücken der ”Weiter”-Schaltfläche 4033 durch die Bedienperson auf dem Anweisungslistenfenster 403 in einem Zustand, in dem die Bedienperson eine der dedizierten Anweisungen auswählt, liest die Maskenanzeigesektion 201 unter Bezugnahme auf die Anweisungsinformationstabelle 202 Informationen aus, die in den Spalten für die Steuerdaten 32 1, 32 2, ... der ausgewählten dedizierten Anweisung gespeichert sind (Schritt S106). Danach veranlasst die Maskenanzeigensektion 201 die Anzeigesektion 306 zum Anzeigen eines Steuerdateneingabefensters 404 auf Basis der in den Spalten für die Steuerdaten 32 1, 32 2, ... gespeicherten Informationen (Schritt S107). Das bedeutet, dass die Maskenanzeigensektion 201 als Objektnamenbezugseinheit zum Beziehen eines Objektnamens fungiert, indem bezüglich einer dedizierten Anweisung, die von der speicherprogrammierbaren Steuerung 101 oder den Erweiterungseinheiten 102 1, 102 2, ... und 102 n, die das Steuersystem 500 bilden, ausgeführt werden kann, aus der Speichersektion 304 eine dedizierte Anweisungsinformation ausgelesen wird, die einen Objektnamen, der eine Bedeutung der zur Ausführung einer dedizierten Anweisung verwendeten Steuerdaten repräsentiert, und einen Anweisungsnamen umfasst.
-
Die Darstellung von 9 zeigt ein Beispiel für ein Steuerdateneingabefenster. Das Steuerdateneingabefenster 404 weist einen Objektnamen 4041, eine Einstellwerteingabespalte 4042 und eine Speicherzielgeräteeingabespalte 4043 auf. In der Spalte für den Objektnamen 4041, werden Informationen angezeigt, die in den Spalten für die Objektnamen 32a 1, 32b 1, ... der Anweisungsinformationstabelle 202 gespeichert sind. In der Spalte für den Einstellwert 4042, werden die in den Spalten für die Einstellbereiche 32a 2, 32b 2, .... der Anweisungsinformationstabelle 202 gespeicherten Informationen angezeigt. Die Spalte für die Speicherzielgeräteeingabe 4043 wird als leere Spalte angezeigt. Eine ”Fertigstellen”-Schaltfläche 4044, eine ”Abbrechen”-Schaltfläche 4045 und eine ”Zurück”-Schaltfläche 4046 werden auf dem Steuerdateneingabefenster 404 angezeigt. Es wird darauf hingewiesen, dass die Entwicklungswerkzeugsoftware 307 Informationen aufweist, die angeben, wie viele Steuerdaten für die dedizierten Anweisungen benötigt werden. Daher bewirkt die Maskenanzeigesektion 201 unter Bezugnahme auf diese Information, dass die Anzeigesektion 306 das Steuerdateneingabefenster 404 mit einer Anzahl von Zeilen anzeigt, die der Anzahl der erforderlichen Steuerdaten entspricht.
-
Es wird darauf hingewiesen, dass beim Erfassen einer Vornahme eines Vorgangs zum Drücken der ”Abbrechen”-Schaltfläche 4034 durch die Bedienperson auf dem Anweisungslistenfenster 403 die Maskenanzeigesektion 201 den Vorgang zum Eingeben einer dedizierten Anweisung abbricht. Beim Erfassen einer Vornahme eines Vorgangs zum Drücken der ”Zurück”-Schaltfläche 4035 durch die Bedienperson auf dem Anweisungslistenfenster 403 zeigt die Maskenanzeigensektion 201 das Vorrichtungslistenfenster 402 an. Zum besseren Verständnis des Vorgangs zum Eingeben einer dedizierten Anweisung wurde in 5 eine diesen Vorgang betreffende Darstellung unterlassen.
-
Wenn festgestellt wird, dass in der Einstellwerteingabespalte 4042 und der Speicherzielgeräteeingabespalte 4043 des Steuerdateneingabefensters 404 ein Einstellwert und ein Gerätename eingegeben werden und die ”Fertigstellen”-Schaltfläche 4044 gedrückt wird, bestimmt die Maskenanzeigensektion 401, ob der in die Einstellwerteingabespalte 4042 eingegebene Wert akzeptiert wird oder nicht (Schritt S108). Genauer gesagt, akzeptiert die Maskenanzeigesektion 201 den Eingabewert, wenn der Wert, der in dem Einstellwerteingabebereich 4042 eingegeben wurde, innerhalb der Bereiche der Einstellbereiche 32b 1, 32b 2, ... liegt (JA in Schritt S108). Liegt der Eingabewert außerhalb der Bereiche (NEIN in Schritt S108), dann weist die Maskenanzeigensektion 201 den Eingabewert zurück.
-
Die Darstellung der 10 zeigt ein Beispiel eines Steuerdateneingabefensters in das bereits Einstellwerte und Speicherzielgeräte eingegeben wurden. In die Einstellwerteingabespalte 4042 wurden Werte sowohl für einen Eintrag 404a, dessen Objektname 4041 ”Zielstationsnummer” lautet, als auch für einen Eintrag 404b, dessen Objektname 4041 ”Datengröße” lautet, eingegeben, die innerhalb der Bereiche liegen, die in den Einstellbereichen 32b 1 und 32b 2 der Anweisungsinformationstabelle 202 festgelegt sind. Beim Drücken der ”Fertigstellen”-Schaltfläche 4044 akzeptiert daher die Maskenanzeigesektion 201 die unter Einstellwert 4042 eingegebenen Werte. Liegt der in die Einstellwerteingabespalte 4042 eingegebene Wert dagegen außerhalb der Bereiche, die in den Einstellbereichen 32a 2 und 32b 2 der Anweisungsinformationstabelle 202 festgelegt sind, dann akzeptiert die Maskenanzeigesektion 201 den Eingabewert selbst dann nicht, wenn die ”Fertigstellen”-Schaltfläche 4044 gedrückt wird, und fordert zur erneuten Eingabe eines Werts auf. Beispielsweise kehrt der Ablauf zu Schritt S107 zurück, wobei die Maskenanzeigesektion 201 bewirkt, dass die Anzeigesektion 306 das Steuerdateneingabefenster 404 erneut anzeigt.
-
Es wird darauf hingewiesen, dass die Maskenanzeigesektion 201 den Vorgang für die Eingabe einer dedizierten Anweisung stoppt, wenn die Ausführung eines Vorgangs zum Drücken der ”Abbrechen”-Schaltfläche 4045 von der Bedienperson an dem Steuerdateneingabefenster 404 festgestellt wird. Wird eine Ausführung eines Vorgangs zum Drücken der ”Zurück”-Schaltfläche 4046 durch die Bedienperson an dem Steuerdateneingabefenster 404 festgestellt, dann zeigt die Maskenanzeigesektion 201 das Anweisungslistenfenster 403 an. Um das Verständnis des Ablaufs zum Eingeben einer dedizierten Anweisung zu verbessern, wurde die Darstellung dieser Vorgänge in dem Flussdiagramm von 5 jedoch unterlassen.
-
Bei einer Anzeige des Steuerdateneingabefensters 404 an der Anzeigesektion 306 werden die in den Einstellbereichen 32b 1, 32b 2, ... der Anweisungsinformationstabelle 202 gespeicherten Informationen in der Spalte der Einstellwerte 4042 standardmäßig angezeigt. Infolgedessen kann eine Situation vermieden werden, bei der die Bedienperson einen Wert festgelegt, der außerhalb der Einstellbereiche liegt und bei Ausführung des Ablaufprogramms zu einem Fehler führen würde.
-
Bei einer Akzeptanz des in die Einstellwerteingabespalte 4042 eingegebenen Werts gibt die Maskenanzeigesektion 201 den in das Steuerdateneingabefenster 404 eingegebenen Wert an die Editorsektion 203 aus und bewirkt, dass die Editorsektion 203 einen Programmblock zum Speichern eines Steuerdateneinstellwerts erzeugt (Schritt S109). Die Maskenanzeigesektion 201 liest die Information aus, die in den Spalten der Steuerdaten 32 1, 32 2, ... der in Schritt S106 ausgewählten dedizierten Anweisung gespeichert ist (Schritt S110), und bewirkt, dass die Editorsektion 203 die Information in dem Ablaufprogramm, in dem der Steuerdateneinstellwert gespeichert ist, als Geräteerläuterung festlegt (Schritt S111). Anschließend sendet die Maskenerzeugungssektion 201 an die Editorsektion 203 eine Weisung und bewirkt, dass die Editorsektion 203 auf der Ablaufprogrammerstellungsmaske 401 den Programmblock zum Speichern des Steuerdateneinstellwerts des Ablaufprogramms anzeigt, zu dem der Programmblock zum Speichern des Steuerdateneinstellwerts und eine dedizierte Anweisung hinzuzugefügt wurden (Schritt S112).
-
Die Darstellung von 11 zeigt ein Beispiel des Ablaufprogramms, dem eine dedizierte Anweisung hinzugefügt wurde. Beim Starten des Vorgangs zum Hinzufügen einer dedizierten Anweisung wird der Sprosse 4011, auf die der Cursor 4012 gesetzt wurde eine dedizierte Anweisung 4013 hinzugefügt. Die dedizierte Anweisung 4013 ist mit dem rechtsseitigen Bus 62 verbunden. Der Schaltkreis zwischen dem linksseitigen Bus 61 dem rechtsseitigen Bus 62 wird erzeugt. Das ”D0” in ”GP.READ D0” bedeutet, dass das Auslesen bei den von der speicherprogrammierbaren Steuerung 101 umfassten Geräten bei D0 beginnt. Das heißt, dass ”D0” in ”GP.READ D0” angibt, dass beim Ausführen der dedizierten Anweisung 4013 (GP.READ) die in den Geräten D0, D1, ... gespeicherten Werte als Steuerdaten benötigt werden.
-
Die speicherprogrammierbare Steuerung 101 und die Erweiterungseinheiten 102 1, 102 2, ... und 102 n halten Informationen bereit, die angeben, wie viele Steuerdaten für die dedizierten Anweisungen erforderlich sind, die von der speicherprogrammierbaren Steuerung 101 und den Erweiterungseinheiten 102 1, 102 2, ... 102 n ausgeführt werden können. Während der Ausführung einer dedizierten Anweisung lesen die speicherprogrammierbare Steuerung 101 und die Erweiterungseinheiten 102 1, 102 2, ... und 102 n aus den Geräten Steuerdaten aus, die der erforderlichen Anzahl entsprechen. Wenn es sich bei der in 11 gezeigten dedizierten Anweisung 4013 beispielsweise um eine dedizierte Anweisung handelt, die drei Steuerdaten erfordert, und die speicherprogrammierbare Steuerung 101 die dedizierte Anweisung 4013 ausführt, dann liest die speicherprogrammierbare Steuerung 101 Werte aus den drei Geräten D0, D1 und D2 aus.
-
In dem von der Editorsektion 203 hinzugefügten Ablaufprogramm werden vor der dedizierten Anweisung 4013 (auf der oberen Seite der Ablaufprogrammerstellungsmaske 401) Anweisungen 4014 1, 4014 2, ... zum Speichern von Steuerdaten in den Geräten D0, D1, ... eingefügt. Es wird darauf hingewiesen, dass ”MOV” der Anweisung 4014 1 zum Steuern von Steuerdaten eine Übertragungsanweisung bedeutet, ”K2” einen numerischen Wert 2 in dezimaler Darstellung bedeutet und ”D0” bedeutet, dass D0 das Speicherzielgerät ist. In gleicher Weise bedeutet ”MOV” der Anweisung 4014 2 zum Speichern von Steuerdaten eine Übertragungsanweisung, ”K960” einen numerischen Wert 960 in dezimaler Darstellung und ”D1”, dass D1 das Speicherzielgerät ist. Daher muss die Bedienperson die Anweisungen 4014 1, 4014 2, ... für eine dedizierte Anweisung nicht in einem von dem Eingabearbeitsvorgang getrennten Arbeitsgang hinzufügen.
-
Bei der Verarbeitung in Schritt S112 werden den Anweisungen 4014 1, 4014 2, ... zum Speichern von Steuerdaten automatisch Geräteerläuterungen 4015 1, 4015 2, ... hinzugefügt. Das bedeutet, dass die Maskenanzeigesektion 201 an dem Punkt, an dem die Maskenerzeugungssektion 201 einen Einstellwert der Steuerdaten akzeptiert, an die Editorsektion 203 eine Weisung sendet und den Geräten D0, D1, ... die Geräteerläuterungen 4015 1, 4015 2, ... hinzufügt. Bei den Geräteerläuterungen 4015 1, 4015 2, ... handelt es sich um Zeichenfolgen, die in der Anweisungsinformationstabelle 202 als Objektnamen 32a 1, 32a 2, ... enthalten sind. Die Objektnamen 32a 1, 32a 2, ... werden von dem Ersteller der Anweisungsinformationstabelle 202 als Zeichenfolgen festgelegt, die eine Bedeutung der Steuerdaten repräsentieren. Durch das Hinzufügen der Geräteerläuterungen 4015 1, 4015 2, ... kann die Bedienperson daher leicht erkennen, dass es sich bei den Geräten D0, D1, ... um Geräte zum Speichern von Steuerdaten handelt. Die Zweckdienlichkeit ist somit verbessert.
-
Bei einem allgemeinen Entwicklungswerkzeug muss eine Bedienperson in einem Stadium vor einer dedizierten Anweisung einen Arbeitsablauf zur Beschreibung einer Anweisung zum Speichern von Steuerdaten in einem Gerät ausführen. Bei einem Entwicklungswerkzeug 100 gemäß dieser Ausführungsform wird dagegen für jede Vorrichtung, die möglicherweise mit dem Steuersystem 500 verwendet wird, im Voraus die Anweisungsinformationstabelle 202 angefertigt, die Zeichenfolgen enthält, die eine Bedeutung der Steuerdaten in den Spalten der Objektnamen 32a 1, 32a 2, ... repräsentieren. Beim Eingeben einer dedizierten Anweisung werden dem Ablaufprogramm mittels des Entwicklungswerkzeugs 100 auf Basis der Anweisungsinformationstabelle 202 Anweisungen zum Speichern der Anweisungsdaten in Geräten sowie Geräteerläuterungen hinzugefügt, die zusammen mit den Anweisungen angezeigt werden. Daher kann ein Auftreten eines Einstellungsfehlers sowie eines Programmfehlers, bei dem eine Einstellung unterlassen wurde, verhindert werden, wenn die dedizierte Anweisung in dem Ablaufprogramm beschrieben ist.
-
Es wird darauf hingewiesen, dass die Steuerdaten 32 1, 32 2, ... nicht in der dedizierten Anweisungsinformationen enthalten sein müssen. In diesem Fall können die Geräteerläuterungen nicht automatisch hinzugefügt werden. Wenn jedoch ein Vorgang zum Eingeben einer dedizierten Anweisung festgestellt wird, kann die Maskenanzeigesektion 201 das Anweisungslistenfenster anzeigen, um alle ausführbaren dedizierten Anweisungen in einer Liste anzuzeigen. Dadurch kann die Bedienperson beim Eingeben einer dedizierten Anweisung zuverlässig unterstützt werden. Der Erstellungsaufwand für das Ablaufprogramm kann vereinfacht werden.
-
Das Entwicklungswerkzeug 100 gemäß dieser Ausführungsform kann nicht nur automatisch Geräteerläuterungen hinzufügen, wenn dedizierte Anweisungen der Erweiterungseinheiten 102 1, 102 2, ... und 102 n eingegeben werden, sondern auch dann eine Geräteerläuterung automatisch hinzufügen, wenn eine dedizierte Anweisung der speicherprogrammierbaren Steuerung (der CPU Einheit) 101 eingegeben wird.
-
Auf diese Weise zeigt das Entwicklungswerkzeug 100 gemäß dieser Ausführungsform alle dedizierten Anweisungen der Liste an, die von der speicherprogrammierbaren Steuerung 101 und den bei dem Steuersystem 500 eingesetzten Erweiterungseinheiten 102 1, 102 2, ... und 102 n ausgeführt werden können, und fügt dem Ablaufprogramm eine aus den in der Liste angezeigten dedizierten Anweisungen ausgewählte dedizierte Anweisung hinzu. Daher kann die
-
Bedienperson beim Eingeben einer dedizierten Anweisung zuverlässig unterstützt werden. Der Erstellungsaufwand für das Ablaufprogramm kann vereinfacht werden.
-
Das Entwicklungswerkzeug 100 gemäß dieser Ausführungsform gibt automatisch deutlich an, dass die Geräte der speicherprogrammierbaren Steuerung 101 als Geräte für die Steuerdaten verwendet werden. Daher kann verhindert werden, dass die als Geräte für Steuerdaten verwendeten Geräte aus Versehen für andere Zwecke verwendet werden. Das Entwicklungswerkzeug 100 gemäß dieser Ausführungsform erstellt Programmblöcke zum Speichern von Steuerdaten in den Geräten und fügt gleichzeitig Geräteerläuterungen hinzu. Es ist daher unwahrscheinlich, dass ein Festlegen von Geräteerläuterungen unterlassen wird. Die Zweckmäßigkeit für die Bedienperson ist somit verbessert.
-
Gewerbliche Anwendbarkeit
-
Wie zuvor erläutert, hegt der Vorteil einer Ablaufprogrammerstellungshilfsvorrichtung gemäß der vorliegenden Erfindung darin, dass bei einer Eingabe einer dedizierten Anweisung kein manuelles Erstellen eines Programms zum Speichern von Einstellenwerten in Geräten einer speicherprogrammierbaren Steuerung und kein separates Festlegen von Geräteerläuterungen erforderlich sind. Es wird eine bessere Benutzerfreundlichkeit erzielt.
-
Bezugszeichenliste
-
- 10
- Übertragungsleitung
- 30
- Anweisungsname
- 31, 4032
- Inhalt
- 321, 322
- Steuerdaten
- 32a1, 32a2
- Objektname
- 32b1, 32b2
- Einstellbereich
- 61
- linksseitiger Bus
- 62
- rechtsseitiger Bus
- 100
- Entwicklungswerkzeug
- 101
- speicherprogrammierbare Steuerung
- 1021, 1022, ... 102n
- Erweiterungseinheit
- 201
- Maskenanzeigesektion
- 202, 2021, 2022, 202m
- Anweisungsinformationstabelle
- 203
- Editorsektion
- 300
- Computer
- 301
- CPU
- 302
- RAM
- 303
- ROM
- 304
- Speichersektion
- 305
- Eingabesektion
- 306
- Anzeigesektion
- 307
- Entwicklungswerkzeugsoftware
- 309
- Kommunikations-I/F
- 401
- Ablaufprogrammerzeugungsmaske
- 402
- Vorrichtungslistenfenster
- 403
- Anweisungslistenfenster
- 404
- Steuerdateneingabefenster
- 404a, 404b
- Eintrag
- 500
- Steuersystem
- 4011
- Sprosse
- 4012
- Cursor
- 4013
- dedizierte Anweisung
- 40141, 40142
- Anweisung zum Speichern von Steuerdaten
- 40151, 40152
- Geräteerläuterung
- 4021, 40221, 40222, 4022n
- Modellnummer
- 4023, 4033
- ”Weiter”-Schaltfläche
- 4024, 4034, 4045
- ”Abbrechen”-Schaltfläche
- 4031
- Anweisungsname
- 4035, 4046
- ”Zurück”-Schaltfläche
- 4041
- Objektname
- 4042
- Einstellwerteingabespalte
- 4043
- Speicherzielgeräteeingabespalte
- 4044
- ”Fertigstellen”-Schaltfläche