-
HINTERGRUND DER ERFINDUNG
-
1. Gebiet der Erfindung
-
Die Erfindung betrifft einen Controller für einen Elektromotor, wobei der Controller mit dem Elektromotor den Antriebsvorgang eines angetriebenen Körpers einer Werkzeugmaschine oder Industriemaschine steuert. Sie betrifft insbesondere einen Controller für einen Elektromotor, der eine Funktion zum gleichzeitigen Schätzen der Trägheit, Reibung und Federkonstante des angetriebenen Körpers aufweist.
-
2. Beschreibung des Stands der Technik
-
Das Erfassen der Größe der Trägheit und der Reibung eines angetriebenen Körpers, der von einem Elektromotor angetrieben wird, ist nicht nur dann wichtig, wenn die Bearbeitungsbedingungen einer Werkzeugmaschine oder einer ähnlichen Vorrichtung erfasst werden, sondern auch dann, wenn eine Antriebswelle, die den angetriebenen Körper antreibt, exakt geregelt werden soll.
-
Werden beispielsweise die Beschleunigungs- und Verzögerungskonstanten eines Befehls als Bearbeitungsbedingung erfasst, so muss man die Größe der Trägheit und Reibung genau kennen, um die Beschleunigungsfähigkeit des Elektromotors vollständig ausnutzen zu können. Zusätzlich muss man hinsichtlich der Regelung die Größe der Trägheit und Reibung genau kennen, um eine Verstärkung zu berechnen, die das Ansprechen der Geschwindigkeitsregelung festlegt. Zudem lässt sich die Robustheit eines Servos erhöhen, indem man einen Störgrößenbeobachter entwirft, in den die Werte der Trägheit und Reibung eingehen.
-
Ein Elektromotor-Controller, der eine Funktion zum gleichzeitigen Schätzen von Trägheit und Reibung umfasst, ist in der veröffentlichten
japanischen Patentschrift Nr. 2011-072178 offenbart. Der Controller schätzt insbesondere Parameter des geregelten Objekts einschließlich einer nichtlinearen Reibung. Die in der veröffentlichten
japanischen Patentschrift Nr. 2011-072178 offenbarte Vorgehensweise zielt auf so genannte Systeme mit einer Trägheit ab, bei denen davon ausgegangen wird, dass das geregelte Objekt ein steifer Körper ist. Hinsichtlich geregelter Objekte, die Federeigenschaften haben, ist nichts offenbart. Zahlreiche angetriebene Körper in Werkzeugmaschinen und Industriemaschinen kann man nicht als vollständig steife Körper betrachten. Geht man also davon aus, dass das zu schätzende geregelte Objekt ein steifer Körper ist, wie dies bei der Vorgehensweise zutrifft, die der veröffentlichten
japanischen Patentschrift Nr. 2011-072178 offenbart ist, so tritt die Schwierigkeit auf, dass das geregelte Objekt auf steife Körper eingeschränkt ist bzw. die Genauigkeit der Schätzung schlechter wird, falls das geregelte Objekt kein steifer Körper ist.
-
In der veröffentlichten
japanischen Patentschrift Nr. 2008-228360 ist eine Vorgehensweise offenbart, bei der davon ausgegangen wird, dass das geregelte Objekt ein Resonanzmodell ist, für das Parameter des geregelten Objekts durch ein iteratives Verfahren der kleinsten Fehlerquadrate geschätzt werden. Bei der Vorgehensweise, die in der veröffentlichten
japanischen Patentschrift Nr. 2008-228360 offenbart ist, tritt die Schwierigkeit auf, dass die geschätzte Reibung auf eine lineare Reibung eingeschränkt ist und dass eine nichtlineare Reibung nicht geschätzt werden kann.
-
ZUSAMMENFASSUNG DER ERFINDUNG
-
Hinsichtlich der obigen Darlegungen ist es eine Aufgabe der Erfindung, einen Controller für einen Elektromotor bereitzustellen, der gleichzeitig und in Echtzeit Trägheit, nichtlineare Reibung und eine Federkonstante eines geregelten Objekts schätzen kann.
-
Ein Elektromotor-Controller der Erfindung besitzt eine Funktion zum simultanen Schätzen von Trägheit, Reibung und einer Federkonstante, wobei ein Elektromotor, der ein geregeltes Objekt ist, einen angetriebenen Körper einer Werkzeugmaschine oder Industriemaschine antreibt, und der Elektromotor und der angetriebene Körper durch eine Verbindungswelle miteinander gekoppelt sind, die Resonanzeigenschaften einschließlich einer Feder aufweist. Zusätzlich enthält der Controller:
eine Befehlseinheit, die einen M-Folgen-Befehl oder einen Sinusbefehl zu einem Positionsbefehl, einem Geschwindigkeitsbefehl oder einem Drehmomentbefehl des Controllers addiert;
eine Stromwert-Erfassungseinheit, die in jeder Abtastperiode einen Wert des Stroms erfasst, der durch den Elektromotor fließt;
eine Eingabedrehmoment-Berechnungseinheit, die einen Wert eines Eingabedrehmoments für den angetriebenen Körper abhängig vom dem Stromwert und einer Drehmomentkonstante des Elektromotors berechnet;
eine Geschwindigkeits-Erfassungseinheit, die in jeder Abtastperiode eine Geschwindigkeit des Elektromotors erfasst;
eine Kopplungsdrehmoment-Berechnungseinheit, die einen Wert eines Kopplungsdrehmoments berechnet, das auf den Elektromotor ausgeübt wird, und zwar abhängig von einer Differenz zwischen der Geschwindigkeit, die die Geschwindigkeits-Erfassungseinheit während der momentanen Abtastung erfasst, und einer Geschwindigkeit, die die Geschwindigkeits-Erfassungseinheit während einer vorhergehenden Abtastung erfasst, von der Trägheit des Elektromotors und von dem Eingabedrehmomentwert, den die Eingabedrehmoment-Berechnungseinheit berechnet;
eine Berechnungseinheit für das geschätzte Kopplungsdrehmoment, die die Trägheit, die viskose Reibung und die Coulomb-Reibung des angetriebenen Körpers und eine Federkonstante der Feder der Verbindungswelle schätzt, und zwar abhängig von der Geschwindigkeit des Elektromotors und dem Wert des Kopplungsdrehmoments, und die den Kopplungsdrehmomentwert aus der geschätzten Trägheit, der geschätzten viskosen Reibung und der geschätzten Coulomb-Reibung des angetriebenen Körpers und der geschätzten Federkonstante schätzt;
eine Berechnungseinheit für den geschätzten Drehmomentenfehler, die einen geschätzten Drehmomentenfehler berechnet, und zwar durch das Subtrahieren des geschätzten Kopplungsdrehmomentwerts, den die Berechnungseinheit für das geschätzte Kopplungsdrehmoment schätzt, von dem Kopplungsdrehmomentwert, den die Kopplungsdrehmoment-Berechnungseinheit berechnet; und
eine Korrektureinheit, die die geschätzte Trägheit, die geschätzte viskose Reibung, die geschätzte Coulomb-Reibung und die geschätzte Federkonstante für jede Abtastperiode korrigiert, so dass der geschätzte Drehmomentenfehler, den die Berechnungseinheit für den geschätzten Drehmomentenfehler berechnet, so klein wie möglich wird.
-
Den geschätzten Kopplungsdrehmomentwert kann man erhalten abhängig von:
einem Produkt einer Differenz der Geschwindigkeit des Elektromotors, die für jede Abtastperiode erfasst wird, und der geschätzten Trägheit;
einem Produkt einer Geschwindigkeit, die für jede Abtastperiode erfasst wird, und der geschätzten viskosen Reibung des angetriebenen Körpers;
einem Produkt einer Polarität einer Geschwindigkeit, die für jede Abtastperiode erfasst wird, und einer geschätzten Coulomb-Reibung einer Last;
einem Produkt einer Differenz zweiter Ordnung des Kopplungsdrehmomentwerts und eines Kehrwerts der geschätzten Federkonstante; und
einem Produkt einer Differenz des Kopplungsdrehmomentwerts, eines Kehrwerts der geschätzten Trägheit, der geschätzten Reibung, der geschätzten viskosen Reibung und der geschätzten Federkonstante.
-
Die Korrektureinheit korrigiert die geschätzte Trägheit, die geschätzte viskose Reibung, die geschätzte Coulomb-Reibung und die geschätzte Federkonstante für jede Abtastperiode mit Hilfe der Geschwindigkeit des Elektromotors, des Kopplungsdrehmoments und eines Anpassungskoeffizienten, damit der geschätzte Drehmomentenfehler, den die Berechnungseinheit für den geschätzten Drehmomentenfehler berechnet, so klein wie möglich wird. Der Anpassungskoeffizient ist umgekehrt proportional zu der Höhe der Geschwindigkeit und des Kopplungsdrehmomentwerts und kann eine neutrale Zone aufweisen, in der der Anpassungskoeffizient den Wert Null hat, falls die Geschwindigkeit kleiner oder gleich einem vorbestimmten Wert ist.
-
Die Berechnungseinheit für das geschätzte Kopplungsdrehmoment kann einen geschätzten Kopplungsdrehmomentwert gestützt auf eine geschätzte Geschwindigkeit des angetriebenen Körpers berechnen, eine Geschwindigkeit des Elektromotors, den Kopplungsdrehmomentwert, die geschätzte Trägheit des angetriebenen Körpers, die geschätzte viskose Reibung des angetriebenen Körpers, die geschätzte Coulomb-Reibung des angetriebenen Körpers, und die geschätzte Federkonstante.
-
Eine geschätzte Geschwindigkeit des angetriebenen Körpers kann man mit Hilfe der Geschwindigkeit des Elektromotors erhalten, die in jeder Abtastperiode erfasst wird, des Kopplungsdrehmoments und der geschätzten Federkonstante im vorhergehenden Abtastvorgang.
-
Gemäß der Erfindung kann ein Controller für einen Elektromotor bereitgestellt werden, der eine Funktion zum gleichzeitigen Schätzen der Trägheit, Reibung und einer Federkonstante besitzt, wobei der Controller in Echtzeit Trägheit, nichtlineare Reibung und eine Federkonstante schätzen kann.
-
KURZE BESCHREIBUNG DER ZEICHNUNGEN
-
Die genannten Aufgaben und Merkmale der Erfindung sowie weitere Aufgaben und Merkmale gehen aus der folgenden Beschreibung der bevorzugten Ausführungsformen anhand der beiliegenden Zeichnungen hervor.
-
Es zeigt:
-
1 ein Blockdiagramm des Aufbaus eines Regelsystems;
-
2 ein Blockdiagramm des Aufbaus eines Servocontrollers in 1;
-
3 eine Skizze eines kontrollierten Objekts anhand einer Modellierung;
-
4 ein Blockdiagramm einer Anordnung einer Schätzeinheit in 3;
-
5A und 5B Skizzen, die erläutern, wie eine Sinus-Befehlseinheit einen sinusförmigen Befehl zu einem Positionsbefehl (5A) oder einem Geschwindigkeitsbefehl (5B) zufügt, und 5C eine Skizze, die erklärt, wie die Sinus-Befehlseinheit einen sinusförmigen Befehl zu einem Drehmomentbefehl zufügt, und zwar in gleicher Weise wie in 2 dargestellt;
-
6A bis 6C Skizzen, die erläutern, wie eine M-Folgebefehl-Erzeugungseinheit einen M-Folgebefehl einem Positionsbefehl (6A), einem Geschwindigkeitsbefehl (6B) oder einem Drehmomentbefehl (6C) hinzufügt;
-
7 eine Skizze, die die Veränderung der Koeffizienten in Formel (1) erläutert, und zwar zwischen einem Zustand, in dem eine neutrale Geschwindigkeitszone bereitgestellt ist, und einem Zustand, in dem eine neutrale Geschwindigkeitszone nicht bereitgestellt ist;
-
8 ein Flussdiagramm einer Schätzprozedur für Trägheit, Reibung und Federkonstante, die eine Servocontrollereinheit vornimmt, die eine Schätzeinheit enthält;
-
9 ein Blockdiagramm eines mechanischen Modells;
-
10 ein Blockdiagramm eines vereinfachten mechanischen Modells; und
-
11 eine Skizze eines vereinfachten Reibungsmodells, das nichtlineare Eigenschaften aufweist.
-
BESCHREIBUNG DER BEVORZUGTEN AUSFÜHRUNGSFORMEN
-
1 zeigt ein Blockdiagramm des Aufbaus eines Regelsystems.
-
Ein Objekt, siehe 1, das direkt von einem Controller der Erfindung kontrolliert wird, ist ein Elektromotor 2, der einen angetriebenen Körper 4 betätigt. Der Elektromotor 2 wird beispielsweise als Antriebskraft zum Verändern der Position oder Lage eines Tischs verwendet, der in einer Werkzeugmaschine oder Industriemaschine ein Werkstück hält, oder als Antriebsquelle, die die Drehung eines Roboterarms bewirkt.
-
Der Elektromotor 2 und der angetriebene Körper 4 sind durch eine Verbindungswelle 6 miteinander verbunden. Die Verbindungswelle 6 weist Resonanzeigenschaften auf, zu denen eine Feder gehört. Die Verbindungswelle 6 ist beispielsweise ein Mechanismus, der aus einer Kugelumlaufspindel und einer Mutter besteht, die eine Drehbewegung in eine geradlinige Bewegung umsetzt, und der zudem einen Verzögerer besitzt. Das kontrollierte Objekt 1, das den angetriebenen Körper 4 enthält, umfasst beispielsweise auch einen Tisch oder einen Roboterarm, der in einer Werkzeugmaschine oder Industriemaschine ein Werkstück hält, wobei das Werkstück vom Tisch oder Roboterarm gehalten und freigegeben wird, und bewegliche Teile wie die Verbindungswelle 6 und den Elektromotor 2 selbst. Im Weiteren werden die beweglichen Teile des Elektromotors 2, der Verbindungswelle 6 und des angetriebenen Körpers 4 gemeinsam als kontrolliertes Objekt 1 bezeichnet.
-
Das kontrollierte Objekt 1 einschließlich des angetriebenen Körpers 4 weist Reibungseigenschaften auf, die eine viskose Reibung und eine Coulomb-Reibung umfassen, und die Merkmale einer Feder. Eine Beschreibung erfolgt später, wenn das kontrollierte Objekt 1 mit Hilfe von 2 modelliert wird.
-
Ein Servocontroller 10 regelt die Position, die Geschwindigkeit und das Drehmoment des Elektromotors 2. Der Servocontroller 10 ist an einen übergeordneten Controller 20 angeschlossen, beispielsweise eine CNC (numerischer Controller), der Befehle bezüglich der Position, der Geschwindigkeit und des Drehmoments des Elektromotors 2 gemäß einem Verarbeitungsplan ausgibt. Zudem können mehrere Servocontroller 10 an den übergeordneten Controller 20 angeschlossen sein. Der übergeordnete Controller 20 arbeitet so, dass er ein Startsignal an eine Sinusbefehl-Erzeugungseinheit 40 (siehe 2 und 5A bis 5C) oder eine M-Folgen-Erzeugungseinheit 41 (siehe 6A bis 6C) und an eine Schätzeinheit 30 des Servocontrollers 10 überträgt.
-
2 zeigt ein ausführlicheres Blockdiagramm des Aufbaus des Servocontrollers 10 in 1.
-
Der Servocontroller 10, siehe 2, umfasst eine Positionsregeleinheit 11, eine Geschwindigkeitsregeleinheit 12, eine Stromregeleinheit 13 und einen Verstärker 14. Mit Hilfe einer Positionsverstärkung Kp und einer Geschwindigkeitsverstärkung Kv, die in der Positionsregeleinheit 11 bzw. der Geschwindigkeitsregeleinheit 12 eingestellt sind, arbeitet der Servocontroller 10 gemäß einem Befehlssignal von dem übergeordneten Controller 20 und einem Rückführsignal für die Position bzw. die Geschwindigkeit, das aus einem Positions/Geschwindigkeitsdetektor 3 stammt, der an dem Elektromotor 2 angebracht ist. Ein Ausgabesignal (PWM-Signal) der Stromregeleinheit 13 wird in den Verstärker 14 eingegeben. Der Verstärker 14 kontrolliert die Leistungszufuhr des Elektromotors 2 anhand des von der Stromregeleinheit 13 empfangenen PWM-Signals.
-
Ein Geschwindigkeitsrückführsignal vom Detektor 3, der am Elektromotor 2 angebracht ist, und ein Stromrückführsignal vom Verstärker 14 werden in die Schätzeinheit 30 eingegeben. Die Schätzeinheit 30 berechnet simultan die geschätzte Trägheit (Trägheitsmoment), die geschätzte Reibungskraft, und die geschätzte Federkonstante des angetriebenen Körpers 4 des kontrollierten Objekts 1 mit Hilfe des empfangenen Geschwindigkeitsrückführsignals und Stromrückführsignals. Die geschätzten Daten der Trägheit, die geschätzten Daten der Reibungskraft, und die geschätzten Daten der Federkonstante des angetriebenen Körpers 4, die durch Berechnen erhalten werden, werden zusammen mit einem Beendigungssignal an den übergeordneten Controller 20 ausgegeben. Für die Reibungskraft kann man getrennt eine viskose Reibungskraft und eine Coulomb-Reibungskraft berechnen.
-
Nach dem Ende der Berechnung der jeweiligen Schätzwerte für Trägheit, Reibung und Federkonstante überträgt die Schätzeinheit 30 das Beendigungssignal, die geschätzten Daten der Trägheit (eine geschätzte Trägheit JL des angetriebenen Körpers), die geschätzten Daten der Reibungskraft (eine geschätzte viskose Reibungskraft C1 und eine geschätzte Coulomb-Reibungskraft C2) und die geschätzten Daten der Federkonstante (eine geschätzte Federkonstante Kc) an den übergeordneten Controller 20. Der übergeordnete Controller 20 empfängt das Beendigungssignal, die geschätzte Trägheit JL, die geschätzte viskose Reibungskraft C1, die geschätzte Coulomb-Reibungskraft C2 und die geschätzte Federkonstante Kc, die die Schätzeinheit 30 überträgt.
-
3 zeigt eine Skizze des kontrollierten Objekts 1 anhand einer Modellierung.
-
Das kontrollierte Objekt 1 enthält die bewegten Teile des Elektromotors 2, der Verbindungswelle 6 und des angetriebenen Körpers 4. Man kann es mit Hilfe einer Drehmomentkonstante Kt des Elektromotors 2, einem Modell 7 des angetriebenen Körpers, einem Federmodell 8 und einem Modell 9 des Elektromotors modellieren. In 3 bezeichnet s die komplexe Frequenzvariable der Laplacetransformation. Ein Subtrahierer 18 subtrahiert ein Kopplungsdrehmoment Tc von einem Eingabedrehmoment Tm. Die Differenz (Tm – Tc) zwischen dem Eingabedrehmoment Tm und dem Kopplungsdrehmoment Tc, die der Subtrahierer 18 ausgibt, wird vom Modell 9 des Elektromotors in eine Motorgeschwindigkeit ωm umgesetzt. Ein Subtrahierer 19 subtrahiert eine Maschinengeschwindigkeit ωL von der Motorgeschwindigkeit ωm. Das Federmodell 8 setzt das Subtraktionsergebnis (ωm – ωL) in das Kopplungsdrehmoment Tc um. Das Kopplungsdrehmoment Tc wird in den Subtrahierer 18 und das Modell 7 des angetriebenen Körpers eingegeben. Das Modell 7 des angetriebenen Körpers setzt das Kopplungsdrehmoment Tc in die Maschinengeschwindigkeit ωL um.
-
4 zeigt ein Blockdiagramm einer Anordnung der Schätzeinheit 30 in 3.
-
Eine Stromrückführ-Abtasteinheit 31 tastet in jeder vorbestimmten Abtastperiode T ein Stromrückführsignal iq(t) ab, das man erhält, indem man mit einem Stromsensor (nicht dargestellt) einen Strom erfasst, der durch den Elektromotor 2 fließt, und sie speist das abgetastete Stromrückführsignal als Stromrückführwert iq(n) in die Schätzeinheit 30 ein. In vergleichbarer Weise tastet eine Geschwindigkeitsrückführ-Abtasteinheit 32 in einer vorbestimmten Abtastperiode T ein Geschwindigkeitsrückführsignal ωm(t) ab, das der Detektor 3 ausgibt, der die Geschwindigkeit des Elektromotors 2 erfasst, und sie speist das abgetastete Geschwindigkeitsrückführsignal als Geschwindigkeitsrückführwert ωm(n) in die Schätzeinheit 30 ein.
-
Eine Multipliziereinheit 35 multipliziert die Trägheit Jm des Elektromotors mit einer in jeder Abtastperiode erfassten Differenz (Δωm) der Motorgeschwindigkeit ωm zwischen einem in der vorhergehenden Abtastung ermittelten Wert (ωmn-1) und einem in der aktuellen Abtastung ermittelten Wert (ωmn), und sie gibt das Multiplikationsergebnis (Jm × Δωm) an eine Subtrahiereinheit 37 aus. Eine Eingabedrehmoment-Berechnungseinheit 36 berechnet einen Eingabedrehmomentwert Tm(n) durch Multiplizieren des Stromrückführsignals iq(n) mit einer Drehmomentkonstante Kt des Elektromotors 2. Die Subtrahiereinheit 37 berechnet einen Wert des auf den Elektromotor 2 ausgeübten Kopplungsdrehmoments Tc(n) durch Subtrahieren des von der Multipliziereinheit 35 ausgegebenen Werts (Jm × Δωm) von dem Eingabedrehmomentwert Tm(n), den die Eingabedrehmoment-Berechnungseinheit 36 berechnet. Der von der Subtrahiereinheit 37 ausgegebene Kopplungsdrehmomentwert Tc(n) wird in eine Subtrahiereinheit 38 und eine inverse Modelliereinheit 33 eingegeben. Dabei bilden die Multipliziereinheit 35, die Eingabedrehmoment-Berechnungseinheit 36 und die Subtrahiereinheit 37 eine ”Kopplungsdrehmoment-Berechnungseinheit”.
-
Die Subtrahiereinheit 38 berechnet einen geschätzten Drehmomentenfehler e(n) durch Subtrahieren des geschätzten Kopplungsdrehmomentwerts, der durch Tc(n) mit einem hochgestellten ”^” bezeichnet wird und von der inversen Modelliereinheit 33 ausgegeben wird, vom Kopplungsdrehmomentwert Tc(n), den die Subtrahiereinheit 37 ausgibt, und sie gibt den geschätzten Drehmomentenfehler e(n) in die Korrektureinheit 34 ein. Die Subtrahiereinheit 38 bildet eine ”Berechnungseinheit für den geschätzten Drehmomentenfehler”.
-
Die inverse Modelliereinheit
33 berechnet den geschätzten Kopplungsdrehmomentwert, der durch T(n) mit einem hochgestellten ”^” bezeichnet wird, anhand der folgenden Formel (1)
-
In Formel (1) bezeichnet JL die geschätzte Trägheit des angetriebenen Körpers 4, T eine Abtastperiode, C1 die geschätzte viskose Reibung einer Last, C2 die geschätzte Coulomb-Reibung der Last, Kc eine geschätzte Federkonstante, ΔTc(n) eine Differenz der Kopplungsdrehmomentwerte, Δ2Tc(n) eine Differenz zweiter Ordnung der Kopplungsdrehmomentwerte, sgn eine Signum-Funktion, ω(n) eine Motorgeschwindigkeit, Δω(n) eine Differenz der Motorgeschwindigkeit, und T(n) mit einem hochgestellten einen geschätzten Kopplungsdrehmomentwert (n = 1, 2, 3, ...).
-
Anders formuliert kann man den geschätzten Kopplungsdrehmomentwert, der durch T(n) mit einem hochgestellten ”^” bezeichnet ist, mit Hilfe der Motorgeschwindigkeit ω(n), des Kopplungsdrehmomentwerts Tc(n), der geschätzten Trägheit JL des angetriebenen Körpers 4, der geschätzten viskosen Reibung C1 der Last, der Coulomb-Reibung der Last und der geschätzten Federkonstante ausdrücken. T(n) mit einem hochgestellten ”^” bezeichnet den Schätzwert.
-
Es wird nun jeder Term in Formel (1) oben beschrieben. Der erste Term entspricht einem Produkt aus einer für jede Abtastperiode erfassten Geschwindigkeitsdifferenz und der geschätzten Trägheit. Der zweite Term entspricht einem Produkt aus der für jede Abtastperiode erfassten Geschwindigkeit und der geschätzten viskosen Reibung einer Last. Der dritte Term entspricht einem Produkt aus einer für jede Abtastperiode erfassten Polarität der Geschwindigkeit und der geschätzten Coulomb-Reibung einer Last. Der vierte Term entspricht einer Differenz zweiter Ordnung des Kopplungsdrehmoments und eines Kehrwerts der geschätzten Federkonstante. Der fünfte Term entspricht einem Produkt von Koeffizienten, die man durch die ersten, zweiten, dritten und vierten Terme des Kopplungsdrehmoments erhält.
-
Mit Hilfe der folgenden Formel (2), die auf einem Verfahren des steilsten Abstiegs beruht, damit der von der Subtrahiereinheit 38 ausgegebene geschätzte Drehmomentenfehler e(n) so klein wie möglich wird, aktualisiert und korrigiert die Korrektureinheit 34 die geschätzte Trägheit JL, die geschätzte viskose Reibung C1, die geschätzte Coulomb-Reibung C2 und die geschätzte Federkonstante Kc des angetriebenen Körpers 4 für jede Abtastperiode T anhand des Geschwindigkeitsrückführwerts ωm(n) und des Kopplungsdrehmomentwerts Tc(n).
-
Im Einzelnen nimmt die Korrektureinheit 34 eine Korrektur vor, indem sie für jede Abtastperiode T die geschätzte Trägheit JL, die geschätzte viskose Reibung C1, die geschätzte Coulomb-Reibung C2 und die geschätzte Federkonstante Kc des angetriebenen Körpers 4 verwendet, die das kontrollierte Objekt 1 umfasst. Die Korrektureinheit 34 schätzt einen Koeffizienten der inversen Modelliereinheit 33 durch Auswerten der Formel (2) unten, damit der geschätzte Drehmomentenfehler e(n) einen kleinen Wert hat. Durch das Aktualisieren und Korrigieren des Koeffizienten der Berechnungsformel der inversen Modelliereinheit 33 mit Hilfe des von der Korrektureinheit 34 geschätzten Koeffizienten kann man den geschätzten Drehmomentenfehler e(n), den die Subtrahiereinheit 38 ausgibt, kleiner machen.
-
-
In Formel (2) bezeichnet e(n) einen geschätzten Drehmomentenfehler, μm(n) bezeichnet einen Anpassungskoeffizienten, ηm bezeichnet eine Konstante und σ bezeichnet die Breite einer neutralen Geschwindigkeitszone. Der Anpassungskoeffizient μm(n) ist umgekehrt proportional zu der Größe der Geschwindigkeit und des Kopplungsdrehmoments Tc. Man kann eine neutrale Zone so einrichten, dass der Anpassungskoeffizient μm(n) den Wert null hat, falls die Geschwindigkeit kleinergleich einem vorbestimmten Wert ist. Mit Hilfe der obigen Formel (2) werden die entsprechenden Koeffizienten der angegebenen Formel (1) mit dem Verfahren des steilsten Abstiegs der Reihe nach korrigiert, damit der geschätzte Drehmomentenfehler des geschätzten Kopplungsdrehmoments, das durch T(n) mit einem hochgestellten ”^” bezeichnet ist, verringert wird. Man kann die Schätzgenauigkeit verbessern, indem man eine neutrale Geschwindigkeitszone festlegt, damit nachteilige Auswirkungen von sehr raschen Bewegungen des Elektromotors 2 verringert werden, und damit der Einfluss einer Geschwindigkeitsdifferenz zwischen dem Elektromotor 2 und dem angetriebenen Körper 4 abnimmt. Die Genauigkeit lässt sich auch dadurch verbessern, dass man verhindert, dass die Koeffizienten der Formel (1) bei oder unter einer vorbestimmten Geschwindigkeit korrigiert werden. Wie bereits angegeben ist ηm eine Konstante, die eine neutrale Geschwindigkeitszone festlegt. Für |ν1| < σ gilt ηm = 0.
-
5A und 5B zeigt Skizzen, die erläutern, wie eine Sinus-Befehlseinheit einen sinusförmigen Befehl zu einem Positionsbefehl oder einem Geschwindigkeitsbefehl zufügt.
-
In 2 (und 5C) addiert die Sinusbefehl-Erzeugungseinheit 40 nach dem Empfang des Startsignals von dem übergeordneten Controller 20 einen Sinusbefehl zu einem Drehmomentbefehl. Die Erfindung ist nicht darauf eingeschränkt, einen Sinusbefehl zu einem Drehmomentbefehl zu addieren; ein Sinusbefehl kann auch einem Positionsbefehl, siehe 5A, oder einem Geschwindigkeitsbefehl zuaddiert werden, siehe 5B.
-
Zudem, siehe 6A bis 6C, kann anstelle der Sinusbefehlseinheit, die einen Sinusbefehl zu einem Positionsbefehl, einem Geschwindigkeitsbefehl oder einem Drehmomentbefehl addiert, eine M-Folgen-Erzeugungseinheit 41 eine M-Folge zu einem Positionsbefehl (6A), einem Geschwindigkeitsbefehl (6B) oder einem Drehmomentbefehl (6C) addieren.
-
7 zeigt eine Skizze, die die Veränderung der Koeffizienten in der obigen Formel (1) erläutert, und zwar zwischen einem Zustand (b), in dem eine neutrale Geschwindigkeitszone bereitgestellt ist, und einem Zustand (a), in dem eine neutrale Geschwindigkeitszone nicht bereitgestellt ist. Die Koeffizienten ho und h2 sind instabil, wenn keine neutrale Geschwindigkeitszone vorhanden ist, siehe (a) in 7. Dagegen konvergieren die Koeffizienten ho und h2 im Verlauf der Zeit gegen einen stabilen Zustand, wenn eine neutrale Geschwindigkeitszone vorhanden ist, siehe (b) in 7. Der Koeffizient h1 der viskosen Reibung ist hier nicht dargestellt.
-
8 zeigt ein Flussdiagramm einer Schätzprozedur, die eine Servocontrollereinheit vornimmt, die eine Schätzeinheit enthält. Im Weiteren werden die Schritte der Reihe nach beschrieben.
-
[Schritt SA01] Es wird festgestellt, ob eine Trägheitsschätzprozedur aktiviert ist oder nicht. Ist sie aktiviert (ist das Feststellungsergebnis JA), so erfolgt der Übergang zum Schritt SA02. Ist sie nicht aktiviert (ist das Feststellungsergebnis NEIN), so wird auf die Aktivierung gewartet.
-
Dieser Schritt stellt einen Wartevorgang auf einen Startbefehl von dem übergeordneten Controller 20 für die Schätzprozedur der Schätzeinheit 30 dar. Ein Anfangszeitpunkt für die Prozedur der Schätzeinheit 30 kann von einer Bedienperson vorab in dem übergeordneten Controller 20 eingestellt werden, und zwar als ein Verarbeitungsvorgang der entsprechenden Einheiten gemäß einem Verarbeitungsplan. Wahlweise kann der übergeordnete Controller 20 so ausgelegt sein, dass er automatisch einen Zeitpunkt erkennt, zu dem die momentane Trägheit Jms des angetriebenen Körpers 4 durch das Anbringen oder Lösen eines Werkstücks verändert wird, und einen Startbefehl an die Schätzeinheit 30 ausgibt.
-
[Schritt SA02] Ein M-Folgebefehl oder ein Sinusbefehl werden zu einem Drehmomentbefehl, einem Geschwindigkeitsbefehl oder einem Positionsbefehl hinzugefügt.
-
Wird beispielsweise ein Startsignal eingegeben, so gibt die Sinusbefehl-Erzeugungseinheit 40 in diesem Schritt einen Sinusbefehl aus, der eine vorbestimmte Frequenz hat (beispielsweise 10 Hz). Der ausgegebene Sinusbefehl wird einem Drehmomentbefehl zuaddiert, den die Geschwindigkeitsregeleinheit 12 ausgibt. An dieser Stelle steuert man die Geschwindigkeitsregeleinheit 12 vorteilhafterweise so, dass sie einen konstanten Drehmomentbefehl ausgibt. Damit kann man die Verarbeitungen der Schätzprozeduren für Trägheit, Reibung und Federkonstante stets in gleicher Weise vornehmen, damit eine Streuung der Schätzgenauigkeit unterbleibt.
-
[Schritt SA03] Ein Geschwindigkeitswert und ein Stromwert werden erfasst.
-
[Schritt SA04] Aus dem Stromwert und einer Drehmomentkonstante wird ein Eingabedrehmomentwert berechnet. Zusätzlich wird aus dem Eingabedrehmomentwert, der Geschwindigkeitsdifferenz und der Motorträgheit ein Kopplungsdrehmoment berechnet.
-
[Schritt SA05] Ein geschätzter Kopplungsdrehmomentwert wird berechnet.
-
[Schritt SA06] Aus dem geschätzten Kopplungsdrehmomentwert und dem Eingabedrehmomentwert wird ein geschätzter Drehmomentenfehler berechnet.
-
[Schritt SA07] Aus dem geschätzten Drehmomentenfehler, der Geschwindigkeit und dem Kopplungsdrehmomentwert werden Trägheit, Reibung und eine Federkonstante geschätzt. Danach wird die Prozedur beendet.
-
Hat die Verbindung zwischen einem angetriebenen Körper und einem Elektromotor eine Resonanzeigenschaft, zu der eine Feder gehört, so schätzt der beschriebene Controller simultan Trägheit, Reibungskoeffizient und eine Federkonstante. Der Controller kann sich auch an einen Fall anpassen, in dem die Reibung nichtlineare Reibungseigenschaften aufweist. Obwohl es ein Merkmal des Controllers ist, dass die Geschwindigkeit des angetriebenen Körpers nicht zum Schätzen der jeweiligen Koeffizienten verwendet wird, wenn die Federkonstante klein ist oder – anders formuliert – wenn die Verbindungssteifigkeit zwischen dem angetriebenen Körper und dem Elektromotor gering ist, lässt sich die Schätzgenauigkeit verbessern, wenn man in einem Schätzalgorithmus eine neutrale Zone vorsieht.
-
Die Breite der neutralen Zone kann jedoch von der Federkonstante (Verbindungssteifigkeit) beeinflusst werden. Ist beispielsweise die Federkonstante klein so muss die Breite der neutralen Zone entsprechend vergrößert werden. Ist also die Federkonstante vollständig unbekannt, kann keine geeignete Breite der neutralen Zone eingestellt werden. Dies kann zu einem beträchtlichen Fehler bei der Schätzgenauigkeit führen.
-
Bezieht man dies ein, so kann man unter Verwendung einer geschätzten Geschwindigkeit des angetriebenen Körpers eine Schätzung des Drehmomentwerts vornehmen, ohne eine neutrale Zone zu verwenden oder, anders ausgedrückt, ohne auf eine Federkonstante (Verbindungssteifigkeit) angewiesen zu sein. Da die geschätzte Geschwindigkeit des angetriebenen Körpers mit Hilfe einer Federkonstante geschätzt wird, die sequentiell geschätzt wird, erhält man das Merkmal, dass das Schätzen des angetriebenen Körpers vorgenommen werden kann, ohne dass man die Größe einer Federkonstante benötigt.
-
Es wird nun die Modellierung eines kontrollierten Objekts, die Definition eines dazu inversen Modells und eine Schätzalgorithmusformel für die jeweiligen Koeffizienten des inversen Modells beschrieben. Eine Bewegungsgleichung eines mechanischen Modells für dieses System mit zwei Trägheiten wird durch die Formeln (3) bis (5) unten beschrieben.
-
-
In den Formeln (3) bis (5) bezeichnen Jm und Jt Trägheiten, Kc eine Federkonstante, Cm und Ct Reibungskoeffizienten, Dc einen internen Dämpfungskoeffizienten, ωm und ωt Geschwindigkeiten, Tm ein Eingabedrehmoment, Td ein Stördrehmoment und Tc ein Kopplungsdrehmoment. Eine Blockdiagrammdarstellung der Bewegungsgleichung ist in 9 angegeben. In diesem Fall bezeichnet die Ergänzung m bei J, ω und T einen Elektromotor (Motor) und die Ergänzung t bei J, ω und C einen angetriebenen Körper (Tisch).
-
Da im Allgemeinen bei einer Werkzeugmaschine die Reibung einer geradlinigen Tischführung oder eines Mutternteils einer Kugelumlaufspindel, die das angetriebene Teil ist, vorherrscht, können weitere Reibungen vernachlässigt werden. In der Erfindung erfolgt die Modellierung durch das Aufnehmen der Reibung einer Verbindungswelle in die Reibung eines angetriebenen Körpers. Daher wird in diesem mechanischen Modell der Reibungskoeffizient Cm außer Acht gelassen und davon ausgegangen, dass der interne Dämpfungskoeffizient Dc im Reibungskoeffizienten Ct enthalten ist. Zudem wird der Reibungskoeffizient Ct des Tischs (angetriebener Körper) als eine nichtlineare Reibung angesehen, die einen viskosen Reibungskoeffizienten C1 und einen Coulomb-Reibungskoeffizienten C2 umfasst, siehe Formel (6) unten. Ct·ωt(t) = C1·ωt(t) + C2·sgn(ωt(t)) (6)
-
In Formel (6) bezeichnet sgn() eine Signum-Funktion, die durch Formel (7) beschrieben wird.
-
-
Da in diesem Fall die entsprechenden Konstanten des mechanischen Modells online (d. h. während des Betriebs der Maschine) ermittelt werden, kann man die Störung Td vernachlässigen, weil ein Status unterstellt wird, der frei von Störungen, etwa Verarbeitungslasten ist.
-
Zusammengefasst kann man die Formeln (3) bis (5) mit Hilfe der Formel (6) als Formeln (8) bis (10) ausdrücken. Zudem sind Tm(t), Tc(t), Td(t) und Ct ≅ ωt(t) Funktionen der Zeit
-
10 zeigt eine Blockdiagrammdarstellung der Bewegungsgleichung. Sie wird als mechanisches Modell des kontrollierten Objekts verwendet. Es wird nun ein Verfahren vorgeschlagen, bei dem ein inverses Modell eines mechanischen Modells für ein Zwei-Trägheiten-System in die Regelungssoftware aufgenommen wird, damit man online die Parameter des inversen Modells in kurzer Zeit exakt erfassen kann. Zum Erfassen wird vorausgesetzt, dass man die Motorträgheit Jm kennt, und die Tischträgheit, die nichtlineare Reibung und eine Federkonstante werden ermittelt. Im Einzelnen wird für die Reibung ein vereinfachtes Reibungsmodell angenommen, das nichtlineare Eigenschaften hat und nur viskose Reibung und Coulomb-Reibung umfasst, siehe 11.
-
Für eine einfache Behandlung der nichtlinearen Reibung wird in der Regel ein Polynom verwendet. In der Erfindung wird jedoch die nichtlineare Reibung gemäß Formel (6) verwendet wie sie ist (ohne die Nichtlinearität zu verändern). Dies hat seinen Grund darin, dass man möglicherweise einen Implementierungsvorteil erhält, wenn man die nichtlineare Reibung unverändert behandelt, und zwar hinsichtlich des Dynamikbereichs der Regelungssoftware usw.
-
Das für die Parametererkennung verwendete inverse Modell ist durch Formel (10) oben beschrieben, in der die Tischgeschwindigkeit ωt als Eingabe angesetzt wird und das Kopplungsdrehmoment Tc als Ausgabe.
-
In der Diskretisierung wird die Rückwärtsdifferenz für die digitale Regelung durch Software verwendet. Damit ist eine Definition gemäß Formel (11) möglich, in der T die Abtastperiode bezeichnet.
-
-
Man kann die Tischgeschwindigkeit ωt durch das Anbringen eines Detektors am Tisch erfassen. Da ein Detektor jedoch häufig durch Einschränkungen im Mechanismus oder durch die Kosten nicht verfügbar ist, wird in diesem Fall angenommen, dass man die Tischgeschwindigkeit ωt nicht erfassen kann. Unter dieser Voraussetzung kann man die Tischgeschwindigkeit ωt aus Formel (9) erhalten und durch Formel (12) unten ausdrücken.
-
-
Die Diskretisierung mit der Rückwärtsdifferenz führt zu Formel (13).
-
-
Setzt man Formel (13) in Formel (11) ein und ordnet dann Formel (11) um, so erhält man die folgende Formel (14). Formel (14) stellt eine Definition des inversen Modells dar, das für die Parameteridentifikation verwendet wird. Dabei wird ein geschätztes Kopplungsdrehmoment durch Tc mit einem hochgestellten ”^” bezeichnet, um es von den anderen Drehmomenten Tc zu unterscheiden. Ein hochgestelltes ”^” bei Tc(n) in Formel (14) bezeichnet die Schätzung. Im Weiteren wird Tc(n) mit einem hochgestellten als Tc(n) oben ”^” beschrieben.
-
-
Es wird nun ein praktisches Verfahren zum sequentiellen Erfassen der entsprechenden Koeffizienten des inversen Modells gemäß Formel (14) mit einem Verfahren des steilsten Abstiegs vorgeschlagen. Verwendet man eine beobachtbare Motorgeschwindigkeit ωm und ein Kopplungsdrehmoment Tc, das man aus einem vergleichbar beobachtbaren Drehmoment Tm erhält, und die Geschwindigkeit ωm als Eingaben für das inverse Modell, so erfolgt die Parameteridentifikation durch das sequentielle Aktualisieren der jeweiligen Koeffizienten des inversen Modells derart, dass eine Differenz zwischen einem geschätzten Kopplungsdrehmoment Tc(n) oben ”^”, das eine Ausgabegröße des inversen Modells darstellt, und dem Kopplungsdrehmoment Tc, oder anders formuliert ein Identifikationsfehler, so klein wie möglich wird.
-
Das inverse Modell der Formel (14) wird in die Formel (15) unten umgeschrieben.
-
-
In Formel (15) sind die jeweiligen Koeffizienten wie folgt definiert.
-
ν2 in Formel (23) wird zur Eingabegröße zum Erkennen des Coulomb-Reibungskoeffizienten C2 und gibt das Vorzeichen der Tischgeschwindigkeit ωt an. Da die Formel (23) eine unbekannte Federkonstante Kc enthält, kann man ν2 ohne Bearbeitung nicht verwenden. Man kann ν2 als Vorzeichen der Motorgeschwindigkeit ωm behandeln, falls die Federkonstante groß ist. Bei kleiner Federkonstante wird jedoch ein Erkennungsfehler erzeugt.
-
Daher wird das in Formel (23) definierte ν2 mit Hilfe einer Federkonstante geschätzt, die sequentiell abgeschätzt wird.
-
Da eine sequentiell geschätzte Federkonstante Kc mit hochgestellten ”^” aus h0 und h2 einer unmittelbar vorausgehenden Abtastung geschätzt wird, erhält man Formel (26) unten aus den Formeln (16) und (19). In diesem Fall bezeichnet ein hochgestelltes ”^” bei Kc(n) die Schätzung wie bei Tc(n) oben ”^”.
-
-
Setzt man Formel (26) in Formel (23) ein, so erhält man Formel (27), die eine Schätzungs-Eingabegröße darstellt.
-
-
Das Kopplungsdrehmoment Tc kann man mit Hilfe von Formel (28) aus einem beobachtbaren Eingabedrehmoment Tm und einer in gleicher Weise beobachtbaren Motorgeschwindigkeit ωm erhalten. Tc(n) = Tm(n) – Jm·(ωm(n) – ωm(n – 1)) (28)
-
Bezeichnet man die Differenz zwischen dem Kopplungsdrehmoment Tc und dem geschätzten Kopplungsdrehmoment Tc(n) oben ”^”, das eine Ausgabegröße des inversen Modells darstellt, als Erkennungsfehler e(n), so werden die entsprechenden Koeffizienten des inversen Modells mit einem Algorithmus des steilsten Abstiegs nach Formel (29) aktualisiert. Damit kann man Trägheit, nichtlineare Reibung und Federkonstante eines mechanischen Modells simultan erkennen. Ein hochgestelltes ”^” über hm in den Formeln (29) und (31) bezeichnet ebenfalls Schätzwerte. h ^m(n) = h ^(n – 1) + μ(n)·e(n)·νm(n)
e(n) = Tc(n) – T ^c(n) (29)
-
Obwohl μ ein Koeffizient zum Bestimmen einer Erfassungsgeschwindigkeit ist, wird μ gemäß Formel (30) sequentiell verändert, um zu verhindern, dass die Erfassungsgeschwindigkeit die Eingabegröße beeinflusst.
-
-
Dabei bezeichnet η eine positive Konstante. Da man den Koeffizienten h4 in Formel (20) zu h4 = h1·h3/h0 berechnen kann, braucht man den Koeffizienten h4 nicht zu erfassen. Damit kann man in Formel (31) eine endgültige Online-Erfassungsformel für das inverse Modell angeben, worin ”≅” die Multiplikation bezeichnet.
-
-
Formel (15) oben entspricht Formel (1) und die Formeln (30) und (31) oben entsprechen Formel (2).
-
Da ein Flussdiagramm einer Prozedur, die eine Servoverarbeitungseinheit vornimmt, die eine Schätzeinheit enthält, dem Flussdiagramm in 8 gleicht, wird es nicht extra angegeben.
-
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 2011-072178 [0004, 0004, 0004]
- JP 2008-228360 [0005, 0005]