DE112021007575T5 - Steuerung, Steuerungssystem, Lernvorrichtung und Inferenzvorrichtung - Google Patents

Steuerung, Steuerungssystem, Lernvorrichtung und Inferenzvorrichtung Download PDF

Info

Publication number
DE112021007575T5
DE112021007575T5 DE112021007575.6T DE112021007575T DE112021007575T5 DE 112021007575 T5 DE112021007575 T5 DE 112021007575T5 DE 112021007575 T DE112021007575 T DE 112021007575T DE 112021007575 T5 DE112021007575 T5 DE 112021007575T5
Authority
DE
Germany
Prior art keywords
control
motor
model
position command
correction
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
DE112021007575.6T
Other languages
English (en)
Inventor
Kosuke Tsujikawa
Ryoichi Ikeda
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Publication of DE112021007575T5 publication Critical patent/DE112021007575T5/de
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H02GENERATION; CONVERSION OR DISTRIBUTION OF ELECTRIC POWER
    • H02PCONTROL OR REGULATION OF ELECTRIC MOTORS, ELECTRIC GENERATORS OR DYNAMO-ELECTRIC CONVERTERS; CONTROLLING TRANSFORMERS, REACTORS OR CHOKE COILS
    • H02P29/00Arrangements for regulating or controlling electric motors, appropriate for both AC and DC motors
    • H02P29/02Providing protection against overload without automatic interruption of supply
    • H02P29/024Detecting a fault condition, e.g. short circuit, locked rotor, open circuit or loss of load
    • H02P29/028Detecting a fault condition, e.g. short circuit, locked rotor, open circuit or loss of load the motor continuing operation despite the fault condition, e.g. eliminating, compensating for or remedying the fault
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B13/00Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion
    • G05B13/02Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric
    • G05B13/04Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric involving the use of models or simulators
    • G05B13/042Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric involving the use of models or simulators in which a parameter or coefficient is automatically adjusted to optimise the performance
    • HELECTRICITY
    • H02GENERATION; CONVERSION OR DISTRIBUTION OF ELECTRIC POWER
    • H02PCONTROL OR REGULATION OF ELECTRIC MOTORS, ELECTRIC GENERATORS OR DYNAMO-ELECTRIC CONVERTERS; CONTROLLING TRANSFORMERS, REACTORS OR CHOKE COILS
    • H02P23/00Arrangements or methods for the control of AC motors characterised by a control method other than vector control
    • H02P23/20Controlling the acceleration or deceleration
    • HELECTRICITY
    • H02GENERATION; CONVERSION OR DISTRIBUTION OF ELECTRIC POWER
    • H02PCONTROL OR REGULATION OF ELECTRIC MOTORS, ELECTRIC GENERATORS OR DYNAMO-ELECTRIC CONVERTERS; CONTROLLING TRANSFORMERS, REACTORS OR CHOKE COILS
    • H02P6/00Arrangements for controlling synchronous motors or other dynamo-electric motors using electronic commutation dependent on the rotor position; Electronic commutators therefor
    • H02P6/34Modelling or simulation for control purposes
    • HELECTRICITY
    • H02GENERATION; CONVERSION OR DISTRIBUTION OF ELECTRIC POWER
    • H02PCONTROL OR REGULATION OF ELECTRIC MOTORS, ELECTRIC GENERATORS OR DYNAMO-ELECTRIC CONVERTERS; CONTROLLING TRANSFORMERS, REACTORS OR CHOKE COILS
    • H02P29/00Arrangements for regulating or controlling electric motors, appropriate for both AC and DC motors
    • H02P29/02Providing protection against overload without automatic interruption of supply
    • H02P29/024Detecting a fault condition, e.g. short circuit, locked rotor, open circuit or loss of load
    • H02P29/0241Detecting a fault condition, e.g. short circuit, locked rotor, open circuit or loss of load the fault being an overvoltage
    • HELECTRICITY
    • H02GENERATION; CONVERSION OR DISTRIBUTION OF ELECTRIC POWER
    • H02PCONTROL OR REGULATION OF ELECTRIC MOTORS, ELECTRIC GENERATORS OR DYNAMO-ELECTRIC CONVERTERS; CONTROLLING TRANSFORMERS, REACTORS OR CHOKE COILS
    • H02P29/00Arrangements for regulating or controlling electric motors, appropriate for both AC and DC motors
    • H02P29/02Providing protection against overload without automatic interruption of supply
    • H02P29/024Detecting a fault condition, e.g. short circuit, locked rotor, open circuit or loss of load
    • H02P29/027Detecting a fault condition, e.g. short circuit, locked rotor, open circuit or loss of load the fault being an over-current
    • HELECTRICITY
    • H02GENERATION; CONVERSION OR DISTRIBUTION OF ELECTRIC POWER
    • H02PCONTROL OR REGULATION OF ELECTRIC MOTORS, ELECTRIC GENERATORS OR DYNAMO-ELECTRIC CONVERTERS; CONTROLLING TRANSFORMERS, REACTORS OR CHOKE COILS
    • H02P29/00Arrangements for regulating or controlling electric motors, appropriate for both AC and DC motors
    • H02P29/10Arrangements for regulating or controlling electric motors, appropriate for both AC and DC motors for preventing overspeed or under speed

Landscapes

  • Engineering & Computer Science (AREA)
  • Power Engineering (AREA)
  • Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Evolutionary Computation (AREA)
  • Medical Informatics (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Automation & Control Theory (AREA)
  • Control Of Electric Motors In General (AREA)

Abstract

Es wird eine Steuerung (10) bereitgestellt, die einen Positionsbefehl an eine Motorsteuerungsvorrichtung (20) ausgibt, die einem Motor (31) zum Steuern eines Betriebs einen Strom zuführt, wobei die Steuerung (10) umfasst: eine Programmanalyseeinheit (11), um ein Betriebsprogramm zu analysieren, das einen Pfad für ein durch Betrieb des Motors (31) anzutreibendes Objekt definiert, und Analysedaten auszugeben; und eine Positionsbefehlserzeugungseinheit (15), die ein Maschinenmodell umfasst, das eine als Ausgabe des Motors (31) verfügbare Beschleunigung berechnet, wobei die Positionsbefehlserzeugungseinheit (15) dazu konfiguriert ist, den Positionsbefehl basierend auf den Analysedaten und dem Maschinenmodell zu erzeugen und das Maschinenmodell zu aktualisieren, wenn eine Steuerungseingabe an den Motor (31) eine Sättigung über eine voreingestellte Steuerungseingabebegrenzung erreicht.

Description

  • Gebiet
  • Die vorliegende Offenbarung betrifft eine Steuerung, die mit einer Motorsteuerungsvorrichtung verbunden ist, die den Betrieb eines Motors steuert, ein Steuerungssystem, eine Lernvorrichtung und eine Inferenzvorrichtung.
  • Hintergrund
  • Herkömmlicherweise sind Servomotorsteuerungsvorrichtungen bekannt, die eine Nachlaufsteuerung durchführen. Bekannte Steuerungsvorrichtungen zur allgemeinen Steuerung von Servomotoren führen eine Proportional-Integral-Differenzial-Steuerung (PID-Steuerung) durch, um dem Positionsbefehlswert und Geschwindigkeitsbefehlswert zu folgen, die von außen eingegeben werden. Solche Steuerungsvorrichtungen weisen eine Begrenzung der Steuerungseingabe zum Schutz des Servomotors auf. Wenn eine Steuerungsvorrichtung, die eine Begrenzung der Steuerungseingabe aufweist, ein Bewegungsbefehl eingegeben wird, der die Begrenzung der Steuerungseingabe überschreitet, kann die Steuerungsvorrichtung dementsprechend dem Positionsbefehl, dem Geschwindigkeitsbefehl und dergleichen aufgrund des Windup-Phänomens nicht folgen, bei dem ein Überschwingen der Ausgabeantwort auftritt, wenn eine Sättigung der Steuerungseingabe auftritt, was eine Verschlechterung der Steuerungsleistung verursachen kann, wie beispielsweise ein Überschwingen, eine Destabilisierung des Steuerungssystems und dergleichen. Als eine Gegenmaßnahme zum Verhindern einer solchen Leistungsverschlechterung offenbart die Patentliteratur 1 eine Technik zum Verhindern einer Sättigung einer Steuerungseingabe, in dem vorausgesagt wird, dass eine Steuerungseingabe für ein Steuerungsziel mit einer Begrenzung der Steuerungseingabe an den Motor begrenzt ist, und zur Korrektur der Positionsabweichung.
  • Zitierungsliste
  • Patentliteratur
  • Patentliteratur 1: Offenlegung der japanischen Patentanmeldung Nr. 2010-178509
  • Überblick über die Erfindung
  • Technisches Problem
  • Bei allgemeinen Werkzeugmaschinen erzeugt eine Steuerung, die eine übergeordnete Steuerungsvorrichtung ist, die mit einer Motorsteuerungsvorrichtung verbunden ist, einen Positionsbefehl basierend auf einem Programm, das dem Pfad des durch den Motor anzutreibenden Objekts bestimmt, wie beispielsweise ein G-Code-Programm. Gemäß der obigen herkömmlichen Technik korrigiert die Motorsteuerungsvorrichtung jedoch die Positionsabweichung, die die Differenz zwischen dem von der Steuerung eingegebenen Positionsbefehl und der erfassten Motorposition ist, um das Windup-Phänomen zu verhindern. Eine solche Korrektur der Motorsteuerungsvorrichtung verursacht dementsprechend ein Problem dahingehend, dass das durch den Motor anzutreibende Objekt so betrieben wird, dass es einem Pfad folgt, der von dem Pfad verschieden ist, der von der Steuerung erwartet wird. Zusätzlich ist die obige herkömmliche Technik nicht dazu ausgelegt, eine Ausgabe eines Befehls zu verhindern, die eine Sättigung einer Steuerungseingabe verursachen würde und es besteht demnach ein Problem dahingehend, dass eine Abweichung zwischen dem vorausgesagten Betrieb basierend auf dem Positionsbefehl und dem tatsächlichen Betrieb auftritt. In einem solchen Fall kann eine vorläufige Vorhersage der Betriebszeit, des Pfads und dergleichen basierend auf dem Positionsbefehl kein gutes Ergebnis liefern.
  • Die vorliegende Offenbarung wurde in Anbetracht des obigen getätigt und es ist ein Ziel dieser, eine Steuerung zu erhalten, die ein Maschinenmodell, das zur Erzeugung des Positionsbefehls an die Motorsteuerungsvorrichtung verwendet wird, basierend auf der Sättigungssituation zu aktualisieren, während eine Verschlechterung der Steuerungsleistung aufgrund der Sättigung einer Steuerungseingabe reduziert ist.
  • Mittel zum Lösen des Problems
  • Um das oben beschriebene Problem zu lösen und das Ziel zu erreichen, gibt eine Steuerung der vorliegenden Offenbarung einen Positionsbefehl an eine Motorsteuerungsvorrichtung aus, die einem Motor zum Steuern eines Betriebs einen Strom zuführt. Die Steuerung umfasst: eine Programmanalyseeinheit, um ein Betriebsprogramm zu analysieren, das einen Pfad für einen durch Betrieb des Motors anzutreibendes Objekt definiert, und Analysedaten auszugeben; und eine Positionsbefehlserzeugungseinheit, die ein Maschinenmodell umfasst, das eine als Ausgabe des Motors verfügbare Beschleunigung berechnet, wobei die Positionsbefehlserzeugungseinheit dazu konfiguriert ist, den Positionsbefehl basierend auf den Analysedaten und dem Maschinenmodell zu erzeugen und das Maschinenmodell zu aktualisieren, wenn eine Steuerungseingabe an den Motor eine Sättigung über eine voreingestellte Steuerungseingabebegrenzung erreicht.
  • Vorteilhafte Wirkungen der Erfindung
  • Die Steuerung gemäß der vorliegenden Offenbarung kann eine Wirkung dahingehend erreichen, dass ein Maschinenmodell, das zur Erzeugung des Positionsbefehls an die Motorsteuerungsvorrichtung verwendet wird, basierend auf der Sättigungssituation aktualisiert wird, während eine Verschlechterung der Steuerungsleistung aufgrund einer Sättigung einer Steuerungseingabe reduziert wird.
  • Kurze Beschreibung der Zeichnungen
    • 1 ist ein Diagramm, das eine beispielhafte Konfiguration eines Steuerungssystems gemäß einer ersten Ausführungsform zeigt.
    • 2 ist ein Diagramm, das eine beispielhafte Konfiguration der Vorkorrekturpositionsbefehlsberechnungseinheit zeigt, die in der Steuerung gemäß der ersten Ausführungsform umfasst ist.
    • 3 ist ein Diagramm, das ein Beispiel für eine Größe einer Bewegung vor einer Beschleunigungs-/Verzögerungs-Verarbeitung von der Beschleunigungs-/Verzögerungs-Verarbeitungseinheit zeigt, die in der Vorkorrekturpositionsbefehlsberechnungseinheit der Steuerung gemäß der ersten Ausführungsform umfasst ist.
    • 4 ist ein Diagramm, das ein Beispiel für die Größe der Bewegung nach einer Beschleunigungs-/Verzögerungs-Verarbeitung durch die Beschleunigungs-/Verzögerungs-Verarbeitungseinheit zeigt, die in der Vorkorrekturpositionsbefehlsberechnungseinheit der Steuerung gemäß der ersten Ausführungsform umfasst ist.
    • 5 ist ein Diagramm, das ein Beispiel für das Motorkennmodell zeigt, das in der Beschleunigungs-/Verzögerungs-Verarbeitungseinheit gespeichert ist, die in der Vorkorrekturpositionsbefehlsberechnungseinheit der Steuerung gemäß der ersten Ausführungsform umfasst ist.
    • 6 ist ein Diagramm, das eine beispielhafte Konfiguration der Beschleunigungskorrekturberechnungseinheit zeigt, die in der Steuerung gemäß der ersten Ausführungsform umfasst ist.
    • 7 ist ein Diagramm, das ein Beispiel für Differenz der Größe der Bewegung zeigt, die durch die Korrektur der Beschleunigung durch die Beschleunigungskorrekturberechnungseinheit der Steuerung gemäß der ersten Ausführungsform bewirkt wird.
    • 8 ist ein Flussdiagramm, das den Betrieb einer Verringerung einer Verschlechterung einer Steuerungsleistung aufgrund einer Sättigung einer Steuerungseingabe in der Steuerung gemäß der ersten Ausführungsform zeigt.
    • 9 ist ein Diagramm, das ein Bild zeigt, in dem das Motordrehmoment, das aus der Zustandsgröße bei dem Steuerungssättigungssignal, das AN ist, berechnet ist, als Motorkenndaten in der Beschleunigungs-/Verzögerungs-Verarbeitungseinheit aufgezeichnet ist, die in der Vorkorrekturpositionsbefehlsberechnungseinheit der Steuerung gemäß der ersten Ausführungsform umfasst ist.
    • 10 ist ein Flussdiagramm, das den Betrieb des Aktualisierens des Maschinenmodells basierend auf der Sättigungssituation bei der Steuerung gemäß der ersten Ausführungsform zeigt.
    • 11 ist ein Diagramm, das eine beispielhafte Konfiguration einer Hardware zeigt, die die Steuerung gemäß der vorliegenden Ausführungsform umsetzt.
    • 12 ist ein Diagramm, das eine beispielhafte Konfiguration eines Steuerungssystems gemäß einer zweiten Ausführungsform zeigt.
    • 13 ist ein Diagramm, das eine beispielhafte Konfiguration der Beschleunigungskorrekturberechnungseinheit zeigt, die in der Steuerung gemäß der zweiten Ausführungsform umfasst ist.
    • 14 ist ein Diagramm, das eine beispielhafte Konfiguration eines Steuerungssystems gemäß einer dritten Ausführungsform zeigt.
    • 15 ist ein Diagramm, das eine beispielhafte Konfiguration der Steuerungskorrekturberechnungseinheit zeigt, die in der Steuerung gemäß der dritten Ausführungsform umfasst ist.
    • 16 ist ein Diagramm, das eine beispielhafte Konfiguration einer Lernvorrichtung zeigt, die bei der Steuerung gemäß einer vierten Ausführungsform angewendet wird.
    • 17 ist ein Diagramm, das ein Beispiel für ein neuronales Netzwerk schematisch zeigt, das in der Modellerzeugungseinheit der Lernvorrichtung gemäß der vierten Ausführungsform verwendet wird.
    • 18 ist ein Flussdiagramm, das eine Lernverarbeitung in der Lernvorrichtung gemäß der vierten Ausführungsform zeigt.
    • 19 ist ein Diagramm, das eine beispielhafte Konfiguration einer Inferenzvorrichtung zeigt, die bei der Steuerung gemäß der vierten Ausführungsform angewendet wird.
    • 20 ist ein Flussdiagramm, das eine Inferenzverarbeitung in der Inferenzvorrichtung gemäß der vierten Ausführungsform zeigt.
    • 21 ist ein Diagramm, das ein Beispiel für einen Fall zeigt, bei dem die Lernvorrichtung und die Inferenzvorrichtung bei der vierten Ausführungsform außerhalb der Steuerung installiert sind.
    • 22 ist ein Diagramm, das ein Beispiel für einen Fall zeigt, bei dem die Lernvorrichtung und die Inferenzvorrichtung bei der vierten Ausführungsform in der Steuerung installiert sind.
  • Beschreibung von Ausführungsformen
  • Im Nachfolgenden werden eine Steuerung, ein Steuerungssystem, eine Lernvorrichtung und eine Inferenzvorrichtung gemäß Ausführungsformen der vorliegenden Offenbarung mit Bezug auf die Zeichnungen im Detail beschrieben.
  • Erste Ausführungsform.
  • 1 ist ein Diagramm, das eine beispielhafte Konfiguration eines Steuerungssystems 40 gemäß der ersten Ausführungsform zeigt. Das Steuerungssystem 40 umfasst eine Steuerung 10 und eine Motorsteuerungsvorrichtung 20. Bei der vorliegenden Ausführungsform ist die Steuerung 10 dadurch gekennzeichnet, dass sie eine Verschlechterung der Steuerungsleistung aufgrund einer Sättigung einer Steuerungseingabe verringert und ein Maschinenmodell, das zur Erzeugung des Positionsbefehls für die Motorsteuerungsvorrichtung 20 verwendet wird, basierend auf der Sättigungssituation aktualisiert wird. Im Folgenden wird jedes Merkmal beschrieben. Zunächst wird die Verringerung der Verschlechterung der Steuerungsleistung aufgrund einer Sättigung einer Steuerungseingabe beschrieben. Der Begriff „Sättigung einer Steuerungseingabe“ bedeutet hier, dass eine voreingestellte Steuerungseingabebegrenzung überschritten wird.
  • Wie in 1 gezeigt, ist die Steuerung 10 eine übergeordnete Steuerungsvorrichtung, die mit der Steuerungsvorrichtung 20 verbunden ist. Die Steuerung 10 gibt einen Positionsbefehl an die Motorsteuerungsvorrichtung 20 aus. Die Motorsteuerungsvorrichtung 20 steuert den Betrieb eines Motors 31, indem sie dem Motor 31 basierend auf dem Positionsbefehl einen Strom zuführt. Der Motor 31 ist mit einem Messgeber 33, der die Motorposition des Motors 31 erfasst, und einer Last 32 als ein durch Betrieb des Motors 31 anzutreibendes Objekt verbunden. Der Motor 31 und die Last 32 werden gemeinsam als ein mechanisches System 30 bezeichnet. Das mechanische System 30 umfasst eine Antriebsachse, die die Last 32 antreibt, die eine Werkzeugmaschine oder dergleichen bildet. In der folgenden Beschreibung werden Antriebsachsen einfach als Achsen bezeichnet. In einem Fall, in dem die Steuerung 10 beispielsweise den Betrieb einer Vielzahl von Achsen in eine Werkzeugmaschine oder dergleichen steuert, werden der Motor 31 und die Motorsteuerungsvorrichtung 20 für jede Achse vorgesehen. Die erste Ausführungsform beschreibt einen Fall, in dem die Steuerung 10 eine Motorsteuerungsvorrichtung 20 und ein mechanisches System 30 handhabt. Wie in 1 gezeigt, kann der Messgeber 33 in dem mechanischen System 30 umfasst sein.
  • Die Motorsteuerungsvorrichtung 20 treibt (betreibt) den Motor 31 basierend auf dem von der Steuerung 10 bezogenen Nachkorrekturpositionsbefehl. Wie in 1 gezeigt, umfasst die Motorsteuerungsvorrichtung 20 eine Positionsabweichungsberechnungseinheit 21, eine Positionssteuerungseinheit 22, eine Geschwindigkeitsberechnungseinheit 23, eine Geschwindigkeitsabweichungsberechnungseinheit 24, eine Geschwindigkeitssteuereinheit 25, eine Strombegrenzungseinheit 26 und eine Stromsteuereinheit 27.
  • Die Positionsabweichungsberechnungseinheit 21 berechnet die Positionsabweichung zwischen dem von der Steuerung 10 bezogenen Nachkorrekturpositionsbefehl und der durch den Messgeber 33 erfassten Motorposition des Motors 31. Die Positionssteuerungseinheit 22 erzeugt einen Geschwindigkeitsbefehl für den Motor 31 basierend auf der durch die Positionsabweichungsberechnungseinheit 21 berechneten Positionsabweichung. Die Geschwindigkeitsberechnungseinheit 23 berechnet die Geschwindigkeit des Motors 31 durch Differenzieren der von dem Messgeber 33 erfassten Motorposition des Motors 31. Die Geschwindigkeitsabweichungsberechnungseinheit 24 berechnet die Geschwindigkeitsabweichung zwischen dem von der Positionssteuerungseinheit 22 erzeugten Geschwindigkeitsbefehl und dem von der Geschwindigkeitsberechnungseinheit 23 berechneten Geschwindigkeit des Motors 31. Die Geschwindigkeitsteuerungseinheit 25 erzeugt einen Strombefehl für den Motor 31 basierend auf der durch die Geschwindigkeitsabweichungsberechnungseinheit 24 berechneten Geschwindigkeitsabweichung. Die Strombegrenzungseinheit 26 begrenzt den von der Geschwindigkeitsteuerungseinheit 25 erzeugten Strombefehl so, dass dieser kleiner oder gleich einem maximalen Motorstrom Imax ist, der zum Schutz des Motors 31 definiert ist, und gibt den Nachbegrenzungsstrombefehl aus. Die Strombegrenzungseinheit 26 führt die Strombegrenzung des Strombefehls durch, wenn der Strombefehl größer oder gleich dem maximalen Motorstrom Imax ist, und gibt den Strombefehl in einem Ist-Zustand ohne Durchführung einer Strombegrenzung aus, wenn der Strombefehl kleiner ist als der maximale Motorstrom Imax. Die Stromsteuerungseinheit 27 erzeugt und gibt einen Motorstrom I an den Motor 31 basierend auf dem Nachbegrenzungsstrombefehl und dem rückgeführten Motorstrom I aus.
  • Im Nachfolgenden wird die Konfiguration und der Betrieb der Steuerung 10 im Detail beschrieben. Wie in 1 gezeigt, umfasst die Steuerung 10 einer Programmanalyseeinheit 11, eine Vorkorrekturpositionsbefehlsberechnungseinheit 12, eine Beschleunigungskorrekturberechnungseinheit 13 und eine Positionsbefehlsberechnungseinheit 14. Es sei angemerkt, dass die Vorkorrekturpositionsbefehlsberechnungseinheit 12, die Beschleunigungskorrekturberechnungseinheit 13 und die Positionsbefehlsberechnungseinheit 14 eine Positionsbefehlserzeugungseinheit 15 bilden.
  • Die Programmanalyseeinheit 11 analysiert das von außen eingegebene Betriebsprogramm und gibt das Analyseergebnis als Analysedaten aus. Das Betriebsprogramm umfasst eine Vielzahl von Befehlsblöcken. Das Betriebsprogramm ist beispielsweise ein Programm, das einen Betriebspfad der Last 32 definiert, die das durch Betrieb des Motors 31 anzutreibende Objekt ist. Der durch das Betriebsprogramm definierte Betriebspfad der Last 32 wird als der Befehlspfad bezeichnet. Die Analysedaten sind Informationen, die zur Bewegung jeder Achse notwendig sind, wie beispielsweise die Größe der Bewegung jeder Achse, eine Befehlszuführgeschwindigkeit und Befehlsinformationen in jedem Befehlsblock. Die Befehlsinformationen sind beispielsweise G-Code.
  • Die Positionsbefehlserzeugungseinheit 15 umfasst ein Maschinenmodell, das eine Beschleunigung berechnet, die als Ausgabe von dem Motor 31 möglich ist, und einen Positionsbefehl basierend auf dem Analyseergebnis und dem Maschinenmodell erzeugt. Wenn die Steuerungseingabe an den Motor 31 eine Sättigung über eine voreingestellte Steuerungseingabebegrenzung erreicht, aktualisiert die Positionsbefehlserzeugungseinheit 15 das Maschinenmodell. Im Nachfolgenden wird der Betrieb der Positionsbefehlserzeugungseinheit 15 im Detail als die Betriebe der Vorkorrekturpositionsbefehlsberechnungseinheit 12, der Beschleunigungskorrekturberechnungseinheit 13 und der Positionsbefehlsberechnungseinheit 14 beschrieben.
  • Die Vorkorrekturpositionsbefehlsberechnungseinheit 12 umfasst ein Maschinenmodell, das eine Beschleunigung berechnet, die als eine Ausgabe von dem Motor 31 verfügbar ist, und berechnet einen Vorkorrekturpositionsbefehl basierend auf den Analysedaten und dem Maschinenmodell. Insbesondere erzeugt die Vorkorrekturpositionsbefehlsberechnungseinheit 12 Interpolationsdaten basierend auf den von der Programmanalyseeinheit 11 bezogenen Analysedaten und erzeugt einen Vorkorrekturpositionsbefehl für einen Beschleunigungs-/Verzögerungs-Antrieb des Motors 31 basierend auf den Interpolationsdaten. 2 ist ein Diagramm, das eine beispielhafte Konfiguration der Vorkorrekturpositionsbefehlsberechnungseinheit 12 zeigt, die in der Steuerung 10 gemäß der ersten Ausführungsform umfasst ist. Die Vorkorrekturpositionsbefehlsberechnungseinheit 12 umfasst eine Interpolationsdatenerzeugungseinheit 121 und eine Beschleunigungs-/Verzögerungs-Verarbeitungseinheit 122.
  • Die Interpolationsdatenerzeugungseinheit 121 erzeugt Interpolationsdaten basierend auf den von der Programmanalyseeinheit 11 bezogenen Analysedaten. Die Interpolationsdaten umfassen Informationen, die zur Erzeugung von Geschwindigkeitsberechnungswerten verwendet werden, wie beispielsweise eine Zielgeschwindigkeit, zusätzlich zu Daten, die die Größe der Bewegung in einem Steuerungszyklus angeben.
  • Die Beschleunigungs-/Verzögerungs-Verarbeitungseinheit 122 verwendet die von der Interpolationsdatenerzeugungseinheit 121 bezogenen Interpolationsdaten und eine Zustandsgröße (später beschrieben), als Eingaben, führt eine Beschleunigungs-/Verzögerungs-Verarbeitung unter Verwendung des Maschinenmodells 123 durch und berechnet einen Vorkorrekturpositionsbefehl, indem sie die Größe der Bewegung jeder Achse in einem Steuerungszyklus für einen Beschleunigungs-/Verzögerungsantrieb in dem Bereich integriert, in dem ein Drehmoment als Ausgabe von dem Motor 31 verfügbar ist. Das Maschinenmodell 123 umfasst ein Motorkennmodell 124, das die Drehmoment-Geschwindigkeits-Kenndaten angibt, die als eine Ausgabe von dem Motor 31 verfügbar sind, und ein Lastmodell 125, das Informationen über die Last 32 umfasst, die das anzutreibende Objekt ist.
  • 3 ist ein Diagramm, das ein Beispiel für die Größe der Bewegung vor einer Beschleunigungs-/Verzögerungs-Verarbeitung durch die Beschleunigungs-/Verzögerungs-Verarbeitungseinheit 122 zeigt, die in der Vorkorrekturpositionsbefehlsberechnungseinheit 12 der Steuerung 10 gemäß der ersten Ausführungsform umfasst ist. 4 ist ein Diagramm, das ein Beispiel für die Größe der Bewegung nach der Beschleunigungs-/Verzögerungs-Verarbeitung durch die Beschleunigungs-/Verzögerungs-Verarbeitungseinheit 122 zeigt, die in der Vorkorrekturpositionsbefehlsberechnungseinheit 12 der Steuerung 10 gemäß der ersten Ausführungsform umfasst ist. In den 3 und 4 repräsentiert die horizontale Achse eine Zeit und die vertikale Achse repräsentiert die Größe der Bewegung. Die Größe der Bewegung ist die Größe einer Änderung des Positionsbefehls in einem Steuerungszyklus und entspricht dem Geschwindigkeitsbefehl. Die 3 entspricht den Interpolationsdaten und die 4 entspricht dem Vorkorrekturpositionsbefehl. Wie in 4 gezeigt, ist die Größe der Bewegung bei der Größe der Bewegung nach der Beschleunigungs-/Verzögerungs-Verarbeitung durch die Beschleunigungs-/Verzögerungs-Verarbeitungseinheit 122 pro Steuerungszyklus in dem Beschleunigungsabschnitt und dem Verzögerungsabschnitt kleiner als die in der 3 gezeigte Größe der Bewegung vor der Beschleunigungs-/Verzögerungs-Verarbeitung; dementsprechend ist die Zeit zum Bewegen der benötigten Größe der Bewegung länger.
  • Das Motorkennmodell 124 des Maschinenmodells 123, das in der Beschleunigungs-/Verzögerungs-Verarbeitungseinheit 122 der Vorkorrekturpositionsbefehlsberechnungseinheit 12 gespeichert ist, gibt die Änderung einer Rotationsgeschwindigkeit bezüglich des maximalen Drehmoments an, das als Ausgabe von dem Motor 31 verfügbar ist, wie in 5 gezeigt. Die 5 ist ein Diagramm, das ein Beispiel für das Motorkernmodell 124 zeigt, das in der Beschleunigungs-/Verzögerungs-Verarbeitungseinheit 122 gespeichert ist, die in der Vorkorrekturpositionsbefehlsberechnungseinheit 12 der Steuerung 10 gemäß der ersten Ausführungsform umfasst ist. Im Allgemeinen ist bei dem Motorkennmodell 124 ein maximales Ausgabedrehmoment Tmax, genauer gesagt ein Drehmoment, das als Ausgabe von dem Motor 31 verfügbar ist, das kleinere eines maximalen Drehmoments Tmax0, das aus dem durch den Motor 31 fließenden maximalen Motorstrom Imax bestimmt wird, und eines verringerten Drehmoments Tr, das aus der elektromotorischen Gegenkraft des Motors, die proportional zu der Motorrotationsgeschwindigkeit ansteigt, und aus der maximal an den Motor 31 anlegbaren Spannung bestimmt wird. Die in der 5 gezeigte dicke Linie ist das maximale Ausgabedrehmoment Tmax. Unter der Bedingung, dass eine Sättigung einer Steuerungseingabe bei der Motorsteuerung auftritt, ist im Allgemeinen das maximale Drehmoment Tmax0 das maximale Ausgabedrehmoment Tmax, wenn der Strombefehl, der eine Steuerungseingabe ist, begrenzt ist, und das maximale Ausgabedrehmoment Tmax ist das reduzierte Drehmoment Tr, wenn der Spannungsbefehl, der als Steuerungseingabe an den Motor 31 anzuwenden ist, begrenzt ist. Bei der folgenden Beschreibung wird der Fall, in dem der Strombefehl, der eine Steuerungseingabe ist, begrenzt ist, da er die Steuerungseingabebegrenzung überschreitet, als eine Drehmomentsättigung bezeichnet, und der Fall, bei dem der als Steuerungseingabe an den Motor 31 anzulegende Spannungsbefehl limitiert ist, da er die Steuerungseingabebegrenzung überschreitet, als Spannungssättigung bezeichnet. Dies sind Beispiele einer Sättigung von Steuerungseingaben.
  • Kehren wir nun zur 2 zurück. Wie in 2 gezeigt, umfasst das Lastmodell 125, das in dem Maschinenmodell 123 umfasst ist, das in der Beschleunigungs-/Verzögerungs-Verarbeitungseinheit 122 gespeichert ist, Informationen wie beispielsweise eine Lastträgheit J, Werkstückinformationen, ein Reibungsdrehmoment T1 und ein Drehmoment T2 durch asymmetrische Last. Die Werkstückinformationen umfassen beispielsweise das Gewicht des Werkstücks und die Form des Werkstücks. Das Werkstück ist das Objekt, das mit der Werkzeugmaschine zu bearbeiten ist, wenn die Steuerung 10 den Betrieb der Werkzeugmaschine steuert.
  • Als Nächstes wird ein Verfahren beschrieben, mit dem die Beschleunigungs-/Verzögerungs-Verarbeitungseinheit 122 einen Vorkorrekturpositionsbefehl berechnet. Um den Motor 31 ohne Verursachen einer Sättigung einer Steuerungseingabe anzutreiben, muss als eine Voraussetzung bei der Motorsteuerung hier ein Motordrehmoment Tm kleiner oder gleich dem maximalen Ausgabedrehmoment Tmax sein. Das Motordrehmoment Tm kann aus einem Ausgabedrehmoment Tout, das auf die Last 32 wirkt, und einem Stördrehmoment Td, das als eine Störung wirkt, wie in Formel (1) gezeigt, berechnet werden.
    Tm = Tout + Td
    Figure DE112021007575T5_0001
  • In der Formel (1) ist Tm das Motordrehmoment [Nm], Tout ist das Ausgabedrehmoment [Nm] und Td ist das Stördrehmoment [Nm]. Das Stördrehmoment Td kann hier aus dem Reibungsdrehmoment T1 und dem Drehmoment T2 durch asymmetrische Last wie in Formel (2) berechnet werden.
    Td = T 1 + T 2
    Figure DE112021007575T5_0002
  • In Formel (2) ist T1 das Reibungsdrehmoment [Nm] und T2 ist das Drehmoment durch asymmetrische Last [Nm]. Als Nächstes kann eine Winkelbeschleunigung α aus dem Ausgabedrehmoment Tout und der Lastträgheit J wie in Formel (3) gezeigt berechnet werden.
    α = Tout / J
    Figure DE112021007575T5_0003
  • In der Formel (3) ist J die Lastträgheit [kg/m2], welches das Trägheitsmoment ist. Das heißt, dass die Beschleunigungs-/Verzögerungs-Verarbeitungseinheit 122 unter der Annahme, dass die in dem Maschinenmodell 123 umfassten Informationen dem anzutreibenden Objekt entsprechen, den Vorkorrekturpositionsbefehl, der keine Sättigung der Steuerungseingabe verursacht, berechnen kann, indem sie die Winkelbeschleunigung α basierend auf dem Motorkennmodell 124 und dem Lastmodell 125 so bestimmt, dass das Motordrehmoment Tm kleiner oder gleich dem maximalen Ausgabedrehmoment Tmax ist. Beispielsweise kann die Beschleunigungs-/Verzögerungs-Verarbeitungseinheit 122 eine Beschleunigungs-/Verzögerung mit dem maximalen Ausgabedrehmoment Tmax umsetzen, indem sie die Winkelbeschleunigung α bestimmt, die das maximale Drehmoment Tmax0 in dem Bereich erzeugt, indem das maximale Ausgabedrehmoment Tmax gleich dem maximalen Drehmoment Tmax0 ist, und indem sie die Winkelbeschleunigung α bestimmt, die das reduzierte Drehmoment Tr in dem Bereich erzeugt, in dem das maximale Ausgabedrehmoment Tmax gleich dem reduzierten Drehmoment Tr ist.
  • Die Beschleunigungskorrekturberechnungseinheit 13 bestimmt als Nächstes, ob die Steuerungseingabe an den Motor 31 eine Sättigung erreicht hat, gibt das Steuerungssättigungssignal als AN aus, wenn bestimmt wird, dass die Steuerungseingabe eine Sättigung erreicht hat, und gibt das Steuerungssättigungssignal als AUS, wenn bestimmt wird, dass die Steuerungseingabe die Sättigung nicht erreicht hat. Ferner berechnet die Beschleunigungskorrekturberechnungseinheit 13 einen Positionsbefehlskorrekturwert zum Korrigieren des Vorkorrekturpositionsbefehls basierend auf dem Steuerungssättigungssignal. Insbesondere berechnet die Beschleunigungskorrekturberechnungseinheit 13 einen Positionsbefehlskorrekturwert zum Korrigieren des Vorkorrekturpositionsbefehls unter Verwendung des von der Vorkorrekturpositionsbefehlsberechnungseinheit 12 bezogenen Vorkorrekturpositionsbefehls und der von dem Messgeber 33 bezogenen Motorposition. 6 ist ein Diagramm, dass eine beispielhafte Konfiguration der Beschleunigungskorrekturberechnungseinheit 13 zeigt, die in der Steuerung 10 gemäß der ersten Ausführungsform umfasst ist. Die Beschleunigungskorrekturberechnungseinheit 13 umfasst eine Modellausgabeeinheit 131, eine Modellpositionsabweichungsberechnungseinheit 133, eine Vergleichseinheit 134 und eine Positionsbefehlskorrekturwertberechnungseinheit 135.
  • Die Modellausgabeeinheit 131 verwendet den von der Vorkorrekturpositionsbefehlsberechnungseinheit 12 berechneten Vorkorrekturpositionsbefehl als eine Eingabe und berechnet die Modellposition des Motors 31 unter Verwendung eines Motorsteuerungsmodells 132, das eine Positionssteuerungseinheit , eine Geschwindigkeitsteuerungseinheit , eine Stromsteuerungseinheit und dergleichen umfasst. Das Motorsteuerungsmodell 132 ist hier eine Simulation der Motorsteuerungsvorrichtung 20 und gibt die Motorposition des Motors 31 bei einem Steuern ohne Sättigung der Steuerungseingabe als die Modellposition aus. Bei dem in 6 gezeigten Motorsteuerungsmodell 132 ist der Bereich, der dem mechanischen System entspricht, das durch den Motor, die Last und den Messgeber repräsentiert ist, das Modell, das dem in 2 gezeigten Motorkennmodell 124 des Maschinenmodells 123 entspricht. Unter der Bedingung, dass die Sättigung der Steuerungseingabe nicht auftritt, und mit dem idealen Motorsteuerungsmodell 132, ist die Modellpositionsabweichung zwischen der von der Modellpositionsabweichungsberechnungseinheit 133 (später beschrieben) berechneten Modellposition und der Motorposition dementsprechend null. Andererseits bewirkt eine Sättigung der Steuerungseingabe eine Abweichung zwischen der Modellposition und der Motorposition, was zu einem Anstieg einer Positionsregeldifferenz führt, genauer gesagt zu einer Abweichung zwischen dem Vorkorrekturpositionsbefehl und der Motorposition, und in ähnlicher Weise zu einem Anstieg einer Modellpositionsabweichung führt. Dementsprechend kann die Beschleunigungskorrekturberechnungseinheit 13 die Sättigung der Steuerungseingabe bestimmen, indem sie die Modellpositionsabweichung überwacht. Zusätzlich kann, wie oben beschrieben, ein Verringern der Motorbeschleunigung das Motordrehmoment Tm verringern und die Sättigung der Steuerungseingabe abschwächen, da die Sättigung der Steuerungseingabe hauptsächlich einer Drehmomentsättigung oder einer Spannungssättigung zuzuschreiben ist. Bezüglich der Informationen des Modells, das dem Motorkennmodell 124 entspricht, kann die Modellausgabeeinheit 131 Informationen des Motorkennmodells 124 von der Vorkorrekturpositionsbefehlsberechnungseinheit 12 beziehen und kann Nachaktualisierungsinformationen des Motorkennmodells 124 beziehen, nachdem die Vorkorrekturpositionsbefehlsberechnungseinheit 12 das Motorkennmodell 124 wie später beschrieben aktualisiert.
  • Die Modellpositionsabweichungsberechnungseinheit 133 berechnet die Abweichung zwischen der von der Modellausgabeeinheit 131 berechneten Modellposition und der von dem Messgeber 33 erfassten Motorposition des Motors 31, und gibt die berechnete Abweichung als die Modellpositionsabweichung aus.
  • Die Vergleichseinheit 134 vergleicht die von der Modellpositionsabweichungsberechnungseinheit 133 berechnete Modellpositionsabweichung mit einem gegebenen Schwellwert, bestimmt, dass eine Art der Sättigung der Steuerungseingabe aufgetreten ist, wenn die Modellpositionsabweichung größer oder gleich dem Schwellwert ist, und gibt das Steuerungssättigungssignal als AN aus. Wenn die Modellpositionsabweichung geringer ist als der Schwellwert, bestimmt die Vergleichseinheit andererseits, dass es keine Sättigung der Steuerungseingabe gibt, und gibt das Steuerungssättigungssignal als AUS aus. Es sei angemerkt, dass der in der Vergleichseinheit 134 verwendete Schwellwert ein fester Wert oder ein variabler Wert sein kann. Im Falle eines festen Werts stellt der Hersteller oder Benutzer der Steuerung 10 den festen Wert im Voraus ein. Im Falle eines variablen Werts kann die Positionsabweichung zwischen dem Vorkorrekturpositionsbefehl und der in dem in 6 gezeigten Motorsteuerungsmodell 132 berechneten Modellposition beispielsweise mit einem gegebenen Koeffizienten multipliziert werden, und der Ergebniswert kann als der Schwellwert verwendet werden. Der in der Vergleichseinheit 134 verwendete Schwellwert ist ein Beispiel für eine Steuerungseingabebegrenzung.
  • Die Positionsbefehlskorrekturwertberechnungseinheit 135 berechnet einen Positionsbefehlskorrekturwert basierend auf dem von der Vergleichseinheit 134 bezogenen Steuerungssättigungssignal, der von dem Messgeber 33 bezogenen Motorposition und dem von der Vorkorrekturpositionsbefehlsberechnungseinheit 12 bezogenen Vorkorrekturpositionsbefehl. Wenn das Steuerungssättigungssignal AN ist, berechnet die Positionsbefehlskorrekturwertberechnungseinheit 135 insbesondere einen Positionsbefehlskorrekturwert zum Korrigieren des Vorkorrekturpositionsbefehls und gibt diesen aus, um die Nachkorrekturbefehlsbeschleunigung zu verringern, die die Beschleunigung nach der Korrektur ist, mit anderen Worten die Größe der Änderung des Nachkorrekturpositionsbefehls in einem Steuerungszyklus. Dabei kann die Positionsbefehlskorrekturwertberechnungseinheit 135 eine Korrektur durchführen, um die Nachkorrekturbefehlsbeschleunigung auf null zu bringen, oder kann eine Korrektur durchführen, um die Nachkorrekturbefehlsbeschleunigung schrittweise mit einer Zeitkonstanten zu verringern. In jedem Fall wirkt die oben beschriebene Modellpositionsabweichung so, dass diese verringert wird und nicht erhöht wird. Nachdem das Steuerungssättigungssignal auf AN geschaltet wurde, bestimmt die Vergleichseinheit 134, dass die Sättigung der Steuerungseingabe abgeschwächt wurde und gibt das Steuerungssättigungssignal als AUS aus, sobald die Modellpositionsabweichung beim Steuern durch die Positionsbefehlskorrekturwertberechnungseinheit 135 auf den Schwellwert oder weniger sinkt. Wenn das Steuerungssättigungssignal auf AUS geschaltet ist, berechnet die Positionsbefehlskorrekturwertberechnungseinheit 135 in diesem Fall einen Positionsbefehlskorrekturwert, der die Nachkorrekturbefehlsbeschleunigung größer werden lässt, als in dem Fall, in dem das Steuerungssättigungssignal AN ist, und gibt diesen Positionsbefehlskorrekturwert aus.
  • Als ein Beispiel sei angenommen, dass die Positionsbefehlskorrekturwertberechnungseinheit 135 den Positionsbefehlskorrekturwert so steuert, dass dieser die Nachkorrekturbefehlsbeschleunigung auf null bringt, wenn das Steuerungssättigungssignal AN ist, und den Positionsbefehlskorrekturwert so steuert, dass dieser die Nachkorrekturbefehlsbeschleunigung auf eine Größe beschleunigt, die der Vorkorrekturbefehlsbeschleunigung, die die Beschleunigung vor der Korrektur ist, entspricht, wenn das Steuerungssättigungssignal AUS ist. 7 ist ein Diagramm, das ein Beispiel für eine Differenz der Größe der Bewegung ist, die von der Korrektur der Beschleunigung durch die Beschleunigungskorrekturberechnungseinheit 13 der Steuerung 10 gemäß der ersten Ausführungsform bewirkt wird. In 7 repräsentiert die horizontale Achse eine Zeit und die vertikale Achse repräsentiert die Größe der Bewegung. Die horizontale Achse gibt auch die AN/AUS-Zeitpunkte des Steuerungssättigungssignals an.
  • Wenn bei der Beschleunigungskorrekturberechnungseinheit 13 der Vorkorrekturpositionsbefehl, der den Motor 31 dazu veranlasst, eine das maximale Ausgabedrehmoment Tmax überschreitende Beschleunigung aufzuweisen, eingegeben wird, tritt eine Sättigung der Steuerungseingabe auf, da das Motordrehmoment Tm bezüglich des benötigten Drehmoments, d. h. die Beschleunigung, übermäßig klein ist. Dabei wird das maximale Ausgabedrehmoment Tmax bei der Sättigung der Steuerungseingabe ausgegeben. Die Beschleunigungskorrekturberechnungseinheit 13 schaltet das Steuerungssättigungssignal auf AN, da die Modellpositionsabweichung aufgrund der Sättigung der Steuerungseingabe ansteigt. Die Beschleunigungskorrekturberechnungseinheit 13 korrigiert den Positionsbefehlskorrekturwert, um die Nachkorrekturbefehlsbeschleunigung, die die Beschleunigung nach der Korrektur ist, auf null zu bringen. Dementsprechend wird die Sättigung der Steuerungseingabe allmählich abgeschwächt und die Modellpositionsabweichung verringert sich. Die Beschleunigungskorrekturberechnungseinheit 13 schaltet das Steuerungssättigungssignal auf AUS, wenn die Modellpositionsabweichung kleiner oder gleich dem Schwellwert wird, und steuert den Positionsbefehlskorrekturwert so, dass dieser die Beschleunigung auf eine Größe wiederherstellt, die der ursprünglichen entspricht. Bei einer solchen Steuerung führt die Beschleunigungskorrekturberechnungseinheit 13 einen Betrieb durch, bei dem das Steuerungssättigungssignal AN und AUS wiederholt, während die Modellpositionsabweichung während der Beschleunigung/Verzögerung um den Schwellwert herum gesteuert wird. Dementsprechend kann die Steuerung 10 die Beschleunigung/Verzögerung mit dem maximalen Ausgabedrehmoment Tmax durchführen, während die Verschlechterung der Steuerungsleistung verringert wird, wie beispielsweise ein Überschwingen aufgrund des Windup-Phänomens, das durch übermäßige Steuerungssättigung hervorgerufen wird.
  • Demnach berechnet die Beschleunigungskorrekturberechnungseinheit 13 die Modellposition des Motors 31 beim Steuern der Motorsteuerungsvorrichtung 20 basierend auf dem Vorkorrekturpositionsbefehl, und wenn die Modellpositionsabweichung, die die Abweichung zwischen der Modellposition und der erfassten Motorposition des Motors 31 ist, größer oder gleich ist als der gegebene Schwellwert, bestimmt die Beschleunigungskorrekturberechnungseinheit 13, dass die Steuerungseingabe eine Sättigung erreicht hat und gibt das Steuerungssättigungssignal als AN aus. Wenn die Modellpositionsabweichung geringer ist als der Schwellwert, bestimmt die Beschleunigungskorrekturberechnungseinheit 13, dass die Steuerungseingabe keine Sättigung erreicht hat, und gibt das Steuerungssättigungssignal als AUS aus.
  • Wenn das Steuerungssättigungssignal als AN ausgegeben wird, gibt die Beschleunigungskorrekturberechnungseinheit 13 den Positionsbefehlskorrekturwert zum Korrigieren des Vorkorrekturpositionsbefehls aus, um die Nachkorrekturbefehlsbeschleunigung zu verringern. Wenn das Steuerungssättigungssignal danach als AUS ausgegeben wird, beendet die Beschleunigungskorrekturberechnungseinheit 13 den Positionsbefehlskorrekturwert so, dass sich dieser ausgehend von der Nachkorrekturbefehlsbeschleunigung bei der Ausgabe des Steuerungssättigungssignals als AN erhöht.
  • Die Positionsbefehlsberechnungseinheit 14 berechnet einen Nachkorrekturpositionsbefehl als ein Positionsbefehl für die Motorsteuerungsvorrichtung 20 unter Verwendung des von der Vorkorrekturpositionsbefehlsberechnungseinheit 12 bezogenen Vorkorrekturpositionsbefehls und des von der Beschleunigungskorrekturberechnungseinheit 13 bezogenen Positionsbefehlskorrekturwerts, und gibt den Nachkorrekturpositionsbefehl an die Motorsteuerungsvorrichtung 20 aus. Die Positionsbefehlsberechnungseinheit 14 berechnet den Nachkorrekturpositionsbefehl, indem sie den Vorkorrekturpositionsbefehl unter Verwendung des Positionsbefehlskorrekturwerts korrigiert.
  • Wie oben beschrieben kann die Steuerung 10 eine Verschlechterung der Steuerungsleistung aufgrund der Sättigung der Steuerungseingabe verringern, während der Pfad des durch den Motor 31 anzutreibenden Objekts beibehalten wird, ohne dass der Motorsteuerungsvorrichtung 20 eine besondere Verarbeitung hinzugefügt wird.
  • Der obige Betrieb wird mit Bezug auf ein Flussdiagramm beschrieben. 8 ist ein Flussdiagramm, das den Betrieb des Verringerns einer Verschlechterung der Steuerungsleistung aufgrund einer Sättigung der Steuerungseingabe bei der Steuerung 10 gemäß der ersten Ausführungsform zeigt. Bei der Steuerung 10 analysiert die Programmanalyseeinheit 11 das Betriebsprogramm (Schritt S1), und gibt Analysedaten aus. Die Interpolationsdatenerzeugungseinheit 121 der Vorkorrekturpositionsbefehlsberechnungseinheit 12 erzeugt Interpolationsdaten aus den Analysedaten (Schritt S2). Die Beschleunigungs-/Verzögerungs-Verarbeitungseinheit 122 der Vorkorrekturpositionsbefehlsberechnungseinheit 12 verwendet die Interpolationsdaten und die Zustandsgröße als Eingaben, führt die Beschleunigungs-/Verzögerungs-Verarbeitung unter Verwendung des Maschinenmodells 123 durch und berechnet einen Vorkorrekturpositionsbefehl (Schritt S3). Die Vergleichseinheit 134 der Beschleunigungskorrekturberechnungseinheit 13 vergleicht die von der Modellpositionsabweichungsberechnungseinheit 133 berechnete Modellpositionsabweichung mit dem gegebenen Schwellwert und bestimmt, ob die Steuerungseingabe die Sättigung erreicht hat (Schritt S4). Die Vergleichseinheit 134 gibt das Steuerungssättigungssignal abhängig von dem Bestimmungsergebnis als AN oder AUS aus (Schritt S5). Die Positionsbefehlskorrekturwertberechnungseinheit 135 der Beschleunigungskorrekturberechnungseinheit 13 berechnet einen Positionsbefehlskorrekturwert basierend auf dem Steuerungssättigungssignal, der Motorposition und dem Vorkorrekturpositionsbefehl (Schritt S6). Die Positionsbefehlsberechnungseinheit 14 berechnet einen Nachkorrekturpositionsbefehl unter Verwendung des Vorkorrekturpositionsbefehls und des Positionsbefehlskorrekturwerts (Schritt S7). Die Positionsbefehlsberechnungseinheit 14 gibt den Nachkorrekturpositionsbefehl als einen Positionsbefehl an die Motorsteuerungsvorrichtung 20 aus.
  • Als Nächstes wird eine Aktualisierung des Maschinenmodells 123 basierend auf der Sättigungssituation beschrieben, d. h. eine Aktualisierung des Maschinenmodells 123 basierend auf dem Sättigungsergebnis der Steuerungseingabe.
  • Zunächst umfasst die Zustandsgröße, die eine Eingabe an das Maschinenmodell 123 ist, die Motorposition, die Maschinenendposition, die Motorgeschwindigkeit, die Maschinenendgeschwindigkeit, die Motorbeschleunigung, die Maschinenendbeschleunigung, den Motorstrom I, Drehmomentinformationen, die Modellposition, einen Schätzwert der Lastträgheit und/oder eine Versorgungsspannung. Die Motorposition und die Maschinenendposition können zusammen als Positionsinformationen bezeichnet werden, die Motorgeschwindigkeit und die Maschinenendgeschwindigkeit können zusammen als Geschwindigkeitsinformationen bezeichnet werden, und die Motorbeschleunigung und die Maschinenendbeschleunigung können zusammen als Beschleunigungsinformationen bezeichnet werden. Das Maschinenende ist ein definierter Abschnitt der Last 32, der gänzlich oder teilweise mit der Drehung des Motors 31 in dem mechanischen System 30 bewegt wird, die das durch die Motorsteuerungsvorrichtung 20 anzutreibende Objekt ist. Als ein Verfahren zum Schätzen des Schätzwerts der Lastträgheit kann jedwedes Verfahren angewendet werden, solange die Schätzung während der Ausführung des Betriebsprogramms durchgeführt wird. Beispiele für anwendbare Verfahren umfassen eine Berechnung anhand des Verhältnisses zwischen Drehmoment und Beschleunigung während der Beschleunigung/Verzögerung, eine Verwendung von sequenziellen kleinsten Quadraten und dergleichen. Diese Zustandsgrößen können Daten sein, die von der Motorsteuerungsvorrichtung 20 oder der Beschleunigungskorrekturberechnungseinheit 13 berechnet werden, oder können Daten sein, die durch Messungen von einem externen Sensor (nicht gezeigt) oder dergleichen bezogen werden, der in der Motorsteuerungsvorrichtung 20 umfasst ist.
  • Die Beschleunigungs-/Verzögerungs-Verarbeitungseinheit 122 aktualisiert das Maschinenmodell 123, das das Motorkennmodell 124 und das Lastmodell 125 umfasst, in Übereinstimmung mit dem von der Beschleunigungskorrekturberechnungseinheit 13 bezogenen Steuerungssättigungssignal und der von der Motorsteuerungsvorrichtung und/oder der Beschleunigungskorrekturberechnungseinheit 13 bezogenen Zustandsgröße. Unter der Voraussetzung, dass die Beschleunigungs-/Verzögerungs-Verarbeitungseinheit 122 den Vorkorrekturpositionsbefehl mit dem oben beschriebenen Verfahren berechnet, gibt es eine Differenz zwischen den in dem Maschinenmodell 123 gespeicherten Informationen und dem tatsächlichen Zustand des mechanischen Systems 30, wenn das Steuerungssättigungssignal AN ist. In ähnlicher Weise gibt der Motor 31 aufgrund der Bedingung, dass die Sättigung bei der Steuerungseingabe auftritt, das maximale Ausgabedrehmoment Tmax aus. Das von dem Motor 31 ausgegebene Drehmoment kann aus dem Motorstrom I, der die Zustandsgröße ist, und einer Drehmomentkonstanten, die gemäß dem Motor 31 im Voraus eingestellt ist, wie in Formel (4) gezeigt berechnet werden.
    Tm = Kt × I
    Figure DE112021007575T5_0004
  • In Formel (4) ist Tm das Motordrehmoment [Nm], I ist der Motorstrom [A] und Kt ist die Drehmomentkonstante [Nm/A]. 9 ist ein Diagramm, das ein Bild zeigt, in dem das Motordrehmoment Tm, das aus der Zustandsgröße bei dem Steuerungssättigungssignal berechnet wurde, das AN ist, als Motorkenndaten in der Beschleunigungs-/Verzögerung-Verarbeitungseinheit 122 eingetragen ist, die in der Vorkorrekturpositionsbefehlsberechnungseinheit 12 der Steuerung 10 gemäß der ersten Ausführungsform umfasst ist. Die Sättigung der Steuerungseingabe, die, wie oben beschrieben, hauptsächlich als Drehmomentsättigung oder Spannungssättigung klassifiziert ist, kann wie folgt aus der Zustandsgröße bestimmt werden. Bei der Bestimmung mit Formel (4) wird ein Motorstromschwellwert Ith, der geringfügig größer ist als der maximale Motorstrom Imax, der den maximalen Ausgabedrehmoment Tmax entspricht, unter Berücksichtigung von Abweichungen als der Schwellwert verwendet. Die Beschleunigungs-/Verzögerungs-Verarbeitungseinheit 122 kann die Drehmomentsättigung bestimmen, wenn Motorstrom I ≥ Motorstromschwellwert Ith erfüllt ist, während das Steuerungssättigungssignal AN ist, und die Spannungssättigung bestimmen, wenn Motorstrom I < Motorstromschwellwert Ith erfüllt ist, während das Steuerungssättigungssignal AN ist. Die Drehmomentsättigung kann als befehlsbasiertes Motordrehmoment Tm > maximales Drehmoment Tmax0 berücksichtigt werden. Andererseits ist die Spannungssättigung der Fall, bei dem befehlsbasiertes Motordrehmoment Tm < maximale Drehmoment Tmax0 unter der Bedingung, dass die Steuerungseingabe die Sättigung erreicht hat.
  • Wenn die Steuerungs-/Verzögerungs-Verarbeitungseinheit 122 die Drehmomentsättigung bestimmt, wird dementsprechend bei den obigen Formeln (1) bis (3) berücksichtigt, dass eine Differenz bei der Lastträgheit J, dem Reibungsdrehmoment T1, oder dem Drehmoment T2 durch asymmetrische Last aufgetreten ist. Dementsprechend kann die Beschleunigungs-/Verzögerungs-Verarbeitungseinheit 122 die Lastträgheit J, das Reibungsdrehmoment T1, oder das Drehmoment T2 durch asymmetrische Last des Lastmodells 125 basierend auf der Zustandsgröße aktualisieren. Hier kann die Beschleunigungs-/Verzögerungs-Verarbeitungseinheit 122 die zu aktualisierenden Informationen des Lastmodells 125 in Übereinstimmung mit den Werkstückinformationen bestimmen. Zusätzlich kann die Beschleunigungs-/Verzögerungs-Verarbeitungseinheit 122 eine Aktualisierung basierend auf dem Schätzwert der Lastträgheit als die Zustandsgröße durchführen. Wenn die Beschleunigungs-/Verzögerungs-Verarbeitungseinheit 122 andererseits die Spannungssättigung bestimmt, wird berücksichtigt, dass eine Differenz bei dem reduzierten Drehmoment Tr aufgetreten ist. Da das reduzierte Drehmoment Tr von der an dem Motor 31 anlegbaren Spannung abhängt, d. h. von der Versorgungsspannung, kann die Beschleunigungs-/Verzögerungs-Verarbeitungseinheit 122 das reduzierte Drehmoment Tr in dem Motorkennmodell 124 als Daten aktualisieren, die der Motorgeschwindigkeit und der Versorgungsspannung der Zustandsgröße zugeordnet sind.
  • Wenn das bezogene Steuerungssättigungssignal AN ist, aktualisiert die Vorkorrekturpositionsbefehlsberechnungseinheit 12 demnach das Maschinenmodell 123 basierend auf der Zustandsgröße, die den Betriebszustand der Steuerung 10, der Motorsteuerungsvorrichtung 20 und/oder des Motors 31 bei dem Steuerungssättigungssignal angibt, das AN ist. Die Vorkorrekturpositionsbefehlsberechnungseinheit 12 umfasst das Motorkennmodell 124 und das Lastmodell 125 als das Maschinenmodell 123. Wenn der Motorstrom I größer oder gleich dem Motorstromschwellwert Ith ist, der ein gegebener Wert ist, während das bezogene Steuerungssättigungssignal AN ist, aktualisiert die Vorkorrekturpositionsbefehlsberechnungseinheit 12 das Lastmodell 125 basierend auf der Zustandsgröße bei dem Steuerungssättigungssignal, das AN ist. Wenn der Motorstrom I kleiner als der Motorstromschwellwert Ith ist, der ein gegebener Wert ist, während das bezogene Steuerungssättigungssignal AN ist, aktualisiert die Vorkorrekturpositionsbefehlsberechnungseinheit 12 das Motorkennmodell 124 basierend auf der Zustandsgröße bei dem Steuerungssättigungssignal, das AN ist. D. h., dass die Positionsbefehlserzeugungseinheit 15 das Maschinenmodell 123 umfasst, das die als Ausgabe des Motors 31 verfügbar Beschleunigung berechnet, und dazu betrieben wird, den Positionsbefehl basierend auf den Analysedaten und dem Maschinenmodell 123 zu berechnen und das Maschinenmodell 123 zu aktualisieren, wenn die Steuerungseingabe an den Motor 31 eine Sättigung über eine voreingestellte Steuerungseingabebegrenzung erreicht hat. Zusätzlich bestimmt die Positionsbefehlserzeugungseinheit 15, ob die Steuerungseingabe an den Motor 31 die Sättigung erreicht hat (Schritt S4) und wird in Antwort auf ein Bestimmen, dass die Steuerungseingabe die Sättigung erreicht hat, dazu betrieben, das Maschinenmodell 123 basierend auf der Zustandsgröße zu aktualisieren, die den Betriebszustand der Steuerung 10, der Motorsteuerungsvorrichtung 20 und/oder des Motors 31 bei der Sättigung angibt.
  • Es sei angemerkt, dass die Beschleunigungs-/Verzögerungs-Verarbeitungseinheit 122 das Maschinenmodell 123 auch aktualisieren kann, wenn das Steuerungssättigungssignal AUS ist. Beispielsweise kann die Beschleunigungs-/Verzögerungs-Verarbeitungseinheit 122 bestimmen, dass es einen Fehler in dem Lastmodell 125 gibt, wenn die Drehmomentabweichung, die durch Vergleichen des Motordrehmoments Tm als ein aus dem Maschinenmodell 123 berechnetes Modell, das der Bewegungsgeschwindigkeit zugeordnet ist, mit dem aus dem Motorstrom I berechneten Motordrehmoment Tm erhalten wird, größer oder gleich einem gegebenen Wert ist. Wie in dem Fall der Drehmomentsättigung wird in diesem Fall berücksichtigt, dass eine Differenz bei der Lastträgheit J, dem Reibungsdrehmoment T1, oder dem Drehmoment T2 durch asymmetrische Last aufgetreten ist. Dementsprechend kann die Beschleunigungs-/Verzögerungs-Verarbeitungseinheit 122 die Lastträgheit J, das Reibungsdrehmoment T1, oder das Drehmoment T2 durch asymmetrische Last des Lastmodells 125 basierend auf der Zustandsgröße aktualisieren. Die Beschleunigungs-/Verzögerungs-Verarbeitungseinheit 122 kann hier die zu aktualisierenden Informationen des Lastmodells 125 in Übereinstimmung mit den Werkstückinformationen bestimmen. Zusätzlich kann die Beschleunigungs-/Verzögerungs-Verarbeitungseinheit 122 die Aktualisierung basierend auf dem Schätzwert der Lastträgheit als die Zustandsgröße durchführen. Dementsprechend aktualisiert die Vorkorrekturpositionsbefehlsberechnungseinheit 12 das Maschinenmodell 123 basierend auf der Zustandsgröße, wenn das bezogene Steuerungssättigungssignal AUS ist und die Drehmomentabweichung, die die Abweichung zwischen dem von dem Maschinenmodell 123 berechneten Motordrehmoment Tm und dem aus dem Motorstrom I berechneten Motordrehmoment Tm ist, größer oder gleich einem gegebenen Wert ist. Insbesondere umfasst die Vorkorrekturpositionsbefehlsberechnungseinheit 12 das Motorkennmodell 124 und das Lastmodell 125 als das Maschinenmodell 123 und aktualisiert das Lastmodell 125 als das Maschinenmodell 123.
  • Wie oben beschrieben kann die Steuerung 10 das Maschinenmodell 123 immer in einem optimalen Zustand halten, in Übereinstimmung mit dem tatsächlichen Zustand des mechanischen Systems 30, indem sie das Maschinenmodell 123 basierend auf der Zustandsgröße bei der Sättigung der Steuerungseingabe aktualisiert. Die Steuerung 10 kann hier das aktualisierte Maschinenmodell 123 nicht nur zur Erzeugung des Positionsbefehls verwenden, sondern auch für Anwendungen, die das Maschinenmodell 123 verwenden, wie beispielsweise eine Vorhersage der Betriebszeit, eine Pfadvorhersage und eine Bearbeitungsvorhersage basierend auf dem Programm.
  • Der obige Betrieb wird mit Bezug auf ein Flussdiagramm beschrieben. 10 ist ein Flussdiagramm, das den Betrieb des Aktualisierens des Maschinenmodells 123 basierend auf der Sättigungssituation bei der Steuerung 10 gemäß der ersten Ausführungsform zeigt. Bei der Steuerung 10 bezieht die Beschleunigungs-/Verzögerungs-Verarbeitungseinheit 122 der Vorkorrekturpositionsbefehlsberechnungseinheit 12 das Steuerungssättigungssignal und die Zustandsgröße (Schritt S11). Die Beschleunigungs-/Verzögerungs-Verarbeitungseinheit 122 bestimmt, ob das Steuerungssättigungssignal AN ist (Schritt S12). In Antwort auf ein Bestimmen, dass das Steuerungssättigungssignal AN ist (Schritt S12: Ja), aktualisiert die Beschleunigungs-/Verzögerungs-Verarbeitungseinheit 122 das Maschinenmodell 123 (Schritt S13). In Antwort auf ein Bestimmen, dass das Steuerungssättigungssignal AUS ist (Schritt S12: Nein), bestimmt die Beschleunigungs-/Verzögerungs-Verarbeitungseinheit 122, ob die Drehmomentabweichung größer oder gleich einem gegebenen Wert ist (Schritt S14). In Antwort auf ein Bestimmen, dass die Drehmomentabweichung größer oder gleich dem gegebenen Wert ist (Schritt S14: Ja), aktualisiert die Beschleunigungs-/Verzögerungs-Verarbeitungseinheit 122 das Maschinenmodell 123 (Schritt S13). In Antwort auf ein Bestimmen, dass die Drehmomentabweichung geringer ist als der gegebene Wert (Schritt S14: Nein), beendet die Beschleunigungs-/Verzögerungs-Verarbeitungseinheit 122 den Betrieb.
  • Als Nächstes wird eine Hardwarekonfiguration beschrieben, die die Steuerung 10 bei der ersten Ausführungsform umsetzt. 11 ist ein Diagramm, das eine beispielhafte Konfiguration einer Hardware zeigt, die die Steuerung 10 gemäß der ersten Ausführungsform umsetzt. 11 zeigt eine beispielhafte Konfiguration in dem Fall, dass die Programmanalyseeinheit 11, die Vorkorrekturpositionsbefehlsberechnungseinheit 12, die Beschleunigungskorrekturberechnungseinheit 13 und die Positionsbefehlsberechnungseinheit 14 der Steuerung 10 durch eine Verarbeitungsschaltung 61 umgesetzt sind, die einen Prozessor 63 und einen Speicher 64 umfasst.
  • Der Prozessor 63 ist eine zentrale Verarbeitungseinheit (CPU). Der Prozessor 63 kann eine Berechnungsvorrichtung, ein Mikroprozessor, ein Mikrocomputer oder ein digitaler Signalprozessor (DSP) sein. Der Speicher 64 ist beispielsweise ein flüchtiger oder nichtflüchtiger Halbleiterspeicher, wie beispielsweise ein Direktzugriffsspeicher (RAM), ein Festwertspeicher (ROM), ein Flash-Speicher, ein löschbarer programmierbarer Festwertspeicher (EPROM), oder ein elektrisch löschbarer programmierbarer Festwertspeicher (EEPROM, eingetragene Marke).
  • Der Speicher 64 speichert ein Programm zum Betreiben als die Programmanalyseeinheit 11, die Vorkorrekturpositionsbefehlsberechnungseinheit 12, die Beschleunigungskorrekturberechnungseinheit 13 und die Positionsbefehlsberechnungseinheit 14. Dieses Programm kann von dem Prozessor 63 gelesen und ausgeführt werden, um die Programmanalyseeinheit 11 die Vorkorrekturpositionsbefehlsberechnungseinheit 12, die Beschleunigungskorrekturberechnungseinheit 13 und die Positionsbefehlsberechnungseinheit 14 umzusetzen. Es sei angemerkt, dass das in dem Speicher 64 gespeicherte Programm zum Betreiben als die Programmanalyseeinheit 11, die Vorkorrekturpositionsbefehlsberechnungseinheit 12, die Beschleunigungskorrekturberechnungseinheit 13 und die Positionsbefehlsberechnungseinheit 14 in ein Speichermedium geschrieben sein kann, wie beispielsweise eine CD-ROM (Compact Disc Read Only Memory), oder eine DVD-ROM (Digital Versatile Disc Read Only Memory), und an den Nutzer oder dergleichen vertrieben werden kann oder über ein Netzwerk bereitgestellt sein kann. Zusätzlich gibt der Prozessor 63 Daten als Berechnungsergebnisse an den flüchtigen Speicher des Speichers 64 aus. Alternativ speichert der Prozessor 63 Daten wie beispielsweise Berechnungsergebnisse, indem dieser die Daten über den flüchtigen Speicher des Speichers 64 an eine Hilfsspeichervorrichtung ausgibt.
  • Eine Eingabeeinheit 62 ist eine Schaltung, die ein Eingabesignal von außen an die Steuerung 10 eingibt. Die Eingabeeinheit 62 empfängt beispielsweise das Betriebsprogramm, die Motorposition, die Zustandsgröße und dergleichen. Eine Ausgabeeinheit 65 ist eine Schaltung, die ein von der Steuerung 10 erzeugtes Signal nach außen ausgibt. Die Ausgabeeinheit 65 gibt beispielsweise den Nachkorrekturpositionsbefehl aus.
  • 11 ist ein Beispiel einer Hardware in dem Fall, in dem die Programmanalyseeinheit 11, die Vorkorrekturpositionsbefehlsberechnungseinheit 12, die Beschleunigungskorrekturberechnungseinheit 13 und die Positionsbefehlsberechnungseinheit 14 durch den Prozessor 63 und den Speicher 64 für allgemeine Zwecke umgesetzt sind. Die Programmanalyseeinheit 11, die Vorkorrekturpositionsbefehlsberechnungseinheit 12, die Beschleunigungskorrekturberechnungseinheit 13 und die Positionsbefehlsberechnungseinheit 14 können durch eine dedizierte Verarbeitungsschaltung anstelle des Prozessors 63 und des Speichers 64 umgesetzt sein. Das heißt, dass die Programmanalyseeinheit 11, die Vorkorrekturpositionsbefehlsberechnungseinheit 12, die Beschleunigungskorrekturberechnungseinheit 13 und die Positionsbefehlsberechnungseinheit 14 durch eine dedizierte Verarbeitungsschaltung umgesetzt sein können. Die dedizierte Verarbeitungsschaltung ist hier eine einzelne Schaltung, eine zusammengesetzte Schaltung, eine anwendungsspezifische integrierte Schaltung (ASIC), eine feldprogrammierbare Gatteranordnung (FPGA), oder eine Schaltung, die eine Kombination dieser ist. Es sei angemerkt, dass einige der Programmanalyseeinheit 11, der Vorkorrekturpositionsbefehlsberechnungseinheit 12, der Beschleunigungskorrekturberechnungseinheit 13 und der Positionsbefehlsberechnungseinheit 14 durch den Prozessor 63 und den Speicher 64 umgesetzt sein können und der Rest durch dedizierte Verarbeitungsschaltungen umgesetzt sein kann.
  • Gemäß der ersten Ausführungsform kann die Steuerung 10, wie oben beschrieben, eine Verschlechterung der Steuerungsleistung verringern, während der Pfad des durch den Motor 31 anzutreibenden Objekts beibehalten wird, und kann das Maschinenmodell 123 in Übereinstimmung mit dem tatsächlichen Zustand des mechanischen Systems 30 optimal aktualisieren. Zusätzlich bestimmt die Steuerung 10 den Positionsbefehl basierend auf dem Maschinenmodell 123, sodass der Motor 31 mit der optimalen Beschleunigung oder Zeitkonstanten betrieben werden kann, und der Beschleunigungs-/Verzögerungs-Betrieb immer mit einem als Ausgabe von dem Motor 31 verfügbaren maximalen Drehmoment durchgeführt werden kann, ohne eine zusätzliche Drehmomenttoleranz aufzuweisen, was eine verringerte Zykluszeit ermöglicht. Wenn die Steuerung 10 zusätzlich im Voraus eine Betriebsvorhersage basierend auf dem Betriebsprogramm durchführt, ist es möglich, ein gutes Ergebnis mit geringerem Fehler zu erhalten, indem das aktualisierte Maschinenmodell 123 verwendet wird.
  • Zweite Ausführungsform.
  • Bei der ersten Ausführungsform ist die Anzahl der Motorsteuerungsvorrichtungen 20, die mit der Steuerung 10 verbunden sind, eins. Hier können einige Steuerungen, die übergeordnete Steuerungsvorrichtungen sind, eine Vielzahl von Motoren gleichzeitig steuern. Im Falle einer gleichzeitigen Interpolationssteuerung einer Vielzahl von Motoren durch die Steuerung, kann die Interpolation zwischen den Motoren jedoch nicht gewährleistet werden, wenn die Korrektur individuell durchgeführt wird. Die zweite Ausführungsform beschreibt einen Fall, bei dem die Steuerung mit einer Vielzahl von Motorsteuerungsvorrichtungen verbunden ist und die Steuerung einer Vielzahl von Motoren gleichzeitig steuert.
  • 12 ist ein Diagramm, das eine beispielhafte Konfiguration eines Steuerungssystems 40a gemäß der zweiten Ausführungsform zeigt. Das Steuerungssystem 40a umfasst eine Steuerung 10a und Motorsteuerungsvorrichtungen 20a und 20b. Die Steuerung 10a ist eine übergeordnete Steuerungsvorrichtung, die mit den Motorsteuerungsvorrichtungen 20a und 20b verbunden ist. Die Motorsteuerungsvorrichtung 20a ist mit einem mechanischen System 30a verbunden und die Motorsteuerungsvorrichtung 20b ist mit einem mechanischen System 30b verbunden. Wie in 12 gezeigt umfasst die Motorsteuerungsvorrichtung 20a eine Positionsabweichungsberechnungseinheit 21a, eine Positionssteuerungseinheit 22a, eine Geschwindigkeitsberechnungseinheit 23a, eine Geschwindigkeitsabweichungsberechnungseinheit 24a, eine Geschwindigkeitssteuerungseinheit 25a, eine Strombegrenzungseinheit 26a und eine Stromsteuerungseinheit 27a. Zusätzlich umfasst die Motorsteuerungsvorrichtung 20b eine Positionsabweichungsberechnungseinheit 21b, eine Positionssteuerungseinheit 22b, eine Geschwindigkeitsberechnungseinheit 23b, eine Geschwindigkeitsabweichungsberechnungseinheit 24b, eine Geschwindigkeitssteuerungseinheit 25b, eine Strombegrenzungseinheit 26b und eine Stromsteuerungseinheit 27b. Das mechanische System 30a umfasst einen Motor 31a, eine Last 32a und einen Messgeber 33a. Das mechanische System 30b umfasst einen Motor 31b, eine Last 32b und einen Messgeber 33b. Da die Motorsteuerungsvorrichtungen 20a und 20b dieselben Konfigurationen wie die Motorsteuerungsvorrichtung 20 bei der ersten Ausführungsform aufweisen, wird eine detaillierte Beschreibung dieser ausgelassen. Da die mechanischen Systeme 30a und 30b dieselbe Konfiguration wie das mechanische System 30 bei der ersten Ausführungsform aufweisen, wird eine detaillierte Beschreibung dieser ausgelassen.
  • Im Folgenden werden die Konfiguration und der Betrieb der Steuerung 10a im Detail beschrieben. Wie in 12 gezeigt, umfasst die Steuerung 10a die Programmanalyseeinheit 11, eine Vorkorrekturpositionsbefehlsberechnungseinheit 12a, eine Beschleunigungskorrekturberechnungseinheit 13a und Positionsbefehlsberechnungseinheiten 14a und 14b. Es sei angemerkt, dass die Vorkorrekturpositionsbefehlsberechnungseinheit 12a, die Beschleunigungskorrekturberechnungseinheit 13a und die Positionsbefehlsberechnungseinheiten 14a und 14b eine Positionsbefehlserzeugungseinheit 15a bilden.
  • Die Programmanalyseeinheit 11 wird in ähnlicher Weise betrieben, wie die in 1 gezeigte Programmanalyseeinheit 11 bei der ersten Ausführungsform.
  • Die Vorkorrekturpositionsbefehlsberechnungseinheit 12a erzeugt Interpolationsdaten basierend auf den von der Programmanalyseeinheit 11 bezogenen Analysedaten und berechnet Vorkorrekturpositionsbefehle a und b zum Beschleunigungs-/Verzögerungs-Antrieb der Motoren 31a und 31b basierend auf den Interpolationsdaten. Die Vorkorrekturpositionsbefehlsberechnungseinheit 12a berechnet die Vorkorrekturpositionsbefehle a und b für die zwei Motoren 31a und 31b, aber die individuellen Betriebe zum Berechnen des Vorkorrekturpositionsbefehls a und des Vorkorrekturpositionsbefehls b sind zu dem Betrieb der in den 1 und 2 gezeigten Vorkorrekturpositionsbefehlsberechnungseinheit 12 bei der ersten Ausführungsform ähnlich. Dementsprechend wird eine detaillierte Beschreibung des Betriebs der Vorkorrekturpositionsbefehlsberechnungseinheit 12a ausgelassen.
  • Die Beschleunigungskorrekturberechnungseinheit 13a berechnet einen Positionsbefehlskorrekturwert a zum Korrigieren des Vorkorrekturpositionsbefehls a und berechnet einen Positionsbefehlskorrekturwert b zum Korrigieren des Vorkorrekturpositionsbefehls b unter Verwendung der von der Vorkorrekturpositionsbefehlsberechnungseinheit 12a bezogenen Vorkorrekturpositionsbefehle a und b, einer von dem Messgeber 33a bezogenen Motorposition a und einer von dem Messgeber 33b bezogenen Motorposition b. 13 ist ein Diagramm, das eine beispielhafte Konfiguration der Beschleunigungskorrekturberechnungseinheit 13a zeigt, die in der Steuerung 10a gemäß der zweiten Ausführungsform umfasst ist. Die Beschleunigungskorrekturberechnungseinheit 13a umfasst Modellausgabeeinheiten 131a und 131b, Modellpositionsabweichungsberechnungseinheiten 133a und 133b, Vergleichseinheiten 134a und 134b und eine Positionsbefehlskorrekturwertberechnungseinheit 135a. Die Modellausgabeeinheit 131a hält ein Motorsteuerungsmodell 132a. Die Modellausgabeeinheit 131b hält ein Motorsteuerungsmodell 132b. Da die Betriebe der Modellausgabeeinheiten 131a und 131b, der Modellpositionsabweichungsberechnungseinheiten 133a und 133b und der Vergleichseinheiten 134a und 134b zu den Betrieben der Modellausgabeeinheit 131, der Modellpositionsabweichungsberechnungseinheit 133 und der Vergleichseinheit 134 bei der ersten Ausführungsform, die in 6 gezeigt sind, ähnlich sind, wird eine detaillierte Beschreibung dieser ausgelassen.
  • Die Positionsbefehlskorrekturwertberechnungseinheit 135a berechnet die Positionsbefehlskorrekturwerte a und b für die Vorkorrekturpositionsbefehle a und b. Dabei berechnet die Positionsbefehlskorrekturwertberechnungseinheit 135a die Positionsbefehlskorrekturwerte a und b, indem sie das ODER, d. h. die logische Summe, der Steuerungssättigungssignale a und b nimmt, die von den Vergleichseinheiten 134a und 134b ausgegeben werden. Bei einer Sättigung der Steuerungseingabe bei wenigstens einem der Vielzahl von Motoren 31a und 31b berechnet die Positionsbefehlskorrekturwertberechnungseinheit 135a die Positionsbefehlskorrekturwerte a und b zum Korrigieren der Vorkorrekturpositionsbefehle a und b für alle Motoren 31a und 31b und gibt diese aus, um die Größe der Änderung der Nachkorrekturpositionsbefehle a und b in einem Steuerungszyklus zu verringern.
  • Es sei angemerkt, dass, obwohl die vorliegende Ausführungsform mit dem Fall beschrieben wurde, in dem zwei Motorsteuerungsvorrichtungen mit der Steuerung verbunden sind, drei oder mehr Motorsteuerungsvorrichtungen mit der Steuerung verbunden sein können und einer ähnlichen Steuerung unterliegen können. Insbesondere kann die der Positionsbefehlskorrekturwertberechnungseinheit 135a entsprechende Komponente die logische Summe von drei oder mehr Steuerungssättigungssignalen nehmen, um eine Steuerung ähnlich zu der bei der vorliegenden Ausführungsform umzusetzen.
  • Bei dem Steuerungssystem 40a ist die Steuerung 10a demnach mit einer Vielzahl von Motorsteuerungsvorrichtungen 20a und 20b verbunden, die verschiedenen der Vielzahl von Motoren 31a und 31b einen Strom zuführen, um einen Betrieb zu steuern, und die Interpolationssteuerung wird bei der Vielzahl von Motoren 31a und 31b durchgeführt. Wenn das Steuerungssättigungssignal für jedweden der Motoren 31a und 31b als AN ausgegeben wird, gibt die Beschleunigungskorrekturberechnungseinheit 13a den Positionsbefehlskorrekturwert für die Vielzahl von Motoren 31a und 31b bei dem Interpolationsbetrieb aus, um die Nachkorrekturbefehlsbeschleunigung zu verringern, die die Beschleunigung nach der Korrektur ist, während der Interpolationsbetrieb zwischen den Motoren 31a und 31b beibehalten wird. Wenn das Steuerungssättigungssignal danach für die Vielzahl von Motoren 31a und 31b bei dem Interpolationsbetrieb als AUS ausgegeben wird, ändert die Beschleunigungskorrekturberechnungseinheit 13a den Positionsbefehlskorrekturwert für die Vielzahl der Motoren 31a und 31b bei dem Interpolationsbetrieb so, dass dieser ausgehend von der Nachkorrekturbefehlsbeschleunigung bei Ausgabe des Steuerungssättigungssignals als AN erhöht ist, während der Interpolationsbetrieb zwischen den Motoren 31a und 31b beibehalten wird.
  • Die Hardwarekonfiguration der Steuerung 10a bei der zweiten Ausführungsform ist ähnlich zur Hardwarekonfiguration der in 11 gezeigten Steuerung 10 bei der ersten Ausführungsform.
  • Bei der vorliegenden Ausführungsform, bei der die Steuerung 10a mit einer Vielzahl von Motorsteuerungsvorrichtungen 20a und 20b verbunden ist, um einen Interpolationsbetrieb der Vielzahl von Motoren 31a und 31b umzusetzen, ist es, wie oben beschrieben, möglich, eine Verschlechterung der Steuerungsleistung aufgrund der Sättigung der Steuerungseingabe zu verringern, während der Pfad des durch die Motoren 31a und 31b anzutreibenden Objekts beibehalten wird und dieselbe Wirkung wie bei der ersten Ausführungsform zu erzielen.
  • Dritte Ausführungsform.
  • Die dritte Ausführungsform beschreibt einen Fall, in dem die Motorsteuerungsvorrichtung ein Strombegrenzungssignal ausgibt, das angibt, dass der Strom während der Zeitspanne der Strombegrenzung bei dem Strombefehl begrenzt ist.
  • 14 ist ein Diagramm, das eine beispielhafte Konfiguration eines Steuerungssystems 40c gemäß der dritten Ausführungsform zeigt. Das Steuerungssystem 40c umfasst eine Steuerung 10c und eine Motorsteuerungsvorrichtungen 20c. Die Steuerung 10c ist eine übergeordnete Steuerungsvorrichtung, die mit der Motorsteuerungsvorrichtung 20c verbunden ist. Die Motorsteuerungsvorrichtung 20c ist mit dem mechanischen System 30 verbunden. Wie in 14 gezeigt, umfasst die Motorsteuerungsvorrichtung 20c die Positionsabweichungsberechnungseinheit 21, die Positionssteuerungseinheit 22, die Geschwindigkeitsberechnungseinheit 23, die Geschwindigkeitsabweichungsberechnungseinheit 24, die Geschwindigkeitssteuerungseinheit 25, eine Strombegrenzungseinheit 26c und die Stromsteuerungseinheit 27.
  • Die Strombegrenzungseinheit 26c weist eine Funktion auf, die der der in der 1 gezeigten Strombegrenzungseinheit 26 bei der ersten Ausführungsform ähnlich ist, und auch eine Funktion des Ausgebens eines Strombegrenzungssignals an die Steuerung 10c aufweist, das angibt, dass der Strom begrenzt wurde, nachdem die Strombegrenzungseinheit 26c den Strom begrenzt. Der Zustand, in dem der Strom begrenzt ist, kann als eine Steuerungssättigung angesehen werden. Beispielsweise gibt die Strombegrenzungseinheit 26c nach dem Begrenzen des Stroms das Strombegrenzungssignal als AN aus, und gibt das Strombegrenzungssignal als AUS, es sei denn, die Strombegrenzungseinheit 26c begrenzt den Strom.
  • Wie in 14 gezeigt, umfasst die Steuerung 10c die Programmanalyseeinheit 11, eine Vorkorrekturpositionsbefehlsberechnungseinheit 12c, eine Beschleunigungskorrekturberechnungseinheit 13c und die Positionsbefehlsberechnungseinheit 14. Es sei angemerkt, dass die Vorkorrekturpositionsbefehlsberechnungseinheit 12c, die Beschleunigungskorrekturberechnungseinheit 13c und die Positionsbefehlsberechnungseinheit 14 eine Positionsbefehlserzeugungseinheit 15c bilden. 15 ist ein Diagramm, das eine beispielhafte Konfiguration der Beschleunigungskorrekturberechnungseinheit 13c zeigt, die in der Steuerung 10c gemäß der dritten Ausführungsform umfasst ist. Die Beschleunigungskorrekturberechnungseinheit 13c umfasst die Modellausgabeeinheit 131, die Modellpositionsabweichungsberechnungseinheit 133, die Vergleichseinheit 134, eine Positionsbefehlskorrekturwertberechnungseinheit 135c und eine Logiksummenberechnungseinheit 136.
  • Die Logiksummenberechnungseinheit 136 berechnet die logische Summe des von der Vergleichseinheit 134 bezogenen Steuerungssättigungssignals und des von der Strombegrenzungseinheit 26c der Motorsteuerungsvorrichtung 20c bezogenen Strombegrenzungssignals. Die Logiksummenberechnungseinheit 136 gibt das Steuerungssättigungssignal c aus, das AN ist, wenn das Steuerungssättigungssignal und/oder das Strombegrenzungssignal AN ist, und gibt das Steuerungssättigungssignal c als AUS aus, wenn das Steuerungssättigungssignal und das Strombegrenzungssignal AUS sind.
  • Die Positionsbefehlskorrekturwertberechnungseinheit 135c unterscheidet sich von der Positionsbefehlskorrekturwertberechnungseinheit 135 bei der ersten Ausführungsform in dem zu beziehenden Signal, aber wird ähnlich zur Positionsbefehlskorrekturwertberechnungseinheit 135 bei der ersten Ausführungsform betrieben, wenn das Steuerungssättigungssignal c AN oder AUS ist.
  • Die Beschleunigungskorrekturberechnungseinheit 13c bezieht demnach das Strombegrenzungssignal, das angibt, ob der Strombefehl, der eine Steuerungseingabe von der Motorsteuerungsvorrichtung 20c an den Motor 31 ist, größer oder gleich einem gegebenen Wert ist, und gibt das Steuerungssättigungssignal c als AN aus, wenn das Strombegrenzungssignal bezogen wird, das angibt, dass der Strombefehl größer oder gleich dem gegebenen Wert ist. Die Beschleunigungskorrekturberechnungseinheit 13c gibt das Steuerungssättigungssignal c als AUS aus, wenn das Strombegrenzungssignal bezogen wird, das angibt, dass der Strombefehl kleiner als der gegebene Wert ist, während die Modellpositionsabweichung geringer ist als ein gegebener Schwellwert.
  • Die Vorkorrekturpositionsbefehlsberechnungseinheit 12c unterscheidet sich von der Vorkorrekturpositionsbefehlsberechnungseinheit 12 bei der ersten Ausführungsform in dem zu beziehenden Signal, aber wird ähnlich zur Vorkorrekturpositionsbefehlsberechnungseinheit 12 bei der ersten Ausführungsform betrieben, wenn das Steuerungssättigungssignal c AN oder AUS ist.
  • Die Hardwarekonfiguration der Steuerung 10c bei der dritten Ausführungsform ist ähnlich zur Hardwarekonfiguration der in 11 gezeigten Steuerung 10 bei der ersten Ausführungsform.
  • Gemäß der vorliegenden Ausführungsform verwendet die Steuerung 10c, wie oben beschrieben, das Strombegrenzungssignal, um die Steuerungssättigung zu bestimmen. Unter der Drehmomentsättigungsbedingung kann die Steuerung 10c die Sättigung der Steuerungseingabe aufgrund des Anstiegs der Modellpositionsabweichung früher erfassen als das Steuerungssättigungssignal auf AN geschaltet wird.
  • Vierte Ausführungsform.
  • Die vierte Ausführungsform beschreibt eine Lernvorrichtung und eine Inferenzvorrichtung, die ein maschinelles Lernen des Maschinenmodells 123 durchführen. Das Maschinenmodell 123 umfasst hier das Motorkennmodell 124 und das Lastmodell 125, und wird hauptsächlich von der in der 2 gezeigten Beschleunigungs-/Verzögerungs-Verarbeitungseinheit 122 verwendet, um den Vorkorrekturpositionsbefehl für den Beschleunigungs-/Verzögerungs-Antrieb in dem Drehmomentbereich, der als Ausgabe von dem Motor 31 verfügbar ist, basierend auf den Interpolationsdaten zu berechnen. Das Motorkennmodell 124 umfasst hauptsächlich die Drehmoment-Geschwindigkeits-Kenndaten und wird dazu verwendet, ein verfügbares Ausgabedrehmoment in Übereinstimmung mit der Versorgungsspannung, der Betriebsgeschwindigkeit und dergleichen zu berechnen. Das Lastmodell 125 wird hauptsächlich dazu verwendet, um die Lastträgheit J für den Motor 31 aus Informationen wie beispielsweise die Werkstückinformationen, das Reibungsdrehmoment T1 und das Drehmoment T2 durch asymmetrische Last zu berechnen.
  • Lernphase
  • 16 ist ein Diagramm, das eine beispielhafte Konfiguration einer Lernvorrichtung 70 zeigt, die bei der Steuerung 10 gemäß der vierten Ausführungsform angewendet wird. Die Lernvorrichtung 70 umfasst eine Datenbezugseinheit 71, eine Modellerzeugungseinheit 72 und eine Speichereinheit 73 für gelernte Modelle. Das Modell ist hier hauptsächlich das Maschinenmodell 123, das in der in der 2 gezeigten Beschleunigungs-/Verzögerungs-Verarbeitungseinheit 122 zur Verwendung bei der Berechnung des Vorkorrekturpositionsbefehls für den Beschleunigungs-/Verzögerungs-Antrieb in dem Drehmomentbereich umfasst ist, der als eine Ausgabe von dem Motor 31 verfügbar ist. Obwohl die Speichereinheit 73 für gelernte Modelle in der 16 außerhalb der Lernvorrichtung 70 gezeigt ist, kann die Speichereinheit 73 für gelernte Modelle innerhalb der Lernvorrichtung 70 umfasst sein.
  • Die Datenbezugseinheit 71 bezieht bezogene Informationen und Maschinenzustände als Lerndaten von der Steuerung 10. Die bezogenen Informationen umfassen das Steuerungssättigungssignal der Steuerungseingabe, die Zustandsgröße, die den Betriebszustand der Steuerung 10, der Motorsteuerungsvorrichtung 20 und/oder des Motors 31 angibt, Programminformationen und Werkstückinformationen. Der Maschinenzustand umfasst die Motorkenndaten, die Lastträgheit J, das Reibungsdrehmoment T1 und das Drehmoment T2 durch asymmetrische Last.
  • Die Modellerzeugungseinheit 72 lernt die bezogenen Daten unter Verwendung der von der Datenbezugseinheit 71 ausgegebenen Lerndaten, die basierend auf der Kombination der bezogenen Daten und der Trainingsdaten, nämlich der Maschinenzustände, erzeugt werden. Das heißt, dass die Modellerzeugungseinheit 72 ein gelerntes Modell zum Inferieren des optimalen Lastmodells 125, das in dem Maschinenmodell 123 umfasst ist, aus den bezogenen Informationen der Steuerung 10 und der Maschinenzustände erzeugt. Hier sind die Lerndaten Daten, bei denen die bezogenen Informationen und die Maschinenzustände einander zugeordnet sind.
  • Die Modellerzeugungseinheit 72 kann bekannte Algorithmen, wie beispielsweise überwachtes Lernen, unüberwachtes Lernen und bestärkendes Lernen, als den Lernalgorithmus verwenden. Es wird ein beispielhafter Fall beschrieben, in dem ein neuronales Netzwerk angewendet wird. Die Modellerzeugungseinheit 72 lernt das Maschinenmodell 123 durch sogenanntes überwachtes Lernen, beispielsweise in Übereinstimmung mit einem neuronalen Netzwerkmodell. Das überwachte Lernen bezieht sich hier auf ein Verfahren, bei dem eine große Anzahl von Eingabeergebnisdatenpaaren (Kennungsdatenpaaren) der Lernvorrichtung 70 bereitgestellt wird, um Merkmale in diesen Lerndaten zu lernen und Ergebnisse aus Eingaben zu inferieren.
  • Ein neuronales Netzwerk umfasst eine Eingabeschicht, die aus einer Vielzahl von Neuronen besteht, eine Zwischenschicht (verborgene Schicht), die aus einer Vielzahl von Neuronen besteht, und eine Ausgabeschicht, die aus einer Vielzahl von Neuronen besteht. Die Anzahl der Zwischenschichten kann eins oder zwei oder mehr betragen.
  • Es sei angenommen, das, wie in 17 gezeigt, beispielsweise ein dreischichtiges neuronales Netzwerk verwendet wird. 17 ist ein Diagramm, das ein Beispiel für ein neuronales Netzwerk schematisch zeigt, das in der Modellerzeugungseinheit 72 der Lernvorrichtung 70 gemäß der vierten Ausführungsform verwendet wird.
  • In dem Fall des dreischichtigen neuronalen Netzwerks, das in 17 gezeigt ist, wird eine Vielzahl von Eingaben in die Eingabeschichten (X1 bis X3) eingegeben, dann werden die Werte dieser mit Gewichten W1 (w11 bis w16) multipliziert und in die Zwischenschichten (Y1 und Y2) eingegeben, und die Ergebnisse dieser werden ferner mit Gewichten W2 (w21 bis w26) multipliziert und von den Ausgabeschichten (Z1 bis Z3) ausgegeben. Die Ausgabeergebnisse variieren abhängig von den Werten der Gewichte W1 und W2.
  • Bei der vorliegenden Ausführungsform lernt das neuronale Netzwerk das Maschinenmodell 123 durch sogenanntes überwachtes Lernen in Übereinstimmung mit den Lerndaten, die basierend auf der Kombination der bezogenen Informationen und der Trainingsdaten erzeugt werden, die von der Datenbezugseinheit 71 bezogen werden.
  • Das heißt, dass das neuronale Netzwerk die Gewichte W1 und W2 durch Anpassen so lernt, dass sich das von der Ausgabeschicht in Antwort auf die Eingabe der bezogenen Informationen in die Eingabeschicht ausgegebene Ergebnis den Trainingsdaten annähert.
  • Die Modellerzeugungseinheit 72 führt das Lernen in der oben beschriebenen Weise aus, um das gelernte Modell zu erzeugen und auszugeben.
  • Die Speichereinheit 73 für gelernte Modelle speichert das von der Modellerzeugungseinheit 72 ausgegebene gelernte Modell.
  • Im Folgenden wird eine Lernverarbeitung durch die Lernvorrichtung 70 mit Bezug auf 18 beschrieben. 18 ist ein Flussdiagramm, das eine Lernverarbeitung bei der Lernvorrichtung 70 gemäß der vierten Ausführungsform zeigt.
  • Die Datenbezugseinheit 71 bezieht bezogene Informationen und Maschinenzustände als Daten (Schritt S101). Es sei angemerkt, dass die Datenbezugseinheit 71 nicht notwendigerweise die bezogenen Informationen und die Maschinenzustände gleichzeitig beziehen muss. Die Datenbezugseinheit 71 muss nur dazu im Stande sein, die bezogenen Informationen und die Maschinenzustände einander zugeordnet einzugeben, und kann demnach die bezogenen Informationen und die Maschinenzustände zu verschiedenen Zeitpunkten beziehen.
  • Die Modellerzeugungseinheit 72 führt die Lernverarbeitung durch (Schritt S102). Insbesondere lernt die Modellerzeugungseinheit 72 das Maschinenmodell 123, um das gelernte Modell durch sogenanntes überwachtes Lernen in Übereinstimmung mit den Lerndaten zu erzeugen, die basierend auf der Kombination der bezogenen Informationen und der Maschinenzustände erzeugt werden, die von der Datenbezugseinheit 71 bezogen werden.
  • Die Speichereinheit 73 für gelernte Modelle speichert das von der Modellerzeugungseinheit 72 gelernte Modell (Schritt S103).
  • Nutzungsphase
  • 19 ist ein Diagramm, das eine beispielhafte Konfiguration einer Inferenzvorrichtung 80 zeigt, die bei der Steuerung 10 gemäß der vierten Ausführungsform angewendet wird. Die Inferenzvorrichtung 80 umfasst eine Datenbezugseinheit 81 und eine Inferenzeinheit 82. Die Interferenzeinheit 82 entspricht hier der in der 2 gezeigten Beschleunigungs-/Verzögerungs-Verarbeitungseinheit 122 und gibt den Vorkorrekturpositionsbefehl basierend auf dem gelernten Maschinenmodell 123 aus.
  • Die Datenbezugseinheit 81 bezieht bezogene Informationen. Die bezogenen Informationen umfassen das Steuerungssättigungssignal der Steuerungseingabe, die Zustandsgröße, die den Betriebszustand der Steuerung 10, der Motorsteuerungsvorrichtung 20 und/oder des Motors 31 angibt, Programminformationen und Werkstückinformationen.
  • Die Inferenzeinheit 82 verwendet das in der Speichereinheit 73 für gelernte Modelle gespeicherte gelernte Modell, um das in dem Maschinenmodell 123 umfasste Lastmodell 125 aus den bezogenen Informationen zu inferieren, die von der Datenbezugseinheit 81 bezogen werden. Das heißt, dass die Inferenzeinheit 82 das Lastmodell 125, das in dem Maschinenmodell 123 umfasst ist, das aus den bezogenen Daten inferiert wird, durch Eingeben der bezogenen Informationen, die von der Datenbezugseinheit 81 bezogen werden, in das gelernte Modell inferieren und ausgeben kann.
  • Die vorliegende Ausführungsform wurde unter der Annahme beschrieben, dass das Maschinenmodell 123 unter Verwendung des gelernten Modells ausgegeben wird, das von der Modellerzeugungseinheit 72 der Lernvorrichtung 70 gelernt wird, die bei der Steuerung 10 angewendet wird. Das gelernte Modell kann jedoch von der Lernvorrichtung 70 bezogen werden, die bei einer anderen Steuerung 10 angewendet wird, und das Maschinenmodell 123 kann basierend auf dem gelernten Modell ausgegeben werden.
  • Im Folgenden wird eine Verarbeitung, bei der die Inferenzvorrichtung 80 das Maschinenmodell 123 inferiert, mit Bezug auf 20 beschrieben. 20 ist ein Flussdiagramm, das eine Inferenzverarbeitung bei der Inferenzvorrichtung 80 gemäß der vierten Ausführungsform zeigt.
  • Die Datenbezugseinheit 81 bezieht bezogene Informationen als Daten (Schritt 5111).
  • Die Inferenzeinheit 82 gibt die bezogenen Informationen in das in der Speichereinheit 73 für gelernte Modelle gespeicherte gelernte Modell ein (Schritt S112). Die Inferenzeinheit 82 erhält das Maschinenmodell 123, indem sie die bezogenen Informationen in das gelernte Modell eingibt.
  • Die Inferenzeinheit 82 gibt das mit dem Lernmodell erhaltene Maschinenmodell 123 als Daten an die Steuerung 10 aus (Schritt S113).
  • Die Steuerung 10 gibt den Vorkorrekturpositionsbefehl basierend auf dem bezogenen Maschinenmodell 123 aus (Schritt S 114).
  • Infolgedessen können die Lernvorrichtung 70 und die Inferenzvorrichtung 80 variierende Faktoren in den Programminformationen und dem Werkstückzustand als das Maschinenmodell 123 basierend auf den Informationen ausgeben, die von dem Steuerungssystem 40 bezogen werden können, und können leicht den Betrieb vorhersagen.
  • Es sei angemerkt, dass, obwohl die vorliegende Ausführungsform für den Fall beschrieben wurde, in dem ein überwachtes Lernen als Lernalgorithmus angewendet wurde, der von der Modellerzeugungseinheit 72 verwendet wird, ist die vorliegende Offenbarung nicht darauf beschränkt. Als der Lernalgorithmus können anstelle des überwachten Lernens ein bestärkendes Lernen, ein unüberwachtes Lernen, ein halbüberwachtes Lernen oder dergleichen verwendet werden.
  • Die Modellerzeugungseinheit 72 kann das Maschinenmodell 123 in Übereinstimmung mit den Lerndaten lernen, die für eine Vielzahl von Steuerungen 10 erzeugt werden. Es sei angemerkt, dass die Modellerzeugungseinheit 72 Lerndaten von einer Vielzahl von Steuerungen 10 beziehen kann, die in dem gleichen Bereich verwendet werden, oder das Maschinenmodell 123 unter Verwendung der Lerndaten lernen kann, die von einer Vielzahl von Steuerungen 10 gesammelt wurden, die unabhängig in verschiedenen Bereichen betrieben werden. Zusätzlich kann die Modellerzeugungseinheit 72 eine neue Steuerung 10 der Liste der Steuerungen hinzufügen, von denen Lerndaten gesammelt werden, oder kann einige Steuerungen 10 von der Liste entfernen. Des Weiteren kann die Lernvorrichtung 70, die das Maschinenmodell 123 für eine bestimmte Steuerung 10 gelernt hat, bei einer anderen Steuerung 10 angewendet werden, und das Maschinenmodell 123 kann für die andere Steuerung 10 erneut gelernt und aktualisiert werden.
  • Ein Lernalgorithmus zur Verwendung in der Modellerzeugungseinheit 72 kann ein tiefes Lernen sein, das direkt eine Merkmalsextraktion lernt. Alternativ können andere bekannte Verfahren, wie beispielsweise genetische Programmierung, funktionelle logische Programmierung und Support-Vektor-Maschinen, verwendet werden, um das maschinelle Lernen auszuführen.
  • Es sei angemerkt, dass die Lernvorrichtung 70 und die Inferenzvorrichtung 80, die für das Lernen des Maschinenmodells 123 der Steuerung 10 verwendet werden, Vorrichtungen sein können, die von der Steuerung 10 verschieden sind und beispielsweise über ein Netzwerk mit der Steuerung 10 verbunden sind. Alternativ können die Lernvorrichtung 70 und Inferenzvorrichtung 80 in der Steuerung 10 integriert sein. Des Weiteren können die Lernvorrichtung 70 und die Inferenzvorrichtung 80 auf einem Cloud-Server existieren. 21 ist ein Diagramm, das ein Beispiel eines Falles zeigt, bei dem die Lernvorrichtung 70 und die Inferenzvorrichtung 80 bei der vierten Ausführungsform außerhalb der Steuerung 10 installiert sind. 22 ist ein Diagramm, das ein Beispiel eines Falles zeigt, bei dem die Lernvorrichtung 70 und die Inferenzvorrichtung 80 bei der vierten Ausführungsform innerhalb der Steuerung 10 installiert sind. Bei dem in 21 gezeigten Beispiel kann ein Netzwerk zwischen der Steuerung 10 und der Lernvorrichtung 70 und der Inferenzvorrichtung 80 existieren. Zusätzlich können die Lernvorrichtung 70 und die Inferenzvorrichtung 80 bei dem Beispiel der 21 auf einem Cloud-Server existieren. Es sei angemerkt, dass die Beispiele der 21 und 22 voraussetzen, dass die Speichereinheit 73 für gelernte Modelle in der Lernvorrichtung 70 umfasst ist.
  • Die Steuerung 10 kann demnach das Maschinenmodell 123 mit dem Verfahren bei der ersten Ausführungsform aktualisieren, oder kann das Maschinenmodell 123 unter Verwendung der Lernvorrichtung 70 und der Inferenzvorrichtung 80 wie bei der vierten Ausführungsform aktualisieren. Es sei angemerkt, dass die Lernvorrichtung 70 und die Inferenzvorrichtung 80 nicht notwendigerweise bei der Steuerung 10 angewendet werden müssen, wie oben beschrieben. Die Lernvorrichtung 70 und die Inferenzvorrichtung 80 kann auch bei der Steuerung 10a oder 10c angewendet werden.
  • Die in den oben genannten Ausführungsformen beschriebenen Konfigurationen geben Beispiele an. Die Ausführungsformen können mit einer anderen bekannten Technik und miteinander kombiniert werden, und einige der Konfigurationen können in einem Bereich ausgelassen oder geändert werden, der nicht von dem Kern abweicht.
  • Bezugszeichenliste
  • 10, 10a, 10c
    Steuerung;
    11
    Programmanalyseeinheit;
    12, 12a, 12c
    Vorkorrekturpositionsbefehlsberechnungseinheit;
    13, 13a, 13c
    Beschleunigungskorrekturberechnungseinheit;
    14, 14a, 14b
    Positionsbefehlsberechnungseinheit;
    15, 15a, 15c
    Positionsbefehlserzeugungseinheit;
    20, 20a, 20b,
    20c Motorsteuerungsvorrichtung;
    21, 21a, 21b
    Positionsabweichungsberechnungseinheit;
    22, 22a, 22b
    Positionssteuerungseinheit;
    23, 23a, 23b
    Geschwindigkeitsberechnungseinheit;
    24, 24a, 24b
    Geschwindigkeitsabweichungsberechnungseinheit;
    25, 25a, 25b
    Geschwindigkeitssteuerungseinheit;
    26, 26a, 26b,
    26c Strombegrenzungseinheit;
    27, 27a, 27b
    Stromsteuerungseinheit;
    30, 30a, 30b
    mechanisches System;
    31, 31a, 31b
    Motor;
    32, 32a, 32b
    Last;
    33, 33a, 33b
    Messgeber;
    40, 40a, 40c
    Steuerungssystem;
    70
    Lernvorrichtung;
    71, 81
    Datenbezugseinheit;
    72
    Modellerzeugungseinheit;
    73
    Speichereinheit für gelernte Modelle;
    80
    Inferenzvorrichtung;
    82
    Inferenzeinheit;
    121
    Interpolationsdatenerzeugungseinheit;
    122
    Beschleunigungs-/Verzögerungs-Verarbeitungseinheit;
    123
    Maschinenmodell;
    124
    Motorkennmodell;
    125
    Lastmodell;
    131, 131a, 131b
    Modellausgabeeinheit;
    132, 132a, 132b
    Motorsteuerungsmodell;
    133, 133a, 133b
    Modellpositionsabweichungsberechnungseinheit;
    134, 134a, 134b
    Vergleichseinheit;
    135, 135a, 135c
    Positionsbefehlskorrekturwertberechnungseinheit;
    136
    Logiksummenberechnungseinheit.
  • ZITATE ENTHALTEN IN DER BESCHREIBUNG
  • Diese Liste der vom Anmelder aufgeführten Dokumente wurde automatisiert erzeugt und ist ausschließlich zur besseren Information des Lesers aufgenommen. Die Liste ist nicht Bestandteil der deutschen Patent- bzw. Gebrauchsmusteranmeldung. Das DPMA übernimmt keinerlei Haftung für etwaige Fehler oder Auslassungen.
  • Zitierte Patentliteratur
    • JP 2010178509 [0003]

Claims (16)

  1. Steuerung, die einen Positionsbefehl an eine Motorsteuerungsvorrichtung ausgibt, die einem Motor zum Steuern eines Betriebs einen Strom zuführt, wobei die Steuerung umfasst: eine Programmanalyseeinheit, um ein Betriebsprogramm zu analysieren, das einen Pfad für ein durch Betrieb des Motors anzutreibendes Objekt definiert, und Analysedaten auszugeben; und eine Positionsbefehlserzeugungseinheit, die ein Maschinenmodell umfasst, das eine als Ausgabe des Motors verfügbare Beschleunigung berechnet, wobei die Positionsbefehlserzeugungseinheit dazu konfiguriert ist, den Positionsbefehl basierend auf den Analysedaten und dem Maschinenmodell zu erzeugen und das Maschinenmodell zu aktualisieren, wenn eine Steuerungseingabe an den Motor eine Sättigung über eine voreingestellte Steuerungseingabebegrenzung erreicht.
  2. Steuerung nach Anspruch 1, wobei die Positionsbefehlserzeugungseinheit bestimmt, ob eine Steuerungseingabe an den Motor die Sättigung erreicht hat, und als Antwort auf ein Bestimmen, dass die Steuerungseingabe die Sättigung erreicht hat, das Maschinenmodell basierend auf einer Zustandsgröße aktualisiert, die einen Betriebszustand der Steuerung, der Motorsteuerungsvorrichtung und/oder des Motors bei der Sättigung angibt.
  3. Steuerung nach Anspruch 1 oder 2, wobei die Positionsbefehlserzeugungseinheit umfasst: eine Vorkorrekturpositionsbefehlsberechnungseinheit, die ein Maschinenmodell umfasst, das eine als Ausgabe des Motors verfügbare Beschleunigung berechnet, wobei die Vorkorrekturpositionsbefehlsberechnungseinheit dazu konfiguriert ist, einen Vorkorrekturpositionsbefehl basierend auf den Analysedaten und dem Maschinenmodell zu berechnen; eine Beschleunigungskorrekturberechnungseinheit, um zu bestimmen, ob eine Steuerungseingabe an den Motor die Sättigung erreicht hat, ein Steuerungssättigungssignal in Antwort auf ein Bestimmen, dass die Steuerungseingabe die Sättigung erreicht hat, als AN auszugeben, das Steuerungssättigungssignal in Antwort auf ein Bestimmen, dass die Steuerungseingabe die Sättigung nicht erreicht hat, als AUS auszugeben, und ferner einen Positionsbefehlskorrekturwert zur Korrektur des Vorkorrekturpositionsbefehls basierend auf dem Steuerungssättigungssignal zu berechnen; und eine Positionsbefehlsberechnungseinheit, um den Positionsbefehl unter Verwendung des Vorkorrekturpositionsbefehls und des Positionsbefehlskorrekturwerts zu berechnen, wobei wenn das bezogene Steuerungssättigungssignal AN ist, die Vorkorrekturpositionsbefehlsberechnungseinheit das Maschinenmodell basierend auf einer Zustandsgröße aktualisiert, die einen Betriebszustand der Steuerung, der Motorsteuerungsvorrichtung und/oder des Motors bei dem Steuerungssättigungssignal, das AN ist, angibt.
  4. Steuerung nach Anspruch 3, wobei die Beschleunigungskorrekturberechnungseinheit eine Modellposition des Motors bei einem Steuern der Motorsteuerungsvorrichtung basierend auf dem Vorkorrekturpositionsbefehl erzeugt, bestimmt, dass die Steuerungseingabe die Sättigung erreicht hat, und das Steuerungssättigungssignal als AN ausgibt, wenn eine Modellpositionsabweichung, die eine Abweichung zwischen der Modellposition und einer erfassten Motorposition des Motors ist, größer oder gleich einem gegebenen Schwellwert ist, und bestimmt, dass die Steuerungseingabe nicht die Sättigung erreicht hat, und das Steuerungssättigungssignal als AUS ausgibt, wenn die Modellpositionsabweichung geringer ist als der Schwellwert.
  5. Steuerung nach Anspruch 4, wobei die Beschleunigungskorrekturberechnungseinheit ein Strombegrenzungssignal bezieht, das angibt, ob ein Strombefehl, der eine Steuerungseingabe von der Motorsteuerungsvorrichtung an den Motor ist, größer oder gleich einem gegebenen Wert ist, das Steuerungssättigungssignal in Antwort auf ein Beziehen des Strombegrenzungssignals, das angibt, dass der Strombefehl größer oder gleich dem gegebenen Wert ist, als AN ausgibt, und das Steuerungssättigungssignal in Antwort auf ein Beziehen des Strombegrenzungssignals, das angibt, dass der Strombefehl kleiner ist als der gegebene Wert, als AUS ausgibt, während die Modellpositionsabweichung kleiner ist als der gegebene Schwellwert.
  6. Steuerung nach einem der Ansprüche 3 bis 5, wobei die Beschleunigungskorrekturberechnungseinheit den Positionsbefehlskorrekturwert zur Korrektur des Vorkorrekturpositionsbefehls ausgibt, wenn das Steuerungssättigungssignal als AN ausgegeben wird, um eine Nachkorrekturbefehlsbeschleunigung zu verringern, die eine Beschleunigung nach der Korrektur ist, und dann den Positionsbefehlskorrekturwert ausgehend von der Nachkorrekturbefehlsbeschleunigung bei der Ausgabe des Steuerungssättigungssignals als AN erhöht, wenn das Steuerungssättigungssignal als AUS ausgegeben wird.
  7. Steuerung nach einem der Ansprüche 3 bis 6, wobei die Vorkorrekturpositionsbefehlsberechnungseinheit das Maschinenmodell basierend auf der Zustandsgröße aktualisiert, wenn das bezogene Steuerungssättigungssignal AUS ist und eine Drehmomentabweichung, die eine Abweichung zwischen einem von dem Maschinenmodell berechneten Motordrehmoment und einem aus einem Motorstrom berechneten Motordrehmoment ist, größer oder gleich einem gegebenen Wert ist.
  8. Steuerung nach Anspruch 7, wobei die Vorkorrekturpositionsbefehlsberechnungseinheit ein Motorkennmodell und ein Lastmodell als das Maschinenmodell umfasst und das Lastmodell als das Maschinenmodell aktualisiert.
  9. Steuerung nach einem der Ansprüche 3 bis 7, wobei die Vorkorrekturpositionsbefehlsberechnungseinheit: ein Motorkennmodell und ein Lastmodell als das Maschinenmodell umfasst; wenn ein Motorstrom größer oder gleich einem gegebenen Wert ist, während das Steuerungssättigungssignal AN ist, das Lastmodell basierend auf der Zustandsgröße bei dem Steuerungssättigungssignal, das AN ist, aktualisiert; und wenn der Motorstrom kleiner als der gegebene Wert ist, während das bezogene Steuerungssättigungssignal AN ist, das Motorkennmodell basierend auf der Zustandsgröße bei dem Steuerungssättigungssignal, das AN ist, aktualisiert.
  10. Steuerung nach einem der Ansprüche 3 bis 8, wobei die Zustandsgröße eine Motorposition, eine Maschinenendposition eines mechanischen Systems, das ein von der Motorsteuerungsvorrichtung anzutreibendes Objekt ist, eine Motorgeschwindigkeit, eine Maschinenendgeschwindigkeit des mechanischen Systems, eine Motorbeschleunigung, eine Maschinenendbeschleunigung des mechanischen Systems, einen Motorstrom, Drehmomentinformationen, eine von der Beschleunigungskorrekturberechnungseinheit berechnete Modellposition, einen Lastträgheitsschätzwert und/oder eine Versorgungsspannung an den Motor umfasst.
  11. Steuerung nach einem der Ansprüche 3 bis 10, wobei die Steuerung mit einer Vielzahl der Motorsteuerungsvorrichtungen verbunden ist, die verschiedenen einer Vielzahl der Motoren zum Steuern eines Betriebs einen Strom zuführen, und eine Interpolationssteuerung der Vielzahl von Motoren durchgeführt wird, und wobei, wenn das Steuerungssättigungssignal, das für einen oder mehrere der Motoren AN ist, die Beschleunigungskorrekturberechnungseinheit einen Positionsbefehlskorrekturwert für die Vielzahl der Motoren bei dem Interpolationsbetrieb ausgibt, um eine Nachkorrekturwertbeschleunigung, die eine Beschleunigung nach einer Korrektur ist, zu verringern, während der Interpolationsbetrieb zwischen den Motoren beibehalten wird, und dann, wenn das Steuerungssättigungssignal ausgegeben wird, das für die Vielzahl der Motoren bei dem Interpolationsbetrieb AUS ist, den Positionsbefehlskorrekturwert für die Vielzahl der Motoren bei dem Interpolationsbetrieb ausgehend von der Nachkorrekturbefehlsbeschleunigung bei der Ausgabe des Steuerungssättigungssignals als AN erhöht, während der Interpolationsbetrieb zwischen den Motoren beibehalten wird.
  12. Steuerung nach einem der Ansprüche 3 bis 11, umfassend: eine Lernvorrichtung, die umfasst: eine Datenbezugseinheit zum Beziehen von bezogenen Informationen, die das Steuerungssättigungssignal, die Zustandsgröße, Programminformationen des Betriebsprogramms und Werkstückinformationen umfassen, als Lerndaten und von Trainingsdaten, die Motorkenndaten, eine Lastträgheit, ein Reibungsdrehmoment und ein Drehmoment durch asymmetrische Last umfasst; und eine Modellerzeugungseinheit zum Erzeugen eines Lernmodells unter Verwendung der Lerndaten, um ein in dem Maschinenmodell umfasstes Lastmodell aus den bezogenen Informationen zu inferieren.
  13. Steuerung nach einem der Ansprüche 3 bis 12, umfassend: eine Inferenzvorrichtung, die umfasst: eine Datenbezugseinheit zum Beziehen des Steuerungssättigungssignals, der Zustandsgröße, von Programminformationen des Betriebsprogramms und von Werkstückinformationen als die bezogenen Informationen; und eine Inferenzeinheit zum Inferieren eines Lastmodells aus den bezogenen Informationen, die von der Datenbezugseinheit bezogen werden, unter Verwendung eines gelernten Modells zum Inferieren eines in dem Maschinenmodell umfassten Lastmodells.
  14. Steuerungssystem, umfassend: die Steuerung nach einem der Ansprüche 1 bis 13; und eine Motorsteuerungsvorrichtung zum Durchführen einer Positionssteuerung eines Motors basierend auf einem Positionsbefehl, der von der Steuerung bezogen wird.
  15. Lernvorrichtung, umfassend: eine Datenbezugseinheit zum Beziehen von bezogenen Informationen und Trainingsdaten als Lerndaten von einer Steuerung, die einen Positionsbefehl an eine Motorsteuerungsvorrichtung ausgibt, die einem Motor zum Steuern des Betriebs einen Strom zuführt, wobei die bezogenen Informationen ein Steuerungssättigungssignal, das angibt, ob eine Steuerungseingabe an den Motor eine Sättigung über eine voreingestellte Steuerungseingabebegrenzung erreicht hat, eine Zustandsgröße, die einen Betriebszustand der Steuerung, der Motorsteuerungsvorrichtung und/oder des Motors angibt, Programminformationen eines an die Steuerung eingegebenen Betriebsprogramms und Werkstückinformationen umfassen, wobei die Trainingsdaten Motorkenndaten, eine Lastträgheit, ein Reibungsdrehmoment und ein Drehmoment durch asymmetrische Last umfasst; und eine Modellerzeugungseinheit zum Erzeugen eines gelernten Modells unter Verwendung der Lerndaten, um ein Lastmodell, das in einem in der Steuerung gespeicherten Maschinenmodell umfasst ist, aus den bezogenen Informationen zu inferieren.
  16. Inferenzvorrichtung, umfassend: eine Datenbezugseinheit zum Beziehen eines Steuerungssättigungssignals, das angibt, ob eine Steuerungseingabe an den Motor eine Sättigung über eine voreingestellte Steuerungseingabebegrenzung erreicht hat, einer Zustandsgröße, die einen Betriebszustand der Steuerung, der Motorsteuerungsvorrichtung und/oder des Motors angibt, von Programminformationen eines an die Steuerung eingegebenen Betriebsprogramms und von Werkstückinformationen als Informationen, die von der Steuerung bezogen werden, die einen Positionsbefehl an eine Motorsteuerungsvorrichtung ausgibt, die einem Motor zum Steuern eines Betriebs einen Strom zuführt; und eine Inferenzeinheit zum Inferieren eines Lastmodells aus den bezogenen Informationen, die von der Datenbezugseinheit bezogen werden, unter Verwendung eines gelernten Modells zum Inferieren eines Lastmodells, das in einem in der Steuerung gespeicherten Maschinenmodell umfasst ist.
DE112021007575.6T 2021-12-13 2021-12-13 Steuerung, Steuerungssystem, Lernvorrichtung und Inferenzvorrichtung Pending DE112021007575T5 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2021/045769 WO2023112082A1 (ja) 2021-12-13 2021-12-13 コントローラ、制御システム、学習装置および推論装置

Publications (1)

Publication Number Publication Date
DE112021007575T5 true DE112021007575T5 (de) 2024-02-22

Family

ID=82556746

Family Applications (1)

Application Number Title Priority Date Filing Date
DE112021007575.6T Pending DE112021007575T5 (de) 2021-12-13 2021-12-13 Steuerung, Steuerungssystem, Lernvorrichtung und Inferenzvorrichtung

Country Status (4)

Country Link
JP (1) JP7106038B1 (de)
CN (1) CN117378139A (de)
DE (1) DE112021007575T5 (de)
WO (1) WO2023112082A1 (de)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010178509A (ja) 2009-01-29 2010-08-12 Mitsubishi Electric Corp モータ駆動制御装置

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3521653B2 (ja) * 1996-11-01 2004-04-19 トヨタ自動車株式会社 物理系の制御方法および装置
JP6490131B2 (ja) * 2017-03-31 2019-03-27 ファナック株式会社 機械学習装置、サーボ制御装置、サーボ制御システム、及び機械学習方法
JP6697491B2 (ja) * 2018-01-25 2020-05-20 ファナック株式会社 機械学習装置、サーボモータ制御装置、サーボモータ制御システム、及び機械学習方法
JP6836540B2 (ja) * 2018-04-12 2021-03-03 ファナック株式会社 情報処理装置及び情報処理方法

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010178509A (ja) 2009-01-29 2010-08-12 Mitsubishi Electric Corp モータ駆動制御装置

Also Published As

Publication number Publication date
CN117378139A (zh) 2024-01-09
WO2023112082A1 (ja) 2023-06-22
JPWO2023112082A1 (de) 2023-06-22
JP7106038B1 (ja) 2022-07-25

Similar Documents

Publication Publication Date Title
DE102018203702B4 (de) Vorrichtung für maschinelles Lernen, Servo-Regelungsvorrichtung, Servo-Regelungssystem und Verfahren für maschinelles Lernen
DE102018203956B4 (de) Maschinelle Lernvorrichtung, Servosteuerungsvorrichtung, Servosteuerungssystem und maschinelles Lernverfahren
DE69125980T2 (de) Intelligentes Bearbeitungssystem
DE102006045429B4 (de) Adaptive, Modellprädiktive Online-Steuerung in einem Prozesssteuerungssystem
DE102017005349A1 (de) Maschinenlernvorrichtung, numerische steuervorrichtung und maschinenlernverfahren zum lernen eines schwellenwerts zum erkennen einer anomalen last
DE102018007640A1 (de) Klimatisierungssteuersystem
DE102016013985A1 (de) Vorrichtung für maschinelles Lernen und Verfahren zum Optimieren der Laufruhe des Vorschubs der Vorschubachse einer Maschine und eine die Vorrichtung für maschinelles Lernen umfassende Motorsteuervorrichtung
DE102017205791B4 (de) Servoregelungsvorrichtung zum Antreiben einer Vielzahl von Motoren
DE102016008994A1 (de) Werkzeugmaschine, simulationsvorrichtung und maschineneinlerngerät
DE102016012171A1 (de) Maschinelle Lernvorrichtung und Verfahren zum Lernen eines Korrekturwerts in einer Motorstromsteuerung, Korrekturwert-Berechnungsvorrichtung umfassend eine maschinelle Lernvorrichtung und Motorantriebsvorrichtung
DE102018211148A1 (de) Maschinenlernvorrichtung, servomotor- regeleinrichtung, servomotor-regelsystem und maschinenlernverfahren
DE102016011402A1 (de) Maschinelles Lernverfahren und maschinelle Lernvorrichtung zum Einlernen von Betriebsbefehlen für einen Elektromotor und Werkzeugmaschine mit maschineller Lernvorrichtung
DE112011101443T5 (de) Servoregler
DE102019106729A1 (de) Antriebsvorrichtung und Vorrichtung für maschinelles Lernen
DE102019204861A1 (de) Maschinenlernvorrichtung; steuervorrichtung und maschinelles lernverfahren
DE102018205015A1 (de) Einstellvorrichtung und Einstellverfahren
DE102018209951A1 (de) Maschinenlerngerät, servosteuergerät, servosteuersystem und maschinenlernverfahren
DE112018000122T5 (de) Maschinelles-Lernen-Vorrichtung, Korrekturparameter-Anpassungssystem und Maschinelles-Lernen-Verfahren
DE102018003769A1 (de) Vorrichtung für maschinelles Lernen, Servosteuersystem und Verfahren zum maschinellen Lernen
DE102018115361A1 (de) Elektrisches servolenkungssystem mit einheitlicher architektur für mehrere betriebsmodi
DE102018123849A1 (de) System zum Ausgleichen einer thermischen Verschiebung
DE112019007222T5 (de) Motorsteuereinrichtung
DE102019104169A1 (de) Quadrantenbasierte reibungskompensation für eine schätzung der reifenlast in lenkungssystemen
DE102018205185A1 (de) Steuereinrichtung
DE102017221238B4 (de) Servomotor-steuereinrichtung, servomotor-steuerverfahren und servomotor-steuerprogramm

Legal Events

Date Code Title Description
R012 Request for examination validly filed