-
HINTERGRUND
DER ERFINDUNG
-
Gebiet der Erfindung
-
Die
vorliegende Erfindung bezieht sich auf ein Überwachungsverfahren für eine programmierbare
Steuereinrichtung (die nachstehend als „PLC" bezeichnet wird), und insbesondere
auf ein Überwachungsverfahren,
das mit einer Funktionsablaufplan-(der nachstehend als „SFC" bezeichnet wird)PLC
verwendet wird, und einen anomalen Zustand erfassen und eine Ablaufhistorie überwachen kann.
-
Beschreibung
des verwandten Standes der Technik
-
SFC
ist eine Standardprogrammiersprache für PLCS und ist in Draft IEC
1131-1 von IEC (International Electrotechnical Commission) definiert. SFC-Programme
werden anstelle herkömmlicher Kontaktplanprogramme
aufgrund der Einfachheit der Bereitung von Software in Modulen und
der kurzen Ausführungszeit
verwendet, die zur Ausführung
des gesamten Programms bei jedem Abfragezyklus erforderlich ist.
Die Verringerung der Ausführungszeit wird über eine
selektive Ausführung
aktivierter Schritte erreicht. In einem SFC-Programm sind Schritte und Übergänge wie
in einem Ablaufdiagramm verbunden. Jeder Schritt stellt eine Operation
oder ein Verarbeitungsmodul dar, während jeder Übergang Bedingungen
darstellt, die für
einen Übergang
von einem vorhergehenden Schritt zum nächsten Schritt erfüllt sein
müssen.
Ein Operationsprogramm ist für jeden
Schritt vorgesehen, und ein Übergangsbedingungsprogramm
ist für
jeden Übergang
vorgesehen. Jeder Schritt kann zwei Zustände annehmen; das heißt, einen
aktiven Zustand und einen nicht aktiven Zustand. Ein Schritt befindet
sich im aktiven Zustand, wenn ein entsprechendes Ausführungsprogramm
arbeitet. Sind die Bedingungen für
einen einem bestimmten Schritt folgenden Übergang erfüllt, wird der bestimmte Schritt
nicht-aktiv, und der nächste
Schritt wird aktiv.
-
Wird
eine Einrichtung, die durch die Verwendung einer mit einem derartigen
SFC-Programm programmierten PLC gesteuert wird, beispielsweise aufgrund
des Auftretens einer Störung
angehalten, wird nach einem Schritt gesucht, der sich zum Zeitpunkt des
Anhaltens im aktiven Zustand befand, um nach einer Ursache für das Anhalten
zu suchen.
-
Eine
Vielzahl von mittels SFC ausgebildeten Programmen können parallel
ausgeführt
werden, und daher wird eine große
Anzahl von SFC-Programmen bei einer Steuerung parallel ausgeführt, die
bei einer modernen Einrichtung mit komplizierten Funktionen durchgeführt wird.
Tritt ein Fehler in einer derartigen Einrichtung auf, enthält jedes
der parallel ausgeführten
Programme einen Schritt, der zum Zeitpunkt des Auftretens des Fehlers
aktiv war, und daher sind viel Zeit und Mühe erforderlich, um einen Schritt
unter einer großen
Anzahl an aktiver Schritte zu bestimmen, der das Anhalten verursacht
hat.
-
Indessen
kann ein Auswahlzweig in jedem SFC-Programm programmiert sein. Im
Fall eines Programms mit einem Auswahlzweig kann die Ursache des
Anhaltens lediglich durch Suchen nach einem aktiven Schritt nicht
gefunden werden. Daher muss in einigen Fällen eine Steuerhistorie vor
der Ausführung
des aktiven Schritts gefunden werden.
-
Allerdings
ist es mit dem herkömmlichen
Verfahren nicht möglich,
einen abgezweigten Weg oder einen Schritt oder Schritte, über die
die Steuerung den Schritt erreicht hat, der gegenwärtig aktiv
ist, zu kennen.
-
In
der EP-A-0 389 990 ist ein Diagnoseverfahren einer Einrichtung in
einer Fertigungsstrasse offenbart, bei dem eine Betriebszeit vom
Beginn bis zum Ende einer Folge von Verarbeitungsschritten in jedem
Block gemessen wird, die gemessene Verarbeitungszeit mit einer Referenzverarbeitungszeit
für den
Subjektblock verglichen wird, um so das Vorhandensein oder Fehlen
einer Abweichung in jedem Block zu diagnostizieren, und ein defekter
Block und ein defekter Schritt werden aus Inhalten einer Speichereinrichtung
bestimmt, die in jedem Block zur Speicherung der Vollständigkeit
der Verarbeitung in jedem Schritt vorgesehen ist.
-
Gemäß der EP-A-0
389 990 wird die für
jeden Verarbeitungsblock gemessene Verarbeitungszeit mit einer Referenzverarbeitungszeit
verglichen. So wird es möglich,
einen Verarbeitungsblock mit abweichenden Faktoren zu bestimmen.
Desweiteren kann ein anomaler Verarbeitungsschritt, der die Betriebsstörung der
Fertigungsstrasse verursacht hat, mittels der Inhalte in der Speichereinrichtung
bestimmt werden, die die Vollständigkeit
der Verarbeitung in jedem Verarbeitungsblock der Gruppe speichert.
-
Desweiteren
ist in der US-A-5 410 468 ein Diagnoseverfahren für eine Fertigungsstraße beschrieben,
bei dem jeder Fehler in der Fertigungsstraße durch Vergleichen der Zeit
mit einer Referenzzeit erfasst wird, die für das Funktionieren der Einrichtung
erforderlich war. Ein lokalisierter Fehlerabschnitt wird auf einem Monitorbildschirm
einer Anzeigevorrichtung in einer vorbestimmten Farbe hervorgehoben.
-
KURZZUSAMMENFASSUNG
DER ERFINDUNG
-
Eine
Aufgabe der Erfindung liegt in der Bereitstellung eines Überwachungsverfahrens
für eine SFC-PLC,
das die vorstehend beschriebenen Probleme löst und eine schnelle Bestimmung
eines Schritts ermöglicht,
der eine Ursache für
das Anhalten einer Einrichtung ist.
-
Eine
weitere Aufgabe der Erfindung besteht in der Bereitstellung eines Überwachungsverfahrens für eine SFC-PLC, das ein Programm
mit Auswahlzweigen bewältigen
kann und leicht einen Weg findet, über den die Steuerung einen
gegenwärtig
aktiven Schritt erreicht hat.
-
Diese
Aufgaben werden durch ein Überwachungsverfahren
gemäß Patentanspruch
1 gelöst.
-
Da
ein anomaler Zustand auf der Grundlage der Dauer einer aktiven Zeit
jedes überwachten Schritts
erfasst wird, ist kein spezielles Überwachungsprogramm für die Erfassung
eines anomalen Zustands erforderlich. Somit kann ein anomaler Zustand
durch die Verwendung vorhandener Mittel wie eines Zeitgebers und
einer Speichereinheit erfasst werden.
-
Vorzugsweise
zeigt eine Anzeigeeinheit in dem Überwachungsverfahren das Programm
derart an, dass ein Schritt, der durch die Anomalzustandüberwachungseinheit
als sich in einem anomalen Zustand befindend erfasst wurde, von
anderen Schritten unterschiedlich ist. In diesem Fall kann die Ursache
eines anomalen Zustands schnell bestimmt werden.
-
Alternativ
oder zusätzlich
speichert eine Ausführungsüberwachungseinheit
Daten, die angeben, ob jeder Schritt in dem SFC-Programm ausgeführt wurde,
und die Anzeigeeinheit zeigt das Programm beruhend auf den in der
Ausführungsüberwachungseinheit
gespeicherten Daten derart an, dass ein Schritt oder Schritte, die
ausgeführt
wurden, von einem Schritt oder Schritten unterschieden werden, die noch
nicht ausgeführt
wurden. In diesem Fall kann eine Ausführungshistorie des Programms
leicht gefunden werden.
-
Beim
Erfüllen
von Bedingungen für
einen Übergang
von einem bestimmten Schritt auf den nächsten Schritt versetzt die
Ausführungsüberwachungseinheit
vorzugsweise ein entsprechendes Ausführungsabschlussflag in einen
vorbestimmten Zustand, um so zu speichern, ob der Schritt ausgeführt wurde.
Da in diesem Fall kein spezielles Überwachungsprogramm für die Überwachung
der Ausführung
jedes Schritts erforderlich ist, kann die Ausführung jedes Schritts leicht
unter Verwendung vorhandener Mittel wie einer Speichereinheit überwacht werden.
-
Die
Erfindung kann nicht nur bei einer PLC angewendet werden, die ein
SFC-Programm direkt ausführt,
sondern auch bei einer PLC, die ein SFC-Programm in ein Kontaktplanprogramm
umwandelt und das Kontaktplanprogramm ausführt. Das Überwachungsverfahren der Erfindung
kann durch die Verwendung einer separaten Peripherievorrichtung
realisiert werden, die mit der PLC über ein Kabel oder dergleichen
verbunden ist, und die Funktionen aufweist, die zum Betreiben des Überwachungsverfahrens
erforderlich sind. Alternativ dazu kann das Überwachungsverfahren der Erfindung durch
alleinige Verwendung einer PLC realisiert werden. In diesem Fall
sind erforderliche Funktionen wie eine Anzeigefunktion zu der PLC
hinzugefügt,
so dass die PLC das Überwachungsverfahren
betreiben kann.
-
KURZBESCHREIBUNG
DER ZEICHNUNGEN
-
Verschiedene
weitere Aufgaben, Merkmale und viele der begleitenden Vorteile der
Erfindung werden aus der folgenden Beschreibung des bevorzugten
Ausführungsbeispiels
unter Berücksichtigung der
beiliegenden Zeichnungen ersichtlich. Es zeigen:
-
1 ein Blockschaltbild einer PLC, einer Peripherievorrichtung
und einer Einrichtung gemäß einem
Ausführungsbeispiel
der Erfindung,
-
2 eine Darstellung eines Beispiel-SFC-Programms,
-
3 eine
Darstellung eines Beispielverarbeitungsprogramms,
-
4 eine
Darstellung eines Beispiels eines Übergangsbedingungsprogramms,
-
5 eine
Darstellung einer bei dem Ausführungsbeispiel
der Erfindung verwendeten aktiven Zustandstabelle,
-
6 eine
Darstellung einer bei dem Ausführungsbeispiel
der Erfindung verwendeten Überwachungsschritteinstelltabelle,
-
7 eine
Darstellung einer bei dem Ausführungsbeispiel
der Erfindung verwendeten Referenzaktivzeittabelle,
-
8 eine
Darstellung einer bei dem Ausführungsbeispiel
der Erfindung verwendeten Anomalzustandsüberwachungstabelle,
-
9 eine
Darstellung einer bei dem Ausführungsbeispiel
der Erfindung verwendeten Ausführungsüberwachungstabelle,
-
10 bis 14 Ablaufdiagramme
der Verarbeitung zur Ausführung
eines SFC-Programms gemäß dem Ausführungsbeispiel
der Erfindung,
-
15 ein
Ablaufdiagramm der Einzelheiten der in den 10 bis 14 gezeigten
Verarbeitungen,
-
16 ein
Ablaufdiagramm einer Anzeigeverarbeitung gemäß dem Ausführungsbeispiel der Erfindung,
-
17 eine
Tabelle des Zustands aktiver Flags, Ausführungsabschlussflags und anomaler
Zustandsflags, die bei dem Ausführungsbeispiel
der Erfindung verwendet werden, und
-
18 eine
Darstellung eines Anzeigebildschirms, auf dem SFC-Programme angezeigt
werden.
-
BESCHREIBUNG
DES BEVORZUGTEN AUSFÜHRUNGSBEISPIELS
-
Nachstehend
wird ein Ausführungsbeispiel der
Erfindung unter Bezugnahme auf die Zeichnungen beschrieben.
-
1 zeigt eine Steuerblockdarstellung einer
PLC 1, einer mit der PLC 1 verbundenen Peripherievorrichtung 2 und
einer durch die PLC 1 gesteuerten Einrichtung 3.
-
Die
PLC 1 enthält
eine CPU 11, die als Berechnungsabschnitt dient, ein ROM 12,
das ein Systemprogramm und andere erforderliche Daten speichert,
ein RAM 13 mit einem Programmbereich 131 zur Speicherung
von SFC-Programmen und Bereichen zur Speicherung verschiedener Tabellen,
die nachstehend beschrieben werden, eine Schnittstelle 14 zum
Austauschen von Daten mit der Peripherievorrichtung 2 und
eine I/O-Steuerschaltung 15 zum Austauschen
von Eingangs- und Ausgangssignalen (I/O-Signalen) mit der Einrichtung 3.
-
Die
Peripherievorrichtung 2 ist durch einen Computer wie durch
einen Personalcomputer gebildet und enthält eine CPU 21, die
als Berechnungsabschnitt dient, ein ROM 22, das ein Systemprogramm und
andere erforderliche Daten speichert, ein RAM 23, das verschiedene
Steuerprogramme einschließlich
eines Programms für
eine Anzeigeverarbeitung speichert, was nachstehend beschrieben
wird, einen Mensch-Maschine-Schnittstellen(HMI)-Abschnitt 24 und
Schnittstellen 25 und 26. Die Peripherievorrichtung 2 ist
mit einer Eingabeeinrichtung 241 mit einer Funktion zur
Eingabe verschiedener Daten, wie Programmen, in die PLC 1 und
einer Ausgabeeinrichtung 242 mit einer Funktion zur Ausgabe
(Anzeigen) verschiedener Daten der PLC 1 für Überwachungszwecke
versehen. Die Einzelheiten der Eingabe- und Ausgabefunktionen der
Peripherievorrichtung 2 sind hier allerdings nicht beschrieben,
da sie sich nicht direkt auf die Erfindung beziehen. Bei diesem
Ausführungsbeispiel
ist die Peripherievorrichtung 2 von der PLC 1 getrennt
vorgesehen. Allerdings kann die PLC 1 mit Funktionen der
Peripherievorrichtung 2 ausgestattet sein.
-
Die
Einrichtung 3 ist ein Objekt, wie ein Maschinenwerkzeug,
das durch die PLC 1 zu steuern ist. Die Einrichtung 3 wird
durch die PLC 1 über
den Austausch von Eingangs- und Ausgangssignalen (I/O-Signalen)
mit der PLC 1 gesteuert.
-
2 zeigt ein Beispiel eines SFC-Programms.
In 2 sind rechteckige Blöcke als
INITIAL STEP, STEP 1, usw. gekennzeichnet, was jeweils einen Anfangsschritt
und folgende Schritte darstellt. Der Anfangsschritt (der als „INITIAL
STEP" bezeichnet
ist) ist mit Doppellinien umschlossen. TR1 bis TR9 stellen jeweils
einen Übergang
dar. Die Schritte und die Übergänge sind
wie im Fall eines Ablaufdiagramms verbunden, um so ein SFC-Programm
zu vervollständigen.
Wird die PLC 1 eingeschaltet, wird zuerst INITIAL STEP
ausgeführt,
und sind Bedingungen für
einen Übergang
TR1 erfüllt,
geht der Ablauf zum nächsten
Schritt über,
das heißt
STEP 1. In diesem Beispielprogramm sind STEP 3, STEP 4 und STEP
5 als in Auswahlzweigen befindlich programmiert. Sind Bedingungen
für einen Übergang
TR3 während
der Ausführung
von STEP 2 erfüllt,
geht der Ablauf zu STEP 3 über;
sind Bedingungen für
einen Übergang
TR4 während
der Ausführung
von STEP 2 erfüllt,
geht der Ablauf zu STEP 4 über;
und sind Bedingungen für
einen Übergang
TR5 während
der Ausführung
von STEP 2 erfüllt,
geht der Ablauf zu STEP 5 über.
-
In 2 sind mit + markierte Schritte Verarbeitungsüberwachungsschritte.
Der Ausdruck „Verarbeitungsüberwachung" bedeutet eine Überwachung eines
Zeitabschnitts, in dem ein mit + markierter relevanter Schritt sich
in einem aktiven Zustand befindet (was nachstehend einfach als „aktive
Zeit" bezeichnet
wird). Während
einer Programmierphase fügt
ein Programmierer eine „+"-Markierung zu jedem
zu überwachenden
Schritt hinzu. Somit werden die mit + markierten Schritte als Verarbeitungsüberwachungsschritte
erkannt und ihre aktiven Zeiten werden überwacht.
-
Ein
durch die Verwendung von beispielsweise Leitersymbolen oder mnemotechnischen
Codes beschriebenes Operationsprogramm wird für jeden Schritt vorgesehen
oder zugewiesen und in einem Operationsprogrammbereich 132 des
RAM 13 gespeichert. 3 zeigt
ein Beispiel eines derartigen Operations- bzw. Verarbeitungsprogramms.
Das in 3 gezeigte Verarbeitungsprogramm entspricht STEP
1 und ist in der Form eines Leiter- bzw.
-
Kontaktplanprogramms
beschrieben, das heißt,
unter Verwendung von Leitersymbolen. Dieses Verarbeitungsprogramm
ist derart programmiert, dass die PLC 1 den Zustand von
Eingangs- und Ausgangseinrichtungen in der Einrichtung 3 überprüft und einen
Schablonenspannvorgang bewirkt, wenn Bedingungen für eine Schabloneneinspannung
erfüllt sind.
-
Ferner
ist ein Übergangsbedingungsprogramm
für jeden Übergang
vorgesehen oder zugewiesen, das beispielsweise mittels Leitersymbolen oder
mnemotechnischer Codes beschrieben ist, und in einem Übergangsbedingungsprogrammbereich 133 des
RAM 13 gespeichert ist. 4 zeigt
ein Beispiel eines derartigen Übergangsbedingungsprogramms.
Das in 4 gezeigte Übergangsbedingungsprogramm
entspricht einem Übergang
TR1 und ist in der Form eines Leiter- bzw. Kontaktplanprogramms
beschrieben, das heißt,
durch die Verwendung von Leitersymbolen. Dieses Übergangsbedingungsprogramm
ist derart programmiert, dass die PLC 1 den Zustand von
Eingangs- und Ausgangseinrichtungen der Einrichtung 3 überprüft und TR1 einschaltet
(TR1 = „1"), wenn die entsprechenden Übergangsbedingungen
erfüllt
sind.
-
Als
nächstes
werden verschiedene im RAM 13 gespeicherte Tabellen beschrieben.
Wird eine Vielzahl von Programmen parallel ausgeführt, sind die
Tabellen für
jedes Programm vorgesehen.
-
5 zeigt
eine im RAM 13 gespeicherte aktive Zustandstabelle 134.
Die aktive Zustandstabelle 134 speichert ein jedem Schritt
entsprechendes Aktivflag, das darstellt, ob sich der Schritt in
einem aktiven Zustand oder einem nicht aktiven Zustand befindet.
Ist der Wert eines bestimmten Aktivflags „1", bedeutet das, dass sich der entsprechende
Schritt im aktiven Zustand befindet, und ist der Wert des Aktivflags „0", bedeutet dies,
dass sich der Schritt im nicht aktiven Zustand befindet. Ein Aktivflag
von Schritt(n) wird auf „1" gesetzt, wenn Bedingungen
für einen Übergang
TR(n) zum Bewegen vom vorhergehenden Schritt(n – 1) zu Schritt(n) erfüllt sind,
und wird auf „0" gesetzt, wenn Bedingungen
für einen Übergang TR(n
+ 1) zum Bewegen von Schritt(n) zum nächsten Schritt(n + 1) erfüllt sind.
Daher ist grundsätzlich
eines der den Schritten entsprechenden Aktivflags „1", und die Aktivflags
verbleibender Schritte sind „0". Allerdings können im
Falle eines Programms mit Parallelbetrieb Aktivflags einer Vielzahl
von Schritten gleichzeitig „1" sein.
-
6 zeigt
eine Überwachungsschritteinstelltabelle 135,
die im RAM 13 gespeichert ist. Die Überwachungsschritteinstelltabelle 135 speichert
ein jedem Schritt entsprechendes Überwachungsflag, das darstellt,
ob der Schritt ein Schritt ist, dessen Betrieb zu überwachen
ist (der nachstehend als „Verarbeitungsüberwachungsschritt" bezeichnet wird).
Ist der Wert eines bestimmten Überwachungsflags „1", bedeutet dies,
dass der entsprechende Schritt ein Verarbeitungsüberwachungsschritt ist, und
ist der Wert des Überwachungsflags „0", ist der Schritt
kein Verarbeitungsüberwachungsschritt. 7 zeigt
eine Referenzaktivzeittabelle 136, die im RAM 13 gespeichert
ist. Die Referenzaktivzeittabelle 136 speichert eine Referenzaktivzeit
für jeden
Verarbeitungsüberwachungsschritt,
wobei die Referenzaktivzeit als Referenz bei deren Überwachung
verwendet wird. Ferner zeigt 8 eine Anomalzustandsüberwachungstabelle 137,
die im RAM 13 gespeichert ist. Die Anomalzustandsüberwachungstabelle 137 speichert
das Vorhandensein oder Fehlen eines anomalen Zustands für jeden
Verarbeitungsüberwachungsschritt. Kommt
ein bestimmter Verarbeitungsüberwachungsschritt
in einen anomalen Zustand, wird ein entsprechendes Anomalzustandsflag
auf „1" gesetzt.
-
Gibt
ein Programmierer ein Programm wie in 2 gezeigt
ein, fügt
der Programmierer die „+"-Markierung zu jedem
zu überwachenden
Schritt hinzu, das heißt,
zu Verarbeitungsüberwachungsschritten.
Infolgedessen werden die in der Überwachungsschritteinstelltabelle 135 gespeicherten Überwachungsflags
dieser Schritte auf „1" gesetzt. Desweiteren
wird der Programmierer als Antwort auf das Hinzufügen der „+"-Markierung zu jedem
Verarbeitungsüberwachungsschritt
aufgefordert, eine Referenzaktivzeit einzugeben. Gibt der Programmierer eine
Referenzaktivzeit unter Berücksichtigung
einer Standardverarbeitungszeit des Verarbeitungsüberwachungsschritts
ein, wird die Referenzaktivzeit in der Referenzaktivzeittabelle 136 gespeichert.
Die Eingabe der Referenzaktivzeit kann effektiver gestaltet werden,
wenn eine generell für
alle Schritte anwendbare Referenzzeit als Vorgabewert gespeichert ist,
und der Vorgabewert jedes Schritts bei Bedarf geändert wird.
-
Die
aktive Zeit jedes Verarbeitungsüberwachungsschritts,
der wie vorstehend beschrieben eingestellt wurde, wird unter Verwendung
einer im RAM 36 gespeicherten Zeitgeberschaltung 139 gemessen.
Die durch die Zeitgeberschaltung 139 gemessene aktive Zeit
wird mit einer in der Referenzaktivzeittabelle 136 gespeicherten
entsprechenden Referenzaktivzeit verglichen. Überschreitet die durch die Zeitgeberschaltung 139 gemessene
aktive Zeit die entsprechende Referenzaktivzeit, wird ein entsprechendes
Anomalzustandsflag in der Anomalzustandsüberwachungstabelle 137 auf „1" gesetzt.
-
9 zeigt
eine im Speicherbereich 138 des RAM 13 gespeicherte
Ausführungsüberwachungstabelle.
Die Ausführungsüberwachungstabelle
speichert ein jedem Schritt entsprechendes Ausführungsabschlussflag, das darstellt,
ob der Schritt ausgeführt wurde
oder nicht. Ist der Wert eines bestimmten Ausführungsabschlussflag „1", bedeutet dies,
dass der entsprechende Schritt ausgeführt wurde, und ist der Wert
des Ausführungsabschlussflag „0", bedeutet dies,
dass der Schritt noch nicht ausgeführt wurde. Wie im Fall der
Aktivflags wird ein Ausführungsabschlussflag
von Schritt(n) auf „1" gesetzt, wenn Bedingungen
für einen Übergang
TR(n + 1) zum Bewegen von Schritt(n) zum nächsten Schritt(n + 1) erfüllt sind.
-
Als
nächstes
wird der Betrieb der CPU 11 unter Bezugnahme auf die in
den 10 bis 15 gezeigten
Ablaufdiagramme beschrieben.
-
Zuerst
erzeugt ein Programmierer ein SFC-Programm und gibt es unter Verwendung
der Eingabefunktion der Peripherievorrichtung 2 ein. Während dieser
Phase fügt
der Programmierer die „+"-Markierung zu jedem
zu überwachenden
Schritt hinzu; das heißt,
zu Verarbeitungsüberwachungsschritten,
wodurch die in der Überwachungsschritteinstelltabelle 135 gespeicherten Überwachungsflags
dieser Schritte auf „1" gesetzt werden.
Gibt der Bediener eine Referenzaktivzeit für jeden Verarbeitungsüberwachungsschritt
ein, wird die Referenzaktivzeit in der Referenzaktivzeittabelle 136 gespeichert.
Das so erzeugte SFC-Programm wird in den Programmbereich 131 des
RAM 13 übertragen.
Desweiteren werden Verarbeitungsprogramme, die den im Programm verwendeten
Schritten entsprechen, und Übergangsbedingungsprogramme,
die den im Programm verwendeten Übergängen entsprechen, jeweils
in den Verarbeitungsprogrammbereich 132 und den Übergangsbedingungsprogrammbereich 133 übertragen.
-
Wird
die PLC 1 in diesem Zustand gestartet, setzt die CPU 11 zuerst
die Ausführungsüberwachungstabelle 138 zurück, das
heißt,
setzt alle Ausführungsabschlussflags
in S40 auf „0". Danach setzt die
CPU 11 in Schritt S41 das Aktivzustandsflag von INITIAL
STEP, das heißt,
setzt ein entsprechendes Aktivflag in der Aktivzustandstabelle 134 auf „1". In S42 beurteilt
die CPU11, ob INITIAL STEP ein Verarbeitungsüberwachungsschritt ist, das
heißt,
ob der Wert eines entsprechenden Flag in der Überwachungsschritteinstelltabelle 135 „1" ist. Ist das Ergebnis
der Beurteilung JA, geht die CPU 11 über S43 zu S44 über, und
ist das Ergebnis der Beurteilung NEIN, geht die CPU 11 direkt
zu S44 über.
In S43 startet die CPU 11 die Zeitgeberschaltung 139,
um dadurch die aktive Zeit von INITIAL STEP zu messen. In S44 führt die
CPU 11 eine Verarbeitung für INITIAL STEP durch. In S45
beurteilt die CPU 11, ob der Wert des Übergangs TR1 „1" ist, wobei der Übergang
TR1 auf „1" gesetzt ist, wenn
Bedingungen für
einen Übergang
von INITIAL STEP zu STEP 1 erfüllt
sind. Ist das Ergebnis der Beurteilung NEIN, kehrt die CPU 11 zu
S44 zurück,
um dadurch die Verarbeitung zu wiederholen. Ist das Ergebnis der
Beurteilung JA, geht die CPU 11 zu S46 zum Starten des
nächsten Schritts über. Da
INITIAL STEP bereits ausgeführt wurde,
setzt die CPU 11 in S46 ein Ausführungsabschlussflag in der
Ausführungsüberwachungstabelle 138,
das INITIAL STEP entspricht, so dass das Ausführungsabschlussflag auf „1" gesetzt wird, und
setzt ein INITIAL STEP entsprechendes Aktivflag in der Aktivzustandstabelle 134 zurück, so dass
das Aktivflag auf „0" gesetzt wird, da
INITIAL STEP in einen nicht aktiven Zustand übergeht. Desweiteren setzt die
CPU 11 ein dem nächsten
Schritt entsprechendes Aktivflag in der Aktivzustandstabelle 134,
das heißt, STEP
1, um STEP 1 zu aktivieren.
-
INITIAL
STEP ist ein Schritt, der beim Einschalten der PLC zu allererst
ausgeführt
wird.
-
Dann
geht die CPU 11 zu S47 über
und führt eine
Verarbeitung für
STEP 1 in S47 bis S51 auf ähnliche
Weise wie für
INITIAL STEP in S42 bis S46 durch. Das heißt, unter Bezugnahme auf die Überwachungsschritteinstelltabelle 135 beurteilt
die CPU 11, ob STEP 1 ein Verarbeitungsüberwachungsschritt ist. Ist
STEP 1 ein Verarbeitungsüberwachungsschritt,
startet die CPU 11 in S48 die Zeitgeberschaltung 139 und
führt in S49
eine Verarbeitung für
STEP 1 durch. Wird der Übergang
TR2 als „1" beurteilt, geht
die CPU 11 zu S51 über,
um dadurch ein Ausführungsabschlussflag
in der Ausführungsüberwachungstabelle 138 zu
setzen, das STEP 1 entspricht, ein STEP 1 entsprechendes Aktivflag
in der Aktivzustandstabelle 134 rückzusetzen und ein STEP 2 entsprechendes
Aktivflag in der Aktivzustandstabelle 134 zu setzen.
-
Danach
geht die CPU 11 zu S52 über
und führt
eine Verarbeitung für
STEP 2 in S52 bis S54 auf ähnliche
Weise wie für
INITIAL STEP in S42 bis S44 oder für STEP 1 in S47 bis S49 durch.
Da sich STEP 3 bis STEP 5, die nach STEP 2 durchzuführen sind, in
Auswahlzweigen befinden, was vom Fall in S45 hinsichtlich INITIAL
STEP oder vom Fall in S50 hinsichtlich STEP 1 verschieden ist, führt die
CPU 11 in S55 bis S57 eine Verzweigungsverarbeitung durch. Insbesondere
beurteilt die CPU 11 in S55 bis S57, welche von Übergangsbedingungen
für einen Übergang
TR3, Übergangsbedingungen
für einen Übergang
TR4 und Übergangsbedingungen
für einen Übergang
TR5 erfüllt
sind. Beurteilt die CPU 11 in S55, dass Übergangsbedingungen
für den Übergang TR3
erfüllt
sind, geht die CPU 11 zu S58 über; beurteilt die CPU 11 in
S56, dass Übergangsbedingungen für den Übergang
TR4 erfüllt
sind, geht die CPU 11 zu S64 über; und beurteilt die CPU 11 in
S57, dass Übergangsbedingungen
für den Übergang
TR5 erfüllt
sind, geht die CPU 11 zu S70 über.
-
Auf ähnliche
Weise wie in den vorstehend beschriebenen Schritten führt die
CPU 11 eine Verarbeitung für STEP 3 in S58 bis S63 durch,
wenn sie zu S58 übergegangen
ist, führt
eine Verarbeitung für STEP
4 in S64 bis S69 durch, wenn sie zu S64 übergegangen ist, und führt eine Verarbeitung
für STEP
5 in S70 bis S75 durch, wenn sie zu S70 übergegangen ist.
-
Nach
dem Abschluss der Verarbeitungen in S63, S69 oder S75, führt die
CPU 11 eine Verarbeitung für STEP 6 in S76 bis S78 durch.
-
15 zeigt
eine Sub-Routine für
die jeweils in S44, S49, S54, S61, S67, S73 und S78 durchgeführte Verarbeitung.
Zuerst führt
die CPU 11 in S81 eine Operationsausgabeverarbeitung für jeden Schritt
durch. Das heißt,
ein Operationsprogramm wie in 3 gezeigt
wird aufgerufen und ausgeführt. Danach
vergleicht die CPU 11 in S82 die aktive Zeit des relevanten
Schritts, die unter Verwendung des Verarbeitungsüberwachungszeitgebers gemessen ist,
mit einer in der Referenzaktivzeittabelle 136 gespeicherten
Referenzaktivzeit. Ist die gemessene aktive Zeit größer als
die Referenzaktivzeit, geht die CPU 11 zu S83 über und
setzt ein entsprechendes Anomalzustandsflag in der Anomalzustandsüberwachungstabelle 137.
Ist die gemessene aktive Zeit nicht größer als die Referenzaktivzeit,
kehrt die CPU 11 ohne Durchführung einer Verarbeitung zu
der Hauptroutine zurück.
Ist der Schritt kein Verarbeitungsüberwachungsschritt (das heißt, ist
der Wert eines entsprechenden Überwachungsflag
in der Überwachungsschritteinstelltabelle 135 „0"), wurde der Verarbeitungsüberwachungszeitgeber
nicht gestartet, und daher ist das Ergebnis der Beurteilung in S82 NEIN,
so dass die CPU 11 ohne Durchführung einer Verarbeitung zur
Hauptroutine zurückkehrt.
-
Arbeitet
die Einrichtung 3 korrekt, läuft die Verarbeitung auf folgende
Weise ab. Es wird angenommen, dass INITIAL STEP, STEP 1 und STEP
2 sequentiell ausgeführt
werden, Übergangsbedingungen
für den Übergang
TR4 dann erfüllt
sind, woraus sich eine Durchführung
von STEP 4 ergibt, dann Übergangsbedingungen
für den Übergang
TR7 erfüllt
sind, wodurch sich ein Start von STEP 6 ergibt, dann in STEP 6 ein
Fehler auftritt, so dass Übergangsbedingungen
für den Übergang
TR9 nicht erfüllt
sind, und die Verarbeitung daher nicht zu S80 übergeht.
-
Da
STEP 6 ein Verarbeitungsüberwachungsschritt
ist, erhöht
sich beim Fortschreiten des vorstehend beschriebenen Zustands der
Zählwert
des Verarbeitungsüberwachungszeitgebers
und überschreitet
5,0 s, was die Referenzaktivzeit von STEP 6 ist. Infolgedessen wird
das Ergebnis der Beurteilung in S82 JA, und in S83 wird ein Anomalzustandsflag
in der Anomalzustandsüberwachungstabelle 137,
das STEP 6 entspricht, gesetzt. Dies veranlasst die PLC 1 zum
Senden eines Signals zu der Peripherievorrichtung 2, so
dass das SFC-Programm auf der Peripherievorrichtung 2 angezeigt
wird.
-
16 zeigt
ein Ablaufdiagramm einer Verarbeitung für die Anzeige. In S84 durchsucht
die CPU 11 die Aktivzustandstabelle 134 zum Herausfinden der
Schritte, deren Aktivflags „1" sind. In S85 durchsucht
die CPU 11 die Ausführungsüberwachungstabelle 138 zum
Auffinden der Schritte, deren Ausführungsabschlussflags „1" sind. In S86 durchsucht
die CPU 11 die Anomalzustandsüberwachungstabelle 137 zum
Herausfinden eines Schritts, dessen Anomalzustandsflag „1" ist. Auf der Grundlage
der in S84 bis S86 erhaltenen Suchergebnisse wird das SFC-Programm
auf dem Anzeigebildschirm der Ausgabeeinrichtung 242 angezeigt.
-
In
dem vorstehend beschriebenen Zustand nehmen die jeweiligen Flags
der Schritte Werte wie in 17 gezeigt
an. Das heißt,
hinsichtlich aktiver Flags ist lediglich das Aktivflag von STEP
6 im „EIN"-Zustand oder nimmt „1" an, hinsichtlich
der Ausführungsabschlussflags
befindet sich jedes der Ausführungsabschlussflags
von INITIAL STEP, STEP 1, STEP 2 und STEP 4 in einem „EIN"-Zustand oder nimmt „1" an, und hinsichtlich der Anomalzustandsflags
befindet sich lediglich das aktive Flag von STEP 6 im „EIN"-Zustand oder nimmt „1" an. In S87 zeigt
die CPU 21 das SFC-Programm derart an, dass Schritte jeweils
mit einem Flag im „EIN"-Zustand von den übrigen Schritten
unterschieden werden. 18 zeigt einen Anzeigebildschirm,
auf dem das SFC-Programm angezeigt ist. Auf dem in 18 gezeigten
Anzeigebildschirm wird zusätzlich
zu dem vorstehend beschriebenen SFC-Programm (SFC PROGRAM 1) ein
weiteres SFC-Programm (SFC PROGRAM 2) angezeigt, das parallel zum
vorstehend beschriebenen SFC-Programm (SFC PROGRAM 1) ausgeführt wird.
Auf dem Anzeigebildschirm ist ein aktiver Schritt (STEP 6) unter
Verwendung eines Rahmens mit dicker Linie gezeigt, und ausgeführte Schritte
(INITIAL STEP, STEP 1, STEP 2 und STEP 4) sind unter Verwendung
schwarzer Blöcke
gezeigt, und ein anomaler Schritt (STEP 6) ist mittels einer Schraffierung
mit gestrichelten Linien angegeben. Ein Bediener sucht nach der
Ursache des anomalen Zustands beruhend auf dem angezeigten SFC.
Farben, Blinken oder ein anderes geeignetes Anzeigeverfahren kann
verwendet werden, um dem Bediener das Erkennen der Zustände der
jeweiligen Schritte zu ermöglichen.
-
Gemäß dem vorstehend
beschriebenen Ausführungsbeispiel
wird eine Überwachung
eines anomalen Zustands über
einen Vergleich zwischen einer gemessenen aktiven Zeit und einer
entsprechenden Referenzaktivzeit durchgeführt. Selbst wenn ein anomaler
Zustand während
einer Parallelausführung
einer Vielzahl von Programmen auftritt, ist es möglich, einen anomalen Schritt
zusätzlich
zu aktiven Schritten herauszufinden. Das heißt, auf dem in 18 gezeigten
Anzeigebildschirm sind STEP 6 von SFC PROGRAM 1 und STEP 3 von SFC
PROGRAM 2 beide aktiv. Da aber STEP 6 von SFC PROGRAM 1, der den
anomalen Zustand verursacht hat, derart angezeigt wird, dass er
von STEP 3 von SFC PROGRAM 2 unterschieden wird, kann ein Schritt, der
den anomalen Zustand verursacht hat, schnell bestimmt werden.
-
Da
bei dem vorstehend beschriebenen Ausführungsbeispiel desweiteren
ausgeführte
Schritte über
die Überwachung
gespeichert werden, kann selbst in dem Fall eines Programms mit
Auswahlzweigen eine Historie oder ein Weg bis zu einem Schritt,
der einen anomalen Zustand verursacht hat, gefunden werden. Das
heißt,
auf dem in 18 gezeigten Anzeigebildschirm
wird STEP 4, der bereits ausgeführt
wurde, derart angezeigt, dass er von STEP 3 und STEP 5 unterschieden
wird, die noch nicht ausgeführt
wurden. Daher ist es möglich
herauszufinden, ob ein anomaler Zustand von STEP 6 nach der Ausführung von
STEP 3 oder nach der Ausführung
von STEP 4 aufgetreten ist, wodurch eine schnelle Bestimmung einer
Ursache des anomalen Zustands ermöglicht wird.
-
Hält die Einrichtung
aufgrund des Auftretens eines anomalen Zustands an, müssen die
Verarbeitungsschritte auch manchmal über einen MDI ("Manual Data Input", manuelle Dateneingabe)-Vorgang zurückverfolgt
werden. Wird ein derartiger Rückverfolgungsvorgang
unter Bezugnahme auf die Ausführungshistorie
durchgeführt,
kann der Rückverfolgungsvorgang
präzise
und einfach durchgeführt
werden. Außerdem
wird von der Überwachungsvorrichtung
der Erfindung erwartet, dass sie merkliche Effekte nicht nur bei
der Bestimmung einer Ursache eines anomalen Zustands, der während einer üblichen Verarbeitung
aufgetreten ist, sondern auch in vielen anderen Situationen liefert.
Beispielsweise kann die Überwachungsvorrichtung
der Erfindung einen Ort mit einem Fehler während einer Anpassungs- oder Versuchsverarbeitung
der Einrichtung 3 oder während eines Austestvorgangs
eines Steuerprogramms finden.
-
Offensichtlich
sind viele Modifikationen und Veränderungen der Erfindung im
Lichte der vorstehenden Lehre möglich.
Innerhalb des Schutzbereichs der beigefügten Patentansprüche kann
die Erfindung daher anders als vorstehend beschrieben praktiziert
werden.
-
Bei
einem Überwachungsverfahren
für eine programmierbare
Funktionsablaufplan-Steuereinrichtung wird ein Standardwert einer
aktiven Zeit eines willkürlichen
Schritts in einem Funktionsablaufplanprogramm gespeichert, und die
aktive Zeit des willkürlichen
Schritts wird während
der Ausführung des
Programms gemessen. Ein anomaler Zustand des willkürlichen
Schritts wird über
einen Vergleich zwischen der gemessenen aktiven Zeit und dem Referenzwert
erfasst. Ferner werden Daten gespeichert, die angeben, ob ein Schritt
im Funktionsablaufplanprogramm ausgeführt wurde. Das Programm wird
derart angezeigt, dass ein anomaler Schritt, ein Schritt oder Schritte,
die ausgeführt
wurden, und ein Schritt oder Schritte, die noch nicht ausgeführt wurden,
voneinander unterschieden werden.