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