-
HINTERGRUND DER ERFINDUNG
-
Erfindungsfeld
-
Die vorliegende Erfindung betrifft eine Servomotor-Steuereinrichtung mit einer Funktion zum Kompensieren der Position eines angetriebenen Körpers, der durch die Leistung eines Servomotors angetrieben wird, ein Servomotor-Steuerverfahren und ein Servomotor-Steuerprogramm.
-
Stand der Technik
-
Es sind Servomotor-Steuereinrichtungen bekannt, die ein Werkstück auf einem Tisch positionieren und eine Bewegung des Tisches über einen Verbindungsmechanismus durch einen Servomotor veranlassen. Der Tisch und das Werkstück sind angetriebene Körper. Der Verbindungsmechanismus umfasst eine Kopplung, die mit dem Servomotor verbunden ist, und einen Kugelgewindetrieb, der an der Kopplung fixiert ist. Der Kugelgewindetrieb ist in eine Mutter geschraubt. Eine derartige Servomotor-Steuereinrichtung weist eine Funktion zum Kompensieren der Position eines angetriebenen Körpers (auch als beweglicher Körper bezeichnet), der durch die Leistung des Servomotors angetrieben wird, auf.
-
Eine in dem Patentdokument 1 angegebene Servomotor-Steuereinrichtung schätzt eine auf einen angetriebenen Körper an einer Verbindungseinheit des Verbindungsmechanismus ausgeübte Kraft und kompensiert einen Positionsbefehlswert basierend auf der geschätzten Antriebskraft. Eine in dem Patentdokument 2 angegebene Servomotor-Steuereinrichtung berechnet eine Dehnungs-/Kontraktionsgröße des Kugelgewindetriebs aus einer Distanz von dem Servomotor zu dem beweglichen Körper und einen Drehmomentbefehlswert, berechnet eine Positionskompensationsgröße für den auf den Kugelgewindetrieb geschraubten beweglichen Körper aus dieser Dehnungs-/Kontraktionsgröße und kompensiert den Positionsbefehlswert in Entsprechung zu dieser Positionskompensationsgröße. Eine in dem Patentdokument 3 angegebene Servomotor-Steuereinrichtung berechnet eine Dehnungs-/Kontraktionsgröße eines Kugelgewindetriebs basierend auf einer auf ein fernes Ende des Kugelgewindetriebs von dem Servomotor wirkenden Spannung, einer Distanz zwischen einem Paar von Fixierungseinheiten, die den Kugelgewindetrieb an beiden Enden halten, einer Distanz von der Fixierungseinheit an einer nahen Seite des Servomotors zu einem beweglichen Körper und einem zu dem Servomotor gegebenen Drehmomentbefehl und berechnet eine Positionskompensationsgröße für eine Vorschubwelle basierend auf der berechneten Dehnungs-/Kontraktionsgröße des Kugelgewindetriebs.
-
- Patentdokument 1: Ungeprüfte japanische Patentanmeldung mit der Veröffentlichungsnummer 2014-109785
- Patentdokument 2: Ungeprüfte japanische Patentanmeldung mit der Veröffentlichungsnummer 2014-13554
- Patentdokument 3: Ungeprüfte japanische Patentanmeldung mit der Veröffentlichungsnummer 2014-87880
-
ZUSAMMENFASSUNG DER ERFINDUNG
-
Die Erfinder haben herausgefunden, dass beim Kompensieren des Positionsbefehlswerts während eines Stoppzustands oder eines Niedergeschwindigkeits-Betriebszustands eine Kompensation in Reaktion auf eine geschätzte Antriebskraft ohne Bezug auf eine mechanische Operation zu dem Positionsbefehlswert hinzugefügt wird, wodurch die Oszillation der Kompensationsgröße vergrößert wird. Es ist eine Aufgabe der vorliegenden Erfindung, eine Servomotor-Steuereinrichtung für eine Werkzeugmaschine oder eine industrielle Maschine, die eine Positionssteuerung eines angetriebenen Körpers mit einer größeren Präzision vorsehen kann, ein Servomotor-Steuerverfahren und ein Servomotor-Steuerprogramm anzugeben.
-
- (1) Eine Servomotor-Steuereinrichtung gemäß der vorliegenden Erfindung umfasst:
- einen Servomotor;
- einen angetriebenen Körper, der ausgebildet ist, um durch den Servomotor angetrieben zu werden,
- einen Verbindungsmechanismus zum Verbinden des Servomotors mit dem angetriebenen Körper und zum Übertragen von Leistung des Servomotors zu dem angetriebenen Körper,
- eine Positionsbefehls-Erzeugungseinheit zum Erzeugen eines Positionsbefehlswerts für den angetriebenen Körper,
- eine Motorsteuereinheit zum Steuern des Servomotors unter Verwendung des Positionsbefehlswerts,
- eine erste Kraftschätzungseinheit zum Schätzen eines ersten Kraftschätzwerts, der eine auf den angetriebenen Körper an einer Verbindungseinheit mit dem Verbindungsmechanismus wirkende Antriebskraft ist,
- eine zweite Kraftschätzungseinheit zum Schätzen eines zweiten Kraftschätzwerts, der als ein fixer Wert dient,
- eine Auswahleinheit zum Vergleichen eines absoluten Werts des ersten Kraftschätzwerts mit einem absoluten Wert des zweiten Kraftschätzwerts, um den ersten oder zweiten Kraftschätzwert mit dem größeren absoluten Wert auszugeben, und
- eine Kompensationsgrößen-Erzeugungseinheit zum Erzeugen einer Kompensationsgröße für das Kompensieren des durch die Positionsbefehls-Erzeugungseinheit erzeugten Positionsbefehlswerts basierend auf dem ersten oder zweiten Kraftschätzwert, der aus der Auswahleinheit ausgegeben wird.
- (2) In der Servomotor-Steuereinrichtung gemäß dem Punkt (1) verwendet die Kompensationsgrößen-Erzeugungseinheit vorzugsweise als die Kompensationsgröße eine Summe aus dem Produkt des ersten oder zweiten Kraftschätzwerts, der aus der Auswahleinheit ausgegeben wird, und eines ersten Koeffizienten und aus dem Produkt des ersten oder zweiten Kraftschätzwerts, der aus der Auswahleinheit ausgegeben wird, einer Distanz von dem Servomotor zu der Verbindungseinheit und eines zweiten Koeffizienten.
- (3) In der Servomotor-Steuereinrichtung gemäß dem Punkt (1) oder (2) ist vorzugsweise der zweite Kraftschätzwert ein Wert, der durch das Einstellen einer auf den angetriebenen Körper wirkenden und zu schätzenden Antriebskraft zu einem vorbestimmten konstanten Wert mit einem Vorzeichen in Entsprechung zu der Richtung eines durch die Positionsbefehls-Erzeugungseinheit erzeugten Positionsbefehls erhalten wird.
- (4) In der Servomotor-Steuereinrichtung gemäß einem der Punkte (1) bis (3) ist vorzugsweise der zweite Kraftschätzwert ein vorbestimmter konstanter Wert oder ein fixer Wert des ersten Kraftschätzwerts, der durch die erste Kraftschätzungseinheit geschätzt wird, wenn eine Befehlsgeschwindigkeit oder eine Befehlsbeschleunigung des durch die Positionsbefehls-Erzeugungseinheit erzeugten Positionsbefehls nicht größer als ein gewünschter Wert ist.
- (5) In der Servomotor-Steuereinrichtung gemäß einem der Punkte (1) bis (4) enthält die Servomotor-Steuereinrichtung vorzugsweise weiterhin eine Schalteinheit zum Schalten ihrer Ausgabe von einem von der Auswahleinheit ausgegebenen Wert zu dem ersten Kraftschätzwert, der durch die erste Kraftschätzungseinheit geschätzt wird, wenn eine Befehlsgeschwindigkeit oder eine Befehlsbeschleunigung des durch die Positionsbefehls-Erzeugungseinheit erzeugten Positionsbefehlswerts einen gewünschten Wert überschreitet.
- (6) In der Servomotor-Steuereinrichtung gemäß einem der Punkte (1) bis (5) wird vorzugsweise die durch die Kompensationsgrößen-Erzeugungseinheit erzeugte Kompensationsgröße durch ein Filter geführt, wenn die Auswahleinheit oder die Schalteinheit ihre Ausgabe von dem zweiten Kraftschätzwert zu dem ersten Kraftschätzwert oder von dem ersten Kraftschätzwert zu dem zweiten Kraftschätzwert schaltet.
- (7) In der Servomotor-Steuereinrichtung gemäß einem der Punkte (1) bis (6) enthält die Motorsteuereinheit vorzugsweise eine Geschwindigkeitsbefehls-Erzeugungseinheit und eine Drehmomentbefehls-Erzeugungseinheit,
- enthält die Drehmomentbefehls-Erzeugungseinheit einen Integrator, der wenigstens einen Geschwindigkeitsfehler integriert, und
- wird der Integrator überschrieben, wenn die Auswahleinheit oder die Schalteinheit ihre Ausgabe von dem zweiten Kraftschätzwert zu dem ersten Kraftschätzwert oder von dem ersten Kraftschätzwert zu dem zweiten Kraftschätzwert schaltet.
- (8) Ein Servomotor-Steuerverfahren zum Steuern einer Servomotor-Steuereinrichtung gemäß der vorliegenden Erfindung ist ein Servomotor-Steuerverfahren zum Steuern eines Servomotor-Steuereinrichtung, die umfasst:
- einen Servomotor,
- einen angetriebenen Körper, der ausgebildet ist, um durch den Servomotor angetrieben zu werden, und
- einen Verbindungsmechanismus zum Verbinden des Servomotors mit dem angetriebenen Körper und zum Übertragen von Leistung des Servomotors zu dem angetriebenen Körper,
- wobei das Verfahren die folgenden Schritte umfasst:
- Erzeugen eines Positionsbefehlswerts für den angetriebenen Körper,
- Schätzen eines ersten Kraftschätzwerts, der eine auf den angetriebenen Körper an einer Verbindungseinheit mit dem Verbindungsmechanismus wirkende Antriebskraft ist,
- Vergleichen eines absoluten Werts des ersten Kraftschätzwerts mit einem absoluten Wert des zweiten Kraftschätzwerts, um den ersten oder den zweiten Kraftschätzwert mit dem größeren absoluten Wert auszuwählen,
- Kompensieren des erzeugten Positionsbefehlswerts basierend auf dem ausgewählten ersten oder zweiten Kraftschätzwert, und
- Steuern des Servomotors unter Verwendung des kompensierten Positionsbefehlswerts.
- (9) In dem Servomotor-Steuerverfahren gemäß dem Punkt (8) ist vorzugsweise ein Positionsbefehlskompensationswert zum Kompensieren des Positionsbefehlswerts eine Summe aus dem Produkt des ausgewählten ersten oder zweiten Kraftschätzwerts und eines ersten Koeffizienten und aus dem Produkt des ausgewählten ersten oder zweiten Kraftschätzwert, einer Distanz von dem Servomotor zu der Verbindungseinheit und eines zweiten Koeffizienten.
- (10) In dem Servomotor-Steuerverfahren gemäß dem Punkt (8) oder (9) ist vorzugsweise der zweite Kraftschätzwert ein Wert, der durch Einstellen einer auf den angetriebenen Körper wirkenden und zu schätzenden Antriebskraft zu einem vorbestimmten konstanten Wert mit einem Vorzeichen in Entsprechung zu der Richtung eines Positionsbefehls erhalten wird.
- (11) In dem Servomotor-Steuerverfahren gemäß einem der Punkte (8) bis (10) ist vorzugsweise der zweite Kraftschätzwert ein vorbestimmter konstanter Wert oder ein fixer Wert des ersten Kraftschätzwerts, der geschätzt wird, wenn eine Befehlsgeschwindigkeit oder eine Befehlsbeschleunigung des Positionsbefehls nicht größer als ein gewünschter Wert ist.
- (12) In dem Servomotor-Steuerverfahren gemäß einem der Punkte (8) bis (11) wird vorzugsweise der ausgewählte Kraftschätzwert zu dem ersten Kraftschätzwert geschaltet, wenn eine Befehlsgeschwindigkeit oder eine Befehlsbeschleunigung des erzeugten Befehlswerts einen gewünschten Wert überschreitet.
- (13) In dem Servomotor-Steuerverfahren gemäß einem der Punkte (8) bis (12) wird vorzugsweise die Kompensationsgröße des Positionsbefehlswerts durch ein Filter geführt, wenn der zweite Kraftschätzwert zu dem ersten Kraftschätzwert geschaltet wird oder der erste Kraftschätzwert zu dem zweiten Kraftschätzwert geschaltet wird.
- (14) In dem Servomotor-Steuerverfahren gemäß einem der Punkte (8) bis (13) wird vorzugsweise ein Geschwindigkeitsbefehl unter Verwendung des kompensierten Positionsbefehlswerts erzeugt, wird ein Drehmomentbefehl unter Verwendung des erzeugten Geschwindigkeitsbefehls erzeugt und wird der Servomotor unter Verwendung des Drehmomentbefehls gesteuert,
- wird der Drehmomentbefehl unter Verwendung eines Integrators erzeugt, der wenigstens einen Geschwindigkeitsfehler integriert, und
- wird der Integrator überschrieben, wenn der zweite Kraftschätzwert zu dem ersten Kraftschätzwert geschaltet wird oder der erste Kraftschätzwert zu dem zweiten Kraftschätzwert geschaltet wird.
- (15) Ein Servomotor-Steuerprogramm, das einen Computer veranlasst zum Ausführen einer Servomotorsteuerung einer Servomotor-Steuereinrichtung, die umfasst:
- einen Servomotor,
- einen angetriebenen Körper, der ausgebildet ist, um durch den Servomotor angetrieben zu werden, und
- einen Verbindungsmechanismus zum Verbinden des Servomotors mit dem angetriebenen Körper und zum Übertragen von Leistung des Servomotors zu dem angetriebenen Körper,
- wobei das Programm den Computer veranlasst zum Ausführen der folgenden Verarbeitung:
- Erzeugen eines Positionsbefehlswerts für den angetriebenen Körper,
- Schätzen eines ersten Kraftschätzwerts, der eine auf den angetriebenen Körper an einer Verbindungseinheit mit dem Verbindungsmechanismus wirkende Antriebskraft ist,
- Vergleichen eines absoluten Werts des ersten Kraftschätzwerts mit einem absoluten Wert des zweiten Kraftschätzwerts, um den ersten oder zweiten Kraftschätzwert mit dem größeren absoluten Wert auszuwählen, und
- Kompensieren des erzeugten Positionsbefehlswerts basierend auf dem ausgewählten ersten oder zweiten Kraftschätzwert, und
- Steuern des Servomotors unter Verwendung des kompensierten Positionsbefehlswerts.
- Gemäß der vorliegenden Erfindung wird eine Hochpräzisions-Positionssteuerung eines angetriebenen Körpers ermöglicht, die eine Oszillation einer Kompensationsgröße, die bei der Hinzufügung einer Kompensation in Reaktion auf eine geschätzte Antriebskraft ohne Bezug auf eine mechanische Operation auftritt, auch während eines Stoppzustands oder eines Niedergeschwindigkeit-Betriebszustands unterdrückt.
-
Figurenliste
-
- 1 ist ein Blockdiagramm, das eine Konfiguration einer Servomotor-Steuereinrichtung aus dem Stand der Technik zeigt.
- 2 ist eine schematische Ansicht, die eine Oszillation einer Kompensationsgröße erläutert.
- 3 ist ein Blockdiagramm, das eine Konfiguration einer Servomotor-Steuereinrichtung gemäß einer ersten Ausführungsform der vorliegenden Erfindung zeigt.
- 4 ist ein Blockdiagramm, das eine Konfiguration einer in 3 gezeigten Auswahleinheit zeigt.
- 5 ist ein Kennliniendiagramm, das eine Operation der Servomotor-Steuereinrichtung von 1 zeigt.
- 6 ist ein Kennliniendiagramm, das eine Operation der Servomotor-Steuereinrichtung von 3 zeigt.
- 7 ist ein Blockdiagramm, das eine Konfiguration einer Servomotor-Steuereinrichtung einschließlich eines Konfigurationsbeispiels einer Positionsbefehls-Kompensationseinheit zeigt.
- 8 ist ein Blockdiagramm, das ein Konfigurationsbeispiel einer Motorsteuereinheit und eine Konfiguration einer Servomotor-Steuereinrichtung einschließlich einer Distanzberechnungseinheit, die die Länge eines Kugelgewindetriebs (Länge eines Federelements) erhält, zeigt.
- 9 ist ein Blockdiagramm, das ein Konfigurationsbeispiel einer Geschwindigkeitsbefehls-Erzeugungseinheit zeigt.
- 10 ist ein Blockdiagramm, das ein Konfigurationsbeispiel einer Drehmomentbefehls-Erzeugungseinheit zeigt.
- 11 ist ein Flussdiagramm, das eine Operation der in 3 gezeigten Servomotor-Steuereinrichtung zeigt.
- 12 ist ein Blockdiagramm, das eine Konfiguration einer Servomotor-Steuereinrichtung gemäß einer zweiten Ausführungsform der vorliegenden Erfindung zeigt.
- 13 ist ein Blockdiagramm, das eine Konfiguration einer Servomotor-Steuereinrichtung gemäß einer dritten Ausführungsform der vorliegenden Erfindung zeigt.
- 14 ist eine schematische Ansicht, die ein Filter und einen Auswahlschalter des Filters zeigt.
- 15 ist ein Flussdiagramm, das eine Schaltoperation des Filters zeigt.
- 16 ist ein Blockdiagramm, das eine Konfiguration einer Servomotor-Steuereinrichtung gemäß einer vierten Ausführungsform der vorliegenden Erfindung zeigt.
- 17 ist ein Blockdiagramm, das eine Konfiguration einer Drehmomentbefehls-Erzeugungseinheit zeigt.
- 18 ist ein Flussdiagramm, das eine Schaltoperation eines Integrators zeigt.
-
AUSFÜHRLICHE BESCHREIBUNG DER ERFINDUNG
-
Im Folgenden werden Ausführungsformen der vorliegenden Erfindung mit Bezug auf die Zeichnungen beschrieben. Zuerst wird eine Servomotor-Steuereinrichtung aus dem Stand der Technik vor den Ausführungsformen der vorliegenden Erfindung beschrieben. 1 ist ein Blockdiagramm, das eine Konfiguration einer Servomotor-Steuereinrichtung aus dem Stand der Technik zeigt. Die Servomotor-Steuereinrichtung dreht einen Servomotor 50 für das Bewegen eines Tisches 70 über einen Verbindungsmechanismus 60 und verarbeitet ein auf dem Tisch 70 montiertes Werkstück. Der Verbindungsmechanismus 60 umfasst eine Kopplung 601, die mit dem Servomotor 50 verbunden ist, und einen Kugelgewindetrieb 602, der an der Kopplung 601 fixiert ist. Eine Mutter 603, die als eine Verbindungseinheit dient, ist auf den Kugelgewindetrieb 602 geschraubt. Durch einen drehenden Antrieb des Servomotors 50 bewegt sich die auf den Kugelgewindetrieb 602 geschraubte Mutter 603 in der Axialrichtung des Kugelgewindetriebs 602.
-
Die Drehwinkelposition des Servomotors 50 wird durch einen Codierer 40, der mit dem Servomotor 50 assoziiert ist und als eine Positionserfassungseinheit dient, erfasst, wobei die erfasste Drehwinkelposition (der erfasste Positionswert) als eine Positionsrückkopplung verwendet wird. Es ist zu beachten, dass der Codierer 40 die Drehgeschwindigkeit erfassen kann, wobei die erfasste Drehgeschwindigkeit (der erfasste Geschwindigkeitswert) als eine Geschwindigkeitsrückkopplung verwendet werden kann. Die Servomotor-Steuereinrichtung umfasst eine Positionsbefehl-Erzeugungseinheit 10, die einen Positionsbefehlswert für den Servomotor 50 erzeugt, einen Subtrahierer 80 zum Erhalten einer Differenz zwischen dem durch die Positionsbefehls-Erzeugungseinheit 10 erzeugten Positionsbefehlswert und dem durch den Codierer 40 erfassten Positionswert, einen Addierer 90, der diese Differenz und den aus der Positionsbefehls-Kompensationseinheit 30 ausgegebenen Kompensationswert addiert, eine Motorsteuereinheit 20, die einen Drehmomentbefehlswert für den Servomotor 50 unter Verwendung dieses Additionswerts erzeugt, und eine Positionsbefehl-Kompensationseinheit 30. Die Positionsbefehls-Erzeugungseinheit 10 erzeugt den Positionsbefehlswert, indem sie einem Programm oder Befehl folgt, das bzw. der von einer Steuereinrichtung einer höheren Ordnung oder einer externen Eingabeeinrichtung, die hier nicht gezeigt sind, eingegeben wird.
-
Während des Betriebs des Servomotors 50 wirkt die Antriebskraft auf den Verbindungsmechanismus 60 und den Tisch 70, sodass diese elastisch verformt werden. Weil jedoch der Verbindungsmechanismus 60 im Vergleich zu dem Tisch 70 eine geringe Steifigkeit aufweist, macht die elastische Verformung des Verbindungsmechanismus 60 den größten Teil der gesamten elastischen Verformung aus. Wenn sich der Verbindungsmechanismus 60 elastisch verformt, tritt auch dann, wenn sich der Servomotor 50 in Entsprechung zu dem Befehlswert dreht, ein der elastischen Verformungsgröße entsprechender Fehler in der Position des Tisches 70 auf. Um diesen Fehler zu beseitigen, kompensiert die Positionsbefehls-Kompensationseinheit 30 den Positionsbefehlswert um die Größe der elastischen Verformung des Verbindungsmechanismus 60. Die elastische Verformungsgröße des Verbindungsmechanismus 60 ist proportional zu der auf den Tisch 70 an der Mutter 603, die als die Verbindungseinheit zwischen dem Tisch 70 und dem Verbindungsmechanismus 60 dient, wirkenden Antriebskraft, wobei die Antriebskraft als das auf die Verbindungseinheit wirkende Antriebsdrehmoment ausgedrückt werden kann. Die Positionsbefehls-Kompensationseinheit 30 umfasst eine Kompensationsgrößen-Erzeugungseinheit 301 und eine Kraftschätzungseinheit 302. Die Kraftschätzungseinheit 302 schätzt die Antriebskraft (das Antriebsdrehmoment), das auf den angetriebenen Körper an der Verbindungseinheit wirkt, unter Verwendung des Drehmomentbefehlswerts. Die Kompensationsgrößen-Erzeugungseinheit 301 erzeugt eine Kompensationsgröße für das Kompensieren des durch die Positionsbefehls-Erzeugungseinheit 10 erzeugten Positionsbefehlswerts basierend auf der durch die Kraftschätzungseinheit 302 geschätzten Antriebskraft und gibt den Kompensationswert zu dem Addierer 90 aus.
-
Die Erfinder haben herausgefunden, dass in der in 1 gezeigten Servomotor-Steuereinrichtung gemäß dem Stand der Technik auch während eines Stoppzustands oder eines Niedergeschwindigkeits-Betriebszustands eine Oszillation der Kompensationsgröße wie in 2 gezeigt auftreten kann. Die Erfinder haben herausgefunden, dass eine Oszillation der Kompensationsgröße unterdrückt werden kann, wenn das geschätzte Lastdrehmoment auf den durch die Kraftschätzungseinheit 302 geschätzten Wert der Antriebskraft (des Drehmoments) während eines Stoppzustands oder eines Niedergeschwindigkeits-Betriebszustands oder auf einen zuvor hinsichtlich der Befehlsrichtung bestimmten Wert fixiert wird.
-
Im Folgenden werden Ausführungsformen einer Servomotor-Steuereinrichtung der vorliegenden Erfindung beschrieben, die eine Oszillation der Kompensationsgröße unterdrücken. Der Mechanismus, auf den die im Folgenden beschriebene Servomotor-Steuereinrichtung dieser Ausführungsform angewendet wird, ist eine Werkzeugmaschine wie etwa einer Lasermaschine, eine elektrische Entladungsmaschine oder eine Schneidemaschine, wobei die Servomotor-Steuereinrichtung der vorliegenden Erfindung aber auch auf eine industrielle Maschine usw. und einen Roboter angewendet werden kann.
-
(Erste Ausführungsform)
-
3 ist ein Blockdiagramm, das eine Konfiguration einer Servomotor-Steuereinrichtung gemäß einer ersten Ausführungsform der vorliegenden Erfindung zeigt. In
3 werden gleiche Komponenten wie in der Servomotor-Steuereinrichtung von
1 durch gleiche Bezugszeichen angegeben, wobei hier auf eine wiederholte Beschreibung dieser Komponenten verzichtet wird. Wie in
3 gezeigt, umfasst in dieser Ausführungsform eine Positionsbefehls-Kompensationseinheit
31 weiterhin eine Kraftschätzungseinheit
303 und eine Auswahleinheit 304 im Vergleich zu der Positionsbefehls-Kompensationseinheit
30 von
1. Wie weiter oben beschrieben, schätzt und gibt die Kraftschätzungseinheit
302 die auf den angetriebenen Körper an der Verbindungseinheit wirkende Antriebskraft (Antriebsdrehmoment) unter Verwendung des von der Motorsteuereinheit
20 ausgegebenen Drehmomentbefehls aus. Dieser geschätzte Lastdrehmomentwert ist ein erster Schätzwert. Die Schätzung der Antriebskraft ist jedoch nicht darauf beschränkt, wobei die Kraftschätzungseinheit
302 die Antriebskraft auch schätzen kann, indem sie weiterhin ein Beschleunigungs-/Entschleunigungsdrehmoment, ein Störungsdrehmoment usw. zu dem Drehmomentwert addiert, oder die Antriebskraft schätzen kann, indem sie das Motordrehmoment unter Verwendung der Ausgabe einer Stromerfassungseinheit, die den Motorstrom erfasst, anstatt des Drehmomentbefehlswerts wie in dem Patentdokument 1 (ungeprüfte
japanische Patentanmeldung mit der Veröffentlichungsnummer 2014-109785 ) angegeben berechnet.
-
Die Kraftschätzungseinheit 303 kann einen vorbestimmten konstanten Wert setzen oder kann ein Lastdrehmoment setzen, wenn eine vorbestimmte Bedingung erfüllt wurde, und kann den konstanten Wert oder das gesetzte Lastdrehmoment ausgeben. Der konstante Wert oder das Lastdrehmoment ist ein zweiter Schätzwert, der ein fixierter Wert ist. Der vorbestimmte konstante Wert entspricht vor allem einer statischen Reibungskraft, die auf den angetriebenen Körper wirkt. Der konstante Wert ist ein vorbestimmter Wert mit einem Vorzeichen in Entsprechung zu der Richtung des durch die Positionsbefehls-Erzeugungseinheit 10 erzeugten Positionsbefehls und weist im Grund den Wert der Kraft in Entsprechung zu der statischen Reibungskraft auf. Das Lastdrehmoment, wenn die vorbestimmte Bedingung erfüllt wurde, ist ein Lastdrehmoment, wenn eine Befehlsgeschwindigkeit oder eine Befehlsbeschleunigung des Positionsbefehlswerts nicht größer als ein gewünschter Wert ist (zum Beispiel während eines Stoppzustands einer Maschine). Dieses Lastdrehmoment ist ein fixer Wert, der durch die Kraftschätzungseinheit 302, die als die erste Kraftschätzungseinheit dient, geschätzt wird.
-
Die Auswahleinheit 304 vergleicht einen absoluten Wert des ersten Schätzwerts, der von der Kraftschätzungseinheit 302 ausgegeben wird, mit einem absoluten Wert des zweiten Schätzwerts, der von der Kraftschätzungseinheit 303 ausgegeben wird, und gibt den ersten Schätzwert oder den zweiten Schätzwert mit dem größeren absoluten Wert zu der Kompensationsgrößen-Erzeugungseinheit 301 aus. Wie in dem Blockdiagramm von 4 gezeigt, enthält die Auswahleinheit 304 eine Absolutwert-Vergleichseinheit 3041, die den von der Kraftschätzungseinheit 302 ausgegebenen ersten Schätzwert und den von der Kraftschätzungseinheit 303 ausgegebenen zweiten Schätzwert empfängt und den absoluten Wert des ersten Schätzwerts mit dem absoluten Wert des zweiten Schätzwerts vergleicht, und einen Schalter 3042, der seine Ausgabe zwischen dem ersten Schätzwert und dem zweiten Schätzwert schaltet. In Abhängigkeit von dem Vergleichsergebnis sendet die Absolutwert-Vergleichseinheit 3041 ein Schaltsignal zu dem Schalter 3042, um zu dem ersten Schätzwert zu schalten, wenn der absolute Wert des ersten Schätzwerts größer ist, und zu dem zweiten Schätzwert zu schalten, wenn der zweite Schätzwert größer ist.
-
Die Kompensationsgrößen-Erzeugungseinheit 301 erzeugt eine Kompensationsgröße basierend auf einem geschätzten Lastdrehmoment, das von der Auswahleinheit 304 ausgegeben wird, und gibt die Kompensationsgröße zu einem Addierer 90 aus. Auf diese Weise wird der Kompensationswert währen eines niedrigen Lastdrehmomentzustands auf einen annähernd konstanten Wert fixiert.
-
In dieser Ausführungsform wird in einem niedrigen Lastdrehmomentzustand, in dem der absolute Wert des zweiten Schätzwerts kleiner ist als der absolute Wert des ersten Schätzwerts, eine Positionskompensation in Entsprechung zu einer aus dem zweiten Schätzwert berechneten Kompensationsgröße durchgeführt. Wenn der absolute Wert des ersten Schätzwerts größer ist als der absolute Wert des zweiten Schätzwerts, wird eine Positionskompensation in Entsprechung zu einer aus dem ersten Schätzwert berechneten Kompensationsgröße durchgeführt. Weil in einem Stoppzustand oder einem Niedergeschwindigkeits-Betriebszustand das Lastdrehmoment im Grund klein ist, wird die Positionskompensationsgröße durch die mit dem zweiten Schätzwert berechnete Kompensationsgröße geklemmt und wird die Oszillation der Kompensationsgröße verbessert.
-
Im Folgenden wird der Betrieb der Servomotor-Steuereinrichtung dieser Ausführungsform mit Bezug auf die Kennliniendiagramme von 5 und 6 beschrieben. Wenn in der Servomotor-Steuereinrichtung von 1 der Einfluss eines Kugelgewindetriebs nicht berücksichtigt wird, befinden sich das Lastdrehmoment und die Kompensationsgröße wie in 5 gezeigt in einer proportionalen Beziehung und ändert sich die Positionskompensationsgröße, wenn das Lastdrehmoment während des Stoppens von Befehlen geändert wird.
-
Wenn in dieser Ausführungsform wie in 6 gezeigt der absolute Wert des von der Kraftschätzungseinheit 302 ausgegebenen ersten Schätzwerts kleiner als der absolute Wert des von der Kraftschätzungseinheit 303 ausgegebenen zweiten Schätzwerts ist, ist die Positionskompensationsgröße konstant, wenn der Einfluss der Länge des Kugelgewindetriebs nicht berücksichtigt wird, und dient ein niedriger Lastdrehmomentbereich als eine tote Zone, in der die Kompensationsgröße nicht aktualisiert wird. Dadurch kann eine Änderung in der Positionskompensationsgröße auch dann unterdrückt werden, wenn das Lastdrehmoment während des Stoppens von Befehlen geändert wird. Wenn im Fall eines geschätzten Lastdrehmoments der zweite Schätzwert eine Bedingung erfüllt (die Befehlsgeschwindigkeit oder die Befehlsbeschleunigung des Positionsbefehlswerts nicht größer als ein gewünschter Wert ist), wird eine Kompensation in Entsprechung zu der Kennlinie (6) durchgeführt, die durch eine durchgezogene Linie angegeben wird und aus dem geschätzten Lastdrehmoment bestimmt wird, wenn die Bedingung erfüllt wurde. Der zweite Schätzwert wird aktualisiert, wenn die Befehlsgeschwindigkeit oder die Befehlsbeschleunigung des Positionsbefehlswerts den gewünschten Wert überschreitet und dann nicht größer als der gewünschte Wert wird. Wenn der zweite Schätzwert ein vorbestimmter konstanter Wert ist, wird eine Kompensation in Entsprechung zu der Kennlinie (6) durchgeführt, die durch eine durchgezogene Linie angegeben wird und aus dem konstanten Wert bestimmt wird.
-
Wenn wie oben beschrieben in der Servomotor-Steuereinrichtung von 3 der absolute Wert des ersten Schätzwerts kleiner ist als der absolute Wert des zweiten Schätzwerts, wird der als ein fixer Wert dienende zweite Schätzwert für das Berechnen einer elastischen Verformungsgröße der Maschine verwendet. Auf diese Weise kann nur eine Kompensation auf der verlorenen Bewegung durchgeführt werden, ohne eine Kompensationsgröße, die nicht auf die Operation des Servomotors bezogen ist, anzuwenden.
-
7 ist ein Blockdiagramm, das eine Konfiguration einer Servomotor-Steuereinrichtung zeigt, die ein Konfigurationsbeispiel der Positionsbefehls-Kompensationseinheit enthält. Die geschätzte Lastdrehmoment-Berechnungseinheit 308 der Positionsbefehls-Kompensationseinheit 32 von 7 entspricht der Kraftschätzungseinheit 302 von 3; und die Torsionskonstanten-Multiplikationseinheit 305, die Kugelgewindelängen-Multiplikationseinheit 307, die Formfaktor-Multiplikationseinheit 306 und der Addierer 309 von 7 entsprechen der Kompensationsgrößen-Erzeugungseinheit 301 von 3. Der Formfaktor gibt die Dehnungs-/Kontraktionsgröße pro Einheitslänge des Kugelgewindetriebs an. In dieser Ausführungsform berechnet die Torsionskonstanten-Multiplikationseinheit 305 eine elastische Torsionsverformung um die Drehachse in dem Verbindungsmechanismus (einer Kopplung und einem Kugelgewindetrieb) basierend auf dem geschätzten Lastdrehmoment oder dem zweiten Schätzwert. Die elastische Torsionsverformung um die Drehachse entspricht der Kompensationsgröße in Bezug auf die Verdrehung der Verbindungseinheit. Außerdem berechnen die Kugelgewindetrieblängen-Multiplikationseinheit 307 und die Formfaktor-Multiplikationseinheit 306 die elastische Dehnungs-/Kontraktionsverformung in der Axialrichtung basierend auf dem geschätzten Lastdrehmoment oder dem zweiten Schätzwert. Die elastische Torsionsverformung um die Drehachse nimmt eine Kompensationsgröße in Bezug auf die Verdrehung der Verbindungseinheit an. Dann addiert der Addierer 309 die elastische Torsionsverformung um die Drehachse und die elastische Dehnungs-/Kontraktionsverformung in der Axialrichtung und kompensiert die durch die hinzugefügte elastische Verformung verursachte verlorene Bewegung in dem Positionsbefehlswert. Weil in diesem Beispiel der erste Schätzwert oder der zweite Schätzwert auf der Eingangsseite der Kugelgewindetrieblängen-Multiplikationseinheit 307 verwendet wird, kann die Positionskompensationsgröße die Abhängigkeit von der Länge des Kugelgewindetriebs aufrechterhalten. Dabei hängt die elastische Verformung in der Axialrichtung von der Distanz von dem Servomotor zu dem angetriebenen Körper ab, wobei diese Distanz in Entsprechung zu dem integrierten Wert der Bewegungsposition geschätzt wird.
-
Wenn das geschätzte Lastdrehmoment als T definiert wird und die Torsionskonstante als α definiert wird, ist die Kompensationsgröße in Bezug auf die Verdrehung der Verbindungseinheit, die als die Ausgabe der Torsionskonstanten-Multiplikationseinheit 305 dient, gleich α · T. Wenn das geschätzte Lastdrehmoment als T definiert wird, die Länge des Kugelgewindetriebs als d definiert wird und der Formfaktor als β definiert wird, ist die Kompensationsgröße in Bezug auf die Dehnung/Kontraktion des Kugelgewindetriebs, die als die Ausgabe der Formfaktor-Multiplikationseinheit 306 dient, gleich d · β · T. Die durch den Addierer 309, der diese Kompensationsgrößen addiert, erhaltene Gesamtkompensationsgröße ist also α · T + d · β · T.
-
8 ist ein Blockdiagramm, das ein Konfigurationsbeispiel der Motorsteuereinheit 20 und eine Konfiguration der Servomotor-Steuereinrichtung einschließlich der Distanzberechnungseinheit 130, die die Länge des Kugelgewindetriebs (die Länge eines Federelements) erhält, zeigt. Die Länge des Kugelgewindetriebs (Länge des Federelements), multipliziert mit der Kugelgewindelänge-Multiplikationseinheit 307 von 7, wird durch die Distanzberechnungseinheit 130 berechnet. Die Motorsteuereinheit 20 von 7 weist eine Geschwindigkeitsbefehl-Erstellungseinheit 201, einen Subtrahierer 100 und eine Drehmomentbefehls-Erzeugungseinheit 202 auf.
-
Der vorbestimmte konstante Wert wird im Grunde gesetzt, indem die Kraft auf der während des Stoppzustands der Maschine auf den Motor wirkenden Achse gemessen wird. Diese gesetzte Kraft entspricht, wenn keine Störung (externe Kraft) vorliegt, der statischen Reibungskraft, die auf den angetriebenen Körper während eines Stoppzustands der Maschine wirkt, und wird zu einem Wert, der nicht größer als die maximale statische Reibungskraft ist. Obwohl gemäß dieser Einstellung ein gewisser Fehler in Abhängigkeit von dem Stoppzustand vorliegt, kann auch dann, wenn die Schätzung der Antriebskraft gestoppt ist und als der fixe Wert gesetzt ist, eine Kompensationskraft in Entsprechung zu der elastischen Verformungsgröße, die aufgrund dieser statischen Reibungskraft während eines Stoppzustands der Maschine erzeugt wird, ausgeübt werden. Entsprechend kann der vorbestimmte konstante Wert gesetzt werden, indem die Kraft auf der während eines Niedriggeschwindigkeits-Betriebszustands auf den Motor wirkenden Achse gemessen wird. Auch während des Stoppzustands (oder während des Niedriggeschwindigkeits-Betriebszustands) kann die Änderung in der elastischen Verformung des Kugelgewindetriebs relativ zu der Länge des Kugelgewindetriebs in der Kompensation berücksichtigt werden, indem das geschätzte Lastdrehmoment und nicht die Kompensationsgröße selbst fixiert wird. Eine Verdrehungsgröße vergrößert sich, wenn der Kugelgewindetrieb lang ist (die Distanz zu dem angetriebenen Körper weit ist); und die Verdrehungsgröße verkleinert sich, wenn die Länge kurz ist. Die Kompensationsgröße wird als (Kompensationsgröße) = {(Formfaktor x Kugelgewindetrieblänge) + (Torsionskoeffizient)} x (geschätztes Lastdrehmoment) berechnet, wobei auch dann, wenn das geschätzte Lastdrehmoment zu dem fixierten Wert geschaltet wird, eine Kompensation, die von der Länge des Kugelgewindetriebs abhängt, angewendet wird. Die Länge d des Kugelgewindetriebs ist die Länge des Kugelgewindetriebs von dem Servomotor zu dem Verbindungsmechanismus, und ändert sich in Entsprechung zu der Position des Tisches.
-
9 ist ein Blockdiagramm, das ein Konfigurationsbeispiel einer Geschwindigkeitsbefehls-Erzeugungseinheit 201 zeigt. Wie in 8 gezeigt, erzeugt die Positionsbefehls-Erzeugungseinheit 10 den Positionsbefehlswert, erhält der Subtrahierer 80 die Differenz zwischen dem Positionsbefehlswert und der erfassten Position, die positionsrückgekoppelt wird, und addiert der Addierer 90 die Kompensationsgröße zu dieser Differenz. Die Differenz, zu der die Kompensationsgröße addiert wurde, wird zu einem Differenzierer 2011 und zu einem Positionssteuerverstärker 2013 der Geschwindigkeitsbefehls-Erzeugungseinheit 201 von 9 eingegeben. Der Addierer 2014 gibt als einen Geschwindigkeitsbefehlswert einen Additionswert aus der Ausgabe einer Koeffizienteneinheit 2012, die durch das Multiplizieren eines Koeffizienten mit der Ausgabe des Differenzierers 2011 erhalten wird, und der Ausgabe der Positionssteuerverstärkung 2013 aus. Der Subtrahierer 100 von 8 erhält die Differenz zwischen dem Geschwindigkeitsbefehlswert und der erfassten Geschwindigkeit, die geschwindigkeitsrückgekoppelt wird.
-
10 ist ein Blockdiagramm, das ein Konfigurationsbeispiel der Drehmomentbefehls-Erzeugungseinheit 202 zeigt. Die Drehmomentbefehls-Erzeugungseinheit 202 enthält einen Proportionalverstärker 2023 und einen mit dem Subtrahierer 100 verbundenen Integrator 2021, einen mit dem Integrator 2021 verbundenen Integrationsverstärker 2022 und einen Addierer 2024, der die Ausgabe des Proportionalverstärkers 2023 und die Ausgabe des Integrationsverstärkers 2022 addiert und zu dem Servomotor 50 als den Drehmomentbefehl ausgibt. Der Integrator 2021 integriert die Eingabe. Der Integrationsverstärker 2022 multipliziert einen Koeffizienten mit der Ausgabe des Integrators 2021. Der Proportionalverstärker 2023 multipliziert einen Koeffizienten mit der Eingabe. Der Integrationsverstärker 2022 und der Integrator 2021 können in einer Anordnungssequenz geändert werden.
-
11 ist ein Flussdiagramm, das einen Betrieb der in 3 gezeigten Servomotor-Steuereinrichtung zeigt. In Schritt S101 berechnet die Kraftschätzungseinheit 302 ein geschätztes Lastdrehmoment (den ersten Schätzwert). In Schritt S102 bestimmt die Auswahleinheit 304, ob der absolute Wert des ersten Schätzwerts kleiner ist als der absolute Wert des zweiten Schätzwerts. Wenn der absolute Wert des ersten Schätzwerts kleiner ist als der absolute Wert des zweiten Schätzwerts (Schritt S102: JA), berechnet die Kompensationsgrößen-Erzeugungseinheit 301 einen Positionskompensationswert unter Verwendung des zweiten Schätzwerts (Schritt S103) und schreitet zu Schritt S104 fort.
-
Wenn dagegen der absolute Wert des ersten Schätzwerts größer ist als der absolute Wert des zweiten Schätzwerts (Schritt S102: NEIN), berechnet die Kompensationsgrößen-Erzeugungseinheit 301 den Positionskompensationswert unter Verwendung des ersten Schätzwerts (Schritt S105) und schreitet zu Schritt S104 fort. In Schritt S104 erhält der Subtrahierer 80 eine Differenz zwischen dem Positionsbefehlswert von der Positionsbefehls-Erzeugungseinheit 10 und einer erfassten Position, die positionsrückgekoppelt wird, und kompensiert der Addierer 90 die Differenz unter Verwendung der durch die Positionsgrößen-Erzeugungseinheit 301 berechneten Positionskompensationsgröße. Dann steuert in Schritt S106 die Motorsteuereinheit 20 den Servomotor 50 basierend auf der Differenz zwischen dem Positionsbefehlswert und der erfassten Position.
-
(Zweite Ausführungsform)
-
12 ist ein Blockdiagramm, das eine Konfiguration einer Servomotor-Steuereinrichtung gemäß einer zweiten Ausführungsform der vorliegenden Erfindung zeigt. Wie in 12 gezeigt, enthält in einer Servomotor-Steuereinrichtung dieser Ausführungsform eine Positionsbefehls-Kompensationseinheit 32 einen Schalter 310, der als eine Schalteinheit dient, die zu der Positionsbefehls-Kompensationseinheit 31 der Servomotor-Steuereinrichtung von 3 hinzugefügt ist, und wird der Schalter 310 durch eine Positionsbefehlsgeschwindigkeits-Bestimmungseinheit 120 geschaltet, die den durch die Positionsbefehls-Erzeugungseinheit 10 erstellten Positionsbefehl empfängt und eine Befehlsgeschwindigkeit des Positionsbefehlswerts (dient als eine Positionsbefehlsgeschwindigkeit) erzeugt.
-
Wenn die Befehlsgeschwindigkeit (der absolute Wert) nicht größer als ein gewünschter Wert (einschließlich von 0) ist, sendet die Positionsbefehlsgeschwindigkeits-Bestimmungseinheit 120 ein Schaltsignal zu dem Schalter 310, damit ein Eingangsanschluss der Kompensationsgrößen-Erzeugungseinheit 301 mit einem Ausgangsanschluss der Auswahleinheit 304 verbunden wird. Wenn die Befehlsgeschwindigkeit (der absolute Wert) den gewünschten Wert überschreitet, sendet die Positionsbefehlsgeschwindigkeits-Bestimmungseinheit 120 ein Schaltsignal zu dem Schalter 310, damit der Eingangsanschluss der Kompensationsgrößen-Erzeugungseinheit 301 mit dem Ausgangsanschluss der Kraftschätzungseinheit 302 verbunden wird. Eine Befehlsbeschleunigung des Positionsbefehlswerts kann anstelle der Befehlsgeschwindigkeit des Positionsbefehlswerts verwendet werden. In diesem Fall ist die Positionsbefehlsgeschwindigkeits-Bestimmungseinheit 120 durch eine Positionsbefehlsbeschleunigungs-Bestimmungseinheit ersetzt, die den durch die Positionsbefehls-Erzeugungseinheit 10 erstellten Positionsbefehlswert empfängt, um eine Befehlsbeschleunigung des Positionsbefehlswerts (dient als eine Positionsbefehlsbeschleunigung) zu erzeugen. Die Funktion der Positionsbefehlsbeschleunigungs-Bestimmungseinheit ist gleich der Funktion der Positionsbefehlsgeschwindigkeits-Bestimmungseinheit 120 mit Ausnahme davon, dass die Befehlsgeschwindigkeit durch die Befehlsbeschleunigung ersetzt ist. Wenn in dieser Ausführungsform die Befehlsgeschwindigkeit (der absolute Wert) einen gewünschten Wert überschreitet, wird die Kompensationsgröße in einem niedrigen Lastdrehmomentzustand nicht geklemmt.
-
(Dritte Ausführungsform)
-
Wenn in der Servomotor-Steuereinrichtung der ersten Ausführungsform die Auswahleinheit 304 ihre Ausgabe von dem zweiten Schätzwert zu dem ersten Schätzwert (dem geschätzten Lastdrehmoment) oder von dem ersten Schätzwert zu dem zweiten Schätzwert schaltet, kann sich die Kompensationsgröße diskontinuierlich während des Schaltens ändern. Eine diskontinuierliche Kompensationsgröße hat einen diskontinuierlichen Geschwindigkeitsbefehl zur Folge, und es wird ein diskontinuierlicher Drehmomentbefehl erzeugt. Um diese Diskontinuität der Kompensationsgröße zu verhindern, ist ein Filter 110 auf der Ausgabeseite der Positionsbefehls-Kompensationseinheit 31 vorgesehen. Wenn die Kompensationsgröße durch das Filter 110 geführt wird, kann einem diskontinuierlichen Wert glatt gefolgt werden. 13 ist ein Blockdiagramm, das eine Konfiguration einer Servomotor-Steuereinrichtung gemäß einer dritten Ausführungsform der vorliegenden Erfindung zeigt. Die Konfiguration der Servomotor-Steuereinrichtung von 13 ist gleich der Konfiguration der Servomotor-Steuereinrichtung von 3 mit Ausnahme davon, dass das Filter 110 vorgesehen ist, wobei gleiche Komponenten durch gleiche Bezugszeichen angegeben werden und hier auf eine wiederholte Beschreibung dieser Komponenten verzichtet wird. Das Filter 110 kann ein Tiefpassfilter sein.
-
Weil wie weiter oben beschrieben das Filter 110 zwischen der Kompensationsgrößen-Erzeugungseinheit 301 und dem Addierer 90 verbunden ist, kann eine Diskontinuität der Kompensationsgröße verhindert werden. Ein Auswahlschalter 111 von 14 kann das Filter 110 zwischen der Kompensationsgrößen-Erzeugungseinheit 301 und dem Addierer 90 nur dann verbinden, wenn die Auswahleinheit 304 ihre Ausgabe von dem zweiten Schätzwert zu dem ersten Schätzwert (dem geschätzten Lastdrehmoment) oder von dem ersten Schätzwert zu dem zweiten Schätzwert schaltet. Nachdem der Wechsel durch die Auswahleinheit 304 durchgeführt wurde, kann der Auswahlschalter 111 die Kompensationsgrößen-Erzeugungseinheit 301 und den Addierer 90 verbinden, ohne dass dies über das Filter 110 erfolgt. Der Auswahlschalter 111 wird basierend auf einem durch die Absolutwert-Vergleichseinheit 3041 der Auswahleinheit 304 von 4 ausgegebenen Befehlssignal usw. geschaltet, wobei der Auswahlschalter 111 geschaltet wird, wenn die Auswahleinheit 304 ihre Ausgabe von dem zweiten Schätzwert zu dem ersten Schätzwert (dem geschätzten Lastdrehmoment) oder von dem ersten Schätzwert zu dem zweiten Schätzwert wechselt. 15 ist ein Flussdiagramm, das eine Schätzoperation des Filters 110 zeigt. Wenn die Auswahleinheit 304 die Ausgabe von dem zweiten Schätzwert zu dem ersten Schätzwert in Schritt S201 schaltet (Schritt S201: JA), wird der Auswahlschalter 111 in Schritt S202 zu einem Durchgang durch das Filter geschaltet. Wenn danach die Diskontinuität der Kompensationsgröße beseitigt ist, wird der Auswahlschalter 111 in Schritt S203 zu einem nicht-Durchgang durch das Filter geschaltet. Ein Fall, in dem der zweite Schätzwert durch die Auswahleinheit 304 zu dem ersten Schätzwert geschaltet wird, wurde in 15 beschrieben. Wenn die Auswahleinheit 304 ihre Ausgabe von dem ersten Schätzwert zu dem zweiten Schätzwert wechselt, wird in Schritt S201 bestimmt, ob die Auswahleinheit 304 ihre Ausgabe von dem ersten Schätzwert zu dem zweiten Schätzwert geschaltet hat.
-
In 3 wurde ein Fall beschrieben, in dem ein Filter oder ein Filter und ein Auswahlschalter zu der Konfiguration der Servomotor-Steuereinrichtung von 3 hinzugefügt wurden, wobei ein Filter oder ein Filter und ein Auswahlschalter auch zu der Konfiguration der Servomotor-Steuereinrichtung von 12 hinzugefügt werden können. In diesem Fall kann die Auswahleinheit 304 ihre Ausgabe von dem zweiten Schätzwert zu dem ersten Schätzwert (dem geschätzten Lastdrehmoment) oder von dem ersten Schätzwert zu dem zweiten Schätzwert wechseln oder aber kann die Auswahleinheit 304 den zweiten Schätzwert auswählen und kann der Schalter 310 seine Ausgabe von dem zweiten Schätzwert zu dem ersten Schätzwert (dem geschätzten Lastdrehmoment) oder von dem ersten Schätzwert zu dem zweiten Schätzwert wechseln. Wenn ein Filter und ein Auswahlschalter hinzugefügt sind, wird der Auswahlschalter 111 basierend auf einem durch die Absolutwert-Vergleichseinheit 3041 der Auswahleinheit 304 von 4 oder die Positionsbefehls-Bestimmungseinheit 120 ausgegebenen Befehlssignal geschaltet. Der Auswahlschalter 111 wird geschaltet, wenn die Auswahleinheit 304 ihre Ausgabe von dem zweiten Schätzwert zu dem ersten Schätzwert (dem geschätzten Lastdrehmoment) oder von dem ersten Schätzwert zu dem zweiten Schätzwert wechselt. Alternativ dazu wird der Auswahlschalter 111 geschaltet, wen die Positionsbefehlsgeschwindigkeits-Bestimmungseinheit 120 den Schalter 310 veranlasst, seine Ausgabe von dem zweiten Schätzwert zu dem ersten Schätzwert (dem geschätzten Lastdrehmoment) oder von dem ersten Schätzwert zu dem zweiten Schätzwert zu schalten. Die Positionsbefehlsgeschwindigkeits-Bestimmungseinheit 120 kann durch eine Positionsbefehlsbeschleunigungs-Bestimmungseinheit ersetzt sein, die den durch die Positionsbefehls-Erzeugungseinheit 10 erzeugten Positionsbefehlswert empfängt, um eine Befehlsbeschleunigung (eine Positionsbefehlsbeschleunigung) des Positionsbefehlswerts zu erzeugen.
-
(Vierte Ausführungsform)
-
In der Servomotor-Steuereinrichtung der dritten Ausführungsform ist das Filter 110 auf der Ausgabeseite der Positionsbefehls-Kompensationseinheit 31 vorgesehen, um eine Diskontinuität der Kompensationsgröße zu verhindern. Anstatt das Filter vorzusehen, kann der Integrator 2021 der Drehmomentbefehls-Erzeugungseinheit 202 von 10 überschrieben werden, sodass der Drehmomentbefehlswert kontinuierlich ist. In dieser Ausführungsform kann das Filter 110 auf der Ausgabeseite der Positionsbefehls-Kompensationseinheit 31 vorgesehen sein und außerdem der Integrator 2021 überschrieben werden. Wenn die Kompensationsgröße für das Kompensieren des Positionsbefehlswerts eingegeben wird, während die Auswahleinheit 304 ihre Ausgabe von dem zweiten Schätzwert zu dem ersten Schätzwert (dem geschätzten Lastdrehmoment) oder von dem ersten Schätzwert zu dem zweiten Schätzwert wechselt, tritt eine Änderung in dem Geschwindigkeitsbefehlswert auf. Der Integrator wird überschritten, damit sich der Drehmomentbefehlswert nicht aufgrund einer Änderung in dem Geschwindigkeitsbefehlswert ändert und der Drehmomentbefehlswert kontinuierlich wird.
-
16 ist ein Blockdiagramm, das eine Konfiguration einer Servomotor-Steuereinrichtung gemäß einer vierten Ausführungsform der vorliegenden Erfindung zeigt. Die Konfiguration der Servomotor-Steuereinrichtung von 16 ist gleich der Konfiguration der Servomotor-Steuereinrichtung von 8, wobei jedoch die Absolutwert-Vergleichseinheit 3041 der Auswahleinheit 304 von 4 einen Überschreibbefehl für den Integrator an die Drehmomentbefehls-Erzeugungseinheit 202 sendet. Dabei werden gleiche Komponenten durch gleiche Bezugszeichen angegeben, wobei hier auf eine wiederholte Beschreibung dieser Komponenten verzichtet wird. 17 ist ein Blockdiagramm, das eine Konfiguration der Drehmomentbefehls-Erzeugungseinheit 202 zeigt. Wie in 17 gezeigt, wird der Überschreibbefehl zu dem Integrator 2021 gesendet.
-
Der Überschreibbefehl wird gesendet, wenn die Auswahleinheit
304 von
3 usw. ihre Ausgabe von dem zweiten Schätzwert zu dem ersten Schätzwert oder von dem ersten Schätzwert zu dem zweiten Schätzwert wechselt. Das Überschreiben des Integrators 2021 wird wie folgt beschrieben basierend auf dem Überschreibbefehl durchgeführt. Wenn Vcmd als der Geschwindigkeitsbefehlswert definiert wird, Vfb als die erfasste Geschwindigkeit definiert wird, kp als die Proportionalverstärkung definiert wird und ki als die Integrationsverstärkung definiert wird, wird der Drehmomentbefehlswert TCMD durch die Formel 1 ausgedrückt.
-
Wenn eine Aktualisierung der Kompensationsgröße aus einem Zustand, in dem eine Aktualisierung der Kompensationsgröße gestoppt ist, erneut begonnen wird, wechselt der Drehmomentbefehlswert TCMD von TCMD (1) zu TCMD (2).
-
In dieser Ausführungsform wird TCMD(1) + (Vcmd(2) - Vfb(2)) des Drehmomentbefehlswerts TCMD(2) durch die folgende Formel 3 überschrieben.
-
Wenn dies abgeschlossen ist, wird der überschriebene Drehmomentbefehlswert TCMD'(2) gleich TCMD(1) und tritt keine Diskontinuität des Drehmomentbefehls auf.
-
18 ist ein Flussdiagramm, das eine Schaltoperation des Integrators 2021 zeigt. Wenn die Auswahleinheit 304 in Schritt S301 ihre Ausgabe von dem zweiten Schätzwert zu dem ersten Schätzwert wechselt (Schritt S301: JA), wird der Integrator in Schritt S302 überschrieben. Wenn danach die Diskontinuität der Kompensationsgröße beseitigt wird, wird das Überschreiben des Integrators in Schritt S303 zurückgesetzt. Ein Fall, in dem die Auswahleinheit 304 ihre Ausgabe von dem zweiten Schätzwert zu dem ersten Schätzwert wechselt, wurde in 18 beschrieben. Wenn jedoch die Auswahleinheit 304 ihre Ausgabe von dem ersten Schätzwert zu dem zweiten Schätzwert wechselt, wird in Schritt S301 bestimmt, ob die Auswahleinheit 304 ihre Ausgabe von dem ersten Schätzwert zu dem zweiten Schätzwert gewechselt hat.
-
In der oben beschriebenen Ausführungsform wurde ein Fall beschrieben, in dem die Absolutwert-Vergleichseinheit 3041 der Auswahleinheit 304 einen Überschreibbefehl für den Integrator zu der Drehmomentbefehls-Erstellungseinheit 202 in der Konfiguration der Servomotor-Steuereinrichtung von 8 sendet. Die Konfiguration dieser Ausführungsform kann auch auf einen Fall angewendet werden, in dem der Schalter 310 und die Positionsbefehlsgeschwindigkeits-Bestimmungseinheit 120 der Servomotor-Steuereinrichtung von 12 zu der Konfiguration der Servomotor-Steuereinrichtung von 8 hinzugefügt sind. In diesem Fall kann die Auswahleinheit 304 ihre Ausgabe von dem zweiten Schätzwert zu dem ersten Schätzwert (dem geschätzten Lastdrehmoment) oder von dem ersten Schätzwert zu dem zweiten Schätzwert wechseln oder kann die Auswahleinheit 304 den zweiten Schätzwert auswählen und kann der Schalter 310 seine Ausgabe von dem zweiten Schätzwert zu dem ersten Schätzwert (dem geschätzten Lastdrehmoment) oder von dem ersten Schätzwert zu dem zweiten Schätzwert wechseln.
-
Der Integrator wird basierend auf einem durch die Positionsbefehlsgeschwindigkeits-Bestimmungseinheit 120 oder die Absolutwert-Vergleichseinheit 3041 der Auswahleinheit 304 von 4 ausgegebenen Befehlssignal überschrieben. Der Integrator wird überschrieben, wenn die Auswahleinheit 304 ihre Ausgabe von dem zweiten Schätzwert zu dem ersten Schätzwert (dem geschätzten Lastdrehmoment) oder von dem ersten Schätzwert zu dem zweiten Schätzwert wechselt. Alternativ dazu wird der Integrator überschrieben, wenn die Positionsbefehlsgeschwindigkeits-Bestimmungseinheit 120 den Schalter 310 veranlasst, seine Ausgabe von dem zweiten Schätzwert zu dem ersten Schätzwert (dem geschätzten Lastdrehmoment) oder von dem ersten Schätzwert zu dem zweiten Schätzwert zu wechseln. Die Positionsbefehlsgeschwindigkeits-Bestimmungseinheit 120 kann durch eine Positionsbefehlsbeschleunigungs-Bestimmungseinheit ersetzt werden, die den durch die Positionsbefehls-Erzeugungseinheit 10 erzeugten Positionsbefehlswert empfängt, um eine Befehlsbeschleunigung (eine Positionsbefehlsbeschleunigung) des Positionsbefehlswerts zu erzeugen.
-
In den oben beschriebenen Ausführungsformen werden eine Kompensation in Entsprechung zu einem Rütteln einer Maschine und eine Kompensation einer elastischen Verformung einer Maschine durchgeführt. Eine Kompensation in Entsprechung zu einem Rütteln einer Maschine tritt vor allem in einem niedrigen Lastdrehmomentbereich in der Nähe einer Umkehr der Motordrehung auf. Deshalb kann gemäß dieser Ausführungsform, in der die Positionskompensationsgröße unter Verwendung des zweiten Schätzwerts berechnet wird, der immer größer als der erste Schätzwert in dem niedrigen Lastdrehmomentbereich ist, wenn der als eine Schalteinheit dienende Schalter 310 nicht vorgesehen ist, eine Positionskompensation in Entsprechung zu einem Rütteln einer Maschine durchgeführt werden, bei der eine Kompensation unmittelbar während einer Umkehr der Motordrehung eingeleitet wird.
-
In den entsprechenden Ausführungsformen wird der vorbestimmte konstante Wert im Grunde durch das Messen der Kraft auf der während eines Stoppzustands der Maschine auf den Motor wirkenden Achse gesetzt. Diese gesetzte Kraft entspricht, wenn keine Störung (externe Kraft) vorliegt, der statischen Reibungskraft, die auf den angetriebenen Körper während eines Stoppzustands der Maschine wirkt, und ist ein Wert, der nicht größer als die maximale statische Reibungskraft ist. Gemäß dieser Einstellung kann, obwohl ein gewisser Fehler in Abhängigkeit von dem Stoppzustand gegeben ist, auch dann, wenn die Schätzung der Antriebskraft gestoppt ist und als ein fixer Wert gesetzt ist, eine Kompensation in Entsprechung zu der elastischen Verformungsgröße aufgrund dieser statischen Reibungskraft während eines Stoppzustands der Maschine erzeugt werden. Und wenn eine Last, die größer als ein großer fixierter Wert ist, ausgeübt wird, wird eine Kompensation unter Verwendung des geschätzten Lastdrehmomentwerts (des ersten Schätzwerts) durchgeführt.
-
Wenn das Lastdrehmoment, unter dem die Befehlsgeschwindigkeit oder die Befehlsbeschleunigung des Positionsbefehlswerts nicht größer als ein gewünschter Wert ist, als der zweite Schätzwert verwendet wird, wird eine Kompensation unter Verwendung des zweiten Schätzwerts des fixierten Werts als dem Lastdrehmoment verwendet, bis der absolute Wert des ersten Schätzwerts größer als der absolute Wert des zweiten Schätzwerts ist. Zu diesem Zeitpunkt wird der zweite Schätzwert zu einem Lastdrehmoment aktualisiert, das geschätzt wird, wenn die Befehlsgeschwindigkeit oder die Befehlsbeschleunigung des Positionsbefehlswerts den gewünschten Wert überschreitet und dann die Befehlsgeschwindigkeit oder die Befehlsbeschleunigung des Positionsbefehlswerts nicht größer als der gewünschte Wert wird. Auch wenn der vorbestimmte konstante Wert oder der Lastdrehmomentwert, wenn die Bedingung des Positionsbefehlswerts erfüllt wurde, als der zweite geschätzte Wert verwendet wird, erzeugt der zweite geschätzte Wert eine tote Zone, in der eine Kompensation nicht durch eine Änderung, die nicht größer als eine bestimmte Drehmomentgröße ist, beeinflusst wird. Wenn eine derartige Schalteinheit als der Schalter 310 in 12 vorgesehen wird, tritt eine tote Zone auf, wenn die Befehlsgeschwindigkeit oder die Befehlsbeschleunigung des Positionsbefehlswerts nicht größer als der gewünschte Wert wird.
-
Wenn in den entsprechenden Ausführungsformen das geschätzte Lastdrehmoment klein ist, wird das für das Berechnen einer elastischen Verformungsgröße einer Maschine verwendete geschätzte Lastdrehmoment geklemmt. Auf diese Weise kann in den entsprechenden Ausführungsformen nur eine Kompensation auf der verlorenen Bewegung durchgeführt werden, ohne eine Kompensationsgröße, die nicht auf den Betrieb des Servomotors bezogen ist, anzuwenden. Die Kompensationsgröße kann die Abhängigkeit von der Länge des Kugelgewindetriebs aufrechterhalten.
-
Vorstehend wurden Ausführungsformen der vorliegenden Erfindung beschrieben, wobei die Servomotor-Steuereinrichtung einen Teil oder alle der Funktionen mittels Hardware, Software oder Kombinationen aus diesen realisieren kann. Bei einer Realisierung durch Software liest und führt ein Computer Programme aus. Wenn die Servomotor-Steuereinrichtung durch Hardware realisiert wird, können die Kompensationsgrößen-Erzeugungseinheit 301, die Kraftschätzungseinheiten 302 und 303, die Auswahleinheit 304, die Positionsbefehls-Erzeugungseinheit 10 und die Motorsteuereinheit 20 der Servomotor-Steuereinrichtung teilweise oder vollständig durch Schaltungen konfiguriert werden, die durch integrierte Schaltkreise (ICs) wie etwa eine LSI (Larges Scale Integrated Circuit), eine ASIC (Application Specific Integrated Circuit), ein Gate-Array oder ein FPGA (Field Programmable Gate Array) konfiguriert werden können.
-
Wenn die Servomotor-Steuereinrichtung durch Software realisiert wird, kann die Servomotor-Steuereinrichtung teilweise oder vollständig durch einen Computer konfiguriert werden, der eine CPU und eine Speichereinheit wie etwa eine Festplatte und einen ROM zum Speichern von Programmen enthält. Weiterhin können Operationen eines Teils oder der gesamten Servomotor-Steuereinrichtung unter Verwendung von Programmen ausgeführt werden, indem die für das Berechnen erforderlichen Informationen in einer zweiten Speichereinheit wie etwa einem RAM gespeichert werden und eine Verarbeitung in Entsprechung zu einem Programm, das den Blockdiagrammen von 3, 4 und 7 bis 10 und dem Flussdiagramm von 11 folgt, einem Programm, das dem Blockdiagramm von 12, den Blockdiagrammen von 13 und 14 und dem Flussdiagramm von 15 folgt, und einem Programm, das den Blockdiagrammen von 16 und 17 und dem Flussdiagramm von 18 folgt, ausgeführt wird. Die Programme können aus einem externen Speichermedium wie etwa einer CD-ROM, einer DVD oder einem Flash-Speicher, auf dem die Programme aufgezeichnet sind, in die Speichereinheit wie etwa eine Festplatte gelesen werden.
-
Die Programme können unter Verwendung von verschiedenen Typen von computerlesbaren Speichermedien gespeichert und zu dem Computer gegeben werden. Als das computerlesbare Aufzeichnungsmedium können verschiedene Typen von Speichermedium verwendet werden. Das computerlesbare Speichermedium kann ein nicht-transitorisches computerlesbares Speichermedium sein. Beispiele für computerlesbare Aufzeichnungsmedien sind magnetische Medien (wie z.B. eine Diskette, ein Festplattenlaufwerk), magnetooptische Medien (z.B. eine magnetooptische Platte), eine CD-ROM (Read Only Memory), eine CD-R, eine CD-R/W und ein Halbleiterspeicher (zum Beispiel ein Mask-ROM, ein PROM (programmierbarer ROM), ein EPROM (ein löschbarer PROM), ein Flash-ROM oder ein RAM (Random Access Memory)).
-
Vorstehend wurden Ausführungsformen und Beispiele der vorliegenden Erfindung beschrieben, wobei die Erfindung jedoch nicht auf die hier beschriebenen Ausführungsformen und Beispiele beschränkt ist und der Fachmann die hier beschriebenen Ausführungsformen modifizieren oder ändern kann, ohne dass deshalb der durch die Ansprüche definierte Erfindungsumfang verlassen wird.
-
Bezugszeichenliste
-
- 10:
- Positionsbefehls-Erzeugungseinheit
- 20:
- Motorsteuereinheit
- 30, 31, 32:
- Positionsbefehls-Kompensationseinheit
- 40:
- Codierer
- 50:
- Servomotor
- 60:
- Verbindungsmechanismus
- 70:
- Tisch
- 301:
- Kompensationsgrößen-Erzeugungseinheit
- 302, 303:
- Kraftschätzungseinheit
- 304:
- Auswahleinheit
- 310:
- Schalter
-
ZITATE ENTHALTEN IN DER BESCHREIBUNG
-
Diese Liste der vom Anmelder aufgeführten Dokumente wurde automatisiert erzeugt und ist ausschließlich zur besseren Information des Lesers aufgenommen. Die Liste ist nicht Bestandteil der deutschen Patent- bzw. Gebrauchsmusteranmeldung. Das DPMA übernimmt keinerlei Haftung für etwaige Fehler oder Auslassungen.
-
Zitierte Patentliteratur
-
- JP 2014109785 [0003, 0010]
- JP 201413554 [0003]
- JP 201487880 [0003]