-
Die
Erfindung betrifft einen Controller, der einen Prozessor für die numerische
Steuerungsverarbeitung und einen Prozessor für die Nachfolge-Verarbeitung
aufweist und zum Steuern von Maschinen in der Industrie verwendet
wird, beispielsweise für Werkzeugmaschinen.
-
In
neuerer Zeit werden für
den Hochgeschwindigkeitsbetrieb von Werkzeugmaschinen allgemein
numerische Controller verwendet, die einen Prozessor für die numerische
Steuerungsverarbeitung aufweisen, und auch einen Prozessor für die Nachfolge-Verarbeitung, der
vom Prozessor für
die numerische Steuerungsverarbeitung unabhängig ist. In einem derartigen
numerischen Controller führen die
beiden Prozessoren ihre jeweilige Verarbeitung getrennt aus. Dies
hat den Vorteil, dass die Verarbeitungsgeschwindigkeit der numerischen
Steuerungsverarbeitung und der Nachfolge-Verarbeitung stark verbessert
wird.
-
1 zeigt
ein Blockdiagramm eines herkömmlichen
numerischen Controllers, der einen Prozessor für die numerische Steuerungsverarbeitung und
einen davon unabhängigen
Prozessor für
die Nachfolge-Verarbeitung aufweist.
-
Ein
numerischer Steuerungsabschnitt 10, siehe 1,
und ein Nachfolge-Verarbeitungsabschnitt 20 sind über einen
Bus 30 miteinander verbunden. Der numerische Steuerungsabschnitt 10 umfasst:
einen Prozessor 11 für
die numerische Steuerungsverarbeitung, ein ROM 12, in dem
ein Steuerungsprogramm gespeichert ist, beispielsweise ein Systemprogramm,
und ein RAM 13, in dem das Steuerungsprogramm bei der Ausführung gespeichert
ist, und das einen nichtflüchtigen
Bereich aufweist, in dem Bearbeitungsprogramme und Einstellwerte
für verschiedene
Parameter abgelegt sind, sowie ein Arbeits-RAM 14, das
den verschiedenen arithmetischen Operationen dient. Der Bus 30 verbindet
alle diese Teile. Das Arbeits-RAM 14 weist einen Speicherbereich
zum Speichern von Signalen auf, die bei der numerischen Steuerungsverarbeitung verwendet
werden, und die zwischen dem numerischen Steuerungsabschnitt 10 und
dem Nachfolge-Verarbeitungsabschnitt 20 ausgetauscht
werden.
-
Der
Nachfolge-Verarbeitungsabschnitt 20 umfasst: einen Nachfolge-Verarbeitungsprozessor 21,
ein ROM 22, in dem ein Steuerungsprogramm für die Nachfolge-Steuerung und Folgeprogramme
gespeichert sind, ein Arbeits-RAM zum Speichern von Daten bei verschiedenen
arithmetischen Operationen, einen Signalspeicher, der beim Übertragen
von Signalen zum bzw. vom numerischen Steuerungsabschnitt 10 verwendet
wird, ein RAM 25 zum Speichern der aus dem ROM 22 gelesenen
Steuerungsprogramme und der Folgeprogramme beim Ausführen der
Software und der Programme, und eine I/O-Vorrichtung 26,
die mit einer externen Eingabe/Ausgabe-Vorrichtung zu verbinden
ist. Der Bus 30 verbindet alle diese Teile.
-
Ein
Befehlssignal F für
den Nachfolge-Verarbeitungsabschnitt 20 ist im Arbeits- RAM 14 des
numerischen Steuerungsabschnitts 10 gespeichert. Ein Signal
G' ist eine Kopie
eines Befehlssignals G aus dem Nachfolge-Verarbeitungsabschnitt 20 für den numerischen
Steuerungsabschnitt 10. Ein im Signalspeicher 24 des
Nachfolge-Steuerungsabschnitts 20 abgelegtes Signal F' ist eine Kopie des
Befehlssignals F für
den Nachfolge-Verarbeitungsabschnitt 20. Das
Befehlssignal G enthält
eine Meldung über
den Abschluss der Nachfolge-Verarbeitung.
-
Mit
der beschriebenen Anordnung des numerischen Controllers erfolgt
die numerische Steuerungsverarbeitung durch den Verarbeitungsprozessor 11 für die numerische
Steuerung und die Nachfolge-Verarbeitung einschließlich der
Ausführung
des Folgeprogramms durch den Nachfolge-Verarbeitungsprozessor 21 in
jeder Steuerungsverarbeitungsperiode getrennt. Die Verarbeitung,
die der numerische Steuerungsprozessor 11 vornimmt, und
die Verarbeitung, die durch den Nachfolge-Verarbeitungsprozessor 21 erfolgt,
sind in den Flussdiagrammen in 2a und 2b dargestellt. 3 zeigt eine
zeitabhängige
Darstellung der Verarbeitung, die die Prozessoren 11 und 21 vornehmen.
-
Im
numerischen Steuerungsabschnitt 10, siehe 2a und 3,
beginnt die numerische Steuerung, wenn der numerische Steuerungsprozessor 11 den
Startinterrupt der Steuerungsverarbeitungsperiode empfängt (Schritt
S1).
-
Zuerst
wird eine Kopie eines Befehlssignals G, das im Signalspeicher 24 des
Nachfolge-Verarbeitungsabschnitts 20 abgelegt ist, an den
numerischen Steuerungsabschnitt 10 gesendet und als Signal
G' im Arbeits-RAM 14 gespeichert
(Schritt S2). Die numerische Steuerungsverarbeitung erfolgt anhand des
im RAM 13 gespeicherten Bearbeitungsprogramms mit Hilfe
eines Signals F und des im Arbeits-RAM 14 abgelegten Signals
G' (Schritt S3). Eine
Kopie eines Befehlssignals F, das durch die numerische Steuerungsverarbeitung
für den
Nachfolge-Verarbeitungsabschnitt 20 erhalten wird, wird
an den Nachfolge-Verarbeitungsabschnitt 20 gesendet und
als Signal F' im
Signalspeicher 24 abgelegt (Schritt S4). Die beschriebene
Abarbeitung vom Schritt S1 bis zum Schritt S4 wird in jeder Steuerungsverarbeitungsperiode
vom Prozessor 11 des numerischen Steuerungsabschnitts 10 ausgeführt, siehe 3.
Die Bezugszeichen S2–S4
und T2 in 3 stellen die Verarbeitung der
zugehörigen Schritte
im Flussdiagramm in 2 dar.
-
Im
Nachfolge-Verarbeitungsabschnitt 20, siehe 2b und 3,
wird mit der Nachfolge-Verarbeitung begonnen (Schritt T2), wenn
der Nachfolge-Verarbeitungsprozessor 21 einen Startinterrupt der
Steuerungsverarbeitungsperiode empfängt (Schritt T1). In der Nachfolge-Verarbeitung
wird ein Eingangssignal von der externen Eingabe/Ausgabe-Vorrichtung gelesen
und im Signalspeicher 24 abgelegt. Die Nachfolge-Verarbeitung
erfolgt anhand des im RAM 25 gespeicherten Folgeprogramms,
das aus dem ROM 22 gelesen wird, wobei die Signale F', G und weitere Signale
verwendet werden (Schritt T2). Im Einzelnen wird das im Signalspeicher 24 abgelegte
Befehlssignal F' aus
dem nu merischen Steuerungsabschnitt 10 gelesen. Das Signal
wird untersucht und verarbeitet, und ein Befehlssignal G, das durch
die Nachfolge-Verarbeitung gewonnen wird, wird in den Signalspeicher 24 geschrieben.
Die Nachfolge-Verarbeitung umfasst eine Verarbeitung zum Ausgeben
eines im Signalspeicher 24 abgelegten Befehls über die
I/O-Vorrichtung 26 an die externe Eingabe/Ausgabe-Vorrichtung,
und eine Verarbeitung zum Schreiben eines Signals, das in den numerischen
Steuerungsabschnitt 10 eingegeben wird, in den Signalspeicher 24.
Nachfolgend wird die Verarbeitung in den Schritten T1 bis T2 in
jeder Steuerungsverarbeitungsperiode vorgenommen.
-
Bei
numerisch gesteuerten Werkzeugmaschinen ist es allgemein üblich, dass
der Nachfolge-Verarbeitungsabschnitt 20 die Nachfolge-Verarbeitung
mit Hilfe des Befehlssignals F (F') ausführt, das der numerische Steuerungsabschnitt 10 ausgibt. Das
Ergebnis der Nachfolge-Verarbeitung wird zum Steuern der Werkzeugmaschine
als Befehlssignal G (G')
an den numerischen Steuerungsabschnitt 10 ausgegeben. Je
schneller das Übertragen
der Signale vom numerischen Steuerungsabschnitt 10 zum Nachfolge-Verarbeitungsabschnitt 20 und
umgekehrt erfolgt, um so höher
ist die Steuerungsgeschwindigkeit der Werkzeugmaschine.
-
Beim
numerischen Controller, in dem der numerische Steuerungsprozessor 11 und
der Nachfolge-Verarbeitungsprozessor 21 getrennt vorliegen, tritt,
da die beiden Prozessoren gleichzeitig und parallel zueinander arbeiten,
die Schwierigkeit auf, dass das Befehlssignal F vom numerischen
Steuerungsabschnitt 10 zum Nachfolge-Verarbeitungsabschnitt 20 und
das Befehlssignal G vom Nachfolge-Verarbeitungsabschnitt 20 zum
numerischen Steuerungsabschnitt 10 abhängig vom Zeitpunkt der Signalausgabe
verzögert
sind.
-
4 zeigt
eine Verzögerungserscheinung bei
der Verarbeitung. Eine Kopie eines Befehlssignals G1, das im Signalspeicher 24 des
Nachfolge-Verarbeitungsabschnitts 20 gespeichert ist, wird an
das Arbeits-RAM 14 gesendet und als Signal G'1 abgelegt (Schritt
S2). Der numerische Steuerungsprozessor 11 führt eine
numerische Steuerungsverarbeitung aus und erzeugt ein Befehlssignal
F2 für den
Nachfolge-Verarbeitungsabschnitt 20 (Schritt S3). Eine
Kopie des entstehenden Befehlssignals F2 wird an den Nachfolge-Verarbeitungsabschnitt 20 gesendet
und im Signalspeicher 24 als Signal F'2 abgelegt (Schritt S4). Der Nachfolge-Verarbeitungsprozessor 21 verarbeitet
das Signal F'2 mit
dem Folgeprogramm und gewinnt ein Befehlssignal G2 für den numerischen
Steuerungsabschnitt 10 als Ergebnis der Folgeverarbeitung
(Schritt T2). Das Befehlssignal G2 wird vom Nachfolge-Verarbeitungsabschnitt 20 zum
numerischen Steuerungsabschnitt 10 übertragen und im Arbeits-RAM 14 als
Signal G'2 gespeichert
(Schritt S2), und die numerische Steuerungsverarbeitung wird ausgeführt (Schritt
S3).
-
Damit
sind mindestens zwei Steuerungsverarbeitungsperioden erforderlich,
um die Signale vom numerischen Steuerungsabschnitt 10 zum
Nachfolge-Verarbeitungsabschnitt 20 und anschließend vom Nachfolge-Verarbeitungsabschnitt 20 zum
numerischen Steuerungsabschnitt 10 zu übertragen. Dies senkt die Verarbeitungsgeschwindigkeit.
-
In
US-5,621,672 ist ein Kontrollsystem offenbart, das die Operationen
zahlreicher Vorrichtungen zum Positionieren logischer Achsen steuert.
Dabei führt
ein Multitasking-Prozessor
eine parallele Kontrolle der jeweiligen Vorrichtungen aus. Einige
Operationen werden von einem Echtzeit-Prozessor in Echtzeit gesteuert.
-
In
US-4,882,670 ist ein numerisches Kontrollsystem offenbart, in dem
die Verarbeitung verteilt wird, um die Last eines numerischen Steuerungsprozessors
zu senken. Das System umfasst eine numerische Steuerungseinheit,
die aufweist: einen Prozessor, einen programmierbaren Maschinencontroller, der
die Nachfolge-Steuerung ausführt,
einen Maschinen-Schnittstellencontroller und einen Datenaustauschcontroller.
Der Datenaustauschcontroller steuert den Datenaustausch zwischen
den anderen Elementen.
-
US-4,663,750
offenbart einen Folgecontroller, der einen numerischen Steuerungsprozessor
und einen Folgesteuerungsprozessor enthält, wobei der Folgesteuerungsprozessor
vorbestimmte Folgeverarbeitungen gemäß den Daten ausführen kann,
die der numerische Steuerungsprozessor periodisch zusammen mit einem
Interruptsignal jedesmal dann überträgt, wenn
die Datenübertragung
abgeschlossen ist.
-
Eine
Aufgabe der Erfindung besteht darin, einen numerischen Controller
bereitzustellen, der eine Hochgeschwindigkeitsverarbeitung ausführen kann.
-
Ein
Controller der Erfindung steuert eine Maschine dadurch, dass ein
erster Prozessor eine numerische Steuerungsverarbeitung ausführt und
ein zweiter Prozessor eine Nachfolge-Verarbeitung, wobei der Controller
umfasst: eine Meldevorrichtung, die eine Anfangszeit, zu der der
erste Prozessor mit der numerischen Steuerungsverarbeitung beginnt, an
den zweiten Prozessor meldet, und eine Festlegungsvorrichtung, die
einen Zeitpunkt festlegt, zu dem der zweite Prozessor mit der Nachfolge-Verarbeitung
beginnt, und zwar abhängig
von der Anfangszeit, die die Meldevorrichtung meldet, wobei die
Festlegungsvorrichtung einen Zeitverzögerungsparameter enthält, der
eine Verzögerungszeit
festlegt, und den Zeitpunkt für
den Beginn der Ausführung
der Nachfolge-Verarbeitung durch eine Berechnung anhand der Anfangszeit
der numerischen Steuerungsverarbeitung festlegt und dabei die Verzögerungszeit verwendet,
die der Zeitverzögerungsparameter
angibt.
-
Der
erste Prozessor kann die numerische Steuerungsverarbeitung in jeder
Steuerungsverarbeitungsperiode ausführen, und die Festlegungsvorrichtung
kann die Anfangszeit der Nachfolge-Verarbeitung innerhalb der gleichen
Steuerungsverarbeitungsperiode festlegen, in der die Ausführung der
numerischen Steuerungsverarbeitung abgeschlossen wird.
-
Die
Meldevorrichtung kann eine Interrupterzeugungsvorrichtung umfassen,
die einen externen Interrupt vom ersten Prozessor für den zweiten
Prozessor erzeugt, damit dem zweiten Prozessor die Anfangszeit der
numerischen Steuerungsverarbeitung gemeldet wird. Wahlweise kann
die Meldevorrichtung einen gemeinsamen Speicher enthalten, auf den
sowohl der erste Prozessor als auch der zweite Prozessor zugreifen
können,
und die Anfangszeit der numerischen Steuerungsverarbeitung wird
dadurch gemeldet, dass der erste Prozessor ein Flag im gemeinsamen
Speicher setzt und der zweite Prozessor das Flag im gemeinsamen
Speicher überwacht.
-
Es
zeigt:
-
1 ein
Blockdiagramm eines herkömmlichen
numerischen Controllers, der einen Prozessor für die numerische Steuerungsverarbeitung
und einen Prozessor für
die Folgeverarbeitung aufweist;
-
2a und 2b Flussdiagramme
der Verarbeitung, die der Prozessor für die numerische Steuerungsverarbeitung
bzw. der Prozessor für
die Nachfolge-Verarbeitung im herkömmlichen numerischen Controller
ausführen;
-
3 eine
zeitabhängige
Darstellung der Verarbeitung im herkömmlichen numerischen Controller;
-
4 eine
zeitabhängige
Darstellung der Verzögerung
der Verarbeitung im herkömmlichen
numerischen Controller;
-
5 ein
Blockdiagramm eines numerischen Controllers gemäß einer ersten Ausführungsform
der Erfindung;
-
6a und 6b Flussdiagramme
der Verarbeitung, die der Prozessor für den numerischen Steuerungsabschnitt
bzw. der Prozessor für
den Nachfolge-Verarbeitungsabschnitt im numerischen Controller der
ersten Ausführungsform
ausführen muss;
-
7 eine
zeitabhängige
Darstellung der Verarbeitung im numerischen Controller der ersten Ausführungsform;
-
8 ein
Blockdiagramm eines numerischen Controllers gemäß einer zweiten Ausführungsform
der Erfindung;
-
9a und 9b Flussdiagramme
der Verarbeitung, die der Prozessor für den numerischen Steuerungsabschnitt
bzw. der Prozessor für
den Nachfolge-Verarbeitungsabschnitt im numerischen Controller der
zweien Ausführungsform
ausführen muss;
-
10 eine
zeitabhängige
Darstellung der Verarbeitung im numerischen Controller der zweiten Ausführungsform;
-
11 ein
Blockdiagramm eines anderen vorgeschlagenen numerischen Controllers;
-
12a und 12b Flussdiagramme
der Verarbeitung, die der Prozessor für den numerischen Steuerungsabschnitt
bzw. der Prozessor für
den Nachfolge-Verarbeitungsabschnitt im numerischen Controller in 11 ausführen muss;
-
13 eine
zeitabhängige
Darstellung der Verarbeitung im numerischen Controller in 11;
-
14 ein
Blockdiagramm eines weiteren vorgeschlagenen numerischen Controllers;
-
15a und 15b Flussdiagramme
der Verarbeitung, die der Prozessor für den numerischen Steuerungsabschnitt
bzw. der Prozessor für
den Nachfolge-Verarbeitungsabschnitt im numerischen Controller in 14 ausführen muss;
und
-
16 eine
zeitabhängige
Darstellung der Verarbeitung im numerischen Controller in 14.
-
5 zeigt
eine Skizze der Hardwareanordnung eines numerischen Controllers
gemäß einer ersten
Ausführungsform
der Erfindung. Der in 5 dargestellte numerische Controller
unterscheidet sich vom herkömmlichen
numerischen Controller in 1 dadurch,
dass ein externer Interrupterzeuger 27 bereitgestellt ist,
der an den Bus 30 im Nachfolge-Verarbeitungsabschnitt 20 angeschlossen
wird, und dadurch, dass ein Zeitverzögerungsparameter zum Einstellen
der Verzögerungszeit
im Arbeits-RAM 23 des Nachfolge-Verarbeitungsabschnitts 20 bereitgestellt
ist. Diejenigen Elemente, die gleiche oder äquivalente Funktionen haben
wie die Elemente im numerischen Controller in 1,
sind mit den gleichen Bezugszeichen bezeichnet.
-
Der
numerische Controller weist einen numerischen Steuerungsabschnitt 10 und
einen Nachfolge-Verarbeitungsabschnitt 20 auf, die über den Bus 30 miteinander
verbunden sind. Der numerische Steuerungsabschnitt 10 umfasst:
einen Prozessor 11 für
die numerische Steuerungsverarbeitung, ein ROM 12, in dem
ein Steuerungsprogramm gespeichert ist, beispielsweise ein Systemprogramm,
und ein RAM 13, das zum Speichern der Systemprogramme usw.
dient, die im ROM 12 abgelegt sind, und zum Ausführen des
gespeicherten Programms. Das RAM 13 weist einen nichtflüchtigen
Abschnitt auf, in dem Bearbeitungsprogramme und Einstellwerte für verschiedene
Parameter abgelegt sind. Der numerische Steuerungsabschnitt 10 ist
mit einem Arbeits-RAM 14 versehen, das den verschiedenen arithmetischen
Operationen dient, und einem Speicherbereich zum Speichern von Befehlssignalen F
aus dem numerischen Steuerungsabschnitt 10 für den Nachfolge-Verarbeitungsabschnitt 20,
und von Signalen G',
die Kopien der Befehlssignale G aus dem Nachfolge-Verarbeitungsabschnitt 20 für den numerischen
Steuerungsabschnitt 10 sind.
-
Der
Nachfolge-Verarbeitungsabschnitt 20 umfasst: einen Nachfolge-Verarbeitungsprozessor 21,
ein ROM 22, in dem ein Steuerungsprogramm für die Nachfolge- Steuerung und Folgeprogramme
gespeichert sind, ein Arbeits-RAM zum Gebrauch bei verschiedenen
arithmetischen Operationen, einen Signalspeicher, der beim Übertragen
bzw. Empfangen von Signalen zum bzw. vom numerischen Steuerungsabschnitt 10 verwendet
wird, ein RAM 25 zum Speichern der aus dem ROM 22 gelesenen
Steuerungssoftware und der Folgeprogramme beim Ausführen dieser
Software und der Programme, eine I/O-Vorrichtung 26, die
mit einer externen Eingabe/Ausgabe-Vorrichtung zu verbinden ist,
und zudem einen externen Interrupterzeuger 27 und einen
Zeitgeber 28. Der Bus 30 verbindet alle diese
Teile.
-
Die
Arbeitsweise des numerischen Controllers in 5 wird nun
mit Hilfe der Flussdiagramme in 6a und 6b und
der Zeitverlaufsdarstellung in 7 beschrieben. 6a zeigt
die Verarbeitung, die der Prozessor 11 des numerischen
Steuerungsabschnitts 10 auszuführen hat. 6b zeigt
die Verarbeitung, die der Prozessor 21 des Nachfolge-Verarbeitungsabschnitts 20 auszuführen hat.
-
Eine
Zeitspanne vom Beginn bis zum Ende einer numerischen Steuerungsverarbeitung
durch den numerischen Steuerungsabschnitt 10 wird als Zeitverzögerungsparameter
im Arbeits-RAM 23 des Nachfolge-Verarbeitungsabschnitts 20 über eine
Dateneingabevorrichtung (nicht dargestellt) vor der folgenden Verarbeitung
vorab eingestellt.
-
Der
Prozessor 11 des numerischen Steuerungsabschnitts 10 beginnt
mit der numerischen Steuerungsverarbeitung nach dem Empfang eines Interrupts,
mit dem die Steuerungsverarbeitungsperiode anfängt (Schritt S11). Zuerst schreibt
der Prozessor 11 ein Interruptsignal in ein Register im
externen Interrupterzeuger 27 des Nachfolge-Verarbeitungsabschnitts 20 (Schritt
S12). Eine Kopie eines Befehlssignals G für den numerischen Steuerungsabschnitt 10,
die im Signalspeicher 24 des Nachfolge-Verarbeitungsabschnitts 20 abgelegt
ist, wird zum numerischen Steuerungsabschnitt 10 übertragen
und als Signal G' im
Arbeits-RAM 14 gespeichert (Schritt S13). Die numerische
Verarbeitung erfolgt anhand des Bearbeitungsprogramms, das im RAM 13 gespeichert ist,
und es werden die im Arbeits-RAM 14 abgelegten Signale
F und G' dazu verwendet,
ein neues Befehlssignal F für
den Nachfolge-Verarbeitungsabschnitt 20 zu gewinnen (Schritt
S14).
-
Nun
wird eine Kopie des Befehlssignals F, das das Ergebnis der numerischen
Steuerungsverarbeitung darstellt, zum Nachfolge-Verarbeitungsabschnitt 20 übertragen
und als Signal F' im
Signalspeicher 24 (Schritt S15) gespeichert. Die Prozedur
des Prozessors 11 des numerischen Steuerungsabschnitts 10 in
einer Steuerungs-Verarbeitungsperiode ist damit beendet. Die Abarbeitung
in den Schritten S11–S15
wird in jeder Steuerungsverarbeitungsperiode wiederholt.
-
Im
Nachfolge-Verarbeitungsabschnitt 20 beginnt der Nachfolge-Verarbeitungsprozessor 21 mit der
Nachfolge-Verarbeitung nach dem Erhalt des externen Interrupts,
den der numerische Steuerungsabschnitt 10 ausgibt (Schritt
T11). Die im Ar beits-RAM 23 als Zeitverzögerungsparameter
abgelegte Zeitperiode wird im Zeitgeber 28 eingestellt,
und das Zählen der
eingestellten Zeitperiode beginnt (Schritt T12). Die Prozedur wartet,
bis der Zeitgeber 28 bis zur eingestellten Zeit gezählt hat
(Schritt T13). Hat der Zeitgeber 28 bis zur eingestellten
Zeit gezählt,
so wird ein Eingabe/Ausgabe-Signal von der externen Eingabe/Ausgabe-Vorrichtung über die
I/O-Vorrichtung 26 gelesen und im Signalspeicher 24 hinterlegt.
Das aus dem ROM 22 gelesene und im RAM 25 gespeicherte Folgeprogramm
wird ausgeführt,
wobei die Signale F',
G und die weiteren Signale verwendet werden, die im Signalspeicher 24 abgelegt
sind (Schritt T14). Im Einzelnen wird das im Signalspeicher 24 abgelegte Befehlssignal
F', das von dem
numerischen Steuerungsabschnitt 10 übertragen worden ist, gelesen. Das
Signal F' wird untersucht
und verarbeitet, damit man ein Befehlssignal G für den numerischen Steuerungsabschnitt 10 erhält. Das
erhaltene Signal G wird in den Signalspeicher 24 geschrieben.
Ein im Signalspeicher 24 abgelegter Befehl für die externe
Eingabe/Ausgabe-Vorrichtung wird an die externe Eingabe/Ausgabe-Vorrichtung
ausgegeben, und Signale von der externen Eingabe/Ausgabe-Vorrichtung
werden in den Signalspeicher 24 geschrieben. Nachfolgend
wiederholt der Prozessor 21 des Nachfolge-Verarbeitungsabschnitts 20 die
beschriebene Verarbeitung jedesmal, wenn ein Interruptsignal empfangen
wird, das der numerische Steuerungsabschnitt 10 in jeder
Steuerungsverarbeitungsperiode ausgibt.
-
7 zeigt
die zeitlichen Abläufe
bei Betrieb der ersten Ausführungsform
der Erfindung. Die Bezugszeichen S12, S14, T12 usw. in 7 entsprechen
den Schritten in den Flussdiagrammen in 6a und 6b.
-
Im
in 7 dargestellten Beispiel ist ein Signal F1 bereits
im Arbeits-RAM 14 des numerischen Steuerungsabschnitts 10 gespeichert.
Ein Signal G1 ist bereits im Signalspeicher 24 des Nachfolge-Verarbeitungsabschnitts 20 gespeichert.
Beginnt der Prozessor 11 des numerischen Steuerungsabschnitts 10 mit
der numerischen Steuerungsverarbeitung, so wird ein Interruptbefehl
für den
Nachfolge-Verarbeitungsabschnitt 20 ausgegeben (Schritt
S12). Eine Kopie des Befehlssignals G1, das im Signalspeicher 24 des
Nachfolge-Verarbeitungsabschnitts 20 hinterlegt ist, wird
an den numerischen Steuerungsabschnitt 10 übertragen
und im Arbeits-RAM 14 als Signal G'1 gespeichert (Schritt S13). Die numerische Verarbeitung
erfolgt anhand des Bearbeitungsprogramms und mit Hilfe der im Arbeits-RAM 14 gespeicherten
Signale G'1 und
F1 (Schritt S14). Eine Kopie F'2
eines Befehlssignals F2, das das Ergebnis der numerischen Steuerungsverarbeitung
darstellt, wird zum Nachfolge-Verarbeitungsabschnitt 20 übertragen
und in das Arbeits-RAM 14 geschrieben.
Das Signal F2 wird als Signal F'2
in den Signalspeicher 24 des Nachfolge-Verarbeitungsabschnitts 20 kopiert (Schritt
S15).
-
Der
Prozessor 21 des Nachfolge-Verarbeitungsabschnitts 20 liest
das im Signalspeicher 24 abgelegte Signal nach dem Empfang
des Interruptsignals aus dem numeri schen Steuerungsabschnitt 10 und
dem Ablauf der eingestellten Zeitperiode, die als Zeitverzögerungsparameter
gesetzt ist. Die Nachfolge-Verarbeitung erfolgt anhand des Folgeprogramms und
mit Hilfe des gelesenen Signals (Schritt T12). Da die Zeitperiode,
die als Zeitverzögerungsparameter gesetzt
ist, länger
eingestellt ist als die Zeitperiode vom Erhalt des Interruptsignals
aus dem numerischen Steuerungsabschnitt 10 bis zum Zeitpunkt,
zu dem das Befehlssignal F2 in das Befehlssignal F2 des Nachfolge-Verarbeitungsabschnitts 20 kopiert wird,
erfolgt die Nachfolge-Verarbeitung abhängig vom Signal G1 und vom
Signal F'2, das
eine Kopie des Befehlssignals F2 ist. Das Ergebnis der Nachfolge-Verarbeitung
wird als Befehlssignal G2 in den Signalspeicher 24 des
numerischen Steuerungsabschnitts 10 geschrieben (Schritt
T14).
-
In
der folgenden Steuerungsverarbeitungsperiode kopiert der Prozessor 11 des
numerischen Steuerungsabschnitts 10 das Befehlssignal G2
aus dem Nachfolge-Verarbeitungsabschnitt 20 als Signal G'2 in das Interruptverarbeitungs-RAM 14.
Die numerische Steuerung wird abhängig von den Signalen F2 und
G'2, die im Arbeits-RAM 14 hinterlegt
sind, und vom Bearbeitungsprogramm ausgeführt (Schritt S14), damit man
das Befehlssignal F3 für
den Nachfolge-Verarbeitungsabschnitt 20 erhält.
-
Später werden
die numerische Steuerungsverarbeitung und die Nachfolge-Verarbeitung
in jeder Steuerungsverarbeitungsperiode ausgeführt. Die Nachfolge-Verarbeitung
erfolgt mit Hilfe des Befehls (F) aus dem numerischen Steuerungsabschnitt 10 durch
den Nachfolge-Verarbeitungsabschnitt 20. Ein Befehl (G)
für den
numerischen Steuerungsabschnitt 10 wird an den numerischen
Steuerungsabschnitt 10 zurückgesendet, damit die gesamte
Verarbeitung innerhalb einer Steuerungsverarbeitungsperiode abgeschlossen
ist, siehe 7. Damit wird die Verarbeitung
doppelt so schnell vorgenommen wie die Verarbeitung im herkömmlichen
numerischen Controller, siehe 1 bis 4.
-
In
der obigen Ausführungsform
ist beschrieben, dass eine Nachfolge-Verarbeitung innerhalb der Steuerungsverarbeitungsperiode
abgeschlossen wird, in der die Nachfolge-Verarbeitung beginnt. Wird die Nachfolge-Verarbeitung
innerhalb der gleichen Steuerungsverarbeitungsperiode nicht vollendet,
so wird das Befehlssignal G, das beim Abschluss der Nachfolge-Verarbeitung
erhalten wird, nicht erzeugt. Die Nachfolge-Verarbeitung wird damit
in der folgenden Steuerungsverarbeitungsperiode fortgesetzt. Die Nachfolge-Verarbeitung
des Befehlssignals F, das durch die numerische Steuerungsverarbeitung
in der Steuerungsverarbeitungsperiode erhalten wird, beginnt jedoch
in der gleichen Steuerungsverarbeitungsperiode, wodurch die Verarbeitung
schneller erfolgt. Im Allgemeinen ist es wahrscheinlich, dass die Nachfolge-Verarbeitung
innerhalb der Steuerungsverarbeitungsperiode abgeschlossen wird,
in der diese Nachfolge-Verarbeitung in der Verarbeitungsreihe beginnt,
so dass man insgesamt eine sehr schnelle Verarbeitung erhält.
-
8 zeigt
einen numerischen Controller gemäß einer
zweiten Ausführungsform
der Erfindung. Der in 8 dargestellte numerische Controller
unterscheidet sich vom numerischen Controller der ersten Ausführungsform
in 5 dadurch, dass ein gemeinsamer Speicher 29,
auf den der Prozessor 11 des numerischen Steuerungsabschnitts 10 und der
Prozessor 21 des Nachfolge-Verarbeitungsabschnitts 20 zugreifen
können,
im Nachfolge-Verarbeitungsabschnitt 20 anstelle des externen
Interrupterzeugers 27 in der ersten Ausführungsform
bereitgestellt ist. Ein im gemeinsamen Speicher 29 bereitgestelltes
Flag wird anstelle des Interrupt-Befehls in der ersten Ausführungsform
verwendet. Der externe Interrupterzeuger 27 stellt ein
Mittel dar, mit dem die Zeitinformation über die numerische Steuerungsverarbeitung
im Prozessor 11 für
die numerische Steuerungsverarbeitung im Nachfolge-Verarbeitungsprozessor 21 übermittelt
wird. Der Zeitgeber 28 und der Zeitverzögerungsparameter stellen Mittel
dar, mit denen der Anfangszeitpunkt der Ausführung der Nachfolge-Verarbeitung
in der ersten Ausführungsform festgelegt
werden. In der zweiten Ausführungsform dient
das Flag im gemeinsamen Speicher 29 dazu, die Zeitinformation über die
numerische Steuerungsverarbeitung im Prozessor 11 für die numerische Steuerungsverarbeitung
an den Nachfolge-Verarbeitungsprozessor 21 zu übermitteln.
Der Zeitgeber 28 und der Zeitverzögerungsparameter stellen Mittel dar,
mit denen der Anfangszeitpunkt der Ausführung der Nachfolge-Verarbeitung
festgelegt wird.
-
9a und 9b zeigen
Flussdiagramme, die der numerische Controller gemäß der zweiten Ausführungsform
abarbeitet. 10 zeigt eine zeitabhängige Darstellung
der Arbeitsweise des numerischen Controllers.
-
Der
Prozessor 11 des numerischen Steuerungsabschnitts 10 beginnt
mit der numerischen Steuerungsverarbeitung nach dem Erhalt eines
Interrupts für
den Beginn der Steuerungsverarbeitungsperiode (Schritt S21). Zuerst
setzt der Prozessor 11 das Flag im gemeinsamen Speicher 29 (Schritt
S22) und führt
die gleiche Verarbeitung aus wie in der ersten Ausführungsform.
Im Einzelnen wird eine Kopie G' des
Befehlssignals G, das im Signalspeicher 24 abgelegt ist, übertragen
und im Arbeits-RAM 14 des numerischen Steuerungsabschnitts 10 gespeichert (Schritt
S23). Die numerische Steuerungsverarbeitung erfolgt anhand des Bearbeitungsprogramms
mit Hilfe der Signale F und G',
die im Arbeits-RAM 14 gespeichert sind (Schritt S24). Eine
Kopie F' des entstehenden
neuen Befehlssignals F wird an den Nachfolge-Verarbeitungsabschnitt 20 übertragen
und im Signalspeicher 24 hinterlegt (Schritt S25), damit
die Verarbeitung in der momentanen Verarbeitungsperiode abgeschlossen
ist. Der Prozessor 11 des numerischen Steuerungsabschnitts 10 führt die
beschriebene Verarbeitung in jeder Steuerungsverarbeitungsperiode
erneut aus.
-
Der
Prozessor 21 des Nachfolge-Verarbeitungsabschnitts 20 überwacht
das Flag im gemeinsamen Speicher 29 (Schritt T21). Stellt
er fest, dass das Flag gesetzt ist, so setzt der Prozessor 21 das
Flag zurück
(Schritt T22) und führt
eine Verarbeitung aus, die der Verarbeitung in den Schritten T12–T14 in
der ersten Ausführungsform
entspricht. Die als Zeitverzögerungsparameter
festgesetzte Zeitperiode wird im Zeitgeber 28 eingestellt,
und das Zählen
der eingestellten Zeitperiode durch den Zeitgeber 28 beginnt
(Schritt T23). Die Prozedur wartet, bis der Zeitgeber 28 bis
zur eingestellten Zeit gezählt
hat (Schritt T24). Ist bis zur eingestellten Zeit gezählt, so
erfolgt die Nachfolge-Verarbeitung, die in der ersten Ausführungsform
beschrieben ist (Schritt T25). Die angegebene Verarbeitung wird
in jeder Steuerungsverarbeitungsperiode wiederholt vorgenommen.
-
In
dieser zweiten Ausführungsform
wird die Nachfolge-Verarbeitung hinsichtlich des Befehlssignals
aus dem numerischen Steuerungsabschnitt 10 durchgeführt, damit
man ein Ergebnissignal innerhalb einer Steuerungsverarbeitungsperiode
erhält. Die
numerische Steuerungsverarbeitung, die das neue Befehlssignal aus
dem Nachfolge-Verarbeitungsabschnitt verwendet, beginnt in der nächsten Steuerungsverarbeitungsperiode,
damit die Verarbeitungsgeschwindigkeit höher wird.
-
11 zeigt
ein Blockdiagramm des numerischen Controllers gemäß einem
anderen Vorschlag. Der numerische Controller in 11 unterscheidet sich
vom numerischen Controller der ersten Ausführungsform der Erfindung in 5 dadurch,
dass der Zeitgeber 28 und der Zeitverzögerungsparameter im Arbeits-RAM 23 in
der ersten Ausführungsform
nicht bereitgestellt sind. Gemäß diesem
Vorschlag bildet der externe Interrupterzeuger 27 das Mittel
zum Bestimmen des Zeitpunkts des Arbeitsbeginns der Nachfolge-Verarbeitung.
-
Die
Verarbeitungsabläufe
durch den Prozessor 11 des numerischen Steuerungsabschnitts 10 und
den Prozessor 21 des Nachfolge-Verarbeitungsabschnitts 20 des
numerischen Controllers in 11 sind
in 12a bzw. 12b dargestellt.
Eine zeitabhängige
Darstellung der Betriebsabläufe
im numerischen Controller ist in 10 dargestellt.
-
Der
Prozessor 11 des numerischen Steuerungsabschnitts 10 führt nach
dem Empfang eines Startinterrupts der Steuerungsverarbeitungsperiode die
gleiche Verarbeitung aus wie in den Schritten S13–S15 in
der ersten Ausführungsform
(Schritt S31). Im Einzelnen wird das im Signalspeicher 24 des
Nachfolge-Verarbeitungsabschnitts 20 gespeicherte Befehlssignal
G als Befehl G' in
das Arbeits-RAM 14 des numerischen Steuerungsabschnitts 10 kopiert
(Schritt S32). Die numerische Steuerungsverarbeitung erfolgt anhand
des im RAM 13 abgelegten Bearbeitungsprogramms und mit
Hilfe der Signale F und G',
die im Arbeits-RAM 14 gespeichert sind (Schritt S33). Das
durch die numerische Steuerungsverarbeitung erhaltene Befehlssignal
F wird als Signal F' in
den Signalspeicher 24 des Nachfolge-Verarbeitungsabschnitts 20 kopiert
(Schritt S34).
-
Gemäß diesem
Vorschlag wird ein externes Interruptsignal an den Nachfolge-Verarbeitungsabschnitt 20 ausgegeben,
und die Verarbeitung der aktuellen Steuerungsverar beitungsperiode
wird abgeschlossen (Schritt S35). Die Verarbeitung der Schritte
S31–S35
wird in jeder Steuerungsverarbeitungsperiode erneut ausgeführt.
-
Im
Nachfolge-Verarbeitungsabschnitt 20 führt der Nachfolge-Verarbeitungsprozessor 21 die Nachfolge-Verarbeitung
abhängig
von den Signalen G und F' und
den Eingangssignalen der externen Eingabe/Ausgabe-Vorrichtung aus,
die im Signalspeicher 24 abgelegt sind, und zwar genau
so wie im Schritt T14 der ersten Ausführungsform (Schritt T32). Die
beschriebene Verarbeitung der Schritte T31 und T32 wird wiederholt
ausgeführt.
-
Gemäß diesem
Vorschlag wird mit der Nachfolge-Verarbeitung begonnen, nachdem
das Befehlssignal F, das das Ergebnis der numerischen Steuerungsverarbeitung
durch den numerischen Steuerungsabschnitt 10 im gleichen
Steuerungsverarbeitungsabschnitt darstellt, für den Nachfolge-Verarbeitungsabschnitt 20 in
den Signalspeicher 24 des Nachfolge-Verarbeitungsabschnitts 20 kopiert
ist. Die Verarbeitung wird wahrscheinlich innerhalb der Steuerungsverarbeitungsperiode
abgeschlossen, damit man ein Ergebnis der Nachfolge-Verarbeitung
mit Hilfe des Befehlssignals aus dem numerischen Steuerungsabschnitt 10 innerhalb
der Steuerungsverarbeitungsperiode erhält. Damit wird in der nächsten Steuerungsverarbeitungsperiode
die numerische Steuerung ausgehend vom neuen Befehlssignal aus dem
Abschnitt für
die Nachfolge-Steuerung vorgenommen, um eine hohe Verarbeitungsgeschwindigkeit
zu erzielen.
-
14 zeigt
ein Blockdiagramm eines numerischen Controllers gemäß einem
weiteren Vorschlag. Der in 14 dargestellte
numerische Controller unterscheidet sich vom numerischen Controller gemäß dem obigen
Vorschlag in 11 dadurch, dass ein gemeinsamer
Speicher 29 anstelle des externen Interrupterzeugers 27 bereitgestellt
ist, und dadurch, dass ein Flag, auf das der Prozessor 11 des numerischen
Steuerungsabschnitts 10 und der Prozessor 21 des
Nachfolge-Verarbeitungsabschnitts 20 zugreifen können, im
gemeinsamen Speicher 29 bereitgestellt ist. Das Flag im
gemeinsamen Speicher 29 bildet ein Mittel zum Bestimmen
des Zeitpunkts, zu dem die Ausführung
der Nachfolge-Verarbeitung beginnt.
-
Die
Verarbeitung des numerischen Controllers in 14, die
der Prozessor 11 des numerischen Steuerungsabschnitts 10 ausführen muss,
und die Verarbeitung, die der Prozessor 21 des Nachfolge-Verarbeitungsabschnitts 20 ausführen muss,
sind in 15a bzw. 15b dargestellt.
-
Die
Verarbeitung in den Schritten S41–S44 gleicht der Verarbeitung
in den Schritten S31–S34
im vorhergehenden Vorschlag in 12.
Gemäß diesem
Vorschlag wird die Verarbeitung zum Setzen des Flags im gemeinsamen
Speicher 29 im Schritt S45 an die Stelle der Verarbeitung
zum Erzeugen eines externen Interruptsignals im Schritt 35 im vorhergehenden
Vorschlag gesetzt.
-
Der
Prozessor 21 des Nachfolge-Verarbeitungsabschnitts 20 überwacht
das Flag im gemeinsamen Speicher 29 (Schritt T41). Stellt
er fest, dass das Flag gesetzt ist, so setzt der Prozessor 21 das
Flag zurück
(Schritt T42) und führt
die Nachfolge-Verarbeitung genau so wie oben beschrieben aus. Die
Prozessoren 11 und 21 nehmen die beschriebenen
Verarbeitung in jeder Steuerungsverarbeitungsperiode vor.
-
16 zeigt
eine zeitabhängige
Darstellung des numerischen Controllers in 14. Da
die Nachfolge-Verarbeitung, siehe 16, mit
Hilfe des Befehls F, der durch die numerische Steuerungsverarbeitung
in der Steuerungsverarbeitungsperiode gewonnen wird, durch den Prozessor 21 des
Nachfolge-Verarbeitungsabschnitts 20 in der gleichen Steuerungsverarbeitungsperiode
begonnen und wahrscheinlich in der gleichen Steuerungsverarbeitungsperiode
abgeschlossen wird, wird das entstehende Befehlssignal G in der
nächsten
Steuerungsverarbeitungsperiode in das Arbeits-RAM 14 des
numerischen Steuerungsabschnitts 10 kopiert, damit es der numerische
Steuerungsabschnitt 10 ausführt, und damit die numerische
Steuerungsverarbeitung und die Nachfolge-Steuerungsverarbeitung innerhalb der gleichen
Steuerungsverarbeitungsperiode abgeschlossen werden und man eine
sehr schnelle Verarbeitung im numerischen Controller erhält.
-
Gemäß der Erfindung
wird, wie dies anhand der Ausführungsformen
in 1 bis 10 beschrieben ist, die Nachfolge-Verarbeitung
abhängig von
einem Befehlssignal aus dem numerischen Steuerungsabschnitt früher begonnen
als beim herkömmlichen
numerischen Controller, damit die Verarbeitungsgeschwindigkeit steigt.
Es ist äußerst wahrscheinlich,
dass die Nachfolge-Verarbeitung innerhalb einer Steuerungsverarbeitungsperiode
der numerischen Steuerungsverarbeitung abgeschlossen ist. Dadurch
ist die Verarbeitungsgeschwindigkeit des numerischen Controllers
verglichen mit dem herkömmlichen
numerischen Controller schneller.