DE102010060177B4 - Servomotorsteuersystem für hochpräzise Hochgeschwindigkeits-Oszillationsbewegungen - Google Patents

Servomotorsteuersystem für hochpräzise Hochgeschwindigkeits-Oszillationsbewegungen Download PDF

Info

Publication number
DE102010060177B4
DE102010060177B4 DE102010060177.2A DE102010060177A DE102010060177B4 DE 102010060177 B4 DE102010060177 B4 DE 102010060177B4 DE 102010060177 A DE102010060177 A DE 102010060177A DE 102010060177 B4 DE102010060177 B4 DE 102010060177B4
Authority
DE
Germany
Prior art keywords
reference angle
servomotor
difference
position difference
control unit
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.)
Active
Application number
DE102010060177.2A
Other languages
English (en)
Other versions
DE102010060177A1 (de
Inventor
Tadashi Okita
Yukio Toyozawa
Naoto Sonoda
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
Publication of DE102010060177A1 publication Critical patent/DE102010060177A1/de
Application granted granted Critical
Publication of DE102010060177B4 publication Critical patent/DE102010060177B4/de
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

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/19Numerical 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 positioning or contouring control systems, e.g. to control position from one programmed point to another or to control movement along a programmed continuous path
    • 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/41152Adaptive filter
    • 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/42Servomotor, servo controller kind till VSS
    • G05B2219/42152Learn, self, auto tuning, calibrating, environment adaptation, repetition

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)
  • Control Of Electric Motors In General (AREA)

Abstract

Servomotorsteuersystem mit einer Steuereinheit (20) und einer Servosteuereinheit (40), die einen Servomotor steuert, in einer Werkzeugmaschine oder einer Industriemaschine, wobei der Servomotor einen angetriebenen Körper (6) so antreibt, dass er zyklisch mit hoher Geschwindigkeit oszilliert, wobei: die Steuereinheit (20) Folgendes umfasst: eine Bezugswinkel-Berechnungseinrichtung (24), mit der ein Bezugswinkel (θ) berechnet wird, und eine Oszillierbefehl-Berechnungseinrichtung (22), mit der ein Befehl (Pc) für die zyklische Oszillation entsprechend dem Bezugswinkel (θ) und einem Maschinenzustand berechnet wird; wobei die Servosteuereinheit (40) Folgendes umfasst: eine Positionsermittlungseinrichtung, mit der eine Position (Pf) des Servomotors ermittelt wird, eine Positionsdifferenz-Berechnungseinrichtung (41), mit der für jeden befohlenen Ausgabezyklus (T) eine Positionsdifferenz (ε) zwischen einer Position (Pc) des Oszillationsbefehls und der ermittelten Position (Pf) des Servomotors berechnet wird, und wobei eine lernende Steuereinrichtung (72) auf Basis von Bezugswinkel (θ), Oszillationsbefehl (Pc) und Positionsdifferenz (ε) ausgebildet ist, um eine lernende Steuerung durchzuführen, wobei die von der Positionsdifferenz-Berechnungseinrichtung (41) berechnete Positionsdifferenz (ε) von der lernenden Steuereinrichtung (72) korrigiert wird und die korrigierte Positionsdifferenz (ε') zum Steuern des Servomotorantriebs verwendet wird, wobei die lernende Steuereinrichtung (72) Folgendes umfasst: eine erste Umwandlungseinrichtung (42), mit der die in jedem befohlenen Ausgabezyklus (T) erhaltene Positionsdifferenz (ε) in eine Differenz für jeden Bezugswinkel (θ) umgewandelt wird, eine Korrekturberechnungseinrichtung (43, 44), die einen Korrekturbetrag in Bezug auf den Bezugswinkel (θ) aus der umgewandelten Differenz für jeden Bezugswinkel (θ) berechnet, eine Korrekturspeichereinrichtung (45), die den berechneten Korrekturbetrag für mindestens einen Zyklus des ...

Description

  • HINTERGRUND DER ERFINDUNG
  • 1. Gebiet der Erfindung
  • Die Erfindung betrifft ein Servomotorsteuersystem und, genauer gesagt, ein Servomotorsteuersystem, mit dem eine Hochgeschwindigkeits-Oszillationsbewegung hochpräzise ausgeführt werden kann.
  • 2. Beschreibung des verwandten Standes der Technik
  • Für Koordinatenschleifmaschinen und dergleichen benötigt man ein Steuersystem, mit dem eine hochpräzise Bearbeitung möglich ist, während ein Schleifstein eine Hochgeschwindigkeits-Oszillationsbewegung ausführt. Insbesondere benötigt man einen hochpräzisen oberen und unteren Umkehrpunkt (Totpunkt) bei vertikaler Oszillation.
  • Bei einer Koordinatenschleifmaschine handelt es sich um eine Werkzeugmaschine, die Feinschleifen an den Seiten von Bohrschablonen, Abgratmatrizen, Lehren und anderen Werkzeugen für Maschinen und an inneren Oberflächen von Löchern ausführt. Siehe 13: Eine Koordinatenschleifmaschine schleift die Seite 4 von einem Werkstück 2, das sich auf einem Tisch (nicht gezeigt) befindet, mit dem äußeren Umfang eines zylindrischen Schleifsteins 6. Dieser rotiert um seine Achse, d. h. der Rotationsachse 7, und wird gleichzeitig vertikal in Richtung der Rotationsachse 7 oszilliert.
  • Bei Verwendung eines herkömmlichen Steuersystems für eine Koordinatenschleifmaschine erhöht man die Präzision, indem Befehle derart korrigiert werden, dass Nachführungsverzögerungen bei der Servosteuerung unterdrückt werden. Genauer gesagt, wird die Präzision des oberen Totpunkts und des unteren Totpunkts erhöht, indem ein Oszillationsbefehl mit dem Betrieb des Servo verglichen und eine Befehlsamplitude allmählich erhöht wird (siehe JP H04-289 903A und JP H03-31 906A ).
  • Bei diesem Verfahren benötigt man aber eine lange Nachführzeit zum Erlangen der gewünschten Präzision. Ein anderes Problem tritt mit der Stabilität auf: Aufgrund einer Veränderung der Bearbeitungsbedingungen kann eine Abweichung auftreten, z. B. wenn die Amplitude verändert wird.
  • Ein bekanntes Verfahren, das hochpräzises Nachführen bei Hochgeschwindigkeit als Reaktion auf einen Wiederholungsbefehl erzielt, ist die lernende Steuerung (repetitive Steuerung, engl. repetitive control). Es werden zwei Typen der lernenden Steuerung verwendet: Ein Zeitsynchronisierungsverfahren, bei dem das Lernen in Bezug auf die Zeit erfolgt (siehe JP H03-175 502A ), und ein Winkelsynchronisierungsverfahren, bei dem das Lernen in Bezug auf einen Winkel erfolgt (siehe JP 2004-280 772 A ).
  • Bei der oben beschriebenen, auf dem Zeitsynchronisierungsverfahren basierenden lernenden Steuerung wird in einer Steuereinrichtung ein Verzögerungsspeicher bereitgestellt, dessen Länge gleich der Länge eines befohlenen Wiederholungszyklus ist. Daher kann dieser Typ der lernenden Steuerung nicht verwendet werden, wenn sich der befohlene Wiederholungszyklus dynamisch ändert. Bei der oben beschriebenen, auf dem Winkelsynchronisierungsverfahren basierenden lernenden Steuerung benötigt man einen Bezugswinkel, der sich in Synchronisation mit einem befohlenen Wiederholungsarbeitsschritt monoton erhöht. Daher kann dieser Typ der lernenden Steuerung nicht verwendet werden, wenn kein Bezugswinkel angegeben ist.
  • Bei einer Hochgeschwindigkeits-Oszillationsbewegung, wie sie beispielsweise eine Koordinatenschleifmaschine ausführt, verändert sich ein befohlener Wiederholungszyklus dynamisch je nach dem Bearbeitungszustand (Maschinenzustand). Es gibt keinen Bezugswinkel, der mit einem befohlenen Wiederholungsschritt synchronisiert sein sollte. Deshalb ist es unmöglich, einen Bezugswinkel bei der Servosteuerung zu verwenden. Folglich kann weder die auf dem Zeitsynchronisierungsverfahren basierende lernende Steuerung noch die auf dem Winkelsynchronisierungsverfahren basierende lernende Steuerung verwendet werden.
  • Die US 2004/0 145 333 A1 , welche den nächstliegenden Stand der Technik darstellt, zeigt eine Servomotorsteuerung mit einer lernenden Steuerung, bei der eine Positionsabweichung durch Korrekturdaten angepasst wird, um dynamische Eigenschaften zu kompensieren.
  • Die US 6 677 722 B2 zeigt eine Servomotorsteuerung, bei der die Steuerung basierend auf einer erfassten mechanischen Position und einer Transferfunktion berechnet wird.
  • ZUSAMMENFASSUNG DER ERFINDUNG
  • Aufgabe der Erfindung ist es, ein Servomotorsteuersystem zu schaffen, bei dem eine auf einem Winkelsynchronisierungsverfahren basierende lernende Steuerung bei einer hochpräzisen Hochgeschwindigkeits-Oszillationsbewegung verwendet werden kann und das Servomotorsteuerungssystem eine erhöhte Betriebssicherheit aufweist.
  • Die Erfindung stellt ein Servomotorsteuersystem mit den Merkmalen der Ansprüche 1, 2, 3 oder 4 bereit. Vorteilhafte Weiterbildungen der Erfindung ergeben sich aus dem abhängigen Anspruch 5.
  • KURZE BESCHREIBUNG DER ZEICHNUNGEN
  • Die Zwecke und Vorteile der Erfindung, einschließlich der vorstehend beschriebenen, werden anhand der beigefügten Zeichnungen in Verbindung mit der Beschreibung der nachstehend beschriebenen Ausführungsformen deutlich. Es zeigt/zeigen:
  • 1: ein Blockdiagramm von einem Servomotorsteuersystem zur allgemeinen Erläuterung der Erfindung;
  • 2 ein Blockdiagramm von eines Servomotorsteuersystems zur allgemeinen Erläuterung der Erfindung;
  • 3 ein Fließschema, das die von dem Servomotorsteuersystem in 2 ausgeführte Verarbeitung für die lernende Steuerung bei einem Winkelsynchronisierungsverfahren verdeutlicht;
  • 4, dass es wichtig ist, Nachlaufen bei einer Oszillationsbewegung zu verhindern;
  • 5 ein Blockdiagramm, das eine erste Ausführungsform eines erfindungsgemäßen Servomotorsteuersystems veranschaulicht;
  • 6A und 6B, dass das Nachlaufen (ein Betrag, um den ein oberer Totpunkt und ein unterer Totpunkt über- bzw. unterschritten werden) kleiner wird, wenn die Ausführung eines Sinuswellenbefehls beginnt;
  • 7 ein Blockdiagramm, das eine zweite Ausführungsform eines erfindungsgemäßen Servomotorsteuersystems veranschaulicht;
  • 8A bis 8C, dass das Nachlaufen (ein Betrag, um den ein oberer Totpunkt und ein unterer Totpunkt über- bzw. unterschritten werden) kleiner wird, wenn man eine befohlene Frequenz in einem Sinuswellenbefehl von 2 Hz auf 1 Hz verringert;
  • 9 ein Blockdiagramm, das eine dritte Ausführungsform eines erfindungsgemäßen Servomotorsteuersystems veranschaulicht;
  • 10A bis 10C, dass der Stoß kleiner wird, wenn die Ausführung eines Sinuswellenbefehls beginnt;
  • 11 ein Blockdiagramm von einer vierten Ausführungsform eines erfindungsgemäßen Servomotorsteuersystems;
  • 12A und 12B, dass der Stoß kleiner wird, wenn der Sinuswellenbefehl endet;
  • 13 eine Koordinatenschleifmaschine.
  • EINGEHENDE BESCHREIBUNG DER BEVORZUGTEN AUSFÜHRUNGSFORMEN
  • 1 zeigt ein Blockdiagramm, das ein Servomotorsteuersystem zur allgemeinen Erläuterung der Erfindung veranschaulicht. Das Servomotorsteuersystem 10 enthält eine numerische Steuereinheit 20, eine Servosteuereinheit 40 und einen Servomotor 80 und steuert eine Werkzeugmaschine oder eine Industriemaschine.
  • Die numerische Steuereinheit 20 berechnet einen Positionsbefehl Pc und gibt diesen an die Servosteuereinheit 40 aus. Der Servomotor 80 hat einen Positionsdetektor 82, mit dem die Rotationsposition des Motors ermittelt wird. Die vom Positionsdetektor 82 ermittelte Positionsinformation wird zur Servosteuereinheit 40 als Positionsfeedback Pf zurück gesendet. Die Servosteuereinheit 40 steuert den Antrieb des Servomotors 80 anhand des Positionsbefehls Pc und des Positionsfeedbacks Pf. Das Servomotorsteuersystem 10 hat eine Einrichtung, mit der eine lernende Steuerung, die auf einem Winkelsynchronisierungsverfahren beruht, bei einer Hochgeschwindigkeits-Oszillationsbewegung verwendet werden kann, wie sie zum Beispiel eine später noch beschriebenen Koordinatenschleifmaschine ausführt.
  • Zunächst wird ein Beispiel eines Servomotorsteuersystems anhand von 2 zur allgemeinen Erläuterung der Erfindung beschrieben. Diese Figur veranschaulicht ein Verfahren zum Anwenden der lernenden Steuerung, die auf einem Winkelsynchronisierungsverfahren basiert, auf einen Wiederholungsbefehl.
  • Die numerische Steuereinheit 20 berechnet einen Oszillationsbefehl F(t) in einer Oszillierbefehl-Berechnungseinrichtung 22 anhand von Formbedingungen. Ein beispielhafter Oszillationsbefehl ist F(t) = A·cos(ωt) (der Koeffizient A ist eine Amplitude). Die numerische Steuereinheit 20 gibt den Positionsbefehl Pc an die Servosteuereinheit 40 in Intervallen eines befohlenen Ausgabezyklus T gemäß dem Oszillationsbefehl F(t) aus. Die numerische Steuereinheit 20 berechnet zudem in einer Bezugswinkel-Berechnungseinrichtung 24 einen Bezugswinkel θ (= ωt) in jedem befohlenen Ausgabezyklus aus der Zeit t (= nT, wobei n = 1, 2, 3, ...) und einer Winkelgeschwindigkeit ω, bei der es sich um einen Bearbeitungszustand handelt. Der Oszillationsbefehl F(t) wird aus dem Bezugswinkel θ (= ωt) berechnet.
  • Die Servosteuereinheit 40 hat eine Funktion zum Durchführen einer lernenden Steuerung anhand des Positionsbefehls Pc, des Positionsfeedbacks Pf, das die gegenwärtige Position des Servomotors angibt, und des Bezugswinkels θ (= ωt), d. h. des Winkels, der als Bezug verwendet wird. Im Fall einer Sinuswelle kann die Winkelgeschwindigkeit ω auch aus einer Tangential-geschwindigkeit und der Amplitude als Bearbeitungszustand erhalten werden. Der Oszillationsbefehl F(t) kann eine Dreieckwelle anstelle der Sinuswelle vorgeben.
  • Der Positionsdetektor 82 ist an dem Servomotor 80 derart angebracht, dass er die Position des Servomotors 80 ermittelt. Eine Berechnungseinrichtung 41 subtrahiert den Positionsfeedback Pf, der von dem Positionsdetektor 82 gesendet wird, von dem Positionsbefehl Pc, der von der numerischen Steuerung ausgegeben wird, und erhält eine Positionsdifferenz ε. Eine Berechnungseinrichtung 48 addiert den Korrekturbetrag, der von einer ersten, später noch beschriebenen, lernenden Steuereinrichtung 70 gesendet wird, zu der Positionsdifferenz ε, so dass die Positionsdifferenz ε korrigiert wird. Die korrigierte Positionsdifferenz ε' wird mit einem Positionsverstärkungsfaktor Kp (49) multipliziert, so dass ein Geschwindigkeitsbefehl Vc erhalten wird. D. h. es erfolgt eine Positionsregelung.
  • Eine Geschwindigkeitssteuereinheit (nicht dargestellt) führt eine Geschwindigkeitsregelverarbeitung an dem erhaltenen Geschwindigkeitsbefehl Vc durch, so dass ein Strombefehl erhalten wird. Eine Stromsteuereinheit führt eine Stromregelverarbeitung anhand des erhaltenen Strombefehls und eines Stromfeedbacks durch, das von einem Stromdetektor (nicht dargestellt) erhalten wird und regelt den Antrieb des Servomotors 80 über einen Stromverstärker (nicht dargestellt).
  • Die Struktur und die Wirkung, die vorstehend beschrieben werden, sind identisch zu herkömmlichen Servosteuereinheiten, ausgenommen dass die Berechnungseinrichtung 48 den Korrekturbetrag, der von der ersten lernenden Steuereinrichtung 70 gesendet wird, zu der Positionsdifferenz addiert.
  • Zusammen mit dem Positionsbefehl Pc sendet die numerische Steuereinheit 20 an die Servosteuereinheit 40 den Bezugswinkel θ (= ωt), also den Bezug für die Berechnung des repetitiven Positionsbefehls Pc, so dass die Servosteuereinheit 40 die Winkelsynchronisation in Bezug auf den Bezugswinkel θ (= ωt) steuern kann.
  • Als nächstes wird die erste lernende Steuereinrichtung 70 beschrieben, die das Lernen bei dem Winkelsynchronisierungsverfahren steuert. Die erste lernende Steuereinrichtung 70 beinhaltet eine Zeit-Winkel-Umwandlungseinrichtung 42, eine Addiereinrichtung 43, einen Bandbegrenzungsfilter 44, einen Verzögerungsspeicher 45, eine Winkel-Zeit-Umwandlungseinrichtung 46 und einen Phasenvorschubfilter 47.
  • Die Zeit-Winkel-Umwandlungseinrichtung 42 ist die erste Umwandlungseinrichtung, die die Positionsdifferenz ε in jedem befohlenen Ausgabezyklus in die Positionsdifferenz ε durch jeden vorgeschriebenen Winkel umwandelt, wobei die Positionsdifferenz ε und der Bezugswinkel θ (= ωt) verwendet werden. Genauer gesagt, wandelt die erste Umwandlungseinrichtung die auf Zeit basierende Positionsdifferenz ε in die auf dem Winkel basierende Positionsdifferenz ε um. Die Addiereinrichtung 43 addiert die Positionsdifferenz ε bei einem vorgeschriebenen Winkel θ'(m) (m = 1, 2, 3, ..., mmax), die von der ersten Umwandlungseinrichtung (Zeit-Winkel-Umwandlungseinrichtung 42) erhalten wird, zu Korrekturdaten bei dem vorgeschriebenen Winkel θ'(m) in einem entsprechenden Musterzyklus, der zuvor im Verzögerungsspeicher 45 gespeichert wurde.
  • Der Bandbegrenzungsfilter 44 filtert die Ausgabe der Addiereinrichtung 43 und erhält Korrekturdaten (Korrekturdaten bei einem vorgeschriebenen Winkel), die an den Verzögerungsspeicher 45 ausgegeben werden, in dem Daten entsprechend der Bezugswinkel für 360 Grad gespeichert sind. Der Verzögerungsspeicher 45 speichert die von dem Bandbegrenzungsfilter 44 empfangenen Korrekturdaten.
  • Die Winkel-Zeit-Umwandlungseinrichtung 46 ist die zweite Umwandlungseinrichtung. Sie liest Korrekturdaten, die dem Bezugswinkel θ (= ωt) entsprechen, aus dem Verzögerungsspeicher 45 gemäß dem vorgeschriebenen Winkel θ'(m) und wandelt die gelesenen Korrekturdaten (auf dem Winkel basierenden Korrekturdaten) in auf Zeit basierende Korrekturdaten um. Der Phasenvorschubfilter 47 führt an den auf Zeit basierenden Korrekturdaten, die von der zweiten Umwandlungseinrichtung (Winkel-Zeit-Umwandlungseinrichtung 46) umgewandelt wurden, eine Kompensation hinsichtlich einer Phasenverzögerung durch, d. h. hinsichtlich des Parameters, der gesteuert werden soll. Die kompensierten Daten werden an die Berechnungseinrichtung 48 ausgegeben. Diese addiert die Positionsdifferenz ε zu dem Korrekturbetrag, der von der ersten lernenden Steuereinrichtung 70 gesendet wird.
  • Die erste Umwandlungseinrichtung (Zeit-Winkel-Umwandlungseinrichtung 42) und die zweite Umwandlungseinrichtung (Winkel-Zeit-Umwandlungseinrichtung 46) werden im Folgenden noch eingehend beschrieben.
  • Die erste Umwandlungseinrichtung (Zeit-Winkel-Umwandlungseinrichtung 42) wandelt die Positionsdifferenz ε, die für jeden befohlenen Ausgabezyklus (für jeden Positions- und Geschwindigkeitsregelverarbeitungszyklus) erhalten wird, in die Positionsdifferenz bei dem Bezugswinkel θ'(m) um. Der Verzögerungsspeicher 45 hat Speichersektionen, die jeweils die Korrekturdaten bei der Winkelposition θ'(m) speichern, also bei dem vorgeschriebenen Winkel, der erhalten wird durch Unterteilen von einem Musterzyklus, in dem ein wiederholter Arbeitsschritt ausgeführt wird, zum Beispiel eine wiederholt befohlene Bearbeitungsform. Ist ein Musterzyklus 2π und wird er an Intervallen ”d” unterteilt, hat der Verzögerungsspeicher 45 mindestens (2π/d) Speichersektionen. Nimmt man zum Beispiel (2π/d) als ”q”, hat der Verzögerungsspeicher 45 Speichersektionen, die Korrekturdaten bei Winkelpositionen θ'(m) von θ'(0) bis θ'(q – 1) (= 2π – d) in einem Muster speichern.
  • Die zweite Umwandlungseinrichtung (Winkel-Zeit-Umwandlungseinrichtung 46) erhält Korrekturdaten δ(n) zum Zeitpunkt der gegenwärtigen Abfrage, indem sie Korrekturdaten bei Bezugswinkeln θ'(m) und θ'(m + 1) vor und nach dem Bezugswinkel θ(n) gemäß den Bezugswinkeln θ(n), die in jedem befohlenen Ausgabezyklus erhalten werden, interpoliert. Die erhaltenen Korrekturdaten δ(n) sind Korrekturdaten zum Zeitpunkt der gegenwärtigen Abfrage (auf Zeit basierende Korrekturdaten).
  • Das Fließschema in 3 zeigt die Verarbeitung für die lernende Steuerung bei dem Winkelsynchronisierungsverfahren, die von dem Servomotorsteuersystem in 2 ausgeführt wird. Das Fließschema umfasst die folgenden Schritte:
  • [Schritt 100] Ein Maschinenzustand wird in der numerischen Steuereinheit eingestellt. Bei dieser Verarbeitung für die lernende Steuerung ist der Maschinenzustand die Winkelgeschwindigkeit ω.
  • [Schritt 102] Die numerische Steuereinheit berechnet den Bezugswinkel ωt für jeden befohlenen Ausgabezyklus T; ω ist eine Winkelgeschwindigkeit (ein Maschinenzustand) und ”t” ist eine verstrichene Zeit (t = n × T) (n = 1, 2, 3 ...,).
  • [Schritt 104] Die numerische Steuereinheit berechnet einen Oszillationsbefehl. Bei dieser Verarbeitung für die lernende Steuerung berechnet die numerische Steuereinheit cos(ωt).
  • [Schritt 106] Die numerische Steuereinheit gibt den Positionsbefehl Pc und den Bezugswinkel θ an die Servosteuereinheit aus.
  • [Schritt 108] Die Servosteuereinheit ermittelt die gegenwärtige Position des Servomotors anhand des Positionsfeedback Pf von dem Positionsdetektor, der am Servomotor angebracht ist.
  • [Schritt 110] Die Servosteuereinheit berechnet eine Differenz (Positionsdifferenz ε) zwischen dem Positionsbefehl Pc und dem Positionsfeedback Pf.
  • [Schritt 112] Die Servosteuereinheit führt eine erste Umwandlung (Umwandlung der auf Zeit basierenden Positionsdifferenz in die auf dem Winkel basierende Positionsdifferenz) je nach der Positionsdifferenz ε und dem Bezugswinkel θ durch.
  • [Schritt 114] Die Servosteuereinheit berechnet den Korrekturbetrag in der lernenden Steuerung.
  • [Schritt 116] Die Servosteuereinheit speichert den Korrekturbetrag für einen Zyklus.
  • [Schritt 118] Die Servosteuereinheit führt eine zweite Umwandlung (Umwandlung der auf dem Winkel basierenden Korrekturdaten in die auf Zeit basierenden Korrekturdaten) je nach dem Korrekturbetrag und dem Bezugswinkel θ durch.
  • [Schritt 120] Die Servosteuereinheit verarbeitet den Phasenvorschubfilter.
  • [Schritt 122] Die Servosteuereinheit addiert die Filterausgabe zu der Positionsdifferenz ε, so dass die Positionsdifferenz ε korrigiert wird.
  • [Schritt 124] Die Servosteuereinheit verwendet die korrigierte Positionsdifferenz ε' zum Regeln des Servomotors.
  • Eine erste Ausführungsform des erfindungsgemäßen Servomotorsteuersystems wird im Folgenden anhand von 5 beschrieben. Die Figur veranschaulicht eine Gegenmaßnahme gegen Nachlaufen, das entsteht, wenn eine Hochgeschwindigkeits-Oszillationsbewegung während der Verarbeitung für die lernende Steuerung in dem Winkelsynchronisierungsverfahren startet.
  • Wird eine lernende Steuerung in dem Winkelsynchronisierungsverfahren auf eine Hochgeschwindigkeits-Oszillationsbewegung angewendet, kann es zu Beginn der Oszillationsbewegung zu Nachlaufen kommen. Sogar wenn bei einer Koordinatenschleifmaschine oder dergleichen eine befohlene Amplitude am oberen oder unteren Totpunkt eines zylindrischen Schleifsteins 6 nur ein bisschen überschritten wird, kann dieser oder ein anderes Werkzeug aufgrund der Form des Werkstücks 2 beschädigt werden (siehe 4 und 13). 4 zeigt, dass es wichtig ist, Nachlaufen bei einer Oszillationsbewegung zu verhindern. Wenn zu Nachlaufen kommt, kollidiert ein Ende des zylindrischen Schleifsteins 6 mit einem Ende des Werkstücks 2, siehe 4.
  • Damit diese Art der Kollision verhindert wird, wird in der ersten Ausführungsform der Erfindung eine Einrichtung bereitgestellt, mit der ein optimaler Parameter für die lernende Steuerung vor der Bearbeitung des Werkstücks 2 bestimmt und eine Ausgabe Gx des Phasenvorschubfilters bei der lernenden Steuerung anhand eines Nachlaufbetrags zum Beginn der Oszillation eingestellt wird.
  • Siehe 5: Eine zweite lernende Steuereinrichtung 72 in dem dargestellten Servosteuersystem ist derart strukturiert, dass sie zu der ersten lernenden Steuereinrichtung 70 in dem Servosteuersystem in 2a einen Differentiator 50, einen Start-Entscheidungspfad 51, eine Nachlaufberechnungseinrichtung 52, einen Verstärkungsregler 53 und einen Multiplikator 54 hinzufügt.
  • Wenn in der zweiten lernenden Steuereinrichtung 72 erkannt wird, dass die Winkelgeschwindigkeit ω, die durch Differenzieren des Bezugswinkels θ durch den Differentiator 50 erhalten wird, nicht 0 wird, entscheidet der Start-Entscheidungspfad 51, dass eine Oszillationsbewegung begonnen hat. Die Nachlaufberechnungseinrichtung 52 findet den Positionsbefehl Pc und den Maximal- bzw. Minimalwert für das Positionsfeedback Pf in einem Zeitraum vom Start der Oszillationsbewegung bis der Bezugswinkel θ 360 Grad annimmt. Ist der Absolutwert des Maximal- bzw. Minimalwerts für das Positionsfeedback Pf größer als der Absolutwert des Positionsbefehls Pc, berechnet die Nachlaufberechnungseinrichtung 52 einen Nachlauf Ov, d. h. die Differenz zwischen diesen Absolutwerten. Der Verstärkungsregler 53 berechnet einen Verstärkungsregelwert je nach dem Nachlauf Ov. Der Multiplikator 54 multipliziert den Verstärkungsregelwert mit der Ausgabe Gx vom Phasenvorschubfilter 47 und erhält eine angepasste Ausgabe Gx'. Genauer gesagt, wird die Ausgabe Gx des Phasenvorschubfilters 47 durch die Berechnung, zum Beispiel in dem Ausdruck Gx' = (1 – α × Ov) × Gx, gemäß dem Nachlauf Ov verringert. Wenn Gx gleich oder größer als 0 ist und Ov gleich oder kleiner als 0 ist, ist in diesem Fall Ov gleich 0. Das Symbol α steht für eine Konstante, die zuvor vor Beginn der Bearbeitung als Parameter eingestellt wird.
  • Anhand der 6A und 6B wird im Folgenden beschrieben, dass ein Nachlaufen (ein Betrag, um den der obere Totpunkt und der untere Totpunkt über- bzw. unterschritten werden) zu Beginn der Oszillationsbewegung gemäß einem Sinuswellenbefehl kleiner wird.
  • 6A stellt den Fall dar, wenn keine Verstärkungsregelung durch den Verstärkungsregler 53 durchgeführt wird und somit die Ausgabe Gx 100% ist. 6B stellt den Fall dar, wenn eine Verstärkungsregelung durch den Verstärkungsregler 53 durchgeführt wird, so dass die Ausgabe Gx nach der Regelung auf 50% verringert ist. Zwar tritt Nachlaufen (ein Betrag, um den der obere Totpunkt und der untere Totpunkt über- bzw. unterschritten werden) auf, nachdem die Oszillationsbewegung begonnen hat, wie das Diagramm in 6A zeigt (wobei die Verstärkung nicht eingestellt wird), aber das Nachlaufen zu Beginn der Oszillationsbewegung wird durch Einstellen der Verstärkung kleiner, wie 6B zeigt.
  • Im Übrigen kommt es zu Nachlaufen, wenn die Verstärkung des Phasenvorschubfilters 47 bei einem Nachführvorgang während der lernenden Steuerung nicht richtig eingestellt ist.
  • Anhand von 7 wird als nächstes eine zweite Ausführungsform des erfindungsgemäßen Servomotorsteuersystems beschrieben. Die Figur veranschaulicht eine Gegenmaßnahme gegen Nachlaufen, das entsteht, wenn sich die Geschwindigkeit einer Hochgeschwindigkeits-Oszillationsbewegung während der Verarbeitung für die lernende Steuerung in dem Winkelsynchronisierungsverfahren verändert.
  • Wird eine lernende Steuerung in dem Winkelsynchronisierungsverfahren auf eine Hochgeschwindigkeits-Oszillationsbewegung angewendet, kann es zu Nachlaufen kommen, wenn sich die Geschwindigkeit der Oszillationsbewegung ändert. Dieses Nachlaufen muss aus demselben Grund verhindert werden, wie bei der ersten Ausführungsform (5). Genauer gesagt, kann die lernende Steuerung der Geschwindigkeitsänderung nicht folgen, wenn die Oszillationsbewegung sich von Hochgeschwindigkeit auf eine niedrige Geschwindigkeit ändert. Daraus folgt eine Überkompensation, die zu Nachlaufen führen kann
  • Siehe 7: Eine dritte lernende Steuereinrichtung 74 in dem dargestellten Servosteuersystem ist derart strukturiert, dass sie zu der ersten lernenden Steuereinrichtung 70 in dem Servosteuersystem in 2 den Differentiator 50, eine Geschwindigkeitsänderungsentscheidungseinrichtung 55, die Nachlaufberechnungseinrichtung 52, einen lernenden Regler für eine kompensierte Ausgabe 56 und einen Multiplikator 57 hinzufügt.
  • Zum Verhindern von Nachlaufen, weil sich die Geschwindigkeit der Oszillationsbewegung geändert hat, ermittelt in der dritten lernenden Steuereinrichtung 74 die Geschwindigkeitsänderungsentscheidungseinrichtung 55 einen Punkt, an dem sich die Geschwindigkeit geändert hat, aus der Winkelgeschwindigkeit ω, die durch Differenzieren des Bezugswinkels θ durch den Differentiator 50 erhalten wird. D. h., entdeckt die Geschwindigkeitsänderungsentscheidungseinrichtung 55 eine Veränderung der Winkelgeschwindigkeit ω, dann wird entschieden, dass sich die Geschwindigkeit der Oszillationsbewegung geändert hat. Die Nachlaufberechnungseinrichtung 52 findet den Positionsbefehl Pc in einem Zeitraum von dem Punkt, an dem sich die Oszillationsbewegung verändert hat, bis der Bezugswinkel θ 360 Grad annimmt und den Maximal- bzw. Minimalwert für das Positionsfeedback Pf. Ist der Absolutwert des Maximal- bzw. Minimalwerts für das Positionsfeedback Pf größer als der Absolutwert für den Positionsbefehl Pc, berechnet die Nachlaufberechnungseinrichtung 52 einen Nachlauf Ov, d. h. die Differenz zwischen diesen Absolutwerten. Der lernende Regler für eine kompensierte Ausgabe 56 berechnet einen Korrekturwert in der lernenden Steuerung entsprechend dem Nachlauf Ov. Genauer gesagt, wird die Ausgabekompensation Cm bei der lernenden Steuerung durch die Berechnung, zum Beispiel in dem Ausdruck Cm' = (1 – β × Ov) × Cm, gemäß dem Nachlauf Ov verringert. Wenn Cm gleich oder größer als 0 ist und Ov gleich oder kleiner als 0 ist, ist in diesem Fall Ov gleich 0. Das Symbol β steht für eine Konstante, die zuvor vor Beginn der Bearbeitung als Parameter eingestellt wird.
  • Die 8A bis 8C verdeutlichen, dass das Nachlaufen (ein Betrag, um den ein oberer Totpunkt und ein unterer Totpunkt über- bzw. unterschritten werden) kleiner wird, wenn man eine befohlene Frequenz in einem Sinuswellenbefehl von 2 Hz auf 1 Hz verringert. In 8A wird die Ausgabekompensation Cm bei der lernenden Steuerung nicht begrenzt, wenn die Geschwindigkeit kleiner wird. In 8B wird die Ausgabekompensation auf 50% begrenzt. In 8C wird die Ausgabekompensation auf 0% begrenzt.
  • Es stellte sich heraus, dass das Nachlaufen kleiner wird, wenn die befohlene Frequenz in einem Sinuswellenbefehl von 2 Hz auf 1 Hz verringert wird und die Ausgabekompensation Cm bei der lernenden Steuerung während der Verringerung begrenzt wird, siehe 8B und 8C. Wenn der Kompensationsbetrag bei 2 Hz in der lernenden Steuerung bei 1 Hz ausgegeben wird, kommt es zu Überkompensation und damit zu Nachlaufen.
  • Als nächstes wird anhand von 9 eine dritte Ausführungsform des erfindungsgemäßen Servomotorsteuersystems beschrieben. Die Figur veranschaulicht eine Gegenmaßnahme gegen einen Stoß, der entsteht, wenn eine Oszillationsbewegung während der Verarbeitung für die lernende Steuerung in dem Winkelsynchronisierungsverfahren beginnt.
  • Bei der lernenden Steuerung konvergiert die Positionsdifferenz schnell gegen 0. Deshalb wird je nach dem Ausmaß der Positionsdifferenz zu Beginn der lernenden Steuerung ein hoher Kompensationsbetrag ausgegeben. Dadurch befiehlt die Servosteuereinheit 40 zu Beginn der lernenden Steuerung entsprechend dem Kompensationsbetrag ein hohes Drehmoment. Dies kann zu mechanischem Stoß führen. Ein großer Stoß kann zu einer mechanischen Beschädigung führen und sollte deshalb verhindert werden.
  • Siehe 9: Das Servomotorsteuersystem enthält eine Einrichtung, mit der ein mechanischer Stoß verhindert wird, zu dem es kommt, wenn man die auf einem Winkelsynchronisierungsverfahren basierende, lernende Steuerung auf eine Hochgeschwindigkeits-Oszillationsbewegung anwendet. Eine vierte lernende Steuereinrichtung 76, die in diesem Servomotorsteuersystem bereitgestellt wird, ist derart strukturiert, dass sie zu der ersten lernenden Steuereinrichtung 70 in dem Servomotorsteuersystem in 2 den Differentiator 50, den Startentscheidungsabschnitt 51, einen Differenzmonitor 59, einen Startzeitpunktregler 60 und einen Schalter 61 hinzufügt. Die vierte lernende Steuereinrichtung 76 überwacht die Differenz beim Start einer Oszillationsbewegung und verzögert den Zeitpunkt, an dem das Lernen beginnt, bis die Differenz fast 0 ist.
  • Der Differentiator 50 differenziert den Bezugswinkel θ und erhält die Winkelgeschwindigkeit ω. Wenn erkannt wird, dass die vom Differentiator 50 berechnete Winkelgeschwindigkeit ω nicht 0 wird, entscheidet der Startentscheidungsabschnitt 51, dass eine Oszillationsbewegung begonnen hat. Dann beginnt der Differenzmonitor 59, den Wert der Differenz ε zu überwachen. Wenn der Differenzmonitor 59 erkennt, dass der Wert für die Differenz ε unverzüglich in einen vorgeschriebenen Bereich nahe 0 fällt, beginnt die Zeit-Winkel-Umrechnungseinrichtung 42 damit, die Positionsdifferenz ε für jeden befohlenen Ausgabezyklus in die Positionsdifferenz ε durch einen vorgeschriebenen Winkel umzuwandeln. Dann wird die lernende Steuerung gestartet.
  • Die 10A bis 10C verdeutlichen, dass der Stoß kleiner wird, wenn die Ausführung eines Sinuswellenbefehls beginnt. Siehe 10A: Gibt es keine Verzögerung beim Start des Lernens, tritt ein Stoß zu Beginn des Sinuswellenbefehls auf. Siehe 10B: Wird jedoch die Verzögerung beim Start des Lernens angepasst (das Lernen um 24 Grad verzögert), kann der Stoß beseitigt werden.
  • Als nächstes wird anhand der 11 eine vierte Ausführungsform des erfindungsgemäßen Servomotorsteuersystems veranschaulicht. Die Figur verdeutlicht eine Gegenmaßnahme gegen einen Stoß, zu dem es kommt, wenn die Oszillationsbewegung während der Verarbeitung für die lernende Steuerung in dem Winkelsynchronisierungsverfahren endet.
  • Wenn die lernende Steuerung in dem Winkelsynchronisierungsverfahren auf eine Hochgeschwindigkeits-Oszillationsbewegung angewendet wird, kommt es zu dem Problem, dass ein Stoß auftritt, wenn die Oszillationsbewegung stoppt. Das Servomotorsteuersystem in 11 umfasst Einrichtungen, mit denen dieser Stoß bei Abstoppen der Oszillationsbewegung verhindert werden kann.
  • Zum Abstoppen der Oszillationsbewegung lässt sich die Winkelgeschwindigkeit mit einer bestimmten Zeitkonstanten problemlos verringern. Wird die Oszillationsbewegung sofort gestoppt oder wird die lernende Steuerung schnell gestoppt, so dass die Oszillationsbewegung ausgesetzt und eine normale lineare Geschwindigkeitsreduktion durchgeführt wird, wird jedoch der Kompensationsbetrag plötzlich 0. Dadurch erhöht sich schnell die Positionsdifferenz und es kommt zu einem Stoß. Dieses Problem hängt von der Geschwindigkeit ab, bei der die Oszillationsbewegung gestoppt wird. Ein großer Stoß verursacht eine mechanische Beschädigung, wie oben beschrieben. Deshalb sollte er verhindert werden.
  • Das in 11 dargestellte Servomotorsteuersystem verwendet zum Verhindern des Stoßes die Motorgeschwindigkeit bei Abstoppen der Oszillationsbewegung und die Ausgabe des Phasenvorschubfilters zu diesem Zeitpunkt und reduziert die Ausgabe anhand der verringerten Geschwindigkeit des Motors. Eine fünfte lernende Steuereinheit 78, die in diesem Servomotorsteuersystem bereitgestellt wird, ist derart strukturiert, dass zu der ersten lernenden Steuereinheit 70 in dem Servomotorsteuersystem in 2 der Differentiator 50, ein Differentiator 58, eine Ende-Entscheidungseinrichtung 62 und eine Ausgabeeinrichtung für eine geschwindigkeitsabhängige Kompensation 63 hinzugefügt wird.
  • Über Beginn und Ende der Oszillationsbewegung wird anhand des Wertes für die Winkelgeschwindigkeit ω entschieden, der durch Differenzieren des Bezugswinkels θ (= ωt) durch den Differentiator erhalten wird. Gleichzeitig wird ebenfalls darüber entschieden, ob die lernende Steuerung ein- oder ausgeschaltet werden soll, und zwar anhand einer Veränderung in der Winkelgeschwindigkeit ω. Der Grund dafür ist, dass die lernende Steuerung in dem Winkelsynchronisierungsverfahren ausgeschaltet wird, wenn die Winkelgeschwindigkeit ω 0 wird.
  • Wird ermittelt, dass eine Winkelgeschwindigkeit ω 0 wird, dann wird entschieden, dass die Oszillationsbewegung und das Lernen beendet worden sind. Die Ausgabe Gx des Phasenvorschubfilters 47 zum Zeitpunkt der Beendigung der Oszillationsbewegung wird vorläufig unverändert beibehalten. Dann wird die Ausgabe (Gx') allmählich verringert abhängig von der Geschwindigkeit Ve, zum Beispiel unter Verwendung des Ausdrucks Gx' = Gx × Ve/Vo. In dem vorstehenden Ausdruck ist Vo die Motorgeschwindigkeit zum Zeitpunkt der Beendigung der Oszillationsbewegung. Ve kann erhalten werden, wenn der Differentiator 58 den Positionsfeedback Pf differenziert (siehe 11, 12A und 12B).
  • Die 12A und 12B verdeutlichen, dass ein Stoß kleiner wird, wenn der Sinuswellenbefehl endet. Siehe 12A: Die Winkelgeschwindigkeit ω wird 0 und die Ausgabe Gx wird ebenfalls 0, wenn die Geschwindigkeitsreduktion beginnt. Deshalb kommt es zu einem großen Stoß. Bei der lernenden Steuerung in dem Winkelsynchronisierungsverfahren dient der Bezugswinkel θ während des Lernens als Bezug. Bleibt also der Bezugswinkel θ unverändert, kann keine lernende Steuerung durchgeführt werden. Wird also die Ausgabe Gx des Phasenvorschubfilters 47 abrupt 0, kommt es zu einem Stoß. Wird Gx abhängig von der verringerten Geschwindigkeit angepasst, wird die Winkelgeschwindigkeit 0 bei Beginn der Reduktion. Deshalb tritt nur ein kleiner Stoß auf.

Claims (5)

  1. Servomotorsteuersystem mit einer Steuereinheit (20) und einer Servosteuereinheit (40), die einen Servomotor steuert, in einer Werkzeugmaschine oder einer Industriemaschine, wobei der Servomotor einen angetriebenen Körper (6) so antreibt, dass er zyklisch mit hoher Geschwindigkeit oszilliert, wobei: die Steuereinheit (20) Folgendes umfasst: eine Bezugswinkel-Berechnungseinrichtung (24), mit der ein Bezugswinkel (θ) berechnet wird, und eine Oszillierbefehl-Berechnungseinrichtung (22), mit der ein Befehl (Pc) für die zyklische Oszillation entsprechend dem Bezugswinkel (θ) und einem Maschinenzustand berechnet wird; wobei die Servosteuereinheit (40) Folgendes umfasst: eine Positionsermittlungseinrichtung, mit der eine Position (Pf) des Servomotors ermittelt wird, eine Positionsdifferenz-Berechnungseinrichtung (41), mit der für jeden befohlenen Ausgabezyklus (T) eine Positionsdifferenz (ε) zwischen einer Position (Pc) des Oszillationsbefehls und der ermittelten Position (Pf) des Servomotors berechnet wird, und wobei eine lernende Steuereinrichtung (72) auf Basis von Bezugswinkel (θ), Oszillationsbefehl (Pc) und Positionsdifferenz (ε) ausgebildet ist, um eine lernende Steuerung durchzuführen, wobei die von der Positionsdifferenz-Berechnungseinrichtung (41) berechnete Positionsdifferenz (ε) von der lernenden Steuereinrichtung (72) korrigiert wird und die korrigierte Positionsdifferenz (ε') zum Steuern des Servomotorantriebs verwendet wird, wobei die lernende Steuereinrichtung (72) Folgendes umfasst: eine erste Umwandlungseinrichtung (42), mit der die in jedem befohlenen Ausgabezyklus (T) erhaltene Positionsdifferenz (ε) in eine Differenz für jeden Bezugswinkel (θ) umgewandelt wird, eine Korrekturberechnungseinrichtung (43, 44), die einen Korrekturbetrag in Bezug auf den Bezugswinkel (θ) aus der umgewandelten Differenz für jeden Bezugswinkel (θ) berechnet, eine Korrekturspeichereinrichtung (45), die den berechneten Korrekturbetrag für mindestens einen Zyklus des angetriebenen Körpers (6) speichert, der mit hoher Geschwindigkeit zyklisch oszilliert, eine zweite Umwandlungseinrichtung (46), die den in der Korrekturspeichereinrichtung (45) gespeicherten Korrekturbetrag in einen Korrekturbetrag für jeden befohlenen Ausgabezyklus (T) umwandelt, und einen Phasenvorschubfilter (47), der die Phase für den Korrekturbetrag vorschiebt, der von der zweiten Umwandlungseinrichtung (46) erhalten wird, wobei die Servosteuereinheit (40) zudem Folgendes umfasst: eine Einrichtung, die aus dem Oszillationsbefehl (Pc) und der Position (Pf) des Servomotors einen Nachlaufbetrag zu Beginn der Oszillation berechnet, und eine Einrichtung, die eine Ausgabe des Phasenvorschubfilters (47) je nach dem Nachlaufbetrag anpasst.
  2. Servomotorsteuersystem mit einer Steuereinheit (20) und einer Servosteuereinheit (40), die einen Servomotor steuert, in einer Werkzeugmaschine oder einer Industriemaschine, wobei der Servomotor einen angetriebenen Körper (6) so antreibt, dass er zyklisch mit hoher Geschwindigkeit oszilliert, wobei: die Steuereinheit (20) Folgendes umfasst: eine Bezugswinkel-Berechnungseinrichtung (24), mit der ein Bezugswinkel (θ) berechnet wird, und eine Oszillierbefehl-Berechnungseinrichtung (22), mit der ein Befehl (Pc) für die zyklische Oszillation entsprechend dem Bezugswinkel (θ) und einem Maschinenzustand berechnet wird; wobei die Servosteuereinheit (40) Folgendes umfasst: eine Positionsermittlungseinrichtung, mit der eine Position (Pf) des Servomotors ermittelt wird, eine Positionsdifferenz-Berechnungseinrichtung (41), mit der für jeden befohlenen Ausgabezyklus (T) eine Positionsdifferenz (ε) zwischen einer Position (Pc) des Oszillationsbefehls und der ermittelten Position (Pf) des Servomotors berechnet wird, und wobei eine lernende Steuereinrichtung (74) auf Basis von Bezugswinkel (θ), Oszillationsbefehl (Pc) und Positionsdifferenz (ε) ausgebildet ist, um eine lernende Steuerung durchzuführen, wobei die von der Positionsdifferenz-Berechnungseinrichtung (41) berechnete Positionsdifferenz (ε) von der lernenden Steuereinrichtung (74) korrigiert wird und die korrigierte Positionsdifferenz (ε') zum Steuern des Servomotorantriebs verwendet wird, wobei die lernende Steuereinrichtung (74) Folgendes umfasst: eine erste Umwandlungseinrichtung (42), mit der die in jedem befohlenen Ausgabezyklus (T) erhaltene Positionsdifferenz (ε) in eine Differenz für jeden Bezugswinkel (θ) umgewandelt wird, eine Korrekturberechnungseinrichtung (43, 44), die einen Korrekturbetrag in Bezug auf den Bezugswinkel (θ) aus der umgewandelten Differenz für jeden Bezugswinkel (θ) berechnet, eine Korrekturspeichereinrichtung (45), die den berechneten Korrekturbetrag für mindestens einen Zyklus des angetriebenen Körpers (6) speichert, der mit hoher Geschwindigkeit zyklisch oszilliert, eine zweite Umwandlungseinrichtung (46), die den in der Korrekturspeichereinrichtung (45) gespeicherten Korrekturbetrag in einen Korrekturbetrag für jeden befohlenen Ausgabezyklus (T) umwandelt, und einen Phasenvorschubfilter (47), der die Phase für den Korrekturbetrag vorschiebt, der von der zweiten Umwandlungseinrichtung (46) erhalten wird, wobei die Servosteuereinheit (40) zudem Folgendes umfasst: eine Einrichtung, die aus dem Oszillationsbefehl (Pc) und der Position (Pf) des Servomotors einen Nachlaufbetrag bei Ändern einer Oszillationsgeschwindigkeit berechnet, und eine Einrichtung, die je nach dem Nachlaufbetrag die Größe des Korrekturbetrags anpasst, der in der Korrekturspeichereinrichtung (45) gespeichert ist.
  3. Servomotorsteuersystem mit einer Steuereinheit (20) und einer Servosteuereinheit (40), die einen Servomotor steuert, in einer Werkzeugmaschine oder einer Industriemaschine, wobei der Servomotor einen angetriebenen Körper (6) so antreibt, dass er zyklisch mit hoher Geschwindigkeit oszilliert, wobei: die Steuereinheit (20) Folgendes umfasst: eine Bezugswinkel-Berechnungseinrichtung (24), mit der ein Bezugswinkel (θ) berechnet wird, und eine Oszillierbefehl-Berechnungseinrichtung (22), mit der ein Befehl (Pc) für die zyklische Oszillation entsprechend dem Bezugswinkel (6) und einem Maschinenzustand berechnet wird; wobei die Servosteuereinheit (40) Folgendes umfasst: eine Positionsermittlungseinrichtung, mit der eine Position (Pf) des Servomotors ermittelt wird, eine Positionsdifferenz-Berechnungseinrichtung (41), mit der für jeden befohlenen Ausgabezyklus (T) eine Positionsdifferenz (ε) zwischen einer Position (Pc) des Oszillationsbefehls und der ermittelten Position (Pf) des Servomotors berechnet wird, und wobei eine lernende Steuereinrichtung (76) auf Basis von Bezugswinkel (θ), Oszillationsbefehl (Pc) und Positionsdifferenz (ε) ausgebildet ist, um eine lernende Steuerung durchzuführen, wobei die von der Positionsdifferenz-Berechnungseinrichtung (41) berechnete Positionsdifferenz (ε) von der lernenden Steuereinrichtung (76) korrigiert wird und die korrigierte Positionsdifferenz (ε') zum Steuern des Servomotorantriebs verwendet wird, wobei die lernende Steuereinrichtung (76) Folgendes umfasst: eine erste Umwandlungseinrichtung (42), mit der die in jedem befohlenen Ausgabezyklus (T) erhaltene Positionsdifferenz (ε) in eine Differenz für jeden Bezugswinkel (θ) umgewandelt wird, eine Korrekturberechnungseinrichtung (43, 44), die einen Korrekturbetrag in Bezug auf den Bezugswinkel (θ) aus der umgewandelten Differenz für jeden Bezugswinkel (θ) berechnet, eine Korrekturspeichereinrichtung (45), die den berechneten Korrekturbetrag für mindestens einen Zyklus des angetriebenen Körpers (6) speichert, der mit hoher Geschwindigkeit zyklisch oszilliert, eine zweite Umwandlungseinrichtung (46), die den in der Korrekturspeichereinrichtung (45) gespeicherten Korrekturbetrag in einen Korrekturbetrag für jeden befohlenen Ausgabezyklus (T) umwandelt, und einen Phasenvorschubfilter (47), der die Phase für den Korrekturbetrag vorschiebt, der von der zweiten Umwandlungseinrichtung (46) erhalten wird, wobei die Servosteuereinheit (40) zudem eine Einrichtung umfasst zum Ermitteln, dass die Positionsdifferenz (ε) zu Beginn der Oszillation in einen vorgeschriebenen Bereich nahe 0 fällt, wobei, nachdem die Positionsdifferenz (ε) in den vorgeschriebenen Bereich nahe 0 fällt, die erste Umwandlungseinrichtung damit beginnt, die in jedem befohlenen Ausgabezyklus erhaltene Positionsdifferenz (ε) in die Differenz für jeden Bezugswinkel (θ) umzuwandeln.
  4. Servomotorsteuersystem mit einer Steuereinheit (20) und einer Servosteuereinheit (40), die einen Servomotor steuert, in einer Werkzeugmaschine oder einer Industriemaschine, wobei der Servomotor einen angetriebenen Körper (6) so antreibt, dass er zyklisch mit hoher Geschwindigkeit oszilliert, wobei: die Steuereinheit (20) Folgendes umfasst: eine Bezugswinkel-Berechnungseinrichtung (24), mit der ein Bezugswinkel (θ) berechnet wird, und eine Oszillierbefehl-Berechnungseinrichtung (22), mit der ein Befehl (Pc) für die zyklische Oszillation entsprechend dem Bezugswinkel (θ) und einem Maschinenzustand berechnet wird; wobei die Servosteuereinheit (40) Folgendes umfasst: eine Positionsermittlungseinrichtung, mit der eine Position (Pf) des Servomotors ermittelt wird, eine Positionsdifferenz-Berechnungseinrichtung (41), mit der für jeden befohlenen Ausgabezyklus (T) eine Positionsdifferenz (ε) zwischen einer Position (Pc) des Oszillationsbefehls und der ermittelten Position (Pf) des Servomotors berechnet wird, und wobei eine lernende Steuereinrichtung (78) auf Basis von Bezugswinkel (θ), Oszillationsbefehl (Pc) und Positionsdifferenz (ε) ausgebildet ist, um eine lernende Steuerung durchzuführen, wobei die von der Positionsdifferenz-Berechnungseinrichtung (41) berechnete Positionsdifferenz (ε) von der lernenden Steuereinrichtung (78) korrigiert wird und die korrigierte Positionsdifferenz (ε') zum Steuern des Servomotorantriebs verwendet wird, wobei die lernende Steuereinrichtung (78) Folgendes umfasst: eine erste Umwandlungseinrichtung (42), mit der die in jedem befohlenen Ausgabezyklus (T) erhaltene Positionsdifferenz (ε) in eine Differenz für jeden Bezugswinkel (θ) umgewandelt wird, eine Korrekturberechnungseinrichtung (43, 44), die einen Korrekturbetrag in Bezug auf den Bezugswinkel (θ) aus der umgewandelten Differenz für jeden Bezugswinkel (θ) berechnet, eine Korrekturspeichereinrichtung (45), die den berechneten Korrekturbetrag für mindestens einen Zyklus des angetriebenen Körpers (6) speichert, der mit hoher Geschwindigkeit zyklisch oszilliert, eine zweite Umwandlungseinrichtung (46), die den in der Korrekturspeichereinrichtung (45) gespeicherten Korrekturbetrag in einen Korrekturbetrag für jeden befohlenen Ausgabezyklus (T) umwandelt, und einen Phasenvorschubfilter (47), der die Phase für den Korrekturbetrag vorschiebt, der von der zweiten Umwandlungseinrichtung (46) erhalten wird, wobei die Servosteuereinheit (40) zudem Folgendes umfasst: eine Einrichtung, die Geschwindigkeitsdaten in Bezug auf den Servomotor aus den Positionsdaten in Bezug auf den Servomotor am Ende der Oszillation aufnimmt, und eine Einrichtung, die eine Ausgabe des Phasenvorschubfilters (47) unter Verwendung der Geschwindigkeitsdaten in Bezug auf den Servomotor anpasst.
  5. Servomotorsteuersystem nach einem der Ansprüche 1 bis 4, wobei die Bezugswinkel-Berechnungseinrichtung den Bezugswinkel (θ) als ωt zum Zeitpunkt t = nT, mit n = 1, 2, 3, ..., aus einem befohlenen Ausgabezyklus T und einer Winkelgeschwindigkeit ω, die von dem Maschinenzustand abhängt, berechnet.
DE102010060177.2A 2009-12-09 2010-10-26 Servomotorsteuersystem für hochpräzise Hochgeschwindigkeits-Oszillationsbewegungen Active DE102010060177B4 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2009279760A JP4728422B2 (ja) 2009-12-09 2009-12-09 高速揺動動作を高精度化するサーボ制御システム
JP2009-279760 2009-12-09

Publications (2)

Publication Number Publication Date
DE102010060177A1 DE102010060177A1 (de) 2011-06-30
DE102010060177B4 true DE102010060177B4 (de) 2016-06-23

Family

ID=44081362

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102010060177.2A Active DE102010060177B4 (de) 2009-12-09 2010-10-26 Servomotorsteuersystem für hochpräzise Hochgeschwindigkeits-Oszillationsbewegungen

Country Status (4)

Country Link
US (1) US8098038B2 (de)
JP (1) JP4728422B2 (de)
CN (1) CN102096392B (de)
DE (1) DE102010060177B4 (de)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102017008330B4 (de) * 2016-09-08 2021-02-04 Fanuc Corporation Servomotor-Regelvorrichtung, Servomotor-Regelverfahren und Programm zur Servomotor-Regelung

Families Citing this family (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
ITMI20111867A1 (it) 2011-10-13 2013-04-14 Gima Spa Procedimento per il comando e controllo del motore elettrico di un gruppo d'automazione e sistema connesso
JP5758973B2 (ja) * 2013-11-29 2015-08-05 ファナック株式会社 傾斜面を研削するサーボ制御システム
WO2015159390A1 (ja) 2014-04-16 2015-10-22 三菱電機株式会社 指令値生成装置
JP5902753B2 (ja) * 2014-05-28 2016-04-13 ファナック株式会社 切上げ・切込み運動または円運動挿入機能を有する数値制御装置
JP6378144B2 (ja) 2015-07-31 2018-08-22 ファナック株式会社 学習メモリの割り当てを最適化する機能を有する学習制御装置を備えたサーボ制御システム
EP3131202A1 (de) * 2015-08-11 2017-02-15 Siemens Aktiengesellschaft Filterumschaltverfahren für eine maschinensteuerung
JP6721307B2 (ja) * 2015-09-16 2020-07-15 ファナック株式会社 複数軸を備えた工作機械の制御装置
US10941950B2 (en) * 2016-03-03 2021-03-09 Kabushiki Kaisha Toshiba Air conditioning control device, air conditioning control method and non-transitory computer readable medium
JP7143025B2 (ja) * 2018-08-29 2022-09-28 三井精機工業株式会社 研削装置及びその制御方法
JP7022096B2 (ja) * 2019-03-28 2022-02-17 ファナック株式会社 サーボ制御装置
US10926369B2 (en) 2019-04-25 2021-02-23 Gilbert Melbye Lea Adjustable tool sharpening platform
JP7301610B2 (ja) * 2019-06-09 2023-07-03 三井精機工業株式会社 研削装置及びその制御方法
JP2021096839A (ja) * 2019-12-16 2021-06-24 ファナック株式会社 工作機械の制御装置及び工作機械制御方法
JP7484504B2 (ja) 2020-07-06 2024-05-16 富士電機株式会社 制御装置、制御方法及びプログラム
US20230315026A1 (en) 2020-08-24 2023-10-05 Fanuc Corporation Control device for electric motor, machine system, and control method
WO2022080216A1 (ja) * 2020-10-13 2022-04-21 ファナック株式会社 サーボ制御装置
CN112511043B (zh) * 2020-11-20 2022-07-29 北京精密机电控制设备研究所 一种基于重复运动多轴控制的同步控制***及方法
JP2023039119A (ja) 2021-09-08 2023-03-20 株式会社東芝 磁気ディスク装置及びハーモニクス外乱に対応する高調波の補償方法

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0331906A (ja) * 1989-06-29 1991-02-12 Fanuc Ltd 数値制御装置
JPH03175502A (ja) * 1989-12-05 1991-07-30 Fanuc Ltd 間引き学習制御方式
JPH04289903A (ja) * 1991-03-18 1992-10-14 Fanuc Ltd チョッピング補正方式
US6677722B2 (en) * 2001-04-19 2004-01-13 Toshiba Kikai Kabushiki Kaisha Servo control method
US20040145333A1 (en) * 2003-01-20 2004-07-29 Fanuc Ltd. Servo motor drive control device

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0731529B2 (ja) 1988-07-29 1995-04-10 オ−クマ株式会社 数値制御工作機械における学習制御方式
JP2840139B2 (ja) * 1991-04-24 1998-12-24 ファナック株式会社 予見繰り返し制御装置
JP3175502B2 (ja) 1994-11-09 2001-06-11 三菱電機株式会社 光学望遠鏡装置
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 サーボ制御装置
JP4289903B2 (ja) 2003-02-24 2009-07-01 キヤノン株式会社 電子機器
JP3898686B2 (ja) * 2003-10-20 2007-03-28 ファナック株式会社 数値制御装置
JP4280241B2 (ja) * 2005-02-02 2009-06-17 ファナック株式会社 学習制御機能を有する数値制御装置
JP4271159B2 (ja) * 2005-02-25 2009-06-03 ファナック株式会社 対話形数値制御装置
JP4074638B2 (ja) * 2006-01-31 2008-04-09 ファナック株式会社 電動機の制御装置

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0331906A (ja) * 1989-06-29 1991-02-12 Fanuc Ltd 数値制御装置
JPH03175502A (ja) * 1989-12-05 1991-07-30 Fanuc Ltd 間引き学習制御方式
JPH04289903A (ja) * 1991-03-18 1992-10-14 Fanuc Ltd チョッピング補正方式
US6677722B2 (en) * 2001-04-19 2004-01-13 Toshiba Kikai Kabushiki Kaisha Servo control method
US20040145333A1 (en) * 2003-01-20 2004-07-29 Fanuc Ltd. Servo motor drive control device
JP2004280772A (ja) * 2003-01-20 2004-10-07 Fanuc Ltd サーボモータ駆動制御装置

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102017008330B4 (de) * 2016-09-08 2021-02-04 Fanuc Corporation Servomotor-Regelvorrichtung, Servomotor-Regelverfahren und Programm zur Servomotor-Regelung

Also Published As

Publication number Publication date
CN102096392A (zh) 2011-06-15
JP2011123616A (ja) 2011-06-23
DE102010060177A1 (de) 2011-06-30
JP4728422B2 (ja) 2011-07-20
CN102096392B (zh) 2013-10-30
US8098038B2 (en) 2012-01-17
US20110133681A1 (en) 2011-06-09

Similar Documents

Publication Publication Date Title
DE102010060177B4 (de) Servomotorsteuersystem für hochpräzise Hochgeschwindigkeits-Oszillationsbewegungen
DE102018005754B4 (de) Steuervorrichtung für eine werkzeugmaschine zum ausführen von schwingungsschneiden
DE102018002959B4 (de) Steuervorrichtung für Werkzeugmaschine, die Oszillationsschneiden durchführt
DE3811183C2 (de) Gewindeschneidmaschine
DE102017205214B4 (de) Servo-steuereinheit, steuerverfahren und computerprogramm für ein maschinenwerkzeug das für oszillierendes schneiden verwendet wird
DE102018002961B4 (de) Steuervorrichtung für Werkzeugmaschine, die Oszillationsschneiden durchführt
DE102018002566A1 (de) Steuervorrichtung für eine Osziilationschneiden durchführende Werkzeugmaschine
DE102011111952B4 (de) Servosteuerungssystem zur Verbesserung einer Bearbeitungsgenauigkeit mit einem monoton ansteigenden Referenzsignal
DE112011101682B4 (de) Motorsteuervorrichtung
EP2118709B1 (de) Verfahren und vorrichtung zur steuerung und regelung von stössellageabweichungen an servo-elektrischen pressen
DE69025321T2 (de) Verfahren zur steuerung eines servomotors
EP2353748B1 (de) Verfahren und Vorrichtung zur Herstellung eines Biegeteils
DE102014115481B4 (de) Steuervorrichtung für eine Werkzeugmaschine mit einer Drehungsindexiervorrichtung
DE102018003051B4 (de) Steuervorrichtung für eine Werkzeugmaschine, die Vibrationsschneiden durchführt
DE112011102324B4 (de) Motorsteuervorrichtung
DE102015007132B4 (de) Motorsteuervorrichtung
DE102018002784A1 (de) Steuervorrichtung für Werkzeugmaschine, die Oszillationsschneiden durchführt
DE102017215787A1 (de) Steuerungseinrichtung, Steuerungsverfahren und Computerprogramm für Werkzeugmaschine
DE102016008995B4 (de) Vorrichtung und Verfahren zum Steuern einer Werkzeugmaschine, um einen synchronisierten Betrieb einer Spindelachse und Vorschubachse zu Steuern
EP1818744B1 (de) Reglerstruktur mit einem Torsionsmodell
DE102017000473A1 (de) Vorrichtung und Verfahren zum Steuern einer Werkzeugmaschine für das Steuern des synchronisierten Betriebs von Spindelachse und Vorschubachse
DE102010020184A1 (de) Servomotor-Steuergerät zum Steuern einer periodischen Hin- und Herbewegung
DE69218362T2 (de) Verfahren zur steuerung der back-lash-beschleunigung
DE102014017370B4 (de) Servosteuersystem zum schleifen einer geneigten oberfläche
DE102017008330B4 (de) Servomotor-Regelvorrichtung, Servomotor-Regelverfahren und Programm zur Servomotor-Regelung

Legal Events

Date Code Title Description
R012 Request for examination validly filed
R079 Amendment of ipc main class

Free format text: PREVIOUS MAIN CLASS: G05B0019190000

Ipc: G05B0019404000

R079 Amendment of ipc main class

Free format text: PREVIOUS MAIN CLASS: G05B0019190000

Ipc: G05B0019404000

Effective date: 20111205

R016 Response to examination communication
R016 Response to examination communication
R018 Grant decision by examination section/examining division
R082 Change of representative

Representative=s name: HASELTINE LAKE KEMPNER LLP, DE

Representative=s name: HL KEMPNER PATENTANWALT, RECHTSANWALT, SOLICIT, DE

Representative=s name: HASELTINE LAKE LLP, DE

R020 Patent grant now final
R082 Change of representative

Representative=s name: HL KEMPNER PATENTANWAELTE, SOLICITORS (ENGLAND, DE

Representative=s name: HL KEMPNER PATENTANWALT, RECHTSANWALT, SOLICIT, DE