[go: up one dir, main page]

DE69831203T2 - Verfahren zur korrektur von verschiebungsbefehlen und servosteuerungssystem, in dem verschiebungsbefehle korrigiert werden - Google Patents

Verfahren zur korrektur von verschiebungsbefehlen und servosteuerungssystem, in dem verschiebungsbefehle korrigiert werden Download PDF

Info

Publication number
DE69831203T2
DE69831203T2 DE69831203T DE69831203T DE69831203T2 DE 69831203 T2 DE69831203 T2 DE 69831203T2 DE 69831203 T DE69831203 T DE 69831203T DE 69831203 T DE69831203 T DE 69831203T DE 69831203 T2 DE69831203 T2 DE 69831203T2
Authority
DE
Germany
Prior art keywords
correction
command
amount
processing
value
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Lifetime
Application number
DE69831203T
Other languages
English (en)
Other versions
DE69831203D1 (de
Inventor
Kazuomi Kamoto-gun MAEDA
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fanuc Corp
Original Assignee
Fanuc Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fanuc Corp filed Critical Fanuc Corp
Application granted granted Critical
Publication of DE69831203D1 publication Critical patent/DE69831203D1/de
Publication of DE69831203T2 publication Critical patent/DE69831203T2/de
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/18Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form
    • G05B19/404Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form characterised by control arrangements for compensation, e.g. for backlash, overshoot, tool offset, tool wear, temperature, machine construction errors, load, inertia
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/41Servomotor, servo controller till figures
    • G05B2219/41074Learn, calibrate at start for indetermined position, drive until movement
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/41Servomotor, servo controller till figures
    • G05B2219/41077Self tuning, test run, detect, compute optimal backlash, deformation compensation
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/41Servomotor, servo controller till figures
    • G05B2219/41078Backlash acceleration compensation when inversing, reversing direction

Landscapes

  • Engineering & Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Manufacturing & Machinery (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Automation & Control Theory (AREA)
  • Numerical Control (AREA)
  • Control Of Position Or Direction (AREA)

Description

  • 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.

Claims (10)

  1. Verfahren zum Korrigieren von Bewegungsbefehlen, das Schritte umfasst zum (a) Feststellen eines Betrags einer Differenz zwischen einer befohlenen Position aus einer numerischen Steuereinrichtung und einer tatsächlichen Position, die zur Zeit einer Umkehrung einer Bewegungssrichtung vor einer Bearbeitung eintritt, (b) Überwachen, ob ein Vorzeichen des Bewegungsbefehls umgekehrt wird oder nicht, während die Bearbeitung im Gange ist, auf der Grundlage eines Bearbeitungsprogramms, (c) Korrigieren eines Bewegungsbefehlswerts durch Addieren des Betrags der Differenz, der in Schritt (a) festgestellt wurde, zu dem Bewegungsbefehl, wenn die Umkehrung des Vorzeichens des Bewegungsbefehls erfasst ist, und Aufaddieren des Betrags der Korrektur, (d) Durchführen der Bearbeitung auf der Grundlage des Bewegungsbefehlswerts, der in Schritt (c) korrigiert wurde, und (e) Ausgeben eines Werts, der sich aus dem Umkehren eines Vorzeichen des aufaddierten Werts als der Bewegungsbefehl am Ende der Bearbeitung ergibt, um dadurch den Bewegungsbefehl aufzuheben, der zusätzlich zu einem Positionsbefehl von der numerischen Steuereinrichtung ausgegeben ist, welches Verfahren gekennzeichnet ist durch ein Bearbeitungsprogramm, das ein wiederholtes Bearbeiten unter den gleichen Bedingungen enthält, wodurch der Bewegungsbefehlswert weiter durch Addieren auch eines Korrekturwerts, der durch Einlernsteuerung gewonnen ist, zu dem Bewegungsbefehlswert korrigiert wird, der in Schritt (c) korrigiert wurde.
  2. Verfahren zum Korrigieren von Bewegungsbefehlen nach Anspruch 1, wobei das Bearbeitungsprogramm ein Bearbeiten eines Werkstücks in eine Vielzahl von Bearbeitungsformen enthält, die derart unterteilt sind, dass in Schritt (a) der Betrag der Differenz für jede Bearbeitungsform festgestellt wird und der Betrag der Differenz, der jeder Bearbeitungsform entspricht, in Schritt (c) zu dem Bewegungsbefehl für jede Bearbeitungsform addiert wird.
  3. Verfahren zum Korrigieren von Bewegungsbefehlen nach Anspruch 1 oder 2, wobei ein Korrigieren des Bewegungsbefehls in Schritt (c) jedesmal dann, wenn der Bewegungsbefehl ausgegeben wird, durch Wiederholen einer vorbestimmten Anzahl von Malen der Operation zum Addieren eines Korrekturwerts zu dem Bewegungsbefehl vorgenommen wird, welcher Korrekturwert für jede Operation entsprechend dem Betrag der Differenz vorbestimmt ist, die in Schritt (c) und durch ein vorbestimmtes Verteilungsmuster bestimmt ist.
  4. Verfahren zum Korrigieren von Bewegungsbefehlen nach einem der vorhergehenden Ansprüche, wobei der Betrag der Differenz in Schritt (a) durch Versuchsbearbeitung gewonnen wird.
  5. Verfahren zum Korrigieren von Bewegungsbefehlen nach einem der Ansprüche 1 bis 3, wobei der Betrag der Differenz in Schritt (a) durch Abschätzung in Anbetracht des Totgangs und der Abweichung eines Werkstücks durch die Einwirkung des Drucks eines Schneidwerkzeugs auf das Werkstück gewonnen wird.
  6. Servosteuersystem, in dem ein Bewegungsbefehl korrigiert wird, das umfasst: eine numerische Steuereinrichtung (1) zum Ausgeben eines Bewegungsbefehls, einen Servomotor (5), der einen Positions/Geschwindigkeits-Detektor (6) hat, zum Antreiben eines angetriebenen Körpers, wie ein Werkzeug oder ein Tisch (8), einen Servoverstärker (4), der einen Stromdetektor hat, zum Regeln des Servomotors (5), eine Positions-/Geschwindigkeits-/Strom-Regelungsschaltung (3) zum Regeln des Servoverstärkers (4) durch Feststellen eines Geschwindigkeitsbefehls aus einer positionsmäßigen Abweichung, die eine Differenz zwischen einem Positions-Rückkopplungssignal, das von dem Positions/Geschwindigkeits-Detektor (6) des Servomotors (5) ausgegeben ist, und einem Bewegungsbefehl von der numerischen Steuereinrichtung (1) repräsentiert, Feststellen eines Drehmomentbefehls durch Geschwindigkeits-Schleifenregelung, die auf der Grundlage des Geschwindigkeitsbefehls und eines Betrags eines Geschwindigkeits-Rückkopplungssignals von dem Positions/Geschwindigkeits-Detektor (6) durchgeführt wird, und Durchführen einer Stromschleifenregelungs-Verabeitung auf der Grundlage des Drehmomentbefehls und eines Rückkopplungswerts eines Treiberstroms, der durch einen Strom-Detektor erfasst ist, der in dem Servoverstärker (4) vorgesehen ist, und ein Positionsdifferenzkorrektur-Regelungsmittel (9) zum Empfangen des Bewegungsbefehls von der numerischen Steuereinrichtung (1), während ein Positionsdifferenz-Korrekturwert ausgegeben wird, der für die Korrektur der positionsmäßigen Abweichung erforderlich ist, wobei das Positionsdifferenzkorrektur-Regelungsmittel (9) enthält: ein Vorzeichenumkehr-Überwachungsmittel zum Überwachen, ob ein Vorzeichen des Bewegungsbefehls, der für dem gegenwärtigen Prozess eingegeben ist, verschieden von einem Vorzeichen des Bewegungsbefehls ist oder nicht, der für den vorhergehenden Prozess eingegeben ist, ein Speichermittel zum Speichern eines vorbestimmten Positionsdifferenz-Korrekturwerts, der einer Bearbeitungsform entspricht, und ein Totalkorrekturbetrag-Speichermittel zum Speichern des Positionsdifferenz-Korrekturwerts, der jedesmal dann in dem Prozess des Bearbeitens aufaddiert wird, wenn der Positionsdifferenz-Korrekturwert von dem Speicher mittel abgeholt wird, und das Positionsdifferenzkorrektur-Regelungsmittel (9) den Positionsdifferenz-Korrekturwert, welcher der Bearbeitungsform entspricht, von dem Speichermittel abholt und dann den abgeholten Wert ausgibt, um ihn zu der Positionsabweichung zu addieren, wenn das Vorzeichenumkehr-Überwachungsmittel eine Umkehrung des Vorzeichens erfasst, und ein Wert, der sich aus dem Subtrahieren des addierten Korrekturwerts, der in dem Totalkorrekturbetrag-Speichermittel gespeichert ist, von der Positionsabweichung für den gegenwärtigen Prozess ergibt, als die Positionsabweichung gegeben ist, wenn das Bearbeiten beendet ist, um dadurch den Bewegungsbefehl aufzuheben, der zusätzlich zu dem Positionsbefehl von der numerischen Steuereinrichtung (1) ausgegeben ist, welches Servosteuersystem gekennzeichnet ist durch ein Einlernregelungsmittel (2), das in Abhängigkeit von einem Bearbeitungsprogramm betriebsfähig ist, das ein wiederholtes Bearbeiten unter den gleichen Bedingungen enthält, um den Bewegungsbefehlswert durch Addieren auch eines Korrekturwerts, der durch eine Einlernregelung gewonnen ist, zu dem Positionsabweichungswert, der durch das Positionsdifferenzkorrektur-Regelungsmittel (9) korrigiert ist, weiter zu korrigieren.
  7. Servosteuersystem, in dem ein Bewegungsbefehl korrigiert wird, nach Anspruch 6, wobei das Einlernregelungsmittel (2) aus einem Verzögerungselementen-Speicher zum Speichern der Daten für einen Zyklus des Bewegungsbefehls, der um einen vorbestimmten Zyklus und mit dem gleichen Muster zu wiederholen ist, und einem Dynamikcharakteristik-Kompensationselement zusammengesetzt ist, wobei das Einlernregelungsmittel (2) derart ausgeführt ist, dass Daten, die sich aus dem Addieren der Daten, die in dem Verzögerungselementen-Speicher als die Daten gespeichert sind, die einem gegenwärtigen Zyklus um einen Zyklus vorhergehen, zu einer Positionsdifferenz ergeben, einem Filterungsprozess unterzogen und in dem Verzögerungsele menten-Speicher gespeichert werden, und die Daten, die um einen Zyklus vorhergehen, von dem Verzögerungselementen-Speicher ausgegeben werden, nachdem sie einer Kompensation der Phasenverzögerung eines Regelungsobjekt und einem Abfall des Übertragungsfaktors mit dem Dynamikcharacteristik-Kompensationselement unterzogen worden sind, und die Ausgangsdaten zu der Positionsabweichung addiert werden, um die Positionsabweichung weiter zu korrigieren.
  8. Servosteuersystem, in dem ein Bewegungsbefehl korrigiert wird, nach Anspruch 6 oder 7, wobei das Positionsdifferenzkorrektur-Regelungsmittel (9) ferner ein Mittel zum Bestimmen der Anzahl von Malen und das Muster enthält, durch das der Positionsdifferenz-Korrekturwert ausgegeben wird.
  9. Verfahren zum Korrigieren von Bewegungsbefehlen nach einem der Ansprüche 1 bis 5 und Durchführen einer Bearbeitung auf der Gundlage eines korrigierten Bewegungsbefehlswerts.
  10. Servosteuersystem nach einem der Ansprüche 6, 7 oder 8, das betriebsfähig ist, eine Bearbeitung auf der Grundlage eines korrigierten Bewegungsbefehls auszuführen.
DE69831203T 1997-03-21 1998-03-23 Verfahren zur korrektur von verschiebungsbefehlen und servosteuerungssystem, in dem verschiebungsbefehle korrigiert werden Expired - Lifetime DE69831203T2 (de)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP8753797 1997-03-21
JP08753797A JP3215067B2 (ja) 1997-03-21 1997-03-21 移動方向反転時の位置補正方法
PCT/JP1998/001242 WO1998043139A1 (en) 1997-03-21 1998-03-23 Shift command correction method and servo control system in which shift command is corrected

Publications (2)

Publication Number Publication Date
DE69831203D1 DE69831203D1 (de) 2005-09-22
DE69831203T2 true DE69831203T2 (de) 2006-02-09

Family

ID=13917743

Family Applications (1)

Application Number Title Priority Date Filing Date
DE69831203T Expired - Lifetime DE69831203T2 (de) 1997-03-21 1998-03-23 Verfahren zur korrektur von verschiebungsbefehlen und servosteuerungssystem, in dem verschiebungsbefehle korrigiert werden

Country Status (5)

Country Link
US (1) US6107771A (de)
EP (1) EP0913749B1 (de)
JP (1) JP3215067B2 (de)
DE (1) DE69831203T2 (de)
WO (1) WO1998043139A1 (de)

Families Citing this family (41)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000322105A (ja) * 1999-05-07 2000-11-24 Toshiba Mach Co Ltd サーボ制御装置およびサーボ制御装置の安定化調整方法
GB2354087B (en) * 1999-05-14 2003-04-02 Mitsubishi Electric Corp Servo control apparatus
JP2001166805A (ja) * 1999-12-13 2001-06-22 Toshiba Mach Co Ltd ハイブリッド制御方式の工作機械のロストモーション補正値設定方法およびその方法をコンピュータに実行させるプログラムを記録したコンピュータ読み取り可能な記録媒体および数値制御工作機械
KR20020049296A (ko) * 2000-12-19 2002-06-26 이계안 수치 제어장치의 드리프트 보정방법
JP4459463B2 (ja) * 2001-02-19 2010-04-28 株式会社ハーモニック・ドライブ・システムズ アクチュエータの位置決め誤差補正方法
WO2003005141A1 (en) * 2001-07-04 2003-01-16 Mitsubishi Denki Kabushiki Kaisha Servocontrol system and method of setting
US6686716B1 (en) * 2001-07-18 2004-02-03 Itt Manufacturing Enterprises, Inc. Tuned open-loop switched to closed-loop method for rapid point-to-point movement of a periodic motion control system
JP2004227163A (ja) * 2003-01-21 2004-08-12 Fanuc Ltd サーボ制御装置
JP3805309B2 (ja) * 2003-01-30 2006-08-02 ファナック株式会社 サーボモータ駆動制御装置
WO2004103649A1 (ja) * 2003-05-20 2004-12-02 Fujitsu Limited バックラッシュ補償制御方法、バックラッシュ補償制御装置およびバックラッシュ補償制御プログラム
JP3898686B2 (ja) * 2003-10-20 2007-03-28 ファナック株式会社 数値制御装置
JP2005279918A (ja) * 2004-03-04 2005-10-13 Seiko Epson Corp 微細構造素子の製造方法、この方法により製造された微細構造素子、空間光変調装置及びプロジェクタ
US7015670B2 (en) * 2004-05-14 2006-03-21 Moog Inc. Method of controlling a high-friction electro-mechanical servo-mechanism to minimize the power needed to hold a loaded output member
JP2005327191A (ja) * 2004-05-17 2005-11-24 Fanuc Ltd サーボ制御装置
JP4276187B2 (ja) * 2005-02-02 2009-06-10 ファナック株式会社 学習制御機能を有する数値制御装置
CN101115517A (zh) * 2005-02-23 2008-01-30 诺和诺德公司 用于使注射设备中的活塞杆回动的方法和设备
US20070241712A1 (en) * 2006-04-17 2007-10-18 Aim Controls, Inc. Method and apparatus for digital control of a motor
EP1857902A1 (de) * 2006-05-18 2007-11-21 Saab Ab Verfahren und Vorrichtung zur Regelung des Spieles
JP2008225533A (ja) * 2007-03-08 2008-09-25 Fanuc Ltd サーボ制御装置
CN101729001B (zh) * 2008-10-16 2012-05-30 鸿富锦精密工业(深圳)有限公司 马达的磁极角定位系统及方法
JP5512954B2 (ja) * 2008-10-31 2014-06-04 オークマ株式会社 数値制御機械の位置制御装置
JP5157861B2 (ja) * 2008-12-08 2013-03-06 日産自動車株式会社 電磁アクチュエータ装置および電磁アクチュエータの制御方法
JP4575508B1 (ja) * 2009-05-20 2010-11-04 ファナック株式会社 デュアル位置フィードバック制御を行うサーボ制御装置
JP2011134169A (ja) * 2009-12-25 2011-07-07 Mitsubishi Heavy Ind Ltd 制御パラメータ調整方法及び調整装置
JP5609214B2 (ja) * 2010-04-02 2014-10-22 セイコーエプソン株式会社 プロジェクターおよびその制御方法
US8251484B2 (en) 2010-05-14 2012-08-28 Xerox Corporation Method and system for measuring and compensating for sensitivity and backlash in electrical motors that laterally move printheads in a continuous web inkjet printer
JP5111589B2 (ja) * 2010-10-27 2013-01-09 株式会社牧野フライス製作所 送り軸反転時の補正方法
JP5732289B2 (ja) * 2011-03-22 2015-06-10 オークマ株式会社 工作機械
JP5269158B2 (ja) 2011-09-01 2013-08-21 株式会社神戸製鋼所 制御方法及び制御装置
JP6207223B2 (ja) * 2013-05-01 2017-10-04 キヤノン株式会社 モータ駆動装置およびその制御方法
US9597817B2 (en) * 2014-10-15 2017-03-21 Usnr, Llc Electric veneer lathe
JP6193961B2 (ja) 2015-11-30 2017-09-06 ファナック株式会社 機械の送り軸の送りの滑らかさを最適化する機械学習装置および方法ならびに該機械学習装置を備えたモータ制御装置
JP6519457B2 (ja) * 2015-11-30 2019-05-29 オムロン株式会社 補正装置、補正装置の制御方法、情報処理プログラム、および記録媒体
JP6544219B2 (ja) * 2015-11-30 2019-07-17 オムロン株式会社 制御装置
GB201603283D0 (en) * 2016-02-25 2016-04-13 Johnson Electric Sa Method of reducing noise from a HVAC system
EP3819087A4 (de) * 2018-07-02 2021-08-18 Panasonic Intellectual Property Management Co., Ltd. Robotersteuerungsverfahren und robotersteuerungsvorrichtung
JP7022096B2 (ja) * 2019-03-28 2022-02-17 ファナック株式会社 サーボ制御装置
CN110187598A (zh) * 2019-06-16 2019-08-30 杜宗英 彩扩机相纸防跑偏型进纸驱动机构
CN111141922B (zh) * 2019-12-11 2024-01-16 上海仪电科学仪器股份有限公司 一种样品转换器以及样品位校偏方法
CN111459095B (zh) * 2020-04-08 2021-02-26 新代科技(苏州)有限公司 一种利用球杆仪消除数控机床加工换向纹路的方法
DE102021210092A1 (de) * 2021-09-13 2023-03-16 Siemens Healthcare Gmbh Dynamische Korrektur von verfahrrichtungsabhängigen Offsets

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4128794A (en) * 1977-10-11 1978-12-05 The United States Of America As Represented By The United States Department Of Energy Interferometric correction system for a numerically controlled machine
JPS54132090A (en) * 1978-04-03 1979-10-13 Fanuc Ltd Error correction system for numerical control
DE3133246C2 (de) * 1981-08-22 1984-12-20 Maschinenfabrik Gehring Gmbh & Co Kg, 7302 Ostfildern Elektrische Steuerungsvorrichtung für die anschlaglose Wegbegrenzung an Werkzeugmaschinen, insbesondere an Honmaschinen
JPS63148315A (ja) * 1986-12-12 1988-06-21 Fanuc Ltd サ−ボモ−タ制御装置
JPS63174848A (ja) * 1987-01-13 1988-07-19 Matsushita Electric Ind Co Ltd 位置決め制御装置
JP2703575B2 (ja) * 1988-09-30 1998-01-26 ファナック株式会社 サーボ制御装置
JP2531258B2 (ja) * 1989-03-14 1996-09-04 日本電気株式会社 バックラッシュ補正回路
JPH02307104A (ja) * 1989-05-23 1990-12-20 Fanuc Ltd リード加工データ作成方式
JP2709969B2 (ja) * 1989-12-12 1998-02-04 ファナック株式会社 サーボモータの制御方法
JP2813909B2 (ja) * 1989-12-28 1998-10-22 東芝機械株式会社 数値制御装置のバックラッシュ補正方式
JPH0436807A (ja) * 1990-05-31 1992-02-06 Okuma Mach Works Ltd バックラッシュ補正機能を有する数値制御装置
JPH0667716A (ja) * 1992-08-19 1994-03-11 Mitsubishi Electric Corp 数値制御装置並びに数値制御方法
KR960013170B1 (ko) * 1992-12-03 1996-09-30 미쯔시다덴기산교 가부시기가이샤 바이트이동식 절삭장치
US5329215A (en) * 1993-02-25 1994-07-12 Ohio Electronic Engravers, Inc. Apparatus and method for driving a leadscrew
JP2919754B2 (ja) * 1994-09-26 1999-07-19 オークマ株式会社 球面又は円弧面加工時におけるバックラッシュ計測補正装置
JP3129622B2 (ja) * 1994-12-26 2001-01-31 ファナック株式会社 フルクローズド・ループ方式における象限突起補正方法
JP3426779B2 (ja) * 1995-03-27 2003-07-14 東芝機械株式会社 数値制御工作機械のバックラッシ補正装置

Also Published As

Publication number Publication date
JPH10268916A (ja) 1998-10-09
WO1998043139A1 (en) 1998-10-01
JP3215067B2 (ja) 2001-10-02
EP0913749A1 (de) 1999-05-06
US6107771A (en) 2000-08-22
EP0913749A4 (de) 2004-03-17
EP0913749B1 (de) 2005-08-17
DE69831203D1 (de) 2005-09-22

Similar Documents

Publication Publication Date Title
DE69831203T2 (de) Verfahren zur korrektur von verschiebungsbefehlen und servosteuerungssystem, in dem verschiebungsbefehle korrigiert werden
DE69025321T2 (de) Verfahren zur steuerung eines servomotors
DE68919801T2 (de) Verfahren zur kollisionsermittlung von beweglichen, mittels servomotoren angetriebenen gegenständen.
DE69232317T2 (de) Numerische Steuerungseinheit
DE69026192T2 (de) Gleitende moderegelungsverfahren mit kompensationsfunktion mit mitkopplung
EP0527192B1 (de) Verfahren zur steuerung der umlauf-bahnbewegungen der drückrolle einer drückmaschine und drückmaschine zur durchführung des verfahrens
DE69419819T2 (de) Gerät zum Bewegen eines Objektes
DE3886138T2 (de) Numerisch gesteuerte Werkzeugmaschine.
DE102017001783B4 (de) Numerische Steuervorrichtung, die eine Erhöhung der Anzahl Analyseziffern eines Programmbefehls ermöglicht
DE112011101682B4 (de) Motorsteuervorrichtung
DE3750020T2 (de) Numerische Vorschubeinrichtung für eine Werkzeugmaschine.
DE102018002566A1 (de) Steuervorrichtung für eine Osziilationschneiden durchführende Werkzeugmaschine
WO2007090871A1 (de) Vorrichtung und verfahren zum bearbeiten von kegelrädern im teilenden verfahren mit kompletter teilungsfehlerkompensation
DE19882982B3 (de) Synchronsteuereinrichtung
DE102007013952A1 (de) Servomotor-Steuerungsverfahren
DE112017001162B4 (de) Servosteuerungsvorrichtung
DE102015013283B4 (de) Vorrichtung und Verfahren zum Steuern einer Werkzeugmaschine, um einen synchronisierten Betrieb einer Spindelachse und Vorschubachse zu steuern
DE3789228T2 (de) Regelanordnung mit servolenkung.
DE102011104445A1 (de) Numerische Steuerung für eine Werkzeugmaschine mit einer Funktion zur Geschwindigkeitssteuerung einer Bogenführung
DE68917754T2 (de) Numerisch gesteuerte Einrichtung mit Kompensierung für toten Gang.
DE102016101076B4 (de) Thermische Verschiebungskorrekturvorrichtung für eine Werkzeugmaschine
DE102017008879A1 (de) Numerische Steuerung
DE1806916A1 (de) Verfahren zum UEberpruefen der Abmessungen eines von einer numerisch gesteuerten und geregelten Werkzeugmaschine bearbeiteten Werkstuecks und zum Nachbearbeiten des Werkstuecks mit Hilfe derselben Maschine und eine Einrichtung zur Ausfuehrung des Verfahrens
WO2022022963A1 (de) Herstellung durch kegelsegmente bestimmbarer flächen mittels einer werkzeugmaschine
DE102015013634A1 (de) Numerische Steuervorrichtung

Legal Events

Date Code Title Description
8364 No opposition during term of opposition