-
Gebiet
-
Die vorliegende Erfindung betrifft eine Servoregelvorrichtung, die eine Systemidentifikation durchführt.
-
Hintergrund
-
Eine Servoregelvorrichtung ist eine Vorrichtung, die eine Rückkopplungsregelung unter Verwendung eines Aktuators durchführt, sodass eine Position eines anzutreibenden Objektes, die unter Verwendung eines Positionsdetektors erfasst wurde, mit einer Sollposition übereinstimmt.
-
Eine Maschine, die mehrere Freiheitsgrade aufweist, wie etwa eine Werkzeugmaschine mit numerischer Regelung, eine Industriemaschine, ein Roboter oder ein Förderer, beinhaltet eine Vielzahl von Servoregelvorrichtungen, die als Wellen bezeichnet werden. Eine derartige Maschine erzielt eine Bewegung mit mehreren Freiheitsgraden, indem sie die Position eines anzutreibenden Objekts durch einen an jeder Welle angebrachten Aktuator regelt und die Positionsregelung jeder Welle kombiniert.
-
Eine Servoregelung, die so durchgeführt wird, dass eine Bewegungstrajektorie genau einer Solltrajektorie, die eine vorgegebene Bahn ist, folgt, wird als Trajektorieregelung oder Bahnregelung bezeichnet. Wenn während der Trajektorieregelung aufgrund von Störfaktoren, wie etwa Reibung und Vibration einer mechanischen Struktur, ein Fehler bei der Bewegung der Welle auftritt, weicht die Bewegungstrajektorie von der Solltrajektorie ab, sodass ein Trajektoriefehler auftritt. Zum Beispiel kann bei einer Werkzeugmaschine mit numerischer Regelung, die eine Form erzeugt, indem sie eine Bewegung eines Schneidwerkzeugs auf ein zu bearbeitendes Werkstück überträgt, selbst ein Trajektoriefehler von wenigen Dutzend Mikrometern als Bearbeitungsfehler gewertet werden.
-
Bei einer Werkzeugmaschine mit numerischer Regelung, Industriemaschine, einem Roboter, Förderer oder dergleichen ist ein Teil, das tatsächlich Arbeit verrichtet, wie etwa ein Werkzeug, ein Förderkörper oder eine Roboterhand, das Regelziel, an dem die Trajektorieregelung genau umgesetzt werden soll. Es ist jedoch schwierig, den Positionsdetektor zum Erfassen der Position des anzutreibenden Objekts an einer Position anzubringen, die für alle Wellen genau mit der Position des Regelziels übereinstimmt. Daher kann die Servoregelvorrichtung auch beim Durchführen der Rückkopplungsregelung die Bewegung des Regelziels mit dem Positionsdetektor nicht genau erfassen, es sei denn die Befestigungsposition des Positionsdetektors stimmt mit der Position des Regelziels überein, und daher tritt der Trajektoriefehler auf.
-
Wenn der Trajektoriefehler bei der Bewegungstrajektorie auftritt, wird der Fehler durch das Eingeben eines Korrekturbefehls in die Servoregelvorrichtung verringert. Um den Korrekturbefehl zu erzeugen, muss die Ursache für das Auftreten des Trajektoriefehlers ermittelt werden und das Ausmaß des Fehlers bei dem auftretenden Trajektoriefehler muss bekannt sein. Als direktes Verfahren zum Erfassen des Ausmaßes des Fehlers ist ein Verfahren bekannt, bei dem ein Abstandsmessgerät am Regelziel angebracht ist, um den auftretenden Trajektoriefehler zu messen. Ein Messgerät, das als Double-Ball-Bar bezeichnet wird, verfügt beispielsweise über zwei hochpräzise Stahlkugeln, die über einen Abstandsmesser verbunden sind, und misst einen relativen Abstand zwischen zwei Punkten bei einer Bewegung, bei der eine relative Entfernung zwischen den beiden Kugeln konstant gehalten wird. Der Double-Ball-Bar wird häufig beim Messen des Trajektoriefehlers einer Werkzeugspitze einer Werkzeugmaschine verwendet. Da es jedoch schwierig ist, Arbeiten wie Bearbeitung, Montage oder Fördern durchzuführen, während ein solches Abstandsmessgerät angebracht ist, muss die Arbeit jedes Mal angehalten werden, wenn die Messung durchgeführt wird. Es ist daher vorzuziehen, ein Verfahren zu verwenden, das einfacher ist und das den Trajektoriefehler des Regelziels misst oder schätzt, während die Arbeit ausgeführt wird.
-
Die Korrektur des Trajektoriefehlers der Servoregelvorrichtung auf Grundlage eines Vorhersageergebnisses des Trajektoriefehlers unter Verwendung der Modellierung einer Maschine, Systemidentifikation oder dergleichen und eines Vorhersageergebnisses der Fehlerursache ist ein wichtiges Thema, zu dem eine Vielzahl von Verfahren bekannt sind. Zum Beispiel offenbart Patentdokument 1 eine Technik zum Erhalten einer Frequenzcharakteristik einer Maschine aus einem von einer Erfassungseinrichtung erfassten Betriebsgröße und einem Betriebsbefehl, und zum Ermitteln eines starren Lastmodells einer Lastmenge der Maschine, eines Reibungsmodells, in dem die Reibung quantifiziert wird, und eines Schwingungscharakteristikmodells.
-
Liste der Anführungen
-
Patentliteratur
-
Patentdokument 1:
Japanische Offenlegungsschrift Nr. 2006-333594
-
Kurzdarstellung
-
Technisches Problem
-
Die im Patentdokument 1 beschriebene Technik birgt jedoch das Problem, dass es zwar möglich ist, die Ursache für das Auftreten eines Fehlers und das maximale Ausmaß des Fehlers im Frequenzbereich zu ermitteln, es aber nicht möglich ist, ein Istausmaß eines Fehlers vorherzusagen, der bei einem Regelziel auftritt.
-
Angesichts des Vorstehenden wurde die vorliegende Erfindung entwickelt und eine Aufgabe der vorliegenden Erfindung besteht darin, eine Servoregelvorrichtung bereitzustellen, die eine Charakteristik einer Maschine, die eine Trajektorieregelung durchführt, ermitteln kann und eine Systemidentifikation durchführen kann, die einen Trajektoriefehler eines Regelziels simuliert.
-
Lösung des Problems
-
Um das vorstehende Problem zu lösen und die Aufgabe zu erfüllen ist die vorliegende Erfindung eine Servoregelvorrichtung, die eine erfasste Position, die eine Position eines anzutreibenden Objekts angibt, das ein Regelziel ist, an mindestens einen Aktuator zurückkoppelt, sodass die Position des anzutreibenden Objekts einem Positionsbefehl folgt, der eine Position angibt, die von einer Sollwertberechnungseinheit berechnet wird, und den Aktuator durch eine Reglereinheit regelt, wobei die erfasste Position von einem Positionsdetektor erfasst wird, der an einem Erfassungspunkt angebracht ist, wobei der Aktuator eine mechanische Einheit antreibt, mit der das anzutreibende Objekt verbunden ist. Die Servoregelvorrichtung beinhaltet: eine erste Erfassungseinheit zum Erfassen einer Zustandsgröße eines Bewertungspunkts, der an dem anzutreibenden Objekt oder einer Position, die dem anzutreibenden Objekt entspricht, festgelegt ist; eine zweite Erfassungseinheit zum Erfassen einer Zustandsgröße eines Referenzpunkts, der an der mechanischen Einheit zwischen dem Bewertungspunkt und dem Aktuator festgelegt ist; eine Berechnungseinheit für die erste Übertragungsfunktion zum Berechnen einer ersten Übertragungsfunktion, die ein Frequenzgang vom Referenzpunkt zum Bewertungspunkt ist, durch Verwendung der Zustandsgröße des Bewertungspunkts und der Zustandsgröße des Referenzpunkte; eine Berechnungseinheit für die zweite Übertragungsfunktion zum Berechnen einer zweiten Übertragungsfunktion, die ein Frequenzgang von der erfassten Position zum Referenzpunkt ist, durch Verwendung der Zustandsgröße des Referenzpunkts und der erfassten Position; und eine erste Simulationseinheit zum Berechnen einer geschätzten Position des Bewertungspunkts durch Verwendung der ersten Übertragungsfunktion, der zweiten Übertragungsfunktion und eines Steifigkeitswertparameters, der einen Steifigkeitswert zwischen der erfassten Position und dem Referenzpunkt angibt. Die erste Simulationseinheit beinhaltet: eine Reglersimulationseinheit zum Erzeugen eines geschätzten Solldrehmomentwerts für den Aktuator durch Simulieren der Reglereinheit unter Verwendung einer geschätzten Erfassungspunktposition, die ein Verhalten der erfassten Position schätzt, als Rückkopplung; eine Berechnungseinheit für die geschätzte Referenzpunktposition zum Berechnen einer geschätzten Referenzpunktposition, die ein Verhalten des Referenzpunkts schätzt, durch Verwendung der zweiten Übertragungsfunktion und der geschätzten Erfassungspunktposition; eine Berechnungseinheit für die geschätzte Bewertungspunktposition zum Berechnen einer geschätzten Bewertungspunktposition, die ein Verhalten des Bewertungspunkts schätzt, durch Verwendung der ersten Übertragungsfunktion und der geschätzten Referenzpunktposition; eine Schätzeinheit für die Antriebsreaktionskraft zum Berechnen eines geschätzten Antriebsreaktionskraftwerts durch Verwendung der geschätzten Erfassungspunktposition, der geschätzten Referenzpunktposition und des Steifigkeitswertparameters; eine Berechnungseinheit für die geschätzte Erfassungspunktposition zum Berechnen der geschätzten Erfassungspunktposition durch Verwendung eines geschätzten effektiven Drehmomentwerts, der aus dem geschätzten Antriebsreaktionskraftwert und dem geschätzten Solldrehmomentwert berechnet wird; und eine Festlegungseinheit für Simulatorparameter zum Festlegen der ersten Übertragungsfunktion in der Berechnungseinheit für die geschätzte Bewertungspunktposition, zum Festlegen der zweiten Übertragungsfunktion in der Berechnungseinheit für die geschätzte Referenzpunktposition und zum Festlegen des Steifigkeitswertparameters in der Schätzeinheit für die Antriebsreaktionskraft.
-
Vorteilhafte Wirkungen der Erfindung
-
Gemäß der vorliegenden Erfindung bietet die Servoregelvorrichtung den Vorteil, dass sie in der Lage ist, die Charakteristik der Maschine zu ermitteln, die die Trajektorieregelung durchführt, und eine Systemidentifikation durchzuführen, die den Trajektoriefehler des Regelziels simuliert.
-
Figurenliste
-
- 1 ist eine Darstellung, die ein Beispiel für eine Konfiguration einer Werkzeugmaschine mit numerischer Regelung gemäß einer ersten Ausführungsform veranschaulicht.
- 2 ist eine schematische Darstellung, die ein Beispiel für eine Konfiguration einer X-Achsen-Servoregelvorrichtung veranschaulicht, die eine Welle der Werkzeugmaschine mit numerischer Regelung gemäß der ersten Ausführungsform ist.
- 3 ist ein Blockdiagramm, das ein Beispiel für eine Konfiguration einer Reglereinheit gemäß der ersten Ausführungsform veranschaulicht.
- 4 ist ein Blockdiagramm, das ein Beispiel für eine Konfiguration einer Servoregelvorrichtung, die eine Systemidentifikation durchführt, gemäß der ersten Ausführungsform veranschaulicht.
- 5 ist ein Blockdiagramm, das ein Beispiel für eine Konfiguration einer Simulationseinheit gemäß der ersten Ausführungsform veranschaulicht.
- 6 ist ein Blockdiagramm, das ein Beispiel für eine Konfiguration einer Reglersimulationseinheit gemäß der ersten Ausführungsform veranschaulicht.
- 7 ist ein Blockdiagramm, das ein Beispiel für eine Konfiguration einer Schätzeinheit für die Antriebsreaktionskraft gemäß der ersten Ausführungsform veranschaulicht.
- 8 ist ein Ablaufdiagramm, das einen Betrieb der Servoregelvorrichtung gemäß der ersten Ausführungsform veranschaulicht.
- 9 ist ein Diagramm, das ein Beispiel für einen Fall veranschaulicht, in dem die Verarbeitungsschaltung der Servoregelvorrichtung gemäß der ersten Ausführungsform einen Prozessor und einen Speicher beinhaltet.
- 10 ist ein Diagramm, das ein Beispiel für einen Fall veranschaulicht, in dem die Verarbeitungsschaltung der Servoregelvorrichtung gemäß der ersten Ausführungsform dedizierte Hardware beinhaltet.
- 11 ist ein Diagramm, das ein Beispiel für eine Konfiguration einer Servoregelvorrichtung, die eine Systemidentifikation durchführt, gemäß einer zweiten Ausführungsform veranschaulicht.
- 12 ist eine schematische Darstellung, die ein Beispiel für eine Konfiguration einer X-Achsen-Servoregelvorrichtung veranschaulicht, die eine Welle einer Werkzeugmaschine mit numerischer Regelung gemäß der zweiten Ausführungsform ist.
- 13 ist ein Blockdiagramm, das ein Beispiel für eine Konfiguration einer Reglereinheit gemäß der zweiten Ausführungsform veranschaulicht.
- 14 ist eine schematische Darstellung, die ein Beispiel für eine Konfiguration einer Servoregelvorrichtung gemäß einer dritten Ausführungsform veranschaulicht.
- 15 ist ein Diagramm, das ein Beispiel für eine Konfiguration einer Servoregelvorrichtung, die eine Systemidentifikation durchführt, gemäß einer vierten Ausführungsform veranschaulicht.
- 16 ist ein Ablaufdiagramm, das einen Betrieb der Servoregelvorrichtung gemäß der vierten Ausführungsform veranschaulicht.
- 17 ist ein Diagramm, das ein Beispiel für eine Konfiguration einer Servoregelvorrichtung, die eine Systemidentifikation durchführt, gemäß einer fünften Ausführungsform veranschaulicht.
- 18 ist ein Blockdiagramm, das ein Beispiel für eine Konfiguration einer Berechnungseinheit für Korrekturbefehle gemäß der fünften Ausführungsform veranschaulicht.
- 19 ist ein Blockdiagramm, das ein Beispiel für eine Konfiguration einer Reglereinheit gemäß der fünften Ausführungsform veranschaulicht.
- 20 ist ein Ablaufdiagramm, das einen Betrieb der Servoregelvorrichtung gemäß der fünften Ausführungsform veranschaulicht.
- 21 ist ein Diagramm, das ein Beispiel für eine Konfiguration einer Servoregelvorrichtung, die eine Systemidentifikation durchführt, gemäß einer sechsten Ausführungsform veranschaulicht.
- 22 ist ein Blockdiagramm, das ein Beispiel für eine Konfiguration einer Servoregelvorrichtung, die eine Systemidentifikation durchführt, gemäß einer siebenten Ausführungsform veranschaulicht.
- 23 ist ein Blockdiagramm, das ein Beispiel für eine Konfiguration einer Lerneinheit gemäß der siebenten Ausführungsform veranschaulicht.
- 24 ist ein Blockdiagramm, das ein Beispiel für eine Konfiguration einer Simulationseinheit gemäß der siebenten Ausführungsform veranschaulicht.
- 25 ist ein Ablaufdiagramm, das einen Betrieb der Servoregelvorrichtung gemäß der siebenten Ausführungsform veranschaulicht.
- 26 ist ein Diagramm, das ein Beispiel für eine Konfiguration einer Servoregelvorrichtung, die eine Systemidentifikation durchführt, gemäß einer achten Ausführungsform veranschaulicht.
- 27 ist ein Blockdiagramm, das ein Beispiel für eine Konfiguration einer Lerneinheit gemäß der achten Ausführungsform veranschaulicht.
- 28 ist ein Blockdiagramm, das ein Beispiel für eine Konfiguration einer Simulationseinheit gemäß der achten Ausführungsform veranschaulicht.
-
Beschreibung von Ausführungsformen
-
Nunmehr wird eine Servoregelvorrichtung gemäß Ausführungsformen der vorliegenden Erfindung unter Bezugnahme auf die Zeichnungen näher beschrieben. Es ist zu beachten, dass die vorliegende Erfindung nicht auf die Ausführungsformen beschränkt ist. Obwohl insbesondere ein Fall beschrieben wird, in dem die Servoregelvorrichtung die Systemidentifikation einer Werkzeugmaschine mit numerischer Regelung durchführt, ist die vorliegende Erfindung auch auf eine Maschine, wie etwa eine Industriemaschine, einen Roboter oder einen Förderer, die eine oder mehrere Servoregelvorrichtungen beinhalten, die ein Regelziel unter Verwendung eines Aktuators antreiben, anwendbar.
-
Erste Ausführungsform.
-
1 ist eine Darstellung, die ein Beispiel für eine Konfiguration einer Werkzeugmaschine 99 mit numerischer Regelung gemäß einer ersten Ausführungsform der vorliegenden Erfindung veranschaulicht. Die Werkzeugmaschine 99 mit numerischer Regelung ist eine orthogonale dreiachsige vertikale Werkzeugmaschine und beinhaltet insgesamt drei Servoregelvorrichtungen für eine X-Achse, eine Y-Achse und eine Z-Achse. Die Werkzeugmaschine 99 mit numerischer Regelung treibt ein Werkzeug 76 in Richtung der X-Achse und der Z-Achse an und treibt ein auf einem Werktisch 77 platziertes Werkstück 78 in Richtung der Y-Achse an, um das Werkstück 78 zu bearbeiten. Das heißt, in der Werkzeugmaschine 99 mit numerischer Regelung ist ein anzutreibendes Objekt, das ein Regelziel in der X-Achse und der Z-Achse ist, das Werkzeug 76, und ein anzutreibendes Objekt, das ein Regelziel in der Y-Achse ist, das Werkstück 78.
-
In der Werkzeugmaschine 99 mit numerischer Regelung wird für jede Achse eine Drehbewegung eines Motors 71 als Aktuator durch eine Vorschubspindel 73 in eine lineare Bewegung in Antriebsrichtung einer entsprechenden Achse umgesetzt. Folglich erreicht die Werkzeugmaschine 99 mit numerischer Regelung eine Bewegung in einem dreidimensionalen Raum mit X-, Y- und Z-Achse, das heißt in drei Freiheitsgraden, durch die Bewegung des Werkzeugs 76 in zwei Freiheitsgraden in einer XZ-Ebene und die Bewegung des Werkstücks 78 in einem Freiheitsgrad in der Y-Richtung, die die linearen Bewegungen in den Achsen kombinieren. Die Werkzeugmaschine 99 mit numerischer Regelung bewirkt, dass sich das Werkzeug 76 dreht und entfernt das Material eines Abschnitts des Werkstücks 78, der sich mit dem Werkzeug 76 überlagert, wodurch eine dreidimensionale Form des Werkstücks 78 entsteht. Ein relativer Abstand zwischen dem Werkzeug 76 und dem Werkstück 78 während der Bearbeitung bewirkt zum Beispiel unzureichendes Abtragen oder übermäßiges Abtragen des Materials im Werkstück 78, was zu einem Bearbeitungsfehler führt. Daher ist der wichtigste Bereich bei der Bewertung der Bearbeitungsgenauigkeit der Werkzeugmaschine 99 mit numerischer Regelung eine Spitze des Werkzeugs 76 für die X-Achse und die Z-Achse und ein Bearbeitungspunkt des Werkstücks 78 für die Y-Achse.
-
2 ist eine schematische Darstellung, die ein Beispiel für eine Konfiguration einer X-Achsen-Servoregelvorrichtung 101 veranschaulicht, die eine Welle der Werkzeugmaschine 99 mit numerischer Regelung gemäß der ersten Ausführungsform ist. Der Einfachheit halber wird hier nur die X-Achsen-Servoregelvorrichtung 101 als Beispiel veranschaulicht, aber Y-Achsen- und Z-Achsen-Servoregelvorrichtungen weisen ähnliche Konfigurationen auf. Ein Unterschied zwischen den Konfigurationen besteht jedoch darin, dass das anzutreibende Objekt für die X-Achse und die Z-Achse das Werkzeug 76 ist, während das anzutreibende Objekt für die Y-Achse das Werkstück 78 ist. Obwohl die Z-Achse zwischen der X-Achse und dem Werkzeug 76 vorhanden ist, verlaufen die Antriebsrichtung der X-Achse und die Antriebsrichtung der Z-Achse orthogonal zueinander und überlagern sich nicht gegenseitig. Daher kann die Z-Achse von der X-Achse aus gesehen als eines der unabhängigen Strukturelemente betrachtet werden und ist daher nicht veranschaulicht.
-
Bei der X-Achsen-Servoregelvorrichtung 101 wird eine Drehbewegung des Motors 71 über eine Kupplung 74 auf die Vorschubspindel 73 übertragen und über eine Mutter 80 in eine Linearbewegung umgesetzt. Die Linearbewegung der Vorschubspindel 73 wird durch Stützlager 75a und 75b begrenzt. Die Linearbewegung der Mutter 80 treibt das Werkzeug 76 in X-Richtung über die Z-Achse, die sich zwischen dem Werkzeug 76 und der Mutter 80 befindet und ein mechanisches Strukturelement 72, das ein Sammelbegriff für ein Stützelement und dergleichen ist, an.
-
Ein Positionsbefehl Xc für die X-Achse wird von einer Sollwertberechnungseinheit 9 ausgegeben und in eine Reglereinheit 6a eingegeben. Der Positionsbefehl Xc wird von der Sollwertberechnungseinheit 9 berechnet und gibt die Position des anzutreibenden Objekts in einem gewünschten Regelzustand an. Die Reglereinheit 6a führt eine Rückkopplungsregelung durch, um einen Fehler zwischen dem Positionsbefehl Xc und einer erfassten Position Xd, die durch Multiplizieren eines Motordrehwinkels, der von einem an dem Motor 71 angebrachten Drehwinkeldetektor 2 erfasst wird, mit einer Spindelsteigung der Vorschubspindel 73 erhalten wird, zu reduzieren und gibt einen Motorstrom Im an den Motor 71 aus, um eine mechanische Einheit 7a anzutreiben. Das anzutreibende Objekt, das das Regelziel ist, ist mit der mechanischen Einheit 7a verbunden. Obwohl der Drehwinkeldetektor 2 hier nur den Drehwinkel des Motors 71 erfasst, können die Drehbewegung und die Linearbewegung ohne Weiteres wie vorstehend beschrieben umgewandelt werden. Daher multipliziert der Drehwinkeldetektor 2 in der vorliegenden Ausführungsform den Motordrehwinkel mit der Spindelsteigung der Vorschubspindel 73 und gibt die erfasste Position Xd nach der Umwandlung in die Linearbewegung der X-Achsen-Servoregelvorrichtung 101 aus. Der Drehwinkeldetektor 2 ist ein Positionsdetektor, der an dem Motor 71, das heißt einem Erfassungspunkt, angebracht ist.
-
3 ist ein Blockdiagramm, das ein Beispiel für eine Konfiguration der Reglereinheit 6a gemäß der ersten Ausführungsform veranschaulicht. Die Reglereinheit 6a gibt den Motorstrom Im unter Verwendung des Positionsbefehls Xc, der von der Sollwertberechnungseinheit 9 eingegeben wird, und der erfassten Position Xd, die von dem Drehwinkeldetektor 2 eingegeben wird, aus. Zuerst berechnet ein Addierer/Subtrahierer 61a eine Positionsabweichung (Xc-Xd), die eine Differenz zwischen dem Positionsbefehl Xc und der erfassten Position Xd ist. Ein Positionsregler 62 führt eine Positionsregelung gemäß der Positionsabweichung (Xc-Xd) durch und erzeugt einen Geschwindigkeitsbefehl Vc. Ein Beispiel für den Positionsregler 62 ist ein Proportionalregler (P). Der Geschwindigkeitsrechner 65 erzeugt aus der erfassten Position Xd eine erfasste Geschwindigkeit Vd. Ein Beispiel für den Geschwindigkeitsrechner 65 ist ein Differentialrechner.
Ein Addierer/Subtrahierer 61b berechnet eine Geschwindigkeitsabweichung Vde=Vc-Vd, die eine Differenz zwischen dem Geschwindigkeitsbefehl Vc und der erfassten Geschwindigkeit Vd ist. Ein Geschwindigkeitsregler 63 führt eine Geschwindigkeitsregelung gemäß der Geschwindigkeitsabweichung Vde durch und erzeugt einen Strombefehl Ic. Ein Beispiel für den Geschwindigkeitsregler 63 ist ein Proportional-Integral-Regler (PI-Regler). Ein Addierer/Subtrahierer 61c berechnet eine Stromabweichung (Ic-Im), die eine Differenz zwischen dem Strombefehl Ic und dem Motorstrom Im ist. Schließlich führt ein Stromregler 64 eine Stromregelung gemäß der Stromabweichung (Ic-Im) durch und gibt den Motorstrom Im aus. Ein Beispiel für den Stromregler 64 ist ein PI-Regler.
-
Wie vorstehend beschrieben, führt die Reglereinheit 6a die Reglung mithilfe einer Rückkopplungsregelung so durch, dass die erfasste Position Xd mit der Position übereinstimmt, die durch den Positionsbefehl Xc angegeben wird. Bei der Werkzeugmaschine 99 mit numerischer Regelung kann die Befestigungsposition des Drehwinkeldetektors 2 jedoch nicht mit der Spitze des Werkzeugs 76, das das Regelziel ist, übereinstimmen. In einem Fall, in dem zum Beispiel eine Störung, die vom Drehwinkeldetektor 2 nicht erfasst werden kann, im Regelziel auftritt, oder in einem Fall, in dem die Rückkopplungsregelung der Reglereinheit 6a die Störung nicht aufholen kann, tritt daher ein unbeabsichtigter Fehler bei der Bewegung des Regelziels, das heißt des Werkzeugs 76, in der Werkzeugmaschine 99 mit numerischer Regelung auf.
-
Beispiele für Störungen, die bekanntermaßen die Bearbeitung beeinflussen, beinhalten Vibrationen der Kupplung 74, der Vorschubspindel 73, des mechanischen Strukturelements 72 und dergleichen, einen Fehler aufgrund einer Reibungskraft der Welle und dergleichen. Es ist bekannt, dass sich die Eigenschaften dieser Störungen in Abhängigkeit von der Position einer anderen Welle, die sich zwischen dem Werkzeug 76 und der Mutter 80 befindet, der Masse des Werkzeugs 76 und des Werkstücks 78, der Alterung der Maschine, der Abnutzung der Vorschubspindel 73 und der Mutter 80, der Menge des Schmieröls auf jeder beweglichen Welle, einer Änderung der Lufttemperatur und dergleichen ändern.
-
Da die Störung in Abhängigkeit von der Einsatzsituation wie vorstehend beschrieben variiert, ist es zum Aufrechterhalten der Bearbeitungsqualität des Werkstücks 78 in der Werkzeugmaschine 99 mit numerischer Regelung notwendig, eine Regelung wie etwa eine Korrektur gemäß der Störung in der Sollwertberechnungseinheit 9 oder eine entsprechende Änderung eines Regelparameters der Reglereinheit 6a durchzuführen. Zu diesem Zweck ist es vorteilhaft, einen Fehler, der in dem Regelziel während des Betriebs der Werkzeugmaschine 99 mit numerischer Regelung auftritt, kontinuierlich vorhersagen zu können.
-
4 ist ein Blockdiagramm, das ein Beispiel für eine Konfiguration einer Servoregelvorrichtung 100, die eine Systemidentifikation durchführt, gemäß der ersten Ausführungsform veranschaulicht. Die Servoregelvorrichtung 100 beinhaltet einen Bewertungspunktsensor 1a, einen Referenzpunktsensor 1b, den Drehwinkeldetektor 2, eine Berechnungseinheit 4a für die erste Übertragungsfunktion, eine Berechnungseinheit 4b für die zweite Übertragungsfunktion, eine Simulationseinheit 5, die Reglereinheit 6a, die mechanische Einheit 7a, eine Steifigkeitswerthalteeinheit 8 und die Sollwertberechnungseinheit 9. Die Servoregelvorrichtung 100 koppelt die erfasste Position Xd, die die von dem Drehwinkeldetektor 2 erfasste Position des anzutreibenden Objekts angibt, an einen oder mehrere der Motoren 71 zurück, die die mechanische Einheit 7a antreiben, sodass die Position des Werkzeugs 76 als das anzutreibende Objekt dem Positionsbefehl Xc folgt, wodurch die Motoren 71 von der Reglereinheit 6a geregelt werden.
-
Die Servoregelvorrichtung 100 beinhaltet zwei dreiachsige Beschleunigungssensoren. Bei der vorstehenden Konfiguration kann die Servoregelvorrichtung 100 dynamische Eigenschaften der betriebenen Maschine messen. Die zwei dreiachsigen Beschleunigungssensoren sind Beschleunigungssensoren desselben Typs, werden aber der Einfachheit halber unterscheidend als Bewertungspunktsensor 1a und als Referenzpunktsensor 1b bezeichnet. Was die Anbringungspositionen der dreiachsigen Beschleunigungssensoren betrifft, ist, wie in 2 veranschaulicht, der Bewertungspunktsensor 1a an einer Spindelendfläche 83 angebracht, die ein Bereich ist, an dem das Werkzeug 76 der Werkzeugmaschine 99 mit numerischer Regelung angebracht ist, und ist der Referenzpunktsensor 1b an einem Mutterblock 79 angebracht, der ein Stützelement der Mutter 80 ist. Die Befestigungsposition des Bewertungspunktsensors 1a wird als Bewertungspunkt festgelegt und die Befestigungsposition des Referenzpunktsensors 1b wird als Referenzpunkt festgelegt. Der Bewertungspunktsensor 1a kann als erste Erfassungseinheit bezeichnet werden und der Referenzpunktsensor 1b kann als zweite Erfassungseinheit bezeichnet werden. Der Bewertungspunkt stimmt vorzugsweise mit der Position des Regelziels überein, aber da sich das Werkzeug 76 im Fall der X-Achse dreht, kann die Beschleunigung nicht korrekt gemessen werden, wenn der Beschleunigungssensor an der Position des Regelziels angebracht ist. Daher wird für die X-Achse die Spindelendfläche 83, die dem Werkzeug 76 am nächsten ist, als Bewertungspunkt festgelegt. Im Fall der Y-Achse hingegen dreht sich das Werkstück 78 nicht, sodass der Beschleunigungssensor mit einer oberen Fläche des Werkstücks 78 oder des Werktisches 77, die dem Bearbeitungspunkt am nächsten sind, als Bewertungspunkt installiert werden kann. Der Bewertungspunkt kann auch zu einer beliebigen Stelle geändert werden, solange er sich auf einem Element befindet, bei dem davon ausgegangen werden kann, dass er das gleiche Fehlerausmaß erzeugt wie das des Regelziels. Der Bewertungspunkt wird demnach am anzutreibenden Objekt oder an der Position, die dem anzutreibenden Objekt entspricht, festgelegt.
-
Da der dreiachsige Beschleunigungssensor die Beschleunigung in den Richtungen von drei zueinander orthogonalen Achsen mit einem Sensor messen kann, kann die Beschleunigung in drei Dimensionen durch Verwendung eines dreiachsigen Beschleunigungssensors gemessen werden. Da jedoch nur ein Beschleunigungssignal in der X-Richtung, wobei es sich um die Antriebsrichtung handelt, für die Systemidentifikation in der X-Achsen-Servoregelvorrichtung 101 verwendet wird, kann stattdessen auch ein einachsiger Beschleunigungssensor verwendet werden. Alternativ kann ein dreiachsiger Beschleunigungssensor am Bewertungspunkt installiert werden, sodass Signale in der X-Richtung und Z-Richtung in der X-Achsen-Servoregelvorrichtung bzw. der Z-Achsen-Servoregelvorrichtung verwendet werden können, und ein einachsiger Beschleunigungssensor kann für jede Achse am Referenzpunkt installiert werden. Bei der Werkzeugmaschine 99 mit numerischer Regelung, die eine Vielzahl von Wellen beinhaltet, kann für jede Welle ein anderer Referenzpunkt ausgewählt werden.
-
In der Servoregelvorrichtung 100 wird der dreiachsige Beschleunigungssensor durch ein Verfahren befestigt, das zum Beispiel eine Haftung unter Verwendung von Magnetkraft durch einen Magneten, eine Befestigung unter Verwendung einer Spannvorrichtung und einer Schraube, eine Fixierung unter Verwendung von Wachs oder eine Fixierung unter Verwendung eines Klebstoffs beinhaltet.
Die vorliegende Ausführungsform veranschaulicht das Beispiel, bei dem die dreiachsigen Beschleunigungssensoren für den Bewertungspunktsensor 1a und den Referenzpunktsensor 1b verwendet werden, aber sofern die Bewegung an dem Bewertungspunkt und an dem Referenzpunkt gemessen werden kann, kann auch ein Geschwindigkeitsmessgerät wie ein Laser-Doppler-Vibrometer, ein Laser-Abstandssensor oder ein Abstandsmessgerät wie ein Laser-Interferometer verwendet werden.
-
Der Referenzpunkt kann an einer beliebigen Stelle festgelegt werden, solange er auf einer Bahn liegt, durch die die Antriebskraft zwischen dem Motor 71 und dem Bewertungspunkt übertragen wird. Die Kupplung 74, die Vorschubspindel 73 und dergleichen führen jedoch eine Drehbewegung aus. Wenn der Referenzpunkt auf dem Element, wie etwa der Kupplung 74 oder der Vorschubspindel 73, festgelegt ist, ist es daher notwendig, einen Drehwinkeldetektor an der Kupplung 74, der
Vorschubspindel 73 oder dergleichen anstatt an dem dreiachsigen Beschleunigungssensor anzubringen, um die Winkelbeschleunigung aus dem Drehwinkel zu berechnen, oder einen Gyrosensor zu installieren, der die Winkelbeschleunigung direkt messen kann.
-
Wie in 2 veranschaulicht, führt die Reglereinheit 6a in der X-Achsen-Servoregelvorrichtung 101 eine Rückkopplungsregelung gemäß dem von der Sollwertberechnungseinheit 9 erzeugten Positionsbefehl Xc durch und treibt die mechanische Einheit 7a an. Zu diesem Zeitpunkt erfasst der Bewertungspunktsensor 1a ein Beschleunigungssignal in X-Richtung an dem Bewertungspunkt. Der Referenzpunktsensor 1b erfasst am Referenzpunkt ein Beschleunigungssignal in der X-Richtung. Der Bewertungspunktsensor 1a und der Referenzpunktsensor 1b können auch etwas anderes als die Beschleunigung erfassen, solange dieses einen Bewegungszustand des anzutreibenden Objekts angibt. Etwas, das den Bewegungszustand des anzutreibenden Objekts angibt, der von dem Bewertungspunktsensor 1a und dem Referenzpunktsensor 1b erfasst wird, kann als Zustandsgröße bezeichnet werden.
-
Die Berechnungseinheit 4a für die erste Übertragungsfunktion empfängt die Beschleunigungssignale in der X-Richtung vom Bewertungspunktsensor 1a und dem an der mechanischen Einheit 7a angebrachten
Referenzpunktsensor 1b. Darüber hinaus empfängt die Berechnungseinheit 4b für die zweite Übertragungsfunktion das Beschleunigungssignal in der X-Richtung vom Referenzpunktsensor 1b und die erfasste Position Xd, die von dem am Motor 71 angebrachten Drehwinkeldetektor 2 ausgegeben wird. Die Berechnungseinheit 4a für die erste Übertragungsfunktion berechnet eine erste Übertragungsfunktion FRF1(s)=Xe(s)/Xr(s), die ein Frequenzgang von einer Referenzpunktposition Xr zu einer Bewertungspunktposition Xe ist, durch Verwendung der Referenzpunktbeschleunigung Ar, die das von dem Referenzpunktsensor 1b erlangte Beschleunigungssignal ist, und der Bewertungspunktbeschleunigung Ae, die das von dem Bewertungspunktsensor 1a erlangte Beschleunigungssignal ist. Es ist zu beachten, dass „s“ für einen Laplace-Operator steht. Die Berechnungseinheit 4b für die zweite Übertragungsfunktion berechnet eine zweite Übertragungsfunktion FRF2(s)=Xr(s)/Xd(s), die ein Frequenzgang von der erfassten Position Xd zur Referenzpunktposition Xr ist, durch Verwendung der erfassten Beschleunigung Ad, die durch Differenzierung zweiter Ordnung der erfassten Position Xd, die durch den Drehwinkeldetektor 2 erfasst wird, erhalten wird, und der Referenzpunktbeschleunigung Ar, die von dem Referenzpunktsensor 1b erlangt wird. Ein Beispiel für die von der Berechnungseinheit 4a für die erste Übertragungsfunktion und der Berechnungseinheit 4b für die zweite Übertragungsfunktion berechnete Übertragungsfunktion wird hier als Ausdruck (1) dargestellt. In dem Ausdruck sind „n“ und „m“, die die Ordnung der Übertragungsfunktion bestimmen, ganze Zahlen, und „a
0“, ..., und „a
n“ und „b
0“, ..., und „b
m“ sind jeweils ein Koeffizient eines Terms jeder Ordnung der Übertragungsfunktion.
[Ausdruck 1]
-
Wenn das mechanische Strukturelement 72 ein vollständiger starrer Körper ist, ist Xd=Xr=Xe erfüllt, aber die tatsächliche mechanische Struktur kann nicht durch einen vollständigen starren Körper approximiert werden, sodass die Schwingungsübertragungseigenschaften und das Übertragungsverhalten an jedem Punkt unterschiedlich sind. Der Algorithmus zur Berechnung der Übertragungsfunktion kann jedoch ein beliebiger Algorithmus zur Berechnung der Übertragungsfunktion eines Systems mit einem Eingang und einem Ausgang, das über ein Eingangssignal und ein Ausgangssignal einer bekannten Zeitreihe verfügt, sein, wie etwa eine Methode der kleinsten Quadrate, eine rekursive Methode der kleinsten Quadrate, eine autoregressive, exogene (ARX) Identifikation oder eine Eigenwertzerlegung.
-
Unter Verwendung der ersten Übertragungsfunktion FRF1 (s), der zweiten Übertragungsfunktion FRF2 (s) und eines vorab in der Steifigkeitswerthalteeinheit 8 gespeicherten Steifigkeitsparameters Kdr berechnet die Simulationseinheit 5 eine geschätzte Bewertungspunktposition Xe1 und eine geschätzte Erfassungspunktposition Xd1 für den von der Sollwertberechnungseinheit 9 eingegebenen Istpositionsbefehl Xc und gibt die geschätzte Bewertungspunktposition Xe1 und die geschätzte Erfassungspunktposition Xd1 an eine Anzeige 10 aus. Hier ist der Steifigkeitsparameter Kdr ein Steifigkeitswert zwischen der erfassten Position Xd und der Referenzpunktposition Xr, der vorab gemessen und in der Steifigkeitswerthalteeinheit 8 gespeichert wird. Der Steifigkeitswertparameter Kdr ist eine skalare Größe.
-
5 ist ein Blockdiagramm, das ein Beispiel für eine Konfiguration der Simulationseinheit 5 gemäß der ersten Ausführungsform veranschaulicht. Die Simulationseinheit 5 beinhaltet eine Reglersimulationseinheit 51, eine Berechnungseinheit 53 für die geschätzte Erfassungspunktposition, eine Berechnungseinheit 54 für die geschätzte Referenzpunktposition, eine Schätzeinheit 55 für die Antriebsreaktionskraft, eine Berechnungseinheit 56 für die geschätzte Bewertungspunktposition, eine Festlegungseinheit 57 für Simulationsparameter und einen Addierer/Subtrahierer 61e. Die Reglersimulationseinheit 51, die die Reglereinheit 6a simuliert, berechnet einen geschätzten Motordrehmomentwert Tm1 unter Verwendung des Positionsbefehls Xc und der geschätzten Erfassungspunktposition Xd1. 6 ist ein Blockdiagramm, das ein Beispiel für eine Konfiguration der Reglersimulationseinheit 51 gemäß der ersten Ausführungsform veranschaulicht. Die Reglersimulationseinheit 51 unterscheidet sich von der Reglereinheit 6a dadurch, dass die geschätzte Erfassungspunktposition Xd1 anstelle der erfassten Position Xd als Rückkopplungssignal verwendet wird, und dass der von einem Drehmomentschätzer 70 berechnete geschätzte Motordrehmomentwert Tm1 für einen Ausgang Im1 des Stromreglers 64 ausgegeben wird. Wie soeben beschrieben, verwendet die Reglersimulationseinheit 51 die geschätzte Erfassungspunktposition Xd1, die das Verhalten der erfassten Position Xd schätzt, als Rückkopplung und simuliert die Reglereinheit 6a, um den geschätzten Motordrehmomentwert Tm1 zu erzeugen, der ein geschätzter Solldrehmomentwert für den Motor 71 ist. Ein Beispiel für den geschätzten Motordrehmomentwert Tm1 ist ein geschätzter Wert für eine Drehmomentkonstante des Motors 71.
-
Die Beschreibung verweist nunmehr erneut auf 5. Der Addierer/Subtrahierer 61e berechnet einen geschätzten effektiven Drehmomentwert (Tm1-Tr1) aus einer Differenz zwischen dem geschätzten Motordrehmomentwert Tm1, der der geschätzte Solldrehmomentwert ist, und einem geschätzten Antriebsreaktionskraftwert Tr1. Die Berechnungseinheit 53 für die geschätzte Erfassungspunktposition berechnet die geschätzte Erfassungspunktposition Xd1 unter Verwendung des geschätzten effektiven Drehmomentwerts (Tm1-Tr1). Die Berechnungseinheit 54 für die geschätzte Referenzpunktposition berechnet eine geschätzte Referenzpunktposition Xr1, die das Verhalten des Referenzpunkts schätzt, unter Verwendung der zweiten Übertragungsfunktion FRF2 (s) und der geschätzten Erfassungspunktposition xd1. Die Berechnungseinheit 56 für die geschätzte Bewertungspunktposition berechnet die geschätzte Bewertungspunktposition Xe1, die das Verhalten des Bewertungspunkts schätzt, unter Verwendung der ersten Übertragungsfunktion FRF1 (s) und der geschätzten Referenzpunktposition Xr1. Die Schätzeinheit 55 für die Antriebsreaktionskraft berechnet den geschätzten Antriebsreaktionskraftwert Tr1 unter Verwendung der geschätzten Erfassungspunktposition Xd1, der geschätzten Referenzpunktposition Xr1 und des Steifigkeitswertparameters Kdr.
-
Bei der vorstehenden Konfiguration kann die Simulationseinheit 5 die relative Bewegungstrajektorie zwischen zwei Punkten, bei denen es sich um die erfasste Position Xd und das anzutreibende Objekt handelt, messen. In Bezug auf das Verfahren zum Berechnen des Bewertungspunktes und des Referenzpunktes unter Verwendung der ersten Übertragungsfunktion FRF1 (s) und der zweiten Übertragungsfunktion FRF2 (s) kann die Simulationseinheit 5 eine Laplace-Transformation an dem Eingangssignal im Zeitbereich durchführen, es mit der Übertragungsfunktion im Frequenzbereich multiplizieren und dann den Ausgang im Zeitbereich durch inverse Laplace-Transformation berechnen. Alternativ kann die Simulationseinheit 5 die Übertragungsfunktion durch eine Differenzengleichung eines diskreten Systems unter Verwendung eines bilinearen Transformationsverfahrens wie der Tustin-Transformation mit der Berechnungsperiode der Reglereinheit 6a beschreiben und das Ausgangssignal in Bezug auf das Eingangssignal berechnen.
-
Die vorliegende Ausführungsform führt die Berechnung nur für die Bewegung in der Bewegungsrichtung des Bewertungspunktes durch, kann aber zum Beispiel vorab eine Übertragungsfunktion bis hin zur Beschleunigung in zur Antriebsrichtung orthogonalen Richtungen, etwa wie der Y-Richtung und der Z-Richtung, des Bewertungspunktes aus dem Motorstrom Im berechnen, sodass die Simulationseinheit 5 geschätzte Positionen in der Y-Richtung und der Z-Richtung des Bewertungspunktes aus dem Motorstrom Im berechnen kann.
-
7 ist ein Blockdiagramm, das ein Beispiel für eine Konfiguration der Schätzeinheit 55 für die Antriebsreaktionskraft gemäß der ersten Ausführungsform veranschaulicht. Ein Addierer/Subtrahierer 61d berechnet eine Differenz (Xd1-Xr1) zwischen der geschätzten Referenzpunktposition Xr1 und der geschätzten Erfassungspunktposition Xd1. Ein Multiplikator 67 multipliziert die Differenz (Xd1-Xr1) mit dem Steifigkeitswertparameter Kdr, um den geschätzten Antriebsreaktionskraftwert Tri zu berechnen. Andererseits kann die Schätzeinheit 55 für die Antriebsreaktionskraft anstelle des Steifigkeitswertparameters Kdr eine Übertragungsfunktion verwenden, die eine Übertragungscharakteristik einer Antriebsreaktionskraft Tr in Bezug auf eine Differenz (Xd-Xr) zwischen der erfassten Position Xd und der Referenzpunktposition Xr beschreibt. Der Steifigkeitswertparameter Kdr kann aus der Größe einer Lastkraft, die vorab auf den Referenzpunkt aufgebracht wird, und dem Betrag des Abstands des Referenzpunkts und des Erfassungspunkts zu diesem Zeitpunkt berechnet werden.
-
Die Beschreibung verweist nunmehr erneut auf 5. Die Festlegungseinheit 57 für Simulationsparameter legt die erste Übertragungsfunktion FRF1 (s) in der Berechnungseinheit 56 für die geschätzte Bewertungspunktposition fest, legt die zweite Übertragungsfunktion FRF2 (s) in der Berechnungseinheit 54 für die geschätzte Referenzpunktposition fest und legt den Steifigkeitswertparameter Kdr in der Schätzeinheit 55 für die Antriebsreaktionskraft fest. Der Zeitpunkt, zu dem die Festlegungseinheit 57 für Simulationsparameter den Parameter einstellt, kann ein beliebiger kontinuierlicher Zeitpunkt sein oder durch Erfassen eines Zeitpunkts eingestellt werden, an dem der Motor 71 vollständig still steht. Darüber hinaus kann der Wert des Parameters, der von der Festlegungseinheit 57 für Simulationsparameter festgelegt wird, auf einen diskontinuierlichen Wert festgelegt werden, oder er kann interpoliert oder mit einer bestimmten Zeitkonstante geändert werden, sodass die Variation des Parameters kontinuierlich wird.
-
Die Anzeige 10 ist ein Videomonitor zum Darstellen der geschätzten Bewertungspunktposition Xe1 und der geschätzten Erfassungspunktposition Xd1, die von der Simulationseinheit 5 ausgegeben werden, für einen Maschinenbediener, der die Maschine bedient. Die Anzeige 10 kann zum Beispiel ein Ausmaß eines Fehlers darstellen, der in der Werkzeugmaschine 99 mit numerischer Regelung auftritt, indem ein Ausmaß eines Fehlers der geschätzten Bewertungspunktposition Xe1 in Bezug auf die geschätzte Erfassungspunktposition Xd1 der Werkzeugmaschine 99 mit numerischer Regelung für jede Welle angezeigt wird. Darüber hinaus kann die Anzeige 10 für den Maschinenbediener darstellen, welche Art von Bearbeitungsfehler in der gesamten Maschine aufgetreten ist, indem sie in einer zweidimensionalen Ebene oder einem dreidimensionalen Raum die Bewegungstrajektorie an der Erfassungspunktposition und die Bewegungstrajektorie an der geschätzten Bewertungspunktposition Xe1 grafisch darstellt, wenn eine synchrone Regelung auf der X-Achse, der Y-Achse und der Z-Achse durchgeführt wird. Folglich kann der Maschinenbediener durch Überprüfen der auf der Anzeige 10 angezeigten Inhalte feststellen, ob die Bearbeitung gut oder schlecht ist, und eine Bearbeitung durchführen, um den Bereich, in dem der Fehler aufgetreten ist, zu korrigieren, oder ein Bearbeitungsprogramm korrigieren und den Fehler reduzieren.
-
Der Betrieb der Servoregelvorrichtung 100 wird unter Bezugnahme auf ein Ablaufdiagramm beschrieben. 8 ist das Ablaufdiagramm, das den Betrieb der Servoregelvorrichtung 100 gemäß der ersten Ausführungsform veranschaulicht. In der Servoregelvorrichtung 100 erfasst der Bewertungspunktsensor 1a die Zustandsgröße des Bewertungspunkts (Schritt S1). Der Referenzpunktsensor 1b erfasst die Zustandsgröße des Referenzpunkts (Schritt S2). Die Berechnungseinheit 4a für die erste Übertragungsfunktion berechnet die erste Übertragungsfunktion FRF1 (s), die der Frequenzgang vom Referenzpunkt zum Bewertungspunkt ist, durch Verwendung der Zustandsgröße des Bewertungspunkts und der Zustandsgröße des Referenzpunkts (Schritt S3). Die Berechnungseinheit 4b für die zweite Übertragungsfunktion berechnet die zweite Übertragungsfunktion FRF2 (s), die der Frequenzgang von der erfassten Position Xd zum Referenzpunkt ist, durch Verwendung der Zustandsgröße des Referenzpunkts und der erfassten Position Xd (Schritt S4). Die Simulationseinheit 5 berechnet die geschätzte Bewertungspunktposition Xe1, die die geschätzte Position des Bewertungspunkts angibt, und die geschätzte Erfassungspunktposition Xd1, die die geschätzte Position der erfassten Position Xd angibt, durch Verwendung der ersten Übertragungsfunktion FRF1 (s), der zweiten Übertragungsfunktion FRF2 (s), des Positionsbefehls Xc und des Steifigkeitsparameters Kdr, der den Steifigkeitswert zwischen der erfassten Position Xd und dem Referenzpunkt angibt (Schritt S5).
-
Als Nächstes wird eine Hardware-Konfiguration der Servoregelvorrichtung 100 beschrieben. In der Servoregelvorrichtung 100 sind der Bewertungspunktsensor 1a, der Referenzpunktsensor 1b und der Drehwinkeldetektor 2 Messgeräte. Die mechanische Einheit 7a ist eine Vorrichtung, die den Aktuator und dergleichen beinhaltet. Die Steifigkeitswerthalteeinheit 8 ist ein Speicher. Die Berechnungseinheit 4a für die erste Übertragungsfunktion, die Berechnungseinheit 4b für die zweite Übertragungsfunktion, die Simulationseinheit 5, die Reglereinheit 6a und die Sollwertberechnungseinheit 9 sind durch eine Verarbeitungsschaltung umgesetzt. Die Verarbeitungsschaltung kann einen Speicher und einen Prozessor, der in dem Speicher gespeicherte Programme ausführt, beinhalten oder sie kann dedizierte Hardware beinhalten.
-
9 ist ein Diagramm, das ein Beispiel für den Fall veranschaulicht, in dem die Verarbeitungsschaltung der Servoregelvorrichtung 100 gemäß der ersten Ausführungsform den Prozessor und den Speicher beinhaltet. Wenn die Verarbeitungsschaltung einen Prozessor 91 und einen Speicher 92 beinhaltet, wird jede Funktion der Verarbeitungsschaltung der Servoregelvorrichtung 100 durch Software, Firmware oder eine Kombination aus Software und Firmware umgesetzt. Die Software oder Firmware sind als Programme beschrieben und in dem Speicher 92 gespeichert. Die Verarbeitungsschaltung setzt jede Funktion um, indem der Prozessor 91 die in dem Speicher 92 gespeicherten Programme liest und ausführt. Das heißt, die Verarbeitungsschaltung beinhaltet den Speicher 92 zum Speichern der Programme, die zur Ausführung der Verarbeitung der Servoregelvorrichtung 100 führen. Man kann auch sagen, dass diese Programme einen Computer dazu veranlassen, den Ablauf und das Verfahren in Bezug auf die Servoregelvorrichtung 100 auszuführen.
-
Hier kann der Prozessor 91 eine Zentraleinheit (Central Processing Unit - CPU), eine Verarbeitungseinheit, ein Rechenwerk, ein Mikroprozessor, ein Mikrocomputer, ein digitaler Signalprozessor (DSP) oder dergleichen sein. Der Speicher 92 entspricht zum Beispiel einem nicht flüchtigen oder flüchtigen Halbleiterspeicher, wie etwa einem Direktzugriffsspeicher (Random Access Memory - RAM), einem Festwertspeicher (Read Only Memory - ROM), einem Flash-Speicher, einem löschbaren programmierbaren Festwertspeicher (EPROM) oder einem elektrisch EPROM (EEPROM (eingetragenes Markenzeichen)), einer Magnetplatte, einer flexiblen Platte, einer optischen Platte, einer Compact Disc, einer Mini Disc, einer Digital Versatile Disc (DVD) oder dergleichen.
-
10 ist ein Diagramm, das ein Beispiel für den Fall veranschaulicht, in dem die Verarbeitungsschaltung der Servoregelvorrichtung 100 gemäß der ersten Ausführungsform die dedizierte Hardware beinhaltet. Wenn die Verarbeitungsschaltung die dedizierte Hardware beinhaltet, entspricht die in 10 veranschaulichte Verarbeitungsschaltung 93 zum Beispiel einer Einzelschaltung, einer komplexen Schaltung, einem programmierten Prozessor, einem parallel programmierten Prozessor, einer anwendungsspezifischen integrierten Schaltung (Application Specific Integrated Circuit - ASIC), einem feldprogrammierbaren Gate-Array (FPGA) oder einer Kombination von diesen. Die Funktionen der Servoregelvorrichtung 100 können einzeln oder gemeinsam durch die Verarbeitungsschaltung 93 umgesetzt werden.
-
Es ist zu beachten, dass die Funktionen der Servoregelvorrichtung 100 teilweise durch dedizierte Hardware und teilweise durch Software oder Firmware umgesetzt sein können. Die Verarbeitungsschaltung kann somit die vorstehend genannten Funktionen durch die dedizierte Hardware, Software, Firmware oder eine Kombination aus diesen umsetzen.
-
Wie vorstehend beschrieben, kann gemäß der vorliegenden Ausführungsform auch in einem Fall, in dem die Position des Bewertungspunkts nicht direkt gemessen werden kann, die Servoregelvorrichtung 100, die die Systemidentifikation durchführt, die Übertragungsfunktionen unter Verwendung der beiden Beschleunigungssensoren und des Drehwinkeldetektors 2 berechnen und die Istposition des Bewertungspunkts mit hoher Genauigkeit schätzen, indem sie die berechneten Übertragungsfunktionen und den Positionsbefehl Xc verwendet. Die
Servoregelvorrichtung 100 trennt die Signale des Bewertungspunktsensors 1a und des Referenzpunktsensors 1b, die die Beschleunigungssensoren sind, und das Signal des Drehwinkeldetektors 2, der der Positionsdetektor ist, in zwei oder mehr Bänder und kalibriert die Signale, wodurch sie in der Lage ist, die Bewegungstrajektorie des anzutreibenden Objekts mit hoher Genauigkeit zu messen.
-
In einer Maschine, die eine Trajektorieregelung durchführt, wie etwa einer Werkzeugmaschine mit numerischer Regelung, einer Industriemaschine, einem Roboter oder einem Förderer, kann die Servoregelvorrichtung 100 eine Charakteristik der Maschine mit einem einfachen Aufbau ermitteln und ein System zum Simulieren eines Trajektoriefehlers eines Regelziels ermitteln. Darüber hinaus verwendet die Servoregelvorrichtung 100 den Beschleunigungsmesser, um den Zustand des Bewertungspunktes, der das Regelziel ist, zu messen und kann somit die Messung selbst in der sich im Einsatz befindlichen Maschine durchführen, ohne das Werkstück 78, das Werkzeug 76 oder dergleichen zu entfernen.
-
Zweite Ausführungsform.
-
Eine zweite Ausführungsform beschreibt einen Fall, in dem eine Regelung im vollständig geschlossenen Regelkreis (full-closed loop control) in einer Servoregelvorrichtung durchgeführt wird.
-
11 ist ein Diagramm, das ein Beispiel für eine Konfiguration einer Servoregelvorrichtung 100b, die eine Systemidentifikation durchführt, gemäß der zweiten Ausführungsform veranschaulicht. Die Servoregelvorrichtung 100b der zweiten Ausführungsform unterscheidet sich von der Servoregelvorrichtung 100 der ersten Ausführungsform dadurch, dass ein Linearbewegungspositionsdetektor 21 anstelle des Drehwinkeldetektors 2 als Eingang einer erfassten Position verwendet wird, eine mechanische Einheit 7b verwendet wird, die eine Konfiguration aufweist, die sich von der der ersten Ausführungsform unterscheidet, und eine Reglereinheit 6b zum Regeln der mechanischen Einheit 7b verwendet wird.
-
12 ist eine schematische Darstellung, die ein Beispiel für eine Konfiguration einer X-Achsen-Servoregelvorrichtung 101b veranschaulicht, die eine Welle der Werkzeugmaschine 99 mit numerischer Regelung gemäß der zweiten Ausführungsform ist. Die X-Achsen-Servoregelvorrichtung 101b beinhaltet den Linearbewegungspositionsdetektor 21, der als Lineargeber bezeichnet wird und eine lineare Bewegungsposition des Mutterblocks 79 erfasst. Eine Maschinenkonfiguration wie die der X-Achsen-Servoregelvorrichtung 101b wird als Regelung im vollständig geschlossenen Regelkreis bezeichnet.
-
13 ist ein Blockdiagramm, das ein Beispiel für eine Konfiguration der Reglereinheit 6b gemäß der zweiten Ausführungsform veranschaulicht. In der Servoregelvorrichtung 100b der Regelung im vollständig geschlossenen Regelkreist verwendet die Reglereinheit 6b das Signal des Linearbewegungspositionsdetektors 21 als Positionsrückkopplungssignal und verwendet das Signal des Drehwinkeldetektors 2 als Geschwindigkeitsrückkopplungssignal. Der Rest stimmt mit der Reglereinheit 6a überein. In den 11 bis 13 wird das Signal des Linearbewegungspositionsdetektors 21, das heißt die vom Linearbewegungspositionsdetektor 21 erfasste Position, als „X1“ dargestellt.
-
In der zweiten Ausführungsform, wie in 12 veranschaulicht, ist die Position des Bewertungspunkts die gleiche wie in der ersten Ausführungsform, aber die Position des Erfassungspunkts in der mechanischen
Einheit 7b stimmt mit der Befestigungsposition des Linearbewegungspositionsdetektors 21 überein. Darüber hinaus wird die Position des Referenzpunktes auf einer Fläche des mechanischen Strukturelements 72 zwischen dem Erfassungspunkt und dem Bewertungspunkt festgelegt. Da sich nur die Befestigungspositionen der verwendeten Sensoren unterscheiden, sind die Aktionen der Berechnungseinheit 4a für die erste Übertragungsfunktion, der Berechnungseinheit 4b für die zweite Übertragungsfunktion und der Simulationseinheit 5 die gleichen wie bei der ersten Ausführungsform.
-
In der zweiten Ausführungsform wurde die Anwendung auf die Servoregelvorrichtung 100b, die durch den Motor 71, der ein Rotationsmotor ist, und die Vorschubspindel 73 angetrieben wird, als Beispiel beschrieben, aber die vorliegende Ausführungsform kann auch auf eine Konfiguration ohne einen Rotationsmotor angewendet werden, wie etwa eine Servoregelvorrichtung, die einen Linearmotor als Aktuator verwendet.
-
Der Betriebsablauf und die Hardwarekonfiguration der Servoregelvorrichtung 100b sind ähnlich wie bei der Servoregelvorrichtung 100 der ersten Ausführungsform.
-
Wie vorstehend beschrieben, kann die Servoregelvorrichtung 100b, die die Systemidentifikation durchführt, gemäß der vorliegenden Ausführungsform die Istposition des Bewertungspunktes auch im Fall der Regelung im vollständig geschlossenen Regelkreis mit hoher Genauigkeit schätzen. Mit der vorstehenden Konfiguration kann die Servoregelvorrichtung 100b sowohl in Regelsystemen mit halb geschlossenem Regelkreis als auch mit vollständig geschlossenem Regelkreis eingesetzt werden.
-
Dritte Ausführungsform.
-
In der ersten und zweiten Ausführungsform wurden die Anwendungsbeispiele für die Servoregelvorrichtung beschrieben, die eine lineare Welle ist, aber die Werkzeugmaschine mit numerischer Regelung kann auch eine Drehwelle beinhalten. In einer dritten Ausführungsform wird ein Fall beschrieben, in dem die vorliegende Erfindung auf eine Servoregelvorrichtung angewendet wird, die eine Drehwelle ist.
-
14 ist eine schematische Darstellung, die ein Beispiel für eine Konfiguration einer Servoregelvorrichtung 100c gemäß der dritten Ausführungsform veranschaulicht. Die Servoregelvorrichtung 100c der dritten Ausführungsform unterscheidet sich von der Servoregelvorrichtung 100 der ersten Ausführungsform dadurch, dass eine mechanische Einheit 7c verwendet wird, die eine Konfiguration aufweist, die sich von der der ersten Ausführungsform unterscheidet. Die Drehbewegung des Motors 71 wird durch ein Schneckengetriebe 81 gebremst, das bewirken soll, dass sich ein Drehtisch 82 dreht. Da das Werkstück 78 auf dem mechanischen Strukturelement 72 auf der in 14 veranschaulichten Drehwelle der Servoregelvorrichtung 100c angeordnet ist, befindet sich der Bewertungspunkt auf der Drehwelle auf dem mechanischen Strukturelement 72. Darüber hinaus ist bei der in 14 veranschaulichten Servoregelvorrichtung 100c der Referenzpunkt ein Punkt auf dem Umfang des Drehtisches 82. Es ist zu beachten, dass in der Servoregelvorrichtung 100c die Drehrichtung des Drehtisches 82 eine Richtung ist, die durch einen Pfeil 84 in 14 angezeigt wird.
-
Die Drehwelle führt eine Drehbewegung in der in 14 veranschaulichten Servoregelvorrichtung 100c aus, sodass die Bewegungsrichtung am Bewertungspunkt und am Referenzpunkt der Umfangsrichtung der Drehbewegung entspricht. Es ist somit schwierig, die Drehbewegung am Referenzpunkt und am Bewertungspunkt mit dem Beschleunigungssensor von drei orthogonalen Achsen korrekt zu messen. In der dritten Ausführungsform ist anstelle des Beschleunigungssensors ein Gyrosensor 1c, der die Drehbewegung erfassen kann, am Bewertungspunkt installiert und ein gleichartiger Gyrosensor 1d ist am Referenzpunkt installiert, sodass die Winkelbeschleunigung in der Umfangsrichtung gemessen wird. Das in der ersten Ausführungsform veranschaulichte Verfahren zur Systemidentifikation kann somit angewendet werden.
-
Darüber hinaus ist in der Konfiguration der Servoregelvorrichtung 100c, wie in 14 veranschaulicht, neben der Verwendung des Gyrosensors auch ein Verfahren zum genauen Messen der Bewegung in Umfangsrichtung durch die Installation von zwei Beschleunigungssensoren an Positionen, die punktsymmetrisch zum Drehzentrum sind, bekannt. Die vorliegende Erfindung ist jedoch nicht auf dieses Verfahren beschränkt, solange es sich um ein Verfahren oder ein Messgerät handelt, das jede Beschleunigung in Umfangsrichtung messen kann.
-
Neben dem Schneckenantrieb gibt es eine Maschinenkonfiguration, die als Direktantriebssystem bezeichnet wird und im Falle der Linearwelle einer von einem Linearmotor angetriebenen Servoregelvorrichtung entspricht, auf die die vorliegende Erfindung auf ähnliche Weise angewendet werden kann.
-
Der Betriebsablauf und die Hardwarekonfiguration der Servoregelvorrichtung 100c sind ähnlich wie bei der Servoregelvorrichtung 100 der ersten Ausführungsform.
-
Wie vorstehend beschrieben, kann die Servoregelvorrichtung 100c, die die Systemidentifikation durchführt, gemäß der vorliegenden Ausführungsform die Istposition des Bewertungspunktes auch im Fall, dass die Drehwelle beinhaltet ist, mit hoher Genauigkeit schätzen.
-
Vierte Ausführungsform.
-
In einer vierten Ausführungsform wird ein Fall beschrieben, in dem der Regelparameter der Reglereinheit 6a geändert wird.
-
15 ist ein Diagramm, das ein Beispiel für eine Konfiguration einer Servoregelvorrichtung 100d, die eine Systemidentifikation durchführt, gemäß der vierten Ausführungsform veranschaulicht. Die Servoregelvorrichtung 100d der vierten Ausführungsform wird durch Hinzufügen einer Änderungseinheit 11 für Regelparameter zu der Servoregelvorrichtung 100 der ersten Ausführungsform erhalten.
-
Die Änderungseinheit 11 für Regelparameter ändert einen Regelparameter CP der Reglereinheit 6a unter Verwendung der geschätzten Bewertungspunktposition Xe1 und der geschätzten Erfassungspunktposition Xd1, die von der Simulationseinheit 5 berechnet wurden. Das heißt, die Änderungseinheit 11 für Regelparameter ändert den Regelparameter CP der Reglereinheit 6a, sodass die Bewegungsgenauigkeit des anzutreibenden Objekts innerhalb eines Zielwerts liegt. Insbesondere ändert die Änderungseinheit 11 für Regelparameter die Regelverstärkung jedes Reglers der Reglereinheit 6a. Wenn zum Beispiel eine Differenz zwischen der geschätzten Bewertungspunktposition Xe1 und der geschätzten Erfassungspunktposition Xd1 größer oder gleich einem bestimmten Schwellenwert ist, führt die Änderungseinheit 11 für Regelparameter eine Regelung durch, wie etwa das Verringern der P-Verstärkung des Positionsreglers 62. Auf ähnliche Weise kann die Änderungseinheit 11 für Regelparameter die P-Verstärkung oder I-Verstärkung des Geschwindigkeitsreglers 63 ändern. Es ist zu beachten, dass die Änderungseinheit 11 für Regelparameter den Regelparameter CP der Reglereinheit 6a unter alleiniger Verwendung der geschätzten Bewertungspunktposition Xe1 ändern kann.
-
Der Betrieb der Servoregelvorrichtung 100d wird unter Bezugnahme auf ein Ablaufdiagramm beschrieben. 16 ist das Ablaufdiagramm, das den Betrieb der Servoregelvorrichtung 100d gemäß der vierten Ausführungsform veranschaulicht. Der Betrieb von Schritt S1 bis Schritt S5 ist ähnlich wie der Betrieb der Servoregelvorrichtung 100 der ersten Ausführungsform, die im Ablaufdiagramm aus 8 veranschaulicht ist. In der Servoregelvorrichtung 100d ändert die Änderungseinheit 11 für Regelparameter den Regelparameter CP der Reglereinheit 6a unter Verwendung der geschätzten Bewertungspunktposition Xe1 oder der geschätzten Bewertungspunktposition Xe1 und der geschätzten Erfassungspunktposition Xd1, sodass die Bewegungsgenauigkeit des Werkzeugs 76, bei dem es sich um das anzutreibende Objekt handelt, innerhalb des Zielwerts liegt (Schritt S11). Unter Verwendung des von der Änderungseinheit 11 für Regelparameter geänderten Regelparameters CP führt die Reglereinheit 6a eine Stromregelung gemäß der Stromabweichung (Ic-Im) durch und gibt den Motorstrom Im aus (Schritt S12).
-
In Bezug auf die Hardwarekonfiguration der Servoregelvorrichtung 100d ist die Änderungseinheit 11 für Regelparameter durch eine Verarbeitungsschaltung wie bei der Simulationseinheit 5 und dergleichen umgesetzt. Die Verarbeitungsschaltung kann einen Speicher und einen Prozessor, der in dem Speicher gespeicherte Programme ausführt, beinhalten oder sie kann dedizierte Hardware beinhalten.
-
Wie vorstehend beschrieben, kann gemäß der vorliegenden Ausführungsform die Servoregelvorrichtung 100d, die eine Systemidentifikation durchführt, die Genauigkeit der tatsächlichen Regelung verbessern, indem sie den Regelparameter CP der Reglereinheit 6a auf Grundlage des Ergebnisses der Schätzung der Istposition des Bewertungspunkts ändert. Die Servoregelvorrichtung 100d kann den Regelparameter durch die Änderungseinheit 11 für Regelparameter adaptiv ändern und die Regelung optimieren.
-
Fünfte Ausführungsform.
-
In einer fünften Ausführungsform wird ein Fall beschrieben, in dem ein Korrekturbefehl für die Reglereinheit berechnet wird.
-
17 ist ein Diagramm, das ein Beispiel für eine Konfiguration einer Servoregelvorrichtung 100e, die eine Systemidentifikation durchführt, gemäß der fünften Ausführungsform veranschaulicht. Die Servoregelvorrichtung 100e der fünften Ausführungsform wird dadurch erhalten, dass eine Reglereinheit 6e anstelle der Reglereinheit 6a beinhaltet ist und ferner eine Berechnungseinheit 12 für Korrekturbefehle in Bezug auf die Servoregelvorrichtung 100 der ersten Ausführungsform hinzugefügt wird.
-
Die Berechnungseinheit 12 für Korrekturbefehle berechnet einen Positionskorrekturbefehl Xcmp, einen Geschwindigkeitskorrekturbefehl Vcmp und einen Stromkorrekturbefehl Icmp für die Reglereinheit 6e unter Verwendung der geschätzten Bewertungspunktposition Xe1 und der geschätzten Erfassungspunktposition Xd1, die von der Simulationseinheit 5 berechnet wurden, und des Positionsbefehls Xc, der von der Sollwertberechnungseinheit 9 berechnet wurde, und gibt diese an die Reglereinheit 6e aus. 18 ist ein Blockdiagramm, das ein Beispiel für eine Konfiguration der Berechnungseinheit 12 für Korrekturbefehle gemäß der fünften Ausführungsform veranschaulicht. Zunächst berechnet eine Multiplikationseinheit 69a für Erkennungspunktpositionsverstärkung Kp×Xd1 durch Multiplizieren der geschätzten Erfassungspunktposition Xd1 mit einer Erfassungspunktpositionsverstärkung Kp. Ein Addierer/Subtrahierer 61f berechnet eine Differenz (Xe1-Kp×Xd1) zwischen der geschätzten Bewertungspunktposition Xe1 und Kp×Xd1, das von der Multiplikationseinheit 69a für Erfassungspunktpositionsverstärkung berechnet wurde. Als Nächstes berechnet eine Multiplikationseinheit 69b für Positionsbefehlsverstärkung Kc×Xc durch Multiplizieren des Positionsbefehls Xc mit einer Positionsbefehlsverstärkung Kc. Ein Addierer/Subtrahierer 61g berechnet eine Differenz (Xe1-Kp×Xd1-Kc×Xc) zwischen der Differenz (Xe1-Kp×Xd1), die vom Addierer/Subtrahierer 61f berechnet wurde und Kc×Xc, das von der Multiplikationseinheit 69b für Positionsbefehlsverstärkung berechnet wurde.
-
Anschließend filtert eine Filtereinheit 68 eine bestimmte Frequenzkomponente und berechnet einen Korrekturbefehl. Die Filtereinheit 68 ist ein beliebiges von einem Tiefpassfilter, einem Hochpassfilter, einem Bandpassfilter und einem Bandsperrfilter oder eine Kombination davon. Eine Multiplikationseinheit 69c für Positionskorrekturverstärkung gibt als Positionskorrekturbefehl Xcmp einen Wert aus, der durch Multiplizieren des Korrekturbefehls, der von der Filtereinheit 68 berechnet wurde, mit einer Positionskorrekturverstärkung erhalten wird. Der Geschwindigkeitsrechner 65 berechnet den von der Filtereinheit 68 berechneten Korrekturbefehl in der Dimension der Geschwindigkeit. Ein Beispiel für den Geschwindigkeitsrechner 65 ist ein Differenziator. Eine Multiplikationseinheit 69d für Geschwindigkeitskorrekturverstärkung gibt als Geschwindigkeitskorrekturbefehl Vcmp einen Wert aus, der durch Multiplizieren des von dem Geschwindigkeitsrechner 65 berechneten Korrekturbefehls in der Dimension der Geschwindigkeit mit einer Geschwindigkeitskorrekturverstärkung erhalten wird. Ein Beschleunigungsrechner 66 berechnet den von der Filtereinheit 68 berechneten Korrekturbefehl in der Dimension der Beschleunigung. Ein Beispiel für den Beschleunigungsrechner 66 ist ein Differenziator zweiter Ordnung. Eine Multiplikationseinheit 69e für Stromkorrekturverstärkung gibt als den Stromkorrekturbefehl Icmp einen Wert aus, der durch Multiplizieren des von dem Beschleunigungsrechner 66 berechneten Korrekturbefehls in der Dimension der Beschleunigung mit einer Stromkorrekturverstärkung erhalten wird.
-
Es ist zu beachten, dass die verschiedenen Verstärkungen konstante Werte sind und reale Zahlen einschließlich Null sind. Wenn zum Beispiel nur der Positionskorrekturbefehl Xcmp von der Berechnungseinheit 12 für Korrekturbefehle ausgegeben wird, können die Geschwindigkeitskorrekturverstärkung und die Stromkorrekturverstärkung auf Null festgelegt sein. Es ist zu beachten, dass die Berechnungseinheit 12 für Korrekturbefehle den Positionskorrekturbefehl Xcmp, den Geschwindigkeitskorrekturbefehl Vcmp und den Stromkorrekturbefehl Icmp für die Reglereinheit 6e nur unter Verwendung der geschätzten
Bewertungspunktposition Xe1 berechnen und an die Reglereinheit 6e ausgeben kann. Alternativ kann die Berechnungseinheit 12 für Korrekturbefehle mindestens einen des Positionskorrekturbefehls Xcmp, des Geschwindigkeitskorrekturbefehls Vcmp und des Stromkorrekturbefehls Icmp berechnen und den oder die berechneten Befehl(e) an die Reglereinheit 6e ausgeben.
-
Die Reglereinheit 6e empfängt die Korrekturbefehle von der Berechnungseinheit 12 für Korrekturbefehle und führt eine Rückkopplungsregelung durch. 19 ist ein Blockdiagramm, das ein Beispiel für eine Konfiguration der Reglereinheit 6e gemäß der fünften Ausführungsform veranschaulicht. Ein Unterschied zu der Reglereinheit 6a der ersten Ausführungsform ist das, was vom Addierer/Subtrahierer 61a, dem Addierer/Subtrahierer 61b und dem Addierer/Subtrahierer 61c berechnet wird. Insbesondere berechnet der Addierer/Subtrahierer 61a eine Positionsabweichung (Xc-Xd+Xcmp) aus dem Positionsbefehl Xc, der erfassten Position Xd und dem Positionskorrekturbefehl Xcmp. Der Addierer/Subtrahierer 61b berechnet eine Geschwindigkeitsabweichung Vde=Vc-Vd+Vcmp aus dem Geschwindigkeitsbefehl Vc, der erfassten Geschwindigkeit Vd und dem Geschwindigkeitskorrekturbefehl Vcmp. Der Addierer/Subtrahierer 61c berechnet eine Stromabweichung (Ic-Im+Icmp) aus dem Strombefehl Ic, dem Motorstrom Im und dem Stromkorrekturbefehl Icmp.
-
Der Betrieb der Servoregelvorrichtung 100e wird unter Bezugnahme auf ein Ablaufdiagramm beschrieben. 20 ist das Ablaufdiagramm, das den Betrieb der Servoregelvorrichtung 100e gemäß der fünften Ausführungsform veranschaulicht. Der Betrieb von
Schritt S1 bis Schritt S5 ist ähnlich wie der Betrieb der Servoregelvorrichtung 100 der ersten Ausführungsform, die im Ablaufdiagramm aus 8 veranschaulicht ist. In der Servoregelvorrichtung 100e berechnet die Berechnungseinheit 12 für Korrekturbefehle den Korrekturbefehl (Schritt S21). Insbesondere berechnet die Berechnungseinheit 12 für Korrekturbefehle mindestens einen des Positionskorrekturbefehls Xcmp, des Geschwindigkeitskorrekturbefehls Vcmp und des Stromkorrekturbefehls Icmp für die Reglereinheit 6e unter Verwendung der geschätzten Bewertungspunktposition Xe1 oder der geschätzten Bewertungspunktposition Xe1 und der geschätzten Erfassungspunktposition Xd1. Die Reglereinheit 6e gibt den Motorstrom Im unter Verwendung des von der Berechnungseinheit 12 für Korrekturbefehle berechneten Korrekturbefehls aus (Schritt S22). Insbesondere führt die Reglereinheit 6e eine Stromregelung entsprechend der Stromabweichung (Ic-Im+Icmp) unter Verwendung von mindestens einem des Positionskorrekturbefehls Xcmp, des Geschwindigkeitskorrekturbefehls Vcmp und des Stromkorrekturbefehls Icmp durch und gibt den Motorstrom Im aus.
-
In Bezug auf die Hardwarekonfiguration der Servoregelvorrichtung 100e ist die Berechnungseinheit 12 für Korrekturbefehle durch eine Verarbeitungsschaltung wie bei der Simulationseinheit 5 und dergleichen umgesetzt.
Die Verarbeitungsschaltung kann einen Speicher und einen Prozessor, der in dem Speicher gespeicherte Programme ausführt, beinhalten oder sie kann dedizierte Hardware beinhalten.
-
Wie vorstehend beschrieben, erzeugt die Servoregelvorrichtung 100e, die die Systemidentifikation durchführt, gemäß der vorliegenden Ausführungsform den Korrekturbefehl gemäß der geschätzten Bewertungspunktposition Xe1, die durch Simulation geschätzt wird, und kann somit eine hochgenaue Bewegung erreichen. Mit der vorstehenden Konfiguration kann die Servoregelvorrichtung 100e eine Korrektur mit hoher Genauigkeit durchführen, indem sie den Korrekturbefehl erzeugt und direkt zurückkoppelt.
-
Sechste Ausführungsform.
-
In einer sechsten Ausführungsform wird ein Fall beschrieben, in dem eine Servoregelvorrichtung, die eine Systemidentifikation durchführt, verteilt an räumlich getrennten Orten installiert ist.
-
21 ist ein Diagramm, das ein Beispiel für eine Konfiguration einer Servoregelvorrichtung 100f, die eine Systemidentifikation durchführt, gemäß der sechsten Ausführungsform veranschaulicht. Die Servoregelvorrichtung 100f unterscheidet sich von der Servoregelvorrichtung 100e der fünften Ausführungsform dadurch, dass die Servoregelvorrichtung 100f eine Übertragungseinheit 30 für Sensorsignale, eine Übertragungseinheit 31 für Korrekturbefehle, eine Empfangseinheit 32 für Sensorsignale, eine Empfangseinheit 33 für Korrekturbefehle und eine Berechnungseinheit 90 für Simulationssollwerte beinhaltet.
-
Die Übertragungseinheit 30 für Sensorsignale ist eine erste Übertragungseinheit, die in der Werkzeugmaschine 99 mit numerischer Regelung installiert ist. Die Übertragungseinheit 30 für Sensorsignale erlangt die Bewertungspunktbeschleunigung Ae, die das Beschleunigungssignal von dem Bewertungspunktsensor 1a ist, erlangt die Referenzpunktbeschleunigung Ar, die das Beschleunigungssignal von dem Referenzpunktsensor 1b ist, und erlangt die erfasste Position Xd, die von dem Drehwinkeldetektor 2 erfasst wird. Die Übertragungseinheit 30 für Sensorsignale überträgt die erlangte Bewertungspunktbeschleunigung Ae, Referenzpunktbeschleunigung Ar und die die erfasste Position Xd an die Empfangseinheit 32 für Sensorsignale, die über ein Netzwerk an einem entfernten Standort installiert ist. Die Empfangseinheit 32 für Sensorsignale ist eine erste Empfangseinheit, die nach dem Empfang der Bewertungspunktbeschleunigung Ae, der Referenzpunktbeschleunigung Ar und der erfassten
Position Xd die Bewertungspunktbeschleunigung Ae und die Referenzpunktbeschleunigung Ar an die Berechnungseinheit 4a für die erste Übertragungsfunktion ausgibt und die Referenzpunktbeschleunigung Ar und die erfasste Position Xd an die Berechnungseinheit 4b für die zweite Übertragungsfunktion ausgibt. Die Übertragungseinheit 30 für Sensorsignale und die Empfangseinheit 32 für Sensorsignale können physisch durch ein Netzwerkkabel verbunden sein, können durch drahtlose Netzwerkkommunikation verbunden sein oder können durch eine Kombination aus Netzwerkkabel und drahtloser Netzwerkkommunikation verbunden sein.
-
Die Übertragungseinheit 31 für Korrekturbefehle ist eine zweite Übertragungseinheit, die mindestens einen des Positionskorrekturbefehls Xcmp, des Geschwindigkeitskorrekturbefehls Vcmp und des Stromkorrekturbefehl Icmp von der Berechnungseinheit 12 für Korrekturbefehle erlangt und den/die erlangten Befehl(e) an die Empfangseinheit 33 für Korrekturbefehle überträgt, die über ein Netzwerk an einem entfernten Standort installiert ist. Die Empfangseinheit 33 für Korrekturbefehle ist eine zweite Empfangseinheit, die nach dem Empfang von mindestens einem des Positionskorrekturbefehls Xcmp, des Geschwindigkeitskorrekturbefehls Vcmp und des Stromkorrekturbefehls Icmp den oder die empfangenen Befehl(e) an die Reglereinheit 6e ausgibt. Die Übertragungseinheit 31 für Korrekturbefehle und die Empfangseinheit 33 für Korrekturbefehle können physisch durch ein Netzwerkkabel verbunden sein, können durch drahtlose Netzwerkkommunikation verbunden sein oder können durch eine Kombination aus Netzwerkkabel und drahtloser Netzwerkkommunikation verbunden sein.
-
In einem Fall, in dem die Simulationseinheit 5 an einem entfernten Standort installiert ist und die geschätzte Bewertungspunktposition Xe1 berechnet, nachdem sie den Sollwert von der Sollwertberechnungseinheit 9 erhalten hat, um dann der Berechnungseinheit 12 für Korrekturbefehle die Berechnung des Korrekturbefehls zu ermöglichen, besteht das Problem, dass der Eingabezeitpunkt des Korrekturbefehls in der Reglereinheit 6e aufgrund des Einflusses einer Kommunikationsverzögerung verzögert ist. Daher führen die Simulationseinheit 5 und die Berechnungseinheit 12 für Korrekturbefehle vorab eine Berechnung unter Verwendung der Berechnungseinheit 90 für Simulationssollwerte durch, die denselben
Positionsbefehl Xc berechnet, wie er von der Sollwertberechnungseinheit 9 berechnet wurde. Die Übertragungseinheit 31 für Korrekturbefehle überträgt den von der Berechnungseinheit 12 für Korrekturbefehle im Voraus berechneten Korrekturbefehl. In Bezug auf die Übertragung des Korrekturbefehls kann die Berechnungseinheit 12 für Korrekturbefehle die Korrekturbefehle für alle Positionsbefehle Xc vorab berechnen, und dann kann die Übertragungseinheit 31 für Korrekturbefehle die Korrekturbefehle zusammen übertragen. Alternativ kann die Berechnungseinheit 90 für Simulationssollwerte zu einem früheren Zeitpunkt als die Sollwertberechnungseinheit 9 aktiviert werden, sodass der Korrekturbefehl zu einem geeigneten Zeitpunkt an der Empfangseinheit 33 für Korrekturbefehle ankommt, und die Berechnungseinheit 12 für Korrekturbefehle den Korrekturbefehl berechnen kann, sodass die Übertragungseinheit 31 für Korrekturbefehle jedes Mal den Istkorrekturbefehl übertragen kann. Alternativ dazu können die Sollwertberechnungseinheit 9 und die Berechnungseinheit 90 für Simulationssollwerte gleichzeitig aktiviert werden, und die Simulationseinheit 5 und die Berechnungseinheit 12 für Korrekturbefehle können die Berechnung mit einer Verarbeitungszeit durchführen, die schneller als die Echtzeit ist, sodass die Übertragungseinheit 31 für Korrekturbefehle jedes Mal den Istkorrekturbefehl übertragen kann.
-
Der Betriebsablauf der Servoregelvorrichtung 100f ist ähnlich wie bei der Servoregelvorrichtung 100 der ersten Ausführungsform. In Bezug auf eine Hardwarekonfiguration der Servoregelvorrichtung 100f sind die Übertragungseinheit 30 für Sensorsignale und die Übertragungseinheit 31 für Korrekturbefehle Sender, die eine drahtlose Kommunikation oder eine drahtgebundene Kommunikation durchführen. Die Empfangseinheit 32 für Sensorsignale und die Empfangseinheit 33 für Korrekturbefehle sind Empfänger, die eine drahtlose Kommunikation oder eine drahtgebundene Kommunikation durchführen.
-
Wie vorstehend beschrieben, kann die Servoregelvorrichtung 100f, die die Systemidentifikation durchführt, gemäß der vorliegenden Ausführungsform die Regelung unter Verwendung des Korrekturbefehls zu einem geeigneten Zeitpunkt ohne Verzögerung durchführen, selbst in dem Fall, in dem die Servoregelvorrichtung verteilt an räumlich getrennten Orten installiert ist.
-
Siebente Ausführungsform.
-
In der ersten bis sechsten Ausführungsform wurde das Beispiel der Verwendung der Berechnungseinheit für Übertragungsfunktionen beschrieben, die einen klassischen Algorithmus zur Berechnung der Übertragungsfunktion mit einem Eingang und einem Ausgang, oder dem sogenannten Single-Input-Single-Output (SISO), aufweist. In einer siebenten Ausführungsform wird ein Verfahren zur Berechnung einer Übertragungsfunktion mit mehreren Eingängen und mehreren Ausgängen, oder dem sogenannten Multi-Input-Multi-Output (MIMO), durch maschinelles Lernen beschrieben.
-
22 ist ein Blockdiagramm, das ein Beispiel für eine Konfiguration einer Servoregelvorrichtung 100g, die eine Systemidentifikation durchführt, gemäß der siebenten Ausführungsform veranschaulicht. Im Vergleich zu der Servoregelvorrichtung 100 der ersten Ausführungsform beinhaltet die Servoregelvorrichtung 100g der siebenten Ausführungsform eine Lerneinheit 13g anstelle der Berechnungseinheit 4a für die erste Übertragungsfunktion und der Berechnungseinheit 4b für die zweite Übertragungsfunktion, und beinhaltet eine Simulationseinheit 5g anstelle der Simulationseinheit 5.
-
Die Lerneinheit 13g kann einen beliebigen Algorithmus zum maschinellen Lernen verwenden. In der vorliegenden Ausführungsform wird als Beispiel ein Fall beschrieben, in dem tiefes maschinelles Lernen, das heißt Deep Learning (DL), angewendet wird. 23 ist ein Blockdiagramm, das ein Beispiel für eine Konfiguration der Lerneinheit 13g gemäß der siebenten Ausführungsform veranschaulicht. Die Bewertungspunktbeschleunigung Ae, die Referenzpunktbeschleunigung Ar und die erfasste Position Xd werden in die Lerneinheit 13g eingegeben. Die Bewertungspunktbeschleunigung Ae ist eine Zustandsgröße des Bewertungspunkts, der die Befestigungsposition des Bewertungspunktsensors 1a ist. Die Referenzpunktbeschleunigung Ar ist eine Zustandsgröße des Referenzpunktes, der die Befestigungsposition des Referenzpunktsensors 1b ist. Die erfasste Position Xd ist eine von der Reglereinheit 6a erlangte Zustandsgröße des Motors 71, der der Aktuator ist. Die Lerneinheit 13g beobachtet die Zustandsgröße des Bewertungspunktes, die Zustandsgröße des Referenzpunktes und die von der Reglereinheit 6a erlangte Zustandsgröße des Aktuators als Zustandsvariablen und führt ein Lernen gemäß eines Trainingsdatensatzes durch, der auf Grundlage der Zustandsvariablen erstellt wurde. Die Lerneinheit 13g tastet die Eingangsdaten in jedem vorher festgelegten Lernzeitraum ab und verwendet die Daten als Trainingsdatensatz zum Lernen. Die Lerneinheit 13g verwendet die Zustandsgröße des Bewertungspunkts, die Zustandsgröße des Referenzpunkts und die erfasste
Position Xd, die die Zustandsgröße des Aktuators ist, als Trainingsdatensatz und lernt ein Systemmodell, bei dem die erfasste Position Xd der Eingang ist und die Zustandsgröße des Bewertungspunkts und die Zustandsgröße des Referenzpunkts der Ausgang sind. Die Lerneinheit 13g beinhaltet eine neuronale Netzeinheit 91g, eine Berechnungseinheit 92g für die Verlustfunktion, eine Optimierungseinheit 93g und eine Ausgabeeinheit 94g für das Modell der künstlichen Intelligenz (KI).
-
Unter Verwendung des Trainingsdatensatzes, das heißt der Bewertungspunktbeschleunigung Ae, der Referenzpunktbeschleunigung Ar und der erfassten
Position Xd, lernt die Lerneinheit 13g einen Netzstrukturparameter Mdl1 als ein Systemmodell zur Vorhersage einer gelernten
Bewertungspunktbeschleunigung AeM und einer gelernten Referenzpunktbeschleunigung ArM zu einem bestimmten Zeitpunkt in der Zukunft, der ein vorbestimmter Zeitpunkt ist, für die Bewertungspunktbeschleunigung Ae und die Referenzpunktbeschleunigung Ar. Insbesondere bestimmt die neuronale Netzeinheit 91g den Netzstrukturparameter Md11 durch Lernen. Beispiele für den Netzstrukturparameter Md11 beinhalten einen Gewichtsparameter, einen Verzerrungsparameter und dergleichen. Die neuronale Netzeinheit 91g verwendet den Trainingsdatensatz als Eingang, führt eine Berechnung des neuronalen Netzes, das heißt eine Inferenzverarbeitung, unter Verwendung des Netzstrukturparameters Md11 durch und berechnet die gelernte Bewertungspunktbeschleunigung AeM und die gelernte Referenzpunktbeschleunigung ArM. Die neuronale Netzeinheit 91g gibt die gelernte Bewertungspunktbeschleunigung AeM und die gelernte Referenzpunktbeschleunigung ArM, die durch die Berechnung erhalten wurden, an die Berechnungseinheit 92g für die Verlustfunktion aus.
-
Die Berechnungseinheit 92g für die Verlustfunktion verwendet als Eingang die tatsächliche Bewertungspunktbeschleunigung Ae und die Referenzpunktbeschleunigung Ar sowie die gelernte Bewertungspunktbeschleunigung AeM und die gelernte Referenzpunktbeschleunigung ArM, die von der neuronalen Netzeinheit 91g berechnet wurden, und berechnet eine Verlustfunktion Lf. Hinsichtlich der Umsetzung der Verlustfunktion kann die Berechnungseinheit 92g für die Verlustfunktion eine beliebige Verlustfunktion wie in einer bekannten Technik verwenden. Die einfachste Umsetzung der Verlustfunktion ist eine Summe der Quadrate einer Differenz zwischen einem geschätzten Wert und einem gemessenen Wert. Die Berechnungseinheit 92g für die Verlustfunktion gibt die durch die Berechnung erhaltene Verlustfunktion Lf an die Optimierungseinheit 93g und die Ausgabeeinheit 94g für das KI-Modell aus.
-
Die Optimierungseinheit 93g aktualisiert den Netzstrukturparameter Md11, der zum Zeitpunkt des nächsten Lernens verwendet werden soll, unter Verwendung der Verlustfunktion Lf, die durch die Berechnung in der Berechnungseinheit 92g für die Verlustfunktion erhalten wurde. Die Optimierungseinheit 93g berechnet jeden Parameter unter Verwendung einer bekannten Technik, wie etwa der Rückwärtspropagierung, die auch als Fehlerrückführungsmethode bezeichnet wird.
-
Die Ausgabeeinheit 94g für das KI-Modell verwendet die Verlustfunktion Lf als Eingabe und vergleicht den Wert der Verlustfunktion Lf mit einem vorbestimmten Schwellenwert. Wenn der Wert der Verlustfunktion Lf kleiner oder gleich dem vorbestimmten Schwellenwert ist, gibt die Ausgabeeinheit 94g für das KI-Modell den Netzstrukturparameter Mdl1 an die Simulationseinheit 5g aus. Hinsichtlich des Ausgabezeitpunkts des Netzstrukturparameters Mdl1 kann die Ausgabeeinheit 94g für das KI-Modell den Netzstrukturparameter Mdl1 in regelmäßigen Abständen mit einem vorab festgelegten Modellaktualisierungszeitraum ausgeben.
-
Es ist zu beachten, dass die Lerneinheit 13g so konfiguriert sein kann, dass sie das Lernen durch Kombinieren der Geschwindigkeit oder Beschleunigung des Motors 71, des durch den Motor 71 fließenden Motorstroms und dergleichen, die von der Reglereinheit 6a abgetastet werden, durchführt.
-
24 ist ein Blockdiagramm, das ein Beispiel für eine Konfiguration der Simulationseinheit 5g gemäß der siebenten Ausführungsform veranschaulicht. Die Simulationseinheit 5g verwendet ein Lernergebnis der Lerneinheit 13g, um die geschätzte
Bewertungspunktposition Xe1 und die geschätzte Erfassungspunktposition Xd1 für den von der Sollwertberechnungseinheit 9 eingegebenen Istpositionsbefehl Xc zu berechnen, und gibt die geschätzte Bewertungspunktposition Xe1 und die geschätzte Erfassungspunktposition Xd1 an die Anzeige 10 aus. Im Vergleich zu der Simulationseinheit 5 der ersten Ausführungsform beinhaltet die Simulationseinheit 5g der siebenten Ausführungsform ein AK-Modelleinheit 58g, einen Integrator 95 zweiter Ordnung und einen Integrator 96 zweiter Ordnung anstelle der Berechnungseinheit 54 für die geschätzte Referenzpunktposition und der Berechnungseinheit 56 für die geschätzte Bewertungspunktposition. Es ist zu beachten, dass die Festlegungseinheit 57 für Simulationsparameter in der vorliegenden Ausführungsform den Netzstrukturparameter festlegt, der von der Lerneinheit 13g in der Einheit 58g für das KI-Modell gelernt wird, und den Steifigkeitswertparameter Kdr in der Schätzeinheit 55 für die Antriebsreaktionskraft festlegt.
-
Die Einheit 58g für das KI-Modell ist eine Einheit für das Modell der künstlichen Intelligenz, die die gleiche neuronale Netzstruktur aufweist wie die neuronale Netzeinheit 91g. Die Einheit 58g für das KI-Modell führt die Berechnung des neuronalen Netzes, das heißt die Inferenzverarbeitung, unter Verwendung der Bewertungspunktbeschleunigung Ae, der Referenzpunktbeschleunigung Ar, des Netzstrukturparameters Md11, der von der Festlegungseinheit 57 für Simulationsparameter festgelegt wurde, und der geschätzten Erfassungspunktposition Xd1, die von der Berechnungseinheit 53 für die geschätzten Erfassungspunktposition berechnet wurde, durch und berechnet eine geschätzte Bewertungspunktbeschleunigung Ae1 und eine geschätzte Referenzpunktbeschleunigung Ar1. Die Einheit 58g für das KI-Modell gibt die geschätzte Bewertungspunktbeschleunigung Ae1 an den Integrator 95 zweiter Ordnung aus und gibt die geschätzte Referenzpunktbeschleunigung Ar1 an den Integrator 96 zweiter Ordnung aus.
-
Der Integrator 95 zweiter Ordnung wandelt die eingegebene geschätzte Bewertungspunktbeschleunigung Ae1 durch Integration zweiter Ordnung in die geschätzte Bewertungspunktposition Xe1 um. Der Integrator 96 zweiter Ordnung wandelt die eingegebene geschätzte Referenzpunktbeschleunigung Ar1 durch Integration zweiter Ordnung in die geschätzte Referenzpunktposition Xr1 um. Es ist zu beachten, dass die Einheit 58g für das KI-Modell die Funktionen der Integratoren 95 und 96 zweiter Ordnung beinhalten kann. In diesem Fall wandelt die Einheit 58g für das KI-Modell die geschätzte Bewertungspunktbeschleunigung Ae1, die durch die Berechnung erhalten wurde, durch Integration zweiter Ordnung in die geschätzte Bewertungspunktposition Xe1 um, das heißt sie berechnet die geschätzte Bewertungspunktposition Xe1. Auf ähnliche Weise wandelt die Einheit 58g für das KI-Modell die geschätzte Referenzpunktbeschleunigung Ar1, die durch die Berechnung erhalten wurde, durch Integration zweiter Ordnung in die geschätzte Referenzpunktposition Xr1 um, das heißt sie berechnet die geschätzte Referenzpunktposition Xr1.
-
Obwohl der Fall, in dem die Lerneinheit 13g maschinelles Lernen unter Verwendung von Deep Learning durchführt, als Beispiel beschrieben wurde, ist die vorliegende Erfindung nicht darauf beschränkt. Die Lerneinheit 13g kann maschinelles Lernen nach einer anderen bekannten Methode ausführen, wie etwa zum Beispiel Q-Learning, genetische Programmierung, funktionale Logikprogrammierung oder Support Vector Machine.
-
Der Betrieb der Servoregelvorrichtung 100g wird unter Bezugnahme auf ein Ablaufdiagramm beschrieben. 25 ist das Ablaufdiagramm, das den Betrieb der Servoregelvorrichtung 100g gemäß der sechsten Ausführungsform veranschaulicht. Die Vorgänge in den Schritten S1 und S2 sind ähnlich wie die Vorgänge der Servoregelvorrichtung 100 der ersten Ausführungsform, die im Ablaufdiagramm aus 8 veranschaulicht ist. In der Servoregelvorrichtung 100g lernt die Lerneinheit 13g den Netzstrukturparameter Md11 unter Verwendung der Zustandsgröße des Bewertungspunktes, der Zustandsgröße des Referenzpunktes und der erfassten Position Xd (Schritt S31). Die Simulationseinheit 5g berechnet die geschätzte Bewertungspunktposition Xe1 und die geschätzte Erfassungspunktposition Xd1 unter Verwendung der Zustandsgröße des Bewertungspunkts, der Zustandsgröße des Referenzpunkts, des Netzstrukturparameters Md11, des Positionsbefehls Xc und des Steifigkeitswertparameters Kdr (Schritt S32). In Bezug auf eine Hardwarekonfiguration der Servoregelvorrichtung 100g sind die Lerneinheit 13g und die Simulationseinheit 5g durch Verarbeitungsschaltungen umgesetzt. Die Verarbeitungsschaltung kann einen Speicher und einen Prozessor, der in dem Speicher gespeicherte Programme ausführt, beinhalten oder sie kann dedizierte Hardware beinhalten.
-
Wie vorstehend beschrieben, wendet die Servoregelvorrichtung 100g, die die Systemidentifikation durchführt, den Algorithmus zum maschinellen Lernen an, um in der Lage zu sein, das Systemmodell mit mehreren Eingängen und mehreren Ausgängen zu erhalten, ohne dass ein Mensch explizit eine Modellstruktur entwirft. Es ist zu beachten, dass, obwohl die erste Ausführungsform als Beispiel beschrieben wurde, die vorliegende Erfindung nicht darauf beschränkt ist. Die vorliegende Ausführungsform ist auch auf die zweite bis sechste Ausführungsform anwendbar.
-
Achte Ausführungsform.
-
In der siebenten Ausführungsform wurde das Verfahren zum Durchführen von maschinellem Lernen beschrieben, um das Systemmodell zu ermitteln, das die Modellkonfiguration der Simulationseinheit erfüllt, ähnlich wie bei der ersten bis sechsten Ausführungsform. In einer achten Ausführungsform wird ein Verfahren zum Durchführen von maschinellem Lernen beschrieben, um ein Modell einer Simulationseinheit zu ermitteln, das eine andere Struktur aufweist.
-
26 ist ein Diagramm, das ein Beispiel für eine Konfiguration einer Servoregelvorrichtung 100h, die eine Systemidentifikation durchführt, gemäß der achten Ausführungsform veranschaulicht. Im Vergleich zur Servoregelvorrichtung 100g der siebten Ausführungsform beinhaltet die Servoregelvorrichtung 100h der achten Ausführungsform eine Lerneinheit 13h und eine Simulationseinheit 5h anstelle der Lerneinheit 13g, der Simulationseinheit 5g und der Steifigkeitswerthalteeinheit 8.
-
27 ist ein Blockdiagramm, das ein Beispiel für eine Konfiguration der Lerneinheit 13h gemäß der achten Ausführungsform veranschaulicht. Im Vergleich zu der Lerneinheit 13g der siebten Ausführungsform beinhaltet die Lerneinheit 13h eine neuronale Netzeinheit 91h und eine Berechnungseinheit 92h für die Verlustfunktion anstelle der neuronalen Netzeinheit 91g und der Berechnungseinheit 92g für die Verlustfunktion. Die Lerneinheit 13h verwendet die Zustandsgröße des Bewertungspunkts, die Zustandsgröße des Referenzpunkts, die erfasste Position, die die Zustandsgröße des Aktuators ist, und die Antriebskraft des Aktuators als Trainingsdatensatz und lernt ein Systemmodell, bei dem die erfasste Position der Eingang ist und die Zustandsgröße des Bewertungspunkts und der geschätzte Antriebsreaktionskraftwert der Ausgang sind. Die Lerneinheit 13h beinhaltet die neuronale Netzeinheit 91h, die Berechnungseinheit 92h für die Verlustfunktion, die Optimierungseinheit 93h und eine Ausgabeeinheit 94h für das KI-Modell.
-
Unter Verwendung des Trainingsdatensatzes, das heißt der Bewertungspunktbeschleunigung Ae, der Referenzpunktbeschleunigung Ar, der erfassten Position Xd und des Motorstroms Im lernt die Lerneinheit 13h einen Netzstrukturparameter Mdl2 als ein Systemmodell zur Vorhersage der gelernten Bewertungspunktbeschleunigung AeM und einer gelernten Antriebsreaktionskraft TrM zu einem bestimmten Zeitpunkt in der Zukunft, der ein vorbestimmter Zeitpunkt ist, für die Bewertungspunktbeschleunigung Ae und den geschätzten Antriebsreaktionskraftwert Tr1. Insbesondere bestimmt die neuronale Netzeinheit 91h den Netzstrukturparameter Mdl2 durch Lernen. Beispiele für den Netzstrukturparameter Mdl2 beinhalten einen Gewichtsparameter, einen Verzerrungsparameter und dergleichen. Die neuronale Netzeinheit 91h verwendet den Trainingsdatensatz als Eingang, führt eine Berechnung des neuronalen Netzes, das heißt eine Inferenzverarbeitung, unter Verwendung des Netzstrukturparameters Mdl2 durch und berechnet die gelernte Bewertungspunktbeschleunigung AeM und die gelernte Antriebsreaktionskraft TrM. Die neuronale Netzeinheit 91h gibt die gelernte Bewertungspunktbeschleunigung AeM und die gelernte Antriebsreaktionskraft TrM, die durch die Berechnung erhalten wurden, an die Berechnungseinheit 92h für die Verlustfunktion aus.
-
Die Berechnungseinheit 92h für die Verlustfunktion verwendet als Eingang die tatsächliche Bewertungspunktbeschleunigung Ae, die Referenzpunktbeschleunigung Ar und die erfasst Position Xd sowie den Motorstrom Im, der von der Reglereinheit 6a berechnet wurde, und die gelernte Bewertungspunktbeschleunigung AeM und die gelernte Antriebsreaktionskraft TrM, die von der neuronalen Netzeinheit 91h berechnet wurden, und berechnet die Verlustfunktion Lf. Zu diesem Zeitpunkt berechnet die Berechnungseinheit 92h für die Verlustfunktion aus dem folgenden Ausdruck (2) unter Verwendung des Motorstroms Im und der erfassten Position Xd einen berechneten Wert Tr
2 für die Antriebsreaktionskraft.
[Ausdruck 2]
-
In dem Ausdruck (2) stellt „Kt“ eine Drehmomentkonstante zur Berechnung des Drehmoments aus dem Motorstrom Im dar, und „Jm“ stellt die Trägheit des Motors 71 allein dar. Die Berechnungseinheit 92h für die Verlustfunktion kann somit die Verlustfunktion Lf unter Verwendung der gelernten Bewertungspunktbeschleunigung AeM, der gelernten Antriebsreaktionskraft Trm, der Bewertungspunktbeschleunigung Ae und des berechneten Wertes Tr2 der Ausführungsantriebsreaktionskraft berechnen.
-
Die Optimierungseinheit 93h aktualisiert den Netzstrukturparameter Md12, der zum Zeitpunkt des nächsten Lernens verwendet werden soll, unter Verwendung der Verlustfunktion Lf, die durch die Berechnung in der Berechnungseinheit 92h für die Verlustfunktion erhalten wurde. Die Optimierungseinheit 93h berechnet jeden Parameter unter Verwendung einer bekannten Technik, wie etwa der Rückwärtspropagierung, die auch als Fehlerrückführungsmethode bezeichnet wird.
-
Die Ausgabeeinheit 94h für das KI-Modell verwendet die Verlustfunktion Lf als Eingabe und vergleicht den Wert der Verlustfunktion Lf mit einem vorbestimmten Schwellenwert. Wenn der Wert der Verlustfunktion Lf kleiner oder gleich dem vorbestimmten Schwellenwert ist, gibt die Ausgabeeinheit 94h für das KI-Modell den Netzstrukturparameter Mdl2 an die Simulationseinheit 5h aus. Hinsichtlich des Ausgabezeitpunkts des Netzstrukturparameters Mdl2 kann die Ausgabeeinheit 94h für das KI-Modell den Netzstrukturparameter Mdl2 in regelmäßigen Abständen mit einem vorab festgelegten Modellaktualisierungszeitraum ausgeben.
-
28 ist ein Blockdiagramm, das ein Beispiel für eine Konfiguration der Simulationseinheit 5h gemäß der achten Ausführungsform veranschaulicht. Im Vergleich zu der Simulationseinheit 5g der siebenten Ausführungsform beinhaltet die Simulationseinheit 5h der achten Ausführungsform eine Einheit 58h für das KI-Modell anstelle der Schätzeinheit 55 für die Antriebsreaktionskraft, der Einheit 58g für das KI-Modell und des Integrators 96 zweiter Ordnung. Es ist zu beachten, dass die Festlegungseinheit 57 für Simulationsparameter in der vorliegenden Ausführungsform den Netzstrukturparameter Mdl2, der in der Lerneinheit 13h gelernt wird, in der Einheit 58h für das KI-Modell festlegt.
-
Die Einheit 58h für das KI-Modell ist eine Einheit für das Modell der künstlichen Intelligenz, die die gleiche neuronale Netzstruktur aufweist wie die neuronale Netzeinheit 91h. Die Einheit 58h für das KI-Modell führt eine Berechnung des neuronalen Netzes, das heißt eine Inferenzverarbeitung, unter Verwendung des Netzstrukturparameters Md2, der von der Festlegungseinheit 57 für Simulationsparameter eingegeben wird, eines geschätzten Motorstroms Im2, der von der Reglersimulationseinheit 51 berechnet wird, der geschätzten Erfassungspunktposition Xd1, die von der Berechnungseinheit 53 für die geschätzte Erfassungspunktposition berechnet wird, und der geschätzten Bewertungspunktbeschleunigung Ael, die von der Einheit 58h für das KI-Modell eine Abtastung zuvor berechnet wird, und berechnet die geschätzte Bewertungspunktbeschleunigung Ae1 und den geschätzten Antriebsreaktionskraftwert Tr1. Die Einheit 58h für das KI-Modell gibt die geschätzte Bewertungspunktbeschleunigung Ae1 an den Integrator 95 zweiter Ordnung aus und gibt den geschätzten Antriebsreaktionskraftwert Tr1 an den
Addierer/Subtrahierer 61e aus.
-
Der Integrator 95 zweiter Ordnung wandelt die eingegebene geschätzte Bewertungspunktbeschleunigung Ae1 durch Integration zweiter Ordnung in die geschätzte Bewertungspunktposition Xe1 um. Es ist zu beachten, dass die Einheit 58h für das KI-Modell die Funktion des Integrators 95 zweiter Ordnung beinhalten kann. In diesem Fall wandelt die Einheit 58h für das KI-Modell die geschätzte Bewertungspunktbeschleunigung Ae1, die durch die Berechnung erhalten wurde, durch Integration zweiter Ordnung in die geschätzte Bewertungspunktposition Xe1 um, das heißt sie berechnet die geschätzte Bewertungspunktposition Xe1.
-
Das Ablaufdiagramm, das den Betrieb der Servoregelvorrichtung 100h veranschaulicht, ist ähnlich wie bei der Servoregelvorrichtung 100g, die in 25 veranschaulicht ist. Der Unterschied besteht jedoch darin, dass die Simulationseinheit 5h den Netzstrukturparameter Mdl2 und den Positionsbefehl Xc bei der Berechnung der geschätzten Bewertungspunktposition Xe1 und der geschätzten Erfassungspunktposition Xd1 in Schritt S32 verwendet. In Bezug auf eine Hardwarekonfiguration der Servoregelvorrichtung 100h sind die Lerneinheit 13h und die Simulationseinheit 5h durch eine Verarbeitungsschaltung umgesetzt. Die Verarbeitungsschaltung kann einen Speicher und einen Prozessor, der in dem Speicher gespeicherte Programme ausführt, beinhalten oder sie kann dedizierte Hardware beinhalten.
-
Wie vorstehend beschrieben, kann die Servoregelvorrichtung 100h, die eine Systemidentifikation durchführt, gemäß der vorliegenden Ausführungsform eine Inferenz durchführen, ohne Sensordaten, tatsächliche Abtastdaten des Aktuators oder dergleichen zu verwenden, wenn die Inferenz durch die Einheit 58h für das KI-Modell unter Verwendung des Netzstrukturparameters Md2, der durch maschinelles Lernen erhalten wurde, durchgeführt wird. Folglich muss die Servoregelvorrichtung 100h bei der Durchführung der Inferenz in der Einheit 58h für das KI-Modell keine Kommunikationsverzögerung berücksichtigen und kann somit die Simulationseinheit 5h an einem räumlich getrennten Ort anordnen. Es ist zu beachten, dass, obwohl die erste Ausführungsform als Beispiel beschrieben wurde, die vorliegende Erfindung nicht darauf beschränkt ist. Die vorliegende Ausführungsform ist auch auf die zweite bis sechste Ausführungsform anwendbar.
-
Wie vorstehend beschrieben, berechnet die erfindungsgemäße Servoregelvorrichtung die Übertragungsfunktion vom Erfassungspunkt zum Referenzpunkt und die Übertragungsfunktion vom Referenzpunkt zum Bewertungspunkt unter Verwendung des Signals des Beschleunigungssensors, der am Bewertungspunkt angebracht ist, der das Regelziel ist, der Beschleunigung, die aus der erfassten Position des Erfassungspunkts, an dem der Positionsdetektor angebracht ist, berechnet wird, und des Signals des Beschleunigungssensors, der am Referenzpunkt angebracht ist, der zwischen dem Erfassungspunkt und dem Bewertungspunkt festgelegt ist. Die Servoregelvorrichtung kann das Ausmaß des Isttrajektoriefehlers des Regelziels unter Verwendung der beiden berechneten Übertragungsfunktionen und der Steifigkeit vom Erfassungspunkt zum Referenzpunkt vorhersagen und eignet sich für ein Verfahren zur genauen Messung des Trajektoriefehlers einer Maschine in einem tatsächlichen Verwendungszustand, ohne eine Spannvorrichtung oder ein Werkzeug zu entfernen.
-
Die in der vorstehenden Ausführungsform veranschaulichte Konfiguration veranschaulicht lediglich ein Beispiel für den Inhalt der vorliegenden Erfindung und kann somit mit einer anderen bekannten Technik kombiniert oder teilweise ausgelassen und/oder abgewandelt werden, ohne vom Umfang der vorliegenden Erfindung abzuweichen.
-
Bezugszeichenliste
-
- 1a
- Bewertungspunktsensor; 1b Referenzpunktsensor;
- 1c, 1d
- Gyrosensor;
- 2
- Drehwinkeldetektor;
- 4a
- Berechnungseinheit für die erste Übertragungsfunktion;
- 4b
- Berechnungseinheit für die zweite Übertragungsfunktion;
- 5, 5g, 5h
- Simulationseinheit;
- 6a, 6b, 6e
- Reglereinheit;
- 7a, 7b, 7c
- mechanische Einheit;
- 8
- Steifigkeitswerthalteeinheit;
- 9
- Sollwertberechnungseinheit;
- 10
- Anzeige;
- 11
- Änderungseinheit für Regelparameter;
- 12
- Berechnungseinheit für Korrekturbefehle;
- 13g, 13h
- Lerneinheit;
- 21
- Linearbewegungspositionsdetektor;
- 30
- Übertragungseinheit für Sensorsignale;
- 31
- Übertragungseinheit für Korrekturbefehle;
- 32
- Empfangseinheit für Sensorsignale;
- 33
- Empfangseinheit für Korrekturbefehle;
- 51
- Reglersimulationseinheit;
- 53
- Berechnungseinheit für diegeschätzte Erfassungspunktposition;
- 54
- Berechnungseinheit für die geschätzte Referenzpunktposition;
- 55
- Schätzeinheit für die Antriebsreaktionskraft;
- 56
- für Berechnungseinheit die geschätzte Bewertungspunktposition;
- 57
- Festlegungseinheit für Simulationsparameter;
- 58g, 58h
- Einheit für das KI-Modell;
- 61a, 61b, 61c, 61d, 61e, 61f, 61g
- Addierer/Subtrahierer;
- 62
- Positionsregler;
- 63
- Geschwindigkeitsregler;
- 64
- Stromregler;
- 65
- Geschwindigkeitsrechner;
- 66
- Beschleunigungsrechner;
- 67
- Multiplikator;
- 68
- Filtereinheit;
- 69a
- Multiplikationseinheit für Erfassungspunktpositionsverstärkung;
- 69b
- Multiplikationseinheit für Positionsbefehlsverstärkung;
- 69c
- Multiplikationseinheit für Positionskorrekturverstärkung;
- 69d
- Multiplikationseinheit für Geschwindigkeitskorrekturverstärkung;
- 69e
- Multiplikationseinheit für Stromkorrekturverstärkung;
- 70
- Drehmomentschätzer;
- 71
- Motor;
- 72
- mechanisches Strukturelement;
- 73
- Vorschubspindel;
- 74
- Kupplung;
- 75a, 75b
- Stützlager;
- 76
- Werkzeug;
- 77
- Werktisch;
- 78
- Werkstück;
- 79
- Mutterblock;
- 80
- Mutter;
- 81
- Schneckengetriebe;
- 82
- Drehtisch;
- 83
- Spindelendfläche;
- 90
- Berechnungseinheit für Simulationssollwerte;
- 91g, 91h
- neuronale Netzeinheit;
- 92g, 92h
- Berechnungseinheit für die Verlustfunktion;
- 93g, 93h
- Optimierungseinheit;
- 94g, 94h
- Ausgabeeinheit für das KI-Modell;
- 95, 96
- Integrators zweiter Ordnung;
- 99
- Werkzeugmaschine mit numerischer Regelung;
- 100, 100b, 100c,100d, 100e, 100f, 100g, 100h
- Servoregelvorrichtung;
- 101, 101b
- X-Achsen-Servoregelvorrichtung.
-
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
-