-
Die
vorliegende Erfindung bezieht sich auf das Korrigieren eines Bewegungsbefehls
zum Verringern der Differenz zwischen einer befohlenen Position
und einer tatsächlichen
Position, die eintritt, wenn eine Umkehrung des Bewegungsbefehls
in einem Servosteuersystem zur Steuerung einer Werkzeugmaschine
erfolgt. Insbesondere bezieht sich die vorliegende Erfindung auf
eine Bewegungsbefehls-Korrektur, die für eine wiederholte Bearbeitung
unter einer gleichen Bedingung geeignet ist.
-
Im
Falle der wiederholten Bearbeitung unter der gleichen Bedingung
ist bereits eine Einlern-Steuerung (wiederholte Steuerung), die
wirksam beim Realisieren einer hochgenauen Bearbeitung durch Benutzung
eines wiederholten Bearbeitungsbefehls ist, aus Japanischen Patent-Druckschriften
bekannt geworden, wie z. B. in den Japanischen Patent-Offenlegungsschriften
Nr. Hei 4-323705 u. Hei 6-309021 offenbart.
-
2 zeigt
ein Servoregelsystem für
ein Verfahren mit einer halbgeschlossenen Schleife, das eine Einlern-Regelung
durchführt.
Dieses Servoregelsystem ermittelt eine Positionsabweichung durch Subtrahieren
eines Betrags eines Positions-Rückkopplungsignals
Pf, das von einem Positions/Geschwindigkeits-Detektor 6 ausgegeben
ist, der auf einem Servomotor 5 montiert ist, von einem
Bewegungsbefehl Pc, der von einer numerischen Steuereinrichtung 1 ausgegeben
ist, addiert einen Betrag einer Korrektur, der durch eine Einlern-Regeleinrichtung 2 ermittelt
ist, zu der Positionsabweichung und gibt die Summe in eine Positions/Geschwindigkeits/Strom-Regeleinrichtung 3 ein.
-
Die
Positions/Geschwindigkeits/Strom-Regeleinrichtung 3 er mittelt
einen Geschwindigkeitsbefehl durch Multiplizieren der Summe von
Positionsabweichungen und des Betrags einer Korrektur mit einem
Positions-Übertragungsfaktor,
ermittelt eine Geschwindigkeitsabweichung durch Subtrahieren eines Geschwindigkeits-Rückkopplungswerts,
der durch den Positions/Geschwindigkeits-Detektor 6 erfasst und
rückgekoppelt
ist, von dem Geschwindigkeitsbefehl, ermittelt einen Drehmomentbefehl
(einen Strombefehl) durch eine Proportional-Integralregelung oder dgl., führt ferner
eine Strom-Rückkopplungsregelung auf
der Grundlage eines Stromwertsignals durch, das von einem Strom-Detektor
rückgekoppelt
ist, der in einem Servoverstärker 4 vorgesehen
ist, und führt dem
Servomotor 5 über
den Servoverstärker 4,
der aus einem Transistor-Wechselrichter oder dgl. zusammengesetzt
ist, Strom zu, um den Servomotor 5 zu treiben.
-
Der
Servomotor 5 wandelt mit einem Kugelumlaufspindel/Kugelmutter-Mechanismus 7 eine Drehbewegung
in eine Linearbewegung um, um einen Tisch, auf dem ein Werkstück montiert
ist, oder ein Werkzeug anzutreiben. 2 zeigt
ein Beispiel für
das Antreiben eines Werkzeugs 8 mit dem Kugelumlaufspindel/Kugelmutter-Mechanismus 7.
-
Die
Einlern-Regeleinrichtung 2 ist aus einem Verzögerungselement-Speicher,
der mit Daten für
einen Zyklusteil (d. h. für
einen n-Abtastungs-Zyklusteil) eines Bewegungsbefehls Pc geladen
ist, der wiederholt in einem vorbestimmte Zyklus gemäß einem gleichen
Muster ausgegeben wird, und einem Kompensationselement mit dynamischer
Charakteristik zusammengesetzt. Dann werden die Daten, die sich aus
einem Addieren der Daten, die in dem Verzögerungselement-Speicher gespeichert
sind, d. h. Daten, die einem gegenwärtigen Zyklus um einen Zyklus
vorhergehen, zu der Positionsabweichung ergeben, in dem Verzögerungselement-Speicher
gespeichert, nachdem sie einer Filterverarbeitung unterzogen worden
sind. Ferner werden die Daten, die dem gegenwärtigen Zyklus um einen Zyklus
vorhergehen, als ein Betrag der Korrektur von der Einlern-Regeleinrichtung 2 durch
den Verzögerungselement-Speicher
ausgegeben, nachdem sie bezüglich
einer Phasenverzögerung
eines Regelobjekts und einer Verringerung eines Übertragungsfaktors durch das
Kompensationselement mit dynamischer Charakteristik kompensiert
worden sind. Dieser Betrag der Korrektur wird zu der Positionsabweichung
addiert, um die Positionsabweichung zu korrigieren, und die korrigierte
Positionsabweichung wird zu einer Geschwindigkeits-Regelschleife übertragen.
-
Im
Falle der Anwendung der Einlern-Regelung auf das Servoregelsystem,
das in dem Modus mit der halbgeschlossenen Schleife arbeitet, wie
dies zuvor beschrieben wurde, wird eine Drehposition des Servomotors 5 durch
die Einlern-Regelung korrigiert, um auf diese Weise den Bewegungsbefehl
Pc genauer zu befolgen, der von der numerischen Steuereinrichtung 1 ausgegeben
ist, so dass der Servomotor 5 genau in Übereinstimmung mit der Bewegungsposition
getrieben werden kann.
-
In
dem Kugelumlaufspindel/Kugelmutter-Mechanismus 7 tritt
jedoch ein Totgang oder ein Spiel auf, und wenn dem so ist, wird
ein Vorzeichen des Bewegungsbefehls umgekehrt, d. h. es wird die Drehrichtung
des Servomotors 5 umgekehrt oder der Tisch oder das Werkzeug 8,
der/das sich linear durch den Kugelumlaufspindel/Kugelmutter-Mechanismus 7 bewegt,
stoppt für
eine Dauer, die dem Totgang entspricht, so dass er/es nicht dem
Bewegungsbefehl Pc folgt. Eine Befolgungsverzögerung, die durch einen Totgang
verursacht wird, kann durch die Einlern-Regelung nicht kompensiert
werden.
-
Ein
solcher Totgang ist bisher nach einem Verfahren korrigiert worden,
bei dem die numerische Steuereinrichtung 1 im Falle des
Ausgebens des Bewegungsbefehl Pc an das Servoregelsystem gemäß einem
Bearbeitungsprogramm oder in Reaktion auf ein Zuführungssignal
prüft,
ob eine Bewegungsrichtung umgekehrt ist oder nicht, und zusammen
mit dem Bewegungsbe fehl Pc ein vorbestimmtes Signal an eine Totgangbetrags-Korrektureinrichtung 10 ausgibt,
wenn die Richtung der Bewegung umgekehrt wird, und das Servoregelsystem
den Betrag einer Totgangkorrektur zu dem Bewegungsbefehl Pc addiert,
um die Befolgungsverzögerung
zu beseitigen. Der Betrag der Totgangkorrektur wird in Übereinstimmung
mit dem Kugelumlaufspindel/Kugelmutter-Mechanismus 7 oder
dgl. der entsprechenden Achse bestimmt, und der Betrag der Totgangkorrektur
wird im allgemeinen 11 nicht geändert.
-
Wenn
ein Servoregelsystem, das in einem Modus mit vollgeschlossener Schleife
arbeitet, eine Positions-Rückkopplung
des Tisches oder des Werkzeugs 8, der/das durch den Servomotor 5 angetrieben
wird, durch direktes Erfassen der Position des Tisches oder des
Werkzeugs 8 mit einem Positions-Detektor 11 durchführt, wie
dies in 3 gezeigt ist, und zusätzlich mit
der Einlern-Regeleinrichtung 2 augestattet ist, kann die
Position des Tisches oder des Werkzeugs 8 direkt durch
Rückkopplung
geregelt werden, ohne durch einen Totgang des Kugelumlaufspindel/Kugelmutter-Mechanismus 7 beeinträchtigt zu
werden. Dadurch wird ein Regelsystem geschaffen, das eine befohlene
Position genau einnimmt. Nebenbei bemerkt bezeichnet ein Bezugszeichen 12 in 3 einen
Geschwindigkeits-Detektor zum Erfassen einer Drehgeschwindigkeit
des Servomotors 5.
-
In
dem Servoregelsystem mit der halbgeschlossenen Schleife, das in 2 gezeigt
ist, kann in dem Fall, in dem eine Bearbeitung mit einer niedrigen
Geschwindigkeit durchgeführt
wird, d. h. dass der Servomotor 5 mit einer niedrigen Geschwindigkeit
dreht, die Befolgungsverzögerung
durch Korrigieren des Totgangs mit dem Betrag der Totgangkorrektur
korrigiert werden, was zu einer hochgenauen Bearbeitung führt. Andererseits
wird dieses Servoregelsystem in dem Fall, in dem die Bearbeitungsgeschwindigkeit
erhöht
ist, um eine Bearbeitung mit hoher Geschwindigkeit durchzuführen, durch
Verformung oder dgl. der Kugelumlaufspindel unter der Wirkung der
Massenträgheit
beeinträchtigt,
wenn die Drehrichtung der Kugelumlaufspindel geändert wird, was zu einem Anstieg
der Differenz zwischen der befohlenen Position und der tatsächlichen
Position führt.
Diese Positionsdifferenz ändert
sich abhängig von
den Bearbeitungsbedingungen, wie der Bearbeitungsgeschwindigkeit,
und kann demzufolge nicht durch irgendein herkömmliches Korrekturverfahren korrigiert
werden, in dem nur der vorbestimmte Betrag der Totgangkorrektur,
der für
jede Maschine gesetzt ist, zu der Positionsabweichung addiert wird,
so dass es nicht möglich
ist, die Bearbeitungsgenauigkeit hinreichend zu verbessern.
-
Im
Falle der Bearbeitung beispielsweise eines hohlen Werkstücks wird
das Werkstück
manchmal infolge der Einwirkung eines Schneiddrucks abgelenkt, der
bei dem Bearbeitungsvorgang von dem Werkzeug ausgeübt wird.
Das bedeutet, dass das Werkstück,
wenn es hohl ist und den Schneiddruck von dem Werkzeug aufnimmt,
in Richtung auf das Zentrum des Werkstücks abgelenkt werden kann. Überdies ändert sich
der Schneiddruck abhängig
von einer Vorbewegungsrichtung einer Schneidkante des Werkzeugs
(abhängig
davon, ob das Werkzeug bewegt wird, um in das Werkstück zu stoßen oder
sich von dem Werkstück
zurückzuziehen),
und demgemäß andern
sich auch der Betrag des Drucks und der Betrag der Ablenkung. Ein
Bearbeitungsfehler, der durch Ablenkung des Werkstück verursacht
ist, wie dies zuvor beschrieben wurde, kann jedoch nicht mit der
herkömmlichen
Totgangkorrektur durch einen festen Betrag oder dgl. korrigiert
werden, was zu einer Verminderung der Bearbeitungsgenauigkeit führt.
-
Im
Falle der Benutung des Servoregelsystems, das in dem Modus mit der
vollgeschlossenen Schleife arbeitet, wie es in 3 gezeigt
ist, wird die Position des Werkzeugs oder des Tisches (des Werkstücks) direkt
erfasst, und auf diese Weise kann der Einfluss des Totgangs oder
dgl. der Kugelumlaufspindel beseitigt werden, was zu einer Verbesserung
der Bearbeitungsgenauigkeit führt.
Wenn das Werkstück jedoch infolge
der Einwirkung eines Schneiddrucks wie im Falle der Bearbeitung
eines hohlen Werkstücks
abgelenkt werden kann, kann die Bearbeitungsgenauigkeit selbst dann
nicht verbessert werden, wenn dieses Regelsystem benutzt wird.
-
Demzufolge
muss, wenn ein Versuch unternommen wird, eine Totgangkorrektur einschließlich des
Betrags einer Werkstück-Ablenkung
durchzuführen,
die Ablenkung des Werkstücks
durch Ermitteln des Betrags der Korrektur für jede Bearbeitungsform korrigiert
werden, da sich der Betrag der Ablenkung abhängig von der Bearbeitungsform ändert.
-
In
dem Fall, in dem das gleiche Werkstück (ein hohles Werkstück) bearbeitet
wird, um eine Bearbeitungsform 1 und eine Bearbeitungsform 2 zu
haben, muss beispielsweise der Betrag der Totgangkorrektur für jede Bearbeitungsform
geändert
werden, um durch Benutzung des Totgangkorrektur-Verfahrens nach
dem Stand der Technik einen Formfehler mit dem Betrag der Totgangkorrektur
einschließlich des
Betrags der Korrektur wegen einer Ablenkung des Werkstücks zu verringern.
Wenn die Korrektur unter der Bedingung durchgeführt wird, dass der Betrag der
Totgangkorrektur für
jede Bearbeitungsform geändeert
wird, ist es notwendig, den Betrag der Korrektur derart zu einem
neuen Korrekturwert zu ändern,
nachdem die Bewegungsrichtung eingestellt worden ist, dass die Gesamtsumme
der Beträge
der Korrektur, die bis zu diesem Punkt durchgeführt ist, stets "0" wird. Wenn der Betrag der Korrektur
unter der Bedingung geändert
wird, dass die Gesamtsumme der Beträge der Korrektur nicht "0" ist, unterscheidet sich die befohlene
Position von der tatsächlichen Position
um eine Differenz zwischen dem Betrag der Korrektur, bevor er geändert wurde,
und dem Betrag der Korrektur, nachdem er geändert worden ist.
-
10 zeigt
eine Prozedur zum Erstellen eines Programms, mittels dessen eine
Totgangkorrektur mit dem Betrag der Totgangkorrektur einschließlich des
Betrags einer Ablenkung des Werkstücks durch Benutzung des Totgangkorrektur-Verfahrens nach dem
Stand der Technik durchgeführt
wird.
-
Zunächst werden
vorab für
die Bearbeitungsformen 1 u. 2 Beträge einer Differenz H1 und einer
Differenz H2 zwischen den befohlenen Positionen und den Form-Positionen
des Werkstücks
gemessen, die sich aus einer Umkehrung der Bewegungsrichtung ergeben.
Dann wird ein Programm für die
Bewegung zu der Position der Bearbeitungsform 1 erstellt (Programm-Schritt
PS1). Nachfolgend wird die Einstellung der Bewegungsrichtung derart
programmiert, dass die Gesamtsumme der Beträge der Korrektur durch den
Betrag der Totgangkorrektur H0 (dieser Betrag der Totgangkorrektur
HO entspricht dem Totgang und bedeutet einen normalen Betrag der
Totgangkorrektur, der keine Ablenkung oder dgl. des Werkstücks enthält) zu "0" wird (Programm-Schritt PS2). Bei diesem
Verfahren wird, um die Bewegungsrichtung einzustellen, ein positiver Betrag
der Korrektur zu dem Bewegungsbefehl addiert, wenn die Bewegungsrichtung
von der negativen Richtung zu der positiven Richtung umgekehrt ist,
oder es wird ein negativer Betrag der Korrektur zu dem Bewegungsbefehl
addiert, wenn die Bewegungsrichtung von der positiven Richtung zu
der negativeb Richtung umgekehrt ist, und demzufolge wird die Gesamtsumme
der Beträge
der Korrektur nicht zu "0", es sei denn, dass
die Bewegungsrichtung eine gerade Zahl von Malen umgekehrt ist.
Demzufolge wird die Einstellung der Bewegungsrichtung derart programmiert,
dass die Richtung einer endgültigen Bewegung
vor einer Änderung
des Betrags der Korrektur eingestellt wird, um auf diese Weise eine
Korrektur mit einer geraden Zahl von Malen zu erreichen.
-
Dann
wird ein Betrag der Korrektur H1 für die Bearbeitungsform 1 als
ein Betrag der Totgangkorrektur programmiert, und es wird ein Bearbeitungsprogramm
zum Bearbeiten des Werkstücks
zu der Bearbeitungsform 1 erstellt (Programm-Schritte PS3 u. PS4). Nachfolgend wird
die Bewegung zu der Position der Bearbeitungsform 2 programmiert
(Programm-Schritt
PS5), und die Einstellung der Bewegungsrichtung wird in ähnlicher
Weise wie gemäß Programm-Schritt
PS2 programmiert, so dass die Gesamtsumme der Beträge der Totgangkorrektur vom
Start der Bearbeitung des Werkstücks
zu der Bearbeitungsform 1 bis zu diesem Punkt zu "0" wird. Dann wird ein Programm zum Setzen
des Betrags einer Totgangkorrektur 2 für die Bearbeitungsform 2 erstellt
(Programm-Schritte
PS6 u. PS7).
-
Dann
wird ein Bearbeitungsprogramm zum Bearbeiten des Werkstücks zu der
Bearbeitungsform 2 erstellt, es wird dann eine Einstellung der Bewegungsrichtung
derart programmiert, dass der Betrag der Totgangkorrektur zu "0" wird, der Betrag der Totgangkorrektur
wird auf einen normalen Wert H0 zurückgeführt, und es wird die Bewegung
zu der ursprünglichen
Position programmiert (Programm-Schritte PS8 bis PS11).
-
Wie
zuvor beschrieben ist es im Falle einer Korrektur des Betrags der
Korrektur, die auch beim Korrigieren des Betrags einer Werkstückablenkung wirksam
ist, der sich abhängig
von der Bearbeitungsform ändert,
durch Benutzung des Totgangkorrektur-Verfahrens nach dem Stand der
Technik notwendig, ein Einstellungs-Programm vorzubereiten, das veranlasst,
dass die Gesamtbeträge
der Korrektur bis zu diesem Punkt zu "0" werden,
bevor der Betrag der Korrektur geändert wird, was zu dem Ergebnis führt, dass
es einen Nachteil hinsichtlich einer Komplizierung beim Erstellen
des Bearbeitungsprogramms gibt.
-
Ein
anderes Verfahren zur Befehls-Korrektur nach dem Stand der Technik
ist gemäß dem Oberbegriff
des vorliegenden Anspruchs 1 in EP-A-0584598 offenbart, während ein
weiteres Verfahren von Interesse in US-A-5059881 offenbart ist.
-
Eine
Aufgabe der vorliegenden Erfindung besteht darin, so wohl ein Verfahren
zum Korrigieren eines Bewegungsbefehls (d. h. zum Korrigieren einer Positionsabweichung)
durch Addieren eines Bewegungsdifferenzbetrag, der sich aus einer
Umkehrung des Bewegungsbefehls in einem Servoregelsystem ergibt,
zu dem Bewegungsbefehl als auch ein Servosteuersystem zu schaffen,
das in der Lage ist, einen solchen Bewegungsbefehl zu korrigieren.
-
Eine
andere Aufgabe der vorliegenden Erfindung besteht darin, ein Verfahren
zur Bewegungsbefehls-Korrektur und ein Servoregelsystem zu schaffen,
das in der Lage ist, auf einfache Weise einen Bearbeitungsform-Fehler
zu korrigieren, der durch eine Werkstückablenkung verursacht ist,
die sich abhängig
von der Bearbeitungsform ändert.
-
Eine
weitere Aufgabe der vorliegenden Erfindung besteht darin, ein Verfahren
zur Bewegungsbefehls-Korrektur und ein Servoregelsystem zur Positions-Korrektur
zu schaffen, die in Anbetracht eines Totgangs und einer Verformung
aller Schrauben oder dgl. und einer Ablenkung eines Werkstücks durchgeführt werden
können.
-
Eine
erste und eine zweite Ausführungsform der
Erfindung sind in den vorliegenden Ansprüchen 1 u. 6 angegeben.
-
In Übereinstimmung
mit der Bewegungsbefehls-Korrektur gemäß der vorliegenden Erfindung wird
ein Betrag der Differenz zwischen einer befohlenen Position und
einer tatsächlichen
Position, der sich aus einer Umkehrung der Bewegungsrichtung ergibt,
vor dem Bearbeiten ermittelt, es wird überwacht, ob ein Vorzeichen
des Bewegungsbefehls beim Vorgang der Bearbeitung in Übereinstimmung mit
einem Bearbeitungsprogramm umgekehrt wird oder nicht, und der Betrag
der Differenz wird zu dem Bewegungsbefehl addiert, um einen Bewegungsbefehlswert
zu korrigieren, wenn eine Umkehrung des Vorzeichens des Bewegungsbefehls
erfasst ist. Dann wird die Bearbeitung auf der Grundlage des korrigierten
Bewegungsbe fehlswerts durchgeführt.
-
Durch
Anwendung einer ersten und einer zweiten Ausführungsform der vorliegenden
Erfindung kann die Ablenkung eines Werkstücks infolge einer Reaktionskraft
beim Schneidbearbeiten korrigiert werden, was es möglich macht,
die Bearbeitungsgenauigkeit selbst dann zu verbessern, wenn ein
Werkstück
dazu neigt, durch die Wirkung der Schneidreakionskraft abgelenkt
zu werden.
-
1 zeigt
ein Funktions-Blockschaltbild, das ein Servosteuersystem in einem
Ausführungsbeispiel
gemäß der vorliegenden
Erfindung darstellt.
-
2 zeigt
ein Funktions-Blockschaltbild, das ein Servoregelsystem darstellt,
das in einem Modus mit einer halbgeschlossenen Schleife arbeitet und
außerdem
im Betrieb eine Einlern-Regelung dazu durchführt.
-
3 zeigt
ein Funktions-Blockschaltbild, das ein Servoregelsystem darstellt,
das in eine Modus mit einer vollgeschlossenen Schleife arbeitet
und außerdem
im Betrieb eine Einlern-Regelung dazu durchführt.
-
4 zeigt
ein Blockschaltbild, das ein Servomotor-Regelsystem in einem Ausführungsbeispiel der
vorliegenden Erfindung darstellt.
-
5 zeigt
ein Flussdiagramm, das eine Verarbeitung zum Korrigieren einer Positionsdifferenz
in einem Ausführungsbeispiel
gemäß der vorliegenden
Erfindung darstellt.
-
6 zeigt
ein Flussdiagramm, das eine Verarbeitung zum Berechnen eines eines
Korrekturmusters in dem Ausführungsbeispiel
darstellt.
-
7 bis 9 zeigen
eine befohlene Position bzw. eine Motor-Position, bevor eine Positionsdifferenz
bei der Bearbeitung eines Kolbenrings korrigiert ist.
-
10 zeigt
ein Flussdiagramm, das eine Prozedur zum Erstellen eines Bearbeitungsprogramms
zum Korrigieren einer Positionsdifferenz durch ein Totgang-Korrekturverfahren
gemäß dem Stand
der Technik darstellt, das angewendet wird, wenn sich die Positionsdifferenz
abhängig
von einer Bearbeitungsform ändert.
-
11 zeigt
ein Flussdiagramm, das eine Prozedur zum Erstellen eines Bearbeitungsprogramms
zum Korrigieren einer Positionsdifferenz durch ein Verfahren gemäß der vorliegenden
Erfindung darstellt, das angewendet wird, wenn die Positionsabweichung
abhängig
von einer Bearbeitungsform ändert.
-
Zunächst wird
ein Überblick über ein
Servoregelsystem gemäß einem
Ausführungsbeispiel
der vorliegenden Erfindung unter Bezugnahme auf ein Funktions-Blockschaltbild
gemäß 1 gegeben.
-
Wie
durch Vergleich mit dem Servoregelsystem ersichtlich ist, das in
einem Modus mit einer halbgeschlossenen Schleife arbeitet und eine
Einlern-Regeleinrichtung 2 gemäß dem Stand der Technik hat, die
in 2 gezeigt ist, sind die Merkmale eines in 1 gezeigten
Servoregelsystems derart, dass eine Positionsdifferenzkorrektur-Regeleinrichtung 9 vorgesehen
ist und eine Totgangbetrags-Korrektureinrichtung 10 fortgelassen
ist.
-
Wenn
ein Bewegungsbefehl Pc von einer numerischen Steuereinrichtung 1 ausgegeben
ist, wird eine Positionsabweichung durch Subtrahieren eines Betrags
eines Positions-Rückkopplungsignals
Pf von einem Positions/Geschwindigkeits-Detektor 6, der auf
einem Servomotor 5 montiert ist, von dem Be wegungsbefehl
Pc bestimmt. Andererseits holt die Positionsdifferenzkorrektur-Regeleinrichtung 9 einen
ersten Betrag einer Korrektur aus einem Speicher der Positionsdifferenzkorrektur-Regeleinrichtung 9 ab und
gibt denselben aus, wenn ein Vorzeichen des Bewegungsbefehls Pc,
der von der numerischen Steuereinrichtung 1 ausgegeben
ist, umgekehrt ist. Der erste Betrag der Korrektur, der von der
Positionsdifferenzkorrektur-Regeleinrichtung ausgegeben ist, wird
zu der Positionsabweichung addiert. Ferner führt die Einlern-Regeleinrichtung 2 eine
Einlern-Regelung durch, um einen zweiten Betrag der Korrektur auszugeben.
Dieser zweite Betrag der Korrektur wird ebenfalls zu der Positionsabweichung
addiert, um die Positionsabweichung zu korrigieren. Die Positionsabweichung,
die auf diese Weise mit dem ersten und dem zweiten Betrag der Korrektur
korrigiert ist, wird in die Positions/Geschwindigkeits/Strom-Regeleinrichtung 3 eingegeben.
Nebenbei bemerkt ist die Korrektur der Positionsabweichung mit dem
Betrag der Korrektur der Korrektur eines Positionsbefehls mit dem
gleichen Betrag der Korrektur als der zuvor genannte Betrag der
Korrektur equivalent.
-
Die
Positions/Geschwindigkeits/Strom-Regeleinrichtung 3 ermittelt
einen Geschwindigkeitsbefehl auf der Grundlage der (korrigierten)
Positionsabweichung, ermittelt dann einen Drehmoment- (Strom-)Befehl
durch eine Geschwindigkeits-Schleifenregelung,
die auf der Grundlage des Geschwindigkeitsbefehls und eines Betrags
eines Geschwindigkeits-Rückkopplungssignals
von dem Positions/Geschwindigkeits-Detektor 6 durchgeführt wird, regelt
das Treiben des Servomotors 5 durch Regeln des Servoverstärkers 4 durch
eine Stromschleifenverarbeitung, die auf der Grundlage des Drehmoment-
(Strom-)Befehls und eines Rückkopplungswerts
eines Treiberstroms durchgeführt
wird, der durch einen Strom-Detektor (nicht gezeigt) erfasst ist,
der in dem Servoverstärker 4 vorgesehen
ist, und regelt das Antreiben des Tisches oder Werkzeugs 8.
-
Im
folgenden wird eine Beschreibung einer Funktion der Positionsdifferenzkorrektur-Regeleinrichtung 9,
die in 1 gezeigt ist, als eines der Merkmale der vorliegenden
Erfindung gegeben.
-
Die
Positionsdifferenzkorrektur-Regeleinrichtung 9 überwacht
den Bewegungsbefehl Pc, der von der numerischen Steuereinrichtung 1 ausgegeben
wird, und gibt den ersten Betrag der Korrektur, der für jede Bearbeitungsform
vorbestimmt ist, in Übereinstimmung
mit einem vorbestimmten Muster aus, wenn das Vorzeichen des Bewegungsbefehls Pc
umgekehrt ist, d. h. die Richtung der Bewegung des Servomotors (des
Tisches oder eines Schneidwerkzeugs) umgekehrt ist, wenn ein Befehl
von der numerischen Steuereinrichtung 1 umgekehrt ist.
Der erste Betrag der Korrektur, der von der Positionsdifferenzkorrektur-Regeleinrichtung
ausgegeben ist, wird zu der Positionsabweichung addiert, um die
Positionsabweichung zu korrigieren. Dann wird die korrigierte Positionsabweichung
in die Positions/Geschwindigkeits/Strom-Regeleinrichtung 3 und
ferner in die Einlern-Regeleinrichtung 2 eingegeben.
-
Wie
zuvor beschrieben wird der erste Betrag der Korrektur als Ausgangssignal
der Positionsdifferenzkorrektur-Regeleinrichtung 9 zu der
Positionsabweichung addiert. Wenn das Ausgangssignal (der erste
Betrag der Korrektur) der Positionsdifferenzkorrektur-Regeleinrichtung 9 einen
Betrag einer Totgangkorrektur enthält, wird der Betrag der Totgangkorrektur
selbstverständlich
zu der Positionsabweichung addiert. Das Addieren des Betrags der
Totgangkorrektur zu der Positionsabweichung und Eingeben der Summe
in die Positions/Geschwindigkeits/Strom-Regeleinrichtung 3 ist
jedoch dem Addieren des Betrags der Totgangkorrektur zu dem Positionsbefehl
und Eingeben der Summe in die Positions/Geschwindigkeits/Strom-Regeleinrichtung 3 (Stand
der Technik) equivalent. Das bedeutet, dass die Totgangkorrektur
nach dem Stand der Technik, wenn das Ausgangssignal (der erste Betrag
der Korrektur) der Positionsdifferenzkorrektur-Regeleinrichtung 9 den
Betrag der Totgangkorrektur enthält, durch
die Positionsdifferenzkorrektur-Regeleinrichtung 9 bewirkt
werden kann.
-
Ferner
wird die Korrektur durch die Positionsdifferenzkorrektur-Regeleinrichtung 9 nur
bei dem Vorgang der Bearbeitung durchgeführt, und die Gesamtsumme der
Beträge
der Korrektur bei dem Vorgang der Bearbeitung wird stets zu "0" (Einzelheiten dazu sind weiter unten
beschrieben). Demgemäß wird ein
optimaler Betrag der Korrektur leicht für jede Bearbeitungsform ohne
Komplizierung des Erstellens des Bearbeitungsprogramm, wie es beispielsweise
in 10 gezeigt ist, nur durch Ändern des Betrags der Korrektur
bestimmt, der abhängig
von einer Bearbeitungsform gesetzt worden ist, wie dies in 11 gezeigt
ist, was weiter unten beschrieben wird.
-
Im
folgenden wird eine Beschreibung eines wesentlichen Teils eines
Servoregelsystems in einer Werkzeugmaschine, der beim Durchführen eines
Positionskorrektur-Verfahrens nach der vorliegenden Erfindung wirksam
ist, unter Bezugnahme auf ein Blockschaltbild gemäß 4 gegeben.
-
Die
numerische Steuereinrichtung 1 steuert eine Werkzeugmaschine.
Ein gemeinsam benutzter Speicher 21 empfängt verschiedene
Befehle oder dgl., die von der numerischen Steuereinrichtung 1 an den
Servomotor 5 ausgegeben sind, und überträgt die empfangenen Befehle
zu einem Prozessor einer digitalen Servoschaltung 22. Die
digitale Servoschaltung 22 ist aus einem Prozessor (CPU),
einem ROM und einem RAM oder dgl. zusammengesetzt.
-
Der
Prozessor der digitalen Servoschaltung 22 regelt nicht
nur die Position, die Geschwindigkeit und den Strom oder dgl. des
Servomotors 5, sondern führt auch eine Einlern-Regelungsverarbeitung
und die Steuerung einer Positions differenz-Korrektur durch, was
ein Merkmal der vorliegenden Erfindung ist. Das heißt, dass
der Prozessor der digitalen Servoschaltung 22 die Verarbeitung
in der Einlern-Regeleinrichtung 2, der Positions/Geschwindigkeits/Strom-Regeleinrichtung 3 und
der Positionsdifferenzkorrektur-Regeleinrichtung 9 durchführt, die
in 1 gezeigt sind..
-
Der
Servomotor 5 wird durch den Servoverstärker 4 geregelt, der
aus einem Transistor-Wechselrichter oder dgl. zusammengesetzt ist
und durch einen Kugelumlaufspindel/Kugelmutter-Mechanismus 7 eine Drehbewegung
in eine Linearbewegung umwandelt, um den Tisch oder das Werkzeug 8 anzutreiben,
wie dies in 1 gezeigt ist. Die Drehposition
und die Geschwindigkeit des Servomotors 5 werden durch
einen Impulskodierer 6 erfasst und dann auf die digitale
Servoschaltung 22 rückgekoppelt.
-
Das
Servoregelsystem, das in 4 gezeigt ist, ist von demjenigen
nach dem Stand der Technik dadurch verschieden, dass der Prozessor
der digitalen Servoschaltung 22 zusätzlich zu einer Einlern-Regelung
eine Positionsdifferenz-Korrektur durchführt.
-
Im
folgenden wird eine Beschreibung eines Positionskorrektur-Verfahrens
in Übereinstimmung mit
einem Ausführungsbeispiel
der vorliegenden Erfindung gegeben.
-
Zunächst wird
ein Probe-Schneiden ohne Totgangkorrektur durchgeführt, und
es wird ein Betrag der Differenz zwischen der befohlenen Position und
der tatsächlichen
Position für
jede Bearbeitungsform gemessen, wenn eine Bewegungsrichtung umgekehrt
ist. Dann wird in einem Bearbeitungsprogramm eine Bewegungsdifferenz-Betragskorrektur für jede Bearbeitungsform
auf der Grundlage des gemessenen Betrags der Differenz vorgenommen
(nebenbei bemerkt andert sich die Bewegungsdifferenz-Betragskorrektur
abhängig
von einem Korrekturmuster für
die Positionsdifferenz-Korrektur, wie dies wei ter unten beschrieben
wird).
-
Im
folgenden wird eine Beschreibung der Prozedur zum Erstellen eines
Bearbeitungsprogramms unter Bezugnahme auf 11 gegeben, das
für die
Bearbeitung eines Werkstücks
erforderlich ist, das zwei Bearbeitungsformen (die als eine Bearbeitungsform
1 und eine Bearbeitungsform 2 bezeichnet sind) haben soll.
-
Die
Bewegung zu der Position der Bearbeitungsform 1 wird programmiert
(Programm-Schritt PT1), es wird eine Bewegungsdifferenz-Betragskorrektur
H1, die auf der Grundlage des gemessenen Betrags der Differenz in
bezug auf die Bearbeitungsform 1 gewonnen ist, programmiert (Programm-Schritt
PT2), es wird ein Bearbeitungsprogramm für die Bearbeitungsform 1 erstellt,
und dann wird ein Befehl zum Bewegen zu der Position der Bearbeitungsform
2 programmiert (Programm-Schritte PT3 u. PT4). Nachfolgend wird
eine Bewegungsdifferenz-Betragskorrektur H2 auf der Grundlage des
gemessenen Betrags der Differenz in bezug auf die Bearbeitungsform
2 programmiert, es wird ein Bearbeitungsprogramm für die Bearbeitungsform
2 erstellt, und danach wird ein Befehl zum Zurückkehren zu der ursprünglichen
Position programmiert (Programm-Schritte PT5 bis PT7).
-
Die
Prozedur zum Programmieren, die in 11 gezeigt
ist, hat einen Vorteil dahingehend, dass keine Notwendigkeit für Schritte
zum Erreichen einer Gesamtsumme "0" der Beträge der Totgangkorrektur
vor dem Starten der Bearbeitung für jede Bearbeitungsform besteht
(d. h. Programm-Schritte PS2, PS6 u. PS9 in der Prozedur zum Programmieren nach
dem Stand der Technik, die in 10 gezeigt ist).
-
Wenn
das Bearbeitungsprogramm, das auf diese Weise erstellt ist, in die
numerische Steuereinrichtung 1 geladen ist und ausgeführt wird,
liest der Prozessor der numerischen Steuereinrichtung 1 das Programm
aus, das die vorbestimmte Be wegungsdifferenz-Betragskorrektur (Programm-Schritte
PT2 u. PT5) in bezug auf die Bearbeitungsformen 1 u. 2 enthält, und
schreibt dann die ausgelesene Bewegungsdifferenz-Betragskorrektur
in den gemeinsam benutzten Speicher 21 ein. Der Prozessor
der digitalen Servoschaltung 22 führt eine Positionsdifferenz-Korrektur,
die weiter unten beschrieben wird, auf der Grundlage der eingeschriebenen
Bewegungsdifferenz-Betragskorrektur durch, wenn die Bewegungsrichtung
umgekehrt ist.
-
Wie
zuvor beschrieben sind, da die Bewegungsdifferenz-Betragskorrektur
durch tatsächliche Messung
gewonnen wird, der Betrag der durch Verformung oder Ablenkung des Übertragungs-Mechanismus
verursachten Positionsdifferenz, der einen in einem Übertragungs-Mechanismus,
wie einem Kugelumlaufspindel-Mechanismus, auftretenden Totgang enthält, und
der Betrag der Ablenkung des Werkstücks durch die Einwirkung eines
Schneiddrucks als die Bewegungsdifferenz-Betragskorrektur gegeben.
Das bedeutet, dass die Bewegungsdifferenz-Betragskorrektur als ein
Wert vorgesehen ist, der die Positionsdifferenz enthält, die
durch verschiedene Ursachen auftritt, die sich aus einer Umkehrung der
Bewegungsrichtung ergeben.
-
Ferner
sind eine Vielzahl von Korrekturmustern zum Korrigieren des Betrags
der Korrektur in Übereinstimmung
mit der Bearbeitungsform, dem Material des Werkstücks oder
dgl. vorgesehen, und für
das vorliegende Ausführungsbeispiel
sind zwei Korrekturmuster (d. h. für die Bearbeitungsform 1 und die
Bearbeitungsform 2) vorgesehen, wovon jedes auswählbar sein kann und zur Veerfügung gestellt wird.
Dann werden vor dem Start der Bearbeitung eine Vielzahl von Korrekturmustern
in der numerischen Steuereinrichtung 1 gesetzt, und es werden vorab
ein Betrag der Korrektur und die Anzahl von Malen einer Korrektur
entsprechend jedem gesetzten Muster gesetzt.
-
Im
folgenden wird eine Beschreibung einer Positionsdifferenz-Korrektur
in einer Verarbeitung, die durch den Prozessor der digitalen Servoschaltung 22 für jeden
Positions/Geschwindigkeits-Schleifenverarbeitungszyklus durchgeführt wird,
unter Bezugnahme auf Flussdiagramme in 5 u. 6 gegeben.
In diesen Flussdiagrammen ist, da die Positions/Ge-schwindigkeits-Schleifenverarbeitung
und die Einlern-Regelungsverarbeitung, die durch diesen Prozessor
durchgeführt
werden, denjeningen nach dem Stand der Technik ähnlich sind, ein Beschreibung
derselben fortgelassen, und es ist nur die Verarbeitung gezeigt,
die sich auf die Positionsdifferenz-Korrektur als ein Merkmal der
vorliegenden Erfindung bezieht.
-
Wenn
die Operation gestartet ist, setzt die numerische Steuereinrichtung 1 ein
Kennzeichnungsbit F0, das in dem gemeinsam benutzten Speicher 12 vorgesehen
ist, während
der Ausgabe eines Schneidbefehl (z. B. eines Bearbeitungsbefehls,
wie ein Kode GO1, der eine lineare Schneidvorbewegung beinhaltet)
auf "1", um anzuzeigen,
dass die Bearbeitung im Gange ist, oder setzt das Kennzeichnungsbit
F0 auf "0", wenn die Bearbeitung
nicht im Gange ist (d. h. wenn kein Befehl ausgegeben ist, der sich
auf die Bearbeitung bezieht).
-
Dann
liest der Prozessor der digitalen Servoschaltung 13 das
Kennzeichnungsbit F0 aus, um zu prüfen, ob die Bearbeitung im
Gange ist oder nicht (Schritt S1). Wenn die Bearbeitung nicht im
Gange ist, ermittelt der Prozessor bei einer Umkehrung der Richtung
eine neue Positionsabweichung (Schritt S15) durch Subtrahieren eines
Werts in einem Register ALL, das mit der Gesamtsumme der Beträge der Korrektur
geladen ist, von einem Fehler-Register, das mit einer Positionsabweichung
Er geladen ist. Nebenbei bemerkt wird das Register ALL in der Stufe der
Initialierung, wenn die Stromversorgung eingeschaltet ist, auf "0" gesetzt, und demzufolge ist sein ursprünglicher
Wert "0". Nachfolgend setzt
der Prozessor dieses Register All auf "0" (Schritt
S16), setzt ein Kennzeichnungsbit F1 auf "0",
was anzeigt, dass eine Positionsdifferenz-Korrektur zur Zeit einer
Umkehrung der Bewegungsrichtung im Gange ist (Schritt S17), prüft, ob der
Bewegungsbefehl "0" ist oder nicht (Schritt
S13) und beendet die Positionsdifferenz-Korrektur für den gegenwärtigen Zyklus,
wenn der Bewegungsbefehl "0" ist. Wenn der Bewegungsbefehl
nicht "0" ist, speichert der
Prozessor ein Vorzeichen des Bewegungsbefehls in einem Register OLD
(Schritt S14) und beendet die Positionsdifferenz-Korrektur für den gegenwärtigen Zyklus.
-
Andererseits
prüft der
Prozessor, wenn der Schneidbefehl von der numerischen Steuereinrichtung 1 ausgegeben
ist und das Kennzeichnungsbit F0, das anzeigt, dass die Bearbeitung
im Gange ist, auf "1" gesetzt ist (Schritt
S1), ob der Bewegungsbefehl "0" ist oder nicht (Schritt
S2), und die Verarbeitung setzt sich zu Schritt S5 fort fort, wenn
der Bewegungsbefehl "0" ist, wohingegen
der Prozessor, wenn der Bewegungsbefehl nicht "0" ist,
das Vorzeichen des Bewegungsbefehls, das für einen Zyklus unmittelbar
vor dem gegenwärtigen
Zyklus in dem Register OLD (in Schritt S14) gespeichert ist, mit
dem Vorzeichen des Bewegungsbefehls für den gegenwärtigen Zyklus
vergleicht und prüft,
ob das Vorzeichen umgekehrt ist oder nicht (Schritt S3). Wenn das
Vorzeichen nicht umgekehrt ist, setzt sich die Verarbeitung zu Schritt
S5 fort, wohingegen es bedeutet, wenn eine Umkehrung des Vorzeichens
erfasst ist, dass die Bewegungsrichtung bis zu diesem Punkt durch
einen gegebenen Bewegungsbefehl umgekehrt ist. Demzufolge setzt
der Prozessor das Kennzeichnungsbit F1 auf "1",
um anzuzeigen, dass eine Verarbeitung zur Positionsdifferenz-Korrektur
wegen des Totgangs, einer Verformung der Kugelumlaufspindel bzw.
einer Ablenkung des Werkstücks
oder dgl. im Gange ist, setzt einen Zähler i, der die Anzahl von Malen
einer Korrektur zählt,
auf "0", speichert den gegenwärtigen Bewegungsbefehl
in einem Register M1, das den Bewegungsbefehl zur Zeit der Umkehrung
hält, zum
Prüfen
der Richtung der Korrektur (Schritt S4) und setzt die Verarbeitung
zu Schritt S5 fort.
-
In
Schritt S5 prüft
der Prozessor, ob das Kennzeichnungsbit F1 zum Anzeigen, dass eine
Positionsdifferenz-Korrektur zur Zeit einer Umkehrung der Bewegungsrichtung
im Gange ist, auf "1" gesetzt ist oder
nicht. Dieses Kennzeichnungsbit F1 wird in der Stufe der Initialisierung
auf "0" gesetzt, und demzufolge
ist sein ursprünglicher
Wert "0". Ferner wird dieses
Kennzeichnungsbit F1 auch auf "0" gesetzt, wenn die
Bearbeitung nicht im Gange ist. Wenn das Kennzeichnungsbit F1 "0" ist, wird die Verarbeitung zur Korrektur
zur Zeit einer Umkehrung der Richtung nicht durchgeführt, es
wird jedoch bestimmt, ob der gegenwärtige Bewegungsbefehl "0" ist oder nicht (Schritt S13), und die
Positionsdifferenz-Korrektur
für den
gegenwärtigen
Zyklus wird beendet, wenn dieser Bewegungsbefehl "0" ist. Wenn der Bewegungsbefehl nicht "0" ist, speichert der Prozessor das Vorzeichen
des Bewegungsbefehls in dem Register OLD (Schritt S14) und beendet
die Verarbeitung für
den gegenwärtigen
Zyklus.
-
Andererseits
startet der Prozessor, wenn das Kennzeichnungsbit F1, das anzeigt,
dass eine Positionsdifferenz-Korrektur zur Zeit einer Umkehrung
der Bewegungsrichtung im Gange ist, in Schritt S5 "1" ist, eine Berechnung von Korrekturmustern
(Schritt S6).
-
Dieses
Ausführungsbeispiel
ermöglicht
eine Auswahl aus zwei Korrekturmustern.
-
In Übereinstimmung
mit einem Muster 1 wird der vorbestimmte Betrag der Korrektur durch
eine vorbestimmte Anzahl von Malen geteilt, und der geteilte Betrag
der Korrektur wird eine vorbestimmtee Anzahl von Malen als der Betrag
der Korrektur für
jeden Zyklus einer Positions/Geschwindigkeits-Verarbeitung korrigiert. Demzufolge
wird der Betrag der Korrektur gleichmäßig die vorbestimmte Anzahl
von Malen für
jeden Positions/Geschwindigkeits-Verarbeitungszyklus ausgegeben.
-
Gemäß einem
Muster 2 wird der Betrag der Korrektur eines großen Werts in einem ersten Positions/Geschwindigkeits-Schleifenverarbeitungsszyklus
ausgegeben und dann graduell auf "0" zu
der Zeit herabgesetzt, zu welcher der Betrag der Korrektur die vorbestimmte
Anzahl von Malen ausgegeben wird.
-
Dann
startet der Prozessor der digitalen Servoschaltung 13 in
Schritt S6 eine Berechnung von Korrekturmustern. Das bedeutet, dass
eine Sub-Routine für
die Berechnung der Korrekturmuster gestartet wird, die in 6 gezeigt
ist.
-
Zunächst prüft der Prozessor
der digitalen Servoschaltung, ob das ausgewählte Korrekturmuster das Muster
1 oder das Muster 2 ist (Schritt BS1). Wenn das Muster 1 ausgewählt ist,
teilt der Prozessor den vorbestimmten Betrag der Korrektur, der
in den gemeinsam benutzten Speicher eingeschrieben ist, die vorbestimmte
Anzahl von Malen der Korrektur, speichert den Quotienten in einem
Register R, das einen Korrekturwert für den gegenwärtigen Zyklus speichert,
(Schritt BS2), erhöht
einen Index 1 um "1" (Schritt BS4), prüft, ob ein
Wert des Index i nicht kleiner als die vorbestimmte Anzahl von Malen
der Korrektur ist oder nicht (Schritt BS5), beendet die Berechnung
der Korrekturmuster für
den gegenwärtigen Zyklus,
und die Verarbeitung kehrt zu der Haupt-Verarbeitung zurück, wenn
der Wert des Index i gleich oder kleiner als die vorbestimmte Anzahl
von Malen der Korrektur ist. Ferner setzt der Prozessor, wenn der
Index i auf einen Wert erhöht
ist, der nicht kleiner als die vorbestimmte Anzahl von Malen der
Korrektur ist, ein Kennzeichnungsbit F2, das die Vervollständigung
der Korrekturmuster-Berechnung anzeigt, auf "1" (Schritt
BS6), und die Verarbeitung kehrt zu der Haupt-Verarbeitung zurück.
-
Andererseits
subtrahiert der Prozessor, wenn in Schritt BS1 entschieden ist,
dass das Muster ausgewählt
ist, einen Wert, der sich aus dem Teilen eines Werts des Index i
durch die vorbestimmte Anzahl von Malen der Korrektur ergibt, von
1, multiplziert die Differenz mit dem vorbestimmten Betrag der Korrektur,
speichert das Produkt in einem Register R als einen Korrekturwert
für den
gegenwärtigen Zyklus
(Schritt BS3), und die Verarbeitung setzt sich zu Schritt BS4 fort.
Als Ergebnis ist dann, da der Wert des Index i in der ursprünglichen
Stufe "0" ist, der vorbestimmte
Wert selbst als der Korrekturwert in dem gegenwärtigen Zyklus gegeben, während in
den nachfolgenden Zyklen der Index i in Schritt BS4 um "1" erhöht
wird und demzufolge ein Wert, der sequentiell bei einer Rate von
(vorbestimmter Wert/Anzahl von Malen der Korrektur) für jeden
Zyklus herabgesetzt wird, als ein Korrekturwert in diesem Zyklus
mit dem Ergebnis gegeben ist, dass die Korrektur in der ursprünglichen
Stufe mit einem großen
Wert durchgeführt
wird und die nachfolgende Korrektur mit einem um Grade kleineren
Wert durchgeführt
wird.
-
Zurückkehrend
zu der Haupt-Verarbeitung ist festzustellen, dass der Prozessor
prüft,
ob ein Bewegungsbefehl M1 zur Zeit der Umkehrung positiv ist oder
nicht (Schritt S7), und wenn er positiv ist, eine Totgangkorrektur
in einer positiven Richtung vorzunehmen ist, da die Bewegung in
einer negativen Richtung bis zu diesem Punkt zur Zeit der Umkehrung
durch den positiven Bewegungsbefehl zu der Bewegung in der positiven
Richtung geändert
ist. Ferner wird das Werkzeug, da es bis zu diesem Punkt in der
negativen Richtung bewegt worden ist, in der positiven Richtung
durch die Wirkung der Gegenkraft des Werkstücks in der positiven Richtung verformt.
Demzufolge ist eine Korrektur in der positiven Richtung zum Beseitigen
der Verformung des Werkzeugs erforderlich. Ferner ist, da das Werkstück in der
negativen Richtung durch die Wirkung des Schneiddrucks des Werkzeugs
in der negativen Richtung verformt wird, eine Korrektur in der positiven
Richtung zum Beseitigen der Verformung erforderlich. In diesem Zusammenhang
nimmt der Prozessor, wenn die Bewegungsrichtung M1 zur Zeit der Umkehrung
in Schritt S7 als positiv bestimmt ist, den positiven Betrag der
Korrektur an, wobei das Korrekturwert-Vorzeichen, das in dem gegenwärtigen Zyklus
in dem Register gespeichert ist, für den Betrag der Korrektur
in dem gegenwärtigen
Zyklus "+" ist (Schritt S9).
-
Ferner
bedeutet es, da die Tatsache, dass der Bewegungsbefehl M1 zur Zeit
der Umkehrung in Schritt S7 als negativ bestimmt ist, dass die Bewegung
in der positiven Richtung bis zu diesem Punkt durch den negativen
Bewegungsbefehl für
den gegenwärtigen
Verarbeitungs-Zyklus zu derjenigen in der negativen Richtung geändert ist,
so dass das Vorzeichen eines Werts in dem Register R negativ ist, um
einen negativen Betrag der Korrektur, d. h. den Zustand, der zu
dem zuvor beschriebenen umgekehrt ist, vorzusehen (Schritt S8).
-
Dann
addiert der Prozessor diesen Betrag der Korrektur zu einem Positionsabweichungswert
Er (d. h, einem Wert, der sich aus dem Subtrahieren des Betrags
des Positions-Rückkopplungssignals
Pf von dem Bewegungsbefehl Pc) ergibt, um den Positionsabweichungswert
zu korrigieren, und addiert auch den addierten Betrag der Korrektur
zu dem Register ALL, das die Gesamtbeträge der Korrektur bei dem Vorgang
der Bearbeitung speichert (Schritt S10).
-
Der
Korrekturwert, der durch die Einlern-Regelung gewonnen ist, wird
zu dem korrigierten Positionsabweichungswert addiert, der in Schritt
S10 gewonnen ist, und der korrigierte Positionsabweichungswert,
der durch die Positionsdifferenz-Korrektur
gewonnen isz, wird weiter korrigiert. Dann wird ein Geschwindigkeitsbefehl
durch Multiplizieren eines Positions-Schleifenübertragungsfaktors mit dem
korrigierten Positionsabweichungswert bestimmt, der durch eine Positionsdifferenz-Korrektur
und eine Einlern-Regelung in dem glei chen Glied wie beim Stand der
Technik gewonnen ist. Es wird eine Geschwindigkeits-Schleifenverarbeitung
auf der Grundlage des Geschwindigkeitsbefehls in der gleichen Weise
wie beim Stand der Technik durchgeführt, und es wird ferner eine
Strom-Schleifenverarbeitung auf der Grundlage des Drehmomentbefehls
(Strombefehls) durchgeführt,
der durch die Geschwindigkeits-Schleifenverarbeitung gewonnen ist,
um jeder Phase des Servomotors Strom zuzuführen, und als Ergebnis wird der
Servomotor 5 getrieben.
-
Nebenbei
bemerkt sind die Verarbeitung zum Bestimmen des Positionsabweichungswerts durch
Subtrahieren des Betrags des Positions-Rückkopplungssinals Pf von dem
Bewegungsbefehl Pc, die Verarbeitung zum Bestimmen des Geschwindigkeitsbefehls
durch erneutes Multiplizieren der Positionsabweichung mit dem Positions-Schleifenwert,
die Geschwindigkeits-Schleifenverarbeitung und die Strom-Schleifenverarbeitung
aus dem Flussdiagramm fortgelassen, das in 5 gezeigt
ist.
-
Nachfolgend
prüft der
Prozessor, ob das Kennzeichnungsbit F2 "1" ist
oder nicht und prüft,
ob die Korrektur wegen der Umkehrung beendet ist oder nicht (Schritt
S11). Wenn das Kennzeichnungsbit F2 "0" ist,
ist die Korrektur zur Zeit der Umkehrung nicht beendet, und in diesem
Fall prüft
der Prozessor, ob der Bewegungsbefehl bei dieser Gelegenheit "0" ist oder nicht (Schritt S13) und beendet
die Verarbeitung für
den gegenwärtigen
Zyklus, wenn der Bewegungsbefehl "0" ist.
Wenn der Bewegungsbefehl nicht "0" ist, speichert der
Prozessor das Vorzeichen des Bewegungsbefehls in dem Register OLD
(Schritt S14) und beendet die Verarbeitung für den gegenwärtigen Zyklus.
-
In
dem nachfolgenden Zyklus setzt sich die Verarbeitung zu den Schritten
S1, S2, S3 u. S5 in dieser Reihenfolge und ferner von Schritt S5
zu Schritt S6 fort, um das Korrekturmuster zu berechnen (Schritt
S6, Verarbeitung in 6), weil das Kennzeichnungsbit
F1 in dem vorhergehenden Zyklus in Schritt S4 auf "1" gesetzt wurde. In diesem Fall wird, da
der Index i durch die Verarbeitung in Schritt BS4 in dem vorhergehenden
Zyklus um erhöht "1" ist, ein Korrekturwert, der um (Betrag
der Korrektur/Anzahl von Malen der Korrektur) kleiner als der vorhergehende
Korrekturwert ist, in dem Fall berechnet, in dem das Korrekturmuster
2 ausgewählt
worden ist (Schritt BS6). Wenn das Korrekturmuster 1 ausgewählt ist,
wird ein Korrekturwert, der dem vorhergehenden Korrekturwert gleich
ist, in dem Register R gespeichert (Schritt BS2).
-
Dann
wird die Positionsabweichung mit dem berechneten Korrekturwert korrigiert,
der durch die Verarbeitung in den Schritten S7 bis S10 gewonnen ist,
und der Korrekturwert wird zu dem Register ALL addiert, das die
Gesamtbeträge
der Korrektur bei dem Vorgang der Bearbeitung speichert.
-
In
jedem der Zyklen, die folgen, wird das Kennzeichnungsbit F2, wenn
erfasst ist, dass der Wert des Index i, während die Verarbeitungen in
den Schritten S1 bis S3 u. S5 bis S14 wiederholt werden, gleich
oder größer als
die Anzahl von Malen der Korrekturare geworden ist, auf "1" gesetzt (Schritt BS6), und die Verarbeitung
kehrt zu der Haupt-Verarbeitung
zurück.
Dann setzt sich die Haupt-Verarbeitung von Schritt S1 nach Schritt
S12 fort, und die Kennzeichnungsbits F1 u. F2 werden auf "0" gesetzt. Dann wird bestimmt, ob der
gegenwärtige
Bewegungsbefehl "0" ist oder nicht (Schritt
S13), und wenn er "0" ist, wird die Verarbeitung
für den
gegenwärtigen
Zyklus beendet. Wenn der Bewegungsbefehl nicht "0" ist,
speichert der Prozessor das Vorzeichen des Bewegungsbefehls in dem
Register OLD (Schritt S14) und beendet die Verarbeitung für den gegenwärtigen Zyklus.
-
In
dem nachfolgenden Zyklus setzt sich die Verarbeitung zu den Schritten
S1 u. S2 in dieser Reihenfolge fort, und der Prozessor prüft, wenn
der Bewegungsbefehl für
den gegenwärtigen
Zyklus nicht "0" ist, ob das Vorzeichen,
das in dem Register OLD gespeichert ist, von dem Vorzeichen des
Bewegungsbefehls für
den gegenwärtigen
Zyklus verschieden ist oder nicht (Schritt S3). Wenn die Vorzeichen
nicht voneinander verschieden sind, setzt sich die Verarbeitung
zu Schritt S5 und ferner von Schritt S5 bis Schritt S13 fort, weil
das Kennzeichnungsbit F1 auf "0" gesetzt ist. Wenn
der Bewegungsbefehl in dem gegenwärtigen Zyklus "0" ist, beendet der Prozessor die Verarbeitung,
wie sie ist. Wenn der Bewegungsbefehl nicht "0" ist,
führt der
Prozessor die Verarbeitung in Schritt S14 durch und beendet die
Verarbeitung in dem gegenwärtigen
Zyklus. In der folgenden Verarbeitung führt der Prozessor, wenn der
Bewegungsbefehl nicht "0" ist und solange
das Kennzeichnungsbit F0, das anzeigt, dass die Bearbeitung im Gange
ist, "1" ist, die Verarbeitung
in den Schritten S1, S2 u. S3 durch, um zu prüfen, ob das Vorzeichen des
Bewegungsbefehls umgekehrt ist oder nicht, und dann setzt sich die
Verarbeitung zu und nach Schritt S4 fort, wie dies zuvor beschrieben
wurde, wenn die Umkehrung des Vorzeichens erfasst ist, und führt die Verarbeitung
zur Korrektur zur Zeit der Umkehrung in und nach Schritt S5 durch.
-
Andererseits
subtrahiert der Prozessor der digitalen Servoschaltung 13,
wenn die Bearbeitung beendet ist und das Kennzeichnungsbit F0, das
anzeigt, dass die Bearbeitung im Gange ist, durch den Prozessor
der numerischen Steuereinrichtung auf "0" gesetzt
ist, einen kumulativen Wert, der in dem Register ALL gespeichert
ist und sich aus dem Addieren der Beträge der Korrektur zur Zeit der
Umkehrung während
der Bearbeitung ergeben hat, von dem Positionsabweichungswert Er
(Schritt S15).
-
Unmittelbar
nach der Subtraktion setzt der Prozessor das Register ALL auf "0" zurück
(schritt S16). Wenn der kumulative Wert, der sich aus dem Addieren
der Beträge
der Kor rektur in Schritt S10 bei dem Vorgang der Bearbeitung ergibt,
z. B. ein positiver Wert ist, bedeutet dies, dass zusätzlich zu
dem Bewegungsbefehl ein extra Bewegungsbefehl zu dem Betrag der
Korrektur des positiven Werts, der durch eine Positionsdifferenz-Korrektur
verursacht ist, addiert ist. Da der kumulative Wert der Beträge der Korrektur
beim Vorgang der Bearbeitung in dem Register ALL gespeichert wird,
führt eine
Subtraktion des Werts, der in dem Register ALL gespeichert ist, von
der Positionsabweichung am Ende der Bearbeitung zu einem Löschen des
Bewegungsbefehls, der zusätzlich
zu dem Positionsbefehl von der numerischen Steuereinrichtung ausgegeben
ist. Wenn die Schleifenverarbeitung für Position, Geschwindigkeit u.
Strom auf der Grundlage des Positionsabweichungswerts Er, der um
den Wert in dem Register ALL herabgesetzt ist, durchgeführt ist,
stimmt die Position des Servomotors 5 mit der Position überein,
die durch das Programm befohlen ist.
-
7, 8 u. 9 zeigen
Ergebnisse eines Experiments für
den Fall einer Bearbeitung eines Kolbenrings in Übereinstimmung mit dem Verfahren nach
dem Stand der Technik und dem Verfahren in Übereinstimmung mit einem Ausführungsbeispiel
der vorliegenden Erfindung.
-
Da
der Kolbenring sehr dünn
ist, wird das Werkstück
durch die Einwirkung des Schneiddrucks abgelenkt, was die Bearbeitungsgenauigkeit
vermindert. Der Kolbenring hat eine kreisförmige Form, wenn er auf einen
Kolbem gesetzt ist, während
dieser Kolbenring in der Form eines Herzens bearbeitet wird. Demzufolge
wird die Bewegungsrichtung der Werkzeugachse (Y-Achse), wenn das
Werkstück durch
Bewegen der Werkzeugachse (Y-Achse) während einer Drehung des Werkstücks schneidbearbeitet
wird, viermal umgekehrt. 7 bis 9 zeigen gemessene
Werte der befohlenen Position, der Motor-Position und der Werkstück-Position
(eine radiale Länge)
bei Drehpositionen von 60° u.
180° des
Kolbenrings (in Form eines Herzens), in denen eine Umkehrung veranlasst wird.
In 7 bis 9 repräsentiert die Achse der Abszisse
einen Winkel, und die Achse der Ordinate repräsentiert eine radiale Länge.
-
8 zeigt
die befohlene Position und die Werkstück-Position (Werkstück-Form)
bei einer Bearbeitung des Kolbenrings durch Einlern-Regelung ohne
Totgangkorrektur nach dem Stand der Technik noch Positionsdifferenz-Korrektur
in Übereinstimmung
mit der vorliegenden Erfindung. 7 zeigt
die befohlene Position und die Servomotor-Position in dem zuvor
genannten Fall. Wie aus 7 ersichtlich stimmt die befohlene
Position, da die Einlern-Regelung durchgeführt ist, mit der Servomotor-Position überein.
Als Ergebnis der Messung der Bearbeitungsform des Werkstücks ist
jedoch herausgefunden worden, dass es, wie aus 8 zu
ersehen, einen Bearbeitungsfehler gibt. Wie insbesondere in 8(a) gezeigt ist der Schneiddruck niedrig,
und demzufolge ist das Werkstück
während
der Bewegung der Schneidkante des Werkzeugs zum Entfernen von dem
Werkstück
vor der Um-kehrung der Richtung (während eines Ansteigens des
Radius) weniger abgelenkt, was zu einer sehr kleinen Differenz zwischen
der befohlenen Position und der Werkstück-Position (Werkstück-Form)
führt.
Nach der Umkehrung der Richtung ist das Werkstück jedoch, wie in 8(b) gezeigt, da die Schneidkante des
Werkzeugs bewegt wird, um gegen das Werkstück (in der Richtung zum Verringern
des Radius) zu stossen, durch die Einwirkung des Schneiddrucks in
Richtung auf das Zentrum abgelenkt. Es ist ersichtlich, dass die
Bearbeitungsform, wie sie befohlen ist, infolge der Rückstellkraft
dieser Ablenkung nach der Bearbeitung selbst dann, wenn die Schneidkante
längs der befohlenen
Position bewegt wird, nicht gewonnen werden kann.
-
9 zeigt
gemessene Werte der befohlenen Position und der Werkstück-Position
im Falle des Ausbildens des Kolbenrings durch Bearbeitung mittels
Positionsdifferenz-Korrektur in Übereinstimmung mit
der vorliegenden Erfindung nach dem Ermitteln der Bewegungsdifferenz-Betragskorrektur
auf der Grundlage des Betrags der Differenz zwischen der befohlenen
Position und der Werkstück-Position
(d. h. des Betrags der Differenz, der in 8 gezeigt
ist), der sich aus dem Ausbilden es Kolbenrings durch Bearbeitung
mittels Einlern-Regelung ohne Totgangkorrektur nach dem Stand der
Technik noch Positionsdifferenz-Korrektur in Übereinstimmung mit der vorliegenden
Erfindung ergibt. In diesem Fall ist ersichtlich, dass die Position
des Werkstücks
beinahe mit der befohlenen Position übereinstimmt, was zeigt, dass
die Bearbeitungsgenauigkeit verbessert ist.
-
Nebenbei
bemerkt ist gemäß dem zuvor
beschriebenen Ausführungsbeispiel
der Betrag der Totgangkorrektur auch in der Bewegungsdifferenz-Betragskorrektur
enthalten, die durch die Positionsdifferenzkorrektur-Regeleinrichtung 9 gewonnen
ist. Das bedeutet, dass die Differenz zwischen der befohlenen Position
und der Werkstück-Position,
die sich aus einer Bearbeitung ohne Totgangkorrektur nach dem Stand
der Technik ergibt, beim Messen oder Abschätzen der Bewegungsdifferenz-Betragskorrektur für jede Bearbeitungsform
gemessen oder abgeschätzt
wird und die Bewegungsdifferenz-Betragskorrektur
auf der Grundlage des gemessenen oder abgeschätzten Werts bestimmt wird.
Dann wird beim tatsächlichen
Bearbeiten nur die Positionsdifferenz-Korrektur mittels der Positionsdifferenzkorrektur-Steuereinrichtung
ohne Totgangkorrektur nach dem Stand der Technik durchgeführt.
-
Wie
jedoch in 2 gezeigt wird der vorbestimmte
Betrag der Totgangkorrektur durch die numerische Steuereinrichtung 1 addiert,
wenn die Bewegungsrichtung umgekehrt ist. Demzufolge wird der Betrag
in dem Fall, in dem die Differenz zwischen der befohlenen Position
und der Werkstück-Position,
die sich aus der Bearbeitung durch Totgangkorrektur ergibt, wie
dies zuvor beschrieben wurde, gemessen (oder abgeschätzt), und
die Bewegungsdifferenz-Betragskorrektur wird durch die Positionsdifferenzkorrektur-Regeleinrichtung 9 auf
der Grundlage des gemessenen (oder abgeschätzten) Werts bestimmt, wobei
diese Bewegungsdifferenz-Betragskorrektur den Totgangkorrekturfehler
zur Zeit der Umkehrung der Bewegungsrichtung und die Differenz zwischen der
befohlenen Position und der Werkstück-Position repräsentiert,
die durch die Ablenkung des Werkstücks und die Verformung der
Maschine verursacht sind. Dann führt
die numerische Steuereinrichtung 1 beim tatsächlichen
Bearbeiten die Totgangkorrektur ähnlich
derjenigen beim Stand der Technik durch, und der Betrag der Korrektur,
der für
jede Bearbeitungsform vorbestimmt ist, wird durch die Positionsdifferenzkorrektur-Regeleinrichtung 9 angewendet.